mirror of git://git.sv.gnu.org/nano.git
493 lines
16 KiB
Plaintext
493 lines
16 KiB
Plaintext
\input texinfo @c -*-texinfo-*-
|
|
@c %**start of header
|
|
@setfilename nano.info
|
|
@settitle nano Command Manual
|
|
@c %**end of header
|
|
|
|
@c This file has the new style title page commands.
|
|
@c Run `makeinfo' rather than `texinfo-format-buffer'.
|
|
@smallbook
|
|
@set EDITION 0.1
|
|
@set VERSION 1.1.9
|
|
@set UPDATED 14 Jul 2002
|
|
|
|
@dircategory Editors
|
|
@direntry
|
|
* nano: (nano). Small and friendly text editor.
|
|
@end direntry
|
|
|
|
@c tex
|
|
@c \overfullrule=0pt
|
|
@c end tex
|
|
|
|
@titlepage
|
|
@title GNU @code{nano}
|
|
@subtitle a small and friendly text editor.
|
|
@subtitle version 1.1.9
|
|
|
|
@author Chris Allegretta
|
|
@page
|
|
|
|
This manual documents GNU @code{nano}, a small and friendly text
|
|
editor.
|
|
|
|
This manual is part of the GNU @code{nano} distribution.@*
|
|
@sp4
|
|
Copyright (C) 1999, 2000, 2001, 2002 Chris Allegretta.
|
|
|
|
Permission is granted to make and distribute verbatim copies of this
|
|
manual provided the copyright notice and this permission notice are
|
|
preserved on all copies.
|
|
|
|
@iftex
|
|
Permission is granted to process this file through TeX and print the
|
|
results, provided the printed document carries copying permission notice
|
|
identical to this one except for the removal of this paragraph (this
|
|
paragraph not being relevant to the printed manual).
|
|
@end iftex
|
|
|
|
Permission is granted to copy and distribute modified versions of this
|
|
manual under the conditions for verbatim copying, provided that the
|
|
entire resulting derived work is distributed under the terms of a
|
|
permission notice identical to this one.
|
|
|
|
Permission is granted to copy and distribute translations of this manual
|
|
into another language, under the above conditions for modified versions,
|
|
except that this permission notice may be stated in a translation
|
|
approved by the Foundation.
|
|
|
|
You may contact the author by:
|
|
e-mail: @email{chrisa@@asty.org}@*
|
|
@end titlepage
|
|
|
|
@node Top, Introduction, (dir), (dir)
|
|
|
|
This manual documents GNU @code{nano}, a small and friendly text
|
|
editor.
|
|
|
|
@menu
|
|
* Introduction::
|
|
* Editor Basics::
|
|
* Online Help::
|
|
* Feature Toggles::
|
|
* The File Browser::
|
|
* Pico Compatibility::
|
|
* Building and Configure Options::
|
|
@end menu
|
|
|
|
@node Introduction, Editor Basics, Top, Top
|
|
@chapter Introduction
|
|
|
|
GNU @code{nano} is a small and friendly text editor. Besides basic text
|
|
editing, @code{nano} offers many extra features like an interactive
|
|
search and replace, goto line number, auto-indentation, feature toggles,
|
|
internationalization support, and filename tab completion.
|
|
|
|
@menu
|
|
* Overview::
|
|
* Command Line Options::
|
|
@end menu
|
|
|
|
@node Overview, Command Line Options, Introduction, Introduction
|
|
@section Overview
|
|
|
|
@code{nano} [GNU long option] [option] +LINE [ @var{ file ...} ]
|
|
|
|
The original goal for @code{nano} was a complete bug-for-bug compatible
|
|
emulation of Pico, but consistency is now a slightly higher priority.
|
|
There is a flag to implement (nearly) complete Pico emulation, (option -p
|
|
or GNU long option --pico). This can also be toggled from within
|
|
@code{nano} by typing Meta-P. @xref{Pico Compatibility}, for more
|
|
info.
|
|
|
|
Email bug reports to @email{nano@@nano-editor.org}.
|
|
|
|
@node Command Line Options, , Overview, Introduction
|
|
@section Command Line Options
|
|
|
|
@code{nano} takes the following options from the command line:
|
|
|
|
@table @code
|
|
|
|
@item -B, --backup
|
|
When saving a file, back up the previous version of it to the current
|
|
filename suffixed with a ~.
|
|
|
|
@item -D, --dos
|
|
Write file in DOS format.
|
|
|
|
@item -F, --multibuffer
|
|
Enable multiple file buffers, if available.
|
|
|
|
@item -I, --ignorercfiles
|
|
Don't look at /etc/nanorc or ~/.nanorc, if nanorc support is available.
|
|
|
|
@item -K, --keypad
|
|
Do not use the ncurses keypad() call unless necessary. Try this flag if
|
|
you find that the arrow keys on the numeric keypad do not work for you
|
|
under @code{nano}.
|
|
|
|
@item -M, --mac
|
|
Write file in Mac format.
|
|
|
|
@item -N, --noconvert
|
|
Do not convert files from DOS/Mac format.
|
|
|
|
@item -Q [str], --quotestr [str]
|
|
Set the quoting string for justifying. The default is "> ".
|
|
|
|
@item -R, --regexp
|
|
Turns on regular expression search and search/replace.
|
|
|
|
@item -S, --smooth
|
|
Enables smooth scrolling.
|
|
|
|
@item -T [num], --tabsize=[num]
|
|
Set the displayed tab length to [num] columns.
|
|
|
|
@item -V, --version
|
|
Print the version number and copyright and quit.
|
|
|
|
@item -Y, --syntax=[str]
|
|
Specify a specific syntax highlighting from the .nanorc to use, if
|
|
available.
|
|
|
|
@item -c, --const
|
|
Constantly display the cursor position and line number on the statusbar.
|
|
|
|
@item -h, --help
|
|
Print the usage and exit.
|
|
|
|
@item -i, --autoindent
|
|
Automatically indent new lines to the same number of spaces and tabs as
|
|
the previous line.
|
|
|
|
@item -k, --cut
|
|
Makes ^K cut from the current cursor position to the end of the current
|
|
line.
|
|
|
|
@item -l, --nofollow
|
|
When writing files, if the given file is a symbolic link it is removed
|
|
and a new file is created.
|
|
|
|
@item -m, --mouse
|
|
Enables the use of the mouse to select text (currently only useful for
|
|
running under the X window system).
|
|
|
|
@item -o [dir], --operatingdir=[dir]
|
|
Set operating directory. Makes @code{nano} set up something similar to a
|
|
chroot.
|
|
|
|
@item -p, --pico
|
|
Emulate Pico as closely as possible, sacrificing consistency for correct
|
|
emulation. @xref{Pico Compatibility}, for more info.
|
|
|
|
@item -r [#cols], --fill=[#cols].
|
|
Wrap lines at column #cols. By default this is the width of the screen,
|
|
less eight. If this value is negative, wrapping will occur at #cols from
|
|
the right of the screen, allowing it to vary along with the screen width
|
|
if the screen is resized.
|
|
|
|
@item -s [prog], --speller=[prog]
|
|
Invoke [prog] as the spell checker. By default, @code{nano} uses its
|
|
own interactive spell checker that requires the @code{spell} program be
|
|
installed on your system.
|
|
|
|
@item -t, --tempfile
|
|
Do not ask whether or not to save the current contents of the file when
|
|
exiting, assume yes. This is most useful when using @code{nano} as the
|
|
composer of a mailer program.
|
|
|
|
@anchor{Expert Mode}
|
|
@item -x, --nohelp
|
|
In Expert Mode, the Shortcut Lists will not appear at the bottom of the
|
|
screen. This affects the location of the statusbar as well, as in Expert
|
|
Mode it is located at the very bottom of the editor.
|
|
|
|
Note: When accessing the help system, Expert Mode is temporarily disabled
|
|
to display the help system navigation keys.
|
|
|
|
@item -v, --view
|
|
Do not allow the contents of the file to be altered. Note that this
|
|
flag should NOT be used in place of correct file permissions to implement
|
|
a read-only file.
|
|
|
|
@item -w, --nowrap
|
|
Do not wrap long lines at any length. This option overrides any value for
|
|
-r.
|
|
|
|
@item -z, --suspend
|
|
Enable suspend ability of @code{nano} using the system's suspend
|
|
keystroke (usually ^Z).
|
|
|
|
@item -a, -b, -e, -f, -g, -j
|
|
Ignored, for compatibility with Pico.
|
|
|
|
@item +LINE
|
|
Start at line number LINE instead of the default of line 1.
|
|
@end table
|
|
|
|
@node Editor Basics, Online Help, Introduction, Top
|
|
@chapter Editor Basics
|
|
@menu
|
|
* Entering Text::
|
|
* Special Functions::
|
|
* The Titlebar::
|
|
* The Statusbar::
|
|
* Shortcut Lists::
|
|
@end menu
|
|
|
|
@node Entering Text, Special Functions, Editor Basics, Editor Basics
|
|
@section Entering Text
|
|
|
|
All key sequences in @code{nano} are entered using the keyboard.
|
|
@code{nano} is a "modeless" editor, all keys with the exception of
|
|
Control and Meta key sequences will enter text into the file being
|
|
edited.
|
|
|
|
@node Special Functions, The Titlebar, Entering Text, Editor Basics
|
|
@section Special Functions
|
|
|
|
Special functions use the Control key (displayed in the help and
|
|
shortcut lists as ^) or the Meta key (displayed as M).
|
|
|
|
@itemize @bullet
|
|
|
|
@item
|
|
Control key sequences are entered by holding down the Control key and
|
|
pressing the desired letter.
|
|
@item
|
|
Meta key sequences can be entered in a number of
|
|
possible ways: Pressing the Escape key, then releasing it and pressing
|
|
the desired key, or holding down the Alt key while pressing the desired
|
|
key. This varies from keyboard to keyboard, and certain commercial
|
|
operating systems "swallow" the Alt key so that it never reaches the
|
|
application. If your operating system does this, you should use the
|
|
Escape key to generate Meta key sequences.
|
|
@end itemize
|
|
|
|
@node The Titlebar, The Statusbar, Special Functions, Editor Basics
|
|
@section The Titlebar
|
|
|
|
The titlebar is the line displayed at the top of the editor. There are
|
|
three sections: left, center and right. The section on the left displays
|
|
the version of @code{nano} being used. The center section displays the
|
|
current file name, or "New Buffer" if the file has not yet been named.
|
|
The section on the right will display "Modified" if the file has been
|
|
modified since it was last saved or opened.
|
|
|
|
Special modes: When @code{nano} is in "File browser" mode, the center
|
|
section will display the current directory instead of the filename.
|
|
@xref{The File Browser}.
|
|
|
|
@node The Statusbar, Shortcut Lists, The Titlebar, Editor Basics
|
|
@section The Statusbar
|
|
|
|
The statusbar is located three lines from the bottom of the screen (or
|
|
the bottom line in Expert Mode. @xref{Expert Mode}, for more info.
|
|
|
|
The Statusbar shows important and informational messages. Any error
|
|
messages that occur from using the editor will appear on the statusbar.
|
|
Any questions that are asked of the user will be asked on the statusbar,
|
|
and any user input (search strings, file names, etc) will be input on
|
|
the statusbar.
|
|
|
|
@node Shortcut Lists, , The Statusbar, Editor Basics
|
|
@section Shortcut Lists
|
|
|
|
The Shortcut Lists are the two lines at the bottom of the screen which
|
|
show some of the more commonly used functions in the editor. The exact
|
|
functions which are displayed depend on whether Pico Compatibility Mode
|
|
mode is enabled. @xref{Pico Compatibility}, for more info.
|
|
|
|
@node Online Help, Feature Toggles, Editor Basics, Top
|
|
@chapter Online Help
|
|
|
|
The online help system in @code{nano} is available by pressing ^G.
|
|
It is fairly self explanatory, documenting the various parts of the
|
|
editor and available keystrokes. Navigation is via the ^Y (Page Up)
|
|
and ^V (Page Down) keys. ^X exits the help system.
|
|
|
|
|
|
@node Feature Toggles, The File Browser, Online Help, Top
|
|
@chapter Feature Toggles
|
|
|
|
Toggles allow you to change certain aspects of the editor that
|
|
would normally be done via command line flags. They are invoked via
|
|
certain Meta key sequenced. @xref{Special Functions}, for more info.
|
|
The following global toggles are available:
|
|
|
|
@table @code
|
|
|
|
@item Backup File Toggle (Meta-B)
|
|
toggles the -B (--backup) command line flag.
|
|
|
|
@item DOS Format Toggle (Meta-D)
|
|
toggles the -D (--dos) command line flag.
|
|
|
|
@item Multiple Files Toggle (Meta-F)
|
|
toggles the -F (--multibuffer) command line flag.
|
|
|
|
@item AutoIndent Toggle (Meta-I)
|
|
toggles the -i (--autoindent) command line flag.
|
|
|
|
@item Cut To End Toggle (Meta-K)
|
|
toggles the -k (--cut) command line flag.
|
|
|
|
@item Mouse Toggle (Meta-M)
|
|
toggles the -m (--mouse) command line flag.
|
|
|
|
@item Mac Format Toggle (Meta-O)
|
|
toggles the -M (--mac) command line flag.
|
|
|
|
@item Pico Mode Toggle (Meta-P)
|
|
toggles the -p (--pico) command line flag.
|
|
@xref{Pico Compatibility}, for more info.
|
|
|
|
@item Smooth Scrolling Toggle (Meta-S)
|
|
toggles the -s (--smooth) command line flag.
|
|
|
|
@item AutoWrap Toggle (Meta-W)
|
|
toggles the -w (--nowrap) command line flag.
|
|
|
|
@item Expert/Nohelp Toggle (Meta-X)
|
|
toggles the -x (--nohelp) command line flag.
|
|
|
|
@item Suspend Toggle (Meta-Z)
|
|
toggles the -z (--suspend) command line flag.
|
|
|
|
@item Open Previous File Toggle (Meta-<)
|
|
changes buffer to previously loaded file.
|
|
|
|
@item Open Next File Toggle (Meta->)
|
|
changes buffer to next loaded file.
|
|
|
|
|
|
@end table
|
|
|
|
@node The File Browser, Pico Compatibility, Feature Toggles, Top
|
|
@chapter The File Browser
|
|
|
|
When reading or writing files, pressing ^T will invoke the file browser.
|
|
Here, one can navigate directories in a graphical manner in order to
|
|
find the desired file.
|
|
|
|
Basic movement in the file browser is accomplished with he arrow keys
|
|
and page up/down. The behavior of the enter (or 's') key varies by what
|
|
is currently selected. If the currently selected object is a directory,
|
|
the file browser will enter and display the contents of the directory.
|
|
If the object is a file, this filename and path are copied to the
|
|
statusbar and the file browser is exited.
|
|
|
|
@node Pico Compatibility, Building and Configure Options, The File Browser, Top
|
|
@chapter Pico Compatibility
|
|
|
|
nano does not completely emulate Pico by default. The following
|
|
differences apply to the default mode and Pico Compatibility mode:
|
|
|
|
@table @code
|
|
@item Displayed Shortcuts
|
|
By default, the following shortcuts are displayed in the Shortcut Lists:
|
|
|
|
^G ^O ^\ ^Y ^K ^C@*
|
|
^X ^R ^W ^V ^U ^T
|
|
|
|
Related functions are listed above or below each other by default. The
|
|
Justify function is not listed, instead the "Replace" function is
|
|
displayed. Also, he "Read File" and "WriteOut" functions are aligned for
|
|
consistency.
|
|
|
|
In Pico Compatibility mode, the default Pico shortcuts are displayed:
|
|
|
|
^G ^O ^R ^Y ^K ^C@*
|
|
^X ^J ^W ^V ^U ^T
|
|
|
|
@item Previous String Text
|
|
By default, previously entered string for a function (search string,
|
|
file name) will be placed on the statusbar, and is editable. This is
|
|
done so there is consistency across all functions. For example: even if
|
|
there is a previous replace string, it can always be deleted if one
|
|
wishes to perform an empty string replace.
|
|
|
|
In Pico Compatibility Mode, the previously entered text in a search or
|
|
replace will appear in brackets, and is not editable. It is not a
|
|
simple matter to do an empty string replace when a previous replace
|
|
string exists, for example. When writing a file, the previous filename
|
|
will be displayed in the editable text portion of the editor.
|
|
|
|
@item Interactive Replace and Spell Checker
|
|
It is worth noting that the @code{nano} replace function is interactive,
|
|
i.e. it does not stop after one search string is found and automatically
|
|
replace it. The @code{nano} implementation will stop at each search
|
|
string found and query whether to replace this instance or not. The
|
|
internal spell checker operates similarly. Note that these is no way
|
|
to force these functions to behave in the Pico fashion.
|
|
@end table
|
|
|
|
@node Building and Configure Options, , Pico Compatibility, Top
|
|
@chapter Building and Configure Options
|
|
|
|
Building @code{nano} from source is fairly straightforward if you are familiar
|
|
with compiling programs with autoconf support:
|
|
|
|
tar xvfz nano-x.y.z.tar.gz (where x.y.z is the version of @code{nano})
|
|
cd nano-x.y.z/
|
|
./configure
|
|
make
|
|
make install
|
|
|
|
if you are looking to optimize @code{nano} for size, you may want to
|
|
consider the following command line options:
|
|
|
|
|
|
@table @code
|
|
|
|
@item --disable-tabcomp
|
|
Disable the tab completion code when reading or writing files.
|
|
|
|
@item --disable-justify
|
|
Disable the justify (^J)/unjustify (^U) functions in the editor.
|
|
|
|
@item --disable-speller
|
|
Disables spell checker ability.
|
|
|
|
@item --disable-help
|
|
Disables the help function (^G). Disabling this option makes the binary
|
|
much smaller, but makes it difficult for new users to learn more than
|
|
very basic things about using the editor.
|
|
|
|
@item --disable-browser
|
|
Disables the mini file browser (^O) when reading or writing files.
|
|
|
|
@item --enable-tiny
|
|
This options disables all the above. It also disables some of the larger
|
|
internals of the editor, like the marker code (^^) and the cut to line
|
|
(-k) option which it depends on to work properly. It also disables the
|
|
function toggles and mouse support.
|
|
|
|
@item --disable-wrapping
|
|
Disables all word wrapping in the editor. This also eliminates the -w
|
|
command line flag, as nonwrapping is then the default behavior.
|
|
|
|
@item --disable-mouse
|
|
Disables all mouse functionality. This also disables the -m command
|
|
line flag which enables the mouse functions.
|
|
|
|
@item --disable-operatingdir
|
|
Disables setting of operating directory. This also disables the -o
|
|
command line flag.
|
|
|
|
@item --disable-nls
|
|
Disables Native Language support. This will make the available GNU
|
|
@code{nano} translations unusable.
|
|
|
|
@item --with-slang
|
|
Compiling GNU @code{nano} with Slang is supported, and will make the
|
|
binary notably smaller than if compiled with ncurses or other curses
|
|
libraries.
|
|
|
|
@end table
|
|
|
|
@contents
|
|
@bye
|