This is not good. --- --- The problem and a possible way to solving it has been described somewhere in sisyphus archives.
Date: Wed, 17 Apr 2002 22:12:46 +0400 (MSD) From: Ivan Zakharyaschev <<a href="mailto:imz@altlinux.ru>" target="_new">imz@altlinux.ru></a>; To: Sisyphus <<a href="mailto:sisyphus@altlinux.ru>" target="_new">sisyphus@altlinux.ru></a>; Subject: Re: [sisyphus] емакс Hello! On Wed, 17 Apr 2002, Max A Mazin wrote: > В Мастере стоит емакс 21, и это хорошо, но стандартные \"шорткаты\" на > часто > используемые действия почему-то не работают, а это плохо. В частности Надеюсь, сделанное Вами обобщение всё-таки неверно. > не > работают Ctrl-space -> Ctrl-w | Meta-w. Что самое интересное, в Согласен, это плохо. Этот случай частный. Объясняется это, во-первых, плохой совместимостью в принципе pc-selection-mode и обычного для Emacs режима работы с выделенными областями, а во-вторых, кривизной реализации pc-selection-mode (это уже исправляется в CVS GNU Emacs). Несмотря на это, pc-selection-mode у нас включен по умолчанию -- согласитесь, многим он привычнее и позволит им несильно пугаться Emacs при первой встрече. > \"неиксовой\" > версии все очень даже хорошо работает. mark-even-if-inactive отключается в /etc/emacs/site-start.d/10selection.el только для X. > Кто-нибудь может посоветовать как быть и что делать? Ибо это одни из > самых > активно используемых в работе шорткатов. Можно включить mark-even-if-inactive (это решение, но оно имеет недостаток, заключающийся в том, что вопреки включенному transient-mark-mode, выделяемая область не будет подсвечена). Можно не включать pc-selection-mode (из-за упомянутой кривизны, лучше убрать его из /etc/emacs/site-start.d/10selection.el). Можно пользоваться комбинациями pc-selection-mode. В будущих сборках emacs надо попытаться разрешить противоречие между pc-selection-mode и традиционными режимом лучшим образом, чем это сделано сейчас. (Противоречие таоке: с одной стороны, желательно, чтобы комбинации из pc-selection-mode работали только с выделенной и в данный момент подсвеченной областью -- поэтому сейчас и выключено mark-even-if-inactive -- и чтобы выделение и подсветка снималось простыми передвижениями курсора без Shift, а, с другой стороны, для традиционных комбинаций надо, чтобы отметка не деактивировалась простыми передвижениями.) Первым шагом будет обновление pc-select.el -- тогда каждый сможет отключить pc-selection-mode локально (в .emacs или в отдельной сессии или буфере). Вторым шагом могло бы быть навешивание на C-space особого действия, которое бы отключало pc-selection-поведение до следующего действия с выделенной областью (типа kill) либо (??) на всю оставшуюся сессию редактирования (раз человек стал пользоваться C-space -- то ему не нужен pc-selection-mode). Стоит ли делать второй шаг? Может, хватит возможности отключить в .emacs?
emacs-21.2-alt11: pc-selection-mode: turn-offable; no conflict with traditional selection manipulation keys (like C-space; fixes No. 1357 at bugs.altlinux.ru) emacsen-startscripts-0.0.2-alt1: 10selection.el, 10mouse.el: reflect the changes in emacs-21.2-alt11, pc-select should no more conflict with traditional selection keys