Scintilla is a
free,
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
library
A library is a collection of Book, books, and possibly other Document, materials and Media (communication), media, that is accessible for use by its members and members of allied institutions. Libraries provide physical (hard copies) or electron ...
that provides a
text editing component function, with an emphasis on advanced features for
source code editing.
Features
Scintilla supports many features to make code editing easier in addition to
syntax highlighting
Syntax highlighting is a feature of text editors that is used for programming language, programming, scripting language, scripting, or markup language, markup languages, such as HTML. The feature displays text, especially source code, in differe ...
. The highlighting method allows the use of different fonts, colors, styles and background colors, and is not limited to fixed-width fonts. The control supports error indicators, line numbering in the margin, as well as line markers such as code
breakpoint
In software development, a breakpoint is an intentional stopping or pausing place in a computer program, program, put in place for debugging purposes. It is also sometimes simply referred to as a pause.
More generally, a breakpoint is a means o ...
s. Other features such as
code folding
Code or text folding, or less commonly holophrasting, is a feature of some graphical user interfaces that allows the user to selectively hide ("fold") or display ("unfold") parts of a document. This allows the user to manage large amounts of text ...
and
autocompletion
Autocomplete, or word completion, is a feature in which an application predicts the rest of a word a user is typing. In Android and iOS smartphones, this is called predictive text. In graphical user interfaces, users can typically press the t ...
can be added. The basic
regular expression
A regular expression (shortened as regex or regexp), sometimes referred to as rational expression, is a sequence of characters that specifies a match pattern in text. Usually such patterns are used by string-searching algorithms for "find" ...
search implementation is rudimentary, but if compiled with
C++11
C++11 is a version of a joint technical standard, ISO/IEC 14882, by the International Organization for Standardization (ISO) and International Electrotechnical Commission (IEC), for the C++ programming language. C++11 replaced the prior vers ...
support Scintilla can support the runtime's regular expression engine. Scintilla's regular expression library can also be replaced or avoided with direct buffer access.
Currently, Scintilla has experimental support for
right-to-left
A writing system comprises a set of symbols, called a ''script'', as well as the rules by which the script represents a particular language. The earliest writing appeared during the late 4th millennium BC. Throughout history, each independen ...
languages.
Scinterm is a version of Scintilla for the
curses text user interface
In computing, text-based user interfaces (TUI) (alternately terminal user interfaces, to reflect a dependence upon the properties of computer terminals and not just text), is a retronym describing a type of user interface (UI) common as an ear ...
. It is written by the developer of the
Textadept editor. Scinterm uses
Unicode
Unicode or ''The Unicode Standard'' or TUS is a character encoding standard maintained by the Unicode Consortium designed to support the use of text in all of the world's writing systems that can be digitized. Version 16.0 defines 154,998 Char ...
characters to support some of Scintilla's graphically oriented features, but some Scintilla features are missing because of the terminal environment's constraints.
Other versions
* ScintillaNET – a wrapper for use on the
.NET Framework
* QScintilla – Qt port of Scintilla
* wxScintilla –
wxWidgets
wxWidgets (formerly wxWindows) is a widget toolkit and tools library for creating graphical user interfaces (GUIs) for cross-platform applications. wxWidgets enables a program's GUI code to compile and run on several computer platforms with no s ...
wrapper for Scintilla
* wxStyledTextCtrl – class acting as a wrapper for Scintilla in the wxWidgets toolkit
* CsScintilla – CopperSpice port of Scintilla
*
Delphi
Delphi (; ), in legend previously called Pytho (Πυθώ), was an ancient sacred precinct and the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient Classical antiquity, classical world. The A ...
wrappers:
** TScintEdit – part of
Inno Setup
Inno Setup is a free software script-driven installation system created in Delphi (programming language), Delphi by Jordan Russell. The first version was released in 1997.
History
Since Jordan Russell wasn't satisfied with InstallShield Express ...
** TDScintilla – simple wrapper for all methods of Scintilla
** TScintilla – one of the components in the Delphi Scintilla Interface Components (as of 2009-09-02, this project is no longer under active development)
Software based on Scintilla
Notable software based on Scintilla includes:
References
External links
*
{{HTML editors
Free computer libraries
Software that uses GTK