Saya ingin menulis catatan / tes / kode saya sendiri dalam org dan kemudian gunakan org-bable-tangle
untuk menghasilkan file sumber. Namun, semua file ini tunduk pada kontrol versi dan karenanya dapat berubah dari luar lingkungan org saya.
Saya ingin dapat memiliki sejumlah src
blok dan kemudian kusut ke banyak file yang berbeda, yang masing-masing akan berkomitmen untuk kontrol versi. Tetapi pada saat yang sama, dapat "melepaskan" masing-masing file ini kembali ke file org saya setelah menarik perubahan dari kontrol versi.
Apakah ada cara langsung untuk melakukan ini? Saya sekarang mempertimbangkan untuk bermain dengannyainsert-file-contents
Jawaban:
Ya itu
org-babel-detangle
.Anda perlu mengatur
comments
argumen tajuklink
agar berfungsi, misalnya,kemudian gunakan
M-x org-babel-tangle
untuk mengekspor blok kode, file baru bernamahello.rb
akan dibuat, itu harus memiliki konten yang sama seperti berikut iniTerakhir, buka
hello.rb
di Emacs, ubahhello
kehello world
, dan jalankanM-x org-babel-detangle
dihello.rb
buffer. File org akan diperbaruisumber
org-babel-detangle
dokumen untuk memahami tujuan dan penggunaannya.insert-file-contents
?Ada juga org-tanglesync , yang memiliki metode sinkronisasi yang lebih sederhana daripada
org-babel-detangle
Pada dasarnya jika suatu blok dirangkai ke file eksternal, maka setiap kali blok itu diedit, file eksternal diperiksa juga, dan jika sebuah diff terdeteksi, pengguna diminta untuk menolak atau menarik perubahan eksternal ke dalam blok org src.
Ini juga memiliki fungsi untuk secara otomatis memproses semua blok kusut dalam buffer. Saya harap ini membantu.
sumber