Sven Guckes firstname.lastname@example.org ©1995-2015
Latest change: Fr Jun 26 21:00:00 CEST 2015
PICO - the PIne COmposer - a simple editor
PICO means "very small" and also stands for "PIne COmposer"
(or "Pine Internal COmposer"),
ie it is a text editor (composer) that ships with the Unix/DOS newsreader "PINE".
PICO is designed to be a "simple editor", ie only the bare minimum of commands
and simply to use. Very good for beginners who wish to write emails and posts.
The editor "Nano" is an OpenSource project/program to replace PICO.
See my article about
from pico to nano [2000-01-27]
and nano's homepage at
PICO - Overview
On this page:
PICO - Command Analysis
- Historic Fact
PICO commands derived from MicroEmacs-3.6 (so the manual says).
- Command Set
PICO does not have many commands - you can learn them within an hour or so.
But these commands are the commands you would definitely need to edit a text.
PICO's commands are one-key only, ie there are no commands
where you have to issue a sequence of two or more keys.
PICO is always in "insert mode", ie all letters are
never interpreted as commands but inserted into the text.
This is less confusing to a beginner than modal editors
where letters can be interpreted as commands depending on the mode.
Half the commands are "jump commands" that move the cursor.
This is really basic stuff - you should get use to these within minutes.
- top line (version, filename, modified)
The line at the top of the screen shows the version number ("UW PICO(tm) 2.9")
the filename, and an indicator to show that editing has changed the copy of the
file you are working on ("Modified").
- edit area
The edit area are all lines except the first and the last three.
- info line
The third last line is reserved for messages and prompts.
After cancelling a command with ^C you get the message "[ Cancelled ]".
Atfer using ^O to write out the edited text to a file you get the prompt
for the file name: "File Name to write : filename".
- help lines
The last two lines are reserved for help on the vailable commands.
Therefore you need not look for a manual to be able to use it.
- The standard help lines look like this:
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text^T To Spell
From the manual:
"The editor has five basic features: paragraph justification, searching,
block cut/paste, a spelling checker, and a file browser."
- ^J ("Justify")
- paragraph justification
- ^T ("To Spell")
- Spell Checking, Spelling Checker
Misfeatures and pet peeves.
- Inconsistency of Commands [2000-11-16]
Chris Allegretta email@example.com:
In replace mode (-b), if you replace with "" (don't enter anything),
PICO assumes you are replacing with the null string!
In EVERY OTHER MODE a blank string means "default" or "cancel".
- word wrap [1999-12-13]
PICO automatically wraps words onto the next line - or not.
This settings depends on the initial setting with option "-w".
You cannot change this from within the running PICO. No way.
- That's the reason why NANO now has "toggles". :-)
- version number not from command line [1997-03-05]
PICO displays the version number on screen after startup -
but you cannot request this information on the command line.
It would be nice if PICO had an option for that,
preferably both "-v" and the long option name "--version".
- nano-0.8.8 does is perfetcly:
nano version 0.8.8 by Chris Allegretta (compiled 16:53:56, Mar 18 2000)
Email: firstname.lastname@example.org Web: http://www.asty.org/nano
- no override/quote/escape command [1997-03-05]
You cannot "override" command characters (ie characters that are interpreted as
command). Example: ^L - it always get interpreted as a command.
Therefore you cannot enter it to your texts.
[Vi has ^V to override special characters in insert mode, eg ^D and ^T.]
- Command "write" changes current filename
The command to "write" the current buffer to a file is ^O (control-o).
Assume you are editing the file named "X". Writing the current buffer to a
different file Y will also cause PICO to change the current filename to Y.
So when you want to make a backup of the current contents of the buffer to some
other file Y then PICO will retain the filename Y and you must remember to
switch back to the file X when you write again. This is annoying when you are
writing a mail, ie some temporary file and write a copy to some other file, as
it can happen that you continue to edit the copy but not the temp file which
you then send off.
Start PICO with the option 't', ie
- maximum line length forces wrap [1998-10-23]
PICO cannot read lines over 255 characters in length without wrapping.
This is not affected by the -w flag.
But I was told that with pine-4.03 this limitation has been fixed.
- Jump to End
- Q: How do you jump to the end of the buffer?
- A: To jump to the end of the buffer use the command CTRL-W CTRL-V.
^G Get Help ^Y FirstLine ^T LineNumber^O End of Par
^C Cancel ^V LastLine ^W Start of P
- Q: Does PICO have an "undo" command?
- A: Yes, use ^U to undo the last operation (insert/delete).
- Startup Options [1997-03-29]
Someone mentioned the startup option "-k".
But this isn't mentioned in my manual about pico.
What does it do?
- A: RTFM:
-k Causes "Cut Text" command to remove characters from the cursor position
to the end of the line rather than remove the entire line.
- Q: How can I suspend Pico?
You can suspend PICO with ^Z - but only if PICO
was started allowing this (option "-.").
- Q: How do I return to PICO after I had it suspended?
- A: Use the command "fg" ("foreground") to exit the shell and return to PICO.
- Spell checking
- Q: How can I make the spell checker check only the current word?
- A: The spell checker cannot be applied to parts of the text (eg the
- Q: How can I make the spell checker skip quoted text (when sending a reply)?
- A: The spell checker does not skip quoted text.
- [Yes, this is really frustrating.]
- Quick Jumps
- Q: How can I jump around in the file without having to move the cursor
line by line?
- A: To jump quickly to another position of the file use the search command
- Quick save and exit
- Q: Is there a way to save and quit PICO without having to answer questions?
- A: Start PICO with the option '-t' - then you can save and quit with
- ANSI / color
Which characters do I have to insert to my text to make it appear as
bold/underline/invers or in color on the monitor of the recipient of my text
Well, this all depends on the monitor (terminal) of the recipient.
You would to exactly know which kind it is and what "language" it understands.
Besides, you would have to make sure that the characters inside the text
will not be misinterpreted by all programs that transport your mail.
This is usually impossible to know.
Furthermore, if you post such a thing then you are asking for trouble -
the control codes certainly never fit all terminals.
It actually makes some terminals lock up and even force a reboot of some
computers. So this is "unneccessary, annoying and generally unwanted".
In short: Don't do it!
- Feature Extension [1998-01-01]
How can I add features to pico?
How about a goto-line command?
Or "substitution" (aka "search and replace")?
PICO is supposed to be "as small as possible".
Adding features would totally defeat its purpose.
If all requested features had been added to pico,
its name now would be "kilo" or "mega". Or "emacs". ;-)
But why couldn't you just add [this little feature]?
It addds very little to the code and could be sooo helpful!
There are many editors about with just a little more than pico.
- "Justify" (Text Reformatting) [1999-03-03]
- Q: Can pico reformat quoted text?
- A: Yes, pico preserves the quotation indentation of quoted text.
But this is limited to text quoted with ">" and the first level of
- Q: How can I reformat text that has been quoted more than once?
- Q: How can I reformat text with other quote indentation?
- A: Use another editor, eg vim.
[See also the page on "text reformatting with Vim".]
- Q: How about enhancing pico so that it can "justify" several levels
of quoted text?
- A: Yes - that's a good idea. Tell the developers! Or use Vim.
Why can't I use the command ^^ (control-^)?
You are probably using a terminal program that swallos this character
Either upgrade to a version which fixes this problem (eg NCSATelnet-2.7b4)
or use this workaround: Enter ESC-ESC-^ instead.
Actually, this is a special case of a general workaround:
From the manual:
"As a work-around for communications programs that swallow certain control
characters, you can emulate a control key by pressing ESCAPE twice,
followed by the desired control character, e.g. "ESC ESC c" would be
equivalent to entering a ctrl-c."
a) pine requires the pico libraries,
b) there is no separate pico distribution, and
c) the default make files build both pine and (stand alone) pico.
Summary: You have to download the pine distribution file to install pico.
Yes, the distribution of pine-4.10 compressed with GNU zip is about 2.7Mb.
I think that's too much to download for installing a simple editor. ;-)
But that's why there are precompiled versions of pico (and pine)
on the UW server with compressed binaries.
- PICO Distribution -> PINE Home Page
PICO is distributed with the newsreader PINE.
The following page tells where to get sources and binaries of PINE
(which include PICO):
- Binaries for DOS:
pico396b.zip 228 Kb Thu Sep 25 00:00:00 1997
pico396s.zip 185 Kb Thu Jun 25 00:00:00 1998
- Binaries for Unix: [1997-01-06,1998-05-14]
PICO - Links
- NANO [2000-01-09,2001-01-07]
- aka http://www.asty.org/nano/
- http://faculty.plattsburgh.edu/astyanax/nano [old]
- An OpenSource project to replace PICO.
- Author: Chris Allegretta email@example.com
- PICO HomePage
- PICO vs VI
My page that explains why Vi is better than PICO.
With examples to illustrate some of VI's concepts.
- About the PICO editor [2000-12-05,2001-01-07]
- Author: Allin Cottrell [December 1995]
- A very short intro to editing with pico.
- PICO Tutorial
- Author: "NCSU Computing Center" (are these humans?)
- PICO Commands [1997-01-16]
- An overview of the commands available in PICO.
- (Swedish) HowTo - Introduktion till Pico [2001-01-28]
- Author: firstname.lastname@example.org
- PICO and Netscape Gold [2003-05-29]
- "Last modified: Tue, 04 Mar 1997 20:05:20 GMT"
Created: Wed May 8 00:00:00 MET 1996
Latest change: Fr Jun 26 21:00:00 CEST 2015
Send feedback on this page to