[devel] Непонятные помутнения emacs (kbd macro)

Michael Pozhidaev =?iso-8859-1?q?msp_=CE=C1_altlinux=2Eru?=
Вт Апр 29 05:03:32 MSD 2008


Здравствуйте, Eugene Vlasov!

> On Mon, 28 Apr 2008 20:01:29 +0700 Michael Pozhidaev wrote:
>
>> Наткнулся на странную вещь:
>> как только в /usr/share/emacs/site-lisp появляются новые файлы (туда
>> хотел положить некоторые дополнения), сразу что-то насаживается на F13
>> и F14 (shift+F3 и shift+F4).
>
> Пока это все звучит как подземный стук. Минимальный testcase сможете
Угу, да, понимаю. Просто сначала немало подивился, как это иногда может вылезти. Под микроскопом увиделось такое:
пакет имел ещё скрипт в /etc/emacs/site-start.d/rbook.el.
Заметил, что проблема уходит также и при убирании этого скрипта. Хотя 
всё, что писал про /usr/share/... остаётся в силе, но, как теперь кажется, проблема больше здесь.
В скрипте такое:
(autoload 'rbook-read-text "rbook" nil t)
(autoload 'rbook-read-bookmark "rbook" nil t)
(autoload 'rbook-make-audio-book "rbook" nil t)
(autoload 'rbook-show-time "rbook" nil t)
(autoload 'rbook-customize "rbook" nil t)

(global-set-key (kbd "C-c b") 'rbook-read-bookmark)
Корень зла -- последняя строка. При её комментировании всё проходит. 
Когда она есть, то F13 биндится сам
на kmacro-start-macro-or-insert-counter,
а F14 -- на kmacro-end-or-call-macro.
Какая между всем этим взаимосвязь -- не понятно.
В этом скрипте ниже ещё есть манипуляции с клавишами, но 
для появления проблемы достаточно уже этой строки.

Локальный site-start после всех почисток в общем виде такой:

(global-set-key [f2] 'save-buffer)
(global-set-key [f3] 'find-file)
(global-set-key [f4] 'kill-buffer)
(global-set-key [f5] 'other-window)
(global-set-key [f9] 'compile)
(global-set-key [f10] 'switch-to-buffer)
(global-set-key [f11] 'delete-other-windows)
(global-set-key [f12] 'kill-buffer-and-window)
(global-set-key [f13] 'shell-command)
(global-set-key [f14] 'shell)

(setq make-backup-files nil)

(remove-hook 'emacs-lisp-mode-hook 'eldoc-mode)
(show-paren-mode nil)
(column-number-mode nil)
(pc-selection-mode nil)
(require 'emacspeak-setup)

Да, 10initial-features.el заблокирован через создание его пустой локальной копии.
Там много недружественного для emacspeak, поэтому отключаю его.

[msp на blard site-start.d]$ rpm -qa | grep emacs
emacs22-nox-22.1-alt2
emacs-elib-1.0-alt7
emacspeak-26.0-alt1
emacs22-common-22.1-alt2
emacs-misc-modes-0.2-alt5
emacs22-speedbar-1.0-alt2
emacs22-gnus-5.11-alt2
emacs-base-0.0.6-alt1
emacs-w3m-1.4.4-alt2
emacs-muse-mode-3.02.93-alt1
emacs-mode-lilypond-2.11.0-alt1
emacs22-tramp-2.0.55-alt2
emacs-devel-0.0.1-alt3

Пакеты пока не отстреливал. Но тоже можно попробовать. 
-- 
С уважением и наилучшими пожеланиями, Михаил Пожидаев. E-mail: msp на altlinux.ru.
Томский государственный университет. Факультет информатики. http://www.csd.tsu.ru
AltLinux Team. http://www.altlinux.ru




Подробная информация о списке рассылки Devel