Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-05-05 | core: fix execution of multiple commands separated by newline when there are ↵ | Sébastien Helleu | |
no spaces For example typing this on core buffer: /t1 /t2 was not executing the two commands but sent the text to the buffer instead. This is because WeeChat thinks it's a path, and the newline should indicate it's not (like a space before the next slash: "/t1 /t2" is a command, not a path, but "/t1/t2" is considered a path). | |||
2023-05-04 | api: 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-03-28 | core: check that infolist is not NULL in next/prev/reset_item_cursor functions | Sébastien Helleu | |
2023-03-26 | core: Implement commands for operating on a single input line | Trygve 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-19 | core: do not call check callback when setting default value of option | Sébastien Helleu | |
2023-03-19 | core: add command `/reset` to reset options to their default values | Sébastien Helleu | |
2023-03-16 | core: add function config_file_option_set_default | Sébastien Helleu | |
2023-03-16 | core: add configuration version, add API function config_set_version | Sébastien Helleu | |
2023-03-12 | tests: add tests on functions weeurl_search_constant and weeurl_search_option | Sébastien Helleu | |
2023-03-10 | core: allow /eval to get hashtable properties | Andrew Potter | |
2023-01-30 | tests: fix comments (issue #1877) | Sébastien Helleu | |
2023-01-30 | core: add function string_get_common_bytes_count (issue #1877) | Sébastien Helleu | |
2023-01-30 | core: add function string_levenshtein (issue #1877) | Sébastien Helleu | |
2023-01-28 | core: make configuration files, sections and options case sensitive (issue ↵ | Sébastien Helleu | |
#1872) | |||
2023-01-28 | core: add function config_file_get_configs_by_priority (issue #1872) | Sébastien Helleu | |
2023-01-28 | core: sort configuration files by name, reload them by priority (issue #1872) | Sébastien Helleu | |
2023-01-28 | core: move function hook_get_priority_and_name to wee-string.c (issue #1872) | Sébastien Helleu | |
2023-01-14 | tests: add tests on string comparison functions | Sébastien Helleu | |
2023-01-01 | core: update copyright dates | Sébastien Helleu | |
2022-12-24 | api: add functions string_strcmp and string_strncmp | Sébastien Helleu | |
2022-12-24 | api: rename char comparison functions "utf8_char*" to "string_char*" | Sébastien Helleu | |
2022-12-24 | api: return arithmetic difference between chars in string comparison functions | Sébastien Helleu | |
Return code is changed for the following functions: - string_strcasecmp - string_strcasecmp_range - string_strncasecmp - string_strncasecmp_range - string_strcmp_ignore_chars - utf8_charcmp - utf8_charcasecmp - utf8_charcasecmp_range | |||
2022-12-23 | api: fix function strcmp_ignore_chars with case sensitive comparison and ↵ | Sébastien Helleu | |
wide chars starting with the same byte | |||
2022-12-21 | core: improve case convert and insensitive char comparisons (closes #258) | Sébastien Helleu | |
All lowercase letters are now properly converted to uppercase letters (and vice versa), via functions `towupper` and `towlower`. Functions `string_tolower`, `string_toupper` and `utf8_charcasecmp` have been optimized to be faster when there are ASCII chars (< 128); functions are about 25-40% faster with mixed chars (both ASCII and multi-bytes). Function `utf8_wide_char` has been removed, `utf8_char_int` can be used instead. | |||
2022-12-18 | api: return newly allocated string in functions string_tolower and ↵ | Sébastien Helleu | |
string_toupper | |||
2022-12-18 | core: return number of bytes for UTF-8 char in function utf8_int_string | Sébastien Helleu | |
2022-12-10 | core: add whole string information in /debug unicode | Sébastien Helleu | |
2022-12-10 | core: add color attributes "blink" and "dim" (half bright) (closes #1855) | Sébastien Helleu | |
2022-12-10 | core: fix function string_cut when there are non printable chars in suffix | Sébastien Helleu | |
2022-12-10 | core: do not display non printable chars, fix function utf8_char_size_screen | Sébastien Helleu | |
Now the function utf8_char_size_screen can return -1 when the char is not printable. It has a specific behavior for some chars: - U+0009: value of option weechat.look.tab_width - U+0001 to U+001F (except U+0009): 1 - U+00AD (soft hyphen): -1 - U+200B (zero width space): -1 | |||
2022-12-10 | api: add function utf8_strncpy | Sébastien Helleu | |
2022-12-10 | core: optimize and fix function utf8_strlen_screen with non printable chars | Sébastien Helleu | |
When there non printable chars, the return of the function was 1. For example utf8_strlen_screen("abc\x01") now returns 4 instead of 1. In addition the function has been optimized to not use the `mbstowcs` function which is slow; result is up to 15% faster. | |||
2022-12-10 | core: add result of `utf8_char_size_screen` in /debug unicode | Sébastien Helleu | |
2022-12-03 | core: display hex codepoint before integer codepoint in /debug unicode | Sébastien Helleu | |
2022-11-27 | tests: define constants with UTF-8 strings, add tests on functions returning ↵ | Sébastien Helleu | |
size on screen | |||
2022-11-21 | core: add option `unicode` in command `/debug` | Sébastien Helleu | |
2022-11-05 | tests: add another test on function string_translate_chars | Sébastien Helleu | |
2022-11-05 | core: add range of chars in evaluation of expressions with `chars:xxx` | Sébastien Helleu | |
2022-11-05 | api: add function string_translate_chars | Sébastien Helleu | |
2022-10-08 | tests: Use LONGS_EQUAL for version number tests | Trygve Aaberge | |
util_version_number returns an int, but BYTES_EQUAL only compares the last byte of the int, so it wouldn't test the rest of the int. I see other tests for functions returning an int use LONGS_EQUAL, so that seems correct to use. | |||
2022-09-27 | api: restrict number to integer in function string_parse_size | Sébastien Helleu | |
2022-09-27 | api: add function string_parse_size | Sébastien Helleu | |
2022-09-18 | core: 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-08-16 | api: add function crypto_hash_file | Sébastien Helleu | |
2022-08-13 | tests: add tests on dynamic string functions with NULL string | Sébastien Helleu | |
2022-07-20 | api: add arguments "index_start" and "index_end" in function ↵ | Sébastien Helleu | |
string_rebuild_split_string | |||
2022-07-20 | api: rename function string_build_with_split_string to ↵ | Sébastien Helleu | |
string_rebuild_split_string | |||
2022-04-18 | core: add case conversion in evaluation of expressions (closes #1778) | Sébastien Helleu | |
2022-03-10 | tests: move include of tests/tests.h outside of extern "C" | Sébastien Helleu | |
2022-02-19 | tests: add tests on function string_strndup | Sébastien Helleu | |