Я очень плохо знаком с Emacs и пробую встроенный учебник. После того, как я прошел через основу, я нашел , что это очень трудно достичь Ctrlи Altили Escключей. Я пытаюсь печатать быстрее, но так как все команды требуют этих клавиш, я не могу быть быстрым вообще. Я искал, но кажется, что никто не жалуется на эти ключи.
Я уже знаю , что вы можете поменять Ctrlи Caps Lockключи, но я предпочитаю не делать этого , потому что я слышал , что это не рекомендуется.
Как я могу упростить ввод команд?
key-bindings
keystrokes
accessibility
анонимный
источник
источник
Ответы:
Это сложный вопрос для «ответа», но несколько мыслей:
Попробуйте некоторое время поработать с привязками клавиш по умолчанию, потому что Emacs сначала будет чувствовать себя странно. Я бы не советовал вносить серьезные изменения в конфигурацию, пока у вас не будет лучшего понимания того, что работает и не работает для вас.
Вы найдете пользователей Emacs по обе стороны аргумента caps-lock vs. ctrl. Лично я давно использовал caps-lock в качестве клавиши ctrl и считаю ее очень удобной. Я использую левую руку для всех клавиш-модификаторов: обычно мой pinky для Caps Lock(
C-
) и Shiftи большой палец для Alt(M-
). Я делал это годами и доволен этим. Я чувствую, что могу нажимать клавиши-модификаторы любой рукой, но это не то, что я узнал.Есть режимы, которые не сильно зависят от клавиш-модификаторов. Если вам нравится стиль модального редактирования Vim, вы можете попробовать Evil или более похожий на Emacs режим бога . Но я бы все же предложил провести некоторое время с настройками по умолчанию.
Как только вы познакомитесь с Emacs и узнаете, какие команды и режимы вы считаете наиболее полезными, вы можете начать работать с привязками клавиш. Функциональные клавиши могут использоваться в качестве префикса, чтобы сэкономить некоторое использование модификаторов, хотя вы должны их использовать. Существуют пакеты, такие как key-chord, которые позволяют связывать повторяющиеся клавиши (например jj) или клавишные аккорды (like jk) с командами. Есть также такие вещи, как smartrep, которые позволяют вам использовать отдельные клавиши для продолжения выполнения команд после некоторой начальной команды, которую можно использовать, чтобы избежать необходимости удерживать некоторую комбинацию модификатора. Но для настройки пакетов такого типа необходимо знать, какие команды вы хотите перепривязать, а для этого нужно сначала разобраться.
источник
alt gr
клавиши, когда мне нужно написать символы с акцентом из моего макета. Мне не нужно часто его использовать, но стоит упомянуть, что этот подход хорошо масштабируется для макетов, использующих этот ключ.У меня есть на Рождество клавиатура Kinesis. Я не буду размещать ссылки, чтобы не делать эту рекламу. Клавиатуры с аналогичными качествами тоже подойдут.
До этого у меня была клавиатура Steelseries с дополнительной привязкой Ctrlк Caps Lock. Важные вещи, которые мне нужно было изучить (с моей старой клавиатурой):
источник
C-x C-f
только с левой рукой, и это действительно начинает ранить мою левую мизинец. Вместо этого, поместив указательный палец правой руки на правый элемент управления, а затем оставив указательный палец, нажмите x, f, это намного лучше.Ctrl
поверните руку и нажмитеx
указательным пальцем. Вместо того, чтобы крепко сжимать руку, вы расслаблены и используете большие мышцы рук. Это не работает для всех комбо, но вы можете попробовать это специально для левого нижнего углаC-a C-c C-d C-s C-x
"scrunch fest".шаг 1, установите режим зла ( http://www.emacswiki.org/emacs/Evil ). Он использует привязки клавиш vim и предоставляет расширенные функции vim, такие как текстовые объекты, поэтому вы печатаете намного меньше Ctrl, Alt
шаг 2, используйте evil-leader ( https://github.com/cofi/evil-leader ), сначала вы нажимаете клавишу лидера (я сопоставляю ее с ","), затем набираете комбинацию любых клавиш для запуска команды. Пожалуйста, воспользуйтесь этим в полной мере, вам больше не понадобятся Ctrl и Alt, например, я использую ", mx" для замены Mx
шаг 3, установите зло-побег ( https://github.com/syl20bnr/evil-escape ), вы нажимаете «kj» для имитации «Cg» и «ESC»
Это решение работает в любом терминале, кстати.
Яркий пример - spacemacs https://github.com/syl20bnr/spacemacs (но в качестве ключа-лидера там используется ключ SPACE)
источник
Я использую макет Dvorak и обнаружил, что он очень хорошо работает с привязками клавиш Emacs по умолчанию.
C-n
находится на домашнем ряду иC-p
может быть нажата указательным пальцем вместо мизинца.C-u
(префиксный ключ) также находится в домашнем ряду.Я поменял местами Caps Lock и Ctrl на всех клавиатурах, потому что мне легче набирать определенные комбинации клавиш. Я также привязан
M-x
к клавише меню (справа от пробела), потому что мне легче нажать, чем слеваAlt
иx
.Помимо этого я использую,
god-mode
чтобы сделать более длительные сессии редактирования немного более удобными. Я не считаю, что ключи Emacs являются препятствием, и я в основном использую значения по умолчанию.Как и @glucas, я использую левый мизинец для Ctrl и левый большой палец для левой клавиши Alt. На истинно эргономичной клавиатуре я связал левую пробел с Alt, что делает его намного менее неудобным, чем на обычной клавиатуре.
Если вас беспокоит слишком сильная нагрузка на левую руку путем переключения Ctrl и Caps Lock, вы даже можете привязать Ctrl к клавише Return. См. Эту статью для получения дополнительной информации: http://emacsredux.com/blog/2013/11/12/a-crazy-productivity-boost-remap-return-to-control/
источник
TL; DR : убедитесь, что важные ключи не так сложно достать.
Я второй ответ wvxvw о Kinesis как профилактическое средство против Emacs Pinky. Я использовал свой в течение 14 лет, поэтому я уверен, что инвестиции уже окупились. На Kinesis я сопоставил нижний ряд с модификаторами (
s-H-C-M
/M-C-H-s
), и у меня естьMode_switch
клавиши большого пальца для доступа к «встроенным клавишам со стрелками». Эта установка оставляет желать лучшего.Бывают случаи, когда мне приходится или нужно набирать текст на ноутбуке, и у меня есть что-то похожее, переназначение числовой строки в модификаторы и помещение числовых символов на функциональные клавиши (см. Мой файл .xmodmap или .xkb для подробности). Это, опять же, означает, что на моих запястьях есть небольшое скручивание, и на мизинцах нет никакого напряжения.
В последние месяцы я заметил напряжение в пальцах
Control
иMode_switch
ноутбуке. Это всегда хорошая идея, чтобы попытаться уменьшить стресс, когда вы замечаете это. Я играл с липкими клавишами , но обнаружил, что их текущая поддержка оставляет желать лучшего. Жаль, потому что они действительно хорошая идея.Тем не менее, мне повезло с режимом Бога , который похож на липкий
Control
ключ, но только в Emacs. Перебираясь с этим и режимом Зла , я заметил, что определить подобный липкийMeta
ключ очень просто - или вы можете определить другие модификаторы или встроенные слои. evil-dvorak - одна из связанных оптимизаций, хотя выбранная раскладка клавиатуры является несколько личной.Подводя итог основным эргономическим настройкам, которые помогли мне «жить в emacs» в достаточно высокой степени:
~ 10 лет: Kinesis, dvorak, Xmodmap / Xkb, Ratpoison (важно: установить выход RP на что-то в пределах досягаемости,
C-t
по умолчанию, но это можно легко улучшить)~ 1 год: пентадактиль (с привязками Emacs ), режим Бога + режим зла (нечестивый союз) и переключение на постоянный стол в течение части дня. Также Helm для быстрого ввода команд.
источник
Вы заметите, что это очень трогательная тема для давних пользователей emacs. Как и предлагали другие ответы, попробуйте немного по умолчанию, чтобы выяснить, какие последовательности клавиш особенно сложны для вас, для языков, которые вы печатаете на конкретной клавиатуре. Затем реализуйте одно или два преобразования критических клавиш, таких как Ctrl, Meta и Escape. В зависимости от вашего ноутбука и ОС у вас может быть несколько способов переназначения. Например, в Mac OS X, панели настроек клавиатуры вместе с Karabiner будет достаточно, чтобы найти работоспособную переназначение клавиш. Попробуйте одно решение за раз, чтобы увидеть, соответствует ли оно вашим потребностям. Может потребоваться некоторое время, чтобы найти то, что соответствует вашим потребностям. Давние пользователи предложат избегать перегрузки ваших мизинцев. Берегись.
источник
Эта проблема не относится к Emacs. Страдают и пользователи других программ, которыми можно управлять с помощью сочетаний клавиш. Emacs имеет его в большей степени, потому что у него больше команд. Основная причина в том, что не хватает ключей для всех необходимых нам команд. Если вас не интересует теория, перейдите к последнему абзацу.
Очевидное решение - добавить дополнительную клавиатуру для команд Emacs. Тогда у вас будет всего 200 ключей. Тогда вы будете печатать еще медленнее. На самом деле, 100 клавиш на стандартной клавиатуре слишком много для сенсорного набора. Я считаю, что человек может достать до 22 клавиш одной рукой без движения запястья.
Чтобы быстрее печатать, вы перемещаете клавиши-модификаторы под пальцами. Тогда не хватает клавиш для латинских букв. Например, «j» является клавишей-модификатором, нажатие «j», а затем нажатие «d» приводит к появлению буквы «j». Если вам не нравится нажимать клавишу-модификатор для каждой буквы, вы используете режимы и модальные редакторы. Например, в режиме вставки «j» создает букву «j»; в командном режиме преформы j прерываются (убиваются); Есть клавиши для переключения режимов. (Эти примеры не реализованы ни в одном редакторе, они просто примеры.)
Vim - известный модальный редактор. Это было упомянуто выше. Так как Emacs является программируемым, существует модальный минорный режим, который называется God Mode . Это служит потребности, хотя это может быть улучшено. В режиме Бога вам не нужно изучать новое связывание клавиш для каждой команды Emacs, однако вам нужно перевести каждое связывание клавиш в последовательность клавиш в вашей голове. Например, «gw» создает команду, связанную с «M-w».
источник
Короче говоря, нажмите их все легко большими пальцами. Вы можете сделать это без Kinesis.
Теперь подробности. Купить например японскую клавиатуру:
(источник: owltech.co.jp )
и использовать в нижнем ряду как , например , как AltShiftCtrlShiftAltи EscBSSpaceRetTab, средний из которых является физическое пространство бар. Это означает, что если вы нажмете пробел в одиночку, это обычный пробел, но при нажатии с другими это будет Ctrl. То же самое для Alt / Esc, Shift / BS и т. Д.
О том, как на самом деле этого добиться, см. Каков наилучший способ избежать получения Emacs Pinky? в stackoverflow.com. (На этот вопрос уже ссылается Жиль )
Вы можете купить японские клавиатуры, например, на ebay.com или amazon.com. amazon.co.jp также доступен на английском языке.
источник
Левая
alt
(т.е.meta
в emacs) клавиша может быть легко нажата с помощью большого пальца левой руки, и вы можете привязать все ваши общие функции (например, перемещения курсора) к сочетаниям клавиш на основе мета-клавиш вместо оригинальных сочетаний клавиш на основе Ctrl. Я делаю это в моем файле init.el.источник