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

VIM Super Fast Navigation

Единственное, что я скучаю по поводу использования других редакторов, - это найти мое место с помощью мыши. Я могу смотреть своими глазами на определенную область в файле и с движением мыши и одним щелчком мыши. С VIM я должен jjjjjkkkkkkjjjhhhh... почти там hhhhh ой дерьмо я пропустил 3 символа, lll.

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

Как вы все супер просматриваете файлы? Я знаю, что я мог бы также делать 5j7k4j5h и т.д., Но должен быть плагин, который может читать мои глаза и помещать курсор там, где он мне действительно нужен.

Я также научился использовать /% для поиска определенного термина. Это помогает, но все соответствующие символы выделяются из документа.

4b9b3361

Ответ 1

Попробуйте $ vimtutor, он научит вас всему, что вам нужно знать, чтобы начать.

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

wWEe и BbgegE все позволяют перемещаться по слову:

  • w и e идти вперед, w и e учитывать пробелы и пунктуации

    " here the * marks the default location of the cursor
    " and each letter shows where you jump when you hit the key.
    
    Latin: Lorem ipsum dolor sit amet.
                       *   e   e    e
                       *   E   E     E
    *    w w     w     w     w   w   w
    *      W     W     W     W   W   W
    
  • b и ge идти назад, b и ge учитывать пробелы и пунктуации

    Latin: Lorem ipsum dolor sit amet.
    b    b b     b     *
    B      B     B     *
         ge    ge    ge*
        ge
         gE    gE    gE*
    

fFtT используются для достижения определенного символа на текущей строке и ;, используются для повторения этого движения в том же направлении для ; и в обратном направлении для ,:

  • fm переходит в следующий m вперед, F идет назад

    Latin: Lorem ipsum dolor sit amet.
    *          fm    ;            ;
               ;     Fm          *
    
  • tm переходит к следующему m вперед, T идет назад

    Latin: Lorem ipsum dolor sit amet.
    *         tm    ;            ;
              ;     Tm           *
    

/? используются для перехода к первому вхождению шаблона из текущей позиции курсора:

  • /pattern идет вперед

    Latin: Lorem ipsum dolor sit amet.
    *            /ips
    
  • ?pattern идет назад

    Latin: Lorem ipsum dolor sit amet.
    ?Lat             *
    

0$ используются для перехода к первому и последнему символу строки.

    (whitespace)Latin: Lorem ipsum dolor sit amet.(whitespace)
    0                  *                                     $

^g_ используются для перехода к первому и последнему печатаемому символу строки.

    (whitespace)Latin: Lorem ipsum dolor sit amet.(whitespace)
                ^      *                         g_

Одиночный и комбинированный ()[]{} используются для перемещения фразы по фразе или абзаца или кода блоком кода.

<C-b> и <C-f> используются для прокрутки по экрану назад и вперед.

<C-u> и <C-d> используются для прокрутки по полуэкрану назад и вперед.

H, m и L переместите курсор в верхнюю, среднюю и нижнюю части окна просмотра соответственно.

zt, zz и zb переместите строку под курсором в верхнюю, среднюю, нижнюю части окна просмотра соответственно.

И так далее.

:help motion.txt ударит ваш ум.

Ответ 2

Помимо команды vim motion, я нахожу плагин vim с именем EasyMotion довольно полезно перемещаться, если вы знакомы с vimperator или pentadactyl, EasyMotion просто вернет режим подсказки обратно в vim. здесь - это анимированная демонстрация и здесь - это видео руководство. Надеюсь, что это будет полезно для вас.

Ответ 3

Есть два миллиона способов передвижения в vim, это одна из его действительно сильных областей. Я много использую { и }, которые перемещаются вверх и вниз до следующей пустой строки в этом направлении. % полезен для перемещения вперед и назад в подходящую скобку (любого типа). W и B перемещаться вперед и назад по слову.

Возможно, стоит рассмотреть раздел Перемещение" руководства Vim.

Ответ 4

У vim есть поддержка мыши! попробуйте (в вашем .vimrc):

set mouse=a

sidenote: как пользователь экрана, я обнаружил, что мне также нужно

set ttymouse=xterm2

для этого.

Ответ 5

лично я предпочитаю использовать:

"/<chars><enter>" to quickly move to somewhere   ( extremely fast! trust me! )
":<number>" to go to some line, 
"ctrl + f/b" to forward/back
"g;" to move to the last editing place.
"w/b" to move by word
"jklh" to move your cursor to the exact position

Ответ 6

С опцией relativenumber (: help relativenumber - в комплекте с Vim 7.3) вы можете добраться до линии под глазами с помощью [count]k или [count]j, которые вы можете перемещать в текущей строке с движениями, такими как ftweb, как объясняется @romainl.

Ответ 7

Помимо {, }, (, ), <number>cb, <number>cb, <number>cW и %, я использую такие навигационные методы:

  • ciw, diw (ciw, diw). и т.д. для быстрого редактирования/удаления слова под курсором (включая символы без пробела).
  • ci(, ci" (ca(, ca") и т.д., чтобы быстро редактировать внутри круглых скобок, цитаты (включая круглые скобки, кавычки). То же самое относится к d.
  • Знаки с буквами CAPITAL, чтобы установить их глобально (через файлы) и настойчиво (когда буфер закрыт). Например, mA создаст глобальную метку A, которая будет доступна с помощью команды 'A (или `A для оценки столбца).
  • gf быстро перейти к файлу под курсором
  • f, t (f, t), чтобы перейти к char, перед char вправо (слева) (используйте ; для повтора). Они особенно полезны для команд d и c (используйте . для повтора).
  • ^], чтобы перейти к тегу и ^T, чтобы вернуться назад.

И многие другие способы перемещения:)

Проверьте это для получения дополнительной информации: http://www.thegeekstuff.com/2009/03/8-essential-vim-editor-navigation-fundamentals/

P.S. Для пользователей rails есть очень полезный плагин rails-vim, вы также можете проверить его.

Ответ 8

это является хорошим местом для изучения основных навигационных команд, часть мощности/скорости vim происходит от сочетания движения с действием т.е. cw → изменить слово, d10j → удалить 10 строк вниз и т.д. Также this и это являются интересными чтениями.

Ответ 9

Вы можете :set nohlsearch отключить подсветку ваших символов поиска.

Я также использую ctags.