Работаем в vim
Содержание
Установка и настройка
Редактор vi в большинстве систем уже идет в комплекте с системой, улучшенный vim и neovim нужно поставить отдельно.
Например, поставим neovim
sudo apt install neovim # В данном случае встала версия NVIM v0.6.1
Теперь нужно настроить vim, создаем конфиг
mkdir ~/.config/nvim
nvim ~/.config/nvim/init.vim
И вносим первоначальные настройки:
:set encoding=utf-8
:set number
:set noswapfile
:set scrolloff=7
:set tabstop=4
:set softtabstop=4
:set shiftwidth=4
:set expandtab
:set autoindent
:set mouse=a
Но вся мощь vim в его плагинах, поставим менеджер vim-plug
Для примера поставим плагин красивой нижней строки vim-airline
В init.vim
добавляем
call plug#begin()
Plug 'https://github.com/vim-airline/vim-airline'
call plug#end()
Выполняем команду :PlugInstall
и плагин должен установится.
Плагинов и настроек очень много, это тема отдельной статьи.
Здесь мы разберем только базовые возможности редактора vim.
Режим normal mode
Нужен для перемещения по тексту.
Навигация по тексту
k
- ^ вверх.j
- v низ.h
- < лево.l
- > право.
Перемещение на заданное количество слов горизонтально:
w
- навигация по словам вперед к концу строки2w
- перемещение в начало второго слова.b
- навигация по словам к началу строки в начало словаe
- навигация по словам к концу строки в конец слова3e
- перемещение в конец третьего слова.0
- перемещение в начало строки.$
- перемещение в конец строки.
Вертикальное перемещение по тексту
2j
- вниз на 2 символа.5j
- вниз на 5 символов.28 SHIFT G
- перейти на 28 строкуSHIFT G
- в конец файлаgg
- в начало файла
Удаление слов/строк
dw
- удаление слова от курсора до конца слова, включая пробел.d$
- удаление слова от курсора до конца строки.de
- удаление слова от курсора до конца слова, не включая пробел.d^
- удаление слова от курсора до начала строки.dd
- удаление строки в буфер обмен. (p
- вставить строку после удаления)d2w
- удаление двух слов.2dd
- удаление двух строк.x
- удаление символа над которым находится курсор
Режим insert mode
Сначала нужно перейти к нужному месту находясь в normal mode и далее нажать i
i
переход в режим ввода текста до символаA
- переход в режим ввода текста после символаo
- создать новую строку и перейти в insert режимSHIFT o
- создать новую строку над текущей и перейти в insert режимсс
- убрать строчку, где находится курсор
Режим visual mode
Режим визуального выделения
v
перейти в режим визуального выделения
После этого выделяем все нужно и нажимаем y
p(P)
- вставить текст в номарльном режиме
Другие команды
u
- отмена действий предыдущей команды.U
- вернуть в исходное состояниеp
- вставка последнего удаленного символа.:q!
- выход из редактора без сохранения сделанных изменений.:wq
- сохранить и выйти из редактора:w text.txt
- записать документ с новым именем
Режим command mode
:
- Перейти в режим команд
/555
- поиск в документе вниз от текущего курсора (n следующие вхождение)
?555
- поиск вверх от текущего положения курсора
%
- поиск парных скобок