[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