Если вы хотите создать примеры самостоятельно (это то, что я понял из вашего вопроса, но поправьте меня, если я ошибаюсь), используйте EXAMPLE
блок вместо SRC
блока:
#+BEGIN_EXAMPLE
$ ls
dir1
dir2
file1
file2
...
#+END_EXAMPLE
При экспорте в HTML этот блок становится:
<pre class="example">
$ ls
dir1
dir2
file1
file2
...
</pre>
Как видите, содержимое экспортируемого блока точно такое же, как содержимое исходного EXAMPLE
блока.
Если вы действительно хотите запустить одну или несколько команд для динамического вывода и включить обе команды и результаты в ваш HTML-документ, вам нужно изменить SRC
блок так, чтобы он выглядел следующим образом:
#+BEGIN_SRC sh :exports both
ls
#+END_SRC
Если выход из ls
команды включает в себя каталоги и файлы , перечисленные в вашем примере ( dir1
, dir2
, file1
, file2
), это будет экспортировать в:
<div class="org-src-container">
<pre class="src src-sh">
ls
</pre>
</div>
<table>
<colgroup>
<col class="left" />
</colgroup>
<tbody>
<tr>
<td class="left">dir1</td>
</tr>
<tr>
<td class="left">dir2</td>
</tr>
<tr>
<td class="left">file1</td>
</tr>
<tr>
<td class="left">file2</td>
</tr>
</tbody>
</table>
Как видите, сам код обернут в блок кода, а результаты перечислены в таблице.
Обратите внимание, что вам нужно будет sh
явно включить поддержку блоков кода через:
(require 'ob-sh)
(org-babel-do-load-languages 'org-babel-load-languages '((sh . t)))
Это потому, что по умолчанию Org Babel включает поддержку только для блоков кода Emacs Lisp (как описано здесь ).
ob
вещь, у меня есть еще две проблемы1
: есть ли какая-нибудь,built-in shortcut
чтобы вставить пару BEGIN_EXAMPLE, как<s then TAB
вставить,BEGIN_EXAMPLE
кроме того, чтобы определить фрагмент вyasnippet
?2
: Я получилorg-html-handle-links: Wrong type argument: stringp, nil
сообщение об ошибке после изменения,BEGIN_EXAMPLE
но не более того, должно быть что-то не так в ссылке в моем орг-файле, их много, как я могу сделать,org-export
чтобы показать более подробную информацию, такую как номер строки, неправильный при неудачном экспорте ??