mirror of https://github.com/mpv-player/mpv
input: allow input.conf bindings to be declared as builtin
This might be helpful if we ever want cascading config files. Also, we will probably need it if we change the default input.conf bindings, and want to provide compatibility input.conf files.
This commit is contained in:
parent
a85ff44511
commit
70ff543029
|
@ -39,6 +39,9 @@
|
|||
# file, if unedited, doesn't define any bindings).
|
||||
# Lines that have a space after the '#' are always ignored as real comments.
|
||||
|
||||
# If this is enabled, treat all the following bindings as default.
|
||||
#default-bindings start
|
||||
|
||||
#MOUSE_BTN0 ignore # don't do anything
|
||||
#MOUSE_BTN0_DBL cycle fullscreen # toggle fullscreen on/off
|
||||
#MOUSE_BTN2 cycle pause # toggle pause on/off
|
||||
|
|
|
@ -1386,6 +1386,17 @@ static int parse_config(struct input_ctx *ictx, bool builtin, bstr data,
|
|||
line = bstr_lstrip(line);
|
||||
if (line.len == 0 || bstr_startswith0(line, "#"))
|
||||
continue;
|
||||
if (bstr_eatstart0(&line, "default-bindings ")) {
|
||||
bstr orig = line;
|
||||
bstr_split_tok(line, "#", &line, &(bstr){0});
|
||||
line = bstr_strip(line);
|
||||
if (bstr_equals0(line, "start")) {
|
||||
builtin = true;
|
||||
} else {
|
||||
MP_ERR(ictx, "Broken line: %.*s at %s\n", BSTR_P(orig), cur_loc);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
struct bstr command;
|
||||
// Find the key name starting a line
|
||||
struct bstr keyname = bstr_split(line, WHITESPACE, &command);
|
||||
|
|
Loading…
Reference in New Issue