Sébastien Helleu
111525792d
core: use a fixed size buffer to rename a bar
2023-03-19 16:47:46 +01:00
Sébastien Helleu
0f4ef874ca
core: do not call check callback when setting default value of option
2023-03-19 16:47:46 +01:00
Sébastien Helleu
ca7da2c961
core: run config hooks only when value or default value is actually changed in set/reset/unset functions
2023-03-19 09:59:33 +01:00
Sébastien Helleu
3e5d77fdff
core: optimize commands /reset and /unset with a mask
2023-03-19 08:30:32 +01:00
Sébastien Helleu
0d49ffd053
core: add command /reset to reset options to their default values
2023-03-19 08:02:10 +01:00
Sébastien Helleu
2e82c41c1a
core: don't translate the key context (default/search/cursor/mouse)
2023-03-19 07:17:44 +01:00
Sébastien Helleu
34e34d28db
core: bump version to 4.0.0-dev, follow "practical" semantic versioning
2023-03-18 15:59:23 +01:00
Sébastien Helleu
99ca276556
core: also display mouse codes with /debug key
2023-03-17 22:49:50 +01:00
Sébastien Helleu
64a553f91f
core: change order of modifiers in mouse keys
...
Now the modifiers for mouse keys are in the same order as other keys: `alt-`
then `ctrl-`.
2023-03-17 19:18:30 +01:00
Sébastien Helleu
3640d187b8
core: split gui-curses.h into multiple headers
2023-03-17 18:52:30 +01:00
Sébastien Helleu
313b40235a
core: fix search of commands with raw code and alias matching
...
When raw code and alias for a key are both matching, the raw code must always
have higher priority.
This commit fixes this behavior and gives priority to raw code.
2023-03-17 18:52:30 +01:00
Sébastien Helleu
fe6b69c41c
core: set insert_ok to 0 for backspace key
2023-03-17 18:52:30 +01:00
Sébastien Helleu
e060a0e7f2
core: remove "%s" from translated message for key debug
2023-03-17 18:52:30 +01:00
Sébastien Helleu
2b1da0d910
core: add note about "shift-" modifier in /help key
...
The modifier "shift-" can only be used with the key names, not with simple
chars.
2023-03-17 18:52:30 +01:00
Sébastien Helleu
c1db5c9549
core: refactor print of keys in debug mode
...
Changes:
- add function gui_key_debug_print_key
- change message "no key" by "no key binding"
- remove messages ""insert into input" / "ignored"
- add color for delimiters
2023-03-17 18:52:30 +01:00
Sébastien Helleu
a54663d60c
core: replace "\x01" by "^" and add color for delimiters in output of /debug key
2023-03-17 18:52:30 +01:00
Sébastien Helleu
d9e084869a
core: add modifiers, key names and combos in /help key
2023-03-17 18:52:30 +01:00
Sébastien Helleu
9afbf02a42
core: use order returned by gui_key_expand in gui_key_modifier_list
2023-03-17 18:52:30 +01:00
Sébastien Helleu
0c4a5528ac
core: display a warning when trying to bind a raw key code or invalid key (missing comma)
2023-03-17 18:52:30 +01:00
Sébastien Helleu
3b8f9d4547
core: check new keys manually added with /set
2023-03-17 18:52:30 +01:00
Sébastien Helleu
042968b016
core: remove use of "meta2-" in key name
...
The raw key code is kept as-is, so for example "meta2-A" becomes "meta-[A".
2023-03-17 18:52:30 +01:00
Sébastien Helleu
8a5a778293
core: remove mention to list of keys being displayed without arguments in /help key
...
Now when fset plugin is loaded, the keys are displayed in fset buffer.
In core commands like /set or /key, the fset plugin is not mentioned as WeeChat
can run without it.
2023-03-16 20:42:19 +01:00
Sébastien Helleu
46ce8d7e81
buflist: do not display keys added in default context on first load
...
Keys added in mouse context were already hidden, so it makes sense to not
display keys in default context as well.
These keys added by the default plugins are documented anyway.
2023-03-16 20:42:19 +01:00
Sébastien Helleu
bf51a081d9
core: display a specific error when trying to bind a key without area in mouse context
2023-03-16 20:42:19 +01:00
Sébastien Helleu
bb0c7b39fe
api: change also default value of new key options with function key_bind
2023-03-16 20:42:19 +01:00
Sébastien Helleu
a0c3fbbde9
core: display a warning if the config version read is newer than supported version
2023-03-16 20:42:19 +01:00
Sébastien Helleu
03e6d4563f
core: move keyboard debug mode from /key debug to /debug key
2023-03-16 20:42:19 +01:00
Sébastien Helleu
d94979fe3e
core: split alias list into two lists
2023-03-16 20:42:19 +01:00
Sébastien Helleu
7f1f6a6e84
tests: add extra test on function gui_key_legacy_to_alias
2023-03-16 20:42:19 +01:00
Sébastien Helleu
a686fa6407
api: change default value of existing key options with function key_bind
...
With this fix, fset buffer shows the key as modified only if the user actually
changed the command bound to the key.
2023-03-16 20:42:19 +01:00
Sébastien Helleu
55d9989b85
core: add function config_file_option_set_default
2023-03-16 20:42:19 +01:00
Sébastien Helleu
79f7c1cf83
fset: hook command /key
...
When command /key is called without arguments, and if fset plugin is loaded,
fset displays all key options (filter: `weechat.key*`).
2023-03-16 20:42:19 +01:00
Sébastien Helleu
ccc649d06c
core: create config options for all keys that can be managed with /set and /fset commands
2023-03-16 20:42:19 +01:00
Sébastien Helleu
c82df8f22e
core: fix safe list of keys
...
Add missing safe keys: "backspace" and "return".
Add missing unsafe keys: "comma", "space".
2023-03-16 20:42:19 +01:00
Sébastien Helleu
c647d540a7
core: remove obsolete function gui_key_legacy_expand
2023-03-16 20:42:19 +01:00
Sébastien Helleu
d1adec29f9
core: optimize search of key by reducing the number of splits into chunks
2023-03-16 20:42:19 +01:00
Sébastien Helleu
5b5c9afa29
core: add key alt-K (alt+shift+k) to grab raw key and its command
2023-03-16 20:42:19 +01:00
Sébastien Helleu
1f5c791c37
core: use new key name in command /key and configuration file
...
Legacy keys are automatically converted to new names when loading configuration
file `weechat.conf`.
Examples:
"ctrl-I" => "tab"
"meta2-1;3A" => "meta-up"
"meta2-Z" => "shift-tab"
"meta-wmeta-meta2-A" => "meta-w,meta-up"
"ctrl-Cb" => "ctrl-c,b"
2023-03-16 20:42:19 +01:00
Sébastien Helleu
5b5ccb236f
core: fix display of key with command /key bindctxt <context> <key>
2023-03-16 20:42:18 +01:00
Sébastien Helleu
66571a0b63
core: add configuration version, add API function config_set_version
2023-03-16 20:42:18 +01:00
Sébastien Helleu
7b8e5b36c0
core: simplify function config_file_read_internal
2023-03-16 20:42:18 +01:00
Sébastien Helleu
31bf962bba
core: display new key name using aliases in output of /key command
2023-03-16 20:42:18 +01:00
Sébastien Helleu
15587ac72f
core: fix function gui_key_legacy_to_alias with keys on areas
2023-03-16 20:42:18 +01:00
Sébastien Helleu
21910b7050
core: add function to expand raw key code to name with alias, use it in /key debug
2023-03-16 20:42:18 +01:00
Sébastien Helleu
0781f29726
core: add keyboard debug mode with command /key debug
2023-03-16 20:42:18 +01:00
Sébastien Helleu
5441c52d64
fset: remove scroll to top of fset buffer when options are added or removed ( closes #1892 )
2023-03-16 20:41:05 +01:00
Sébastien Helleu
7ba9f9ac7b
core: revert case sensitive Curl constants and options (issue #1872 )
...
This is a partial revert of fca78ca823 .
2023-03-12 08:00:51 +01:00
Sébastien Helleu
e36eda5404
core: check that parameters are not NULL in URL functions
2023-03-12 07:58:00 +01:00
Sébastien Helleu
5f5535b466
core: simplify /help eval, move examples with the other examples (issue #1888 )
2023-03-10 20:52:28 +01:00
Sébastien Helleu
f604cf19c7
core: rename variable open_paren to pos_open_paren
2023-03-10 20:19:24 +01:00