Dostosowywanie szablonu eksportu w trybie organizacji?

8

Powiązane z tym pytaniem: Jak zdefiniować szablon eksportu HTML w trybie org?

Chciałbym dostosować wstawiany szablon, naciskając C-c C-e ttak, aby uzyskać kilka dostosowań, a nawet kilka notatek pomocy w komentarzach na temat tego, co umieścić.

Może lepiej byłoby użyć innego sposobu Emacsa, aby wstawić fragment tekstu? Lub użyć rozszerzenia szablonu w trybie org?

justingordon
źródło

Odpowiedzi:

4

Krótka odpowiedź : Wygląda na to, że nie jest łatwo dokonać radykalnej modyfikacji struktury. Sugerowanych jest kilka opcji eksportu , org-export-plist-varsale ja osobiście z nimi nie grałem.

Kopanie w poszukiwaniu odpowiedzi : Kiedy dzwonisz C-c C-e t, wywołujesz funkcję trybu org org-insert-export-options-template. Szybko pomogłem funkcji ( C-h f) i nie zobaczyłem żadnego tekstu pomocniczego ani opcji do przejścia, więc musiałem spojrzeć na źródło funkcji ( M-x find-function ENTER org-insert-export-options-template ENTER>).

Czytając tę org-insert-export-options-templatefunkcję, widzę, że pobiera tekst do wstawienia org-get-current-options. Nie ma żadnej pomocy w konfigurowaniu jego zachowania w opisie, więc obejrzyj również jego źródło. Tam zobaczysz pełny pełny akapit informacji o szablonie, który jest wstawiany do tekstu podczas połączenia org-insert-export-options-template. Wypełnione wartości pochodzą z różnych innych zmiennych organizacji, nazwy bufora itp.

Zalecenie : To, co zrobiłem osobiście, poświęciło trochę czasu na wybranie opcji, które chciałbym, i skopiowałem je z innych plików organizacji, gdy zaczynam nową. Myślałem również o użyciu AutoInsertMode do automatycznego wypełnienia nowego pliku org dla mnie, ale odłożyłem go.

jonEbird
źródło
0

Oprócz opcji „wstaw snippet” możesz być także zainteresowany # + SETUPFILE: /path/to/template.org. Jest to przydatne, jeśli chcesz mieć wstępnie zdefiniowane ustawienia eksportu. Możesz utworzyć tyle, ile potrzebujesz. Łączę to z yasnippet, aby wykonać następujące czynności:

# -*- mode: snippet; require-final-newline: nil -*-
# name: blogtemplate
# key: <bl
# --
#+SETUPFILE: ~/.emacs.d/org-templates/level-$1.org
#+DATE: $2
#+KEYWORDS: $3 

#+BEGIN_HTML
<h1 class="title">$0</h1>
#+END_HTML

Punkty 1 $, 2 $ itd. Definiują tabulatory, aby można je było wypełnić jak formularz internetowy.

EDYTOWAĆ:

Szczegółowe informacje na temat pisania yasnippetów i tabulatorów można znaleźć tutaj: http://capitaomorte.github.io/yasnippet/snippet-development.html#sec-3-3

Zasadniczo jednak po wstawieniu fragmentu zostanie on ustawiony na 1 USD, a następnie naciśnięcie klawisza Tab spowoduje umieszczenie Cię na 2 USD i tak dalej. W ten sposób możesz szybko wypełnić to, czego potrzebujesz.

Robert
źródło
Proszę wyjaśnić części 1 $, 2 $. Jakiś dokument referencyjny? Dzięki!!
justingordon