From 5d8d8618c41b07a22edc296b34d69f306141cb3e Mon Sep 17 00:00:00 2001 From: wm4 Date: Tue, 10 May 2016 11:15:45 +0200 Subject: manpage: document -- and some issues passing filenames --- DOCS/man/mpv.rst | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'DOCS/man') diff --git a/DOCS/man/mpv.rst b/DOCS/man/mpv.rst index bdde369672..abb1cd0ac0 100644 --- a/DOCS/man/mpv.rst +++ b/DOCS/man/mpv.rst @@ -320,11 +320,22 @@ example, paths starting with ``-`` will be interpreted as options. Likewise, if a path contains the sequence ``://``, the string before that might be interpreted as protocol prefix, even though ``://`` can be part of a legal UNIX path. To avoid problems with arbitrary paths, you should be sure that -absolute paths passed to mpv start with ``/``, and relative paths with ``./``. +absolute paths passed to mpv start with ``/``, and prefix relative paths with +``./``. + +Using the ``file://`` pseudo-protocol is discouraged, because it involves +strange URL unescaping rules. The name ``-`` itself is interpreted as stdin, and will cause mpv to disable console controls. (Which makes it suitable for playing data piped to stdin.) +The special argument ``--`` can be used to stop mpv from interpreting the +following arguments as options. + +when using the client API, you should strictly avoid using ``mpv_command_string`` +for invoking the ``loadfile`` command, and instead prefer e.g. ``mpv_command`` +to avoid the need for filename escaping. + For paths passed to suboptions, the situation is further complicated by the need to escape special characters. To work this around, the path can be additionally wrapped in the fixed-length syntax, e.g. ``%n%string_of_length_n`` -- cgit v1.2.3