Como posso especificar o nome do arquivo para exportação no modo organizacional no Emacs?


15

Meu arquivo organizacional é nomeado README.orge quero exportar para o Markdown para um arquivo chamado README. Sempre que executo a exportação, ela grava README.md. Aqui está o meu arquivo organizacional:

#+PROPERTY: EXPORT_FILE_NAME thing

* Test export

Estou usando a EXPORT_FILE_NAMEpropriedade com base neste link: http://orgmode.org/manual/Export-settings.html#index-property_002c-EXPORT_005fFILE_005fNAME-1617, mas parece não fazer nada.


2
Seu link diz "Em todos os casos, apenas o nome base do arquivo é mantido e uma extensão específica de back-end é adicionada." Isso faz parecer que você sempre obterá o ".md".
Erikstokes

11
Você está completamente certo. Parece que a extensão não é configurável. Solicitação de recurso para o modo organizacional?
Conor

Respostas:


12

De acordo com a página de manual citada, EXPORT_FILE_NAMEaplica-se apenas à exportação de subárvore.

A exportação de arquivo inteiro terá o nome do arquivo de buffer.

Se você tiver apenas um título de nível 1, poderá adicionar essa propriedade a uma gaveta dentro do primeiro cabeçalho e sempre exportar como subárvore de dentro desse cabeçalho de nível superior para obter o nome do arquivo desejado.


8

Para versões mais recentes do modo organizacional, foi adicionada uma nova configuração de exportação#+EXPORT_FILE_NAME: , que definirá o nome do arquivo quando o arquivo for exportado.

  • Por exemplo:

    #+EXPORT_FILE_NAME: README.txt
    

A configuração pode ser substituída dentro da gaveta de propriedades em um cabeçalho.

  • Por exemplo:

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

Este código foi testado usando:
versão do emacs: GNU Emacs 25.2.1 (x86_64-unknown-cygwin, GTK + versão 3.22.10)
Versão do modo de organização: 9.1.2


5

Uma solução fácil é adicionar isso na parte inferior do arquivo organizacional de origem:

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

Neste exemplo, assumindo que o arquivo de origem é nomeado README.org, ele exportará automaticamente o arquivo para HTML e o renomeará para index.html.


2

Você pode usar a função org-export-to-file

Isso permitirá que você especifique o arquivo que deseja salvar e o back-end para a exportação.

(org-export-to-file 'html "README.html" )
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.