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

69 Commits

Author SHA1 Message Date
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
Sebastien Helleu 2133eb30ff Update copyright dates 2010-01-03 19:31:55 +01:00
Sebastien Helleu 8d58b81d83 Add buffer merging feature, with /buffer merge/unmerge (task #7404) 2009-06-10 12:40:05 +02:00
Sebastien Helleu 88aa905ee3 Remove unused functions and prototypes 2009-01-04 01:05:33 +01:00
Sebastien Helleu 2115f3f675 Update copyright dates 2009-01-03 10:06:53 +01:00