Project:Emacs/Test plans

Why this?
Some packages need testing when being keyworded or stabilised, so they are collected here.

Improvements of the test plans are of course welcome, attach them to the respective stabilisation bug or write an e-mail to mailto:emacs@gentoo.org.

Prerequisites / Things to know
Add the following to or to your  file:

Emacs uses a special scheme for key combinations which uses C for, M for (often bound to the  key), and S for. So means + followed by +, which lets you exit Emacs.

Always make sure with the eselect module that you have the latest stable version active.

Glossary
Emacs jargon predates most of today's user interfaces. Here are some terms that are used below:

See also:
 * http://www.emacswiki.org/emacs/EmacsJargon
 * http://www.gnu.org/software/emacs/manual/html_node/emacs/Glossary.html

GNU Emacs and core components
Here are some test cases to for GNU Emacs:

Emerge with different USE flags
Watch out that the X USE flag will switch between a console only and X-enabled Emacs editor. When having X support switched on, run  with the   switch to test text-only mode.

Editing capabilities
Call Emacs with a file as parameter, even run it with  in your  file and use the   executable to visit test files.

Emerge Elisp packages
Emerge several packages from the app-emacs category and test them (various test cases are provided here).

eselect module
Emerge several versions of Emacs (and Emacs from Git), try to switch versions and call the executables (check version with  parameter). Check if correct man pages are symlinked.

emacs-updater
Do a dry run with  or just run it with   (you will be asked for confirmation before any real action is taken).


 * 1) Browse the HTML documentation at
 * 2) In Emacs, type
 * 3) Type     and switch to the scratch buffer
 * 4) Try some commands, like   or  . Terminate the commands by pressing

This should be tested with Emacs and with stand-alone info. Within Emacs:
 * 1) Type  to get the Info directory node
 * 2) Check if there is a dir entry for   (you should find it under the   heading)
 * 3) Press  at the dir entry to go to the manual
 * 4) Browse around

With stand-alone info:
 * 1) In the shell, type
 * 2) Follow steps 2 etc as above

app-editors – Other Emacs-like editors
Other Emacs-like editors are available as packages, including several Microemacs variants. They all should support basic Emacs key bindings. Generally, you should test if visiting and saving of files, cursor movement, and basic editing operations work. Notes for individual editors are included below.


 * 1) The   binary will give you Emacs key bindings (you don't want to know what   is ;-)

See above: GNU Emacs and core components


 * 1) QEmacs has full UTF-8 support
 * 2) If you have the chance, try to edit some bidirectional text

Some key bindings are different from GNU Emacs, most notably (instead of ) for ,  (instead of ) for  ,  (in addition to ) for  , and  (instead of ) for. See    for a complete list.


 * 1) Emerge with

  Add the following to your file:

 (Re)Start Emacs  Type  You should get a status display for  and , updated every 10 seconds  Press to quit 


 * 1) emerge  with it, see below

only:
 * 1) Call   (empty file)
 * 2) Press  and follow the instructions in the minibuffer (the line at the end)
 * 1) Download and visit the file circ.tex
 * 2) Press . There is an intentional error (you can see it by the comments around the region). Maybe you have to let LaTeX process it before via


 * 1) Download and visit the file aclocal.m4
 * 2) The mode line should now say
 * 3) You should get syntax highlighting if   is enabled
 * 4) Move the cursor to the beginning of some code block and press  (or )
 * 5) Move to the end of the code block and press
 * 6) The block should be commented out now


 * 1) Type
 * 2) Follow prompts and enter all the information you want
 * 3) Press the following keys and play around:  (edit entry),  (edit notes),  (delete entry)


 * 1) Type
 * 2) Current time in binary form should be displayed


 * 1) Visit a text file
 * 2) Move to some line you want to bookmark
 * 3) Type
 * 4) The line should be highlighted now
 * 5) Repeat previous 3 steps another time
 * 6) Type
 * 7) You should get a buffer   with a list of the bookmarks

  Type  Type some command, like   or   <li> A quoted box similar to the following example should appear:

</ol>


 * 1) Type
 * 2) Play a game by clicking units of more than two same-coloured blocks


 * 1) Run package tests from   by emerging   with.
 * 2) Execute   and check if the halp message is printed (and not error backtrace).


 * 1) Make sure you are member of the games group, and /usr/games/bin is in your PATH
 * 2) Make sure you have Emacs open in an X session, not console
 * 3) Type
 * 4) A new window with a chess board should appear
 * 5) Press  to change the size of pieces
 * 6) Type in some move like   or move pieces with the mouse


 * 1) Type
 * 2) Enter   as host and   as port
 * 3) Fool around on IRC


 * 1) Execute the test plan for, see below
 * 2) Download and visit the file cldoc-test.lisp
 * 3) Check that the file's major mode is Lisp
 * 4) Move the point over
 * 5) You should see this in the echo area:


 * 1) Type
 * 2) Use the cursor up/down keys and press return to select a theme


 * 1) Download and visit the file example.pl
 * 2) The mode line should tell you that   mode is enabled
 * 3) Type
 * 4) Highlighting should change a little bit and mode line should announce
 * 5) Check version by
 * 6) Go to a Perl statement (like  ) and press
 * 7) You should get some help about this functions in the echo area


 * 1) Download and visit the file test.cs
 * 2) The mode line should now say
 * 3) Type
 * 4) The source code should be highlighted (or not highlighted anymore)


 * 1) Copy the file  and visit it
 * 2) The mode line should now say
 * 3) Type     to toggle syntax highlighting
 * 4) Press  to mark the whole buffer as a region
 * 5) Press  to indent the region
 * 6) You should now get "old style" indentation (i.e. the closing   should be at the same indent level as the block)
 * 7) Type     to activate C style indentation
 * 8) Press  again
 * 9) You should now get "C style" indenting


 * 1) Download and visit the file test.csv
 * 2) The mode line should now say
 * 3) Mark the text with the mouse
 * 4) Type     and confirm the next question
 * 5) Lines should be sorted now
 * 6) Type
 * 7) Columns and lines are now transposed


 * 1) Download and visit the file ChangeLog
 * 2) Type
 * 3) You should now see markers for different errors: overlong lines, leading whitespace (non-tabs)


 * 1) Type
 * 2) The mode line should show buffer size / free space on partition


 * 1) Type
 * 2) Type some English word and watch the output


 * 1) Press
 * 2) Type some incomplete path, e.g.
 * 3) Press
 * 4) You should see directories in blue, source files in yellow, etc.


 * 1) Press  and type in a path (not an empty directory, please)
 * 2) The contents should be displayed in the main window
 * 3) Type
 * 4) Repeat the former step and the ordering should be reversed everytime


 * 1) Use http://www.cis.upenn.edu/~edloper/projects/doctestmode/walkthrough1.html to test it


 * 1) Download and visit the file use_flag.h
 * 2) Mode line should show
 * 3) Go to the first functions and type
 * 4) A multiline comment should be there for you now


 * 1) Download and visit the file p1025rdb_32b.dts
 * 2) The mode line should now say
 * 3) Type     to toggle syntax highlighting
 * 4) Move the cursor to the beginning of some code block and press  (or )
 * 5) Move to the end of the code block and press
 * 6) The block should be commented out now


 * 1) You need a working GnuPG including a private key
 * 2) Type
 * 3) Your keyring should be displayed, select an entry and check the contents
 * 4) Type
 * 5) Choose a file you wish to sign, then check the signature (.asc file)
 * 6) Type     in a writable opened file (aka buffer)
 * 7) See an inline signature appear


 * 1) Visit an ebuild and/or eclass file
 * 2) Check if   is indicated in the mode line
 * 3) It should highlight the syntax

The following is for an ebuild file:
 * 1) Press  and type in an ebuild subcommand (,  ,  , etc.)
 * 2) Press  and give away KEYWORDS in the ekeyword syntax
 * 3) Save the file with  and verify that the date in the copyright line is updated to the current year (only upon first saving)
 * 4) Switch to a new buffer with    . Press  and create a new ebuild from scratch


 * 1) Start Emacs in a folder with the source code of a program
 * 2) Type
 * 3) It should display some windows with your source files
 * 4) Possibly use     and see a list of options with


 * 1) Emerge  with it


 * 1) Type
 * 2) Press  (a new tab should appear on one of the top lines)
 * 3) Work with Emacs (visit a file or whatever)
 * 4) Use  to switch to the previous screen in cyclic order, or  to toggle screens
 * 5) Type
 * 6) A small window should appear above the minibuffer (regression test for )

This package is untypical for the app-emacs category, since it isn't an Emacs add-on. It installs files common to all SLOTs of Emacs. First, test if the site-start mechanism works correctly:
 * 1) Type
 * 2) It should display   in the echo area
 * 3) Repeat above test, but this time with Emacs started with
 * 4) It should display   now

Test the desktop entry (only if Emacs was emerged with USE="X"):
 * 1) Login under some X desktop (like Xfce or Gnome or KDE)
 * 2) There should be an entry for Emacs in the desktop menu under   /  . There should also be an icon if your desktop supports it
 * 3) Check if Emacs can be started via the desktop menu

Test if shared score files work (only if Emacs was emerged with USE="games"):
 * 1) Play a game of Tetris with
 * 2) When finished, a buffer   with your score should appear
 * 3) Type  and verify that the file is in  (something went wrong if it's in )

This will work only if Emacs itself supports the  option. Use  to make sure that you have Emacs 23 or later.
 * 1) As root, create a link for the init script for a user:
 * 2) Start the Emacs daemon with
 * 3) Login as the user that you had previously specified
 * 4) Connect to the Emacs daemon with   in a terminal, or with   for a new X frame
 * 5) Type  to disconnect again
 * 6) Stop the Emacs daemon with


 * 1) Type
 * 2) Give an XMPP server and a user name in the correct fields
 * 3) Save settings (either permanent or for that session only)
 * 4) Type
 * 5) Type in password when asked
 * 6) Go to buffer
 * 7) Try to chat with some contacts you might have


 * 1) Type
 * 2) You should be able to browse the WWW now
 * 3) Press  or middle mouse button on an image to display it


 * 1) Type
 * 2) Type in name of a file to download from the internet
 * 3) Possibly confirm creation of
 * 4) Type
 * 5) Type in a domain name
 * 6) Check  for the files


 * 1) Type
 * 2) If something moves on the screen, you are done


 * 1) Type
 * 2) Move around with the cursor keys and watch the property table below change


 * 1) Type
 * 2) Answer the questions, the default is good for Libera.Chat
 * 3) chat along on your favourite Gentoo channel


 * 1) Visit an eselect file
 * 2) Check if   is indicated in the mode line
 * 3) It should highlight the syntax


 * 1) Create a working directory and   there
 * 2) Make sure you have  installed
 * 3) Start Emacs, type
 * 4) An R shell should appear, saying   in the mode line
 * 5) Type
 * 6) Type   in the R shell
 * 7) A new window should open with a function skeleton
 * 8) Leave the window with


 * 1) Type
 * 2) Check if   is indicated in the mode line
 * 3) Visit an arbitrary file with
 * 4) Test cursor movement:  and  for previous/next line,  and  for backward/forward
 * 5)  should switch to insert mode (  in mode line)
 * 6) Type      to exit Emacs, or         to exit evil-mode only


 * 1) Type
 * 2) Press  and type a filename (without path!)
 * 3) It should locate the file and visit it


 * 1) Add the following line to your  file:
 * 2) Restart Emacs
 * 3) Visit a file
 * 4) Type
 * 5) The status line should show
 * 6) Press, the paragraph should be reformatted


 * 1) Download and visit the file emacs.deck
 * 2) Answer the questions


 * 1) Emerge reverse dependencies:, , , ,
 * 2) Test them


 * 1) Make sure you have Emacs open in an X session, not console
 * 2) Visit
 * 3) Type
 * 4) All functions should be folded and highlighted
 * 5) Click on function name with middle mouse button to unfold


 * 1) Start Emacs in an X session with   (empty file)
 * 2) Check if   is indicated in the mode line
 * 3) Type   followed by
 * 4) The keyword should be completed to
 * 5) Complete the line to say
 * 6) It should highlight the syntax
 * 7) Position the cursor in the line you just typed and press
 * 8) A   command window should appear in Emacs, as well as a gnuplot X frame showing a plot of the sine function


 * 1) Type
 * 2) Choose   as server
 * 3) Press  to add a new newsgroup (choose  )
 * 4) Point to the group and press  to write an article
 * 5) Send the news with
 * 6) Press return on   to enter the group and read articles


 * 1) Make sure that the GNU Emacs (not XEmacs) version of gnuserv is eselected (as root):
 * 2) Type
 * 3) Change to a terminal window and type   there
 * 4) The file should now appear in an Emacs frame
 * 5) Finish editing with ; the   command should return then


 * 1) Download and visit the file helloworld.dot
 * 2) Check if   is indicated in the mode line
 * 3) Typing     should toggle syntax highlighting
 * 4) Change the indentation of a few lines; the  key should restore it

If you have installed, you may now also test previewing:
 * 1) Type  to generate a PNG image
 * 2) Type
 * 3) A   window with the image should appear


 * 1) Visit some text file
 * 2) Type
 * 3) T3h bUff0r sh001d b3 c0nv0rt3d t0 l33t sp33x n0w


 * 1) Download and visit the file Interp2.lhs
 * 2) Check if there is a Haskell menu
 * 3) Check if there is LitHaskell on the bottom line
 * 4) Type
 * 5) The source code should be highlighted


 * 1) Type
 * 2) Switch to the lisp interaction buffer:
 * 3) Type
 * 4) Output should be
 * 5) Type
 * 6) Output should be


 * 1) Visit a text file
 * 2) Type
 * 3) The current line should be highlighted now


 * 1) Type
 * 2) Play with it

This mode produces a HTML file out of a given text file:
 * 1) Visit a text file
 * 2) Type
 * 3) Save as file with extension .html
 * 4) Use a browser to verify that the output looks ok

This mode produces a HTML file out of a given text file:
 * 1) Visit a text file
 * 2) Type
 * 3) Save as file with extension .html
 * 4) Use a browser to verify that the output looks ok


 * 1) Make sure you have set Emacs 21 by
 * 2) Emerge it
 * 3) Visit some files
 * 4) Type
 * 5) Check if all open files are nicely listed


 * 1) Type
 * 2) Type in a regex that should match the contents of files
 * 3) Type in a pattern for filenames in which should be searched


 * 1) Add the contents of dotemacs.initsplit to your  file
 * 2) Add the line   to the file  (this activates quit confirmation in Emacs, maybe you have it switched on already)
 * 3) Restart Emacs and check if you are asked for confirmation when quitting


 * 1) Download and visit the file strawberry.jam
 * 2) Go to line starting with
 * 3) Type   , the line should be indented now
 * 4) Type     to toggle syntax highlighting


 * 1) Download and visit the file hello.j
 * 2) Check if   is indicated in the mode line
 * 3) Type     to toggle syntax highlighting
 * 4) Change the indentation of a few lines; the  key should restore it


 * 1) Download and visit the file lcm.js
 * 2) Check if   is indicated in the mode line
 * 3) Type     to toggle syntax highlighting
 * 4) Change the indentation of a few lines; the  key should restore it


 * 1) Type
 * 2) Press the key combinations connected to the given function
 * 3) Leave with  and see how miserably you failed


 * 1) See test plan for


 * 1) Download and visit the file alt_getopt.lua
 * 2) Type     to toggle syntax highlighting


 * 1) Start Emacs in an English locale (like  ) to get an English language environment. Alternatively, add the following line to your  file:
 * 2) Type
 * 3) You should be asked for a server, choose   for example.  autocompletion should work
 * 4) Answer the questions to login or create a new account
 * 5) Type (for example)     to get a list of all Linux conferences
 * 6)  to quit


 * 1) Visit any file that is part of a git working tree
 * 2) Type
 * 3) You should get a buffer   with some info about your repository
 * 4) Type   (these are two ells)
 * 5) A buffer   with the commit logs should appear
 * 6) Move the curser to some commit and press
 * 7) The commit should be shown


 * 1) Emerge
 * 2) Use   tool to compile mailcrypt ebuild
 * 3) Go to
 * 4) Run


 * 1) Download and visit the file test.m
 * 2) It should ask you for MLINT configuration (say no)
 * 3) Text should be highlighted
 * 4) Edit the file (add a space e.g.) and save it
 * 5) Emacs should ask:
 * 6) Answer with yes,   should now be

If you have Matlab installed (not shipped with Gentoo):
 * 1) Type
 * 2) Play around there


 * 1) Add lines to  according to http://www.mew.org/en/info/release/mew_1.html#SEC6, the upper part is not relevant to set up only the mail configuration itself
 * 2) Type
 * 3) Mail retrieval should start immediately
 * 4) Select a mail and press Enter to read it
 * 5) Type     to compose a mail
 * 6) Send it by


 * 1) Type
 * 2) Visit a C or Lisp file (see the bottom of this page)
 * 3) Matching (and mismatched) parentheses should be highlighted now


 * 1) Run   from  (or the init script)
 * 2) Start Emacs, type
 * 3) A succesful connect is enough if you have an unconfigured mldonkey else
 * 4) Try     to see your shared files listed


 * 1) Download and visit the file mmm-example.sh
 * 2) Press  to accept the local variables of the file
 * 3) The two regions of the embedded here-documents should be highlighted now
 * 4) Move the cursor into the first highlighted region
 * 5) The mode line should change to
 * 6) Move to the second region
 * 7) The mode line should change to
 * 8) Press
 * 9) The help buffer should show the documentation for


 * 1) Download and visit the file hello.c
 * 2) Type
 * 3) You have to confirm the compile line (have a look if it is ok)
 * 4) Go to the directory where you stored   and check if the corresponding executable gives correct output


 * 1) Type
 * 2) Choose a directory where you have MP3 or Ogg files
 * 3) Press space bar to start playing
 * 4) Help is provided in the very window, use some hotkeys


 * 1) Type
 * 2) Verify that   is indicated in the mode line
 * 3) You should get a shell prompt; try some shell command
 * 4) Exit the shell with
 * 5) This should also delete the terminal buffer


 * 1) Visit some file
 * 2) Mark a region (move cursor to start of region, press, move to end of region)
 * 3) Type  mc/edit-lines
 * 4) There should be multiple cursors now, in all lines of the region
 * 5) Type some text, it should appear in all lines
 * 6) Press  to exit the mode

 <li> Add the following lines to your file:

<li> Restart Emacs and visit the file test.muse <li> Type <li> Answer the questions, publishing style has tab completion, redo with different styles (PDF, LaTex, Info, HTML etc.) <li> Check output files if they make sense to you </ol>


 * 1) Download and visit the file test_suite.cfg
 * 2) Type     to enable nagios-mode
 * 3) Verify that   is indicated in the mode line
 * 4) Check that each of the tests in the file does what it says it should


 * 1) Type
 * 2) Move cursor to [+]ＰＣ等 around bottom
 * 3) Press  to expand the tree
 * 4) Move cursor to   UNIX              (unix)
 * 5) Press  to list up articles
 * 6) Check if articles are listed up
 * 7) Press  on an article you choose
 * 8) You should read the contents of the article
 * 9) Press  three times to quit

If Japanese characters are not displayed correctly, you may have to install Japanese fonts first, before performing above test:  <li> Install Japanese fonts (emerge e.g.) <li> Add the following code to your file:

<li> (Re-)Start Emacs </ol>


 * 1) Visit the  file of any package.
 * 2) You should get syntax highlighting and the mode line should show
 * 3) Open a new line after the   tag and type
 * 4) Pressing  should show a list of possible completions, like   and
 * 5) Insert a tag that is not allowed at this position, like
 * 6) The invalid tag should be highlighted in red, and the mode line should show


 * 1) Download and visit the file test.valid.xml
 * 2) You should get syntax highlighting and the mode line should show
 * 3) Download and visit the file test.invalid.xml
 * 4) The mode line should show
 * 5) Press  and try some of the commands mentioned there


 * 1) Download and visit the file text.ml
 * 2) The mode line should show , if you have  installed you may have to switch to the right mode by
 * 3) You should get syntax highlighting if   is enabled
 * 4) Try some commands like  and  to insert   and   forms


 * 1) Download and visit the file example.org
 * 2) The mode line should show
 * 3) Type     and check if it corresponds with the to be stabled version
 * 4) Text should be highlighted (if not, type    )
 * 5) Move the cursor to the
 * 6) Press  several times
 * 7) The state should cycle between ,  , and  , unfolding the respective sections
 * 8) Move the cursor to the   line
 * 9) Press  until you are in state
 * 10) Move cursor to the number   in the second column
 * 11) Press
 * 12) The line is calculated and the whole table reformatted, to accomodate the wider columns


 * 1) Emerge
 * 2) Execute (at least) the first two steps of its test plan, see below

Now test if outline-magic mode works:
 * 1) Type
 * 2) Move the cursor to some second-level heading, e.g.
 * 3) Press  several times (this works under X only; on a tty type    )
 * 4) The state should cycle between ,  , and  , unfolding the respective sections


 * 1) Download and visit the file admin.php
 * 2) Text should be highlighted
 * 3) If not, type


 * 1) Download and visit the file cups_de.po
 * 2) Jump from field to field with
 * 3) Edit with
 * 4) Save the change for an entry with


 * 1) Type
 * 2) A nice menu should appear (be sure to have started Emacs in X)


 * 1) Visit a file named test.txt (contents does not matter)
 * 2) Put   into the buffer
 * 3) Go to the end of the just pasted line and press
 * 4) Go to the buffer test.txt
 * 5) Press  and the buffer should not be closed (including a message in the bottom line), the displayed buffer may change though


 * 1) Download and visit the file test.sql
 * 2) The mode line should now say
 * 3) You should get syntax highlighting if   is enabled


 * 1) Type
 * 2) Type in a Python expression. For example
 * 3) Check the output: Successful execution returns   or calculation result (  in above case)
 * 4) Use     to load a Python library if you want to check some special expressions


 * 1) Visit   (be careful when editing)
 * 2) Go down some lines so you are inside the first try block
 * 3) Type
 * 4) Cursor should be on
 * 5) Press, this opens a Python interactive shell
 * 6) Do some Python


 * 1) Type
 * 2) Type
 * 3) Typed in letters should not match the output on the screen
 * 4) Press  to quit emacs (people with confirmation can use  for )


 * 1) Add   to your  file
 * 2) (Re)Start Emacs and type in text
 * 3) Undo by
 * 4) Type
 * 5) The text should reappear


 * 1) Add   to your  file
 * 2) Follow the test plan for redo starting with second point
 * 3) Test if the menu bar items   /   and   /   are there and working (on a tty, you can invoke the menu bar with )


 * 1) Type
 * 2) Write down a note and press
 * 3) Check  if it has been saved correctly


 * 1) Visit an RFC text file, e.g. http://www.ietf.org/rfc/rfc2324.txt
 * 2) Page headers and footers should be suppressed, headings should be highlighted


 * 1) Type
 * 2) Answer the questions
 * 3) Type  to join a channel
 * 4) Try some commands (type  for a list)
 * 5) Type  to quit


 * 1) Visit a RELAX-NG .rnc file
 * 2) You should get syntax highlighting


 * 1) Download and visit the file example.rst
 * 2) Check if bottom line says
 * 3) Type     to toggle highlighting
 * 4) Add   below the first word (An)
 * 5) Type
 * 6) Check if the carets are multiplied


 * 1) Download and visit the file biorhythm.rb
 * 2) Check if there is Ruby on the bottom line
 * 3) Type
 * 4) See if the source code is highlighted (or if it is switched-off)


 * 1) emerge and test  with it, see below

 <li> Add the following code to your file:

<li> Restart Emacs <li> Visit any file <li> Move the cursor down a few lines and make some change <li> Restart Emacs again <li> Visit the same file again <li> The cursor should be in the same line as before </ol>


 * 1) Visit any file
 * 2) Type
 * 3) Lines should be preceded by a line number now
 * 4) Another     should turn it off again


 * 1) Add the following line to your  file: , instead of sbcl you must choose the Common LISP implementation you use
 * 2) Type
 * 3) If you get a console-like display, it is working


 * 1) Download and visit the file test.sml
 * 2) Check if bottom line says
 * 3) Type
 * 4) Check highlighting
 * 5)   for documentation


 * 1) Type
 * 2) Use the arrow keys to move around (the object of the game is to push all boxes through the maze to the goal area)
 * 3) Undo by


 * 1) Visit a text file
 * 2) Type
 * 3) You should see a pyjama-like pattern now


 * 1) Please test this package with both emacs-21.4-r12 and emacs-22.1-r1 (where it is disabled – a message should be displayed in pkg_postinst)
 * 2) Type
 * 3) Press  4 times for the default answers to all questions
 * 4) A 3x3 table template should appear
 * 5) Type some text; press  to go to the next field


 * 1) Follow the instructions in


 * 1) Visit an arbitrary text file in Emacs
 * 2) Type     which should give you a TECO command prompt  in the minibuffer
 * 3) Try some basic editing commands: Type   and press  two times to terminate the command. This should insert the string   at point position
 * 4) Type        . This should delete the previously inserted characters again
 * 5) Now visit the file example.teco
 * 6) Type       to copy the file's contents to TECO's Q register 2
 * 7) Type
 * 8) Type     at the TECO command prompt
 * 9) Some output (as in http://99-bottles-of-beer.net/lyrics.html) should appear in the   window


 * 1) Make sure you are in X
 * 2) Type
 * 3) Choose a directory where images are located
 * 4) Watch the output


 * 1) Type
 * 2) Follow the menu and connect to an AIM server


 * 1) Press
 * 2) Type in
 * 3) Edit it, save it, control by normal ssh if everything went fine
 * 4) Type
 * 5) Check output to be in sync with emerged version
 * 6) Press
 * 7) Type in   and give your root password (make sure you start Emacs as normal user)
 * 8) Edit and save the file


 * 1) Visit text.ml in Emacs
 * 2) Code should be highlighted and mode line should show
 * 3)  and  should move to the next and previous phrase, respectively.
 * 4)  should insert a template for a class.
 * 5) A phrase (like a block after a let statement) should be marked


 * 1) Type
 * 2) Have fun


 * 1) Follow test plan for, see below
 * 2) In addition, fonts should be coloured now


 * 1) Type
 * 2) A message should appear in the echo area


 * 1) Add the following line to your  file:
 * 2) Start Emacs again
 * 3) Type
 * 4) A list of Emacs session uptimes should be displayed


 * 1) Download and visit the file example.vhdl
 * 2) The mode line should say
 * 3) Press     and verify if you have the right version (an older version of vhdl-mode comes with Emacs itself)
 * 4) Press  to toggle electric mode
 * 5) The mode line should say   now (if not, press  again)
 * 6) Typing     should toggle syntax highlighting
 * 7) Press  to go to the end of the buffer
 * 8) Type   and press
 * 9) Answer the questions, the template should be filled (empty answer(s) to terminate)


 * 1) Type
 * 2) A list of all running processes should be displayed


 * 1) Download and visit the file Hello.vb
 * 2) Type
 * 3) Check the conditions indicated in the comments


 * 1) Create a file  where you specify how mail is retrieved:
 * 2) *  for POP (HOST and USER should be replaced by appropriate values),
 * 3) *  for IMAP
 * 4) * Add an mbox file to download and use
 * 5) * See info vm / Starting Up / Spool Files for more information
 * 6) Type     to start vm
 * 7) Press  to retrieve new mail
 * 8) Press  to view a message
 * 9) You should see the contents of your mail folder now


 * 1) Type
 * 2) An indicator bar should appear
 * 3) Use the left and right arrow keys to change the audio volume
 * 4) Press  to quit


 * 1) Follow the test plan for app-emacs/emacs-w3m
 * 2) In addition, the  key should do incremental searches, but limited to the text in HREF anchors


 * 1) Create a file
 * 2) Type
 * 3) Enter the newsgroup by clicking on the folder name
 * 1) Enter the newsgroup by clicking on the folder name


 * 1) Type
 * 2) Try some keyboard commands, like cursor movement
 * 3) The commands should print silly messages in the message line now
 * 4) Type     to turn it off again

See also: http://en.wikipedia.org/wiki/Wikipedia:Wikipedia-mode.el
 * 1) Get the source code of some Wikipedia page, e.g. http://en.wikipedia.org/wiki/Penguin, and
 * 2) * either use the  plugin in Firefox https://addons.mozilla.org/en-US/firefox/addon/its-all-text/ and edit the page source directly in Emacs,
 * 3) * or manually save it as and visit the file in Emacs
 * 4) The mode line should indicate
 * 5) Type     to toggle syntax highlighting
 * 6) Try some commands, like  to insert italic text, or  to insert a link


 * 1) Download and visit the file Emacs.ad
 * 2) The mode line should say   now
 * 3) Typing     should toggle syntax highlighting


 * 1) Download and visit the file test.xsl
 * 2) The mode line should say   now
 * 3) Typing     should toggle syntax highlighting
 * 4) Type    followed by two times  key
 * 5) Choose a function and check if they generate the correct character


 * 1) Test this package with GNU Emacs 22.1 or later
 * 2) Type
 * 3) A random quotation should appear in the echo area (try it several times; it should be a different one each time)


 * 1) Type
 * 2) The colour scheme should have changed

 <li> Add the following lines to your file:

<li> Restart Emacs <li> Type <li> Use IRC commands as usual </ol>

Example files
Example files needed for the test plans are hosted at https://projects.gentoo.org/emacs/test-plans/. To add a new example file, it should be committed to the git+ssh://git@git.gentoo.org/sites/projects/emacs.git repository.