[GRASS-SVN] r64193 - in grass/branches/releasebranch_7_0: . general/g.parser
svn_grass at osgeo.org
svn_grass at osgeo.org
Thu Jan 15 05:32:12 PST 2015
Author: neteler
Date: 2015-01-15 05:32:12 -0800 (Thu, 15 Jan 2015)
New Revision: 64193
Modified:
grass/branches/releasebranch_7_0/
grass/branches/releasebranch_7_0/general/g.parser/g.parser.html
grass/branches/releasebranch_7_0/general/g.parser/test.pl
grass/branches/releasebranch_7_0/general/g.parser/test.py
grass/branches/releasebranch_7_0/general/g.parser/test.sh
Log:
g.parser manual: examples updated (trunk, r64192)
Property changes on: grass/branches/releasebranch_7_0
___________________________________________________________________
Deleted: svn:mergeinfo
- /grass/trunk:59626,59671,60054,60497,60563-60566,60670,60817,60922,60976,61046,61096,61141,61994,62026,62036,62085,62105,62179-62180,62182,62190,62403,62422,62424,62428-62429,62437,62466,62469,62484,62487,62491,62494,62501,62506,62508-62509,62515,62518-62519,62521,62526,62533,62539,62541,62555,62562,62566,62570,62573,62575,62585,62588,62597,62603,62606,62608-62609,62614,62618,62628,62632,62638,62642,62648-62649,62652,62654-62657,62666,62691,62705,62709,62723,62730,62739,62741,62743,62746,62750-62752,62757,62762,62785,62798,62800-62801,62803,62805,62812,62822,62824,62828,62831,62838,62845,62847,62850,62856,62879,62881,62886,62904,62907-62908,62910,62912,62914,62916,62918,62920,62925,62932-62933,62935,62940,62942,62944-62946,62949,62955-62956,62958,62960,62962,62964,62966-62968,62970,62973,62975,62977,62981,62983,62985,62987,62989,62991,62993,62995,62997,62999-63000,63003,63005,63007,63009,63011,63013,63015,63017,63020,63022,63024,63026,63028-63031,63033,63035,63037,63040,
63043-63044,63047,63049,63051,63053,63055,63057,63060,63062-63064,63066,63068,63070-63071,63074,63076,63079,63081,63083,63085,63087,63089,63091,63093,63095,63098,63100,63102,63105,63107,63109,63111,63113-63114,63116,63119,63121,63123,63125,63130,63132-63133,63135,63137,63140,63143,63145,63147,63149,63151,63153-63154,63157,63160,63165,63170,63173,63175,63187,63192-63193,63196,63199-63200,63202,63209,63216,63220-63221,63224,63227,63240,63246,63250,63255,63259,63261,63275-63276,63279,63281,63283,63287,63290,63292,63297,63302,63304-63307,63315,63319,63327,63330,63332,63339,63342,63345,63361-63363,63367,63369,63379,63389,63391,63393,63402,63408-63409,63416-63417,63425,63427,63429,63431,63433,63448,63451,63453,63457,63459,63461,63464-63470,63473,63482,63497,63505,63508,63510,63515,63521-63524,63526,63528,63536-63537,63551-63552,63554,63556,63558-63559,63562,63570,63576,63582,63589-63593,63602,63604,63608-63610,63616,63618,63624,63626,63628,63630,63634,63639,63642,63644,63650,63652
,63656,63679,63685,63689,63691,63693,63695,63698,63700-63702,63704,63706-63707,63709,63711,63713,63715,63717-63718,63721-63727,63731,63733,63736,63740-63742,63744-63749,63751-63752,63756,63758,63760-63761,63767,63777,63780,63783,63787,63793,63796-63798,63801,63803,63807-63808,63812,63814,63816,63821,63823-63824,63827-63828,63830-63831,63834-63835,63837-63839,63841,63843-63844,63846-63847,63849,63851,63853,63855-63856,63858-63859,63862,63865,63869,63871,63882,63884,63889-63890,63892-63895,63897-63898,63900,63902-63903,63905,63907,63909-63911,63913-63914,63927,63930-63931,63940-63941,63943,63945,63954-63955,63960,63965,63967,63976-63983,63995,63997-63998,64004-64005,64026,64030,64040,64056,64062,64083,64088,64091,64100,64105-64106,64126,64128,64134,64141,64143,64150,64165
Modified: grass/branches/releasebranch_7_0/general/g.parser/g.parser.html
===================================================================
--- grass/branches/releasebranch_7_0/general/g.parser/g.parser.html 2015-01-15 13:29:40 UTC (rev 64192)
+++ grass/branches/releasebranch_7_0/general/g.parser/g.parser.html 2015-01-15 13:32:12 UTC (rev 64193)
@@ -126,7 +126,10 @@
An option can be instructed to allow multiple inputs by adding the
following line:
-<pre>#% multiple : yes</pre>
+<div class="code"><pre>
+#% multiple: yes
+</pre></div>
+
While this will only directly change the <i>Usage</i> section of the help
screen, the option's environmental string may be easily parsed from within
a script. For example, individual comma separated identities for an option
@@ -143,13 +146,17 @@
specify that the options should appear in multiple tabs in the
auto-generated GUI. Any options without a <tt>guisection</tt> field
go into the "Required" or "Options" tab. For example:
-<pre>#% guisection: tabname</pre>
+<div class="code"><pre>
+#% guisection: tabname
+</pre></div>
would put that option in a tab named <i>tabname</i>.
<p>
A "<tt>key_desc</tt>" field may be added to each option to specify the text that
appears in the module's usage help section. For example:
-<pre>#% key_desc: filename</pre>
+<div class="code"><pre>
+#% key_desc: filename
+</pre></div>
added to an <b>input</b> option would create the usage summary
<tt>[input=filename]</tt>.
@@ -187,9 +194,9 @@
For scripts, relationships are specified using a "rules" section, e.g.
<div class="code"><pre>
- #%rules
- #%required altitude,elevation
- #%end
+#%rules
+#% required: altitude,elevation
+#%end
</pre></div>
specifies that at least one of those options must be given. Both
@@ -327,23 +334,26 @@
# g.parser demo script for python programing
#%module
-#% description: g.parser test script (python)
+#% description: g.parser test script (python)
+#% keyword: keyword1
+#% keyword: keyword2
#%end
#%flag
-#% key: f
-#% description: A flag
+#% key: f
+#% description: A flag
#%end
#%option G_OPT_R_MAP
#% key: raster
+#% required : yes
#%end
#%option G_OPT_V_MAP
#% key: vector
#%end
#%option
-#% key: option1
-#% type: string
-#% description: An option
-#% required : no
+#% key: option1
+#% type: string
+#% description: An option
+#% required : no
#%end
import os
@@ -388,14 +398,15 @@
# g.parser demo script for shell programing
#%module
-#% description: g.parser test script
+#% description: g.parser test script (shell)
#%end
#%flag
-#% key: f
-#% description: A flag
+#% key: f
+#% description: A flag
#%end
#%option G_OPT_R_MAP
#% key: raster
+#% required : yes
#%end
#%option G_OPT_V_MAP
#% key: vector
@@ -417,12 +428,13 @@
fi
#### add your code below ####
+
echo ""
if [ $GIS_FLAG_F -eq 1 ] ; then
- echo "Flag -f set"
+ g.message message="Flag -f set"
else
- echo "Flag -f not set"
+ g.message message="Flag -f not set"
fi
# test if parameter present:
@@ -430,9 +442,11 @@
echo "Value of GIS_OPT_OPTION1: '$GIS_OPT_OPTION1'"
fi
-echo "Value of GIS_OPT_RASTER: '$GIS_OPT_RASTER'"
-echo "Value of GIS_OPT_VECTOR: '$GIS_OPT_VECTOR'"
+g.message message="Value of GIS_OPT_option1: '$GIS_OPT_option1'"
+g.message message="Value of GIS_OPT_raster: '$GIS_OPT_raster'"
+g.message message="Value of GIS_OPT_vect: '$GIS_OPT_vector'"
+#### end of your code ####
</pre></div>
<h3>Example code for Perl</h3>
@@ -454,6 +468,7 @@
#%end
#%option G_OPT_R_MAP
#% key: raster
+#% required : yes
#%end
#%option G_OPT_V_MAP
#% key: vector
@@ -509,7 +524,7 @@
<p>
Related Wiki pages:
-<a href="http://grasswiki.osgeo.org/wiki/Category:Linking_to_other_languages">Using GRASS with other programming languages</a>
+<a href="http://grasswiki.osgeo.org/wiki/Category:Linking_to_other_languages">Using GRASS GIS with other programming languages</a>
<h2>AUTHOR</h2>
Modified: grass/branches/releasebranch_7_0/general/g.parser/test.pl
===================================================================
--- grass/branches/releasebranch_7_0/general/g.parser/test.pl 2015-01-15 13:29:40 UTC (rev 64192)
+++ grass/branches/releasebranch_7_0/general/g.parser/test.pl 2015-01-15 13:32:12 UTC (rev 64193)
@@ -2,28 +2,21 @@
use strict;
# g.parser demo script for perl programing
-#%Module
+#%module
#% description: g.parser test script (perl)
#% keyword: keyword1
#% keyword: keyword2
-#%End
+#%end
#%flag
#% key: f
#% description: A flag
#%end
-#%option
+#%option G_OPT_R_MAP
#% key: raster
-#% type: string
-#% gisprompt: old,cell,raster
-#% description: Raster input map
#% required : yes
#%end
-#%option
+#%option G_OPT_V_MAP
#% key: vector
-#% type: string
-#% gisprompt: old,vector,vector
-#% description: Vector input map
-#% required : yes
#%end
#%option
#% key: option1
@@ -37,7 +30,6 @@
exit 1;
}
-
if( $ARGV[0] ne '@ARGS_PARSED@' ){
my $arg = "";
for (my $i=0; $i < @ARGV;$i++) {
@@ -46,18 +38,20 @@
system("$ENV{GISBASE}/bin/g.parser $0 $arg");
exit;
}
-
- #add your code here
- print "\n";
- if ( $ENV{'GIS_FLAG_F'} eq "1" ){
+
+#### add your code here ####
+
+print "\n";
+if ( $ENV{'GIS_FLAG_F'} eq "1" ){
print "Flag -f set\n"
- }
- else {
+}
+else {
print "Flag -f not set\n"
- }
-
- printf ("Value of GIS_OPT_option1: '%s'\n", $ENV{'GIS_OPT_OPTION1'});
- printf ("Value of GIS_OPT_raster: '%s'\n", $ENV{'GIS_OPT_RASTER'});
- printf ("Value of GIS_OPT_vect: '%s'\n", $ENV{'GIS_OPT_VECTOR'});
-
- #end of your code
+}
+
+printf ("Value of GIS_OPT_option1: '%s'\n", $ENV{'GIS_OPT_OPTION1'});
+printf ("Value of GIS_OPT_raster: '%s'\n", $ENV{'GIS_OPT_RASTER'});
+printf ("Value of GIS_OPT_vect: '%s'\n", $ENV{'GIS_OPT_VECTOR'});
+
+#### end of your code ####
+
Modified: grass/branches/releasebranch_7_0/general/g.parser/test.py
===================================================================
--- grass/branches/releasebranch_7_0/general/g.parser/test.py 2015-01-15 13:29:40 UTC (rev 64192)
+++ grass/branches/releasebranch_7_0/general/g.parser/test.py 2015-01-15 13:32:12 UTC (rev 64193)
@@ -2,28 +2,21 @@
# g.parser demo script for python programing
-#%Module
+#%module
#% description: g.parser test script (python)
#% keyword: keyword1
#% keyword: keyword2
-#%End
+#%end
#%flag
#% key: f
#% description: A flag
#%end
-#%option
+#%option G_OPT_R_MAP
#% key: raster
-#% type: string
-#% gisprompt: old,cell,raster
-#% description: Raster input map
#% required : yes
#%end
-#%option
+#%option G_OPT_V_MAP
#% key: vector
-#% type: string
-#% gisprompt: old,vector,vector
-#% description: Vector input map
-#% required : yes
#%end
#%option
#% key: option1
@@ -32,30 +25,41 @@
#% required : no
#%end
-import os
import sys
+import atexit
import grass.script as grass
+def cleanup():
+ # add some cleanup code
+ grass.message(_("Inside cleanup function..."))
+
def main():
+ flag_f = flags['f']
+ option1 = options['option1']
+ raster = options['raster']
+ vector = options['vector']
+
#### add your code here ####
+ exitcode = 0
- if flags['f']:
- print "Flag -f set"
+ if flag_f:
+ grass.message(_("Flag -f set"))
else:
- print "Flag -f not set"
+ grass.message(_("Flag -f not set"))
# test if parameter present:
- if options['option1']:
- print "Value of GIS_OPT_OPTION1: '%s'" % options['option1']
+ if option1:
+ grass.message(_("Value of option1 option: '%s'" % option1))
- print "Value of GIS_OPT_RASTER: '%s'" % options['raster']
- print "Value of GIS_OPT_VECTOR: '%s'" % options['vector']
+ grass.message(_("Value of raster option: '%s'" % raster))
+ grass.message(_("Value of vector option: '%s'" % vector))
#### end of your code ####
- return 0
+ sys.exit(exitcode)
if __name__ == "__main__":
options, flags = grass.parser()
- sys.exit(main())
+ atexit.register(cleanup)
+ main()
Modified: grass/branches/releasebranch_7_0/general/g.parser/test.sh
===================================================================
--- grass/branches/releasebranch_7_0/general/g.parser/test.sh 2015-01-15 13:29:40 UTC (rev 64192)
+++ grass/branches/releasebranch_7_0/general/g.parser/test.sh 2015-01-15 13:32:12 UTC (rev 64193)
@@ -2,28 +2,21 @@
# g.parser demo script for shell programing
-#%Module
+#%module
#% description: g.parser test script (shell)
#% keyword: keyword1
#% keyword: keyword2
-#%End
+#%end
#%flag
#% key: f
#% description: A flag
#%end
-#%option
+#%option G_OPT_R_MAP
#% key: raster
-#% type: string
-#% gisprompt: old,cell,raster
-#% description: Raster input map
#% required : yes
#%end
-#%option
+#%option G_OPT_V_MAP
#% key: vector
-#% type: string
-#% gisprompt: old,vector,vector
-#% description: Vector input map
-#% required : yes
#%end
#%option
#% key: option1
@@ -38,19 +31,27 @@
fi
if [ "$1" != "@ARGS_PARSED@" ] ; then
- exec $GISBASE/bin/g.parser "$0" "$@"
+ exec g.parser "$0" "$@"
fi
-#add your code here
+#### add your code below ####
+
echo ""
-if [ $GIS_FLAG_f -eq 1 ] ; then
- echo "Flag -f set"
+
+if [ $GIS_FLAG_F -eq 1 ] ; then
+ g.message message="Flag -f set"
else
- echo "Flag -f not set"
+ g.message message="Flag -f not set"
fi
-echo "Value of GIS_OPT_option1: '$GIS_OPT_option1'"
-echo "Value of GIS_OPT_raster: '$GIS_OPT_raster'"
-echo "Value of GIS_OPT_vect: '$GIS_OPT_vector'"
+# test if parameter present:
+if [ -n "$GIS_OPT_OPTION1" ] ; then
+ echo "Value of GIS_OPT_OPTION1: '$GIS_OPT_OPTION1'"
+fi
-#end of your code
+g.message message="Value of GIS_OPT_option1: '$GIS_OPT_option1'"
+g.message message="Value of GIS_OPT_raster: '$GIS_OPT_raster'"
+g.message message="Value of GIS_OPT_vect: '$GIS_OPT_vector'"
+
+#### end of your code ####
+
More information about the grass-commit
mailing list