Я хотел бы написать свои собственные заметки / тесты / код в org, а затем использовать org-bable-tangle
для создания исходных файлов. Тем не менее, все эти файлы подлежат контролю версий и, следовательно, могут быть изменены вне моей среды org.
Я хотел бы иметь возможность иметь несколько src
блоков, а затем связывать их с кучей разных файлов, каждый из которых будет связан с контролем версий. Но в то же время, можно "распутать" каждый из этих файлов обратно в мой файл org после получения любых изменений из контроля версий.
Есть ли прямой способ сделать это? Сейчас я думаю об игре сinsert-file-contents
Ответы:
Да, это так
org-babel-detangle
.Вам нужно установить
comments
аргумент заголовка,link
чтобы он работал, например,затем используйте
M-x org-babel-tangle
для экспорта блока кода, будет создан новый файл с именемhello.rb
, он должен иметь аналогичное содержимое, как показано нижеИ, наконец, открыт
hello.rb
в Emacs, измененияhello
вhello world
, и запуститьM-x org-babel-detangle
вhello.rb
буфере «s. Org файл будет обновленисточник
org-babel-detangle
документацию, чтобы понять цель и использование.insert-file-contents
?Существует также org-tanglesync , который имеет гораздо более простой метод синхронизации, чем
org-babel-detangle
По сути, если блок запутан во внешнем файле, то каждый раз, когда этот блок редактируется, также проверяется внешний файл, и, если обнаруживается разница, пользователю предлагается отклонить или передать внешние изменения в блок org src.
Это также имеет функции для автоматической обработки всех запутанных блоков в буфере. Я надеюсь, что это помогает.
источник