Tôi tìm thấy this question phần nào về chủ đề, nhưng có cách nào [trong emac] để đặt chế độ phụ (hoặc danh sách) dựa trên số mở rộng ? Ví dụ, nó rất dễ dàng để tìm ra rằng chế độ lớn có thể được thao tác như vậyChế độ tự động tối thiểu Emacs dựa trên phần mở rộng
(setq auto-mode-alist
(cons '("\\.notes$" . text-mode)
auto-mode-alist))
và những gì tôi tưởng muốn để có thể làm là
(setq auto-minor-mode-alist
(cons '("\\.notes$" . auto-fill-mode)
auto-minor-mode-alist))
Các chấp nhận câu trả lời của các liên kết câu hỏi đề cập đến móc, cụ thể là temp-buffer-setup-hook
. Để sử dụng, bạn cần phải thêm một chức năng để móc như vậy
(add-hook 'temp-buffer-setup-hook 'my-func-to-set-minor-mode)
Câu hỏi của tôi là hai lần:
- Có một cách dễ dàng hơn để làm điều này, tương tự như chế độ chính?
- Nếu không, làm cách nào để viết chức năng cho móc?
- Cần kiểm tra đường dẫn tệp đối với cụm từ thông dụng.
- Nếu nó khớp, hãy kích hoạt chế độ mong muốn (ví dụ:
auto-fill-mode
).
yếu ớt và buggy nỗ lực một giải pháp:
; Enables the given minor mode for the current buffer it it matches regex
; my-pair is a cons cell (regular-expression . minor-mode)
(defun enable-minor-mode (my-pair)
(if (buffer-file-name) ; If we are visiting a file,
; and the filename matches our regular expression,
(if (string-match (car my-pair) buffer-file-name)
(funcall (cdr my-pair))))) ; enable the minor mode
; used as
(add-hook 'temp-buffer-setup-hook
(lambda() (enable-minor-mode ("\\.notes$" . auto-fill-mode))))
Khi bạn nhìn vào 'Ch v auto-mode-alist', các phần mở rộng thường được viết như ' " \\ \\ ghi chú'"' . Xem trích dẫn * đơn * cuối cùng. –
Tôi sẽ bị nguyền rủa. Bỏ lỡ điều đó khi tôi đang làm kiểu. Có lẽ chính xác giải thích các dấu gạch chéo ngược điều -_- –