Skip to content

About

Qt Quick-native Scintilla editor component

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

ScintillaQuick

CI Linux CI macOS CI Windows

ScintillaQuick brings the Scintilla editing engine to Qt Quick as a QQuickItem. Embed it from C++ or QML and use Scintilla's message API through send() to configure editor behavior.

It supports Qt Quick focus and input, IME, and scene-graph rendering, with a built-in find/replace panel. Optional Lexilla support and a default syntax companion provide syntax highlighting; see the integration guide.

Requirements

  • CMake 3.25+, a C++20 compiler, and Qt 6.12+ (Core, Gui, Qml, Quick)
  • Windows, Linux, or macOS

Build and Integrate

cmake -S . -B build
cmake --build build
cmake --install build --prefix <install-prefix>

Set CMAKE_PREFIX_PATH to the installation prefix in your application, then link the exported target:

find_package(ScintillaQuick CONFIG REQUIRED)
target_link_libraries(my_app PRIVATE ScintillaQuick::ScintillaQuick)

First Editor

For QML, include <scintillaquick/scintillaquick_item.h> in your C++ startup and call register_scintilla_type() before loading QML. Then create the editor:

import QtQuick
import QtQuick.Window
import ScintillaQuick 1.0

Window {
    width: 800
    height: 500
    visible: true

    ScintillaQuick_item {
        anchors.fill: parent
        focus: true
        text: "Hello from ScintillaQuick\n"
    }
}

For C++, see the runnable minimal editor and its build instructions.

Documentation

License

Project code is released under the BSD 2-Clause license. See LICENSE.

The repository also vendors Scintilla under its own license. See third_party/scintilla/LICENSE.

About

Qt Quick-native Scintilla editor component

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages