1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-08 02:33:12 +02:00
Commit Graph

233 Commits

Author SHA1 Message Date
Sébastien Helleu 2475f20cb7 all: move description of C files below the copyright and license 2025-03-31 11:47:49 +02:00
Sébastien Helleu 3a6ac9ee76 all: add SPDX license tag 2025-03-31 07:49:26 +02:00
Sébastien Helleu d8987a1678 all: replace Copyright lines by SPDX copyright tag 2025-03-30 14:47:12 +02:00
Sébastien Helleu 3c9eb6dcac core: add option whitespace in command /debug (closes #947)
New options are added to configure the chars displayed for spaces and
tabulations:

- weechat.look.whitespace_char: char for spaces
- weechat.look.tab_whitespace_char: first char for tabulations
2025-02-15 20:54:14 +01:00
Sébastien Helleu 547e2b934e core: update copyright dates 2025-02-01 23:13:18 +01:00
Sébastien Helleu 818a4c95a9 core: replace calls to malloc by string_asprintf 2024-12-21 15:12:33 +01:00
Sébastien Helleu 1fcf5ac5b3 core, plugins: force "short_name" in buffers to non-empty value (name by default), remove buffer property "short_name_is_set" 2024-06-18 20:34:58 +02:00
Sébastien Helleu 26c01e30c3 core, plugins: remove unneeded break after return 2024-06-10 15:10:25 +02:00
Sébastien Helleu e73bff95fa core: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:25 +02:00
Sébastien Helleu d0f0a7834d core: do not color prefix of join/part/quit messages when the nick is offline 2024-04-17 08:32:19 +02:00
Sébastien Helleu b0b733a8f0 core: use nick offline color for nick in action message 2024-04-11 22:52:54 +02:00
Sébastien Helleu f856173e1f core: add option weechat.look.highlight_prefix (closes #2079) 2024-03-16 11:32:51 +01:00
Sébastien Helleu 24c4029c96 core: remove "wee-" prefix from source files in src/core and src/core/hook 2024-03-12 21:27:37 +01:00
Sébastien Helleu eecb2a997e core: update copyright dates 2024-01-01 22:29:58 +01:00
Sébastien Helleu 9fb3d3f14c core: store microseconds in buffer lines (closes #649) 2023-12-26 19:44:37 +01:00
Sébastien Helleu 1cc59edfcc core: fix infinite loop in display when the chat area is too small (closes #2053) 2023-12-14 23:12:39 +01:00
Sébastien Helleu fa0b320178 core: fix style 2023-12-14 23:11:35 +01:00
Sébastien Helleu b83b428c5c core: add incremental search in commands history (issue #2040)
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-11-11 08:54:06 +01:00
Sébastien Helleu 481e8f197d core: use type "enum" in options 2023-07-08 13:29:45 +02:00
Trygve Aaberge 19a0cfe72d core: fix weechat.look.align_multiline_words not working
This option was broken with commit 031bd45e3.
2023-06-02 18:48:47 +02:00
Trygve Aaberge 6f3a67fdc1 core: set word_end_offset to character after word
It seemed strange to me to have word_end_offset point to the last
character in the word, rather than the character after the word,
especially now with the word stopping before a newline character which
meant word_end_offset would be -1 if there was no characters before the
newline character.
2023-05-29 17:10:25 +02:00
Trygve Aaberge 96f41ce4bf core: fix chat colors at certain positions not being applied
The new rendering of multiline lines had some issues with colors at
certain positions not being applied. The color would not be applied if
the color code was at either of these positions:

  - At the start of a line after a newline character
  - At the end of a line after a space and before a newline character
  - At a line by itself before a newline character

The way I had done it by considering newline characters as a word in
gui_chat_get_word_info with a variable specifying that it's newline
characters became messy and didn't really make sense, so rather than
doing this, I changed gui_chat_get_word_info to stop before the first
newline character. That way, we can just check if we are at a newline
character at the start of the loop, and don't need any more special
handling.

Fixes #1928
2023-05-29 17:10:25 +02:00
Trygve Aaberge 8d430aa2eb core: fix display bug when drawing partially scrolled multiline
If you have a chat line with multiple lines that were scrolled so that
part of it is rendered at the bottom of the chat area, and part of it
falls below the chat area, there was a bug where the prefix_suffix would
be displayed at the end of the last line.

Looks like this happens because the gui_chat_display_prefix_suffix is
called for the line below the last line displayed in the chat area. So
we have to add a check for this so we don't add the prefix_suffix. This
check is copied from gui_chat_display_word which checks for the same.

Fixes #1912
2023-04-26 00:47:02 +02:00
Trygve Aaberge 031bd45e36 core: render newline characters in chat line messages
If a chat line message contains a newline character (\n) it was
previously rendered as J with reverse video. This commit makes it
render as an actual newline instead, so messages with multiple lines
become supported.

The rendering is fixed in normal mode as well as bare mode both when
scrolled to the bottom and when scrolled up (which is different code
paths). Focus events has also been updated to support this (except for
_chat_line_y which returns -1 for all lines, but the docs says this
variable is only for buffers with free content).

Currently, the only way to include a \n in a chat line message is with
hdata_update because printf splits on \n and creates multiple separate
lines, but hopefully either printf can be changed to not split on \n, or
a new command which doesn't split can be added.
2023-04-19 16:47:44 +02:00
Sébastien Helleu 3640d187b8 core: split gui-curses.h into multiple headers 2023-03-17 18:52:30 +01:00
Sébastien Helleu 33bba784c3 core: update copyright dates 2023-01-01 14:54:35 +01:00
Sébastien Helleu fce2fcba4f core: add option weechat.look.chat_space_right (issue #1862) 2022-12-29 12:00:28 +01:00
Sébastien Helleu f1cfd6f73f core: do not display non printable chars, fix function utf8_char_size_screen
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 16:05:14 +01:00
Sébastien Helleu d18f68e497 core: display chars < 32 with a letter/symbol and reverse video attribute in chat 2022-12-10 16:05:14 +01:00
Sébastien Helleu 855d80702e core: replace call to memcpy by utf8_strncpy 2022-12-10 16:05:14 +01:00
Sébastien Helleu 1fec7e8856 core: fix page scroll in bare display (closes #1830) 2022-10-05 20:33:35 +02:00
Sébastien Helleu 674f52bf58 core: add bar item "spacer" 2022-04-18 09:52:01 +02:00
Sébastien Helleu 608f56020d core: search in message tags when tags are displayed with /debug tags 2022-01-30 13:33:21 +01:00
Sébastien Helleu 9259442dbf core: add support of date and tags in messages displayed in buffers with free content, add function printf_y_date_tags (closes #1746) 2022-01-30 11:41:06 +01:00
Sébastien Helleu 05a9457504 core: move functions from gui-chat.c to gui-line.c
Functions moved and renamed:

- gui_chat_build_string_prefix_message -> gui_line_build_string_prefix_message
- gui_chat_build_string_message_tags -> gui_line_build_string_message_tags
2022-01-28 07:26:11 +01:00
Sébastien Helleu c44b79dce7 core: update copyright dates 2022-01-17 18:41:06 +01:00
Sébastien Helleu c3cc06ff27 core: fix quoted line in cursor mode (closes #1602)
Regression was introduced in version 2.7 by commit
93d2dbf3e1.
2021-02-28 17:13:52 +01:00
Sébastien Helleu efc7a588d6 core: update copyright dates 2021-01-02 21:34:16 +01:00
Sébastien Helleu feb6258910 core: update copyright dates 2020-01-04 10:41:26 +01:00
Sébastien Helleu 5d4220a91f core: fix scrolling up in bare mode when switched to bare mode at the top of the buffer (closes #899, issue #978) 2019-10-14 20:44:15 +02:00
Sébastien Helleu c77bccba87 Merge remote-tracking branch 'origin/pr/619' 2019-10-06 18:08:17 +02:00
Simmo Saan 97e9046918 core: add option weechat.look.buffer_time_same (closes #1127) 2019-04-13 14:45:53 +02:00
Sébastien Helleu 2b0057239b core: update copyright dates 2019-01-01 15:40:51 +01:00
Sébastien Helleu 4712d0bb06 core: use https for links to GNU GPL license 2018-11-29 23:16:07 +01:00
Sébastien Helleu ed4837b2f6 core: update copyright dates 2018-01-05 00:54:18 +01:00
Sébastien Helleu 5aab494dd6 core, plugins: check return code of strftime function 2017-09-23 15:06:28 +02:00
Sébastien Helleu 705d86e684 core: update copyright dates 2017-01-01 11:32:04 +01:00
Sébastien Helleu e671e20e0c Merge remote-tracking branch 'origin/pr/802' 2016-12-17 07:51:47 +01:00
Sébastien Helleu 570f4817dd core: fix display of empty lines in search mode (closes #829) 2016-10-29 17:18:28 +02:00
arza 592810ca1f core: add option weechat.look.align_multiline_words 2016-09-20 04:36:08 +03:00