ANN: Leo 4.1 beta 1: An outlining editor

Edward K. Ream
Fri, 7 Nov 2003 09:44:34 -0600

Leo 4.1 beta 1 is now available at:

This is the first official release of the reorganized 4.1 code base.  The
code appears solid, and has not been widely tested.  Please use caution when
using this code.

N.B. By default Leo 4.1 creates .leo files that can not be read by older
versions of Leo.  Please read the following carefully.

Highlights of 4.1 beta 1:

* Leo 4.1 includes several new commands:
  - script-based find/change commands: very powerful and flexible.
  - Hoist & DeHoist commands for viewing parts of an outline.
  - Check Outline command finds user clone mistakes.
* New configuration settings:
  - use_gnx specifies whether .leo files use integers as indices:
    use_gnx = 0 makes .leo files compatible with previous versions of Leo.
    use_gnx = 1 makes .leo files cvs-friendly
  - config_encoding specifies the encoding of leoConfig.txt.
* Several significant code-level changes:
  - The 4.1 code base has been reorganized to support gui plugins.
    An example wx_gui plugin is partly functional.
  - Created a flexible framework for creating & running regression tests.
    This framework takes full advantage of outlines to organize tests.
  - app.forceShutdown now works when called from plugins.
- Fixed several long-standing bugs.  More fixes are coming.

What is Leo?
- A programmer's editor, an outlining editor and a flexible browser.
- A literate programming tool, compatible with noweb and CWEB.
- A data organizer and project manager. Leo provides multiple views
   of projects within a single outline.
- Fully scriptable using Python. Leo saves its files in XML format.
- Portable. is 100% pure Python.
- Open Software, distributed under the Python License.

Leo requires Python 2.1 or above and tcl/tk 8.3 or above.
Leo works on Linux, Windows and MacOs X.


Edward K. Ream
November 7, 2003
Edward K. Ream   email:
Leo: Literate Editor with Outlines