Estou usando o org-mode com o modo de fonte para escrever um roteiro.
Org para organização e fonte para formatação de roteiro.
Este é o código que eu uso para esse fim:
Configurações para trabalhar com blocos de origem (fonte) na organização.
;; 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)
Por exemplo :
ato 1
** SQ 1
*** cena 1
Um monte de texto relacionado à cena e o que os personagens estão fazendo e tudo o que eu preciso saber, mas nunca acabará no roteiro.
Fonte BEGIN_SRC
texto do roteiro
END_SRC
Agora eu Cc 'e ele abre o acima em um novo buffer e eu posso pegá-lo a partir daí.
O problema com minha configuração atual é que ela não me deixa ver o texto do roteiro na íntegra.
Eu tenho mais ou menos 50 blocos desse tipo e gostaria de obter o seguinte:
Quero que a organização exporte todos os blocos de fontes para um arquivo específico, como o roteiro da fonte. Dessa forma, eu tenho um único arquivo apenas com o roteiro.
Todas as edições foram sincronizadas com o arquivo organizacional. Se eu editar alguma coisa no roteiro da fonte, o bloco de origem na organização deve atualizar a alteração e vice-versa.
Para fazer isso, inseri as seguintes propriedades no meu arquivo organizacional:
:PROPERTIES:
:file: "~/files/fountain-screenplay.fountain"
:cache: yes
:comments: yes
:tangle: yes
:results: silent
:END:
Quando eu Cc Cc, ele retorna com um erro dizendo que Nenhuma função de execução do org-babel foi encontrada.
E quando eu Cc Cv t diz 0 bloco emaranhado.
Minha abordagem está incorreta ou estou faltando alguma coisa?
Editar: alterei as propriedades para:
#+properties :file .fountain :cache yes and so on
e quando eu Cc Cv t emaranha os blocos de origem em um nome de arquivo. Agora a parte da sincronização ainda precisa ser resolvida.
outshine.el
, parece seguir o caminho oposto (arquivo de origem com comentários que podem ser visualizados em um buffer organizacional), mas pode se aproximar do que você deseja. Isenção de responsabilidade: nunca tentei eu mesmo (ainda).org-babel-detangle
que afirma isso (fornecer comentários sobre o link). Eu nunca fui capaz de fazê-lo funcionar.Respostas:
Uma opção amplamente conhecida que implementa a conexão de ida e volta entre diferentes formatos de documento (organização e fonte, por exemplo) no mesmo arquivo é o recurso de servidor lêntico desenvolvido por Phillip Lord. Ele pode ser instalado como o lentic pacote através repositório Melpa.
Há um screencast mostrando a integração no modo org e lisp no mesmo arquivo, com duas visualizações editáveis diferentes ao mesmo tempo, vinculadas. Mudar em um faz mudanças no outro. Pode ser necessária alguma configuração inicial para acomodar os formatos necessários.
Essa é uma integração mais rica, mais adequada para edição, do que a saída unidirecional de emaranhado e desembaraço através da org-babel.
fonte
Um pouco atrasado para a festa, mas eu tinha o mesmo desejo de sincronizar blocos emaranhados com seus arquivos externos.
Para isso, eu posso recomendar o org-tanglesync
Este pacote procura uma
:tangle <filename>
propriedade no cabeçalho de um arquivo organizacional e compara o conteúdo do bloco a ele. Um diff é executado em segundo plano e, em seguida, o usuário é solicitado a extrair ou rejeitar as alterações externas.Acho que isso é mais intuitivo do que
org-babel-detangle
porque não exige que o arquivo externo tenha magia extra de organização para funcionar, ou seja, é o arquivo de origem que rastreia os blocos exportados externos e não o contrário.fonte