Vim Dvorak сочетания клавиш (перепривязки :) - PullRequest
35 голосов
/ 03 октября 2008

Хотя я играл с ним раньше, я наконец-то начал регулярно использовать Дворжак (упрощенный) . Я был в постоянных отношениях с Vim уже несколько лет, и я пытаюсь найти лучший способ переназначить привязки клавиш в соответствии с моими новыми навыками Дворака.

Как вы переназначили привязки клавиш Vim для лучшей работы с Dvorak?

Пояснения приветствуются!

Ответы [ 7 ]

32 голосов
/ 03 октября 2008

Я использую одну из более общих рекомендуемых комбинаций клавиш :

Dvorak it!
no d h
no h j
no t k
no n l
no s :
no S :
no j d
no l n
no L N
Added benefits
no - $
no _ ^
no N <C-w><C-w>
no T <C-w><C-r>
no H 8<Down>
no T 8<Up>
no D <C-w><C-r>

Клавиши перемещения остаются в том же месте. Другие изменения:

  • Удалить 'd' -> Хлам 'j'
  • Next 'n' -> Look 'l'
  • Предыдущий 'N' -> Оглянись 'L'

Также были внесены некоторые изменения для знакомства, 's' / 'S' может использоваться для доступа к командному режиму (старое местоположение:, которое все еще работает).

Дополнительные преимущества

  • Конец строки '$' -also- '-'
  • Начало строки '^' -also- '_'
  • Поднимитесь на 8 'T'
  • Снизить 8 'H'
  • Следующее окно <C-w><C-w> -также- 'N'
  • Поменять окна <C-w><C-r> -также- 'D'

-Adam

20 голосов
/ 03 октября 2008

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

В качестве бонуса это означает, что мне не нужно запоминать две разные комбинации клавиш, когда я переключаюсь между Dvorak и Qwerty. Разница в раскладке клавиатуры достаточно велика, и я не ожидаю, что клавиши будут в одном месте.

9 голосов
/ 27 января 2009

Немного поздно, но я использую следующее:

" dvorak remap
noremap h h
noremap t j
noremap n k
noremap s l
noremap l n
noremap L N

" easy access to beginning and end of line
noremap - $
noremap _ ^

Это в основном делает следующее:

  • все влево-вверх-вправо находятся под позициями пальцев по умолчанию в домашнем ряду (т.е. не перемещаются на единицу, как в отображениях QWERTY Vim по умолчанию)
  • л / л используется для следующего / предыдущего результата поиска
  • используйте - / _ для достижения конца / начала строки

Мне кажется, это работает ...

9 голосов
/ 10 октября 2008

Я просто использую стандартный qwerty для команд и дворак для режима вставки

Вот как настроить

4 голосов
/ 13 июля 2010

Мои перепривязки:

noremap h h
noremap t j
noremap n k
noremap s l
noremap j t
noremap l n
noremap k s
noremap J T
noremap L N
noremap K S
noremap T J
noremap N L
noremap S K

Примечания:

  • В qwert, vi должен использовать 'h', потому что vi не хочет использовать ';' не письмо. Но в dvroak у нас есть 's', так почему бы не воспользоваться этим преимуществом?
  • vi использует Caps для относительных действий. Это хорошая философия дизайна. Поэтому я пытаюсь соответствовать этому.

Значения:

n (Next) -> l (Left) -- "What's left?" resembles "What's next?"
s (Substitute) -> k (Kill then insert)
t (jump Till) -> j (Jump till)
N, S, T are similar.

J (Join lines) -> T (make lines Together)
K (Keyword) -> S (Subject)
L[count] (Line count) -> N (line Number)

B.T.W. Сам L переходит на последнюю строку, а N - последняя буква фин. (Спасибо за Тензу, чтобы указать на это.)

P.S. Я использовал эти перепривязки некоторое время. Сейчас я не использую его в vim. Я просто использую стандартные.

2 голосов
/ 03 октября 2008

Vim поставляется с обширным сценарием Dvorak, но, к сожалению, он не может напрямую source, так как файл содержит несколько строк инструкций и другой сценарий, который отменяет его эффекты. Чтобы прочитать его, введите следующую команду:

:e $VIMRUNTIME/macros/dvorak
1 голос
/ 09 февраля 2013

Вы можете использовать это для , если Vim использует Dvorak только в режиме вставки:

:set keymap=dvorak

Таким образом, все команды все еще находятся в QWERTY, но все, что вы введете, будет в Dvorak.

Предостережения: Ну, почти все. Режим вставки, режим поиска и режим замены все будут двораками, а команды ex - нет. Это означает, что вам не нужно переучиваться :wq, но вам понадобится набрать :%s/foo/bar/gc в QWERTY.

Это не поможет, если вы хотите перемещать только определенные команды, но я обнаружил, что в моей голове «двигаться вперед на одно слово» было обязательно «двигать левый безымянный палец вверх», а не «спрашивать отдел печати буква «w» есть, а затем нажмите ее «, что значительно облегчило мне этот метод».

...