summaryrefslogtreecommitdiff
path: root/src/gui/gui-input.c
AgeCommit message (Collapse)Author
2023-11-11core: add incremental search in commands history (issue #2040)Sébastien Helleu
Changes: - move key ctrl+r to ctrl+s - add key ctrl+r to search in commands history - add option `search_history` in command `/input` - add key context "histsearch" - add option weechat.look.buffer_search_history - add buffer variables "text_search_direction", "text_search_history" and "text_search_ptr_history"
2023-07-28core: fix input length and crash after delete of line (closes #1989)Sébastien Helleu
2023-06-26core: display actual key name and command with key Alt+kSébastien Helleu
Key Alt+K (upper K) is removed as well as commands `/input grab_raw_key` and `/input grab_raw_key_command`.
2023-05-16core: fix partial completion when the common prefix found is empty (closes #340)Sébastien Helleu
2023-05-04api: don't split on newline by default in functions `command` and ↵Sébastien Helleu
`command_options` when input_multiline is set to 0 The API functions `command` and `command_options` (when `split_newline` = 0, which is the default value) don't split on newline and then the first line is executed and the subsequent lines (after "\n") are ignored. There are no changes when the input has multiple lines filled by the user: the split is done and multiple commands are executed (for example if the user is pasting multiple commands to execute).
2023-04-25core: add option `split_return` in command `/input` (closes #1916)Sébastien Helleu
2023-03-26core: fix code style (issue #1503)Sébastien Helleu
2023-03-26core: revert keys `meta-r` (delete line) and `meta-R` (delete input) (issue ↵Sébastien Helleu
#1503)
2023-03-26core: Implement commands for operating on a single input lineTrygve Aaberge
This changes the commands delete_beginning_of_line, delete_end_of_line, delete_line, move_beginning_of_line and move_end_of_line to operate on the current line instead of the whole input. The commands delete_beginning_of_input, delete_end_of_input, delete_input, move_beginning_of_input and move_end_of_input are added with the previous implementations that the line commands had. Additionally, the commands move_previous_line and move_next_line are added which moves the cursor to the previous/next line and keeps the horizontal position in the line. The meta-r key is changed from delete_line to delete_input to keep the behavior, and because you probably want to delete the whole input more often than the line. The meta-R key is added for delete_line. The home, end, ctrl-u and ctrl-k keys are kept to the same commands, which means that they change behaviour. This is because having them operate on the line is consistent with other applications (vim, zsh), and I also think it's more practical. These new bindings are added: shift-home: /input move_beginning_of_input shift-end: /input move_end_of_input shift-up: /input move_previous_line shift-down: /input move_next_line meta-R: /input delete_line meta-ctrl-u: /input delete_beginning_of_input meta-ctrl-k: /input delete_end_of_input Relates to #1498
2023-03-16core: add key alt-K (alt+shift+k) to grab raw key and its commandSébastien Helleu
2023-02-10core: allow /input move_next_word going to the end of lineRobin Jarry
When the input buffer contains non word characters at the end, /input move_next_word will stop moving at the end of the last word. This is a bit confusing and not in line with what readline does (think bash). When there are no words left in the input buffer, make /input move_next_word go to the end of line. Signed-off-by: Robin Jarry <robin@jarry.cc>
2023-01-29core: force ctrl keys to lower case when they are added (closes #1875)Sébastien Helleu
2023-01-01core: update copyright datesSébastien Helleu
2023-01-01core: check that buffer is not NULL in function gui_input_clipboard_copySébastien Helleu
2022-12-31core: move function gui_input_move_to_buffer to gui-buffer.cSébastien Helleu
2022-12-25core: move `/input` buffer switch/zoom actions to command `/buffer`Sébastien Helleu
Actions moved: * `/input switch_active_buffer` -> `/buffer switch` * `/input switch_active_buffer_previous` -> `/buffer switch -previous` * `/input zoom_merged_buffer` -> `/buffer zoom`
2022-12-25core: move `/input` set_unread actions to commands `/allbuf` and `/buffer set`Sébastien Helleu
Actions moved: * `/input set_unread` -> `/allbuf /buffer set unread` * `/input set_unread_current_buffer` -> `/buffer set unread`
2022-12-25core: move `/input` hotlist actions to new command `/hotlist`Sébastien Helleu
Actions moved to command `/hotlist`: * `/input hotlist_clear` -> `/hotlist clear` * `/input hotlist_remove_buffer` -> `/hotlist remove` * `/input hotlist_restore_buffer` -> `/hotlist restore` * `/input hotlist_restore_all` -> `/hotlist restore -all`
2022-12-25core: move `/input` jump actions to command `/buffer jump`Sébastien Helleu
Actions moved to command `/buffer jump`: * `/input jump_smart` -> `/buffer jump smart` * `/input jump_previously_visited_buffer` -> `/buffer jump prev_visited` * `/input jump_next_visited_buffer` -> `/buffer jump next_visited` * `/input jump_last_buffer_displayed` -> `/buffer jump last_displayed`
2022-12-18core: remove unused argument "pos" from function gui_input_insert_string, ↵Sébastien Helleu
add tests on function
2022-12-17core: simplify gui input functions by returning immediately if condition not metSébastien Helleu
2022-09-18core: add key alt+backspace, change behavior of key ctrl+w (closes #559)Sébastien Helleu
The key ctrl+w now deletes one word until whitespace. The new key alt+backspace deletes one word (same behavior as ctrl+w in previous releases).
2022-03-13core: add function gui_buffer_new_props (issue #1759)Sébastien Helleu
This function allows to create a buffer and set properties via a hashtable, before the signal "buffer_opened" is sent.
2022-01-17core: update copyright datesSébastien Helleu
2021-08-31core: add options in command /input and new keys to remove/restore buffers ↵Sébastien Helleu
in hotlist New options in command /input: - hotlist_remove_buffer - hotlist_restore_buffer - hotlist_restore_all New keys: - alt+h, alt+c: clear the whole hotlist (former key: alt+h) - alt+h, alt+m: mark the current buffer as read by removing it from the hotlist - alt+h, alt+r: restore latest hotlist removed in the current buffer - alt+h, alt+shift+R: restore latest hotlist removed in all buffers
2021-01-02core: update copyright datesSébastien Helleu
2020-04-28api: return integer in function gui_completion_search (issue #1484)Sébastien Helleu
2020-04-27api: add functions completion_new, completion_search and completion_free ↵Sébastien Helleu
(issue #1484)
2020-01-04core: update copyright datesSébastien Helleu
2019-03-28core: make "input_commands_allowed" work with /wait and /repeat commands ↵Sébastien Helleu
(issue #928)
2019-01-01core: update copyright datesSébastien Helleu
2018-11-29core: use https for links to GNU GPL licenseSébastien Helleu
2018-10-21core: replace call to strncpy by memcpySébastien Helleu
This fixes a gcc warning: "warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]".
2018-10-01core: replace "long unsigned int" by "unsigned long"Sébastien Helleu
2018-05-22core: fix delete of previous/next word (keys Ctrl+w and Alt+d) (closes #1195)Sébastien Helleu
2018-01-07core: fix some stylesSébastien Helleu
2018-01-05core: update copyright datesSébastien Helleu
2017-08-21core: add flag "input_get_empty" in bufferSébastien Helleu
The default value is 0 (legacy behavior). When it is set to 1, an empty input (just by pressing Return with nothing in input) is sent to the input callback, which receives an empty string.
2017-05-10core: remove dead assignment in function gui_input_history_nextSébastien Helleu
2017-01-01core: update copyright datesSébastien Helleu
2016-10-08core: fix realloc in function gui_input_optimize_size (issue #809)Sébastien Helleu
This could cause crash in case of memory allocation error (but WeeChat would probably crash or have problems anyway if there's not enough memory for the input line).
2016-09-08core: replace "clipboard" by "internal clipboard" in /help input and user's ↵Sébastien Helleu
guide
2016-08-16core: add optional argument "lowest", "highest" or level mask in command ↵Sébastien Helleu
/input hotlist_clear
2016-01-01core: update copyright datesSébastien Helleu
2015-07-26core: factorize functions to search text in windowSébastien Helleu
2015-07-26Merge remote-tracking branch 'origin/pr/393'Sébastien Helleu
2015-07-25core: allow execution of command "/input return" on a buffer which is not ↵Sébastien Helleu
displayed in a window
2015-07-04api: fix type of value returned by functions utf8_prev_char, utf8_next_char ↵Sébastien Helleu
and utf8_add_offset
2015-04-12core: add more intuitive buffer searching (closes #76)Simmo Saan
2015-04-11core: add options weechat.look.word_chars_{highlight|input} (closes #55, ↵Sébastien Helleu
task #9459)