Skip to content

Instantly share code, notes, and snippets.

@sagax
Last active February 2, 2019 19:00
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save sagax/05bfe4f84ea2297106d1a17981b14ecf to your computer and use it in GitHub Desktop.
Save sagax/05bfe4f84ea2297106d1a17981b14ecf to your computer and use it in GitHub Desktop.
vim article-1

Такого еще не было на данном ресурсе, и надеюсь, что сообщество поддержит инициативу. Есть предложение, сделать живую статью, в которой все мы будем выкладывать клавиатурные сочетания, которые каждый из нас использует в повседневной работе с Vim. Я обязуюсь анализировать комментарии и добавлять в статью новые клавиатурные сочетания. Если клавиатурное сочетание использует какой-то плагин, то указываем его имя.


Навигация:

  • ge - перейти к концу предыдущего слова

Замена текста:

  • :%s/old/new/gc - замена old на new с подтверждением
  • :4472,10400s/old/new/gc - поиск с заменой с указанием диапазона строк
  • :.,$s/old/new/gc - поиск с заменой начиная с текущей строки

Редактирование:

  • df) - удалить символы с текущего включая символ ) и не переходить в insert mode
  • dt) - удалить символы с текущего до символа ) и не перехоидить в insert mode
  • cf) - удалить символы с текущего включая символ ) и перейти в insert mode
  • ct) - удалить символы с текущего до символа ) и перейти в insert mode
  • diw - удалить текущее слово без перехода в insert mode
  • ciw - удалить текущее слово с переходом в insert mode
  • ci" - удалить данные между кавычками и перейти в insert mode
  • di" - удалить данные между кавычками и не переходить в insert mode
  • :g/^\s*$/d - удалить все пустые строки в текущем buffer
  • vi" - выделение текста внутри кавычек
  • J - «приклеить» следующую строку к концу текущей
  • gJ - «приклеить» следующую строку без пробела между текущей и следующей

Поиск:

  • /< the - искать слова, начинающееся на “the”
  • /the> - искать слова, заканчивающиеся на “the”
  • /<600> - искать по точному соответствию(находит только 600, игнорируя 60)
  • /<....> - искать слова из четырех символов
  • g* - поиск слова под курсором с любым вхождением вперед
  • g# - поиск слова под курсором с любым вхождением назад
  • n - после того, как сделан поиск, переход на следующее соответствие
  • N - после того, как сделан поиск, переход на предыдущее соответствие

Манипуляции с окнами:

  • C-w - | C-w + - горизонтальный ресайз сплит окна
  • C-w < | C-w > - вертикальный ресайз сплит окна
  • C-w = - сброс ресайза для сплит окон
  • 50C-w < - ускоренный ресайз сплит окна(повторит 50 раз)
  • C-w-K - переключить горизонтальный сплит в вертикальный
  • C-w-H - переключить горизонтальный сплит в вертикальный

Плагины:

junegunn/vim-easy-align

url: -

desc: -

  • gaip= or gaip*= - Выровнять блок по символу =
@spavlovich001
Copy link

Гитхоб съедает кое-что(96. Комбинирование типов файлов: set ft=.)
Выгрузил на paste еще раз: https://paste.debian.net/hidden/d631c5d3/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment