In attesa di eventuali ulteriori apporti alla questione cerco di riassumere ciò che è acquisito finora,
che mi pare già moltissimo.
Riprendo pertanto il messaggio del 29 maggio con una piccola correzione e gli opportuni aggiornamenti
per eseguire la ricerca in avanti direttamente da Emacs.
Ricerca inversa e in avanti per plain TeX e LaTeX,
con xdvi ed Emacs,
in Mandrake Linux 9.0.
1)Hai controllato l’effettiva presenza di emacs? Riesci a lanciarlo? In quanto segue assumo di sì.
2)Usa emacs per modificare il file .emacs: digita
emacs ~/.emacs
dalla Shell di Linux.
3)Vai in fondo al file (potrebbe verosimilmente essere vuoto: nessun problema) e aggiungi le righe
(add-to-list ‘load-path (expand-file-name “~/lib/emacs”))
(require ‘xdvi-search)
(add-hook ‘LaTeX-mode-hook (lambda () (local-set-key “\C-x\C-j” ‘xdvi-jump-to-line)))
(add-hook ‘tex-mode-hook (lambda () (local-set-key “\C-x\C-j” ‘xdvi-jump-to-line)))
(server-start)
poi salva il file e esci da emacs.
4)Impartisci i comandi
mkdir -p ~/lib/emacs (invio)
e copia, nella directory ~/lib/emacs che hai appena creata, il file xdvi-search.el che troverai all’indirizzo
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/xdvi/xdvik/texk/xdvik/xdvi-search.el?rev=1.2.4.7
5)Apri il tuo file sorgente impartendo il comando
emacs ~/…/filename.tex (invio)
e aggiungi all’inizio del file il comando
\input /usr/share/texmf/tex/latex/srcltx/srctex.sty
se stai usando plain TeX, ovvero il comando
\usepackage[active]{srcltx}
se stai usando LaTeX, poi salva il file senza uscire da emacs.
6)Apri una nuova Console di Shell, col comando cd accedi alla directory che contiene i due file, quello sorgente e quello .dvi, e impartisci il comando
xdvi -editor “emacsclient –no-wait +%l %f” filename.dvi (invio).
7)Esegui prima la ricerca inversa: in un punto qualsiasi del file .dvi clicca Ctrl-mouse-1 e voilà: la ricerca inversa.
8)Ora la ricerca in avanti: in un punto qualsiasi del file sorgente batti
Ctrl-x Ctrl-j
e voilà: la ricerca in avanti.
Ad Andrea, come sempre, eventuali correzioni e aggiunte.
Rodolfo