nano: Building and Configure Options
10 Building and Configure Options
*********************************
Building ‘nano’ from source is fairly straightforward if you are
familiar with compiling programs with autoconf support:
tar xvzf nano-x.y.z.tar.gz
cd nano-x.y.z
./configure
make
make install
The possible options to ‘./configure’ are:
‘--disable-browser’
Disable the mini file browser that can be called with ‘^T’ when
reading or writing files.
‘--disable-color’
Disable support for the syntax coloring of files. This also
eliminates the ‘-Y’ command-line option, which chooses a specific
syntax.
‘--disable-comment’
Disable the single-keystroke comment/uncomment function (‘M-3’).
‘--disable-extra’
Disable the Easter egg: a crawl of major contributors.
‘--disable-help’
Disable the help function. Doing this makes the binary much
smaller, but makes it difficult for new users to learn more than
very basic things about using the editor.
‘--disable-histories’
Disable the code for the handling of the history files: the search
and replace strings that were used, and the cursor position at
which each file was closed. This also eliminates the ‘-H’ and ‘-P’
command-line options, which switch on the logging of search/replace
strings and cursor positions.
‘--disable-justify’
Disable the justify and unjustify functions.
‘--disable-libmagic’
Disable the use of the library of magic-number tests (for
determining the file type and thus which syntax to use for
colouring — often the tests on filename extension and header line
will be enough).
‘--disable-linenumbers’
Disable the line-numbering function (‘M-#’). This also eliminates
the ‘-l’ command-line option, which turns line numbering on.
‘--disable-mouse’
Disable all mouse functionality. This also eliminates the ‘-m’
command-line option, which enables the mouse functionality.
‘--disable-multibuffer’
Disable support for opening multiple files at a time and switching
between them on the fly. This also eliminates the ‘-F’
command-line option, which causes a file to be read into a separate
buffer by default.
‘--disable-nanorc’
Disable support for reading the nanorc files at startup. With such
support, you can store custom settings in a system-wide and a
per-user nanorc file rather than having to pass command-line
options to get the desired behavior. Nanorc Files for more
info. Disabling this also eliminates the ‘-I’ command-line option,
which inhibits the reading of nanorc files.
‘--disable-operatingdir’
Disable setting the operating directory. This also eliminates the
‘-o’ command-line option, which sets the operating directory.
‘--disable-speller’
Disable use of the spell checker. This also eliminates the ‘-s’
command-line option, which allows specifying an alternate spell
checker.
‘--disable-tabcomp’
Disable tab completion (when nano asks for a filename or a search
string).
‘--disable-wordcomp’
Disable word completion (‘^]’).
‘--disable-wrapping’
Disable all hard-wrapping of overlong lines. This also eliminates
the ‘-w’ command-line option, which switches long-line wrapping
off.
‘--enable-tiny’
This option implies all of the above. It also disables some other
internals of the editor, like the marking code, the
cut-to-end-of-line code, and the function toggles. By using the
enabling counterpart of the above options together with
‘--enable-tiny’, specific features can be switched back on — but a
few cannot.
‘--enable-debug’
Enable support for runtime debug output. This can get pretty
messy, so chances are you only want this feature when you’re
working on the nano source.
‘--disable-nls’
Disables Native Language support. This will disable the use of any
available GNU ‘nano’ translations.
‘--disable-wrapping-as-root’
Disable hard-wrapping of overlong lines by default when ‘nano’ is
run as root.
‘--enable-utf8’
Enable support for reading and writing Unicode files. This will
require either a wide version of curses, or a UTF-8-enabled version
of Slang.
‘--disable-utf8’
Disable support for reading and writing Unicode files. Normally
the configure script auto-detects whether to enable UTF-8 support
or not. You can use this or the previous option to override that
detection.
‘--enable-altrcname=NAME’
Use the file with the given NAME (in the user’s home directory) as
nano’s settings file, instead of the default ‘.nanorc’.
‘--with-slang’
Compile ‘nano’ against Slang instead of against ncurses or other
curses libraries.