Emacs не открывает файл из аргумента и подсветка синтаксиса не работает

27

В моей последней коробке с Ubuntu,

  1. Например emacs ~/.bashrc, когда я печатаю , Emacs запускается, но не открывается .bashrc. Это верно для любого файла, который я передаю. Я использовал Emacs в течение нескольких лет и никогда раньше не сталкивался с этой проблемой.

  2. Я добавил (global-font-lock-mode 1);;в свой файл .emacs, и Emacs, например, распознает его. "(C++/; Abbrev)", но он не будет делать подсветку синтаксиса.

Если вы можете решить любую из этих проблем, это будет очень цениться. Ниже приведена конфигурация моей машины:

uname -a
Linux 2.6.35-28-generic-pae # 49-Ubuntu SMP вт 1 марта 14:58:06 UTC 2011 i686 GNU / Linux

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


источник
1
Лучше спросить на askubuntu.com
Одед
1
Что произойдет, если вы запустите emacs, а затем C-x C-fоткроете ~/.bashrc? Может дать вам полезное сообщение об ошибке.
1
Содержит ли *Messages*буфер что-нибудь полезное?
MatthewD
1
Привет большое спасибо, кажется, это вызвано каталогом ~ / .emacs.d, emacs на самом деле жалуется при запуске: "~ / .emacs.d уже существует". Поэтому я удалил ~ / .emacs.d, и теперь все работает! (Я могу открыть файлы через аргумент командной строки и подсветка синтаксиса также работает сейчас). @ Том, ранее я мог запустить emacs, а затем использовать Cx Cf, чтобы открыть .bashrc, но не могу открыть с помощью> emacs ~ / .bashrc

Ответы:

34

У меня та же проблема. Это было связано с тем, что я впервые использовал emacs с sudo. В результате .emacs.d был создан с правами суперпользователя, и я не мог получить к нему доступ как обычный пользователь.

Удалив файл .emacs.d, созданный от имени root, пусть emacs создаст новый с вашей учетной записью

Майкл Дюссер
источник
3
или вы можете просто сменить владельцаsudo chown -hR <groupname>:<username> .emacs.d/
logcat
1
Да, это решило проблему. Было бы здорово, если бы emacs показал некоторую информацию об этой ошибке ...
Хосе Томас Тосино
Там действительно должна быть какая-то диагностика по этому поводу. Это должно часто случаться, когда emacs используется как инструмент системного администрирования.
Жюль
4

Вы можете иметь как ~/.emacsфайл, так и ~/.emacs.d/каталог, но Emacs будет игнорировать ~/.emacs.d/init.elфайл. Emacs оценивает только ~/.emacs.d/init.elтогда, когда его нет ~/.emacs. (Спасибо, пирократизм ).

Смотрите: Файл инициализации Emacs @ Руководство по Emacs для GNU .

Миржан Иркегулов
источник
Это совсем не так. Я использовал ~/.emacsфайл в течение многих лет, и у меня всегда был ~/.emacs.d/каталог. Никакого конфликта не будет, если у вас нет ~/.emacsфайла и ~/.emacs.d/init.elфайла одновременно, и даже в этом случае Emacs просто проигнорирует один (я считаю, что это приоритеты ~/.emacs).
пирократия
Если вы исправите ошибку, в будущем, пожалуйста, не удаляйте ее , а просто полностью удалите . Спасибо. Я оставил комментарий, так что вы можете сказать, что он опубликован, что вы исправили свой ответ. (Они могут проголосовать против вас или отменить голосование.)
slhck
-1

initial-buffer-choiceв startup.elпозволяет первоначальную настройку файла.

Buglouse
источник
2
возможно, какой-то контекст будет полезен. Пример конфига?
JoshP