Changes between Version 31 and Version 47 of Help/CommandLineOptions


Ignore:
Timestamp:
(multiple changes)
Author:
(multiple changes)
Comment:
(multiple changes)

Legend:

Unmodified
Added
Removed
Modified
  • Help/CommandLineOptions

    v31 v47  
    11[[TranslatedPages]]
     2[[PageOutline(2)]]
     3
    24= Command Line Options =
    3 {{{#!comment
    4 No table of content. Instead the first paragraph introduces into the problem and offers internal links to the headings.
    5 }}}
    6 JOSM is affected by three groups of command line options.
    7 The [#Programarguments Program arguments⤓] are most important and than the [#Javaoptions Java options⤓].
    8 See the [#Examples examples⤓] for both of them.
    9 Only involved in Web Start are the [#run-options run-options⤓].
    10 The last section here deals with [#Otheroptions other⤓] options which are used somewhere in this help pages.
     5
     6Four types of command line options affect JOSM:
     7 * The [#Programarguments Program arguments⤓] directly control JOSM. They are called ''args'' by Java.
     8 * The [#Javaoptions Java options⤓] affect its environment (JVM) and are sometimes named ''VM arguments''.
     9 * The [#run-options Run-options⤓] are involved in WebStart. Some are for diagnosis and import.
     10 * Some [#Otheroptions Other options⤓] for helper programs.
    1111
    1212{{{
    1313#!sh
    1414# Running a jar
    15 java [Java options] -jar josm-tested.jar [Program arguments]
     15java [Java options] -jar josm.jar [Program arguments]
    1616
    1717# Launch a Web Start
    18 javaws [run-options] -J[Java option] josm.jnlp
    19 }}}
    20 
    21 
    22 === Program arguments ===#Programarguments
    23 
    24 Also called ''Post jar arguments'' here or ''args'' by Java publishers.
    25 
    26 The first argument is seen as ''command'' by JOSM. The possible commands are `runjosm` for normal launch (default), `render` for generating an image file and `project` converting coordinates. If JOSM can't recognize a command the default is assumed.
    27 
    28 The following arguments are ''options'' for JOSM. They are separated by spaces. They can be URLs, filenames, coordinates, simple options and option=argument pairs. The complete list of commands and options is shown below:
     18javaws [Run-options] -J[Java option] josm.jnlp
     19}}}
     20
     21The [wikitr:/Help/Action/ShowStatusReport Status Report] from the Help menu lists the given Program arguments and Java options.
     22Some [#Examples examples⤓] for both of them are shown below.
     23
     24**Note:** The term {{{josm.jar}}} is a common abbreviation for the file names ''josm-tested.jar'' and ''josm-latest.jar''.
     25The term ''josm.jnlp'' also stands for ''josm-latest.jnlp''.
     26As usual the command line arguments are separated by space from each other.
     27
     28
     29== Program arguments for JOSM ==#Programarguments
     30
     31The first argument can be a **command** for JOSM to make it work autonomous.
     32The commands are `render`, `project` or `runjosm` as default.
     33
     34The remaining arguments are **options** for JOSM.
     35They can be URLs, filenames, coordinates, simple options and option=value pairs.
     36
     37The options for runjosm are listed in the following.
     38At the bottom are the options for the commands [#Programargumentsrendering render⤓] and [#Programargumentsproject project⤓].
    2939
    3040{{{
    3141usage:
    32   java <java options> -jar josm.jar [<command>] <options>
     42        java -jar josm.jar [<command>] <options>...
    3343
    3444commands:
    35   runjosm     launch JOSM (default, performed when no command is specified)
    36   render      render data and save the result to an image file
    37   project     convert coordinates from one coordinate reference system to another
     45        runjosm     launch JOSM (default, performed when no command is specified)
     46        render      render data and save the result to an image file
     47        project     convert coordinates from one coordinate reference system to another
     48        validate    validate data
    3849
    3950For details on the render and project commands, run them with the --help option.
     
    4152
    4253options:
    43   --help|-h                                 Show this help
    44   --geometry=widthxheight(+|-)x(+|-)y       Standard unix geometry argument
    45   [--download=]minlat,minlon,maxlat,maxlon  Download the bounding box
    46   [--download=]<URL>                        Download the location URL which has
    47                                             coordinates like lat=x&lon=y&zoom=z
    48   [--download=]<filename>                   Open a file (same as Menu/File/Open)
    49   --downloadgps=minlat,minlon,maxlat,maxlon Download the bounding box as raw GPS
    50   --downloadgps=<URL>                       Download the location as raw GPS
    51   --selection=<searchstring>                Select with the given search
    52   --[no-]maximize                           Launch in maximized mode
    53   --reset-preferences                       Reset the preferences to default
    54   --load-preferences=<url-to-xml>           Import preferences from XML file
    55   --set=<key>=<value>                       Set preference key to value
    56   --language=<language>                     Set the language
    57   --version                                 Displays the JOSM version and exits
    58   --debug                                   Print debugging messages to console
    59   --skip-plugins                            Skip loading plugins
    60   --offline=[osm_api,][josm_website,][all]  Disable access to the listed resources
    61 }}}
    62 
    63 The `--download=` part of the download option is optional.
     54        --help|-h                                 Show this help
     55        --geometry=widthxheight(+|-)x(+|-)y       Standard unix geometry argument
     56        [--download=]minlat,minlon,maxlat,maxlon  Download the bounding box
     57        [--download=]<URL>                        Download the location at the URL (with lat=x&lon=y&zoom=z)
     58        [--download=]<filename>                   Open a file (any file type that can be opened with File/Open)
     59        --downloadgps=minlat,minlon,maxlat,maxlon Download the bounding box as raw GPS
     60        --downloadgps=<URL>                       Download the location at the URL (with lat=x&lon=y&zoom=z) as raw GPS
     61        --selection=<searchstring>                Select with the given search
     62        --[no-]maximize                           Launch in maximized mode
     63        --reset-preferences                       Reset the preferences to default
     64
     65        --load-preferences=<url-to-xml>           Changes preferences according to the XML file
     66
     67        --set=<key>=<value>                       Set preference key to value
     68
     69        --language=<language>                     Set the language
     70
     71        --version                                 Displays the JOSM version and exits
     72
     73        --status-report                           Show status report with useful information that can be attached to bugs
     74
     75        --debug                                   Print debugging messages to console
     76
     77        --skip-plugins                            Skip loading plugins
     78
     79        --offline=<OSM_API|JOSM_WEBSITE|CACHE_UPDATES|CERTIFICATES|ALL>
     80                                                  Disable access to the given resource(s), separated by comma
     81                                                  <OSM API|JOSM website|Cache updates|Certificates|All>
     82}}}
     83
     84The `--download=` part of the download option is optional.
    6485The arguments `--download`, `--downloadgps` and `--selection` are processed in this order.
    6586The value `<url-to-xml>` can point to a local file with `file:relative/path/name.xml`.
    66 More verbose than --debug is the `--trace` option.
    6787The items in the `--offline` value are separated by comma.
    6888
    6989
    70 === Java options ===#Javaoptions
    71 
    72 The Java options are also ''JOSM JVM options'' called here or ''VM arguments'' in the [wiki:/Help/Action/ShowStatusReport Status Report]. In that report you can see the invoked Program Arguments and below the VM arguments. They control the Java virtual machine [https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html (JVM)] and can set [https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html properties] inside it. JOSM reads some of them, for example `josm.home` and `user.language`.
    73 {{{
    74 java options:
    75   -Djosm.dir.name=JOSM                      Change the JOSM directory name
    76   -Djosm.pref=/PATH/TO/JOSM/PREF            Set the preferences directory
    77                                             Default: C:\Users\name\AppData\Roaming\JOSM
    78   -Djosm.userdata=/PATH/TO/JOSM/USERDATA    Set the user data directory
    79                                             Default: /home/name/.local/share/JOSM
    80   -Djosm.cache=/PATH/TO/JOSM/CACHE          Set the cache directory
    81                                             Default: <...>
    82   -Djosm.home=/PATH/TO/JOSM/HOMEDIR         Set the common directory for preferences,
    83                                             user data and ./cache/. Lower precedence.
    84                                             Will get overridden from specific setting.
    85   -Xmx...m                                  Set maximum Java heap size in megabytes.
    86                                             May avoid Out-of-Memory errors.
    87 }}}
    88 
    89 The `-Xmx...m` option may be useful when [wiki:/Download#Outofmemory Out of Memory] errors arise.
     90== Java options ==#Javaoptions
     91
     92They control the Java virtual machine [https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html (JVM)] and can set [https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html properties] inside it. JOSM reads some of them directly, for example `josm.home`. Others like `user.language` and `user.country` affect the default settings of the JVM which affect JOSM too.
     93
     94{{{
     95Java system properties options:
     96    -Djosm.dir.name=JOSM                      Change the JOSM directory name
     97    -Djosm.pref=/PATH/TO/JOSM/PREF            Set the preferences directory
     98                                              Default (Linux XDG): /home/name/.config/JOSM
     99                                              Default (Windows): C:\Users\name\AppData\Roaming\JOSM
     100    -Djosm.userdata=/PATH/TO/JOSM/USERDATA    Set the user data directory
     101                                              Default (Linux XDG): /home/name/.local/share/JOSM
     102                                              Default (Windows): C:\Users\name\AppData\Roaming\JOSM
     103    -Djosm.cache=/PATH/TO/JOSM/CACHE          Set the cache directory
     104                                              Default (Linux XDG): /home/name/.cache/JOSM
     105                                              Default (Windows): C:\Users\name\AppData\Local\JOSM\cache
     106    -Djosm.home=/PATH/TO/JOSM/HOMEDIR         Set the common directory for preferences,
     107                                              user data and ./cache/. Lower precedence.
     108                                              Will get overridden from specific setting.
     109    -Xmx...m                                  Set maximum Java heap size in megabytes.
     110                                              May avoid Out-of-Memory errors.
     111}}}
     112
     113The `-Xmx...m` option may be useful when [wikitr:/Download#Outofmemory Out of Memory] errors arise.
    90114If you set a common directory with `Djosm.home` then JOSM will create the subdirectories ./autosave, ./cache and ./validator.
    91115If a value has spaces, then enclose it in quotation marks like `"josm dev"`.
     116
    92117When the non-ASCII characters in the command prompt are scrambled, use `-Dfile.encoding=Cp850` to receive text from Java in another [https://docs.oracle.com/javase/8/docs/technotes/guides/intl/encoding.doc.html code page].
    93118Which [https://msdn.microsoft.com/de-de/library/windows/desktop/dd317756%28v=vs.85%29.aspx code page] is used shows `chcp⏎` in the terminal.
    94 
    95 === Examples ===#Examples
    96 Examples for the Program arguments and Java options in action:
     119For UTF-8 on Windows, invoke `chcp 65001` in the Windows terminal window before launching JOSM using `java -Dfile.encoding=UTF-8 -jar josm.jar`
     120
     121JOSMs Debian package `josm-latest` uses `-Djosm.dir.name=JOSM-latest` to offer parallel installations in the XDG base directories.
     122
     123[=#Examples **Examples for JOSM runjosm options and Java options**]
    97124{{{
    98125#!sh
     
    100127  java -jar josm.jar track1.gpx BigBen.jpg "london data.osm"
    101128# Download from OSM according to an URL with zoom and coordinates
    102   java -jar josm.jar https://www.openstreetmap.org/#map=19/51.51/-0.135
     129  java -jar josm.jar https://www.openstreetmap.org/#map=18/51.501/-0.124
    103130# Download a bounding box and select every element matching a string
    104   java -jar josm.jar 51.505,-0.14,51.515,-0.13 --selection="Piccadilly Circus"
     131  java -jar josm.jar 51.500,-0.126,51.502,-0.122 --selection="Big Ben"
    105132#
    106133# Set directory for JOSM according to a property from the operating system
    107   java -Djosm.pref=$XDG_CONFIG_HOME jar josm.jar
     134  java -Djosm.pref=$XDG_CONFIG_HOME -jar josm.jar
    108135# Quotations for a value with space and show JOSMs GUI in English
    109136  java -Djosm.dir.name="josm dev" -jar josm.jar --language=en
    110 # Set the common directory in a sub-subdirectroy below the active command prompt
     137# Set the common directory in a sub-subdirectory below the active command prompt
    111138  java -Djosm.home=biketour2017/london -jar josm.jar
    112 # More memory in a French spoken environment
    113   java -Xmx1024m -Duser.language=fr -jar josm.jar
     139# More memory and without phoning home
     140  java -Xmx1024m --set=message.notifier.enabled=false -jar josm.jar
    114141#
    115 # Do not get disturbed by phoning home and log debugging info
    116 java -verbose -jar josm-latest.jar --set=message.notifier.enabled=false --debug >WhatsUp.txt
    117 }}}
    118 
    119 
    120 === run-options ===#run-options
    121 The run-options follow the `javaws` command. They control the Web Start mechanism and the environment for the JVM.
    122 {{{
     142# Start in an English environment and log debug info plus messages from stderr
     143  java -Duser.language=en -jar josm.jar --debug 1>logfile.txt 2>&1
     144}}}
     145
     146
     147== Run-options for Java Web Start ==#run-options
     148
     149The run-options are read by the `javaws` command. They control the Web Start mechanism, can encapsulate Java options and can diagnose Java.
     150{{{
     151#!sh
     152# Control
    123153  -offline                  Allows to Web Start JOSM without internet access
    124   -J<java option>           Supplies the <java option> to the JVM
     154
     155# Encapsulate
     156  -J<java option>           Supplies the <java option> to the JVM
    125157  -J-Xmx1024m               Here: Set maximum Java heap size to 1024 megabyte
    126 }}}
    127 
    128 The `-J` run-option takes its part behind the J letter and supplies that as Java option.
    129 The [wiki:/Help/jnlpOptions jnlp-File] used by [https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javaws.html Web Start] offers a second way to [https://docs.oracle.com/javase/8/docs/technotes/guides/javaws/developersguide/syntax.html  set options] for JRE and for the JOSM program directly.
    130 
    131 === Other options ===#Otheroptions
    132 The javaws command on all systems and the josm.exe on MS Windows have some additional [http://launch4j.sourceforge.net/docs.html#Runtime_options options].
    133 {{{
    134 #!sh
    135 javaws -viewer            Shows the Cache Viewer in the Java Control Panel
     158
     159# Diagnosis
     160javaws -viewer            Shows the Cache Viewer in the Java Control Panel
    136161# Allows to opens the Java Control Panel from the command line.
    137162
    138163javaws -clearcache        Removes all non-installed applications from the cache
    139 # Equal to 'Delete Files and Applications' from the 'Temporary File Settings' invoked 
     164# Equal to 'Delete Files and Applications' from the 'Temporary File Settings' invoked
    140165# by the 'Settings' button in the 'General' tab of the Java Control Panel.
    141166# javaws -Xclearcache on OpenJDK
    142 
     167}}}
     168
     169The `-J` run-option takes its part behind the J letter and supplies that as Java option.
     170The [wikitr:/Help/jnlpOptions jnlp-File] used by [https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javaws.html Web Start] offers a second way to [https://docs.oracle.com/javase/8/docs/technotes/guides/javaws/developersguide/syntax.html  set options] for JRE and for the JOSM program directly.
     171
     172The `javaws` command has some control options on all systems.
     173
     174The `-clearcache` option and clearing the cache via the Java Control Panel will both delete JNLP based icons from the Desktop. The JOSM icon will be gone if it was placed as result of a click in a web browser on a jnlp-file.
     175
     176== Other options ==#Otheroptions
     177
     178The Launcher `josm.exe` aka [http://launch4j.sourceforge.net/docs.html#Runtime_options Launch4j] (only on [wikitr:/Download#Mswindowswrapper MS Windows]) may give some debug info.
     179{{{
     180#!sh
    143181josm.exe --j4l-debug      Tries to write a launch4j.log to current directory
    144182josm.exe --j4l-dont-wait  Ends the wrapper after invoking JOSM.
    145 
    146 }}}
    147 The `-clearcache` option and clearing the cache via the Java Control Panel will both delete JNLP based icons from the Desktop. The JOSM icon will be gone if it was placed as result of a click in a web browser on a jnlp-file.
    148 
    149 === See also ===
    150 * [wiki:Download#Troubleshooting Troubleshooting Java]
    151 * [wiki:InstallNotes Installation notes]
    152 * [wiki:Help/Preferences Preferences] - Preferences overview
    153 * [.. Main Help]
     183}}}
     184
     185== Command line for Render and Project ==
     186
     187=== JOSM rendering Program arguments ===#Programargumentsrendering
     188
     189{{{
     190Usage:
     191        java -jar josm.jar render <options>
     192
     193Description:
     194Renders data and saves the result to an image file.
     195
     196Options:
     197        --help|-h                 Show this help
     198        --input|-i <file>         Input data file name (.osm)
     199        --output|-o <file>        Output image file name (.png); defaults to 'out.png'
     200        --style|-s <file>         Style file to use for rendering (.mapcss or .zip)
     201                                  This option can be repeated to load multiple styles.
     202        --setting <key>:<value>   Style setting (in JOSM accessible in the style list dialogue right click menu)
     203                                  Applies to the last style loaded with the --style option.
     204        --zoom|-z <lvl>           Select zoom level to render. (integer value, 0=entire earth, 18=street level)
     205        --scale <scale>           Select the map scale
     206                                  A value of 10000 denotes a scale of 1:10000 (1 cm on the map equals 100 m on the ground; display resolution: 96 dpi)
     207                                  Options --zoom and --scale are mutually exclusive.
     208        --bounds|-b auto|<min_lon>,<min_lat>,<max_lon>,<max_lat>
     209                                  Area to render, default value is 'auto'
     210                                  With keyword 'auto', the downloaded area in the .osm input file will be used (if recorded).
     211        --anchor <lon>,<lat>      Specify bottom left corner of the rendering area
     212                                  Used in combination with width and height options to determine the area to render.
     213        --width-m <number>        Width of the rendered area, in meter
     214        --height-m <number>       Height of the rendered area, in metres
     215        --width-px <number>       Width of the target image, in pixels
     216        --height-px <number>      Height of the target image, in pixels
     217        --projection <code>       Projection to use, default value 'epsg:3857' (web-Mercator)
     218        --max-image-size <number> Maximum image width/height in pixel ('0' means no limit), default value: 20000
     219
     220To specify the rendered area and scale, the options can be combined in various ways:
     221  * --bounds (--zoom|--scale|--width-px|--height-px)
     222  * --anchor (--width-m|--width-px) (--height-m|--height-px) (--zoom|--scale)
     223  * --anchor --width-m --height-m (--width-px|--height-px)
     224  * --anchor --width-px --height-px (--width-m|--height-m)
     225If neither 'bounds' nor 'anchor' is given, the default value --bounds=auto takes effect and the bounds of the download area in the .osm input file are used.
     226
     227Examples:
     228  java -jar josm.jar render -i data.osm -s style.mapcss -z 16
     229  josm render -i data.osm -s style.mapcss --scale 5000
     230  josm render -i data.osm -s style.mapcss -z 16 -o image.png
     231  josm render -i data.osm -s elemstyles.mapcss --setting hide_icons:false -z 16
     232  josm render -i data.osm -s style.mapcss -s another_style.mapcss -z 16 -o image.png
     233  josm render -i data.osm -s style.mapcss --bounds 21.151,51.401,21.152,51.402 -z 16
     234  josm render -i data.osm -s style.mapcss --anchor 21.151,51.401 --width-m 500 --height-m 300 -z 16
     235  josm render -i data.osm -s style.mapcss --anchor 21.151,51.401 --width-m 500 --height-m 300 --width-px 1800
     236  josm render -i data.osm -s style.mapcss --scale 5000 --projection epsg:4326
     237}}}
     238
     239=== JOSM projection Program arguments ===#Programargumentsprojection
     240
     241{{{
     242Usage:
     243        java -jar josm.jar project <options> <crs> +to <crs> [file]
     244
     245Description:
     246Converts coordinates from one coordinate reference system to another.
     247
     248Options:
     249        --help|-h         Show this help
     250        -I                Switch input and output crs
     251        -r                Switch order of input coordinates (east/north, lon/lat)
     252        -s                Switch order of output coordinates (east/north, lon/lat)
     253
     254<crs>:
     255The format for input and output coordinate reference system is similar to that of the PROJ.4 software.
     256
     257[file]:
     258Reads input data from one or more files listed as positional arguments. When no files are given, or the filename is "-", data is read from standard input.
     259
     260Examples:
     261    java -jar josm.jar project +init=epsg:4326 +to +init=epsg:3857 <<<"11.232274 50.5685716"
     262       => 1250371.1334500168 6545331.055189664
     263
     264    java -jar josm.jar project +proj=lonlat +datum=WGS84 +to +proj=merc +a=6378137 +b=6378137 +nadgrids=@null <<EOF
     265    11d13'56.19"E 50d34'6.86"N
     266    118d39'30.42"W 37d20'18.76"N
     267    EOF
     268       => 1250371.1334500168 6545331.055189664
     269          -1.3208998232319113E7 4486401.160664663
     270}}}
     271
     272
     273== See also ==
     274* [wikitr:/Download#Troubleshooting Troubleshooting Java]
     275* [wikitr:/InstallNotes Installation notes]
     276* [wikitr:/Help/Preferences Preferences] - Preferences overview
     277
     278----
     279Back to [wikitr:/Help Main Help]