# QtScript

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/QtScript
> Markdown URL: https://mediated.wiki/source/QtScript.md
> Source: https://en.wikipedia.org/wiki/QtScript
> Source revision: 1294827179
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

Scripting engine

**QtScript** is a scripting engine that has been part of the [Qt](/source/Qt_(software)) [cross-platform](/source/Cross-platform_software) [application framework](/source/Application_framework) since version 4.3.0. It was first deprecated as of Qt 5.5, then dropped as of Qt 6.5, and replaced by Qt Meta-object Language ([QML](/source/QML)).

The [scripting language](/source/Scripting_language) is based on the [ECMAScript](/source/ECMAScript) standard with a few extensions, such as QObject-style signal and slot connections.[1] The library contains the engine, and a [C++](/source/C%2B%2B) application programming interface ([API](/source/API)) for evaluating QtScript code and exposing custom QObject-derived C++ classes to QtScript.

The QtScript Binding Generator[2] provides bindings for the Qt API to access directly from ECMAScript.[*[clarification needed](https://en.wikipedia.org/wiki/Wikipedia:Please_clarify) update needed?*] QtScript and the binding generator are used for [Amarok](/source/Amarok_(software)) 2's scripting system.

The QtScript version as of Qt 4.7 in 2011 uses [JavaScriptCore](/source/JavaScriptCore) but was developed no further. The module was deprecated as of Qt 5.5 in April 2015.[3]

## Qt Script for Applications (QSA)

An earlier and unrelated scripting engine, named *Qt Script for Applications* (QSA), was shipped by Trolltech as a separate Qt-based library, dual-licensed under [GNU General Public License](/source/GNU_General_Public_License) (GPL) and a commercial license.

With the release of QtScript, QSA has been deprecated and reached its end of life in 2008.[4]

## References

1. **[^](#cite_ref-1)** ["Making Applications Scriptable: ECMAScript Compatibility"](https://web.archive.org/web/20100928053842/http://doc.trolltech.com/4.6/scripting.html#ecmascript-compatibility). *Qt 4.6*. Nokia. Archived from [the original](http://doc.trolltech.com/4.6/scripting.html#ecmascript-compatibility) on 2010-09-28. Retrieved 5 September 2011.

1. **[^](#cite_ref-2)** ["QtScript Generator"](https://web.archive.org/web/20111228033225/http://qt.gitorious.org/qt-labs/qtscriptgenerator). Archived from [the original](http://qt.gitorious.org/qt-labs/qtscriptgenerator) on 2011-12-28.

1. **[^](#cite_ref-3)** ["New Features in Qt 5.5"](http://wiki.qt.io/New-Features-in-Qt-5.5#Deprecated_Functionality). Qt Company. Retrieved 15 April 2015.

1. **[^](#cite_ref-4)** Hansen, Kent (5 January 2007). ["Say hello to QtScript!"](https://web.archive.org/web/20131202231949/http://blog.qt.digia.com/blog/2007/01/05/say-hello-to-qtscript/). *Qt Labs: Developer Blogs*. Nokia. Archived from [the original](http://blog.qt.digia.com/blog/2007/01/05/say-hello-to-qtscript/) on 2 December 2013. Retrieved 23 November 2013.

## External links

- [Qt: Making applications scriptable](http://doc.qt.io/qt-4.8/scripting.html)

- [QtScript module](http://doc.qt.io/qt-4.8/qtscript.html)[*[permanent dead link](https://en.wikipedia.org/wiki/Wikipedia:Link_rot)*]

- [QSA documentation (version 1.2.2)](https://web.archive.org/web/20160119132226/http://doc.qt.digia.com/qsa-1.2.2/)

- [Last working snapshot of QSA homepage from archive.org](https://web.archive.org/web/20080106190612/http://trolltech.com/products/qt/addon/qsa)

- [QSA download directory](http://get.qtsoftware.com/qsa/source/)[*[dead link](https://en.wikipedia.org/wiki/Wikipedia:Link_rot)*]

v t e Qt platform GUIs built with Qt AsteroidOS Gambas KDE Plasma Kdenlive KDE Partition Manager FeatherPad Lubuntu Lumina LXQt MeeGo Sailfish OS Skanlite VLC Qt technologies Meta-object System QML QtScript Qt Quick Signals and slots Tools Qbs qmake Qt Creator Language bindings List for Qt 4 List for Qt 5 PyQt PySide QtRuby QtJambi Supported platforms Android Linux Windows Windows 10 Mobile macOS iOS QNX VxWorks Related topics KDE Mer MeeGo The Qt Company Qt Project Software that uses Qt KDE Software Commons

v t e ECMAScript Dialects ActionScript Haxe Bosque Caja JavaScript engines asm.js JS++ JScript JScript .NET QtScript Solidity TypeScript WMLScript Engines Carakan Futhark JavaScriptCore JScript KJS Linear B QtScript Rhino SpiderMonkey TraceMonkey JägerMonkey Tamarin V8 ChakraCore Chakra JScript .NET Nashorn Frameworks Client-side Dojo Echo Ext JS Google Web Toolkit jQuery Lively Kernel midori MochiKit MooTools Prototype qooxdoo SproutCore Spry Wakanda Framework Server-side Node.js Deno Bun GraalJS Jaxer AppJet WakandaDB Multiple Cappuccino Libraries Backbone.js SWFObject Underscore.js People Brendan Eich Douglas Crockford John Resig Scott Isaacs Other DHTML Ecma International JSDoc JSGI JSHint JSLint JSON JSSS Sputnik SunSpider Asynchronous module definition CommonJS Lists: JavaScript libraries • Ajax frameworks • Server-side JavaScript Comparison: JavaScript web frameworks

---
Adapted from the Wikipedia article [QtScript](https://en.wikipedia.org/wiki/QtScript) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/QtScript?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
