Planetahost VPS
Перейти к основному контенту

Редактор 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

Вероятный вывод команды:

image.png

Если вы видите информацию о версии, значит редактор уже установлен и готов к работе. 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 (с указанием файла или без), перед вами откроется основной интерфейс редактора.

image.png

  • Основное поле: Центральная область, где вы набираете или редактируете текст. Ввод начинается сразу.
    • image.png

  • Строка состояния: Показывает имя открытого файла, наличие несохранённых изменений и информацию о позиции курсора (строка/колонка).
    • image.png

  • Строка с подсказками (самая нижняя): Это одна из самых удобных особенностей nano. Здесь постоянно отображаются основные сочетания клавиш: ^G (Ctrl+G) для справки, ^X (Ctrl+X) для выхода, ^O (Ctrl+O) для сохранения и другие.
    • image.png

Особенности управления

В 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   

image.png

Автоматически сохранять отступ при переходе на новую строку

set autoindent      

image.png

Включить мягкий перенос длинных строк, не разрывая их на самом деле

set softwrap        
Табуляция и пробелы

Установить ширину табуляции в 4 пробела

set tabsize 4       

При нажатии Tab автоматически вставлять пробелы

set tabstospaces    

image.png


Подсветка синтаксиса

Включить подсветку для всех поддерживаемых языков

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 умеет работать с несколькими буферами (файлами) одновременно:

  1. Открыть несколько файлов: nano file1.txt file2.txt
  2. Переключаться между ними: Используйте Alt+. (следующий) и Alt+, (предыдущий)
  3. Выйти из файла: 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 остаётся одним из самых востребованных консольных редакторов как для начинающих, так и для опытных системных администраторов и разработчиков.