[Kstars-devel] KStars & scripting

Khudyakov Alexey alexey.skladnoy at gmail.com
Fri Feb 26 12:59:48 CET 2010


В сообщении от 26 февраля 2010 01:22:15 Yiannis Belias написал:

> > Scripts are using D-bus to communicate with kstars. Therefore I propose
> > to clean up current D-bus interface and document it. Latter part is most
> > important. It's not possible to write scripts when interface is unknown.
> 
> Well, it seems the script builder acts like a kind of documentation system,
> like the "function wizard" in open office.
> 
Yes it does but it is kind of. But it's royal pain to maintain in actual 
state. I think it should be replaced with normal documentation. Chapter in 
kstars handbook devoted to scripting would be nice. Any other suggestions?

> > After that both script builder should and code for script execution
> > should be removed. They are maintenance burden.
> >
> > Your opinions on the matter?
> 
> Since I'm interested in scripting with kstars, I did a small search about
>  KDE scripting. At Amarok for example, they have kept a subset of their old
>  d-bus scripting and added a javascript api based on QtScript framework[0].
>  Others seem to use QtScript too, like plasma for writing plasmoids and
>  controlling the desktop. On the other hand, there is smoke(seems to export
>  much of kde api) and kross(not for stand alone scripts?) that support many
>  languages, like python and ruby.
> 
> Out of curiosity, I followed the QT scripting guide[1], and made an example
>  of how one could use a supposedly existing kstars javascript api to make a
>  simple calculation. I'm attaching the files to see for yourselves.
> 
There are two major non-contraditory options. First one is d-bus for 
controlling application from outside. I think it's good to have ability 

Another option is to use QtScript/Kross to extend functionality of 
applications. Both of these technologies provide way to embed another high-
level language.

Probably right option is to clean up d-bus first.

> Also, I've been looking at the kstars/INDI docs and there are references[2]
>  about INDI scripts for controlling devices, even with the help of script
>  builder[3].
> I have not been able to find a reference of how a script like that could
>  look like, though ... Just some commented out INDY functions in kstars.h
> 
It is supposed to work but:

Excerpt from kstars.h
>    // TODO INDI Scripting to be supported in KDE 4.1
>    #if 0
As you can see scripting got a lot of attention. I hope it will work in 4.5.


More information about the Kstars-devel mailing list