| Scintilla and SciTE

## Related Sites

### Ports and Bindings of Scintilla

Scinterm is an implementation of Scintilla for the ncurses platform.

Scintilla.mcc is a port to MorphOS.

Wx::Scintilla is a Perl Binding for Scintilla on wxWidgets.

GtkScintilla is a GTK+ widget which enables easily adding a powerful source code editor to your applications. Harnessing the abilities of the Scintilla editing component, GtkScintilla adds a familiar GTK+/GObject API, making the widget comfortable to use in these programs, using all the typical GObject conventions.

Editawy is an ActiveX Control wrapper that support all Scintilla functions and additional high level functions.

Jintilla is a JNI wrapper that allows Scintilla to be used in Java with both SWT and AWT.

Delphi Scintilla Interface Components is a FREE collection of components that makes it easy to use the Scintilla source code editing control from within Delphi and C++ Builder.

wxStEdit is a library and sample program that provides extra features over wxStyledTextControl.

CScintillaCtrl, CScintillaView & CScintillaDoc are freeware MFC classes to encapsulate Scintilla.

ScintillaNet is an encapsulation of Scintilla for use within the .NET framework.

QScintilla is a port of Scintilla to the Qt platform. It has a similar license to Qt: GPL for use in free software and commercial for use in close-source applications.

GWindows is a Win32 RAD GUI Framework for Ada 95 that includes a binding of Scintilla.

ScintillaVB is an ActiveX control written in VB that encapsulates Scintilla.

FXScintilla is a port of Scintilla to the FOX platform. FXRuby includes Ruby bindings for FXScintilla.

Delphi wrapper for Scintilla which is also usable from Borland C++ Builder.

The wxStyledTextCtrl editor component in the wxWidgets cross platform toolkit is based on Scintilla.
A Python binding for wxStyledTextCtrl is part of wxPython.

gtkscintilla is an alternative GTK class implementation for scintilla. This implementation acts more like a Gtk+ object, with many methods rather than just scintilla_send_message() and is available as a shared library. This implementation works with GTK 1.x.

gtkscintilla2 is an alternative GTK class implementation for scintilla similar to the above, but for GTK 2.x.

pygtkscintilla is a Python binding for gtk1.x scintilla that uses gtkscintilla instead of the default GTK class.

ScintillaCtrl is an unmaintained ActiveX control wrapper for Scintilla.

### Projects using Scintilla

Quantum GIS is a user friendly Open Source Geographic Information System (GIS).

QGrinUI searches for a regex within all relevant files in a directory and shows matches using SciTE through the director interface.

Textadept is a ridiculously extensible cross-platform text editor for programmers written (mostly) in Lua using LPeg to handle the lexers.

Scribble is a text editor included in MorphOS.

MySQL Workbench is a cross-platform, visual database design, sql coding and administration tool.

LIVEditor is for web front end coders editing html/css/js code.

Padre is a wxWidgets-based Perl IDE.

CoderStudio is an IDE for Assembly programming similar to Visual Studio 6.0.

Enterprise Architect is a UML 2.1 analysis and design tool.

The CodeAssistor Editor is a small and simple MacOSX source code editor.

PBEditor is a text editor for PowerBuilder.

CrypTool is an application for applying and analyzing cryptographic algorithms.

FXiTe is an advanced cross-platform text editor built with the Fox GUI toolkit and the FXScintilla text widget.

Jabaco is a simple programming language with a Visual Basic like syntax.

LispIDE is a basic Lisp editor for Windows 2000, XP and Vista.

FlexEdit is Free Text/Hex Editor for Windows.

File Workbench: a file manager / text editor environment with Squirrel scripting.

Kephra is a free, easy and comfortable cross-platform editor written in Perl.

TOP is an interface to HP's NonStop servers which run a proprietary OS.

UniversalIndentGUI is a cross platform GUI for several code formatters, beautifiers and indenters like GreatCode, AStyle (Artistic Styler), GNU Indent, BCPP and so on.

TrackBack watches and backs up every change made in your source code.

Elementary Reports is designed to reduce the time to compose detailed and professional primary school reports.

Visual Classworks Visual class modeling and coding in C++ via 'live' UML style class diagrams.

Javelin Visual Class modeling and coding in Java via 'live' UML style class diagrams.

The ExtendScript Toolkit is a development and debugging tool for JavaScript scripts included with Adobe CS3 Suites.

TortoiseSVN is a Windows GUI client for the Subversion source control software.

Geany is a small and fast GTK2 based IDE, which has only a few dependencies from other packages.

ECMerge is a commercial graphical and batch diff / merge tool for Windows, Linux and Solaris (aiming to target all major platforms).

PyPE is an editor written in Python with the wxPython GUI toolkit.

Sciboo is an editor based on ScintillaNET.

The Scite Config Tool is a graphical user interface for changing SciTE properties files.

Scintilla Lister is a plugin for Total Commander allowing viewing all documents with syntax highlighting inside Total Commander.

ChSciTE is a free IDE for C/C++ interpreter Ch. It runs cross platform. Ch is for cross-platform scripting, shell programming, 2D/3D plotting, numerical computing, and embedded scripting.

Code::Blocks is an open source, cross platform free C++ IDE.

Notepad++ is a free source code editor under Windows.

Gubed is a cross platform program to debug PHP scripts.

LSW DotNet-Lab is a development environment for the .NET platform.

GLIntercept is an OpenGL function call interceptor that uses SciTE as a run-time shader editor.

wyoEditor is "A nice editor with a well designed and consistent look and feel".

Notepad2 is "Yet another Notepad replacement".

PyCrash Viewer can examine crash dumps of Python programs.

MPT series Wire Analyzers use Scintilla and SciTE.

MyGeneration is a .NET based code generator.

CSSED is a tiny GTK2 CSS editor.

IdePS is a free Integrated Development Environment for PostScript

CUTE is a user-friendly source code editor easily extended using Python.

Venis IX, the Visual Environment for NSIS (Nullsoft Scriptable Install System).

Eric3 is a Python IDE written using PyQt and QScintilla.

SciTE|Flash is a free Scintilla-based ActionScript editor for Windows.

CPPIDE is part of some commercial high-school oriented programming course software.

Instant Source is a commercial tool for looking at the HTML on web sites.

RAD.On++ is a free C++ Rapid Application Developer for Win32.

wxBasic is an open source Basic interpreter that uses the wxWidgets toolkit. A small IDE is under construction.

FreeRIDE will be a cross-platform IDE for the Ruby programming language.

Visual MinGW is an IDE for the MinGW compiler system.This runs on Windows with gcc.

The Wing IDE is a complete integrated development environment for the Python programming language. Available on Intel based Linux and Windows and on MacOS X through XDarwin.

LuaIDE is an IDE for Lua on Windows.

Sphere is 2D RPG engine with a development environment.

Practical Ruby is an IDE for Ruby on Windows.

GNUe is a suite of tools and applications for solving the needs of the enterprise.

SilverCity is a lexing package that can provide lexical analysis for over 20 programming and markup languages.

HAP Python Remote Debugger is a Python debugger that can run on one Windows machine debugging a Python program running on either the same or another machine.

pyeditor and wxEditor are scriptable editors implemented in Python. pyeditor is based on GTK+ and the pyscintilla wrapper. wxEditor is based on wxWidgets, wxPython and wxStyledTextControl.

PyCrust is an interactive Python shell based on wxPython.

Black Adder is a Qt based development environment for Python and Ruby.

Komodo is a cross-platform multi-language development environment built as an application of Mozilla.

Filerx is a project manager for SciTE on Windows. Open source and includes an implementation of SciTE's Director interface so will be of interest to others wanting to control SciTE.

Anjuta is an open source C/C++ IDE for Linux/GNOME.

A version of SciTE for Win32 enhanced with a tab control to allow easy movement between buffers. Go to the "Goodies" area on this site.

Suneido is an integrated application platform currently available for Win32 that includes an object-oriented language, client-server database, and user interface and reporting frameworks.

Agast is an authoring system for adventure games which includes a customised version of SciTE.

Boa Constructor is a RAD GUI Building IDE for the wxWidgets cross platform platform. Written using wxPython with the wxStyledTextCtrl used as its editor.

PythonWin, a Win32 IDE for Python, uses Scintilla for both its editing and interactive windows.

### Editing Components

UniCodeEditor is a Unicode aware syntax editor control for Delphi and C++ Builder.

GtkSourceView is a text widget that extends the standard GTK+ 2.x text widget and improves it by implementing syntax highlighting and other features typical of a source editor.

AEditor is a free source code editing component implemented in Ruby.

SyntaxEditor is a commercial native .Net source code editing component.

jEdit is a good Open Source syntax colouring editor written in and for Java.

GTK+, the GIMP Toolkit, contains a rich text editing widget.
Gedit is an editor for GTK+/GNOME.

CodeGuru has source code for several Win32 MFC based editors.

SynEdit is a Win32 edit control written in Delphi.

SourceView is a commercial editing component for Win32.

CodeMax is another commercial component for Win32.

### Documents

The Craft of Text Editing describes how EMACS works, Craig A. Finseth

Data Structures in a Bit-Mapped Text Editor, Wilfred J. Hanson, Byte January 1987

Text Editors: Algorithms and Architectures, Ray Valdés, Dr. Dobbs Journal April 1993

Macintosh User Interface Guidelines and TextEdit chapters of Inside Macintosh

### Development Tools

Scintilla and SciTE were developed using the Mingw version of GCC.

AStyle is a source code formatter for C++ and Java code. SciTE has an Indent command defined for .cxx files that uses AStyle.

WinMerge is an interactive diff / merge for Windows. I prefer code submissions in the form of source files rather than diffs and then run WinMerge over the files to work out how to merge.

Python is my favourite programming language. Scintilla was started after I tried to improve the editor built into PythonWin, but was frustrated by the limitations of the Windows Richedit control which PythonWin used.

regex is a public domain implementation of regular expression pattern matching used in Scintilla.

Inspirational coding soundscapes by David Bridie.