emacs không mở tệp từ đối số và tô sáng cú pháp không hoạt động


27

Trong hộp Ubuntu mới nhất của tôi,

  1. Khi tôi gõ chẳng hạn emacs ~/.bashrc, Emacs sẽ bắt đầu nhưng không mở .bashrc. Điều này đúng với bất kỳ tệp nào tôi gửi. Tôi đã sử dụng Emacs trong vài năm và chưa bao giờ gặp phải vấn đề này trước đây.

  2. Tôi đã thêm vào (global-font-lock-mode 1);;tệp .emacs của mình và Emacs không nhận ra nó. "(C++/; Abbrev)", nhưng nó sẽ không làm nổi bật cú pháp.

Nếu bạn có thể giải quyết bất kỳ vấn đề nào trong số này, nó sẽ được đánh giá rất cao. Sau đây là cấu hình máy của tôi:

uname -a
Linux 2.6,35-28-generic-pae # 49-Ubuntu SMP Thứ ba 1 14:58:06 UTC 2011 i686 GNU / Linux

~ / .emacs
(chế độ toàn cầu-phông chữ-khóa 1) ;;


1
Được hỏi tốt hơn trên Askubfox.com
Oded

1
Điều gì xảy ra nếu bạn bắt đầu emacs sau đó sử dụng C-x C-fđể mở ~/.bashrc? Có thể cung cấp cho bạn một thông báo lỗi hữu ích.

1
Bộ *Messages*đệm có chứa gì hữu ích không?
MatthewD

1
xin cảm ơn rất nhiều, có vẻ như đó là do thư mục ~ / .emacs.d, emacs thực sự phàn nàn khi khởi động: "~ / .emacs.d đã tồn tại". Vì vậy, tôi đã xóa ~ / .emacs.d, và bây giờ mọi thứ đều hoạt động! (Tôi có thể mở tệp thông qua đối số dòng lệnh và tô sáng cú pháp cũng hoạt động ngay bây giờ). @Tom, trước đây tôi có thể bắt đầu emacs, sau đó sử dụng Cx Cf để mở .bashrc, nhưng không thể mở bằng> emacs ~ / .bashrc

Câu trả lời:


34

Tôi đã có cùng một vấn đề. Đó là do lần đầu tiên tôi sử dụng emacs với sudo. Kết quả là .emacs.d được tạo ra với quyền siêu người dùng và tôi không thể truy cập nó như một người dùng thông thường.

Bằng cách xóa .emacs.d được tạo dưới dạng root, hãy để emacs tạo một cái mới bằng tài khoản người dùng của bạn.


3
hoặc bạn chỉ có thể thay đổi chủ sở hữusudo chown -hR <groupname>:<username> .emacs.d/
logcat

1
Đúng, điều này đã khắc phục vấn đề. Thật tuyệt nếu emacs cho thấy một số thông tin về lỗi này ...
Jose Tomás Tocino

Thực sự phải có một số loại chẩn đoán về điều này. Điều này phải xảy ra rất nhiều khi emacs được sử dụng như một công cụ quản trị hệ thống.
Jules

4

Bạn có thể có cả ~/.emacstệp và ~/.emacs.d/thư mục, nhưng Emacs sẽ bỏ qua ~/.emacs.d/init.eltệp. Emacs chỉ đánh giá ~/.emacs.d/init.elkhi không có ~/.emacs. (Cảm ơn, pyrocrasty ).

Xem: Hướng dẫn khởi tạo tệp Emacs @ GNU Emacs .


Điều đó không đúng chút nào. Tôi đã sử dụng một ~/.emacstập tin trong nhiều năm và tôi chắc chắn luôn có một ~/.emacs.d/thư mục. Sẽ không có bất kỳ xung đột nào trừ khi bạn có một ~/.emacstệp và một ~/.emacs.d/init.eltệp cùng một lúc, và thậm chí sau đó, Emacs sẽ chỉ bỏ qua một (tôi tin rằng nó ưu tiên ~/.emacs).
pyrocrasty

Nếu bạn sửa lỗi, trong tương lai, vui lòng không sửa lỗi mà chỉ xóa hoàn toàn. Cảm ơn. Tôi đã để lại bình luận để bạn thực sự có thể nói với bài đăng của mình rằng bạn đã sửa câu trả lời của mình. (Họ có thể nâng cấp bạn hoặc hoàn tác một downvote.)
slhck

-1

initial-buffer-choicetrong startup.elcho phép tùy chỉnh tập tin ban đầu.


2
có lẽ một số bối cảnh sẽ hữu ích. Một ví dụ cấu hình?
JoshP
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.