Jak mogę określić nazwę pliku dla eksportu w trybie org w Emacsie?

15

Mój plik org ma nazwę README.orgi chcę wyeksportować do Markdown do pliku o nazwie README. Za każdym razem, gdy uruchamiam eksport, pisze do README.md. Oto mój plik org:

#+PROPERTY: EXPORT_FILE_NAME thing

* Test export

Korzystam z EXPORT_FILE_NAMEwłaściwości opartej na tym linku: http://orgmode.org/manual/Export-settings.html#index-property_002c-EXPORT_005fFILE_005fNAME-1617, ale wydaje się, że nic nie robi.

Conor
źródło
2
W twoim linku jest napisane: „We wszystkich przypadkach zachowana jest tylko podstawowa nazwa pliku i dodane jest rozszerzenie specyficzne dla zaplecza.” To sprawia, że ​​brzmi to tak, jakbyś zawsze miał „.md”.
erikstokes
1
Masz całkowitą rację. Wygląda na to, że rozszerzenia nie można konfigurować. Żądanie funkcji dla trybu org?
Conor

Odpowiedzi:

13

Według cytowanej strony podręcznika EXPORT_FILE_NAMEdotyczy tylko eksportu poddrzewa.

Eksport całego pliku bierze swoją nazwę od nazwy pliku bufora.

Jeśli masz tylko 1 nagłówek poziomu 1, możesz dodać tę właściwość do szuflady w pierwszym nagłówku i zawsze eksportować jako poddrzewo z tego nagłówka najwyższego poziomu, aby uzyskać żądaną nazwę pliku.

Juancho
źródło
9

Dla nowszych wersji org-mode nowe ustawienie eksport dodano #+EXPORT_FILE_NAME:, który ustawia nazwę pliku, gdy plik jest eksportowana.

  • Na przykład:

    #+EXPORT_FILE_NAME: README.txt
    

Ustawienie można zastąpić w szufladzie właściwości pod nagłówkiem.

  • Na przykład:

    * Chapter 2
    :PROPERTIES:
    :EXPORT_FILE_NAME: chapter2
    :END:
    

Ten kod został przetestowany przy użyciu:
wersji emacs: GNU Emacs 25.2.1 (x86_64-unknown-cygwin, GTK + wersja 3.22.10)
Wersja trybu organizacji: 9.1.2

Melioratus
źródło
5

Łatwym obejściem jest dodanie tego na dole źródłowego pliku org:

# Local Variables:
# after-save-hook: (lambda nil (when (org-html-export-to-html) (rename-file "README.html" "index.html" t)))
# End:

W tym przykładzie, zakładając, że plik źródłowy ma nazwę README.org, automatycznie wyeksportuje plik do HTML, a następnie zmieni nazwę na index.html.

blujay
źródło
2

Możesz użyć tej funkcji org-export-to-file

Umożliwi to określenie pliku, który chcesz zapisać, oraz zaplecza dla eksportu.

(org-export-to-file 'html "README.html" )
Israel Dov
źródło