summaryrefslogtreecommitdiffstats
path: root/Help/command/separate_arguments.rst
diff options
context:
space:
mode:
Diffstat (limited to 'Help/command/separate_arguments.rst')
-rw-r--r--Help/command/separate_arguments.rst31
1 files changed, 31 insertions, 0 deletions
diff --git a/Help/command/separate_arguments.rst b/Help/command/separate_arguments.rst
new file mode 100644
index 0000000..a876595
--- /dev/null
+++ b/Help/command/separate_arguments.rst
@@ -0,0 +1,31 @@
+separate_arguments
+------------------
+
+Parse space-separated arguments into a semicolon-separated list.
+
+::
+
+ separate_arguments(<var> <UNIX|WINDOWS>_COMMAND "<args>")
+
+Parses a unix- or windows-style command-line string "<args>" and
+stores a semicolon-separated list of the arguments in <var>. The
+entire command line must be given in one "<args>" argument.
+
+The UNIX_COMMAND mode separates arguments by unquoted whitespace. It
+recognizes both single-quote and double-quote pairs. A backslash
+escapes the next literal character (\" is "); there are no special
+escapes (\n is just n).
+
+The WINDOWS_COMMAND mode parses a windows command-line using the same
+syntax the runtime library uses to construct argv at startup. It
+separates arguments by whitespace that is not double-quoted.
+Backslashes are literal unless they precede double-quotes. See the
+MSDN article "Parsing C Command-Line Arguments" for details.
+
+::
+
+ separate_arguments(VARIABLE)
+
+Convert the value of VARIABLE to a semi-colon separated list. All
+spaces are replaced with ';'. This helps with generating command
+lines.