Набирайте швидко, коли Control, Alt та Esc важко досягти


12

Я дуже новачок у Emacs і пробую вбудований підручник. Після того, як я ознайомився з основами, мені було важко дістатися до клавіш Ctrlта Altабо Esc. Я намагаюся вводити швидше, але оскільки всі команди вимагають цих клавіш, я зовсім не в змозі бути швидким. Я шукав, але, схоже, ніхто не скаржиться на ці ключі.

Я вже знаю, що ви можете поміняти місцями Ctrlта Caps Lockклавішами, але я вважаю за краще не робити цього, тому що почув, що це не рекомендується.

Як мені полегшити введення команд?


7
Років тому я налаштував Caps Lock як ще один ключ Ctrl, і я цілком задоволений цим, навіть коли не використовую emacs. Настільки краще, щоб це було прямо в домашньому ряду, що я не маю уявлення, хто б рекомендував проти цього.
Ineu

1
Один із аргументів проти цього полягає в тому, що, мабуть, люди, які роблять це (як я!), Завжди використовують їх лівий рожевий і великий палець для натискання клавіш модифікатора. Більш збалансованим підходом було б використання як правої, так і лівої клавіш ctrl та alt, так що одна рука потрапляє на модифікатор, а в іншу - в цільову клавішу. Але у мене є роки м'язової пам’яті з cap-lock як ctrl і я задоволений цим.
глюкас

1
Вам не потрібно використовувати Ctrl та Alt для звичайного "набору тексту". Ключові прив’язки, які використовують ці модифікатори, допоможуть вам орієнтуватися в тексті, вбивати (вирізати), вибивати (вставляти), відкривати файли та багато іншого. За видатним винятком Vi, я думаю, ви виявите, що всі текстові редактори вимагатимуть використання модифікаторних клавіш для цих типів функцій, або ж використовувати мишу. Коли ви говорите "швидко", яка ваша система відліку? Швидкий порівняно з чим? (Як зауваження: я люблю відображати Caps Lock на Ctrl і рекомендував би його будь-кому.)
nispio

2
Ось посилання на ту саму / пов’язану нитку під назвою Який найкращий спосіб уникнути отримання "Emacs Pinky"? : Stackoverflow.com/questions/52492 / ... Дата нитки назад шість (6) років і має більш 12940 поглядів і 31 різних відповідей.
законник

1
Ласкаво просимо до обміну стеками. Я переформулював ваше запитання як запитання, а не опитування, тому що Stack Exchange не займається опитуванням .
Жил "ТАК - перестань бути злим"

Відповіді:


22

На це відповідь важко, але кілька думок:

Спробуйте попрацювати з типовими прив’язками клавіш за замовчуванням, оскільки Emacs спочатку напевно почуватиметься дивним. Я б не радив вносити серйозні зміни в конфігурацію, поки ви краще не зрозумієте, що працює, а не працює для вас.

Ви знайдете користувачів Emacs по обидва боки аргументу cap-lock та ctrl. Особисто я давно використовую cap-lock як клавішу ctrl і вважаю це дуже зручним. Я використовую ліву руку для всіх модифікаційних клавіш: як правило, мій рожевий колір для Caps Lock( C-) і Shift, а мій палець для Alt( M-). Я роблю це роками і задоволений цим. Я бачу сенс уміти натиснути клавіші модифікатора будь-якою рукою, але це не так, як я навчився.

Існують режими, які не залежать від клавіш модифікатора. Якщо вам подобається стиль Vim в режимі модального редагування, ви можете спробувати Evil або більш подібний до Emacs- бог-режим . Але я все-таки пропоную провести деякий час із замовчуванням.

Коли ви більше ознайомитеся з Emacs та дізнаєтесь, які команди та режими ви вважаєте найбільш корисними, тоді ви можете почати майстерність із ключовими прив’язками. Функціональні клавіші можна використовувати як префікс, щоб заощадити собі деяке використання модифікаторів, хоча вам потрібно до них дотягнутися. Існують такі пакети, як клавіш-акорд, які дозволяють прив'язувати повторювані клавіші (наприклад jj) або ключові акорди (наприклад jk) до команд. Також є такі речі, як smartrep, які дозволяють використовувати окремі клавіші для продовження виконання команд після деякої початкової команди, яку можна використовувати, щоб уникнути необхідності утримувати комбінований модифікатор. Але для налаштування таких типів пакетів потрібно знати, які команди потрібно повторно пов’язати, для чого спочатку потрібен певний досвід.


Тиждень тому я переключила блокування ковпачків на контроль, і у мене виникає запитання до людей, які це роблять: чи ти б'єш по замковій шапці лише пінцетом або також безіменним пальцем? Я виявив, що зазвичай, коли я пишу код, я натискаю його на рожевий, але коли я не пишу активно (наприклад, коли я переходжу кодом), я використовую безіменний палець, оскільки це набагато зручніше.
МсьєБанана

Я думаю, що я завжди використовую рожевий колір - але йди з будь-якими роботами!
глюкас

Те, як я використовую модифікатори, по суті ідентично вашому, з додаванням використання правого пальця для натискання alt grклавіші, коли мені потрібно записати наголошені символи з мого макета. Мені не потрібно часто користуватися ним, але варто згадати, що такий підхід добре підходить до макетів, які покладаються на цей ключ.
DoMiNeLa10

10

У мене на Різдво є клавіатура Kinesis. Я не буду публікувати посилання, щоб не робити це рекламою. Клавіатури з подібними якостями теж будуть робити.

До цього у мене була клавіатура Steelseries з додатковою Ctrlкартографією Caps Lock. Мені потрібно було вивчити важливі речі (зі старою клавіатурою):

  • Натисніть M-xз обома руками. Я можу дістатись до правої Ctrlклавіші на клавіатурі ноутбука, але не на старій. Якщо досягнення це здійснимо, ви повинні навчитися натискати C-x, C-r, C-s, C-a, C-eі C-cт.д. з обома руками теж.
  • Використовуйте правильно, Shiftколи це можливо.
  • Якщо ви дотримуєтесь прямої клавіатури, ну, вам доведеться тренувати свій рожевий! Так само, як піаністи грають вправу п’ятьма пальцями.
  • Не використовуйте Home, Pagup, Pagedownі Endтак само як стрілка kyes.
  • Деякі команди можуть мати альтернативні прив'язки клавіш, які можуть бути довші, але простіше натискати (вимагати менше натискання клавіш одночасно).
  • Якщо ви вирішите спробувати ергономічну клавіатуру, вам доведеться зробити кілька перестановок і, замість того, щоб тренувати рожевий, вам доведеться тренувати великі пальці.

1
Підкажіть підказку "обидві руки", це ви не часто бачите. Я занадто часто роблю C-x C-fлише лівою рукою, і це дійсно починає боліти лівою рожевою рукою. Натомість, покласти правий вказівний палець на правий елемент керування, а потім лівий вказівний палець натиснути х, f, це набагато краще.
robru

Говорячи про фортепіано, ви можете спробувати використовувати великий палець, щоб натиснути модифікатори (як, наприклад, при перетині гри на шкалі). Наприклад: Наведіть пальцем вниз Ctrl, скрутіть руку і натисніть xвказівним пальцем. Замість того, щоб сильно стискати руку, ви розслабляєтесь і використовуєте великі м’язи рук. Це працює не для всіх комбо, але ви можете спробувати це особливо для нижнього лівого кута C-a C-c C-d C-s C-x"scrunch fest".
Грег Хендершотт

4

крок 1, встановіть злий режим ( http://www.emacswiki.org/emacs/Evil ). Він використовує прив’язки ключів vim та надає розширені функції vim, як текстові об'єкти, тому ви набираєте значно менше Ctrl, Alt

крок 2, використовуйте зловмисний лідер ( https://github.com/cofi/evil-leader ), ви натискаєте клавішу лідера (я відображаю її в ","), а потім вводите комбінацію будь-яких клавіш для запуску команди. Будь-ласка, скористайтеся цією перевагою, вам більше ніколи не знадобляться Ctrl та Alt, наприклад, я використовую ", mx" для заміни Mx

крок 3, встановіть зловмисне втечу ( https://github.com/syl20bnr/evil-escape ), натискаєте "kj", щоб імітувати "Cg" та "ESC"

Це рішення працює в будь-якому терміналі, BTW.

Яскравий приклад - Spacemacs https://github.com/syl20bnr/spacemacs (але ключ SPACE використовується як лідерський ключ)


2

Я використовую макет 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/


1

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ключ просто - або ви можете визначити інші модифікатори чи вбудовані шари. Зло-дворак - це одна пов'язана оптимізація, хоча вибрана клавіатурна карта дещо особиста.

Узагальнити основні налаштування, пов'язані з ерго, які допомогли мені "жити в emacs" досить високо:

~ 10 років: Kinesis, dvorak, Xmodmap / Xkb, Ratpoison (важливо: встановити втечу RP до чогось у межах досяжності, C-tза замовчуванням, але це може бути легко вдосконалено)

~ 1 рік: пентадактил (із прив’язками Emacs ), режим бога + режим зла (нечесний союз) та перехід на робочий стіл протягом частини дня. Також Helm для швидкого введення команд.


0

Ви помітите, що це дуже дотична тема серед користувачів давнього часу emacs. Як запропоновано тут інші відповіді, спробуйте за замовчуванням трохи дізнатися, які послідовності клавіш особливо складні для вас, для мов, які ви вводите на певній клавіатурі. Потім реалізуйте один або два перестановки критичних клавіш, таких як Ctrl, Meta та Escape. Залежно від вашого ноутбука та ОС, у вас може бути кілька способів зробити перезавантаження. Наприклад, на Mac OS X, панелі налаштувань клавіатури разом з Karabiner буде достатньо для пошуку працездатного перезавантаження клавіш. Спробуйте по одному рішення за раз, щоб побачити, чи відповідає вашим потребам. Може знадобитися колись, щоб знайти те, що відповідає вашим потребам. Користувачі, які давно пропонують уникати перевантаження ваших рожевих пальців. Прислухайтеся.


0

Це питання не стосується Emacs. Також страждають користувачі інших програм, якими можна керувати клавішами. Emacs має це в більшій мірі, тому що в ньому більше команд. Принципова причина полягає в тому, що для всіх потрібних нам команд недостатньо клавіш. Якщо вас теорія не цікавить, перейдіть до останнього пункту.

Очевидним рішенням є додавання додаткової клавіатури для команд Emacs. Тоді у вас буде 200 ключів. Тоді ви будете друкувати ще повільніше. Насправді 100 клавіш на стандартній клавіатурі занадто багато для набору сенсорного типу. Я вважаю, що людина може досягти не більше 22 клавіш однією рукою, не рухаючи зап’ястя.

Щоб набрати швидше, ви переміщуєте клавіші модифікаторів під пальцями. Тоді не вистачає клавіш для латинських літер. Наприклад, "j" - це модифікаційна клавіша, натискаючи "j", а потім натискаючи "d", утворюється літера "j". Якщо вам не подобається натискання клавіші модифікатора для кожної літери, ви використовуєте режими та редактори модалів. Наприклад, у режимі вставки 'j' видає букву 'j'; в командному режимі 'j' заготовки вирізати (вбити); є клавіші для перемикання режимів. (Ці приклади не реалізовані в жодному редакторі, вони є лише прикладами.)

Vim - відомий модальний редактор. Про це було сказано вище. Оскільки Emacs програмується, існує модальний мінорний режим, який називається God Mode . Він служить потребі, хоча його можна вдосконалити. У режимі God, вам не потрібно вивчати нове прив'язування клавіш для кожної команди Emacs, однак, вам потрібно перевести кожне введення ключів у послідовність клавіш у вашій голові. Наприклад, 'gw' створює команду, прив’язану до 'M-w'.


0

Коротше кажучи, натискайте на них все легко пальцями. Можна обійтися і без Кінезису.

Тепер деталі. Купуйте, наприклад, японську клавіатуру:

Японська клавіатура
(джерело: owltech.co.jp )

і використовувати в нижньому ряду як , наприклад , як AltShiftCtrlShiftAltі EscBSSpaceRetTab, середній з яких є фізичний простір бар. Це означає, що якщо натиснути пробіл поодинці, це простий простір, але при натисканні з іншими, це буде Ctrl. Те саме для Alt / Esc, Shift / BS тощо.

Про те, як насправді домогтися цього, див. Який найкращий спосіб уникнути отримання "Emacs Pinky"? в stackoverflow.com. (Це питання вже згадується Жилем )

Ви можете придбати японські клавіатури, наприклад, на ebay.com або amazon.com. amazon.co.jp також доступний англійською мовою.


0

Ліву alt(тобто metaв emacs) клавішу можна легко натиснути за допомогою лівого пальця, і ви можете перев’язати всі свої загальні функції (наприклад, переміщення курсору) на ярлики на основі мета-клавіш замість оригінальних ярликів на основі клавіш ctrl. Я роблю це у своєму файлі init.el.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.