.. rst3: filename: html/glossary.html ######### Glossary ######### .. |br| raw:: html
.. Links .. _`Customizing Leo`: customizing.html .. _`git repository`: https://github.com/leo-editor/leo-editor .. _`Writing plugins and hooks`: writingPlugins.html .. _`Leo's reference`: directives.html .. _`leo's tutorial`: tutorial.html This is a short glossary of important terms in Leo's world. For more information about terms, look in the index for links to discussions in other places, especially in `Leo's Tutorial`_ and `Leo's Reference`_. .. .. glossary:: .. :sorted: .. contents:: Contents :depth: 2 :local: \@ ++++ .. index:: pair: @; Glossary ``@`` Starts a doc part. Doc parts continue until an ``@c`` or ``@code`` directive or the end of the body text. .. index:: pair: ``@@ convention for headlines``; Glossary ``@@ convention for headlines`` Within ``@asis`` trees only, if a headline starts with ``@@``, Leo writes everything in the headline following the @@ just before the corresponding body text. .. index:: pair: ``@ node``; Glossary ``@ node`` A node whose headline starts with ``@asis``, ``@auto``, ``@clean``, ``@edit``, ``@file``, ``@shadow``, ``@thin``. We often refer to outline nodes by the directives they contain. For example, an ``@file`` node is a node whose headline starts with ``@file``. .. index:: pair: ``@all``; Glossary ``@all`` Copies the body text of all nodes in an @file tree to the external file. .. index:: pair: @asis; Glossary ``@asis `` Creates an external file containing no Leo sentinels directly from the ``@asis`` tree. .. index:: pair: ``@auto``; Glossary ``@auto `` Imports an external file into the Leo outline, splitting the file into nodes if an importer exists for the give filetype. .. index:: pair: ``@c``; Glossary pair: ``@code``; Glossary ``@c and @code`` Ends a doc part and starts a code part. .. index:: pair: ``@chapter``; Glossary ``@chapter`` An ``@chapter`` tree represents a chapter. .. index:: pair: ``@color``; Glossary .. index:: pair: ``@clean``; Glossary ``@clean`` Creates an external file without sentinels. |br| Section references and the ``@all`` and ``@others`` directives are valid in ``@clean`` trees. ``@color`` Enables syntax coloring in a node and its descendants until the next ``@nocolor`` directive. .. index:: pair: ``@comment``; Glossary ``@comment`` Sets the comment delimiters in ``@thin``, ``@file`` and ``@shadow`` files. .. index:: pair: ``@delims``; Glossary ``@delims`` Sets the comment delimiters in ``@thin``, ``@file`` and ``@shadow`` files. .. index:: pair: ``@edit``; Glossary ``@edit `` Reads an entire external file into a single node. .. index:: pair: ``@encoding``; Glossary ``@encoding `` Specifies the Unicode encoding for an external file. .. index:: pair: ``@file``; Glossary ``@file `` Creates an external file containing sentinels. When writing ``@file`` trees, Leo expands section references and ``@all`` and ``@others`` directives. .. index:: pair: ``@first``; Glossary ``@first `` This directive inserts a line at the *very start* of an external file, before the first sentinel. The ``@first`` directive must appear at the *very start* of body text. For example:: @first #! /usr/bin/env python .. index:: pair: ``@killcolor``; Glossary ``@killcolor`` Completely disables syntax coloring in a node, regardless of other directives. .. index:: pair: ``@language``; Glossary ``@language `` Specifies the source language, which affects syntax coloring and the comments delimiters used in external files and syntax coloring. .. index:: pair: ``@last``; Glossary ``@last `` Allows you to place lines at the very end of external files, after the last sentinel. This directive must appear at the *very end* of body text. For example:: @first .. index:: pair: ``@lineending``; Glossary ``@lineending cr/lf/nl/crlf`` Sets the line endings for external files. .. index:: pair: ``@nocolor``; Glossary ``@nocolor`` Disables syntax coloring in a node and its descendants until the next ``@color`` directive. .. index:: pair: ``@nocolor-node``; Glossary ``@nocolor-node`` Completely disables coloring for one node. Descendant nodes are not affected. .. index:: pair: ``@nosent``; Glossary ``@nosent`` Creates external files without sentinels. Unlike ``@clean``, ``@nosent`` trees are never updated from from external files. .. index:: pair: ``@nowrap``; Glossary ``@nowrap`` Disables line wrapping the Leo's body pane. .. index:: pair: ``@others``; Glossary ``@others`` Copies the body text of all nodes *except* section definition nodes in an ``@file`` tree to the corresponding external file. .. index:: pair: ``@pagewidth``; Glossary ``@pagewidth `` Sets the page width used by the reformat-paragraph command. This directive also controls how ``@doc`` parts are broken into lines. .. index:: .. pair: ``@path``; Glossary ``@path `` Sets the path prefix for relative filenames for descendant ``@`` directives. .. index:: pair: ``@tabwidth``; Glossary ``@tabwidth `` Sets the width of tabs. Negative tab widths cause Leo to convert tabs to spaces. .. index:: pair: ``@thin``; Glossary ``@thin `` A synonym for ``@file``. .. index:: pair: ``@wrap``; Glossary ``@wrap`` Enables line wrapping in Leo's body pane. A - C +++++ .. index:: pair: Body pane; Glossary Body pane The pane containing the body text of the currently selected headline in the outline pane. .. index:: pair: Body text; Glossary Body text The text in the body pane. That is, the contents of a node. .. index:: pair: Body text box; Glossary Body text box A small blue box in the icon box indicating that the node contains body text. .. index:: pair: Child; Glossary Child The direct descendant of a node. .. index:: pair: Clone; Glossary Clone A copy of a tree that changes whenever the original changes. The original and all clones are treated equally: no special status is given to the "original" node. .. index:: pair: Clone arrow; Glossary Clone arrow A small red arrow in the icon box indicating that the node is a clone. .. index:: pair: Code part; Glossary Code part A part of a section definition that contains code. Code parts start with ``@c`` or ``@code`` directives and continue until the next doc part. .. index:: pair: Contract; Glossary Contract To hide all descendants of a node. D - G +++++ .. index:: pair: Demote; Glossary Demote To move all siblings that follow a node so that they become children of the node. .. index:: pair: Descendant; Glossary Descendant An offspring of a node. That is, a child, grandchild, etc. of a node. .. index:: pair: Directive; Glossary Directive A keyword, preceded by an ``@`` sign, in body text that controls Leo's operation. The keyword is empty for the ``@`` directive. .. index:: pair: Dirty Node; Glossary Dirty Node A node whose headline or body text has changed. .. index:: pair: Doc part; Glossary Doc part A part of a section definition that contains comments. Doc parts start with ``@`` and continue until the ``@c`` directive or the end of the body text. .. index:: pair: Escape convention; Glossary .. _`noweb`: https://www.cs.tufts.edu/~nr/noweb/ Escape convention A convention for representing sequences of characters that would otherwise have special meaning. **Important**: Within any ``@`` node, any line containing matched ``<<`` and ``>>`` characters is a section reference. To use ``<<`` and ``>>`` as ordinary characters, place them on separate lines. .. index:: pair: Expand; Glossary Expand To make the children of a node visible. .. index:: pair: External file; Glossary External file A file outside of Leo that is connected to Leo by an ``@`` node. .. index:: pair: gnx; Glossary pair: Global Node Index; Glossary .. _`format of external files`: appendices.html#format-of-external-files Gnx (Global Node Index) A unique, immutable string permanently associated with each vnode. See `format of external files`_. .. index:: pair: Grandchild; Glossary Grandchild The child of a child of a node. H - L +++++ .. index:: pair: Headline; Glossary Headline The headline text of a node. The part of the node visible in the outline pane. .. index:: pair: Hoist; Glossary pair: Dehoist; Glossary Hoist & dehoist Hoisting a node redraws the screen that node and its descendants becomes the only visible part of the outline. Leo prevents the you from moving nodes outside the hoisted outline. Dehoisting a node restores the outline. Multiple hoists may be in effect: each dehoist undoes the effect of the immediately preceding hoist. .. index:: pair: Icon box; Glossary Icon box An icon just to the left of headline text of a node indicating whether the node is cloned, marked or dirty, and indicating whether the node contains body text. .. index:: pair: Log pane; Glossary Log Pane The part of Leo's main window that shows informational messages from Leo. It also contains the Find tab, the Spell tab, the autocompletion tab. M - O +++++ .. index:: pair: Mark; Glossary Mark A red vertical line in the icon box of a node. .. index:: pair: Node; Glossary Node The organizational unit of an outline. The combination of headline text and body text. Sometimes used as a synonym for tree. .. index:: pair: Offspring; Glossary Offspring A synonym for the descendants of a node. The children, grandchildren, etc. of a node. .. index:: pair: Organizer node; Glossary Organizer node A node containing no body text. Organizing nodes may appear anywhere in an ``@file`` tree; they do not affect the external file in any way. In particular, organizing nodes do not affect indentation in external files. .. index:: pair: Orphan node; Glossary Orphan node A node that would not be copied to a external file. Orphan nodes can arise because an ``@file`` tree has no ``@others`` or ``@all`` directives. Sections that are defined but not used also create orphan nodes. Leo issues a warning when attempting to write an ``@file`` tree containing orphan nodes, and does not save the external file. No information is lost; Leo saves the information in the ``@file`` tree in the .leo file. Leo will load the ``@file`` tree from the .leo file the next time Leo opens the .leo file. .. index:: pair: Outline; Glossary Outline A node and its descendants. A tree. All the nodes of a ``.leo`` file. .. index:: pair: Outline order; Glossary Outline order The order that nodes appear on the screen when all nodes are expanded. .. index:: pair: Outline pane; Glossary Outline pane The pane containing a visual representation of the entire outline, or a part of the outline if the outline is hoisted. P - R +++++ .. index:: pair: Parent; Glossary Parent The node that directly contains a node. .. index:: pair: Plugin; Glossary Plugin A way to modify and extend Leo without changing Leo's core code. See `Writing plugins and hooks`_. .. index:: pair: Promote; Glossary Promote To move all children of a node in an outline so that they become siblings of the node. .. index:: pair: FAQ; Glossary Reference .leo file ``leoeditor/leo/core/LeoPyRef.leo`` This file should change only when adding new external files to Leo. Developers should use a local copy of LeoPyRef.leo (usually called ``leoPy.leo``) for their own work. .. index:: pair: reStructuredText; Glossary pair: rST; Glossary .. _`rST primer`: https://docutils.sourceforge.net/docs/user/rst/quickstart.html reStructuredText (rST) A markup language for creating .html, or LaTeX output files. See the `rST primer`_. .. index:: pair: Root; Glossary Root The first node of a .leo file, outline, suboutline or @ tree. S - Z +++++ .. index:: pair: Section; Glossary Section A fragment of text that can be incorporated into external files. .. index:: pair: Section definition; Glossary Section definition The body text of a section definition node. .. index:: pair: Section definition node; Glossary Section definition node A node whose headline starts with a section name and whose body text defines a section. .. index:: pair: Section name; Glossary Section name A name between ``<<`` and ``>>``. Section names may contain any character except newlines and ``>>``. .. index:: pair: Section reference; Glossary Section reference A section name appearing in a code part. When writing to an external file, Leo replaces all references by their definitions. .. index:: pair: Sentinel; Glossary pair: Sentinel Lines; Glossary Sentinel Comment lines in external files used to represent Leo's outline structure. Such lines start with an @ following the opening comment delimiter. Sentinels embed outline structure into external files. **Do not alter sentinel lines**. Doing so can corrupt the outline structure. .. index:: pair: Setting; Glossary Settings Plugins and other parts of Leo can get options from ``@settings`` trees, outlines whose headline is ``@settings``. When opening a .leo file, Leo looks for ``@settings`` trees in the outline being opened and also in various leoSettings.leo files. ``@settings`` trees allow plugins to get options without any further support from Leo's core code. For a full discussion of ``@settings`` trees, see `Customizing Leo`_. .. index:: pair: Sibling; Glossary Sibling Nodes with the same parent. Siblings of the root node have the hidden root node as their parent. .. index:: pair: Target language; Glossary Target language The language used to syntax color text. This determines the default comment delimiters used when writing external files. .. index:: pair: Tree; Glossary Tree An outline. A node and its descendants. .. index:: pair: Underindented Line; Glossary Underindented line A line of body text that is indented less then the starting line of the class, method or function in which it appears. Leo outlines can not represent such lines exactly: every line in an external file will have at least the indentation of any unindented line of the corresponding node in the outline. .. index:: pair: uA; Glossary .. _`extensible attributes`: customizing.html#adding-extensible-attributes-to-nodes-and-leo-files uA uA's (User Attributes) are persistent Python dicts that allows scripts and plugins to associate additional data with each node. See `extensible attributes`_. .. index:: pair: View node; Glossary View node A node that represents a view of an outline. View nodes are typically ordinary, non-cloned nodes that contain cloned descendant nodes. The cloned descendant nodes comprise most of the data of the view. Other non-cloned nodes may add additional information to the view.