Modo organizacional Cc Cc para exibir imagem embutida

9

Para o exemplo de código abaixo do modo organizacional:

#+BEGIN_SRC plantuml :file test.png
Alice -> Bob: synchronous call
Alice ->> Bob: asynchronous call
#+END_SRC

#+RESULTS:
[[file:test.png]]

Depois de pressionar Cc Cc, o resultado é o acima. Se eu precisar mostrá-lo como imagem, preciso executar o comando "Mx org-display-inline-image".

É possível combinar "Cc Cc" e "Mx org-display-inline-image" juntos? É melhor ainda usar o atalho "Cc Cc".

beetlej
fonte
Se você deseja sempre ter a imagem embutida, pode colocar #+STARTUP: inlineimagesem algum lugar do seu arquivo organizacional. (E C-c C-cque assim você não precisa reabrir o tampão)
Archenoth
11
@Archenoth Na verdade, minha causa é: 1. Atualize o código fonte. 2. Pressione Cc Cc para executar o código. 3. Saída é texto, mas não imagem. Desejo sempre que pressionar Cc Cc, posso exibir a imagem em linha. Sua sugestão funcionará se o usuário não alterar o código.
precisa saber é
Obrigado por me lembrar! Eu tinha esquecido que já tinha feito algo sobre isso.
Archenoth 7/02

Respostas:

5

Por que não redefinir C-c C-cno modo Org então? Use esta combinação de teclas. Coloque-o no arquivo init.el do emacs e reinicie o emacs:

(define-key org-mode-map (kbd "C-c C-c")
  (lambda () (interactive) (org-ctrl-c-ctrl-c)
                           (org-display-inline-image)))

adendo: isso é global ou local?

Local apenas para o modo organizacional.

Usuário Emacs
fonte
Parece retornar um erro: Argumento do tipo errado: listp, t. BTW, isso será redefinido globalmente ou apenas para o modo organizacional?
21817 beetlej #
@beetlej tente ajustá-lo da seguinte forma: (define-chave org-mode-map (kbd "Cc Cc") (lambda () (interativo) (org-ctrl-c-ctrl-c) (org-display-inline-images) ())))
Lucky1928:
apenas local, também corrigido o erro de digitação erro na resposta acima
Emacs usuário
Para mim, está trabalhando org-display-inline-images.
Bas Peeters
15

Há um gancho para avaliar blocos de código ( org-babel-after-execute-hook) e uma função para atualizar imagens embutidas. ( org-redisplay-inline-images)

Combine esses dois e você deve estar pronto!

(add-hook 'org-babel-after-execute-hook 'org-redisplay-inline-images)

Cc Cc atualizando imagens embutidas

Archenoth
fonte
Ótimo, funciona também. BTW, org-babel-after-execute-hook para todos os comandos da organização ou apenas para este comando? talvez eu só queira ligar o comando Cc Cc, mas não outros!
Beetlej
Esse gancho afetará apenas os blocos de código nos buffers da organização. Na verdade, se você quiser fazer mais do que isso, precisará trabalhar um pouco mais.
Archenoth
2
UAU!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! OBRIGADO!
Guilherme Salomé