Opened 5 years ago
Closed 5 years ago
Last modified 5 years ago
#3585 closed enhancement (fixed)
Don't require -c for --tmp-location
|Reported by:||wenzeslaus||Owned by:|
|Keywords:||init, grass.py, location, tmp-location, CRS, CLI, gsoc2018||Cc:|
With this ticket, I'm seeking feedback for designing interface for creating temporary locations from command line.
--tmp-location (#3537, r72790), CRS needs to be specified using the
grass7 -c EPSG:3358 --tmp-location --exec g.proj -p
-c is used to tell GRASS to create a new location or mapset. However, with
--tmp-location GRASS knows that it needs to create a new location, so
-c is required here to only specify the coordinate system. Thus,
--tmp-location could itself require a value to be provided, so that the syntax would become:
grass7 --tmp-location EPSG:3358 --exec g.proj -p
Usage would look like (new):
grass75 --tmp-location [geofile | EPSG] --exec EXECUTABLE [EPARAM]...
Instead of (old):
grass75 -c [geofile | EPSG] --tmp-location --exec EXECUTABLE [EPARAM]...
Or concisely with a reference:
grass75 [-h | -help | --help | --h] [-v | --version] [-c [CRS]] [-e] [-f] [-text | -gtext | -gui] [--config param] [[[GISDBASE/]LOCATION_NAME/]MAPSET] grass75 [FLAG]... GISDBASE/LOCATION_NAME/MAPSET --exec EXECUTABLE [EPARAM]... grass75 --tmp-location CPARAM --exec EXECUTABLE [EPARAM]... ... CRS nothing or geofile or EPSG:code[:datum_trans] CRS (or written like:) [geofile | EPSG:code[:datum_trans]] EXECUTABLE GRASS module, script or any other executable EPARAM parameters of the executable FLAG standard flags # Alternatives to CRS are SRS and CPARAM (like EPARAM).
Note 1: The current parsing does not care about order, so e.g.
grass7 --tmp-location EPSG:3358 -c --exec... is possible now. This should be probably fixed in the future (e.g. 8.0.0 release). (It is not specified in the manual, so the current behavior can fixed/dropped any time.)
Note 2: This is part of making the command line as short as possible, so it might be strange that the
--tmp-location flag is long, but that's a topic for another ticket.
Change History (5)
comment:1 by , 5 years ago
comment:2 by , 5 years ago
Many of them are legacy.
-text is not really a good practice,
--text are better. See also: wiki:Grass8Planning#grassexecutable. The newer ones like
--config are with two dashes which are also supported (but undocumented) for all other "long" flags.
comment:3 by , 5 years ago
Short feedback: I've started to use
--tmp-location, it works nicely!
comment:4 by , 5 years ago
|Status:||new → closed|
comment:5 by , 5 years ago
No objections from my side, only one question: what is the logic concerning - vs -- parameters ?