148 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			148 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: Useful Commands
 | ||
| localeTitle: Полезные команды
 | ||
| ---
 | ||
| # Полезные команды
 | ||
| 
 | ||
| ## Основные функции
 | ||
| 
 | ||
| Скорее всего, вы окажетесь в «нормальном» режиме, он позволяет вводить команды, нажимая клавишу двоеточия `:` Чтобы перейти из других режимов, вы можете ввести `ctrl + c` или `escape` .
 | ||
| 
 | ||
| Чтобы отредактировать текст и передвигаться знакомым способом, нажмите `i` для режима «вставки». Попробуйте передвигаться с помощью клавиш со стрелками в режиме «вставки» - подробности см. В разделе «Навигация» ниже.
 | ||
| 
 | ||
| В зависимости от конфигурации вы можете ввести браузер файлов, введя и введя команду `:e .` в «нормальном» режиме. «E» означает редактирование, а также период для файла или каталога.
 | ||
| 
 | ||
| ## навигация
 | ||
| 
 | ||
| *   Движение курсора: вы можете использовать клавиши со стрелками или `h` , `j` , `k` , `l` (влево, вниз, вверх, вправо)
 | ||
| *   `gg` приводит вас к началу файла
 | ||
| *   `G` приводит вас к концу файла
 | ||
| *   `:(num)` приводит вас к определенной строке в вашем файле (например: 42 приводит вас к строке 42)
 | ||
| 
 | ||
| ## экономия
 | ||
| 
 | ||
| 1.  Нажмите `Escape` чтобы убедиться, что вы находитесь в `normal mode` ;
 | ||
| 2.  Введите `:w` («w» означает «write»);
 | ||
| 3.  Нажмите `Enter` .
 | ||
| 
 | ||
| ## Сохранение (в новый файл)
 | ||
| 
 | ||
| 1.  Нажмите `Escape` чтобы убедиться, что вы находитесь в `normal mode` .
 | ||
| 2.  Введите `:w newfilename` (newfilename - имя файла нового файла, который вы хотите сохранить).
 | ||
| 3.  Нажмите `Enter` .
 | ||
| 
 | ||
| ## Выход из Ви, Вима, Нвима, Гвима
 | ||
| 
 | ||
| 1.  Нажмите escape, чтобы перейти в «обычный» режим
 | ||
| 2.  `:q` будет мягким выйти из vim
 | ||
| 3.  `:q!` заставит выйти из vim
 | ||
| 4.  `:qa` это закрывает все открытые файлы
 | ||
| 5.  `:qa!` закрывает все файлы, оставляя изменения
 | ||
| 6.  `: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.
 | ||
| 
 | ||
| ## Установка номеров линий
 | ||
| 
 | ||
| 1.  Нажмите escape, чтобы перейти в «обычный» режим
 | ||
| 2.  Тип `:set number` , нажать enter
 | ||
| 
 | ||
| Чтобы установить номера строк по умолчанию:
 | ||
| 
 | ||
| 1.  Откройте / создайте конфигурационный файл `vim ~/.vimrc` с помощью `vim ~/.vimrc`
 | ||
| 2.  Добавьте `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` для следующих и предыдущих проблем соответственно.
 | ||
| 
 | ||
| ## Найти и заменить
 | ||
| 
 | ||
| 1.  Нажмите `Escape` чтобы убедиться, что вы находитесь в `normal mode` ;
 | ||
| 2.  Введите `:` (вы переключитесь в `command mode` );
 | ||
| 3.  Введите `%s,word_to_be_replaced,new_word,g` ;
 | ||
| 4.  Нажмите `ENTER` .
 | ||
| 
 | ||
| Важно: если вы хотите заменить первое появление слова, удалите `g` в конце.
 | ||
| 
 | ||
| ## Я хочу узнать Vim!
 | ||
| 
 | ||
| Для начинающих, Vim имеет встроенный учебник! Вы можете получить к нему доступ, запустив `vimtutor` с вашего терминала, и это запустит интерактивный учебник о _том, как начать работу с Vim_ (требуется около 15 минут для работы).
 | ||
| 
 | ||
| Если вы не так уверены в английском, вы можете позволить себе `vimtutor` на вашем языке выбора. Например, `vimtutor fr` запустит учебник на французском языке!
 | ||
| 
 | ||
| ## Другие полезные команды
 | ||
| 
 | ||
| *   `gg=G` фиксирует отступ всего файла
 | ||
| *   Если вы хотите узнать больше о конкретной команде, введите `:help` а затем имя команды (ex-: help: w)
 | ||
| 
 | ||
| Прочтите остальные наши Vim Guides, чтобы лучше понять этот мощный редактор.
 | ||
| 
 | ||
| ## Другие источники
 | ||
| 
 | ||
| *   [Vim Golf](https://vimgolf.com/) - хороший способ научиться делать vim-вызовы, чтобы получить наименьшее количество нажатий клавиш. Вы можете видеть решения, представленные другими, если вы не можете понять вызов.
 | ||
| *   [Vim Adventures](https://vim-adventures.com/) - забавный и увлекательный подход к изучению Vim, где вы можете разыгрывать различные штрихи с каждым новым уровнем в игре.
 | ||
| *   [Open Vim](http://www.openvim.com/) - интерактивный учебник vim, в котором описываются основные команды |