Tập tin .emacs ở đâu?


26

Tôi đã tải xuống Emacs 23.1 từ trang FTP của GNU. Tôi đã gỡ bỏ nó và xây dựng nó sau khi cấu hình.

Tôi không tìm thấy tệp .emacs trong thư mục nhà của tôi hoặc bất cứ nơi nào trong hệ thống của tôi! Tui bỏ lỡ điều gì vậy?

Câu trả lời:


22

Hoặc, như một cách đơn giản hơn nhiều (như được chỉ ra trong nhận xét), Ctrl+ H, v(mô tả biến) sẽ mang lại đầu ra tốt đẹp mô tả biến và giá trị của nó, như vậy:

    user-init-file is a variable defined in ‘C source code’.
    Its value is
    "/home/.emacs"

Tài liệu:
Tên tệp, bao gồm thư mục, tệp khởi tạo của người dùng. Nếu tệp được tải có phần mở rộng '.elc' và tệp nguồn tương ứng tồn tại, biến này chứa tên của tệp nguồn, phù hợp để sử dụng bởi các chức năng như 'custom-save-all' để chỉnh sửa tệp init. Trong khi Emacs tải và đánh giá tệp init, giá trị là tên thật của tệp, bất kể nó có phần mở rộng & lsquo'.elc 'hay không.

Cách này khá dài dòng. Một câu trả lời ngắn gọn hơn là khởi động emacs và, trong bộ đệm đánh giá Lisp của bạn, nhập user-init-filevà nhấn Ctrl+ Jđể đánh giá. Điều này sẽ in ra nơi tập tin init của bạn, như vậy:

user-init-file
"/home/.emacs"

5
Ctrl-H v (mô tả biến) để xem xét một biến.
starblue

Làm thế nào là bộ đệm đánh giá Lisp được gọi?
Peter Mortensen


12

Bạn phải tạo tệp nếu bạn muốn định cấu hình Emacs. Bạn chỉ có thể tạo nó và bắt đầu hack tệp bằng tay hoặc sử dụng M-x customizevà lưu tùy chỉnh.


4

Xem chương initFile trong EmacsWiki.

Tệp init của bạn chứa mã EmacsLisp cá nhân mà bạn muốn thực thi khi bạn khởi động Emacs.

  • Đối với GnuEmacs , nó là ~/.emacshay _emacshay ~/.emacs.d/init.el.
  • Đối với XEmac , nó là ~/.xemacshoặc ~/.xemacs/init.el.
  • Đối với AquamacsEmacs , nó là ~/.emacshoặc~/Library/Preferences/Aquamacs Emacs/Preferences.el

1
Gabor, sự khác biệt giữa các loại tập tin ở đây là gì? Tôi có .emacs.d/. Tôi có nên tạo một init.eltập tin ở đây trong thư mục này? Liệu thư mục có vấn đề như một vị trí?
Vass

1

Bạn đã kiểm tra rằng không phải .emacscũng không .emacs.d/init.eltồn tại? Bởi vì cái sau dường như ngày càng trở thành tiêu chuẩn (một tệp ít hơn ~).


1
Điều gì xảy ra nếu bạn đặt nó ở sai vị trí? là thư mục tùy ý?
Vass

1

Trên Windows, tệp .emacs có thể được gọi là _emacs để tương thích ngược với các hệ thống tệp DOS và FAT nơi tên tệp không thể bắt đầu bằng dấu chấm. Một số người dùng thích tiếp tục sử dụng tên đó, vì Explorer không thể tạo tệp có tên bắt đầu bằng dấu chấm, mặc dù hệ thống tệp và hầu hết các chương trình khác có thể xử lý tên đó. Trong Emacs 22 và sau đó, các tập tin init cũng có thể được gọi là .emacs.d / init.el . Nhiều tệp khác được tạo bởi các gói lisp hiện cũng được lưu trữ trong thư mục .emacs.d, vì vậy, điều này sẽ giữ tất cả các tệp liên quan đến Emacs của bạn ở một nơi.

nguồn: http://www.gnu.org/software/emacs/manual/html_mono/efaq-w32.html#Init-file


vậy thư mục của inittập tin chỉ là một quy ước? Đơn giản chỉ là một tiêu chuẩn mà emacs tự động tra cứu và bạn đặt các lựa chọn cá nhân của mình vào một tập tin các lệnh lisp để điều chỉnh các emacs ?
Vass

Trên Windows 10, tôi đã tìm thấy nó ở hai thư mục khác nhau trên hai máy tính khác nhau: "C: \ Users \ username \" trên một và trong "C: \ Users \ username \ AppData \ Roaming \" trên máy tính khác.
Kirill Yunussov

0

Bạn nên thử ls -a.

ََََََََ


1
Ngoài ra: Bạn đã thử chạy Emacs một lần trước khi mong đợi một tệp cấu hình trong nhà của bạn chưa?
Joey

Trong bối cảnh nào? Trên dòng lệnh (thư mục làm việc nào)? Từ bên trong Emacs?
Peter Mortensen

0

Câu trả lời đơn giản. Bạn phải bắt đầu viết một số mã trong Emacs trước khi tệp .emacs xuất hiện trong thư mục chính của bạn. Viết một số mã toán học đơn giản Xin chào, Thế giới và đơn giản, biên dịch và chạy.

Sau đó nhìn lại ở nhà, và gõ ls -avà bạn sẽ thấy nó. Sau đó để chỉnh sửa nó và gõ gedit .emacs. Tôi sử dụng gedit vì tôi cảm thấy chỉnh sửa Emacs kỳ lạ, với Emacs.


Tại sao bạn lại sử dụng bất cứ thứ gì khác ngoài Emacs để chỉnh sửa một tệp mã elisp? Bạn luôn có thể bắt đầu một phiên bản mới (với emacs -qnếu tệp init của bạn bị hỏng và bạn cần bỏ qua nó). Ngoài ra, không có yêu cầu cho Emacs để tạo tệp init cho bạn. Bạn có thể tiếp tục và tạo nó bằng tay; Emacs vẫn sẽ sử dụng nó.
phils

0

Giống như các chương trình khác, bạn có thể sao chép /etc/[what file do you want]vào thư mục chính mà hệ thống của bạn sử dụng cho các cài đặt của nó.

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.