- Leo (text editor)
Infobox Software
name = Leo: Literate Editor with Outlines
http://sourceforge.net/project/screenshots.php?group_id=3458&ssid=22298 Screenshots]
caption =
developer = Edward K. Ream
latest_release_version = 4.5.1 final
latest_release_date = 2008-9-14
operating_system =Cross-platform
genre =Text editor ,Outliner ,IDE
license = Python License
website = [http://webpages.charter.net/edreamleo/front.html Leo's home]Leo (Literate Editor with Outlines) is a
text editor that features outlines with clones as its central tool of organization and navigation.Language
Leo is written in Python and uses the Tk GUI toolkit. It is fully scriptable using Python and can be extended with plugins.
Leo outlines and clones
In Leo, outlines are hierarchical tree structures that are used to work with and manage text files -- including code.
Clones are outline nodes that are automatically kept identical throughout a Leo outline. They can be thought of as pointers to the same content: By editing one, all the other clones of that outline element update as well.
This feature turns the outline tree structure into a
directed acyclic graph structure.Outline nodes may be named or unnamed. Leo creates output files in a process called "tangling". Tangling starts at the top-level node of the output file. The contents of the top-level node are copied to the output file. Named nodes are inserted at the point of reference, as in macro languages; unnamed nodes are inserted as the result of Leo's @others directive. Tangling is a recursive process--inserted nodes may contain @other directives and references to named nodes, and so on.
Literate programming and Leo
Leo supports formats used in
literate programming [ [http://webpages.charter.net/edreamleo/design.html leo Documentation - Chapter 6: Leo and Literate Programming] ] , and uses some ideas of the concept. The main idea is the concurrent development of code anddocumentation by keeping the two close together, while maintaining independence from the code sequence by using named outline elements called chunks.External links
* [http://webpages.charter.net/edreamleo/front.html Leo's homepage]
* [http://sourceforge.net/projects/leo/ Leo at SourceForge]
* [http://sourceforge.net/project/screenshots.php?group_id=3458&ssid=22298 Screenshots]References
Wikimedia Foundation. 2010.