NANO(1)

НАЗВА
nano - Nano's ANOther text editor, inspired by Pico

КОРОТКИЙ ОПИС
nano [параметри] [[+рядок[,позиція]] файл]...

nano [options] [file[:line[:column]]]...

nano [options] [[+[crCR]{/|?}string] file]...

NOTICE
Since version 8.0, to be newcomer friendly, ^F starts a forward search, ^B starts a backward search, M-F searches the next occurrence forward, and M-B searches the next occurrence backward. If you want those keystrokes to do what they did before version 8.0, add the following lines at the end of your nanorc file:

    bind ^F forward main
    bind ^B back main
    bind M-F formatter main
    bind M-B linter main

ОПИС
nano is a small and friendly text editor. It copies the look and feel of Pico, but is free software, and implements several features that Pico lacks, such as: opening multiple files, scrolling per line, undo/redo, syntax coloring, line numbering, and soft-wrapping overlong lines.

When giving a filename on the command line, the cursor can be put on a specific line by adding the line number with a plus sign (+) before the filename, and even in a specific column by adding it with a comma. Negative numbers count from the end of the file or line. The line and column numbers may also be specified by gluing them with colons after the filename. (When a filename contains a colon followed by digits, escape the colon by preceding it with a triple backslash.)

The cursor can be put on the first or last occurrence of a specific string by specifying that string after +/ or +? before the filename. The string can be made case sensitive and/or caused to be interpreted as a regular expression by inserting c and/or r after the + sign. These search modes can be explicitly disabled by using the uppercase variant of those letters: C and/or R. When the string contains spaces, it needs to be enclosed in quotes. To give an example: to open a file at the first occurrence of the word "Foo", you would do:

    nano +c/Foo файл

Особливий випадок: якщо замість назви файла вказати дефіс (-), nano читатиме дані зі стандартного джерела вхідних даних.

РЕДАГУВАННЯ
Дії з введення тексту та пересування файлом є доволі очевидними: введення літер і використання звичайних клавіш пересування курсора. Команди віддають за допомогою клавіш Control (^) та Alt або Meta (M-). Введення ^K вилучає поточний рядок і переносить його до буфера вирізання. Послідовне натискання комбінації ^K призведе до перенесення усіх вилучених рядків разом до буфера вирізання. Будь-які пересування курсора або виконання будь-якої іншої команди призведе до того, що наступна комбінація ^K перезапише вміст буфера вирізання. Комбінація ^U вставляє поточний вміст буфера вирізання у поточну позицію курсора.

Якщо потрібно вирізати або скопіювати точніший фрагмент тексту, ви можете позначити його початок натисканням комбінації клавіш ^6, пересунути курсор на його завершення (позначений текст буде підсвічено), а потім скористатися комбінацією клавіш ^K для його вирізання або M-6 для копіювання до буфера вирізання. Ви також можете зберегти позначений текст до файла за допомогою натискання комбінації клавіш ^O або перевірити правопис у фрагменті за допомогою натискання комбінації клавіш ^T^T.

У деяких терміналах текст можна позначити також утриманням натиснутою клавіші Shift із наступним позначенням фрагмента натисканням клавіші зі стрілками. Одночасне натискання і утримання клавіш Ctrl або Alt також збільшить швидкість пересування текстом. Будь-яке пересування курсора без утримання натиснутою клавіші Shift призведе до скасування позначення тексту.

До буфера можна вставити будь-який коректний символ Unicode натисканням комбінації клавіш M-V із наступним введенням шістнадцяткових цифр (із завершенням натисканням клавіші <Пробіл> або <Enter>, якщо цифр менше за шість). Буквальний код керування (окрім ^J) можна вставити комбінацією M-V із наступним введенням відповідної літери комбінації.

Два рядки у нижній частині екрана призначено для показу деяких важливих команд; у вбудованій довідці (^G) наведено список усіх доступних команд. Типові прив'язк клавіш можна змінити за допомогою файла nanorc -- див. nanorc(5).

ПАРАМЕТРИ

-A, --smarthome
    Зробити поведінку у відповідь на натискання клавіші Home кмітливішою. Якщо Home натиснуто десь, окрім на самому початку непробільних символів у рядку, курсор перестрибне на цей початок (вперед або назад). Якщо курсор вже перебуває на цій позиції, він перестрибне на справжній початок рядка.

-B, --backup
    При збереженні файла, створити резервну копію його попередньої версії з використанням поточної назви файла із додатковим суфіксом—тильдою (~).

-C каталог, --backupdir=каталог
    Створювати і зберігати не лише одну резервну копію файла, але цілу послідовність нумерованих резервних копій, коли ви зберігаєте файл -- якщо увімкнено резервне копіювання (-B). Пронумеровані файли буде збережено у вказаному каталозі каталог.

-D, --boldtext
    У інтерфейсі використовувати напівжирний шрифт замість реверсивного відеорежиму. Цей режим можна перевизначити встановленням параметрів titlecolor, statuscolor, keycolor, functioncolor, numbercolor і/або selectedcolor у вашому файлі nanorc. Див. nanorc(5).

-E, --tabstospaces
    Convert each typed tab to spaces -- to the number of spaces that a tab at that position would take up. (Note: pasted tabs are not converted.)

-F, --multibuffer
    Типово читати файл до нового буфера.

-G, --locking
    Використовувати блокування файлів у стилі vim при редагуванні файлів.

-H, --historylog
    Зберігати останні сто рядків пошуку і заміни, а також виконаних команд, щоб можна було без проблеми користуватися ними у наступних сеансах.

-I, --ignorercfiles
    Не використовувати ні загальносистемний nanorc, ні nanorc користувача.

-J число, --guidestripe=число
    Малювати вертикальну смужку на заданій позиції у рядку, щоб простіше було визначати ширину тексту. (Колір смужки можна змінити за допомогою параметра set stripecolor у вашому файлі nanorc.)

-K, --rawsequences
    Обробляти керівні послідовності безпосередньо, а не використовувати ncurses для їхньої обробки. (Якщо вам потрібен цей параметр для того, щоб нормально працювали деякі клавіші, це означає, що опис термінала у terminfo, який використано, не повністю відповідає поведінці вашого термінала. Таке може трапитися, наприклад, якщо ви використовуєте ssh на комп'ютері з BSD.) Використання цього параметра вимикає підтримку роботи з мишею у nano.

-L, --nonewlines
    Не додавати символ нового рядка автоматично, якщо текст не завершується ним. (Це надасть вам змогу зберігати текстові файли, у яких порушено стандарт POSIX.)

-M, --trimblanks
    Вирізати кінцеві пробіли з перенесеного рядка, якщо відбулося автоматичне жорстке перенесення рядка або якщо текст вирівняно за шириною.

-N, --noconvert
    Вимкнути автоматичне перетворення файлів з формату DOS/Mac.

-O, --bookstyle
    Якщо текст вирівняно за шириною, вважати будь-який рядок, який починається з пробілу, початковим рядком абзацу (якщо не увімкнено автоматичне встановлення відступів).

-P, --positionlog
    Для останніх 200 файлів записувати до журналу останню позицію курсора та розташовувати курсор у цьому місці, коли ви знову відкриєте відповідний файл.

-Q "формальний_вираз", --quotestr="формальний_вираз"
    Встановити формальний вираз для визначення частини рядка у лапках. Типовим значенням є "^([ \t]*([!#%:;>|}]|//))+". (Зауважте, що \t є замінником табуляції.) Це уможливлює перебудову блоків цитованого тексту при створенні повідомлень електронної пошти і повторного перенесення у блоках рядкових коментарів при написанні програмного коду.

-R, --restricted
    Обмежений режим: не читати дані з будь-якого файла, який не вказано у рядку команди, і не записувати дані до нього. Це означає таке: не читати і не записувати файлів журналу; заборонити призупинення роботи; не дозволяти перевіряти правопис; не дозволяти дописування до файла у кінці та на початку; не дозволяти зберігати файл із іншою назвою, якщо у файла вже була назва; і не створювати файлів резервних копій. Обмежений режим можна задіяти викликом nano із будь-якою назвою, що починається з «r» (наприклад «rnano»).

-S, --softwrap
    Показувати рядки, довжина яких перевищує ширину екрана, у декількох рядках. (Ви можете наказати програмі виконувати це завдання м'яким перенесенням, а не грубим розриванням на краю екрана, за допомогою додаткового параметра --atblanks.) (Стара коротка версія параметра, -$, вважається застарілою.)

-T число, --tabsize=число
    Встановити розмір (ширину) табуляції у число позицій. Значення число має бути додатним. Типовим значенням є 8.

-U, --quickblank
    Зробити так, щоб повідомлення на смужці стану зникали після 1 натискання клавіші, а не після 20. Зауважте, що параметр -c (--constantshow) має пріоритет над цим параметром. Якщо задіяно параметр --minibar або --zero, --quickblank призводить до зникнення повідомлення за 0,8 секунд замість типових 1,5 секунди.

-V, --version
    Вивести дані щодо версії і завершити роботу.

-W, --wordbounds
    Визначати межі слова в інший спосіб, вважаючи символи пунктуації частиною слова.

-X "символи", --wordchars="символи"
    Вказати, які інші символи (окрім звичайних літер і цифр) слід вважати частиною слова. Якщо використано цей параметр, не варто використовувати параметр -W (--wordbounds).

-Y назва, --syntax=назва
    Вказати назву режиму підсвічування синтаксичних конструкцій, яким слід скористатися. Режими визначено у файлах nanorc.

-Z, --zap
    Вилучати позначений фрагмент (а не один символ, без впливу на буфер вирізання) у відповідь на натискання немодифікованих Backspace або Delete.

-a, --atblanks
    При виконанні м'якого перенесення рядків, переносити рядки на пробілі, а не точно на краю екрана.

-b, --breaklonglines
    Автоматично жорстко переносити поточний рядок, якщо він є надто довгим. (Цей параметр є протилежним до -w (--nowrap) -- пріоритет матиме той з них, який вказано останнім.)

-c, --constantshow
    Неперервно показувати позицію курсора на смужці стану. Зауважте, що це призведе до перевизначення параметра -U (--quickblank).

-d, --rebinddelete
    Обробляти Delete і Backspace в інший спосіб, щоб і Backspace, і Delete працювали належним чином. Цим параметром варто користуватися, лише якщо або Backspace працює як Delete, або Delete працює як Backspace.

-e, --emptyline
    Не використовувати рядок одразу під смужкою заголовка, лишаючи його повністю порожнім.

-f файл, --rcfile=файл
    Прочитати лише вказаний файл для встановлення параметрів роботи nano, замість читання загальносистемного файла та файла nanorc користувача.

-g, --showcursor
    Зробити курсор видимим у навігаторі файлами (розташувати його на підсвіченому пункті) та у засобі перегляду довідки. Корисно для користувачів азбуки Брайля та тих, хто недобачає.

-h, --help
    Вивести резюме доступних параметрів командного рядка і завершити роботу.

-i, --autoindent
    Автоматично встановлювати відступ у новоствореному рядку, з тієї самої кількості символів табуляції і/або пробілів, що і у попередньому рядку (або у наступному рядку, якщо попередній рядок був початком абзацу).

-j, --jumpyscrolling
    Гортати вміст буфера порціями у пів екрана, замість гортання по одному рядку.

-k, --cutfromcursor
    Зробити так, щоб команда «Вирізати текст» (зазвичай, ^K) вирізала текст від поточної позиції до кінця рядка, замість вирізання усього рядка.

-l, --linenumbers
    Показувати номери рядків у лівій частині області тексту. (Будь-який рядок з прив'язкою додатково матиме позначку на полях.)

-m, --mouse
    Увімкнути підтримку миші, якщо таку передбачено у вашій системі. Якщо увімкнено, за допомогою клацання кнопками миші можна буде змінювати розташування курсора, встановлювати позначку (подвійним клацанням) та користуватися комбінаціями-скороченнями з клавішами клавіатури. Миша працюватиме під керуванням X Window System та у консолі, якщо запущено gpm. Фрагмент тексту можна буде позначати перетягуванням із одночасним утриманням натиснутою клавіші Shift.

-n, --noread
    Вважати будь-яку назву, яку вказано у рядку команди, назвою нового файла. Це уможливлює для nano запис до іменованих каналів: програма розпочинає роботу із порожнім буфером і записує дані до каналу, коли користувач зберігає «файл». У цей спосіб nano може бути використано як редактор у поєднанні із, наприклад, gpg без запису конфіденційних даних спершу на диск.

-o каталог, --operatingdir=каталог
    Встановити робочий каталог. Це призводить до налаштовування nano у спосіб, подібний до chroot.

-p, --preserve
    Preserve the XON and XOFF sequences (^Q and ^S) so they will be caught by the terminal. Note that option -/ (--modernbindings) overrides this.

-q, --indicator
    Показувати «смужку гортання» у правій частині вікна редагування. На смужці буде показано позицію поля перегляду у буфері і частку буфера, яку зайнято полем перегляду.

-r число, --fill=число
    Встановити ширину для вирівнювання за шириною та автоматичного жорсткого перенесення рядків на вказаній позиції число. Якщо число дорівнюватиме нулеві або буде меншим за нуль, перенесення буде виконано на позиції, яка дорівнює різниці між шириною екрана і числом, що надає змогу варіювати позицію перенесення із шириною екрана, якщо ширину екрана буде змінено. Типовим значенням є -8.

-s "програма [аргумент ...]", --speller="програма [аргумент ...]"
    Скористатися цією командою для виконання перевірки і виправлення правопису, замість використання вбудованого засобу виправлення, який викликає hunspell(1) або spell(1).

-t, --saveonexit
    Зберегти буфер без запиту щодо дії (при виході з використанням комбінації ^X).

-u, --unix
    Типово зберігати файл у форматі Unix. Це перевизначає типову поведінку nano, яка полягає у зберіганні файла у форматі, який він мав до редагування. (Цей параметр ні на що не впливає, якщо ви також скористаєтеся --noconvert.)

-v, --view
    Просто переглянути файл і заборонити редагування: режим лише читання. Цей режим дозволяє користувачу відкривати файли для перегляду, без застосування режиму --restricted.

-w, --nowrap
    Не переносити жорстко поточний рядок автоматично, якщо він є надто довгим. Це типова поведінка (Цей параметр є протилежним до -b (--breaklonglines) -- пріоритет матиме той з них, який вказано останнім.)

-x, --nohelp
    Не показувати два рядки довідки у нижній частині екрана.

-y, --afterends
    Зробити так, щоб комбінації Ctrl+Стрілка праворуч і Ctrl+Delete зупиняли курсор на кінцях слів, а не на початках.

-!, --magic
    Якщо ні назва файла, ні його перший рядок не дають це визначити, спробувати скористатися libmagic для визначення відповідного синтаксису.

-%, --stateflags
    Використати верхній правий кут екрана для показу деяких прапорців стану: I, якщо увімкнено автовідступ, M, якщо увімкнено позначку, L, якщо увімкнено жорстке перенесення (розбиття довгих рядків), R, якщо ведеться запис макроса, та S, якщо увімкнено режим м'якого перенесення рядків. Якщо до буфера внесено зміни, після назви файла у центрі смужки заголовка буде показано зірочку (*).

-_, --minibar
    Suppress the title bar and instead show information about the current buffer at the bottom of the screen, in the space for the status bar. In this "mini bar" the filename is shown on the left, followed by an asterisk if the buffer has been modified. On the right are displayed the current line and column number, the code of the character under the cursor (in Unicode format: U+xxxx), the same flags as are shown by --stateflags, and a percentage that expresses how far the cursor is into the file (linewise). When a file is loaded or saved, and also when switching between buffers, the number of lines in the buffer is displayed after the filename. This number is cleared upon the next keystroke, or replaced with an [i/n] counter when multiple buffers are open. The line plus column numbers and the character code are displayed only when --constantshow is used, and can be toggled on and off with M-C. The state flags are displayed only when --stateflags is used.

-0, --zero
    Приховати усі елементи інтерфейсу (смужку заголовка, смужку стану та рядки довідки) і використати усі рядки термінала для показу вмісту буфера. Смужку стану буде показано, лише якщо там є змістовне повідомлення, яке зникне за 1,5 секунди або після натискання будь-якої клавіші. За допомогою натискання комбінації клавіш M-Z можна увімкнути або вимкнути показ смужки заголовка і смужки стану. За допомогою M-X можна увімкнути або вимкнути показ рядків довідки.

-/, --modernbindings
    Use key bindings similar to the ones that most modern programs use: ^X cuts, ^C copies, ^V pastes, ^Z undoes, ^Y redoes, ^F searches forward, ^G searches next, ^S saves, ^O opens a file, ^Q quits, and (when the terminal permits) ^H shows help. Furthermore, ^A sets the mark, ^R makes replacements, ^D searches previous, ^P shows the position, ^T goes to a line, ^W writes out a file, and ^E executes a command. Note that this overrides option -p (--preserve).

ПЕРЕМИКАННЯ
Деякі зі згаданих вище параметрів можна увімкнути або вимкнути уже у запущеному nano. Наприклад, натискання M-L вмикає або вимикає жорстке перенесення довгих рядків, M-S вмикає або вимикає м'яке перенесення рядків, M-N вмикає або вимикає показ номерів рядків, M-M вмикає або вимикає використання миші, M-I вмикає або вимикає автовідступи, а M-X вмикає або вимикає рядки довідки. Із повним списком можна ознайомитися у кінці довідкового тексту, який буде показано у відповідь на натискання комбінації клавіш ^G.

Перемикач M-X є особливим: він працює в усіх меню, окрім засобу перегляду довідки та упорядкування коду. Усі інші перемикачі працюють лише у головному меню.

ФАЙЛИ
Якщо використано параметр --rcfile, nano прочитає лише вказаний файл для встановлення параметрів роботи та синтаксичних конструкцій, а також клавіатурних скорочень. Без цього параметра nano виконає читання двох файлів налаштувань: спочатку загальносистемного nanorc (якщо такий існує), а потім nanorc користувача (якщо він існує), ~/.nanorc, $XDG_CONFIG_HOME/nano/nanorc або ~/.config/nano/nanorc, того з цих файлів, який буде виявлено першим. Див. nanorc(5), щоб дізнатися більше про можливий вміст таких файлів.

Див. /usr/share/nano/ та /usr/share/nano/extra/, щоб ознайомитися зі списком доступних визначень розфарбовування синтаксичних конструкцій.

ПРИМІТКИ
Вилучено параметр -z (--suspendable). Призупинення типово увімкнено. Доступ до нього можна отримати за допомогою ^T^Z. (Якщо ви хочете, щоб роботу nano призупиняло звичайне ^Z, додайте bind ^Z suspend main до вашого nanorc.)

When you want to copy marked text from nano to the system's clipboard, see one of the examples in the nanorc(5) man page.

Якщо альтернативного засобу перевірки правопису не вказано у рядку команди або одному з файлів nanorc, nano скористається вмістом змінної середовища SPELL для визначення цього засобу.

У деяких випадках nano робитиме спробу створити дамп буфера до аварійного файла. Таке трапляється, в основному, якщо nano отримує сигнал SIGHUP або SIGTERM чи вичерпує доступну пам'ять. Програма записує буфер до файла із назвою nano.save, якщо буфер ще не має назви, або для утворення назви файла додає суфікс «.save» до поточної назви файла. Якщо аварійний файл із також назвою вже існує у поточному каталозі, до назви буде додано «.save» і номер (наприклад «.save.1») для того, щоб зробити назву файла унікальною. У режимі декількох буферів, nano записуватиме усі відкриті буфери до відповідних аварійних файлів.

If you have any question about how to use nano in some specific situation, you can ask on help-nano@gnu.org.

ВАДИ
Запис і відтворення клавіатурних макросів належним чином працює лише у емуляторі термінала, а не у консолі Linux (VT), оскільки останній типово не розрізняє модифіковані і немодифіковані клавіші зі стрілками.

Будь ласка, повідомляйте про усі вади, які вам трапилися, ось тут:
https://savannah.gnu.org/bugs/?group=nano.

Якщо nano завершує роботу в аварійному режимі, програма зберігає усі змінені буфери до аварійних файлів .save. Якщо ви можете відтворити аварійне завершення роботи і хочете отримати зворотне трасування, визначте змінну середовища NANO_NOCATCH.

ДОМАШНЯ СТОРІНКА
https://nano-editor.org/

ДИВ. ТАКОЖ
nanorc(5)

/usr/share/doc/nano/ (або еквівалент у вашій системі)

ПЕРЕКЛАД
Український переклад цієї сторінки посібника виконано Yuri Chornoivan <yurchor@ukr.net>

Цей переклад є безкоштовною документацією; будь ласка, ознайомтеся з умовами GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html). НЕ НАДАЄТЬСЯ ЖОДНИХ ГАРАНТІЙ.

Якщо ви знайшли помилки у перекладі цієї сторінки підручника, будь ласка, надішліть електронний лист до списку листування перекладачів: trans-uk@lists.fedoraproject.org.