Plasma developers wish-list for the QML/JS KDevelop language plugin

Denis Steckelmacher steckdenis at yahoo.fr
Sat Aug 2 14:34:11 UTC 2014


Hi,

My GSoC project for this year consists of implementing a QML/Javascript 
language plugin for KDevelop. I've worked on the plugin for several 
months and it is starting to be in a usable state. It recognizes the 
whole QML and Javascript syntax and understands many things, like QML 
module imports, directory imports (import "../dir" as MyDir), and even 
the import of binary QML modules installed in $KDE4_LIB_DIR/imports 
(provided that you have "qmlplugindump", "qmlplugindump-qt5" or 
"qml1plugindump" installed in your PATH).

While the plugin may not recognize QML modules installed in unusual 
locations (QML does not provide any standard include path, everything is 
application-specific I think), it may already be useful for some people.

The GSoC coding period ends in two weeks, and during this time, I invite 
those interested to install the plugin (repository: kde:kdev-qmljs, 
branch master, requires KDevelop and KDevPlatform 4.7 or master), to 
test it and to reply to this email (or ping me on #kdevelop, nickname 
steckdenis) if you think that a feature is missing or could be improved. 
Here is a list of the planned features and the reason why they don't 
already exist:

* Helper widget* for choosing a font family: the plugin is based on Qt4 
that does not offer QtQuick.Controls, so advanced helper widgets are 
impossible to implement for now. The plugin will be ported to Qt5 and 
KF5 during the Randa meeting.
* Helper widget for previewing an animation (and choosing its easing 
type, duration, etc): same reason as above
* QML previewer: would add a dependency on QtCreator (qmlpuppet is the 
tool, shipped with QtCreator, that allows to preview QML widgets), and 
would be very complicated to implement.

Thanks for any feedback,
Denis

*Helper widget: if you put your cursor on an QML property like "color:", 
"width:" or "family:", a widget appears in a tool-tip. This widget can 
be a color picker, a preview of the font size or family you have chosen, 
etc.





More information about the Plasma-devel mailing list