SyntaxArea

Repository

https://github.com/gkjpettet/SyntaxArea

About

SyntaxArea is a free, open source, code editor written in 100% Xojo. It's built upon the open source TextInputCanvas desktop control (originally created by Xojo Inc and now maintained in an open source manner by Einhugur) and implements all standard keyboard shortcuts and fully supports international input.

Background

This is the third code editor that I've written in Xojo. SyntaxArea began as an API 2.0 port of the venerable CustomEditField (CEF) control but it has been significantly refactored, new features added, is better documented and many bugs have been fixed. if

Rather than numerous classes, interfaces and images scattered in multiple folders as was the case with CEF, everything you need to use the editor is contained within the SyntaxArea module (and two support modules).

The syntax highlighting engine has been improved and styling information removed from the definition files. The editor now has a theming engine to allow easier switching of its appearance when moving between light and dark mode.

Features

Here's a list of the some of the editor's features:

  • Works on macOS and Windows (Linux should work but is untested)

  • 100% API 2.0

  • Syntax highlighting (implemented through XML definition files)

  • Theme support

  • High performance (handles thousands of lines of code with ease)

  • Extensive support for keyboard shortcuts

  • Autocomplete

  • Line numbers

  • Optional block folding

  • Dirty line support

  • Optional right margin ruler

  • Undo / redo

  • Native scrollbars on macOS with support for Xojo scrollbars on Windows

Requirements

The editor is 100% native Xojo code. The only dependency is the free and open source TextInputCanvas plugin. This plugin is a Xojo Canvas control that handles international input. Make sure you download it and put it in your Xojo /plugins folder before launching the Xojo IDE.

Demo Screenshot

For more detailed information, see the Wiki.