Używam trybu org z trybem fontanny do napisania scenariusza.
Organizacja do organizacji i fontanna do formatowania scenariusza.
Oto kod, którego używam do tego celu:
Ustawienia pracy z blokami źródłowymi (fontannowymi) w org.
;; prevent org from messing with indentation of the source text.
(setq org-src-preserve-indentation t)
(setq org-edit-src-content-indentation 0)
;; open the buffer for editing fountain in another window.
(setq org-src-window-setup (quote reorganize-frame))
;; prevent a message in the edit buffer from being shown.
(setq org-edit-src-persistent-message nil)
;; save edits in the fountain buffer to the org buffer after x sec
(setq org-edit-src-auto-save-idle-delay 1)
Na przykład :
akt 1
** SQ 1
*** Scena 1
Kilka tekstów związanych ze sceną i tym, co robią postacie oraz wszystko, co muszę wiedzieć, ale nigdy nie trafi do scenariusza.
Fontanna BEGIN_SRC
tekst scenariusza
END_SRC
Teraz I Cc 'i otwiera powyższe w nowym buforze i stamtąd mogę go wziąć.
Problem z moją obecną konfiguracją polega na tym, że nie pozwala mi zobaczyć w całości tekstu scenariusza.
Mam około 50 takich bloków i chciałbym osiągnąć następujące cele:
Chcę, aby org wyeksportował wszystkie bloki fontann do określonego pliku, powiedzmy scenariusz fontanny. W ten sposób mam tylko jeden plik ze scenariuszem.
Wszystkie zmiany są zsynchronizowane z plikiem org. Jeśli edytuję cokolwiek w scenariuszu z fontanną, blok źródłowy w org powinien zaktualizować zmianę i odwrotnie.
Aby to zrobić, wstawiłem następujące właściwości do mojego pliku org:
:PROPERTIES:
:file: "~/files/fountain-screenplay.fountain"
:cache: yes
:comments: yes
:tangle: yes
:results: silent
:END:
Kiedy I Cc Cc zwraca błąd z informacją, że nie znaleziono funkcji wykonywania org-babel.
A kiedy I Cc Cv t mówi 0 splątanych bloków.
Czy moje podejście jest nieprawidłowe, czy coś mi brakuje?
Edycja: Zmieniłem właściwości na:
#+properties :file .fountain :cache yes and so on
a kiedy I Cc Cv t splata bloki źródłowe z nazwą pliku. góra. Teraz część synchronizacji pozostaje do rozwiązania.
outshine.el
, wygląda na to, że podąża przeciwną drogą (plik źródłowy z komentarzami, które można wyświetlić w buforze organizacyjnym), ale może zbliżyć się do tego, co chcesz. Oświadczenie: nigdy nie próbowałem tego (jeszcze).org-babel-detangle
która do tego twierdzi (zapewniają splątane komentarze do linków). Nigdy nie udało mi się go uruchomić.Odpowiedzi:
Jedną z powszechnie znanych opcji, która implementuje dwukierunkowe łączenie w obie strony między różnymi formatami dokumentów (na przykład org i fontanna) w tym samym pliku, jest funkcja serwera lentic opracowana przez Phillip Lord. Może być instalowany jako lentic pakiet przez MELPA repozytorium.
Istnieje zrzut ekranu pokazujący tryb org i integrację lisp w tym samym pliku z dwoma różnymi edytowalnymi widokami w tym samym czasie, połączonymi. Zmiana jednego powoduje zmiany w drugim. Może być wymagana wstępna konfiguracja w celu dostosowania do wymaganych formatów.
Jest to bogatsza integracja, bardziej odpowiednia do edycji, niż powiedzmy, że jednokierunkowe wyjście splątania i rozplątywania poprzez org-babel.
źródło
Nieco późno na imprezę, ale tak samo chciałem zsynchronizować splątane bloki z ich zewnętrznymi plikami.
W tym celu mogę polecić org-tanglesync
Ten pakiet szuka
:tangle <filename>
właściwości w nagłówku pliku org i porównuje z nią zawartość bloku. W tle wykonuje się różnicę, a następnie użytkownik jest monitowany o pobranie lub odrzucenie zmian zewnętrznych.Uważam, że jest to bardziej intuicyjne niż
org-babel-detangle
dlatego, że nie wymaga, aby plik zewnętrzny posiadał dodatkową magię org-babel, aby działał, tj. Jest to plik źródłowy, który śledzi eksportowane zewnętrzne bloki, a nie odwrotnie.źródło