"Modes" are programming languages recognized by Leo, e.g., by the
@language xx directive. They are in the
modes directory. They are for the most part python files except for
clojure.xml and
markdown.xml.
In the directory there is also a file named catalog. It lists most or (maybe all) of the .py files as entries. The file starts with this comment:
<!-- This is a mode catalog. Edit modes must be listed here, -->
<!-- otherwise they will not be available to jEdit. -->
The entries look like this:
<MODE NAME="javascript" FILE="javascript.xml"
FILE_NAME_GLOB="*.js" />
Now here is the point that caught my attention. Those FILE attributes all end in .xml, but there are no such .xml files in the leo directory tree.
I'm guessing that this catalog file was taken from jEdit or some other source and that Leo has never used those .xml files. Leo could just directly look for *'py and .xml files in the directory and not ever need the catalog.
Is this speculation right, or does Leo actually use the catalog file?