34 lines
1.2 KiB
ReStructuredText
34 lines
1.2 KiB
ReStructuredText
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.
|
|
|
|
.. _`Parsing C Command-Line Arguments`: https://msdn.microsoft.com/library/a1y7w461.aspx
|
|
|
|
::
|
|
|
|
separate_arguments(<var>)
|
|
|
|
Convert the value of ``<var>`` to a semi-colon separated list. All
|
|
spaces are replaced with ';'. This helps with generating command
|
|
lines.
|