Emacs на Mac OS X Leopard привязки клавиш
Я пользователь Mac, и я решил изучить Emacs. У меня читать что уменьшить напряжение руки и улучшить точность CTRL и CAPS LOCK ключи должны быть заменены. Как это сделать в Leopard?
кроме того, в терминале я должен использовать ESC клавишу для вызова мета. Есть ли способ получить ключ alt / option для вызова meta вместо этого?
обновление: в то время как клавиша управления теперь намного легче нажимается, мета-ключ также используется достаточно часто, что его положение на моем MacBook и Apple Keyboard также заслуживает внимания. На самом деле, я считаю, что управляющий ключ на самом деле легче ударить, поэтому я переназначил свой управляющий ключ, чтобы действовать как мета-ключ. У кого-нибудь есть лучшее/более стандартное решение?
13 ответов:
замена CTRL и CAPS LOCK
- поехать в Системные Настройки
- введите Клавиатура И Мышь панель настроек
- на клавиатура tab, нажмите Клавиши-Модификаторы...
- поменять действия для Caps Lock и управления.
используя ALT / OPTION как Мета
- в строке меню выберите терминал
- клик предпочтения...
- под настройки tab, перейти к клавиатура tab
- установите флажок использовать опцию в качестве мета-ключа
вот именно! Вы должны быть на пути к тому, чтобы стать мастером Emacs!
для справки, вот ключевые привязки, для перемещения по тексту:
⌥ + ← - перемещение на одно слово влево
⌥ + → - двигаться вправо одно слово
⌥ + удалить - назад удалить одно слово
Shift + ⌥ + удалить - foward удалить одно слово
⌥ + ↑ - переместить один абзац
⌥ + ↓ - вниз один абзац
⌘ + ← - перейти к началу текущей строки
⌘ + → - перейти к концу текущей строки
Shift + любой из вышеперечисленных расширить выделение на соответствующую суммунажмите и перетащите-выберите текст
Дважды щелкните, затем перетащите-выделите текст, обернув в конец слова
Трижды щелкните, затем перетащите-выберите текст, перенос в абзац заканчиваетсяShift + Выделите текст с помощью мыши-добавить к выделению (непрерывный)
⌘ + Выделите текст с помощью мыши-добавить к выделению (несмежный)
⌥ + перетащите-выберите прямоугольную область (несмежную)
⌘ + ⌥ + drag-добавить прямоугольную область для выбора
Перетащите выделение-переместить текст
⌥ + перетащите выделение-копировать текстCtrl + A - перейти к началу текущего абзаца
Ctrl + B - движение влево на один символ
Ctrl + D - вперед удалить
Ctrl + E - переход к концу текущего абзаца
Ctrl + F - перейти вправо на один символ
Ctrl + H - удалить
Ctrl + K - удалить остаток текущего пункт
Ctrl + N - переместить вниз на одну строку
Ctrl + O - вставить новую строку после курсора
Ctrl + P - перейти на одну строку
Ctrl + T - транспонировать (поменять местами) два близлежащих символов
Ctrl + V - перейти к концу, а затем оставил один символ
Ctrl + Y вставить текст ранее удаленных с Ctrl -K
другой ответ был очень полным, но дополнительно я бы упомянул, что я просто установил caps lock ключ ко второму ключу управления вместо замены их.
кроме того, вы заметите, что подавляющее большинство полей ввода текста в Mac OS X уже принимают в Emacs клавиши (^начало строки ^е конца строки, ^П ^Н ^К ^Г и т. д.)
удачи
Мне очень нравится ответ Кайл Кронин, но я хочу добавить одну вещь - убедитесь, что вы выберите подходящую клавиатуру для этой работы. Если у вас есть внешняя клавиатура подключена к ноутбуку, то есть дополнительный выпадающий список, и вы должны сделать это для обеих клавиатур (или, по крайней мере для внешней клавиатуры). На снимке экрана ниже показано диалоговое окно "выбор клавиатуры" - я выбрал "Joint Mac Keyboard", что является способом MacBook сказать GoldTouch внешняя клавиатура-по умолчанию используется встроенная клавиатура.
Как только я понял это - это отлично работает для меня!
Если вы используете emacs через ssh-соединение или через машину, не находящуюся на вашем локальном компьютере, кнопки Page up/page down прокручивают буфер терминала - по моему опыту, не слишком полезно.
вы можете настроить кнопки Page down и page up для отправки соответствующих команд в emacs. В emacs вы можете прокручивать буфер emacs следующим образом:
- страница вверх: Ctl-v
- страница вниз: Esc-v
Итак, чтобы терминал отправил эти команды для emacs, следуйте инструкциям выше, чтобы изменить клавиши Alt для Meta. Однако вместо установки параметра " использовать параметр как мета "найдите параметры" страница вниз "и" страница вверх".
Страницы
дважды щелкните "страница вниз", чтобы изменить его. Изменить действие до "отправить строку в оболочку" и вводим \026 как строку. Сохранить его.
страница Вверх
дважды нажмите кнопку "страница вверх", чтобы изменить его. Изменить действие до "отправить строку в оболочку" и вводим 033v\ как строку. Сохранить его.
Не уверен, что вы полностью женаты на использовании Emacs из терминала, но другой вариант-использовать Carbon Emacs (мой любимый) и Aquamacs (очень похожий на Mac). Carbon Emacs использует командный ключ для meta, это хорошо, потому что вы можете выполнять команды Control-Meta, просто удерживая Control и Command down вместо первого нажатия escape, а затем последовательности клавиш управления.
кроме того, если вы серьезный пользователь Emacs, я настоятельно рекомендую вам получить клавиатуру, подходящую для программирования (это это тот, который полностью настраивается под себя). Я использую Кинезис, это немного денег, но они очень прочные и довольно приятные.
лично у меня есть настройка caps lock, чтобы вести себя как команда в Системных настройках, а затем на моем Emacs init.файл Эл:
(setq mac-command-modifier ' ctrl)
и это позволяет мне использовать caps lock в качестве команды в большинстве приложений osx и в качестве элемента управления в emacs. работает достаточно хорошо для меня.
ваша радость только начинается. Другие трюки включают в себя:
- используйте левую и правую клавиши shift, чтобы также быть ( и)для быстрого ввода.
- переназначить ваш ключ fn или другой ключ, чтобы быть "супер".
- сделать caps lock быть контроль, но только с другим ключом. Само по себе это бегство.
прочитайте отличную статью на http://stevelosh.com/blog/2012/10/a-modern-space-cadet/ для получения дополнительной информации.
этот поток был запущен 5 лет назад и нет никакого упоминания о
ns-win.elили построить--with-ns. Вот все ключевые привязки, доступные (из коробки) в багажнике Emacs по состоянию на октябрь 2013 года. И, конечно же, вы можете создать свой собственный. Лично у меня есть одинinit.elсо всеми моими привязками клавиш, которые могут использоваться с Windows XP через Parallels на OSX, а также с OSX изначально. Поскольку пользователь может определить свои собственные сочетания клавиш, я не вижу необходимости раскладку клавиатуры в системе предпочтения (с клавиатурой Apple U. S.) если С помощью клавиатуры,которая не включает клавишу Command. Но, я бы выбросил свой тайник IBM clicky клавиатур со встроенной trackpoint? Конечно, нет. :) Я беру свои IBM clicky клавиатуры со мной в следующую жизнь. Любое напряжение руки, скорее всего, вызвано неправильным положением запястья / руки / локтя, а не ударом по контролю против caps lock. Точность улучшается с помощью практики, а также с помощью босса, просматривающего ваши плечо, чтобы увидеть, как вы идете вперед-т. е. немного давления, чтобы быть более продуктивным :)(define-key global-map [?\s-,] 'customize) (define-key global-map [?\s-'] 'next-multiframe-window) (define-key global-map [?\s-`] 'other-frame) (define-key global-map [?\s-~] 'ns-prev-frame) (define-key global-map [?\s--] 'center-line) (define-key global-map [?\s-:] 'ispell) (define-key global-map [?\s-?] 'info) (define-key global-map [?\s-^] 'kill-some-buffers) (define-key global-map [?\s-&] 'kill-this-buffer) (define-key global-map [?\s-C] 'ns-popup-color-panel) (define-key global-map [?\s-D] 'dired) (define-key global-map [?\s-E] 'edit-abbrevs) (define-key global-map [?\s-L] 'shell-command) (define-key global-map [?\s-M] 'manual-entry) (define-key global-map [?\s-S] 'ns-write-file-using-panel) (define-key global-map [?\s-a] 'mark-whole-buffer) (define-key global-map [?\s-c] 'ns-copy-including-secondary) (define-key global-map [?\s-d] 'isearch-repeat-backward) (define-key global-map [?\s-e] 'isearch-yank-kill) (define-key global-map [?\s-f] 'isearch-forward) (define-key global-map [?\s-g] 'isearch-repeat-forward) (define-key global-map [?\s-h] 'ns-do-hide-emacs) (define-key global-map [?\s-H] 'ns-do-hide-others) (define-key global-map [?\s-j] 'exchange-point-and-mark) (define-key global-map [?\s-k] 'kill-this-buffer) (define-key global-map [?\s-l] 'goto-line) (define-key global-map [?\s-m] 'iconify-frame) (define-key global-map [?\s-n] 'make-frame) (define-key global-map [?\s-o] 'ns-open-file-using-panel) (define-key global-map [?\s-p] 'ns-print-buffer) (define-key global-map [?\s-q] 'save-buffers-kill-emacs) (define-key global-map [?\s-s] 'save-buffer) (define-key global-map [?\s-t] 'ns-popup-font-panel) (define-key global-map [?\s-u] 'revert-buffer) (define-key global-map [?\s-v] 'yank) (define-key global-map [?\s-w] 'delete-frame) (define-key global-map [?\s-x] 'kill-region) (define-key global-map [?\s-y] 'ns-paste-secondary) (define-key global-map [?\s-z] 'undo) (define-key global-map [?\s-|] 'shell-command-on-region) (define-key global-map [s-kp-bar] 'shell-command-on-region) ;; (as in Terminal.app) (define-key global-map [s-right] 'ns-next-frame) (define-key global-map [s-left] 'ns-prev-frame) (define-key global-map [home] 'beginning-of-buffer) (define-key global-map [end] 'end-of-buffer) (define-key global-map [kp-home] 'beginning-of-buffer) (define-key global-map [kp-end] 'end-of-buffer) (define-key global-map [kp-prior] 'scroll-down-command) (define-key global-map [kp-next] 'scroll-up-command) ;; Allow shift-clicks to work similarly to under Nextstep. (define-key global-map [S-mouse-1] 'mouse-save-then-kill) (global-unset-key [S-down-mouse-1])
(не эргономичная клавиатура, но мне очень нравится перемещение и ощущение клавиш , а также клавиша управления, Caps Lock меняются местами).
Я создал довольно полный набор Привязок здесь использовать за пределами терминал.
лично я не могу использовать клавиатуру ноутбука mac из-за отсутствия правильной клавиши управления.
вместо этого я использую Компания Microsoft Натуральные Эргономичная Клавиатура 4000 уже более 7 лет: он получил действительно жирные, хорошо расположенные клавиши Ctrl и Alt, а после загрузка драйверов "старт" и Клавиши "Application" тривиально переназначаются на ключ Mac Cmd, который также является толстым и легко нажимается.
чтобы избежать эргономических проблем emacs, я научился использовать Ctrl, Alt и Cmd так же, как мы используем Shift - нажатие их рукой, противоположной той, которая вводит фактическую клавишу. (То есть, я просто оставляю Caps Lock как есть.)
Я установил caps lock для управления в системном предпочтении, и у меня есть следующее В моем init.el для установки команды в meta и опции в super:
(custom-set-variables '(ns-alternate-modifier (quote super)) '(ns-command-modifier (quote meta)))
Я хотел бы рекомендовать 2 программные Seil и карабин. Просто установив Seil и следуя инструкциям в программном обеспечении, вы должны быть в состоянии достичь того, что вы хотите. По моему опыту, карабинер более мощный. У меня есть японская клавиатура, макет которой отличается от обычных. У меня есть некоторые фрагмент который переназначает две дополнительные клавиши на моей клавиатуре на F18 и F19 для другого использования. Вы можете использовать тот же синтаксис для редактирования "частный.xml " файл, чтобы сделать больше вещей.



Comments