Редактор nano

Июнь 13, 2017

Можно много спорить какой редактор лучший, ну или какая версия vi если можно так выразится. Но факт остаётся фактом в nano ещё нужно умудрится напортачить в то время как в vi это раз плюнуть. nano никогда не претендовал на звание самого крутого, он всегда был простым в усвоении и лёгким в использовании. Да и нет смысла тревожить гигантов типа vi для правки пары конфигов.
Не маловажным фактором является что во многих дистрибутивах nano уже стоит по умолчанию, и не нужно ставить и настраивать другие редакторы если это ваш сервер, который вы раз настроили и забыли. Рабочая же машина совсем другое дело. Но о настройке vi мы поговорим уже в другой статье.

Команды для перемещения по файлу

Стрелки вверх-вниз, вправо-влево для перемещения построчно и побуквенно. Для премещения постранично, для больших файлов:
Страница вниз — Page Up
Страниц вверх — Page Down

Основные команды для комфортной работы

ALT=ESC
CTRL=ESC+ESC
Поиск — Ctrl+W или F6
Повторный поиск (следующий результат) — Alt+W
Поиск и Замена — Ctrl+\ или Alt+R (на каждый найденный вариант отвечаем да или нет,ну или всем да)
Сохранить — Ctrl+O или F3
Выйти — Ctrl+X или F2
Выделение — Alt+A или Ctrl+^
Выделенный текст можно удалить или вырезать в буффер — Ctrl+K или F9
Скопировать в буффер обмена — Alt+6
Вставить текст из буффера обмена — Ctrl+U или F10
Ctrl+K при отсутствии выделения удаляет строку. Либо целиком, либо от курсора до конца строки. Поведение переключается комбинацией Alt+K. Удалённая строка попадает в буффер.

Ключи

Наиболее практичные ключи редактора:
-u Включает поддержку отмены
Alt+U Отменить (Undo)
Alt+E Пвторить (Redo)
-B или —backup — Сохраняет резервные копии отредактированных файлов перед сохранением, добавляя к окончанию ~
-C директория или —backupdir=директория — Указать директорию для бэкапов
-m или —mouse — Разрешить использование мыши, выделять вы так не сможите, но вот перемещать курсор это запрото.
-v или —view — Режим просмотра (только чтение)

Дополнительные команды

Для тех кому показалось мало:
Начало строки — Home
Конец строки — End
На слово вперёд — Ctrl+Space
На слово назад — ESC+Space
На предыдущую строку — Ctrl+P
На следующую строку — Ctrl+N
На предыдущий экран — Ctrl+Y или F7
На следующий экран — Ctrl+V или F8
Включить, выключить перенос строк — Alt+L
Переход на строку с указанным номером — Alt+G
Вставить из файла — Ins или Ctrl+R или F5
Стирает всё от курсора и до конца файла Alt+T

Если вы заметили что у вас включен перенос по словам то при редактировании конфигурационных файлов, указывайте параметр -w для отключения переноса по словам. Для включения этой опции по умолчанию в /etc/nanorc допишите set nowrap. Хотя в последних версиях перенос должен быть отколючен.

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

Просмотр доступных шаблонов подсветки, сюда же в случае чего можно добавить свои схемы подсветки:
ls -1 /usr/share/nano/
Теперь отредактируем конфигурационный файл nano для своего пользователя:
nano ~/.nanorc
Если файла нет, скопируем его с основного конфига, а потом снова попробуем отредактировать (если отредактировать основной файл изменения затронут всех пользователей, а это не всем придётся по нраву):
cp /etc/nanorc ~/.nanorc
Добавим нужный для подсветки язык, к примеру python:
include "/usr/share/nano/python.nanorc"
Либо добавим пачку наиболее популярных:
include "/usr/share/nano/asm.nanorc"
include "/usr/share/nano/awk.nanorc"
include "/usr/share/nano/cmake.nanorc"
include "/usr/share/nano/c.nanorc"
include "/usr/share/nano/css.nanorc"
include "/usr/share/nano/debian.nanorc"
include "/usr/share/nano/fortran.nanorc"
include "/usr/share/nano/gentoo.nanorc"
include "/usr/share/nano/groff.nanorc"
include "/usr/share/nano/html.nanorc"
include "/usr/share/nano/java.nanorc"
include "/usr/share/nano/makefile.nanorc"
include "/usr/share/nano/man.nanorc"
include "/usr/share/nano/mgp.nanorc"
include "/usr/share/nano/mutt.nanorc"
include "/usr/share/nano/nanorc.nanorc"
include "/usr/share/nano/objc.nanorc"
include "/usr/share/nano/ocaml.nanorc"
include "/usr/share/nano/patch.nanorc"
include "/usr/share/nano/perl.nanorc"
include "/usr/share/nano/php.nanorc"
include "/usr/share/nano/pov.nanorc"
include "/usr/share/nano/python.nanorc"
include "/usr/share/nano/ruby.nanorc"
include "/usr/share/nano/sh.nanorc"
include "/usr/share/nano/tcl.nanorc"
include "/usr/share/nano/tex.nanorc"
include "/usr/share/nano/xml.nanorc"

Редактор Nano будет по заголовку в файле определять его тип и в зависимости от этого подсвечивать синтаксис.

Таким образом ваш nano подойдёт для куда больших задач чем правка конфигов.

Теги статьи:
· ·
Категории статьи
Linux

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *