← Back to team overview

kicad-developers team mailing list archive

Re: Scripting

 

wrt scripting and SWIG - SWIG's good for generating a low-level wrapper, 
but if we'd like scripting to go anywhere, I really think we should come 
up with a more scripting-friendly API and high-level wrapper. Something 
with more proper iterables, fewer integer enums, fewer getters and 
setters, objects that are fully and usefully introspectable at the 
console, etc. Fewer things like this scattered about:

http://ci.kicad-pcb.org/job/kicad-doxygen/ws/build/pcbnew/doxygen-python/html/classpcbnew_1_1MODULE.html#a549dccf2a9eecffa83f76cfe8d1a7d19

Anyone else interested in seeing scripting improve? I'd be willing to 
contribute to this.


On Sat, Jun 13, 2015 at 05:26:58PM -0400, Wayne Stambaugh wrote:
> On 6/12/2015 10:48 AM, Rob Maris wrote:
> > Hi,
> > 
> > I'm interested in adding Lua scripting to Kicad as an alternative to
> > Python. Can anybody present some information about complexity and API in
> > order to integrate a lua interpreter?
> > 
> > Regards,
> > 
> > Rob
> 
> Rob,
> 
> There has been some interest in lua in the past.  I'm not opposed to
> adding lua as another scripting language.  I not sure if lua can be
> swigged.  That would be the preferred method for generating the lua
> scripting libraries.  To get an idea of the complexity of the kicad API,
> look at the python swig code and the c++ code documentation at
> kicad-pcb.org.  At this time only Pcbnew is scripted.  Eeschema is due a
> major over hall after the next stable release so I expected it to be
> scripted at that point.  Also, we are pretty much in feature freeze for
> the next stable release so anything major like supporting another
> scripting language will have to wait until after the next stable release.
> 
> Cheers,
> 
> Wayne
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp


Follow ups

References