Làm thế nào tôi có thể thực hiện tùy chỉnh sử dụng trích dẫn duy nhất cho báo giá?


7

Có thể dạy tùy chỉnh để lưu các biến của nó bằng cách sử dụng trích dẫn duy nhất 'thay vì quote?

Thí dụ:

…
'(package-archives '(("gnu"   . "http://elpa.gnu.org/packages/")
                     ("melpa" . "http://melpa.org/packages/")))
…

thay vì:

…
'(package-archives (quote (("gnu"   . "http://elpa.gnu.org/packages/")
                           ("melpa" . "http://melpa.org/packages/"))))
…

Câu trả lời:


11

Liệu các đối tượng Lisp được in bằng cách sử dụng '#'được kiểm soát bởi print-quoted.

Xem phần Biến đầu ra của hướng dẫn sử dụng Emacs Lisp.

Vì thế,

(advice-add 'custom-save-all :around
            (lambda (orig)
              (let ((print-quoted t))
                (funcall orig))))

cho biết tùy chỉnh để sử dụng 'thay vì (quote ...)#'thay vì (function ...).


Cảm ơn rất nhiều! Điều đó thực sự đã cọ xát OCD của tôi đúng cách. : D
Mattias Bengtsson

1

Nếu bạn cần khả năng tương thích với Emacs cũ hơn 24.4, điều này cũng sẽ như vậy:

(defadvice custom-save-all (around custom-save-all-around)
  "Use abbreviated quotes for customize."
  (let ((print-quoted t))
    ad-do-it))

Tài liệu tham khảo

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.