Страница вниз и страница вверх в Emacs на Windows с помощью клавиши Windows - PullRequest
2 голосов
/ 26 сентября 2008

Я пытаюсь изучить Emacs и найти для меня лучшую раскладку клавиатуры. Одна вещь действительно раздражает меня. Я добавил следующие строки в .emacs

(global-set-key "\C-y" 'scroll-up)
(global-set-key "\M-y" 'scroll-down)

Когда я удерживаю Control и нажимаю y несколько раз, при каждом нажатии y .

будет отображаться страница вниз.

Однако , когда я удерживаю клавишу Windows (сопоставленную как Meta ) и нажимаю y несколько раз, она будет отображать только страницу при первом нажатии y и всех последующих нажатиях y я получаю символ 'y', вставленный в буфер.

Может ли страница вверх вести себя как страница вниз? Я хочу удерживать Meta и продолжать нажимать y , чтобы прокрутить несколько страниц вверх.

Я использую GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600) от 2008-05-12 на LENNART-69DE564 (исправлено). Это Emacs с патчем EmacsW32. Это проблема с этим Emacs? Проблема с мета-ключом?

Я попробовал оригинальный GNU Emacs (не исправлен), и он работает нормально с Alt . Но моя проблема не в том, что я хочу прокручивать, не отпуская ни одной клавиши. Я отпускаю клавишу y и нажимаю ее несколько раз, но не хочу нажимать клавишу Meta . Та же проблема описана здесь:

http://groups.google.com/group/gnu.emacs.help/browse_thread/thread/f30f4b75a8b75b10

Проблема не в том, что я изменил раскладку клавиш. Похоже, это ошибка в версии EmacsW32. Вот еще одно описание проблемы: Неизданный модификатор Meta / Win

Ответы [ 3 ]

5 голосов
/ 16 ноября 2008
  1. Используйте C-v и M-v.
  2. Не изменять C-y, M-y привязки по умолчанию.
4 голосов
/ 26 сентября 2008

Может ли это быть побочным эффектом использования ключа Windows в качестве мета-версии? Я думаю об этом, потому что в ситуации, отличной от Emacs, если нажать и удерживать клавишу Windows и другую клавишу для быстрого вызова (Win + E для проводника, Win + R для запуска и т. Д.), Требуемое действие запускается только один раз , а не несколько раз, если вы продолжаете удерживать его.

Я бы попробовал переназначить Meta на Alt и посмотреть, сохраняется ли проблема. Если это не так, то я не уверен, какой другой вариант у вас есть, поскольку, скорее всего, ОС отправляет клавишу Windows только один раз, чтобы приложение было в фокусе.

0 голосов
/ 16 ноября 2008

Вы должны использовать исправленную версию EmacsW32, если вы хотите, чтобы ключ Windows был Meta.

С сайта о патчах:

"Изменения, которые позволяют использовать клавиши клавиатуры окна в качестве META в Emacs. Без этого патча последовательности клавиш, такие как E, всегда будут делать то, что они по умолчанию делают в окнах, то есть в этом случае открывать Windows Explorer. (Это исправлено по умолчанию не используется, вы должны включить его.) "

...