Substitua a fonte PlantUML pela imagem gerada no modo organizacional

7

Eu escrevo diagramas UML no modo organizacional com PlantUML e geralmente "compilo" para HTML para visualizar o resultado. Existe uma maneira de exibir a imagem no meu buffer?

Tento ativar o modo iimage, mas não funciona bem. Ele substitui o nome do arquivo no início do bloco de origem.

#+begin_src plantuml :file my-diagram.png
...
#+end_src
#+results:
[[file:my-diagram.png]]

As duas referências ao nome do arquivo são substituídas e a fonte permanece. Existe uma maneira de ocultar o bloco de origem e mostrar apenas uma instância da imagem?

Cristian
fonte

Respostas:

6

Não tenho tanta certeza de substituir a fonte por uma imagem, mas você pode ter imagens embutidas como resultado nos blocos de origem.

Se você adicionar a opção de inicialização " inlineimages" ao seu buffer, quaisquer links no seu buffer que apontem para imagens locais que ele entende serão renderizados.

Se você não tem um bloco de opções de inicialização, que seria apenas uma linha na parte superior do seu arquivo que se parece com: #+STARTUP: inlineimages.

Isso corrige apenas metade do seu problema ... quando você C-c C-cbloqueia uma imagem, obtém um link em vez de uma imagem embutida ...

Felizmente, você pode corrigir isso adicionando o seguinte à sua configuração do Emacs:

(add-hook 'org-babel-after-execute-hook
          (lambda ()
            (when org-inline-image-overlays
              (org-redisplay-inline-images))))

Isso permitirá que você veja imagens em linha quando abrir o buffer pela primeira vez e atualize-as avaliando a origem do bloco.


Agora, como para todo o negócio de substituição de fontes:

Não sei como fazer isso dentro do buffer da organização, mas nas exportações da organização (para HTML, PDF e assim por diante ...), se você não quiser mostrar os blocos de origem que geram seus resultados, você pode adicionar um :exports resultsargumento " " ao cabeçalho do seu bloco de código. Isso fará parecer que a fonte foi substituída pelo resultado da sua imagem.

Archenoth
fonte
As versões atuais do emacs exportarão plantuml como imagens sem fontes por padrão. Se você não quiser ver a fonte no buffer organizacional, basta recolher a linha do bloco de código (tecla de tabulação em begin_src). Tenho certeza de que existe uma maneira fácil de recolher automaticamente o bloco como uma extensão do gancho após a execução, se alguém realmente quisesse.
Digicrat 28/02
0

A partir do modo org 8.2.10 em diante, foi possível adicionar o :eval no-exportargumento ao cabeçalho do bloco de código. O resultado é que o bloco de código é executado normalmente, mas não é exportado. Somente a saída, figura neste caso, após a #+RESULTS:linha ser visível no documento exportado.

Heikki
fonte