summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <rverschelde@gmail.com>2020-07-20 13:55:30 +0200
committerGitHub <noreply@github.com>2020-07-20 13:55:30 +0200
commitfe1ec3beab997699e68ee1ac65db859bfd3bc19e (patch)
treee97e00d4e112b88736fbf9a9a6b52e86c11589f9 /doc
parent84fe3d7df592a35fb102ba71ea475fe03ee16ddc (diff)
parentdf80e259cdab0ae7d89ae0b1099819ae5363b7b1 (diff)
Merge pull request #40521 from Xrayez/doc-cmdline-parsing
Document the process of parsing command-line arguments
Diffstat (limited to 'doc')
-rw-r--r--doc/classes/OS.xml13
1 files changed, 12 insertions, 1 deletions
diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml
index 105def21ca..238bc970ef 100644
--- a/doc/classes/OS.xml
+++ b/doc/classes/OS.xml
@@ -112,7 +112,18 @@
<return type="PackedStringArray">
</return>
<description>
- Returns the command line arguments passed to the engine.
+ Returns the command-line arguments passed to the engine.
+ Command-line arguments can be written in any form, including both [code]--key value[/code] and [code]--key=value[/code] forms so they can be properly parsed, as long as custom command-line arguments do not conflict with engine arguments.
+ You can also incorporate environment variables using the [method get_environment] method.
+ You can set [code]editor/main_run_args[/code] in the Project Settings to define command-line arguments to be passed by the editor when running the project.
+ Here's a minimal example on how to parse command-line arguments into a dictionary using the [code]--key=value[/code] form for arguments:
+ [codeblock]
+ var arguments = {}
+ for argument in OS.get_cmdline_args():
+ if argument.find("=") > -1:
+ var key_value = argument.split("=")
+ arguments[key_value[0].lstrip("--")] = key_value[1]
+ [/codeblock]
</description>
</method>
<method name="get_connected_midi_inputs">