[GRASS-dev] WIKI Python script example won't run

Michael Barton michael.barton at asu.edu
Thu Jul 17 01:38:01 EDT 2008


I wanted to see how it would be to port one of the bash scripts to  
Python. I followed the WIKI template and it didn't run. So I made a  
script that is ONLY from the WIKI template and it doesn't run either.  
I've tried it by just typing the script into the command prompt and  
also by typing:

python $GISBASE/scripts/pytest.py

The error is the same every time and is rather strange:

Line too long or missing newline at line 75

Line 75 is the last line (blank) of the script. If I get rid of this  
line, I still get the error, but on line 74.

I'll paste in the WIKI script below so you won't have to look it up.  
It seems OK and the error is kind of enigmatic. I've tried various  
permutations and get the same results.


Michael


================ WIKI script ===================

#!/usr/bin/python
############################################################################
#
# MODULE:       g.example
#
# AUTHOR(S):    Jane GrassUser
#
# PURPOSE:      Demonstrates GRASS parser usage in a Python script
#
# COPYRIGHT:    (c) 2007 The GRASS Development Team
#
#               This program is free software under the GNU General  
Public
#               License (>=v2). Read the file COPYING that comes with  
GRASS
#               for details.
#
############################################################################
#
# REQUIREMENTS:
#      - footool: http://www.example.org

#%Module
#%  description: g.parser test script
#%  keywords: keyword1, keyword2
#%End
#%flag
#%  key: f
#%  description: a flag
#%END
#%option
#%  key: raster
#%  type: string
#%  gisprompt: old,cell,raster
#%  description: raster input map
#%  required : yes
#%end
#%option
#%  key: vector
#%  type: string
#%  gisprompt: old,vector,vector
#%  description: vector input map
#%  required : yes
#%end
#%option
#%  key: option1
#%  type: string
#%  description: an option
#%  required : yes
#%end

import sys
import os

def main():

     #### add your code here ####

     print ""

     if ( os.getenv("GIS_FLAG_F") == "1" ):
         print "Flag -f set"
     else:
         print "Flag -f not set"

     print "Value of GIS_OPT_OPTION1: %s" % os.getenv("GIS_OPT_OPTION1")
     print "Value of GIS_OPT_RASTER:  %s" % os.getenv("GIS_OPT_RASTER")
     print "Value of GIS_OPT_VECTOR:  %s" % os.getenv("GIS_OPT_VECTOR")

     #### end of your code ####
     return

if __name__ == "__main__":
     if ( len(sys.argv) <= 1 or sys.argv[1] != "@ARGS_PARSED@" ):
         os.execvp("g.parser", [sys.argv[0]] + sys.argv)
     else:
	main();



More information about the grass-dev mailing list