1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-05 09:13:14 +02:00
Commit Graph

73 Commits

Author SHA1 Message Date
Sébastien Helleu 6f660f2430 core: add variable ${highlight} in option weechat.look.buffer_time_format (issue #2079) 2024-03-16 09:46:55 +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
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 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 33bba784c3 core: update copyright dates 2023-01-01 14:54:35 +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 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 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 e1a4612797 core: ignore color codes in ${length:xxx} and ${lengthscr:xxx} 2019-09-21 13:54:36 +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 42be1a74a0 api: add function hook_line 2018-08-12 21:45:00 +02:00
Sébastien Helleu ed4837b2f6 core: update copyright dates 2018-01-05 00:54:18 +01:00
Sébastien Helleu b072586d79 core: add missing includes of stdio.h 2017-11-04 21:03:15 +01:00
Sébastien Helleu 9bad3f44db core: remove value for first #define in headers, add "PLUGIN" in plugin headers 2017-08-10 20:05:16 +02:00
Simmo Saan e5f67894be gui, buflist: remove declared but undefined functions 2017-06-03 15:59:12 +03:00
Sébastien Helleu 1361602ea5 tests: fix compilation of tests on FreeBSD 11
Some includes were missing in .h files, and the tests must be linked
with intl and execinfo on FreeBSD.
2017-01-13 20:57:59 +01:00
Sébastien Helleu 705d86e684 core: update copyright dates 2017-01-01 11:32:04 +01:00
Sébastien Helleu cf6aca1619 core: add pointer in some callbacks (closes #406)
This pointer is the first argument received by callbacks, and the
existing argument "data" is now automatically freed by WeeChat when the
object containing the callback is removed.

With this new pointer, the linked list of callbacks in scripts has been
removed. This will improve speed of scripts (using a lot of hooks),
reduce memory used by scripts and reduce time to unload scripts.

Following functions are affected in the C API:

* exec_on_files
* config_new
* config_new_section
* config_new_option
* hook_command
* hook_command_run
* hook_timer
* hook_fd
* hook_process
* hook_process_hashtable
* hook_connect
* hook_print
* hook_signal
* hook_hsignal
* hook_config
* hook_completion
* hook_modifier
* hook_info
* hook_info_hashtable
* hook_infolist
* hook_hdata
* hook_focus
* unhook_all_plugin
* buffer_new
* bar_item_new
* upgrade_new
* upgrade_read
2016-03-21 18:11:21 +01:00
Sébastien Helleu 3330724574 core: update copyright dates 2016-01-01 11:09:53 +01:00
Sébastien Helleu 0c79b2fda8 core: fix type of value returned by functions gui_chat_string_next_char, gui_chat_string_add_offset and gui_chat_string_add_offset_screen 2015-07-04 16:32:18 +02:00
Sébastien Helleu a020c28ea6 core: update copyright dates 2015-01-01 09:23:23 +01:00
Sebastien Helleu 9b380a935b core: fix use of reserved C identifiers in headers (closes #31) 2014-03-19 10:39:13 +01:00
Sebastien Helleu 892aa79fb5 core: update copyright dates 2014-01-01 00:14:12 +01:00
Sebastien Helleu 95adb3a04b core: fix text emphasis with wide chars on screen like japanese (patch #8253) (patch from Ryuunosuke Ayanokouzi) 2013-12-11 12:48:32 +01:00
Sebastien Helleu cce23613a7 core: display lines waiting for buffer on exit (in case of early exit) 2013-11-09 08:55:57 +01:00
Sebastien Helleu c624960336 core: add text emphasis in messages when searching text in buffer
New options:
- weechat.look.emphasized_attributes
- weechat.color.emphasized
- weechat.color.emphasized_bg
2013-08-16 16:16:37 +02:00
Sebastien Helleu ca1e0dde07 core: use default value for prefixes used in messages displayed before the interface is initialized 2013-07-27 22:31:36 +02:00
Sebastien Helleu f97598b4aa core: update copyright dates 2013-01-01 13:12:49 +01:00
Sebastien Helleu 200652836b core: add options to use different color for offline nicks in prefix (patch from Nei) (task #11109)
New options:
- weechat.look.color_nick_offline: boolean to enable feature (off by default)
- weechat.color.chat_nick_offline: color for offline nicks (displayed in prefix)
2012-06-09 08:53:50 +02:00
Sebastien Helleu a317029955 core: fix display bugs and crashs with small windows (bug #36107) 2012-04-11 16:38:14 +02:00
Sebastien Helleu 47e4a03be6 core: update copyright dates 2012-01-08 18:59:50 +01:00
Sebastien Helleu dfdf42e27b core: remove unneeded whitespace 2011-10-26 20:37:03 +02:00
Sebastien Helleu 53b339fb35 core: bufferize lines displayed before core buffer is created, to display them in buffer when it is created 2011-10-07 15:30:54 +02:00
Sebastien Helleu 25e1e6e23d core: add colors for inactive windows and lines (in merged buffers)
New boolean options to control use of inactive colors:
- weechat.look.color_inactive_message
- weechat.look.color_inactive_prefix
- weechat.look.color_inactive_prefix_buffer
- weechat.look.color_inactive_time

New "inactive" color options:
- weechat.color.chat_inactive_line
- weechat.color.chat_inactive_window
- weechat.color.chat_prefix_buffer_inactive_line
2011-09-22 11:09:16 +02:00
Sebastien Helleu 1cb7c6a6c5 core: return info about line/word for chat area in focus hashtable, add keys m/q/Q to quote line in cursor mode, sort mouse keys by priority 2011-08-14 11:30:08 +02:00
Sebastien Helleu 1e71196aee core: add option "tags" for command /debug 2011-06-13 15:25:38 +02:00
Sebastien Helleu d24f6e9e17 Update copyright dates 2011-01-01 18:06:29 +01:00
Sebastien Helleu b6662ee3cf Add color support in option weechat.look.buffer_time_format 2010-12-07 19:43:19 +01:00
Sebastien Helleu 85f6444fef Use local buffer in print functions, so that they are reentrant 2010-10-09 21:56:14 +02:00
Sebastien Helleu f11549f654 Fix display bug with special chars (ascii value below 32) (bug #30602) 2010-08-06 19:02:25 +02:00
Sebastien Helleu dcdba08f8a Update comments after #endif in C headers 2010-06-25 15:03:39 +02:00
Sebastien Helleu 6562d676fe Update licenses and copyrights, add missing author names in sources 2010-06-22 19:46:28 +02:00
Sebastien Helleu b6bb001fc4 Free some extra memory when exiting WeeChat 2010-03-29 17:56:23 +02:00
Sebastien Helleu daee18621e Rename command /silence to /mute 2010-02-09 13:21:05 +01:00
Sebastien Helleu 71d77a5890 Add new command /silence 2010-02-09 12:40:19 +01:00