Как сохранить комментарии к переменным, установленным через "M-x customize" в emacs? - PullRequest
7 голосов
/ 09 августа 2009

Когда я устанавливаю переменные через M-x customize, значения сохраняются в этом большом автоматически сгенерированном алфавитно упорядоченном списке в моем файле .emacs.

Проблема в том, что мне нравится документировать, почему я выбрал конкретное значение, отличное от значения по умолчанию для конкретной переменной. Если я сделаю это, добавив комментарии elisp в автоматически сгенерированный список, они будут перекрыты при следующей настройке другой переменной.

Есть ли способ заставить Custom хранить мои комментарии, или есть какой-то другой стандартный способ аннотировать это?

Ответы [ 2 ]

5 голосов
/ 09 августа 2009

Лично я переместил все свои настройки из настроек в файл .emacs. В основном потому, что мне очень не нравится пользовательский интерфейс для настройки.

Итак, вместо этого мой пользовательский файл:

(custom-set-variables
  ;; custom-set-variables was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 '(scheme-program-name "scheme")
 '(tetris-use-glyphs nil))

У меня есть:

 (setq
  scheme-program-name "scheme"      ; because I like it
  tetris-use-glyphs nil)            ; it's an example

То, что переменная custom-set-variable действительно принимает ряд аргументов, одним из которых является комментарий. Так что вы могли бы сделать:

(custom-set-variables
  ;; custom-set-variables was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 '(scheme-program-name "scheme" nil nil "this is a comment")
 '(tetris-use-glyphs nil nil nil "This is another comment"))

Комментарий сдувается только при изменении значения переменной, а не при изменении других переменных. Я не уверен, что это правильное использование для этого, хотя. C-h f custom-set-variables имеет больше информации.

4 голосов
/ 29 сентября 2009

По крайней мере, начиная с 22.3, вы можете добавить комментарий при настройке чего-либо. Нажмите «Состояние» -> «Добавить комментарий». Это сохраняется в командах настройки в вашем .emacs:

'(global-hi-lock-mode t nil nil "Да! Да Да Да Да ДА!")

(Видимо, я был взволнован, когда обнаружил эту настройку.)

...