# GNU nano

**GNU nano** is a small, free text editor for the terminal, written as a free-software replacement for Pico, the editor bundled with the Pine email suite from the University of Washington. It copies Pico's look and feel, including its Control-key commands and on-screen shortcut hints, while adding features Pico lacked, such as undo and redo, syntax coloring, and search with regular expressions.<sup>[1](https://www.nano-editor.org/faq.html)</sup><sup> • </sup><sup>[2](https://packages.debian.org/en/sid/nano)</sup> It is written in C with an ncurses text interface, is licensed under GPL-3.0-or-later, and ships preinstalled on most Linux distributions.<sup>[2](https://packages.debian.org/en/sid/nano)</sup><sup> • </sup><sup>[3](https://practicallinuxbook.com/linux-text-editors/)</sup>

| Key fact | Detail |
|---|---|
| Purpose | Free replacement for Pico, the editor of the non-free Pine mailer; aims to emulate Pico as closely as reasonable while offering a superset of its functionality<sup>[1](https://www.nano-editor.org/faq.html)</sup><sup> • </sup><sup>[4](https://www.nano-editor.org/dist/latest/nano.html)</sup> |
| Origin | Written in late 1999 by Chris Allegretta as "TIP" (Tip Isn't Pico); renamed nano on January 10, 2000<sup>[1](https://www.nano-editor.org/faq.html)</sup> |
| GNU status | Declared an official GNU program by Richard Stallman in February 2001; first production release March 22, 2001<sup>[1](https://www.nano-editor.org/faq.html)</sup> |
| Current version | 9.2 "Alquézar", released July 31, 2026<sup>[5](https://www.nano-editor.org/news.php)</sup> |
| Interface | No editing modes; commands use Control and Meta (Alt) keys, with the active shortcuts listed at the bottom of the screen<sup>[3](https://practicallinuxbook.com/linux-text-editors/)</sup><sup> • </sup><sup>[6](https://dyn.manpages.debian.org/stretch/nano/editor.1.en.html)</sup> |
| Features beyond Pico | Undo/redo, line numbering, syntax coloring, soft-wrapping, interactive search and replace with regular expressions, go-to line and column, multiple file buffers, auto-indentation, tab completion, internationalization<sup>[2](https://packages.debian.org/en/sid/nano)</sup> |
| License and stack | C, ncurses text user interface, GPL-3.0-or-later<sup>[2](https://packages.debian.org/en/sid/nano)</sup> |

## History

Pico and Pine were for years the standard way to read and compose email on Unix systems, and their simple interfaces drew many beginners. Debian GNU/Linux, which distributes only truly free software, would not carry a binary package for Pine or Pico because of their license, leaving users who wanted those programs without a free option.<sup>[1](https://www.nano-editor.org/faq.html)</sup>

In late 1999 Chris Allegretta, a Debian user who had converted from [Slackware](https://www.edgepedia.org/slackware), spent a weekend writing a barely usable Pico clone he called TIP (Tip Isn't Pico). The first version could not be invoked without a filename, could not save files, and had no help display or [spell checker](https://www.edgepedia.org/spell-checker), but it improved with contributions from other coders.<sup>[1](https://www.nano-editor.org/faq.html)</sup> On January 10, 2000 the program was renamed to nano because of a namespace conflict with an existing Unix utility called tip, which establishes terminal connections to remote hosts; the conflict had gone unnoticed because most GNU/Linux distributions include no tip utility.<sup>[1](https://www.nano-editor.org/faq.html)</sup>

In February 2001 [Richard Stallman](https://www.edgepedia.org/richard-stallman) declared nano an official GNU program, and the first production release followed on March 22, 2001.<sup>[1](https://www.nano-editor.org/faq.html)</sup> The project's history page summarizes its two founding departures from Pico as being more Pico-compatible by default and carrying a truly free license, the GNU GPL.<sup>[7](https://nano-editor.org/history.php)</sup>

## Editing model and commands

Nano has no separate command mode. Typing inserts text, and commands are entered with the Control (^) and Meta (M-, usually Alt) keys, so a new or tired operator is less likely to type text that the editor interprets as a command.<sup>[6](https://dyn.manpages.debian.org/stretch/nano/editor.1.en.html)</sup> The two most-used commands are Ctrl+O to save and Ctrl+X to exit; Ctrl+K cuts the current line, Ctrl+U pastes the cut buffer, Ctrl+W searches, Ctrl+\ replaces, Ctrl+G shows help, and Alt+U and Alt+E undo and redo.<sup>[3](https://practicallinuxbook.com/linux-text-editors/)</sup> Consecutive Ctrl+K cuts accumulate in the cutbuffer until another command intervenes.<sup>[6](https://dyn.manpages.debian.org/stretch/nano/editor.1.en.html)</sup>

The editor can be invoked as `nano [FILE]`, and the cursor can be placed on a specific line by prefixing the filename with a plus sign and the line number, or on a specific column by adding a comma and column number; negative numbers count from the end of the file or line.<sup>[4](https://www.nano-editor.org/dist/latest/nano.html)</sup>

## Features

Beyond basic editing, nano offers undo and redo, syntax coloring, interactive search and replace with regular-expression support, auto-indentation, line numbers, word completion, file locking, backup files, and internationalization support.<sup>[4](https://www.nano-editor.org/dist/latest/nano.html)</sup><sup> • </sup><sup>[2](https://packages.debian.org/en/sid/nano)</sup> It supports multiple file buffers, soft-wrapping of overlong lines, selecting text by holding Shift, a go-to line-and-column command, and tab completion of filenames and search terms.<sup>[2](https://packages.debian.org/en/sid/nano)</sup> A file browser, invoked with ^T when reading or writing files, allows navigating directories to locate a file.<sup>[8](https://www.nano-editor.org/dist/v2.0/nano.html)</sup>

Behavior is configured through nanorc files: nano reads a user configuration from `~/.nanorc`, `$XDG_CONFIG_HOME/nano/nanorc`, or `~/.config/nano/nanorc`, depending on which file exists.<sup>[9](https://www.turbogeek.co.uk/nano-vim-vi-which-linux-editor-should-you-use/)</sup> Features can also be toggled while the editor is running.<sup>[2](https://packages.debian.org/en/sid/nano)</sup>

## Pico compatibility and defaults

The original goal was a complete bug-for-bug emulation of Pico; the current goal is to be as compatible as reasonable while offering a superset of Pico's functionality.<sup>[4](https://www.nano-editor.org/dist/latest/nano.html)</sup> Since version 4.0, nano no longer hard-wraps overlong lines by default, uses linewise (smooth) scrolling, and includes the line below the title bar in the editing area; the options `--breaklonglines`, `--jumpyscrolling`, and `--emptyline` (or `-bje`) restore the old Pico behavior.<sup>[4](https://www.nano-editor.org/dist/latest/nano.html)</sup><sup> • </sup><sup>[10](https://manpages.debian.org/bullseye/nano/nano.1.en.html)</sup> Since version 8.0, ^F starts a forward search and ^B a backward search, with M-F and M-B repeating the search in each direction.<sup>[4](https://www.nano-editor.org/dist/latest/nano.html)</sup>

## Recent releases

Version 9.0, released April 8, 2026, changed horizontal scrolling so that all lines scroll sideways together by just the amount needed to keep the cursor in view, with `--solosidescroll` restoring the older single-line scrolling; it also made M-Left, M-Right, M-Up, and M-Down rebindable and allowed clicking in the scrollbar area, with `--mouse` plus `--indicator`, to navigate roughly within the buffer.<sup>[5](https://www.nano-editor.org/news.php)</sup> Version 9.1 (June 23, 2026) removed the ability to read and write files in the old Mac format, which used a lone carriage return as the line ending, and fixed backup issues under `--backup`.<sup>[5](https://www.nano-editor.org/news.php)</sup> Version 9.2 (July 31, 2026) makes nano refuse to start when standard output is not a terminal, adds `--newbuffer` and 'set newbuffer' as better synonyms of `--multibuffer` and 'set multibuffer', and recognizes the legacy keystroke pairs ^W^T and ^/^T again.<sup>[5](https://www.nano-editor.org/news.php)</sup><sup> • </sup><sup>[11](https://www.mail-archive.com/info-gnu%40gnu.org/msg03554.html)</sup>

## Nano among terminal editors

Nano, Vim, and Emacs are the three most widely discussed terminal editors on Linux, and they occupy distinct positions. Nano has a minimal learning curve, shows its shortcuts on screen, and has no modes; Vim uses modal editing with a steep learning curve but very fast editing once learned; Emacs is highly extensible through [Emacs Lisp](https://www.edgepedia.org/emacs-lisp).<sup>[3](https://practicallinuxbook.com/linux-text-editors/)</sup><sup> • </sup><sup>[12](https://www.geeksforgeeks.org/linux-unix/difference-between-vim-vs-nano-vs-emacs/)</sup> Nano's customization is limited to basic options, and its power is rated low to medium, which suits quick configuration-file edits rather than daily coding.<sup>[3](https://practicallinuxbook.com/linux-text-editors/)</sup><sup> • </sup><sup>[13](https://meshworld.in/blog/how-to/text-editor-comparison/)</sup> It works well over SSH and is usually installed by default, making it a common choice for one-off edits on remote servers; for server work where only terminal editors are practical, Nano and Neovim are the most popular Vim alternatives.<sup>[3](https://practicallinuxbook.com/linux-text-editors/)</sup> On small systems, such as a 512 MB VPS, Nano or a minimal Vim configuration is the practical choice.<sup>[14](https://monovm.com/blog/nano-vs-vim-vs-emacs/)</sup>

## References

1. [The GNU nano editor FAQ, nano-editor.org](https://www.nano-editor.org/faq.html)
2. [Debian package details for nano (sid), packages.debian.org](https://packages.debian.org/en/sid/nano)
3. [Linux Text Editors: Vim, Emacs, and Nano Compared, The Practical Linux Handbook](https://practicallinuxbook.com/linux-text-editors/)
4. [The GNU nano text editor, manual version 9.2, nano-editor.org](https://www.nano-editor.org/dist/latest/nano.html)
5. [nano News, nano-editor.org](https://www.nano-editor.org/news.php)
6. [nano(1) man page, Debian stretch, manpages.debian.org](https://dyn.manpages.debian.org/stretch/nano/editor.1.en.html)
7. [nano History, nano-editor.org](https://nano-editor.org/history.php)
8. [nano Command Manual, version 2.0, nano-editor.org](https://www.nano-editor.org/dist/v2.0/nano.html)
9. [Nano vs Vim vs Vi for Linux Admins, TurboGeek](https://www.turbogeek.co.uk/nano-vim-vi-which-linux-editor-should-you-use/)
10. [nano(1) man page, Debian bullseye, manpages.debian.org](https://manpages.debian.org/bullseye/nano/nano.1.en.html)
11. [ANNOUNCE: nano-9.2 is released, mail-archive.com](https://www.mail-archive.com/info-gnu%40gnu.org/msg03554.html)
12. [Difference Between Vim VS Nano VS Emacs, GeeksforGeeks](https://www.geeksforgeeks.org/linux-unix/difference-between-vim-vs-nano-vs-emacs/)
13. [Terminal Text Editors Compared: vi/vim vs Nano vs Emacs, MeshWorld](https://meshworld.in/blog/how-to/text-editor-comparison/)
14. [Nano vs Vim vs Emacs — Which Terminal Editor to Learn?, MonoVM](https://monovm.com/blog/nano-vs-vim-vs-emacs/)

---
*Topic: Encyclopedia › Technology and the built world › Computing and digital systems › Software and programming › Named software products and platforms › Office and business software › Titles symbols to M › Titles 1 to G*

*Initially written Sep 17, 2026 · Reviewed: Oct 15, 2026 · Edited: Oct 15, 2026 · Last review: Oct 15, 2026*

*Copyright 2026 EdgeChat AI, a subsidiary of Biostate AI.*

License: Edgepedia Community License 1.0, https://www.edgepedia.org/edgepedia/license
