This manual documents GNU nano
, a small and friendly texteditor.
1 Introduction
GNU nano
is a small and friendly text editor. Besides basic textediting, nano
offers many extra features like an interactivesearch and replace, go to line and column number, auto-indentation,feature toggles, internationalization support, and filename tabcompletion.
I only see “Western European (Windows) there. I don’t see or know which ending format was used (CR+LF or Unicode or ANSI or UTF-8) If I open it in notepad2, I see everything on the status-line, and also using the File/ options. UTF-8/ANSI/whatever encoding has nothing to do with line-endings. The status bar will show, for the current editing tab, the line-ending type. Double-clicking that section of the status bar will allow you to change that line-ending type for the file (no need to copy and paste into another tab of the correct type). Unix Line Endings. Text files created on DOS/Windows machines have different line endings than files created on Unix/Linux. DOS uses carriage return and line feed ('rn') as a line ending, which Unix uses just line feed ('n'). You need to be careful about transferring files between Windows machines and Unix machines to make sure the.
1.1 Overview
The original goal for nano
was a complete bug-for-bug compatibleemulation of Pico, but nano
's current goal is to be as compatibleas possible while offering a superset of Pico's functionality. SeeSee Pico Compatibility, for more info.
The usual way to invoke nano
is:
nano [OPTION]... [FILE]
But it is also possible to edit several files in a row. Additionally,the cursor can be put on a desired line number by adding this numberwith a plus sign before any filename, and even in a desired column byadding it with a comma. So the complete synopsis is:
nano [OPTION]... [[+LINE] FILE]...
nano [OPTION]... [[+,COLUMN] FILE]...
nano [OPTION]... [[+LINE,COLUMN] FILE]...
Email bug reports to nano@nano-editor.org.
1.2 Command Line Options
nano
takes the following options from the command line:
+LINE,COLUMN
-?
-h, --help
. -A, --smarthome
-B, --backup
-C <dir>, --backupdir=<dir>
nano
puts unique backup files if filebackups are enabled. -D, --boldtext
-E, --tabstospaces
-F, --multibuffer
-H, --historylog
-I, --ignorercfiles
-K, --rebindkeypad
-L, --nonewlines
-N, --noconvert
-O, --morespace
-Q <str>, --quotestr=<str>
^([ t]*[|>:}#])+
if extended regular expression support is available, or '> ' otherwise. Note that t
above stands for a literal Tab character.
-R, --restricted
nano
with any name beginning with 'r' (e.g. 'rnano'). -S, --smooth
-T <#cols>, --tabsize=<#cols>
-U, --quickblank
-V, --version
-W, --wordbounds
-Y <str>, --syntax=<str>
-c, --const
-d, --rebinddelete
-h, --help
-i, --autoindent
-k, --cut
-l, --nofollow
-m, --mouse
-o <dir>, --operatingdir=<dir>
nano
set up something similar toa chroot. -p, --preserve
-r <#cols>, --fill=<#cols>
-s <prog>, --speller=<prog>
nano
uses the command specified in the SPELL environment variable, or, ifSPELL is not set, its own interactive spell checker that requires thespell
program to be installed on your system. -t, --tempfile
nano
as thecomposer of a mailer program. -v, --view
-w, --nowrap
-x, --nohelp
Note: When accessing the help system, Expert Mode is temporarilydisabled to display the help system navigation keys.
-z, --suspend
nano
's suspend ability using the system's suspendkeystroke (usually ^Z). -a, -b, -e, -f, -g, -j
2 Editor Basics
2.1 Entering Text
All key sequences in nano
are entered using the keyboard. nano
is a 'modeless' editor. All keys, with the exception ofControl and Meta key sequences, will enter text into the file beingedited.
2.2 Special Functions
Special functions use the Control (Ctrl) key, displayed in the help andshortcut lists as ^; the Meta key, displayed as M; or the Escape (Esc)key.
- Control key sequences are entered by holding down the Ctrl key andpressing the desired key, or by pressing the Esc key twice and pressingthe desired key.
- Pressing Esc twice and then typing a three-digit number from 000 to 255will enter the character with the corresponding value.
- Meta key sequences are entered by holding down the Meta key (normallythe Alt key) and pressing the desired key, or by pressing the Esc keyonce and pressing the desired key. Certain operating systems 'swallow'the Alt key so that it never reaches the application; if your operatingsystem does this, you should use the Esc key to generate Meta keysequences.
2.3 The Titlebar
The titlebar is the line displayed at the top of the editor. There arethree sections: left, center and right. The section on the leftdisplays the version of nano
being used. The center sectiondisplays the current filename, or 'New Buffer' if the file has not yetbeen named. The section on the right will display 'Modified' if thefile has been modified since it was last saved or opened.
Special modes: When nano
is in 'File browser' mode, the centersection will display the current directory instead of the filename. SeeSee The File Browser, for more info.
2.4 The Statusbar
The statusbar is the third line from the bottom of the screen, or thebottom line in Expert Mode. See See Expert Mode, for more info. Itshows important and informational messages. Any error messages thatoccur from using the editor will appear on the statusbar. Any questionsthat are asked of the user will be asked on the statusbar, and any userinput (search strings, filenames, etc.) will be input on the statusbar.
2.5 Shortcut Lists
The Shortcut Lists are the two lines at the bottom of the screen whichshow some of the more commonly used functions in the editor.
2.6 Using the Mouse
When mouse support has been configured and enabled, a single mouse clickplaces the cursor at the indicated position. Clicking a second time inthe same position toggles the mark. Clicking in the shortcut listexecutes the selected shortcut.
The mouse will work in the X Window System, and on the console when gpmis running.
3 Online Help
The online help system in nano
is available by pressing ^G. It is fairly self explanatory, documenting the various parts of theeditor and available keystrokes. Navigation is via the ^Y (Page Up)and ^V (Page Down) keys. ^X exits the help system.
4 Feature Toggles
Toggles allow you to change certain aspects of the editor that wouldnormally be done via command line options. They are invoked via Metakey sequences. See See Special Functions, for more info. Thefollowing global toggles are available:
Backup Files Toggle (Meta-B)
- toggles the -B (
--backup
) command line option. Constant Cursor Position Display Toggle (Meta-C)
- toggles the -c (
--const
) command line option. Multiple File Buffers Toggle (Meta-F)
- toggles the -F (
--multibuffer
) command line option. Smart Home Key Toggle (Meta-H)
- toggles the -A (
--smarthome
) command line option. Auto Indent Toggle (Meta-I)
- toggles the -i (
--autoindent
) command line option. Cut To End Toggle (Meta-K)
- toggles the -k (
--cut
) command line option. Long Line Wrapping Toggle (Meta-L)
- toggles the -w (
--nowrap
) command line option. Mouse Support Toggle (Meta-M)
- toggles the -m (
--mouse
) command line option. No Conversion From DOS/Mac Format Toggle (Meta-N)
- toggles the -N (
--noconvert
) command line option. More Space For Editing Toggle (Meta-O)
- toggles the -O (
--morespace
) command line option. Whitespace Display Toggle (Meta-P)
- toggles whitespace display mode if you have a 'whitespace' option inyour nanorc. See See Nanorc Files, for more info.
Tabs to Spaces Toggle (Meta-Q)
- toggles the -E (
--tabstospaces
) command line option. Smooth Scrolling Toggle (Meta-S)
- toggles the -S (
--smooth
) command line option. Expert/No Help Toggle (Meta-X)
- toggles the -x (
--nohelp
) command line option. Color Syntax Highlighting Toggle (Meta-Y)
- toggles color syntax highlighting if you have color syntaxes in yournanorc. See See Nanorc Files, for more info.
Suspend Toggle (Meta-Z)
- toggles the -z (
--suspend
) command line option.
5 Nanorc Files
The nanorc files contain the default settings for nano
. Theyshould not be in DOS or Mac format. During startup, nano
willfirst read its system-wide settings from SYSCONFDIR/nanorc, and thenuser-specific settings from ~/.nanorc.
Mac Terminal Text Editor
A nanorc file accepts a series of 'set' and 'unset' commands, which canbe used to configure nano
on startup without using the commandline options. Additionally, the 'syntax', 'color', and 'icolor'keywords are used to define syntax highlighting rules for different textpatterns. nano
will read one command per line.
Options in nanorc files take precedence over nano
's defaults, andcommand line options override nanorc settings. Options are also unsetby default, except for those that take arguments.
Quotes inside string parameters don't have to be escaped withbackslashes. The last double quote in the string will be treated as itsend. For example, for the 'brackets' option,
'')>]}'
will match '
, '
, )
, >
, ]
, and}
.
The supported commands and arguments are:
set/unset autoindent
set/unset backup
set backupdir 'directory'
nano
puts unique backup files if filebackups are enabled. set/unset backwards
set/unset boldtext
set brackets 'string'
'')>]}'
set/unset casesensitive
Text Editor For Mac Show Line Endings Download
set/unset const
set/unset cut
set fill 'n'
set/unset historylog
set matchbrackets 'string'
'(<[{)>]}'
set/unset morespace
set/unset mouse
set/unset multibuffer
set/unset noconvert
set/unset nofollow
set/unset nohelp
set/unset nonewlines
set/unset nowrap
set operatingdir 'directory'
nano
will only read and write files inside 'directory' and itssubdirectories. Also, the current directory is changed to here, sofiles are inserted from this directory. By default, the operatingdirectory feature is turned off. set/unset preserve
set punct 'string'
'!.?'
. set/unset quickblank
set quotestr 'string'
'^([ t]*[#:>|}])+'
if you have extended regular expression support, or '> ' otherwise. Note that 't' stands for a literal Tab character.
set/unset rebinddelete
set/unset rebindkeypad
set/unset regexp
set/unset smarthome
set/unset smooth
set speller 'spellprog'
set/unset suspend
nano
to be suspended. set tabsize 'n'
set/unset tabstospaces
set/unset tempfile
set/unset view
set whitespace 'string'
set/unset wordbounds
syntax 'str' ['fileregex' ... ]
The 'none' syntax is reserved; specifying it on the command line is thesame as not having a syntax at all. The 'default' syntax is special: ittakes no 'fileregex', and applies to files that don't match any othersyntax's 'fileregex'.
color fgcolor,bgcolor 'regex' ...
icolor fgcolor,bgcolor 'regex' ...
color fgcolor,bgcolor start='sr' end='er'
icolor fgcolor,bgcolor start='sr' end='er'
include 'syntaxfile'
6 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 tofind the desired file.
Basic movement in the file browser is accomplished with the arrow keys,page up, and page down. More advanced movement is accomplished bysearching via ^W (or 'w') and changing directories via ^_ (or 'g'). Thebehavior of the Enter (or 's') key varies by what is currently selected. If the currently selected object is a directory, the file browser willenter and display the contents of the directory. If the object is afile, this filename and path are copied to the statusbar, and the filebrowser exits.
7 Pico Compatibility
nano
attempts to emulate Pico as closely as possible, but thereare certain differences between the editors:
Search and Replace History
- As of version 1.1.99pre1 of
nano
, text entered as search orreplace strings will be stored and can be accessed with the up/downarrow keys. Previously,nano
offered a more consistent, butincompatible with Pico, method for entering search and replace strings. In the old method, previous entries would be displayed by default aseditable text in front of the cursor, as opposed to being bracketed anduneditable as it is in Pico. The old behavior could be made compatiblewith Pico via the-p
option, but recent versions of Pico use the-p
option to preserve the XON and XOFF sequences within theeditor. Since, with the new method, search and replace strings canstill be edited by simply hitting the up arrow key once, the old methodwas removed completely. Writing, Appending, or Prepending Selected Text to Files
- Text selected using the marking key (^^) can be written out, appended,or prepended to a new or existing file using the WriteOut key (^O).
Toggles
- Many options which alter the functionality of the program can be'toggled' on or off using Meta key sequences, meaning the program doesnot have to be restarted to turn a particular feature of the editor onor off. Please see the internal help function (^G) for a list of whatfunctions can be toggled for a particular version of
nano
. SeeSee Feature Toggles, for more info. Cursor Position Display
- The output of the 'Display Cursor Position' in
nano
displaysthe given column position, as well as the row and total characterposition of the cursor. Interactive Replace and Spell Checker
- It is worth noting that
nano
's replace function is interactive,i.e. it does not stop after one search string is found and automaticallyreplace it. Thenano
implementation will pause at each searchstring found and query whether to replace this instance or not. Theinternal spell checker operates similarly. Note that there is no way toforce these functions to behave in the Pico fashion. As of version1.1.99pre1, misspelled words are sorted and trimmed for uniqueness inthe internal spell checker such that the words 'apple' and 'Apple' willbe prompted for correction separately.
8 Building and Configure Options
Building nano
from source is fairly straightforward if you arefamiliar with compiling programs with autoconf support:
- tar xvfz nano-x.y.z.tar.gz (where x.y.z is the version of
nano
) - cd nano-x.y.z/
- ./configure
- make
- make install
The possible options to ./configure
are:
--disable-browser
- Disable the mini file browser when reading or writing files.
--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 basicthings about using the editor.
--disable-justify
- Disable the justify and unjustify functions.
--disable-mouse
- Disable all mouse functionality. This also disables the -m command lineoption, which enables the mouse functionality.
--disable-operatingdir
- Disable setting the operating directory. This also disables the -ocommand line option, which sets the operating directory.
--disable-speller
- Disable use of the spell checker. This also disables the -s commandline option, which allows specifying an alternate spell checker.
--disable-tabcomp
- Disable the tab completion code when reading or writing files.
--disable-wrapping
- Disable all long line wrapping. This also eliminates the -w commandline option, which enables long line wrapping.
--enable-tiny
- This option disables all the above. It also disables some of the largerinternals of the editor, like the marking code and the cut to end ofline code. It also disables the function toggles.
--enable-debug
- Enable support for runtime debug output. This can get pretty messy, sochances are you only want this feature to work on the nano source.
--enable-extra
- Enable extra features. At the moment, this is just easter egg-typestuff.
--enable-color
- Enable support for syntax coloring of files using the nanorc file. Thisenables nanorc support as well.
--enable-multibuffer
- Enable support for opening multiple files at a time and switchingbetween them on the fly.
--enable-nanorc
- Enable support for reading the nanorc file at startup. You can storecustom settings in the nanorc file rather than having to pass commandline options to get desired behavior. See See Nanorc Files, formore info.
--enable-all
- Shortcut for enabling the above four features (extra, color,multibuffer, and nanorc).
--disable-nls
- Disables Native Language support. This will disable use of theavailable GNU
nano
translations. --disable-wrapping-as-root
- Disable long line wrapping by default when nano is run as root.
--enable-utf8
- Enable support for reading and writing Unicode files. This will requireeither a wide version of curses, or a UTF-8-enabled version of Slang.
--disable-utf8
- Disable support for reading and writing Unicode files.
--with-slang
- Compiling
nano
with Slang is supported, and will make the binarynotably smaller than if compiled with ncurses or other curses libraries.
Table of Contents
- 1 Introduction
- 2 Editor Basics
Tincta is an elegant one-window text editor for macOS. It is intuitive to use on personal tasks like writing blog posts, letters or grocery lists. But it also has all functionality you need for professional webdesign and programming.
Features
Tincta comes with all the features you expect from a professional text editor:
- Syntax coloring for over 65 languages
- Search and replace with RegEx support
- Fast and reliable line numbering
- Full unicode support
- Multiple built in color themes
- Custom color themes
- Fast and snappy native Mac app
And lots of useful little details that will make you love it:
- Auto close brackets
- Auto indent lines
- Page guide
- Automatically wrap lines
- Full drag & drop support
- Indent selected text with tab
- Search and replace with RegEx support
- Change case
- Show invisible characters
- Convert between text encodings
- Convert line endings
- Convert tabs/spaces
- Spell checker
- Printing
- Block selection
- Octopus icon
Looks
Availability
You can also download Tincta for free from the Mac App Store
And as Tincta is open source, you can also check out the repository and build it yourself. This should not be too hard. Just take a look at the read-me.
Why Open Source
For a while now we concentrate on our efforts on Wokabulary, a flash card app focused on language learning for Mac, iPhone and iPad.
Tincta still has many fans, though, (including ourselves) and we don't want to just abandon this useful tool. Therefore we decided to open source Tincta and release small updates on the Mac App Store whenever people contribute to it (also including ourselves).
Support Development
If you want to support development of Tincta, consider purchasing Wokabulary. It's the best app to learn your vocabulary.
How to contribute
If you find bugs open an issue within the GitHub project, make sure you describe how to reproduce it and if possible include the file you were working on when you hit the bug.
If you have a fix ready, open a pull request. We will review it and merge it eventually.