emacs n'ouvre pas de fichier d'argument et la mise en évidence de la syntaxe ne fonctionne pas

27

Dans ma dernière boîte Ubuntu,

  1. Lorsque je tape par exemple emacs ~/.bashrc, Emacs démarre mais ne s'ouvre pas .bashrc. Cela est vrai pour tous les fichiers que je transmets. J'utilise Emacs depuis plusieurs années et je n'ai jamais rencontré ce problème auparavant.

  2. J'ai ajouté (global-font-lock-mode 1);;à mon fichier .emacs, et Emacs le reconnaît, par exemple. "(C++/; Abbrev)", mais il ne fera pas de coloration syntaxique.

Si vous pouvez résoudre l'un de ces problèmes, il sera très apprécié. Voici la configuration de ma machine:

uname -a
Linux 2.6.35-28-generic-pae # 49-Ubuntu SMP mar 1 mars 14:58:06 UTC 2011 i686 GNU / Linux

~ / .emacs
(global-font-lock-mode 1) ;;


la source
1
Mieux demandé sur askubuntu.com
Oded
1
Que se passe-t-il si vous démarrez emacs puis l'utilisez C-x C-fpour l'ouvrir ~/.bashrc? Pourrait vous donner un message d'erreur utile.
1
Le *Messages*tampon contient-il quelque chose d'utile?
MatthewD
1
salut merci beaucoup, il semble que cela soit causé par le répertoire ~ / .emacs.d, emacs se plaint en fait au démarrage: "~ / .emacs.d existe déjà". J'ai donc supprimé ~ / .emacs.d, et maintenant tout fonctionne! (Je peux ouvrir des fichiers via l'argument de ligne de commande et la coloration syntaxique fonctionne également maintenant). @Tom, auparavant, je peux démarrer emacs, puis utiliser Cx Cf pour ouvrir .bashrc, mais je ne peux pas ouvrir par> emacs ~ / .bashrc

Réponses:

34

J'ai le même problème. C'est dû au fait que j'ai utilisé emacs pour la première fois avec sudo. En conséquence, le fichier .emacs.d a été créé avec un droit de superutilisateur et je ne pouvais pas y accéder en tant qu'utilisateur normal.

En supprimant le .emacs.d créé en tant que root, laissez emacs en générer un nouveau avec votre compte utilisateur.

Michael Dussere
la source
3
ou vous pouvez simplement changer de propriétairesudo chown -hR <groupname>:<username> .emacs.d/
logcat
1
Oui, cela a résolu le problème. Ce serait génial si emacs montrait des informations sur cette erreur ...
José Tomás Tocino
Il devrait vraiment y avoir une sorte de diagnostic à ce sujet. Cela doit souvent se produire lorsque emacs est utilisé comme outil d'administration système.
Jules
4

Vous pouvez avoir à la fois un ~/.emacsfichier et un ~/.emacs.d/répertoire, mais Emacs ignorera le ~/.emacs.d/init.elfichier. Emacs n'évalue que ~/.emacs.d/init.ellorsqu'il n'y en a pas ~/.emacs. (Merci, pyrocrastie ).

Voir: Le fichier d'initialisation Emacs @ GNU Emacs Manual .

Mirzhan Irkegulov
la source
Ce n'est pas vrai du tout. J'ai utilisé un ~/.emacsfichier pendant des années et j'ai certainement toujours eu un ~/.emacs.d/répertoire. Il n'y aura pas de conflit à moins que vous ayez un ~/.emacsfichier et un ~/.emacs.d/init.elfichier en même temps, et même dans ce cas, Emacs n'en ignorera qu'un (je crois qu'il priorise ~/.emacs).
pyrocrastie
Si vous corrigez une erreur, à l'avenir, ne la supprimez pas, mais supprimez -la entièrement. Merci. J'ai laissé le commentaire rester afin que vous puissiez réellement dire à son message que vous avez corrigé votre réponse. (Ils peuvent vous voter contre ou annuler un
vote négatif
-1

initial-buffer-choicedans startup.elpermet la personnalisation initiale du fichier.

Buglouse
la source
2
peut-être qu'un certain contexte serait utile. Un exemple de configuration?
JoshP