Редактор GNU nano
Что такое текстовый редактор GNU nano и зачем он нужен?
GNU nano - это простой, удобный и легковесный консольный (терминальный) текстовый редактор. Он создавался как свободная альтернатива редактору Pico (из почтового клиента Pine) и стал стандартным инструментом для работы с текстом в командной строке на большинстве Linux-систем.
Nano идеально подходит для:
- Быстрого редактирования конфигурационных файлов сервера непосредственно на удалённой машине через SSH.
- Написания небольших скриптов или заметок прямо в терминале без необходимости запуска полноценной IDE.
- Ситуаций, когда нужен простой инструмент «здесь и сейчас» без долгого обучения и настройки.
Чем nano лучше или хуже других редакторов
Чтобы вам было проще понять, какой редактор выбрать, вот сравнение nano с двумя другими гигантами мира консольных редакторов — Vim и Emacs.
| Характеристика | nano | Vim | Emacs |
| Главная особенность | Простота и интуитивность | Модальность (режимы ввода и команд) | Расширяемость и мощь |
| Ключевое преимущество | Максимально низкий порог входа. Вы сразу начинаете печатать | Скорость работы, богатые возможности, повсеместная доступность, легендарная эффективность | Практически ОС внутри редактора. Вы можете настроить или написать в нём всё что угодно на языке Elisp |
| Ключевой недостаток | Ограниченная функциональность по сравнению с Vim/Emacs, реже используется для сложной многофайловой разработки | Крутая кривая обучения. Многие новички сталкиваются с трудностями при попытке выйти из редактора | Высокое потребление ресурсов, очень сложный для освоения «с нуля», уникальная система сочетаний клавиш |
| Лучше всего подходит | Начинающим пользователям, администраторам серверов для быстрого исправления конфигов | Разработчикам, которые проводят много времени в терминале и ценят скорость | Программистам, желающим получить максимальный контроль над средой разработки |
| Интерфейс и клавиши | Показывает основные команды прямо внизу экрана. Всё работает в одном режиме | Имеет несколько режимов. Команды — это буквы (например, dd для удаления строки), что очень быстро после привыкания | Использует сложные сочетания с клавишами-модификаторами (Ctrl, Meta, Alt) |
| Шорткат для выхода | Ctrl+X | :q! (выйти без сохранения) или :wq (сохранить и выйти) | Ctrl+X, Ctrl+C |
Таким образом, если вам нужен «рабочий инструмент» для быстрой правки — выбирайте nano. Если вы хотите освоить профессиональный редактор с огромными возможностями и готовы потратить время на обучение — обратите внимание на Vim.
Установка nano
Проверка, установлен ли nano
Перед установкой проверьте, доступна ли программа в вашей системе. Откройте терминал и выполните команду:
nano --version
Вероятный вывод команды:
Если вы видите информацию о версии, значит редактор уже установлен и готов к работе. Nano предустановлен во многих дистрибутивах Linux, а также в macOS. Если команда не найдена, следуйте инструкциям ниже для вашей ОС.
Установка под разные операционные системы
Linux
Процесс установки зависит от вашего дистрибутива. Используйте соответствующий менеджер пакетов:
Debian / Ubuntu / Linux Mint
sudo apt update && sudo apt install nano
CentOS / Fedora / RHEL
sudo dnf install nano
Arch Linux / Manjaro
sudo pacman -S nano
openSUSE
sudo zypper install nano
macOS
В macOS можно использовать предустановленную версию (которая может быть устаревшей) или установить свежую версию через Homebrew:
Установка через Homebrew (рекомендуется)
brew install nano
Если Homebrew не установлен, скачайте его с https://brew.sh
Windows
Для Windows существует несколько способов:
Через WSL (Windows Subsystem for Linux): Установите любой дистрибутив Linux (например, Ubuntu) из Microsoft Store, затем следуйте инструкции для Linux.
Используя пакетный менеджер Chocolatey (из командной строки с правами администратора):
choco install nano
Вручную: Скачайте исполняемый файл с официального сайта проекта (nano-editor.org) и добавьте его в переменную окружения PATH.
Разбор интерфейса
После того как вы выполните команду nano (с указанием файла или без), перед вами откроется основной интерфейс редактора.
- Основное поле: Центральная область, где вы набираете или редактируете текст. Ввод начинается сразу.
- Строка состояния: Показывает имя открытого файла, наличие несохранённых изменений и информацию о позиции курсора (строка/колонка).
- Строка с подсказками (самая нижняя): Это одна из самых удобных особенностей nano. Здесь постоянно отображаются основные сочетания клавиш: ^G (Ctrl+G) для справки, ^X (Ctrl+X) для выхода, ^O (Ctrl+O) для сохранения и другие.
Особенности управления
В nano символ ^ означает клавишу Ctrl. Например, ^X — это нажатие Ctrl+X. Сочетания с Alt (или Esc) обозначаются как M- (Meta).
Вот таблица самых важных комбинаций, которые понадобятся вам ежедневно:
| Действие | Сочетание клавиш | Пояснение |
| Выход из nano | Ctrl+X | Если есть несохранённые изменения, запросит подтверждение |
| Сохранение файла | Ctrl+O | Спросит имя файла для записи |
| Справка | Ctrl+G | Откроет подробный встроенный мануал со всеми возможными командами |
| Поиск текста | Ctrl+W | Введите искомое слово и нажмите Enter |
| Поиск и замена | Ctrl+\ | Удобно для массовой замены текста |
| Поиск следующего вхождения | Alt+W (или Ctrl+W и снова Enter) | Повторяет последний поиск |
| Вырезать (Cut) текущую строку | Ctrl+K | Строка удаляется и помещается в буфер обмена |
| Вставить (Paste) из буфера | Ctrl+U | Вставляет ранее вырезанный или скопированный текст |
| Копировать текущую строку | Alt+6 | Копирует строку в буфер |
| Отметить текст (Start marking) | Ctrl+6 (или Alt+A) | Начинает выделение текста. Перемещайте курсор для расширения выделения |
| Отмена (Undo) | Alt+U | Отменяет последнее действие |
| Повтор (Redo) | Alt+E | Повторяет отменённое действие |
| Переход на конкретную строку | Ctrl+_ | Удобно для навигации при ошибках компиляции или в логах |
Навигация по файлу осуществляется стандартными клавишами: Стрелки, Page Up, Page Down, Home, End.
Дополнительные настройки
Всё поведение редактора можно гибко настроить под себя с помощью файла конфигурации nanorc. Обычно используется пользовательский файл ~/.nanorc, который применяется только к вашему аккаунту. Глобальный системный файл (/etc/nanorc) требует прав суперпользователя для редактирования.
Создайте или отредактируйте файл ~/.nanorc:
nano ~/.nanorc
Основные возможности настройки
Вот несколько полезных опций, которые можно добавить в файл конфигурации:
Внешний вид и поведение
Включить отображение номеров строк
set linenumbers
Автоматически сохранять отступ при переходе на новую строку
set autoindent
Включить мягкий перенос длинных строк, не разрывая их на самом деле
set softwrap
Табуляция и пробелы
Установить ширину табуляции в 4 пробела
set tabsize 4
При нажатии Tab автоматически вставлять пробелы
set tabstospaces
Подсветка синтаксиса
Включить подсветку для всех поддерживаемых языков
include /usr/share/nano/*.nanorc
Важно: В некоторых старых версиях nano (например, на macOS без обновления) поддержка синтаксиса может отсутствовать. В этом случае рекомендуется обновить nano через Homebrew.
Редактирование файлов
Простое редактирование
Чтобы открыть файл для редактирования, просто передайте его имя nano:
nano my_notes.txt
Если файл не существует, nano создаст его при сохранении.
Редактирование системных файлов с правами суперпользователя
Для изменения системных конфигураций используйте sudo. Будьте внимательны, так как некорректные изменения могут нарушить работу системы:
sudo nano /etc/apt/sources.list
Редактирование файла по определённому пути
Вы можете открыть файл, указав абсолютный или относительный путь:
nano /var/log/nginx/error.log
Работа с несколькими файлами
Nano умеет работать с несколькими буферами (файлами) одновременно:
- Открыть несколько файлов: nano file1.txt file2.txt
- Переключаться между ними: Используйте Alt+. (следующий) и Alt+, (предыдущий)
- Выйти из файла: Ctrl+X закроет текущий файл. Если открыты другие, вы переключитесь на следующий.
Запуск редактора с параметрами
Вы можете управлять поведением nano прямо из командной строки, используя различные опции. Вот некоторые из них:
| Параметр | Описание |
| -B или --backup | Создавать резервную копию исходного файла перед сохранением (добавляет суффикс ~ к имени) |
| -l или --linenumbers | Включить отображение номеров строк (аналогично set linenumbers в настройках) |
| -v или --view | Открыть файл только для чтения. Редактирование невозможно, только просмотр |
| -r <число> или --fill=<число> | Установить ширину переноса строк |
| -i или --autoindent | Включить автоматические отступы |
| +<номер_строки> | Открыть файл и сразу перейти на указанную строку |
| +<номер_строки>,<номер_колонки> | Открыть файл и перейти на конкретную строку и колонку |
Примеры использования параметров:
Открыть файл в режиме только для чтения
nano -v important_config.conf
Открыть файл с созданием резервной копии
nano -B script.sh
Открыть файл и перейти на 15-ю строку
nano +15 long_file.log
Открыть файл с включёнными номерами строк и отступами
nano -li my_code.py
Дополнения
Проверка орфографии
Nano может использовать внешние программы для проверки орфографии, такие как Aspell или Hunspell.
Настройка проверки орфографии (шаг за шагом):
Установите Aspell (если он ещё не установлен):
Ubuntu/Debian
sudo apt install aspell
Настройте speller в ~/.nanorc:
Добавьте следующую строку в ваш конфигурационный файл:
set speller "aspell -x -c"
Флаг -x отключает проверку слов, написанных заглавными буквами, а -c указывает Aspell игнорировать управляющие символы.
Использование:
Откройте файл в nano и нажмите Ctrl+T. Редактор запустит Aspell, и вы сможете проверять текст по словам.
Автоматизация с помощью макросов
Nano поддерживает запись и воспроизведение макросов — это мощный инструмент для автоматизации повторяющихся действий. Макросы позволяют записать последовательность нажатий клавиш и затем воспроизвести её столько раз, сколько нужно.
Как записать и использовать макрос:
| Действие | Сочетание клавиш | Пояснение |
| Начать запись макроса | Alt+; (или Alt+: в некоторых версиях) | Готово к записи |
| Остановить запись макроса | Alt+; (снова) | Запись завершена, макрос сохранён |
| Воспроизвести макрос один раз | Alt+: | Выполнить записанную последовательность |
| Воспроизвести макрос много раз | Alt+* (или Alt+M) | Укажите количество повторений |
Важно: Макросы корректно работают в терминальных эмуляторах (например, GNOME Terminal, Konsole, iTerm2, Windows Terminal). На некоторых старых физических консолях (Linux VT) их работа может быть нестабильной.
Заключение
GNU nano — это идеальный выбор для тех, кто ищет простой, понятный и функциональный инструмент для работы с текстом в командной строке. Благодаря наглядному интерфейсу, широким возможностям настройки и встроенной поддержке автоматизации, nano остаётся одним из самых востребованных консольных редакторов как для начинающих, так и для опытных системных администраторов и разработчиков.







