Интриги, расследования. lisp/ChangeLog.2:
1987-02-01 Richard M. Stallman (rms@prep)
* loaddefs.el: Purecopy many strings found in initial var values. Garbage collect in middle of file to reduce storage required for loading. Remove ".bin" from completion-ignored-extensions on Unix since only Symbolics customers would benefit from its presence. Symbolics killed the MIT AI lab; don't do business with them.
Вообще идея толкать агенду в комментариях к коммиту меня смущает. С 2й стороны, там можно вести полноценный бложик, в котором едко комментировать окружающих и за это ничего не будет, потому что никто дальше 1й строчки не читает. С 3й стороны, пропадает смысл. С 4й, я помучился с emacs-lisp/easymenu.el и теперь думаю, что rms--васенька.
Малоизвестный факт: все меню в имаксе--всего лишь подвид keymaps. Макрос easy-menu-define генерирует и добавляет к выбранной keymap статические menu-item байдингс с очень неудобным моментом: если нужно меню генерировать на лету, то динамические элементы нельзя сделать в "1м уровне" как в стандартном имаксовском меню Buffers, а только на уровень ниже, либо писать:
(easy-menu-define foobar-menu foobar-mode-map
"Menu used when foobar-mode mode is active."
'("Foobar" :filter foobar-menu-generate))
и в foobar-menu-generate каждый возвращать новое дерево целиком.
В ворохе minor и major modes, которые идут в поставке имакса, всё целостно разнообразно: все пишут как хотят, кто берет easymenu, кто чувствует себя крутым и рожает страницы текста (define-key (make-sparse-keymap "Foobar") ...).
Кенсистенси == 0. Единственное что там никогда не забывают делать--это вставлять идиотские простыни из цитат лицензии GNU в каждом файле, поучительно напоминать что This file is part of GNU Emacs и, для обладателей яркого ума, добавлять в самый конце файла:
;;; foobar.el ends here
1987-02-01 Richard M. Stallman (rms@prep)
* loaddefs.el: Purecopy many strings found in initial var values. Garbage collect in middle of file to reduce storage required for loading. Remove ".bin" from completion-ignored-extensions on Unix since only Symbolics customers would benefit from its presence. Symbolics killed the MIT AI lab; don't do business with them.
Вообще идея толкать агенду в комментариях к коммиту меня смущает. С 2й стороны, там можно вести полноценный бложик, в котором едко комментировать окружающих и за это ничего не будет, потому что никто дальше 1й строчки не читает. С 3й стороны, пропадает смысл. С 4й, я помучился с emacs-lisp/easymenu.el и теперь думаю, что rms--васенька.
Малоизвестный факт: все меню в имаксе--всего лишь подвид keymaps. Макрос easy-menu-define генерирует и добавляет к выбранной keymap статические menu-item байдингс с очень неудобным моментом: если нужно меню генерировать на лету, то динамические элементы нельзя сделать в "1м уровне" как в стандартном имаксовском меню Buffers, а только на уровень ниже, либо писать:
(easy-menu-define foobar-menu foobar-mode-map
"Menu used when foobar-mode mode is active."
'("Foobar" :filter foobar-menu-generate))
и в foobar-menu-generate каждый возвращать новое дерево целиком.
В ворохе minor и major modes, которые идут в поставке имакса, всё целостно разнообразно: все пишут как хотят, кто берет easymenu, кто чувствует себя крутым и рожает страницы текста (define-key (make-sparse-keymap "Foobar") ...).
Кенсистенси == 0. Единственное что там никогда не забывают делать--это вставлять идиотские простыни из цитат лицензии GNU в каждом файле, поучительно напоминать что This file is part of GNU Emacs и, для обладателей яркого ума, добавлять в самый конце файла:
;;; foobar.el ends here
Permalink: https://plus.google.com/115290581164606462017/posts/gbVvz4hrAkR