Размещение рук для Vim Navigation

12

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

При использовании Vim, как вы позиционируете свою правую руку? Я считаю , что более естественно начать с моими пальцами по jkl;клавишам, но тогда я окажусь отсутствует hключ в то время , когда я навигации. С другой стороны , если я устанавливаю свои пальцы на hjklто я считаю себя опечатками слова , как это не позиция , которую я был обучен , чтобы держать руку на клавиатуре, и я считаю , переключая jkключи с моим средним и третьим пальцем , чтобы быть неудобно.

Дэнни
источник
6
Определенно держите пальцы на j,k,l,;. С одной стороны , вы научитесь бить hв кратчайшие сроки. Во- вторых, когда вы знаете , ВИМ лучше, вы не будете использовать hвсе , что много на самом деле. В-третьих, привязки клавиш в основном определяются с учетом этой позиции руки, поэтому в долгосрочной перспективе вы просто поменяете одну проблему на другую.
PhilippFrank
3
Не беспокойся У Vim есть намного лучшие команды перемещения курсора, чем hjkl. См :help navigation.
Ромейнл

Ответы:

12

Прежде всего, я предполагаю, что вы используете QWERTY-клавиатуру. Мой ответ не основан на моих личных предпочтениях, я просто переформулирую часть удивительного « Практического Вима», написанного Дрю Нейлом.

TL; DR Vim оптимизирован для сенсорных машинисток, поэтому ваши руки должны оставаться там, где вы их научились: левой рукой asdf и правой рукойjkl;

Нил говорит , что положить правую руку на hjklэто очень плохо , что нужно сделать. Основная причина заключается в том , что перемещение курсора с помощью клавиш hjklявляется то , что должно быть очень случайным , так как ВИМ обеспечивает гораздо быстрее словампереключает движения или движения поиска символов ( w, b, f, t, /...).

Я также прямо процитирую эту часть:

Я использую hи lключи для внедорожной череды ошибок, когда я едва скучаю по своей цели. Кроме того, я едва касаюсь их. Учитывая , как мало я использую hключ, я рад, что растянуть его на клавиатуре Qwerty. С другой стороны, я использую команды поиска символов часто, так что я доволен , что; Ключ удобно лежит под моим мизинцем.

Бонус: даже если это не похоже на ваш случай, вот совет, чтобы избавиться от дурной привычки новичков, состоящей в использовании клавиш со стрелками для перемещения: просто добавьте следующие строки, .vimrcчтобы полностью отключить клавиши со стрелками:

noremap <Up>    <Nop>
noremap <Down>  <Nop>
noremap <Left>  <Nop>
noremap <Right> <Nop>

( <Nop>расшифровывается как «Нет операции»)

statox
источник
5
В «ключи hjkl использовать, стрелка ключи лукавы» -dogma является сильным в сообществе Vi / Vim, но во многих отношениях это также глупо один. Помимо того, что я совсем не уверен, что на самом деле это быстрее во всех сценариях, даже если бы это было так, действительно ли это самая важная вещь в изучении Vim? Или есть другие вещи, которые сэкономят вам гораздо больше времени (например, движения, работа с метками, регистры, основы VimScript и т.
Мартин Турной
4
Я использую компьютеры около 30 лет. Приблизительно каждые 5 лет я возобновляю свои попытки научиться печатать «правильно». До сих пор каждый раз, когда я делал это, у меня также появлялись симптомы острого синдрома запястного канала в течение первых нескольких дней. И каждый раз симптомы исчезали, как только я сдавался и возвращался к своим старым привычкам. Я также занимался боевыми искусствами около 40 лет, и у меня никогда не было проблем с суставами. Мои привычки включают в себя использование клавиш со стрелками и много движения рук во время набора текста. Это hjklникогда не помогало мне. Что помогло, так это покупка механических клавиатур хорошего качества. FWIW.
lcd047
Я ответил на вопрос, потому что я прочитал это недавно, и я почувствовал, что он хорошо подходит для нужд ОП. По теме размещения рук, французский я утро использует AZERTY клавиатуру , так что вопрос на самом деле не существует: Моя левая рука находится на hjklс ключа на праве lИС , mкоторая является довольно бесполезно. Об оптимизации использования этих клавиш для навигации Я пытаюсь заставить себя использовать движения как можно чаще hjkl, но я все еще часто использую , я все еще чувствую, что это быстрее, чем клавиши со стрелками, но я предполагаю, что это довольно субъективная тема.
statox
Я хочу сбалансировать комментарий @ lcd047, сказав, что у меня совершенно противоположный опыт. Я был наполовину в курсе того, как печатать на клавиатуре несколько лет, продолжая возвращаться к старым привычкам, пока я не начал использовать vim. Для меня одно из преимуществ использования vim заключается в том, что его система навигации и команд с простыми клавишами, например jkl;, заставляет вас держать руки в устойчивом положении при наборе текста для навигации по тексту. В результате я стал намного быстрее и точнее машинистки.
Андреас