Конфигурация Linux, сценарии, исходный код и журналы обычно хранятся как обычный текст. Терминальный редактор позволяет работать с такими файлами в локальном терминале, удалённом сеансе SSH или среде без графического рабочего стола.
Продвинутый Text-Fu · Урок 2
Текстовые редакторы
Узнайте, как выбрать и настроить терминальный текстовый редактор для администрирования и разработки в Linux.
Выбор редактора с учётом среды
Не существует единственного редактора, лучшего для каждого человека и каждой задачи. Подходящими могут оказаться графический или терминальный редактор, а также интегрированная среда разработки. Для работы в командной строке выбирайте установленный редактор, из которого умеете безопасно выйти и базовую модель редактирования которого понимаете.
Не считайте, что Vim или Emacs обязательно установлен. Проверьте разрешение команды в текущей оболочке:
$ command -v vim
/usr/bin/vim
$ command -v emacs
/usr/bin/emacs
Пустой результат с ненулевым кодом завершения означает, что имя не найдено по текущим правилам поиска команд. В минимальной системе может быть доступен vi, в других — Nano или вообще ни одного интерактивного редактора.
Какая команда проверяет, может ли текущая оболочка найти исполняемый файл с именем vim?
Модель работы Vim
Vim — модальный редактор. Одна и та же клавиша может иметь разное значение в зависимости от активного режима:
- Нормальный режим воспринимает клавиши как команды навигации и редактирования.
- Режим вставки добавляет вводимый текст.
- Режим командной строки принимает команды, например для сохранения или выхода.
После практики такая модель ускоряет повторяющиеся операции с клавиатуры, но начинающему важно следить за активным режимом. В следующих уроках действия Vim будут вводиться по одному.
Что означает модальность Vim?
Модель работы Emacs
Emacs обычно использует сочетания клавиш и именованные команды в расширяемой среде. Файлы открываются в буферах, а основные и дополнительные режимы настраивают поведение для разного содержимого и задач. Emacs может работать как в терминале, так и в графическом окне.
И Vim, и Emacs благодаря настройкам и расширениям умеют гораздо больше базового редактирования. Сначала научитесь открывать, изменять, сохранять и закрывать обычный текстовый файл, а затем переходите к персонализации.
Где, согласно терминологии Emacs, обычно хранится редактируемый текст открытого файла?
Выбор предпочитаемого редактора
Многие программы командной строки обращаются к VISUAL или EDITOR, когда им нужно запустить редактор. Например, так можно выбрать Vim для команд, запускаемых из текущего сеанса Bash и его дочерних процессов:
$ export VISUAL=vim
$ export EDITOR="$VISUAL"
Эти переменные задают предпочтение, но не устанавливают программу. Указывайте реально существующую команду, а добавляйте экспорт в подходящий файл запуска оболочки лишь после проверки.
Что делает export EDITOR=vim?
Безопасная практика
Осваивайте редактор на одноразовом файле в принадлежащем вам каталоге:
$ printf 'first line\nsecond line\n' > editor-practice.txt
$ vim editor-practice.txt
Не начинайте с системной конфигурации или чужих данных. Перед изменением важного файла сделайте резервную копию, разберитесь с сохранением и выходом, а затем проверьте результат командой только для чтения, например cat или diff.
Какой файл безопаснее всего выбрать для первого знакомства с новым редактором?
Потренироваться открывать, редактировать и сохранять файлы в терминальных редакторах можно в лаборатории:
- Редактирование текстовых файлов в Linux с помощью Vim и Nano — попрактикуйтесь в создании и редактировании файлов, сохранении текста и навигации в vi/vim и nano.
Урок завершён
Вы завершили Текстовые редакторы
Теперь вы умеете выбрать терминальный редактор и организовать безопасную практику.
Проверять доступность команды редактора.
Распознавать модальную модель взаимодействия Vim.
Понимать буферы и расширяемые режимы Emacs.
Задавать предпочтение редактора, не путая это с установкой.
Тренироваться на одноразовом тексте перед правкой важных файлов.
Сохраните прогресс
Создайте бесплатный аккаунт, чтобы сохранить этот урок и продолжить на любом устройстве.
Создать бесплатный аккаунт