Pergunta

Existe um modo menor do Emacs (ou pedaço de código elisp) que permite ocultar/mostrar seletivamente ambientes enquanto estiver no modo LaTeX?Por exemplo, gostaria de passar ao início de uma longa \begin{figure} bloco, pressione uma tecla e tenha o conteúdo desse ambiente de figura oculto da vista.Da mesma forma com \begin{proof} e assim por diante, e idealmente mesmo com \subsectionS.

Isso é possível?Eu apenas tentei hs-minor-mode, allout-mode, e outline-minor-mode, mas a maioria deles não reconhece os ambientes do LaTeX, por ex.hs-minor-mode falha com "erro de verificação:parênteses desequilibrados".Eu preferiria não ter que inserir marcas de dobra explícitas como {{{ como em modo dobrável.

[Idealmente seria ótimo se a dobragem fosse persistente, mas vejo que essa pergunta ainda não tem uma resposta aceita.]

Foi útil?

Solução

AUCTeX dobra: http://www.gnu.org/software/auctex/manual/auctex.html#Folding

Uma reclamação popular sobre linguagens de marcação como TeX e LaTeX é que há muita confusão no texto fonte e não é possível focar bem no conteúdo.Existem macros nas quais você está interessado apenas no conteúdo que elas contêm, como especificadores de fonte, onde o conteúdo já pode ser fonte de uma maneira especial pelo bloqueio de fonte.Ou macros cujo conteúdo você deseja ver apenas ao editá-lo, como notas de rodapé ou citações.Da mesma forma, você pode achar que certos ambientes ou comentários distraem ao tentar se concentrar no corpo do documento.

Com a funcionalidade de dobramento do AUCTeX você pode recolher esses itens e substituí-los por uma string fixa, o conteúdo de um de seus argumentos ou uma mistura de ambos.Se você quiser tornar o texto original visível novamente para visualizá-lo ou editá-lo, mova o ponto lateralmente para o espaço reservado (também chamado de string de exibição) ou clique com o botão esquerdo do mouse sobre ele.(Atualmente, este último é suportado apenas no Emacs.) A macro ou ambiente se desdobrará automaticamente, permanecerá aberto enquanto o ponto estiver dentro dele e entrará em colapso novamente quando você mover o ponto para fora dele.(Observe que a dobragem de ambientes atualmente não funciona em todos os modos AUCTeX.)

Para usar este recurso, você deve ativar TeX-fold-mode que ativará o recurso de revelação automática e os comandos necessários para ocultar e mostrar macros e ambientes.Você pode ativar o modo em um determinado buffer digitando o comando M-x TeX-fold-mode RET ou usando o atalho do teclado C-c C-o C-f.Se você quiser usá-lo sempre que editar um documento LaTeX, adicione-o a um gancho:

(add-hook 'LaTeX-mode-hook (lambda ()
                             (TeX-fold-mode 1)))

Caso deva ser ativado em todos os modos AUCTeX, use TeX-mode-hook em vez de LaTeX-mode-hook.

Uma vez que o modo está ativo existem vários comandos disponíveis para ocultar e mostrar macros, ambientes e comentários...

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top