Dans latex-mode
quand je l' utilise TeX-insert-macro
pour saisir une \input{...}
macro, auctex offre commodément la fin du nom de fichier, ce qui est génial. Cependant, il semble chercher beaucoup d'endroits pour compiler la liste d'achèvement, car emacs se bloque pendant près d'une minute sur mon pauvre petit ordinateur portable.
Existe-t-il un moyen TeX-insert-macro
de proposer une complétion de nom de fichier stupide?
Par "stupide", je veux dire celui que vous obtenez en appelant find-file
. La plupart du temps, le fichier que je veux saisir n'est qu'à un répertoire, ce serait donc plus que correct.
Si ce n'est pas possible, existe-t-il un autre moyen d'accélérer?
J'ai remarqué que lorsque j'insère la \include
macro, la liste des noms de fichiers est beaucoup plus courte, donc il y a peut-être un moyen d'utiliser cette liste pour la \input
macro également.
cdlatex-insert-filename
qui vient avec le paquetage cdlatex. Je trouve cela utile pour insérer des fichiers graphiques dans des environnements de figures.Réponses:
Vous avez quelques solutions:
Tout d' abord, il y a une variable personnalisation de ce comportement:
TeX-arg-input-file-search
.Cette documentation n'est, à mon humble avis, pas assez claire, mais sa définition
nil
semble faire l'affaire.Cette variable affecte toutes les fonctions qui font appel
TeX-arg-input-file
, y comprisinput
,include
etusepackage
. Pour ce dernier, ce comportement peut être inattendu.Ensuite, il existe une solution plus hacky qui devrait fonctionner pour toutes les fonctions:
TeX-arg-input-file
dispose d'unlocal
indicateur pour ce comportement (cet indicateur est par exemple défini surt
forinclude
).Apparemment, vous pouvez remplacer tout autre paramètre en ajoutant simplement une autre entrée pour la commande, donc:
Une dernière solution, si vous avez des sessions emacs de longue durée, est de simplement laisser tomber. Il semble que la phase de "recherche de fichiers" cache ses résultats, il ne doit donc être appelé qu'une seule fois par session.
la source
TeX-global-input-files
(la variable contenant le résultat de la recherche) n'est pas tampon local, donc la recherche ne devrait avoir lieu qu'une seule fois par session emacs . Peut-être que ce serait plus intéressant si cela pouvait arriver de manière asynchrone, cependant, un gel de ~ 1min est en effet trop long.