Scintilla (software)

Last updated
Scintilla
Developer(s) Neil Hodgson, et al. [1]
Initial release17 May 1999;25 years ago (1999-05-17)
Stable release 5.5.4 [2]   OOjs UI icon edit-ltr-progressive.svg (18 December 2024;28 days ago (18 December 2024)) [±]
Repository
Written in C++
Operating system Windows NT and later, Mac OS 10.6 and later, Unix-like with GTK+, MorphOS
Type Text editor
License Historical Permission Notice and Disclaimer [3]
Website scintilla.org

Scintilla is a free, open-source library that provides a text editing component function, with an emphasis on advanced features for source code editing.

Contents

Features

Scintilla supports many features to make code editing easier in addition to syntax highlighting. 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 breakpoints. Other features such as code folding and autocompletion can be added. The basic regular expression search implementation is rudimentary, but if compiled with C++11 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 languages. [4]

Scinterm is a version of Scintilla for the curses text user interface. It is written by the developer of the Textadept editor. Scinterm uses Unicode characters to support some of Scintilla's graphically oriented features, but some Scintilla features are missing because of the terminal environment's constraints. [5]

Other versions

Software based on Scintilla

Notable software based on Scintilla includes: [14]

Related Research Articles

An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. Some IDEs, such as IntelliJ IDEA, Eclipse and Lazarus contain the necessary compiler, interpreter or both; others, such as SharpDevelop and NetBeans, do not.

wxWidgets Widget toolkit

wxWidgets 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 significant code changes. A wide choice of compilers and other tools to use with wxWidgets facilitates development of sophisticated applications. wxWidgets supports a comprehensive range of popular operating systems and graphical libraries, both proprietary and free.

<span class="mw-page-title-main">Standard Widget Toolkit</span> Graphical widget toolkit for use with the Java platform

The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform. It was originally developed by Stephen Northover at IBM and is now maintained by the Eclipse Foundation in tandem with the Eclipse IDE. It is an alternative to the Abstract Window Toolkit (AWT) and Swing Java graphical user interface (GUI) toolkits provided by Sun Microsystems as part of the Java Platform, Standard Edition (J2SE).

<span class="mw-page-title-main">Dev-C++</span> Free C++ development environment

Dev-C++ is a free full-featured integrated development environment (IDE) distributed under the GNU General Public License for programming in C and C++. It was originally developed by Colin Laplace and was first released in 1998. It is written in Delphi.

<span class="mw-page-title-main">FLTK</span> Widget library for GUIs

Fast Light Toolkit (FLTK) is a cross-platform widget library for graphical user interfaces (GUIs), developed by Bill Spitzak and others. Made to accommodate 3D graphics programming, it has an interface to OpenGL, but it is also suitable for general GUI programming.

<span class="mw-page-title-main">PyQt</span> Python GUI library

PyQt is a Python binding of the cross-platform GUI toolkit Qt, implemented as a Python plug-in. PyQt is free software developed by the British firm Riverbank Computing. It is available under similar terms to Qt versions older than 4.5; this means a variety of licenses including GNU General Public License (GPL) and commercial license, but not the GNU Lesser General Public License (LGPL). PyQt supports Microsoft Windows as well as various kinds of UNIX, including Linux and MacOS.

<span class="mw-page-title-main">Notepad++</span> Text editor and source code editor for Windows

Notepad++, is a text and source code editor for use with Microsoft Windows. It supports tabbed editing, which allows working with multiple open files in one window. The program's name comes from the C postfix increment operator.

<span class="mw-page-title-main">Graphical user interface builder</span> Software development tool

A graphical user interface builder, also known as GUI designer or sometimes RAD IDE, is a software development tool that simplifies the creation of GUIs by allowing the designer to arrange graphical control elements using a drag-and-drop WYSIWYG editor. Without a GUI builder, a GUI must be built by manually specifying each widget's parameters in the source code, with no visual feedback until the program is run. Such tools are usually called the term RAD IDE.

eric (software) Python development environment

eric is a free integrated development environment (IDE) used for computer programming. Since it is a full featured IDE, it provides by default all necessary tools needed for the writing of code and for the professional management of a software project.

<span class="mw-page-title-main">Lazarus (software)</span> Free cross-platform integrated development environment for Free Pascal

Lazarus is a cross-platform, integrated development environment (IDE) for rapid application development (RAD) using the Free Pascal compiler. Its goal is to provide an easy-to-use development environment for developing with the Object Pascal language, which is as close as possible to Delphi. It is free and open-source software with different parts released under different software licenses.

<span class="mw-page-title-main">Code::Blocks</span> Free, open source, cross-platform IDE

Code::Blocks is a free, open-source, cross-platform IDE that supports multiple compilers including GCC, Clang and Visual C++. It is developed in C++ using wxWidgets as the GUI toolkit. Using a plugin architecture, its capabilities and features are defined by the provided plugins. Currently, Code::Blocks is oriented towards C, C++, and Fortran. It has a custom build system and optional Make support.

<span class="mw-page-title-main">Komodo Edit</span> Text editor for dynamic programming languages

Komodo Edit is a free and open source text editor for dynamic programming languages. It was introduced in January 2007 to complement ActiveState's commercial Komodo IDE. As of version 4.3, Komodo Edit is built atop the Open Komodo project. Komodo IDE is no longer supported and maintained by developers for Python.

The following tables list notable software packages that are nominal IDEs; standalone tools such as source-code editors and GUI builders are not included. These IDEs are listed in alphabetic order of the supported language.

<span class="mw-page-title-main">Komodo IDE</span> Integrated development environment

Komodo IDE is an integrated development environment (IDE) for dynamic programming languages. It was introduced in May 2000. Many of Komodo's features are derived from an embedded Python interpreter.

<span class="mw-page-title-main">CodeLite</span> Integrated development environment

CodeLite is a free and open-source IDE for the C, C++, PHP, and JavaScript (Node.js) programming languages.

wxFormBuilder Open source GUI design application

wxFormBuilder is an open source GUI designer application for wxWidgets toolkit, which allows creating cross-platform applications. A streamlined, easy to use interface enables faster development and easier maintenance of software. It is written in C++.

<span class="mw-page-title-main">Pascal Script</span>

Pascal Script is a scripting language based on the programming language Pascal that facilitates automated runtime control over scriptable applications and server software. It is implemented by a free scripting engine that includes a compiler and an interpreter for byte code.

wxPHP is an extension for the PHP programming language that wraps the wxWidgets library, which allows writing cross-platform software desktop applications that make use of the native graphical components available to the different platforms. It supports the three major operating systems: Windows, Linux and macOS.

<span class="mw-page-title-main">ZeroBrane Studio</span> Open-source IDE for the Lua programming language

ZeroBrane Studio is a lightweight open-source Lua IDE with code completion, syntax highlighting, code analyzer, live coding, and debugging support for Lua 5.1, Lua 5.2, Lua 5.3, Lua 5.4, LuaJIT, and other Lua engines. ZeroBrane Studio is a cross-platform application written in Lua that runs on Windows, Linux, and macOS (10.9+) operating systems. It uses the wxWidgets toolkit and the Scintilla component for file editing.

Textadept is a free software minimalist text editor designed for computer programming. Distributed under the MIT license, it is written in C, C++ and Lua and is extensible using Lua. Textadept can use either a graphical user interface or a text-based user interface when running in a terminal window. Textadept uses the Scintilla editing component. Textadept's developer makes the curses wrapper library for Scintilla used by Textadept available separately.

References

  1. "Scintilla and SciTE". Scintilla. Retrieved 2013-08-12.
  2. https://www.scintilla.org/ScintillaHistory.html . Retrieved 31 December 2024.{{cite web}}: Missing or empty |title= (help)
  3. "License.txt". Scintilla. Retrieved 29 May 2015.
  4. "Scintilla Documentation".
  5. "Scinterm".
  6. "ScintillaNET – Home". Scintillanet.github.com. Retrieved 2017-05-18.
  7. "Riverbank | Software | QScintilla | What is QScintilla?". Riverbankcomputing.com. Retrieved 2013-08-12.
  8. "wxScintilla – Scintilla wrapper for wxWidgets – Sourceforge". Nuklear Zelph. Archived from the original on 2023-12-13. Retrieved 2015-04-20.
  9. "wxWidgets wxStyledTextCtrl Class Reference". docs.wxwidgets.org. Retrieved 2022-03-13.
  10. "CsScintilla". SourceForge. Retrieved 2022-06-01.
  11. "Inno Setup Downloads". Jrsoftware.org. Retrieved 2013-08-12.
  12. "dscintilla – Scintilla wrapper for Delphi – Google Project Hosting". Dscintilla.googlecode.com. 2013-04-11. Archived from the original on July 7, 2012. Retrieved 2013-08-12.
  13. "Delphi Scintilla Interface Components | Free Development software downloads at". Sourceforge.net. Retrieved 2013-08-12.
  14. "Scintilla and SciTE Related Sites". Scintilla.org. Retrieved 2013-08-12.
  15. "#1095 (Option to switch the subs edit box to a standard text edit) – Aegisub". Devel.aegisub.org. Archived from the original on 2014-07-10. Retrieved 2013-08-12.
  16. "Third Party Software License/Notices".
  17. "ChIDE". Softintegration.com. Retrieved 2013-08-12.
  18. "uSynAttribs.pas".
  19. "Inno Setup 5 Revision History". Jrsoftware.org. Retrieved 2013-08-12.
  20. Payne, Derick (24 July 2024). "Notepad3". rizonesoft. GitHub . Retrieved 24 July 2024.
  21. "Notepad3". Rizonesoft.com. 19 September 2016. Retrieved 24 July 2024.
  22. Liu, Zufu (2025-01-15), zufuliu/notepad4 , retrieved 2025-01-15
  23. A little PureBasic review
  24. "Technology". Archived from the original on 2016-05-12. Retrieved 2015-02-27. Textadept uses Scintilla as its core editing component
  25. "Technology". Archived from the original on 2020-08-04. Retrieved 2017-02-28. Uniface 10 uses Scintilla as its core code editor