Come posso specificare il nome del file per l'esportazione in modalità org in Emacs?


15

Il mio file organizzativo è denominato README.orge desidero esportarlo in Markdown in un file denominato README. Ogni volta che eseguo l'esportazione scrive README.md. Ecco il mio file org:

#+PROPERTY: EXPORT_FILE_NAME thing

* Test export

Sto usando la EXPORT_FILE_NAMEproprietà basata su questo link: http://orgmode.org/manual/Export-settings.html#index-property_002c-EXPORT_005fFILE_005fNAME-1617 ma non sembra fare nulla.


2
Il tuo link dice "In tutti i casi, viene mantenuto solo il nome di base del file e viene aggiunta un'estensione specifica per il back-end." Ciò fa sembrare che otterrai sempre ".md".
erikstokes

1
Hai perfettamente ragione. Sembra che l'estensione non sia configurabile. Richiesta di funzionalità per la modalità organizzazione?
Conor,

Risposte:


12

Secondo la pagina di manuale citata, si EXPORT_FILE_NAMEapplica solo all'esportazione di sottostruttura.

L'esportazione dell'intero file prenderà il suo nome dal nome del file buffer.

Se hai solo 1 titolo di livello 1, puoi aggiungere questa proprietà a un cassetto all'interno della prima intestazione ed esportare sempre come sottostruttura all'interno di questa intestazione di livello superiore per ottenere il nome del file desiderato.


8

Per le versioni più recenti della modalità organizzazione è stata aggiunta una nuova impostazione di esportazione#+EXPORT_FILE_NAME: , che imposta il nome del file quando il file viene esportato.

  • Per esempio:

    #+EXPORT_FILE_NAME: README.txt
    

L'impostazione può essere sovrascritta nel riquadro delle proprietà sotto un'intestazione.

  • Per esempio:

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

Questo codice è stato testato usando:
emacs versione: GNU Emacs 25.2.1 (x86_64-unknown-cygwin, GTK + Versione 3.22.10)
Versione modalità Org: 9.1.2


5

Una soluzione semplice è aggiungere questo nella parte inferiore del file Org di origine:

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

In questo esempio, supponendo che il file sorgente sia denominato README.org, esso esporterà automaticamente il file in HTML e lo rinominerà index.html.


2

Puoi usare la funzione org-export-to-file

Ciò ti consentirà di specificare il file in cui vuoi salvare e il back-end per l'esportazione.

(org-export-to-file 'html "README.html" )
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.