Я пользователь Mac и решил изучить Emacs. Я прочитал , что для уменьшения напряжения рук и повысить точность в CTRLи CAPS LOCKключи должны быть заменены. Как мне сделать это в Леопарде?
Кроме того, в Терминале я должен использовать ESCключ для вызова мета. Есть ли способ получить вместо этого клавишу alt / option для вызова мета?
обновление: хотя теперь нажимать клавишу управления намного проще, мета-клавиша также используется достаточно часто, поэтому ее положение на моем MacBook и клавиатуре Apple также заслуживает внимания. На самом деле, я обнаружил, что нажимать клавишу управления на самом деле легче, поэтому я переназначил свою клавишу управления, чтобы она действовала как мета-клавиша. Есть ли у кого-нибудь лучшее / более стандартное решение?
источник
Ответы:
Замена CTRL и CAPS LOCK
Использование ALT / OPTION как META
Это оно! Вы должны быть на пути к тому, чтобы стать мастером Emacs!
источник
Для справки, вот привязки клавиш для перемещения текста:
⌥+ ←- перемещение на одно слово влево
⌥+ →- перемещение на одно слово вправо
⌥+ delete- удаление на одно слово назад
Shift+ ⌥+ delete- удаление на одно слово вперед
⌥+ ↑- перемещение на один абзац
⌥+ ↓- перемещение на один абзац
⌘+ ←- перемещение в начало текущей строки
⌘+ →- перемещение в конец текущей строки
Shift+ любой из вышеперечисленных расширяет выделение на соответствующую величину
Щелкните, затем перетащите - выделите текст
Дважды щелкните, затем перетащите - выделите текст, перенос до конца слова
Трижды щелкните, затем перетащите - выделите текст, перенос до конца абзаца
Shift+ Выделить текст мышью - добавить к выделению (непрерывно)
⌘+ Выделить текст мышью - добавить к выделенному (несмежный)
⌥+ Перетащить - выделить прямоугольную область (несмежную)
⌘+ ⌥+ перетащить - добавить прямоугольную область к выделению
Перетащить выделение - переместить текст
⌥+ перетащить выделение - скопировать текст
Ctrl+ A- перейти к началу текущего абзаца
Ctrl+ B- переместиться на один символ влево
Ctrl+ D- вперед удалить
Ctrl+ E- переместиться в конец текущего параграфа
Ctrl+ F- переместиться на один символ вправо
Ctrl+ H- удалить
Ctrl+ K- удалить остаток текущего абзаца
Ctrl+ L- центрировать окно на текущем строка
Ctrl+ N- переместиться на одну строку вниз
Ctrl+ O- вставить новую строку после курсора
Ctrl+ P- переместиться на одну строку вверх
Ctrl+ T- транспонировать (поменять местами) два окружающих символа
Ctrl+ V- перейти в конец, затем на один символ влево
Ctrl+ Y- вставить текст, ранее удаленный с помощьюCtrl - K
Добавьте Optionк Ctrl+ Fили Ctrl+, Bчтобы перемещать слово вместо символа за раз.
источник
Другой ответ был очень полным, но я бы также упомянул, что просто установил клавишу Caps Lock на вторую управляющую клавишу, вместо того, чтобы менять их местами.
Кроме того, вы заметите, что подавляющее большинство полей ввода текста в Mac OS X уже принимают нажатия клавиш emacs (^ начало строки, ^ E конец строки, ^ P, ^ N, ^ K, ^ Y и т. Д.)
удачи
источник
Мне очень нравится ответ Кайла Кронина, но я хочу добавить одну вещь - убедитесь, что вы выбрали подходящую клавиатуру, чтобы это работало. Если у вас есть внешняя клавиатура, подключенная к вашему ноутбуку, есть дополнительный раскрывающийся список, и вам нужно будет сделать это для обеих клавиатур (или, по крайней мере, для вашей внешней клавиатуры). На снимке экрана ниже показано диалоговое окно «Выбор клавиатуры» - я выбрал «Совместная клавиатура Mac», что на MacBook означает внешняя клавиатура GoldTouch - по умолчанию используется встроенная клавиатура.
Как только я это понял - у меня это отлично работает!
источник
Если вы используете emacs через ssh-соединение или через машину не на вашем локальном компьютере, кнопки страницы вверх / вниз прокручивают буфер терминала - по моему опыту, это не слишком полезно.
Вы можете настроить кнопки страницы вниз и вверх для отправки соответствующих команд в emacs. В emacs вы можете прокручивать буфер emacs следующим образом:
Итак, чтобы терминал отправлял эти команды в emacs, следуйте инструкциям выше, чтобы изменить клавиши Alt для Meta. Однако вместо того, чтобы устанавливать параметр «использовать параметр как мета», найдите параметры «страница вниз» и «страница вверх».
Листать вниз
Дважды щелкните опцию «страница вниз», чтобы отредактировать ее. Измените действие на «отправить строку в оболочку» и введите \ 026 в качестве строки. Сохрани это.
Page Up
Дважды щелкните кнопку «страница вверх», чтобы отредактировать ее. Измените действие на «отправить строку в оболочку» и введите \ 033v в качестве строки. Сохрани это.
источник
Не уверен, что вы полностью замужем за тем, чтобы использовать Emacs из терминала, но другой вариант - использовать Carbon Emacs (мой любимый) и Aquamacs (очень похожий на Mac). Carbon Emacs использует командную клавишу для мета, это приятно, потому что вы можете выполнять команды Control-Meta, просто удерживая Control и Command, вместо того, чтобы сначала нажимать escape, а затем последовательность клавиш управления.
Кроме того, если вы серьезный пользователь Emacs, я настоятельно рекомендую вам получить клавиатуру, подходящую для программирования (то есть такую, которая сама по себе полностью перепрограммируема). Я использую Kinesis, это немного денег, но они очень прочные и довольно красивые.
источник
Лично у меня есть настройка Caps Lock, чтобы вести себя как команда в системных настройках, а затем в моем файле init.el emacs есть:
(setq mac-command-modifier 'ctrl)
и это позволяет мне использовать Caps Lock в качестве команды в большинстве приложений OSX и в качестве элемента управления в emacs. работает достаточно хорошо для меня.
источник
Ваша радость только начинается. Другие приемы включают:
Прочтите отличную статью на http://stevelosh.com/blog/2012/10/a-modern-space-cadet/, чтобы получить больше информации.
источник
Эта ветка была начата 5 лет назад, и в ней нет ни упоминания,
ns-win.el
ни сборки--with-ns
. Вот все привязки клавиш, доступные (из коробки) в Emacs Trunk по состоянию на октябрь 2013 года. И, конечно же, вы можете создавать свои собственные. Лично у меня есть одинinit.el
со всеми моими привязками клавиш, который можно использовать с Windows XP через Parallels на OSX, а также с OSX изначально. Поскольку пользователь может определять свои собственные сочетания клавиш, я не вижу необходимости переназначать клавиатуру в системных настройках (с клавиатурой Apple US), если толькос помощью клавиатуры, на которой нет клавиши Command. Но могу ли я выбросить свой запас щелкающих клавиатур IBM со встроенным трекпоинтом? Конечно нет. :) Я беру свои щелкающие клавиатуры IBM в следующую жизнь. Любая деформация руки, скорее всего, вызвана неправильным положением запястья / руки / локтя, а не нажатием клавиши Control вместо Caps Lock. Точность улучшается через практику и с помощью босса, оглядывающегося через ваше плечо, чтобы увидеть, как вы продвигаетесь - то есть немного давления, чтобы быть более продуктивным :)источник
(не эргономичная клавиатура, но мне очень нравится ход и ощущение клавиш, а клавиши Control и Caps Lock поменяны местами).
http://matias.ca/osxkeyboard/index.php
источник
Я создал достаточно полный набор привязок здесь для использования снаружи Терминала.
Лично я не могу использовать клавиатуру ноутбука Mac из-за отсутствия нужной клавиши управления.
Вместо этого я использую Microsoft Natural Ergonomic Keyboard 4000 более 7 лет: у нее действительно толстые, хорошо расположенные клавиши Ctrl и Alt, а после загрузки драйверов клавиши «Пуск» и «Приложение» тривиально переназначаются на Mac. Клавиша Cmd тоже толстая и легко нажимается.
Чтобы избежать проблем с эргономикой emacs, я приучил себя использовать Ctrl, Alt и Cmd так же, как мы используем Shift - нажимая на них рукой, противоположной той, которая вводит настоящую клавишу. (То есть я просто оставляю Caps Lock как есть.)
источник
Я установил Caps Lock для управления в системных настройках, и у меня есть следующее в моем init.el, чтобы установить команду на meta и опцию на super:
источник
Я бы порекомендовал 2 программы Seil и Karabiner . Просто установив Seil и следуя инструкциям в программном обеспечении, вы сможете добиться желаемого. По моему опыту, Карабин более мощный. У меня японская клавиатура, раскладка которой отличается от нормальной. У меня есть фрагмент, который переназначает две дополнительные клавиши на моей клавиатуре на F18 и F19 для другого использования. Вы можете использовать тот же синтаксис для редактирования файла "private.xml", чтобы делать больше.
источник