Експорт символів Orgmode до латексу pdf

Я експортую блок коду

#+begin_lstlisting
cut -d \' | grep http://
#+end_lstlisting

Але експортування org до латексу замінює зворотну косу риску з $ \ t

Я спробував параметри експорту

#+OPTIONS: ^:nil -:nil tex:verbatim

Але вони не зробили трюку. Будь-які пропозиції були б корисні.

Я використовую orgmode 8.2.10 на Emacs 25.1.50.2

5

1 Відповіді

Скористайтеся комбінацією блоків коду і noweb , щоб отримати очікувані результати.

  1. Create a empty org code block for shell command C-c C-v d org

    #+BEGIN_SRC org
    #+END_SRC
    
  2. Assign a #+NAME: to block then add :results latex replace :exports none headers.

    #+NAME: latex-shell-script
    #+BEGIN_SRC org :results latex replace :exports none
    #+END_SRC
    
  3. Add an empty line into org block and place cursor on empty line.

    #+NAME: latex-shell-script
    #+BEGIN_SRC org :results latex replace :exports none
    _
    #+END_SRC
    
  4. Open empty org code block for editing using C-c ' then create sh code block

    #+BEGIN_SRC sh
      cut -d \' | grep http://
    #+END_SRC
    
  5. Save edited code with C-x C-s then close edit buffer with C-c '

    #+NAME: latex-shell-script
    #+BEGIN_SRC org :results latex replace :exports none
      ,#+BEGIN_SRC sh
      cut -d \' | grep http://
     ,#+END_SRC
    #+END_SRC
    
  6. Create a empty org code block for 1stlisting block C-c C-v d org

    #+BEGIN_SRC org
    #+END_SRC
    
  7. Add :noweb yes :results latex replace :exports results headers to empty block

    #+BEGIN_SRC org :noweb yes :results latex replace  :exports results 
    #+END_SRC
    
  8. Add an empty line into org block and place cursor on empty line.

    #+BEGIN_SRC org :noweb yes :results latex replace  :exports results 
    _
    #+END_SRC
    
  9. Open empty org code block for editing using C-c ' then enter the following code.

    #+begin_lstlisting
    <>
    #+end_lstlisting
    
  10. Save edited code with C-x C-s then close edit buffer with C-c '

    #+BEGIN_SRC org :noweb yes :results latex replace  :exports results 
      ,#+begin_lstlisting
      <>
      ,#+end_lstlisting
    #+END_SRC
    
  11. Use C-c C-e to export your code blocks to latex and you should see results similar to code listed below.

    \begin{lstlisting}
    \begin{verbatim}
    cut -d \' | grep http://
    \end{verbatim}
    \end{lstlisting}
    

Сподіваюся, що це допомогло!


Код перевірено за допомогою

     

GNU Emacs 24.5.1 (x86_64-unknown-cygwin, GTK + Version 3.14.13)
  org-version: 8.3.2

4
додано
Спасибі за вашу відповідь! Я спробував запустити це, і я отримав "Ні org-babel-виконати функцію для org!". Я спробував додати це (org-babel-do-load-мови "org-bable-load-languages") ((org. T))), але я все ще маю проблему. Чи є ще щось налаштоване?
додано Автор user10117, джерело
Я знайшов одну проблему, я мав org-bable-languages-languages ​​замість мов org-babel-load-languages. Після цього, коли я запускаю експорт латексу, мене запитують два рази, якщо я хочу "Оцінити блок коду org (latex-shell-script) у вашій системі?". Я даю відповідь так обидва рази, а потім я запитав, чи хочу я "Оцінити блок код Org у вашій системі?", На що я відповім "так". Потім я отримую "Неправильний тип аргументу: listp, # (" Jesse Millwood "0 14 (: parent (# 0)))". Я припускаю, що це відповідає моїй лінії "# + AUTHOR: Jesse Millwood". Я ніколи не мав проблеми з цим раніше. У вас є пропозиції?
додано Автор user10117, джерело
Насправді після оновлення мого пакету орг з цього посиланням/a> Все працювало нормально. Велике спасибі за вашу відповідь і наступні коментарі!
додано Автор user10117, джерело
Вибачте, насправді він запустився, але вихідний сигнал трохи дивний. Я маю # + ІМ'Я: latex-shell-script # + BEGIN_SRC орг: результати латексні заміни, # + BEGIN_SRC sh вирізати -d \ t grep http: //, # + END_SRC # + END_SRC # + BEGIN_SRC org: noweb так: результати latex замінюють: результати експорту, # + begin_lstlisting << latex-shell-script() >>, # + end_lstlisting # + END_SRC виходи: begin {verbatim} # + BEGIN_SRC sh cut -d \ t grep http://# + END_SRC end {verbatim} begin {lstlisting} begin {verbatim} cut -d '| grep http://end {verbatim} end {lstlisting}
додано Автор user10117, джерело
Це дає результат ви сказали, що це буде, Дякуємо! Я думаю, що зараз у мене виникли проблеми з середовищем lstlisting , оскільки воно відображає середовище verbatim для експорту PDF, але, на мою думку, це проблема з латексом і не orgmode.
додано Автор user10117, джерело
@Jesse - О, ні! Я впевнений, що це лише проблема конфігурації, тому що мені вдалося зробити це за допомогою попередніх версій org-mode. Ви ввели нову конфігурацію вручну або ви користувалися меню налаштування? Чи може бути помилка? Іншою альтернативою може бути те, що цей параметр читається під час запуску, тому перезавантаження emacs буде оновлено. Я сумніваюся, що це так. Повідомте мене, якщо це допомогло.
додано Автор Draco18s, джерело
@Jesse - Вибачте, моя помилка! Перший код org блоку відсутній `: exports none` заголовок. Я оновлю інструкції! Дякуємо за те, що отримала мою помилку!
додано Автор Draco18s, джерело
@Jesse - я оновив інструкції у своїй відповіді. Повідомте мене, якщо це виправлено. Він повинен.
додано Автор Draco18s, джерело