12 KiB
title | localeTitle |
---|---|
Useful Commands | Полезные команды |
Полезные команды
Основные функции
Скорее всего, вы окажетесь в «нормальном» режиме, он позволяет вводить команды, нажимая клавишу двоеточия :
Чтобы перейти из других режимов, вы можете ввести ctrl + c
или escape
.
Чтобы отредактировать текст и передвигаться знакомым способом, нажмите i
для режима «вставки». Попробуйте передвигаться с помощью клавиш со стрелками в режиме «вставки» - подробности см. В разделе «Навигация» ниже.
В зависимости от конфигурации вы можете ввести браузер файлов, введя и введя команду :e .
в «нормальном» режиме. «E» означает редактирование, а также период для файла или каталога.
навигация
- Движение курсора: вы можете использовать клавиши со стрелками или
h
,j
,k
,l
(влево, вниз, вверх, вправо) gg
приводит вас к началу файлаG
приводит вас к концу файла:(num)
приводит вас к определенной строке в вашем файле (например: 42 приводит вас к строке 42)
экономия
- Нажмите
Escape
чтобы убедиться, что вы находитесь вnormal mode
; - Введите
:w
(«w» означает «write»); - Нажмите
Enter
.
Сохранение (в новый файл)
- Нажмите
Escape
чтобы убедиться, что вы находитесь вnormal mode
. - Введите
:w newfilename
(newfilename - имя файла нового файла, который вы хотите сохранить). - Нажмите
Enter
.
Выход из Ви, Вима, Нвима, Гвима
- Нажмите escape, чтобы перейти в «обычный» режим
:q
будет мягким выйти из vim:q!
заставит выйти из vim:qa
это закрывает все открытые файлы:qa!
закрывает все файлы, оставляя изменения:q
сохраняет и закрывает текущий файл
(ПРИМЕЧАНИЕ: Команда :q!
Заставит Vim выйти без сохранения. Обязательно сохраните сначала, набрав команду :w
если вы не хотите терять какие-либо изменения, которые вы сделали.)
ИЛИ
- Тип ZZ (сохранение и выход)
- Тип
:wq
/:x
(сохранение и выход, но использование с использованием обычно используемых команд «w» и «q»)
Вырезать, скопировать и вставить
dd
удаляет (сокращает) одну строкуyy
yanks (копии) одной строки- вы можете использовать
yy
иdd
предшествует число, чтобы вырезать или скопировать несколько строк (ex-13dd
сократит 13 строк) p
вставляет все из буфера
Вставка блоков кода
Очень часто вы обнаружите, что ищете решения проблем, и найти кого-то написал блок кода, который делает именно то, что вы хотите. Если вы попытаетесь скопировать и вставить код непосредственно в Vim, вы можете обнаружить, что код странно отформатирован или не был вставлен правильно. Это связано с тем, что Vim читает каждый символ, который вы вставляете один за другим, что означает, что будут выполняться любые комбинации клавиш, которые активируют ярлык Vim, и Vim будет пытаться (и отказываться) автоматически отступать от вставленного кода.
Чтобы преодолеть это, вы можете использовать режим вставки Vim, который вы можете активировать, введя нормальный режим (нажмите escape
или crtl + c
) и введите :set paste
, затем нажмите ENTER. Теперь вы находитесь в режиме вставки . Затем вы можете войти в режим вставки с i
и вставить блок текста / кода без каких-либо проблем! Чтобы вернуться в обычный режим Vim без вставки, вы можете войти в обычный режим ( escape
или crtl + c
) и ввести :set nopaste
и нажать ENTER.
Установка номеров линий
- Нажмите escape, чтобы перейти в «обычный» режим
- Тип
:set number
, нажать enter
Чтобы установить номера строк по умолчанию:
- Откройте / создайте конфигурационный файл
vim ~/.vimrc
с помощьюvim ~/.vimrc
- Добавьте
set number
строк, нажмите enter
Открытие файла в VIM
В VIM вы можете открыть файл в том же окне, установив курсор на путь и набрав gf
. Это сообщит VIM, что текущий текст, который находится курсором, является файлом, который вы хотите открыть. Файл откроется внутри терминала VIM, поэтому, если вы хотите вернуться в предыдущее окно, просто введите ctrl+o
. Это позволит VIM перейти к предыдущему экрану.
Как разделить окна
Вы можете разделить окна vim и одновременно редактировать 2 или более файлов.
:split
-> split window (горизонтальное):vsplit
-> разделенное окно (вертикальное):vertical
new -> открыть новый файл в новом окне
Для перемещения между окнами вы можете использовать следующие команды:
CTRL-W h
- перейти в окно слеваCTRL-W j
- перейти к окну нижеCTRL-W k
- перейти к окну вышеCTRL-W l
- переход в окно справаCTRL-W t
- переход в верхнее окноCTRL-W b
- переход в нижнее окно
Отменить повторить
Эти действия должны выполняться в обычном режиме .
Отменить : нажмите u
или введите :undo
и нажмите Enter
.
Повторить : Нажмите U
( Shift
+ u
) или введите :redo
и нажмите Enter
.
Открытие файла в определенной строке
- vi filename + n, где n - номер строки
Открытие файла, ищущего слово / срок
- vi filename + / word, где слово - это то, что вы ищете. Курсор будет располагаться при первом появлении слова.
Поиск файла в Vim
В нормальном режиме (нажмите клавишу escape
чтобы убедиться), вы можете искать любой термин в документе, введя /
, затем следуя термину, который вы ищете, а затем нажмите enter
. Например, введите /hello
и нажмите enter
чтобы найти слово «hello» в текущем файле.
Вы можете перейти к следующему появлению вашего поискового запроса, нажав n
или предыдущее вхождение, нажав N
*
ищет слово под курсором.
Если вы хотите выделить все типы совпадений поиска :set hlsearch
или используйте сокращенную команду :set hls
. Используйте :set noh
чтобы отключить подсветку до следующего поиска.
Компиляция проекта
Vim имеет очень тесную интеграцию с make
инструментом автоматизации сборки. Если ваш проект использует Makefile, вы можете ввести :make
в командной строке Vim, чтобы запустить инструмент make
вашей системы. Vim распечатает вывод make
на экране и доведёт до первой ошибки, если таковая имеется, когда команда make
завершена. Затем вы можете перейти через ошибки компиляции и предупреждения в код вашего проекта, используя команды :cn
и :cp
для следующих и предыдущих проблем соответственно.
Найти и заменить
- Нажмите
Escape
чтобы убедиться, что вы находитесь вnormal mode
; - Введите
:
(вы переключитесь вcommand mode
); - Введите
%s,word_to_be_replaced,new_word,g
; - Нажмите
ENTER
.
Важно: если вы хотите заменить первое появление слова, удалите g
в конце.
Я хочу узнать Vim!
Для начинающих, Vim имеет встроенный учебник! Вы можете получить к нему доступ, запустив vimtutor
с вашего терминала, и это запустит интерактивный учебник о том, как начать работу с Vim (требуется около 15 минут для работы).
Если вы не так уверены в английском, вы можете позволить себе vimtutor
на вашем языке выбора. Например, vimtutor fr
запустит учебник на французском языке!
Другие полезные команды
gg=G
фиксирует отступ всего файла- Если вы хотите узнать больше о конкретной команде, введите
:help
а затем имя команды (ex-: help: w)
Прочтите остальные наши Vim Guides, чтобы лучше понять этот мощный редактор.
Другие источники
- Vim Golf - хороший способ научиться делать vim-вызовы, чтобы получить наименьшее количество нажатий клавиш. Вы можете видеть решения, представленные другими, если вы не можете понять вызов.
- Vim Adventures - забавный и увлекательный подход к изучению Vim, где вы можете разыгрывать различные штрихи с каждым новым уровнем в игре.
- Open Vim - интерактивный учебник vim, в котором описываются основные команды