emacs nie otwiera pliku z argumentu, a podświetlanie składni nie działa

27

W moim najnowszym pudełku Ubuntu

  1. Kiedy piszę na przykład emacs ~/.bashrc, Emacs uruchomi się, ale nie otworzy .bashrc. Dotyczy to każdego przekazywanego pliku. Używam Emacsa od kilku lat i nigdy wcześniej nie spotkałem się z tym problemem.

  2. Dodałem (global-font-lock-mode 1);;do mojego pliku .emacs i Emacs go rozpoznaje, na przykład. "(C++/; Abbrev)", ale nie będzie wyróżniać składni.

Jeśli uda Ci się rozwiązać którykolwiek z tych problemów, będzie to bardzo mile widziane. Oto konfiguracja mojego komputera:

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

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


źródło
1
Lepiej zapytaj
Oded
1
Co się stanie, jeśli uruchomisz emacsa, a następnie użyjesz go, C-x C-faby otworzyć ~/.bashrc? Może dać ci przydatny komunikat o błędzie.
1
Czy *Messages*bufor zawiera coś przydatnego?
MatthewD
1
cześć wielkie dzięki, wygląda na to, że jest to spowodowane przez katalog ~ / .emacs.d, emacs faktycznie narzeka przy starcie: „~ / .emacs.d już istnieje”. Więc usunąłem ~ / .emacs.d, a teraz wszystko działa! (Mogę otwierać pliki za pomocą argumentu wiersza poleceń i podświetlanie składni również działa teraz). @Tom, wcześniej mogłem uruchomić emacsa, a następnie użyć Cx Cf, aby otworzyć .bashrc, ale nie mogę otworzyć przez> emacs ~ / .bashrc

Odpowiedzi:

34

Mam ten sam problem. Stało się tak dlatego, że pierwszy raz użyłem emacsa z sudo. W rezultacie plik .emacs.d został utworzony z prawem superużytkownika i nie mogłem uzyskać do niego dostępu jako zwykły użytkownik.

Usuwając plik .emacs.d utworzony jako root, emacs wygeneruje nowy z kontem użytkownika.

Michael Dussere
źródło
3
lub możesz po prostu zmienić właścicielasudo chown -hR <groupname>:<username> .emacs.d/
logcat
1
Tak, to rozwiązało problem. Byłoby wspaniale, gdyby emacs pokazał jakieś informacje o tym błędzie ...
José Tomás Tocino
Tam naprawdę powinien być jakiś diagnostyczny na ten temat. To musi się często zdarzyć, gdy emacs jest używany jako narzędzie do administrowania systemem.
Jules
4

Możesz mieć zarówno ~/.emacsplik, jak i ~/.emacs.d/katalog, ale Emacs zignoruje ~/.emacs.d/init.elplik. Emacs ocenia tylko ~/.emacs.d/init.elwtedy, gdy nie ma ~/.emacs. (Dzięki, pirokrastyka ).

Zobacz: Plik inicjujący Emacsa @ Podręcznik GNU Emacs .

Mirzhan Irkegulov
źródło
To wcale nie jest prawda. Korzystałem z ~/.emacspliku przez lata i na pewno zawsze miałem ~/.emacs.d/katalog. Nie będzie konfliktu, chyba że masz ~/.emacsplik i ~/.emacs.d/init.elplik w tym samym czasie, a nawet wtedy Emacs po prostu zignoruje jeden (uważam, że ma on priorytet ~/.emacs).
pirokrastyka
Jeśli naprawisz błąd, w przyszłości nie wykreśl go, ale po prostu usuń go całkowicie. Dzięki. Zostawiłem komentarz, abyś mógł powiedzieć mu, że poprawiłeś swoją odpowiedź. (Mogą cię głosować lub cofnąć głosowanie negatywne.)
slhck
-1

initial-buffer-choicew startup.elumożliwia wstępną dostosowanie pliku.

Buglouse
źródło
2
być może jakiś kontekst byłby pomocny. Przykładowa konfiguracja?
JoshP