Language-Based Tools

Language-based tools are software that operate on programming languages, including Integrated Development Environments (IDEs) and others.

Many of these tools can be configured to recognise the syntax of a .enaml file, and thus provide syntax-colouring, indenting support and other features.

Enaml comes bundled with a number of configuration files for common IDEs and other tools.

BBEdit

BBEdit is a commercial MacOS IDE from Bare Bones.

An Enaml language library for BBEdit is provided in the source at tools/barebones/

For installation instructions, see the BBEdit Support pages.

GNU Emacs

GNU Emacs is a popular, cross-platform, open-source IDE.

An Enaml mode for Emacs is provided in the source at tools/emacs.

For installation instructions, see in the source at tools/emacs/README.rst

TextMate

TextMate is a commercial MacOS IDE.

An Enaml language definition for TextMate is provided in the source tree at tools/sublimetext.

For installation instructions, see the TextMate Manual.

Sublime Text

Sublime Text is a cross-platform, commercial IDE.

Sublime Text can also use the TextMate language definition at tools/sublimetext/Enaml.tmLanguage.

For installation instructions, see the Sublime Text manual.

Visual Studio

Visual Studio is a commercial IDE for Windows and MacOs from Microsoft.

Visual Studio can also use the TextMate language definition at tools/sublimetext/Enaml.tmLanguage.

For installation instructions, see the Visual Studio manual.

Alternatively, there is a third-party Visual Studio extension, enaml-vs available free from the Visual Studio Marketplace, which offers simpler installation of the same definitions.

Warning

Third-party plugins are not supported by the Enaml team.

PyCharm

PyCharm is a cross-platform, freemium Python IDE from JetBrains.

PyCharm can also use the TextMate language definition at tools/sublimetext/Enaml.tmLanguage.

For installation instructions, see the TextMate Bundles support plugin manual.

Alternatively, there are two third-party PyCharm plugins to add basic syntax support for Enaml:

Warning

Third-party plugins are not supported by the Enaml team.

Vim

Vim is a popular, cross-platform, charityware text editor.

Enaml syntax and indent files are available at tools/vim.

For installation instructions, see in the source at tools/vim/README.rst

Pygments

Pygments is an open-source generic syntax highlighter. It is used by Sphinx to format code included in project documentation.

An Enaml lexer for Pygments is available at tools/pygments.

To install, change into the ./tools/pygments directory, and run python setup.py install.

Alternatively, it can be installed directly from PyPi: pip install pygments-enaml

Once this is installed, it will be automatically used by Sphinx to format Enaml code blocks (i.e. code directives, with enaml as the language argument.)