Для редактирования файлов в командной строке используют редакторы Nano, Vim и Emacs. В этом уроке мы обсудим два редактора из этого списка.
В большинстве случаев в системе установлен только Vim, поэтому важно владеть базовыми навыками обращения с ним. Эти редакторы запускаются прямо в терминале, хотя Vim и Emacs имеют режим, в котором они запускаются как отдельные приложения.
Nano
Nano — очень простенький текстовый редактор, похожий на Блокнот в Windows, хотя по возможностям он богаче и даже способен подсвечивать содержимое файлов:
nano .bashrc
После запуска редактора внизу открывается панель с подсказками, какие горячие клавиши доступны для использования. Символ ^
означает клавишу Ctrl.
Например, нажав Ctrl + x, вы можете выйти из редактора. При выходе нужно уточнить, хотите ли вы сохранить изменения:
- Сохранить — y (yes)
- Не сохранять — n (no)
В принципе, больше ничего интересного про Nano сказать нельзя. Это обычный редактор, который подходит для несложных изменений в файлах, но им совсем неудобно пользоваться для работы над проектами с множеством файлов и сложным кодом.
Vim
Совсем другое дело — это Vim (сокращение от Vi Improved). Это свободный текстовый редактор, созданный на основе более старого vi (visual editor).
Это редактор, который имеет уникальную модель работы:
vim .bashrc
Ключевое отличие Vim от остальных редакторов — наличие режимов. В обычных редакторах мы открываем файл и сразу можем приступать к редактированию. В отличие от них, Vim запускается в режиме COMMAND — это режим команд, при котором нажатие на любую клавишу воспринимается как сигнал к какому-то действию.
Если вы не знаете команд, то лучше ничего не трогать, иначе на экране начнется хаос. Обычное редактирование текста выполняется в режиме ввода — INSERT. Попасть в него можно с помощью клавиши i. Для выхода в режим команд достаточно нажать Esc или комбинацию Ctrl + [.
Всего у Vim есть четыре основных режима работы:
- Командный режим — это режим по умолчанию. В нем можно перемещаться по файлу, вносить изменения с помощью комбинаций клавиш, удалять и искать текст
- Режим вставки — это режим ввода текста с клавиатуры. Здесь все работает так, как вы привыкли это делать в обычных редакторах
- Визуальный режим — выделение произвольных участков текста
- Режим командной строки — собственная командная строка для редактора текста, из которой можно выполнять множество разнообразных команд
Vim по праву считается редактором с самым высоким порогом входа, и разработчики даже шутят на эту тему:
Конечно, в этой шутке есть доля правды. Но чем дольше вы будете осваивать программирование, тем чаще вы будете встречать опытных и известных разработчиков, которые полностью работают на Vim. Не последнюю роль в этом играют расширения.
Посмотрев на Vim без плагинов, сложно поверить, что благодаря расширениям он может стать очень навороченным:
Подробнее о том, почему так происходит и что особенного в Vim, написано в нашем руководстве. Крайне рекомендуем к прочтению.
Говорят, что самое сложное в Vim — это выйти, поэтому подготовимся заранее. Обсудим, как выйти из Vim:
- Убедитесь, что вы находитесь в командном режиме. На всякий случай нажмите Esc или комбинацию Ctrl + [
- Затем наберите
:
(символ "двоеточие") — эта команда переведет вас в режим командной строки - В конце введите
q!
и нажмите Enter
Так вы выйдете из Vim без сохранения изменений. Если набрать :wq
, то перед выходом сохранятся все изменения. Если вы хотите просто сохраниться без выхода, то наберите :w
.
Кстати, большая часть Хекслета сделана именно в Vim, включая код самой платформы, некоторые текстовые курсы и эту строчку.
Дополнительные материалы
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты
- Статья «Как учиться и справляться с негативными мыслями»
- Статья «Ловушки обучения»
- Статья «Сложные простые задачи по программированию»
- Вебинар «Как самостоятельно учиться»