VIM tips

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

Командный режим:

  • [I, ]I – показывает все линии, в которых содержится слово под курсором
  • gCtrl-g – детальная информация о файле
  • ci” – заменить текст между “”
  • ap или ip – выделить весь параграф
  • Ctrl+r=2+2*2 – вставит результат вычисления введенного выражения

 
Режим выделения (V, v, Ctrl+v):

  • a{ – выделить весь блок включая символы { и } (блок может заключаться в {}, [], (), <>, “”, ; кроме того, на символ \” внутри строки VIM не обратит внимания)
  • i{ – выделить блок не включая символы { и }

 
Проверка орфографии:
:set spell – включить проверку, :set nospell – выключить проверку.

  • ]s – следующее слово;
  • [s – предыдущее слово;
  • zg – добавить слово в словарь;
  • zug – отменить добавление слова в словарь;
  • z= – посоветовать замену для слова;
  • Ctrl+x s – в режиме вставки, как и автокомплит, покажет список возможных замен.

 
Диграфы:
Включается ввод диграфа по сочетанию Ctrl+K + обозначение диграфа. Таблицу диграфов можно посмотреть по команде :dig

 
Удаление html-тегов:

:%s#<\_.\{-1,}>##g

 
Полезные ссылки по теме:

2 comments

  • Yury

    Здравствуйте Андрей.
    Заинтересовало вот это ваше сообщение http://www.linux.org.ru/forum/general/9189668?cid=9189742
    Не могли бы вы подробнее описать, как реализовать в Vim автоматическое переключение по ESC в английскую раскладку с помощью kbdd.
    В Vim я только начинаю и столкнувшись с данным моментом, заинтересовало, то как делаете это(по ESC) вы.
    P.S. извините, что написал сюда. Чтобы не захламлять комментариями ваш блог, можете написать мне на почту dedmazayukr@gmail.com

    • В моем конфиге это выглядит так:

      autocmd InsertLeave *
          \ if has('unix') && &term == 'builtin_gui' |
          \   silent !qdbus ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.set_layout 0 >/dev/null |
          \ endif
      

Leave a Reply

Your email address will not be published. Required fields are marked *