Mac Developer Library Developer


This manual page is for Mac OS X version 10.9

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • To learn how the manual is organized or to learn about command syntax, read the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Developer Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.

NANO(1)                                                                                              NANO(1)

       nano - Nano's ANOther editor, an enhanced free Pico clone

       nano [OPTIONS] [[+LINE,COLUMN] FILE]...

       This manual page briefly documents the nano command.

       nano  is a small, free and friendly editor which aims to replace Pico, the default editor included in
       the non-free Pine package.  Rather than just copying Pico's look and feel, nano also implements  some
       missing  (or  disabled by default) features in Pico, such as "search and replace" and "go to line and
       column number".

              Places cursor at line number LINE and column number COLUMN (at least  one  of  which  must  be
              specified) on startup, instead of the default of line 1, column 1.

       -?     Same as -h (--help).

       -A (--smarthome)
              Make  the  Home  key smarter.  When Home is pressed anywhere but at the very beginning of non-whitespace nonwhitespace
              whitespace characters on a line, the cursor will jump to that beginning  (either  forwards  or
              backwards).   If the cursor is already at that position, it will jump to the true beginning of
              the line.

       -B (--backup)
              When saving a file, back up the previous version of it to the current filename suffixed with a

       -C dir (--backupdir=dir)
              Set the directory where nano puts unique backup files if file backups are enabled.

       -D (--boldtext)
              Use bold text instead of reverse video text.

       -E (--tabstospaces)
              Convert typed tabs to spaces.

       -F (--multibuffer)
              Enable multiple file buffers, if available.

       -H (--historylog)
              Log search and replace strings to ~/.nano_history, so they can be retrieved in later sessions,
              if nanorc support is available.

       -I (--ignorercfiles)
              Don't look at SYSCONFDIR/nanorc or ~/.nanorc, if nanorc support is available.

       -K (--rebindkeypad)
              Interpret the numeric keypad keys so that they all work properly.  You should only need to use
              this option if they don't, as mouse support won't work properly with this option enabled.

       -L (--nonewlines)
              Don't add newlines to the ends of files.

       -N (--noconvert)
              Disable automatic conversion of files from DOS/Mac format.

       -O (--morespace)
              Use the blank line below the titlebar as extra editing space.

       -Q str (--quotestr=str)
              Set  the quoting string for justifying.  The default is "^([ \t]*[#:>\|}])+" if extended regu-lar regular
              lar expression support is available, or "> " otherwise.  Note that \t stands for a Tab.

       -R (--restricted)
              Restricted mode: don't read or write to any file not specified on the command line;  read  any
              nanorc files; allow suspending; allow a file to be appended to, prepended to, or saved under a
              different name if it already has one; or use backup files or spell checking.  Also  accessible
              by invoking nano with any name beginning with 'r' (e.g. "rnano").

       -S (--smooth)
              Enable  smooth  scrolling.  Text will scroll line-by-line, instead of the usual chunk-by-chunk

       -T cols (--tabsize=cols)
              Set the size (width) of a tab to cols columns.  The value of cols must be greater than 0.  The
              default value is 8.

       -U (--quickblank)
              Do  quick  statusbar blanking.  Statusbar messages will disappear after 1 keystroke instead of
              25.  Note that -c overrides this.

       -V (--version)
              Show the current version number and exit.

       -W (--wordbounds)
              Detect word boundaries more accurately by treating punctuation characters as part of a word.

       -Y str (--syntax=str)
              Specify a specific syntax highlighting from the nanorc to use, if available.

       -c (--const)
              Constantly show the cursor position.  Note that this overrides -U.

       -d (--rebinddelete)
              Interpret the Delete key differently so that both Backspace and  Delete  work  properly.   You
              should only need to use this option if Backspace acts like Delete on your system.

       -h (--help)
              Show a summary of command line options and exit.

       -i (--autoindent)
              Indent new lines to the previous line's indentation.  Useful when editing source code.

       -k (--cut)
              Enable cut from cursor to end of line.

       -l (--nofollow)
              If  the file being edited is a symbolic link, replace the link with a new file instead of fol-lowing following
              lowing it.  Good for editing files in /tmp, perhaps?

       -m (--mouse)
              Enable mouse support, if available for your system.  When enabled, mouse clicks can be used to
              place  the  cursor, set the mark (with a double click), and execute shortcuts.  The mouse will
              work in the X Window System, and on the console when gpm is running.

       -o dir (--operatingdir=dir)
              Set operating directory.  Makes nano set up something similar to a chroot.

       -p (--preserve)
              Preserve the XON and XOFF sequences (^Q and ^S) so they will be caught by the terminal.

       -r cols (--fill=cols)
              Wrap lines at column cols.  If this value is 0 or less, wrapping will occur at  the  width  of
              the  screen  less  cols  columns,  allowing the wrap point to vary along with the width of the
              screen if the screen is resized.  The default value is -8.

       -s prog (--speller=prog)
              Enable alternative spell checker command.

       -t (--tempfile)
              Always save changed buffer without prompting.  Same as Pico's -t option.

       -v (--view)
              View file (read only) mode.

       -w (--nowrap)
              Disable wrapping of long lines.

       -x (--nohelp)
              Disable help screen at bottom of editor.

       -z (--suspend)
              Enable suspend ability.

       -a, -b, -e, -f, -g, -j
              Ignored, for compatibility with Pico.

       nano will read initialization files  in  the  following  order:  SYSCONFDIR/nanorc,  then  ~/.nanorc.
       Please  see nanorc(5) and the example file nanorc.sample, both of which should be provided with nano.

       If no alternative spell checker command is specified on the command line or  in  one  of  the  nanorc
       files, nano will check the SPELL environment variable for one.

       In  some  cases  nano will try to dump the buffer into an emergency file.  This will happen mainly if
       nano receives a SIGHUP or SIGTERM or runs out of memory.  It will write the buffer into a file  named if the buffer didn't have a name already, or will add a ".save" suffix to the current file-name. filename.
       name.  If an emergency file with that name already exists in  the  current  directory,  it  will  add
       ".save" plus a number (e.g. ".save.1") to the current filename in order to make it unique.  In multi-buffer multibuffer
       buffer mode, nano will write all the open buffers to their respective emergency files.

       Please send any comments or bug reports to

       The nano mailing list is available from

       To subscribe, email to with a subject of "subscribe".


       /usr/share/doc/nano/ (or equivalent on your system)

       Chris Allegretta <>, et al (see AUTHORS and THANKS for details).  This manual page was
       originally  written  by Jordi Mallach <>, for the Debian system (but may be used by oth-ers). others).

October 28, 2006                                version 2.0.0                                        NANO(1)

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.