mirror of
https://github.com/mpv-player/mpv
synced 2025-02-02 05:01:56 +00:00
win32: change config path priorities
Assume mpv.exe is located in $mpv_exe_dir, then config files were preferably loaded from "$mpv_exe_dir/mpv". This was mostly traditional, and inherited from MPlayer times. Reverse the config path priority order, and prefer $CSIDL_APPDATA/mpv as main config path. This also fixes behavior when writing watch_later configs, and mpv is installed in a not-writable path. It's possible that this will cause regressions for some users, if the change in preference suddenly prefers stale config files (which may happen to longer around in the appdata config dir) over the user's proper config. Also explicitly document the behavior.
This commit is contained in:
parent
474461244e
commit
34373032b5
@ -717,6 +717,35 @@ override the standard directory ``~/.config/mpv/``.
|
||||
Also, the old config location at ``~/.mpv/`` is still read, and if the XDG
|
||||
variant does not exist, will still be preferred.
|
||||
|
||||
FILES ON WINDOWS
|
||||
================
|
||||
|
||||
On win32 (if compiled with MinGW, but not Cygwin), the default config file
|
||||
locations are different:
|
||||
|
||||
``$CSIDL_APPDATA/mpv/mpv.conf``
|
||||
Preferred mpv config file. This maps to a system and user-specific path,
|
||||
for example ``C:\users\USERNAME\Application Data\mpv\mpv.conf``.
|
||||
|
||||
``$CSIDL_APPDATA/mpv/input.conf``
|
||||
key bindings (see `INPUT.CONF`_ section)
|
||||
|
||||
``$CSIDL_APPDATA/mpv/lua/``
|
||||
equivalent of ``~/.config/mpv/lua/`` on Unix.
|
||||
|
||||
The environment variable ``$MPV_HOME`` completely overrides these, like on
|
||||
UNIX.
|
||||
|
||||
Config files located in the same directory as ``mpv.exe`` are loaded with
|
||||
lower priority. Some config files are loaded only once, which means that
|
||||
e.g. of 2 ``input.conf`` files located in two config directories, only the
|
||||
one from the directory with higher priority will be loaded.
|
||||
|
||||
A third config directory with lowest priority is the directory named ``mpv``
|
||||
in the same directory as ``mpv.exe``. This used to be the directory with
|
||||
highest priority, but is now discouraged to use and might be removed in the
|
||||
future.
|
||||
|
||||
EXAMPLES OF MPV USAGE
|
||||
=====================
|
||||
|
||||
|
@ -61,11 +61,11 @@ static char *mp_get_win_app_dir(void *talloc_ctx)
|
||||
int mp_add_win_config_dirs(struct mpv_global *global, char **dirs, int i)
|
||||
{
|
||||
void *talloc_ctx = dirs;
|
||||
if ((dirs[i] = mp_get_win_exe_subdir(talloc_ctx)))
|
||||
if ((dirs[i] = mp_get_win_app_dir(talloc_ctx)))
|
||||
i++;
|
||||
if ((dirs[i] = mp_get_win_exe_dir(talloc_ctx)))
|
||||
i++;
|
||||
if ((dirs[i] = mp_get_win_app_dir(talloc_ctx)))
|
||||
if ((dirs[i] = mp_get_win_exe_subdir(talloc_ctx)))
|
||||
i++;
|
||||
return i;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user