Estou usando o Emacs para escrever exemplos de código que mais tarde desejo colar em um documento do MS-Word, preservando o realce da sintaxe. Entendo que, para fazer isso, preciso copiar o texto no formato RTF ou HTML.
Atualmente, estou apenas matando do Emacs no http://www.tohtml.com e depois copiando de lá e colando no Word. Parece-me que alguém, em algum lugar, provavelmente escreveu algum Lisp para tornar esse processo pelo menos um par de pressionamentos de tecla, mas não consigo encontrar nenhuma solução existente ou algo nos documentos que sugira que isso seja possível.
Então, eu estou ansioso para saber se existe uma solução pronta que eu possa incluir na minha configuração ou se alguém tem alguma dica sobre como eu poderia escrever algo para conseguir isso.
Sou bastante novo no Emacs, adorando, mas meu e-Lisp é atualmente muito básico.
fonte
Eu tenho essa função elisp personalizada que eu uso para converter uma região selecionada ou todo o buffer em HTML com fonte de sintaxe.
Aqui estão alguns pontos sobre a
modi/htmlize-region-to-file
função:modi/htmlize-output-directory
diretórioox-html
(org-mode
exportador de HTML), pois usa aorg-html-htmlize-region-for-paste
função que usa ohtmlize
pacote nos bastidores e também permite personalizar como associar CSS ao código HTML para fonte.modi/htmlize-css-file
variável. Para usar essa função imediatamente, você pode salvar esse arquivo css baseado em tema de Lovaina personalizado em algum lugar e definir essa variável para o caminho desse arquivo. Se você usar esse arquivo css, o código exportado sempre terá o tema Leuven, independentemente do seu tema emacs (que era meu único objetivo para escrever esta função).Eu recomendaria instalar o
region-bindings-mode
pacote. Com isso instalado, basta selecionar a região que deseja exportar e clicar H... Voila! Seu código será salvo em um arquivo HTML emmodi/htmlize-output-directory
.Se você fizer
C-u H
isso, ele exportará o código e copiará o nome do arquivo de saída para o kill-ring.C-u C-u H
isso, ele fará o que foi descrito acima e também abrirá o arquivo HTML no navegador padrão usando abrowse-url-of-file
funçãoAbaixo está o que eu obtive no meu navegador quando fiz
C-u C-u H
parte do código acima:NOTA: Preciso salvar o HTML em um arquivo. Salvar o código anotado em HTML apenas na área de transferência não funcionará para mim, porque não sei como converter o código html na área de transferência diretamente em html renderizado ao colar no Outlook / Word.
fonte
O ESH pode fazer isso:
(add-to-list 'load-path "/path/to/the/repo")
ao seu.emacs
.M-x load-library RET esh RET
para carregar o ESHM-x esh-htmlfontify-display
(isso abre um navegador que exibe uma página da web gerada (localmente) pelo ESH).fonte