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.3.6 [2]   OOjs UI icon edit-ltr-progressive.svg (26 July 2023;13 months ago (26 July 2023)) [±]
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.

gnuplot Command-line and GUI plotting program

gnuplot is a command-line and GUI program that can generate two- and three-dimensional plots of functions, data, and data fits. The program runs on all major computers and operating systems . Originally released in 1986, its listed authors are Thomas Williams, Colin Kelley, Russell Lang, Dave Kotz, John Campbell, Gershon Elber, Alexander Woo "and many others." Despite its name, this software is not part of the GNU Project.

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">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>

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">SciTE</span> Free and open text editor

SciTE or SCIntilla based Text Editor is a cross-platform text editor written by Neil Hodgson using the Scintilla editing component. It is licensed under a minimal version of the Historical Permission Notice and Disclaimer.

<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.

wxPython Python wrapper for wxWidgets

wxPython is a wrapper for the cross-platform GUI API wxWidgets for the Python programming language. It is one of the alternatives to Tkinter. It is implemented as a Python extension module.

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

Notepad++ is a free and open-source text and source code editor for use with Microsoft Windows. It supports tabbed editing, which allows working with multiple open files in a single window. The product's name comes from the C postfix increment operator; it is sometimes referred to as npp or NPP.

<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.

This article provides basic comparisons for notable text editors. More feature details for text editors are available from the Category of text editor features and from the individual products' articles. This article may not be up-to-date or necessarily all-inclusive.

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">JUCE</span> C++ Cross-Platform Application Development Framework

JUCE is an open-source cross-platform C++ application framework, used for the development of desktop and mobile applications. JUCE is used in particular for its GUI and plug-ins libraries. It is dual licensed under the GPLv3 and a commercial license.

<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.

wxPHP is an extension the programming language PHP 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 by using PHP. Applications are written in PHP, which is an interpreted language. Thus, it needs no intermediate compiling step to run an application, if the PHP interpreter has the extension available.

<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.

References

  1. "Scintilla and SciTE". Scintilla. Retrieved 2013-08-12.
  2. "Scintilla".
  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. 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. A little PureBasic review
  23. "Technology". Archived from the original on 2016-05-12. Retrieved 2015-02-27. Textadept uses Scintilla as its core editing component
  24. "Technology". Archived from the original on 2020-08-04. Retrieved 2017-02-28. Uniface 10 uses Scintilla as its core code editor