blob: a876595ee33f41968ac484f728ccdf449ecb0271 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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.
|