From ArchWiki
(Redirected from GNU nano)

GNU nano (or nano) is a text editor which aims to introduce a simple interface and intuitive command options to console based text editing. nano supports features including colorized syntax highlighting, DOS/Mac file type conversions, spellchecking and UTF-8 encoding. nano opened with an empty buffer typically occupies under 4 MB of resident memory.


Install the nano package.


The look, feel, and function of nano is typically controlled by way of either command-line arguments, or configuration commands within the file ~/.config/nano/nanorc.

A sample configuration file is installed upon program installation and is located at /etc/nanorc. To customize your nano configuration, first create a local copy at ~/.config/nano/nanorc:

$ cp /etc/nanorc ~/.config/nano/nanorc

Proceed to establish the nano console environment by setting and/or unsetting commands within ~/.config/nano/nanorc file.

Tip: nanorc(5) details the complete list configuration commands available for nano.

Syntax highlighting

Nano ships with predefined syntax highlighting rules, defined in /usr/share/nano/*.nanorc and /usr/share/nano/extra/*.nanorc. To enable them, add the following line to your ~/.config/nano/nanorc or to /etc/nanorc:

include "/usr/share/nano/*.nanorc"
include "/usr/share/nano/extra/*.nanorc"

For syntax highlighting enhancements which replace and expand the defaults, install nano-syntax-highlighting or nano-syntax-highlighting-gitAUR and, additionally to the above setting, also add:

include "/usr/share/nano-syntax-highlighting/*.nanorc"
Note: As of version 2020.10.10-1 of nano-syntax-highlighting, there is a syntax error in /usr/share/nano-syntax-highlighting/nanorc.nanorc.[1] To temporarily solve the issue, You can run:
# sed -i 's/icolor brightnormal/icolor normal/g' /usr/share/nano-syntax-highlighting/nanorc.nanorc


See for Forth highlighting.


Save (similar to Arch's old svntogit server) to /etc/nano/pkgbuild.nanorc and include it:

include "/etc/nano/pkgbuild.nanorc"
Tip: nano-syntax-highlighting has an alternative version.


Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Reason: As of recent versions of nano the following option has been removed as a configurable option and is enabled by default, however the default keybind has changed from ^Z (Ctrl+Z) to ^T^Z (Ctrl+T, Ctrl+Z) and it must be changed if the old behavior is desired. This can be done be checking the file /etc/nanorc in the Key bindings section for a general configuration or in a local configuration file. (Discuss in Talk:Nano)

Unlike most interactive programs, suspension is not enabled by default. To change this, uncomment the set suspendable line in /etc/nanorc. This will allow you to use the keys Ctrl+z to send nano to the background.


Shortcuts can be viewed from inside nano. See the nano online help files via Ctrl+g within nano and the nano Command Manual for complete descriptions and additional support.

See also the cheatsheet for nano.

Special functions

Keyboard shortcuts representing commonly used functions are listed along the bottom two lines of the nano screen.

They can be toggled by:

  • Ctrl for ^ based shortcuts
  • Meta (typically Alt) or Esc for M- based shortcuts
Tip: Feature Toggles lists the global toggles available for nano.

Tips and tricks

Replacing vi with nano

To replace vi with nano as the default text editor for commands such as visudo, set the VISUAL and EDITOR environment variables, for example:

export VISUAL=nano
export EDITOR=nano


Hijacked keybindings

Some window managers have keybindings that conflict with nano, for example Alt+Enter. Remove or remap them to e.g Super (with dconf for mutter, muffin and marco) and restart the window manager.

See also