pico(1)
๐ pico(1) ๐
General Commands Manual โจ the one, the only, pico โจ
๐ธ NAME ๐ธ
pico โ a simple text editor in the style of the Alpine Composer ๐ฆ
โจ SYNTAX โจ
pico [ options ] [ file ]
๐ DESCRIPTION ๐
Okay bestie, gather round, because pico is that girl. pico is a simple, display-oriented text editor based on the Alpine message system composer. Just like Alpine, your commands live at the bottom of the screen, and the help is context-sensitive (aka it actually knows what you're doing and helps you with that). And the second you type a character? Boom โ it's immediately inserted into the text. No saving rituals, no drama. ๐ซถ
Editing commands come in via control-key combinations. But here's the tea: some communications programs straight-up swallow certain control characters ๐ญ, so there's a workaround. You can emulate a control key by pressing ESCAPE twice, then the control character you wanted. So like, "ESC ESC c" is the equivalent of entering a ctrl-c. Iconic.
The editor has five basic features:
- paragraph justification
- searching
- block cut/paste
- a spelling checker
- a file browser
Let's break each one down, no cap.
Paragraph justification (or filling) happens in the paragraph that contains the cursor โ or, if your cursor is chillin' between lines, in the paragraph immediately below. Paragraphs are delimited by blank lines, or by lines beginning with a space or tab. And if you change your mind? Unjustification can be done immediately after justification using the control-U key combination. Undo queen. ๐
String searches are not sensitive to case. A search begins at the current cursor position and wraps around the end of the text (yes, it comes back around, it's generous like that). The most recent search string is offered as the default in subsequent searches, because it remembers. ๐
Blocks of text can be moved, copied or deleted with creative use of the command for mark (ctrl-^), delete (ctrl-k) and undelete (ctrl-u). The delete command removes text between the "mark" and the current cursor position, and places it in the "cut" buffer. The undelete command effects a "paste" at the current cursor position. It's giving clipboard before clipboards were cool. โจ
The spell checker examines all words in the text. Then it offers, in turn, each misspelled word for correction while highlighting it in the text. Spell checking can be cancelled at any time โ no trapping you in there. Alternatively, pico will substitute for the default spell checking routine a routine defined by the SPELL environment variable. That replacement routine should read standard input and write standard output. ๐
The file browser is offered as an option in the "Read File" and "Write Out" command prompts. It's intended to help in searching for specific files and navigating directory hierarchies. Filenames with sizes and names of directories in the current working directory are presented for selection. The current working directory is displayed on the top line of the display, while the list of available commands takes up the bottom two. Several basic file manipulation functions are supported: file renaming, copying, and deletion. Main character energy, fr fr. ๐
More specific help is available in pico's online help.
๐ OPTIONS ๐
+nโ Causespicoto be started with the cursor located n lines into the file. (Note: no space between"+"sign and number)-aโ Display all files including those beginning with a period (.).-bโ Enable the option to Replace text matches found using the "Where is" command. This now does nothing. Instead, the option is always turned on (as if the-bflag had been specified).-dโ Rebind the "delete" key so the character the cursor is on is rubbed out rather than the character to its left.-eโ Enable file name completion.-fโ Use function keys for commands. This option supported only in conjunction with UW Enhanced NCSA telnet.-hโ List valid command line options.-jโ Enable "Goto" command in the file browser. This enables the command to permit explicitly telling pilot which directory to visit.-gโ Enable "Show Cursor" mode in file browser. Cause cursor to be positioned before the current selection rather than placed at the lower left of the display.-kโ Causes "Cut Text" command to remove characters from the cursor position to the end of the line rather than remove the entire line.-mโ Enable mouse functionality. This only works whenpicois run from within an X Window System"xterm"window.-nnโ The-nnoption enables new mail notification. The n argument is optional, and specifies how often, in seconds, your mailbox is checked for new mail. For example,-n60causespicoto check for new mail once every minute. The default interval is 180 seconds, while the minimum allowed is 30. (Note: no space between"n"and the number)-odir โ Sets operating directory. Only files within this directory are accessible. Likewise, the file browser is limited to the specified directory subtree.-rnโ Sets column used to limit the "Justify" command's right margin-sspeller โ Specify an alternate program spell to use when spell checking.-tโ Enable "tool" mode. Intended for whenpicois used as the editor within other tools (e.g., Elm, Pnews).Picowill not prompt for save on exit, and will not rename the buffer during the "Write Out" command.-vโ View the file only, disallowing any editing.-versionโ Print Pico version and exit.-wโ Disable word wrap (thus allow editing of long lines).-xโ Disable keymenu at the bottom of the screen.-zโ Enable^Zsuspension ofpico.-pโ Preserve the "start" and "stop" characters, typicallyCtrl-QandCtrl-S, which are sometimes used in communications paths to control data flow between devices that operate at different speeds.-Qquotestr โ Set the quote string. Especially useful when composing email, setting this allows the quote string to be checked for when Justifying paragraphs. A common quote string is"> ".-Wword_separators โ If characters listed here appear in the middle of a word surrounded by alphanumeric characters that word is split into two words. This is used by the Forward and Backward word commands and by the spell checker.-qโ Termcap or terminfo definition for input escape sequences are used in preference to sequences defined by default. This option is only available ifpicowas compiled with theTERMCAP_WINSdefine turned on.-setlocale_ctypeโ Dosetlocale(LC_CTYPE)if available. Default is to not do thissetlocale.-no_setlocale_collateโ Do not dosetlocale(LC_COLLATE). Default is to do thissetlocale.
๐ last but never least: when a runningpicois disconnected (i.e., receives aSIGHUP),picowill save the current work if needed before exiting. Work is saved under the current filename with".save"appended. If the current work is unnamed, it is saved under the filename"pico.save". It literally refuses to lose your stuff. ๐ซถ
๐จ Color Support ๐จ
Ok bestie, if your terminal eats colors for breakfast, Pico can be configured to color text. Iconic. You can set the color of the text itself, the text in the key menu, the titlebar, and the messages and prompt in the status line. And as an added feature โ because she's generous โ Pico can also be configured to color up to three different levels of quoted text, plus the signature of an email message. Super useful when Pico is being used as a tool (that's with the -t command line switch, iykyk).
Pico can tell you how many colors your terminal supports when you start it with the switch -color_codes. And not just tell you โ she'll print a whole table showing the numerical code of every color supported in that terminal. To configure colors you must use these numerical codes. Example: 0 is black, so to configure black you use its code, the number 0.
To activate colors, you have to use the option -ncolors with a numerical value saying how many colors your terminal supports โ for example, -ncolors 256 means the user wishes to use a table of 256 colors. ๐
All the options that control color are four letter options. Their last two letters are either "fc" or "bc", indicating foreground color and background color respectively. The first two letters tell you what kind of text is being configured โ for example "nt" stands for normal text, so -ntfc is the color of normal text, while -ntbc is the color of the background of normal text. Here is the complete list of the color options Pico supports. No skipping, we're doing all of them. ๐
-color_codeโ displays the number of colors supported by the terminal, and a table showing the association of colors and numerical codes-ncolorsnumber โ activates color support in Pico, and tells Pico how many colors to use. Depending on your terminal, number could be8,16, or256.-ntfcnum โ specifies the number num of the color to be used to color normal text.-ntbcnum โ specifies the number num of the color of the background for normal text.-rtfcnum โ specifies the number num of the color of reverse text. Default: same as background color of normal text (if specified.)-rtbcnum โ specifies the number num of the color of the background of reverse text. Default: same as color of normal text (if specified.)-tbfcnum โ specifies the number num of the color of text of the title bar. Default: same as foreground color of reverse text.-tbbcnum โ specifies the number num of the color in the background of the title bar.-klfcnum โ specifies the number num of the color of the text of the key label.-klbcnum โ specifies the number num of the color in the background of the key label.-knfcnum โ specifies the number num of the color of the text of the key name.-knbcnum โ specifies the number num of the color of the background of the key name.-stfcnum โ specifies the number num of the color of the text of the status line.-stbcnum โ specifies the number num of the color of the background of the status line.-prfcnum โ specifies the number num of the color of the text of a prompt.-prbcnum โ specifies the number num of the color of the background of a prompt.-q1fcnum โ specifies the number num of the color of the text of level one of quoted text.-q1bcnum โ specifies the number num of the color of the background of level one of quoted text. If the option-q1bcis used, the default value of this option is the background color or normal text.-q2fcnum โ specifies the number num of the color of text of level two of quoted text.-q2bcnum โ specifies the number num of the color of the background of level two of quoted text. If the option-q1bcis used, the default value of this option is the background color or normal text.-q3fcnum โ specifies the number num of the color of text of level three of quoted text.-sbfcnum โ specifies the number num of the color of text of signature block text.-sbbcnum โ specifies the number num of the color of the background of signature block text.
Not me noticing the page writes the switch as-color_codesup top but as-color_codein the list ๐ โ and yes, the-q1bc/-q2bcdefaults really do say "background color or normal text" and-q2bcreally does point at-q1bc. We're reporting it exactly as it's written, no cap.
๐ Bugs ๐
The way lines longer than the display width get dealt with is not immediately obvious. Lines that continue beyond the edge of the display are indicated by a '$' character at the end of the line. Long lines are scrolled horizontally as the cursor moves through them. Lowkey a vibe, but forewarned is forearmed. ๐
๐ Files ๐
pico.saveโ Unnamed interrupted work saved here.*.saveโ Interrupted work on a named file is saved here.
๐ Authors ๐
- Michael Seibel
<mikes@cac.washington.edu> - Laurence Lundblade
<lgl@cac.washington.edu>
Pico was originally derived from MicroEmacs 3.6, by Dave G. Conroy.
Copyright 1989-2008 by the University of Washington.
๐ฆ See Also ๐ฆ
alpine(1)- Source distribution (part of the Alpine Message System):
$Date: 2009-02-02 13:54:23 -0600 (Mon, 02 Feb 2009) $
And that's the whole page, bestie ๐ซถ this was Version 5.09, dated the 2nd of Feb 2009 โ the source says 2009-02-02 13:54:23 -0600. Slay, go color your terminal, you've got this โจ๐
๐ฆ where this page comes from
- alpine 3.24: alpine-doc 2.26-r5 ยท Apache-2.0
- epel 10: alpine 2.26-18.el10_1 ยท Apache-2.0
- epel 9: alpine 2.25-2.el9 ยท ASL 2.0
- fedora 43: alpine 2.26-19.fc43 ยท Apache-2.0
- fedora 44: alpine 2.26-21.fc44 ยท Apache-2.0
- opensuse-leap 16.0: pico 5.09-bp160.1.15 ยท Apache-2.0
- opensuse-leap 16.0: pico 5.09-bp160.1.15 ยท Apache-2.0
- opensuse-leap 16.0: pico 5.09-bp160.1.15 ยท Apache-2.0
- opensuse-leap 16.0: pico 5.09-bp160.1.15 ยท Apache-2.0
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms