Codice pieghevole per LaTeX in Emacs
Domanda
C'è un minor-mode di Emacs (o parte di codice elisp) che consente selettivamente nascondere / mostrare gli ambienti, mentre in modalità LaTeX? Per esempio, mi piacerebbe andare all'inizio di un blocco \begin{figure}
lunga, ha colpito una combinazione di tasti, e hanno il contenuto di quella ambiente figure nascoste alla vista. Allo stesso modo con \begin{proof}
e così via, e idealmente anche con \subsection
s.
È possibile? Ho appena provato hs-minor-mode
, allout-mode
, e outline-minor-mode
, ma la maggior parte di loro non riconosco ambienti di LaTeX, per esempio hs-minor-mode non riesce con "errore di scansione: parentesi sbilanciati". Io preferirei non dover inserire segni di piegatura esplicite come {{{come in pieghevole-mode .
[Idealmente sarebbe bello se il ripiegamento fosse persistente , ma vedo che che domanda non ha ancora una risposta accettata.]
Soluzione
AUCTeX fa pieghevole: http://www.gnu.org /software/auctex/manual/auctex.html#Folding
Una denuncia popolare circa linguaggi di markup come TeX e LaTeX è che c'è troppa confusione nel testo di partenza e che non si può mettere a fuoco bene sul contenuto. Ci sono le macro in cui si è interessati solo nel contenuto che alleghiamo, come progettisti di carattere in cui il contenuto potrebbe essere già fontified in modo speciale per il blocco della font. O macro il cui contenuto si desidera solo per vedere quando in realtà la modifica di esso, come note o citazioni. Allo stesso modo si potrebbe trovare certi ambienti o commenti distrazione quando si cerca di concentrarsi sul corpo del documento.
Con la funzionalità di piegatura del AUCTeX È possibile comprimere tali elementi e sostituirli con una stringa fissa, il contenuto di uno dei loro argomenti, o una miscela di entrambi. Se si desidera rendere il testo originale di nuovo visibile al fine di visualizzarla o modificarla, di lato del punto di passare il segnaposto (chiamato anche stringa di visualizzazione) o sinistro del mouse con il puntatore del mouse su di esso. (Quest'ultima è attualmente supportato solo Emacs.) La macro o ambiente spiegheranno automaticamente, rimanere aperto finché punto è all'interno di esso e comprimere ancora una volta si sposta punto fuori di esso. (Si noti che pieghevole di ambienti attualmente non funziona in tutte le modalità AUCTeX.)
Per poter utilizzare questa funzione, è necessario attivare
TeX-fold-mode
che attiverà l'auto-rivelare funzione ed i comandi necessari per nascondere e mostrare le macro e gli ambienti. È possibile attivare la modalità in un certo buffer di digitando il comandoM-x TeX-fold-mode RET
o utilizzando la scorciatoia da tastieraC-c C-o C-f
. Se si desidera utilizzarlo ogni volta che si modifica un documento LaTeX, aggiungerlo ad un gancio:(add-hook 'LaTeX-mode-hook (lambda () (TeX-fold-mode 1)))
Se dovesse essere attivato in tutte le modalità AucTeX, uso
TeX-mode-hook
invece diLaTeX-mode-hook
.Una volta che la modalità è attiva ci sono diversi comandi disponibili per nascondere e mostrare macro, ambienti e commenti ...