logo separator

[mkgmap-dev] Options file

From Gerd Petermann gpetermann_muenchen at hotmail.com on Thu Jun 4 07:14:06 BST 2020

Hi Dave,

it is not easy for mkgmap to understand that the string "name" was meant to be an option or a parameter for an option. The only hint is that the string doesn't contain a "." and thus it is unlikely to be an input file. Remember that it is the shell which parses the command first.

>  Aren't all "tiles" processed in a run of mkgmap?
Yes, but each one has it's own set of options.
Example : java -jar mkgmap.jar --gmapsupp in1.osm --latin1 --route in2.osm in3.osm
The options for file in1.osm are different to those used for in2.osm and in3.osm
Normally, this only makes sense for options like --description or --mapname which typically change with each input file.

Gerd

________________________________________
Von: Dave Swarthout <daveswarthout at gmail.com>
Gesendet: Donnerstag, 4. Juni 2020 07:52
An: Gerd Petermann
Cc: Development list for mkgmap
Betreff: Re: [mkgmap-dev] Options file

Hi again Gerd,

 Regarding the change to the error message. Well,  yes, what you've done should help, however, the error in my case wasn't caused by an improper file specification but by a typo in a parameter. I think it would be really helpful to tell the user that the error was in a parameter as opposed to in a filespec. Then if the latter is the case, the error message would supply the offending filespec by name enclosed in quotes.

I am not clear what you are saying in the first paragraph in your latest reply. I'm looking for a way to make the required arrangement of the parameters and input files in the mkgmap invocation more prominent. I simply missed the one mention of it because it wasn't very obvious as it is, which is included in a paragraph about splitter. I realize you can't use bold text in the options file (which is a plain ASCII text file) but if it were set off in some way so it was more easily seen, that would help a lot.

You said, "Maybe mkgmap should warn once when such an option is not the same for all processed tiles?"

I'm unclear about this. Aren't all "tiles" processed in a run of mkgmap? I'm not using splitter. My maps are always limited to a small enough piece of my immediate area so I don't need splitter. When I'm traveling I download new pieces of the state or country as I move through it and compile new maps as I go.

Thanks for your effort. I really appreciate it.

Dave



On Thu, Jun 4, 2020 at 12:10 PM Gerd Petermann <gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>> wrote:
Hi Dave,

I fear we can document whatever we want, this misunderstanding happens again and again. With the --style option it is very obvious and the user will find out. With
other options like --link-pois-to-ways it might take longer as its effect is not so obvious.
Maybe mkgmap should warn once when such an option is not the same for all processed tiles?

I've changed the error message a little bit : Severe(Main): name: input file 'name' doesn't exist.
Maybe it should be changed to "SEVERE (Main): name: input file 'name' doesn't exist. Was it meant as an option?" because the "filename" has no dot and thus no extension?

Gerd

________________________________________
Von: Dave Swarthout <daveswarthout at gmail.com<mailto:daveswarthout at gmail.com>>
Gesendet: Donnerstag, 4. Juni 2020 01:11
An: Gerd Petermann
Cc: Development list for mkgmap
Betreff: Re: [mkgmap-dev] Options file

I agree that the bit about parm placement should not be repeated. I saw and read the text you provided but for some reason associated it more with splitter rather than mkgmap as a whole. It doesn't stand out very well the way it's written now. My bad.

Also, I think it would be good if the filename in the error message was enclosed in quotes. Again, it might be obvious to you developers that "file name" is different than "filename" but it wasn't to me. If the message had said "SEVERE (Main): name: file "name" doesn't exist, it would have been so much more helpful.

I'm all set now. Thanks very much, Gerd.

Dave

On Wed, Jun 3, 2020 at 10:24 PM Gerd Petermann <gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>>> wrote:
Hi Dave,

See r4511.
I don't know if it helps, command line parsing depends on the OS / used shell as well.
On windows this change allows to use  --name-tag-list="name:de,name:en, name"

Reg. your other question about the documentation of the importance of order in the options: This is documented and it is true for almost all options, so it makes no sense to repeat the hint for each option:
"The order of the options is significant in that options only apply to
subsequent input files. If you are using splitter, you probably will need to
put most of your options before '-c template.args' (this file is generated by
splitter). "

Gerd

________________________________________
Von: Dave Swarthout <daveswarthout at gmail.com<mailto:daveswarthout at gmail.com><mailto:daveswarthout at gmail.com<mailto:daveswarthout at gmail.com>>>
Gesendet: Mittwoch, 3. Juni 2020 16:59
An: Gerd Petermann
Cc: Development list for mkgmap
Betreff: Re: [mkgmap-dev] Options file

OMG!  An extra space?

Yep, that fixed it. Is there some way to make the processing of that parm string more robust?

Thank you for your quick response.

On Wed, Jun 3, 2020 at 6:01 PM Gerd Petermann <gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com><mailto:gpetermann_muenchen at hotmail.com<mailto:gpetermann_muenchen at hotmail.com>>>> wrote:
Hi Dave,

I think there is a superflous space in the name-tag-list before name:
name:en,loc_name:en,int_name,alt_name:en,short_name:en, name

This means that mkgmap searches for an input file with the name 'name' and that also explains the error message.

Gerd

________________________________________
Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk><mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk>><mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk><mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk<mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk>>>> im Auftrag von Dave Swarthout <daveswarthout at gmail.com<mailto:daveswarthout at gmail.com><mailto:daveswarthout at gmail.com<mailto:daveswarthout at gmail.com>><mailto:daveswarthout at gmail.com<mailto:daveswarthout at gmail.com><mailto:daveswarthout at gmail.com<mailto:daveswarthout at gmail.com>>>>
Gesendet: Mittwoch, 3. Juni 2020 12:33
An: Development list for mkgmap
Betreff: [mkgmap-dev] Options file

This is a two-part question.
Firstly:
I have been trying to change my compilation method to use a config file but am having problems. During my experimentations I managed to insert the style file directive "--style-file=directory|zip-filename|url" _after_ the filespec for the OSM data file. My map compiled without errors but was not using my styles. I was very confused because it had always worked before. It took me 20 or 30 minutes to discover that I had accidentally "misplaced" my style file parameter in the mkgmp parameter list. Once I moved it in front of the filespecs for my OSM data file and custom TYP file, all was well again.

I am assuming that the "options" file included with every mkgmap download is the primary help file for running mkgmap. So I guess I'm asking if someone would please add a sentence to the options file where the use _and placement_ of the style file parameter is explained more completely. The way it is now, one cannot know that the placement of that parameter is important. Apparently,  the placement of ALL parameters must come before any filespecs in the mkgmap invocation but that important fact isn't obvious (at least to me) from reading the options help file.

A line saying "the style file parameter must appear before any references to a file specification for input data or custom TYP file." inserted just after the "=== Style options ===" section divider would be very helpful

Or perhaps a line at the very top of the options file saying "Note: all options specified herein must appear on the mkgmap invocation before any reference to an OSM input file or a custom TYP file."

*******************************************
Secondly:

The problem I'm having with using a configuration file might be related to file specifications, but I'm not sure. My first try used the filespecs in quotes as they appear in my parm specification. That didn't work. When I compile a map using the scenario below, mkgmap produces an error saying "SEVERE (Main): name: file name doesn't exist" but does not supply a filename. Not very helpful.

Here is my mkgmap invocation string and the configuration file I'm trying to employ:

java -Xmx4000m -jar mkgmap.jar  -c DJS.cfg --family-id=18028 --name-tag-list=name:en,loc_name:en,int_name,alt_name:en,short_name:en, name --description="Lanna" --country-name=THAILAND --country-abbr=THA "C:\Users\alask\Downloads\Maps\Lanna.osm" "C:\Users\alask\Dropbox\Mapping\24983djs.TYP"

And the config file: DJS.cfg follows:

gmapsupp
route
index
bounds=C:\Users\alask\Downloads\Maps\bounds.zip
precomp-sea=C:\Users\alask\Downloads\Maps\sea.zip
generate-sea=land-tag=natural=background
location-autofill=is_in,nearest
housenumbers
max-jobs
drive-on=detect
add-pois-to-areas
link-pois-to-ways
process-destination
process-exits
code-page=1252
check-routing-island-len=700
remove-ovm-work-files
#road-name-config=mkgmap-rel/examples/roadNameConfig.txt
split-name-index
make-opposite-cycleways
order-by-decreasing-area
style-file=C:\Users\alask\Dropbox\Mapping\DJS_styles

I'm sure you experts will easily see what I'm doing wrong. Thanks in advance.

Cheers,

Dave

--
Dave Swarthout
Homer, Alaska
Chiang Mai, Thailand
Travel Blog at http://dswarthout.blogspot.com


--
Dave Swarthout
Homer, Alaska
Chiang Mai, Thailand
Travel Blog at http://dswarthout.blogspot.com


--
Dave Swarthout
Homer, Alaska
Chiang Mai, Thailand
Travel Blog at http://dswarthout.blogspot.com


--
Dave Swarthout
Homer, Alaska
Chiang Mai, Thailand
Travel Blog at http://dswarthout.blogspot.com


More information about the mkgmap-dev mailing list