J'ai emacs 24.3 et j'ai compilé et installé auctex 11.88 il y a quelques
mois. Ça marchait impec. Dans mon .emacs j'ai mis au début :
---
; ne pas charger le default.el de Slitaz
(setq inhibit-default-init t)
(load "auctex.el" nil t t)
---
Je m'aperçois aujourd'hui que le tex-mode ne marche plus. Il y a eu une
mise à jour du paquet emacs de ma distrib il y a une quinzaine de jours,
ça vient peut-être de là, mais quoi qu'il en soit je cherche la cause du
problème pour le résoudre (ou faire un rapport de bug).
Lorsque je lance "emacs monfichier.tex", le fichier est chargé mais le
mode Tex n'est pas actif, et dans les Messages je lis :
File mode specification error: (file-error "Cannot open load file" "tex")
J'ajoute (setq debug-on-error t) à mon .emacs, je recommence et
j'obtiens la Backtrace suivante :
Debugger entered--Lisp error: (file-error "Cannot open load file" "tex")
tex-mode()
set-auto-mode-0(tex-mode nil)
set-auto-mode()
normal-mode(t)
after-find-file(nil t)
find-file-noselect-1(#<buffer CC2.tex> "couic/CC2.tex" nil nil "couic/CC2.tex" (657579 2052))
find-file-noselect("couic/CC2.tex" nil nil nil)
find-file("couic/CC2.tex")
command-line-1(("couic/CC2.tex"))
command-line()
normal-top-level()
Si je lance emacs sans argument, puis M-x tex-mode, j'obtiens :
Debugger entered--Lisp error: (file-error "Cannot open load file" "tex")
command-execute(tex-mode record)
execute-extended-command(nil "tex-mode")
call-interactively(execute-extended-command nil nil)
Comme je ne sais à peu près rien des mécanismes de démarrage et de
chargement des extensions, j'apprécierais beaucoup votre aide !
Dans le message , le 15/12/2015 à 21:41, j'ai écrit :
Par ailleurs, s'il y a un document qui explique comment Emacs cherche ses fichiers d'init je suis preneur, parce que le Wiki Emacs ne dit quasiment rien là-dessus.
Emacs dispose de sa propre documentation ; chercher dedans est assez simple un fois que l'on a compris comment l'utiliser. Par exemple je vais faire :
C-h i <= lance info m Emacs RET <= ouvre la documentation d'Emacs C-s load <= cherche « load »
et tomber sur :
* Lisp Libraries:: How Lisp programs are loaded into Emacs.
puis refaire une passe en cherchant « init »
* Init File:: How to write common customizations in the initialization file.
Tu noteras également qu'en faisant :
C-h v load-path <= lance la doc de la variable « load-path »
en bas de la page tu as un lien qui t'explique également comment ça fonctionne :
Initialized during startup as described in Info node `(elisp)Library Search'.
-- Benoit Izac
Dans le message <87a8pb1m30.fsf@izac.org>, le 15/12/2015 à 21:41, j'ai
écrit :
Par ailleurs, s'il y a un document qui explique comment Emacs cherche
ses fichiers d'init je suis preneur, parce que le Wiki Emacs ne dit
quasiment rien là-dessus.
Emacs dispose de sa propre documentation ; chercher dedans est assez
simple un fois que l'on a compris comment l'utiliser. Par exemple je
vais faire :
C-h i <= lance info
m Emacs RET <= ouvre la documentation d'Emacs
C-s load <= cherche « load »
et tomber sur :
* Lisp Libraries:: How Lisp programs are loaded into Emacs.
puis refaire une passe en cherchant « init »
* Init File:: How to write common customizations in the
initialization file.
Tu noteras également qu'en faisant :
C-h v load-path <= lance la doc de la variable « load-path »
en bas de la page tu as un lien qui t'explique également comment ça
fonctionne :
Initialized during startup as described in Info node `(elisp)Library
Search'.
Dans le message , le 15/12/2015 à 21:41, j'ai écrit :
Par ailleurs, s'il y a un document qui explique comment Emacs cherche ses fichiers d'init je suis preneur, parce que le Wiki Emacs ne dit quasiment rien là-dessus.
Emacs dispose de sa propre documentation ; chercher dedans est assez simple un fois que l'on a compris comment l'utiliser. Par exemple je vais faire :
C-h i <= lance info m Emacs RET <= ouvre la documentation d'Emacs C-s load <= cherche « load »
et tomber sur :
* Lisp Libraries:: How Lisp programs are loaded into Emacs.
puis refaire une passe en cherchant « init »
* Init File:: How to write common customizations in the initialization file.
Tu noteras également qu'en faisant :
C-h v load-path <= lance la doc de la variable « load-path »
en bas de la page tu as un lien qui t'explique également comment ça fonctionne :
Initialized during startup as described in Info node `(elisp)Library Search'.
-- Benoit Izac
Paul Gaborit
À (at) Tue, 15 Dec 2015 21:18:03 +0100, Lucas Levrel écrivait (wrote):
Le 14 décembre 2015, Paul Gaborit a écrit :
Donc l'installation est OK, et le load-path à revoir ?
Si il y a un problème, c'est plutôt dans l'autre sens: le load-path est celui imposé par la dsitribution,
Par quel biais le load-path est-il imposé ?
Il y a une valeur initiale hardcodée dans les sources C puis ensuite c'est potentiellement tous les fichiers .el exécutés lors de l'initialiation qui peuvent le modifier.
Il n'est pas "imposé" dans le sens où un packageur/administrateur/utilisateur peut très bien le modifier mais son contenu correspond à une certaine "logique".
Les développeurs d'emacs fixe la logique initiale.
Par dessus, le packageur d'emacs pour votre distribution ajoute sa propre logique afin que les autres paquets de la distribution puissent ajoutées leur propre bibliothèque dans emacs mais aussi pour que l'administrateur de la machine puisse customiser tout cela pour cette machine particulière.
il faut configurer l'installeur pour qu'il installe tout dans les bons répertoires.
Où s'installe le fichier tex-site.el actuellement ?
Est-ce qu'il y a moyen de « tracer » le chargement des fichiers d'initialisation ? Notamment, je voudrais savoir si Emacs est censé lire ce qu'il y a dans site-lisp/site-start.d/, parce qu'auctex.el est dedans, mais je ne trouve rien sur le net à ce sujet.
Par ailleurs, s'il y a un document qui explique comment Emacs cherche ses fichiers d'init je suis preneur, parce que le Wiki Emacs ne dit quasiment rien là-dessus.
Outre la documentation de Emacs au format Info (indiquée par Benoit Izac dans sa réponse) qui explique le démarrage d'emacs, il y a sans doute une documentation complémentaire fournie par ceux qui ont packagé 'emacs' dans votre distribution.
Par exemple, dans une distribution Debian/Ubuntu, on trouve le fichier /usr/share/doc/emacsen-common/debian-emacs-policy.gz qui explique toutes les spécificités de l'installation emacs dans cette distribution.
-- Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
À (at) Tue, 15 Dec 2015 21:18:03 +0100,
Lucas Levrel <lucas.levrel@u-pec.fr> écrivait (wrote):
Le 14 décembre 2015, Paul Gaborit a écrit :
Donc l'installation est OK, et le load-path à revoir ?
Si il y a un problème, c'est plutôt dans l'autre sens: le load-path est
celui imposé par la dsitribution,
Par quel biais le load-path est-il imposé ?
Il y a une valeur initiale hardcodée dans les sources C puis ensuite
c'est potentiellement tous les fichiers .el exécutés lors de
l'initialiation qui peuvent le modifier.
Il n'est pas "imposé" dans le sens où un
packageur/administrateur/utilisateur peut très bien le modifier mais son
contenu correspond à une certaine "logique".
Les développeurs d'emacs fixe la logique initiale.
Par dessus, le packageur d'emacs pour votre distribution ajoute sa
propre logique afin que les autres paquets de la distribution puissent
ajoutées leur propre bibliothèque dans emacs mais aussi pour que
l'administrateur de la machine puisse customiser tout cela pour cette
machine particulière.
il faut configurer l'installeur pour
qu'il installe tout dans les bons répertoires.
Où s'installe le fichier tex-site.el actuellement ?
Est-ce qu'il y a moyen de « tracer » le chargement des fichiers
d'initialisation ? Notamment, je voudrais savoir si Emacs est censé lire
ce qu'il y a dans site-lisp/site-start.d/, parce qu'auctex.el est
dedans, mais je ne trouve rien sur le net à ce sujet.
Par ailleurs, s'il y a un document qui explique comment Emacs cherche
ses fichiers d'init je suis preneur, parce que le Wiki Emacs ne dit
quasiment rien là-dessus.
Outre la documentation de Emacs au format Info (indiquée par Benoit Izac
dans sa réponse) qui explique le démarrage d'emacs, il y a sans doute
une documentation complémentaire fournie par ceux qui ont packagé
'emacs' dans votre distribution.
Par exemple, dans une distribution Debian/Ubuntu, on trouve le fichier
/usr/share/doc/emacsen-common/debian-emacs-policy.gz qui explique toutes
les spécificités de l'installation emacs dans cette distribution.
--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
À (at) Tue, 15 Dec 2015 21:18:03 +0100, Lucas Levrel écrivait (wrote):
Le 14 décembre 2015, Paul Gaborit a écrit :
Donc l'installation est OK, et le load-path à revoir ?
Si il y a un problème, c'est plutôt dans l'autre sens: le load-path est celui imposé par la dsitribution,
Par quel biais le load-path est-il imposé ?
Il y a une valeur initiale hardcodée dans les sources C puis ensuite c'est potentiellement tous les fichiers .el exécutés lors de l'initialiation qui peuvent le modifier.
Il n'est pas "imposé" dans le sens où un packageur/administrateur/utilisateur peut très bien le modifier mais son contenu correspond à une certaine "logique".
Les développeurs d'emacs fixe la logique initiale.
Par dessus, le packageur d'emacs pour votre distribution ajoute sa propre logique afin que les autres paquets de la distribution puissent ajoutées leur propre bibliothèque dans emacs mais aussi pour que l'administrateur de la machine puisse customiser tout cela pour cette machine particulière.
il faut configurer l'installeur pour qu'il installe tout dans les bons répertoires.
Où s'installe le fichier tex-site.el actuellement ?
Est-ce qu'il y a moyen de « tracer » le chargement des fichiers d'initialisation ? Notamment, je voudrais savoir si Emacs est censé lire ce qu'il y a dans site-lisp/site-start.d/, parce qu'auctex.el est dedans, mais je ne trouve rien sur le net à ce sujet.
Par ailleurs, s'il y a un document qui explique comment Emacs cherche ses fichiers d'init je suis preneur, parce que le Wiki Emacs ne dit quasiment rien là-dessus.
Outre la documentation de Emacs au format Info (indiquée par Benoit Izac dans sa réponse) qui explique le démarrage d'emacs, il y a sans doute une documentation complémentaire fournie par ceux qui ont packagé 'emacs' dans votre distribution.
Par exemple, dans une distribution Debian/Ubuntu, on trouve le fichier /usr/share/doc/emacsen-common/debian-emacs-policy.gz qui explique toutes les spécificités de l'installation emacs dans cette distribution.
-- Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Nicolas Richard
Lucas Levrel writes:
Le 11 décembre 2015, Nicolas Richard a écrit :
Non, il n'est pas dans les dépôts, c'est pour ça que je l'ai installé à la mimine.
La question c'est de savoir où tu l'as installé.
Où il s'est installé, veux-tu dire ? :)
Si on commence à laisser leurs choix aux logiciels, on va se retrouver esclaves bientôt !
Je mets le config.log à la fin (484 lignes). Je n'ai pas mis de --prefix et il s'est mis tout seul dans /usr.
auctex/ est là : /usr/share/emacs/site-lisp/auctex/ auctex.el est là : /usr/share/emacs/site-lisp/site-start.d/auctex.el
Je vois que le prefix est /usr/local, et je dois avouer que je ne sais pas pourquoi auctex.el est envoyé dans /usr. J'imagine qu'AUCTeX a un mécanisme pour déterminer ce qui est le mieux (en fait il suffirait de lire le script "configure" pour le savoir, je suppose).
OK. Si j'ai bien compris : - Emacs exécute au démarrage site-start.el et tous les site-start.d/*.el ; - auctex.el doit être dans site-start.d/, il exécute tex-site.el ; - tex-site.el ajoute le chemin vers auctex/
Non, emacs n'exécute que site-start.el et default.el (s'ils sont dans le load-path), cf (info "(emacs) Init File"). site-start.el et/ou default.el est a priori fourni par votre distro linux et se l'un d'eux se charge vraisemblablement de lancer ce qui est dans site-start.d/
Cela étant qqch me turlupine dans le message d'erreur initial. Je vais y re-répondre.
-- Nicolas Richard
Lucas Levrel <lucas.levrel@u-pec.fr> writes:
Le 11 décembre 2015, Nicolas Richard a écrit :
Non, il n'est pas dans les dépôts, c'est pour ça que je l'ai installé
à la mimine.
La question c'est de savoir où tu l'as installé.
Où il s'est installé, veux-tu dire ? :)
Si on commence à laisser leurs choix aux logiciels, on va se retrouver
esclaves bientôt !
Je mets le config.log à la fin (484 lignes). Je n'ai pas mis de
--prefix et il s'est mis tout seul dans /usr.
auctex/ est là : /usr/share/emacs/site-lisp/auctex/
auctex.el est là : /usr/share/emacs/site-lisp/site-start.d/auctex.el
Je vois que le prefix est /usr/local, et je dois avouer que je ne sais
pas pourquoi auctex.el est envoyé dans /usr. J'imagine qu'AUCTeX a un
mécanisme pour déterminer ce qui est le mieux (en fait il suffirait de
lire le script "configure" pour le savoir, je suppose).
OK. Si j'ai bien compris :
- Emacs exécute au démarrage site-start.el et tous les site-start.d/*.el ;
- auctex.el doit être dans site-start.d/, il exécute tex-site.el ;
- tex-site.el ajoute le chemin vers auctex/
Non, emacs n'exécute que site-start.el et default.el (s'ils sont dans le
load-path), cf (info "(emacs) Init File"). site-start.el et/ou
default.el est a priori fourni par votre distro linux et se l'un d'eux
se charge vraisemblablement de lancer ce qui est dans site-start.d/
Cela étant qqch me turlupine dans le message d'erreur initial. Je vais y
re-répondre.
Non, il n'est pas dans les dépôts, c'est pour ça que je l'ai installé à la mimine.
La question c'est de savoir où tu l'as installé.
Où il s'est installé, veux-tu dire ? :)
Si on commence à laisser leurs choix aux logiciels, on va se retrouver esclaves bientôt !
Je mets le config.log à la fin (484 lignes). Je n'ai pas mis de --prefix et il s'est mis tout seul dans /usr.
auctex/ est là : /usr/share/emacs/site-lisp/auctex/ auctex.el est là : /usr/share/emacs/site-lisp/site-start.d/auctex.el
Je vois que le prefix est /usr/local, et je dois avouer que je ne sais pas pourquoi auctex.el est envoyé dans /usr. J'imagine qu'AUCTeX a un mécanisme pour déterminer ce qui est le mieux (en fait il suffirait de lire le script "configure" pour le savoir, je suppose).
OK. Si j'ai bien compris : - Emacs exécute au démarrage site-start.el et tous les site-start.d/*.el ; - auctex.el doit être dans site-start.d/, il exécute tex-site.el ; - tex-site.el ajoute le chemin vers auctex/
Non, emacs n'exécute que site-start.el et default.el (s'ils sont dans le load-path), cf (info "(emacs) Init File"). site-start.el et/ou default.el est a priori fourni par votre distro linux et se l'un d'eux se charge vraisemblablement de lancer ce qui est dans site-start.d/
Cela étant qqch me turlupine dans le message d'erreur initial. Je vais y re-répondre.
-- Nicolas Richard
Nicolas Richard
Lucas Levrel writes:
Lorsque je lance "emacs monfichier.tex", le fichier est chargé mais le mode Tex n'est pas actif, et dans les Messages je lis : File mode specification error: (file-error "Cannot open load file" "tex")
Cette erreur semble indiquer que auctex s'est au moins partiellement initialisé (car "tex.el" fait partie de AUCTeX mais pas du mode TeX inclus à emacs) mais son load-path ne s'est pas installé correctement.
Quel est le load-path avec "emacs -q -l auctex" ? que contiennent auctex.el et tex-site.el ?
-- Nico
Lucas Levrel <lucas.levrel@u-pec.fr> writes:
Lorsque je lance "emacs monfichier.tex", le fichier est chargé mais le
mode Tex n'est pas actif, et dans les Messages je lis :
File mode specification error: (file-error "Cannot open load file" "tex")
Cette erreur semble indiquer que auctex s'est au moins partiellement
initialisé (car "tex.el" fait partie de AUCTeX mais pas du mode TeX
inclus à emacs) mais son load-path ne s'est pas installé correctement.
Quel est le load-path avec "emacs -q -l auctex" ? que contiennent
auctex.el et tex-site.el ?
Lorsque je lance "emacs monfichier.tex", le fichier est chargé mais le mode Tex n'est pas actif, et dans les Messages je lis : File mode specification error: (file-error "Cannot open load file" "tex")
Cette erreur semble indiquer que auctex s'est au moins partiellement initialisé (car "tex.el" fait partie de AUCTeX mais pas du mode TeX inclus à emacs) mais son load-path ne s'est pas installé correctement.
Quel est le load-path avec "emacs -q -l auctex" ? que contiennent auctex.el et tex-site.el ?
-- Nico
Lucas Levrel
Le 16 décembre 2015, Nicolas Richard a écrit :
Je vois que le prefix est /usr/local, et je dois avouer que je ne sais pas pourquoi auctex.el est envoyé dans /usr. J'imagine qu'AUCTeX a un mécanisme pour déterminer ce qui est le mieux
(en fait il suffirait de lire le script "configure" pour le savoir, je suppose).
Je ne pense pas, ce machin n'est pas fait pour être lu par un humain !
OK. Si j'ai bien compris : - Emacs exécute au démarrage site-start.el et tous les site-start.d/*.el ; - auctex.el doit être dans site-start.d/, il exécute tex-site.el ; - tex-site.el ajoute le chemin vers auctex/
Non, emacs n'exécute que site-start.el et default.el (s'ils sont dans le load-path), cf (info "(emacs) Init File"). site-start.el et/ou default.el est a priori fourni par votre distro linux et se l'un d'eux se charge vraisemblablement de lancer ce qui est dans site-start.d/
Je n'ai pas le système sous la main, mais en attendant, je ne comprends pas pourquoi le manuel d'Auctex dit, à propos de son chargement :
« With Emacs (...), the startup files ‘auctex.el’ and ‘preview-latex.el’ may already be in a directory of the ‘site-start.d/’ variety if your Emacs installation provides it. » http://www.gnu.org/software/auctex/manual/auctex/Loading-the-package.html
« If the installation procedure did not achieve this already by placing ‘auctex.el’ and ‘preview-latex.el’ into a possibly existing ‘site-start.d’ directory, (...) » http://www.gnu.org/software/auctex/manual/auctex/Advice-for-package-providers.html
-- LL Ἕν οἶδα ὅτι οὐδὲν οἶδα (Σωκράτης)
Le 16 décembre 2015, Nicolas Richard a écrit :
Je vois que le prefix est /usr/local, et je dois avouer que je ne sais
pas pourquoi auctex.el est envoyé dans /usr. J'imagine qu'AUCTeX a un
mécanisme pour déterminer ce qui est le mieux
(en fait il suffirait de lire le script "configure" pour le savoir, je
suppose).
Je ne pense pas, ce machin n'est pas fait pour être lu par un humain !
OK. Si j'ai bien compris :
- Emacs exécute au démarrage site-start.el et tous les site-start.d/*.el ;
- auctex.el doit être dans site-start.d/, il exécute tex-site.el ;
- tex-site.el ajoute le chemin vers auctex/
Non, emacs n'exécute que site-start.el et default.el (s'ils sont dans le
load-path), cf (info "(emacs) Init File"). site-start.el et/ou
default.el est a priori fourni par votre distro linux et se l'un d'eux
se charge vraisemblablement de lancer ce qui est dans site-start.d/
Je n'ai pas le système sous la main, mais en attendant, je ne comprends
pas pourquoi le manuel d'Auctex dit, à propos de son chargement :
« With Emacs (...), the startup files ‘auctex.el’ and ‘preview-latex.el’
may already be in a directory of the ‘site-start.d/’ variety if your Emacs
installation provides it. »
http://www.gnu.org/software/auctex/manual/auctex/Loading-the-package.html
« If the installation procedure did not achieve this already by placing
‘auctex.el’ and ‘preview-latex.el’ into a possibly existing ‘site-start.d’
directory, (...) »
http://www.gnu.org/software/auctex/manual/auctex/Advice-for-package-providers.html
Je vois que le prefix est /usr/local, et je dois avouer que je ne sais pas pourquoi auctex.el est envoyé dans /usr. J'imagine qu'AUCTeX a un mécanisme pour déterminer ce qui est le mieux
(en fait il suffirait de lire le script "configure" pour le savoir, je suppose).
Je ne pense pas, ce machin n'est pas fait pour être lu par un humain !
OK. Si j'ai bien compris : - Emacs exécute au démarrage site-start.el et tous les site-start.d/*.el ; - auctex.el doit être dans site-start.d/, il exécute tex-site.el ; - tex-site.el ajoute le chemin vers auctex/
Non, emacs n'exécute que site-start.el et default.el (s'ils sont dans le load-path), cf (info "(emacs) Init File"). site-start.el et/ou default.el est a priori fourni par votre distro linux et se l'un d'eux se charge vraisemblablement de lancer ce qui est dans site-start.d/
Je n'ai pas le système sous la main, mais en attendant, je ne comprends pas pourquoi le manuel d'Auctex dit, à propos de son chargement :
« With Emacs (...), the startup files ‘auctex.el’ and ‘preview-latex.el’ may already be in a directory of the ‘site-start.d/’ variety if your Emacs installation provides it. » http://www.gnu.org/software/auctex/manual/auctex/Loading-the-package.html
« If the installation procedure did not achieve this already by placing ‘auctex.el’ and ‘preview-latex.el’ into a possibly existing ‘site-start.d’ directory, (...) » http://www.gnu.org/software/auctex/manual/auctex/Advice-for-package-providers.html
-- LL Ἕν οἶδα ὅτι οὐδὲν οἶδα (Σωκράτης)
Lucas Levrel
Le 15 décembre 2015, Benoit Izac a écrit :
Emacs dispose de sa propre documentation
(...)
Merci pour les commandes, et le rappel : RTFM, la base...
Je verrai bien si j'y trouve un moyen de tracer l'initialisation.
-- LL Ἕν οἶδα ὅτι οὐδὲν οἶδα (Σωκράτης)
Le 15 décembre 2015, Benoit Izac a écrit :
Emacs dispose de sa propre documentation
(...)
Merci pour les commandes, et le rappel : RTFM, la base...
Je verrai bien si j'y trouve un moyen de tracer l'initialisation.
Merci pour les commandes, et le rappel : RTFM, la base...
Je verrai bien si j'y trouve un moyen de tracer l'initialisation.
-- LL Ἕν οἶδα ὅτι οὐδὲν οἶδα (Σωκράτης)
Lucas Levrel
Le 16 décembre 2015, Paul Gaborit a écrit :
Les développeurs d'emacs fixe la logique initiale.
Par dessus, le packageur d'emacs pour votre distribution ajoute sa propre logique
(...)
Par exemple, dans une distribution Debian/Ubuntu, on trouve le fichier /usr/share/doc/emacsen-common/debian-emacs-policy.gz qui explique toutes les spécificités de l'installation emacs dans cette distribution.
Un mot d'ordre de SliTaz est KISS. Donc a priori pas de bidouille des chemins d'installation par défaut des logiciels. Je vais tâcher de voir avec le mainteneur du paquet.
-- LL Ἕν οἶδα ὅτι οὐδὲν οἶδα (Σωκράτης)
Le 16 décembre 2015, Paul Gaborit a écrit :
Les développeurs d'emacs fixe la logique initiale.
Par dessus, le packageur d'emacs pour votre distribution ajoute sa
propre logique
(...)
Par exemple, dans une distribution Debian/Ubuntu, on trouve le fichier
/usr/share/doc/emacsen-common/debian-emacs-policy.gz qui explique toutes
les spécificités de l'installation emacs dans cette distribution.
Un mot d'ordre de SliTaz est KISS. Donc a priori pas de bidouille des
chemins d'installation par défaut des logiciels. Je vais tâcher de voir
avec le mainteneur du paquet.
Les développeurs d'emacs fixe la logique initiale.
Par dessus, le packageur d'emacs pour votre distribution ajoute sa propre logique
(...)
Par exemple, dans une distribution Debian/Ubuntu, on trouve le fichier /usr/share/doc/emacsen-common/debian-emacs-policy.gz qui explique toutes les spécificités de l'installation emacs dans cette distribution.
Un mot d'ordre de SliTaz est KISS. Donc a priori pas de bidouille des chemins d'installation par défaut des logiciels. Je vais tâcher de voir avec le mainteneur du paquet.
-- LL Ἕν οἶδα ὅτι οὐδὲν οἶδα (Σωκράτης)
Nicolas Richard
Lucas Levrel writes:
(en fait il suffirait de lire le script "configure" pour le savoir, je suppose).
Je ne pense pas, ce machin n'est pas fait pour être lu par un humain !
Non, mais on peut le lire quand même. Notamment il y a un test : if test -d "${_tmpdir_}/site-start.d" then auctexstartfile="${lispdir}/site-start.d/auctex.el" else auctexstartfile="${lispdir}/auctex.el" fi qui indique qu'il cherche effectivement site-start.d précisément.
(On peut aussi lire configure.ac, qui est plus lisible.)
Je n'ai pas le système sous la main, mais en attendant, je ne comprends pas pourquoi le manuel d'Auctex dit, à propos de son chargement :
« With Emacs (...), the startup files ‘auctex.el’ and ‘preview-latex.el’ may already be in a directory of the ‘site-start.d/’ variety if your Emacs installation provides it. » http://www.gnu.org/software/auctex/manual/auctex/Loading-the-package.html
« If the installation procedure did not achieve this already by placing ‘auctex.el’ and ‘preview-latex.el’ into a possibly existing ‘site-start.d’ directory, (...) » http://www.gnu.org/software/auctex/manual/auctex/Advice-for-package-providers.html
Je suppose : parce que les dévs d'AUCTeX connaissent leurs classiques, et savent que beaucoup de distro linux utilisent un tel répertoire site-start.d (d'où le "if your Emacs installation provides it").
-- Nico
Lucas Levrel <lucas.levrel@u-pec.fr> writes:
(en fait il suffirait de lire le script "configure" pour le savoir,
je suppose).
Je ne pense pas, ce machin n'est pas fait pour être lu par un humain !
Non, mais on peut le lire quand même. Notamment il y a un test :
if test -d "${_tmpdir_}/site-start.d"
then
auctexstartfile="${lispdir}/site-start.d/auctex.el"
else
auctexstartfile="${lispdir}/auctex.el"
fi
qui indique qu'il cherche effectivement site-start.d précisément.
(On peut aussi lire configure.ac, qui est plus lisible.)
Je n'ai pas le système sous la main, mais en attendant, je ne
comprends pas pourquoi le manuel d'Auctex dit, à propos de son
chargement :
« With Emacs (...), the startup files ‘auctex.el’ and
‘preview-latex.el’ may already be in a directory of the
‘site-start.d/’ variety if your Emacs installation provides it. »
http://www.gnu.org/software/auctex/manual/auctex/Loading-the-package.html
« If the installation procedure did not achieve this already by
placing ‘auctex.el’ and ‘preview-latex.el’ into a possibly existing
‘site-start.d’ directory, (...) »
http://www.gnu.org/software/auctex/manual/auctex/Advice-for-package-providers.html
Je suppose : parce que les dévs d'AUCTeX connaissent leurs classiques,
et savent que beaucoup de distro linux utilisent un tel répertoire
site-start.d (d'où le "if your Emacs installation provides it").
(en fait il suffirait de lire le script "configure" pour le savoir, je suppose).
Je ne pense pas, ce machin n'est pas fait pour être lu par un humain !
Non, mais on peut le lire quand même. Notamment il y a un test : if test -d "${_tmpdir_}/site-start.d" then auctexstartfile="${lispdir}/site-start.d/auctex.el" else auctexstartfile="${lispdir}/auctex.el" fi qui indique qu'il cherche effectivement site-start.d précisément.
(On peut aussi lire configure.ac, qui est plus lisible.)
Je n'ai pas le système sous la main, mais en attendant, je ne comprends pas pourquoi le manuel d'Auctex dit, à propos de son chargement :
« With Emacs (...), the startup files ‘auctex.el’ and ‘preview-latex.el’ may already be in a directory of the ‘site-start.d/’ variety if your Emacs installation provides it. » http://www.gnu.org/software/auctex/manual/auctex/Loading-the-package.html
« If the installation procedure did not achieve this already by placing ‘auctex.el’ and ‘preview-latex.el’ into a possibly existing ‘site-start.d’ directory, (...) » http://www.gnu.org/software/auctex/manual/auctex/Advice-for-package-providers.html
Je suppose : parce que les dévs d'AUCTeX connaissent leurs classiques, et savent que beaucoup de distro linux utilisent un tel répertoire site-start.d (d'où le "if your Emacs installation provides it").
-- Nico
Jacques L'helgoualc'h
Le 16-12-2015, Nicolas Richard a écrit : [script configure]
Non, mais on peut le lire quand même. Notamment il y a un test : if test -d "${_tmpdir_}/site-start.d" then auctexstartfile="${lispdir}/site-start.d/auctex.el" else auctexstartfile="${lispdir}/auctex.el" fi qui indique qu'il cherche effectivement site-start.d précisément.
(On peut aussi lire configure.ac, qui est plus lisible.)
Ce qui m'inquiète ici, c'est si $_tempdir_ n'est pas égal à $lispdir, d'où peut-être une installation au mauvais endroit ? -- JL
Le 16-12-2015, Nicolas Richard a écrit :
[script configure]
Non, mais on peut le lire quand même. Notamment il y a un test :
if test -d "${_tmpdir_}/site-start.d"
then
auctexstartfile="${lispdir}/site-start.d/auctex.el"
else
auctexstartfile="${lispdir}/auctex.el"
fi
qui indique qu'il cherche effectivement site-start.d précisément.
(On peut aussi lire configure.ac, qui est plus lisible.)
Ce qui m'inquiète ici, c'est si $_tempdir_ n'est pas égal à $lispdir,
d'où peut-être une installation au mauvais endroit ?
--
JL
Le 16-12-2015, Nicolas Richard a écrit : [script configure]
Non, mais on peut le lire quand même. Notamment il y a un test : if test -d "${_tmpdir_}/site-start.d" then auctexstartfile="${lispdir}/site-start.d/auctex.el" else auctexstartfile="${lispdir}/auctex.el" fi qui indique qu'il cherche effectivement site-start.d précisément.
(On peut aussi lire configure.ac, qui est plus lisible.)
Ce qui m'inquiète ici, c'est si $_tempdir_ n'est pas égal à $lispdir, d'où peut-être une installation au mauvais endroit ? -- JL
Lucas Levrel
Je pense que j'ai trouvé un problème, mais comme ce n'est peut-être pas *le* problème, je réponds d'abord...
Le 16 décembre 2015, Nicolas Richard a écrit :
Cette erreur semble indiquer que auctex s'est au moins partiellement initialisé (car "tex.el" fait partie de AUCTeX mais pas du mode TeX inclus à emacs) mais son load-path ne s'est pas installé correctement.
Quel est le load-path avec "emacs -q -l auctex" ? que contiennent auctex.el et tex-site.el ?
Message : command-line-1: Cannot open load file: /usr/share/emacs/site-lisp/auctex
auctex.el : ;;; auctex.el ;; ;; This can be used for starting up AUCTeX. The following somewhat ;; strange trick causes tex-site.el to be loaded in a way that can be ;; safely undone using (unload-feature 'tex-site). ;; (autoload 'TeX-load-hack (expand-file-name "../tex-site.el" (file-name-directory load-file-name))) (TeX-load-hack)
Le problème que j'ai repéré : le script post-installation du paquet emacs fabrique site-start.el par concaténation du contenu de site-start.d/. Du coup site-start.el contient le chemin relatif ci-dessus (../tex-site.el) qui ne pointe vers rien.
Si je vire site-start.el, le tex-mode démarre sans problème. Si je comprends bien, Emacs irait effectivement chercher auctex.el dans site-start.d/ parce qu'il est dans le load-path ? Mais alors pourquoi cela ne marche-t-il pas avec "-l auctex" ?
Je n'ai pas encore trouvé pourquoi site-start.d est dans le load-path.
-- LL Ἕν οἶδα ὅτι οὐδὲν οἶδα (Σωκράτης)
Je pense que j'ai trouvé un problème, mais comme ce n'est peut-être pas
*le* problème, je réponds d'abord...
Le 16 décembre 2015, Nicolas Richard a écrit :
Cette erreur semble indiquer que auctex s'est au moins partiellement
initialisé (car "tex.el" fait partie de AUCTeX mais pas du mode TeX
inclus à emacs) mais son load-path ne s'est pas installé correctement.
Quel est le load-path avec "emacs -q -l auctex" ? que contiennent
auctex.el et tex-site.el ?
Message :
command-line-1: Cannot open load file: /usr/share/emacs/site-lisp/auctex
auctex.el :
;;; auctex.el
;;
;; This can be used for starting up AUCTeX. The following somewhat
;; strange trick causes tex-site.el to be loaded in a way that can be
;; safely undone using (unload-feature 'tex-site).
;;
(autoload 'TeX-load-hack
(expand-file-name "../tex-site.el" (file-name-directory load-file-name)))
(TeX-load-hack)
Le problème que j'ai repéré : le script post-installation du paquet emacs
fabrique site-start.el par concaténation du contenu de site-start.d/. Du
coup site-start.el contient le chemin relatif ci-dessus (../tex-site.el)
qui ne pointe vers rien.
Si je vire site-start.el, le tex-mode démarre sans problème. Si je
comprends bien, Emacs irait effectivement chercher auctex.el dans
site-start.d/ parce qu'il est dans le load-path ? Mais alors pourquoi cela
ne marche-t-il pas avec "-l auctex" ?
Je n'ai pas encore trouvé pourquoi site-start.d est dans le load-path.
Je pense que j'ai trouvé un problème, mais comme ce n'est peut-être pas *le* problème, je réponds d'abord...
Le 16 décembre 2015, Nicolas Richard a écrit :
Cette erreur semble indiquer que auctex s'est au moins partiellement initialisé (car "tex.el" fait partie de AUCTeX mais pas du mode TeX inclus à emacs) mais son load-path ne s'est pas installé correctement.
Quel est le load-path avec "emacs -q -l auctex" ? que contiennent auctex.el et tex-site.el ?
Message : command-line-1: Cannot open load file: /usr/share/emacs/site-lisp/auctex
auctex.el : ;;; auctex.el ;; ;; This can be used for starting up AUCTeX. The following somewhat ;; strange trick causes tex-site.el to be loaded in a way that can be ;; safely undone using (unload-feature 'tex-site). ;; (autoload 'TeX-load-hack (expand-file-name "../tex-site.el" (file-name-directory load-file-name))) (TeX-load-hack)
Le problème que j'ai repéré : le script post-installation du paquet emacs fabrique site-start.el par concaténation du contenu de site-start.d/. Du coup site-start.el contient le chemin relatif ci-dessus (../tex-site.el) qui ne pointe vers rien.
Si je vire site-start.el, le tex-mode démarre sans problème. Si je comprends bien, Emacs irait effectivement chercher auctex.el dans site-start.d/ parce qu'il est dans le load-path ? Mais alors pourquoi cela ne marche-t-il pas avec "-l auctex" ?
Je n'ai pas encore trouvé pourquoi site-start.d est dans le load-path.