Sorry, I thought I had tested it with some changes I made afterwards,
this end part works better:
startcmd = 'python '+s.name
# set env variable
tmpdir = os.path.dirname(s.name)
os.environ['GRASS_ADDON_PATH']=tmpdir
# set permissions
os.chmod(s.name, os.stat(s.name).st_mode | stat.S_IEXEC)
# start module
os.system(startcmd)
os.remove(s.name)
On 10/12/2015 12:55 PM, Blumentrath, Stefan wrote:
Hi again,
Now I found out that the parser section in the inner python script was
not formated properly.
However, when I now call the inner script with ‘--ui’ I get an error:
Unable to fetch interface description for command ‘tmpjksdfjiol’
Details:
Try to set up GRASS_ADDON_PATH or GRASS_ADDON_BASE variable.
It was neither possible to run the script using grass.run_command()
(on Windows).
Cheers
Stefan
*From:*grass-dev [mailto:[email protected]] *On Behalf
Of *Blumentrath, Stefan
*Sent:* 12. oktober 2015 11:36
*To:* GRASS developers list ([email protected])
<[email protected]>
*Subject:* [GRASS-dev] Using a dynamic text in module header for parser
Hi,
I would like to fill:
#% options:
and
#% answer
in a parser option for a python script dynamically. In particular I
want to have tickboxes for available mapsets in the module GUI…
Meaning something like this (but less complex / not interactive):
http://permalink.gmane.org/gmane.comp.gis.grass.gui/667
My amateur programming skills do unfortunately not allow me to really
understand how to accomplish what Glynn describes in the post above…
I tried to generate and run a temporary python script from within my
script like this:
def main():
answer = grass.mapsets(search_path = True)
available_mapsets = str(grass.mapsets())
with tempfile.NamedTemporaryFile(delete = False) as s:
s.write(''' #!/usr/bin/env python
# -*- coding: utf-8 -*-
# Here comes the full module with header for the parser
#% options: ''' + str(','.join(available_mapsets))
…
’’’)
startcmd = 'python ' + s.name
os.system(startcmd)
os.remove(s.name)
But that way the GUI never starts, when I call the outer script from
GRASS and it seems that option never get parsed…
Any hints how to proceed?
Thanks for helping in advance.
Stefan
_______________________________________________
grass-dev mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-dev
_______________________________________________
grass-dev mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-dev