Updated: 2021-05-04

Recent development focus has been on two main aspects:

  • A command-line interface (CLI), so the TethysL compiler (and translation to XML) can be incorporated in typical workflows involving the preparation and testing of mission files. See CLI.

  • Implementing the Language Server Protocol for TethysL such that the language can be served through a variety of development tools (that is, more regular editors and some IDEs). This is being done while putting together a VS Code extension as an initial client (see vscode). Other development tools (e.g., vim, emacs) to be addressed as necessary.


  • As of v1.5.0, the TethysL Editor should be more generably usable, in particular, even by less-technical end users.
  • Functionality involving the generated XML (visualization and comparison with exisiting version) is still available but via buttons, not directly in the main interface.
  • Feedback continues to be greatly sought at all levels (language, GUI, etc.), in particular from experienced users that can help with verification according to the Tethys XML schemas. See feedback.

  • Integration with rest of LRAUV/TethysDash system is via direct access to a given Bitbucket repository:

    • Users can authorize TethysL to access their Bitbucket repositories.
    • TethysL can directly commit new files and changes against the given remote repository and branch.

  • Overall git workflow:

    • Using TethysL Editor:
      • User specifies a fork of the mbari/lrauv-mission repository as workspace;
      • User creates new mission or modifies an existing mission;
      • User commits the new mission or changes against fork;
    • Using Bitbucket interface:
      • User submits pull request;
    • Admin reviews/approves/merges PR as appropriate.

  • Most validations in the TethysL compiler have been implemented.

  • Significant enhancements for autocompletion (CtrlSpace) have been implemented.

  • To facilitate the transition to TethysL according to our defined integration mechanism, a button in the Editor allows to start a TethysL script by translating an existing XML mission.

    NOTE: The automatic translation covers a good part of all the constructs according to the XML schemas but is incomplete. Please do not expect this feature to be completed; feel free to go ahead with any further editing of the TethysL version as needed.