Подтвердить что ты не робот

Каков наилучший способ избежать получения "Emacs Pinky"?

Я только начал использовать GNU Emacs в качестве своего текстового редактора, и я обеспокоен тем, что меня беспокоит " Emacs Pinky, постоянно настаивая управляющий ключ с моим мизинцем, как это требуется при использовании Emacs. Как я могу избежать потенциального получения этого типа повторяющихся травм напряжения?

4b9b3361

Ответ 1

Создание блокировки caps - это еще один ключ для запуска. Инвестируйте в эргономичную клавиатуру. Некоторые пользователи emacs даже заходят так далеко, чтобы получить педальные вещи для контроля и мета...

Ответ 2

Настройте так, чтобы пробел работал как пространство, так и управление; когда space нажата одна, как пространство и нажата вместе с другими, как ctrl. Таким образом, space + x рассматривается как ctrl + x.

Вы можете сделать это с помощью AutoHotKey в Windows и с at-home-modifier "в Xorg в Linux. (X, но только Linux). Вы можете использовать Karabiner (формализм, известный как keyremap4macbook) в Mac. (На самом деле, я am автор встроенного модификатора. =)

Вы можете сделать больше, если у вас есть клавиатура со многими клавишами вокруг пространства, например, японские клавиатуры: японская клавиатура http://www.owltech.co.jp/products/keyboard/KB86STD/KB86STD_B-320.jpg

Моя нижняя строка в основном Esc BS space Enter Tab, но при использовании в качестве модификаторов она Alt Shift ctrl Shift Alt. (Например, если вы сначала удерживаете Esc, а затем "Пробел", это Alt + space, а Space - Esc, это ctrl + Esc. Если вы нажмете space, Esc и x, тогда это ctrl + Alt + x.) Все можно нажать большими пальцами. Вы можете заказать японскую клавиатуру с сайта amazon.com. Вам не обязательно говорить по-японски.

Это очень удобно. Например, для firefox (извините, а не emacs), сосредоточьте ссылку и нажмите Ctrl + Enter; то он будет открыт на новой вкладке. (Также нажав Shift, он переключится на новую вкладку, а не останется на текущем.)

(Приведенное выше изображение - это автор домашнего модификатора. Производитель больше не продает эту модель.)

Ответ 4

Получите ножную педаль! (У меня есть кинезис.) После того, как вы это сделаете, отмените контроль и каплок, чтобы заставить себя использовать ваши ноги.

(FYI, переназначение caplock поможет, но после достаточного количества emacsing за один день, не будет полным решением.)

Ответ 5

За любовь к Богу - используйте другой текстовый редактор! Если это что-то, что требует ножной педали, чтобы нормально работать с ним, тогда... ну... честно говоря, я потерял дар речи. Существует множество мощных современных текстовых редакторов, которые не требуют, чтобы вы запоминали объемы тайных нажатий клавиш или покупали причудливое оборудование.

Знаешь, я могу понять и принять много вещей, но ножная педаль для простого текстового редактора действительно там, где я рисую линию.

Ответ 6

Мне всегда было любопытно, почему такое большое сообщество программистов, писателей, вундеркиндов и т.д. еще не нашли супер простого и эффективного решения этой проблемы. Просто: 1) возьмите небольшой лист бумаги, сделайте бумажный шар; 2) используйте скотч, чтобы прикрепить его к левой клавише Ctrl (временно удаляя его с места); 3) при написании используйте сторону левой ладони, чтобы нажать эту клавишу - теперь эта клавиша выше других, и вы можете сделать это легко. Таким образом, вам не нужно покупать эрго-клавиатуры uber или перетащить ключ ctrl в caplock (который вы в конечном итоге нажмете с вашим мизинцем)...

Так много дискуссий о такой маленькой проблеме.

Ответ 7

Remap Left-Ctrl и Caps-Lock, чтобы они были такими:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,3a,00,1d,00,1d,00,3a,00,00,00,00,00

Ответ 8

Я полностью согласен с решением для блокировки шаттлов для резервного копирования, что очень помогает. Чтобы пойти еще дальше, я пробовал и любил привязки клавиш Ergoemacs. Проект активно развивается и поддерживается достаточно хорошо. Я лично не использую его, потому что он не интегрирован с Mac OS X (некоторые EMACS-ключи интегрированы в Cocoa), хотя кажется, что кто-то отправил файл inputrc с ключами Ergoemacs. Еще один трюк, с которым я играл, - это StickyKeys. Он поддерживается на многих платформах и устраняет некоторые проблемы, характерные для записи (в отличие от просто чрезмерного использования): по-видимому, рекомендуется использовать emacswiki: http://www.emacswiki.org/emacs/StickyModifiers

Ответ 9

Я использую отличный режим key-chord для обычных действий. Вы можете назначить ему функции или последовательности клавиш.

Чтобы убедиться, что я не слишком затрудняю нормальную типизацию, я создал статистику букв, чтобы найти хорошие ключевые аккорды. Я записал их вместе с моими аккордами по умолчанию.

Кроме более удобного командного вызова, у меня есть аккорды для вставки таких вещей, как

Best wishes,
Arne

Я ненавижу писать письма без этого ☺

Также я использую режим блокировки управления для таких вещей, как flyspell, где мне нужно постоянно контролировать. Это модальное редактирование с помощью реальных ярлыков emacs.

Аккорды, которые я использую больше всего,

; buffer actions
(key-chord-define-global "vg"     'eval-region)
(key-chord-define-global "vb"     'eval-buffer)
(key-chord-define-global "cy"     'yank-pop)
(key-chord-define-global "cg"     "\C-c\C-c")
(key-chord-define-global "äü"     'control-lock-toggle)

; frame actions
(key-chord-define-global "xo"     'other-window);
(key-chord-define-global "x1"     'delete-other-windows)
(key-chord-define-global "x0"     'delete-window)
(defun kill-this-buffer-if-not-modified ()
  (interactive)
  ; taken from menu-bar.el
  (if (menu-bar-non-minibuffer-window-p)
      (kill-buffer-if-not-modified (current-buffer))
    (abort-recursive-edit)))
(key-chord-define-global "xk"     'kill-this-buffer-if-not-modified)

; file actions
(key-chord-define-global "bf"     'ido-switch-buffer)
(key-chord-define-global "cf"     'ido-find-file)
(key-chord-define-global "zs"     "\C-x\C-s")
(key-chord-define-global "vc"     'vc-next-action)

Ответ 10

Сначала я хотел бы указать на то, что предлагая не использовать Emacs, потому что привязки по умолчанию, возможно, не для всех, не имеет никакого смысла. Emacs - это самый настраиваемый "текстовый редактор", который когда-либо делался, и, конечно же, тривиальные вещи, такие как сопоставления клавиш, полностью настраиваются.

Что касается вопроса "Emacs pinky", я заметил, что у нескольких людей есть "anti-Emacs-pinky" keybindings в их .emacs, как пользователь "Paul Nathan" (17.5k rep, поскольку я печатаю это) здесь:

Какие хорошие пользовательские привязки клавиш в emacs?

Тогда известно, что многие люди предпочитают vi-режим и режим viper-пользователя Emacs.

Я думаю, что основной проблемой в Emacs является, по умолчанию, чрезмерная зависимость от CTRL и, более конкретно, C-x и C-f/C-b. Эти трое действительно страшны, потому что это означает, ИМХО, болезненные искажения пальцев.

Итак, для меня сначала нужно определить проблему: в чем проблема? Проблема заключается в чрезмерной зависимости по умолчанию от CTRL, тот факт, что CTRL, как правило, плохо расположен на большинстве клавиатур и тот факт, что большинство клавиатур там (я бы оценил более 99,9% всех когда-либо выпущенных клавиатур) барахло.

Итак, каково мое решение?

  • Я использую хорошую механическую клавиатуру, и я делаю touch-type. Люди, которые действительно серьезно относятся к этому, скорее всего, выложит $$$ за очень хорошую расщепленную и матричную клавиатуру (например, Kinesis Advantage)... Поскольку матрица split и - это единственный вид клавиатуры, который имеет смысл эргономическая точка зрения (это даже не открыто для обсуждения). Я, к сожалению, печатал три десятилетия и не могу приспособиться к макету макета, поэтому я использую старую (испорченную) шахматную клавиатуру. Если вы собираетесь использовать пошатнутую клавиатуру, по крайней мере, возьмите тот, у которого есть хороший переключатель (например, пружины для сгибания, например, в коммутаторах IBM Model M или Cherry MX или Topres, как в Happy Hacking Keyboard Pro). Будьте готовы выложить $500 и более, если вы надеетесь найти раскол + "механический" в шахматном порядке, например, Cherry MX-5000 (*) или IBM M15.

Итак: короче говоря, если вы серьезно относитесь к этому, идите на Kinesis Advantage (они используют переключатели Cherry MX, и вы даже можете выбрать свой конкретный коммутатор, если я не ошибаюсь).

Если, как и я, вы, к сожалению, не можете приспособиться к этим замечательным клавиатурам, потому что они "слишком разные", а затем идут на хорошую "механическую" клавиатуру. Любая клавиатура, позволяющая не "дно" при наборе текста, сохраняет суставы ваших пальцев. Помогает после десятилетий программирования.

Если вы не хотите идти "механическим" маршрутом и думайте, что резиновые купола - это прекрасные клавиатуры (я считаю их барахлом, но каждый из них предпочитает), то, по крайней мере, выберите хороший резиновый купол. MS 'Ergo 4K был бы хорошим выбором (еще раз: это резиновый купол, поэтому для меня это палец-разрушающий мусор, но это вопрос вкуса).

  • после того, как вы используете хорошую клавиатуру, переведите CAPS-LOCK в CTRL. Может выполняться на любой ОС. Это тривиально, и есть много ссылок на эту тему.

  • Клавиши Remap Emacs, чтобы перестать полагаться на CTRL. Первый CTRL-x ужасен. Это действительно должно быть худшим ярлыком когда-либо. Но вы можете переназначить ctl-x-map на то, что хотите. Я делаю это в моем переопределяющем второстепенном режиме:

    (define-key my-keys-minor-mode-map (kbd "C-," ) ctl-x-map)

C-, может не понравиться вам: выберите что-то еще...

Тогда возникает проблема перемещения курсора. Я думаю, что это большой для "текстового редактора". Даже если они склонны использовать все тонкие функции Emacs для быстрого перемещения текстовых буферов вместо "перемещения курсора", мне все же нужно довольно часто перемещать курсор "вручную".

C-f/C-b должен быть двумя самыми глупыми ярлыками для перемещения курсора.

Я использую M- {i, j, k, l}. Поэтому люди предпочитают {hjkl} вместо {ijkl}, но мне нравится {ijkl}, потому что он воспроизводит перевернутую T-стрелку. Мне также нравится тот факт, что когда вы, как приказчик, находитесь в своем домашнем ряду, у вас уже есть три пальца на {jkl}. Никакое сумасшедшее движение пальца для достижения "f" или "b": не имеет смысла.

И последнее, но не менее важное: когда вы не набираете текст, отдохните пальцы на клавиатуре. Для этого, конечно, вам нужна клавиатура с хорошим переключателем, который обладает достаточным сопротивлением, чтобы не активироваться, когда вы просто отдыхаете на клавиатуре.

Ответ 11

Microsoft Natural Keyboard очень и очень хороша для меня. Я использую emacs для всех 10+ часов в день без проблем.

Ответ 12

Мой совет: попробуйте использовать большие пальцы, чтобы нажимать клавиши-модификаторы (control, alt), когда они находятся в пределах досягаемости. На клавиатурах с более коротким пространственным экраном можно нажать Alt (Meta), даже не сгибая большой палец внутрь. Вы можете перенаправить, например. справа Alt для управления и таким образом иметь возможность удобно обращаться к Control и Alt. Это также возможно на MS Natural Keyboards.

Ответ 13

Рассмотрим клавиатуру Kinesis Contoured. Мне потребовался месяц, чтобы ускориться с моим, и теперь я считаю, что это идеальная клавиатура Emacs, даже без педали.

Нет шутки. Я заказал свой первый с педалью пищи, но обнаружил, что на самом деле я не способен координировать время моих ног и рук достаточно, чтобы использовать его для ключей-модификаторов. Некоторое время я использовал его для переключения интегрированной цифровой клавиатуры, но я это понял, когда понял, что я не использую его, потому что числовая строка на Kinesis настолько легко доступна.

Ответ 14

Одно из решений, еще не упомянутое здесь, - использовать обе руки для комбинаций клавиш.

Например, предположим, что вы хотите нажать < CTRL-K > . На QWERTY-клавиатурах <K> находится справа, поэтому нажмите <CTRL> с вашей левой рукой и <K> с вашей рукой справа. Как только вы привыкнете к системе, она отлично работает.

Ответ 16

Еще один подход: если вы хотите избежать "emacs pinky", просто не используйте мизинец для нажатия клавиши управления.

Если вам необходимо переделать ключи на клавиатуре, выполните следующие действия:

[Ctrl] [Alt] [Пробел] [Alt] [Ctrl]

На любой стандартной клавиатуре (которая симметрично позиционирует клавиши-модификаторы, например, любую клавиатуру MS) теперь вы можете нажать клавишу Ctrl с помощью безымянного пальца и клавиши Alt с средним пальцем на обоих Руки. Эти пальцы намного сильнее, чем мизинец, и могут выносить частые привычки.

Отличный инструмент для простого переназначения клавиш клавиатуры в окнах AutoHotKey

На Ubuntu мне удалось это сделать, используя: Настройки/макеты клавиатуры/Другие опции

Ответ 17

Поместите модификаторы, где они были означало to be: по обе стороны от пробела, где они могут быть нажаты большим пальцем (или другой цифрой по вашему выбору) на противоположную руку от цифры, нажимающей измененную букву (так что Cg справа - большой палец на Ctrl и левый указатель на "g", а Ck - влево-вправо на Ctrl и вправо на "k" ). Вы заметите, что правильная последовательность изнутри - Ctrl Meta Super Hyper.

Как вы это делаете, зависит от вашей ОС и вашей клавиатуры. Для Windows вы можете запустить здесь. В Mac OS X вы можете посмотреть в разделе "Системные настройки" > "Клавиатура и мышь" > "Модификационные клавиши". Для Linux существует тысяча xmodmap и XKB учебники.

Ответ 18

Попробуйте viper-mode, который является эмулятором vi в emacs. Как человек, который несколько раз переключался между vi/emacs/vim за последние 25 лет, я теперь, наконец, пытаюсь использовать viper-mode в emacs, и мне это нравится. Я считаю, что команды vi более удобны, но я все еще могу поддерживать расширенные функции emacs, которые мне нравятся.

Ответ 19

Я использую emacs и bash весь день каждый день, и у меня есть caplock в качестве дополнительного левого управляющего ключа, например VT100. Никто не упомянул о лучшем способе сделать это на X11. (на самом деле это относится к X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X

setxkbmap -option ctrl:nocaps

 Or edit your xorg.conf to have
Section "InputDevice"
        Identifier  "Generic Keyboard"
        Driver      "kbd"
        Option      "XkbRules" "xorg"
        Option      "XkbModel" "pc105"
        Option      "XkbLayout" "us"
        Option      "XkbOptions" "ctrl:nocaps"
        Option      "Autorepeat" "200 40"
EndSection

(XkbOptions и Autorepeat - это то, что я добавил к предварительно сгенерированному. Затем X будет начинаться с правого сопоставления клавиш каждый раз, и вам не нужно искать, куда положить setxkbmap, чтобы он выполнялся каждый раз, когда вы войдите в систему и запустите диспетчер окон.)

Хотя у gnome есть приложение для управления клавиатурой, как упоминал боском.

FYI, emacs изначально был написан для машин MIT lisp с "space cadet" клавиатурами. X11 имеет ключи супер, гипер, альт и метамодификаторы. Иногда клавиши "Windows" на клавиатурах ПК сопоставляются с Super. Они удобны для привязки к файлу диспетчера окон (например, для переключения виртуальных рабочих столов), потому что практически не используются приложения.

Ответ 20

Чоу,

вчера я нашел решение, в котором мы можем иметь системный интерфейс ErgoEmacs на Mac.

Фокус в том, чтобы использовать систему привязки mac os x, так что у вас есть системный ключ ErgoEmacs с клавишей Control. Затем в предпочтениях ОС поменяйте ключ Control и Cmd.

Таким образом, вы получаете систему шифрования ErgoEmacs в широком диапазоне с модификатором рядом с пробелом. Разумеется, обратный ход - нормальный Mac Cmd + теперь находится на углу клавиатуры. Итак, это компромисс, о том, используете ли вы большинство приложений для редактирования текста или ярлыки приложений.

может дать ему шанс: http://code.google.com/p/ergoemacs/wiki/ErgoEmacs_keys_system_wide

также, несколько лет назад я попробовал Mac OS-Custome keybinding, некоторые приложения cocoa все еще не поддерживают его. См. Внизу здесь

Как создать привязку клавиш в Mac OS X

но, возможно, сейчас все лучше.

Ответ 21

У меня есть естественная клавиатура MS, и это потрясающе. Мне удалось тренироваться, чтобы использовать сторону левой руки (ниже розового), чтобы нажать клавишу Ctrl.

Ответ 22

Даже после переназначения caplock для управления вам все равно придется использовать свой мизинец, чтобы нажать на него - по крайней мере, я это делаю, потому что мой безымянный палец не дойдет до него для команды типа Cg. Использование вашего мизинца вообще не рекомендуется, верно?

Я нахожусь в MacBook Pro, и я просто переназначил с правой стороны клавиатуры, чтобы стать control. Таким образом, например, Cg становится нажатием клавиши, которую я выполняю обеими руками, правой рукой на , а мой левый указательный палец на g.

Мы посмотрим, поможет ли это с моим RSI. Кто-нибудь еще это сделал?

Ответ 23

Одной из первых вещей, которые я делаю на новой машине, является переделка Caps Lock на новый элемент управления.

Google, есть много доступных файлов .reg, которые сделают это безболезненно для вас в Windows.

Ответ 24

Я начал использовать сторону\ладонь моих рук, чтобы набрать контрольный ключ вместо моих мизинных пальцев. Я понимаю, что на более эргономичных клавиатурах клавиша клавиши управления больше, что облегчает выполнение этого движения.

Ответ 25

Я могу использовать ключ Control в любом положении на западе или юго-западе без каких-либо проблем. Многие Emacsers клянутся, что контрольный ключ принадлежит в западной позиции и только в западной позиции, и что что-то еще разрушит ваш мизинец. Единственное, что мы знаем наверняка, заставляет RSI печатать слишком много. Попробуйте режим прерывания и посмотрите, помогают ли несколько регулярных разрывов.

Ответ 26

Купите Happy Hacking Keyboard, которая имеет Ctrl в нужном месте (Caps Lock перемещается в другое место). Он отлично реагирует и настраивается с помощью DIP-переключателей для максимальной интеграции на Mac, Windows и Linux (например, вы можете переключать то, что Alt и что такое ключ Windows с клавиатуры, не требуется программное обеспечение).

Он также имеет очень малую площадь, если это подходит вашей фантазии.

Ответ 27

Поскольку этот поток все еще идет, я добавлю два цента:

С или без emacs ключ ctrl полезен для тонны вещей в linux или windows: копирование, вырезание, вставка, поиск, закрытие, выход... Я постоянно использую этот материал. Так как другие предложили, я хочу, чтобы рядом с пробелом я мог использовать большой палец. И это как по умолчанию на Mac, где все это использует ключ cmd:

[ctrl] [alt] [cmd] [пробел]

Итак, я использую клавиатуру mac в своем linux-блоке и устанавливаю ключ CMD в качестве второго ключа ctrl (в Ubuntu Lucid: Prefs клавиатуры > Макеты > Параметры > Alt/Win Key Behavior > Control сопоставляется клавишам Win (и обычные клавиши Ctrl))

[ctrl] [alt] [ctrl] [пробел]

Другие преимущества: * Когда мне нужно иногда использовать mac, вырезать/вставить/и т.д. Все в одном и том же месте, к которому я привык. * ctrl + tab (с помощью реального ключа ctrl) по-прежнему перемещается по вкладкам для браузеров и других приложений на обеих платформах.

Недостатком этого плана является то, что альт-ключ перемещен влево, поэтому команда alt + tab (которую я использую для переключения окон) больше не совпадает с эквивалентной CMd + вкладкой mac. Но я все еще могу ударить его большим пальцем, и это все еще для меня гораздо меньшее зло, чем уничтожение моего мизинца. Да, я знаю, я мог бы просто сделать ctrl + tab переключателем окна, но тогда реальный ключ ctrl не работает для переключения вкладок. Кроме того, когда приложения переходят в браузер, навигационные стратегии окна/вкладки будут немного текут - но основы, такие как вырезание/вставка, никуда не денутся, поэтому я хочу, чтобы они были заблокированы. Под моим большим пальцем.

(Конечно, если вы хотите использовать emacs на mac, я думаю, вы вернетесь на квадратный...)

Ответ 28

Я действительно сделал свой собственный взлом, чтобы избежать использования клавиши ctrl. Теперь я использую клавишу ПРОБЕЛ. Эта небольшая программа для X изменяет поведение пробела, поэтому, когда она используется в комбинации, она добавляет к ней модификатор управления. При использовании в одиночку он ведет себя нормально при выпуске. Таким образом, вы не должны использовать свой мизинец вообще! Работала отлично для меня.

Ответ 29

Я не программист, и мне также сложно объяснить идеи. Я на мини-ноутбуке dell. Тачпад мыши находится в месте, где мои большие пальцы отдыхают. Моя левая кнопка тачпада действует как клавиша управления: Со стороны большого пальца я нажимаю его и редактирую в emacs, как обычно. Я собирался направить правую кнопку тачпада на alt, но вместо этого я сделал следующий: Я нажимаю кнопку, и клавиша управления нажата (заблокирована). Я снова нажимаю его, и controll освобождается. Это не только улучшило мой мизинец, но и сделало мое редактирование в два раза быстрее. (в соответствии к моим часам в режиме org-mode) Трудно объяснить, как хорошо это работает. Для этого я использовал следующие два варианта: xbindkeys xdotool Мой конфигурационный файл xbindkeys:

###########################
# xbindkeys configuration #
###########################
# left mouse button ctrl key
"xdotool keydown ctrl"
b:1
"xdotool keyup ctrl"
control + b:1  +  Release
# vi wanna be style editing
"xdotool keydown ctrl"
release+b:3
"xdotool keyup ctrl"
release+control+b:3
# -------------------------

Прежде чем экспериментировать с этими идеями, обязательно прочитайте страницы руководства. У вас нет ничего важного. Мне пришлось несколько раз убить моего оконного менеджера прежде чем получить его правильно. заметки: Я использую xmodmap, чтобы делать все обычные вещи, т.е. Cap --- > control (не полное решение), заменяя alt и control. (на ноутбуке Это нормально, но мои большие пальцы судороги вверх) Я использую конфигурационный файл диспетчера окон (stumpwm) для создания привязок для загрузки правильного сопоставления клавиш файл. (в зависимости от моего настроения за день) Я уверен, что все это можно реализовать в другой среде. Моя розовая боль ушла, мое редактирование быстрее.

Ответ 30

Попробуйте плагин God-Mode, который неплох.