1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-12 14:14:48 +02:00

Compare commits

...

3536 Commits

Author SHA1 Message Date
Sébastien Helleu 59e292a5be Version 4.3.2 2024-06-06 21:45:29 +02:00
Sébastien Helleu 8617bd7d2a core: add version 4.3.2 in release notes 2024-06-06 21:43:37 +02:00
Sébastien Helleu e262cd47b4 xfer: fix display of input prompt in DCC chat buffers (issue #2128) 2024-06-06 13:31:21 +02:00
Sébastien Helleu 5a7db09eb2 irc: fix display of input prompt in private buffers (issue #2128) 2024-06-05 21:05:17 +02:00
Sébastien Helleu 5fc7813643 irc: don't return pointer to irc server if the channel or nick is not found in info "irc_buffer" 2024-06-02 22:50:24 +02:00
Sébastien Helleu dc319af254 core: add link to issue #1549 for ChangeLog entries about permessage-deflate 2024-06-02 09:56:28 +02:00
Sébastien Helleu e920903354 relay: enable websocket extension "permessage-deflate" with "api" relay only 2024-06-02 09:09:16 +02:00
Sébastien Helleu 6457394042 relay: add option relay.look.raw_messages_max_length (issue #2122) 2024-06-01 22:38:55 +02:00
Sébastien Helleu 7516774474 relay: fix websocket permessage-deflate extension when the client doesn't send the max window bits parameters 2024-06-01 22:28:37 +02:00
Sébastien Helleu a9d1b2990f relay: fix allocation and reinit of field "client_context_takeover" in websocket deflate structure 2024-06-01 14:43:31 +02:00
Sébastien Helleu 13198697a9 Version 4.3.2-dev 2024-06-01 14:39:12 +02:00
Sébastien Helleu 2a0e578ae7 Version 4.3.1 2024-05-31 13:34:43 +02:00
Sébastien Helleu 571da9f056 core: add note about old libgcrypt versions in release notes 2024-05-31 13:34:23 +02:00
Sébastien Helleu 88b021f1b7 core: add version 4.2.3 in ChangeLog and release notes 2024-05-31 13:25:45 +02:00
Sébastien Helleu 7eb04b77fe xfer: fix send of data on the DCC chat buffer after /upgrade if the buffer was opened before the upgrade (issue #2092) 2024-05-31 08:25:22 +02:00
Sébastien Helleu b615e6cee7 core: add version 4.3.1 in release notes 2024-05-27 12:14:02 +02:00
Sébastien Helleu d1d7d4573c core: fix detection of libgcrypt ≥ 1.11 (debian #1071960)
Use pkg-config to detect libgcrypt, since command `libgcrypt-config` is not
available any more.

Remove patches for Debian/Raspbian Buster and Ubuntu Bionic: detection of
libgcrypt don't work any more with version 1.8.4 on Debian Buster and 1.8.1 on
Ubuntu Bionic (both versions don't provide the file `libgcrypt.pc`).
2024-05-27 08:24:03 +02:00
Sébastien Helleu 43d9c20e36 irc: close /list buffer when the server buffer is closed (issue #2121) 2024-05-27 07:42:30 +02:00
Sébastien Helleu 8ea0aa5f41 core, relay: fix include directory of libcjson and libzstd 2024-05-26 23:16:41 +02:00
Sébastien Helleu f02ecf3e83 php: fix return value of function hdata_longlong 2024-05-26 16:25:20 +02:00
Sébastien Helleu 490a0b9db0 core: add link to issues in ChangeLog 2024-05-26 16:08:42 +02:00
LuK1337 0ce38e7d58 tcl: fix return value for hdata_longlong
Using API_RETURN_LONG() here breaks tests on i368.
2024-05-26 16:07:44 +02:00
Sébastien Helleu bc380447eb tests: fix compilation of tests on Rocky 9.4 2024-05-26 16:00:53 +02:00
Sébastien Helleu 73c8b5f93c core: add note about lag in buflist in release notes 2024-05-26 14:59:39 +02:00
Sébastien Helleu a6519001c8 core: update ChangeLog 2024-05-26 14:19:31 +02:00
LuK1337 8b106be58e tests: relay: fix HotlistToJson test on s390x
1: error: Failure in TEST(RelayApiMsg, HotlistToJson)
1: 	expected <2024-05-26T10:29:37.716512Z>
1: 	but was  <2024-05-26T10:29:37.000000Z>
1: 	difference starts at position 20 at: <T10:29:37.000000Z   >
2024-05-26 14:19:18 +02:00
LuK1337 66e63bf8cf tests: scripts: fix wrong ifdef check 2024-05-26 14:19:18 +02:00
LuK1337 94ff5e5758 tests: relay: add missing <string.h> include
Fixes build error on Fedora 40.
2024-05-26 14:19:18 +02:00
Sébastien Helleu 73720cf792 Version 4.3.1-dev 2024-05-26 14:19:18 +02:00
Sébastien Helleu b407de4c3b Version 4.3.0 2024-05-26 09:16:17 +02:00
Sébastien Helleu 8444670ef1 relay/api: set API version to 0.1.0 in OpenAPI document 2024-05-26 08:39:28 +02:00
Sébastien Helleu 657805ca25 core: add relay options renamed in release notes 2024-05-26 08:24:08 +02:00
Sébastien Helleu 12378b3a19 relay/api: set API version to 0.1.0 2024-05-26 00:04:28 +02:00
Sébastien Helleu 7684d5a3d1 tests: add test of IRC message split with newline but no server 2024-05-25 19:48:41 +02:00
Sébastien Helleu 2488466b0c irc: fix crash in split of IRC message containing a newline if the server is not given 2024-05-25 19:28:49 +02:00
Sébastien Helleu 647ca0c047 tests: remove dead assignments 2024-05-25 19:22:13 +02:00
Sébastien Helleu 1452497b32 tests: fix tests on hook_infolist_get with an invalid pointer 2024-05-25 19:13:08 +02:00
Sébastien Helleu 2c7057bf22 relay/remote: fix relay API version comparison with a string that can be NULL 2024-05-25 19:11:25 +02:00
Krzysztof Korościk e97dc832e5 doc: updated polish translation 2024-05-25 13:57:13 +02:00
Krzysztof Korościk 7b4d374efd core: updated polish translation 2024-05-25 13:35:09 +02:00
Sébastien Helleu 5294249515 relay: fix compiler warning in call to snprintf
This fixes the following warning emitted by gcc:

…/relay-http.c:1207:32: warning: ‘%s’ directive output may be truncated writing up to 1023 bytes into a region of size 64 [-Wformat-truncation=]
 1207 |                               "%s[%d bytes data]",
      |                                ^~
 1208 |                               str_header,
      |                               ~~~~~~~~~~
…/relay-http.c:1207:31: note: directive argument in the range [1, 2147483647]
 1207 |                               "%s[%d bytes data]",
      |                               ^~~~~~~~~~~~~~~~~~~
…/relay-http.c:1206:21: note: ‘snprintf’ output between 15 and 1047 bytes into a destination of size 64
 1206 |                     snprintf (raw_message, length_raw,
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1207 |                               "%s[%d bytes data]",
      |                               ~~~~~~~~~~~~~~~~~~~~
 1208 |                               str_header,
      |                               ~~~~~~~~~~~
 1209 |                               *ptr_body_size);
      |                               ~~~~~~~~~~~~~~~
2024-05-24 21:08:10 +02:00
Nils Görs 2b81cce9e0 doc: update German documentation 2024-05-24 11:02:16 +02:00
Nils Görs 8814d1d5c4 core: update German translations 2024-05-24 10:45:50 +02:00
Sébastien Helleu 4a4fbce5dd core: update translations 2024-05-23 21:03:43 +02:00
Sébastien Helleu f4a789c327 core: rename Twitter to X in README 2024-05-23 21:01:12 +02:00
Sébastien Helleu 037afc5e92 core: remove release notes for versions where no manual action is required upon upgrade 2024-05-22 00:36:23 +02:00
Sébastien Helleu 17435d5532 core: group changes and sort them by importance in ChangeLog
Changes are now grouped by category:

- `Changed`: changes in existing features
- `Added`: new features
- `Removed`: removed features
- `Fixed`: bug fixed

Changes are also sorted by importance: breaking changes and most important
changes first in each category.

Link to release notes is mentioned in each release for which manual actions are
required upon upgrade.
2024-05-21 23:40:53 +02:00
Sébastien Helleu 6704b1b21c core: add missing list header in v4.0.1 2024-05-21 21:42:55 +02:00
Sébastien Helleu cb08919baf relay/openapi: add note about websocket connection in sync endpoint 2024-05-19 15:49:37 +02:00
Sébastien Helleu c67eb4e656 relay/openapi: remove example from description 2024-05-19 15:48:45 +02:00
Sébastien Helleu 9605501c66 relay/openapi: add complete description for authentication, add header "x-weechat-totp" 2024-05-19 15:31:16 +02:00
Sébastien Helleu e9c14d6548 relay/openapi: replace "summary" by "description" in paths 2024-05-19 14:23:36 +02:00
Sébastien Helleu 54f2c7f2e0 doc/user: add relay "api" (issue #2066) 2024-05-19 13:26:47 +02:00
Sébastien Helleu 44ca4b41f3 relay/remote: check that remote API is exactly the same version as local one upon connection 2024-05-19 11:26:50 +02:00
Sébastien Helleu cc544e3e3a relay/remote: fix error displayed when an error happens in a callback 2024-05-19 10:52:26 +02:00
Krzysztof Korościk a749e3423f core: updated polish translation 2024-05-18 17:52:14 +02:00
Sébastien Helleu 8949a65f52 relay/remote: fix highlight on lines received from remote 2024-05-18 09:51:39 +02:00
Sébastien Helleu 2423fdbf2d core: add option weechat.look.config_permissions (closes #2057) 2024-05-18 09:16:47 +02:00
Sébastien Helleu 839ffc4b0c irc: store lag in channel and private buffers (local variable "lag"), in addition to the server buffer 2024-05-16 08:23:28 +02:00
Sébastien Helleu 5c79933faa core: add bar item "lag"
This bar item is overridden by the irc bar item with the same name, but it used
on relay remote buffers, so that the lag is visible as well.
2024-05-16 07:58:52 +02:00
Sébastien Helleu 47f40f961a relay/remote: add, update and remove buffer local variables received from remote 2024-05-16 07:45:02 +02:00
Sébastien Helleu 1100b0e694 relay/remote: set "input" and "input_pos" only upon buffer creation
This prevents unexpected updates of input on remote buffer whenever something
changes in the buffer, like a local variable, but with the same unchanged
input.
2024-05-16 07:22:24 +02:00
Sébastien Helleu 761d2dec12 core: send signal "buffer_localvar_{added|changed}" only if local variable has been added or changed 2024-05-16 07:16:11 +02:00
Sébastien Helleu 6db01bee34 ci: add tests of OpenAPI document with schemathesis 2024-05-15 21:25:50 +02:00
Sébastien Helleu 4c565413bb relay/api: add OpenAPI document (issue #2066) 2024-05-15 21:20:22 +02:00
Nils Görs b916ed6cf7 core: update German translations 2024-05-15 18:07:34 +02:00
Sébastien Helleu 484abc68fc relay: add option "autoconnect" in remote
This option enables auto-connection to the remote, unless command line option
`-a` (`--no-connect`) is given.
2024-05-14 22:27:11 +02:00
Nils Görs f116061868 core: update German translations 2024-05-14 08:48:20 +02:00
Sébastien Helleu 878c0a5d66 irc: allow range in commands /unban and /unquiet (closes #2113) 2024-05-13 23:05:39 +02:00
Sébastien Helleu 8009b21803 irc: use dynamic string in function irc_command_mode_masks 2024-05-13 22:50:42 +02:00
Sébastien Helleu 05e12c0232 core: update French translations 2024-05-13 22:50:42 +02:00
Sébastien Helleu 8de2a36ac2 relay: add protocol "api" in completion of command "/relay add" 2024-05-12 22:16:14 +02:00
Sébastien Helleu 539a51f9e1 relay/api: add different return codes for callbacks 2024-05-12 22:11:41 +02:00
Sébastien Helleu 3aec35aeec relay/remote: set modes on buffer event 2024-05-12 12:46:32 +02:00
Sébastien Helleu 3bfb7d7f04 relay/api: add field "modes" in GET /api/buffers 2024-05-12 12:46:32 +02:00
Sébastien Helleu dcb8fcb6ed irc: rename option irc.color.item_channel_modes to weechat.color.status_modes 2024-05-12 12:46:32 +02:00
Sébastien Helleu fb4d2d30f4 irc: remove redefinition of bar item "buffer_modes"
The new buffer property "modes" is used instead.
2024-05-12 12:46:32 +02:00
Sébastien Helleu e7b2d98b6e core: add buffer property "modes" 2024-05-12 09:26:10 +02:00
Sébastien Helleu e57777acb1 doc/api: translate buffer property "input_prompt" to French 2024-05-12 08:48:16 +02:00
Sébastien Helleu fa07d98f06 doc/api: add version 4.3.0 for signal "input_prompt_changed" 2024-05-12 08:42:36 +02:00
Sébastien Helleu c1083d022d irc: restore input prompt after upgrade on server and channel buffers 2024-05-12 01:31:54 +02:00
Sébastien Helleu 464b019929 core: restore buffer input prompt on /upgrade 2024-05-12 01:31:54 +02:00
Sébastien Helleu 1a0b9427e0 core: fix conversion of WeeChat bar colors to ANSI colors 2024-05-11 14:05:52 +02:00
Sébastien Helleu 32b01a606c core: fix conversion of WeeChat "default" color to ANSI color 2024-05-11 14:05:52 +02:00
Sébastien Helleu a456c3db86 tests: split strings with colors for readability 2024-05-11 14:05:52 +02:00
Sébastien Helleu 77145d32ad relay/remote: set input prompt on buffer event 2024-05-11 14:05:52 +02:00
Sébastien Helleu cdeac1b693 relay/api: add field "input_prompt" in GET /api/buffers 2024-05-11 14:05:52 +02:00
Sébastien Helleu 827a056790 irc: remove redefinition of bar item "input_prompt"
The new buffer property "input_prompt" is used instead.
2024-05-11 14:05:52 +02:00
Sébastien Helleu 7634774327 core: add buffer property "input_prompt" 2024-05-10 08:54:03 +02:00
Sébastien Helleu e69cffd9bc irc: fix nick comparison in function irc_server_set_nick 2024-05-10 08:27:41 +02:00
Sébastien Helleu 5991278637 irc: rename function irc_server_buffer_set_input_multiline to irc_server_set_buffer_input_multiline 2024-05-09 15:55:31 +02:00
Sébastien Helleu 1a8c40826e core: refresh buffer only if nicklist_display_groups has changed 2024-05-08 13:29:12 +02:00
Sébastien Helleu d14bc12282 core: refresh buffer only if nicklist has changed 2024-05-08 13:28:47 +02:00
Sébastien Helleu 0c9bbb5d4f core: refresh buffer only if time_for_each_line has changed 2024-05-08 13:28:24 +02:00
Sébastien Helleu df52b57c33 core: add function gui_buffer_set_filter 2024-05-08 13:23:50 +02:00
Sébastien Helleu 7addd1bf00 core: add function gui_buffer_set_input 2024-05-08 13:19:40 +02:00
Sébastien Helleu 28f75d17dc tests: add placeholder for tests on function gui_buffer_set_input_get_any_user_data 2024-05-08 13:19:15 +02:00
Sébastien Helleu 1050ba851f core: fix buffer title comparison in function gui_buffer_set_title 2024-05-08 12:50:08 +02:00
Sébastien Helleu 103684b15e core: merge conditions in function gui_buffer_set_type 2024-05-08 12:49:17 +02:00
Sébastien Helleu 7546ee08ca core: fix buffer short name comparison in function gui_buffer_set_short_name 2024-05-08 12:48:21 +02:00
Sébastien Helleu 1aeea38355 core: fix buffer name comparison in function gui_buffer_set_name 2024-05-08 12:09:26 +02:00
Sébastien Helleu 9ce666fc31 core: check that buffer is not NULL in function gui_input_set_pos 2024-05-08 12:08:50 +02:00
Sébastien Helleu b2c7682242 core: add function gui_buffer_set_notify 2024-05-08 12:08:50 +02:00
Sébastien Helleu 2aa1b950cd core: add function gui_buffer_set_day_change 2024-05-08 12:08:50 +02:00
Sébastien Helleu 0df1cde496 tests: fix typo in comment 2024-05-08 09:30:33 +02:00
Sébastien Helleu 9f536d3dc7 api: return -1 or 1 if one input string is NULL and not the other in string comparison functions 2024-05-08 09:30:20 +02:00
Sébastien Helleu 4d0458afdd relay/remote: set input multiline on buffer event 2024-05-07 21:38:43 +02:00
Sébastien Helleu 92dfd2425f relay/remote: set buffer input and cursor position on buffer event 2024-05-07 21:38:24 +02:00
Ivan Pešić be621205e9 doc: update Serbian translation 2024-05-07 18:59:40 +02:00
Ivan Pešić 4ad497ce01 core: update Serbian translation 2024-05-07 18:59:40 +02:00
Sébastien Helleu da8353c54f relay: change default value of option "relay.network.commands" to *,!quit 2024-05-07 13:58:31 +02:00
Sébastien Helleu 44c96f6abf relay/remote: reuse an existing remote buffer 2024-05-05 23:57:46 +02:00
Sébastien Helleu 177b0a4299 relay/remote: synchronize input with remote relay 2024-05-05 23:57:02 +02:00
Sébastien Helleu 75270d7841 relay/api: add optional synchronization of input 2024-05-05 23:56:33 +02:00
Sébastien Helleu 6526cc230a relay/api: add input fields in GET /api/buffers
New fields returned:

- "input" (string): content of input
- "input_position" (integer): position in input (starts at 0)
- "input_multiline" (boolean): true if the buffer allows multiline input
2024-05-05 23:07:42 +02:00
Sébastien Helleu 211cd11c2a relay/api: add parameter "lines_free" in GET /api/buffers
This parameter is the number of lines to return for buffers with free content.

Its default value is `0` if "lines" is set to `0`, otherwise all buffer lines
are returned.
2024-05-05 22:30:04 +02:00
Sébastien Helleu 9ceea3697b relay/api: fix read of buffer lines when lines parameter is LONG_MIN 2024-05-05 17:49:20 +02:00
Sébastien Helleu 0cf504dce7 tests: add test on relay API preflight request (OPTIONS) 2024-05-05 14:13:03 +02:00
Sébastien Helleu 6839974a07 tests: fix relay API protocol tests 2024-05-05 11:37:05 +02:00
Sébastien Helleu 25e3a631b9 relay/api: reply to preflight request OPTIONS received from browsers (CORS)
This adds the support of Cross-Origin Resource Sharing (CORS) in the relay HTTP
API.
2024-05-05 11:08:37 +02:00
Sébastien Helleu 998bb89c98 relay/api: send all nicks when a buffer is opened 2024-05-04 13:58:01 +02:00
Sébastien Helleu ccf23ae51e relay/remote: run callback based on event name instead of body type 2024-05-04 13:43:03 +02:00
Sébastien Helleu 6321669cd5 relay/remote: clear remote buffer when event "buffer_cleared" is received 2024-05-04 12:35:10 +02:00
Sébastien Helleu 586e66d6fa tests: add placeholders for tests on relay api remote event functions 2024-05-04 11:41:23 +02:00
Sébastien Helleu a21fa3359d relay/remote: fix close of remote buffer 2024-05-04 11:40:49 +02:00
Sébastien Helleu 4ac120e435 relay/remote: fix alignment of variable in debug print to log file 2024-05-04 08:55:57 +02:00
Sébastien Helleu b21b64bc44 relay/remote: do not display error if the buffer is not found in a line/nick event 2024-05-04 08:39:56 +02:00
Sébastien Helleu 68ff525d2e relay/api: do not relay any signal received on a relay buffer
This fixes a creation of multiple fset buffers on remote when /fset is used on
the server.
2024-05-03 19:12:43 +02:00
Eli Schwartz 7e79dd92ba core: conditionally declare variable only used in conditional code
Avoids emitting a compiler diagnostic by default for non-NLS builds for
-Wunused-variable.
2024-05-03 18:49:20 +02:00
Eli Schwartz cefc6820c1 core: remove unused header
weechat.h already handles libintl.h and defining suitable macros.
Including it again does nothing other than emit a compile warning when
compiling without NLS:

In file included from /var/tmp/portage/net-irc/weechat-9999/work/weechat-9999/src/core/core-doc.c:35:
/var/tmp/portage/net-irc/weechat-9999/work/weechat-9999/src/core/weechat.h:49: warning: "gettext" redefined
   49 |     #define gettext(string) (string)
      |
In file included from /var/tmp/portage/net-irc/weechat-9999/work/weechat-9999/src/core/core-doc.c:30:
/usr/include/libintl.h:109: note: this is the location of the previous definition
  109 | # define gettext(msgid) dgettext (NULL, msgid)
2024-05-03 18:49:20 +02:00
Sébastien Helleu 9f7b4c497e core: remove unused variable "used" 2024-05-03 07:15:55 +02:00
Sébastien Helleu d85205ca8a irc: remove unneeded parameter in call to irc_list_alloc() 2024-05-03 07:12:34 +02:00
Sébastien Helleu 06d10ad193 core: fix prototype of function "resizeterm" in fake ncurses interface 2024-05-02 21:44:01 +02:00
Sébastien Helleu 8f86f319ca relay: fix use of uninitialized variable "ptr_buffer" 2024-05-02 21:40:14 +02:00
Sébastien Helleu fef2ecec9b relay: remove unused variable "i" 2024-05-02 21:37:03 +02:00
Sébastien Helleu cf42c7da38 alias: remove unused variable "args_count" 2024-05-02 21:34:50 +02:00
Nils Görs 9e6b9ca54d core: update German translations 2024-05-02 07:42:53 +02:00
Krzysztof Korościk d22c3344d4 doc: updated polish translation 2024-05-02 00:13:37 +02:00
Krzysztof Korościk 93064b8401 po: updated polish translation 2024-05-02 00:06:57 +02:00
Sébastien Helleu 573f1046ac core: execute command as user data for local keys in buffer (issue #2066)
If buffer->input_get_any_user_data is set to 1, any command executed via a
buffer local key is considered as user input and then sent to the buffer
callback, instead of being executed directly.

This is used on relay remote buffers, to execute the command on the remote
instead of locally.
2024-05-01 15:07:08 +02:00
Sébastien Helleu 3aeea2d6aa relay/remote: set buffer local keys (issue #2066) 2024-05-01 13:53:58 +02:00
Sébastien Helleu afe037c579 relay/api: add buffer keys in GET /api/buffers (issue #2066) 2024-05-01 13:53:58 +02:00
Sébastien Helleu c5268bc5f9 core: send signal "buffer_line_added" on buffers with free content (issue #2066)
The signal "buffer_line_added" is now sent for every line added or modified on
a buffer with free content.
2024-05-01 13:37:49 +02:00
Sébastien Helleu c47e4fa883 relay/remote: display lines on buffers with free content (issue #2066) 2024-05-01 13:37:45 +02:00
Sébastien Helleu 6c1f21f10c relay: add option relay.api.remote_get_lines (issue #2066) 2024-05-01 10:10:36 +02:00
Sébastien Helleu ee3fb67a0c relay/api: add support of nicklist in remote buffers 2024-04-30 00:08:41 +02:00
Sébastien Helleu b8f6468590 relay/api: add color names for groups and nicks in GET /api/buffers 2024-04-29 22:43:38 +02:00
Sébastien Helleu de24921609 relay/api: add nicklist boolean fields in GET /api/buffers 2024-04-29 22:05:47 +02:00
Sébastien Helleu 1d9cdba58e relay/api: rename field "nicklist" to "nicklist_root" in GET /api/buffers 2024-04-29 21:56:38 +02:00
Sébastien Helleu 9cd7fd38a9 api: allow to set nicklist group/nick id in functions nicklist_group_set and nicklist_nick_set (issue #2081) 2024-04-29 21:07:04 +02:00
Sébastien Helleu ded599b272 api: allow search by group and nick id in functions nicklist_search_group and nicklist_search_nick (issue #2081) 2024-04-29 19:22:57 +02:00
Sébastien Helleu 6c706caa50 tests/gui: add tests on nicklist functions 2024-04-28 22:31:37 +02:00
Sébastien Helleu f87347d44f core: fix /upgrade from previous releases (issue #2106)
When 4 directories are received, the state directory is initialized with the
data directory.

This fixes the following error on `/upgrade`:

Error: wrong number of paths for home directories (expected: 1 or 5, received: 4)
2024-04-28 20:19:45 +02:00
Sébastien Helleu 96ff7248ef core: remove obsolete function gui_nicklist_get_max_length 2024-04-28 19:10:05 +02:00
Sébastien Helleu eac442a855 core: remove unnecessary condition in function gui_nicklist_get_group_start 2024-04-28 19:06:48 +02:00
Sébastien Helleu f1fa143b21 core: check that parameter name is not NULL in function gui_nicklist_get_group_start 2024-04-28 19:06:21 +02:00
Sébastien Helleu dcd872bc45 core: fix recursive search of group in nicklist 2024-04-28 13:07:08 +02:00
Sébastien Helleu 4a058ae0f5 trigger: remove check of NULL pointers before calling trigger_free() (issue #865) 2024-04-26 21:24:14 +02:00
Sébastien Helleu 2b919b0a01 script: remove check of NULL pointers before calling script_repo_free() (issue #865) 2024-04-26 21:23:39 +02:00
Sébastien Helleu 9c3eda660d relay: remove check of NULL pointers before calling relay_websocket_deflate_free() (issue #865) 2024-04-26 21:23:39 +02:00
Sébastien Helleu 17090ade74 relay: remove check of NULL pointers before calling relay_server_free() (issue #865) 2024-04-26 21:22:50 +02:00
Sébastien Helleu ba97a39565 relay: remove check of NULL pointers before calling relay_http_response_free() (issue #865) 2024-04-26 21:22:49 +02:00
Sébastien Helleu 42cba25453 exec: remove check of NULL pointers before calling exec_free() (issue #865) 2024-04-26 21:21:48 +02:00
Sébastien Helleu 7438d2c737 alias: remove check of NULL pointers before calling alias_free() (issue #865) 2024-04-26 21:21:48 +02:00
Sébastien Helleu ed48819b77 core: remove check of NULL pointers before calling gui_focus_free_info() (issue #865) 2024-04-26 21:18:24 +02:00
Sébastien Helleu 2c300424b4 core: remove check of NULL pointers before calling gui_color_palette_free() (issue #865) 2024-04-26 21:18:24 +02:00
Sébastien Helleu 3e520cb1ff core: remove check of NULL pointers before calling gui_completion_free() (issue #865) 2024-04-26 21:18:24 +02:00
Sébastien Helleu 114084a4fc relay: remove check of NULL pointers before calling weechat_completion_free() (issue #865) 2024-04-26 21:18:24 +02:00
Sébastien Helleu 1a31512503 core: remove check of NULL pointers before calling string_free_split_tags() (issue #865) 2024-04-26 21:18:24 +02:00
Sébastien Helleu a7b21fa647 core: remove check of NULL pointers before calling gui_bar_window_free() (issue #865) 2024-04-26 21:18:24 +02:00
Sébastien Helleu 890caf4e8e core: remove check of NULL pointers before calling gui_bar_item_free() (issue #865) 2024-04-26 21:17:13 +02:00
Sébastien Helleu ad33036fea core: remove check of NULL pointers before calling weelist_free() (issue #865) 2024-04-26 21:06:47 +02:00
Sébastien Helleu a59fa70a94 irc: remove check of NULL pointers before calling weechat_list_free() (issue #865) 2024-04-26 21:06:47 +02:00
Sébastien Helleu ac7cc25763 core: remove check of NULL pointers before calling infolist_free() (issue #865) 2024-04-26 21:06:06 +02:00
Sébastien Helleu ee51e6c05f plugins: remove check of NULL pointers before calling weechat_infolist_free() (issue #865) 2024-04-26 21:06:06 +02:00
Sébastien Helleu 61ff0b8587 core: remove check of NULL pointers before calling config_file_option_free() (issue #865) 2024-04-26 20:59:44 +02:00
Sébastien Helleu 561dd92d8e plugins: remove check of NULL pointers before calling weechat_config_option_free() (issue #865) 2024-04-26 20:59:44 +02:00
Sébastien Helleu 619b40b42f core: remove check of NULL pointers before calling string_shared_free() (issue #865) 2024-04-26 08:55:35 +02:00
Sébastien Helleu 409a06982e core: remove check of NULL pointers before calling string_dyn_free() (issue #865) 2024-04-26 08:53:22 +02:00
Sébastien Helleu 7af01a56ca plugins: remove check of NULL pointers before calling weechat_string_dyn_free() (issue #865) 2024-04-26 08:53:22 +02:00
Sébastien Helleu 3057d846d9 core: remove check of NULL pointers before calling string_free_split() (issue #865) 2024-04-26 08:53:22 +02:00
Sébastien Helleu 9a5a1fb300 plugins: remove check of NULL pointers before calling weechat_string_free_split() (issue #865) 2024-04-26 08:53:22 +02:00
Sébastien Helleu f11c7c1bf4 core: remove check of NULL pointers before calling hashtable_free() (issue #865) 2024-04-26 08:53:22 +02:00
Sébastien Helleu 0b2d9bcb9b plugins: remove check of NULL pointers before calling weechat_hashtable_free() (issue #865) 2024-04-26 08:53:22 +02:00
Sébastien Helleu 1ad0b4b669 core: remove check of NULL pointers before calling unhook() (issue #865) 2024-04-26 08:41:44 +02:00
Sébastien Helleu 529a22e342 plugins: remove check of NULL pointers before calling weechat_unhook() (issue #865) 2024-04-26 08:41:44 +02:00
Sébastien Helleu 828ca37225 tests: split hook tests into multiple files (issue #865) 2024-04-26 08:41:44 +02:00
Sébastien Helleu 6cf163f00c tests: move hook modifier tests to a separate file (issue #865) 2024-04-26 07:51:49 +02:00
Sébastien Helleu 2b6fbe26ac core: remove check of NULL pointers before calling arraylist_free() (issue #865) 2024-04-26 07:37:22 +02:00
Sébastien Helleu 3eed74a75c plugins: remove check of NULL pointers before calling weechat_arraylist_free() (issue #865) 2024-04-26 07:37:22 +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 b56b34711d api: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:25 +02:00
Sébastien Helleu 590d9453a0 xfer: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:25 +02:00
Sébastien Helleu ea85d180e5 trigger: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:25 +02:00
Sébastien Helleu 0e3b6a9c77 tcl: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:25 +02:00
Sébastien Helleu 1f104d06a0 spell: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:25 +02:00
Sébastien Helleu 3973258628 script: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:25 +02:00
Sébastien Helleu f79153ace7 ruby: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu 7ee57af8e3 relay: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu b138510cff python: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu c472b9a733 php: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu 0ac2e54b46 perl: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu 3e994e3c5a lua: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu 128d2a4e12 logger: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu 846c785531 javascript: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu 2bbf289635 irc: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu f3a9bfe55e guile: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu 852b8a5cdb fset: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu 1ae33517e9 fifo: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu 5ad977a6ed exec: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu f92606a317 charset: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:59:24 +02:00
Sébastien Helleu c3750a02e3 buflist: remove check of NULL pointers before calling free() (issue #865) 2024-04-25 20:58:31 +02:00
Sébastien Helleu c242c8e3f9 alias: remove check of NULL pointers before calling free() (issue #865) 2024-04-24 23:12:05 +02:00
Sébastien Helleu 4baf0e8526 relay: add final '\0' in body when parsing HTTP response
This fixes tests on Debian GNU/Hurd.
2024-04-24 21:24:51 +02:00
Sébastien Helleu 1e08b1119a relay: fix default value of remote options 2024-04-23 22:57:57 +02:00
Sébastien Helleu fb9d677020 doc/api: add changes on functions command and command_options introduced in version 4.0.0 2024-04-23 22:54:00 +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
Nils Görs eadb7e95ef core: update German translations 2024-04-15 13:02:23 +02:00
Nils Görs 634f467c8d core: update German translations 2024-04-15 11:06:45 +02:00
Sébastien Helleu c1b49f71a5 core: update French translations 2024-04-14 19:15:59 +02:00
Sébastien Helleu 42b073629d relay: ignore unused parameter "gnutls_rc" 2024-04-14 19:14:19 +02:00
Sébastien Helleu 731871dd78 relay: remove commented variable 2024-04-14 19:13:47 +02:00
Sébastien Helleu b7d07840d1 relay: add connection with proxy to remote 2024-04-14 19:12:35 +02:00
Sébastien Helleu 9defa13bbe relay: remove commented code 2024-04-14 19:12:22 +02:00
Sébastien Helleu 984fdb2b58 relay: add TLS connection to remote, add remote option "tls_verify" 2024-04-14 19:00:05 +02:00
Sébastien Helleu a4236be509 relay: add missing proxy in output of /remote listfull <name> 2024-04-14 16:14:51 +02:00
Sébastien Helleu 92d27d8676 relay: fix read of remote name in infolist 2024-04-14 15:51:03 +02:00
Sébastien Helleu e1b1946ee4 relay: add check and change callbacks for remote option "url" 2024-04-14 14:58:26 +02:00
Sébastien Helleu 252787c457 relay: fix memory leak when adding a new remote 2024-04-14 09:14:00 +02:00
Sébastien Helleu 18d32cb613 core: add issue #1747 in ChangeLog 2024-04-13 20:35:24 +02:00
Sébastien Helleu b909522307 core: update ChangeLog (issue #2106) 2024-04-12 23:00:57 +02:00
Sébastien Helleu 5eb47ccf53 core: update French translations 2024-04-12 22:59:21 +02:00
90 8c3f16dbe3 core: add support for $XDG_STATE_HOME 2024-04-12 22:57:57 +02:00
Nils Görs 3bfe4e52ca core: update German translations 2024-04-12 16:41:10 +02:00
Sébastien Helleu c112d0aafa tests: add placeholder for tests on function gui_line_is_action 2024-04-11 23:03:44 +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 ae892d2893 core: use nick offline highlight color for prefix of action message when the nick is offline with a highlight 2024-04-11 22:50:39 +02:00
Sébastien Helleu 90998bd296 relay/api: fix reconnection to remote after disconnection 2024-04-10 21:58:11 +02:00
Sébastien Helleu 976e5e8ae4 relay/api: free hook_url_handshake when disconnecting from remote 2024-04-10 21:57:00 +02:00
Sébastien Helleu f40f3cfa40 relay/api: add tags in lines displayed in remote buffers 2024-04-10 20:57:16 +02:00
Sébastien Helleu 5046a9b596 relay/api: fix decoding of large websocket frames in remote client (closes #2107) 2024-04-09 13:32:34 +02:00
Sébastien Helleu dbf9068909 relay/api: read data on socket only if connected 2024-04-09 13:15:15 +02:00
Sébastien Helleu e8081fe4f7 relay/api: free frames after use 2024-04-09 13:13:32 +02:00
Sébastien Helleu ed2becf8fe relay: free frames only if they were allocated by function relay_websocket_decode_frame 2024-04-09 13:08:12 +02:00
Sébastien Helleu f7c27b0801 relay: free all data in remote 2024-04-09 13:02:45 +02:00
Sébastien Helleu fadf9c47c9 relay/api: use function asprintf in JSON send functions 2024-04-08 19:12:33 +02:00
Sébastien Helleu a3c9a5b897 relay: fix build when CJSON is disabled 2024-04-08 07:32:03 +02:00
Sébastien Helleu 2fe215276e core: add version 4.2.2 in ChangeLog and release notes 2024-04-07 19:04:08 +02:00
Sébastien Helleu 419515845d relay: simplify function relay_auth_check_hash_sha 2024-04-07 17:54:28 +02:00
Sébastien Helleu 5eaac71d25 relay/api: use function asprintf to build string with salt and password 2024-04-07 17:53:42 +02:00
Sébastien Helleu fd5f42dc06 relay/api: fix authentication with remote using hash algorithm "sha256" or "sha512" 2024-04-07 17:29:35 +02:00
Sébastien Helleu ec8c4cc042 relay/api: use function asprintf to build key and check websocket reply 2024-04-07 17:22:03 +02:00
Sébastien Helleu 86dea12b71 tests: fix relay/api tests on group and nick colors 2024-04-07 17:22:03 +02:00
Sébastien Helleu ec3b3d47be relay/api: convert group/nick color names to the real color code 2024-04-07 16:59:45 +02:00
Sébastien Helleu 8cb302e600 relay: add example with "api" protocol in /help relay (issue #2066) 2024-04-07 15:33:41 +02:00
Sébastien Helleu eacd0002dd relay: add missing line for "api" protocol in /help relay (issue #2066) 2024-04-07 15:33:36 +02:00
Sébastien Helleu 91a9af72b1 doc: generate doc for all commands except default aliases 2024-04-07 15:28:34 +02:00
Sébastien Helleu cb6c2fd637 core: update French translations (issue #2066) 2024-04-07 14:51:09 +02:00
Sébastien Helleu ef12c93f1b relay: improve messages displayed (issue #2066) 2024-04-07 14:49:12 +02:00
Sébastien Helleu 14beee8a91 relay/api: rename field "nicks" to "nicklist" in GET /api/buffers 2024-04-07 13:18:14 +02:00
Sébastien Helleu 7c2f44e74e relay/api: add nicklist group and nick id in response to GET /api/buffers (issue #2081) 2024-04-07 13:18:14 +02:00
Sébastien Helleu 89fe540b53 core: add unique "id" in nicklist group and nick (issue #2081)
The id is a "long long" variable with the current time (microseconds
precision).

It is guaranteed to be unique for all groups and nicks inside the buffer, and
the same number is never used again in the same buffer, during the lifetime of
the process.

It persists and is unchanged after `/upgrade`.
2024-04-07 13:18:14 +02:00
Sébastien Helleu 40a68549b5 relay: set default value of undefined remote options to empty string instead of NULL (issue #2066)
This fixes the websocket connection to remote that is not initiated after the
successful handshake with the remote relay/api.
2024-04-07 13:18:14 +02:00
Sébastien Helleu a499b50b7b relay: add synchronization with remote and handler for events received (issue #2066) 2024-04-07 13:18:14 +02:00
Sébastien Helleu b6647004a5 relay: do not share content of any relay buffer in api and weechat protocols (issue #2066)
This is to prevent infinite loop when connected to a remote which is the
weechat instance itself.
2024-04-07 13:18:14 +02:00
Sébastien Helleu 2cf66de423 api: add function "asprintf" 2024-04-07 13:18:13 +02:00
Sébastien Helleu 08bc6404eb doc/api: fix typo: "formattée" -> "formatée" 2024-04-07 13:18:13 +02:00
Sébastien Helleu 4adb64284b buffer: add property input_get_any_user_data in buffer (issue #2066)
This allows buffers to get any user input, including commands, that are sent to
the buffer callback instead of being executed on the buffer.
2024-04-07 13:18:13 +02:00
Sébastien Helleu 3cce916035 relay/api: add fields "displayed" and "notify_level" in lines returned (issue #2066) 2024-04-07 13:18:13 +02:00
Sébastien Helleu 64db1b958d relay/api: replace direct access to JSON number value by call to function cJSON_GetNumberValue() (issue #2066) 2024-04-07 13:18:13 +02:00
Sébastien Helleu cb785d5035 relay/api: add "request" and "request_body" in response when connected via websocket (issue #2066) 2024-04-07 13:18:13 +02:00
Sébastien Helleu 9d7e887d8e relay/api: add "body_type" in response when a body is set and connected via websocket (issue #2066) 2024-04-07 13:18:13 +02:00
Sébastien Helleu 643adecff5 relay: add option send in command /remote (issue #2066)
This can be used to send raw JSON data encapsulated in a websocket frame to the
remote.

Example: /remote send test {"request":"GET /api/version"}
2024-04-07 13:18:13 +02:00
Sébastien Helleu 4460f92727 relay: stop URL address before the first question mark if colon is not found (issue #2066) 2024-04-07 13:18:13 +02:00
Sébastien Helleu f507be4128 tests: add tests on relay remote functions (issue #2066) 2024-04-07 13:18:13 +02:00
Sébastien Helleu a3f3c9d09c relay: check that parameter ws_deflate is not NULL in function relay_websocket_deflate_free (issue #2066) 2024-04-07 13:18:13 +02:00
Sébastien Helleu 90b855e1aa relay: add connection to remote (issue #2066)
Connection to remote:

- handshake: offer support for all supported hash algorithms
- network connect with a socket
- upgrade to websocket and authenticate with remote (password/TOTP)
- check websocket response
- get list of buffers (not used yet)

Note: connection to remote with TLS or a proxy is not yet supported.
2024-04-07 13:18:13 +02:00
Sébastien Helleu fd32192464 relay: add option disconnect in command /remote (issue #2066) 2024-04-07 13:18:10 +02:00
Sébastien Helleu c2343ecb74 relay: add functions to parse HTTP response (issue #2066) 2024-04-07 13:16:50 +02:00
Sébastien Helleu c4c220f0a3 relay: add proxy option in remote (issue #2066) 2024-04-07 13:16:50 +02:00
Sébastien Helleu 3f993f9422 relay/api: fix style (issue #2066) 2024-04-07 13:16:50 +02:00
Sébastien Helleu 786f889251 relay: add command /remote, add remote configuration in relay.conf (issue #2066) 2024-04-07 13:16:47 +02:00
Sébastien Helleu a89bc85dc0 core: update ChangeLog 2024-04-06 22:47:38 +02:00
Sébastien Helleu 40bfded594 irc: fix display of reply for CTCP request received on a channel when capability echo-message is enabled 2024-04-06 22:44:04 +02:00
Sébastien Helleu 2c3c9a3ee7 tests: rename variable "i" to "echo_message" 2024-04-06 18:29:42 +02:00
Sébastien Helleu 74729ce677 irc: display CTCP reply to a nick in server buffer instead of channel
When a CTCP request is received on a channel, WeeChat replies to the nick and
it is now displayed in the server buffer instead of the channel, as the target
is a nick and not a channel.
2024-04-06 16:42:15 +02:00
Sébastien Helleu d81170b010 tests: add extra tests on received IRC CTCP messages 2024-04-06 16:37:40 +02:00
Sébastien Helleu f3f9dc388f core: remove whitespace 2024-04-01 22:23:48 +02:00
Sébastien Helleu 7e997f87e8 core: add cast to "const char *" for hashtable value 2024-04-01 21:48:11 +02:00
Sébastien Helleu 965beb37de core: fix print of pointer values 2024-04-01 21:08:52 +02:00
Mario Campos a7c92e2d24 ci: add CodeQL code scanning (closes #2102) 2024-04-01 18:42:05 +02:00
Sébastien Helleu 1fb6fda89b relay: rename function relay_api_search_buffer_id_name to relay_api_protocol_search_buffer_id_name 2024-03-29 13:02:45 +01:00
Nils Görs a23b5b5a37 core: update German translations, fixed typo 2024-03-28 13:12:19 +01:00
Sébastien Helleu acef7dd317 relay: move assignment after comment with important note 2024-03-26 21:22:55 +01:00
Sébastien Helleu 3d8607673e relay: fix typo in comment 2024-03-26 21:22:15 +01:00
Sébastien Helleu 5a3dff1b97 relay: fix typo in comment 2024-03-26 20:23:10 +01:00
Sébastien Helleu 372ffc1690 irc: fix error displayed on connection in case of insufficient memory 2024-03-26 20:22:50 +01:00
Sébastien Helleu fd06c67b58 relay: add size for array relay_auth_password_hash_algo_name 2024-03-26 10:40:38 +01:00
Nils Görs 0778d37924 core: update German translations 2024-03-26 09:27:00 +01:00
Sébastien Helleu 6e5eb5eb25 fset: fix typo in /help fset 2024-03-26 09:21:04 +01:00
Sébastien Helleu 2f5936bc9f relay: set the last IRC client disconnection time only after a successful connection (closes #2103) 2024-03-26 08:04:49 +01:00
Sébastien Helleu 3db4dd2790 fset: display number of commands executed in imported file, improve errors displayed 2024-03-26 07:46:35 +01:00
Sébastien Helleu 26630ada2d fset: add option -import in command /fset 2024-03-25 21:00:42 +01:00
Sébastien Helleu 8482e14630 core: display a specific message when the value of option is unchanged after /set command 2024-03-25 12:06:59 +01:00
Nils Görs a7f8c32797 core: update German translations 2024-03-25 11:44:01 +01:00
Sébastien Helleu 9bc4352089 core: fix tests on function strftimeval on Alpine 2024-03-24 20:56:29 +01:00
Sébastien Helleu 907643bc9c core: add option weechat.completion.case_sensitive 2024-03-24 15:40:06 +01:00
Sébastien Helleu 947155f325 doc/user: fix typo in trigger regex replace ${re:+} 2024-03-21 23:04:18 +01:00
Sébastien Helleu 59d8857646 doc/user: add missing ${re:#} and ${re:repl_index} in trigger regex replace 2024-03-21 22:55:28 +01:00
Sébastien Helleu d6386cd364 doc/api: fix style in example ${re:+} 2024-03-21 22:43:35 +01:00
Nils Görs 7d5503e84b core: update German translations 2024-03-20 09:56:19 +01:00
Sébastien Helleu 762d71012a script: add option enable in command /script, improve error displayed when download of scripts is disabled 2024-03-19 20:45:22 +01:00
Sébastien Helleu 7aa5d718a8 core: send signal "hotlist_changed" only if the order of hotlist has changed after sort (issue #2097) 2024-03-18 21:45:47 +01:00
Sébastien Helleu 77bc38d21d core: reduce number of re-sort of hotlist (issue #2097)
Restore original signals caught: "buffer_moved" and "buffer_closed", and the
signal "buffer_localvar_*" is added so that any local variable
added/changed/removed triggers a re-sort of hotlist.
2024-03-18 21:44:23 +01:00
Sébastien Helleu 34a72ac02e relay/api: add GET /api/hotlist 2024-03-17 20:13:19 +01:00
Sébastien Helleu 0b0ab94aa3 tests/gui: add tests on hotlist functions 2024-03-17 15:00:00 +01:00
Sébastien Helleu c516ff64f2 tests/scripts: make tests fail if a compiled scripting plugin fails to load 2024-03-17 13:45:39 +01:00
Sébastien Helleu 1f47e7c4f8 tests: add missing include of string.h in relay API protocol tests 2024-03-17 10:47:46 +01:00
Nils Görs f7b8e81941 core: update German translations 2024-03-16 22:57:03 +01:00
Sébastien Helleu e29f496a96 core: optimize sort of hotlist
Entries are not duplicated any more.
2024-03-16 22:25:51 +01:00
Sébastien Helleu 55203680ba core: don't resort hotlist when signal "hotlist_changed" is sent 2024-03-16 22:25:45 +01:00
Sébastien Helleu c05b228078 core: sort hotlist and remove buffer even while upgrading 2024-03-16 21:33:08 +01:00
Sébastien Helleu d462667ee6 core: fix crash on /upgrade when hotlist contains buffers that are closed 2024-03-16 17:24:12 +01:00
Sébastien Helleu 8eafc0624c core: resort hotlist on any buffer signal (issue #2097) 2024-03-16 14:43:53 +01:00
Sébastien Helleu 29b502a06a buflist: fix help on option buflist.look.sort (issue #2097) 2024-03-16 14:14:28 +01:00
Sébastien Helleu 25a317280f core: fix typo in option weechat.look.hotlist_sort: time.usec -> time_usec (issue #2097) 2024-03-16 14:08:07 +01: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 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 41fb29bbd0 core: convert option weechat.look.hotlist_sort to a list of fields (closes #2097) 2024-03-15 21:44:14 +01:00
Sébastien Helleu ea86f75319 tests: add hdata tests with struct timeval 2024-03-15 21:32:40 +01:00
Sébastien Helleu c98d12b4af core: rename variables with creation time in hdata "hotlist"
Variables renamed:

- "creation_time.tv_sec" -> "time"
- "creation_time.tv_usec" -> "time_usec"
2024-03-15 21:32:37 +01:00
Sébastien Helleu 305b046370 core: add macro to define hdata variable with different field and name 2024-03-15 21:32:35 +01:00
Sébastien Helleu 080eecef2c core: add missing hdata name "buffer" in hdata "hotlist" 2024-03-15 21:32:32 +01:00
Sébastien Helleu fe01faa9ab core: update ChangeLog (issue #2093) 2024-03-13 13:51:22 +01:00
Trygve Aaberge 811390ebb1 core: make search_stop scroll to search start position
When you run /input search_stop it should scroll to the scroll position
the buffer was at before starting the search, rather than to the bottom
of the buffer.

Fixes a regression introduced in commit b83b428c5c

Fixes #2093
2024-03-13 13:50:04 +01:00
Sébastien Helleu dd128dace8 core: update ChangeLog (closes #1906) 2024-03-13 13:14:40 +01:00
wfrsk 4d83adc7d8 lua: fix code style 2024-03-13 13:10:07 +01:00
wfrsk fd541395f4 lua: do not depend on an init script + rework weechat_lua_output 2024-03-13 13:02:29 +01:00
wfrsk 97f87932fe lua: do not load the debug library 2024-03-13 13:02:29 +01:00
wfrsk b0581ac1f8 lua: do not depend on luaL_openlibs 2024-03-13 13:02:29 +01:00
Sébastien Helleu 3b9e2f480d tests: reorder tests on core directory functions 2024-03-13 13:01:50 +01:00
Mario Campos f76d236015 GUI: fix potential integer overflow bugs by casting to size_t 2024-03-13 09:09:29 +01:00
Mario Campos 1797fe18a3 fset: replace call to chmod() by fchmod() in the export function 2024-03-13 07:19:55 +01:00
Mario Campos 63733d81d8 core: open the file exclusively in compress file functions
This also removes the unnecessary call to access() function before the call to
fopen().
2024-03-13 07:17:02 +01:00
Mario Campos 23e0533ea1 core: remove unnecessary call to stat() in hash file function
The call to fopen() will fail anyway if the file doesn't exist.
2024-03-13 07:15:12 +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 bb346f8c6c relay/api: replace "context" by "buffer_id" (issue #2081) 2024-03-12 20:37:52 +01:00
Sébastien Helleu 48ca390f79 relay/api: add support of buffer id in POST /api/input (issue #2081) 2024-03-12 20:37:51 +01:00
Sébastien Helleu aa989767a1 relay/api: add support of buffer id in GET /api/buffers (issue #2081) 2024-03-12 20:37:50 +01:00
Sébastien Helleu 7ad3c1979c tests/relay/api: add buffer id in test of buffer to json function (issue #2081) 2024-03-12 20:37:48 +01:00
Sébastien Helleu 99f0a2e002 tests/relay/api: add tests on API protocol 2024-03-12 20:37:48 +01:00
Sébastien Helleu 6325add517 tests/relay/irc: use port 9001 for server relay 2024-03-12 20:37:48 +01:00
Sébastien Helleu e791535773 relay: add a fake send function in client
This will be used in unit tests to get the data that is sent to clients.
2024-03-12 20:37:48 +01:00
Sébastien Helleu 0ac377d306 relay/api: add a global variable to customize the command delay in POST /api/input
The user can not change this, the variable will be set to 0 in unit tests to
execute the command immediately.
2024-03-12 20:37:48 +01:00
Sébastien Helleu 59c977ddc9 relay/api: check that "request" field is a string in JSON received (websocket connection) 2024-03-12 20:37:48 +01:00
Sébastien Helleu 4f9bcc73ca relay/api: allow POST /api/handshake without a body 2024-03-12 20:37:48 +01:00
Sébastien Helleu 8c5db76271 relay/api: fix error displayed when buffer is not found in POST /api/input 2024-03-12 20:37:48 +01:00
Sébastien Helleu 80709292d4 tests/relay/irc: fix comments 2024-03-12 20:37:48 +01:00
Sébastien Helleu f2f6afb59c tests/relay/irc: remove unused calls to record functions 2024-03-12 20:37:48 +01:00
Sébastien Helleu 3045322822 relay/weechat: add buffer id in signals sent to clients (issue #2081) 2024-03-12 20:37:47 +01:00
Sébastien Helleu 29d4bc3102 relay/api: add buffer is in response to GET /api/buffers (issue #2081) 2024-03-12 20:37:45 +01:00
Sébastien Helleu f9e8c7faab api: allow search by buffer id in function buffer_search (issue #2081) 2024-03-12 20:37:44 +01:00
Sébastien Helleu 5af0415508 core: add function gui_buffer_search_by_id (issue #2081) 2024-03-12 20:37:42 +01:00
Sébastien Helleu c71e6a50eb core: rename function gui_buffer_search_by_name to gui_buffer_search (issue #2081) 2024-03-12 20:37:40 +01:00
Sébastien Helleu 4ffd62b206 core: add unique "id" in buffer (issue #2081)
The id is a "long long" variable with the current time (microseconds
precision).

It is guaranteed to be unique for all buffers, and the same number is never
used again, during the lifetime of the process.

It persists and is unchanged after `/upgrade`.
2024-03-12 20:37:36 +01:00
Sébastien Helleu afc4dff71b core: use dynamic string in function infolist_fields 2024-03-12 20:37:36 +01:00
Sébastien Helleu 9e0dd18152 api: add function "hdata_longlong" (issue #2081) 2024-03-12 20:37:11 +01:00
Nils Görs c85b57b8b3 core: update German translations 2024-03-12 17:16:36 +01:00
Sébastien Helleu 34e99987bf doc/user: clarify what is ${nick} in trigger IRC signal data 2024-03-11 07:20:38 +01:00
Sébastien Helleu 1ab62e37cb api: add modifier "color_decode" to decode WeeChat colors with a replacement string 2024-03-10 09:31:32 +01:00
Sébastien Helleu 3f49b1b44a core: use whole replacement string instead of first char in function gui_color_decode 2024-03-10 09:21:28 +01:00
Sébastien Helleu 431cf23a0c exec: remove trailing space on buffers with free content when line numbers are not displayed 2024-03-08 08:19:20 +01:00
Sébastien Helleu a6c509611a exec: add missing exec tags in lines of buffers with free content (closes #2086) 2024-03-07 21:52:21 +01:00
Nils Görs ec56a1103f doc: update German documentation 2024-03-07 12:04:05 +01:00
Nils Görs ccc5c75a03 core: update German translations 2024-03-07 11:52:22 +01:00
Sébastien Helleu 732887cef7 doc/plugin: add missing translation comments 2024-03-07 07:32:20 +01:00
Sébastien Helleu cb6ecb6818 core: check if malloc.h is present, independently of function malloc_trim 2024-03-06 23:09:00 +01:00
Sébastien Helleu 70828a7dd1 irc: add option -all in command /allchan, do not execute command on parted channels by default (closes #2085) 2024-03-06 23:03:02 +01:00
Sébastien Helleu ab2e29fb0f core: include header malloc.h only if function malloc_trim is available 2024-03-06 22:52:43 +01:00
Sébastien Helleu 8c1df496ae core: update translations 2024-03-06 22:41:42 +01:00
Sébastien Helleu 68598de958 core: check that function malloc_trim is available, display an error if not available 2024-03-06 22:36:37 +01:00
Sébastien Helleu a1bee89ecc core: add option malloc_trim in command /sys 2024-03-06 22:00:48 +01:00
Sébastien Helleu 7385f767e3 irc: use API config functions to get inherited value (server options) 2024-03-06 21:32:34 +01:00
Sébastien Helleu 5c88ee9c45 core: add support of SGR mouse events, remove option weechat.look.mouse_timer_delay (closes #2082) 2024-03-06 20:33:17 +01:00
Nils Görs a8a0053211 core: update German translations 2024-03-06 11:17:38 +01:00
Sébastien Helleu 12521898f9 doc/scripting: auto-generate list of scripting functions and constants from Python API 2024-03-05 19:58:21 +01:00
Sébastien Helleu 6c72d6f66d python: add infolists "python_function" and "python_constant" 2024-03-05 19:56:35 +01:00
Sébastien Helleu 81599b88d4 plugins: move scripting API constants to plugin-script.c 2024-03-05 19:52:21 +01:00
Sébastien Helleu 84437ab672 tests: add tests on scripting API constants 2024-03-05 19:52:21 +01:00
Sébastien Helleu 014dc845e8 doc: move script doc/python_stub.py to tools/generate_python_stub.py 2024-03-05 19:52:21 +01:00
Sébastien Helleu 361d55d9d7 api: add functions config_{boolean|integer|string|color|enum}_inherited in scripting API 2024-03-05 19:52:21 +01:00
Sébastien Helleu 8f0b3ab9c7 tests/scripts: fix representation of None Python value in generated scripts 2024-03-05 19:51:15 +01:00
Sébastien Helleu 1451e12c78 core: refactor functions that read values of config options 2024-03-05 19:51:15 +01:00
Sébastien Helleu 6817542f95 tests: add tests on functions that read values of config options 2024-03-05 19:51:15 +01:00
Sébastien Helleu c3eff15a56 api: add functions config_option_get_string and config_option_get_pointer in scripting API 2024-03-05 19:51:15 +01:00
DasBrain 0bf560f9b7 tcl: simplify return macros 2024-03-05 19:15:19 +01:00
DasBrain ff2189f3d9 tcl: refactor creation of constants 2024-03-05 19:15:19 +01:00
Nils Görs 439a2d9c7a core: update German translations 2024-02-26 15:16:42 +01:00
Sébastien Helleu 6d549d0da9 relay/api: rename "salt" to "timestamp" 2024-02-26 12:56:44 +01:00
Sébastien Helleu 22686da40c doc/api: fix string format in calls to weechat.prnt (examples in Python) 2024-02-25 17:23:09 +01:00
Sébastien Helleu f649ccc3b8 python: fix truncation of unsigned long long integer returned by function string_parse_size 2024-02-25 17:07:11 +01:00
Sébastien Helleu c5800178a0 php: remove constants that must not be visible in scripts 2024-02-25 16:32:21 +01:00
Sébastien Helleu c5887354bd tcl: fix truncation of long integer returned by function hdata_long 2024-02-25 16:12:54 +01:00
Sébastien Helleu 3f08785aee core: add missing mouse event "alt-ctrl-button3" 2024-02-24 22:05:14 +01:00
Sébastien Helleu 191701a5f3 doc/user: fix order of mouse event modifiers
Key "alt" is always before "ctrl".
2024-02-24 18:53:46 +01:00
Sébastien Helleu d52fea1d5e core: fix typo in comment 2024-02-24 18:50:26 +01:00
Sébastien Helleu 24f0e95de7 core: add missing mouse event "alt-ctrl-button2" 2024-02-24 18:35:21 +01:00
Ivan Pešić 40deb493d5 doc: Update Serbian translation 2024-02-23 08:22:26 +01:00
Ivan Pešić ef2ef9846d core: Update Serbian translation
Some typos are corrected
2024-02-23 08:22:26 +01:00
Trygve Aaberge e02ee703f0 docs: fix some typos in documentation and comments 2024-02-23 08:21:49 +01:00
Sébastien Helleu 27331dec5e core: add contributor 2024-02-22 19:30:53 +01:00
Johannes Kuhn db6b96f629 tcl: make plugin compatible with Tcl 9.0
Replace calls to Tcl_GetStringFromObj by Tcl_GetString.
2024-02-22 19:30:53 +01:00
Sébastien Helleu ef5ebc19e9 fset: allow filename starting with "~" in command /fset -export 2024-02-21 22:05:16 +01:00
Sébastien Helleu 76998665f4 script: always display list of scripts when searching scripts with /script search (closes #2077) 2024-02-21 21:36:52 +01:00
Sébastien Helleu b5a32c0fa9 script: fix default mouse keys (closes #2076)
Some parameters of command `/script` were renamed in commit
85b5bacfe3 but the default mouse keys were not
changed and still using the old parameters names.
2024-02-21 21:10:25 +01:00
Nils Görs 4c5f98946a core: update German translations 2024-02-19 20:07:29 +01:00
Sébastien Helleu a44ffa147f script: add info "script_loaded" 2024-02-19 18:33:36 +01:00
Sébastien Helleu a167322d8b api: add info "plugin_loaded" 2024-02-19 18:29:21 +01:00
Sébastien Helleu f19808cedd tests: add tests on "api" relay (general functions and messages) 2024-02-18 23:42:22 +01:00
Sébastien Helleu 0f30a4e020 relay: move functions to get URL parameters from api to relay-http.c, add tests 2024-02-18 23:13:20 +01:00
Sébastien Helleu 9b9b36bb02 tests: fix free of HTTP request 2024-02-18 23:12:56 +01:00
Sébastien Helleu c4ac9046b2 relay/api: fix comment of function relay_api_protocol_get_param_boolean 2024-02-18 18:52:57 +01:00
Sébastien Helleu 61a8e4e27e relay/api: add key "visible" with boolean value in nick and group objects 2024-02-18 18:52:52 +01:00
Sébastien Helleu 780be1e1b7 relay/api: rename key "index" to "y" in line object 2024-02-18 18:24:19 +01:00
Nils Görs 4858d88567 core: update German translations 2024-02-17 17:31:57 +01:00
Sébastien Helleu 6659bf1642 core: display the 3 variants for "${split}" and "${split_shell}" in /help eval 2024-02-17 13:23:38 +01:00
Sébastien Helleu b3a214252b core: add "${hl:string}" and "${raw_hl:string}" in /eval completions 2024-02-17 13:22:40 +01:00
Sébastien Helleu 4c6db9711a core: add the different variants for "chars" in /eval completions 2024-02-17 13:22:05 +01:00
Sébastien Helleu 213483e678 core: add the different bases in /eval completions for "base_decode" and "base_encode" 2024-02-17 13:20:17 +01:00
Sébastien Helleu 9b9e0f042c core: replace "xxx" by "string" and "number" by "N" in /eval completions 2024-02-17 13:09:20 +01:00
Sébastien Helleu 831dcac808 core: list operators by order of priority in /help eval (issue #2005) 2024-02-17 10:58:40 +01:00
Sébastien Helleu 4e0f7dfd25 core: reintroduce help on the operators in /help eval (issue #2005) 2024-02-17 10:54:25 +01:00
Sébastien Helleu a35ac5e8d9 core: reintroduce help on the variables in /help eval (issue #2005) 2024-02-17 10:08:12 +01:00
Sébastien Helleu 90c87e7553 irc: add missing tags on self action messages when capability echo-message is enabled (closes #2074) 2024-02-16 20:58:31 +01:00
Sébastien Helleu 162bcb2622 irc: don't strip monospace color code 0x11 from incoming messages (closes #2073) 2024-02-16 19:22:28 +01:00
Nils Görs 8b6452eb91 core: update German translations 2024-02-12 10:56:35 +01:00
Sébastien Helleu e4e6fde80f core: add option -s in command /command to execute multiple commands separated by semicolons 2024-02-11 21:48:31 +01:00
Sébastien Helleu e0ec8da76a core: move lines from 4.1.0 to 4.2.0 in ChangeLog 2024-02-11 14:32:29 +01:00
Sébastien Helleu 635dd818b5 core: add again line about function hook_url in ChangeLog (issue #1723) 2024-02-11 14:22:12 +01:00
Sébastien Helleu 0cfc61a17e irc: add server option "autojoin_delay" (closes #862)
The server option "autojoin_delay" adds a delay before autojoin.

The server option "command_delay" is now used to add a delay before the
execution of the command.

On upgrade from an old version, the option "command_delay" is copied to
"autojoin_delay" (in old versions, "command_delay" was applied after the
execution of command and before the autojoin).
2024-02-11 09:12:57 +01:00
Sébastien Helleu f153b6e6c3 relay: change message displayed when there is not enough memory for websocket frame 2024-02-11 08:53:29 +01:00
Sébastien Helleu 9ce435fa5e relay: add WeeChat version in config update callback 2024-02-11 08:47:56 +01:00
Sébastien Helleu 5a00f1a138 irc: add WeeChat version in config update callback 2024-02-11 08:41:15 +01:00
Sébastien Helleu 9eb3403008 alias: add WeeChat version in config update callback 2024-02-11 08:40:49 +01:00
Sébastien Helleu e191d9225b core: add WeeChat version in config update callback 2024-02-11 08:40:25 +01:00
Sébastien Helleu e08f6aab55 core: add issue #1903 in ChangeLog 2024-02-11 08:39:06 +01:00
Sébastien Helleu 19bf6c9672 tests: fix compiler warning on empty snprintf format
This fixes the following warning:

test-core-dir.cpp:178:36: warning: zero-length gnu_printf format string [-Wformat-zero-length]
2024-02-10 19:02:17 +01:00
Sébastien Helleu e9dbf23a18 trigger: fix memory leak when adding a new trigger with /trigger command 2024-02-10 17:50:24 +01:00
Sébastien Helleu caa51160da core: remove trailing directory separators in home directories (closes #2070) 2024-02-10 10:23:40 +01:00
Sébastien Helleu 5c6e6f43d1 relay: disable "permessage-deflate" websocket extension when option relay.network.compression is set to 0 2024-02-04 18:54:56 +01:00
Sébastien Helleu 0414c139b0 relay: fix decoding of websocket frame when a partial frame is received 2024-02-04 18:52:00 +01:00
Sébastien Helleu b7ecf93a22 relay: fix websocket decompression when output buffer is not large enough 2024-02-04 18:23:40 +01:00
Sébastien Helleu 162dc87796 scripts: fix crash on script unload when a hook is created in a buffer close callback (closes #2067) 2024-02-04 13:57:35 +01:00
Sébastien Helleu 7f2f60dab0 ci: remove tests on macOS 11 2024-02-03 22:50:27 +01:00
Sébastien Helleu 820a3e8767 relay: free ws_deflate when http request is freed 2024-02-03 11:30:35 +01:00
Sébastien Helleu 052db75805 relay/api: add extra check on JSON types in handshake and input resources (issue #2066) 2024-02-03 08:38:57 +01:00
Sébastien Helleu 5c869722c1 core: disable CJSON in Debian/buster, Raspbian/buster and Ubuntu/focal builds (issue #2066)
This is because in these versions the libcjson-dev package doesn't provide
pkg-config file.
2024-02-02 08:33:06 +01:00
Sébastien Helleu bc464679a7 relay: fix build when CJSON is disabled (issue #2066) 2024-02-02 07:44:57 +01:00
Sébastien Helleu 86685f4af4 core: update translations (issue #2066) 2024-02-01 21:39:24 +01:00
Sébastien Helleu 6acf1af828 relay/api: add handshake resource, without authentication required (issue #2066) 2024-02-01 21:39:23 +01:00
Sébastien Helleu 3f902dba28 relay: check that request is not NULL before compressing data (issue #2066) 2024-02-01 21:39:23 +01:00
Sébastien Helleu de72fe1db5 relay/api: fix send of responses 400 and 404 in case of error (issue #2066) 2024-02-01 21:39:23 +01:00
Sébastien Helleu 89aeb03a13 relay: remove request from some function arguments (issue #2066) 2024-02-01 21:39:23 +01:00
Sébastien Helleu 83567fd871 relay: allow password hash authentication in api relay, add option relay.network.time_window (issue #2066) 2024-02-01 21:39:23 +01:00
Sébastien Helleu 70907fc169 relay: rename option relay.weechat.commands to relay.network.commands (issue #2066) 2024-02-01 21:39:23 +01:00
Sébastien Helleu f126255d6a core: add support of base64url in encode/decode functions (issue #2066) 2024-02-01 21:39:21 +01:00
Sébastien Helleu 6cfb31c306 relay: add support of websocket extension "permessage-deflate" (closes #1549)
This extension is used to compress and decompress websocket frames (using
the DEFLATE algorithm, with zlib).
2024-02-01 21:38:53 +01:00
Sébastien Helleu 8971fc069a relay: add "api" protocol (HTTP REST API) (issue #2066) 2024-02-01 21:38:49 +01:00
Krzysztof Korościk 179d53a12e po: updated Polish translations 2024-01-31 21:16:52 +01:00
Sébastien Helleu 2469dc6df9 core: use function util_strftimeval in evaluation of expression date:xxx 2024-01-27 16:53:53 +01:00
Sébastien Helleu e3af6a91d4 api: add support of specifier %! for timestamp in function util_strftimeval 2024-01-27 16:53:53 +01:00
Nils Görs 73a1c9753a core: update German translations 2024-01-27 14:35:34 +01:00
Sébastien Helleu 1ac38a4cf9 core: add support of (?i) for argument "name" in /help buffer 2024-01-24 20:58:44 +01:00
Sébastien Helleu 09e01133d2 core: allow case insensitive search of partial buffer name with (?i)name in command /buffer 2024-01-24 20:54:41 +01:00
Sébastien Helleu b7735632b8 tests: add tests on buffer properties "opening" and "type" 2024-01-24 20:47:51 +01:00
Sébastien Helleu da79574ca7 core: return 0 in gui_buffer_is_main if plugin_name or name is NULL 2024-01-24 19:42:08 +01:00
Sébastien Helleu 971d5b6b64 doc/dev: update rules for indentation in C sources 2024-01-22 20:59:51 +01:00
Sébastien Helleu 88d391bca3 core: add version 4.2.1 in ChangeLog and release notes 2024-01-22 20:45:25 +01:00
Sébastien Helleu fe52f7c78c tests: remove extra empty line 2024-01-22 13:58:33 +01:00
Sébastien Helleu 06b4e46977 irc: fix random date displayed when a received message contains tags but no "time" (closes #2064) 2024-01-22 13:18:25 +01:00
Sébastien Helleu 750e677490 Version 4.3.0-dev 2024-01-21 09:36:44 +01:00
Sébastien Helleu 017d9bd975 Version 4.2.0 2024-01-21 09:33:14 +01:00
Sébastien Helleu 05fdb2929f tests: add missing format string in calls to snprintf 2024-01-21 09:17:11 +01:00
Sébastien Helleu d5b61f565e core: add versions 4.0.8 and 4.1.3 in ChangeLog and release notes 2024-01-20 09:27:35 +01:00
Ivan Pešić ff1c3d37d1 core: Update Serbian messages 2024-01-15 10:25:17 +01:00
Ivan Pešić f5a0a6c507 doc: Update Serbian translation 2024-01-15 10:25:17 +01:00
Nils Görs bee3fb311b core: update German translations 2024-01-15 07:44:28 +01:00
Sébastien Helleu 3efcdbd521 doc/dev: remove conflict marker in Serbian doc 2024-01-14 00:29:47 +01:00
Sébastien Helleu 869fba9f74 irc: add tests on info functions (issue #2059) 2024-01-12 17:58:36 +01:00
Sébastien Helleu becdf76224 irc: check if arguments are not NULL in some infos
Affected infos:

- irc_server_isupport
- irc_server_isupport_value
- irc_server_cap
- irc_server_cap_value
2024-01-12 17:57:50 +01:00
Sébastien Helleu 8e252955da irc: fix info "irc_is_message_ignored" (closes #2059) 2024-01-12 17:53:19 +01:00
Sébastien Helleu 71fee810c9 doc/api: add missing properties in functions buffer_get_integer and buffer_get_string 2024-01-06 20:46:30 +01:00
Sébastien Helleu d8704d5c74 core: add variable "opening" in buffer, do not send buffer signals when the buffer is opening 2024-01-06 19:26:39 +01:00
Krzysztof Korościk 6efa574483 doc: update copyright dates 2024-01-06 16:23:22 +01:00
Krzysztof Korościk 4ffe67eafd po: updated polish translation 2024-01-06 16:21:25 +01:00
Sébastien Helleu b5ea82da48 relay/weechat: unhook hook_timer_nicklist when synchronization is stopped 2024-01-06 10:38:54 +01:00
Sébastien Helleu 5df85c7a53 relay: add global relay hdata variables 2024-01-06 09:56:23 +01:00
Sébastien Helleu 57a206287a irc: fix display of self messages in case of message split failure
When the message sends inconsistent max lengths in message 005, the split of
self message fails and causes a display issue: the channel name is displayed
with the message:

  nick | #channel :this is a test

instead of:

  nick | this is a test
2024-01-05 21:36:58 +01:00
Sébastien Helleu eb8ca14d83 relay: fix display of raw messages (issue #649) 2024-01-05 20:30:02 +01:00
Sébastien Helleu 9d9a47f111 core: add support of microseconds in command /print -date (issue #649) 2024-01-05 19:31:42 +01:00
Sébastien Helleu 4a1e5e7eaa irc: remove function irc_protocol_parse_time, use API function weechat_util_parse_time (issue #649) 2024-01-05 19:28:47 +01:00
Sébastien Helleu f6ba789c3d api: add function util_parse_time (issue #649) 2024-01-05 19:09:19 +01:00
Sébastien Helleu e88882f0ae irc: display microseconds in some user messages (issue #649) 2024-01-04 22:29:30 +01:00
Sébastien Helleu 89517d44a5 relay: add microseconds in relay raw messages (issue #649) 2024-01-04 22:25:13 +01:00
Nils Görs 1875217509 doc: update German documentation 2024-01-04 09:54:04 +01:00
Nils Görs 3dbfa5350d core: update German translations 2024-01-04 09:49:21 +01:00
Sébastien Helleu eecb2a997e core: update copyright dates 2024-01-01 22:29:58 +01:00
Krzysztof Korościk 934ef60151 doc: updated polish translation 2024-01-01 18:59:58 +01:00
Krzysztof Korościk 124c5adf62 po: updated polish translation 2024-01-01 16:07:17 +01:00
Faisal N Jawdat 5c65a73432 ruby: add detection for Ruby 3.3 2023-12-26 21:08:50 +01:00
Sébastien Helleu 9fb3d3f14c core: store microseconds in buffer lines (closes #649) 2023-12-26 19:44:37 +01:00
Nils Görs 57f80a4c1f core: update German translations 2023-12-25 16:45:51 +01:00
Sébastien Helleu 5ccb0c23f9 debian: exclude directories ".git", "build" and "release" from source package 2023-12-24 18:41:38 +01:00
Sébastien Helleu 31881ebacf api: add property "type" in function buffer_get_string 2023-12-24 16:53:16 +01:00
Sébastien Helleu 28fc733aaf core: display when zstd is not available in output of /debug libs 2023-12-24 16:50:45 +01:00
Sébastien Helleu 7700228823 relay: move function to check if buffer belongs to relay 2023-12-24 16:27:51 +01:00
Sébastien Helleu 76a3f85831 core: fix typo in ChangeLog 2023-12-15 22:59:20 +01:00
Sébastien Helleu 75dc8b9d6c core: fix crash on plugin reload when using musl libs (closes #2052) 2023-12-15 22:53:51 +01:00
Sébastien Helleu 07fbd30948 tests: add missing include of string.h in plugin API info tests 2023-12-15 13:51:32 +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
Nils Görs ffa933bcf8 core: update German translations 2023-12-13 21:22:34 +01:00
Sébastien Helleu b3422b96c0 irc: add option irc.look.display_host_wallops 2023-12-10 21:13:00 +01:00
Sébastien Helleu 3db8eb65ff tests: add tests with options irc.look.display_host_{join|join_local|notice|quit} set to off 2023-12-10 21:03:33 +01:00
Ivan Pešić 73e3d0e693 doc: Update Serbian documentation 2023-12-05 22:32:18 +01:00
Ivan Pešić 4bc0fd588d core: Update Serbian translation 2023-12-05 22:32:18 +01:00
Sébastien Helleu a39a1832a1 Revert "core: fix detection of gettext headers on Darwin (closes #2031)"
This reverts commit 80fa597a71.
2023-12-04 21:21:49 +01:00
Sébastien Helleu d6ccfb5862 core: fix Polish translations 2023-12-04 21:07:46 +01:00
Sébastien Helleu 80fa597a71 core: fix detection of gettext headers on Darwin (closes #2031) 2023-12-04 21:02:26 +01:00
Krzysztof Korościk dab17e8d59 po: updated polish translation 2023-12-04 19:46:09 +01:00
Nils Görs d70ef53973 core: update German translations 2023-12-04 09:00:37 +01:00
Krzysztof Korościk 33e320ac95 po: updated part of polish translation 2023-12-04 00:04:31 +01:00
Sébastien Helleu 8c3b7b6c6e core: add versions 4.0.7 and 4.1.2 in ChangeLog and release notes 2023-12-03 19:25:20 +01:00
Sébastien Helleu 6223639b71 core: improve forms for new issues, feature requests and questions on GitHub 2023-12-03 09:49:13 +01:00
NetSysFire a788ca13d8 core: add forms for new issues, feature requests and questions on GitHub 2023-12-03 09:49:13 +01:00
Sébastien Helleu bc08d9a2b3 tests: rename tests 2023-12-02 13:32:15 +01:00
Sébastien Helleu 52f32e5612 tests: add tests on plugin config functions 2023-12-02 13:24:42 +01:00
Sébastien Helleu f4926cbd20 tests: rename file test-plugins-api-info.cpp to test-plugin-api-info.cpp 2023-12-02 13:17:47 +01:00
Sébastien Helleu ba33e1db7d tests: fix tests on function plugin_api_infolist_plugin_cb 2023-12-02 11:47:45 +01:00
Sébastien Helleu d6796edac0 tests: add tests on plugin API info functions 2023-12-02 11:40:28 +01:00
Sébastien Helleu 36b9a58c72 tests: remove unneeded constant TOTP_SECRET 2023-12-02 09:44:07 +01:00
Sébastien Helleu 038eae07bd api: add info "mouse" 2023-12-02 09:43:36 +01:00
Sébastien Helleu 445d1d0ec5 api: return NULL instead of empty infolist "key" when context is not found 2023-12-02 09:40:01 +01:00
Sébastien Helleu 51fec9257e core: check that directory is not NULL in function plugin_api_info_absolute_path 2023-12-02 09:37:22 +01:00
Sébastien Helleu de5b0aae47 core: rename variable "version" to "compilation_date" 2023-12-02 09:36:57 +01:00
Sébastien Helleu 9711d2dc76 tests: add placeholders for new functions in irc server tests 2023-12-01 07:10:36 +01:00
Nils Görs 7974f4f40a core: update German translations 2023-11-30 21:09:58 +01:00
Sébastien Helleu 22fcb91e8b irc: display messages 730/731 even if command /notify was not used (closes #2049) 2023-11-29 18:14:37 +01:00
Sébastien Helleu 0f1b18d415 core: move link to Mastodon before Diaspora* 2023-11-29 14:35:12 +01:00
Sébastien Helleu f13c5b0b51 core: fix typo in release notes 2023-11-29 14:34:55 +01:00
Sébastien Helleu 996d1def22 core: update translations (issue #1039) 2023-11-29 10:00:57 +01:00
Sébastien Helleu de82d50768 irc: remove unneeded error message when an unknown server option is read in config file (issue #1039)
This is not needed because an error is already displayed by WeeChat core and
the IRC error doesn't add anything relevant to the user.
2023-11-29 10:00:54 +01:00
Sébastien Helleu f7b7e3975a irc: add server option "anti_flood", remove server options "anti_flood_prio_{high|low}" (issue #1039)
The new option is set in milliseconds.
2023-11-29 09:49:27 +01:00
Ivan Pešić e51152e6a4 core: Update Serbian translation 2023-11-29 08:39:06 +01:00
Nils Görs 9aa9bf4c9f core: update German translations 2023-11-28 12:03:18 +01:00
Sébastien Helleu e74b5db253 irc: remove trailing "\r\n" in signals "irc_out" and "irc_outtags" when messages are queued 2023-11-26 18:58:48 +01:00
Sébastien Helleu 6d427421de irc: add option irc.look.list_buffer 2023-11-24 19:42:28 +01:00
Sébastien Helleu d4220e8144 tests: add eval tests on "raw" and "raw_hl" with escaped prefix 2023-11-24 08:04:35 +01:00
Sébastien Helleu e01fa0aac9 tests: fix tests on function string_replace_with_callback 2023-11-23 22:01:48 +01:00
Sébastien Helleu 86cf456bb7 core: fix evaluation of ${raw_hl:...} with escaped prefix inside
Now `${raw_hl:\${` returns `\${` instead of `${`.
2023-11-23 20:59:31 +01:00
Sébastien Helleu 479ab5bc58 core: evaluate expressions even when the suffix is missing (issue #2042, issue #1714) 2023-11-23 08:49:54 +01:00
Sébastien Helleu 87f74e9f95 core: add syntax highlighting in evaluation of expressions, add option weechat.color.eval_syntax_colors (issue #2042)
Syntax highlighting (raw string without evaluation): `${raw_hl:xxx}`
Syntax highlighting: `${hl:xxx}`
2023-11-23 08:49:54 +01:00
Sébastien Helleu 2b0c2747ad api: remove script hooks before buffers/bar items/configs
This prevents a crash in some scripts that could use options after they are
freed, with the call to hook config callback that has been enabled by commit
2260214797.
2023-11-21 20:57:49 +01:00
Sébastien Helleu 6b0b3996cd core: add "core" in ChangeLog 2023-11-21 07:48:35 +01:00
Krzysztof Korościk 794dc115e5 po: updated polish translation 2023-11-20 23:52:08 +01:00
Krzysztof Korościk 117efa2716 po: updated part of polish translation 2023-11-19 23:48:00 +01:00
Krzysztof Korościk b9c8f215f3 doc: updated polish translation 2023-11-19 18:09:43 +01:00
Ivan Pešić ca388bdd53 doc: Update Serbian documentation 2023-11-16 13:30:27 +01:00
Ivan Pešić 3cec88506a core: Update Serbian translation 2023-11-16 13:30:27 +01:00
Sébastien Helleu 7b86f31764 buflist: jump to previous/next buffer displayed in buflist item with ctrl+wheel up/down on a buflist item (closes #1473) 2023-11-11 21:04:21 +01:00
Nils Görs 5d38149578 core: update German translations 2023-11-11 14:19:19 +01:00
Sébastien Helleu 75582b9262 core: remove empty lines in release notes 2023-11-11 09:46:08 +01:00
Sébastien Helleu d1aeca9ca9 core: fix section titles in release notes 2023-11-11 09:44:01 +01:00
Sébastien Helleu acd67bf34d core: update translations (issue #2040) 2023-11-11 08:59:43 +01:00
Sébastien Helleu e4720e5d5b core: add search in commands history in release notes (issue #2040) 2023-11-11 08:54:30 +01:00
Sébastien Helleu f00904afaa core: split ChangeLog entry on multiple lines (issue #2040) 2023-11-11 08:54:28 +01:00
Sébastien Helleu 6f90c7ef08 core: move key ctrl+s, ctrl+u to alt+shift+U (issue #2040) 2023-11-11 08:54:26 +01:00
Sébastien Helleu 97a90ac65a core: add key ctrl+o to send command found and insert next one in input (issue #2040) 2023-11-11 08:54:24 +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
Nils Görs b2ce312e82 core: update German translations 2023-11-09 10:28:39 +01:00
Sébastien Helleu ecc900ba3a tests: add tests on IRC message 337 2023-11-07 21:58:04 +01:00
Sébastien Helleu 515d4241ad irc: fix target buffer of IRC message 337 (whois reply: "is hiding their idle time") 2023-11-07 21:50:12 +01:00
Nils Görs 977fd3b6f7 core: update German translations 2023-11-06 13:46:44 +01:00
Sébastien Helleu 252240a1b1 core: fix value of buffer variable "num_history" when the value defined in option weechat.history.max_commands is reached 2023-11-04 17:01:45 +01:00
Sébastien Helleu 11d95fce11 relay: close properly connection with the IRC client in case of server disconnection (closes #2038) 2023-11-04 08:58:19 +01:00
Sébastien Helleu 7d403d41e6 core: remove incorrect warning when binding keys F10 to F20 (closes #2039) 2023-11-04 08:36:04 +01:00
Sébastien Helleu d96a3e6b55 doc/faq: add question about key F11 2023-11-04 08:05:24 +01:00
Sébastien Helleu c90c71ea30 core: fix double call to hook config when an option is unset 2023-11-04 07:37:12 +01:00
Sébastien Helleu 028902b0e3 core: update ChangeLog 2023-11-04 00:02:12 +01:00
Sébastien Helleu 2260214797 core: call hook config when options are freed by unset or when file/section is freed
This fixes a refresh issue on the fset buffer when a plugin is unloaded: now
the options displayed that are freed are properly removed from the fset buffer.
2023-11-03 22:31:05 +01:00
Sébastien Helleu ab2684fd52 relay: change default value of option relay.network.tls_priorities to NORMAL
It is no more needed to remove `VERS-SSL3.0` because it is no longer in the
default priorities since GnuTLS 3.4.0 (released on 2015-04-08).
2023-11-03 22:01:50 +01:00
Sébastien Helleu d4cba7b7a3 irc: change default value of server option "tls_priorities" to NORMAL
It is no more needed to remove `VERS-SSL3.0` because it is no longer in the
default priorities since GnuTLS 3.4.0 (released on 2015-04-08).
2023-11-03 21:58:13 +01:00
Sébastien Helleu d90eebf6ca irc: update help on color remap options, update translations (issue #2025) 2023-11-01 14:29:25 +01:00
Sébastien Helleu f16857fc3d irc: add option irc.color.term_remap (closes #2025) 2023-11-01 13:56:40 +01:00
Sébastien Helleu 082cbe519b irc: add support of RGB colors in messages (issue #2025)
This is made using standard color code '\x04' followed by text color (RGB as
hexadecimal) and optional background (RGB as hexadecimal).
2023-11-01 13:21:06 +01:00
Sébastien Helleu 6d69cde186 core, plugins: set error to NULL before calling strtol()
This is not strictly necessary, just in case the function strtol() doesn't
update the pointer.
2023-11-01 09:53:38 +01:00
Sébastien Helleu f53983bc79 core: display an error with command /history N when N is not a valid integer 2023-11-01 09:44:44 +01:00
Sébastien Helleu 1dd535da5d trigger: rename local variable "trigger_filter" to "filter" on monitor buffer (closes #2037) 2023-10-30 23:41:28 +01:00
Sébastien Helleu 02f26517f3 core: fix memory leak when config version is invalid or not supported 2023-10-30 23:10:54 +01:00
Sébastien Helleu 3c62ae482b core: fix memory leak when infolist variable can not be created 2023-10-30 23:10:54 +01:00
Sébastien Helleu fd78c2f9ac core: check that buffer is not NULL in function gui_chat_printf_date_tags_internal 2023-10-30 23:10:54 +01:00
Sébastien Helleu 23289dcb2c core: fix use NULL pointer when a config file has no options 2023-10-30 23:10:54 +01:00
Sébastien Helleu 81b31d9e6c logger: remove dead assignment 2023-10-30 23:10:54 +01:00
Sébastien Helleu e8a4c1d813 xfer: fix use of uninitialized variable when adding a new xfer 2023-10-30 23:10:54 +01:00
Sébastien Helleu 4d884729f9 xfer: fix use of NULL pointer in strrchr() 2023-10-30 23:10:54 +01:00
Sébastien Helleu f8c459453d core: fix crash when "config_version" is present in a configuration file without a value 2023-10-30 23:10:54 +01:00
Sébastien Helleu bd187cd668 core: display an error on startup if environment variable "HOME" is not set 2023-10-30 23:10:54 +01:00
Sébastien Helleu 24c46cf3e5 tests: check that environment variable "HOME" is set before using it 2023-10-30 08:45:44 +01:00
Sébastien Helleu 1a5ff442cb ruby: fix use of NULL variable when displaying exception 2023-10-30 08:38:44 +01:00
Sébastien Helleu 21759171d2 irc: add tags "nick_xxx" and "host_xxx" in all messages, including self and server messages 2023-10-30 08:23:20 +01:00
Sébastien Helleu 7406c8b94c ci: uninstall php8.1-imagick before build (issue #2009)
When php imagick is installed and when WeeChat is compiled with gcc, there's a
crash when the php plugin is loaded.  Newer versions of gcc should fix the
issue, but as in CI we can't easily use them, uninstalling imagick avoids the
crash.
2023-10-28 09:08:33 +02:00
Sébastien Helleu 5c41d6c4a4 core: add version 4.1.1 2023-10-26 21:26:38 +02:00
Sébastien Helleu 6631d44a8d core: add version 4.0.6 2023-10-26 21:26:31 +02:00
Sébastien Helleu df1f48cc9b core: display only version with command /version, add options -o and -ol in command /upgrade 2023-10-26 20:42:23 +02:00
Nils Görs 57475499bf core: update German translations 2023-10-24 16:56:23 +02:00
Nils Görs 8f4a1a2dea core: update German translations 2023-10-24 09:22:48 +02:00
Sébastien Helleu c156fee0e1 core: fix crash when a custom bar item name is already used by a default bar item (closes #2034) 2023-10-23 13:11:02 +02:00
Nils Görs 0fe7eec90b core: update German translations 2023-10-23 11:28:58 +02:00
Sébastien Helleu 3cc400a9d6 core: add number of processes in command /sys waitpid 2023-10-22 21:02:41 +02:00
Sébastien Helleu d6343020aa core: fix random timeouts when a lot of concurrent processes are launched with hook_process (closes #2033) 2023-10-20 21:00:22 +02:00
Sébastien Helleu 8a389395b9 core: update translations (issue #2005) 2023-10-20 13:16:40 +02:00
Sébastien Helleu 02679e8001 logger: add description for examples in help on command /logger (issue #2005) 2023-10-20 13:16:07 +02:00
Sébastien Helleu fce5386d5c irc: add description for examples in help on some commands (issue #2005)
Help is updated on these commands:

- `/allchan`
- `/allpv`
- `/allserv`
2023-10-20 13:15:52 +02:00
Sébastien Helleu 96b7c60c5a core: add description for examples in help on some commands (issue #2005)
Help is updated on these commands:

- `/allbuf`
- `/bar`
- `/print`
- `/repeat`
- `/secure`
- `/wait`
2023-10-20 13:15:49 +02:00
Sébastien Helleu 6452be4a28 core: update translations (issue #194, issue #2032) 2023-10-19 23:59:15 +02:00
Sébastien Helleu a88b8f7ed2 irc: revert compute of nick colors to case sensitive way, deprecate again IRC nick color infos (issue #194, issue #2032) 2023-10-19 23:38:28 +02:00
Sébastien Helleu 1896c50c11 core: update translations (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu fa1e82d500 xfer: format and translate commands line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu 7702ed56ea trigger: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu f65556f3b2 spell: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu ce5de07dbd relay: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu efa1f44317 script: format and translate commands line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu d60859138f logger: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu 55ef9536c5 irc: format and translate commands line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu 58bab65fd1 fset: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu 79581019aa fifo: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu aa32fa6d3e exec: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu 2aaa14b616 charset: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu cfa5f3324a buflist: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu 05b160b5bc alias: format and translate command line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu 2a4faf566b core: format and translate commands line by line (issue #2005) 2023-10-17 18:14:54 +02:00
Sébastien Helleu bbf42a5d09 api: add support of format/translation of command arguments description line by line (issue #2005) 2023-10-17 18:14:53 +02:00
Sébastien Helleu e34071131e api: add function string_concat (issue #2005) 2023-10-17 18:14:53 +02:00
Sébastien Helleu 9bc9df47d7 irc: add option irc.look.ignore_tag_messages (closes #989) 2023-10-15 18:45:11 +02:00
Sébastien Helleu 3898449dc2 irc: add structure with context sent as unique parameter to IRC protocol callbacks (issue #989) 2023-10-15 18:40:01 +02:00
Sébastien Helleu aed5c543ec core: update ChangeLog (closes #1956) 2023-10-15 18:00:59 +02:00
Sébastien Helleu ed98425b1b core: update translations (issue #1956) 2023-10-15 16:50:33 +02:00
Sébastien Helleu 0c45083324 alias: allow wildcard in command /alias del (issue #1956) 2023-10-15 16:50:26 +02:00
Sébastien Helleu 13e73d52d3 core: allow wildcard in command /proxy del (issue #1956) 2023-10-15 16:19:31 +02:00
Sébastien Helleu 59d11533dd core: allow wildcard in command /item del (issue #1956) 2023-10-15 16:19:06 +02:00
Sébastien Helleu 99a56b99f2 core: allow wildcard in command /bar del (issue #1956) 2023-10-15 16:18:51 +02:00
Sébastien Helleu aebf6d7ab3 core: allow wildcard in command /filter (issue #1956)
A mask with wildcards is now allowed in the following commands:

- `/filter enable`
- `/filter disable`
- `/filter toggle`
- `/filter del`
2023-10-15 16:18:02 +02:00
Sébastien Helleu 35660f8b1d trigger: allow wildcard in command /trigger (issue #1956)
A mask with wildcards is now allowed in the following commands:

- `/trigger enable`
- `/trigger disable`
- `/trigger toggle`
- `/trigger restart`
- `/trigger del`
- `/trigger restore`
2023-10-15 16:15:50 +02:00
Sébastien Helleu 1a579e03e8 core: update French translations 2023-10-15 15:48:55 +02:00
Sébastien Helleu 1d6e1fd752 core: make libintl.h required if CMake option ENABLE_NLS is enabled (issue #2031) 2023-10-15 14:58:26 +02:00
Sébastien Helleu 18b3c7a30b Version 4.2.0-dev 2023-10-15 09:06:12 +02:00
Sébastien Helleu 775b9c9cdf Version 4.1.0 2023-10-15 09:02:57 +02:00
Sébastien Helleu 6bc7d6fad3 debian: update changelog 2023-10-15 08:46:45 +02:00
Sébastien Helleu 9aefe4ae09 core: call curl init and cleanup functions
This is to prevent issues when these functions are not thread-safe.
2023-10-13 23:03:00 +02:00
Trygve Aaberge 13a057f0b2 core: only print hook_url errors when debug is enabled
Errors from hook_url should be handled by the caller, so don't print
them to the core buffer by default. Only print them when
weechat_debug_core is enabled. This was already the behavior for the
timeout error.
2023-10-13 21:52:15 +02:00
Trygve Aaberge 3735397a0f core: add error codes to output in hook_url
When hook_url fails, add an error_code field in the output in addition
to the error field. This is so the caller can get which error happened
programatically, without having to parse the (possibly translated) error
string.

It uses the same error codes as the return_code in hook_process, and in
addition adds 5 for an error from pthread_create and 6 for a timeout
error. If the error is from pthread_create, an additional field
`error_code_pthread` with the error code from pthread_create is added.
If the error is from curl, an additional field `error_code_curl` with
the error code from curl is added.
2023-10-13 09:26:00 +02:00
Trygve Aaberge 57b2efd82b core: run hook_url callback when pthread_create failed 2023-10-13 09:25:39 +02:00
Sébastien Helleu 6468f7761f core: set "error" field of "output" hashtable in hook_url in case of transfer timeout 2023-10-13 08:14:31 +02:00
Nils Görs a83121b847 core: update German translations 2023-10-11 07:52:02 +02:00
Sébastien Helleu 02a05f63d5 core: fix zombie processes remaining after the end of forked processes (closes #1994)
The clean of processes with waitpid() is now delayed after the kill(), so that
there are no more zombies.

In addition, this can be done manually if needed with `/sys waitpid`.
2023-10-10 19:23:43 +02:00
Sébastien Helleu 408901d772 irc: move value -all at the end of completions for command /ignore del 2023-10-09 20:06:52 +02:00
Sébastien Helleu bea9d5a2bf irc: fix memory leak when joining channels with keys 2023-10-07 20:33:42 +02:00
Sébastien Helleu feb5ee8886 core: fix build error if CMake option ENABLE_NLS is turned to off or if required dependencies are not found (closes #2026) 2023-10-05 19:05:02 +02:00
Sébastien Helleu b46ed5a2a2 core: use larger buffer for errors when creating a filter 2023-10-05 19:02:38 +02:00
Nils Görs 1d104bb940 core: update German translations 2023-10-05 08:44:28 +02:00
Sébastien Helleu 4600aeea53 core: update ChangeLog (issue #2024) 2023-10-01 16:43:48 +02:00
Sébastien Helleu 6bd0c63192 core: make zstd dependency optional (closes #2024) 2023-10-01 16:36:32 +02:00
Sébastien Helleu 879a548bea buflist: rename completions with items
Completions renamed:

- "buflist_all_items" -> "buflist_items"
- "buflist_used_items" -> "buflist_items_used"
2023-10-01 12:14:03 +02:00
Sébastien Helleu e928bce76c buflist: add support of item names in command /buflist refresh 2023-10-01 09:58:19 +02:00
LuK1337 8bd4994ccd core, relay: make inet_pton() return value checks more strict
inet_pton() can return values < 0.
2023-09-26 17:48:20 +02:00
Sébastien Helleu 360e971b01 core: add contributor 2023-09-26 17:14:10 +02:00
LuK1337 0bb5998988 core: replace inet_addr() with inet_pton()
man pages as well as rpminspect suggest that we shouldn't be using
inet_addr().
2023-09-26 17:12:03 +02:00
Sébastien Helleu b58f704542 core: update ChangeLog 2023-09-25 13:50:32 +02:00
LuK1337 bcd23ff585 core: fix TOTP moving factor on big-endian systems 2023-09-25 13:48:30 +02:00
LuK1337 169eecb5cf tests: use correct data type method in hdata tests 2023-09-25 13:48:30 +02:00
LuK1337 b433afbd26 tests: cast infolist time variable value to the correct data type 2023-09-25 13:48:30 +02:00
Sébastien Helleu 082ccb05bb core: add version 4.0.5 2023-09-24 10:24:26 +02:00
Sébastien Helleu f72fb3be4b irc: display "owner" for +q and "admin" for +a in output of /names (closes #2020, issue #97) 2023-09-22 23:21:22 +02:00
Sébastien Helleu 7f0efa3a8f core: update translations 2023-09-22 23:12:32 +02:00
Sébastien Helleu c96971eebb script: only check if return value of plugin_script_search_path is NULL (issue #2019) 2023-09-22 22:58:51 +02:00
Sébastien Helleu d6e4e87faf script: fix removal of script in system directory while trying to install a script (closes #2019) 2023-09-22 22:51:44 +02:00
Sébastien Helleu 12106ae7ba script: fix autoload of multiple scripts at once with /script autoload (closes #2018) 2023-09-20 20:05:49 +02:00
Sébastien Helleu 91bb1ebf5d tests: fix condition on libgcrypt version for algorithms sha512-224 and sha512-256 (issue #2008) 2023-09-20 06:56:56 +02:00
Sébastien Helleu 439410a388 doc/api: use a table for file_in/file_out options in function hook_url 2023-09-16 13:00:03 +02:00
Sébastien Helleu 36ab6c3bc7 doc/api: add link to hook_url in hook_process_hashtable for Curl options 2023-09-16 13:00:03 +02:00
Sébastien Helleu f0e4494205 core: properly terminate thread and release memory in url hook 2023-09-16 13:00:03 +02:00
Sébastien Helleu 83dcb84ea6 doc/api: add function hook_url 2023-09-16 13:00:03 +02:00
Sébastien Helleu fb00bc1f4b scripts: add function hook_url in scripting API 2023-09-16 13:00:03 +02:00
Sébastien Helleu 24d2ba3338 script: replace hook_process_hashtable by hook_url to download scripts and list of scripts (closes #1723) 2023-09-16 12:58:57 +02:00
Sébastien Helleu 63922ca038 api: add function hook_url 2023-09-16 10:19:51 +02:00
Sébastien Helleu a5f4c3770b doc/faq: add question about move of WeeChat config to another device 2023-09-16 09:46:50 +02:00
Sébastien Helleu 23d3ce7ad8 doc/faq: add question about keys like Enter and version 4.0.0 2023-09-15 18:57:00 +02:00
Nils Görs f49810ec0e core: update German translations 2023-09-15 12:48:22 +02:00
Sébastien Helleu 85b5bacfe3 script: rename parameters up/down/go to -up/-down/-go in command /script 2023-09-15 08:43:37 +02:00
Sébastien Helleu e62ff286ff xfer: fix crash on /dcc chat 2023-09-14 20:48:58 +02:00
Sébastien Helleu cb680ef9df irc: add option irc.look.open_pv_buffer_echo_msg (issue #2016) 2023-09-14 20:19:05 +02:00
Sébastien Helleu 63fc9aace8 irc: update title in query buffer when remote nick is myself (issue #2016) 2023-09-14 16:15:09 +02:00
Sébastien Helleu a2c3322df7 irc: fix title of query buffer for own messages received (issue #2016) 2023-09-14 15:22:11 +02:00
Sébastien Helleu 049e9d23c5 irc: open a query buffer on PRIVMSG received from self nick when capability echo-message is NOT enabled (issue #2016) 2023-09-14 14:51:50 +02:00
Sébastien Helleu 4c3ab508c7 irc: don't open a new private buffer on /msg command when capability echo-message is enabled (closes #2016) 2023-09-14 11:10:17 +02:00
Sébastien Helleu 747d6122bc core: move ChangeLog entry to the appropriate version 2023-09-14 11:07:42 +02:00
Nils Görs aad846583d core: update German translations 2023-09-14 08:45:01 +02:00
Sébastien Helleu 4e173c1972 irc: fix title of private buffers wrongly set to own address when capability echo-message is enabled (issue #2016) 2023-09-14 08:04:44 +02:00
Sébastien Helleu ef99d544fa core: add algorithms sha512-224, sha512-256, sha3-*, blake2b-* and blake2s-*` in option sec.crypt.hash_algo (closes #2008) 2023-09-13 15:10:19 +02:00
Sébastien Helleu 684bfd64c6 api: add algorithms sha512-224, sha512-256, blake2b-* and blake2s-*` in hash functions (issue #2008) 2023-09-13 15:09:34 +02:00
Nils Görs 29c4aa4620 core: update German translations 2023-09-13 10:19:54 +02:00
Sébastien Helleu d100d62a72 core: translate error messages (issue #2013) 2023-09-12 15:09:00 +02:00
Sébastien Helleu 3021b2f9c5 core: automatically backup config file read if it has an unsupported version (closes #2013) 2023-09-12 14:59:25 +02:00
Sébastien Helleu 6fcdb50dab xfer: fix memory leak on plugin unload 2023-09-12 13:38:14 +02:00
Sébastien Helleu 54a5815105 doc/api: fix return values for callback_read in config_new_section 2023-09-12 13:35:02 +02:00
Sébastien Helleu c4c58e0914 irc: fix unexpected message sent to server when part of the second line of an IRC command (closes #1992) 2023-09-12 08:14:23 +02:00
Sébastien Helleu 8eb2604704 core: add path in message displayed when a config file is updated to a newer version 2023-09-11 22:49:21 +02:00
Sébastien Helleu ddd859886e irc: fix autojoin of channels when private buffers are opened (closes #2012) 2023-09-11 21:41:47 +02:00
Sébastien Helleu ae50f6688e irc: reset filter and sort when /list buffer is closed (issue #1972) 2023-09-11 16:40:45 +02:00
Nils Görs 6170ebd396 core: update German translations 2023-09-11 11:21:54 +02:00
Sébastien Helleu 82372115ae core: display a message when a configuration file is updated to a newer version 2023-09-11 09:53:17 +02:00
Nils Görs 71dfbdc419 core: update German translations 2023-09-11 08:44:14 +02:00
Sébastien Helleu 79d0a134e3 buflist: add missing items buflist4 and buflist5 in help on command/options and user's guide 2023-09-11 07:55:54 +02:00
Nils Görs 3882b2e881 core: update German translations 2023-09-09 21:03:38 +02:00
Sébastien Helleu 6b356d4208 doc/user: add missing actions on script buffer 2023-09-09 11:26:04 +02:00
Sébastien Helleu a2e9c74b50 doc/user: add missing key alt+L (input L) on script buffer 2023-09-09 11:10:50 +02:00
Sébastien Helleu d9555cc567 scripts: add functions config_enum and config_enum_default in scripting API (issue #1973) 2023-09-09 08:54:33 +02:00
Sébastien Helleu 9fada89f96 doc/user: add missing actions p and v on fset buffer 2023-09-08 20:22:59 +02:00
Sébastien Helleu 46b76af645 xfer: display an error message when opening file for read or write fails (issue #2010) 2023-09-08 13:06:28 +02:00
Sébastien Helleu b30b492e66 core: update translations 2023-09-08 13:02:36 +02:00
Sébastien Helleu 2c251cd285 script: fix up/down keys on /script buffer
Regression was introduced in commit 817d1eaf8e.
2023-09-08 10:47:46 +02:00
Nils Görs 7fd20269e7 core: update German translations 2023-09-08 07:56:48 +02:00
Sébastien Helleu 374262a8d7 core: add completion "eval_variables", used in completion of /eval 2023-09-07 11:38:26 +02:00
Sébastien Helleu 89739421cf core: fix comment on function eval_replace_vars_cb 2023-09-07 11:30:54 +02:00
Sébastien Helleu 1be5209e9f core: update translations (issue #2004) 2023-09-06 19:16:06 +02:00
Sébastien Helleu 65e092ab25 core: add contributor (issue #2004) 2023-09-06 19:16:06 +02:00
Sébastien Helleu 5f5f05805f core: update ChangeLog (issue #2004) 2023-09-06 19:16:06 +02:00
Sébastien Helleu 6eb3f5672f xfer: fix code style (issue #2004) 2023-09-06 19:10:47 +02:00
Sébastien Helleu 1f1416dd50 irc: fix code style (issue #2004) 2023-09-06 19:10:41 +02:00
Mario Campos 1ee3bad88b xfer: update command/config docs with passive DCC support. 2023-09-06 14:11:35 +02:00
Mario Campos 7f0f947667 xfer: add passive DCC support.
This commit also includes support for passive DCC RESUME.

There was also a potential segfault with calling `atoi(pos_token)` when `pos_token` is NULL, so `token` is set to be stored as a string. Although it is an integer, we don't need to store it as such. That's really more of an implementation detail.
2023-09-06 14:11:35 +02:00
Mario Campos 23d70b5101 xfer: add and identify active/passive xfer types.
Before making any significant changes, let's identify the existing xfer types by either active or passive.
2023-09-06 14:11:35 +02:00
Mario Campos 2a40743ed0 xfer: reverse DCC parsing from RtL to LtR.
This makes it easier to handle the optional "token" argument at the (right) end, which will be necessary to support passive DCC.

Incidentally, this is RtL parsing order is the reason why you'd get a cryptic "0" address error when attempting to do passive DCC: the "token" argument gets misinterpreted as the "size" argument. Every argument "shifts" over by one, leaving an address (port) of "0".
2023-09-06 14:11:35 +02:00
Sébastien Helleu ac8418de8e irc: remove default CTCP replies FINGER and USERINFO from user's guide (issue #1974) 2023-09-06 14:10:56 +02:00
Sébastien Helleu e1ecf992f3 irc: fix comments on CTCP evaluated variables (issue #1974) 2023-09-06 14:05:10 +02:00
Ivan Pešić cf6ec7657e doc: Update Serbian documentation 2023-09-06 10:25:41 +02:00
Ivan Pešić 75c5ccecfa core: Update Serbian translation 2023-09-06 10:25:41 +02:00
Sébastien Helleu 722cb27d04 core: add note for translators on command arguments (issue #2005)
Only text between angle brackets (eg: "<name>") must be translated.
2023-09-05 13:28:26 +02:00
Sébastien Helleu 13ce1147fc doc: fix alignment of command arguments in auto-generated file when command name contains wide chars 2023-09-01 08:58:36 +02:00
Nils Görs b7cd446822 core: update German translations 2023-09-01 07:29:20 +02:00
Sébastien Helleu 5691518e91 doc/user: add section "buffer" in chapter on WeeChat options (issue #352) 2023-08-30 17:33:50 +02:00
Sébastien Helleu 2b3fb62065 core: do not evaluate properties "key_bind_xxx" and "key_unbind_xxx" in options weechat.buffer.* (issue #352) 2023-08-30 17:25:21 +02:00
Sébastien Helleu c2b6523d9f core: fix style for keys in ChangeLog 2023-08-29 12:32:23 +02:00
Sébastien Helleu 620fce4bba core: add new key ctrl+z in ChangeLog 2023-08-29 12:28:24 +02:00
Sébastien Helleu 8b3311860b api: add support of path to variable and hashtable comparison in function hdata_compare (closes #1066) 2023-08-29 10:22:17 +02:00
Sébastien Helleu 58d61cb153 core: remove unused variable old_value 2023-08-29 09:53:08 +02:00
Sébastien Helleu 32f52ae236 core: check that property is not NULL before calling free 2023-08-29 09:52:17 +02:00
Nils Görs c5ceacd68f core: update German translations 2023-08-28 20:34:03 +02:00
Sébastien Helleu aa4bc616b9 core: add missing include of unistd.h 2023-08-28 17:57:46 +02:00
Sébastien Helleu b203c4109b core: move sys filename and functions 2023-08-28 17:55:54 +02:00
Sébastien Helleu a16b3d25ce core: update translations 2023-08-28 17:47:21 +02:00
Sébastien Helleu cc2b44a8ec core: add key ctrl+z to suspend WeeChat process (closes #985) 2023-08-28 17:39:33 +02:00
Sébastien Helleu 5ecb1adc34 core: add command /sys to show resource limits and usage 2023-08-28 12:30:32 +02:00
Nils Görs d328d7f2b8 core: update German translations 2023-08-27 19:42:31 +02:00
Sébastien Helleu 711d3afa5c script: fix crash when a /script command triggers another /script command (issue #923) 2023-08-27 17:19:01 +02:00
Sébastien Helleu 99822fc5e7 core: ignore key bindings with empty command
This makes possible to disable a key hiding another (because shorter than the
other, and beginning with the same key).

For example if key "meta-a" is set to an empty command, it would not hide any
more the key "meta-a,1" which has a non-empty command.
2023-08-27 14:16:08 +02:00
Sébastien Helleu 181f4c041d core: add support of quotes in commands /key bind and /key bindctxt 2023-08-27 14:15:30 +02:00
Sébastien Helleu 3ca4f2d3e5 irc: add count and mode filter in command /names (closes #98) 2023-08-27 12:26:10 +02:00
Sébastien Helleu 300adb42fa irc: add note about regex and output on server buffer in /help list 2023-08-27 09:59:54 +02:00
Sébastien Helleu e5e027b9fa core: add countdown example in /help repeat (issue #2007) 2023-08-27 08:25:41 +02:00
Sébastien Helleu 9a268ec7cc core: evaluate command given to /repeat with contextual variables (closes #2007) 2023-08-27 08:03:40 +02:00
Nils Görs b0ed5b99e9 core: update German translations 2023-08-27 00:12:07 +02:00
Sébastien Helleu 4a95d78c45 core: add variable ${property} in evaluation of options weechat.buffer.* (issue #352) 2023-08-26 20:04:58 +02:00
Sébastien Helleu dd0c20f6b6 irc: add count for all nick modes in output of /names (closes #97) 2023-08-26 18:57:21 +02:00
Sébastien Helleu 42c925b672 irc: use str_nicks only if not NULL in callback of message 353 2023-08-26 18:56:37 +02:00
Sébastien Helleu ff4596e45c core: add option callbacks in command /debug 2023-08-25 13:35:50 +02:00
Sébastien Helleu cc2bb4b8cf core: add function util_get_microseconds_string 2023-08-25 11:53:23 +02:00
Sébastien Helleu 015ff084e3 core: add microseconds precision in function util_parse_delay 2023-08-25 11:23:41 +02:00
Sébastien Helleu 11943ebaaf tests: add tests on GUI buffer functions
Functions tested:

- gui_buffer_is_reserved_name
- gui_buffer_get_integer
- gui_buffer_get_string
- gui_buffer_get_pointer
2023-08-25 08:16:36 +02:00
Sébastien Helleu 2092715ac7 core: add buffer local keys in completion "buffer_properties_setauto" 2023-08-24 19:20:05 +02:00
Sébastien Helleu 272bcf3c97 core: update ChangeLog (issue #2006) 2023-08-24 19:10:35 +02:00
Trygve Aaberge d14e74ccf6 Add compatibility with Python < 3.10 in weechat.pyi
The | syntax for unions is only supported in Python 3.10 and later.
Since Python 3.8 and 3.9 are still supported upstream for a while and we
had a user reporting on IRC that they couldn't use the stub file since
they are using 3.8, change to the old syntax for unions to support this.

There aren't really any drawbacks of this. It's just a bit more verbose,
and a typing import is necessary, but neither of those really matters in
a generated stub file.
2023-08-24 19:08:00 +02:00
Sébastien Helleu 3a59f2f65e irc: add local key bindings during the /list buffer creation
This allows the user to bind or unbind keys by setting options
"weechat.buffer.irc.list_xxx.key_bind_*" and
"weechat.buffer.irc.list_xxx.key_unbind_*".
2023-08-24 19:03:44 +02:00
Sébastien Helleu 817d1eaf8e script: add local key bindings during the buffer creation
This allows the user to bind or unbind keys by setting options
"weechat.buffer.script.scripts.key_bind_*" and
"weechat.buffer.script.scripts.key_unbind_*".
2023-08-24 19:01:20 +02:00
Sébastien Helleu 6737859330 fset: add local key bindings during the buffer creation
This allows the user to bind or unbind keys by setting options
"weechat.buffer.fset.fset.key_bind_*" and
"weechat.buffer.fset.fset.key_unbind_*".
2023-08-24 19:00:32 +02:00
Sébastien Helleu fd07b2888f fset: fix wrong value type in hashtable used for fset buffer properties 2023-08-24 18:44:50 +02:00
Sébastien Helleu 5d9af29024 api: add infos "nick_color_ignore_case" and "nick_color_name_ignore_case" (issue #194) 2023-08-24 18:19:32 +02:00
Nils Görs 965c6ac2ea doc: update German documentation 2023-08-24 13:50:16 +02:00
Nils Görs d2d3cd1b46 core: update German translations 2023-08-24 13:36:53 +02:00
Sébastien Helleu 0c6bcf3e78 core: update translations (closes #352) 2023-08-24 11:49:46 +02:00
Sébastien Helleu 303fe6744e core: add option setauto in command /buffer (issue #352) 2023-08-24 11:49:29 +02:00
Sébastien Helleu 3aef8b7292 core: add options weechat.buffer.* to save buffer properties set by user (issue #352) 2023-08-24 10:38:47 +02:00
Sébastien Helleu 6aa66b5363 irc: compute color in case insensitive way (closes #194)
Reintroduce infos "irc_nick_color" and "irc_nick_color_name" (that were
marked deprecated since version 1.5).

A server name is added in the two infos and is optional, for backward
compatibility.
2023-08-24 09:24:51 +02:00
Sébastien Helleu c2426e88c9 irc: add functions to convert strings to lower/upper case (following casemapping) (issue #194) 2023-08-24 09:24:42 +02:00
Sébastien Helleu 09eae3e2af irc: add tests on server functions 2023-08-23 15:33:34 +02:00
Sébastien Helleu 25b3f2eae7 irc: fix string comparison when CASEMAPPING is set to "ascii" 2023-08-23 15:33:34 +02:00
Sébastien Helleu 9462c87ce5 tests: add tests on string comparison functions with range of 29 chars 2023-08-23 12:14:07 +02:00
Sébastien Helleu 03927a3283 irc: check that server is not NULL in function irc_server_eval_fingerprint 2023-08-23 12:08:59 +02:00
Sébastien Helleu 7afc43901d irc: move function irc_server_fingerprint_search_algo_with_size 2023-08-23 12:06:59 +02:00
Sébastien Helleu 49f52cc051 doc/faq: split CTCP options into two blocks
Second block is for CTCP replies made by older versions (< 4.1.0).
2023-08-22 23:55:01 +02:00
Sébastien Helleu c0bd12bdf0 doc/faq: add disabling of buflist in question about CPU usage 2023-08-22 23:44:58 +02:00
Sébastien Helleu 0871024eda core: add version 4.0.4 2023-08-22 12:08:42 +02:00
Nils Görs 4566ed2bf9 core: update German translations 2023-08-22 11:30:35 +02:00
Sébastien Helleu 9591af8be8 core: fix gcc warning on uninitialized variable pos_end
The variable `pos_end` is never used when not initialized anyway, thanks to the
`break` done before.
2023-08-22 10:29:11 +02:00
Sébastien Helleu 28ff9d602a debian: bump Standards-Version to 4.6.2 2023-08-22 10:03:35 +02:00
Sébastien Helleu a3382f5a09 build: update build dependency from libncursesw5-dev to libncurses-dev 2023-08-22 09:55:24 +02:00
Sébastien Helleu 212741af05 debian: remove NEWS file 2023-08-22 09:36:39 +02:00
Sébastien Helleu 00dbb24658 debian: update changelog 2023-08-22 09:35:40 +02:00
Sébastien Helleu fdebcf690b script: add parameters up/down/go in /help script and command completion 2023-08-22 09:34:41 +02:00
Sébastien Helleu 763e8bd3a0 script: allow jump to the last script with command /script go end 2023-08-22 09:24:06 +02:00
Sébastien Helleu 6950c953a1 script: adjust scroll after command /script go N 2023-08-22 09:21:00 +02:00
Ivan Pešić fd6bdd3b59 doc: Update Serbian documentation 2023-08-22 07:51:09 +02:00
Ivan Pešić f098a112a1 core: Update Serbian translation 2023-08-22 07:51:09 +02:00
Sébastien Helleu ce4f4fb3fa logger: remove trailing empty line in display of backlog (closes #2002) 2023-08-21 16:01:59 +02:00
Sébastien Helleu faf9d1600f tests: change date format in test of print_date_tags
With complete date and time format, the tests output was incorrectly parsed by
Emacs.
2023-08-21 15:31:14 +02:00
Sébastien Helleu f4b9cad720 perl: fix display of non-ASCII chars after load of a script with Perl >= 5.38 (closes #1996) 2023-08-21 13:10:26 +02:00
Sébastien Helleu 6def0cf502 buflist: add list buffer in /help buflist and /help buflist.format.indent 2023-08-20 21:00:33 +02:00
Sébastien Helleu 6969b9b2b8 buflist: indent the /list buffer 2023-08-20 20:54:24 +02:00
Sébastien Helleu 5ffce90f23 irc: change local variable "type" from "irc_list" to "list" on /list buffer 2023-08-20 20:53:44 +02:00
Sébastien Helleu 64cb3e6a63 irc: fix wrong time displayed for CTCP messages received from self nick (closes #2000) 2023-08-18 23:57:35 +02:00
Sébastien Helleu 1fe1e1a1e8 scripts: fix tests of functions print_date_tag, print_y_date_tags and hook_timer on 32-bit systems (issue #1999) 2023-08-18 16:42:52 +02:00
Sébastien Helleu ed5467c4a9 scripts: fix function string_parse_size on 32-bit systems (python and ruby) (issue #1999) 2023-08-18 16:40:53 +02:00
Sébastien Helleu fadfffc0b6 xfer: fix conversion of string to IPv4 on 32-bit systems (issue #1999) 2023-08-18 15:34:06 +02:00
Sébastien Helleu 08e110c835 core: use dynamic string in function gui_buffer_set_highlight_words_list 2023-08-18 13:38:05 +02:00
Sébastien Helleu 2c8657826f core: simplify function gui_buffer_notify_get 2023-08-18 13:37:39 +02:00
Sébastien Helleu b756598070 tests: add tests on GUI buffer functions 2023-08-18 13:35:36 +02:00
Sébastien Helleu 14334880d8 tests: fix NULL pointer comparison in test of function irc_message_parse_to_hashtable 2023-08-18 13:30:38 +02:00
Sébastien Helleu 2ad8a0d868 core: update ChangeLog (issue #1997) 2023-08-18 07:54:47 +02:00
Sébastien Helleu f89d4a60cd tests: fix tests on function irc_join_compare_join_channel (closes #1997) 2023-08-18 07:34:52 +02:00
Sébastien Helleu 5bf78f40e5 tests: fix typo in test name 2023-08-18 07:30:20 +02:00
Sébastien Helleu aac4b38432 core: add name of section in warning message for invalid value when reading config 2023-08-18 00:47:11 +02:00
Sébastien Helleu 41d23a448a core: fix increment/decrement of options weechat.notify.* 2023-08-17 17:25:19 +02:00
Sébastien Helleu 274f5f9d53 core: fix integer overflow when setting integer option with ++N or --N 2023-08-17 17:03:34 +02:00
Nils Görs d8bd0b7da8 core: update German translations 2023-08-17 12:10:01 +02:00
Nils Görs 773013cde7 core: update German translations 2023-08-17 11:27:51 +02:00
Sébastien Helleu 921b7fc2d3 tests: add tests on eval ternary operator with extra colon in value 2023-08-16 21:08:55 +02:00
Sébastien Helleu 8b9cdc8329 core: update translations (issue #1282) 2023-08-16 16:12:49 +02:00
Sébastien Helleu 43d341feac core: fix /help cursor (issue #1282) 2023-08-16 16:12:35 +02:00
Sébastien Helleu 81e09bd6e1 doc/user: add chapter on cursor mode (issue #1282) 2023-08-16 15:59:48 +02:00
Sébastien Helleu 48e6a1e387 core: add parameters and key bindings to move to edges of current area with commands /cursor go and /cursor move (closes #1282) 2023-08-16 15:25:52 +02:00
Sébastien Helleu 41dbcb1a81 core: set minimum CMake version to 3.5
This removes the following CMake warning:

CMake Deprecation Warning at CMakeLists.txt:22 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.
2023-08-15 10:56:28 +02:00
Sébastien Helleu e94a18268e core: convert scripts local variables to lower case 2023-08-15 10:50:35 +02:00
Sébastien Helleu 409bd256a9 doc/user: remove old note in French doc 2023-08-15 08:51:50 +02:00
Sébastien Helleu 17927cc09f doc/user: improve look of clicked buttons in mouse bindings 2023-08-15 08:47:08 +02:00
Sébastien Helleu cfc734b7c5 tests: add empty function to test function irc_list_buffer_set_localvar_filter 2023-08-14 16:08:01 +02:00
Sébastien Helleu 09e0ffe935 doc/user: add mouse, keys and input for /list buffer 2023-08-14 11:53:04 +02:00
Sébastien Helleu 938e9c13cd irc: add local variable "filter" on /list buffer 2023-08-14 11:01:50 +02:00
Sébastien Helleu b75c956c02 fset: fix typos in French translation of /help fset 2023-08-14 10:32:06 +02:00
Sébastien Helleu 9727861d66 irc: fix /help list and French translation 2023-08-14 10:31:22 +02:00
Sébastien Helleu 2829a8ee2b doc/user: fix command bound to left mouse button in fset buffer 2023-08-14 08:57:37 +02:00
Sébastien Helleu 46cea77585 relay: synchronize nick modes with IRC client upon connection (closes #1984) 2023-08-13 16:38:29 +02:00
Sébastien Helleu 4290876e64 script: allow commands /script autoload|noautoload|toggleautoload with scripts not present in the repository (closes #1980) 2023-08-13 10:22:06 +02:00
Sébastien Helleu 510756935c core: remove reference to iset in German translation 2023-08-13 09:10:16 +02:00
Sébastien Helleu beb93ada1e script: replace "iset" example by "go" in comments 2023-08-13 09:10:04 +02:00
Sébastien Helleu 0bfdaa25bf fset: remove redirection to /help fset.look.sort in /help fset 2023-08-12 16:25:25 +02:00
Sébastien Helleu 017f4cca18 core: fix French translation of /help list 2023-08-12 16:22:55 +02:00
Sébastien Helleu 2f1de098bd irc: add buffer for /list reply (closes #1972)
New options:

- irc.color.list_buffer_line_selected
- irc.color.list_buffer_line_selected_bg
- irc.look.list_buffer_sort
- irc.look.list_buffer_scroll_horizontal
- irc.look.new_list_position
- irc.look.list_buffer_topic_strip_colors
2023-08-12 13:05:49 +02:00
Sébastien Helleu d25a4213fe irc: fix redirection of command /list when the reply doesn't start with message 321 (start of /list) 2023-08-10 08:13:54 +02:00
Sébastien Helleu 17674f7b11 irc: add missing tags on multiline messages (closes #1987) 2023-08-09 14:53:03 +02:00
Sébastien Helleu 356712f44d core: add version 4.0.3 2023-08-08 22:10:29 +02:00
Sébastien Helleu c6b18e9654 relay: fix display of IRC CTCP messages received from client (issue #1986) 2023-08-08 09:38:54 +02:00
Sébastien Helleu ff41a79aa9 core: update ChangeLog (issue #1988) 2023-08-08 07:17:08 +02:00
Sébastien Helleu 1826decb0b core: update translations (issue #1988) 2023-08-08 07:14:56 +02:00
Nathaniel Evan 070f0da1c0 fset: fix the colon in help bar being included in description color 2023-08-08 06:59:14 +02:00
Nathaniel Evan e0e839e7cc fset: fix fset.color.help_description not applying 2023-08-08 06:59:14 +02:00
Sébastien Helleu e5948b0d44 tests: add test on IRC notice sent to another nick with channel name at beginning (issue #1991) 2023-08-01 22:48:43 +02:00
Sébastien Helleu 03daae3059 irc: fix display of outgoing notice with channel when capability "echo-message" is enabled (closes #1991) 2023-08-01 22:35:21 +02:00
Sébastien Helleu b0549e4d09 irc: add channel in "autojoin" server option only when the channel is actually joined (closes #1990) 2023-08-01 21:45:28 +02:00
Sébastien Helleu 8e48503253 core: remove CMake option "ENABLE_DOC_WARN_LOCALE" from release notes (issue #1985) 2023-08-01 08:31:44 +02:00
Sébastien Helleu c198e875ce core: remove CMake option "ENABLE_DOC_WARN_LOCALE" (issue #1985) 2023-07-31 22:01:34 +02:00
Sébastien Helleu 73439d5a50 core: fix typo 2023-07-31 21:51:08 +02:00
Sébastien Helleu 36ab9d97e4 core: fix styles in ChangeLog 2023-07-31 21:27:46 +02:00
Sébastien Helleu 8bfd25e2e6 doc: stop build of docs if a locale is missing, add CMake option "ENABLE_DOC_WARN_LOCALE" (closes #1985) 2023-07-31 21:27:16 +02:00
Sébastien Helleu 1ffd0a58b9 core: add missing trailing newline char in doc generation error messages 2023-07-31 08:06:01 +02:00
Sébastien Helleu 4fc90b86bf irc: fix switch to channel manually joined (closes #1982)
This happens when server option autojoin_dynamic is on and option
irc.look.buffer_switch_autojoin is off.

Regression was introduced in version 4.0.0 by commit
1c3b871204.
2023-07-31 08:03:50 +02:00
Sébastien Helleu 63f9289769 core: fix input length and crash after delete of line (closes #1989) 2023-07-28 07:21:22 +02:00
Nils Görs 06fa5923e8 core: update German translations 2023-07-23 11:49:01 +02:00
Sébastien Helleu 13241cdca5 irc: fix memory leak in IRC message parser
Bug was introduced in WeeChat 3.4 by commit
c4b4d80936.
2023-07-20 08:49:23 +02:00
Sébastien Helleu 93dfc8b105 core: fix typo in comment 2023-07-18 18:50:02 +02:00
Sébastien Helleu 874a24956c irc: fix display of self CTCP message containing bold attribute (closes #1981) 2023-07-18 18:48:48 +02:00
Sébastien Helleu a457e22d57 tests: add missing include of string.h 2023-07-15 16:24:16 +02:00
Sébastien Helleu 6b9dd2add3 fset: fix description of function fset_buffer_check_line_outside_window 2023-07-14 12:06:26 +02:00
Sébastien Helleu eb71be4219 doc/api: fix return value in case of error in function hdata_get_var_offset 2023-07-14 09:53:19 +02:00
Sébastien Helleu 8cd13ef580 core: add version 4.0.2 in release notes 2023-07-12 22:09:24 +02:00
Sébastien Helleu 622410a64e core: add version 4.0.2 2023-07-12 20:51:21 +02:00
Sébastien Helleu 7c805aa699 irc: remove default CTCP replies FINGER and USERINFO (issue #1974) 2023-07-12 19:13:40 +02:00
Sébastien Helleu 9237852b26 irc: build dynamically the list of CTCPs supported in reply to "CTCP CLIENTINFO" (issue #1974) 2023-07-12 18:58:51 +02:00
Sébastien Helleu f46f759975 irc: evaluate options irc.ctcp.* (issue #1974) 2023-07-12 18:58:30 +02:00
Sébastien Helleu 5d222c8d5c irc: create default options irc.ctcp.* when file irc.conf is created (issue #1974) 2023-07-11 19:40:04 +02:00
Sébastien Helleu 363d2d5e68 core: clarify messages for unknown options/sections read in config files (closes #1967) 2023-07-11 18:08:14 +02:00
Sébastien Helleu ba6f21d910 irc: add missing "account-tag" in list of supported capabilities 2023-07-10 14:08:19 +02:00
Sébastien Helleu 2a02bb10e5 core: fix renaming of options with command /item rename (closes #1978)
The options `weechat.custom_bar_item.xxx.*` are now properly renamed to the new
item name.

This fixes a save issue (item saved with old name in config) and a crash if a
new item is created with the old name.
2023-07-10 07:31:28 +02:00
Sébastien Helleu 107f83c923 irc: remove Git revision and compilation date from CTCP VERSION/FINGER reply (issue #1974) 2023-07-08 21:40:21 +02:00
Sébastien Helleu 38f3b40894 fset: add missing format in calls to snprintf 2023-07-08 17:14:03 +02:00
Sébastien Helleu 3070c12fa3 build: add C compiler options "-Wformat" and "-Werror=format-security" 2023-07-08 17:12:39 +02:00
Sébastien Helleu 1d5433485c fset: add variable allowed_values in options, add two color options
New options:

- fset.color.allowed_values
- fset.color.allowed_values_selected
2023-07-08 16:50:42 +02:00
Sébastien Helleu 4c0c7d9adc fset: add missing enum in /help fset 2023-07-08 14:45:25 +02:00
Sébastien Helleu 8985607951 fset: fix mouse actions when second format is used
The mouse actions now properly handle the case where options are displayed on
multiple lines to calculate the option index in list.
2023-07-08 13:56:22 +02:00
Sébastien Helleu 89137552a7 core: display focus hashtable for debug even if no key is matching 2023-07-08 13:31:36 +02:00
Sébastien Helleu 5b2cf75f6e fset: allow long type name in type filter 2023-07-08 13:30:37 +02:00
Sébastien Helleu 481e8f197d core: use type "enum" in options 2023-07-08 13:29:45 +02:00
Sébastien Helleu 66cb9f6ea2 core: add option type "enum" (closes #1973)
The type "enum" replaces type "integer" when used with string values.

For compatibility, any option created with type "integer" and string values is
automatically created to "enum" on creation, with no error.
2023-07-08 13:28:40 +02:00
Sébastien Helleu 8f9d88edd0 ci: add workaround for broken brew update 2023-07-06 22:24:15 +02:00
Sébastien Helleu f1e372b5e2 fset: remove extra spaces between min and max values when second format is used 2023-07-06 22:05:11 +02:00
Sébastien Helleu 7b6c9328be core: add quotes around key names in /help key 2023-07-05 21:23:47 +02:00
Nils Görs 4fa9ddc6b9 core: update German translations 2023-07-05 20:32:48 +02:00
Sébastien Helleu d7a6fcba5f buflist: increase max number of buflist items from 3 to 5 (closes #1703) 2023-07-04 22:03:05 +02:00
Sébastien Helleu f811621611 script: fix buffer used by command /script list -i|-il|-o|-ol
The command is now executed on the buffer where it is received instead of the
current buffer (in most cases this is the same buffer, but could be different
sometimes).
2023-07-04 21:57:41 +02:00
Sébastien Helleu 6c8d6eef58 script: fix cursor position after /script list -i or /script list -il 2023-07-04 21:56:52 +02:00
Sébastien Helleu 59cdade5f0 core: fix cursor position after /plugin list -i or /plugin list -il 2023-07-04 21:56:22 +02:00
Sébastien Helleu e5586e14d9 trigger: add options -o, -ol, -i and -il in command /trigger list (closes #1953) 2023-07-04 21:55:21 +02:00
Sébastien Helleu b43883a814 core: check that ptr_value is not NULL 2023-07-04 19:15:20 +02:00
Sébastien Helleu 20560f0a63 core: keep keys ctrl-H and ctrl-? (in lower case) if they were manually bound to custom commands in a previous version 2023-07-04 19:10:04 +02:00
Sébastien Helleu e36b066dc8 core: add key ctrl-backspace in /help key (issue #1975) 2023-07-04 18:45:11 +02:00
Sébastien Helleu b696e3d67f doc: fix anchor links in auto-generated files 2023-07-04 18:31:03 +02:00
Sébastien Helleu 7340fd1637 core: update ChangeLog 2023-07-03 23:02:58 +02:00
Sébastien Helleu f03e2ff95c core: fix styles 2023-07-03 23:02:25 +02:00
Trygve Aaberge 3247974eb4 core: don't send key_pressed signal again for the same key press
If you press an incomplete key sequence, previously WeeChat would send
the key_pressed signal again for the same keys on the next key.

E.g. if you press escape and then 1, previously you would get the
key_pressed signal with signal_data `\x01[` when you pressed escape, and
then key_pressed with `\x01[` again when you pressed 1 (plus key_pressed
with `1` for the 1 key). So two signals for the escape key, even though
it was only pressed once.

With this patch, you only get one signal for each key press. So one with
`\x01[` when you press escape and then one with `1` when you press 1.
2023-07-03 23:02:23 +02:00
Trygve Aaberge 824cfb6427 core: don't send key_combo_* signals for incomplete keys
Version 4.0.0 (specifically commit 1f5c791c3) changed the key handling
so key_combo_* signals were sent for each character in a sequence,
rather than just when the sequence is finished. This broke parts of the
vimode.py script.

E.g. for the up arrow, 3.8 sends key_combo_default signal once with the
signal_data `\x01[[A`, while 4.0.0 sends it three times with the
signal_data `\x01[`, `\x01[[` and `\x01[[A`.

With this patch, the previous behavior is brought back. There is one
small change though. In 3.8 if you press escape one or two times it
doesn't send key_combo_default, but if you press it three or more times
it sends it for each escape press. With this patch, it's never sent for
plain escape presses, only when the sequence is finished with some other
key.

This is intentional, as getting key_combo_default for escape presses
doesn't make sense since it's not a finished combo, and the behavior of
3.8 where you got it after three or more key presses was most likely
unintentional as it just happened because it didn't match any key
bindings anymore (there are key bindings starting with one or two escape
characters, but not more).
2023-07-03 23:02:21 +02:00
Nils Görs 7b5585239f core: update German translations 2023-07-01 12:20:57 +02:00
Sébastien Helleu 92e5696236 core: update stable version to 4.0.1 2023-07-01 11:44:55 +02:00
Sébastien Helleu a80f4c7681 tests: fix hdata tests failure on Alpine 3.18 2023-07-01 09:53:03 +02:00
Sébastien Helleu 930b42aecf tests/relay: fix crash in tests on Alpine 3.18 2023-07-01 09:43:56 +02:00
Sébastien Helleu c84274cd2b build: fix detection of PHP 8.2 on Alpine 3.18 2023-07-01 09:15:00 +02:00
Sébastien Helleu b13ed3b816 core: add version 4.0.1 in ChangeLog and release notes 2023-07-01 09:12:51 +02:00
Sébastien Helleu b52047c69e guile: fix crash on quit with Guile < 3 (issue #1965) 2023-06-27 21:45:15 +02:00
Trygve Aaberge b551d6f247 core: check for newline characters in string_is_whitespace_char
This fixes a bug where if you had multiple lines in the input and
pressed ctrl-w when the cursor was after the first word of any line but
the first, it would delete both the word before the cursor and the last
word on the preceding line.
2023-06-27 21:28:24 +02:00
Sébastien Helleu 4c9fd4a625 doc/faq: mention script go.py for an easy jump to buffers 2023-06-27 19:14:14 +02:00
Sébastien Helleu fc41ad336d api: do not convert option name to lower case in API functions config_set_plugin and config_set_desc_plugin 2023-06-27 12:58:34 +02:00
Sébastien Helleu 1d4509ddd8 irc: fix display of country code in message 344 received as whois geo info (issue #1736) 2023-06-26 22:12:31 +02:00
Sébastien Helleu b4da825f60 irc: sent "QUIT" message to servers connected with TLS on /upgrade 2023-06-26 22:06:46 +02:00
Sébastien Helleu ca35b67307 irc: display commands 716/717 in private buffer (if present) (closes #146)
Commands 716/717 are returned if the target user has mode +g, they look like
this:

:server 716 my_nick bob :is in +g mode and must manually allow you to message them. Your message was discarded.
:server 717 my_nick bob :has been informed that you messaged them.
2023-06-26 21:59:55 +02:00
Sébastien Helleu f62022e812 core: add variables "_chat_focused_line_bol" and "_chat_focused_line_eol" in focus data (closes #1955)
These variables are the same as "_chat_bol" and "_chat_eol" except that they
stop at the beginning of the focused line (not the whole message displayed, in
case message has multiple lines separated by "\n").
2023-06-26 21:55:48 +02:00
Sébastien Helleu 54dd19da92 api: add info "buffer" (closes #1962)
This info returns a pointer buffer with its full name.
2023-06-26 21:35:49 +02:00
Sébastien Helleu bc4294e297 core: fix level of section title in release notes 2023-06-26 21:22:28 +02:00
Sébastien Helleu 5e0ca4740b core: display actual key name and command with key Alt+k
Key Alt+K (upper K) is removed as well as commands `/input grab_raw_key` and
`/input grab_raw_key_command`.
2023-06-26 21:21:12 +02:00
Sébastien Helleu 70c41f614a irc: reply to a CTCP request sent to self nick (closes #1966) 2023-06-25 22:11:34 +02:00
Sébastien Helleu e0c8f2867d core: add missing space in French translation 2023-06-25 22:10:15 +02:00
Sébastien Helleu 763b8ec050 core: force key "return" to command "/input return" when migrating legacy keys 2023-06-25 22:10:04 +02:00
Sébastien Helleu 9d0d8231e8 core: add option weechat.color.status_name_insecure in ChangeLog and release notes 2023-06-25 15:17:16 +02:00
Sébastien Helleu 11177a0967 core: fix format in Czech translation 2023-06-25 00:49:44 +02:00
Krzysztof Korościk c5a3bbc474 doc: updated polish translation 2023-06-24 22:45:35 +02:00
Sébastien Helleu 50bb175e7f Version 4.1.0-dev 2023-06-24 22:41:18 +02:00
Sébastien Helleu 1c449f3c2e Version 4.0.0 2023-06-24 22:00:30 +02:00
Sébastien Helleu 7c7a9484fb doc/user: fix typo in French translation 2023-06-23 12:01:56 +02:00
Nils Görs eacb807448 core: update German translations 2023-06-23 07:43:45 +02:00
Sébastien Helleu 001cf3376d core: update ChangeLog 2023-06-19 07:30:31 +02:00
Sébastien Helleu e1d1831fa8 core: ignore rest of config file if config version is invalid or not supported 2023-06-17 13:13:11 +02:00
Nils Görs 3e42d95f40 core: update German translations 2023-06-16 14:31:16 +02:00
Sébastien Helleu 1b78cd3bd2 exec: fix URL to plugin API reference in /help exec 2023-06-15 22:07:34 +02:00
Sébastien Helleu 9d7766ce3d doc/user: fix URL to plugin API reference 2023-06-15 22:04:45 +02:00
Sébastien Helleu 2d25cac44a relay: add IPv6 example in /help relay.network.bind_address 2023-06-15 22:04:16 +02:00
Sébastien Helleu 09b512337a core: replace Debian Bullseye by Bookworm in Debian build script 2023-06-12 21:26:21 +02:00
Sébastien Helleu 3af4ccff38 doc/user: update dependencies versions to Debian Bookworm 2023-06-12 21:26:00 +02:00
Sébastien Helleu 964d882c61 doc/user: fix description of key ctrl+q in search context 2023-06-12 18:38:21 +02:00
Nils Görs a9544af15c core: update German translations 2023-06-11 17:54:43 +02:00
Sébastien Helleu 8c73634e1b relay: fix crash on /upgrade when at least a client is connected with weechat protocol 2023-06-11 14:33:32 +02:00
Sébastien Helleu fc91ee59c9 core: add completions "filters_names_disabled" and "filters_names_enabled"
They are used in completion of commands `/filter disable` and
`/filter enable`.
2023-06-10 22:38:54 +02:00
Sébastien Helleu 1145d9f188 trigger: add completions "trigger_names_disabled" and "trigger_names_enabled"
They are used in completion of commands `/trigger disable` and
`/trigger enable`.
2023-06-10 20:30:52 +02:00
Sébastien Helleu 5de7152383 core: update instructions in cygport file 2023-06-10 18:16:24 +02:00
Sébastien Helleu 5d06ab76df exec: remove trailing "M" (carriage return) in output of commands
Regression was indirectly caused by commit
d18f68e497 in core that allows to display all
control chars in buffers.

But the fix is in exec plugin: end of line in command output can now be "\r\n"
in addition to a single "\n".
2023-06-10 09:51:04 +02:00
Sébastien Helleu 2eacbe6153 core: add new IRC capabilities in release notes 2023-06-07 18:23:42 +02:00
Sébastien Helleu 0b51c2d0be doc: increase sectnumlevels to 2 (user/scripting/quickstart/relay/dev) 2023-06-06 19:13:20 +02:00
Sébastien Helleu 4185e7b9f6 guile: fix crash when plugin is loaded on GNU/Hurd (closes #1951) 2023-06-05 21:09:27 +02:00
Sébastien Helleu 0d92c8703f debian: update changelog 2023-06-05 19:09:25 +02:00
Sébastien Helleu dccd1a348c doc: fix URLs to WeeChat docs 2023-06-05 19:08:12 +02:00
Sébastien Helleu ab9b8e0b01 tests: fix checks on integers in relay irc protocol tests 2023-06-05 19:04:05 +02:00
Sébastien Helleu 7f07782208 tests: add missing include of string.h in logger tests 2023-06-05 19:02:57 +02:00
Sébastien Helleu 7a754d93ab doc/relay: add option "escape_commands" in handshake response and examples 2023-06-05 19:01:46 +02:00
Sébastien Helleu 3a4f51b352 Version 4.0.0-rc1 2023-06-05 08:18:10 +02:00
Sébastien Helleu 48b35bdc63 logger: fix display of multiline messages in backlog (closes #1926) 2023-06-05 07:29:21 +02:00
Sébastien Helleu 4e705afdf6 tests: add tests on logger tail functions (issue #1926) 2023-06-05 07:29:10 +02:00
Sébastien Helleu 615069caef logger: return arraylist instead of custom linked list in logger_tail_file (issue #1926) 2023-06-05 07:29:01 +02:00
Nils Görs 5e35ead044 doc: update German documentation 2023-06-04 11:17:53 +02:00
Nils Görs 4712fabbb0 core: update German translations 2023-06-04 11:12:59 +02:00
Sébastien Helleu e04d8894a0 irc: add tag "new_host_xxx" in message displayed for command CHGHOST (closes #1808) 2023-06-04 09:45:47 +02:00
Sébastien Helleu 7f4c3a660a core: update ChangeLog (issue #1950) 2023-06-03 21:40:55 +02:00
Sébastien Helleu 31e2e7d45c doc/user: add new FIFO syntax (issue #1950) 2023-06-03 21:40:51 +02:00
Trygve Aaberge 43dee8ce54 fifo: allow using escape characters
This allows you to use escape characters if you start the fifo command
with \ instead of *, in the same way as the escape_commands option in
the relay protocol. This allows you to send commands consisting of
multiple lines by using \n if the buffer has input_multiline set.
2023-06-03 21:31:38 +02:00
Sébastien Helleu 682fc40708 irc: add option irc.look.display_host_notice 2023-06-03 21:15:58 +02:00
Sébastien Helleu 482fe6604c relay: add handshake option "escape_commands" in weechat protocol 2023-06-03 20:06:29 +02:00
Nils Görs 2660164118 core: update German translations 2023-06-03 19:36:58 +02:00
Sébastien Helleu 5e85bce2b7 core: specify irc protocol for relay changes 2023-06-03 17:28:15 +02:00
Sébastien Helleu dd4eb80e81 doc: fix formatting issues with links that target a blank window 2023-06-03 17:08:17 +02:00
Sébastien Helleu 498aa3256f relay: add support of capability "echo-message" (closes #1949) 2023-06-03 14:15:55 +02:00
Sébastien Helleu ac9dc3b9c8 irc: add infos "irc_server_cap" and "irc_server_cap_value" (issue #1949) 2023-06-03 14:15:49 +02:00
Sébastien Helleu 911c976f9b tests: add tests on relay "irc" protocol 2023-06-02 18:50:45 +02:00
Sébastien Helleu 5eb1a31552 irc: add missing "user" in documentation of functions 2023-06-02 18:50:45 +02:00
Sébastien Helleu 02a20507cb relay: fix connection with IRC clients sending "CAP REQ :" (without capability) and not sending "CAP END" (issue #1040, issue #1796)
The bug was fixed in version 2.0 (issue #1040) but a regression in version 3.7
happened while using the new IRC parser for message arguments (issue #1796,
commit 96ed471261).
2023-06-02 18:50:45 +02:00
Sébastien Helleu 3d8c55722c relay: add modifiers "relay_client_irc_in", "relay_client_irc_out1" and "relay_client_irc_out" 2023-06-02 18:50: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
Sébastien Helleu f7149dc7be tests: create and close server buffer in tests on function irc_join_split 2023-05-31 23:39:19 +02:00
Sébastien Helleu c0300ec0a4 tests: fix close of channel buffers after tests on function irc_join_split 2023-05-31 23:00:34 +02:00
Sébastien Helleu 310af25226 ruby: fix crash in display of exception backtrace with Ruby 3 (issue #1631, issue #1886) 2023-05-31 20:56:14 +02:00
Nils Görs 7f11d44e40 core: update German translations 2023-05-31 07:18:00 +02:00
Ivan Pešić 47bca29e3c doc: update Serbian documentation 2023-05-30 21:06:53 +02:00
Ivan Pešić 614f423498 core: update Serbian messages translation 2023-05-30 21:06:53 +02:00
Sébastien Helleu 71b85f1238 core: send all command line parameters not beginning with a dash to all plugins, add info "auto_load_scripts"
This fixes an issue with IRC URL given on command line when it starts with
`ircs://` or `irc6://`: the server is not created at all (only `irc://` works
fine).
2023-05-30 20:56:25 +02:00
Sébastien Helleu eda62e1218 fset: reset color immediately after the color name (issue #1920) 2023-05-30 07:39:11 +02:00
Sébastien Helleu f917d22655 core: update ChangeLog (issue #1920) 2023-05-30 07:37:18 +02:00
Nils Görs c96cc7a008 doc: update German documentation 2023-05-29 17:39:29 +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
Sébastien Helleu f1a826a116 tests: add tests on manual CTCP ACTION sent to IRC channel 2023-05-29 11:13:49 +02:00
Sébastien Helleu a4c2d7f808 irc: fix display of CTCP ACTION sent without parameters nor space 2023-05-29 11:10:25 +02:00
Sébastien Helleu 3826d1150d irc: remove unneeded extra check on "\01ACTION " in irc_input_user_message_display 2023-05-29 11:04:50 +02:00
Sébastien Helleu 031bcf5ff2 irc: hide password in messages to nickserv with cap echo-message enabled (issue #139) 2023-05-29 09:49:41 +02:00
Sébastien Helleu ea38779c85 irc: add command /action (closes #201, issue #1577), remove alias action 2023-05-29 09:44:13 +02:00
Sébastien Helleu 193d290285 alias: add option missing in command /alias 2023-05-27 20:20:31 +02:00
Sébastien Helleu 50f5be70aa alias: add alias action to send a CTCP ACTION to a channel or a nick (issue #1577) 2023-05-27 20:07:37 +02:00
Sébastien Helleu 1651c48856 irc: add missing host tag in self messages with cap echo-message enabled (issue #139) 2023-05-27 16:49:08 +02:00
Sébastien Helleu 649b9d0ca6 irc: fix display of STATUSMSG CTCP ACTION to channel with cap echo-message enabled (issue #139, issue #1577) 2023-05-27 16:49:08 +02:00
Sébastien Helleu a41dff7acc irc: fix display of outgoing CTCP when channel/private buffer doesn't exist 2023-05-27 16:49:08 +02:00
Sébastien Helleu 3a0141174b irc: fix display of outgoing STATUSMSG CTCP ACTION without arguments 2023-05-27 16:49:08 +02:00
Sébastien Helleu dbcb8d3dbf irc: remove extra space in CTCP ACTION message sent without arguments
Now when doing `/me` (without arguments), the message sent is:

  PRIVMSG #test :\x01ACTION\x01

instead of:

  PRIVMSG #test :\x01ACTION \x01
2023-05-27 16:49:08 +02:00
Sébastien Helleu a2e73d64d6 irc: fix split of CTCP message with no arguments 2023-05-27 16:49:08 +02:00
Sébastien Helleu 0babf5db23 irc: display STATUSMSG actions differently from standard actions on channels (closes #1577, issue #139) 2023-05-27 16:48:56 +02:00
Sébastien Helleu 93d447ffc7 irc: fix send of empty action with /me command 2023-05-27 10:04:15 +02:00
Sébastien Helleu be0b082463 core: remove WeeChat website from SRC_URI in cygport file 2023-05-26 18:03:20 +02:00
Sébastien Helleu 80532862d5 core: update ChangeLog 2023-05-26 18:03:08 +02:00
Sébastien Helleu a6769e46f9 tests: add tests on IRC message/notice/action/CTCP sent with cap echo-message enabled (issue #139) 2023-05-26 18:02:50 +02:00
Sébastien Helleu b61cbefd30 tests: remove capabilities added after the end of tests 2023-05-26 18:02:01 +02:00
Sébastien Helleu 30b86e08fd tests: add tests on IRC message/notice/action/CTCP sent (issue #139) 2023-05-26 12:44:15 +02:00
Sébastien Helleu 10b803fd59 irc: add missing nick tag in self CTCP ACTION displayed (issue #139) 2023-05-26 12:36:01 +02:00
Sébastien Helleu 4c6f503cc7 irc: display CTCP ACTION to channel on the channel buffer (issue #139, closes #207) 2023-05-26 12:31:22 +02:00
Sébastien Helleu c1ee493073 doc/user: rewrite IRC smart filter chapter, add detail on all filtered messages 2023-05-26 08:53:20 +02:00
Sébastien Helleu e8f508a7cc doc/user: display 3 levels instead of 2 in TOC 2023-05-26 07:13:04 +02:00
Nils Görs afdd24591a core: update German translations 2023-05-25 22:58:59 +02:00
Sébastien Helleu 2654961e1c irc: display actions sent with /me in private buffer instead of server buffer (issue #139) 2023-05-25 22:43:54 +02:00
Sébastien Helleu e50be16730 irc: fix display of actions sent with /me (issue #139) 2023-05-25 22:34:03 +02:00
Sébastien Helleu d9789e522f irc: fix duplicated CTCP messages displayed when capability "echo-message" is enabled (issue #139) 2023-05-25 22:15:41 +02:00
Sébastien Helleu 809f59dfd1 irc: hide messages sent with /msg to a nick when capability "echo-message" is enabled (issue #139) 2023-05-25 19:25:01 +02:00
Sébastien Helleu 45fb1ae4ba irc: hide CTCP messages sent with /ctcp when capability "echo-message" is enabled (issue #139) 2023-05-25 19:22:40 +02:00
Sébastien Helleu 3a8525bb95 irc: hide self actions sent with /me when capability "echo-message" is enabled (issue #139) 2023-05-25 19:19:11 +02:00
Sébastien Helleu f9e358b76c tests: remove import of unused headers 2023-05-23 21:52:16 +02:00
Sébastien Helleu ad1ae12321 doc/user: move IRCv3 chapter outside "Servers" 2023-05-23 21:49:54 +02:00
Sébastien Helleu 64c3f3f0cd irc: add support of capability "echo-message" (closes #139) 2023-05-23 21:49:54 +02:00
Sébastien Helleu 8f5a3cb639 irc: fix display of status privmsg/notice, add missing tags in messages (issue #139)
The status PRIVMSG and NOTICE are now displayed the same way for outgoing and
received messages:

Msg(alice) -> @#test: message for ops
Notice(alice) -> @#test: notice for ops

And any message like this is displayed with these tags if the nick is self
nick (case of a bouncer or if capability "echo-message" is enabled):
"self_msg", "notify_none", "no_highlight".
2023-05-23 21:49:53 +02:00
Sébastien Helleu 8abde49ba2 irc: fix order of tags in outgoing messages
The order of tags in message doesn't matter, but this is for the sake of
consistency with the other messages displayed.
2023-05-23 21:49:53 +02:00
Sébastien Helleu 20bfe4c1ba irc: add missing tags "irc_cap" and "log3" in cap messages (client capability) 2023-05-23 21:49:53 +02:00
Sébastien Helleu 3cb5f25681 irc: add missing tag "log3" in notify messages 2023-05-23 21:49:53 +02:00
Sébastien Helleu f3e1da894b tests: check tags in messages displayed by IRC plugin 2023-05-23 21:49:53 +02:00
Sébastien Helleu eb7435f8b9 tests: separate prefix from message in recorded messages
The record functions are moved to tests-record.cpp.
2023-05-22 20:43:16 +02:00
Sébastien Helleu 126d3559ca script: remove trailing "J" (line feed char) in source of scripts displayed
Regression was indirectly caused by commit
d18f68e497 in core that allows to display all
control chars in buffers.

But the fix is in script plugin: when the script is downloaded and read line by
line, trailing "\r" and "\n" are removed, and therefore not displayed.
2023-05-22 20:40:45 +02:00
Sébastien Helleu c0b3f63985 core: add note about config files incompatibility in release notes 2023-05-21 09:01:10 +02:00
Sébastien Helleu 4f5dac4f85 irc: add batch files for translations 2023-05-20 17:10:59 +02:00
Sébastien Helleu c3c218035a logger: add option logger.file.log_conditions (closes #1942) 2023-05-20 17:08:34 +02:00
Sébastien Helleu 7461a5cb87 xfer: create buffer with function buffer_new_props (issue #1942)
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
2023-05-20 17:08:33 +02:00
Sébastien Helleu db931b7806 trigger: create buffer with function buffer_new_props (issue #1942)
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
2023-05-20 17:08:31 +02:00
Sébastien Helleu cbde92c44e script: create buffer with function buffer_new_props (issue #1942)
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
2023-05-20 17:08:30 +02:00
Sébastien Helleu 00f4ae760d relay: create buffers with function buffer_new_props (issue #1942)
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
2023-05-20 17:08:28 +02:00
Sébastien Helleu 1ad45598b5 fset: create buffer with function buffer_new_props (issue #1942)
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
2023-05-20 17:08:27 +02:00
Sébastien Helleu b1759ab25a exec: create buffer with function buffer_new_props (issue #1942)
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
2023-05-20 17:08:25 +02:00
Sébastien Helleu 3ca3ea32fd irc: create server/channel/raw buffers with function buffer_new_props (issue #1942)
With this function, buffer properties are set when the buffer is created and
can be read immediately by other plugins/scripts, for example in a callback of
signal "buffer_opened".
2023-05-20 17:08:20 +02:00
Sébastien Helleu f767db22a8 doc: reduce toc levels and numbering in sections (user/API/scripting/relay/dev) 2023-05-20 08:37:02 +02:00
Sébastien Helleu ecdcf239fe doc: move toc and section asciidoctor attributes from docs to CMakeLists.txt 2023-05-20 08:15:23 +02:00
Sébastien Helleu b9cc0cf839 core: update ChangeLog (closes #1260) 2023-05-18 13:52:46 +02:00
Simmo Saan 3c3bb933e9 irc: optimize and reuse irc_channel_rejoin 2023-05-18 13:51:14 +02:00
Simmo Saan 6edc88f7d6 irc: use key when /join-ing in open channel buffer 2023-05-18 13:46:43 +02:00
Sébastien Helleu de3ee174e4 core: update ChangeLog (closes #1140, closes #1190) 2023-05-18 11:52:43 +02:00
Sébastien Helleu 6c567c813e core: update translations 2023-05-18 11:51:25 +02:00
Sébastien Helleu a2b21df6ab alias: use dynamic string to replace alias arguments 2023-05-18 11:48:15 +02:00
Sébastien Helleu 338f7028ec tests: add tests on alias functions
Functions tested:

- alias_valid
- alias_search
- alias_string_add_word
- alias_string_add_word_range
- alias_string_add_arguments
- alias_replace_args
2023-05-18 11:10:54 +02:00
Sébastien Helleu a0894a794b alias: return empty string instead of NULL in function alias_replace_args 2023-05-18 11:08:37 +02:00
Sébastien Helleu 6095a0fe40 alias: return NULL if alias or user arguments are NULL in function alias_replace_args 2023-05-18 11:08:08 +02:00
Sébastien Helleu 8d838e89ee alias: add example in comment of function alias_replace_args 2023-05-18 11:07:46 +02:00
Sébastien Helleu e237f7488f alias: add "$&" in comment of function alias_replace_args 2023-05-18 11:07:12 +02:00
nobody 098bbb6927 alias: add auto-escaping special variable 2023-05-18 10:17:59 +02:00
Sébastien Helleu 100509866f relay: rename variable "ptr_option" to "ptr_path" 2023-05-18 09:53:57 +02:00
Sébastien Helleu caf166eb90 relay: make TLS certificate/key loading error handling more verbose (closes #1558) 2023-05-18 09:51:59 +02:00
Sébastien Helleu 9a0eda2433 core: fix refresh of bar item "input_search" after buffer switch in root bars (closes #1939) 2023-05-18 09:21:16 +02:00
Sébastien Helleu 1360489a05 core: add note in GitHub question issue template
The question must be first asked on the #weechat channel.
2023-05-18 09:04:55 +02:00
Sébastien Helleu 43553f7c28 core: update ChangeLog (closes #337, closes #965) 2023-05-17 21:43:43 +02:00
arza 99b84a76ad irc: start from the beginning of nicks at automatic reconnection (closes #337) 2023-05-17 21:42:00 +02:00
Sébastien Helleu 6ae04c4947 core: update ChangeLog (closes #1688) 2023-05-17 21:07:24 +02:00
Sébastien Helleu fbf68dcc14 irc: get value of "msg_max_length" from isupport token "LINELEN" on upgrade from WeeChat < 4.0.0 (issue #1927) 2023-05-17 21:03:44 +02:00
Sébastien Helleu 359ec5d2db irc: add field "utf8only" in IRC server structure 2023-05-17 20:49:27 +02:00
Valentin Lorentz 980b075ce9 irc: Implement the UTF8ONLY IRCv3 specification
https://ircv3.net/specs/extensions/utf8-only
2023-05-17 16:37:19 +02:00
Sébastien Helleu d0f1859ef5 core: add variable CTEST_OUTPUT_ON_FAILURE in release script 2023-05-17 07:17:26 +02:00
Sébastien Helleu 6d32a99d50 trigger: make default triggers compatible with multiline input (closes #1935)
Changed triggers:

- cmd_pass
- cmd_pass_register
- server_pass
2023-05-16 21:34:30 +02:00
Sébastien Helleu 1f21cdc0bd irc: update secure data when server autojoin option contains ${sec.data.xxx} and option autojoin_dynamic is enabled (closes #1934) 2023-05-16 21:03:22 +02:00
Sébastien Helleu e11ce668a2 doc/api: add note about hashtable removal in function info_get_hashtable 2023-05-16 20:15:20 +02:00
Sébastien Helleu 91bcfbb4e8 core: move creation of info_hashtable "secured_data" in plugin-api-info.c 2023-05-16 20:00:48 +02:00
Sébastien Helleu 17f3687e28 core: fix partial completion when the common prefix found is empty (closes #340) 2023-05-16 19:45:12 +02:00
Sébastien Helleu 357323b8fc typing: remove nicks typing even when option typing.look.enabled_self is off (closes #1718) 2023-05-16 13:29:09 +02:00
Sébastien Helleu cfc85b7fea typing: fix type and name of variable for key in hashtable typing_status_nicks 2023-05-16 13:23:07 +02:00
Sébastien Helleu 2a3d98c996 irc: display command 437 on server buffer when nickname cannot change while banned on channel (closes #88) 2023-05-16 13:15:45 +02:00
Sébastien Helleu 8d35e67dd6 irc: add modifier "irc_cap_sync_req" (closes #1767) 2023-05-15 20:10:28 +02:00
Sébastien Helleu d857c91a59 irc: add comments in "cap" callback 2023-05-15 20:02:45 +02:00
Sébastien Helleu 518c0e3ae3 irc: remove unused variable 2023-05-15 08:10:58 +02:00
Sébastien Helleu 20b7f406f8 irc: fix use of uninitialized variable 2023-05-15 08:10:03 +02:00
Sébastien Helleu e589f3471b doc/user: update note about chars replaced in IRC tags (trigger) 2023-05-15 08:08:42 +02:00
Sébastien Helleu 2c22626106 trigger: use new format for IRC tags in messages 2023-05-15 07:57:16 +02:00
Sébastien Helleu bd4507e99d irc: fix format of IRC tags displayed in messages (closes #1929)
Changes:

- use "=" to separate key from value, add it only if value is set (any string,
  including empty string)
- do not convert "_" to "-" in key
2023-05-14 21:25:20 +02:00
Sébastien Helleu 46b9428f9e tests: reverse arguments in calls to STRCMP_EQUAL 2023-05-14 18:52:23 +02:00
Nils Görs 78ebe63105 core: update German translations 2023-05-14 15:50:41 +02:00
Sébastien Helleu 1aded6eaf4 core: update translations (issue #1923) 2023-05-14 15:33:37 +02:00
Sébastien Helleu a6b8c95519 irc: do not display multiline message if capability "draft/multiline" is not enabled (issue #1923) 2023-05-14 15:33:37 +02:00
Sébastien Helleu 060cb48094 irc: ignore BATCH commands when capability "batch" is not enabled (issue #1292) 2023-05-14 15:33:30 +02:00
Sébastien Helleu 283c9d7ccf irc: do not allow send of empty messages (single line or multiline) 2023-05-14 15:32:47 +02:00
Sébastien Helleu ac83130dd7 irc: add test of privmsg message parsing with empty text 2023-05-14 15:32:47 +02:00
Sébastien Helleu c31af39ada irc: set "input_multiline" to 1 in buffers only if capability draft/multiline is enabled (issue #1923) 2023-05-14 15:32:43 +02:00
Sébastien Helleu 537d18ede5 core: allow to reset buffer property "input_multiline" to 0 even if there are lines in buffer (issue #1923) 2023-05-14 15:32:39 +02:00
Sébastien Helleu 128fbe0d5b irc: add support of "LINELEN" in message 005 (max message length in bytes) (closes #1927) 2023-05-14 15:32:39 +02:00
Sébastien Helleu 1116474c45 irc: reset all internal servers variables when disconnecting 2023-05-14 15:32:39 +02:00
Sébastien Helleu 176a106771 irc: add support of capability "draft/multiline" (closes #1923) 2023-05-14 15:32:39 +02:00
Sébastien Helleu e8b5d73421 irc: return arraylist instead of hashtable in function irc_server_sendf (issue #1923) 2023-05-14 15:32:35 +02:00
Sébastien Helleu 2154b440d2 irc: don't split messages on "\n" in function irc_server_sendf (issue #1923)
The function now allows only a single message. Newline chars ("\n") are allowed
in messages but not used as message separator.

This is a preparation work for the support of capability "draft/multiline".
2023-05-14 15:32:26 +02:00
Sébastien Helleu 2c39906816 irc: rename constant IRC_COMMAND_CAP_SUPPORTED_COMPLETION to IRC_COMMAND_CAP_SUPPORTED 2023-05-13 19:45:10 +02:00
Sébastien Helleu c0f574d036 doc: group all CMake files into a single one to build all docs (all languages) 2023-05-13 19:44:14 +02:00
Sébastien Helleu 6415c09a07 core: add quotes around paths in CMake files (closes #29) 2023-05-13 11:59:18 +02:00
Sébastien Helleu adbfd27660 core: fix completion after newline in input (closes #1925) 2023-05-12 17:53:02 +02:00
Sébastien Helleu 6d7f10ef20 core: fix execution of multiple commands separated by newline when there are 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-05 20:28:11 +02:00
Sébastien Helleu 25d7192677 api: don't split on newline by default in functions command and 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-05-04 21:06:32 +02:00
Sébastien Helleu bbbe83370f doc/user: add missing French translation for cursor key l 2023-05-04 07:09:12 +02:00
Sébastien Helleu c73191ab05 doc/scripting: add missing French translation for Tcl null values 2023-05-04 07:06:29 +02:00
Nils Görs 7aaa617643 core: update German translations 2023-05-03 22:58:22 +02:00
Sébastien Helleu f6b69c9098 irc: add support of capability "batch" (closes #1292) 2023-05-03 22:11:31 +02:00
Ivan Pešić bd5e8dc33b doc: Update Serbian documentation 2023-05-03 20:29:27 +02:00
Ivan Pešić e6bddcafee core: Update Serbian translation 2023-05-03 20:29:27 +02:00
Nils Görs 629afd3301 core: update German translations 2023-05-01 22:02:02 +02:00
Sébastien Helleu 21f972b0a5 trigger: add translation for first line of displayed triggers 2023-05-01 21:44:37 +02:00
Sébastien Helleu e75009a461 core: add enabled/disabled status color in output of /filter list (closes #1820) 2023-05-01 20:23:48 +02:00
Sébastien Helleu 385b1d0133 core: remove options trigger.color.trigger and trigger.color.trigger_disabled (issue #1820)
These options are used instead:

- weechat.color.chat_status_disabled
- weechat.color.chat_status_enabled
2023-05-01 20:16:59 +02:00
Sébastien Helleu b8f9b83500 core: add options weechat.color.chat_status_disabled and weechat.color.chat_status_enabled (issue #1820) 2023-05-01 20:12:56 +02:00
Sébastien Helleu 5c245af669 core: move line from "New features" to "Build" 2023-05-01 19:14:33 +02:00
Nils Görs 87b7d03cce core: update German translations 2023-05-01 18:11:02 +02:00
Sébastien Helleu ed2ab8a6d0 irc: fix help on sort option in command /autojoin (issue #1876) 2023-05-01 17:49:46 +02:00
Sébastien Helleu 000d550ff8 core: keep only first message line in modifier "weechat_print" when input_multiline is not set in buffer 2023-05-01 17:36:17 +02:00
Nils Görs d8d00926ff core: update German translations 2023-05-01 17:33:18 +02:00
Sébastien Helleu b127bed0fc irc: add option buffer in command /autojoin sort (closes #1876) 2023-05-01 17:02:51 +02:00
Sébastien Helleu 66d79e2d23 core: keep only first message line in hook line when input_multiline is not set in buffer 2023-05-01 14:53:59 +02:00
Nils Görs 9f2e5a98ea core: update German translations 2023-04-28 08:20:13 +02:00
Sébastien Helleu f90d8667a4 irc: add ${username} in server options "nicks" and "username", change their default values to use it 2023-04-27 22:59:24 +02:00
Sébastien Helleu 8822843254 core: add missing French translation 2023-04-27 22:43:10 +02:00
Sébastien Helleu bc5baf1f05 fset: change default value of option fset.color.value_selected from 80 to 159 (issue #1920) 2023-04-27 22:36:38 +02:00
Nils Görs 3ba2934dfa core: update German translations 2023-04-27 10:10:46 +02:00
Nils Görs a025518509 core: update German translations 2023-04-27 08:45:03 +02:00
Sébastien Helleu 2e42da35f9 core: update ChangeLog (issue #1920) 2023-04-26 21:13:07 +02:00
Sébastien Helleu 4f3524dbac core: update translations (issue #1920) 2023-04-26 21:12:56 +02:00
Sébastien Helleu d35218e991 irc: change default colors (issue #1920)
Default values changed:

- irc.color.reason_quit: default -> 244
- irc.color.topic_new: white -> 36
- irc.color.topic_old: default -> 244
2023-04-26 21:08:16 +02:00
Sébastien Helleu c12b7ffd3e core: enable option weechat.look.color_inactive_time by default (issue #1920) 2023-04-26 21:08:13 +02:00
Sébastien Helleu 156bdc6444 core: change default chat colors (issue #1920)
Default values changed:

- weechat.color.chat_delimiters: green -> 22
- weechat.color.chat_highlight_bg: magenta -> 124
- weechat.color.chat_inactive_window: default -> 240
- weechat.color.chat_nick_colors: add many colors
- weechat.color.chat_nick_offline: default -> 242
- weechat.color.chat_nick_offline_highlight_bg: blue -> 17
- weechat.color.chat_prefix_buffer: brown -> 180
- weechat.color.emphasized_bg: magenta -> 54
- weechat.color.nicklist_away: cyan -> 240
2023-04-26 21:08:12 +02:00
Sébastien Helleu 855f75369d logger: change default colors (issue #1920)
Default values changed:

- logger.color.backlog_end: default -> 246
- logger.color.backlog_line: default -> 246
2023-04-26 21:08:11 +02:00
Sébastien Helleu 3f2a377e7a script: change default colors (issue #1920)
Default values changed:

- script.color.status_autoloaded: cyan -> 39
- script.color.text_bg_selected: red -> 24
- script.color.text_date: default -> 65
- script.color.text_date_selected: white -> 50
- script.color.text_delimiters: default -> 240
- script.color.text_description: default -> 249
- script.color.text_extension: default -> 242
- script.color.text_extension_selected: white -> 248
- script.color.text_name: cyan -> 73
- script.color.text_name_selected: lightcyan -> 51
- script.color.text_version: magenta -> 180
- script.color.text_version_loaded: default -> 246
- script.color.text_version_selected: lightmagenta -> 224
2023-04-26 21:08:09 +02:00
Sébastien Helleu 8c9e90524b fset: enable option fset.look.use_color_value by default (issue #1920) 2023-04-26 21:08:07 +02:00
Sébastien Helleu 6f1a66924f fset: add options fset.color.color_name and fset.color.color_name_selected (issue #1920) 2023-04-26 21:08:06 +02:00
Sébastien Helleu c4c4ae3715 fset: change default colors (issue #1920)
Default values changed:

- fset.color.description: default -> 242
- fset.color.description_selected: white -> default
- fset.color.line_marked_bg1: default -> 17
- fset.color.line_marked_bg2: default -> 17
- fset.color.line_selected_bg1: blue -> 24
- fset.color.line_selected_bg2: red -> 24
- fset.color.name_changed: brown -> 185
- fset.color.type: green -> 138
- fset.color.type_selected: lightgreen -> 216
- fset.color.value: cyan -> 38
- fset.color.value_changed: brown -> 185
- fset.color.value_selected: lightcyan -> 80
- fset.format.option2: ${color:darkgray} -> ${color:244}
2023-04-26 21:08:04 +02:00
Sébastien Helleu 5973ceffb8 core: change default prefix_suffix char and color (issue #1920)
Default values changed:

- weechat.look.prefix_suffix: "|" -> "│"
- weechat.color.chat_prefix_suffix: green -> 24
2023-04-26 21:08:02 +02:00
Sébastien Helleu 875d6e7e6f buflist: change default background color of current buffer (issue #1920)
Default value changed:

- buflist.format.buffer_current: "${color:,blue}${format_buffer}" ->
  "${color:,17}${format_buffer}"
2023-04-26 21:08:00 +02:00
Sébastien Helleu cd1d80c1cb core: change default color of bars and windows separators (issue #1920)
Default value changed:

- weechat.color.separator: blue -> 236
2023-04-26 21:07:56 +02:00
Sébastien Helleu 6d6c99f2ac core: change default background color of status and title bars (issue #1920)
Default values changed:

- weechat.bar.status.color_bg: blue -> 234
- weechat.bar.status.color_bg_inactive: darkgray -> 232
- weechat.bar.title.color_bg: blue -> 234
- weechat.bar.title.color_bg_inactive: darkgray -> 232
2023-04-26 21:07:50 +02:00
Sébastien Helleu 6f0440e459 core: add option weechat.color.status_name_insecure (issue #1920)
Default value of option weechat.color.status_name_tls is set to white instead
of lightgreen.

Now all servers/channels connected with TLS are white, and those without TLS
are lightmagenta.
2023-04-26 21:07:37 +02:00
Sébastien Helleu e8c48c0a1f core: always allow 256 colors, find nearest color if less colors are available in terminal (issue #1920) 2023-04-26 21:07:26 +02:00
Sébastien Helleu ff402fb6ec core: fix infinite loop on startup when running some gui commands before the switch to core buffer is performed (closes #1917) 2023-04-26 19:11:54 +02:00
Nils Görs 5481af963c doc: update German documentation 2023-04-26 11:49:47 +02:00
Nils Görs 6edf0ef003 core: update German translations 2023-04-26 11:46:54 +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
Sébastien Helleu df6dfcea11 core: move line from "New features" to "Bug fixes" (issue #1882) 2023-04-26 00:10:37 +02:00
Sébastien Helleu a22d6a1bf6 core: update ChangeLog 2023-04-26 00:09:53 +02:00
Andrew Potter 71382b6c0f ruby: Restore default SIGCHLD signal handler on unload
fixes #1889
2023-04-26 00:07:54 +02:00
Sébastien Helleu ac25043b27 core: add option split_return in command /input (closes #1916) 2023-04-25 22:10:48 +02:00
Sébastien Helleu 0debd47d3e core: update ChangeLog 2023-04-25 19:07:14 +02:00
Sébastien Helleu ea734b5924 doc/api: add variable "_chat_focused_line" in function hook_focus 2023-04-25 19:05:05 +02:00
Trygve Aaberge e51ffc1a6e core: add cursor key l to quote focused line
Fixes #1913
2023-04-25 00:11:30 +02:00
Trygve Aaberge a401fbf217 core: add _chat_focused_line variable to get the focused line
This contains the single line that you focused on, like _chat_word
contains the word that you focused on. This will be equal to
_chat_line_message if the chat line only contains a single line, but if
the chat line has multiple lines, _chat_line_message will contain all of
them, but _chat_focused_line will only contain the single line that was
focused.

Fixes part of #1913
2023-04-25 00:11:26 +02:00
Sébastien Helleu e00ec6710d irc: add message 742 (mode cannot be set) 2023-04-24 21:44:34 +02:00
Sébastien Helleu 28bb33aa5a irc: add message 415 (cannot send message to channel) 2023-04-24 21:43:57 +02:00
Sébastien Helleu 9f5e8efbe0 core: fix update of terminal title in some terminals like suckless terminal (stterm) (closes #1882) 2023-04-23 22:02:33 +02:00
Emir SARI 2d93f9d703 core: update Turkish translations (issue #1868) 2023-04-23 16:53:28 +02:00
Sébastien Helleu 3d79e2c9d2 Revert "core: remove deprecated parameters from command /input"
This reverts commit 2b7f745369.

Parameters removed are still used in scripts, and it's OK to keep them for a
while.
2023-04-23 09:53:50 +02:00
Nils Görs da49adebc3 core: update German translations 2023-04-22 09:35:19 +02:00
Sébastien Helleu 3a9ac529d5 buflist: update example in /help buflist.look.sort 2023-04-22 08:06:33 +02:00
Sébastien Helleu 731c2d66bc buflist: add example to sort on hotlist activity in /help buflist.look.sort 2023-04-21 21:15:45 +02:00
Sébastien Helleu 2c82a1a35f core: update ChangeLog 2023-04-20 22:39:02 +02:00
Sébastien Helleu 078da85f5e core: keep only first message line in hdata update of line_data when input_multiline is not set in buffer 2023-04-20 22:36:18 +02:00
Sébastien Helleu 5193c0aeea core: do now allow buffer property "input_multiline" to be reset to 0, except if buffer has no lines 2023-04-20 22:36:18 +02:00
Trygve Aaberge e5573bfb4d core: still split on printf when input_multiline isn't set
If we have chat lines with multiple lines in buffers without
input_multiline set, there can be an issue if a trigger is run on that
line. If the trigger runs a command which includes the message, then the
command is split (since input_multiline isn't set), and if any of the
lines in the message starts with a command, that command is executed.

To prevent this, only avoid splitting on newlines in printf if
input_multiline is set, so only such buffers can have chat lines with
newline characters.

See https://github.com/weechat/weechat/pull/1909 for more details.
2023-04-19 16:47:44 +02:00
Trygve Aaberge 07fa6b12a6 core: don't split on newline characters in printf_date_tags
With support for rendering newline characters as new lines, we don't
need to split the message on newline characters anymore in
printf_date_tags. This allows you to print a line with multiple lines.
2023-04-19 16:47:44 +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 2b7f745369 core: remove deprecated parameters from command /input
Parameters removed:

- jump_smart
- jump_last_buffer
- jump_last_buffer_displayed
- jump_previously_visited_buffer
- jump_next_visited_buffer
- hotlist_clear
- hotlist_remove_buffer
- hotlist_restore_buffer
- hotlist_restore_all
- set_unread_current_buffer
- set_unread
- switch_active_buffer
- switch_active_buffer_previous
- zoom_merged_buffer
2023-04-19 16:44:42 +02:00
Sébastien Helleu 19baa79d64 core: convert deprecated commands bound to keys when upgrading weechat.conf to v2 2023-04-19 16:35:39 +02:00
Sébastien Helleu 389e719302 core: bump guile version to 3.0 in cygwin 2023-04-18 22:45:35 +02:00
Sébastien Helleu ee7cd3de5c doc/user: update links to release notes 2023-04-17 22:31:26 +02:00
Sébastien Helleu b5e81f931b doc: update header and remove links in ChangeLog and release notes 2023-04-16 22:05:45 +02:00
Sébastien Helleu 2eaaa19beb core: simplify print of stable/devel version number in version.sh 2023-04-15 23:52:29 +02:00
Sébastien Helleu 1eb8e21d4b core: hide error when git tag does not exist 2023-04-15 16:59:48 +02:00
Sébastien Helleu 412b9de263 core: add missing space before trailing backslash 2023-04-15 12:16:18 +02:00
Sébastien Helleu c8780d2d7a core: fix description of script bump_version.sh 2023-04-15 11:58:20 +02:00
Sébastien Helleu a5f5008c77 core: add missing quotes around variables 2023-04-15 11:46:45 +02:00
Sébastien Helleu bbc5c4948a core: update ChangeLog 2023-04-15 11:15:02 +02:00
Sébastien Helleu c391a49cc1 core: add quote around stable/devel versions 2023-04-15 11:12:56 +02:00
Sébastien Helleu 4090680ef7 core: add "stable-number" and "devel-number" in version.sh
This is the same value returned by the info "version_number" in a running
WeeChat.
2023-04-15 11:10:19 +02:00
Sébastien Helleu 72477b49d7 api: add optional argument with version in info "version_number" 2023-04-15 11:09:59 +02:00
Sébastien Helleu 15d5fce00a doc/api: add more examples on function util_version_number 2023-04-15 11:00:00 +02:00
Sébastien Helleu 49ff42bef5 core: remove unnecessary condition in comparison of timeval structures
Ref: https://github.com/weechat/weechat-relay/pull/3
2023-04-14 13:06:18 +02:00
Sébastien Helleu 70bf3f8671 core: replace "SSL" by "TLS" in /help upgrade (issue #1903) 2023-04-13 20:11:03 +02:00
Nils Görs 2085c470e6 core: update German translations 2023-04-13 11:02:09 +02:00
Sébastien Helleu aa1d2a709d core: update translations (issue #1903) 2023-04-12 17:17:52 +02:00
Sébastien Helleu fe1ab06924 irc: improve short description of server (issue #1903) 2023-04-12 17:17:49 +02:00
Sébastien Helleu 6e17d39adf irc: fix URL of doc on capability negotiation (issue #1903) 2023-04-12 17:17:46 +02:00
Sébastien Helleu e516a0714f irc: add support of RFC 7194 (default port 6697 for TLS) (issue #1903) 2023-04-12 17:17:43 +02:00
Sébastien Helleu 55a853eb76 core: add TLS changes in release notes (issue #1903) 2023-04-12 17:17:41 +02:00
Sébastien Helleu 95b30f8da5 irc: connect with TLS and port 6697 by default (issue #1903) 2023-04-12 17:17:38 +02:00
Sébastien Helleu 8eb096b3ef relay: rename "ssl" options and protocol to "tls" (issue #1903) 2023-04-12 17:17:34 +02:00
Sébastien Helleu dec237b104 irc: rename "ssl" options to "tls" (issue #1903) 2023-04-12 17:17:30 +02:00
Sébastien Helleu 23b870ec1d core: rename option weechat.color.status_name_ssl to weechat.color.status_name_tls (issue #1903) 2023-04-12 17:17:26 +02:00
Sébastien Helleu ff2f94c12b core: replace SSL by TLS in comments (issue #1903) 2023-04-12 17:17:23 +02:00
Sébastien Helleu 9ccdc5aff6 irc: check that IRC URL starts with "irc" (issue #1903) 2023-04-12 17:17:20 +02:00
Sébastien Helleu 62171c5974 irc: add more info in description of function irc_server_alloc_with_url (issue #1903) 2023-04-12 17:17:13 +02:00
Sébastien Helleu e5c1945931 irc: set gnutls_sess, tls_cert and tls_cert_key to NULL by default in server (issue #1903) 2023-04-12 17:17:00 +02:00
Nils Görs 00c847ee56 core: update German translations 2023-04-12 10:03:24 +02:00
Sébastien Helleu d58d4dd8fa core: improve description of arguments in bump version script 2023-04-08 11:13:28 +02:00
Sébastien Helleu 49df360652 core: remove WEECHAT_DEVEL_FULL from version.sh 2023-04-08 11:08:33 +02:00
Sébastien Helleu 5f7ead023f core: add way to read stable major/minor/patch version 2023-04-08 09:18:39 +02:00
Sébastien Helleu 7ced1821db core: add contributor (issue #1904) 2023-04-08 08:21:31 +02:00
Sébastien Helleu 6be7960e1c core: update ChangeLog (issue #1904, issue #1905) 2023-04-08 08:19:50 +02:00
wfrsk cd740fc18b lua: fix crash with print when the value to print is not a string 2023-04-08 08:16:02 +02:00
Sébastien Helleu 127c8e0eb6 core: change default color of "mouse_status" item to lightgreen 2023-04-07 18:56:35 +02:00
Sébastien Helleu ce1adf0fd7 core: add item "mouse_status" in default status bar 2023-04-07 18:54:51 +02:00
Sébastien Helleu 6247598d3f core: fix comment in bump version script 2023-04-07 08:10:10 +02:00
Grady Martin f4c8b9e29f Update Japanese translations
This fixes a small typo.
2023-04-07 08:03:37 +02:00
Sébastien Helleu 41c1cc6e0b doc: add BYPRODUCTS in doc-autogen target
This is needed for Ninja and the "clean" target now removes all auto-generated
files.
2023-04-05 23:29:17 +02:00
Sébastien Helleu f1e7f861e9 core: fix pointer to hash and hash_temp in doc generator 2023-04-05 22:44:11 +02:00
Sébastien Helleu 0b20cb449a tests: add tests on function irc_server_alloc_with_url 2023-04-05 21:17:03 +02:00
Sébastien Helleu 5c801f2741 irc: display a warning if command name in option irc.msgbuffer.* is not lower case 2023-04-05 21:04:54 +02:00
Sébastien Helleu 87216279ca irc: display a warning if CTCP name in option irc.ctcp.* is not lower case 2023-04-05 20:56:48 +02:00
Sébastien Helleu b6a59be317 irc: search options irc.ctcp.* with lower case ctcp string 2023-04-05 20:47:20 +02:00
Sébastien Helleu e75c61d7aa doc/user: remove Javascript from plugins compiled with CMake option ENABLE_SCRIPTS
The Javascript plugin is not built by default any more since v2.9 and must be
explicitly enabled with `-DENABLE_JAVASCRIPT=ON`.
2023-04-03 21:09:05 +02:00
Sébastien Helleu 924c543430 core: ensure tag/commit are not done upon startup, do not undo tag/commit in case of error 2023-04-03 20:06:46 +02:00
Sébastien Helleu 1c3b871204 irc: don't switch to buffer of joined channel if it was not manually joined nor present in server autojoin option 2023-04-03 20:00:32 +02:00
Sébastien Helleu b8f40cfa99 core: add script release.sh 2023-04-02 17:51:33 +02:00
Sébastien Helleu 058c9f8b84 core: add script bump_version.sh 2023-04-02 14:01:21 +02:00
Sébastien Helleu ff85d00e7f irc: update autojoin option with redirected channels when autojoin_dynamic is enabled (closes #1898) 2023-04-02 13:49:25 +02:00
Nils Görs e15bd25f37 core: update German translations 2023-04-01 22:44:33 +02:00
Sébastien Helleu 4aabe8681f core, plugins: set options to NULL by default, refactor config init functions 2023-04-01 20:56:11 +02:00
Sébastien Helleu 3e9524ee65 alias: rename all aliases to lower case on upgrade (issue #1872) 2023-04-01 16:47:23 +02:00
Nils Görs e23100c09b core: update German translations 2023-03-31 23:19:34 +02:00
Sébastien Helleu f330ff865c ci: enable build of incomplete docs on macOS 2023-03-31 21:16:22 +02:00
Sébastien Helleu 6665cc866a doc: add CMake option ENABLE_DOC_INCOMPLETE to force build of incomplete docs (closes #1901) 2023-03-31 21:08:56 +02:00
Sébastien Helleu 10b2fa3a61 irc: fix target buffer for commands 432/433 when the nickname looks like a channel 2023-03-31 19:54:26 +02:00
Sébastien Helleu 7558fe7c1b build: add condition to enable gcc/g++ specific options
This fixes warnings with clang.
2023-03-31 19:09:12 +02:00
Sébastien Helleu 0f3f7c3b37 core: replace key meta2- by meta-[ in comments 2023-03-31 18:59:04 +02:00
Sébastien Helleu 0cf723ec1a doc/faq: replace key meta2- by meta-[ 2023-03-31 18:59:04 +02:00
Sébastien Helleu 1684f60207 core: fix key meta-[O (unfocus with xterm) (closes #1900) 2023-03-31 18:58:49 +02:00
Sébastien Helleu 613dc73fd4 core: remove keys meta-[I and meta-[G for pgup/pgdn (issue #1900)
It seems no terminal return such codes any more for pgup/pgdn, and `meta-[I` is
conflicting with the xterm terminal "focus in" key code.

The keys are also removed from config when converting old keys, but only if
they are bound to the default command (`/window page_up` for `meta2-I` and
`/window page_down` for `meta2-G`).
2023-03-31 18:57:58 +02:00
Nils Görs 867536f8ce core: update German translations 2023-03-31 11:29:48 +02:00
Sébastien Helleu 7e7b015aa1 core: update translations 2023-03-30 22:12:44 +02:00
Sébastien Helleu 672945a359 logger: add info "logger_log_file" 2023-03-30 22:04:33 +02:00
Sébastien Helleu 6a2ecc90b3 spell: check buffer pointer received in info "spell_dict" 2023-03-30 22:02:12 +02:00
Sébastien Helleu 35067512e9 core: update translations 2023-03-30 21:58:46 +02:00
Sébastien Helleu 7c6d490a4e doc: update Ubuntu Bionic Debian patch to remove asciidoctor option
The option "--failure-level" has been added in Asciidoctor 1.5.7 and the
version in Ubuntu Bionic is 1.5.5.
2023-03-30 07:42:12 +02:00
Sébastien Helleu a62f2dac58 ci: disable build of doc when NLS is disabled 2023-03-30 01:34:55 +02:00
Sébastien Helleu c243e4add9 ci: disable build of doc on macOS
Since the PHP plugin is not built, the doc can not be built any more (all
plugins must be compiled to generate autogen files).
2023-03-30 01:34:55 +02:00
Sébastien Helleu d24f6295d4 doc: remove unnecessary empty lines in autogen files 2023-03-30 01:34:55 +02:00
Sébastien Helleu 3eeef346b1 doc: update autogen files only if changed, add autogen dependencies on docs 2023-03-30 01:34:55 +02:00
Sébastien Helleu 6dbfb638c6 doc: convert docgen.py to C, remove autogen files from repository, add parameter --doc-gen
Changes:

- build of doc now requires weechat-headless, translations and all plugins
- convert docgen.py to C
- remove `autogen_*` files from repository
- add command line parameter `--doc-gen` in `weechat-headless` to build
  autogen files
- build .mo files with directories like the installed ones
  (eg: "<lang>/LC_MESSAGES/weechat.mo")
- remove javascript chapter from user's guide
2023-03-30 01:34:55 +02:00
Sébastien Helleu 4548b25b78 doc: make asciidoctor fail on any warning 2023-03-29 20:48:18 +02:00
Sébastien Helleu 974ac9ad5f core: add separate function to get translated help for values of color options 2023-03-28 22:32:54 +02:00
Sébastien Helleu 7c5d484f59 core: check that infolist is not NULL in next/prev/reset_item_cursor functions 2023-03-28 22:07:11 +02:00
Sébastien Helleu 742871fd3e doc: sort commands by plugins in auto-generated files 2023-03-27 22:31:02 +02:00
Sébastien Helleu e816381777 core: remove extra separator in Serbian translation 2023-03-27 22:18:01 +02:00
Sébastien Helleu 77a30e09cb core: add missing space in Polish translation 2023-03-27 22:05:28 +02:00
Sébastien Helleu 4b5987e37c doc: update German auto-generated files 2023-03-27 14:23:11 +02:00
Nils Görs debf79118f core: update German translations 2023-03-27 13:06:12 +02:00
Sébastien Helleu b894166d1b core: update ChangeLog (issue #1504) 2023-03-26 21:08:56 +02:00
Sébastien Helleu 181cd4f276 core: update translations (issue #1504) 2023-03-26 21:07:17 +02:00
Trygve Aaberge c63321bb7a core: Add an option to start multiline input text on a new line
This does the same as the lead_linebreak option in multiline.pl. That
is, when the input contains more than one line, the first line will be
displayed beneath the previous items in the bar. This is practical
because all the lines in the input will be aligned.

Related to #1498
2023-03-26 21:02:19 +02:00
Sébastien Helleu af493ac976 doc/user: add keys to move and delete in a single line and whole input (issue #1503) 2023-03-26 20:31:07 +02:00
Sébastien Helleu fe41da1506 core: update translations (issue #1503) 2023-03-26 20:30:17 +02:00
Sébastien Helleu 9bb3acd2c7 core: update ChangeLog (issue #1503) 2023-03-26 20:30:17 +02:00
Sébastien Helleu ec671fe447 core: fix code style (issue #1503) 2023-03-26 20:30:17 +02:00
Sébastien Helleu a508640fa0 core: add keys shift-left and shift-right with same commands as left and right (issue #1503) 2023-03-26 20:30:17 +02:00
Sébastien Helleu e6b1905679 core: revert keys meta-r (delete line) and meta-R (delete input) (issue #1503) 2023-03-26 20:30:12 +02:00
Trygve Aaberge 9ac30381fa core: Implement commands for operating on a single input line
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-26 15:52:19 +02:00
Sébastien Helleu 20cea84917 doc: update German auto-generated file 2023-03-26 12:36:23 +02:00
Nils Görs 56d38184b4 core: update German translations 2023-03-26 11:24:59 +02:00
Sébastien Helleu bfca5e3c44 core: update translations 2023-03-26 10:58:59 +02:00
Sébastien Helleu fa057f663e core: add missing source files to build translations 2023-03-26 10:58:35 +02:00
Sébastien Helleu c03a432f7a core: remove obsolete files used to build translations with autotools 2023-03-26 10:51:16 +02:00
Sébastien Helleu e21144eb1f tests: add tests on gui bar functions 2023-03-26 10:42:31 +02:00
Sébastien Helleu 5b33d1e21b core: fix default value of bar options
The previous commit e385eec1d6 fixed default
value for bar added by plugins and option "items" in all bars.

This commit fixes the default value of all bar options.
2023-03-26 10:38:16 +02:00
Sébastien Helleu cd119b9ee5 core: add packaging changes in release notes 2023-03-25 21:32:23 +01:00
Sébastien Helleu fcbfa13bf3 core: update ChangeLog and release notes (issue #1502) 2023-03-25 21:15:39 +01:00
Sébastien Helleu 2586b0326d doc: update auto-generated files with options 2023-03-25 21:15:35 +01:00
Sébastien Helleu eeb680783b tests: add placeholder for function gui_key_paste_finish 2023-03-25 19:23:46 +01:00
Sébastien Helleu b71b6a48a0 core: fix typo and code style 2023-03-25 18:59:06 +01:00
Trygve Aaberge f86972513b core: Include blank lines in paste line count
Since pastes are now inserted into the input instead of sent, and blank
lines are preserved in the input, they should now be counted too.
2023-03-25 18:53:12 +01:00
Trygve Aaberge 3e331d3772 core: Increase default value for paste_max_lines to 100
Now that pasting text doesn't cause it to be sent immediately, but
rather inserted in the input line, the paste confirmation isn't really
necessary anymore for small pastes. If you paste by mistake you can just
press ctrl-_ to undo it.

Large pastes may cause weechat to hang for a while, so keep the paste
confirmation for those.

If you don't use bracketed paste you would still want to keep it at 1,
because it's not detected as a paste otherwise, but as far as I know
basically all terminal emulators support bracketed paste, so I think
it's fine to disable the confirmation by default.
2023-03-25 18:53:12 +01:00
Trygve Aaberge d15203dbf5 core: Remove option weechat.look.paste_auto_add_newline
This option existed so that you could edit the last line of a multiline
paste before it was sent. Now that pasting multiple lines don't cause
the lines to be sent immediately anymore, this option isn't useful
anymore since you can always edit pasted text before it's sent.
2023-03-25 18:53:12 +01:00
Trygve Aaberge 68040f210a core: Always remove final newline when pasting
Since pasting doesn't send the line now, it's more practical to always
remove the final newline so you don't end up with an empty line at the
end of the input buffer.

Fixes a part of #1498
2023-03-25 18:53:12 +01:00
Trygve Aaberge 37decf3a7c core: Replace newline/tabs after paste is accepted
Instead of replacing newline/tabs when paste is started, do it when the
paste is accepted instead. This makes a difference if you paste again
while the paste confirmation is active, where instead of running it
again for each paste, it will now be run for all the text at the end.

For now this doesn't make a practical difference, but the next commit
will remove the final newline when multiple lines are pasted too, which
we only want to do for the final paste.
2023-03-25 18:53:12 +01:00
Trygve Aaberge 99f6f9e454 core: When pasting, insert text in input instead of interpreting keys
This makes pasted text appear in the input bar, instead of each line
being sent. This allows you to edit the text before sending it, and it
makes multiline paste supported in buffers with input_multiline on.

It also replaces \r with \n in pasted text because most terminals (e.g.
xterm and urxvt) print lines separated by \r when pasting as if return
was pressed between each line, even though the copied text uses \n. The
text sent to the buffer should use \n, not \r, so we have to replace it.

Note that this only works when bracketed paste is enabled or the paste
confirmation as shown, because non-bracketed paste with no paste
confirmation is not detected as a paste.

Fixes a part of #1498
2023-03-25 18:53:12 +01:00
Trygve Aaberge cfaf68ae61 core: Parse bracketed paste also when paste pending
When in paste pending mode, the bracketed paste escape sequence should
still be interpreted, so that if you paste while in paste pending the
same things as when pasting in normal mode still happens, i.e. the
escape sequence is removed, ctrl-y/n is not interpreted and newline/tabs
are replaced.
2023-03-25 18:53:12 +01:00
Sébastien Helleu 8fe4c84b72 core: fix uninitialized variable chunks2_count when key_name and key_name_alias are the same 2023-03-25 18:04:08 +01:00
Sébastien Helleu 94cbed2585 core: fix memory leak in function config_file_read_internal
This was caused by commit 66571a0b63.
2023-03-25 17:56:07 +01:00
Sébastien Helleu 675e63948c core: remove unnecessary assignment 2023-03-25 17:11:15 +01:00
Sébastien Helleu 1b99f861a3 core: remove commented code 2023-03-25 17:11:10 +01:00
Sébastien Helleu 2da5eaf81c core: replace .bz2 by .xz in SRC_URI of cygport template 2023-03-25 11:22:28 +01:00
Sébastien Helleu cf3ba52828 core: remove obsolete cpack config
This config was used to build binary package of WeeChat, which was never
released in this format.
2023-03-25 11:09:04 +01:00
Sébastien Helleu 2550153f26 core: remove build of .bz2 and .zst files in make dist 2023-03-25 11:02:22 +01:00
Sébastien Helleu a2ddfdf5a6 core: fix gcc warning on snprintf 2023-03-25 10:00:54 +01:00
Sébastien Helleu 15f0f7e369 core: add option legacy in command /key 2023-03-24 23:07:40 +01:00
Sébastien Helleu 92b0bc9f10 core: remove RPM packaging
The weechat.spec was obsolete and openSUSE has its own here:
https://build.opensuse.org/package/view_file/server:irc/weechat/weechat.spec?expand=1
2023-03-23 22:30:12 +01:00
Sébastien Helleu dc8f78163f core: replace set -e by set -o errexit in shell scripts 2023-03-23 22:01:48 +01:00
Sébastien Helleu 29ac28f94a core: add extra compiler options to check overflow of destination buffer and output truncation 2023-03-23 18:50:48 +01:00
Sébastien Helleu 952779a74c core: remove autotools related files in .gitignore 2023-03-22 21:10:25 +01:00
Sébastien Helleu 98a599d079 core: move buffer functions and remove them from header file 2023-03-21 20:14:35 +01:00
Sébastien Helleu f48f1c4700 core: remove unused function gui_buffer_is_scrolled 2023-03-21 20:01:12 +01:00
Sébastien Helleu 6edcc6ed41 core: remove unused function gui_buffer_search_by_layout_number 2023-03-21 19:58:53 +01:00
Sébastien Helleu be64e8cddc core: add relative move of read marker with /buffer set unread [+/-]N (closes #1895) 2023-03-20 20:38:24 +01:00
Sébastien Helleu 8475b216a4 doc: update German auto-generated file 2023-03-19 20:03:28 +01:00
Nils Görs e2286a36b4 core: update German translations 2023-03-19 19:55:45 +01:00
Sébastien Helleu dd54e26b4f core: add function bar_new in release notes 2023-03-19 18:45:18 +01:00
Sébastien Helleu 40fa2605b1 core: update ChangeLog (issue #846) 2023-03-19 18:25:05 +01:00
Sébastien Helleu cee14f10d6 core: add option rename in command /bar 2023-03-19 18:24:39 +01:00
Sébastien Helleu e4f181beb3 core: display an error with /bar add when the bar already exists 2023-03-19 17:42:12 +01:00
Sébastien Helleu 6bd49dd595 core: add value "name" in completion of /bar set <name> 2023-03-19 17:26:06 +01:00
Sébastien Helleu b31666cc86 doc/api: fix typo 2023-03-19 17:24:07 +01:00
Sébastien Helleu e385eec1d6 core: fix default value of options for bars added by plugins
When the bar name already exists, the function `bar_new` returns the pointer to
the bar (instead of NULL) and sets the default value for all options with the
values received.
2023-03-19 17:05:26 +01:00
Sébastien Helleu 3ebfe3e117 core: fix long lines in function gui_bar_use_temp_bars 2023-03-19 17:04:13 +01:00
Sébastien Helleu b846df9e0e core: allow any valid boolean value in command /bar set <name> separator xxx 2023-03-19 17:02:14 +01:00
Sébastien Helleu 8c4f02fe5a core: fix typo on bar option name "separator" 2023-03-19 16:53:05 +01:00
Sébastien Helleu c7090ae14a core: use a fixed size buffer to create a bar option 2023-03-19 16:47:46 +01:00
Sébastien Helleu 111525792d core: use a fixed size buffer to rename a bar 2023-03-19 16:47:46 +01:00
Sébastien Helleu 0f4ef874ca core: do not call check callback when setting default value of option 2023-03-19 16:47:46 +01:00
Sekulum Forka d47d9c5ed5 doc/man: call brackets correctly in the serbian translation 2023-03-19 10:08:03 +01:00
Sekulum Forka 16f2c21061 doc/man: fix grammatical mistakes in the serbian translation 2023-03-19 10:08:03 +01:00
Sébastien Helleu ca7da2c961 core: run config hooks only when value or default value is actually changed in set/reset/unset functions 2023-03-19 09:59:33 +01:00
Sébastien Helleu 3e5d77fdff core: optimize commands /reset and /unset with a mask 2023-03-19 08:30:32 +01:00
Sébastien Helleu 0d49ffd053 core: add command /reset to reset options to their default values 2023-03-19 08:02:10 +01:00
Sébastien Helleu 2e82c41c1a core: don't translate the key context (default/search/cursor/mouse) 2023-03-19 07:17:44 +01:00
Sébastien Helleu 89701a3cc0 core: mention breaking changes in release notes 2023-03-18 16:09:47 +01:00
Sébastien Helleu 34e34d28db core: bump version to 4.0.0-dev, follow "practical" semantic versioning 2023-03-18 15:59:23 +01:00
Sébastien Helleu ff544f48fb core: update ChangeLog and release notes (closes #1238) 2023-03-18 15:21:17 +01:00
Sébastien Helleu 5f475ab8cf core: update translations 2023-03-18 15:20:31 +01:00
Sébastien Helleu f7a6bd422a doc: replace comma by underscore in name of option used in anchors 2023-03-18 15:19:08 +01:00
Sébastien Helleu 99ca276556 core: also display mouse codes with /debug key 2023-03-17 22:49:50 +01:00
Sébastien Helleu 64a553f91f core: change order of modifiers in mouse keys
Now the modifiers for mouse keys are in the same order as other keys: `alt-`
then `ctrl-`.
2023-03-17 19:18:30 +01:00
Sébastien Helleu 3640d187b8 core: split gui-curses.h into multiple headers 2023-03-17 18:52:30 +01:00
Sébastien Helleu 313b40235a core: fix search of commands with raw code and alias matching
When raw code and alias for a key are both matching, the raw code must always
have higher priority.

This commit fixes this behavior and gives priority to raw code.
2023-03-17 18:52:30 +01:00
Sébastien Helleu fe6b69c41c core: set insert_ok to 0 for backspace key 2023-03-17 18:52:30 +01:00
Sébastien Helleu e060a0e7f2 core: remove "%s" from translated message for key debug 2023-03-17 18:52:30 +01:00
Sébastien Helleu 2b1da0d910 core: add note about "shift-" modifier in /help key
The modifier "shift-" can only be used with the key names, not with simple
chars.
2023-03-17 18:52:30 +01:00
Sébastien Helleu c1db5c9549 core: refactor print of keys in debug mode
Changes:

- add function gui_key_debug_print_key
- change message "no key" by "no key binding"
- remove messages ""insert into input" / "ignored"
- add color for delimiters
2023-03-17 18:52:30 +01:00
Sébastien Helleu a54663d60c core: replace "\x01" by "^" and add color for delimiters in output of /debug key 2023-03-17 18:52:30 +01:00
Sébastien Helleu d9e084869a core: add modifiers, key names and combos in /help key 2023-03-17 18:52:30 +01:00
Sébastien Helleu 9afbf02a42 core: use order returned by gui_key_expand in gui_key_modifier_list 2023-03-17 18:52:30 +01:00
Sébastien Helleu 0c4a5528ac core: display a warning when trying to bind a raw key code or invalid key (missing comma) 2023-03-17 18:52:30 +01:00
Sébastien Helleu 3b8f9d4547 core: check new keys manually added with /set 2023-03-17 18:52:30 +01:00
Sébastien Helleu 042968b016 core: remove use of "meta2-" in key name
The raw key code is kept as-is, so for example "meta2-A" becomes "meta-[A".
2023-03-17 18:52:30 +01:00
Sébastien Helleu 8a5a778293 core: remove mention to list of keys being displayed without arguments in /help key
Now when fset plugin is loaded, the keys are displayed in fset buffer.

In core commands like /set or /key, the fset plugin is not mentioned as WeeChat
can run without it.
2023-03-16 20:42:19 +01:00
Sébastien Helleu 46ce8d7e81 buflist: do not display keys added in default context on first load
Keys added in mouse context were already hidden, so it makes sense to not
display keys in default context as well.

These keys added by the default plugins are documented anyway.
2023-03-16 20:42:19 +01:00
Sébastien Helleu bf51a081d9 core: display a specific error when trying to bind a key without area in mouse context 2023-03-16 20:42:19 +01:00
Sébastien Helleu bb0c7b39fe api: change also default value of new key options with function key_bind 2023-03-16 20:42:19 +01:00
Sébastien Helleu a0c3fbbde9 core: display a warning if the config version read is newer than supported version 2023-03-16 20:42:19 +01:00
Sébastien Helleu 03e6d4563f core: move keyboard debug mode from /key debug to /debug key 2023-03-16 20:42:19 +01:00
Sébastien Helleu d94979fe3e core: split alias list into two lists 2023-03-16 20:42:19 +01:00
Sébastien Helleu 7f1f6a6e84 tests: add extra test on function gui_key_legacy_to_alias 2023-03-16 20:42:19 +01:00
Sébastien Helleu a686fa6407 api: change default value of existing key options with function key_bind
With this fix, fset buffer shows the key as modified only if the user actually
changed the command bound to the key.
2023-03-16 20:42:19 +01:00
Sébastien Helleu 55d9989b85 core: add function config_file_option_set_default 2023-03-16 20:42:19 +01:00
Sébastien Helleu 79f7c1cf83 fset: hook command /key
When command /key is called without arguments, and if fset plugin is loaded,
fset displays all key options (filter: `weechat.key*`).
2023-03-16 20:42:19 +01:00
Sébastien Helleu ccc649d06c core: create config options for all keys that can be managed with /set and /fset commands 2023-03-16 20:42:19 +01:00
Sébastien Helleu c82df8f22e core: fix safe list of keys
Add missing safe keys: "backspace" and "return".
Add missing unsafe keys: "comma", "space".
2023-03-16 20:42:19 +01:00
Sébastien Helleu c647d540a7 core: remove obsolete function gui_key_legacy_expand 2023-03-16 20:42:19 +01:00
Sébastien Helleu d1adec29f9 core: optimize search of key by reducing the number of splits into chunks 2023-03-16 20:42:19 +01:00
Sébastien Helleu 5b5c9afa29 core: add key alt-K (alt+shift+k) to grab raw key and its command 2023-03-16 20:42:19 +01:00
Sébastien Helleu 1f5c791c37 core: use new key name in command /key and configuration file
Legacy keys are automatically converted to new names when loading configuration
file `weechat.conf`.

Examples:

  "ctrl-I" => "tab"
  "meta2-1;3A" => "meta-up"
  "meta2-Z" => "shift-tab"
  "meta-wmeta-meta2-A" => "meta-w,meta-up"
  "ctrl-Cb" => "ctrl-c,b"
2023-03-16 20:42:19 +01:00
Sébastien Helleu 5b5ccb236f core: fix display of key with command /key bindctxt <context> <key> 2023-03-16 20:42:18 +01:00
Sébastien Helleu 66571a0b63 core: add configuration version, add API function config_set_version 2023-03-16 20:42:18 +01:00
Sébastien Helleu 7b8e5b36c0 core: simplify function config_file_read_internal 2023-03-16 20:42:18 +01:00
Sébastien Helleu 31bf962bba core: display new key name using aliases in output of /key command 2023-03-16 20:42:18 +01:00
Sébastien Helleu 15587ac72f core: fix function gui_key_legacy_to_alias with keys on areas 2023-03-16 20:42:18 +01:00
Sébastien Helleu 21910b7050 core: add function to expand raw key code to name with alias, use it in /key debug 2023-03-16 20:42:18 +01:00
Sébastien Helleu 0781f29726 core: add keyboard debug mode with command /key debug 2023-03-16 20:42:18 +01:00
Sébastien Helleu 5441c52d64 fset: remove scroll to top of fset buffer when options are added or removed (closes #1892) 2023-03-16 20:41:05 +01:00
Sébastien Helleu b21bc63313 tests: add tests on functions weeurl_search_constant and weeurl_search_option 2023-03-12 08:02:47 +01:00
Sébastien Helleu 7ba9f9ac7b core: revert case sensitive Curl constants and options (issue #1872)
This is a partial revert of fca78ca823.
2023-03-12 08:00:51 +01:00
Sébastien Helleu e36eda5404 core: check that parameters are not NULL in URL functions 2023-03-12 07:58:00 +01:00
Sébastien Helleu a5aa3304a4 doc/api: add hashtable methods in function string_eval_expression 2023-03-10 21:04:34 +01:00
Sébastien Helleu 7cda6cfd49 core: update translations (issue #1888) 2023-03-10 20:52:53 +01:00
Sébastien Helleu 5f5535b466 core: simplify /help eval, move examples with the other examples (issue #1888) 2023-03-10 20:52:28 +01:00
Sébastien Helleu eb71880e18 core: update ChangeLog (issue #1888) 2023-03-10 20:21:49 +01:00
Sébastien Helleu f604cf19c7 core: rename variable open_paren to pos_open_paren 2023-03-10 20:19:24 +01:00
Andrew Potter e3f588679c core: allow /eval to get hashtable properties 2023-03-10 20:19:03 +01:00
Sébastien Helleu dd65e91a75 ci: fix macOS CI 2023-02-22 21:53:25 +01:00
Sébastien Helleu fb0248f557 core: fix crash in case of NULL message sent to function gui_chat_printf_y_date_tags (closes #1883) 2023-02-22 20:38:56 +01:00
Nils Görs f6fdecb846 doc: update German documentation 2023-02-21 12:25:23 +01:00
Sébastien Helleu 188583256e doc/user: make XDG directory fallback more clear in table 2023-02-16 21:39:02 +01:00
Sébastien Helleu 2cfecc2e2d core: update ChangeLog (issue #603) 2023-02-11 14:18:13 +01:00
Sébastien Helleu 3466c716ae doc/user: move "Upgrade" chapter after "Running WeeChat" 2023-02-10 19:00:01 +01:00
Sébastien Helleu 46935b859c core: update ChangeLog (issue #1881) 2023-02-10 18:59:39 +01:00
Robin Jarry 9b9ec62a8e core: allow /input move_next_word going to the end of line
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-02-10 18:56:43 +01:00
rj1 69a3dd21dc fix: various code comments 2023-02-04 11:50:44 +01:00
Sébastien Helleu 6d4471b6db core: optimize search of key bindings in contexts default/search/cursor 2023-02-04 10:45:57 +01:00
Sébastien Helleu 587e2882ac core: simplify function gui_key_cmp 2023-02-03 22:52:07 +01:00
Sébastien Helleu 1f073fe949 tests: add tests on function gui_key_cmp 2023-02-03 22:50:32 +01:00
Sébastien Helleu 68a5a71b55 core: remove extra spaces before comma 2023-02-02 22:01:46 +01:00
Sébastien Helleu 48a51c9f6e doc: update auto-generated files 2023-02-01 20:32:00 +01:00
Ivan Pešić 314d9c0ce9 core/doc Update Serbian translations
Update messages and documentation translations.
2023-02-01 20:31:19 +01:00
Nils Görs 98917539b2 core: update German translations 2023-02-01 11:05:36 +01:00
Sébastien Helleu 30fa647700 irc: add command /rules (closes #1864) 2023-01-31 18:43:07 +01:00
Sébastien Helleu 9f5ca3b1a9 irc: add command /knock (closes #7) 2023-01-31 18:37:27 +01:00
Sébastien Helleu 4c0d2ab3b1 doc: update German auto-generated file 2023-01-31 07:55:36 +01:00
Nils Görs f2e149e489 core: update German translations 2023-01-31 07:52:53 +01:00
Sébastien Helleu 7ad4f7b29c core: update description of function hook_command_display_error_unknown 2023-01-30 23:27:25 +01:00
Sébastien Helleu e78d96686c core: inform that commands are case sensitive when another command with different case is found (issue #1877) 2023-01-30 22:09:36 +01:00
Sébastien Helleu 4370f75ce6 core: improve prioritization of commands starting with same chars in similar commands 2023-01-30 21:51:32 +01:00
Sébastien Helleu b02a10aa48 core: display similar command names when a command is unknown (closes #1877) 2023-01-30 21:44:38 +01:00
Sébastien Helleu 74154d972d tests: fix comments (issue #1877) 2023-01-30 21:44:09 +01:00
Sébastien Helleu 69a635412d core: add function string_get_common_bytes_count (issue #1877) 2023-01-30 21:44:03 +01:00
Sébastien Helleu 38ffac78f3 core: add function string_levenshtein (issue #1877) 2023-01-30 21:43:58 +01:00
Sébastien Helleu 269b8fc66e core: properly skip command char when it is a wide char in exec of hook_command_run 2023-01-29 21:20:18 +01:00
Mattia 2bcd9cb87b doc/quickstart: translate to Italian (closes #1874) 2023-01-29 16:58:22 +01:00
Andrew Potter 4f0b6115a1 irc: add server option "registered_mode" (closes #1625)
Two new fields are added in IRC server structure:

- "authentication_method", possible values:
    0: not authenticated
    1: authenticated with SASL
    2: authenticated with other method
- "sasl_mechanism_used", possible values: see enum t_irc_sasl_mechanism
  in src/plugins/irc/irc-sasl.h
2023-01-29 16:50:57 +01:00
Sébastien Helleu 3909d77617 core: add bug #32213 in ChangeLog 2023-01-29 13:58:21 +01:00
Sébastien Helleu e6eb068b2b doc: update German auto-generated files 2023-01-29 13:44:30 +01:00
Nils Görs 958ddee8fd core: update German translations 2023-01-29 13:20:28 +01:00
Sébastien Helleu 471ef214e7 core: add issue #398 in ChangeLog 2023-01-29 13:10:31 +01:00
Sébastien Helleu fc504698ad core: add ctrl keys as lower case in release notes (issue #1875) 2023-01-29 13:01:58 +01:00
Sébastien Helleu fd746a04d6 core: force ctrl keys to lower case when they are added (closes #1875) 2023-01-29 12:41:28 +01:00
Sébastien Helleu be0c04f498 core: ignore incomplete ctrl/meta/meta2 codes in keys (issue #1875) 2023-01-29 12:41:27 +01:00
Sébastien Helleu c68c2aaa94 core: ensure internal_code is not NULL when adding a default key (issue #1875) 2023-01-29 12:41:26 +01:00
Sébastien Helleu 3005658f38 core: compute first internal code and expanded name before removing key (issue #1875) 2023-01-29 12:41:24 +01:00
Sébastien Helleu a9289cbdc1 core: compute first internal code and expanded name before adding key (issue #1875) 2023-01-29 12:41:23 +01:00
Sébastien Helleu 0d8a6679b3 core: use dynamic string in functions gui_key_get_internal_code and gui_key_get_expanded_name (issue #1875) 2023-01-29 12:41:22 +01:00
Sébastien Helleu fa6a9bb934 api: readjust string size in function string_dyn_free when string is not freed (issue #1875)
This frees some allocated memory if size_alloc was greater than size in the
dynamic string.
2023-01-29 12:41:19 +01:00
Sébastien Helleu 48c1aebb83 tests: add tests on gui key functions (issue #1875) 2023-01-29 12:41:11 +01:00
Sébastien Helleu 81f4b16180 core: update ChangeLog (closes #1872) 2023-01-28 15:19:46 +01:00
Sébastien Helleu efe4aa29fc core: update translations and auto-generated doc files (issue #1872) 2023-01-28 15:19:41 +01:00
Sébastien Helleu 4c1a87ba60 core: add case sensitive identifiers in release notes (issue #1872) 2023-01-28 15:14:32 +01:00
Sébastien Helleu 3318a7f3b8 alias: add option rename in command /alias (issue #1872) 2023-01-28 15:14:31 +01:00
Sébastien Helleu 11ea0aecf4 core: make buffer name case sensitive in read of infolist "buffer" (issue #1872) 2023-01-28 15:14:30 +01:00
Sébastien Helleu b5350a3318 core: make proxy name case sensitive in read of infolist "proxy" (issue #1872) 2023-01-28 15:14:29 +01:00
Sébastien Helleu 18d4e6a52c relay: make relay compression case sensitive (issue #1872) 2023-01-28 15:14:28 +01:00
Sébastien Helleu 3e9e1b51bf core, plugins: replace calls to strcmp by string_strcmp when difference matters (issue #1872) 2023-01-28 15:14:26 +01:00
Sébastien Helleu fbeab26a35 core, plugins: replace calls to string_str(n)cmp by str(n)cmp (issue #1872) 2023-01-28 15:14:24 +01:00
Sébastien Helleu c07cf691ad core, plugins: check that string parameters are not NULL in search functions (issue #1872) 2023-01-28 15:14:22 +01:00
Sébastien Helleu c9ac4fef4b xfer: make xfer types and protocols case sensitive (issue #1872) 2023-01-28 15:14:21 +01:00
Sébastien Helleu f9a80e7d4d trigger: make trigger names/options/types/return codes/post actions case sensitive (issue #1872) 2023-01-28 15:14:20 +01:00
Sébastien Helleu 3319e6ff6e script: make script names case sensitive (issue #1872) 2023-01-28 15:14:19 +01:00
Sébastien Helleu 375c9f8b1e api: make prefix argument case sensitive in prefix function (issue #1872) 2023-01-28 15:14:17 +01:00
Sébastien Helleu 7b06463e84 irc: make IRC raw filters case sensitive (issue #1872)
Except the IRC command name filter (`m:xxx`).
2023-01-28 15:14:16 +01:00
Sébastien Helleu 0704f382e0 irc: make IRC server names case sensitive (issue #1872) 2023-01-28 15:14:15 +01:00
Sébastien Helleu d7f08a45d7 core: make notify tags in line case sensitive (issue #1872) 2023-01-28 15:14:14 +01:00
Sébastien Helleu 844b57a26d core: make key contexts case sensitive (issue #1872) 2023-01-28 15:14:12 +01:00
Sébastien Helleu f11d598928 core: make hotlist priorities case sensitive (issue #1872) 2023-01-28 15:14:11 +01:00
Sébastien Helleu 8744fdfaf3 core: make filter names case sensitive (issue #1872) 2023-01-28 15:14:10 +01:00
Sébastien Helleu 7a8ce6c9ae core: make color names and attributes case sensitive (issue #1872) 2023-01-28 15:14:08 +01:00
Sébastien Helleu 73c3c03915 core, plugins: make input actions in buffers case sensitive (issue #1872) 2023-01-28 15:14:07 +01:00
Sébastien Helleu c724032a22 core: make function gui_buffer_match_list case sensitive (issue #1872) 2023-01-28 15:14:06 +01:00
Sébastien Helleu 2ee65dd1ff core: make buffer types and notify levels case sensitive (issue #1872) 2023-01-28 15:14:05 +01:00
Sébastien Helleu a3befc7aae core: make proxy options and types case sensitive (issue #1872) 2023-01-28 15:14:04 +01:00
Sébastien Helleu 54ed4c6a18 core: make weelist position case sensitive (issue #1872) 2023-01-28 15:14:02 +01:00
Sébastien Helleu 411fe0b0ef core: make hashtable types case sensitive (issue #1872) 2023-01-28 15:14:01 +01:00
Sébastien Helleu fca78ca823 core: make Curl constants and options case sensitive (issue #1872) 2023-01-28 15:14:00 +01:00
Sébastien Helleu bbbd08694b core: make get/set object properties case sensitive (issue #1872) 2023-01-28 15:13:58 +01:00
Sébastien Helleu 5434f4f969 core, plugins: make plugin names case sensitive (issue #1872) 2023-01-28 15:13:57 +01:00
Sébastien Helleu 4b5897f110 core: make bar and bar items case sensitive (issue #1872) 2023-01-28 15:13:55 +01:00
Sébastien Helleu 489c264202 core, plugins: make info, info_hashtable and infolist case sensitive (issue #1872) 2023-01-28 15:13:54 +01:00
Sébastien Helleu 5bd97b9630 irc: make case insensitive comparison with a lower case string (issue #1872)
This is faster because with case insensitive comparison, the chars are
converted to lower case anyway before being compared.
2023-01-28 15:13:52 +01:00
Sébastien Helleu 498ee539ea core: make case insensitive comparison with a lower case string (issue #1872)
This is faster because with case insensitive comparison, the chars are
converted to lower case anyway before being compared.
2023-01-28 15:13:51 +01:00
Sébastien Helleu f0415c8ec3 core, plugins: make commands, hook command_run, completions and aliases case sensitive (issue #1872) 2023-01-28 15:13:48 +01:00
Sébastien Helleu 1de735b779 alias: make aliases case sensitive, convert default aliases to lower case (issue #1872) 2023-01-28 15:13:47 +01:00
Sébastien Helleu db177de204 core: make configuration files, sections and options case sensitive (issue #1872) 2023-01-28 15:13:45 +01:00
Sébastien Helleu 72f4596fb2 core: add function config_file_get_configs_by_priority (issue #1872) 2023-01-28 15:13:43 +01:00
Sébastien Helleu d71c3b0f21 doc/api: add priority in function config_new (issue #1872) 2023-01-28 15:13:40 +01:00
Sébastien Helleu f72435d765 core: simplify code in config functions (issue #1872) 2023-01-28 15:13:38 +01:00
Sébastien Helleu 0dd1d1be1c core: sort configuration files by name, reload them by priority (issue #1872) 2023-01-28 15:13:36 +01:00
Sébastien Helleu 202b4d82c0 plugins: set priority in calls to weechat_config_new (issue #1872) 2023-01-28 15:13:34 +01:00
Sébastien Helleu 9174ec979b core: set priority in calls to config_file_new (issue #1872) 2023-01-28 15:13:32 +01:00
Sébastien Helleu d274eb4be4 core: add priority in config file (issue #1872)
Priority is now allowed in function config_file_new, parameter `name`, with the
same format as hooks: "priority|name" (for example: "2000|test").

If not specified, the default priority is 1000.
2023-01-28 15:13:29 +01:00
Sébastien Helleu 347c3f3214 core: move function hook_get_priority_and_name to wee-string.c (issue #1872) 2023-01-28 15:13:18 +01:00
Sébastien Helleu db8d2d43f0 doc: update German auto-generated file 2023-01-25 07:59:33 +01:00
Nils Görs 5a93b5ad15 core: update German translations 2023-01-25 07:50:28 +01:00
Sébastien Helleu 37e8599443 irc: add option join in command /autojoin 2023-01-24 20:58:17 +01:00
Sébastien Helleu 0e1d3618ee doc: update auto-generated files with hdata 2023-01-24 20:55:28 +01:00
Sébastien Helleu 55d08a604f irc: fix autojoin on server connection (closes #1873)
Now the autojoin is made only one time, until the server buffer is closed.

A new flag `autojoin_done` is added to know whether the autojoin has already
been done or not on the server.  It is set to 1 on first autojoin, and reset to
0 only if the server buffer is closed.

The flag `reconnect_join` is removed, because it is now obsolete.
2023-01-23 19:10:13 +01:00
Nils Görs e0cdfb1cef core: update German translations 2023-01-16 08:53:26 +01:00
Sébastien Helleu cfa2239db5 irc: update message with number of nicks when joining a channel
Changed:

- "N voices" to "N voiced"
- "N normals" to "N regular"
2023-01-15 21:12:32 +01:00
Sébastien Helleu 6abd989dd7 debian: remove remaining workarounds for autotools build 2023-01-15 17:10:20 +01:00
Sébastien Helleu 51d0a6f402 tests: add tests on string comparison functions 2023-01-14 21:44:19 +01:00
Sébastien Helleu fdb793e410 ci: fix macOS CI (temporary fix)
Unlink Python binaries so that the install of packages via brew is a success.
See: https://github.com/actions/setup-python/issues/577
2023-01-14 21:16:18 +01:00
Sébastien Helleu 7668e7ea55 fset: fix typo in French translation of /help fset.look.condition_catch_set 2023-01-14 20:56:06 +01:00
Sébastien Helleu 87d71b9677 core: remove useless continue statement in loop 2023-01-12 21:33:57 +01:00
Sébastien Helleu 049c6eb6a8 core: display error in command if allocation of arraylist fails 2023-01-12 20:57:47 +01:00
Sébastien Helleu 0d622df87a core: fix display glitch in command errors when a wide char is set in option weechat.look.command_chars (closes #1871) 2023-01-12 20:28:29 +01:00
Sébastien Helleu 1a15171912 ci: fix typo 2023-01-10 08:18:49 +01:00
Sébastien Helleu 711f71a1bc ci: fix run of code coverage 2023-01-10 08:01:22 +01:00
Sébastien Helleu f59f39abd4 python: remove unneded call to deprecated function PySys_SetArgv
This function is deprecated since Python 3.11.
2023-01-08 20:26:57 +01:00
Sébastien Helleu 9b47832a01 core: do not allocate strings in dir_search_full_lib_name_ext, check return code of snprintf
This removes three compiler warnings.
2023-01-08 18:24:28 +01:00
Sébastien Helleu 0bde2aa0f3 irc: check return code of snprintf
This removes two compiler warnings.
2023-01-08 18:13:05 +01:00
Sébastien Helleu f305eed01f typing: fix crash when pointer buffer is not received in callback for signal "input_text_changed" (closes #1869) 2023-01-08 17:38:37 +01:00
Sébastien Helleu 43d3a97869 debian: restore target override_dh_auto_configure (packaging of stable version) 2023-01-08 15:18:19 +01:00
Sébastien Helleu f67b7ad113 debian: restore target override_dh_auto_configure 2023-01-08 15:16:52 +01:00
Sébastien Helleu 736bc89d4e core: update ChangeLog and release notes (closes #1860) 2023-01-08 14:43:17 +01:00
Sébastien Helleu 754ab33946 core: remove build with autotools
CMake is now the only way to build WeeChat.
2023-01-08 14:19:41 +01:00
Sébastien Helleu 18360feb32 ruby: remove warnings on unused parameters
These warnings may be enabled again in future when Ruby itself will be fixed.
2023-01-08 14:04:10 +01:00
Sébastien Helleu fe7c0019a7 php: remove warnings on variables "argc" and "ret_i" that might be clobbered by longjmp or vfork 2023-01-08 14:04:05 +01:00
Sébastien Helleu e101d5d8a4 Version 3.9-dev 2023-01-08 10:35:38 +01:00
Sébastien Helleu b614a5c5db Version 3.8 2023-01-08 10:07:07 +01:00
Sébastien Helleu 35129a1cae core: add note about case insensitive comparison improved in release notes 2023-01-08 10:01:11 +01:00
Sébastien Helleu 2f6b462c3c core: update entries related to CI in ChangeLog 2023-01-07 23:17:56 +01:00
Sébastien Helleu 9202213274 ci: remove use of repository ppa:ondrej/php
Now the CI uses the standard PHP version (8.1) from Ubuntu 22.04.
2023-01-07 23:17:29 +01:00
Sébastien Helleu 822a94c184 php: add proper detection of PHP 8.2 in all cases 2023-01-07 22:05:37 +01:00
Sébastien Helleu e0f096abe6 debian: add symbolic link weechat_raspbian_buster.patch pointing to Debian Buster patch 2023-01-06 13:12:59 +01:00
Sébastien Helleu bff143dcf4 core: add CMake test called "notests" when tests are not compiled
Now the command `make test` executes properly and returns 0 when test are not
compiled.
2023-01-06 07:53:39 +01:00
Sébastien Helleu e660233325 Revert "core: add a fake target "test" so that make test successes when tests are not compiled"
This reverts commit 129860fd52.
2023-01-06 07:11:35 +01:00
Sébastien Helleu 129860fd52 core: add a fake target "test" so that make test successes when tests are not compiled 2023-01-05 21:26:55 +01:00
Sébastien Helleu 3c65bc6831 core: rename script build-test.sh to build_test.sh 2023-01-05 08:05:04 +01:00
Sébastien Helleu db81c07e1f core: rename script build-debian.sh to build_debian.sh 2023-01-05 08:03:12 +01:00
Sébastien Helleu 30ad9ca62d core: rename script git-version.sh to set_git_version.sh 2023-01-05 08:01:48 +01:00
Sébastien Helleu c7f5cd462f core: add message after checking Curl symbols: "all good" or number of errors 2023-01-05 07:48:08 +01:00
Sébastien Helleu bcba2d4d7c core: add example with Curl repository cloned locally 2023-01-05 07:43:01 +01:00
Sébastien Helleu e3a69e92e5 core: install flake8 in CI 2023-01-04 22:49:36 +01:00
Sébastien Helleu f43efe5a65 core: add script check_scripts.sh
This script is now used in CI to check all shell scripts (*.sh) and Python
scripts (*.py) that are in git repository.

Tools used:

- shell scripts: shellcheck
- Python scripts: flake8 + pylint + bandit
2023-01-04 22:45:00 +01:00
Sébastien Helleu 8da3884afc core: add script check_curl_symbols.py
This script is used to check Curl symbols defined in WeeChat vs exposed Curl
symbols.

Usage:

curl https://raw.githubusercontent.com/curl/curl/master/docs/libcurl/symbols-in-versions | ./tools/check_curl_symbols.py
2023-01-04 22:44:14 +01:00
Sébastien Helleu 3778ef0636 core: fix Curl version in comments 2023-01-04 22:23:33 +01:00
Sébastien Helleu c52d630f82 core: remove useless "exit 0"
This fixes the following shellcheck error:

SC2317 (info): Command appears to be unreachable. Check usage (or ignore if
invoked indirectly).
2023-01-04 22:23:33 +01:00
Sébastien Helleu 356028ee87 core: double quote $JOBS
This fixes the following shellcheck error:

SC2086 (info): Double quote to prevent globbing and word splitting.
2023-01-04 22:23:33 +01:00
Sébastien Helleu 9dd85507d0 core: don't use eval to run commands in scripts
This fixes the following shellcheck error:

SC2294 (warning): eval negates the benefit of arrays. Drop eval to preserve
whitespace/symbols (or eval as string).
2023-01-04 22:20:51 +01:00
Sébastien Helleu c6df2e7b8e tests: fix long lines in scripting API tests 2023-01-04 21:13:25 +01:00
Sébastien Helleu e6857871f0 tests: ignore module level import not at top of file (flake8 E402) 2023-01-04 21:12:53 +01:00
Sébastien Helleu d1f2d54a1e tests: mark methods is_bool and is_number as static 2023-01-04 21:11:41 +01:00
Sébastien Helleu 0ce0fa9f1f api: add Curl options for versions 7.64.0 to 7.87.0 2023-01-03 23:21:44 +01:00
Sébastien Helleu 7526776f4e plugins: change priority of scripting plugins
Use a step of 10 between each scripting plugin priority.
2023-01-03 20:20:21 +01:00
Sébastien Helleu 958f39cb95 core: fix crash or infinite loop in /allbuf command
A crash could occur if the command closes buffers.
An infinite loop could occur if the command creates new buffers.
2023-01-03 17:02:38 +01:00
Sébastien Helleu 189eb5dc40 core: add variable list_size to prevent computing arraylist size in each iteration 2023-01-03 17:01:52 +01:00
Sébastien Helleu 9ee0955d6b irc: properly rename private buffer on notice messages 2023-01-03 01:06:51 +01:00
Sébastien Helleu 99988bdee7 Version 3.8-rc1 2023-01-02 14:27:21 +01:00
Sébastien Helleu 1daf145830 core: fix line wrapping in Polish translations 2023-01-02 14:20:44 +01:00
Sébastien Helleu 7baef6396d irc: properly rename private buffer on nick changes or private message when new nick is the same with different case 2023-01-02 14:17:20 +01:00
Sébastien Helleu c739026c87 irc: replace "private window" by "private buffer" in comments 2023-01-02 13:50:58 +01:00
Sébastien Helleu 33bba784c3 core: update copyright dates 2023-01-01 14:54:35 +01:00
Sébastien Helleu 1fb6d52984 tests: add tests on gui input functions 2023-01-01 14:41:06 +01:00
Sébastien Helleu 727c465911 core: check that buffer is not NULL in function gui_input_clipboard_copy 2023-01-01 14:39:38 +01:00
Sébastien Helleu 73bac5491b core: move function gui_input_move_to_buffer to gui-buffer.c 2022-12-31 10:40:00 +01:00
Sébastien Helleu 05839983d4 core: fix color when the delimiter is not followed by a background color (closes #1867) 2022-12-30 21:50:18 +01:00
Sébastien Helleu 6c59b0830c doc: update Polish auto-generated files 2022-12-30 16:30:20 +01:00
Krzysztof Korościk 9f5a739428 core: updated Polish translation 2022-12-30 14:12:43 +01:00
Sébastien Helleu 81260ec854 doc: update German auto-generated file 2022-12-29 19:30:58 +01:00
Nils Görs d8cc91993f core: update German translations 2022-12-29 12:51:12 +01:00
Sébastien Helleu d878d2023a core: fix French translation of "read marker" 2022-12-29 12:05:21 +01:00
Sébastien Helleu fce2fcba4f core: add option weechat.look.chat_space_right (issue #1862) 2022-12-29 12:00:28 +01:00
Krzysztof Korościk 45fdcc2eb4 doc: updated polish translation 2022-12-28 17:44:46 +01:00
Sébastien Helleu 914f9e756b doc: update German auto-generated file 2022-12-28 10:27:44 +01:00
Nils Görs 7d94fba9ac core: update German translations 2022-12-28 10:25:31 +01:00
Sébastien Helleu e58b57fe4c doc: update German auto-generated files 2022-12-26 23:43:28 +01:00
Nils Görs 0e6058f8cd core: update German translations 2022-12-26 13:41:24 +01:00
Nils Görs 98bc80924c core: update German translations 2022-12-26 13:32:56 +01:00
Sébastien Helleu 45638dca23 core: allow value "0" in buffer property "unread" to remove read marker from buffer 2022-12-26 01:27:45 +01:00
Sébastien Helleu 56055de12e doc/api: fix formatting of return value in char/string comparison functions 2022-12-26 00:55:30 +01:00
Sébastien Helleu 5a27805cf3 core: reorder entries in ChangeLog 2022-12-25 23:05:22 +01:00
Dawid Dziurla 1639e60651 changelog: add entry about Ruby 3.2 detection 2022-12-25 23:03:24 +01:00
Dawid Dziurla 824812c7c0 ruby: add detection of Ruby 3.2 2022-12-25 23:03:24 +01:00
Sébastien Helleu 41fd26fe79 core: move /input buffer switch/zoom actions to command /buffer
Actions moved:

* `/input switch_active_buffer` -> `/buffer switch`
* `/input switch_active_buffer_previous` -> `/buffer switch -previous`
* `/input zoom_merged_buffer` -> `/buffer zoom`
2022-12-25 22:47:18 +01:00
Sébastien Helleu 0c29d4c5b6 core: move /input set_unread actions to commands /allbuf and /buffer set
Actions moved:

* `/input set_unread` -> `/allbuf /buffer set unread`
* `/input set_unread_current_buffer` -> `/buffer set unread`
2022-12-25 21:44:27 +01:00
Sébastien Helleu 2c238e08ff core: add command /allbuf 2022-12-25 21:23:14 +01:00
Sébastien Helleu 2ad6f2f3d5 api: do not check hotlist add conditions when adding buffer in hotlist with function buffer_set 2022-12-25 20:35:10 +01:00
Sébastien Helleu a9094fd2fa core: add option add in command /hotlist 2022-12-25 19:40:57 +01:00
Sébastien Helleu b3e4a91760 core: fix typo in comment 2022-12-25 19:07:39 +01:00
Sébastien Helleu babe1e7a42 core: move /input hotlist actions to new command /hotlist
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-25 18:50:57 +01:00
Sébastien Helleu 574a4c8834 core: add function gui_buffer_jump_last_visible_number 2022-12-25 17:57:59 +01:00
Sébastien Helleu c9796a3141 core: move /input jump actions to command /buffer jump
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-25 17:00:37 +01:00
Sébastien Helleu 9bd6cbf4bd core: fix style in ChangeLog and release notes 2022-12-25 16:53:30 +01:00
Sébastien Helleu 445b522498 core: fix typo in comment 2022-12-25 15:06:03 +01:00
Sébastien Helleu f5135277af core: remove useless conditions 2022-12-24 19:40:53 +01:00
Sébastien Helleu 21f3575016 api: add functions string_strcmp and string_strncmp 2022-12-24 18:29:35 +01:00
Sébastien Helleu 0dd1d4133b doc/api: mention "UTF-8" in char/string comparison functions 2022-12-24 17:52:31 +01:00
Sébastien Helleu a67556907d api: rename char comparison functions "utf8_char*" to "string_char*" 2022-12-24 17:33:22 +01:00
Sébastien Helleu 083032972d api: return arithmetic difference between chars in string comparison functions
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-24 16:25:20 +01:00
Sébastien Helleu 5fc656a1b8 api: fix function strcmp_ignore_chars with case sensitive comparison and wide chars starting with the same byte 2022-12-23 23:20:29 +01:00
Sébastien Helleu 91149f0acc core: fix typo in French translation of /help input 2022-12-22 20:56:50 +01:00
Sébastien Helleu 68b510517e core: improve case convert and insensitive char comparisons (closes #258)
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-21 20:49:09 +01:00
Sébastien Helleu 95286c1eb3 core: remove unneeded casts 2022-12-19 13:01:33 +01:00
Sébastien Helleu 267313304e irc: fix calls to weechat_string_toupper 2022-12-19 11:18:59 +01:00
Sébastien Helleu 33b6adc3d3 core: fix call to string_toupper 2022-12-19 11:18:49 +01:00
Sébastien Helleu 56436e57fd spell: return directly output of string_dyn_free without temporary variable 2022-12-19 07:07:12 +01:00
Sébastien Helleu 5df4126c75 irc: return directly output of string_dyn_free without temporary variable 2022-12-19 07:06:01 +01:00
Sébastien Helleu 42113ebc0f core: return directly output of string_dyn_free without temporary variable 2022-12-19 07:04:33 +01:00
Sébastien Helleu 40339b288a api: return newly allocated string in functions string_tolower and string_toupper 2022-12-18 14:28:58 +01:00
Sébastien Helleu eb6cc0bc2a core: return number of bytes for UTF-8 char in function utf8_int_string 2022-12-18 14:13:14 +01:00
Sébastien Helleu 6aedddd351 tests: add tests on function gui_input_delete_next_word 2022-12-18 14:13:14 +01:00
Sébastien Helleu 9b917ccace tests: add tests on function gui_input_delete_range 2022-12-18 14:13:14 +01:00
Sébastien Helleu 99c453ee23 tests: add tests on gui delete previous/next char functions 2022-12-18 14:13:14 +01:00
Sébastien Helleu d2f447dafc tests: add extra tests on function gui_input_set_pos 2022-12-18 14:13:14 +01:00
Sébastien Helleu 3ef8241444 tests: add tests on gui input completion functions 2022-12-18 14:13:14 +01:00
Sébastien Helleu dd9ae79204 core: remove unused argument "pos" from function gui_input_insert_string, add tests on function 2022-12-18 14:13:14 +01:00
Sébastien Helleu f03384d124 core: simplify gui input functions by returning immediately if condition not met 2022-12-17 22:22:15 +01:00
Sébastien Helleu fb31cf663e irc: do not join channels in server autojoin option after reconnection to the server (closes #560, bug #21529) 2022-12-17 12:55:39 +01:00
Sébastien Helleu 122a0f8097 doc: update German auto-generated file 2022-12-14 23:44:41 +01:00
Nils Görs 32496d1705 core: update German translations 2022-12-14 22:38:45 +01:00
Trygve Aaberge dc8a35796a doc/api: Improve python example for config_new_section
This updates the Python examples to include all the possible return
values for the callbacks in config_new_section, like it is done in the C
example. It also aligns the order of the values with the C example.
2022-12-11 15:33:11 +01:00
Trygve Aaberge abdabb3ae4 doc/api: Fix return values for callback_read in config_new_section
These return values were wrong in the description and C example. As can
be seen on lines 2835 and 2873-2903 of src/core/wee-config-file.c the
callback_read function should return the same as the function
config_file_option_set plus the value
WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND (which is also the same as
the possible return values of config_file_option_set_with_string).

The Python example was already correct and the C example was already
correct in the other languages apart from English.

These errors were introduced in commit 02e2b21d3 and commit 5210ff1ae.
2022-12-11 15:33:11 +01:00
Sébastien Helleu a1b6d9622f core: add contributor (issue #1859) 2022-12-11 15:25:13 +01:00
Sébastien Helleu 20b061a89a core: update ChangeLog (issue #1859) 2022-12-11 15:17:38 +01:00
Ryan Qian 1316f3eb6d cmake: add support of compiling with enchant-2 for the Spell plugin 2022-12-11 15:16:23 +01:00
Sébastien Helleu a0e5e2a375 core: update ChangeLog (issue #1843) 2022-12-11 15:15:50 +01:00
Trygve Aaberge ebc63d1b83 scripts: Send null values to config section callbacks
The callback_read and callback_create_option functions in the scripting
APIs always get the value as a string, never as null. This means that if
the value is null, there is no way for the script to distinguish this
from an empty string for string options. This makes it impossible to
properly make options with fallback values, like the irc server and
server_default options, as far as I can see.

All the scripting languages except Tcl use that language's equivalent
for null. For JavaScript which has both null and undefined, null is
used. For Tcl, the magic null string defined in commit 197a7a01e is used
and the documentation is updated to describe that.

I tested this with these scripts:
https://gist.github.com/trygveaa/2d49c609addf9773d2ed16e15d1e3447

You can load all of those scripts and see the result with this command
(assuming you have the scripts in the current directory):

    weechat -t -r "/filter add script * * script; /script load $(echo script_config.*)"
2022-12-11 15:13:31 +01:00
Sébastien Helleu 1bfc8b9cf8 trigger: fix variables sent to focus callback (closes #1858)
This fixes a regression introduced in WeeChat 3.7 by commit
0f67f55098.
2022-12-10 22:30:24 +01:00
Sébastien Helleu 18c9ade580 core: add whole string information in /debug unicode 2022-12-10 17:32:09 +01:00
Sébastien Helleu 5b9b1e175b core: add color attributes "blink" and "dim" (half bright) (closes #1855) 2022-12-10 16:37:03 +01:00
Sébastien Helleu 9b93919b06 core: update ChangeLog (closes #1659, closes #1669, closes #1770) 2022-12-10 16:20:23 +01:00
Sébastien Helleu 7313859bdf core: update translations 2022-12-10 16:12:23 +01:00
Sébastien Helleu ef842c5e62 core: fix function string_cut when there are non printable chars in suffix 2022-12-10 16:05:14 +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 6ac730cd0b core: toggle reverse video attribute in bars for chars < 32 only if not already enabled 2022-12-10 16:05:14 +01:00
Sébastien Helleu f63dba67f2 core: expand tabulations as spaces in bars 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 71ae8f1907 api: add function utf8_strncpy 2022-12-10 16:05:14 +01:00
Sébastien Helleu e5cbbd781d core: optimize and fix function utf8_strlen_screen with non printable chars
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 16:05:14 +01:00
Sébastien Helleu 0e6677fbcb core: add result of utf8_char_size_screen in /debug unicode 2022-12-10 16:05:14 +01:00
Sébastien Helleu 6cfc01aa53 doc: update Serbian auto-generated files 2022-12-05 21:00:48 +01:00
Ivan Pešić c6f5c3feaa Update Serbian translation
Documentation and messages translation update
2022-12-05 21:00:00 +01:00
Sébastien Helleu 55569c182a core: display hex codepoint before integer codepoint in /debug unicode 2022-12-03 10:15:18 +01:00
Sébastien Helleu f7f13352d7 core: remove useless call to mbstowcs in function debug_unicode_char 2022-12-03 10:14:30 +01:00
Sébastien Helleu bbd0f5d26b tests: define constants with UTF-8 strings, add tests on functions returning size on screen 2022-11-27 12:29:36 +01:00
Sébastien Helleu e08fcdd04c doc: update German auto-generated file 2022-11-22 18:41:42 +01:00
Nils Görs 894b5e21ed core: update German translations 2022-11-22 10:08:50 +01:00
Sébastien Helleu baab9cc7c5 core: add option unicode in command /debug 2022-11-21 20:45:41 +01:00
Sébastien Helleu a8639969c5 core: reorder sub-commands in /debug command callback 2022-11-20 13:55:21 +01:00
Sébastien Helleu 8d40273111 core: fix typo in comment 2022-11-20 09:33:40 +01:00
Sébastien Helleu b636f55b8b trigger: properly initialize variable "value" to NULL 2022-11-19 20:29:02 +01:00
Sébastien Helleu 11a5e0a627 ci: install guile-3.0-dev instead of guile-2.2-dev 2022-11-19 20:27:57 +01:00
Sébastien Helleu ea9c3b2218 debian: change dependency guile-2.2-dev to guile-3.0-dev 2022-11-19 19:05:25 +01:00
Sébastien Helleu bab73cfaa5 core: add identifier in buffer lines (closes #901)
For buffers with formatted content, the "id" starts to 0 on each buffer and is
incremented on each new line displayed (it is reset to 0 if reaching INT_MAX).

For buffers with free content, the "id" is set to the same value as "y" (ie the
line number, starting to 0).
2022-11-11 09:42:20 +01:00
Sébastien Helleu 8c44dc53eb doc/api: add missing note after list of signals 2022-11-09 08:15:30 +01:00
Sébastien Helleu 70998a53de doc/user: add missing supported format for trigger regex 2022-11-09 08:12:54 +01:00
Sébastien Helleu 6962d2ccd5 doc: update German auto-generated file 2022-11-08 20:36:33 +01:00
Sébastien Helleu 24665ae878 core: add signals "buffer_user_{input|closing}_xxx" for buffers created with /buffer add (closes #1848) 2022-11-08 20:34:04 +01:00
Nils Görs 2e4a033f0d doc: update German documentation 2022-11-07 13:21:12 +01:00
Nils Görs f95eb08201 core: update German translations 2022-11-07 13:02:46 +01:00
Sébastien Helleu 55b5549054 trigger: display failing regex in trigger creation error 2022-11-06 09:14:18 +01:00
Sébastien Helleu f18b96bb59 core: update translations 2022-11-06 09:14:18 +01:00
Sébastien Helleu b2605902db trigger: use explicit command "s" in regex of default triggers 2022-11-06 09:14:18 +01:00
Sébastien Helleu 39561b9146 core: add release notes about new trigger regex format 2022-11-06 09:14:18 +01:00
Sébastien Helleu 7555993bbc trigger: add regex command "y" to translate chars, set default regex command to "s" (regex replace) (closes #1510) 2022-11-06 09:14:14 +01:00
Sébastien Helleu 3b674a5e16 tests: add another test on function string_translate_chars 2022-11-05 22:34:39 +01:00
Sébastien Helleu 196a051141 core: add range of chars in evaluation of expressions with chars:xxx 2022-11-05 22:34:38 +01:00
Sébastien Helleu bc2fb071e2 api: add function string_translate_chars 2022-11-05 22:34:38 +01:00
Trygve Aaberge 03899e5ea5 doc: Fix typo in highlight_disable_regex option name
The section describes highlight_disable_regex, but the example used
highlight_regex instead.
2022-11-05 21:37:25 +01:00
Sébastien Helleu a70c626c11 core: update ChangeLog (issue #1844) 2022-10-23 19:04:32 +02:00
Trygve Aaberge 6f1635ae4e core: Prevent use of uninitialized memory when setting invalid color
If a color option value is null and is tried being set to an invalid
color, the value was set to uninitialized memory which can lead to a
segfault.

Can be reproduced with this script:
https://gist.github.com/trygveaa/6ddb3a52f525a7fd8e0908bafa83e07c

The option doesn't have to be set from a script, it also happens with
the /set command.
2022-10-23 19:00:29 +02:00
Sébastien Helleu 09839150a8 doc: remove extra "#" before hex color 2022-10-22 21:51:48 +02:00
Sébastien Helleu fd526e38a3 debian: update changelog 2022-10-22 21:49:30 +02:00
Sébastien Helleu 133a424178 core: add version 3.7.1 2022-10-21 14:41:38 +02:00
Nils Görs 68f605594c doc: update German documentation 2022-10-20 23:44:37 +02:00
Sébastien Helleu cf5a9a0db5 trigger: execute trigger command on appropriate buffer (closes #1841)
This affects the following hook types:

- command
- command_run
- line
- modifier
- print

This fixes a regression introduced in WeeChat 3.7 by commit
0f67f55098.
2022-10-20 20:19:37 +02:00
Sébastien Helleu 693c5e64a7 doc/faq: remove mention of obsolete WeeChat versions 2022-10-19 23:40:12 +02:00
Sébastien Helleu 4d645fcdc9 doc: fix language in links to other docs 2022-10-19 21:33:16 +02:00
Sébastien Helleu d79b106361 python: remove functions defined for Python < 2.6 2022-10-16 09:00:37 +02:00
Sébastien Helleu 319abf4fd0 python: remove support of Python 2.x 2022-10-15 22:56:06 +02:00
Sébastien Helleu 7a544d5fcf tests: ignore pylint error unnecessary-pass 2022-10-15 22:01:33 +02:00
Sébastien Helleu 56dbd871ea api: do not expect any return value in callbacks change/delete of config_new_option (scripting API) 2022-10-15 21:46:00 +02:00
Sébastien Helleu a1057c9a03 tests: add tests on config functions (scripting API) 2022-10-15 21:31:45 +02:00
Trygve Aaberge ec11126246 python: Fix return types for config option callbacks
I erroneously typed the return types for these to int in commit
e0c117e14, but they should be None.
2022-10-14 23:00:33 +02:00
Sébastien Helleu f9dd5ee89b core: add contributor (issue #1836) 2022-10-14 22:48:49 +02:00
Sébastien Helleu e3bbe2b5be core: update ChangeLog 2022-10-14 22:47:39 +02:00
Latchezar Tzvetkoff 8765eb3b71 Allow terminal title to be left unchanged.
Fixes #1835.
2022-10-14 22:42:21 +02:00
Sébastien Helleu 6619c421aa irc: escape backslashes in raw buffer (closes #1838) 2022-10-12 21:43:03 +02:00
Sébastien Helleu 7d2e8b9143 core: allow command /toggle to create option before setting the value, if allowed in the section (closes #1837) 2022-10-12 21:29:38 +02:00
Sébastien Helleu f97b74cae8 core: fix context info in buffers with free content (closes #1832) 2022-10-10 20:24:58 +02:00
Trygve Aaberge 6096350618 python: Include script examples in function docstring
This makes it possible to see how functions are used without having to
go to the web page. It's especially useful to see the types of the
callback functions.
2022-10-09 19:01:16 +02:00
Sébastien Helleu 7122b46baf Version 3.8-dev 2022-10-09 08:34:22 +02:00
Sébastien Helleu 484f679e60 Version 3.7 2022-10-09 08:06:53 +02:00
Trygve Aaberge fdb1ff3781 tests: Use LONGS_EQUAL for version number tests
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-10-08 18:13:00 +02:00
Sébastien Helleu 193aa0448f core: fix compilation warning on isdigit function 2022-10-08 12:18:09 +02:00
Sébastien Helleu 3932cf5a00 xfer: add missing include of netinet/in.h
This fixes compilation on FreeBSD 13.0.
2022-10-08 12:11:12 +02:00
Sébastien Helleu 8555cf465e debian: update changelog 2022-10-08 11:52:44 +02:00
Sébastien Helleu 11f0d57dfd debian: bump Standards-Version to 4.6.1.0 2022-10-08 11:52:14 +02:00
Nils Görs 1fd5dd4c34 doc: update German documentation 2022-10-06 15:02:08 +02:00
Sébastien Helleu 1fec7e8856 core: fix page scroll in bare display (closes #1830) 2022-10-05 20:33:35 +02:00
Trygve Aaberge 236d22e364 python: Include constant values in python stub
This is useful for two reasons:

1. When running unit tests for a script weechat needs to be mocked. By
   having the constant values available in the stub file, they can be
   loaded from that, instead of having to define the constants manually
   for the mock.

2. If you log a constant value you have to look up what it means. This
   makes it easier, in the same vein as PR #1824.
2022-10-02 20:25:17 +02:00
Sébastien Helleu 4d3a3c67ac irc: set local variable "filter" when doing /server raw xxx with raw buffer already opened (closes #1448) 2022-10-01 17:06:31 +02:00
Sébastien Helleu ae61137216 trigger: add variable ${tg_hook_type} (closes #1765) 2022-09-30 21:32:27 +02:00
Trygve Aaberge 6bb4bed8bb doc/api: Fix config_new_option types for non English docs
Only English was changed in commit 197a7a01e.
2022-09-30 07:53:37 +02:00
Sébastien Helleu 92cdcee8f6 api: change type of argument object_id in upgrade_new callback from string to integer (in scripts) 2022-09-29 21:38:04 +02:00
Sébastien Helleu b2b110f1a3 api: change type of argument remaining_calls in hook_timer callback from string to integer (in scripts) 2022-09-29 21:21:01 +02:00
Trygve Aaberge 89400cbf7a doc/api: Remove unnecessary cast in Python example
The highlight argument is already an int, so no point in casting it.
2022-09-29 17:13:19 +02:00
Trygve Aaberge e0c117e14f doc/api: Add types for Python callbacks 2022-09-29 17:13:19 +02:00
Sébastien Helleu b978de5f84 debian: remove ubuntu/xenial patch (distro not supported any more)
As zstd is too old in ubuntu/xenial (0.5.1 while min version is 0.8.1), this
distro is not supported any more.
2022-09-29 16:04:58 +02:00
Sébastien Helleu fd43ad6387 core: fix compilation with zstd < 1.4.0
Note: zstd ≥ 0.8.1 is now required to compile WeeChat.
2022-09-29 15:59:01 +02:00
Sébastien Helleu 009a7821b1 doc: update German auto-generated file 2022-09-29 11:07:38 +02:00
Nils Görs 5cfcec7212 doc: update German documentation 2022-09-29 11:06:13 +02:00
Nils Görs c6671fc9db core: update German translations 2022-09-29 11:04:56 +02:00
Sébastien Helleu 8295ea6da8 doc/user: remove tag "translation missing" in French user's guide 2022-09-29 09:47:50 +02:00
Sébastien Helleu 9817372553 doc/user: add chapter on log file rotation/compression 2022-09-29 09:46:43 +02:00
Sébastien Helleu 486df38a8d php: add missing arginfo_weechat_string_parse_size in legacy arginfo 2022-09-29 07:48:55 +02:00
Trygve Aaberge 76d4cc7e3f doc/api: Add values for hook_process constants
When logging this value I just see a number so I have to look up what it
means. Previously you would have to check the code or print the value of
each of these constants to see it. Seeing the value directly in the
documentation makes this much easier.
2022-09-28 21:42:21 +02:00
Sébastien Helleu 135960859d doc/api: add note about C API for constant WEECHAT_HOOK_PROCESS_CHILD (function hook_process) 2022-09-28 21:01:01 +02:00
Sébastien Helleu 9f62c4a842 doc/api: fix typo 2022-09-28 20:58:29 +02:00
Sébastien Helleu 7711ed95c5 logger: add options to rotate and compress log files (closes #314)
New options:

- logger.file.rotation_compression_level
- logger.file.rotation_compression_type
- logger.file.rotation_size_max
2022-09-28 20:52:59 +02:00
Sébastien Helleu 26e6fdc645 api: add function file_compress 2022-09-27 20:49:12 +02:00
Sébastien Helleu e7b6e8c60f api: restrict number to integer in function string_parse_size 2022-09-27 15:50:43 +02:00
Sébastien Helleu 4d74a89cfc api: add function string_parse_size 2022-09-27 15:50:43 +02:00
Nils Görs be6a29a596 doc: update German documentation 2022-09-27 10:56:11 +02:00
Sébastien Helleu 34c043453b irc: fix use of uninitialized variable ptr_nick 2022-09-26 21:21:27 +02:00
Sébastien Helleu 6f8aab186d doc: update German auto-generated file 2022-09-20 19:23:57 +02:00
Nils Görs 201b24a02a core: update German translations 2022-09-20 19:10:13 +02:00
Sébastien Helleu 01cf98e8fb core: add key alt+backspace, change behavior of key ctrl+w (closes #559)
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-09-18 23:26:49 +02:00
Sébastien Helleu d7c0e896b2 core: fix style in ChangeLog 2022-09-18 17:44:55 +02:00
Sébastien Helleu 389f9f436b trigger: escape arguments with double quotes in output of /trigger input|output|recreate (closes #190) 2022-09-18 17:44:05 +02:00
Sébastien Helleu fe62d93dd0 build: update version of Debian/Ubuntu distros in examples 2022-09-18 14:39:36 +02:00
Sébastien Helleu d5c285f0a6 build: remove patches for Debian/Raspbian Stretch 2022-09-18 14:39:02 +02:00
Sébastien Helleu a00edcf50e tests: add tests on filter functions 2022-09-17 18:56:35 +02:00
Sébastien Helleu be7380f9b3 core: fix order of filters after renaming a filter (issue #1695) 2022-09-17 16:01:02 +02:00
Sébastien Helleu 5284921701 irc: fix message when disconnecting from server in case of high lag when server option autoreconnect is off (closes #1708) 2022-09-17 12:12:06 +02:00
Sébastien Helleu 36d2e7427e core: fix wrong terminal title on terminal resize (closes #1702) 2022-09-17 11:56:03 +02:00
Sébastien Helleu 0df582c7c1 core: sort filters by name (closes #1695) 2022-09-17 11:07:22 +02:00
Sébastien Helleu a99fc17d40 spell: allow special dict value "-" to disable spell checking on a specific buffer (closes #1699) 2022-09-17 10:44:21 +02:00
Sébastien Helleu 2b2ba62600 doc/api: add version 3.7 for priority in function hook_line 2022-09-17 07:52:39 +02:00
Sébastien Helleu 21683def12 doc: update German auto-generated file 2022-09-16 21:06:33 +02:00
Sébastien Helleu 96c22c41ba api: add support of priority in function hook_line (closes #1821) 2022-09-16 21:05:51 +02:00
Nils Görs ba27ec8d65 core: update German translations 2022-09-16 08:23:27 +02:00
Sébastien Helleu c6d8b54459 irc: add option irc.look.display_pv_nick_change 2022-09-15 20:31:06 +02:00
Sébastien Helleu 82f59d2a98 doc: update auto-generated files 2022-09-11 16:30:55 +02:00
Nils Görs 731f7e4243 core: update German translations 2022-09-11 16:25:17 +02:00
Ivan Pešić 2178440b7c core: Update Serbian translation
Includes documentation update.
2022-09-11 11:50:35 +02:00
Sébastien Helleu 57af62c1c0 doc/api: move function hook_completion in chapter on hook priority 2022-09-11 11:45:02 +02:00
Sébastien Helleu 742773e070 doc/api: update chapter on hook priority 2022-09-11 10:52:25 +02:00
Sébastien Helleu ac646da4fb doc/api: update note about priority in hook functions 2022-09-11 09:50:47 +02:00
Sébastien Helleu 9cb68b13a9 irc: replace chars "\01" by spaces in CTCP replies (closes #1819)
This prevents any attack due to an external security issue in the Linux
netfilter implementation (nf_conntrack_irc).

See: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-2663
2022-09-10 13:43:45 +02:00
Sébastien Helleu 5070a6330c xfer: use larger buffer for IP address
This removes a gcc warning about a too small buffer.
2022-09-09 19:20:41 +02:00
Sébastien Helleu d5cbd6c49a irc: fix display of message 350 (whois, gateway) (closes #1815) 2022-09-05 22:12:17 +02:00
Sébastien Helleu 2a32456f19 tests: add missing include of string.h 2022-09-05 20:49:59 +02:00
Sébastien Helleu b0bf2fbc97 core: remove debug print 2022-09-03 22:38:12 +02:00
Sébastien Helleu e8524ea2c4 xfer: fix DCC file receive on Termux (closes #1811)
This fixes such error displayed on Termux when receiving a DCC file:

xfer: invalid address "96747949": error 8 hostname nor servname provided, or not known
2022-09-03 22:29:46 +02:00
Sébastien Helleu 7cf9399616 core: rename argument "length" to "bytes" in function string_strndup (header files)
Argument was already renamed in commit f8915129bf
but it was incomplete (missing header files).
2022-08-31 22:51:47 +02:00
Sébastien Helleu 68ecfb16a1 irc: fix target buffer of generic errors when they contain a target nick (closes #1814) 2022-08-29 22:45:28 +02:00
Sébastien Helleu f5604510cd script: use API function weechat_crypto_hash_file in script_repo_sha512sum_file 2022-08-16 21:40:02 +02:00
Sébastien Helleu 0090695f7d api: add function crypto_hash_file 2022-08-16 21:33:50 +02:00
Sébastien Helleu e614410815 irc: fix extract of isupport value when it is last in list and without value (closes #1807) 2022-08-15 18:14:03 +02:00
Sébastien Helleu fb14e67364 buflist: improve help on option buflist.look.enabled 2022-08-15 14:43:25 +02:00
Sébastien Helleu a31de83a3c core: move line from "New features" to "Bug fixes" 2022-08-15 13:11:08 +02:00
Sébastien Helleu b26fb7fba6 core: add new option trigger.color.identifier in ChangeLog 2022-08-15 13:10:29 +02:00
Sébastien Helleu 0f67f55098 trigger: add elapsed time for trigger execution on monitor buffer when trigger debug is set (closes #1806) 2022-08-15 12:44:16 +02:00
Sébastien Helleu 1ce2d7f56d trigger: fix error on monitor buffer creation when trigger debug is >= 1 and monitor buffer is closed 2022-08-15 12:42:26 +02:00
Sébastien Helleu 223eefef67 irc: display ACCOUNT command in private buffers 2022-08-13 22:58:37 +02:00
Sébastien Helleu aee3da5452 irc: add options and display SETNAME command in channels and private buffers (closes #1805)
New options:

- irc.color.message_setname
- irc.look.smart_filter_setname
2022-08-13 22:47:22 +02:00
Sébastien Helleu d3b84eaf6c irc: display CHGHOST command in private buffers 2022-08-13 22:16:46 +02:00
Sébastien Helleu ac50a5dda7 doc: update auto-generated files 2022-08-13 19:07:56 +02:00
Sébastien Helleu a36fa2faea logger: improve help on option logger.file.auto_log 2022-08-13 19:02:55 +02:00
Sébastien Helleu 1e0d59a5e6 irc: add missing tag "irc_numeric" in all numeric IRC commands (closes #1804) 2022-08-13 17:34:43 +02:00
Sébastien Helleu 06b6f457d9 tests: add tests on dynamic string functions with NULL string 2022-08-13 14:38:08 +02:00
Sébastien Helleu 57c0a82557 core: fix CMake warning in Python detection 2022-08-13 14:37:00 +02:00
Sébastien Helleu dd65938a85 doc: update German auto-generated file 2022-08-09 23:35:57 +02:00
Nils Görs ff417f88ea core: update German translations 2022-08-08 10:22:56 +02:00
Nils Görs 2857b7b4b7 core: update German translations 2022-08-08 10:08:44 +02:00
Sébastien Helleu a8080505f3 tests: add tests on function xfer_file_search_crc32 2022-08-08 08:06:23 +02:00
Sébastien Helleu bbe8afcbd4 xfer: move and rename function xfer_filename_crc32 to xfer-file.c 2022-08-08 06:57:39 +02:00
Sébastien Helleu 25f25073b9 irc: fix parsing of messages with trailing spaces and no trailing parameter (closes #1803) 2022-08-07 23:28:11 +02:00
Sébastien Helleu d068fe0de5 core: add option -save in command /upgrade (closes #1630) 2022-08-07 16:48:12 +02:00
Sébastien Helleu d91cddc909 xfer: disconnect all active DCC chats and files on /upgrade 2022-08-07 11:15:03 +02:00
Sébastien Helleu 9fd71067e7 xfer: fix refresh of xfer buffer after /upgrade 2022-08-07 11:11:10 +02:00
Sébastien Helleu 441d532f15 relay: fix refresh of relay buffer after /upgrade 2022-08-07 10:04:47 +02:00
Sébastien Helleu 57c9f371bc relay: use enum type for websocket status in client 2022-08-07 09:31:24 +02:00
Sébastien Helleu 4fa278c2c3 doc: update German auto-generated file 2022-08-05 22:34:40 +02:00
Nils Görs 0edae0d93d Merge branch 'master' of https://github.com/weechat/weechat 2022-08-05 09:49:59 +02:00
Nils Görs fbc2e86d0e core: update German translations 2022-08-05 09:49:27 +02:00
Sébastien Helleu 06622b5acb doc: update German auto-generated file 2022-08-04 22:14:28 +02:00
Nils Görs 9bb903cbc8 core: update German translations 2022-08-04 12:46:04 +02:00
Sébastien Helleu e9b8c9b6aa ci: fix Ubuntu code name when applying Debian patch 2022-08-03 22:05:45 +02:00
Sébastien Helleu b0eb3c9347 ci: remove macOS 10.15, add macOS 12 in CI 2022-08-03 21:57:44 +02:00
Sébastien Helleu 2102ef742b core: update ChangeLog 2022-08-03 21:56:55 +02:00
Sébastien Helleu 5d51e7286c ci: remove tests on macOS 10.15 2022-08-03 21:52:47 +02:00
Sébastien Helleu fe892460ba tests: fix pylint errors 2022-08-03 21:51:51 +02:00
Sébastien Helleu 0bb7a34748 doc: fix pylint errors 2022-08-03 21:51:51 +02:00
Sébastien Helleu ee1efedbd7 ci: switch from Ubuntu 20.04 to 22.04 2022-08-03 21:51:51 +02:00
Emir SARI 492a68b3de Update Turkish translations
Fixes plural structure to comply with gettext Turkish specification.
2022-08-03 21:20:31 +02:00
Sébastien Helleu 2bd3d32f0d irc: mention how to remove capability in /help cap 2022-08-03 21:18:17 +02:00
Sébastien Helleu 6b28cc001f tests: fix _ast_num in script generator 2022-08-02 23:52:31 +02:00
Sébastien Helleu 23707a12ea tests: fix scripting API tests with Python 3.8 2022-08-02 21:35:33 +02:00
Sébastien Helleu a7364d055b tests: disable pylint errors in testapi.py 2022-08-02 21:21:07 +02:00
Sébastien Helleu 4d4a6f99f9 tests: add tests on hdata functions (scripting API) 2022-08-02 21:11:45 +02:00
Sébastien Helleu a4c73b9ae7 tests: fix assignment in tcl script generator 2022-08-02 20:55:59 +02:00
Sébastien Helleu 3bc0453cae tests: fix assignment in perl script generator 2022-08-02 20:55:36 +02:00
Sébastien Helleu 2ed281af02 tests: use double quotes instead of simple quotes in ruby script generator
This allows to use escaped chars in strings.
2022-08-02 20:54:35 +02:00
Sébastien Helleu 05abbac297 tests: add subscript in script generator 2022-08-02 20:52:40 +02:00
Sébastien Helleu 237c37e719 tests: fix unary op in script generator 2022-08-02 20:51:40 +02:00
Sébastien Helleu 39f2b2f7b9 ruby: fix function hdata_get_string 2022-08-02 20:50:48 +02:00
Sébastien Helleu 8f6395e889 guile: fix function hdata_get_string 2022-08-02 20:50:24 +02:00
Sébastien Helleu 53df45de48 php: fix function hdata_compare 2022-08-02 20:49:35 +02:00
Sébastien Helleu bcb8647aa4 scripts: fix issue with long interval in function hook_timer
Affected plugins: python, ruby, lua, tcl, guile, javascript, php.
2022-08-01 22:18:38 +02:00
Sébastien Helleu b1404b0277 scripts: fix issue with year ≥ 2038 in functions print_date_tags and print_y_date_tags
Affected plugins: python, lua, tcl, guile, javascript.
2022-08-01 21:03:44 +02:00
Sébastien Helleu 1514570ff0 scripts: fix issue with year ≥ 2038 in function infolist_new_var_time
Affected plugins: python, lua, tcl, guile, javascript.
2022-08-01 20:32:09 +02:00
Sébastien Helleu 2475ba43a3 javascript: fix return of long value in functions infolist_time, hdata_long and hdata_time 2022-08-01 20:13:01 +02:00
Sébastien Helleu d2c2f9e6cd tests: fix run of Guile test script 2022-08-01 20:02:35 +02:00
Sébastien Helleu d8abdc57ee core: fix styles in ChangeLog 2022-07-31 09:59:18 +02:00
Sébastien Helleu e77ea9dc26 buflist: add variable "${hotlist_priority_number}" (integer version of "${hotlist_priority}") 2022-07-31 09:58:29 +02:00
Emir SARI 324f0aaa2d Update Turkish translations 2022-07-30 07:53:40 +02:00
Nils Görs ae273b2714 core: update German translations 2022-07-28 13:45:27 +02:00
Sébastien Helleu 06a05fd674 doc: update German auto-generated files 2022-07-27 22:07:50 +02:00
Sébastien Helleu a50143fdf8 irc: display an error message when using command /dcc without xfer plugin loaded 2022-07-27 22:07:24 +02:00
Sébastien Helleu 56b82fb115 xfer: fix crash when closing DCC chat buffer 2022-07-27 22:06:48 +02:00
Nils Görs 9b4f52ac13 core: update German translations 2022-07-26 13:45:37 +02:00
Sébastien Helleu 906ac1d1e1 relay: exit function relay_irc_recv if params can not be allocated 2022-07-24 23:02:09 +02:00
Sébastien Helleu 2a145d7cc1 core: remove dead assignments 2022-07-24 23:01:38 +02:00
Sébastien Helleu 68ad24f2df core: add option weechat.look.highlight_disable_regex and buffer property "highlight_disable_regex" (closes #1798) 2022-07-24 22:43:48 +02:00
Sébastien Helleu 1796634d83 core: use dynamic string in function gui_bar_item_get_value 2022-07-24 21:18:26 +02:00
Sébastien Helleu a37c46c21e doc: use non-breaking spaces before links to notes 2022-07-22 17:24:44 +02:00
Sébastien Helleu d43b9e99c1 doc/scripting: add missing fields "paramN" and "num_params" in output of "irc_message_parse"
These new fields were added in version 3.4 with major improvements of the IRC
message parser.
2022-07-22 17:06:49 +02:00
Sébastien Helleu d5c4342bce irc: fix display of TOPIC message with an empty trailing parameter 2022-07-21 11:16:50 +02:00
Sébastien Helleu 569c93c6fb irc: fix display of QUIT message with an empty trailing parameter (closes #1797)
The regression was introduced with the new way to parse IRC message parameters,
in version 3.4.
2022-07-21 11:10:29 +02:00
Sébastien Helleu 96ed471261 relay: fix parsing of IRC messages received from clients (closes #1796)
The IRC parser improved in version 3.4 is now used to parse command
parameters (variables "num_params" and "paramN" in output of parser function).
2022-07-21 10:20:10 +02:00
Sébastien Helleu 6b59fc8557 irc: use API function string_rebuild_split_string in irc_protocol_string_params 2022-07-20 13:20:07 +02:00
Sébastien Helleu b7441bd7a3 api: add arguments "index_start" and "index_end" in function string_rebuild_split_string 2022-07-20 13:16:35 +02:00
Sébastien Helleu 62e68f965f api: rename function string_build_with_split_string to string_rebuild_split_string 2022-07-20 12:14:40 +02:00
Sébastien Helleu 0440309cee irc: fix duplicated channels in autojoin option when autojoin_dynamic is enabled (closes #1795) 2022-07-16 14:05:48 +02:00
Sébastien Helleu e057c16b36 api: add info "uptime_current"
This info returns time duration between the start of the current WeeChat
process and now (so upgrades with /upgrade are ignored).
2022-07-10 13:02:35 +02:00
Sébastien Helleu c4cade3550 Version 3.7-dev 2022-07-10 09:41:57 +02:00
Sébastien Helleu e5a159c74f Version 3.6 2022-07-10 09:18:05 +02:00
Sébastien Helleu b74aa71442 debian: update changelog 2022-07-09 09:32:17 +02:00
Nils Görs 8fb7987633 doc: update German documentation 2022-07-09 00:35:09 +02:00
Sébastien Helleu bb76a5d266 Version 3.6-rc1 2022-07-06 23:02:12 +02:00
Sébastien Helleu db21a0da90 doc: update Serbian auto-generated files 2022-07-06 22:54:15 +02:00
Ivan Pešić 7508337240 core: Serbian message translation fixes
Several fixes.
2022-07-06 22:53:59 +02:00
Sébastien Helleu 98375b8ffc doc: update Serbian auto-generated files 2022-07-05 21:19:36 +02:00
Sébastien Helleu d6d83474c7 doc: remove extra space in Serbian translation 2022-07-05 21:19:17 +02:00
Ivan Pešić 43bafa59d8 core/doc: Update Serbian translation 2022-07-05 21:15:06 +02:00
Sébastien Helleu e8c255770f doc: fix display of literal blocks
This fixes:

- height of lines in literal blocks (all browsers)
- literal blocks in Japanese docs (Firefox)
2022-07-04 23:42:36 +02:00
Sébastien Helleu 59a4142b00 doc: remove font "Noto Color Emoji"
This allows the same render for north east arrow on all browsers.
2022-07-03 21:51:01 +02:00
Sébastien Helleu dbc59965ac doc: force color-scheme to dark/light according to the theme
This allows to have dark scroll bars in Chrome-based browsers.
2022-07-03 21:46:02 +02:00
Sébastien Helleu 6ffebec1a6 tests: add tests on IRC messages 524/704/705/706 (issue #1772) 2022-07-02 21:11:32 +02:00
Sébastien Helleu 1c7b431bc8 api: run hook_print callback also on empty messages 2022-07-02 21:10:48 +02:00
Sébastien Helleu 749bc26926 irc: remove unneeded translation marker (issue #1772) 2022-07-02 20:41:39 +02:00
Sébastien Helleu 9ac9dc7023 core: update ChangeLog (issue #1772) 2022-07-02 20:34:39 +02:00
Sébastien Helleu bbf55b734c irc: start at parameter #2 in callback of messages 524/704/705/706 (issue #1772) 2022-07-02 20:34:36 +02:00
Sébastien Helleu 2095887be9 irc: fix comments (issue #1772) 2022-07-02 20:34:34 +02:00
Valentin Lorentz fa05f75b74 irc: add ERR_HELPNOTFOUND (issue #1772) 2022-07-02 20:34:31 +02:00
Valentin Lorentz a96d2c28fb irc: strip topic name when formatting RPL_HELPSTART/RPL_HELPTXT/RPL_ENDOFHELP (issue #1772) 2022-07-02 20:34:27 +02:00
Sébastien Helleu 4a115fdedd core: update ChangeLog 2022-06-30 20:37:11 +02:00
Sébastien Helleu 3a0e54d236 php: fix compilation warning about unused arguments 2022-06-30 20:35:59 +02:00
Adam Saponara 24fe646c4e php: Deprecate forget_* functions in PHP 8+
These functions don't work with PHP 8+ and also don't seem to be
necessary anymore when reloading scripts.
2022-06-30 20:33:45 +02:00
Adam Saponara 8cf5848116 php: Add stubs and generate arginfo for PHP API
This was preventing the PHP plugin from working if PHP was compiled
with `--enable-debug`. With this patch, `--enable-debug` builds of
PHP should work.
2022-06-30 20:33:13 +02:00
Adam Saponara 3e1a5b4447 php: Adjust API for PHP 8.2 2022-06-30 20:32:20 +02:00
Sébastien Helleu 1fb82b4062 doc/quickstart: add command /autojoin and server option autojoin_dynamic 2022-06-28 23:00:43 +02:00
Sébastien Helleu d4dc1467c9 doc/scripting: add arrow and open external links in new tab 2022-06-27 00:07:41 +02:00
Sébastien Helleu c64bdeaed3 doc/relay: add arrow and open external links in new tab 2022-06-26 23:57:50 +02:00
Sébastien Helleu 37ed420108 doc/quickstart: add arrow and open external links in new tab 2022-06-26 23:54:07 +02:00
Sébastien Helleu b825ce49c2 doc/api: add arrow and open external links in new tab 2022-06-26 23:47:05 +02:00
Sébastien Helleu 33bf2dec43 doc/faq: add arrow and open external links in new tab 2022-06-26 23:29:46 +02:00
Sébastien Helleu 0fe3661eab doc/dev: add arrow and open external links in new tab 2022-06-26 22:41:56 +02:00
Sébastien Helleu aee4d283c9 doc/user: add arrow and open external links in new tab 2022-06-26 22:23:54 +02:00
Sébastien Helleu d3cdccc274 doc/user: replace TOR by Tor 2022-06-26 16:38:05 +02:00
Sébastien Helleu 42a0a19828 doc/user: add a chapter on supported IRCv3 extensions 2022-06-25 08:53:18 +02:00
Sébastien Helleu 8788fcedc8 irc: update URLs to IRCv3 specifications 2022-06-25 08:53:03 +02:00
Sébastien Helleu 84e6e84347 doc: remove underline and change color for links 2022-06-24 18:59:42 +02:00
Sébastien Helleu 38efd63012 doc: fix generation of python stub 2022-06-24 07:46:35 +02:00
Sébastien Helleu 031819173b doc: change formatting in asciidoctor tables 2022-06-23 20:43:46 +02:00
Sébastien Helleu de3d670ca7 doc: update German auto-generated file 2022-06-21 21:24:43 +02:00
Nils Görs d2394f6432 core: update German translations 2022-06-20 13:46:19 +02:00
Sébastien Helleu 2c4bad8120 core: add trailing slashes in URLs 2022-06-18 16:18:09 +02:00
Sébastien Helleu 8ac67ff540 doc: add trailing slashes in URLs 2022-06-18 16:05:11 +02:00
Sébastien Helleu b8ef7e2f65 doc/user: add missing server option "autojoin_dynamic" 2022-06-18 12:49:03 +02:00
Sébastien Helleu 21ca625f10 irc: update translations 2022-06-18 10:40:04 +02:00
Sébastien Helleu 9644df21ad irc: add example with /allchan in /help autojoin 2022-06-17 21:05:12 +02:00
Sébastien Helleu 17ae43aa03 irc: rename option save to apply in command /autojoin 2022-06-15 22:11:08 +02:00
Sébastien Helleu 487406cfd9 doc/user: fix column size 2022-06-10 12:41:13 +02:00
Nils Görs cd4db84feb doc: update German documentation 2022-06-10 09:16:39 +02:00
Sébastien Helleu 55a796f30b doc/user: add chapter on custom bar items 2022-06-07 21:04:34 +02:00
Sébastien Helleu d81813cd6a doc/faq: mention command /autojoin to edit the "autojoin" server option 2022-06-06 23:53:25 +02:00
Sébastien Helleu 2006c2c940 doc: update German auto-generated files 2022-05-31 08:19:09 +02:00
Sébastien Helleu f3d2f9bbe1 doc/user: fix links to commands 2022-05-30 22:11:40 +02:00
Nils Görs 2c61a24413 core: update German translations 2022-05-30 10:13:43 +02:00
Sébastien Helleu 10501a34fe core: fix style in ChangeLog 2022-05-28 10:24:41 +02:00
Sébastien Helleu 99dcdae5b0 core: update translations 2022-05-27 22:47:46 +02:00
Sébastien Helleu 86f110db98 core: add completion of conditions and content in commands /item add and /item addreplace (issue #808) 2022-05-27 22:16:58 +02:00
Sébastien Helleu a1a9303b14 trigger: fix completion of command /trigger add when there are spaces in the following arguments 2022-05-27 22:16:58 +02:00
Sébastien Helleu 5ef4731c62 core: add examples in /help item (issue #808) 2022-05-27 22:16:55 +02:00
Sébastien Helleu 007958e82c core: add display conditions in custom bar items (issue #808) 2022-05-27 22:16:50 +02:00
Sébastien Helleu 5876a8335f trigger: fix memory leak in command /trigger addinput 2022-05-27 17:53:56 +02:00
Sébastien Helleu cefed25912 core: add command /item (closes #808)
This allows to create custom bar items with evaluated content (like the script
text_item.py does).
2022-05-27 17:53:50 +02:00
Nils Görs 79438c72e1 core: update German translations 2022-05-12 08:17:19 +02:00
Sébastien Helleu d99fe0bc76 core: allow to remove multiple filters at once with command /filter del 2022-05-11 21:50:53 +02:00
Sébastien Helleu 540ff62c60 doc/relay: add missing version 3.5 in command "init" 2022-05-09 18:11:43 +02:00
Sébastien Helleu 3e8580b5e5 doc/faq: rename option autojoin_record to autojoin_dynamic 2022-04-29 08:21:10 +02:00
Sébastien Helleu 0f1f9bc87f doc: update German auto-generated file 2022-04-25 13:31:35 +02:00
Nils Görs f0572474d4 core: update German translations 2022-04-25 08:28:35 +02:00
Sébastien Helleu d4d8117461 irc: remove channel from autojoin option when manually closing a buffer 2022-04-24 22:09:19 +02:00
Sébastien Helleu 4d8df89bb5 irc: fix add of channel to autojoin option when joining a channel with a buffer still opened 2022-04-24 22:09:19 +02:00
Sébastien Helleu b7f3127bf8 api: allow to catch multiple signals in functions hook_signal and hook_hsignal (closes #1780) 2022-04-24 22:09:15 +02:00
Sébastien Helleu f69ef840e0 doc/api: remove word "and" in text with updated versions 2022-04-24 17:36:39 +02:00
Sébastien Helleu e46d2567ea core: fix style in ChangeLog 2022-04-24 10:31:28 +02:00
Sébastien Helleu 8be5759ef7 core: update ChangeLog 2022-04-24 10:30:47 +02:00
Sébastien Helleu 78317f8b55 core: move detailed list of hooks from command "/plugin listfull" to "/debug hooks <plugin>" 2022-04-24 10:28:09 +02:00
Sébastien Helleu d16640130e core: add functions to get short description of hooks 2022-04-24 10:06:54 +02:00
Sébastien Helleu 95cf2aa956 doc: update auto-generated files with commands 2022-04-23 22:10:12 +02:00
Sébastien Helleu dc367a83f6 core: add missing options "dirs" and "hooks" in description of /debug command arguments 2022-04-23 19:13:16 +02:00
Sébastien Helleu 2a2428902b trigger: check that buffer notify is not "none" to run command of default trigger beep 2022-04-23 14:15:41 +02:00
Sébastien Helleu 51ed9ec93e core: add case conversion in evaluation of expressions (closes #1778) 2022-04-18 13:46:16 +02:00
Nils Görs 46033a7ee9 doc: update German documentation 2022-04-18 10:58:35 +02:00
Sébastien Helleu a2e43a732e core: update ChangeLog (closes #1700) 2022-04-18 09:55:55 +02:00
Sébastien Helleu 674f52bf58 core: add bar item "spacer" 2022-04-18 09:52:01 +02:00
Sébastien Helleu 0af960dbde core: use dynamic string functions to build bar window content 2022-04-17 09:20:46 +02:00
Sébastien Helleu 07b54a9932 buflist: fix memory leak when reading config and changing option buflist.look.sort 2022-04-16 20:24:24 +02:00
Sébastien Helleu 9fceaa465d doc/user: add install of binary package with brew on macOS 2022-04-09 19:36:11 +02:00
Ivan Pešić 94555e043c doc: Update Serbian translation 2022-04-09 10:45:27 +02:00
Sébastien Helleu f02b172716 core: add CVE id in ChangeLog 2022-04-03 21:13:05 +02:00
Sébastien Helleu 9b1184e180 ci: install package ruby-pygments.rb 2022-03-30 21:54:36 +02:00
Sébastien Helleu f39553152f relay: fix save of channels when JOIN/PART are received from an IRC relay client (closes #1771) 2022-03-30 21:41:14 +02:00
Sébastien Helleu 89f49040f3 debian: add dependency on ruby-pygments.rb 2022-03-29 21:02:42 +02:00
Sébastien Helleu 95d0b89d1d doc/user: add chapter on containers 2022-03-28 23:18:44 +02:00
Sébastien Helleu 01f9bcbaba core: fix bad window size on startup with some terminals like kitty (closes #1769) 2022-03-27 17:19:39 +02:00
Sébastien Helleu 6fb6fad7e9 Version 3.6-dev 2022-03-27 16:04:59 +02:00
Sébastien Helleu 0e6497612c Version 3.5 2022-03-27 15:13:48 +02:00
Sébastien Helleu a794bf39bb debian: update changelog 2022-03-27 09:49:50 +02:00
Sébastien Helleu 5f543f26cc core: update .mailmap 2022-03-24 21:04:21 +01:00
Sébastien Helleu 0d8ced6c32 doc: use unicode symbol for greater-than or equal to 2022-03-23 21:12:02 +01:00
Sébastien Helleu db28e2133d doc: update Serbian auto-generated files 2022-03-22 21:18:32 +01:00
Ivan Pešić bab175f5b4 core: update Serbian translation 2022-03-22 21:18:03 +01:00
Ivan Pešić d3b42fae83 doc: update Serbian translations 2022-03-22 21:18:03 +01:00
Sébastien Helleu ef41998179 core: use unicode symbol for greater-than or equal to in ChangeLog 2022-03-21 23:02:35 +01:00
Sébastien Helleu 05e65cdd31 Version 3.5-rc1 2022-03-20 18:11:25 +01:00
Sébastien Helleu 872ff1cc6d irc: fix memory leak in command /autojoin addraw when channels are missing 2022-03-19 10:17:32 +01:00
Sébastien Helleu 8123cb3e0b irc: ensure old_autojoin and ptr_autojoin are not NULL before comparing them 2022-03-19 10:15:16 +01:00
Sébastien Helleu 15e11ecc0c core: fix line too long 2022-03-17 21:17:34 +01:00
Trygve Aaberge 827db6dc31 core: Fix regex for constants in the Python stub generator
In Python raw strings, newlines can't be escaped with a backslash. If
you do that, both the backslash and the newline become part of the
string. This meant that the regex for constants both started and ended
with a newline which caused every other constant to be skipped.
2022-03-17 21:16:45 +01:00
Sébastien Helleu 44e0414970 core: add version 3.4.1 2022-03-14 08:39:24 +01:00
Sébastien Helleu 9a19cc5d59 core: update latest stable version to 3.4.1 2022-03-14 08:35:24 +01:00
Nils Görs 3289bd2882 doc: update German documentation 2022-03-13 22:41:26 +01:00
Sébastien Helleu 6e75f93e1f doc/user: translate FreeBSD installation instructions (issue #1760) 2022-03-13 20:40:32 +01:00
Mateusz Piotrowski 13482b38d0 Add FreeBSD installation instructions 2022-03-13 20:38:57 +01:00
Sébastien Helleu 6004139098 core: set again TLS verification functions after GnuTLS options are changed (closes #1763)
When changing the options weechat.network.gnutls_ca_system or
weechat.network.gnutls_ca_user, the GnuTLS credentials are freed then allocated
again, but the verification function used to check the certificate on
connection is not set again.

As a consequence, any TLS connection is made without checking the certificate.

This regression was introduced in version 3.2, when the options were changed to
automatically load system certificates without having to give the path, and to
let user give an extra custom path with certificates.
2022-03-13 18:04:07 +01:00
Sébastien Helleu 116f533e0d doc: update German auto-generated files 2022-03-13 14:07:56 +01:00
Sébastien Helleu c943d3507f python: add function buffer_new_props in Python stub file 2022-03-13 14:07:22 +01:00
Sébastien Helleu 869279e9b6 tests: add tests on function gui_buffer_match_list 2022-03-13 14:03:23 +01:00
Sébastien Helleu 947ca33c14 tests: add tests on function gui_buffer_valid 2022-03-13 14:03:14 +01:00
Sébastien Helleu 44ec7e8cfa tests: add tests on functions gui_buffer_search_type and gui_buffer_search_notify 2022-03-13 13:49:18 +01:00
Sébastien Helleu 4629b17173 tests: add tests on functions gui_buffer_new and gui_buffer_new_props 2022-03-13 13:29:50 +01:00
Sébastien Helleu e5e3a9d2da api: add function buffer_new_props (closes #1759) 2022-03-13 10:35:29 +01:00
Sébastien Helleu fbbed9fbf7 core: add function gui_buffer_new_props (issue #1759)
This function allows to create a buffer and set properties via a hashtable,
before the signal "buffer_opened" is sent.
2022-03-13 10:35:29 +01:00
Sébastien Helleu 310b4dd2a0 tests: close xfer buffer after receiving some files 2022-03-13 10:34:56 +01:00
Sébastien Helleu 55f1655064 dev/scripting: fix typo 2022-03-12 20:50:25 +01:00
Sébastien Helleu 55aa40e087 doc/dev: add file test-irc-tag.cpp 2022-03-12 16:47:14 +01:00
Sébastien Helleu 68f395d433 doc/dev: add file irc-typing.c 2022-03-12 16:41:52 +01:00
Sébastien Helleu 22a36665e3 doc/dev: add file test-logger-backlog.cpp 2022-03-12 16:38:58 +01:00
Sébastien Helleu 65e08ffe07 core: update ChangeLog (issue #1761) 2022-03-12 16:11:08 +01:00
Sébastien Helleu 8781187771 doc/scripting: translate note about Tcl constant $::weechat::WEECHAT_NULL 2022-03-12 16:08:19 +01:00
Trygve Aaberge 197a7a01e4 scripts: allow null values in config_new_option
The plugin API function config_new_option accepts null as the
default_value and/or value however the scripting APIs (except for lua)
didn't allow sending null as a parameter value, so it was impossible to
use it this way. This allows sending a null value for these parameters.

Lua already supported sending in nil for these parameters and it works
as expected, so nothing is changed for this plugin.

For Guile you can now send in #nil, for JavaScript null or undefined,
for Perl undef, for PHP NULL, for Python None, for Ruby nil and for Tcl
$::weechat::WEECHAT_NULL.

In all of these languages except Tcl this is the special value
indicating a missing value. However Tcl only has one type, string, so it
doesn't have a null value. Therefore I created a constant with the value
`\uFFFF\uFFFF\uFFFFWEECHAT_NULL\uFFFF\uFFFF\uFFFF` which is used
instead. This is very unlikely to appear unintentionally. Using the
unicode code point \uFFFF was suggested on
https://wiki.tcl-lang.org/page/null.

I tested this with these scripts:
https://gist.github.com/trygveaa/f91977dde5d2876d502bf55fbf9b50cc
2022-03-12 16:00:38 +01:00
Sébastien Helleu 47e71a1bbd tests: close buffers of channels created for tests on irc_join_save_channels_to_autojoin 2022-03-12 15:20:45 +01:00
Emir SARI 3a4a9459e7 Update Turkish translations 2022-03-12 10:36:12 +01:00
Nils Görs cd6b83470e core: update German translations 2022-03-11 20:39:51 +01:00
Sébastien Helleu 3f9c46468c irc: add option "sort" in command /autojoin 2022-03-11 19:31:56 +01:00
Sébastien Helleu 9a286c65c6 tests: add missing include of string.h 2022-03-10 21:37:13 +01:00
Sébastien Helleu aadd0772fe irc: update translations 2022-03-10 21:26:26 +01:00
Sébastien Helleu bb03e18425 irc: display only one message in /autojoin command output 2022-03-10 21:12:46 +01:00
Sébastien Helleu 5d809df6ed tests: move include of tests/tests.h outside of extern "C" 2022-03-10 21:12:46 +01:00
Sébastien Helleu 74ba21a8c4 tests: add tests on verbose argument of irc join functions 2022-03-10 21:12:46 +01:00
Sébastien Helleu 02bdf854bc irc: fix add of same channel with and without key in the array list 2022-03-10 21:12:46 +01:00
Sébastien Helleu 8c66070136 irc: rename server option "autojoin_record" to "autojoin_dynamic" 2022-03-10 21:12:46 +01:00
Sébastien Helleu 9cfdb4a324 irc: add command /autojoin 2022-03-10 21:12:46 +01:00
Sébastien Helleu c1e65e8edd irc: add server option "autojoin_record" 2022-03-10 21:12:46 +01:00
Sébastien Helleu f81a0dc4d9 doc: fix syntax highlighting in Serbian docs 2022-03-07 21:46:33 +01:00
Sébastien Helleu d06f1e8486 guile: remove disabling of guile gmp allocator with Guile ≥ 3.0.8
This fixes the compilation warning:

weechat-guile.c: In function ‘weechat_plugin_init’:
weechat-guile.c:1270:5: warning: ‘scm_install_gmp_memory_functions’ is deprecated [-Wdeprecated-declarations]
2022-03-06 16:42:54 +01:00
Sébastien Helleu ffb6cc3208 tests: add tests on function irc_server_valid 2022-03-05 20:53:01 +01:00
Sébastien Helleu dc779b5179 tests: add tests on functions irc_server_search and irc_server_casesearch 2022-03-04 21:44:46 +01:00
Sébastien Helleu 7228262591 irc: fix display of message 901 (you are now logged out) (closes #1758) 2022-02-28 22:12:22 +01:00
Ivan Pešić e4f93a7f30 doc: Update Serbian documentation 2022-02-22 19:03:51 +01:00
Sébastien Helleu fd27faf899 tests: add tests on function logger_backlog_display_line 2022-02-21 20:17:01 +01:00
Sébastien Helleu 7486ea6dc1 logger: split function logger_backlog into two functions 2022-02-21 20:16:43 +01:00
Sébastien Helleu 9e9e252ff3 doc/relay: fix columns sizes in tables 2022-02-21 18:27:22 +01:00
Sébastien Helleu db368b5824 doc/scripting: fix column size in tables 2022-02-21 18:26:39 +01:00
Sébastien Helleu 214e3cb1c2 doc/user: fix style in tables 2022-02-21 18:26:11 +01:00
Nils Görs b4a14ef1dd doc: update German documentation 2022-02-21 08:58:00 +01:00
Sébastien Helleu 40ff9beb10 doc/dev: add table with list of components for git commit message 2022-02-20 17:31:25 +01:00
Trygve Aaberge d359e8135e doc/api: Add missing parameter to python prototype for config_new_section 2022-02-20 16:49:04 +01:00
Sébastien Helleu 8700e0bb36 scripts: auto-load scripts with supported extensions only (closes #1698) 2022-02-20 16:29:31 +01:00
Sébastien Helleu 601bd7e0b8 doc/user: update dependencies using versions from Debian Bullseye 2022-02-20 16:12:21 +01:00
Sébastien Helleu d3a9ce29fc doc/user: add missing dependency on ruby-pygments.rb to build doc 2022-02-20 09:09:54 +01:00
Sébastien Helleu f39c6a58d0 irc: replace calls to strndup by weechat_strndup 2022-02-19 16:34:36 +01:00
Sébastien Helleu 4068dc8da5 core: replace calls to strndup by string_strndup 2022-02-19 16:34:19 +01:00
Sébastien Helleu 7051c0fc2b tests: add tests on function string_strndup 2022-02-19 16:33:49 +01:00
Sébastien Helleu 7f8e5b892d core: call strdup in string_strndup if bytes equals strlen of string 2022-02-19 16:32:59 +01:00
Sébastien Helleu e0db08c782 debian: change dependency libargon2-0-dev to libargon2-dev (debian bug #1005703) 2022-02-19 10:18:38 +01:00
Sébastien Helleu 6fbfb2f476 core: update sentence about XDG directories in release notes 2022-02-15 07:12:38 +01:00
Sébastien Helleu a2bb57bf82 doc/api: add missing type for argument "count" in Python prototype of function ngettext 2022-02-14 07:25:22 +01:00
Sébastien Helleu ba7ff87d19 irc: fix parsing of message 223 (m_filter) sent by InspIRCd server (closes #1751) 2022-02-10 20:50:16 +01:00
Ivan Pešić d7c8b16c4f doc: Update Serbian documentation 2022-02-08 13:22:24 +01:00
Sébastien Helleu d0c857934b ruby: add detection of Ruby 3.1 2022-02-08 12:41:32 +01:00
Sébastien Helleu e8c59e1f5b core: fix style in ChangeLog 2022-02-05 10:04:25 +01:00
Sébastien Helleu ec86c33789 doc/user: add supported C++ compilers in dependencies 2022-02-01 20:33:17 +01: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 bf3241208b doc/api: fix type of parameter "date" in script prototype of function prnt_date_tags 2022-01-30 11:01:17 +01:00
Sébastien Helleu 28d6b71d9e tests: add tests on gui_chat_printf_date_tags with past date and tags 2022-01-30 10:01:32 +01:00
Sébastien Helleu 083662cb34 tests: add tests on GUI chat functions
Functions tested:

- gui_chat_utf_char_valid
- gui_chat_char_size_screen
- gui_chat_strlen
- gui_chat_strlen_screen
- gui_chat_string_add_offset
- gui_chat_string_add_offset_screen
- gui_chat_string_real_pos
- gui_chat_string_pos
- gui_chat_get_word_info
- gui_chat_printf_date_tags_internal
- gui_chat_printf_date_tags
- gui_chat_printf_y
2022-01-29 10:24:21 +01:00
Sébastien Helleu bf9cf3875f doc/dev: update format of commit messages for docs 2022-01-29 10:12:32 +01:00
Sébastien Helleu fc2f564950 doc: update auto-generated files with options 2022-01-28 09:36:03 +01:00
Sébastien Helleu efaf88d857 tests: add tests on functions gui_line_build_string_prefix_message and gui_line_build_string_message_tags 2022-01-28 07:45:35 +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 3110740777 core: use dynamic string in function gui_chat_build_string_message_tags 2022-01-28 07:12:01 +01:00
Sébastien Helleu a62f8f6f75 core: use dynamic string in function gui_chat_build_string_prefix_message 2022-01-28 07:03:44 +01:00
Sébastien Helleu 05eb897771 doc/api: merge examples and results in same column (function string_eval_expression) 2022-01-27 21:15:34 +01:00
Sébastien Helleu 113f93e5db doc/api: add column "Min WeeChat" in string_eval_expression tables 2022-01-27 20:01:46 +01:00
Sébastien Helleu f2aef8c13c core: check that utf_char is not NULL in gui chat functions 2022-01-26 20:24:31 +01:00
Sébastien Helleu 3983f01ee7 core: set prefix to NULL when clearing a line on a buffer with free content 2022-01-26 20:23:16 +01:00
Sébastien Helleu 0ebf3dbede core: fix memory leak when removing a line on a buffer with free content 2022-01-26 20:22:56 +01:00
Sébastien Helleu 13fb3649dd core: update ChangeLog 2022-01-23 15:42:16 +01:00
Trygve Aaberge 6a88bbb4cc Remove old and unused config option weechat.plugin.debug
As far as I can see, this option is not used anywhere and should have
been removed in commit 6e69f7f3c.
2022-01-23 15:41:10 +01:00
Emir SARI b018f8d5c8 core: update Turkish translations 2022-01-23 10:18:59 +01:00
Sébastien Helleu 574f1837f9 python: fix crash in hook callbacks after script loading failure (closes #1740) 2022-01-22 21:34:04 +01:00
Sébastien Helleu 5172f20217 doc: update Serbian auto-generated file 2022-01-21 22:33:35 +01:00
Ivan Pešić ab7c4c0147 doc: Update Serbian translation 2022-01-21 14:49:50 +01:00
Nils Görs 28fc2e7cbf doc: update German documentation 2022-01-18 08:51:55 +01:00
Sébastien Helleu 2d6ab2ec0a core: fix install of PHP 8.0 in CI 2022-01-17 21:27:04 +01:00
Sébastien Helleu c44b79dce7 core: update copyright dates 2022-01-17 18:41:06 +01:00
Sébastien Helleu ab12d384ea doc: add example of hook_process with a script function (scripting guide) 2022-01-16 10:16:27 +01:00
Sébastien Helleu c775242a4c doc: remove useless comparison with empty string in Python examples (plugin API reference) 2022-01-16 10:15:55 +01:00
Sébastien Helleu 619f09f2d6 xfer: fix auto-accept of server/nick when the server name contains UTF-8 chars (issue #1739) 2022-01-15 10:04:43 +01:00
Sébastien Helleu e6f65122a9 spell: fix comparison of URL prefix with UTF-8 chars (issue #1739)
There is no problem in practice because the possible URL prefixes are hardcoded
in the spell plugin and don't contain any UTF-8 char on more than one byte.
2022-01-15 10:04:12 +01:00
Sébastien Helleu 50167ca96f relay: fix comparison of server nonce with UTF-8 chars (issue #1739)
There is no problem in practice because this server nonce is generated by
WeeChat itself and encoded to base64, so it never contains any UTF-8 char on
more than one byte.
2022-01-15 10:03:54 +01:00
Sébastien Helleu b54d06630d irc: fix completion of channel topic with UTF-8 chars (issue #1739) 2022-01-15 09:52:23 +01:00
Sébastien Helleu c13aa86c79 api: fix add of infolist items in hashtable when prefix contains UTF-8 chars in function hashtable_add_from_infolist (issue #1739) 2022-01-15 09:48:50 +01:00
Sébastien Helleu bda7bb64d2 core: fix search of commands with UTF-8 chars in name when option weechat.look.command_incomplete is on (issue #1739) 2022-01-15 09:48:50 +01:00
Sébastien Helleu dee7313fcc trigger: fix search of triggers with UTF-8 chars in name (issue #1739) 2022-01-15 09:36:02 +01:00
Sébastien Helleu 305608ce89 tests: split tests on functions string_tolower and string_toupper 2022-01-14 21:43:06 +01:00
Sébastien Helleu f8915129bf core: rename argument "length" to "bytes" in function string_strndup 2022-01-14 21:41:25 +01:00
Nils Görs 0e57d01076 doc: update German documentation 2022-01-12 12:37:00 +01:00
Sébastien Helleu 286338f627 doc: add missing macro WEECHAT_PLUGIN_AUTHOR (plugin API reference) 2022-01-08 17:05:51 +01:00
Sébastien Helleu 9bbab7ff02 irc: use default callback in case of missing parameters in messages 311/312/327 (whois) and 314 (whowas) 2022-01-06 08:14:11 +01:00
Sébastien Helleu 6670fd2a87 irc: add macro to run another protocol callback 2022-01-06 08:10:44 +01:00
Sébastien Helleu 0d6b18bc54 irc: fix parsing of message 338 (whois, host) sent by Rizon server (closes #1737) 2022-01-05 08:24:04 +01:00
Sébastien Helleu 8c49475f75 irc: fix display of message 344 received as whois geo info (closes #1736) 2022-01-04 19:53:48 +01:00
Sébastien Helleu 08e0d3912a doc: add note about chars replaced in IRC tag key/value (user's guide) 2021-12-30 21:49:51 +01:00
Sébastien Helleu 532d46bb93 trigger: add variables ${tg_tag_irc_xxx} containing IRC message tags (issue #1680) 2021-12-30 21:22:37 +01:00
Sébastien Helleu b66298d369 irc: add IRC message tags in messages displayed (closes #1680) 2021-12-30 21:11:22 +01:00
Sébastien Helleu 5c6fc8c4bd doc: update OS examples in contributing guide 2021-12-30 07:25:23 +01:00
Sébastien Helleu ee96b9b867 doc: change pygments pre-processor color from red to green/cyan 2021-12-28 23:34:38 +01:00
Sébastien Helleu 1c022d3bda doc: move section "Fset" in "Configuration" (user's guide) 2021-12-28 22:22:14 +01:00
Sébastien Helleu dd2b19ec42 core: fix display of hotlist in buflist after changing value of option weechat.look.hotlist_sort (closes #1733)
The "hotlist" pointer in buffers was lost, it is now set again after switching
to the newly sorted hotlist.
2021-12-28 13:52:58 +01:00
Sébastien Helleu df0506dbdf doc: update German auto-generated file 2021-12-28 13:34:15 +01:00
Nils Görs 93eafae2fe core: update German translations 2021-12-27 10:42:54 +01:00
Sébastien Helleu 7fb1dd94cc core: add build of Debian packages in CI 2021-12-25 16:26:43 +01:00
Sébastien Helleu c8a8680d60 relay: improve help on option relay.network.compression 2021-12-25 10:44:00 +01:00
Sébastien Helleu af067f18e2 doc: update auto-generated files with options 2021-12-25 10:31:44 +01:00
Sébastien Helleu 454c0acbcf doc: fix color of preformatted text in docs 2021-12-25 10:30:18 +01:00
Sébastien Helleu 498194f6fc relay: add zstd compression in weechat protocol
Option relay.network.compression_level is renamed to relay.network.compression
and is now a percentage between 0 (no compression) to 100 (best compression,
slowest).

Compression is now disabled by default in weechat protocol and must be enabled
via the `handshake` command (option `compression` has been removed from `init`
command).
2021-12-24 16:45:57 +01:00
Sébastien Helleu d5c391b1ee irc: fix display of IRC numeric messages with no parameters
For example this MOTD message is properly displayed (empty line):

  :server.example.com 372 nick :
2021-12-23 18:43:12 +01:00
Nils Görs 20e219a2c9 doc: update German documentation 2021-12-20 10:23:22 +01:00
Sébastien Helleu abb7d3642a core: use shortcuts for URLs pointing to documentation 2021-12-19 12:31:45 +01:00
Sébastien Helleu 7f2cce2970 core: fix link to doc on IRC plugin in README 2021-12-19 12:31:09 +01:00
Sébastien Helleu 7a0fdd1966 core: remove tests on Travis CI
Travis CI has been replaced by GitHub Actions since May 2020.
2021-12-19 12:22:50 +01:00
Sébastien Helleu fae6bbb40e core: fix styles in ChangeLog and release notes 2021-12-19 10:51:29 +01:00
Sébastien Helleu 5bb56e0f57 doc: mention IRC server buffer in default key binding ctrl-x (user's guide) 2021-12-18 13:41:09 +01:00
Sébastien Helleu 5de21ddfc0 Version 3.5-dev 2021-12-18 09:22:12 +01:00
Sébastien Helleu 778594d68f Version 3.4 2021-12-18 08:57:32 +01:00
Sébastien Helleu 37d4d2ac65 debian: update changelog 2021-12-18 08:41:05 +01:00
Krzysztof Korościk 2376b6aa5e doc: update polish translation 2021-12-17 23:28:35 +01:00
Nils Görs 5a24ffd951 doc: update German documentation 2021-12-17 09:19:32 +01:00
Sébastien Helleu a1cc70b752 core: fix broken links in README (closes #1729) 2021-12-16 20:41:12 +01:00
Sébastien Helleu 1cedb78348 doc: add workaround for download of plugins.xml.gz on macOS (FAQ) 2021-12-15 21:05:06 +01:00
Ivan Pešić 0123abb83e doc: Update Serbian translation 2021-12-13 22:16:57 +01:00
Sébastien Helleu 463517bd1e core: fix tests on PHP plugin in CI 2021-12-13 21:39:25 +01:00
Sébastien Helleu 46f3bee2ff core: add build of zst archive in make dist 2021-12-13 21:10:06 +01:00
Krzysztof Korościk d80b27af64 doc: updated polish cmdline options 2021-12-12 20:47:42 +01:00
Krzysztof Korościk e2d44181d7 doc: updated polish user guide 2021-12-12 20:37:02 +01:00
Krzysztof Korościk ba4f762964 po: updated polish translation 2021-12-12 00:44:04 +01:00
Sébastien Helleu dad3e6099c doc: use unbreakable spaces in example of missing translation tag (developer's guide)
This allows to search this tag in docs with grep and ignore the example in the
developer's guide.
2021-12-11 09:40:07 +01:00
Sébastien Helleu 5208552a98 doc: remove missing translation comments in French docs 2021-12-11 09:35:01 +01:00
Sébastien Helleu 07721d3dc1 Version 3.4-rc1 2021-12-10 18:49:11 +01:00
Nils Görs d236171035 core: update German translations 2021-12-10 11:21:47 +01:00
Sébastien Helleu a4d560e0aa doc: fix color codes attributes in developer's guide 2021-12-08 20:54:40 +01:00
Sébastien Helleu 7bf0a5c734 doc: remove list of remote interfaces, redirect to web site (user's guide) 2021-12-05 22:00:24 +01:00
Sébastien Helleu 10a8732d41 doc: rename section "WeeChat extension" to "Extending WeeChat" (user's guide) 2021-12-05 21:39:28 +01:00
Sébastien Helleu fd017ce474 doc: add section "Script manager" (user's guide) 2021-12-05 21:39:28 +01:00
Sébastien Helleu 1c0d8f5fd3 doc: add section "WeeChat extension" above "Plugins" (user's guide) 2021-12-05 21:39:28 +01:00
Sébastien Helleu 160ffe8e11 doc: move sections "Exec", "Fifo" and "Trigger" at top level after "Relay" (user's guide) 2021-12-05 21:39:28 +01:00
Sébastien Helleu 4c7b898666 doc: move section "Xfer" at top level after "IRC" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu 391d0a18a1 doc: move section "Typing" at top level after "IRC" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu a5db952842 doc: move section "Spell" in "Configuration" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu 7cb5147e74 doc: move section "Relay" at top level after "IRC" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu a5ffd8b800 doc: move section "Logger" in "Configuration" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu 66384544b5 doc: move section "IRC" at top level after "Configuration" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu c88428fb41 doc: move section "Bare display" in "Buffers and windows" (user's guide) 2021-12-05 14:15:52 +01:00
Sébastien Helleu 71991fcc73 doc: add fset buffer example (user's guide) 2021-12-05 14:11:25 +01:00
Sébastien Helleu b82a9c44fd doc: fix typo in French user's guide 2021-12-05 13:56:59 +01:00
Sébastien Helleu 637c7bb3d4 doc: move section "Fset" in "Interface" (user's guide) 2021-12-05 13:15:35 +01:00
Sébastien Helleu 268cb53238 doc: move section "Charset" in "Configuration" (user's guide) 2021-12-05 12:43:54 +01:00
Sébastien Helleu 9e721d0ad5 doc: move section "Buflist" in "Interface" (user's guide) 2021-12-05 12:36:39 +01:00
Sébastien Helleu 287d5146b4 doc: move section "Alias" in "Configuration" (user's guide) 2021-12-05 12:25:41 +01:00
Sébastien Helleu 1cfb5e5d1e doc: change section title for debug build and address sanitizer (user's guide) 2021-12-05 11:55:02 +01:00
Sébastien Helleu 866fef2595 doc: fix cross-reference to mouse actions (user's guide) 2021-12-05 11:47:04 +01:00
Sébastien Helleu 2dabce9ac8 doc: move section "Key bindings" at top level, add section title "Configuration" (user's guide) 2021-12-04 20:12:06 +01:00
Sébastien Helleu f33e9b6737 doc: move section "Running WeeChat" at top level, add section title "Interface" (user's guide) 2021-12-04 15:59:55 +01:00
Sébastien Helleu 50cea48b51 doc: move section "Upgrade" at top level after "Installation" (user's guide) 2021-12-04 15:59:46 +01:00
Sébastien Helleu ae891ab322 doc: reduce font size in table of contents 2021-12-04 15:38:47 +01:00
Sébastien Helleu 0a14441d35 doc: remove section title for extra debug options on command line (user's guide) 2021-12-04 15:31:38 +01:00
Sébastien Helleu f2310dae42 doc: add more categories for key bindings (user's guide) 2021-12-04 15:15:58 +01:00
Sébastien Helleu 67a364550f core: fix typo in weechat --help 2021-12-03 12:03:08 +01:00
Sébastien Helleu 64592951b5 doc: use only a link to user's guide in Installation chapter (README) 2021-12-01 18:54:28 +01:00
Sébastien Helleu 3a38879590 doc: remove tester's guide 2021-12-01 18:48:14 +01:00
Sébastien Helleu d447755b1f core: update ChangeLog 2021-11-28 22:21:55 +01:00
Sébastien Helleu 2564fa2882 doc: disable web fonts in docs generated by asciidoctor 2021-11-27 16:53:12 +01:00
Sébastien Helleu 928ed152ed doc: make reproducible build of docs with asciidoctor 2021-11-27 16:09:11 +01:00
Sébastien Helleu 7014322b2e doc: add dark theme in docs generated by asciidoctor 2021-11-27 16:05:28 +01:00
Sébastien Helleu 9b6606394c doc: fix column size in table with color codes (developer's guide) 2021-11-27 16:05:28 +01:00
Sébastien Helleu 198872c027 doc: escape example of link in developer's guide 2021-11-27 16:05:28 +01:00
Sébastien Helleu c8776b14f6 doc: switch from prettify to pygments for syntax highlighting 2021-11-27 16:05:28 +01:00
Nils Görs 35c26fb001 doc: update German documentation 2021-11-24 12:30:41 +01:00
Thomas Faughnan eca9c89747 doc: fix typo in link for '/layout' in user guide 2021-11-23 09:34:19 +01:00
Sébastien Helleu aed64f5020 ruby: add detection of Ruby 3.0 in autotools (issue #1721) 2021-11-21 16:57:17 +01:00
Sébastien Helleu 266233636d core: add issue #1605 in ChangeLog 2021-11-21 16:48:39 +01:00
Sébastien Helleu be753046b7 core: fix detection of Ruby 3.0 on macOS (issue #1721) 2021-11-21 16:38:22 +01:00
Sébastien Helleu 15f5bc7944 tests: add missing include of stdio.h 2021-11-21 16:37:23 +01:00
Sébastien Helleu 27a480c7d7 core: fix compilation with Ruby 3.0 on macOS (issue #1721, closes #1605) 2021-11-21 16:29:40 +01:00
Sébastien Helleu fe9768f484 ruby: add detection of Ruby 3.0.0, remove old way to detect Ruby (closes #1721) 2021-11-21 11:39:56 +01:00
Sébastien Helleu aace0a1a58 core: fix links to docs in release notes 2021-11-20 20:34:21 +01:00
Sébastien Helleu 792739ee42 core: add build with CMake and Ninja in CI 2021-11-20 19:02:53 +01:00
Sébastien Helleu 8b11fa86cd core: add build on macOS 11 in CI 2021-11-20 17:34:33 +01:00
Sébastien Helleu 28d013b704 build: add targets "changelog" and "rn" to build HTML version of ChangeLog and release notes (CMake build only) 2021-11-20 17:23:59 +01:00
Sébastien Helleu 5fffaf89e4 build: improve error management in build of tarballs 2021-11-20 15:32:06 +01:00
Sébastien Helleu 006964c4dc irc: fix memory leak in case of realloc error 2021-11-20 13:21:51 +01:00
Sébastien Helleu 05d31b476b trigger: hide key and password in command "/msg nickserv setpass nick key password" 2021-11-13 15:41:31 +01:00
Sébastien Helleu 50edb33f1c core: speed up eval by storing length of prefix/suffix in eval structure 2021-11-13 15:18:49 +01:00
Sébastien Helleu c82358c17c core: free strings with XDG directories in case of error 2021-11-13 14:59:14 +01:00
Sébastien Helleu d64050bafb relay: remove dead assignment in websocket decoding 2021-11-13 13:32:02 +01:00
Sébastien Helleu 1556e4ac5a core: fix memory leak in evaluated expression "split:number,seps,flags,xxx" when multiple "strip_items" are given 2021-11-13 13:29:32 +01:00
Sébastien Helleu a3924a27a0 tests: add tests on some IRC SASL functions 2021-11-13 09:06:34 +01:00
Sébastien Helleu cbadaecc4f core: add note about default trigger "cmd_pass_register" in release notes 2021-11-13 08:48:04 +01:00
Sébastien Helleu 7cad1230e6 trigger: add comments with list of all commands in default triggers 2021-11-12 21:20:14 +01:00
Sébastien Helleu 997559e55b trigger: split default triggers on multiple lines 2021-11-12 21:08:39 +01:00
Sébastien Helleu d98940fecb tests: add tests on default triggers 2021-11-12 20:58:30 +01:00
Sébastien Helleu f2ad57ceb9 trigger: add support of option "-server" when hiding passwords in command /msg nickserv register 2021-11-12 20:52:14 +01:00
Sébastien Helleu d4650183ba doc: fix typos in user's guide 2021-11-11 21:33:16 +01:00
Sébastien Helleu a6c40d2190 doc: fix sentences in French user's guide 2021-11-11 21:18:10 +01:00
Sébastien Helleu 563a6db02d core: fix typos in docs 2021-11-11 09:28:24 +01:00
Sébastien Helleu 5ddd72c0e9 tests: add extra tests on functions string_strcmp_ignore_chars and string_convert_escaped_chars 2021-11-09 20:41:23 +01:00
Ivan Pešić 80b86ea647 core: update Serbian translations 2021-11-08 20:48:59 +01:00
Santiago Forero bbcdb90fbb core: update Spanish translations 2021-11-08 20:25:41 +01:00
Sébastien Helleu 253b25db03 core: fix random integer number with large range in evaluation of expressions on GNU/Hurd 2021-11-07 20:16:26 +01:00
Sébastien Helleu 4c9e7ed09e tests: fix allocation of test_ptr_1_hashtable_dyn in hdata tests 2021-11-07 18:13:03 +01:00
Sébastien Helleu 12043622e6 tests: add tests on UTF-8 string functions 2021-11-07 14:39:48 +01:00
Sébastien Helleu f4a1baaed3 irc: extend size of some internal buffers 2021-11-07 08:57:07 +01:00
Sébastien Helleu 9303f5abd9 core: update ChangeLog 2021-11-06 18:57:49 +01:00
Sébastien Helleu 1b8ad40b81 irc: do not display a message parsing error when a channel buffer can not be created 2021-11-06 18:19:12 +01:00
Sébastien Helleu 2f177dd188 irc: fix join of channels with name longer than 127 chars (closes #1717) 2021-11-06 18:17:39 +01:00
Sébastien Helleu edfc415e9e irc: fix memory leak in main IRC message callback 2021-11-06 17:58:48 +01:00
Sébastien Helleu 8bb5e33348 irc: fix memory leak in callback of IRC message 353 2021-11-06 17:55:31 +01:00
Sébastien Helleu b3cf7658f7 doc: replace ${name} by ${server_name} in example of function hdata_search (plugin API reference) 2021-11-06 16:03:40 +01:00
Sébastien Helleu 2081fa54af core: reverse diff arguments in CI 2021-11-06 15:59:28 +01:00
Sébastien Helleu 2da2172593 api: add parameters pointers, extra_vars and options in function hdata_search 2021-11-06 15:59:18 +01:00
Sébastien Helleu 018a4bda53 core: add hdata changes in release notes 2021-11-05 20:21:39 +01:00
Sébastien Helleu 14c6ef3d83 tests: add missing include of string.h 2021-11-05 20:21:17 +01:00
Sébastien Helleu 9c5837d143 core: add unit tests on hdata 2021-11-05 20:04:10 +01:00
Sébastien Helleu 5e08f9876a core: fix access to integer/long/time arrays in hdata, add support of static arrays in hdata 2021-11-04 23:55:02 +01:00
Sébastien Helleu ee66fc3a85 core: fix crash in function hdata_set when pointer value is NULL in hashtable 2021-11-03 23:54:12 +01:00
Sébastien Helleu 13472adfff core: check that time is valid in function hdata_set 2021-11-03 23:23:09 +01:00
Sébastien Helleu 60b374901f core: remove useless test in function hdata_update 2021-11-03 23:02:01 +01:00
Sébastien Helleu d8a3a0137c core: check that hdata and name are not NULL in function hdata_compare 2021-11-02 21:08:24 +01:00
Sébastien Helleu f66e55564e core: check that name is not NULL in function hdata_get_var 2021-11-01 22:16:50 +01:00
Sébastien Helleu 6e83225e6f core: use a "free value" callback in hashtable weechat_hdata 2021-10-29 22:13:53 +02:00
Sébastien Helleu f03622d141 doc: update Polish auto-generated files 2021-10-24 09:23:01 +02:00
Krzysztof Korościk 4f20417cb2 po: updated polish translation 2021-10-24 00:38:46 +02:00
Krzysztof Korościk f15337ea9a doc: updated polish translation 2021-10-23 23:29:34 +02:00
Sébastien Helleu 49221b56b9 doc: update German auto-generated file 2021-10-23 20:58:16 +02:00
Nils Görs 75f71cd311 core: update German translations 2021-10-23 17:58:01 +02:00
Sébastien Helleu 505a9f937a core: fix typo in ChangeLog 2021-10-23 15:13:53 +02:00
Sébastien Helleu 08d3e3b2b7 core: update ChangeLog (closes #1666) 2021-10-23 14:44:20 +02:00
Sébastien Helleu fb4d947a8c core: update translations 2021-10-23 14:44:11 +02:00
Sébastien Helleu 2ca6420e17 irc: do not display first parameter in numeric command when it is "*" 2021-10-17 21:28:31 +02:00
Sébastien Helleu cde0d5f7a5 irc: do not display "*" when received as nick in command 900 2021-10-17 21:28:31 +02:00
Sébastien Helleu ba5b744397 irc: add URL to extended-join extension 2021-10-17 21:28:31 +02:00
Sébastien Helleu 1447c7ad83 irc: fix URL to invite-notify extension 2021-10-17 21:28:31 +02:00
Sébastien Helleu b57d19c893 irc: add more CAP command examples 2021-10-17 21:28:31 +02:00
Sébastien Helleu 9063546acc irc: remove parameters argc/argv/argv_eol from command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu f1cb767001 irc: keep trailing spaces in received message 322 2021-10-17 21:28:31 +02:00
Sébastien Helleu 634eac455d tests: ensure trailing spaces are preserved in some incoming IRC commands 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2f90fc0299 irc: don't keep trailing spaces in received message TAGMSG 2021-10-17 21:28:31 +02:00
Sébastien Helleu d2bd952210 tests: protect IRC message with quotes in command /server fakerecv 2021-10-17 21:28:31 +02:00
Sébastien Helleu 9fbe18eb27 irc: remove quotes around message in command /server fakerecv
This preserves trailing spaces at the end of the message.
2021-10-17 21:28:31 +02:00
Sébastien Helleu 2ca37a9128 irc: remove server in "903" and "904" command callbacks examples 2021-10-17 21:28:31 +02:00
Sébastien Helleu a73e9eb8ca irc: use parsed command parameters in "901" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a3ddeba9f9 irc: use parsed command parameters in "900" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu baa91a45a8 irc: use parsed command parameters in "730", "731", "732", "733" and "734" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu 6124bf3c92 irc: use parsed command parameters in "729" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 6a8ec55118 irc: use parsed command parameters in "728" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 4b6038975c irc: use parsed command parameters in "470" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5e63161b5b irc: use parsed command parameters in "438" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 32c99047f4 irc: use parsed command parameters in "437" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2ef9509dbe irc: remove server in "432" and "433" command callbacks examples 2021-10-17 21:28:31 +02:00
Sébastien Helleu c7cb025582 irc: use parsed command parameters in "368" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 96288d69e2 irc: use parsed command parameters in "367" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu aad86a1955 irc: use parsed command parameters in "366" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu dcbf534d53 irc: use parsed command parameters in "353" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu c8329da6e0 irc: use parsed command parameters in "352" and "354" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3e1b621f52 tests: add extra tests on notice message received with just a server address 2021-10-17 21:28:31 +02:00
Sébastien Helleu 56cb9e50af irc: fix display of address in notice messages received 2021-10-17 21:28:31 +02:00
Sébastien Helleu 9b17f1fee4 irc: use parsed command parameters in "351" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu cee4bf7e3c irc: use parsed command parameters in "349" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 027ecc6b0e irc: use parsed command parameters in "348" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 22ecfda777 irc: use parsed command parameters in "347" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2ae974f5c3 irc: use parsed command parameters in "346" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 99d565f6df irc: use parsed command parameters in "345" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5546b0af0e irc: use parsed command parameters in "344" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 741343e9aa irc: use parsed command parameters in "341" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 0e9710de81 irc: use parsed command parameters in "338" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 32ae101096 irc: use parsed command parameters in "333" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3a5a2abeea irc: use parsed command parameters in "332" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu de567aa1d3 irc: use parsed command parameters in "331" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a5e470a16a irc: use parsed command parameters in "330" and "343" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu b3ce8b5282 irc: use parsed command parameters in "329" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 31b15c1423 irc: use parsed command parameters in "328" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 60c9beab2b irc: rename some variables "str_params" to a more meaningful name 2021-10-17 21:28:31 +02:00
Sébastien Helleu 10a1c9bda4 irc: use parsed command parameters in "327" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 6f8f547242 irc: use parsed command parameters in "324" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2509486c6a irc: use parsed command parameters in "323" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu df9c32b0c3 irc: use parsed command parameters in "322" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu c577da0375 irc: use parsed command parameters in "321" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 4e1d40034e irc: use parsed command parameters in "317" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a1a4f337ff irc: use parsed command parameters in "315" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu e412a34668 irc: use parsed command parameters in "314" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3c7d4b0516 irc: use parsed command parameters in "312" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 572bcc2c59 irc: use parsed command parameters in "311" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3360cadd55 irc: use parsed command parameters in "whois" and "whowas" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu f51f3dbe29 irc: use parsed command parameters in "305" and "306" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu efecdf5d45 irc: use parsed command parameters in "303" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 76b75ad5cd irc: use parsed command parameters in "numeric" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 74ceaa1a68 irc: use parsed command parameters in "301" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 12a4519448 irc: use parsed command parameters in "221" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 033fbf63b0 irc: use parsed command parameters in "008" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 1029780ce2 irc: use parsed command parameters in "005" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 0ea0b24563 irc: use parsed command parameters in "001" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu ec816b4be5 irc: use parsed command parameters in "wallops" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 7c1ea1cb32 irc: use parsed command parameters in "topic" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 27f554659e irc: use parsed command parameters in "973", "974" and "975" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5389ceb237 irc: use parsed command parameters in "tagmsg" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 03e0122155 irc: use parsed command parameters in "setname" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 8d12187f3d irc: require nick in "away" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu bf8c85f422 irc: use parsed command parameters in "quit" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 179822fb91 irc: use parsed command parameters in "privmsg" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5e712d7145 irc: use parsed command parameters in "pong" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 8ea41d91c9 irc: use parsed command parameters in "ping" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 7a88e007a5 tests: check missing nick in IRC commands invite/join/kick/kill/mode/nick/part 2021-10-17 21:28:31 +02:00
Sébastien Helleu 257fe7362a tests: fix comments 2021-10-17 21:28:31 +02:00
Sébastien Helleu 52cc1165c4 irc: ensure the nick is not empty when the nick is required in a command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 0be96b7c66 irc: fix messages displayed when prefix/nick is missing 2021-10-17 21:28:31 +02:00
Sébastien Helleu 9d4119232f irc: remove check of address/host in command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu adcc04cc5a irc: fix extraction of address from prefix
Do not return the nick when the address is missing.
2021-10-17 21:28:31 +02:00
Sébastien Helleu e5996f626b irc: use parsed command parameters in "part" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu d8c7cf41b5 irc: use parsed command parameters in "notice" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5123483c33 tests: fix IRC protocol tests 2021-10-17 21:28:31 +02:00
Sébastien Helleu 33a3c485be irc: shorten error in case of missing parameters in command received 2021-10-17 21:28:31 +02:00
Sébastien Helleu 7b4d48c46d irc: fix number of required parameters in generic error command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 4ee82d1c70 irc: use parsed command parameters in "nick" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a1a4d627e1 irc: use parsed command parameters in "mode" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5a5c2cbd1a irc: rename macro IRC_PROTOCOL_CHECK_HOST to IRC_PROTOCOL_CHECK_PREFIX 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2bd3681eef irc: use parsed command parameters in "kill" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 604415e19e irc: use parsed command parameters in "kick" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu e653ee04d2 irc: use parsed command parameters in "join" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3c737ca304 irc: use parsed command parameters in "invite" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 1f83df7a18 irc: use parsed command parameters in "fail", "warn" and "note" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu eda8ad9de5 irc: use parsed command parameters in "generic_error" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu df6f32a7bb irc: use parsed command parameters in "error" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a2a733fc36 irc: use parsed command parameters in "chghost" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 56edeba7fc irc: use parsed command parameters in "cap" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 15392e4a81 irc: use parsed command parameters in "away" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu cb856a7f3a irc: use parsed command parameters in "authenticate" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 69c457287d irc: use parsed command parameters in "account" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5458382bb8 irc: fix typo in a comment 2021-10-17 21:28:31 +02:00
Sébastien Helleu 849105ebd6 irc: replace "message" by "command" in description of functions 2021-10-17 21:28:31 +02:00
Sébastien Helleu cbc4073815 irc: send parsed parameters to IRC command callbacks 2021-10-17 21:28:30 +02:00
Sébastien Helleu c4b4d80936 irc: parse and return command parameters in message parser 2021-10-17 21:28:30 +02:00
Sébastien Helleu f0898eae64 doc: update Serbian auto-generated file 2021-10-17 21:27:41 +02:00
Ivan Pešić 9378a7572b core: Update Serbian translation 2021-10-17 21:26:20 +02:00
Sébastien Helleu 3cd97b5131 tests: add missing include of string.h 2021-10-14 21:08:28 +02:00
Sébastien Helleu d8b8bf5a84 tests: check displayed message/error for all simulated IRC commands received 2021-10-14 21:00:47 +02:00
Sébastien Helleu 238c17bd0e irc: display command in lower case when there is a parsing error 2021-10-14 20:39:23 +02:00
Sébastien Helleu 1206e9e5c3 tests: fix typo in comment 2021-10-14 20:38:16 +02:00
Sébastien Helleu f3b4336bc4 irc: do not display message with "(null)" for 973/974/975 command received if pos_mode is NULL 2021-10-14 20:37:32 +02:00
Sébastien Helleu 55df7805c2 irc: display a single error message when parsing of a command failed 2021-10-13 18:45:36 +02:00
Sébastien Helleu 9102e4f552 irc: display a single error message when a command is not found 2021-10-13 18:45:14 +02:00
Sébastien Helleu 57ad90c3c0 irc: do not display message with "(null)" for numeric command received if pos_args is NULL 2021-10-13 18:42:47 +02:00
Sébastien Helleu ed9104fbea irc: fix parsing of CAP message when there is no prefix (closes #1707) 2021-10-09 11:27:51 +02:00
Sébastien Helleu 68a3aca643 plugins: use a different plugin priority for each scripting language 2021-10-02 20:50:35 +02:00
Sébastien Helleu 6fe354439c doc: update German auto-generated file 2021-10-02 20:41:09 +02:00
Nils Görs 63b93a8147 core: update German translations 2021-10-02 19:49:38 +02:00
Sébastien Helleu ad5fa7c99f core: add command /toggle 2021-10-01 22:55:38 +02:00
Sébastien Helleu 9548a4cf74 core: check that option is not NULL in function config_file_option_value_to_string 2021-09-27 23:23:01 +02:00
Sébastien Helleu 301f0942c6 core: fix search of option when the section is not given 2021-09-27 22:35:14 +02:00
Sébastien Helleu fb57ad147e core: check that option_name is not NULL in config file functions 2021-09-27 22:02:22 +02:00
Nils Görs 3ee2f40fb3 core: update German translations 2021-09-26 20:25:20 +02:00
Sébastien Helleu edd1971ae8 irc: fix parsing of TAGMSG message when there is a colon before the channel
This fixes the display of typing notifications on some IRC servers like
inspircd.
2021-09-21 20:41:18 +02:00
Sébastien Helleu a6826af796 core: add creation of user variables in evaluated expressions with ${define:name,value} 2021-09-20 21:15:28 +02:00
Jan Palus bd21b25bad typing: correct typo in CMake option description 2021-09-19 14:58:07 +02:00
Sébastien Helleu 48a4a043b7 Version 3.4-dev 2021-09-19 12:23:06 +02:00
Sébastien Helleu 3b9217e460 Version 3.3 2021-09-19 10:14:18 +02:00
Sébastien Helleu eaacd805ae php: add missing header files in autotools build 2021-09-19 09:54:01 +02:00
Sébastien Helleu e9d303c4fa debian: update changelog 2021-09-18 10:33:04 +02:00
Sébastien Helleu fb1bf569a9 debian: bump Standards-Version to 4.6.0.1 2021-09-18 10:32:39 +02:00
Sébastien Helleu e00937875d Version 3.3-rc1 2021-09-11 09:20:58 +02:00
a1346054 5dbf24d179 docs: trim excess whitespace 2021-09-11 00:17:36 +02:00
a1346054 9d7cac2396 build: fix shellcheck warnings 2021-09-11 00:17:36 +02:00
a1346054 04977fa9da legal: use license file from gnu.org
Downloaded from:
https://www.gnu.org/licenses/gpl-3.0.txt
2021-09-11 00:17:36 +02:00
Sébastien Helleu 4aa2b86ee2 doc: update German auto-generated file 2021-09-10 23:07:23 +02:00
Sébastien Helleu f3fc1f5f85 core: remove empty line displayed in output of /plugin list <name> 2021-09-10 23:06:05 +02:00
Nils Görs a7d3f9d4e8 core: update German translations 2021-09-10 09:59:14 +02:00
Sébastien Helleu 91d32be93c core: add options "-o", "-ol", "-i" and "-il" in command "/plugin list" 2021-09-09 21:32:58 +02:00
Sébastien Helleu a76eedcd1f core: replace deprecated cmake command "exec_program" by "execute_process"
This fixes a compilation issue on Debian Sid with the latest version of
debianutils (5.4-3), where the "which" command is now deprecated.
2021-09-08 20:46:44 +02:00
Sébastien Helleu 7742b48098 doc: update German auto-generated file 2021-09-07 21:40:01 +02:00
Nils Görs 4d0245711d core: update German translations 2021-09-07 09:42:30 +02:00
Sébastien Helleu 7d1b557627 core: fix indentation in examples of /help eval 2021-09-06 22:39:29 +02:00
Sébastien Helleu 5b3929b321 api: add split of string and shell arguments in evaluation of expressions
Split of string: ${split:number,separators,flags,xxx}
Split of shell arguments: ${split_shell:number,xxx}
2021-09-06 13:32:04 +02:00
Sébastien Helleu 8852e9fd0c core: add CVE id in ChangeLog 2021-09-05 20:54:14 +02:00
Sébastien Helleu d5b68e6b75 core: update ChangeLog (closes #1599) 2021-09-05 09:31:43 +02:00
Ivan Pešić 2446e5814f core: update Serbian translations 2021-09-04 22:01:41 +02:00
Sébastien Helleu 885b470d51 lua: add detection of Lua 5.4 2021-09-04 19:46:14 +02:00
Sébastien Helleu 97b809d164 core: add version 3.2.1 2021-09-04 16:28:04 +02:00
Sébastien Helleu 97bdd51112 relay: fix crash when decoding a malformed websocket frame 2021-09-04 15:55:37 +02:00
Nils Görs 75b9ba03a1 core: update German translations 2021-09-03 15:00:09 +02:00
Sébastien Helleu 5fb7ebdfce irc: fix send of empty JOIN when connecting to a server with only parted channels (closes #1638) 2021-09-03 13:43:07 +02:00
Sébastien Helleu 6fc6166cfe core: update translations 2021-08-31 22:39:17 +02:00
Sébastien Helleu 12be3b8c33 core: add options in command /input and new keys to remove/restore buffers 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-08-31 22:32:38 +02:00
Sébastien Helleu 5b5626a82b doc: fix typo in French plugin API reference 2021-08-30 13:54:28 +02:00
Sébastien Helleu 968d17b806 core: update ChangeLog (closes #1689) 2021-08-29 10:54:51 +02:00
Sébastien Helleu 2de272ee6c api: add "${re:repl_index}" to get the index of replacement in function string_eval_expression 2021-08-29 10:40:52 +02:00
Sébastien Helleu 009a2889e3 core: ensure python stub is up-to-date in CI 2021-08-16 22:59:32 +02:00
Sébastien Helleu 86e3c672bb doc: write python stub on standard output 2021-08-16 22:59:07 +02:00
Sébastien Helleu 254c1a3e8b doc: update German auto-generated file 2021-08-13 21:08:40 +02:00
Nils Görs fa3cd3dd08 core: update German translations 2021-08-13 09:14:50 +02:00
Sébastien Helleu 89b28e362c irc: add option "-parted" in command /allchan (closes #1685) 2021-08-12 18:15:16 +02:00
Sébastien Helleu cf27302dac core: add terminal and color info in output of /debug color 2021-08-11 18:49:22 +02:00
Sébastien Helleu da8b7a85bb doc: update German auto-generated file 2021-08-10 20:37:50 +02:00
Nils Görs 964d3e54d1 core: update German translations 2021-08-10 14:55:21 +02:00
Sébastien Helleu 960b633517 core: switch to PHP 8.0 in CI 2021-08-08 18:56:16 +02:00
Sébastien Helleu addd80e7b7 doc: update auto-generated files with hdata 2021-08-08 18:44:05 +02:00
Sébastien Helleu 8e676edd1a irc: save CLIENTTAGDENY from message 005 in server, do not send typing messages if "typing" client tag is denied 2021-08-08 18:37:15 +02:00
Sébastien Helleu 415ea95eb4 core: update ChangeLog (issue #1668) 2021-08-08 09:03:22 +02:00
Adam Saponara ede09a843c php: add ifdef for zend_file_handle.filename 2021-08-08 09:00:24 +02:00
Adam Saponara 5442612bc9 php: fix PHP 8+ build 2021-08-08 09:00:24 +02:00
Sébastien Helleu 2b12b4077a php: add detection of PHP 8.0, fix compilation errors 2021-08-08 09:00:24 +02:00
Sébastien Helleu 61c3169068 core: add contributor (issue #1656) 2021-08-07 11:20:08 +02:00
Sébastien Helleu 5b48eef4fe core: update ChangeLog (issue #1656) 2021-08-07 11:19:51 +02:00
Sébastien Helleu 9b75118b83 debian: add Spanish FAQ in Debian packaging 2021-08-07 11:15:28 +02:00
Sébastien Helleu def564c5af doc: add build of Spanish FAQ 2021-08-07 11:15:28 +02:00
Victorhck 57ea636fd6 doc: add Spanish version of the FAQ 2021-08-07 11:15:28 +02:00
Victorhck 84d8120060 doc: fix typo in FAQ 2021-08-07 10:56:56 +02:00
Sébastien Helleu 20866a0457 core: fix decoding of attributes in basic ANSI colors (closes #1678) 2021-08-06 20:33:31 +02:00
Sébastien Helleu 79d50837c9 irc: fix read out of bounds in case of malformed AUTHENTICATE message (issue #1679) 2021-08-03 20:01:15 +02:00
Sébastien Helleu 791b910a77 irc: fix SASL authentication when AUTHENTICATE message is received with a server name (closes #1679) 2021-08-03 19:58:13 +02:00
Sébastien Helleu d89c4f559c api: add random integer number in evaluation of expressions with "random:min,max" 2021-08-03 19:46:41 +02:00
Nils Görs 0be4020b68 core: update German translations 2021-08-03 18:30:47 +02:00
Sébastien Helleu 72a9b87c1c irc: display a different message for setname applied on self and other nicks (closes #1676) 2021-08-01 10:30:06 +02:00
Nils Görs 88d59de940 doc: update German documentation 2021-07-12 09:51:27 +02:00
Sébastien Helleu 6ff46776a4 doc: rename secured data name in IRC server example (user's guide) 2021-07-11 21:56:28 +02:00
Sébastien Helleu 77d96fec23 doc: fix columns width in user's guide 2021-07-10 20:08:36 +02:00
Sébastien Helleu 9404097756 doc: add chapters on IRC servers, channels, private messages (user's guide) 2021-07-10 18:35:57 +02:00
Sébastien Helleu a16616637a irc: remove unneeded message about Diffie-Hellman shared secret exchange during SSL connection to server (closes #857) 2021-07-10 16:02:19 +02:00
Sébastien Helleu 2b1582c816 core: add lint with bandit in CI 2021-07-09 23:56:24 +02:00
Sébastien Helleu efea27bb24 relay: remove dead assignment 2021-07-08 23:02:50 +02:00
Sébastien Helleu 6052c1a5c0 doc: update German auto-generated file 2021-07-04 20:50:41 +02:00
Sébastien Helleu 3199877bc0 core: add bar item "typing" in status bar by default 2021-07-04 20:49:58 +02:00
Sébastien Helleu b0d4b9aaba typing: remove trailing space in translated message 2021-07-04 19:42:30 +02:00
Nils Görs 6a1425d5ba core: update German translations 2021-07-04 19:18:35 +02:00
Sébastien Helleu 64b52da406 typing: add option typing.look.input_min_chars 2021-07-04 14:02:15 +02:00
Sébastien Helleu 5ae4af1549 core: update ChangeLog 2021-07-04 13:37:52 +02:00
Sébastien Helleu f79929b382 core: update translations 2021-07-04 13:36:32 +02:00
Sébastien Helleu a4507539fb typing: add option typing.look.item_max_length 2021-07-04 13:27:33 +02:00
Sébastien Helleu 5b87e0c544 api: add function string_cut 2021-07-04 13:27:33 +02:00
Sébastien Helleu 1746e832ec typing: remove hashtables when typing is turned off 2021-07-04 13:27:33 +02:00
Sébastien Helleu ed24930547 typing: add note for translators 2021-07-04 13:27:33 +02:00
Sébastien Helleu 7c83ee02f2 tests: add tests on typing plugin functions 2021-07-04 13:27:33 +02:00
Sébastien Helleu 8dc75564c2 doc: add typing plugin files in developer's guide 2021-07-04 13:27:33 +02:00
Sébastien Helleu 5b7f55090b build: add typing plugin in Cygwin packaging 2021-07-04 13:27:33 +02:00
Sébastien Helleu de61048cd2 debian: add typing plugin in Debian packaging 2021-07-04 13:27:33 +02:00
Sébastien Helleu 252d1bbc9d doc: add file typing.conf in man page 2021-07-04 13:27:33 +02:00
Sébastien Helleu 0355f3fc1a doc: add chapter on typing extension in user's guide 2021-07-04 13:27:33 +02:00
Sébastien Helleu 09d871deb4 doc: add column for min WeeChat version in function buffer_set (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu 503a3cb755 doc: add column for min WeeChat version in function hook_set (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu c127d1693a doc: add column for min WeeChat version in function hook_modifier_exec (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu 134f4374f8 doc: add column for min WeeChat version in function hook_modifier (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu ab916d3d90 doc: add column for min WeeChat version in function hook_hsignal (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu 3d54365d67 doc: add column for min WeeChat version in function hook_process_hashtable (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu 3c920f9a80 doc: add typing signals in plugin API reference 2021-07-04 13:27:33 +02:00
Sébastien Helleu 954f943e8e irc, typing: display typing status for IRC nicks 2021-07-04 13:27:33 +02:00
Sébastien Helleu bba300e191 typing: translate strings in typing plugin sources 2021-07-04 13:27:33 +02:00
Sébastien Helleu 7954dbc1f4 typing: replace linked list with a hashtable to store typing status on buffers 2021-07-04 13:27:33 +02:00
Sébastien Helleu b108e97085 irc: send typing status as TAGMSG to other users 2021-07-04 13:27:33 +02:00
Sébastien Helleu dccf605e66 typing: add typing plugin 2021-07-04 13:27:32 +02:00
Sébastien Helleu b585ec09f8 core: fix number of bytes read in function dir_file_copy 2021-07-03 16:50:30 +02:00
Sébastien Helleu 5253478279 script: fix move of installed script on another filesystem (closes #1667) 2021-07-03 16:06:02 +02:00
Sébastien Helleu 8a11a18dc5 api: add function file_copy (issue #1667) 2021-07-03 16:04:50 +02:00
Sébastien Helleu 9432b44a2b irc: remove dead assignments in SASL functions 2021-07-02 21:58:50 +02:00
Sébastien Helleu 1ac800906b doc: update Polish auto-generated files 2021-06-29 00:17:18 +02:00
Krzysztof Korościk 5d4adf8010 doc: updated polish translation 2021-06-28 21:43:37 +02:00
Krzysztof Korościk 689a2c1705 po: updated polish translation 2021-06-28 21:12:17 +02:00
Sébastien Helleu 9bd737ae1a doc: update German auto-generated file 2021-06-28 20:35:06 +02:00
Nils Görs f1761b66c6 core: update German translations 2021-06-28 08:58:28 +02:00
Sébastien Helleu 2205bb6b45 core: add capability message-tags in release notes 2021-06-27 10:41:24 +02:00
Sébastien Helleu e84a3676f6 core: add note about buffers that are not opened in /help layout 2021-06-27 10:35:04 +02:00
Sébastien Helleu 253598d83c doc: mention WeeChat version for WEECHAT_RC_OK_EAT in signals "irc_raw_in" and "irc_in" (plugin API reference) (issue #1657) 2021-06-27 09:56:45 +02:00
Sébastien Helleu ff6bc95429 doc: remove tag "translation missing" in French user's guide (issue #1642) 2021-06-27 09:53:47 +02:00
Sébastien Helleu 61a6b0c705 core: add contributor (issue #1657) 2021-06-27 09:49:36 +02:00
Simon Ser ff8beb1918 irc: allow signals "irc_raw_in" and "irc_in" to eat messages (issue #1657)
This is useful to implement IRC protocol extensions which introduce
new commands.
2021-06-27 09:48:16 +02:00
Ivan Pešić 59853d9b30 doc: update Serbian translations 2021-06-27 09:26:50 +02:00
Sébastien Helleu a48a615613 api: remember insertion order in hashtables 2021-06-26 21:37:02 +02:00
Sébastien Helleu 5a59482cc8 doc: update German auto-generated file 2021-06-25 13:35:16 +02:00
Nils Görs 2478a4187a core: update German translations 2021-06-25 13:27:20 +02:00
Sébastien Helleu 0fb88527ce irc: implement IRCv3.2 SASL authentication, add command /auth (closes #413) 2021-06-25 11:15:22 +02:00
Sébastien Helleu 7a0020f067 irc: fix comment on TAGMSG callback function (issue #1654) 2021-06-25 10:41:27 +02:00
Sébastien Helleu f662ca9398 doc: update German auto-generated files 2021-06-25 10:37:32 +02:00
Nils Görs 8f19798834 core: update German translations 2021-06-25 09:30:14 +02:00
Sébastien Helleu 22a7e18842 irc: add support of capability "message-tags" (closes #1654) 2021-06-24 21:04:52 +02:00
Sébastien Helleu 51123b755d core: add missing source files for gettext 2021-06-24 21:02:13 +02:00
Sébastien Helleu b1cf12700d irc: add keys/values with tags in output of irc_message_parse_to_hashtable (issue #1654)
Key is "tag_xxx" (where "xxx" is the name of tag) and value is the unescaped
tag value.
2021-06-24 21:02:03 +02:00
Sébastien Helleu 8ea1ee06e5 irc: add support of TAGMSG messages (issue #1654) 2021-06-24 21:01:22 +02:00
Sébastien Helleu 23c46c3f2b irc: escape/unescape IRC message tags values (issue #1654)
Spec: https://ircv3.net/specs/extensions/message-tags#escaping-values
2021-06-24 20:59:21 +02:00
Sébastien Helleu b3b4ef648b core: fix use of uninitialized hash when call to weecrypto_hmac fails 2021-06-23 20:46:53 +02:00
Sébastien Helleu 60b9e36ae2 core: fix function string_match with joker in the string if multiple words matched in input string
Before fix:

  string_match("script.color.text_description", "*script*color*", 0) => 0

After fix:

  string_match("script.color.text_description", "*script*color*", 0) => 1
2021-06-22 21:54:16 +02:00
Sébastien Helleu 3d3cdf3884 tests: fix modifier name in comment 2021-06-21 19:58:53 +02:00
Sébastien Helleu e04cc87f60 irc: set notify level to "private" for received WALLOPS 2021-06-21 19:57:54 +02:00
Sébastien Helleu f2d1acb899 core: fix chapter name in release notes 2021-06-20 08:53:45 +02:00
Sébastien Helleu 1fb2fcbbd4 doc: update German auto-generated file 2021-06-19 18:46:45 +02:00
Nils Görs 296f795ff3 core: update German translations 2021-06-19 18:43:06 +02:00
Sébastien Helleu ef318cb70c irc: enable all capabilities by default (supported by both server and WeeChat) (closes #320)
Capabilities can be excluded with the format: "*,!account-*,!extended-join".
2021-06-19 18:22:49 +02:00
Sébastien Helleu 947f73bd50 irc: add option irc.look.display_account_message (issue #320) 2021-06-19 18:14:38 +02:00
Sébastien Helleu 5a89825669 irc: add option irc.look.display_extended_join (issue #320) 2021-06-19 18:12:22 +02:00
Sébastien Helleu eb2a42c99e doc: update German auto-generated file 2021-06-19 18:10:15 +02:00
Nils Görs 60d4489b5e core: update German translations 2021-06-18 08:36:21 +02:00
Sébastien Helleu 2225ac4e56 core: add option "certs" in command /debug 2021-06-17 21:51:18 +02:00
Sébastien Helleu fa785e8668 doc: update German auto-generated files 2021-06-17 21:48:39 +02:00
Sébastien Helleu 0ceccb9798 tests: fix tests on signal_search_number 2021-06-16 12:34:30 +02:00
Sébastien Helleu 0b7e4977be core: fix build on macOS (closes #1662) 2021-06-16 12:34:14 +02:00
Sébastien Helleu bfa0b4376c core: add build on macOS in CI 2021-06-16 12:32:06 +02:00
Nils Görs 70c1a002e3 doc: update German documentation 2021-06-16 10:50:21 +02:00
Nils Görs e4b6db5de2 core: update German translations 2021-06-16 10:42:27 +02:00
Sébastien Helleu e8cdda318f irc: drop support of DH-BLOWFISH and DH-AES SASL mechanisms (closes #175) 2021-06-15 21:49:45 +02:00
Sébastien Helleu 51740eb21e doc: keep previous msgids of translated messages in .po files 2021-06-15 20:34:25 +02:00
Sébastien Helleu 936e2fddaf core: update ChangeLog 2021-06-15 18:56:46 +02:00
Sébastien Helleu 70b66c4f6b irc: add command /setname, add support of message and capability "setname" (closes #1653) 2021-06-15 18:56:41 +02:00
Sébastien Helleu 0525922ee4 irc: always set realname in nicks even when extended-join capability is not enabled (issue #1653) 2021-06-15 18:50:22 +02:00
Sébastien Helleu b8baee1c06 irc: add support of FAIL/WARN/NOTE messages (issue #1653)
Spec: https://ircv3.net/specs/extensions/standard-replies
2021-06-15 18:49:49 +02:00
Sébastien Helleu 88edc19149 doc: update user's guide translations (issue #1642) 2021-06-14 21:39:27 +02:00
Giuseppe Bilotta f6a4841dab doc: ref the layout, buffer and window sections and commands
Add some references between the Screen layout and Buffers and windows
sections, linking also to the appropriate commands.

This should make it easier to discover the `/layout` command and its
relevance to the windows and buffer management.

(Small contribution to GitHub issue #1641)
2021-06-14 21:38:45 +02:00
Sébastien Helleu 19e41eb28a core: add contributor (issue #1655) 2021-06-13 16:30:24 +02:00
eevan78 31b22fec09 doc: add Serbian translations 2021-06-13 16:28:33 +02:00
Krzysztof Korościk 1624b0ba97 doc: updated polish translation 2021-06-13 14:59:07 +02:00
Krzysztof Korościk 9fe937a7fd po: updated polish translation 2021-06-13 14:41:02 +02:00
Sébastien Helleu f6d1991833 Version 3.3-dev 2021-06-13 09:51:42 +02:00
Sébastien Helleu 70c09f1f5a Version 3.2 2021-06-13 09:28:25 +02:00
Sébastien Helleu 1adf6927e5 irc: fix translation of SASL errors 2021-06-13 09:16:09 +02:00
Sébastien Helleu de6575dd32 doc: update Polish auto-generated files 2021-06-10 21:28:15 +02:00
Krzysztof Korościk 4b3785ad1e po: updated polish translation 2021-06-10 00:18:03 +02:00
Sébastien Helleu 2a71d79b37 doc: update German auto-generated file 2021-06-07 07:13:54 +02:00
Nils Görs 5775e9cd10 core: update German translations 2021-06-05 23:09:34 +02:00
Sébastien Helleu 7dd3b0016c Version 3.2-rc1 2021-06-04 21:30:54 +02:00
Sébastien Helleu f8872c415b doc: add IRC SASL SCRAM mechanisms in user's guide (issue #1628) 2021-06-01 21:29:55 +02:00
Sébastien Helleu 8c57e8abd3 irc: add comments about parameter sasl_error (issue #1628) 2021-06-01 21:17:13 +02:00
Sébastien Helleu e365e66eeb irc: add support of SASL mechanisms SCRAM-SHA-1, SCRAM-SHA-256 and SCRAM-SHA-512 (closes #1628) 2021-06-01 20:45:11 +02:00
Sébastien Helleu 5cffb7179f api: add function crypto_hmac (issue #1628) 2021-06-01 20:39:04 +02:00
Sébastien Helleu 6ac6cf7293 tests: add test of base64 encode/decode with NUL char in string 2021-06-01 20:39:04 +02:00
Sébastien Helleu 576406888c doc: update German auto-generated files 2021-06-01 20:39:04 +02:00
Nils Görs ae60c3ec66 core: update German translations 2021-05-30 19:06:05 +02:00
Sébastien Helleu 466fed4f5b irc: add ${target} in help of server msg_kick option 2021-05-30 15:22:30 +02:00
Sébastien Helleu b21589944e core, irc, script: fix typos 2021-05-29 14:33:13 +02:00
Sébastien Helleu 4a41625989 irc: add variable "${target}" (target nick) in commands /kick and /kickban 2021-05-29 14:26:30 +02:00
Nils Görs a9b976274e doc: update German documentation 2021-05-28 13:46:02 +02:00
Sébastien Helleu 1181ab454e doc: use secured data in relay examples (user's guide) 2021-05-28 13:37:31 +02:00
Nils Görs c676148a63 core: update German translations 2021-05-28 09:30:29 +02:00
Victorhck f3428d48f3 doc: update Spanish quickstart guide 2021-05-27 20:59:53 +02:00
Sébastien Helleu 557dd8f4a5 core: update translations (issue #1647) 2021-05-27 18:28:52 +02:00
Filip H.F. "FiXato" Slagter d4f3bc596d clarify (max) bar size to be in chars/lines
(max) bar size was described to be in chars, though this only applies to the left/right bars. This change clarifies that top/bottom bars would have their size defined in lines.
2021-05-27 18:14:18 +02:00
Filip H.F. "FiXato" Slagter ddc5d56a65 Typo fix
Zomming -> Zooming
2021-05-26 19:53:11 +02:00
Sébastien Helleu b94907c249 doc: replace freenode-tor by a generic TOR example in user's guide 2021-05-26 10:07:59 +02:00
Sébastien Helleu dfdd5b1c50 core: add signals "cursor_start" and "cursor_end" 2021-05-26 08:53:31 +02:00
Sébastien Helleu 7cc61cdbb3 core: replace freenode by libera in command examples 2021-05-25 18:44:10 +02:00
Sébastien Helleu e5f58b77c1 core, buflist, irc, relay: replace freenode by libera in comments 2021-05-25 13:39:55 +02:00
Sébastien Helleu 18c82fc5c7 tests: replace freenode by libera in tests 2021-05-25 13:38:12 +02:00
Sébastien Helleu f55dcde4ff doc: replace freenode by libera in release notes 2021-05-25 13:37:43 +02:00
Sébastien Helleu a25f0f1928 doc: replace freenode by libera in contributing guide 2021-05-25 13:37:24 +02:00
Sébastien Helleu c20d3778d6 doc: replace freenode by libera in man page 2021-05-25 07:59:21 +02:00
Sébastien Helleu 1a7e49ac3f doc: replace freenode by libera in user's guide 2021-05-25 07:56:07 +02:00
Sébastien Helleu 8bd0df9b70 doc: replace freenode by libera in tester's guide 2021-05-25 07:34:01 +02:00
Sébastien Helleu afaff533c8 doc: replace freenode by libera in scripting guide 2021-05-25 07:27:13 +02:00
Sébastien Helleu 08ab8bef83 doc: replace freenode by libera in replay protocol 2021-05-25 07:22:32 +02:00
Sébastien Helleu 14c5e656f2 doc: replace freenode by libera in plugin API reference 2021-05-25 07:13:44 +02:00
Sébastien Helleu dc46bbf63d doc: replace freenode by libera in FAQ 2021-05-25 07:07:12 +02:00
Sébastien Helleu 0577fd1c99 doc: replace freenode by libera in quickstart guide 2021-05-25 07:02:55 +02:00
Krzysztof Korościk 6915f4e4c0 doc: updated polish translation 2021-05-24 22:52:51 +02:00
Sébastien Helleu f7dd2dbd55 doc: update Polish auto-generated files 2021-05-24 13:00:09 +02:00
Krzysztof Korościk d436ab6b0d po: updated polish translation 2021-05-23 18:25:01 +02:00
Sébastien Helleu 0886b38725 doc: update German auto-generated file 2021-05-23 08:15:33 +02:00
Nils Görs e3f4c4811f core: update German translations 2021-05-22 23:42:16 +02:00
Sébastien Helleu 35b35f6923 core: fix typo 2021-05-22 09:47:30 +02:00
Sébastien Helleu f8419c6aa6 doc: update auto-generated files 2021-05-22 09:17:36 +02:00
Sébastien Helleu 9ac3f887a5 core: add split of commands before evaluation in release notes (issue #1643) 2021-05-22 09:16:32 +02:00
Sébastien Helleu 15b001b011 core: update translations (issue #1643) 2021-05-22 08:58:36 +02:00
Sébastien Helleu d949ebb088 core: split signal command before evaluating it (issue #1643) 2021-05-22 08:52:46 +02:00
Sébastien Helleu b74af1d2da core: split startup command before evaluating it (issue #1643) 2021-05-22 08:51:38 +02:00
Sébastien Helleu e350437c81 irc: split server command before evaluating it (issue #1643) 2021-05-22 08:48:24 +02:00
Sébastien Helleu 4065972000 core: fix tests when NLS is disabled 2021-05-21 13:51:47 +02:00
Giuseppe Bilotta 916f57f31d core: fix build error if ENABLE_NLS is OFF
wee-eval.c calls gettext directly, but gettext is not a function if
ENABLE_NLS is off. Fix by defining a gettext macro (that expands to its
first argument) if NLS support is disabled.
2021-05-21 13:22:05 +02:00
Sébastien Helleu badd231b82 core: add build without NLS in CI 2021-05-21 13:19:16 +02:00
Sébastien Helleu 2f2cf55f74 doc: format script with black 2021-05-20 20:07:36 +02:00
Nils Görs 5d4ee9e471 core: update German translations 2021-05-20 14:19:01 +02:00
Sébastien Helleu d09fe80fd1 core: merge two entries into one about GnuTLS options 2021-05-18 21:34:24 +02:00
Sébastien Helleu 447abad79e core: display old default values for options affected by XDG directories in release notes 2021-05-18 21:30:34 +02:00
Sébastien Helleu b43958ac92 irc: use constant GNUTLS_TLS1_3 only with GnuTLS >= 3.6.3
This constant was introduced in GnuTLS 3.6.3.

This fixes a build error on these old distributions:

- Debian Stretch
- Debian Jessie
- Ubuntu Bionic
- Ubuntu Xenial
2021-05-17 12:59:41 +02:00
Sébastien Helleu a071ee5012 tests: remove dependency on French locale in eval tests 2021-05-16 20:17:07 +02:00
Sébastien Helleu cf7ac76de9 tests: add missing include of locale.h in eval tests 2021-05-16 19:09:18 +02:00
Sébastien Helleu 215f12d859 tests: remove commented includes 2021-05-16 19:08:35 +02:00
Nils Görs 59d1811987 core: update German translations 2021-05-16 16:29:54 +02:00
Sébastien Helleu 89e43eaf40 core: set server name when connecting to server with TLS (SNI extension) only if it's not an IPV4/IPv6 (closes #1635) 2021-05-16 14:52:11 +02:00
Sébastien Helleu e03642e9df tests: add tests on translation in evaluated expressions 2021-05-16 14:09:07 +02:00
Sébastien Helleu 58c66474ce core: add contributor (issue #1609) 2021-05-16 13:50:19 +02:00
Emir Sarı 431b799b01 core: update Turkish translations (issue #1609) 2021-05-16 13:39:44 +02:00
Sébastien Helleu 4c25151f31 core: move build option CA_FILE in build section 2021-05-16 10:11:23 +02:00
Sébastien Helleu dd916d5e52 doc: update auto-generated files 2021-05-16 10:08:04 +02:00
Sébastien Helleu d18680e442 core: update ChangeLog (issue #1622) 2021-05-16 10:01:17 +02:00
Sébastien Helleu 92410e9949 irc: sort config options alphabetically (issue #1622) 2021-05-16 10:01:14 +02:00
Sébastien Helleu e6a3d08704 buflist, irc, xfer: do not translate "cleartext" in buffer local variable "tls_version" (issue #1622)
The text "cleartext" is translated for display only: directly with gettext in
IRC plugin and with "${translate:${tls_version}}" in the buflist evaluated
format.
2021-05-16 10:01:07 +02:00
Sébastien Helleu 5bce484c01 api: add translated string in evaluation of expressions with "translate:xxx" (issue #1622) 2021-05-16 10:01:03 +02:00
Sébastien Helleu 7e10038f4b core: update translations (issue #1622) 2021-05-16 10:00:57 +02:00
Andrew Potter 94c902adfc irc, buflist: add bar item "tls_version" with options for colors, add buflist format "${format_tls_version}" (issue #1622) 2021-05-16 10:00:30 +02:00
Nils Görs 670c5cd745 core: update German translations 2021-05-15 23:45:36 +02:00
Sébastien Helleu a7db77e253 core: remove obsolete translations 2021-05-15 16:53:14 +02:00
Sébastien Helleu 3102eccda2 core: fix French translation of /help fifo 2021-05-15 16:52:43 +02:00
Sébastien Helleu b714d3dc91 core: fix punctuation in German translation 2021-05-15 14:40:01 +02:00
Nils Görs 0d8aeee738 core: update German translations 2021-05-15 13:58:01 +02:00
Sébastien Helleu 9d96d5d450 doc: add missing names for anchors in scripting guide 2021-05-14 19:19:49 +02:00
Sébastien Helleu 168dbaf020 doc: add link to Python stub in scripting guide (issue #1377) 2021-05-14 19:19:45 +02:00
Sébastien Helleu 13cb870b9a core: add generator and Python stub file for WeeChat API (issue #1377) 2021-05-14 19:19:45 +02:00
Sébastien Helleu a5903e8020 doc: add type annotations in Python prototype (scripting guide) (issue #1377) 2021-05-13 20:24:59 +02:00
Sébastien Helleu fafe2c9d2e doc: add type annotations in Python prototypes (plugin API reference) (issue #1377) 2021-05-13 20:24:59 +02:00
Sébastien Helleu 3e122ed900 doc: add types of constants in scripting guide (issue #1377) 2021-05-13 15:47:21 +02:00
Sébastien Helleu 33767b22f3 doc: fix translations in Italian and Japanese plugin API reference 2021-05-13 09:57:50 +02:00
Sébastien Helleu 11b311ce2f core: add GnuTLS CA changes in release notes 2021-05-12 21:00:21 +02:00
Sébastien Helleu bbdeb51bc1 doc: add missing French translations in user's guide 2021-05-12 20:44:07 +02:00
Sébastien Helleu c588ee21bc core: improve options to load GnuTLS system/user CAs (closes #972)
Changes:

* new option: weechat.network.gnutls_ca_system
* option weechat.network.gnutls_ca_file renamed to
  weechat.network.gnutls_ca_user
* reload certificates when options are changed
* remove build option CA_FILE
2021-05-12 20:39:40 +02:00
Sébastien Helleu b7112e4090 core: add slack.py version in release notes 2021-05-11 22:41:13 +02:00
Sébastien Helleu be575e5400 core: update translations (issue #1285) 2021-05-11 21:39:46 +02:00
Sébastien Helleu 7f8f5f94e3 core: update ChangeLog (issue #1285) 2021-05-11 21:07:43 +02:00
Sébastien Helleu 6e528a1d62 core: add XDG directories in release notes (issue #1285) 2021-05-11 21:07:41 +02:00
Sébastien Helleu a9e210121b fifo: add PID in default FIFO pipe filename (issue #1285)
This is to prevent two WeeChat using the same runtime directory to use the same
FIFO pipe.
2021-05-11 21:07:39 +02:00
Sébastien Helleu 6925ea3ccb doc: add missing names for anchors in user's guide (issue #1285) 2021-05-11 21:07:36 +02:00
Sébastien Helleu 70cdf21681 doc: add XDG directories support in docs (issue #1285) 2021-05-11 21:07:30 +02:00
Sébastien Helleu 87d4ea9286 doc: remove tag "translation missing" in French user's guide (issue #1285) 2021-05-11 21:07:28 +02:00
Sébastien Helleu d9f5bce6ee doc: add file wee-dir.c in developer's guide (issue #1285) 2021-05-11 21:07:26 +02:00
Sébastien Helleu f71b4f78fd doc: add link to CMake option in environment variable WEECHAT_HOME (user's guide) (issue #1285) 2021-05-11 21:07:24 +02:00
Sébastien Helleu a3f8647a72 doc: change default value of WEECHAT_HOME CMake option to empty string (user's guide) (issue #1285) 2021-05-11 21:07:21 +02:00
Sébastien Helleu 664fb12db7 doc: remove wrong default value of option weechat.network.gnutls_ca_file (user's guide) (issue #1285) 2021-05-11 21:07:19 +02:00
Sébastien Helleu cb4c3b0226 doc: use XDG config directory in Relay SSL chapter (user's guide) (issue #1285) 2021-05-11 21:07:17 +02:00
Sébastien Helleu 7d75d82f6a doc: use XDG config directory in chapter on IRC server certificate (user's guide) (issue #1285) 2021-05-11 21:07:15 +02:00
Sébastien Helleu 49844a71f0 doc: use XDG config directory in SASL ECDSA-NIST256P-CHALLENGE chapter (user's guide) (issue #1285) 2021-05-11 21:07:11 +02:00
Sébastien Helleu 5210d501d4 doc: replace "%h" by "${weechat_config_dir}" in examples of values for IRC server option "ssl_cert" (user's guide) (issue #1285) 2021-05-11 21:07:09 +02:00
Sébastien Helleu 3833b965e4 doc: replace "%h" by "${weechat_config_dir}" in examples of values for IRC server option "sasl_key" (user's guide) (issue #1285) 2021-05-11 21:07:07 +02:00
Sébastien Helleu 703106a31f core: mention evaluation with string_eval_path_home for CMake/autotools option CA_FILE (issue #1285) 2021-05-11 21:07:04 +02:00
Sébastien Helleu 43ba8d3b73 xfer: remove "%h" from /help xfer.file.upload_path (issue #1285) 2021-05-11 21:07:02 +02:00
Sébastien Helleu 6170f97cd6 xfer: change default value of option xfer.file.download_path to "${weechat_data_dir}/xfer" (issue #1285) 2021-05-11 21:07:00 +02:00
Sébastien Helleu 19bf10647c script: change default value of option script.scripts.path to "${weechat_cache_dir}/script" (issue #1285) 2021-05-11 21:06:58 +02:00
Sébastien Helleu 4459119409 relay: change default value of option relay.network.ssl_cert_key to "${weechat_config_dir}/ssl/relay.pem" (issue #1285) 2021-05-11 21:06:56 +02:00
Sébastien Helleu 047a668275 relay: remove "%h" from help on UNIX socket path option (issue #1285) 2021-05-11 21:06:54 +02:00
Sébastien Helleu 36847bd305 relay: remove "%h" from /help relay (issue #1285) 2021-05-11 21:06:51 +02:00
Sébastien Helleu 005ef8a4a9 logger: change default value of option logger.file.path to "${weechat_data_dir}/logs" (issue #1285) 2021-05-11 21:06:49 +02:00
Sébastien Helleu 7e79145d46 fifo: change default value of option fifo.file.path to "${weechat_runtime_dir}/weechat_fifo" (issue #1285) 2021-05-11 21:06:46 +02:00
Sébastien Helleu d2c5bba356 core: change default value of option weechat.plugin.path to "${weechat_data_dir}/plugins" (issue #1285) 2021-05-11 21:06:42 +02:00
Sébastien Helleu 0f9640a5f3 core: split WeeChat home in 4 directories, use XDG directories by default (issue #1285)
The 4 directories (which can be the same):

- config: configuration files, certificates
- data: log/upgrade files, local plugins, scripts, xfer files
- cache: script repository, scripts downloaded (temporary location)
- runtime: FIFO pipe, relay UNIX sockets
2021-05-11 21:06:34 +02:00
Sébastien Helleu 4c5fcb743b core: move home directory functions from weechat.c to wee-dir.c (issue #1285) 2021-05-11 21:06:32 +02:00
Sébastien Helleu 269576eea2 core: move directory/file functions from wee-util.c to wee-dir.c (issue #1285) 2021-05-11 21:06:29 +02:00
Sébastien Helleu 9eecad496d logger: remove unused variable weechat_dir (issue #1285) 2021-05-11 21:06:27 +02:00
Sébastien Helleu 5361722699 core: set WeeChat home to empty string by default in CMake and autotools (issue #1285) 2021-05-11 21:06:24 +02:00
Sébastien Helleu e07221d7c5 relay: evaluate option relay.network.ssl_cert_key (issue #1285) 2021-05-11 21:06:22 +02:00
Sébastien Helleu 39b629550b irc: evaluate options irc.server_default.ssl_cert and irc.server.xxx.ssl_cert (issue #1285) 2021-05-11 21:06:19 +02:00
Sébastien Helleu d7d594873b irc: evaluate options irc.server_default.sasl_key and irc.server.xxx.sasl_key (issue #1285) 2021-05-11 21:06:17 +02:00
Sébastien Helleu f923524a21 core: evaluate option weechat.plugin.path (issue #1285) 2021-05-11 21:06:13 +02:00
Sébastien Helleu e5d18e1221 core: evaluate option weechat.network.gnutls_ca_file (issue #1285) 2021-05-11 21:05:42 +02:00
Sébastien Helleu 9e7d052517 core: update ChangeLog (issue #1636) 2021-05-08 07:33:17 +02:00
Sébastien Helleu f3f3c54372 core: add detection of function mallinfo2 in autotools (issue #1636) 2021-05-08 07:33:12 +02:00
Andrew Potter b222e75019 core: Use mallinfo2() when available
mallinfo() is deprecated in glibc 2.33
2021-05-08 07:25:44 +02:00
Sébastien Helleu aa7860c942 doc: update German auto-generated file 2021-05-05 13:59:04 +02:00
Sébastien Helleu ed560a785a doc: fix list of supported OS in FAQ 2021-05-05 13:57:11 +02:00
Sébastien Helleu e95fdc3a0a core: display a warning when the file with certificate authorities is not found (option weechat.network.gnutls_ca_file) 2021-05-04 20:37:15 +02:00
Sébastien Helleu 9f0e7fb47e xfer: make file transfer fail when option xfer.file.auto_rename is off and file already exists (closes #1633) 2021-04-26 20:51:17 +02:00
Nils Görs bcd889cf90 doc: update German documentation 2021-04-21 07:53:47 +02:00
Sébastien Helleu 65ea67204c doc: translate changes in chapter on bar conditions (user's guide) 2021-04-18 12:08:11 +02:00
Tobias Rehbein 2c674a54d4 doc: Update weechat.bar.*.condition to use info:term_width
In cf93e953b the `weechat.bar.*.condition` examples have been changed to use
`${info:term_width}` instead of `${window.win_width}`. The user guide still
shows the old example. This commit syncs the user guide with the on-line help.
2021-04-18 12:00:29 +02:00
Nils Görs 2fbedfec1a doc: update German documentation 2021-04-18 09:58:09 +02:00
Sébastien Helleu 1181ac069e doc: add link to Archlinux wiki page about core dump files (user's guide) 2021-04-17 14:21:50 +02:00
Nils Görs 950c2bb898 core: update German translations 2021-04-13 11:44:40 +02:00
Sébastien Helleu 6b62456119 Revert "core: add option "-save" in command /upgrade (closes #1630)"
This reverts commit 1df1903d23.

This is not so easy to implement: it requires saving state of plugins, and
plugins like irc can not save the connected state (except in a real upgrade
case where the sockets are still valid after exec of the new binary).
2021-04-13 00:11:11 +02:00
Sébastien Helleu 1df1903d23 core: add option "-save" in command /upgrade (closes #1630) 2021-04-12 20:48:32 +02:00
Sébastien Helleu ae39b7ce61 tests: fix if/else blocks in trigger tests 2021-04-11 10:42:24 +02:00
Sébastien Helleu 044bcd0751 doc: improve display of WeeChat version in info_hashtable "irc_message_parse" (scripting guide) 2021-04-11 09:47:13 +02:00
Sébastien Helleu 5d30e0faac doc: mark info "python2_bin" as deprecated since version 2.6 (plugin API reference) 2021-04-11 09:31:49 +02:00
Sébastien Helleu e58c827c91 trigger: add tests on main trigger functions 2021-04-11 09:20:49 +02:00
Sébastien Helleu 1f0636bab6 irc: remove unused variable ptr_address and dead code 2021-04-10 14:11:11 +02:00
Sébastien Helleu 7bd23700de irc: remove dead assignment on variable pos_message 2021-04-10 13:26:46 +02:00
Sébastien Helleu 937ecb62c4 trigger: remove useless test 2021-04-10 12:21:16 +02:00
Sébastien Helleu 2e67b13edd trigger: check that option is not NULL in function trigger_search_with_option 2021-04-09 21:36:12 +02:00
Sébastien Helleu 7c5cbefd51 trigger: fix description of function trigger_name_valid 2021-04-08 20:56:37 +02:00
Sébastien Helleu b6b78df3d2 trigger: check that trigger is not NULL in functions trigger_rename and trigger_copy 2021-04-08 20:55:37 +02:00
Nils Görs 4da5647e9f doc: update German documentation 2021-04-07 12:38:35 +02:00
Sébastien Helleu fae9bdf8f8 trigger: add variables "${tg_shell_argc}" and "${tg_shell_argvN}" in command trigger evaluated strings (closes #1624) 2021-04-06 18:37:22 +02:00
Sébastien Helleu 3bf585ba04 core: evaluate left/right part of comparison after split on the comparison operator in ${if:xxx} (closes #1627)
To force evaluation of the expression before doing the comparison (less safe),
the "${eval_cond:xxx}" can be used.

With the old behavior we had:

    >> ${if:a==b}
    == [0]
    >> ${if:${raw:a==b}}
    == [0]
    >> ${if:${eval_cond:${raw:a==b}}}
    == [0]

And with the new behavior, we have:

    >> ${if:a==b}
    == [0]
    >> ${if:${raw:a==b}}
    == [1]
    >> ${if:${eval_cond:${raw:a==b}}}
    == [0]
2021-04-04 14:44:18 +02:00
Sébastien Helleu 1aefb0a546 doc: update German auto-generated file 2021-03-29 22:32:56 +02:00
Nils Görs efd5a8bd14 core: update German translations 2021-03-29 09:22:07 +02:00
Sébastien Helleu 4f606ceb64 buflist: improve help on option buflist.look.sort 2021-03-21 09:34:40 +01:00
Sébastien Helleu 027966e5e9 core: update ChangeLog (issue #1621) 2021-03-21 09:01:08 +01:00
Trygve Aaberge 6b23d855d8 buflist: Fix wrong pointers being used in hdata_compare
This used pointer1 and pointer2 which are pointers to the buffers, but
it should use ptr_hotlist1 and ptr_hotlist1 which are pointers to the
hotlists it is trying to compare.
2021-03-21 08:59:37 +01:00
Sébastien Helleu e8a58a27cd core: update ChangeLog (issue #1591, issue #1592) 2021-03-20 13:08:35 +01:00
Trygve Aaberge 472eab38e5 core: Prevent switching to start of visited buffers when jumping to next
If you run /input jump_next_visited_buffer right after switching to a
buffer, weechat changes to the first buffer in the visited buffers list.
That is, it wraps around and goes to the buffer you visited the longest
ago. This patch fixes that.

The reason it happens is that when you switch to a buffer (normally,
i.e. in another way than using jump_previously_visited_buffer/
jump_next_visited_buffer) gui_buffers_visited_index is set to -1 (in
gui_buffer_visited_add). This makes gui_buffer_visited_get_index_next
return 0 because it returns gui_buffers_visited_index + 1, which makes
gui_input_jump_next_visited_buffer jump to the first buffer in the list
of visited buffers.

Fixes #1591
2021-03-20 13:07:20 +01:00
Sébastien Helleu aa4beb99e8 doc: update German auto-generated file 2021-03-20 09:20:51 +01:00
Nils Görs 741c1b4e87 doc: update German documentation 2021-03-20 07:52:35 +01:00
Nils Görs a715403d60 core: update German translations 2021-03-20 06:36:19 +01:00
Sébastien Helleu 40ab0bb11e core: update ChangeLog 2021-03-19 23:27:00 +01:00
Sébastien Helleu 3b76a8dd82 core: add repository ppa:ondrej/php in CI 2021-03-19 07:12:23 +01:00
Sébastien Helleu bcddb06094 core: do not force build of JavaScript plugin in CI 2021-03-19 09:14:59 +01:00
Sébastien Helleu 611ea27edc tests: disable pylint error useless-object-inheritance 2021-03-19 09:14:59 +01:00
Sébastien Helleu bacd50c7a7 core: replace pylint3 by pylint in CI on Ubuntu 20.04 2021-03-19 09:14:59 +01:00
Sébastien Helleu da91ddef98 core: first remove package php7.4-common in CI on Ubuntu 20.04
See: https://github.com/actions/virtual-environments/issues/2859
2021-03-19 09:14:59 +01:00
Sébastien Helleu 692d313fe3 core: switch from Ubuntu 18.04 to 20.04 in CI 2021-03-19 09:14:59 +01:00
Sébastien Helleu 4d96a3a84d core: add pointer name in description of function eval_replace_vars_cb 2021-03-18 07:35:12 +01:00
Sébastien Helleu 0d5b7ae9d0 doc: update German auto-generated files 2021-03-17 21:58:18 +01:00
Sébastien Helleu 8ee7d46605 api: add support of pointer names in function string_eval_expression (direct and in hdata)
These two formats are now supported, if "pointer_name" is present in the
"pointers" hashtable:

* "${pointer_name}": value of pointer (example: "0x1234abcd")
* ${buffer[pointer_name].full_name}: use of a pointer name instead of pointer
  value or list name
2021-03-17 21:57:16 +01:00
Sébastien Helleu c54cadace5 tests: use macros UINT32_C and UINT64_C for integer constants of type uint32_t and uint64_t
This fixes the following compiler warnings: "integer constant is so large that
it is unsigned".
2021-03-17 21:56:43 +01:00
Nils Görs 84d9de798a core: update German translations 2021-03-17 14:16:16 +01:00
Sébastien Helleu e4ff17e162 doc: add section "plugin" in weechat.conf (user's guide) 2021-03-16 19:03:45 +01:00
Sébastien Helleu 0dc7fbcb0c core: add options to customize commands on system signals, quit by default on SIGHUP when not running headless (closes #1595)
New options to customize behavior on signals received, with the default
behavior:

- weechat.signal.sighup: quit in normal mode, reload config in headless
- weechat.signal.sigquit: quit
- weechat.signal.sigterm: quit
- weechat.signal.sigusr1: no command executed by default
- weechat.signal.sigusr2: no command executed by default

The signals SIGUSR1 and SIGUSR2 are introduced by this commit, so it's now
possible to run commands when they are received.

The SIGHUP signal makes now WeeChat quit, it was the behavior before version
2.9 of WeeChat (see commit de1e61f7cd).
2021-03-16 18:47:31 +01:00
Sébastien Helleu bb41de8c02 api: add info "weechat_daemon" 2021-03-14 14:11:06 +01:00
Sébastien Helleu a02a2fbaae doc: use full path /usr/bin/pass in example for option sec.crypt.passphrase_command 2021-03-14 13:38:50 +01:00
Sébastien Helleu e37f2569f9 core: mention /fset command in header comment of configuration files 2021-03-14 11:36:07 +01:00
Sébastien Helleu ab282db3a6 core: update ChangeLog (closes #1618) 2021-03-14 10:56:51 +01:00
Sébastien Helleu 8c793fe7cc fset: add fset bar on configuration reload (issue #1618) 2021-03-14 10:56:24 +01:00
Sébastien Helleu 35b5adbc4c buflist: always add buflist bar when plugin is loaded, hide bar by default if buflist is disabled (issue #1618) 2021-03-14 10:55:48 +01:00
Sébastien Helleu a4440ba8e5 buflist: add buflist bar on configuration reload (issue #1618) 2021-03-14 10:55:24 +01:00
Nils Görs 3bdae5b464 doc: update German documentation 2021-03-13 23:56:16 +01:00
Sébastien Helleu d2c56084f8 doc: add upgrade chapter in user's guide 2021-03-13 15:17:01 +01:00
Sébastien Helleu 5311c103d5 debian: update debian/ubuntu patches with new Standards-Version 2021-03-08 20:48:06 +01:00
Sébastien Helleu 39bd4e2099 debian: fix watch according to download page changes 2021-03-08 20:38:25 +01:00
Sébastien Helleu 35ca5cde9c debian: bump Standards-Version to 4.5.1 2021-03-08 20:37:43 +01:00
Sébastien Helleu c49255a851 core: add missing include of sys/time.h in C headers 2021-03-07 13:21:24 +01:00
Sébastien Helleu 2b1c2d6d05 Version 3.2-dev 2021-03-07 12:11:55 +01:00
Sébastien Helleu ae2f25109c Version 3.1 2021-03-07 11:54:55 +01:00
Sébastien Helleu 7dd7da1d7b core: reorder release notes for version 3.1 2021-03-07 09:45:06 +01:00
Sébastien Helleu 3983e9fa1e core: fix compilation of tests on FreeBSD 2021-03-07 09:33:06 +01:00
Sébastien Helleu 4307733853 debian: update changelog 2021-03-07 08:57:53 +01:00
Sébastien Helleu 4014c1140a doc: update Polish auto-generated files 2021-03-06 19:02:53 +01:00
Krzysztof Korościk 65a732449e doc: updated polish user guide 2021-03-06 18:49:12 +01:00
Krzysztof Korościk 4fd3c5e1d6 po: updated polish translation 2021-03-06 18:10:42 +01:00
Sébastien Helleu e9c8b8bf0f core: add contributor in AUTHORS.adoc (issue #1615) 2021-03-05 21:00:17 +01:00
Sébastien Helleu ca4d7b37c6 core: fix pt_BR translations 2021-03-05 20:51:43 +01:00
Érico Rolim 23a3096e1d core: update pt_BR translations. 2021-03-05 20:50:50 +01:00
Sébastien Helleu c17aeeba29 core: force Ubuntu 18.04 for CI 2021-03-05 20:45:31 +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 3ca58c2fd9 Version 3.1-rc1 2021-02-28 12:06:49 +01:00
Sébastien Helleu 1862f4b3d2 core: add missing "xxx" in format of evaluated expressions (ChangeLog) 2021-02-28 12:03:47 +01:00
Nils Görs f06d434a0c Merge branch 'master' of https://github.com/weechat/weechat 2021-02-27 13:58:11 +01:00
Nils Görs 00d6183cd8 doc: update German documentation 2021-02-27 13:57:49 +01:00
Sébastien Helleu ceaf480ba7 core: fix paragraph in release notes 2021-02-27 13:49:55 +01:00
Sébastien Helleu 0f71b4ccc8 irc: add bar item "irc_nick_prefix" 2021-02-27 13:44:24 +01:00
Sébastien Helleu a811da3a42 doc: add missing available bar items (user's guide) 2021-02-27 12:56:09 +01:00
Sébastien Helleu 83379469aa irc: fix separator between nick and host in bar item "irc_nick_host"
Use "!" instead of "@" to separate nick from host, like it is done in IRC
protocol.

The nick and host is now displayed as "nick!user@host" instead of
"nick@user@host".
2021-02-27 09:02:09 +01:00
Sébastien Helleu 6a7da6d473 fset: fix description of function fset_bar_item_fset_cb 2021-02-27 08:57:32 +01:00
Sébastien Helleu 7b15742a11 doc: fix example of value for bar item "irc_nick_modes" (user's guide) 2021-02-26 18:45:21 +01:00
Sébastien Helleu 5339e6aa17 doc: update German auto-generated file 2021-02-26 18:41:14 +01:00
Nils Görs 2a31544242 core: update German translations 2021-02-26 14:02:42 +01:00
Sébastien Helleu 3d587ad37d core: add info_hashtable "secured_data" 2021-02-25 19:06:47 +01:00
Sébastien Helleu 5725c8561c doc: remove references to Savannah in developer's guide 2021-02-20 11:12:14 +01:00
Sébastien Helleu 49ac7dd9f5 doc: split dependencies in two tables: required and optional (user's guide) 2021-02-19 20:12:18 +01:00
Sébastien Helleu d10e8342d3 core: convert "totp" to upper case in ChangeLog 2021-02-16 07:47:42 +01:00
Sébastien Helleu 1a86036edb doc: update German auto-generated file 2021-02-11 07:16:11 +01:00
Sébastien Helleu ab47c1abf7 core: move line from "New features" to "Bug fixes" (issue #1612) 2021-02-11 07:12:55 +01:00
Nils Görs 69af1ac0ae core: update German translations 2021-02-10 08:10:06 +01:00
Sébastien Helleu b6a935b1c3 core: move line to appropriate version in ChangeLog 2021-02-10 07:56:43 +01:00
Sébastien Helleu 45c372ebc8 core: move line from "New features" to "Bug fixes" (issue #1613) 2021-02-09 20:42:58 +01:00
Sébastien Helleu 840551dcfa doc: update German auto-generated files 2021-02-09 20:37:35 +01:00
Sébastien Helleu 630fe0581f buflist: add option buflist.look.use_items to speed up display of buflist (closes #1613) 2021-02-09 20:34:56 +01:00
Sébastien Helleu d74f2e3183 core: add fixed behavior of command /window splitv in release notes 2021-02-09 20:19:22 +01:00
Sébastien Helleu 00409cba6a core: fix wrong size of the new window after vertical split (closes #1612) 2021-02-08 18:47:44 +01:00
Nils Görs 8a6a135b45 core: update German translations 2021-02-08 13:41:59 +01:00
Sébastien Helleu 47112a113e core: update help on option sec.crypt.passphrase_command, update translations 2021-02-08 13:12:54 +01:00
Sébastien Helleu d08e9aed1c core: update translations 2021-02-07 11:00:12 +01:00
Sébastien Helleu 1c3c8c92c7 core: update ChangeLog (closes #992, closes #993) 2021-02-07 09:52:15 +01:00
Kevin Pulo df12f8de34 core: add options weechat.look.hotlist_update_on_buffer_switch and weechat.look.read_marker_update_on_buffer_switch
Both default to "on" (no change to previous behavior).

If hotlist_update_on_buffer_switch is "off", then when switching away from a
buffer, the hotlist is not cleared.

If read_marker_update_on_buffer_switch is "off", then when switching away from
a buffer, the read marker is not set to the end of the buffer.

This allows users to choose to have fully manual control over when hotlist
counts and buffer read markers are reset.

Fixes #992.
2021-02-07 09:48:19 +01:00
Sébastien Helleu 84d4be1bee core: update ChangeLog (remove option sec.crypt.passphrase_file) 2021-02-06 16:20:11 +01:00
Sébastien Helleu f1c681c832 core: replace option sec.crypt.passphrase_file by sec.crypt.passphrase_command (closes #141)
The command is used to read the passphrase on startup, for example using your
favorite password manager.

Note: only the passphrase is read from the program, the secured data is still
stored encrypted in sec.conf and handled by WeeChat itself.
2021-02-06 16:07:14 +01:00
Sébastien Helleu fe9ec8fbda doc: update German auto-generated files 2021-02-05 20:08:18 +01:00
Sébastien Helleu a93e598c35 core: add raw string in evaluation of expressions with "raw:xxx" (closes #1611) 2021-02-05 20:07:16 +01:00
Nils Görs 64fe602aae core: update German translations 2021-02-05 10:56:49 +01:00
Sébastien Helleu a34959a619 irc: add info "irc_is_message_ignored" 2021-02-03 18:30:32 +01:00
Sébastien Helleu 42a86f0a36 core: add version 3.0.1 in ChangeLog, release notes and weechat.spec 2021-01-31 10:38:57 +01:00
Nils Görs a250a50ca5 core: update German translations 2021-01-31 10:32:26 +01:00
Nils Görs 8bdc58f32d core: update German translations 2021-01-31 09:32:26 +01:00
Sébastien Helleu 691c9a0a0f irc: add function irc_server_get_chantypes 2021-01-30 10:34:23 +01:00
Sébastien Helleu 0c98b0cfa4 irc: use server option "default_chantypes" as fallback in function irc_nick_is_nick 2021-01-30 09:59:04 +01:00
Sébastien Helleu ba892ee5a0 core: update translations 2021-01-30 09:55:02 +01:00
Sébastien Helleu a11c90ab70 core: add contributor in AUTHORS.adoc (issue #1610) 2021-01-30 09:34:30 +01:00
Sébastien Helleu 201979fa8d doc: update auto-generated files with options 2021-01-30 09:32:59 +01:00
Sébastien Helleu dd589cd141 irc: use server option "default_chantypes" as fallback when automatically adding channel type on join 2021-01-30 09:31:31 +01:00
Sébastien Helleu e305b4e960 core: update ChangeLog 2021-01-30 09:25:55 +01:00
Sébastien Helleu ec2ffedab6 irc: improve help on server option "default_chantypes" 2021-01-30 09:25:06 +01:00
Sébastien Helleu 293402143b irc: fix name of option "default_chantypes" in list of server options 2021-01-30 09:24:34 +01:00
Sébastien Helleu e74dd22707 irc: simplify code in function irc_channel_is_channel 2021-01-30 09:05:49 +01:00
Matti Virkkunen bad6dc8a57 irc: make default chantypes configurable 2021-01-30 01:01:51 +02:00
Nils Görs dc8df133ea doc: update German documentation 2021-01-27 07:48:05 +01:00
Sébastien Helleu d465ec2a39 doc: update Polish auto-generated files 2021-01-27 00:06:34 +01:00
Sébastien Helleu fd672a0fa4 doc: add a second note on default configuration files in user's guide 2021-01-27 00:04:30 +01:00
Sébastien Helleu 7b1b482cc7 core: add command "/buffer listvar" in release notes 2021-01-26 23:39:49 +01:00
Sébastien Helleu 7255fac60b core: add contributor in AUTHORS.adoc (issue #1607) 2021-01-16 13:35:54 +01:00
Sébastien Helleu bb6152d8a3 core: update ChangeLog 2021-01-16 13:20:14 +01:00
Jan Palus b142617cca doc: don't build headless man page if headless is disabled 2021-01-16 13:15:45 +01:00
Krzysztof Korościk 1c3cb4364d po: updated polish translation 2021-01-15 21:35:27 +01:00
Krzysztof Korościk c81eac325d doc: updated polish translation 2021-01-15 21:17:37 +01:00
Sébastien Helleu 25ed384418 doc: add missing non-breaking spaces before punctuation in French docs 2021-01-09 20:22:22 +01:00
Nils Görs 84b02c1296 core: update German translations 2021-01-05 09:15:43 +01:00
Sébastien Helleu efc7a588d6 core: update copyright dates 2021-01-02 21:34:16 +01:00
Sébastien Helleu df4b9170f1 irc: remove obsolete comment on translation 2021-01-02 15:22:02 +01:00
Sébastien Helleu b8acaf8a14 irc: fix ambiguity on translation of word "server"
This fixes the following warning:

/usr/bin/xgettext: warning: msgid 'server' is used without plural and with plural.
                            ./src/plugins/irc/irc-bar-item.c:136: Here is the occurrence without plural.
                            ./src/plugins/irc/irc.c:154: Here is the occurrence with plural.
                            Workaround: If the msgid is a sentence, change the wording of the sentence; otherwise, use contexts for disambiguation.
2021-01-02 15:18:26 +01:00
Sébastien Helleu 470e3ef9cf core: move debug_id assignation in macro EVAL_DEBUG_MSG 2021-01-02 14:43:40 +01:00
Sébastien Helleu 943374f789 doc: add note about call to "regfree" after call to "string_regcomp" (plugin API reference) 2021-01-01 18:10:47 +01:00
Sébastien Helleu d413ccdf4f core: add indentation and colors in /eval debug output 2021-01-01 17:08:59 +01:00
Sébastien Helleu 63ead3da49 doc: update German auto-generated file 2021-01-01 15:47:35 +01:00
Nils Görs 565837f75a core: update German translations 2021-01-01 11:21:57 +01:00
Sébastien Helleu 2ad3da03a2 core: display more verbose debug with two "-d" in command /eval
Now a single -d in command /eval shows less debug messages than previous
versions.

To get the same debug messages than previous versions, two -d must be used.
2020-12-31 20:37:43 +01:00
Sébastien Helleu 33c7b96146 core: fix typo in comment 2020-12-30 23:02:37 +01:00
Nils Görs 7b13bb5cf9 doc: update German documentation 2020-12-28 10:14:42 +01:00
Sébastien Helleu 9bc194c898 doc: update question about config files sharing (FAQ) 2020-12-28 00:17:05 +01:00
Sébastien Helleu 0942b04c52 doc: add info about sensitive data in relay.conf (user's guide) 2020-12-28 00:08:45 +01:00
Sébastien Helleu 2e3cef4c41 doc: update Polish auto-generated files 2020-12-27 21:56:10 +01:00
Krzysztof Korościk 05a9a7904c po: updated polish translation 2020-12-27 19:05:51 +01:00
Sébastien Helleu ee9aa28a8c core: do not remove quotes in arguments of command /eval (closes #1601)
Now, /eval -n -c "a" == "a" returns True instead of False.

When quotes were removed, the condition evaluated was: a" == "a (which is
False).
2020-12-25 00:21:03 +01:00
Sébastien Helleu a8abfcd7b4 doc: update German auto-generated files 2020-12-21 18:33:48 +01:00
Sébastien Helleu cc5c34d4dc doc: add missing parenthesis in user's guide 2020-12-21 18:31:08 +01:00
Nils Görs f9b4f4e7e6 doc: update German documentation 2020-12-21 13:40:39 +01:00
Nils Görs 18f9ba3c0c core: update German translations 2020-12-21 13:07:23 +01:00
Sébastien Helleu 09f57476d2 doc: add a chapter on buffer local variables (user's guide) 2020-12-19 21:23:16 +01:00
Sébastien Helleu 7e2396ade8 core: add options "setvar" and "delvar" in command /buffer, rename option "localvar" to "listvar"
The option "localvar" (introduced long time ago, in WeeChat 0.3.0) is still
recognized by WeeChat, to stay compatible with any extension/script calling
it (or referencing it in the documentation).

It is deprecated and will be removed in a future release.
2020-12-19 20:59:38 +01:00
Sébastien Helleu 1526f58d7a doc: replace "core" by "weechat" in table with extra info for bar item "buffer_nicklist" (plugin API reference) 2020-12-19 15:00:02 +01:00
Sébastien Helleu 0294b246f6 core: add buffer local variable "completion_default_template" (evaluated) (closes #1600)
When this local variable is set, it overrides the value of option
"weechat.completion.default_template".

It is evaluated, that means the global default template can be used to append
some custom completion. For example:

  /buffer set localvar_set_completion_default_template ${weechat.completion.default_template}|%(my_completion)
2020-12-19 14:25:13 +01:00
Sébastien Helleu e4152c3535 core: remove unneeded return of WEECHAT_RC_OK in filter command 2020-12-18 20:28:41 +01:00
Sébastien Helleu dc5277fe89 core: add option "recreate" in command /filter 2020-12-18 20:28:16 +01:00
Sébastien Helleu 73eabdbe80 doc: update German auto-generated file 2020-12-18 19:55:44 +01:00
Nils Görs 5e17f0039b core: update German translations 2020-12-17 11:05:15 +01:00
Sébastien Helleu 13e4af7b46 script: add status of scripts in output of command /script list in /help script 2020-12-15 20:41:13 +01:00
Nils Görs 1efcaa9752 doc: update German documentation 2020-12-13 11:55:38 +01:00
Sébastien Helleu b95e91e1a2 doc: add command to run WeeChat with address sanitizer (user's guide) 2020-12-13 11:01:04 +01:00
Nils Görs 3dea65aa05 doc: update German documentation 2020-12-07 08:59:07 +01:00
Sébastien Helleu a69cfbdb19 core: add contributor in AUTHORS.adoc (issue #1597) 2020-12-06 15:54:44 +01:00
Sébastien Helleu d01a98950a doc: update auto-generated files with commands 2020-12-06 15:51:12 +01:00
Sébastien Helleu ee25c74903 irc: fix completion of commands /halfop and /dehalfop 2020-12-06 15:48:55 +01:00
Sébastien Helleu cd7947d8fc irc: add missing parameter "-yes" in /help dehalfop 2020-12-06 15:47:52 +01:00
dotflac 4974c2f0a2 add -yes to output of /help voice
currently /help voice does not tell you that you need -yes if you are using *. i have changed it to match /help op, /help deop and /help devoice
2020-12-06 15:43:36 +01:00
Sébastien Helleu 33cdf3eb90 doc: add question about buflist customization 2020-12-06 15:13:55 +01:00
Sébastien Helleu 58a94df61d core: update ChangeLog 2020-12-05 19:57:53 +01:00
Sébastien Helleu 08ebc99dea Revert "exec: return NULL immediately if the task id is invalid"
This reverts commit dff1bf6f0f.
2020-12-05 19:57:24 +01:00
Sébastien Helleu 03f4afe65e Revert "core: add extra compiler options to check overflow of destination buffer and output truncation"
This reverts commit 4ff4a64209.

These compiler flags are not supported on old compiler version, for example on
Debian Stretch/Jessie and Ubuntu Xenial (16.04).
2020-11-29 11:05:38 +01:00
Tim Gates 08db4407ed docs: fix simple typo, confiuration -> configuration
There is a small typo in src/core/weechat.c.

Should read `configuration` rather than `confiuration`.
2020-11-28 09:46:23 +01:00
Sébastien Helleu 4ff4a64209 core: add extra compiler options to check overflow of destination buffer and output truncation 2020-11-28 09:43:57 +01:00
Sébastien Helleu 21aef706cd core: allocate dynamic string size for colors 2020-11-23 21:25:41 +01:00
Sébastien Helleu 345bdddf62 script: increase buffer size in function script_buffer_detail_label
This fixes a compiler warning complaining about a too small buffer for
snprintf, even if this should never happen.
2020-11-22 15:00:19 +01:00
Sébastien Helleu d1cad18f01 core: increase buffer size in function plugin_api_info_uptime_cb
This fixes a compiler warning complaining about a too small buffer for
snprintf, even if this should never happen.
2020-11-22 14:59:06 +01:00
Sébastien Helleu a8dd0e1337 core: increase buffer size in function gui_bar_item_time_cb
This fixes a compiler warning complaining about a too small buffer for
snprintf, even if this should never happen.
2020-11-22 14:56:55 +01:00
Sébastien Helleu 070eb3f7b0 core: increase buffer size in HTTP proxy connection
In case of long address/username/password, the HTTP CONNECT message could be
truncated.
2020-11-21 21:13:13 +01:00
Sébastien Helleu 194f8b5b74 core: increase command buffer size in /color command
In case of long alias name, the command to set color alias could be truncated.
2020-11-21 21:13:05 +01:00
Sébastien Helleu ee24fac586 spell: fix crash with IRC color codes in command line (closes #1589) 2020-11-20 21:50:05 +01:00
Sébastien Helleu a2266e4e3f core: add missing cast to unsigned char on first argument to function isdigit 2020-11-19 22:20:48 +01:00
Sébastien Helleu 214f4f66d9 doc: update German auto-generated file 2020-11-18 22:58:32 +01:00
Nils Görs 14e66962c8 core: update German translations 2020-11-18 09:44:17 +01:00
Sébastien Helleu 5cbda03fca core: fix and normalize error messages 2020-11-17 21:54:24 +01:00
Sébastien Helleu 21eadc9488 core: display an error when the buffer is not found with command /command -buffer 2020-11-17 13:43:20 +01:00
Sébastien Helleu 6fda5a7e5f core: remove option to open a blank issue 2020-11-16 22:58:17 +01:00
Sébastien Helleu b9c8569422 trigger: add variable "${tg_trigger_name}" in command trigger evaluated strings (closes #1580)
${tg_trigger_name} is replaced by the trigger name in these command strings:

- description
- arguments
- description of arguments
- completion
2020-11-14 09:32:24 +01:00
Sébastien Helleu b626df72fb core: add evaluation of conditions in evaluation of expressions with "eval_cond:" (closes #1582) 2020-11-14 09:28:46 +01:00
Sébastien Helleu eb90a73fe8 spell: fix refresh of bar item "spell_suggest" when the input becomes empty (closes #1586)
When the input is empty, length of string is zero: when sending zero to
function weechat_string_dyn_alloc, the function returns NULL and therefore we
return immediately instead of handling the empty input, which is a valid value.

The regression was introduced by the use of dynamic strings, commit:
299f74bfef
2020-11-13 21:30:06 +01:00
Sébastien Helleu 4065d32e68 Version 3.1-dev 2020-11-11 09:30:24 +01:00
Sébastien Helleu 72936fd3be Version 3.0 2020-11-11 08:46:53 +01:00
Sébastien Helleu 3da91d702e debian: update changelog 2020-11-10 18:32:26 +01:00
Sébastien Helleu 43d9b3a723 Version 3.0-rc1 2020-11-01 10:09:17 +01:00
Nils Görs 5beb5d7052 doc: update German documentation 2020-10-30 12:55:53 +01:00
Sébastien Helleu 0ff08e54f5 trigger: add variable "tg_argc" in data set by command trigger (closes #1576) 2020-10-21 19:10:37 +02:00
Sébastien Helleu 30e48336f4 irc: remove SASL timeout message displayed by error after successful SASL authentication (closes #1515)
The SASL timer is removed immediately when the SASL authentication is
successful or has failed.
2020-10-18 09:35:04 +02:00
Sébastien Helleu 2807a8374b doc: update German auto-generated file 2020-10-16 21:15:43 +02:00
Nils Görs da934d9818 core: update German translations 2020-10-16 16:38:50 +02:00
Sébastien Helleu 939b16230c script: allow command /script list when option script.scripts.download_enabled is set to off (closes #1574) 2020-10-15 20:38:43 +02:00
Trygve Aaberge c3707bb6e1 doc: Update hotlist example to match hotlist_prefix
hotlist_prefix defaults to "H: ", so the example should show the same to
make it easier to understand what it is.
2020-10-15 13:46:27 +02:00
Sébastien Helleu fa46a2fe2d exec: add option "-oerr" to send stderr to buffer (now disabled by default) (closes #1566) 2020-10-11 16:33:50 +02:00
Sébastien Helleu 4d696d7cc8 exec: add missing option "-oc" in /help exec 2020-10-11 15:55:40 +02:00
Sébastien Helleu c8f2ebcea3 core: add terminal and terminal multiplexer in GitHub issue template 2020-10-11 08:52:54 +02:00
Sébastien Helleu 72fdd689a2 core: update ChangeLog (issue #1567) 2020-10-10 13:36:26 +02:00
Sébastien Helleu 2384dbe193 trigger: add a function to set variables common to all triggers (issue #1567) 2020-10-10 13:32:36 +02:00
Sébastien Helleu fd72226a71 doc: translate tg_trigger_name variable under triggers (issue #1567) 2020-10-10 13:22:49 +02:00
Simmo Saan 765d2dd277 doc: add tg_trigger_name variable under triggers (issue #1567) 2020-10-10 10:13:42 +03:00
Simmo Saan 8c87b7a1f0 trigger: add tg_trigger_name variable to all triggers (closes #1567) 2020-10-10 10:13:42 +03:00
Sébastien Helleu 07565a4aa6 doc: update German auto-generated file 2020-10-07 20:32:51 +02:00
Nils Görs 79f71a0e1a core: update German translations 2020-10-05 12:22:21 +02:00
Sébastien Helleu c016e7ea87 core: use apt-get option --no-install-recommends instead of modifying config file /etc/apt/apt.conf 2020-10-04 19:11:39 +02:00
Sébastien Helleu bb82dbc0ec tests: add missing braces around if/else in macro WEE_NICK_STRDUP_FOR_COLOR (issue #1565) 2020-10-04 08:53:08 +02:00
Sébastien Helleu f8403c76db api: add optional list of colors in infos "nick_color" and "nick_color_name" (closes #1565) 2020-10-04 08:46:36 +02:00
Sébastien Helleu 657e659c42 core: add argument "num_colors" in function gui_nick_hash_color, add tests on nick functions (issue #1565)
Functions tested:

- gui_nick_hash_djb2_64
- gui_nick_hash_djb2_32
- gui_nick_hash_sum_64
- gui_nick_hash_sum_32
- gui_nick_get_forced_color
- gui_nick_strdup_for_color
- gui_nick_find_color
- gui_nick_find_color_name
2020-10-04 08:46:25 +02:00
Sébastien Helleu 1c5e5824e7 tests: run callback when resetting options in tests 2020-10-03 14:40:59 +02:00
Sébastien Helleu b32f561f77 irc: fix again typo in English plural form of "normal" 2020-09-12 18:49:42 +02:00
Sébastien Helleu 1745b78b57 irc: fix typo in English plural form of "normal" (normals -> normal) 2020-09-12 18:08:13 +02:00
Sébastien Helleu 7ce5dce8f9 doc: update German auto-generated file 2020-09-12 17:22:19 +02:00
Nils Görs 8544d9ef0b core: update German translations 2020-09-08 13:15:31 +02:00
Sébastien Helleu 3c987f3a1c script: add option script.scripts.download_enabled (closes #1548) 2020-09-06 19:15:15 +02:00
Sébastien Helleu 9ccf62979f script: do not automatically download list of scripts on startup if the file is too old (closes #1548)
The repository file is downloaded anyway if too old on any /script action.
2020-09-02 19:22:56 +02:00
Sébastien Helleu 579af1b265 tests: fix compilation with CppUTest ≥ 4.0
MemoryLeakWarningPlugin::turnOnNewDeleteOverloads is replaced by
MemoryLeakWarningPlugin::turnOnThreadSafeNewDeleteOverloads, which is available
in both CppUTest 3.x and 4.0.
2020-08-29 10:18:50 +02:00
Sébastien Helleu 54b7c88553 spell: also skip IRC color attributes codes when checking words in input (issue #1547) 2020-08-28 18:32:50 +02:00
Sébastien Helleu aac14f28dd irc: add comments in functions irc_color_decode and irc_color_encode 2020-08-25 19:37:47 +02:00
Sébastien Helleu e25c364790 spell: skip IRC color codes when checking words in input (closes #1547) 2020-08-25 19:37:42 +02:00
Sébastien Helleu 299f74bfef spell: use dynamic string functions to return modified string 2020-08-24 22:12:45 +02:00
Sébastien Helleu cfd221014c api: add argument "bytes" in function string_dyn_concat 2020-08-23 23:27:57 +02:00
Sébastien Helleu b459dab84b spell: properly skip WeeChat color codes when checking words in input (closes #1547) 2020-08-22 08:56:21 +02:00
Sébastien Helleu 268aa631c6 api: add function string_color_code_size (issue #1547) 2020-08-22 08:55:16 +02:00
Sébastien Helleu 7dd5abd625 fset: fix refresh of option values in fset buffer (issue #1553) 2020-08-20 20:31:07 +02:00
Sébastien Helleu d53fb92a30 irc: replace calls to malloc by calloc
After these calls to malloc the memory is set to zero, so it's better to call
calloc that does it already.
2020-08-17 20:06:17 +02:00
Sébastien Helleu fbc2438c1c core: replace calls to malloc by calloc
After these calls to malloc the memory is set to zero, so it's better to call
calloc that does it already.
2020-08-17 19:57:10 +02:00
Sébastien Helleu fca5a4b42c core: set notify_level to 3 if highlight is forced in gui_line_hook_update (only if tag "notify_none" is not in the line) (issue #1529) 2020-08-16 12:40:41 +02:00
Sébastien Helleu 330d7d50d2 core: set notify_level to 3 in case of highlight in gui_line_hook_update only if tag "notify_none" is not in the line (issue #1529) 2020-08-16 12:40:01 +02:00
Sébastien Helleu 786072806b core: set notify_level to 3 in case of highlight only if tag "notify_none" is not in the line (issue #1529) 2020-08-16 08:27:00 +02:00
Sébastien Helleu d15db0ecbb core: set "notify_level" to 3 if there is a highlight in the line (closes #1529) 2020-08-15 14:02:40 +02:00
Sébastien Helleu 45ce1d7604 doc: update German auto-generated file 2020-08-13 08:38:45 +02:00
Nils Görs 0e1a59cbef core: update German translations 2020-08-11 18:47:46 +02:00
Sébastien Helleu 1054cdf1e9 fset: add option fset.look.auto_refresh (closes #1553) 2020-08-09 10:56:03 +02:00
Sébastien Helleu 0cc5df6649 irc: send all channels in a single JOIN command when reconnecting to the server (closes #1551) 2020-08-05 20:05:36 +02:00
Sébastien Helleu 36c55f6973 tests: fix name of some unit tests 2020-08-05 07:28:30 +02:00
Sébastien Helleu 00c34b0ba8 core: replace "unit" by module for changes in unit tests 2020-08-05 07:22:38 +02:00
Sébastien Helleu 8cf56dfdf9 tests: add tests on GUI line functions
Functions tested:

- gui_line_lines_alloc
- gui_line_lines_free
- gui_line_tags_alloc
- gui_line_tags_free
- gui_line_is_displayed
- gui_line_has_tag_no_filter
- gui_line_search_tag_starting_with
- gui_line_get_nick_tag
2020-08-04 23:42:20 +02:00
Sébastien Helleu 0ab44c02a4 core: check that line is not NULL in functions gui_line_is_displayed and gui_line_get_nick_tag 2020-08-04 23:12:18 +02:00
Sébastien Helleu 6704825d7b core: check that line_data is not NULL in functions gui_line_tags_alloc and gui_line_has_tag_no_filter 2020-08-04 22:56:02 +02:00
Sébastien Helleu ec898732a1 core: rename functions to allocate/free lines 2020-08-04 22:42:59 +02:00
Sébastien Helleu 9262720a65 doc: add instructions to build WeeChat with address sanitizer (user's guide) 2020-08-01 09:53:47 +02:00
Sébastien Helleu 26085575d5 core: disable debug by default in autotools build 2020-08-01 01:41:40 +02:00
Sébastien Helleu 7412f5815c trigger: fix recursive calls to triggers using regex (closes #1546) 2020-07-31 20:50:33 +02:00
Sébastien Helleu 00e25af470 doc: update German auto-generated file 2020-07-21 18:28:38 +02:00
Nils Görs 6fc40fb8d4 core: update German translations 2020-07-21 11:36:35 +02:00
Sébastien Helleu 3e6c8b6a88 core: update ChangeLog (issue #1535, issue #1538) 2020-07-21 08:29:03 +02:00
Sébastien Helleu c002c5f77f doc: add "irc_nick" in hashtable sent to hook_focus callback (plugin API reference) (issue #1538) 2020-07-21 08:28:01 +02:00
Simmo Saan b69e47d0a2 irc: add pointer "irc_nick" in hashtable sent to hook focus callback (closes #1535) 2020-07-21 08:18:43 +02:00
Sébastien Helleu 84e30438d4 irc: allow to send text on buffers with commands /allchan, /allpv and /allserv 2020-07-20 22:39:28 +02:00
Sébastien Helleu ee3a4a1fc0 irc: evaluate command executed by commands /allchan, /allpv and /allserv (closes #1536)
The extra variables are now replaced (in addition to `$server`, `$channel` and
`$nick`):

- `${irc_server.xxx}`: variable xxx in server
- `${irc_channel.xxx}`: variable xxx in channel
2020-07-20 22:20:22 +02:00
Sébastien Helleu 5bf571c60f doc: improve description of tags "notify_xxx" in chapter on lines tags (user's guide) (issue #1529) 2020-07-20 21:48:20 +02:00
Sébastien Helleu e0e905ca7f trigger: check that tag "notify_none" is not present in message to run command of default trigger beep (issue #1529) 2020-07-20 21:08:59 +02:00
Sébastien Helleu 2b16036f08 core: do not add line with highlight and tag "notify_none" to hotlist (closes #1529) 2020-07-20 09:26:36 +02:00
Sébastien Helleu 9ef793fd65 Version 3.0-dev 2020-07-18 14:27:37 +02:00
Sébastien Helleu c096750e96 Version 2.9 2020-07-18 13:59:02 +02:00
Sébastien Helleu 0ebed7e7b0 doc: replace wildcard command by list of included files in Makefile.am files
This fixes the `make distcheck` command.
2020-07-11 12:23:14 +02:00
Sébastien Helleu cef0a77ace core: add contributor in AUTHORS.adoc (issue #1537) 2020-07-07 20:29:03 +02:00
Sébastien Helleu 19e98e7599 core: update ChangeLog (issue #1537) 2020-07-07 20:27:57 +02:00
Marco Sirabella ab7104e34c Add $weechat_sharedir/python for global python package import
Related: #1461

Some scripts (eg weechat-matrix) ship directories that need to be
imported from the script.

Rather than globally installing the python packages to python's
`site-packages` the directories can be installed alongside the script in
`WEECHAT_SHAREDIR/python`.

This change adds that directory to the `$PYTHONPATH` to import
successfully.
2020-07-07 20:26:17 +02:00
Sébastien Helleu af03f8ab50 Version 2.9-rc1 2020-07-05 23:27:57 +02:00
Sébastien Helleu dfcf1f0398 doc: update German auto-generated file 2020-07-04 17:32:55 +02:00
Nils Görs d75e747dff core: update German translations 2020-07-04 14:10:30 +02:00
Sébastien Helleu bde4b30021 doc: fix description of "_chat_bol" and "_chat_eol" in function hook_focus (plugin API reference) 2020-06-30 21:01:11 +02:00
Sébastien Helleu 9510301f46 doc: harmonize example of pointers in plugin API reference and relay protocol 2020-06-30 20:54:31 +02:00
Sébastien Helleu b17e1bcf89 api: add pointer "_bar_window" in hashtable sent to hook focus callback (closes #1450) 2020-06-30 20:16:19 +02:00
Sébastien Helleu c868a4d3f8 doc: fix typo (relay protocol) 2020-06-29 22:08:00 +02:00
Sébastien Helleu ee91d38965 doc: fix flake8 errors in docgen.py 2020-06-28 10:26:04 +02:00
Sébastien Helleu acfb5a7638 relay: add missing field "notify_level" in message "_buffer_line_added" (issue #1529) 2020-06-26 08:03:15 +02:00
Sébastien Helleu b0ecbdbf1d core: add bar option "color_bg_inactive" (issue #732) 2020-06-21 18:59:54 +02:00
Sébastien Helleu 5b151d1639 irc: check that the first nick char is not a prefix char or chantype in function irc_nick_is_nick 2020-06-21 10:22:37 +02:00
Sébastien Helleu 4a42cda3a5 irc: change default chantypes from "#&+!" to "#&"
The default chantypes was conflicting with
irc_server_prefix_chars_default ("@+").
2020-06-21 10:22:04 +02:00
Sébastien Helleu 9446610452 tests: add test of function irc_nick_is_nick with invalid UTF-8 string 2020-06-20 17:44:48 +02:00
Sébastien Helleu 12051a506d irc: add support of UTF8MAPPING, add support of optional server in info "irc_is_nick" (closes #1528) 2020-06-20 17:28:28 +02:00
Sébastien Helleu bf964de939 tests: add tests on IRC function irc_channel_is_channel 2020-06-20 12:04:40 +02:00
Sébastien Helleu 2a60a25443 irc: return NULL in info "irc_is_channel" if arguments is NULL or empty string 2020-06-20 10:04:40 +02:00
Sébastien Helleu 86cb2d4256 doc: update German auto-generated file 2020-06-17 23:35:05 +02:00
Nils Görs 2dc3676af5 core: update German translations 2020-06-16 18:34:40 +02:00
Sébastien Helleu e41eeaf203 tests: add tests on IRC command ACCOUNT with colon before the account name 2020-06-16 08:07:55 +02:00
Sébastien Helleu eba9c31da0 irc: fix display of ACCOUNT message when the account name is ":*" (closes #1526) 2020-06-15 23:03:58 +02:00
Sébastien Helleu d0ae0fea49 irc: skip semicolon before account name in ACCOUNT message 2020-06-15 07:12:06 +02:00
Sébastien Helleu 340d6646a6 javascript: disable build by default and remove Debian packaging of JavaScript plugin (issue #360) 2020-06-13 14:34:13 +02:00
Sébastien Helleu 99a324b76f buflist: add "window" pointer in bar item evaluation only if it's not NULL (if bar type is "window") 2020-06-10 20:39:07 +02:00
Sébastien Helleu fad07d1ff2 core: update ChangeLog (issue #1514) 2020-06-07 11:10:06 +02:00
Sébastien Helleu 5034798e7a core: add contributor in AUTHORS.adoc (issue #1514) 2020-06-07 11:08:33 +02:00
Sébastien Helleu 08a00739f2 guile: fix compiler warning (issue #1514) 2020-06-07 11:07:48 +02:00
Joram Schrijver 297a140bea guile: fix memory leak in output port 2020-06-07 11:07:03 +02:00
Joram Schrijver cb5d90dcc7 guile: re-enable "/guile eval" (issue #1098)
With the output port now properly implemented for Guile >= 2.2, this
command works again.
2020-06-07 11:07:03 +02:00
Joram Schrijver cac45aab46 guile: fix printing of output to buffer (issue #1098)
The support for Guile 2.2 did not implement the custom port correctly,
and did not configure it to be the default output port. This caused
output from Guile to be printed straight to the TTY, breaking the
WeeChat interface.

Note that the port is unbuffered, so that code like

    (display "test")

immediately results in output, without an explicit call to force-output.
2020-06-07 11:07:03 +02:00
Sébastien Helleu e784a994b5 api: fix use of pointer after free in function key_unbind 2020-06-07 09:11:24 +02:00
Sébastien Helleu f52c706ee0 doc: remove tag "translation missing" in French plugin API reference 2020-06-06 08:59:25 +02:00
Sébastien Helleu 52b4f07414 doc: add URL to the Debian download page in user's guide 2020-06-06 08:54:15 +02:00
Sébastien Helleu 196a4e28aa irc: fix add of ignore with flags in regex, display full ignore mask in list of ignores (closes #1518) 2020-06-04 08:05:57 +02:00
Sébastien Helleu f41b17563f doc: update auto-generated files (issue #1250) 2020-06-03 08:00:24 +02:00
Sébastien Helleu 207642a3ec core: update translations (issue #1250) 2020-06-03 07:59:04 +02:00
Sébastien Helleu e80bf16d4a core: update ChangeLog (issue #1250) 2020-06-03 07:59:04 +02:00
Max Teufel 0027c23b7e irc: display account messages in buffers 2020-06-03 07:59:04 +02:00
Sébastien Helleu 1f2d90b643 core: update ChangeLog (issue #1517) 2020-06-02 23:33:27 +02:00
Sébastien Helleu 41cd8a438f core: add contributor in AUTHORS.adoc (issue #1517) 2020-06-02 23:32:19 +02:00
Christian Duerr c35e31cad2 Add Alacritty title escape sequence support 2020-06-02 23:27:51 +02:00
Sébastien Helleu 1dacb2de7f doc: add missing p-path pointer in hdata example (relay protocol) 2020-06-01 23:18:44 +02:00
Sébastien Helleu 03724423da doc: fix example of NULL pointer (relay protocol) 2020-06-01 23:18:16 +02:00
Sébastien Helleu 8818fbb233 tests: fix memory leak in test of function string_hex_dump 2020-05-31 14:51:41 +02:00
Sébastien Helleu 527aa3c563 doc: use a single line for some object examples (relay protocol) 2020-05-30 09:46:48 +02:00
Nils Görs e6e7339a69 doc: update German documentation 2020-05-29 15:41:24 +02:00
Sébastien Helleu b56843de87 doc: mention callback argument "callback_pointer" in differences with C API (scripting guide) 2020-05-27 22:26:31 +02:00
Sébastien Helleu c4832737e9 core: add CI with GitHub Actions, move codecov.io upload to GitHub Actions 2020-05-22 19:04:12 +02:00
Sébastien Helleu a43b0f074c doc: update German auto-generated files 2020-05-22 18:17:51 +02:00
Nils Görs a86c447972 core: update German translations 2020-05-22 17:34:12 +02:00
Sébastien Helleu 7f02e1804b doc: add missing "id" in commands input, sync, desync, ping and quit (relay protocol) 2020-05-21 10:49:41 +02:00
Sébastien Helleu aaa49d3188 tests: add tests on function string_input_for_buffer with custom command chars 2020-05-21 10:06:51 +02:00
Sébastien Helleu f4913d0a6b tests: add tests on function string_is_command_char with custom command chars 2020-05-21 10:06:42 +02:00
Sébastien Helleu 99b13aa671 tests: add test on function string_base64_decode with truncated base64 string 2020-05-21 09:56:35 +02:00
Sébastien Helleu a997893cfe tests: add test on function string_base16_decode with a char >= 0xA0 2020-05-21 09:55:40 +02:00
Sébastien Helleu 66d4590dab core: add base 16/32/64 encoding/decoding in evaluation of expressions 2020-05-21 09:36:35 +02:00
Sébastien Helleu 1994d5641d core: move functions string_base_encode and string_base_decode from plugin-api.c to wee-string.c 2020-05-21 00:02:24 +02:00
Sébastien Helleu 0ac936a5cf core: return -1 in case of error in functions string_base16_decode and string_base64_decode 2020-05-21 00:01:35 +02:00
Sébastien Helleu 8f308ea918 core: split function eval_replace_vars_cb into multiple functions 2020-05-20 00:04:45 +02:00
Sébastien Helleu 4a67c4a1ab irc: do not remove spaces at the end of users messages received (closes #1513)
The regression was introduced in version 2.5 by commit
2b70d71aa1.
2020-05-19 20:12:27 +02:00
Sébastien Helleu d1d3be6fd5 doc: add missing non-breaking spaces before colons and semicolons in French docs 2020-05-18 23:50:03 +02:00
Sébastien Helleu 62ccee9505 tests: run tests on plugins only if the plugins are enabled and compiled 2020-05-17 15:29:06 +02:00
Sébastien Helleu a489fa6eb4 core: update ChangeLog (issue #592) 2020-05-17 09:49:43 +02:00
Sébastien Helleu 0aa9f7de64 trigger: add (void) before calls to trigger_callback_execute when the returned value is ignored 2020-05-17 09:48:07 +02:00
Simmo Saan b14cf0ac3d trigger: only return trigger's return code when condition evaluates to true 2020-05-17 09:46:10 +02:00
Sébastien Helleu 8f6cc60a3f core: update ChangeLog (issue #1509) 2020-05-16 19:58:48 +02:00
Trygve Aaberge 40b5cf7ab0 Fix /window scroll_beyond_end when buffer has fewer lines than terminal height 2020-05-16 19:56:27 +02:00
Sébastien Helleu f500c972dd core: update translations (closes #1245, closes #1257) 2020-05-16 14:40:19 +02:00
Sébastien Helleu aa86d82796 core: rename info_hashtable "gui_focus_info" to "focus_info" (issue #1257) 2020-05-16 14:23:18 +02:00
Sébastien Helleu a3747fefcd core: move creation of info_hashtable from gui-focus.c to plugin-api-info.c (issue #1257) 2020-05-16 14:23:09 +02:00
Simmo Saan a5b851826e gui: make key optional in gui_focus_to_hashtable 2020-05-16 14:23:09 +02:00
Simmo Saan 3f0c6ac96b gui: add gui_focus_info hashtable info (#1245) 2020-05-16 14:23:09 +02:00
Sébastien Helleu 5e5e1c0cd7 core: update ChangeLog (issue #1505) 2020-05-16 13:41:11 +02:00
Sébastien Helleu dba94f0c5d core: add color in /buffer output for notification level, update translations (issue #1505) 2020-05-16 13:40:08 +02:00
Trygve Aaberge d2f49755c7 core: Allow displaying notify level with /buffer notify 2020-05-16 13:35:36 +02:00
Sébastien Helleu 1d357533b9 core: add bar items with nicklist groups and nicks/groups (closes #1506)
The bar item "buffer_nicklist_count" is now the number of displayed nicks
only (not groups).

New bar items:

- "buffer_nicklist_count_groups": number of groups displayed
- "buffer_nicklist_count_all": number of nicks and groups displayed
2020-05-16 11:27:41 +02:00
Sébastien Helleu 45a9ba3e9e doc: add missing arguments in "info" command (English and Japanese relay protocol) 2020-05-16 10:55:38 +02:00
Sébastien Helleu 40a14b4574 core: force buffer property "time_for_each_line" to 0 for buffers with free content (closes #1485) 2020-05-14 18:21:42 +02:00
Sébastien Helleu 4f4f32b9ed relay: increase default limits for IRC backlog options
Default value is changed for the following options:

* relay.irc.backlog_max_minutes: from 1440 to 0 (unlimited)
* relay.irc.backlog_max_number: from 256 to 1024
2020-05-12 18:56:40 +02:00
Nils Görs 2c303d1698 doc: update German documentation 2020-05-10 15:02:35 +02:00
Sébastien Helleu ec1b381521 core: set default size for input bar to 0 (automatic) (issue #1498) 2020-05-10 10:43:07 +02:00
Sébastien Helleu b2d1f37782 core: add default key alt-enter to insert a newline (issue #1498) 2020-05-10 10:39:57 +02:00
Sébastien Helleu 1c269e9a81 core: don't collapse consecutive newlines in lines displayed before the first buffer is created 2020-05-10 10:29:01 +02:00
Sébastien Helleu 8712e557d6 core: update ChangeLog ((issue #1500) 2020-05-10 10:08:57 +02:00
Trygve Aaberge d5e7cb2487 core: Don't remove consecutive newlines when pasting
Relates to #1498
2020-05-10 10:07:53 +02:00
Trygve Aaberge 1e2a8c4682 core: Don't collapse consecutive newlines in bar content
This allows blank lines to be displayed in the input bar when you input
multiple consecutive newlines.

Relates to #1498
2020-05-10 10:07:53 +02:00
Trygve Aaberge 867e07aa18 core: properly display newlines in input for all buffers
Supporting multiple lines in the input bar is useful even for buffers
without input_multiline set, because it enables you to compose multiple
lines at once, even if it is sent as multiple messages. It is
particularly useful when you paste multiple lines and want to edit some
of it before you send the message.
2020-05-10 00:10:38 +02:00
Sébastien Helleu 09f4f98ad9 core: update ChangeLog (issue #1497) 2020-05-09 19:43:24 +02:00
Simmo Saan 517c4c2903 irc: fix realname delimiter color in WHO/WHOX response 2020-05-09 19:31:34 +02:00
Sébastien Helleu f987e445ec core: properly display newlines in input when multiline is enabled in buffer (issue #984, issue #1063) 2020-05-09 18:23:33 +02:00
Trygve Aaberge 63714855d3 core: add an option for multiline input in a buffer (closes #984)
This allows the input callback function for a buffer to receive multiple
lines at once, instead of the message being split on newline before
being sent to the callback. It adds a new flag, input_multiline, to
control this. This flag defaults to 0 which is the current behavior.
2020-05-09 18:07:36 +02:00
Sébastien Helleu 30afb3debe core: add contributor in AUTHORS.adoc (issue #1456) 2020-05-09 15:29:47 +02:00
Sébastien Helleu 2c5a26b882 core: update ChangeLog (issue #1454, issue #1456) 2020-05-09 15:28:50 +02:00
Sébastien Helleu 1ed82fb93f core: remove top/left shadow in WeeChat logo (issue #1454, issue #1456) 2020-05-09 15:28:27 +02:00
Shun Sakai 702cc21810 Regenerate icons
- Inkscape SVG icon -> plain SVG icon
- regenerate PNG icons from SVG icon
2020-05-09 15:16:18 +02:00
Shun Sakai 4c71d4903e Add Inkscape SVG format icon 2020-05-09 15:16:18 +02:00
Sébastien Helleu 72dbae0d43 core: add note about triggers and argument "modifier_data" of weechat_print modifier callback 2020-05-09 10:22:33 +02:00
Sébastien Helleu 3505324096 api: use buffer pointer in argument "modifier_data" sent to weechat_print modifier callback (closes #42) 2020-05-09 10:08:18 +02:00
Sébastien Helleu 7f1aeae5fb core: update GnuTLS section in release notes 2020-05-08 20:01:15 +02:00
Sébastien Helleu 7aed668468 doc: update German auto-generated file 2020-05-08 19:59:07 +02:00
Nils Görs f3d5b06e48 core: update German translations 2020-05-08 19:38:00 +02:00
Sébastien Helleu 4c050b343d irc: reuse a buffer with wrong type "channel" when a private message is received (closes #869) 2020-05-08 13:27:20 +02:00
Sébastien Helleu 88bef0b1b1 core: rename functions hook_completion_{get_string|list_add} to completion_{get_string|list_add}
Old functions are kept for compatibility reasons.
2020-05-08 10:51:30 +02:00
Sébastien Helleu b7765ed960 trigger: fix truncated trigger command with commands /trigger input|output|recreate 2020-05-07 08:19:31 +02:00
Sébastien Helleu b1c3a29ac7 core: add include comparison operators in evaluation of expressions
New comparison operators:

- "==*": is matching mask, case sensitive (wildcard "*" is allowed)
- "!!*": is NOT matching mask, case sensitive (wildcard "*" is allowed)
- "==-": is included, case sensitive
- "!!-": is NOT included, case sensitive
- "=-": is included, case insensitive
- "!-": is NOT included, case insensitive
2020-05-05 20:43:45 +02:00
Sébastien Helleu 8df8d20f81 tests: replace compiler by different env lines (Travis CI) 2020-05-03 23:24:39 +02:00
Sébastien Helleu 162efe1f1b tests: switch to Ubuntu Bionic, use pylint3 to lint Python scripts (Travis CI) 2020-05-03 23:24:39 +02:00
Sébastien Helleu 2b05b64cc1 tests: fix pylint errors 2020-05-03 20:22:21 +02:00
Sébastien Helleu dff1bf6f0f exec: return NULL immediately if the task id is invalid 2020-05-03 16:33:02 +02:00
Sébastien Helleu 5438f62f74 exec: fix use of same task id for different tasks (closes #1491) 2020-05-03 16:07:11 +02:00
Sébastien Helleu df26301d03 doc: fix pylint errors 2020-05-03 14:48:25 +02:00
Sébastien Helleu 0cc76fbe72 core: update ChangeLog 2020-05-03 14:14:16 +02:00
Sébastien Helleu 6e3ffab2ef doc: remove extra separator lines in auto-generated files 2020-05-03 14:12:21 +02:00
Sébastien Helleu 505a91c600 doc: merge 53 autogen files into 11 files, move them to includes directory 2020-05-03 14:05:18 +02:00
Sébastien Helleu 7bcb8ff0d8 core: disable pylint of script docgen.py (Travis CI) 2020-05-03 11:55:13 +02:00
Sébastien Helleu c910b431f8 Revert "core: use pylint3 to lint Python scripts (Travis CI)"
This reverts commit 03ec80f7d3.
2020-05-03 11:54:25 +02:00
Sébastien Helleu 03ec80f7d3 core: use pylint3 to lint Python scripts (Travis CI) 2020-05-03 11:46:13 +02:00
Sébastien Helleu 15735b6cba doc: drop Python 2 support in script docgen.py
The script now requires Python 3.6+.
2020-05-02 17:23:31 +02:00
Sébastien Helleu 2c76343bda doc: fix path of cmdline_options.XX.adoc and man.XX.adoc (developer's guide) 2020-05-02 15:20:40 +02:00
Sébastien Helleu 6c93d1d711 doc: move files cmdline_options.xx.adoc and man.xx.adoc into "includes" directory 2020-05-02 15:13:13 +02:00
Sébastien Helleu 2ff18a8d46 doc: merge files man_*.xx.adoc into a single file man.xx.adoc 2020-05-02 14:48:10 +02:00
Sébastien Helleu 9e8cdd5e40 doc: merge files cmdline_options_debug.xx.adoc into cmdline_options.xx.adoc 2020-05-02 14:18:43 +02:00
Sébastien Helleu 71aa3dd451 doc: add missing key "compression" in handshake responses (relay protocol) 2020-05-02 12:50:49 +02:00
Sébastien Helleu 7699c0b757 relay: add "compression" in response to handshake command (weechat protocol)
The value can be "zlib" (default in relay) or "off".
2020-05-02 12:45:47 +02:00
Sébastien Helleu 46a2979aa1 doc: add examples of command responses in relay protocol 2020-05-02 12:28:14 +02:00
Sébastien Helleu 5b4d690ed7 relay: fix slow send of data to clients when SSL is enabled 2020-05-01 18:52:08 +02:00
Sébastien Helleu b3478fa712 doc: improve indenting in examples (relay protocol) 2020-04-29 19:12:58 +02:00
Sébastien Helleu 8353959e9a doc: update German auto-generated files 2020-04-29 19:12:40 +02:00
Nils Görs b3dc2a662f core: update German translations 2020-04-29 09:24:05 +02:00
Sébastien Helleu 909a976cee core: update translations 2020-04-28 16:40:41 +02:00
Sébastien Helleu 8c9eeb7fd4 core: update ChangeLog (issue #713) 2020-04-28 16:38:32 +02:00
Quentin Glidic f697a5b295 fifo: Open the fifo for writing too
That will make it survive, avoiding the need to reopen it.

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2020-04-28 16:37:39 +02:00
Sébastien Helleu b6cc42cbf7 relay: add command "completion" in weechat relay protocol (closes #1484) 2020-04-28 11:15:30 +02:00
Sébastien Helleu f2507a68a7 core: remove obsolete comment
The completion context can be "GUI_COMPLETION_NULL" if there's no base word
found (for example empty input).
2020-04-28 10:53:49 +02:00
Sébastien Helleu d1a427b67f api: return integer in function gui_completion_search (issue #1484) 2020-04-28 10:46:49 +02:00
Sébastien Helleu 2bd8e91b54 api: add hdata "completion_word" (issue #1484) 2020-04-27 22:18:03 +02:00
Sébastien Helleu d3020976d5 api: add functions completion_new, completion_search and completion_free (issue #1484) 2020-04-27 22:15:42 +02:00
Sébastien Helleu 0f1cee08bf relay: fix error message for an invalid buffer received in a command (weechat protocol) 2020-04-26 23:41:31 +02:00
Sébastien Helleu 6f22b82a7c debian: add patch to build on Ubuntu Groovy 2020-04-26 23:16:53 +02:00
Sébastien Helleu f3b9eb979d doc: protect monospace text with plus characters (relay protocol) 2020-04-25 00:29:31 +02:00
Sébastien Helleu fbb188d323 doc: protect monospace text with plus characters (plugin API reference) 2020-04-25 00:27:33 +02:00
Sébastien Helleu bac0af7494 doc: protect monospace text with plus characters (FAQ) 2020-04-25 00:20:09 +02:00
Sébastien Helleu e12925dc58 doc: protect monospace text with plus characters (scripting guide) 2020-04-25 00:12:51 +02:00
Sébastien Helleu 01eedd4565 doc: protect monospace text with plus characters (user's guide) 2020-04-24 23:53:13 +02:00
Sébastien Helleu 442f6a3bff doc: fix markup error in function hdata_update (plugin API reference) 2020-04-24 22:49:34 +02:00
Sébastien Helleu 33ea747040 core: add default key alt-shift-N to toggle nicklist bar 2020-04-24 22:45:07 +02:00
Sébastien Helleu 0abd0292da buflist: add default key alt-shift-B to toggle buflist 2020-04-24 22:44:13 +02:00
Sébastien Helleu 916c22a3d0 buflist: add options enable/disable/toggle in command /buflist 2020-04-24 22:39:44 +02:00
Sébastien Helleu 6e18f31cb2 core: translate log message when the signal SIGHUP is received 2020-04-21 22:39:51 +02:00
Sébastien Helleu 100440c8a1 core: restore signal "signal_sighup", and if eaten do not reload configuration 2020-04-21 22:34:42 +02:00
Tom Fitzhenry de1e61f7cd core: reload config on SIGHUP
fixes https://github.com/weechat/weechat/issues/1476
2020-04-22 01:25:08 +10:00
Sébastien Helleu 60b75f4677 tests: add tests on functions relay_auth_password_hash_algo_search and relay_auth_generate_nonce 2020-04-20 07:16:08 +02:00
Nils Görs 8ac9336d2a core: update German translations 2020-04-19 12:06:31 +02:00
Sébastien Helleu 5a16a2b49c core: add contributor in AUTHORS.adoc (issue #1477) 2020-04-19 11:34:42 +02:00
Sébastien Helleu 0b994d718d core: add command line option "--stdout" in weechat-headless binary (closes #1475, closes #1477) 2020-04-19 11:28:39 +02:00
Tom Fitzhenry 18a837c55b core: log to stdout, if headless
Fixes https://github.com/weechat/weechat/issues/1475 .
2020-04-19 11:05:22 +02:00
Sébastien Helleu d38701f99f tests: reduce number of iterations in PBKDF2 tests from 100000 to 1000
This speeds up tests by about 30%.
2020-04-19 10:56:25 +02:00
Sébastien Helleu bfe22fc66a tests: remove obsolete file test-relay-weechat-protocol.cpp 2020-04-19 10:56:11 +02:00
Sébastien Helleu 3d8607e34c core: disable build with obsolete autotools option "--disable-gnutls" (Travis CI) 2020-04-19 10:31:09 +02:00
Sébastien Helleu 862cf34ba7 doc: fix asciidoctor options in autotools build 2020-04-18 21:52:50 +02:00
Sébastien Helleu 350227419e doc: fix table sizes on small screens 2020-04-18 20:38:52 +02:00
Sébastien Helleu 3133ea9e79 doc: prevent lines from wrapping in <pre> elements 2020-04-18 20:37:54 +02:00
Sébastien Helleu b847a052c8 doc: update default trigger cmd_pass in user's guide 2020-04-18 15:43:38 +02:00
Sébastien Helleu 0d126c44dd trigger: do not hide values of options with /set command in cmd_pass trigger 2020-04-18 15:38:45 +02:00
Sébastien Helleu 5394ca6e10 doc: update auto-generated files with relay options 2020-04-18 11:35:27 +02:00
Sébastien Helleu e130ee7358 core: make GnuTLS a required dependency 2020-04-18 11:34:59 +02:00
Sébastien Helleu 80693dcea9 relay: move variable nonce in relay client structure 2020-04-18 09:30:51 +02:00
Sébastien Helleu 95b2d686a2 relay: allow only one handshake in weechat protocol 2020-04-18 00:33:15 +02:00
Sébastien Helleu 970c99961c relay: immediately close connection if the handshake failed (weechat protocol) 2020-04-18 00:08:11 +02:00
Sébastien Helleu 242c378290 doc: fix examples of handshake command (relay protocol) 2020-04-17 23:41:12 +02:00
Sébastien Helleu 95c908e83c relay: rename configuration options and keywords in handshake command (weechat protocol)
Configuration options renamed:

* relay.network.auth_password -> relay.network.password_hash_algo
* relay.network.hash_iterations -> relay.network.password_hash_iterations

Handshake command options renamed:

* password -> password_hash_algo

Handshake reply keys renamed:

* auth_password -> password_hash_algo
* hash_iterations -> password_hash_iterations
2020-04-17 23:34:27 +02:00
Sébastien Helleu 86a941e28e doc: use real nonce values in handshake/init examples (relay protocol) 2020-04-17 22:02:43 +02:00
Sébastien Helleu 94c6233100 doc: add missing "(id)" in commands handshake and init (relay protocol) 2020-04-17 21:25:37 +02:00
Sébastien Helleu 853a91d870 doc: replace "safest" by "most secure" (relay protocol) 2020-04-17 21:21:25 +02:00
Sébastien Helleu a5770a224a doc: add example of option "compression" in command "handshake" (relay protocol) 2020-04-17 21:06:21 +02:00
Sébastien Helleu 4f2b2700bc doc: update German auto-generated files 2020-04-17 20:59:36 +02:00
Sébastien Helleu de2c91609c doc: fix examples of password hashes in commands handshake and init (relay protocol) 2020-04-17 10:01:00 +02:00
Nils Görs c9f540e229 core: update German translations 2020-04-17 00:45:34 +02:00
Sébastien Helleu 4cc557f421 relay: fix "id" sent in response to handshake command (weechat protocol) 2020-04-16 10:27:37 +02:00
Sébastien Helleu 8560b09dad relay: add missing gcrypt lib in CMake and autotools files
This fixes build on Cygwin.
2020-04-15 22:50:27 +02:00
Sébastien Helleu 0c7d7c3fdc doc: revert arrows chars in relay protocol 2020-04-14 22:16:48 +02:00
Sébastien Helleu 9fa3609c85 relay: add command "handshake" in weechat relay protocol and nonce to prevent replay attacks (closes #1474)
This introduces a new command called "handshake" in the weechat relay protocol.
It should be sent by the client before the "init" command, to negotiate the way
to authenticate with a password.

3 new options are added:

* relay.network.auth_password
* relay.network.hash_iterations
* relay.network.nonce_size
2020-04-14 21:38:12 +02:00
Sébastien Helleu ccd45e4921 relay: update message displayed when the client is connected/authenticated 2020-04-12 20:24:39 +02:00
Sébastien Helleu 6d99f5da45 core: move line from "Bug fixes" to "New features" (issue #1358) 2020-04-12 19:42:58 +02:00
Sébastien Helleu b947512c9a relay: add option relay.network.auth_timeout 2020-04-12 19:36:12 +02:00
Sébastien Helleu fb6fc22c74 relay: add a function to send outqueue to the client 2020-04-12 19:25:21 +02:00
Sébastien Helleu 9f55f90bbf relay: update default colors for client status
Colors changed:

* relay.color.status_active: lightblue -> green
* relay.color.status_auth_failed: lightred -> lightmagenta
* relay.color.status_connecting: yellow -> white
* relay.color.status_waiting_auth: brown -> yellow

The color relay.color.status_disconnected remains lightred by default.
2020-04-12 18:02:27 +02:00
Sébastien Helleu 7ddc815726 relay: actually use the client status "waiting_auth" in irc and weechat protocols (closes #1358)
Now the status "waiting_auth" is used and displayed in the relay buffer.

When a client connects, there are now 2 messages (except for irc protocol if
there's no password required):

relay: new client on port 9000: 1/weechat/1.2.3.4 (waiting auth)
relay: client 1/weechat/1.2.3.4 authenticated

If the authentication fails, the messages are:

relay: new client on port 9000: 1/weechat/1.2.3.4 (waiting auth)
=!= relay: authentication failed with client 1/weechat/1.2.3.4
2020-04-12 17:46:46 +02:00
Sébastien Helleu 07505bb53c relay: add comments in truct t_relay_weechat_data 2020-04-12 15:35:03 +02:00
Sébastien Helleu b781dd92fb core: update ChangeLog (issue #1461) 2020-04-12 10:19:01 +02:00
Sébastien Helleu b907f6b643 core: fix indentation 2020-04-12 10:17:03 +02:00
Eli Schwartz 973a4b2e77 cmake: fix bugged WEECHAT_SHAREDIR definition exposed by DATAROOTDIR rename
configure.ac defines this to /usr/share/weechat, which means scripts can
load from this directory as a fallback for $HOME/.weechat/, but cmake
defines this instead as /usr/share, which means system-installed
fallback scripts would need to be installed to /usr/share/python/foo.py
instead, and that's completely insane!

Fix this discrepancy by creating a cmake define specifically for
WEECHAT_SHAREDIR based on the datarootdir, just like autotools does it.
2020-04-12 10:16:41 +02:00
Eli Schwartz 683464626d cmake: rename internal variable SHAREDIR to DATAROOTDIR
This is how other build systems (e.g. autotools) see the variable, and
cmake's own GNUInstallDirs defines the same. It more clearly describes
what this setting does vs. the ambiguous "sharedir".
2020-04-12 10:16:41 +02:00
Sébastien Helleu 8bdd540df7 trigger: evaluate arguments of command when the trigger is created (closes #1472) 2020-04-12 09:30:56 +02:00
Sébastien Helleu c9329f6fb1 core: add contributor in AUTHORS.adoc (issue #1460) 2020-04-11 09:51:10 +02:00
Sébastien Helleu 28ef93905b core: update ChangeLog (issue #1460) 2020-04-11 09:50:38 +02:00
Sébastien Helleu aa4a0bb272 core: remove file cmake/FindPackageHandleStandardArgs.cmake from top Makefile.am (issue #1460) 2020-04-11 09:50:33 +02:00
Danilo Spinella 62b61cef07 cmake: removed vendored FindPackageHandleStandardArgs 2020-04-11 09:48:20 +02:00
Sébastien Helleu 7fbd4c1079 tests: add missing include of locale.h
This fixes build of tests on FreeBSD.
2020-04-11 00:01:31 +02:00
Sébastien Helleu 9afe63b77a tests: fix name of tests 2020-04-10 23:43:27 +02:00
Sébastien Helleu 007fd03bc8 tests: add tests on calc functions
Functions tested:

- calc_operator_precedence
- calc_pop_value
- calc_list_free_cb
- calc_operation
- calc_operation_stacks
2020-04-08 21:38:51 +02:00
Sébastien Helleu a693125c81 tests: add missing include of stdio.h (issue #1469) 2020-04-07 22:20:11 +02:00
Sébastien Helleu d78ac827e9 core: fix memory leak in calculation of expression on FreeBSD (closes #1469)
The memory leak was caused by a bug in function setlocale on FreeBSD:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=243195

The fix is the following:

* Remove the calls to setlocale when formatting the result.
* The function snprintf is still called, and then is now locale dependent,
  for example in French the decimal separator is a comma instead of a dot.
* A new function calc_sanitize_decimal_number is introduced to "sanitize" a
  decimal number: keep only the decimal separator (replace it by a dot) and
  remove any other separator found.

Unit tests are added on these functions:

* calc_sanitize_decimal_number
* calc_format_result
2020-04-07 21:37:48 +02:00
Sébastien Helleu e998417f5c core: fix resize of a bar when its size is 0 (automatic) (closes #1470) 2020-04-07 19:00:33 +02:00
Sébastien Helleu fdd39c6b97 buflist: evaluate option buflist.look.sort (closes #1465)
The evaluation allows to use different sort for the bar items, for example with
such value:

    ${if:${bar_item.name}==buflist?number:short_name}

This sorts by number on the first bar item and by short name on the two other
bar items.
2020-04-06 20:49:17 +02:00
Sébastien Helleu a072d769fd doc: update Polish auto-generated files 2020-04-05 19:59:22 +02:00
Krzysztof Korościk b50f100dbb doc: update polish translation 2020-04-05 19:34:41 +02:00
Krzysztof Korościk e4892ff6f4 po: update polish translation 2020-04-05 13:45:24 +02:00
Sébastien Helleu 62fc851d81 doc: fix broken literal blocks in Japanese docs with Firefox (closes #1466) 2020-04-05 12:25:39 +02:00
Sébastien Helleu fae149b361 python: fix crash when invalid UTF-8 string is in a WeeChat hashtable converted to a Python dict (closes #1463) 2020-04-04 18:10:02 +02:00
Sébastien Helleu e4bd582a97 doc: update German auto-generated file 2020-04-03 20:56:07 +02:00
Nils Görs 7322561ccc core: update German translations 2020-04-03 20:04:48 +02:00
Sébastien Helleu 2f8fd4c0ef fset: fix help on options fset.format.option1 and fset.format.option2 2020-04-02 20:38:37 +02:00
Sébastien Helleu c59f812c74 tests: add tests on function irc_protocol_cb_353 with option irc.look.color_nicks_in_names set to on 2020-03-31 21:16:09 +02:00
Sébastien Helleu eb7b12f0da tests: add tests on IRC color functions
Functions tested:

- irc_color_convert_rgb2irc
- irc_color_convert_term2irc
- irc_color_for_tags
- irc_color_modifier_cb
- irc_color_weechat_add_to_infolist
2020-03-30 20:58:16 +02:00
Sébastien Helleu 052d4d1fc0 tests: add test with remapped color in function irc_color_decode 2020-03-30 20:55:43 +02:00
Sébastien Helleu 4481b93d35 irc: add missing modifier "irc_color_decode_ansi" in comment on function irc_color_modifier_cb 2020-03-30 07:31:11 +02:00
Sébastien Helleu 1098e157c9 core: remove directory usr/share/applications/ from cygport file 2020-03-29 11:55:20 +02:00
Sébastien Helleu 1ec6fd1116 Version 2.9-dev 2020-03-29 09:58:29 +02:00
Sébastien Helleu 7d5dc53cd9 Version 2.8 2020-03-29 09:39:36 +02:00
Sébastien Helleu e086bc44f5 core: add version 2.7.1 in weechat.spec 2020-03-29 09:30:35 +02:00
Sébastien Helleu 8738196b68 tests: add tests on remaining IRC protocol functions and callbacks 2020-03-28 16:06:45 +01:00
Sébastien Helleu f072eb8d78 tests: add tests on function irc_protocol_get_message_tags 2020-03-28 13:40:39 +01:00
Sébastien Helleu 03ffd396a4 irc: move functions irc_protocol_get_message_tags and irc_protocol_parse_time before protocol callbacks 2020-03-28 13:39:48 +01:00
Sébastien Helleu 2efad93220 irc: remove empty lines 2020-03-28 10:36:10 +01:00
Sébastien Helleu 349251feb1 irc: fix typo in description of message 001 2020-03-27 22:51:15 +01:00
Sébastien Helleu 0834286843 irc: add examples of NOTICE and PRIVMSG messages to channel ops 2020-03-27 22:50:52 +01:00
Sébastien Helleu 4245641767 tests: add tests on function irc_protocol_cb_ping 2020-03-26 23:05:34 +01:00
Nils Görs 359253f610 doc: update German documentation 2020-03-26 11:09:12 +01:00
Sébastien Helleu b82a887f2a tests: add tests on function irc_protocol_cb_part 2020-03-25 20:48:54 +01:00
Sébastien Helleu cecbad1803 tests: add test with no arguments for AWAY command 2020-03-24 16:58:11 +01:00
Sébastien Helleu 9fac350b3f tests: add tests on IRC protocol functions with not enough arguments 2020-03-24 16:56:57 +01:00
Sébastien Helleu fa931b46eb core: fix compiler warnings on Cygwin 2020-03-23 07:23:08 +01:00
Sébastien Helleu e6723bb5a8 doc: add question about configuration for a small terminal size in FAQ 2020-03-22 19:23:37 +01:00
Sébastien Helleu dcebdd6a55 doc: fix font size in literal blocks 2020-03-22 19:10:25 +01:00
Sébastien Helleu 186a465575 doc: update German auto-generated file 2020-03-22 14:25:44 +01:00
Nils Görs c6c485df43 core: update German translations 2020-03-22 14:09:43 +01:00
Sébastien Helleu d8f57628b7 Version 2.8-rc1 2020-03-22 11:10:15 +01:00
Sébastien Helleu d2f3e98f37 core: fix C++ compiler flags with autotools 2020-03-22 11:09:27 +01:00
Sébastien Helleu 8a9b6c1554 php: add detection of PHP 7.4 in autotools
Support of PHP 7.4 was added for CMake (in commit
72b107a970) but was still missing in autotools.
2020-03-22 10:58:09 +01:00
Sébastien Helleu 5ca64fc389 ruby: fix compiler warning on third argument of function weechat_ruby_hash_foreach_cb 2020-03-22 10:29:53 +01:00
Sébastien Helleu c14d5ba004 irc: use larger buffer for message in function irc_message_split_authenticate, just in case 2020-03-21 14:31:53 +01:00
Sébastien Helleu 4480c7b7cc irc: split AUTHENTICATE message in 400-byte chunks (closes #1459) 2020-03-21 14:28:53 +01:00
Sébastien Helleu bf42a1ebc5 irc: replace "char *" by "const char *" in arguments of split functions 2020-03-21 14:27:47 +01:00
Sébastien Helleu c29b45a0f2 api: add info "auto_connect" (closes #1453) 2020-03-20 20:42:05 +01:00
Sébastien Helleu c05cb595dc doc: add note about call to "free" on result of info_get (plugin API reference) 2020-03-20 07:08:14 +01:00
Sébastien Helleu 5c1dfcbe5b tests: add tests on functions irc_protocol_cb_mode and irc_protocol_cb_nick 2020-03-19 23:01:59 +01:00
Sébastien Helleu b45d461c3a tests: add tests on functions irc_protocol_cb_kick and irc_protocol_cb_kill 2020-03-18 22:27:15 +01:00
Sébastien Helleu a709dd05a6 tests: add tests on function irc_protocol_cb_join 2020-03-17 20:54:07 +01:00
Sébastien Helleu 332a4adc26 tests: add tests on function irc_protocol_cb_chghost 2020-03-16 20:49:50 +01:00
Sébastien Helleu f33cfc89a0 doc: update German auto-generated file 2020-03-15 07:20:57 +01:00
Sébastien Helleu e3ffe8c785 irc: set channel modes to NULL instead of "+" when no modes are remaining 2020-03-15 07:19:16 +01:00
Sébastien Helleu 851d1fb00a tests: rename function run_cmd_server to server_recv 2020-03-15 07:19:16 +01:00
Sébastien Helleu 4033c55fa2 irc: add another example of MODE message 2020-03-15 07:19:16 +01:00
Sébastien Helleu 00913de02f irc: remove unused variable "modes" from function irc_bar_item_buffer_name_content 2020-03-15 07:19:16 +01:00
Nils Görs 042c8fb02f core: update German translations 2020-03-14 21:20:12 +01:00
Sébastien Helleu aa3941fee2 tests: always run callback in calls to function config_file_option_set 2020-03-13 23:12:22 +01:00
Sébastien Helleu ba70173a2e irc: fix variable name in function irc_server_connect when GnuTLS is disabled 2020-03-12 07:35:04 +01:00
Sébastien Helleu 9545d37ab0 tests: add tests on IRC protocol functions and some callbacks
Functions tested:

* irc_protocol_is_numeric_command
* irc_protocol_log_level_for_command
* irc_protocol_tags
* irc_protocol_nick_address
* irc_protocol_cb_account
* irc_protocol_cb_away
* irc_protocol_cb_001
* irc_protocol_cb_005
2020-03-11 20:53:49 +01:00
Sébastien Helleu 5f94636b91 irc: rename argument in function irc_protocol_is_numeric_command 2020-03-10 19:19:38 +01:00
Sébastien Helleu 2fe27584ff irc: return 0 in function irc_protocol_is_numeric_command if the command is NULL or empty 2020-03-10 19:15:59 +01:00
Sébastien Helleu 8a5046f0a1 irc: add support of fake servers (no I/O, for testing purposes) 2020-03-09 21:09:55 +01:00
Sébastien Helleu 3590302183 irc: copy temporary server flag in command /server copy 2020-03-08 13:56:30 +01:00
Sébastien Helleu dcd10657b1 tests: add tests on functions weecrypto_totp_generate and weecrypto_totp_validate 2020-03-05 22:21:48 +01:00
Sébastien Helleu dabf32f213 tests: add tests on functions weecrypto_hash and weecrypto_hash_pbkdf2 with NULL hash 2020-03-04 08:24:46 +01:00
Sébastien Helleu c48815673d core: update ChangeLog (issue #1455) 2020-03-03 21:51:03 +01:00
Sébastien Helleu 91fe8da039 core: add detection of Ruby 2.7 in autotools 2020-03-03 21:50:17 +01:00
Lucas Kanashiro 60e86f929d core: add detection for Ruby 2.7 2020-03-03 21:49:32 +01:00
Sébastien Helleu 4afaacd34e tests: add tests on function weecrypto_get_hash_algo 2020-03-03 21:29:44 +01:00
Sébastien Helleu 7af8e6c652 core: add minimum libgcypt version 1.7.0 for SHA3 algorithms in comment of function weecrypto_hash 2020-03-02 22:57:44 +01:00
Sébastien Helleu 8ffe9be8a7 core: fix ChangeLog entry 2020-03-02 22:57:44 +01:00
Sébastien Helleu 3604abba7d core: fix copyright date in wee-crypto sources 2020-03-02 22:57:39 +01:00
Sébastien Helleu 2d7829b2d5 core: require libgcrypt >= 1.7.0 for SHA3 algorithms 2020-03-02 21:49:30 +01:00
Sébastien Helleu c6757f642f tests: fix generation of test scripts with Python 3.8 2020-03-02 21:39:27 +01:00
Sébastien Helleu dc7f1e81fb core: add CVE ids in ChangeLog 2020-03-02 20:42:26 +01:00
Sébastien Helleu 2d2b49bfaa relay: accept hash of password in init command with option "password_hash"
Allowed algorithms are:

* PBKDF2 (SHA256 or SHA512, salt, iterations)
* SHA256
* SHA512
2020-03-02 00:46:10 +01:00
Sébastien Helleu 1882686f8a script: rename variable length_hash to hash_size 2020-03-01 23:14:55 +01:00
Sébastien Helleu 0271eacbe5 relay: rename variable length_hash to hash_size 2020-03-01 23:14:55 +01:00
Sébastien Helleu 3157d1f06e api: add function crypto_hash_pbkdf2 2020-03-01 23:14:55 +01:00
Sébastien Helleu 9a6a27ef58 core: move crypto functions to wee-crypto.c, rename API function string_hash to crypto_hash 2020-03-01 21:24:27 +01:00
Sébastien Helleu c4ef3d6c2e core: merge functions string_hash_binary and string_hash into a single function string_hash 2020-03-01 16:41:28 +01:00
Sébastien Helleu 1ae2591458 core: add function secure_hash_pbkdf2 2020-03-01 14:26:24 +01:00
Sébastien Helleu 3472793d24 script: call function string_hash in script_repo_sha512sum_file to compute SHA512 hash
This removes dependency on libgcrypt in script plugin.
2020-03-01 09:08:48 +01:00
Sébastien Helleu bb363ab27f relay: call function string_hash_binary in relay_websocket_build_handshake to compute SHA1 hash
This removes dependency on libgcrypt in relay plugin.
2020-03-01 09:03:49 +01:00
Sébastien Helleu 7449bc8827 core: add support of CRC32 algorithm in hash functions 2020-02-29 21:12:13 +01:00
Sébastien Helleu 410a5b341f api: add functions string_hash_binary and string_hash 2020-02-29 21:02:42 +01:00
Sébastien Helleu 7e808e2ef7 core: call function secure_hash_binary in secure_derive_key to compute SHA512 hash 2020-02-29 15:46:25 +01:00
Sébastien Helleu 600c43dcf5 tests: add tests on function secure_derive_key 2020-02-29 15:46:25 +01:00
Sébastien Helleu 45fd04ee72 core: return 0 in case of invalid parameters received in function secure_derive_key 2020-02-29 15:46:25 +01:00
Sébastien Helleu e2135fc3eb core: add functions to compute binary/hex hash of data 2020-02-29 15:46:25 +01:00
Sébastien Helleu 91701cbdb4 php: fix crash when loading script with PHP 7.4 (closes #1452) 2020-02-28 21:28:29 +01:00
Nils Görs 3f67cfecc8 django.po: Update German translations 2020-02-26 15:38:23 +01:00
Sébastien Helleu 5655778afa core: update stable version in version.sh 2020-02-21 16:09:22 +01:00
Sébastien Helleu ff4e9d6e69 core: add version 2.7.1 in release notes 2020-02-20 22:17:05 +01:00
Sébastien Helleu a4fcd5570f core: add version 2.7.1 in ChangeLog 2020-02-20 22:14:28 +01:00
Sébastien Helleu 7352ddfcf0 build: ignore file usr/share/applications/weechat.desktop in Cygwin build 2020-02-20 22:09:12 +01:00
Sébastien Helleu 6daa09b0b8 script: fix memory leak in read of script repository file if it has invalid content 2020-02-18 21:04:21 +01:00
Sébastien Helleu c6e9e18aaa script: fix unexpected display of scripts list in buffer with command /script list -i 2020-02-16 08:04:58 +01:00
Sébastien Helleu 3fc0f1957e script: remove dead assignment of variable length in function script_action_list_input 2020-02-16 07:59:02 +01:00
Sébastien Helleu 4cb0e2dc55 doc: update auto-generated files 2020-02-15 07:39:41 +01:00
Nils Görs 774345cea9 core: update German translations 2020-02-14 18:54:36 +01:00
Sébastien Helleu 09aa6dbf06 core: add CVE-2020-8955 in ChangeLog 2020-02-14 07:41:56 +01:00
Sébastien Helleu 230f648584 irc: use irc_server_prefix_chars_default if server->prefix_chars is NULL 2020-02-10 21:18:47 +01:00
Sébastien Helleu 9904cb6d2e irc: fix crash when receiving a malformed message 352 (who)
Thanks to Stuart Nevans Locke for reporting the issue.
2020-02-10 07:37:11 +01:00
Sébastien Helleu 40ccacb433 irc: fix crash when a new message 005 is received with longer nick prefixes
Thanks to Stuart Nevans Locke for reporting the issue.
2020-02-09 20:04:45 +01:00
Sébastien Helleu 5edbeea338 core: fix unlikely memory leak in completion 2020-02-09 06:56:53 +01:00
Sébastien Helleu 7fde75797c doc: remove reference to obsolete script shell.py in FAQ 2020-02-08 21:59:14 +01:00
Sébastien Helleu 40e8e928cd doc: add question about timezone in FAQ 2020-02-08 21:59:14 +01:00
Sébastien Helleu 6f4f147d8e irc: fix crash when receiving a malformed message 324 (channel mode)
Thanks to Stuart Nevans Locke for reporting the issue.
2020-02-08 20:24:50 +01:00
Sébastien Helleu 39f2591cf5 tests: add tests on ANSI default text/background colors 2020-02-08 10:29:07 +01:00
Sébastien Helleu 2769989751 irc: remove nested switches in function irc_color_decode_ansi_cb 2020-02-07 21:29:46 +01:00
Sébastien Helleu b8d7af54e3 doc: add keys and actions on fset and script buffers in user's guide 2020-02-06 21:17:54 +01:00
Sébastien Helleu 60f2734184 irc: use dynamic string in function irc_color_encode 2020-02-05 21:51:11 +01:00
Sébastien Helleu 5b902eb804 irc: replace realloc by dynamic string in function irc_color_decode 2020-02-05 21:50:39 +01:00
Sébastien Helleu 6f69d98ee9 core: fix typo in French translation of /help fset 2020-02-04 22:04:18 +01:00
Sébastien Helleu 84648a5cd8 tests: add eval tests with debug enabled 2020-02-04 20:56:59 +01:00
Sébastien Helleu 15f7d7aeb1 core: update ChangeLog 2020-02-03 21:41:25 +01:00
Sébastien Helleu f76a5a8b57 tests: add unit tests on function util_file_get_content 2020-02-03 21:39:06 +01:00
Sébastien Helleu 3edae5af86 tests: add unit tests on function util_get_time_diff 2020-02-02 13:58:35 +01:00
Sébastien Helleu 27266ccd02 core: rename function util_get_uptime to util_get_time_diff
The two times must be sent as parameters, which makes the function not specific
to uptime. It is now easier to test the function in unit tests.
2020-02-02 13:57:39 +01:00
Sébastien Helleu 4e2718d234 irc: add nick changes in the hotlist (except self nick change) 2020-02-01 23:02:55 +01:00
Sébastien Helleu 95e34c71d6 core: update ChangeLog (issue #1442) 2020-01-30 22:07:32 +01:00
orbea 6d2d304136 Fix the build with guile-3.0.0.
v2: Update configure.ac too.

Signed-off-by: orbea <orbea@riseup.net>
2020-01-30 22:05:43 +01:00
Sébastien Helleu d2dda92daf tests: add eval tests with hdata variables of different types 2020-01-27 23:04:24 +01:00
Sébastien Helleu b7c09ed084 tests: add eval tests on conditions with text after closing parenthesis 2020-01-27 23:04:24 +01:00
Sébastien Helleu a6a6fb74c2 tests: add eval tests on conditions with leading and trailing spaces (ignored) 2020-01-27 23:04:24 +01:00
Sébastien Helleu 2839dc7ddf tests: add eval tests on "regex not matching" comparison 2020-01-27 23:04:24 +01:00
Sébastien Helleu 0975c407e0 tests: add eval tests with hdata list name and pointer 2020-01-27 23:04:24 +01:00
Sébastien Helleu 201b4da169 tests: add eval tests with buffer local variables 2020-01-27 23:04:24 +01:00
Sébastien Helleu 8107b5d162 tests: add eval tests on options with different types 2020-01-27 23:04:24 +01:00
Sébastien Helleu dd13393896 tests: add eval test with empty value for "date:" 2020-01-27 23:04:24 +01:00
Sébastien Helleu 70f0c81a2c tests: add eval tests with invalid values for "modifier:" 2020-01-27 23:04:24 +01:00
Sébastien Helleu 6d9a247df3 tests: add eval tests with invalid values for "repeat:" 2020-01-27 23:04:24 +01:00
Sébastien Helleu 1914ceb74f tests: add eval tests with invalid values for "cut:" and "cutscr:" 2020-01-27 23:04:22 +01:00
Sébastien Helleu 34bb43379a tests: add eval test with invalid value for "hide:" 2020-01-27 21:21:01 +01:00
Sébastien Helleu 070e86bd6e tests: add eval test with invalid regex group 2020-01-27 21:17:17 +01:00
Sébastien Helleu 1d77b9742e tests: add evaluation tests with ternary operator and escape of prefix ("$") 2020-01-27 21:09:54 +01:00
Sébastien Helleu d91d1ebb8c tests: add other calc tests with multiple operators
The order of operators are different from the initial test, so this increases
the code coverage in wee-calc.c.
2020-01-27 20:54:23 +01:00
Sébastien Helleu f980820395 logger: fix crash when disabling logging on a buffer (closes #1444)
Crash happens if the log file was deleted before disabling logging and if the
option logger.file.info_lines is on.
2020-01-25 13:42:12 +01:00
Sébastien Helleu 4d67af399d core: flush stdout/stderr before forking in hook_process function (closes #1441) 2020-01-20 21:15:15 +01:00
Sébastien Helleu 7cd566e8d3 core: reset variable "old_full_name" after send of signal "buffer_renamed" (issue #1428) 2020-01-12 17:09:47 +01:00
Sébastien Helleu b79cd6d546 relay: update buffers synchronization when buffers are renamed (closes #1428) 2020-01-12 17:03:16 +01:00
Sébastien Helleu 1fac6fd404 core: add variable "old_full_name" in buffer, set before the buffer is renamed (issue #1428) 2020-01-12 16:57:08 +01:00
Sébastien Helleu 4f9c4fecd3 irc: case-insensitive comparison on incoming CTCP command, force upper case on CTCP replies (closes #1439) 2020-01-11 11:02:41 +01:00
Sébastien Helleu 4f42f407c1 doc: remove space in example of hsignal irc_redirect_command (plugin API reference) 2020-01-05 09:15:40 +01:00
Sébastien Helleu 9ac4639c8c xfer: send signal "xfer_ended" after the received file has been renamed (closes #1438) 2020-01-04 11:19:47 +01:00
Sébastien Helleu feb6258910 core: update copyright dates 2020-01-04 10:41:26 +01:00
Sébastien Helleu 481da803cb buflist: add pointer "window" in bar item evaluation 2019-12-26 22:44:19 +01:00
Sébastien Helleu e11075e2cd doc: update German auto-generated file 2019-12-23 22:14:33 +01:00
Nils Görs cc7ac1284d core: update German translations 2019-12-23 20:00:02 +01:00
Sébastien Helleu 330149b9b6 relay: reject client with weechat protocol if password or totp is received in init command but not set in WeeChat (closes #1435) 2019-12-21 10:47:35 +01:00
Sébastien Helleu e612e63140 core: fix evaluation of condition with nested "if" (closes #1434) 2019-12-18 21:22:36 +01:00
Sébastien Helleu a13099aa63 core: add debug option "-d" in command /eval (issue #1434) 2019-12-18 21:18:59 +01:00
Sébastien Helleu 7e833ee60b core: add missing variable "proxy" in function hook_connect_print_log 2019-12-18 07:55:39 +01:00
Sébastien Helleu 72da71880c doc: update German auto-generated files 2019-12-15 21:22:51 +01:00
Nils Görs b341432887 core: update German translations 2019-12-15 21:17:33 +01:00
Sébastien Helleu bb62485aa9 irc: fix memory leak when the channel topic is changed 2019-12-15 07:27:45 +01:00
Sébastien Helleu 72b107a970 php: add detection of PHP 7.4 2019-12-14 11:25:07 +01:00
Sébastien Helleu 019bc79b0f core: update ChangeLog (issue #1433) 2019-12-13 21:34:01 +01:00
Sébastien Helleu 517bdaa4a8 core: update translations (issue #1433) 2019-12-13 21:33:48 +01:00
Sébastien Helleu 00485af7c9 core: add contributor in AUTHORS.adoc (issue #1433) 2019-12-13 21:31:30 +01:00
Matthew Horan f966329862 api: add info "weechat_headless" 2019-12-13 21:30:54 +01:00
Sébastien Helleu 5ae0485404 core: fix version in ChangeLog 2019-12-13 21:27:02 +01:00
Sébastien Helleu 60fa5a7555 core: update ChangeLog (issue #1431) 2019-12-13 21:22:45 +01:00
Sébastien Helleu 8d107912d6 core: update translations 2019-12-13 21:21:02 +01:00
Simmo Saan c487965e8b irc: add GnuTLS >= 3.1.0 requirement to ssl_password option help (issue #115) 2019-12-13 21:18:22 +01:00
Simmo Saan 139a7053e4 irc: fix compilation with GnuTLS < 3.1.0 (issue #115)
Due to this ssl_password will be partially unused with GnuTLS < 3.1.0.
In that case an encrypted SSL client cert import will simply fail.
2019-12-13 21:18:22 +01:00
Sébastien Helleu 9c227de6bf core: add directory /usr/share/applications/ in cygwin package "weechat" 2019-12-08 15:56:23 +01:00
Sébastien Helleu da28c392ea Version 2.8-dev 2019-12-08 10:18:33 +01:00
Sébastien Helleu 236dbe3f62 Version 2.7 2019-12-08 09:48:53 +01:00
Sébastien Helleu 632755d51d core: remove obsolete file FindTCL.cmake from root Makefile.am 2019-12-08 09:23:35 +01:00
Sébastien Helleu ee52c8ceae debian: fix debian/wheezy and ubuntu/trusty patches 2019-12-08 09:13:46 +01:00
Sébastien Helleu dda3ac7963 debian: update changelog 2019-12-08 08:23:07 +01:00
Sébastien Helleu e81d0787e4 debian: bump Standards-Version to 4.4.0 2019-12-08 08:22:45 +01:00
Sébastien Helleu 54aa8b82b3 doc: update Polish auto-generated files 2019-12-01 18:03:07 +01:00
Krzysztof Korościk 39ae55322d doc: updated polish traslation 2019-12-01 17:14:12 +01:00
Krzysztof Korościk 10f4e16695 po: update polish translation 2019-12-01 16:24:32 +01:00
Sébastien Helleu cfd7d31f95 doc: update German auto-generated files 2019-12-01 11:42:49 +01:00
Nils Görs 621b87ea8a core: update German translations 2019-11-29 09:17:37 +01:00
Sébastien Helleu c947d1575f core: exit makedist.sh script if command "cd" failed 2019-11-28 21:28:07 +01:00
Sébastien Helleu d876ec49fc core: replace "! -z" by "-n" in build-debian.sh 2019-11-28 21:27:43 +01:00
Sébastien Helleu d2300e62af core: replace "-o" by "||" in tools scripts 2019-11-28 21:26:45 +01:00
Sébastien Helleu a727516e0d core: run command and check return code on same line in tools scripts 2019-11-28 21:25:47 +01:00
Sébastien Helleu c0e48b0370 core: double quote variables in tools scripts 2019-11-28 21:23:59 +01:00
Sébastien Helleu 45509c3560 core: double quote variables in script autogen.sh 2019-11-27 20:17:48 +01:00
Sébastien Helleu fb8f0590b0 Version 2.7-rc1 2019-11-26 20:10:18 +01:00
Sébastien Helleu 3dab07d659 tests: add unit tests on hash algorithms with salt (issue #635) 2019-11-25 23:02:05 +01:00
Sébastien Helleu cd53fc61cf core: fix typo in French translation (issue #635) 2019-11-25 22:43:55 +01:00
Sébastien Helleu d66a02ca9d core: move each hash algorithm in a separate function (issue #635) 2019-11-25 22:31:36 +01:00
Sébastien Helleu 771b932dec doc: update auto-generated files with WeeChat options (issue #635) 2019-11-25 21:44:27 +01:00
Sébastien Helleu 41911babd3 core: remove obsolete translations 2019-11-25 21:42:57 +01:00
Sébastien Helleu f69079e3d0 core: update ChangeLog (issue #635) 2019-11-25 21:39:02 +01:00
Sébastien Helleu b43ab911fd core: add more info in /help weechat.look.nick_color_hash_salt (issue #635) 2019-11-25 21:38:58 +01:00
Sébastien Helleu 0044fa1902 core: remove allocation of string when salt is used (issue #635) 2019-11-25 21:38:55 +01:00
Simmo Saan 1a00368888 core: add option weechat.look.nick_color_hash_salt to allow for reshuffling of colors (issue #635) 2019-11-25 21:38:20 +01:00
Sébastien Helleu c634d6c56e doc: list the things removed by WeeChat on /plugin unload (user's guide) 2019-11-24 09:40:53 +01:00
Sébastien Helleu 661ef1e653 doc: fix translations in French plugin API reference 2019-11-24 09:32:35 +01:00
Sébastien Helleu 8223263e0e doc: remove flags "translation missing" in French docs 2019-11-24 09:29:02 +01:00
Sébastien Helleu a843e8fb14 doc: bump version of documentation generator 2019-11-22 21:01:14 +01:00
Sébastien Helleu e1692ab7e9 doc: add function to print counters, add separator lines (documentation generator) 2019-11-22 21:00:58 +01:00
Sébastien Helleu 73b3ff1491 doc: simplify function to compute SHA256 checksum, move function outside class AutogenDoc (documentation generator) 2019-11-22 20:59:58 +01:00
Sébastien Helleu 178b3eb8a6 doc: sort locales in documentation generator 2019-11-22 20:59:06 +01:00
Sébastien Helleu 2f99033384 doc: remove path option in documentation generator 2019-11-22 20:57:59 +01:00
Sébastien Helleu f1641604b0 doc: remove obsolete ignored options/completions in documentation generator 2019-11-22 20:57:52 +01:00
Sébastien Helleu e743e731ec irc: do not automatically open a channel with name "0" (closes #1429)
"0" is a special channel name which causes a client to leave all the channels
it is presently on.

Note that when option irc.look.buffer_open_before_join is on, WeeChat may still
open channel buffers with an invalid channel name like "1".  The server should
reply something like that, displayed on the server buffer:

  1: No such channel
2019-11-21 20:35:32 +01:00
Sébastien Helleu 64aae8b959 core: update build directories in .gitignore 2019-11-19 07:40:11 +01:00
Sébastien Helleu e4a9f95e38 core: remove arguments for endforeach() in CMake files 2019-11-18 20:18:54 +01:00
Sébastien Helleu 7aa24ecd88 core: add different icons sizes (16x16 to 512x512) (closes #1347) 2019-11-18 20:05:43 +01:00
Sébastien Helleu 8cde654c6f core: set buffer name, short name and title only if the value has changed
This fix reduces the number of messages "_buffer_title_changed" sent to the
weechat relay clients in IRC private buffers (this message was sent for every
new message received in the private buffer).
2019-11-17 21:48:17 +01:00
Sébastien Helleu 9a40aa04f8 core: rename label "enhancement" to "feature" 2019-11-15 21:06:15 +01:00
Sébastien Helleu 3a03184d7a irc: mention /filter command in /help irc.look.smart_filter 2019-11-15 08:38:40 +01:00
Sébastien Helleu b5804bd64d core: add labels in GitHub issue templates 2019-11-14 07:24:54 +01:00
Sébastien Helleu 005e5fd8f5 core: fix French translation of "uptime" 2019-11-13 21:17:14 +01:00
Sébastien Helleu fe7a05cb1f core: update ChangeLog 2019-11-12 21:20:43 +01:00
Eli Schwartz 76c6f52e8c build: support python 3.8
In python 3.8, in order to link to -lpython3.8, you need to use the
exported pkg-config interface 'python3-embed' (or 'python3-config --libs
--embed'), see https://bugs.python.org/issue36721 for details.
2019-11-12 21:19:47 +01:00
Eli Schwartz 5c8ac69f73 python: use more idiomatic cmake pkg-config linking
cmake documentation is absolutely atrocious, and I don't know why they
mention all the wrong things to use, and the cargo cult of successfully
writing a cmake build definition (copy-pasting what works from other
projects) also uses all the wrong things. But it turns out it is
possible to correctly link a PkgConfig target despite all that, at
least, *iff* you use cmake >= 3.13. I've chosen option 2, which is to
vendor in cmake >= 3.13's FindPkgConfig module in the previous commit.

Using IMPORTED_TARGET GLOBAL in a pkg-config check will result in a
proper linker target being created. For comparison, this is like using
meson's dependency() target, except meson forces you to do this by
default. The result is that the build system's internal representation
of how to link something, is used instead of manually passing build
flags defined in variables.

This is an important distinction to make, because cmake does not have a
list datatype, and instead turns lists into strings separated by ';'
which are indistinguishable from, like, strings which contain ';'
characters. When you pass the resulting list-which-isn't-really-a-list
to link an executable/library, you either need to preprocess the
variable to replace ';' with ' ' (just in case there are multiple
elements) or use cmake functions which magically know to do this
themselves -- or at least, I assume there are cmake functions that
correctly handle so-called "lists", or there would be no need for
"lists" to exist.

The IMPORTED_TARGET will define a bunch of INTERFACE_* properties which
do seem to do exactly this. The resulting build definition should
actually, correctly, link python, thereby fixing #1398 in a better way.
2019-11-12 21:19:47 +01:00
Eli Schwartz 682e558f76 cmake: vendor in a new version of FindPkgConfig
The current one is anciently ancient, and dates back to commit
4d2925ef1c which vendored this "for old
versions of cmake". Well, currently it just stops using new versions of
FindPkgConfig, so we're stuck on the 2006 version from cmake 2.5.0.

Instead of deleting it entirely (the minimum version of cmake is
currently 3.0) make this vendored file continue to be useful by using it
to vendor in the latest version of FindPkgConfig from cmake 3.16.0-rc3
with a bunch of useful improvements.
2019-11-12 21:19:47 +01:00
Sébastien Helleu a36e17abf9 debian: disable javascript plugin on Debian Sid and Ubuntu Eoan 2019-11-11 08:38:05 +01:00
Sébastien Helleu 38bb297d91 core: update ChangeLog (issue #1420) 2019-11-10 11:06:49 +01:00
Sébastien Helleu 421d6481da core: link with libnetwork and not libpthread on Haiku (autotools) (issue #1420) 2019-11-10 11:06:39 +01:00
Jerome Duval 8d991f1284 Haiku: link libnetwork, not libpthread. 2019-11-10 11:04:47 +01:00
Sébastien Helleu 9f8162651f irc: set option irc.look.display_pv_warning_address to off by default (issue #892)
This is because the bitlbee server causes the warning to be displayed when it
is not expected (the address of remote nick changes multiple times on login).
2019-11-08 21:27:12 +01:00
Sébastien Helleu 17d3032b73 core: move line from "New features" to "Bug fixes" 2019-11-07 19:46:55 +01:00
Sébastien Helleu 90aec7bec7 core: update URL of WeeChat blog 2019-11-05 07:50:30 +01:00
Sébastien Helleu 07577194c5 doc: add examples of division in ${calc:...} (plugin API reference) 2019-11-04 19:01:31 +01:00
Sébastien Helleu 9264de9ce0 doc: fix list of "updated in" versions in function string_eval_expression (plugin API reference) 2019-11-04 18:59:32 +01:00
Sébastien Helleu 4f7a51f72b core: fix sentence in release notes 2019-11-03 21:10:48 +01:00
Sébastien Helleu 6507544947 irc: fix typo and examples in /help server 2019-11-03 14:54:45 +01:00
Nils Görs cdcbdc94e0 core: update German translations 2019-11-03 14:48:43 +01:00
Sébastien Helleu 10f85df867 irc: set raw filter to "*" if local variable "filter" was not set after /upgrade on raw buffer 2019-11-03 09:55:09 +01:00
Sébastien Helleu 7e07954fbf irc: restore irc raw filter after /upgrade (issue #1000) 2019-11-03 09:28:16 +01:00
Sébastien Helleu 015ae4a94b irc: add filters on raw buffer (closes #1000) 2019-11-03 09:01:44 +01:00
Sébastien Helleu 4a86ab55d8 fset: add comment on filter by evaluated expression 2019-10-30 19:41:56 +01:00
Sébastien Helleu 7cac32fc1f fset: fix filter variable used to match filter string 2019-10-30 19:41:31 +01:00
Sébastien Helleu c6161d0e4a plugins: sort options added in configuration sections 2019-10-23 19:45:06 +02:00
Sébastien Helleu ecc7edda9e core: optimize search of options in configuration sections
Since options are sorted in sections, it is faster to search from the last
option to the first one.

For configuration files with many options in a single section (like
plugins.conf), the load of configuration file is about 2 to 3x faster.
2019-10-23 19:45:06 +02:00
Sébastien Helleu fbc9faed42 doc: add keys to type for the example message with color codes (user's guide) 2019-10-22 07:54:50 +02:00
Sébastien Helleu c99889cb15 core: fix typo in French translation of /help fset 2019-10-21 19:14:31 +02:00
Sébastien Helleu f85f097c25 debian: disable javascript plugin on Ubuntu Focal 2019-10-20 21:27:21 +02: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 7e6d933d74 doc: update German auto-generated file 2019-10-13 21:05:32 +02:00
Nils Görs 92853e1b47 core: update German translations 2019-10-13 18:54:48 +02:00
Sébastien Helleu 577a932201 core: add info about Python 3 and strings in release notes 2019-10-13 08:18:38 +02:00
Sébastien Helleu 899550ca94 doc: fix typo in scripting guide 2019-10-13 08:18:30 +02:00
Sébastien Helleu ab6a991de2 doc: fix language in links to plugin API reference (scripting guide) 2019-10-12 23:26:16 +02:00
Sébastien Helleu 2dbc283023 doc: add links on signals and hsignals (plugin API reference) 2019-10-12 23:17:33 +02:00
Sébastien Helleu 513f5a1ee7 python: send "bytes" instead of "str" to callbacks in Python 3 when the string is not UTF-8 valid (issue #1220, closes #1389) 2019-10-12 22:21:48 +02:00
Sébastien Helleu 8fc8f728d4 core: add reverse of string for screen in evaluation of expressions with "revscr:" 2019-10-12 20:14:36 +02:00
Sébastien Helleu 9535f4a70b doc: update German auto-generated file 2019-10-11 22:45:08 +02:00
Nils Görs f85adf5cf1 core: update German translations 2019-10-11 22:41:19 +02:00
Sébastien Helleu 876a0a1609 irc: add option irc.look.display_pv_warning_address (closes #892)
If the address of remote nick changes in a private buffer, a warning is
displayed.
2019-10-11 20:26:34 +02:00
Sébastien Helleu 1dda5ffd02 doc: add value -1 for notify level in function hook_line (plugin API reference) 2019-10-10 18:39:31 +02:00
Sébastien Helleu dc9964ccc6 irc: add server option "ssl_password" (issue #115, issue #1416) 2019-10-09 21:40:43 +02:00
Sébastien Helleu 37415e61d5 core: update translations (issue #115, issue #1416) 2019-10-09 21:39:25 +02:00
Simmo Saan 116150c2fc irc: add server option ssl_password for SSL certificate private key password (closes #115) 2019-10-09 21:37:41 +02:00
Sébastien Helleu 5398f5d566 irc: fix compiler warning on uninitialized variable 2019-10-09 07:17:32 +02:00
Nils Görs 02c63beef9 core: add German translations in weechat.desktop 2019-10-08 20:54:25 +02:00
Sébastien Helleu 6619219297 doc: add value -1 for notify level in trigger of type line (user's guide) 2019-10-08 20:30:59 +02:00
Sébastien Helleu 6fa0f49a28 core: update ChangeLog (issue #982, issue #408) 2019-10-07 21:06:55 +02:00
Sébastien Helleu afe64aefbf core: add keywords in weechat.desktop (issue #982, issue #408) 2019-10-07 21:06:55 +02:00
Sébastien Helleu 85f9ead7b8 core: add French translations in weechat.desktop (issue #982, issue #408) 2019-10-07 21:06:55 +02:00
Sébastien Helleu b35c94cc91 core: install weechat.desktop with autotools (issue #982, issue #408) 2019-10-07 21:06:50 +02:00
Lucas Hoffmann 8054cb0ee1 core: add a desktop file (closes #982, closes #408) 2019-10-07 20:47:43 +02:00
Sébastien Helleu cbeecc0cde core: ensure completion_item is not NULL before using it 2019-10-06 21:47:56 +02:00
Sébastien Helleu 528c769e71 core: fix crash in completion of filenames 2019-10-06 21:45:27 +02:00
Sébastien Helleu d2a63b2b44 doc: update German auto-generated files 2019-10-06 19:17:15 +02:00
Sébastien Helleu 86e623a554 doc: fix chapter on IRC server connection in quickstart guide 2019-10-06 19:12:47 +02:00
Sébastien Helleu c391fe5fa5 core: update ChangeLog (closes #630) 2019-10-06 19:11:15 +02:00
Sébastien Helleu c3b33859ae core: fix long lines 2019-10-06 19:09:29 +02:00
Sébastien Helleu f2551b8403 Merge remote-tracking branch 'origin/pr/630' 2019-10-06 19:07:25 +02:00
Sébastien Helleu 98d9dc1a03 core: update ChangeLog (closes #610, closes #617, closes #619) 2019-10-06 18:14:50 +02:00
Sébastien Helleu e6570d6e3a core: fix line too long, add comment on argument "with_suffix" 2019-10-06 18:11:58 +02:00
Sébastien Helleu e47002884a core: count suffix in alignment computed for context info 2019-10-06 18:08:52 +02:00
Sébastien Helleu c77bccba87 Merge remote-tracking branch 'origin/pr/619' 2019-10-06 18:08:17 +02:00
Sébastien Helleu af5951c123 Merge pull request #1415 from ingank/doc-de-improve-pr
doc: update German documentation
2019-10-06 17:25:00 +02:00
Ingolf Ankert 1eb54f4065 doc: update German documentation
Reviewed: from @flashcode
2019-10-06 17:14:07 +02:00
Sébastien Helleu de0209e6d6 Merge pull request #1414 from ingank/improve-po-de
core: update German translations
2019-10-06 17:03:27 +02:00
Ingolf Ankert 903cb0baf3 doc: update German documentation
fix: typos in doc/de/weechat_faq.de.adoc
fix: typos, spelling, grammar in doc/de/weechat_quickstart.de.adoc
2019-10-06 16:55:26 +02:00
Ingolf Ankert 5518b56561 core: update German translations 2019-10-06 15:53:57 +02:00
Sébastien Helleu 53360a7909 logger: fix write in log file if it has been deleted or renamed (closes #123) 2019-10-06 13:36:35 +02:00
Sébastien Helleu 529af39612 doc: translate description of logger masks in user's guide 2019-10-06 10:19:01 +02:00
Sébastien Helleu 79e124d6e4 Merge pull request #1413 from FiXato/patch-2
Added introductory description of Logger masks
2019-10-06 10:18:32 +02:00
Sébastien Helleu d3254262ac doc: fix styles in plugin API reference 2019-10-06 10:01:49 +02:00
Sébastien Helleu 587f5bf15b irc: use path from option xfer.file.upload_path to complete filename in command "/dcc send" (closes #60) 2019-10-06 09:38:52 +02:00
Sébastien Helleu 6e382d26a9 core: add optional default path (evaluated) in completion "filename" (issue #60) 2019-10-06 09:38:20 +02:00
Sébastien Helleu 88aa82d672 core: add support of modifiers in evaluation of expressions with "modifier:name,data,string" (issue #60) 2019-10-06 09:13:35 +02:00
Sébastien Helleu 1a0ba4a9dc api: add modifier "eval_path_home" (issue #60) 2019-10-06 09:06:55 +02:00
Sébastien Helleu e921b9f432 core: fix comments on modifier callback functions in plugin API 2019-10-06 08:56:12 +02:00
Filip H.F. "FiXato" Slagter 86dcbc09c0 Added introductory description of Logger masks
While the documentation for Logger filename masks contained examples, it didn't actually describe it would try to match in order of descending specificity.
2019-10-05 20:43:29 +02:00
Sébastien Helleu 587ddf7222 core: add reference to issue #66 for hook_line function in ChangeLog 2019-10-05 18:55:27 +02:00
Sébastien Helleu c521392207 core: add quotes around commands with arguments in ChangeLog 2019-10-05 18:18:07 +02:00
Sébastien Helleu 1da5b9126e core: fix typo in ChangeLog 2019-10-05 18:17:49 +02:00
Sébastien Helleu 3c0bdc18f3 xfer: add option xfer.file.download_temporary_suffix with default value ".part" (closes #1237) 2019-10-05 18:11:39 +02:00
Sébastien Helleu 6c23f632b1 xfer: fix memory leak when a xfer is freed and when the plugin is unloaded 2019-10-05 17:49:07 +02:00
Sébastien Helleu 3e189fa60d irc: fix typo in /help links 2019-10-04 20:44:09 +02:00
Sébastien Helleu f9dcb573ca doc: update German auto-generated files 2019-10-03 20:39:48 +02:00
Sébastien Helleu 8c31306f30 Merge pull request #1410 from ingank/ingank/german-translation
core: update German translations
2019-10-03 20:32:37 +02:00
Sébastien Helleu d2be0e8e1d Merge pull request #1409 from ingank/master
doc: update German documentation
2019-10-03 20:32:10 +02:00
Ingolf Ankert b03a4e192c core: update German translations 2019-10-03 15:25:42 +02:00
Sébastien Helleu 70fd722278 logger: add option logger.file.color_lines (closes #528, closes #621) 2019-10-02 20:44:12 +02:00
Ingolf Ankert f3376f4264 doc: update German documentation 2019-10-01 21:48:44 +02:00
Sébastien Helleu e386965aba api: add modifier "color_encode_ansi" (issue #528) 2019-10-01 18:31:41 +02:00
Sébastien Helleu 90f711a965 core: add function to convert WeeChat colors to ANSI colors (issue #528) 2019-10-01 18:31:41 +02:00
Sébastien Helleu 177fa6c528 core: add support of reverse video in ANSI color codes 2019-10-01 18:31:41 +02:00
Sébastien Helleu a8ca4b5b3a tests: add tests on GUI color functions 2019-10-01 18:31:41 +02:00
Sébastien Helleu daad558291 core: fix typos in comments 2019-10-01 18:31:41 +02:00
Sébastien Helleu baf8f635ff core: fix style in CMake files 2019-10-01 18:31:41 +02:00
Sébastien Helleu 779420d50d core: fix typo in ChangeLog 2019-10-01 18:29:59 +02:00
Sébastien Helleu 92cad366a2 core: fix typos in French translations 2019-09-30 21:46:56 +02:00
Sébastien Helleu cddb314a10 doc: update German auto-generated files 2019-09-28 15:06:11 +02:00
Ingolf Ankert 45a55895fb core: update German translations 2019-09-28 14:42:32 +02:00
Sébastien Helleu 2067136506 core: add contributor in AUTHORS.adoc (issue #1406) 2019-09-27 20:56:17 +02:00
Sébastien Helleu 41cf758864 core: update ChangeLog (issue #1406) 2019-09-27 20:56:17 +02:00
Kyle Sabo 0678e0c9b3 core: fix build on Alpine (closes #1406) 2019-09-27 20:56:09 +02:00
Sébastien Helleu ae38b11407 irc: add "user" in output of irc_message_parse (closes #136) 2019-09-27 20:52:00 +02:00
Sébastien Helleu 3f33b327b1 logger: move logger backlog functions to logger-backlog.c 2019-09-26 21:26:23 +02:00
Sébastien Helleu 8ab6422520 debian: switch to Guile 2.2 in Debian build
Guile 2.2 is now used by default in Debian/Ubuntu builds, except on these old
distribution versions where only Guile 2.0 is available:

- Debian Stretch
- Debian Jessie
- Debian Wheezy
- Ubuntu Xenial
- Ubuntu Trusty
2019-09-25 20:58:22 +02:00
Nils Görs 4b0e6d5da2 core: update German translations 2019-09-24 21:43:30 +02:00
Sébastien Helleu 3a356f109f core: add power operator "**" in calc expressions (issue #997) 2019-09-24 21:03:56 +02:00
Sébastien Helleu 7d795c4d53 core: fix wrong results with the unary minus in calc expressions 2019-09-24 20:49:48 +02:00
Sébastien Helleu dc5e334f5c doc: update German auto-generated file 2019-09-23 23:10:40 +02:00
Nils Görs aa45748bff core: update German translations 2019-09-23 22:07:41 +02:00
Sébastien Helleu fe193a350b core: update translations (issue #683) 2019-09-23 21:31:09 +02:00
Simmo Saan e437613acb irc: add separate options for kick/kill message coloring (closes #683)
Add new options irc.color.message_kick and irc.color.reason_kick to be used
for coloring KICK and KILL messages.
2019-09-23 21:22:49 +02:00
Sébastien Helleu c5ffc3917f doc: update German auto-generated files 2019-09-22 21:37:23 +02:00
Nils Görs 6942444a2b core: update German translations 2019-09-22 21:32:46 +02:00
Sébastien Helleu 39b6fb6137 irc: remove option irc.network.channel_encode, add server option "charset_message" (closes #832)
This new option controls which part of the IRC message is decoded/encoded to
the target charset, and the new default behavior is to decode/encode the whole
IRC message (behavior in WeeChat >= 1.3 was to decode/encode only the text by
default).
2019-09-22 20:41:00 +02:00
Sébastien Helleu 12ee9cb75c core: build with Guile 2.2 on Cygwin (issue #1098) 2019-09-21 15:54:12 +02:00
Sébastien Helleu bed26f42a1 core: remove detection of Ruby 1.8, since Ruby >= 1.9.1 is now required (issue #1404) 2019-09-21 15:42:23 +02:00
Sébastien Helleu fbb0e85525 core: update ChangeLog (closes #1098) 2019-09-21 14:53:52 +02:00
Sébastien Helleu afce4804f5 guile: disable "/guile eval" as this does not (yet) work with Guile >= 2.2 (issue #1098) 2019-09-21 14:48:09 +02:00
Sébastien Helleu 387a44f5ec guile: add support of Guile 2.2 (issue #1098) 2019-09-21 14:48:05 +02:00
Sébastien Helleu e1a4612797 core: ignore color codes in ${length:xxx} and ${lengthscr:xxx} 2019-09-21 13:54:36 +02:00
Nils Görs de45636388 core: update German translations 2019-09-21 08:31:40 +02:00
Sébastien Helleu dcfc4e8ed5 core: add "length:xxx" and "lengthscr:xxx" in evaluation of expressions 2019-09-21 07:56:21 +02:00
Nils Görs 1919f23c2d core: update German translations 2019-09-20 23:13:03 +02:00
Sébastien Helleu bd3f1b5f00 doc: add file test-core-calc.cpp in developer's guide 2019-09-20 21:42:44 +02:00
Sébastien Helleu 92ecbe29ae core: move bugs below new features in ChangeLog 2019-09-20 21:37:21 +02:00
Sébastien Helleu 997894edc0 core: add calculation of expression in evaluation of expressions with "calc:..." (issue #997) 2019-09-20 21:37:01 +02:00
Sébastien Helleu 0109c51937 core: add chapter about CMake fatal errors on missing dependencies in release notes 2019-09-20 09:25:26 +02:00
Sébastien Helleu a81d266b31 doc: update auto-generated files 2019-09-20 09:25:03 +02:00
Nils Görs 4fca523b17 core: update German translations 2019-09-19 21:56:38 +02:00
Sébastien Helleu 5cf419dd63 core: remove extra spaces in arguments of /help uptime and /help version 2019-09-19 21:25:27 +02:00
Sébastien Helleu 85f6c5eeda script: add options "-ol" and "-il" in command /script, display "No scripts loaded" if no scripts are loaded 2019-09-19 21:20:55 +02:00
Sébastien Helleu 8a3ffda0a2 doc: set minimum Ruby version to 1.9.1 in user's guide (closes #1404)
This is now required after the changes introduced by commit
156d855787 in version 2.6.
2019-09-18 21:18:40 +02:00
Sébastien Helleu e04c30f00b doc: update German auto-generated files 2019-09-18 13:58:56 +02:00
Nils Görs 4324ff7c4b Merge branch 'master' of github.com:weechat/weechat 2019-09-18 13:52:31 +02:00
Nils Görs 29cd012627 core: update German translations 2019-09-18 13:51:46 +02:00
Sébastien Helleu d26893a70d core: update ChangeLog (closes #1400) 2019-09-17 21:29:28 +02:00
Tobias Stoeckmann f7b84fcc67 Fixed segfault during excessive evaluation.
It is possible to trigger a segmentation fault while processing
an evaluation of repeating string. On a Linux 64 bit system,
enter this (or adjust arguments for 32 bit accordingly):

/eval -n ${repeat:1073741824,----}

It will overflow an integer calculation because int instead of
size_t is used. Proper check of int limitations fixes this issue.

I haven't changed this specific piece of code to size_t because it
would crash in other parts of the code tree instead. For now, int
is a limitating factor when it comes to strings (and should be
enough for sane use cases).

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
2019-09-17 21:26:52 +02:00
Sébastien Helleu 63a05d72d9 buflist: fix extra spaces between buffers when conditions are used to hide buffers (closes #1403)
This is a regression introduced in version 2.6 by commit
bf21ca072d.
2019-09-17 21:21:28 +02:00
Sébastien Helleu 40eb257d0d doc: update German auto-generated file 2019-09-17 09:02:45 +02:00
Nils Görs 8e267ad9f3 core: update German translations 2019-09-17 08:41:54 +02:00
Sébastien Helleu e8be4f62af core: mention possible background color in /help weechat.look.nick_color_force 2019-09-16 20:58:12 +02:00
Sébastien Helleu ea0bdbab1b debian: fix build of packages on Debian Jessie (issue #916, issue #956)
With the new errors on missing libraries in CMake, the PHP plugin must be
explicitly disabled.
2019-09-16 08:46:00 +02:00
Sébastien Helleu d690544499 core: update ChangeLog 2019-09-15 14:53:02 +02:00
Sébastien Helleu ab768ce902 core: remove obsolete file FindTCL.cmake (issue #916, issue #956)
This is file is provided by CMake and is not needed any more.  Moreover, it
causes an error on FreeBSD (TCL not found), even if TCL was properly detected
and used during the build.
2019-09-15 14:48:52 +02:00
Sébastien Helleu bff40e4c26 core: display an error on missing dependency in CMake (closes #916, closes #956) 2019-09-15 07:49:03 +02:00
Sébastien Helleu 9cb6857672 Version 2.7-dev 2019-09-08 08:33:06 +02:00
Sébastien Helleu 7477845205 Version 2.6 2019-09-08 08:13:58 +02:00
Sébastien Helleu ea139e7fdb doc: update Polish auto-generated files 2019-09-07 16:04:57 +02:00
Krzysztof Korościk 2d2d349d3c update polish translation 2019-09-07 15:54:13 +02:00
Sébastien Helleu 948caf0857 Version 2.6-rc2 2019-09-01 11:27:07 +02:00
Sébastien Helleu f24538646f core: update python dependency from python2-devel to python3-devel in cygport file 2019-08-31 20:49:42 +02:00
Sébastien Helleu 1beebdf01e core: fix compilation with autotools on FreeBSD 12.0 2019-08-31 14:18:55 +02:00
Sébastien Helleu 8bb4549494 core: fix compilation of Python plugin on FreeBSD 12.0 (closes #1398) 2019-08-31 14:13:58 +02:00
Sébastien Helleu 63902ef52d debian: add Python version in description of python plugin package 2019-08-30 18:34:31 +02:00
Sébastien Helleu 93775de7ff Version 2.6-rc1 2019-08-27 22:31:43 +02:00
Sébastien Helleu 62944b7168 core: disable option "-Werror-implicit-function-declaration" for C++ compiler
This option is valid for C compiler only.
2019-08-27 22:26:57 +02:00
Sébastien Helleu f0001ed670 doc: update German auto-generated file 2019-08-25 21:01:46 +02:00
Nils Görs e11f6e3046 core: update German translations 2019-08-25 20:05:18 +02:00
Sébastien Helleu 68d6f1b415 api: add infos "term_colors" and "term_color_pairs" 2019-08-25 19:10:32 +02:00
Sébastien Helleu f0685dd1b1 ruby: remove unused variable "ruby_hide_errors" 2019-08-25 07:14:42 +02:00
Sébastien Helleu 0884c9b33c core: move "Python 3 by default" as first item in the release notes 2019-08-24 17:43:49 +02:00
Sébastien Helleu 3938328375 doc: update German auto-generated file 2019-08-24 08:36:52 +02:00
Nils Görs 16592fdbbb core: update German translations 2019-08-24 08:06:44 +02:00
Sébastien Helleu bad8db720e irc: fix parsing of message 346, 348 and 728 when there is a colon before the timestamp (issue #1396)
IRC Messages:
- 346: invite list
- 348: exception list
- 728: quiet list
2019-08-24 07:19:01 +02:00
Sébastien Helleu 61c5d08320 fset: add filters "h=xxx" and "he=xxx" to filter options by description (translated or in English) 2019-08-24 07:13:34 +02:00
Sébastien Helleu 04162214d4 doc: update German auto-generated file 2019-08-22 07:45:10 +02:00
Nils Görs 2fa33b102b core: update German translations 2019-08-21 21:58:47 +02:00
iwalkalone 1e7232b8c2 irc: fix parsing of message 367 (banlist) when there is a colon before the timestamp (closes #1396) 2019-08-21 08:21:07 +02:00
Sébastien Helleu 608ec9f483 core: add values djb2_32 and sum_32 for option weechat.look.nick_color_hash (issue #1394) 2019-08-20 21:20:33 +02:00
Sébastien Helleu 21dca71ee0 ruby: fix compilation with Ruby < 2.3 2019-08-20 07:57:01 +02:00
Sébastien Helleu 7f62985f89 core: use fixed-width integer for computing hashtable DJB2 key hash (closes #1394) 2019-08-19 23:29:22 +02:00
Sébastien Helleu 80f103b68a core: use fixed-width integer for computing nick hash (issue #1394) 2019-08-19 23:27:11 +02:00
Sébastien Helleu 156d855787 ruby: fix conversion of big integers on 32bit architecture (closes #1395) 2019-08-19 23:21:12 +02:00
Sébastien Helleu bf21ca072d buflist: use extra variables in option buflist.look.display_conditions (closes #1393) 2019-08-17 08:57:40 +02:00
Sébastien Helleu a3e8163f37 Revert "buflist: mention variables available for option buflist.look.display_conditions in its help and in /help buflist (closes #1393)"
This reverts commit 39e5b0574c.
2019-08-17 08:43:22 +02:00
Nils Görs ceb579653f doc: update German documentation 2019-08-17 08:28:27 +02:00
Sébastien Helleu 39e5b0574c buflist: mention variables available for option buflist.look.display_conditions in its help and in /help buflist (closes #1393) 2019-08-17 08:17:11 +02:00
Sébastien Helleu 05744f3b61 doc: translate new Freenode Tor Hidden Service (user's guide) 2019-08-15 23:09:39 +02:00
Alfredo Ramos 783aebfd53 doc: use the new Freenode Tor Hidden Service (user's guide)
And add a note for users using an old version of Tor
2019-08-15 23:09:35 +02:00
Sébastien Helleu c411ee475a core: create or update option weechat.notify.xxx when function buffer_set is called with "notify" property (closes #1390) 2019-08-10 17:48:34 +02:00
Sébastien Helleu a409080d8b doc: update German auto-generated file 2019-08-10 17:33:59 +02:00
weechatter b1ae6ad1c6 core: update German translations 2019-08-10 17:22:00 +02:00
Andrew Potter 0957231d30 api: add function list_user_data (issue #666) 2019-08-10 12:55:43 +02:00
Sébastien Helleu 464d31155a core: update ChangeLog (issue #615) 2019-08-10 11:23:51 +02:00
Sébastien Helleu 5f1b895f27 irc: replace calls to strcpy and strcat with a call to snprintf 2019-08-10 11:20:43 +02:00
Sébastien Helleu dfcbb6b058 irc: rename variable vars_replaced to command2, remove fallback on *ptr_command 2019-08-10 11:16:21 +02:00
Sébastien Helleu dd133af522 Merge remote-tracking branch 'origin/pr/615' 2019-08-10 11:12:13 +02:00
Sébastien Helleu befa97ea81 core: mention there's no fallback on the other Python version in release notes 2019-08-10 10:42:53 +02:00
Sébastien Helleu a906afc3d7 core: replace python-dev by python3-dev in dependencies (user's guide) 2019-08-06 22:48:59 +02:00
Sébastien Helleu b4215ee466 tests: add tests on IRC function irc_nick_is_nick 2019-08-06 22:13:10 +02:00
Sébastien Helleu 210e864899 irc: fix memory leak when removing a server 2019-08-05 20:58:24 +02:00
Sébastien Helleu 47010dd9c6 doc: update auto-generated files with hdata 2019-08-04 16:43:48 +02:00
Sébastien Helleu b6cc5ef70f irc: fix length of user/nick/host in split of messages (closes #1387) 2019-08-04 16:39:18 +02:00
Sébastien Helleu 59ba378eec tests: add missing space after name of function 2019-08-04 14:39:58 +02:00
Sébastien Helleu 0bf5a5ae9c irc: add variables "user_max_length" and "host_max_length" in server structure (issue #1387) 2019-08-04 14:39:58 +02:00
Sébastien Helleu 4fa62a83f1 tests: add unit tests on IRC functions irc_message_split* (issue #1387) 2019-08-04 14:39:58 +02:00
Sébastien Helleu 067f237ec3 tests: add unit tests on IRC function irc_message_convert_charset 2019-08-04 14:04:45 +02:00
Sébastien Helleu fbc022a77a core: return NULL immediately if string is NULL in function hook_modifier_exec 2019-08-04 13:30:53 +02:00
Sébastien Helleu c46255b1d0 tests: add unit tests on IRC functions irc_message_parse and irc_message_parse_to_hashtable 2019-08-03 13:57:50 +02:00
Sébastien Helleu d79e0cbd31 tests: add unit tests on IRC function irc_message_replace_vars 2019-08-03 11:34:42 +02:00
Sébastien Helleu 28d79d0c93 tests: add unit tests on IRC functions irc_message_get_{nick,address}_from_host 2019-08-03 11:30:35 +02:00
Sébastien Helleu 478ca22054 irc: return NULL in function irc_message_get_address_from_host if the received host is NULL 2019-08-03 10:53:17 +02:00
Sébastien Helleu 1f52101a41 doc: update German auto-generated files 2019-08-03 10:52:58 +02:00
Sébastien Helleu 9be225b201 core: fix description of changes on Python build in release notes
There's no fallback on the other Python version:
- with no option: build with Python 3 only
- with option ENABLE_PYTHON2: build with Python 2 only.
2019-08-03 08:31:57 +02:00
weechatter 07878046d2 doc: update German documentation 2019-08-01 18:45:49 +02:00
Sébastien Helleu 2e07121457 core: update ChangeLog (issue #1384) 2019-07-31 22:55:40 +02:00
Sébastien Helleu f8b8669d2e Merge pull request #1384 from l2dy/memory
core: fix memory leak in case of error
2019-07-31 22:51:12 +02:00
Sébastien Helleu f3426f4388 doc: update note on Python recommended version in user's guide 2019-07-31 22:42:38 +02:00
Sébastien Helleu ad64fd16e1 core: update ChangeLog (issue #1382) 2019-07-31 22:17:28 +02:00
Sébastien Helleu 99bb662bc5 core: add contributor in AUTHORS.adoc 2019-07-31 22:16:42 +02:00
Sébastien Helleu 8bc5725278 core: remove obsolete checks of old Python version in configure, properly set Python version (issue #1382) 2019-07-31 21:53:16 +02:00
Sébastien Helleu 8897e04c0d core: fix help on python to build with Python 2 (issue #1382) 2019-07-31 21:24:36 +02:00
Eli Schwartz 4744c3fa41 work around broken travis environment variables
See: https://github.com/travis-ci/travis-ci/issues/5301
2019-07-31 20:46:02 +02:00
Eli Schwartz ad7d16a5b3 build: use pkg-config to properly link python
fixes incorrect (non)detection of libpython3.Ym.so due to PEP 3149 since
python's officially exported build flags know how to correctly link to
python.
2019-07-31 20:45:59 +02:00
weechatter b8d69307ee core: update German translations 2019-07-30 22:56:52 +02:00
Sébastien Helleu 015ec85f10 core: add some missing default keys in /help cursor 2019-07-29 22:49:29 +02:00
Zero King acbf021330 core: fix memory leak in case of error 2019-07-27 18:51:29 +00:00
Sébastien Helleu 93cd05bdd8 core: fix French translations on IRC ignores 2019-07-24 18:46:25 +02:00
Sébastien Helleu 5eeb98e40c buflist: use existing variable buflist_hdata_buffer to check buffer pointers in infolist "buflist" 2019-07-13 22:16:25 +02:00
Sébastien Helleu f6bc6fec2e doc: add function "register" in the plugin API reference 2019-07-11 21:12:33 +02:00
Sébastien Helleu c463b84421 doc: add Python prototype for function window_get_string (plugin API reference) 2019-07-11 20:51:52 +02:00
Sébastien Helleu 6461aefcae doc: fix return value of function window_get_string (plugin API reference) 2019-07-11 20:51:48 +02:00
Sébastien Helleu 643376fc1d core: update translations (issue #1375) 2019-07-11 07:30:01 +02:00
Sébastien Helleu 26c0b1270f core: update ChangeLog (issue #1375) 2019-07-11 07:29:56 +02:00
Sébastien Helleu ccaf99ff40 buflist: check validity of buffer pointers in info "buflist" (issue #1375) 2019-07-11 07:29:54 +02:00
Simmo Saan 0fdf2c13a5 buflist: add infolist "buflist" (issue #1375) 2019-07-11 07:29:46 +02:00
Sébastien Helleu fd592c2323 irc: quote NICK command argument sent to the server only if there's a ":" in the nick (closes #1376, issue #1319) 2019-07-11 07:08:36 +02:00
Sébastien Helleu 82a92bd4e9 irc: add unit tests on ignore functions 2019-07-10 19:20:09 +02:00
Sébastien Helleu 162ca1fade irc: split function irc_ignore_check into three functions 2019-07-10 19:19:35 +02:00
Sébastien Helleu e56c7e8c9b debian: disable Javascript plugin on Debian Buster/Bullseye (closes #1374) 2019-07-08 18:29:50 +02:00
Sébastien Helleu 5e9efeb2e3 debian: switch from Lua 5.1 to 5.3 in Debian build 2019-07-07 14:14:37 +02:00
Sébastien Helleu 965173ded5 doc: fix typos in examples of function hook_process_hashtable (plugin API reference) 2019-07-06 20:39:02 +02:00
Sébastien Helleu 768c0d9acc core: move line from "New features" to "Bug fixes" in ChangeLog 2019-07-05 08:43:29 +02:00
Sébastien Helleu 15ce4b2be5 irc: return all arguments in the PONG response to a PING (closes #1369) 2019-07-04 18:48:46 +02:00
Sébastien Helleu 789fa972f8 core: add Python 3 in release notes 2019-07-01 22:16:23 +02:00
Sébastien Helleu 179b00b4a3 doc: update auto-generated files with hdata 2019-07-01 22:09:58 +02:00
Sébastien Helleu 45fc8f1012 doc: rename option ENABLE_PYTHON3 to ENABLE_PYTHON2 in user's guide 2019-07-01 22:04:02 +02:00
Sébastien Helleu c99dd0f611 core: remove pyenv in Travis CI 2019-07-01 21:28:33 +02:00
Sébastien Helleu ab81128a7a core: compile with Python 3 by default
The CMake option ENABLE_PYTHON3 is renamed to ENABLE_PYTHON2, to use Python 2
first then fallback on Python 3.

In the same way, the configure option --enable-python3 is renamed to
--enable-python2, to use Python 2 first then fallback on Python 3.
2019-07-01 21:28:33 +02:00
Sébastien Helleu f9b6f359dd doc: update chapter on colors in user's guide (issue #1343, issue #1345) 2019-06-28 20:58:00 +02:00
Sébastien Helleu a9a1066e63 core: update ChangeLog (closes #1343, closes #1345) 2019-06-28 20:47:07 +02:00
Sébastien Helleu d540ea91ae Merge remote-tracking branch 'origin/pr/1345' 2019-06-28 20:43:21 +02:00
Sébastien Helleu b1ab2a0c50 doc: add description of arguments sent to the weechat_plugin_init plugin function (plugin API reference) 2019-06-26 21:20:01 +02:00
Sébastien Helleu 33ee803609 core: send command line parameter to plugins only if the name starts with the plugin name followed by a colon 2019-06-26 21:13:36 +02:00
Sébastien Helleu 1d6714e428 core: auto disable upgrade process (command line option "--upgrade") if the file weechat.upgrade is not found 2019-06-24 21:35:37 +02:00
Sébastien Helleu 98b5e90469 doc: update German auto-generated file 2019-06-22 08:43:24 +02:00
Sébastien Helleu b0ad684f6b irc: fix help of /connect command: the server is optional 2019-06-22 08:42:38 +02:00
weechatter ca73fabc72 core: update German translations 2019-06-18 19:15:15 +02:00
Sébastien Helleu f15a24b2ec core: add option "close" in command /window (closes #853) 2019-06-17 21:08:07 +02:00
Sébastien Helleu e5f963f78a doc: update auto-generated files with URL options 2019-06-16 23:03:48 +02:00
Sébastien Helleu 087d4c7af3 core: add Curl options for versions 7.53.0 to 7.63.0 2019-06-16 22:28:08 +02:00
Sébastien Helleu 07a8c4a0ec doc: update German auto-generated file 2019-06-16 16:13:17 +02:00
weechatter eb2535982c core: update German translations 2019-06-16 14:10:11 +02:00
Sébastien Helleu fe90a5ed4e core: replace newlines by spaces in argument "completion" of function hook_command (closes #538) 2019-06-16 08:14:24 +02:00
Sébastien Helleu 60c61c3962 irc: disable server reconnection when the server buffer is closed (closes #236) 2019-06-15 22:46:14 +02:00
Sébastien Helleu 0d9b7ec954 irc: strip spaces at beginning/end of addresses in server option "addresses" (closes #195) 2019-06-15 20:50:48 +02:00
Sébastien Helleu 9178156354 api: add argument "strip_items" in function string_split 2019-06-15 20:47:14 +02:00
Sébastien Helleu 866a29c7e6 core: check that string pointer is not NULL in function "string_shared_get" 2019-06-15 17:21:06 +02:00
Sébastien Helleu 95cbf3a48b irc: remove capability from cap_list when a client capability is disabled (issue #151) 2019-06-15 08:56:48 +02:00
Sébastien Helleu b6c304ac87 irc: fix display of enabled/disabled client capabilities received in command CAP ACK (closes #151) 2019-06-15 08:14:22 +02:00
Sébastien Helleu 31d0742aed doc: remove obsolete options for "brew install" command (user's guide) 2019-06-12 23:37:17 +02:00
Sébastien Helleu 7d24dd5a6c core: add contributor in AUTHORS.adoc 2019-06-12 23:34:36 +02:00
Johan Rylander 6c114bbba7 doc: remove obsolete options for "brew install" command (FAQ) 2019-06-12 23:33:33 +02:00
Sébastien Helleu 4b90549b86 doc: improve tree with log files in user's guide 2019-06-12 23:07:32 +02:00
Sébastien Helleu 04fd587fff exec: evaluate option exec.command.shell, change default value to "${env:SHELL}" (closes #1356) 2019-06-12 18:29:07 +02:00
Sébastien Helleu eb216de9b8 core: add contributor in AUTHORS.adoc 2019-06-07 21:36:58 +02:00
Sébastien Helleu 4d8785289d core: update ChangeLog 2019-06-07 21:36:28 +02:00
jesopo 4ea193c981 alias: remove default aliases /AME and /AMSG 2019-06-07 21:35:15 +02:00
Sébastien Helleu 7aa82db471 core: replace char "," by "~" in color codes to separate foreground from background (closes #1264) 2019-06-07 21:29:05 +02:00
Sébastien Helleu f065b43b71 doc: replace "cmake" by "CMake" 2019-06-07 21:14:17 +02:00
Sébastien Helleu 96d1276446 Version 2.6-dev 2019-06-06 21:03:56 +02:00
Simmo Saan 5988d17d2d gui: simplify and revert FindNcurses using PATH_SUFFIXES for system default search 2019-05-13 14:18:02 +00:00
Simmo Saan 980d26956f gui: fix wide ncurses header on FreeBSD (issue #1343) 2019-05-13 13:48:39 +00:00
Simmo Saan 5910bcf3c8 gui: fix wbkgrndset for non-wide ncurses by fallback to wbkgdset (issue #1343)
cchar_t, setcchar and wbkgrndset are actually widec ncurses features,
not ext-colors features, but NCURSES_WIDECHAR doesn't accurately reflect
their existence so NCURSES_EXT_COLORS is used instead.
2019-05-04 14:31:11 +03:00
Simmo Saan c7b242ffd9 gui: readd color buffer table zero padding and dashes (issue #1343) 2019-05-02 21:16:57 +03:00
Simmo Saan bf1462d7a1 gui: change command line option "-c" color pairs table to match (issue #1343) 2019-05-02 21:06:42 +03:00
Simmo Saan f5f6cf028c gui: change color buffer pairs table to only show allocated pairs (issue #1343) 2019-05-02 19:30:22 +03:00
Simmo Saan d392b406c5 gui: increase ncurses color pair limit from 255 to 32767 (issue #1343) 2019-05-02 19:30:22 +03:00
Simmo Saan 08719963de gui: replace ncurses COLOR_PAIR attribute usage with special functions (issue #1343) 2019-05-02 19:30:22 +03:00
Simmo Saan d12e29620b irc: make command characters optional in server's command option 2017-06-17 18:38:37 +03:00
Simmo Saan 49ce989de6 gui: fix separator overlap check for deeply nested windows 2015-12-22 10:39:58 +02:00
Simmo Saan 9cc68b641b gui: fix window separators not respecting window splits 2015-12-21 17:41:38 +02:00
Simmo Saan 93d2dbf3e1 gui: add missing line pointer to long words split across lines (closes #617)
Displaying a word which was forced to be split across lines added the new
coords without pointer to the original line. This made them unquotable in
cursor mode.
2015-12-03 12:00:22 +02:00
Simmo Saan bcb7ac7777 gui: fix focus data being offset when prefix_align is none (closes #610)
window->coords_x_message stored a single x coordinate for the entire
window which was used for message position calculation. Such approach
does not work when prefix_align is none, thus now the x coordinate in
question is exactly calculated for a line individually.
2015-12-03 11:57:09 +02:00
1244 changed files with 380153 additions and 196276 deletions
+1 -2
View File
@@ -3,6 +3,5 @@
.git* export-ignore
debian-devel export-ignore
debian-stable export-ignore
weechat.spec export-ignore
.mailmap export-ignore
tools/build-debian.sh export-ignore
tools/build_debian.sh export-ignore
-40
View File
@@ -1,40 +0,0 @@
---
name: Bug report
about: Create a bug report (please do not report security issues here)
---
<!-- Please do not report any security issue here, see file Contributing.adoc -->
## Bug summary
## Steps to reproduce
1. 
2. 
3. 
## Current behavior
## Expected behavior
## Suggested solutions
## Additional information
---
<!-- MANDATORY INFO: -->
- WeeChat version: 
- OS, distribution and version: 
+110
View File
@@ -0,0 +1,110 @@
name: Bug report
description: Create a bug report
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Before submitting a bug, please check that it has not already been reported by searching in [open and closed bugs](https://github.com/weechat/weechat/issues?q=is%3Aissue+label%3Abug).
If you don't use the latest version, please try if possible with the latest stable release to be sure the issue is still present and report the issue on this version.
**IMPORTANT**: please do not report any security issue here, see [Contributing.adoc](https://github.com/weechat/weechat/blob/master/Contributing.adoc#security-reports).
- type: textarea
id: bug-description
attributes:
label: Describe the bug
description: A clear and concise description of what the bug is.
validations:
required: true
- type: textarea
id: steps-to-reproduce
attributes:
label: Steps to reproduce
description: |
Steps to reproduce the issue.
If possible, please try to reproduce with a default configuration and no scripts loaded (`weechat -t`). If the issue is related to a script, please mention the list of all scripts loaded.
placeholder: |
1.
2.
3.
validations:
required: true
- type: textarea
id: current-behavior
attributes:
label: Current behavior
description: |
What currently happens.
validations:
required: true
- type: textarea
id: expected-behavior
attributes:
label: Expected behavior
description: What is actually supposed to happen.
validations:
required: true
- type: textarea
id: suggested-solutions
attributes:
label: Suggested solutions
description: How you think this issue can be resolved.
validations:
required: false
- type: textarea
id: additional-information
attributes:
label: Additional information
description: |
For a crash, please include a backtrace from gdb, see the [User's guide](https://weechat.org/doc/weechat/user/#report_crashes).
For a display issue, please add a screenshot if it makes sense.
Please mention if other versions are affected as well and if some versions are not affected (regression?).
And any additional information you deem relevant.
validations:
required: false
- type: input
id: weechat-version
attributes:
label: WeeChat version
description: |
For a stable release: output of `weechat --version`.
For the development version: output of command `/v` in WeeChat.
placeholder: "4.1.1"
validations:
required: true
- type: input
id: os-version
attributes:
label: What OS are you using?
description: Name of the operating system and its version.
placeholder: Debian 12, Ubuntu 23.10, MacOS 14, ...
validations:
required: true
- type: input
id: terminal
attributes:
label: On which terminal are you running WeeChat?
description: The name of terminal if you think it can be related to the issue (mainly for display issues).
placeholder: Terminator, Xterm, GNOME Terminal, Urxvt, ...
validations:
required: false
- type: input
id: terminal-multiplexer
attributes:
label: Which terminal multiplexer are you using?
description: The name of the terminal multiplexer if you think it can be related to the issue (mainly for display issues).
placeholder: none, tmux, screen, ...
validations:
required: false
+1
View File
@@ -0,0 +1 @@
blank_issues_enabled: false
@@ -1,7 +0,0 @@
---
name: Feature request
about: Request a new feature / enhancement
---
## Feature description
@@ -0,0 +1,17 @@
name: Feature request
description: Request a new feature / enhancement
labels: ["feature"]
body:
- type: markdown
attributes:
value: |
Before submitting a feature request, please check that it has not already been reported by searching in [open and closed feature requests](https://github.com/weechat/weechat/issues?q=is%3Aissue+label%3Afeature).
- type: textarea
id: feature
attributes:
label: Feature description
description: A description of the feature you would like.
validations:
required: true
-14
View File
@@ -1,14 +0,0 @@
---
name: Question
about: Ask a question (please read first FAQ and docs)
---
## Question
---
- WeeChat version: 
- OS, distribution and version: 
+19
View File
@@ -0,0 +1,19 @@
name: Question
description: Ask a question
labels: ["question"]
body:
- type: markdown
attributes:
value: |
Before opening an issue with a question:
- please read the [FAQ](https://weechat.org/doc/weechat/faq) and [documentation](https://weechat.org/doc/weechat/)
- please ask on #weechat channel (on server irc.libera.chat).
- type: textarea
id: question
attributes:
label: Question
description: Your question.
validations:
required: true
+266
View File
@@ -0,0 +1,266 @@
name: CI
on:
push:
pull_request:
schedule:
- cron: '22 9 * * 2'
env:
WEECHAT_DEPENDENCIES: >-
asciidoctor
cmake
curl
devscripts
equivs
flake8
gem2deb
guile-3.0-dev
lcov
libargon2-dev
libaspell-dev
libcjson-dev
libcpputest-dev
libcurl4-gnutls-dev
libgcrypt20-dev
libgnutls28-dev
liblua5.3-dev
libncurses-dev
libperl-dev
libphp-embed
libsodium-dev
libv8-dev
libzstd-dev
ninja-build
php-dev
pkg-config
pylint
python3-bandit
python3-dev
python3-pip
ruby-pygments.rb
shellcheck
tcl8.6-dev
zlib1g-dev
jobs:
tests_linux:
strategy:
matrix:
os:
- ubuntu-22.04
config:
- { name: "gcc", cc: "gcc", cxx: "g++", buildargs: "" }
- { name: "gcc_ninja", cc: "gcc", cxx: "g++", buildargs: "-G Ninja" }
- { name: "gcc_no_nls", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_NLS=OFF -DENABLE_DOC=OFF" }
- { name: "gcc_no_zstd", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_ZSTD=OFF -DENABLE_DOC=OFF" }
- { name: "gcc_no_cjson", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_CJSON=OFF -DENABLE_DOC=OFF" }
- { name: "gcc_coverage", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_CODE_COVERAGE=ON" }
- { name: "clang", cc: "clang", cxx: "clang++", buildargs: "" }
name: "Tests: ${{ matrix.config.name }} on ${{ matrix.os }}"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
sudo apt-get update -qq
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
# uninstall php imagick as is causes a crash when loading php plugin (see #2009)
sudo apt-get --yes purge php8.1-imagick
sudo -H pip3 install --ignore-installed msgcheck
- name: Check gettext files
run: msgcheck po/*.po
- name: Check shell and Python scripts
run: ./tools/check_scripts.sh
- name: Check Python stub file
run: ./tools/generate_python_stub.py | diff src/plugins/python/weechat.pyi -
- name: Check Curl symbols
run: curl --silent --show-error --fail --retry 10 https://raw.githubusercontent.com/curl/curl/master/docs/libcurl/symbols-in-versions | ./tools/check_curl_symbols.py
- name: Build and run tests
env:
CC: ${{ matrix.config.cc }}
CXX: ${{ matrix.config.cxx }}
BUILDARGS: ${{ matrix.config.buildargs }}
run: ./tools/build_test.sh
- name: Run WeeChat
env:
TERM: xterm-256color
run: |
weechat --help
weechat-curses --help
weechat --colors
weechat --license
weechat --version
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
- name: Test Relay OpenAPI
if: ${{ matrix.config.name == 'gcc' }}
env:
RELAY_PASSWORD: test
run: |
sudo -H pip3 install --ignore-installed schemathesis
weechat-headless \
--dir /tmp/weechat-test-api \
--run-command '/set relay.network.password "${{ env.RELAY_PASSWORD }}"' \
--run-command '/relay add api 9000' \
--daemon \
;
sleep 5
./tools/test_relay_api.sh http://localhost:9000
echo '*/quit' >/tmp/weechat-test-api/weechat_fifo_*
- name: Code coverage
if: ${{ matrix.config.name == 'gcc_coverage' }}
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
run: |
cd build-tmp-*
lcov --directory . --capture --output-file coverage.info
lcov --remove coverage.info '/usr/*' --output-file coverage.info
lcov --list coverage.info
bash <(curl -s https://codecov.io/bash) -f coverage.info || echo 'Codecov error'
tests_macos:
strategy:
matrix:
os:
- macos-12
config:
- { name: "gcc", cc: "gcc", cxx: "g++" }
- { name: "clang", cc: "clang", cxx: "clang++" }
name: "Tests: ${{ matrix.config.name }} on ${{ matrix.os }}"
runs-on: ${{ matrix.os }}
steps:
- name: Setup Homebrew
id: setup-homebrew
uses: Homebrew/actions/setup-homebrew@master
- name: Install dependencies
run: |
brew update
# temporary fix, see: https://github.com/actions/setup-python/issues/577
rm -f \
/usr/local/bin/2to3 \
/usr/local/bin/idle3 \
/usr/local/bin/pydoc3 \
/usr/local/bin/python3 \
/usr/local/bin/python3-config \
/usr/local/bin/2to3-3.11 \
/usr/local/bin/idle3.11 \
/usr/local/bin/pydoc3.11 \
/usr/local/bin/python3.11 \
/usr/local/bin/python3.11-config \
;
brew install asciidoctor cjson guile lua pkg-config ruby
- uses: actions/checkout@v2
- name: Build
env:
CC: ${{ matrix.config.cc }}
CXX: ${{ matrix.config.cxx }}
run: |
mkdir build-tmp && cd build-tmp
cmake .. -DENABLE_MAN=ON -DENABLE_DOC=ON -DENABLE_DOC_INCOMPLETE=ON -DENABLE_PHP=OFF
make VERBOSE=1 -j2
sudo make install
- name: Run WeeChat
env:
TERM: xterm-256color
run: |
weechat --help
weechat-curses --help
weechat --colors
weechat --license
weechat --version
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
build_debian:
strategy:
matrix:
os:
- ubuntu-22.04
name: "Build Debian on ${{ matrix.os }}"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
sudo apt-get update -qq
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
- name: Test Debian patches
run: ./tools/build_debian.sh test-patches
- name: Build Debian packages
run: ./tools/build_debian.sh devel ubuntu/jammy
- name: Install Debian packages
run: sudo dpkg -i ../weechat-devel*.deb
- name: Run WeeChat
env:
TERM: xterm-256color
run: |
weechat --help
weechat-curses --help
weechat --version
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
codeql-analysis:
name: CodeQL
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt-get update -qq
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
# uninstall php imagick as is causes a crash when loading php plugin (see #2009)
sudo apt-get --yes purge php8.1-imagick
sudo -H pip3 install --ignore-installed msgcheck
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: cpp
- name: Autobuild
uses: github/codeql-action/autobuild@v3
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:cpp"
+9 -54
View File
@@ -1,56 +1,11 @@
# ignored files for Git
*.a
*.gmo
*.la
*.lai
*.lo
*.m4
*.o
*.Plo
*.Po
*.so
*.so.0
*.so.0.0.0
*.1
ABOUT-NLS
autom4te*
build*/*
compile
config.guess
config.h
config.h.in*
config-git.h
config.log
config.rpath
config.status
config.sub
configure
debian
!tools/debian
debian-devel/changelog
debian-devel/*.log
debian-stable/*.log
depcomp
insert-header.sin
install-sh
intl/*
libtool
ltmain.sh
Makefile
Makefile.in*
Makevars.template
missing
po/*quot*
POTFILES
remove-potcdate.sed
Rules-quot
weechat.pc
weechat-*.cygport
*stamp
stamp*
src/gui/curses/weechat
src/gui/curses/weechat-curses
/build
/builddir
/debian
/debian-devel/changelog
/debian-devel/*.log
/debian-devel/*-stamp
/debian-stable/*.log
/debian-stable/*-stamp
/release
+3 -1
View File
@@ -11,7 +11,9 @@ Sébastien Helleu <flashcode@flashtux.org> <flashcode>
Sébastien Helleu <flashcode@flashtux.org> <uid67137>
Nils Görs <weechatter@arcor.de>
Ryuunosuke Ayanokouzi <i38w7i3@yahoo.co.jp>
Krzysztof Korościk <soltys1@gmail.com> <soltys@szluug.org> <soltys@soltys.info>
Krzysztof Korościk <soltys@soltys.info>
Krzysztof Korościk <soltys@soltys.info> <soltys1@gmail.com>
Krzysztof Korościk <soltys@soltys.info> <soltys@szluug.org>
Marco Paolone <marcopaolone@gmail.com>
<marcopaolone@gmail.com> <marco@DrB4tch.sitecomwl601>
<mikaela.suomalainen@outlook.com> <mkaysi@outlook.com>
-51
View File
@@ -1,51 +0,0 @@
dist: xenial
sudo: required
language: c
compiler:
- gcc
- clang
env:
- BUILDTOOL="cmake" BUILDARGS=""
# - BUILDTOOL="cmake" BUILDARGS="-DENABLE_PYTHON3=ON"
- BUILDTOOL="cmake" BUILDARGS="-DENABLE_GNUTLS=OFF"
- BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
- BUILDTOOL="autotools" BUILDARGS=""
# - BUILDTOOL="autotools" BUILDARGS="--enable-python3"
- BUILDTOOL="autotools" BUILDARGS="--disable-gnutls"
matrix:
fast_finish: true
exclude:
- compiler: clang
env: BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
before_script:
# Workaround https://github.com/travis-ci/travis-ci/issues/5326
- export PATH=$(echo $PATH | tr ':' "\n" | sed '/\/opt\/python/d' | tr "\n" ":" | sed "s|::|:|g")
- echo 'APT::Install-Recommends "false";' | sudo tee -a /etc/apt/apt.conf
- travis_retry sudo apt-get update -qq
- travis_retry sudo apt-get -y install devscripts equivs python-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls-dev zlib1g-dev curl libcpputest-dev php7.0-dev libphp7.0-embed
- travis_retry sudo gem install asciidoctor
- travis_retry sudo -H pip install --ignore-installed msgcheck pylint
- phpenv local system
script:
- ./tools/build-test.sh
- msgcheck po/*.po
- pylint --version
- pylint doc/docgen.py
- pylint tests/scripts/python/testapigen.py
- pylint tests/scripts/python/testapi.py
- pylint tests/scripts/python/unparse.py
- ./tools/build-debian.sh test-patches
after_success:
- weechat --help
- weechat-curses --help
- weechat --colors
- weechat --license
- weechat --version
- weechat --temp-dir --run-command "/debug dirs;/debug libs" --run-command "/quit"
- if [ "$CODECOVERAGE" = "1" ]; then bash <(curl -s https://codecov.io/bash) -f coverage.info || echo "Codecov error"; fi
+27 -3
View File
@@ -28,18 +28,24 @@ Alphabetically:
* Bazerka
* Benoit Papillault (benoit)
* Chris Hills
* Christian Duerr
* Christian Heinz
* Christopher O'Neill (deltafire)
* coypoop
* Danilo Spinella
* David Flatz
* Dmitry Kobylin
* Dominik Honnef
* Dominique Martinet
* dotflac
* Eduardo Elias
* Eli Schwartz
* Elizabeth Myers (Elizacat)
* Elián Hanisch (m4v)
* Emanuele Giaquinta
* Emir Sarı
* emk
* Érico Nogueira
* Esteban I. Ruiz Moreno (Exio)
* Evgeny Shmarnev
* Felix Eckhofer
@@ -50,13 +56,19 @@ Alphabetically:
* Guido Berhoerster
* Gwenn
* Hasan Kiran (turgay)
* Ivan Pešić
* Ivan Sichmann Freitas
* Jakub Jirutka
* Jan Palus
* Jason A. Donenfeld (zx2c4)
* JD Horelick (jdhore)
* jesopo
* Jim Ramsay (lack)
* Jiri Golembiovsky (GolemJ)
* Joey Pabalinas (alyptik)
* Johan Rylander
* Johannes Kuhn
* Joram Schrijver
* Jos Ahrens
* Joseph Kichline
* Juan Francisco Cantero Hurtado
@@ -65,15 +77,22 @@ Alphabetically:
* Koka El Kiwi (KiwiDash)
* Krzysztof Koroscik (soltys)
* Kyle Fuller (kylef)
* Leonid Evdokimov
* Kyle Sabo
* Latchezar Tzvetkoff
* Lázaro A.
* Leonid Evdokimov
* Linus Heckemann
* LuK1337
* Maarten de Vries
* Mantas Mikulėnas (grawity)
* Marco Paolone
* Marco Sirabella
* Mario Campos
* Mateusz Poszwa
* Matt Robinson
* Matthew Horan
* Matthew Martin
* Matti Virkkunen
* Max Anton Teufel
* Maxim Baz
* Michael Siegel
@@ -107,14 +126,17 @@ Alphabetically:
* Rudolf Polzer (divVerent)
* Ruslan Bekenev
* Ryan Farley
* Ryan Qian
* Ryuunosuke Ayanokouzi
* scumjr
* Sergio Durigan Junior
* Shane McCarron
* Shawn Smith
* Shun Sakai
* Simmo Saan (sim642)
* Simon Arlott
* Simon Kuhnle
* Simon Ser
* Stefano Pigozzi
* Stfn
* Sven Knurr (Cthulhux)
@@ -122,12 +144,15 @@ Alphabetically:
* Tim Harder
* Tobias Stoeckmann
* Tom Alsberg
* Tom Fitzhenry
* Tomoe Mami
* Tor Hveem (xt)
* Trevor Bergeron
* Valentin Lorentz (progval)
* Vasco Almeida
* Victorhck
* Voroskoi
* wfrsk
* Wojciech Kwolek
* W. Trevor King
* Yannick Palanque
@@ -136,5 +161,4 @@ Alphabetically:
== Contact
See https://weechat.org/files/doc/devel/weechat_user.en.html#support[user's guide]
or https://weechat.org/about/support
See the https://weechat.org/about/support/[support page].
+153 -132
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2007-2008 Julien Louis <ptitlouis@sysif.net>
# Copyright (C) 2008-2009 Emmanuel Bouthenot <kolter@openics.org>
#
@@ -19,28 +19,35 @@
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
cmake_minimum_required(VERSION 3.0)
cmake_minimum_required(VERSION 3.5)
project(weechat C)
# CMake options
set(CMAKE_VERBOSE_MAKEFILE OFF)
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}")
set(CMAKE_SKIP_RPATH ON)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -Wall -Wextra -Werror-implicit-function-declaration")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -Wall -Wextra -Werror-implicit-function-declaration")
# compiler options
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra -Werror-implicit-function-declaration -Wformat -Werror=format-security")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra")
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
# extra options specific to gcc/g++
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wformat-overflow=2 -Wformat-truncation=2")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wformat-overflow=2 -Wformat-truncation=2")
endif()
# version
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-major OUTPUT_VARIABLE VERSION_MAJOR)
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-minor OUTPUT_VARIABLE VERSION_MINOR)
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-patch OUTPUT_VARIABLE VERSION_PATCH)
execute_process(COMMAND "${CMAKE_SOURCE_DIR}/version.sh" devel-major OUTPUT_VARIABLE VERSION_MAJOR)
execute_process(COMMAND "${CMAKE_SOURCE_DIR}/version.sh" devel-minor OUTPUT_VARIABLE VERSION_MINOR)
execute_process(COMMAND "${CMAKE_SOURCE_DIR}/version.sh" devel-patch OUTPUT_VARIABLE VERSION_PATCH)
string(REGEX REPLACE "\n" "" VERSION_MAJOR "${VERSION_MAJOR}")
string(REGEX REPLACE "\n" "" VERSION_MINOR "${VERSION_MINOR}")
string(REGEX REPLACE "\n" "" VERSION_PATCH "${VERSION_PATCH}")
if(VERSION_PATCH STREQUAL "")
set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR})
set(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}")
else()
set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
set(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
endif()
# license
@@ -59,64 +66,70 @@ set(PKG_STRING "${PROJECT_NAME} ${VERSION}")
string(REPLACE "\";\"" "\ " PKG_STRING ${PKG_STRING})
if(NOT DEFINED LIBDIR)
set(LIBDIR ${CMAKE_INSTALL_PREFIX}/lib)
set(LIBDIR "${CMAKE_INSTALL_PREFIX}/lib")
endif()
if(NOT DEFINED WEECHAT_LIBDIR)
set(WEECHAT_LIBDIR ${LIBDIR}/${PROJECT_NAME})
set(WEECHAT_LIBDIR "${LIBDIR}/${PROJECT_NAME}")
endif()
if(NOT DEFINED SHAREDIR)
set(SHAREDIR ${CMAKE_INSTALL_PREFIX}/share)
if(NOT DEFINED DATAROOTDIR)
set(DATAROOTDIR "${CMAKE_INSTALL_PREFIX}/share")
endif()
if(NOT DEFINED WEECHAT_SHAREDIR)
set(WEECHAT_SHAREDIR "${DATAROOTDIR}/weechat")
endif()
if(NOT DEFINED MANDIR)
set(MANDIR ${SHAREDIR}/man)
set(MANDIR "${DATAROOTDIR}/man")
endif()
if(NOT DEFINED LOCALEDIR)
set(LOCALEDIR ${SHAREDIR}/locale)
set(LOCALEDIR "${DATAROOTDIR}/locale")
endif()
if(DEFINED INCLUDEDIR)
set(INCLUDEDIR ${INCLUDEDIR}/${PROJECT_NAME})
set(INCLUDEDIR "${INCLUDEDIR}/${PROJECT_NAME}")
else()
set(INCLUDEDIR ${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME})
set(INCLUDEDIR "${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}")
endif()
option(ENABLE_NCURSES "Compile the Ncurses interface" ON)
option(ENABLE_HEADLESS "Compile the headless binary (required for tests)" ON)
option(ENABLE_NLS "Enable Native Language Support" ON)
option(ENABLE_GNUTLS "Enable SSLv3/TLS support" ON)
option(ENABLE_LARGEFILE "Enable Large File Support" ON)
option(ENABLE_ALIAS "Enable Alias plugin" ON)
option(ENABLE_BUFLIST "Enable Buflist plugin" ON)
option(ENABLE_CHARSET "Enable Charset plugin" ON)
option(ENABLE_EXEC "Enable Exec plugin" ON)
option(ENABLE_FIFO "Enable FIFO plugin" ON)
option(ENABLE_FSET "Enable Fast Set plugin" ON)
option(ENABLE_IRC "Enable IRC plugin" ON)
option(ENABLE_LOGGER "Enable Logger plugin" ON)
option(ENABLE_RELAY "Enable Relay plugin" ON)
option(ENABLE_SCRIPT "Enable Script plugin (script manager)" ON)
option(ENABLE_SCRIPTS "Enable script plugins (perl, python, ...)" ON)
option(ENABLE_PERL "Enable Perl scripting language" ON)
option(ENABLE_PYTHON "Enable Python scripting language" ON)
option(ENABLE_PYTHON3 "Use Python 3.x if found (NOT recommended because many \"official\" scripts won't work)" OFF)
option(ENABLE_RUBY "Enable Ruby scripting language" ON)
option(ENABLE_LUA "Enable Lua scripting language" ON)
option(ENABLE_TCL "Enable Tcl scripting language" ON)
option(ENABLE_GUILE "Enable Scheme (guile) scripting language" ON)
option(ENABLE_JAVASCRIPT "Enable JavaScript scripting language" ON)
option(ENABLE_PHP "Enable PHP scripting language" ON)
option(ENABLE_SPELL "Enable Spell checker plugin" ON)
option(ENABLE_ENCHANT "Enable Enchant lib for Spell checker plugin" OFF)
option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
option(ENABLE_XFER "Enable Xfer plugin" ON)
option(ENABLE_MAN "Enable build of man page" OFF)
option(ENABLE_DOC "Enable build of documentation" OFF)
option(ENABLE_TESTS "Enable tests" OFF)
option(ENABLE_CODE_COVERAGE "Enable code coverage" OFF)
option(ENABLE_NCURSES "Compile the Ncurses interface" ON)
option(ENABLE_HEADLESS "Compile the headless binary" ON)
option(ENABLE_NLS "Enable Native Language Support" ON)
option(ENABLE_LARGEFILE "Enable Large File Support" ON)
option(ENABLE_ZSTD "Enable Zstandard compression" ON)
option(ENABLE_CJSON "Enable cJSON support" ON)
option(ENABLE_ALIAS "Enable Alias plugin" ON)
option(ENABLE_BUFLIST "Enable Buflist plugin" ON)
option(ENABLE_CHARSET "Enable Charset plugin" ON)
option(ENABLE_EXEC "Enable Exec plugin" ON)
option(ENABLE_FIFO "Enable FIFO plugin" ON)
option(ENABLE_FSET "Enable Fast Set plugin" ON)
option(ENABLE_IRC "Enable IRC plugin" ON)
option(ENABLE_LOGGER "Enable Logger plugin" ON)
option(ENABLE_RELAY "Enable Relay plugin" ON)
option(ENABLE_SCRIPT "Enable Script plugin (script manager)" ON)
option(ENABLE_SCRIPTS "Enable script plugins (perl, python, …)" ON)
option(ENABLE_PERL "Enable Perl scripting language" ON)
option(ENABLE_PYTHON "Enable Python scripting language" ON)
option(ENABLE_RUBY "Enable Ruby scripting language" ON)
option(ENABLE_LUA "Enable Lua scripting language" ON)
option(ENABLE_TCL "Enable Tcl scripting language" ON)
option(ENABLE_GUILE "Enable Scheme (guile) scripting language" ON)
option(ENABLE_JAVASCRIPT "Enable JavaScript scripting language" OFF)
option(ENABLE_PHP "Enable PHP scripting language" ON)
option(ENABLE_SPELL "Enable Spell checker plugin" ON)
option(ENABLE_ENCHANT "Use Enchant lib in Spell checker plugin" OFF)
option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
option(ENABLE_TYPING "Enable Typing plugin" ON)
option(ENABLE_XFER "Enable Xfer plugin" ON)
option(ENABLE_MAN "Enable build of man page" OFF)
option(ENABLE_DOC "Enable build of documentation" OFF)
option(ENABLE_DOC_INCOMPLETE "Enable incomplete doc" OFF)
option(ENABLE_TESTS "Enable tests" OFF)
option(ENABLE_CODE_COVERAGE "Enable code coverage" OFF)
# code coverage
add_library(coverage_config INTERFACE)
@@ -125,29 +138,40 @@ if(ENABLE_CODE_COVERAGE)
target_link_libraries(coverage_config INTERFACE --coverage)
endif()
# headless mode is required for documentation
if(ENABLE_DOC AND NOT ENABLE_HEADLESS)
message(FATAL_ERROR "Headless mode is required to build documentation.")
endif()
# all plugins (except javascript) are required for documentation
if(ENABLE_DOC AND NOT ENABLE_DOC_INCOMPLETE
AND (NOT ENABLE_NLS OR NOT ENABLE_ALIAS OR NOT ENABLE_BUFLIST
OR NOT ENABLE_CHARSET OR NOT ENABLE_EXEC OR NOT ENABLE_FIFO
OR NOT ENABLE_FSET OR NOT ENABLE_IRC OR NOT ENABLE_LOGGER
OR NOT ENABLE_RELAY OR NOT ENABLE_SCRIPT OR NOT ENABLE_SCRIPTS
OR NOT ENABLE_PERL OR NOT ENABLE_PYTHON OR NOT ENABLE_RUBY
OR NOT ENABLE_LUA OR NOT ENABLE_TCL OR NOT ENABLE_GUILE
OR NOT ENABLE_PHP OR NOT ENABLE_SPELL OR NOT ENABLE_TRIGGER
OR NOT ENABLE_TYPING OR NOT ENABLE_XFER))
message(
FATAL_ERROR
" All plugins are required to build documentation.\n"
" If you really want to build incomplete docs, enable this option:\n"
" -DENABLE_DOC_INCOMPLETE=ON"
)
endif()
# headless mode is required for tests
if(ENABLE_TESTS AND NOT ENABLE_HEADLESS)
message(FATAL_ERROR "Headless mode is required for tests.")
endif()
# option WEECHAT_HOME
if(NOT DEFINED WEECHAT_HOME OR "${WEECHAT_HOME}" STREQUAL "")
set(WEECHAT_HOME "~/.weechat")
endif()
set(WEECHAT_HOME "${WEECHAT_HOME}" CACHE
STRING "WeeChat home directory for config, logs, scripts.. (default is \"~/.weechat\")"
STRING "Force a single WeeChat home directory for config, logs, scripts, etc."
FORCE)
mark_as_advanced(CLEAR WEECHAT_HOME)
# option CA_FILE
if(NOT DEFINED CA_FILE OR "${CA_FILE}" STREQUAL "")
set(CA_FILE "/etc/ssl/certs/ca-certificates.crt")
endif()
set(CA_FILE "${CA_FILE}" CACHE
STRING "File containing the certificate authorities (default is \"/etc/ssl/certs/ca-certificates.crt\"). This is the default value of option \"weechat.network.gnutls_ca_file\"."
FORCE)
mark_as_advanced(CLEAR CA_FILE)
if(COMMAND cmake_policy)
if(POLICY CMP0003)
cmake_policy(SET CMP0003 NEW)
@@ -159,6 +183,8 @@ endif()
add_definitions(-DHAVE_CONFIG_H)
include(FindPkgConfig)
include(CheckIncludeFiles)
include(CheckFunctionExists)
include(CheckSymbolExists)
@@ -166,7 +192,11 @@ include(CheckSymbolExists)
check_include_files("langinfo.h" HAVE_LANGINFO_CODESET)
check_include_files("sys/resource.h" HAVE_SYS_RESOURCE_H)
check_include_files("malloc.h" HAVE_MALLOC_H)
check_symbol_exists("malloc_trim" "malloc.h" HAVE_MALLOC_TRIM)
check_function_exists(mallinfo HAVE_MALLINFO)
check_function_exists(mallinfo2 HAVE_MALLINFO2)
check_symbol_exists("eat_newline_glitch" "term.h" HAVE_EAT_NEWLINE_GLITCH)
@@ -175,34 +205,33 @@ if(ENABLE_LARGEFILE)
add_definitions(-D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D_LARGE_FILES)
endif()
# Check for Gettext
if(ENABLE_NLS)
find_package(Gettext)
if(GETTEXT_FOUND)
add_definitions(-DENABLE_NLS)
endif()
endif()
# Check for libgcrypt
find_package(GCRYPT REQUIRED)
pkg_check_modules(LIBGCRYPT REQUIRED libgcrypt)
add_definitions(-DHAVE_GCRYPT)
list(APPEND EXTRA_LIBS ${GCRYPT_LDFLAGS})
include_directories(${LIBGCRYPT_INCLUDE_DIRS})
list(APPEND EXTRA_LIBS ${LIBGCRYPT_LDFLAGS})
# Check for GnuTLS
if(ENABLE_GNUTLS)
find_package(GnuTLS)
if(GNUTLS_FOUND)
string(REGEX REPLACE "/[^/]*$" "" GNUTLS_LIBRARY_PATH "${GNUTLS_LIBRARY}")
add_definitions(-DHAVE_GNUTLS)
include_directories(${GNUTLS_INCLUDE_PATH})
set(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -L${GNUTLS_LIBRARY_PATH}")
list(APPEND EXTRA_LIBS gnutls)
endif()
endif()
find_package(GnuTLS REQUIRED)
string(REGEX REPLACE "/[^/]*$" "" GNUTLS_LIBRARY_PATH "${GNUTLS_LIBRARY}")
include_directories(${GNUTLS_INCLUDE_PATH})
set(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -L${GNUTLS_LIBRARY_PATH}")
list(APPEND EXTRA_LIBS gnutls)
# Check for zlib
find_package(ZLIB REQUIRED)
add_definitions(-DHAVE_ZLIB)
# Check for zstd
if(ENABLE_ZSTD)
pkg_check_modules(LIBZSTD REQUIRED libzstd)
add_definitions(-DHAVE_ZSTD)
endif()
# Check for cJSON
if(ENABLE_CJSON)
pkg_check_modules(LIBCJSON REQUIRED libcjson)
add_definitions(-DHAVE_CJSON)
endif()
# Check for iconv
find_package(Iconv)
@@ -227,37 +256,56 @@ if(DL_LIBRARY)
list(APPEND EXTRA_LIBS dl)
endif()
add_subdirectory(icons)
if(ENABLE_NLS)
find_package(Gettext REQUIRED)
add_definitions(-DENABLE_NLS)
find_package(Intl REQUIRED)
list(APPEND EXTRA_LIBS "${Intl_LIBRARIES}")
add_subdirectory(po)
else()
add_custom_target(translations COMMAND true)
endif()
add_subdirectory(src)
add_subdirectory(doc)
find_package(CppUTest)
if(ENABLE_TESTS AND CPPUTEST_FOUND)
if(ENABLE_TESTS)
find_package(CppUTest)
if(CPPUTEST_FOUND)
enable_testing()
add_subdirectory(tests)
else()
message(SEND_ERROR "CppUTest not found")
endif()
else()
enable_testing()
add_subdirectory(tests)
add_test(NAME notests COMMAND true)
endif()
configure_file(config.h.cmake config.h @ONLY)
# set the git version in "config-git.h"
add_custom_target(version_git ALL
COMMAND "${CMAKE_CURRENT_SOURCE_DIR}/tools/git-version.sh" "${CMAKE_CURRENT_SOURCE_DIR}" "${VERSION}" "config-git.h"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
COMMAND "${CMAKE_CURRENT_SOURCE_DIR}/tools/set_git_version.sh" "${CMAKE_CURRENT_SOURCE_DIR}" "${VERSION}" "config-git.h"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
)
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
IMMEDIATE @ONLY)
IMMEDIATE @ONLY
)
add_custom_target(uninstall
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
)
add_custom_target(dist
"${CMAKE_CURRENT_SOURCE_DIR}/tools/makedist.sh" "${VERSION}" "HEAD" "${CMAKE_CURRENT_BINARY_DIR}"
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
)
# pkgconfig file
set(PACKAGE "${PROJECT_NAME}")
@@ -265,50 +313,23 @@ set(prefix "${CMAKE_INSTALL_PREFIX}")
set(exec_prefix "\${prefix}")
string(REPLACE "${CMAKE_INSTALL_PREFIX}" "\${prefix}" libdir "${LIBDIR}")
set(includedir "\${prefix}/include")
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/weechat.pc.in ${CMAKE_CURRENT_BINARY_DIR}/weechat.pc @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.pc DESTINATION ${LIBDIR}/pkgconfig)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/weechat.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/weechat.pc" @ONLY)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat.pc" DESTINATION "${LIBDIR}/pkgconfig")
# cygport file (used to build Cygwin packages)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/weechat.cygport.in ${CMAKE_CURRENT_BINARY_DIR}/weechat-${VERSION}-1.cygport @ONLY)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/weechat.cygport.in" "${CMAKE_CURRENT_BINARY_DIR}/weechat-${VERSION}-1.cygport" @ONLY)
# install some files (only on Cygwin)
if(CYGWIN)
install(FILES
${CMAKE_CURRENT_SOURCE_DIR}/AUTHORS.adoc
${CMAKE_CURRENT_SOURCE_DIR}/ChangeLog.adoc
${CMAKE_CURRENT_SOURCE_DIR}/Contributing.adoc
${CMAKE_CURRENT_SOURCE_DIR}/README.adoc
${CMAKE_CURRENT_SOURCE_DIR}/ReleaseNotes.adoc
DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
"${CMAKE_CURRENT_SOURCE_DIR}/AUTHORS.adoc"
"${CMAKE_CURRENT_SOURCE_DIR}/ChangeLog.adoc"
"${CMAKE_CURRENT_SOURCE_DIR}/Contributing.adoc"
"${CMAKE_CURRENT_SOURCE_DIR}/README.adoc"
"${CMAKE_CURRENT_SOURCE_DIR}/ReleaseNotes.adoc"
DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}"
)
endif()
# icon
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/weechat.png DESTINATION ${SHAREDIR}/icons/hicolor/32x32/apps)
# packages
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Fast, light and extensible chat client")
set(CPACK_PACKAGE_VENDOR "Sébastien Helleu")
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README.adoc")
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH})
# binary package
set(CPACK_GENERATOR "STGZ;TGZ;TBZ2")
set(CPACK_PACKAGE_FILE_NAME weechat-binary-${VERSION})
# source package
set(CPACK_SOURCE_GENERATOR "TGZ;TBZ2")
set(CPACK_SOURCE_PACKAGE_FILE_NAME weechat-${VERSION})
set(CPACK_SOURCE_IGNORE_FILES "/\\\\.git" "/build/" "/m4/"
"/autom4te\\\\.cache/" "/ABOUT-NLS$" "/config\\\\.guess$" "/config\\\\.h$"
"/config\\\\.h.in$" "/config\\\\.log$" "/config\\\\.rpath$"
"/config\\\\.status$" "/config\\\\.sub$" "/configure$" "/depcomp$"
"/install-sh$" "/missing$" "/intl/" "/libtool$" "/\\\\.libs/"
"/ltmain\\\\.sh$" "/\\\\.deps/" "/html/" "/html1/" "/Makefile$"
"/Makefile\\\\.in$" "stamp" "/po/.*\\\\.header$" "\\\\.gmo$" "~$" "\\\\.o$"
"\\\\.lo$" "\\\\.a$" "\\\\.la$" "\\\\.lai$" "\\\\.Plo$" "/weechat$"
)
include(CPack)
# desktop file
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/weechat.desktop" DESTINATION "${DATAROOTDIR}/applications")
+1 -1
View File
@@ -671,4 +671,4 @@ into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<https://www.gnu.org/philosophy/why-not-lgpl.html>.
<https://www.gnu.org/licenses/why-not-lgpl.html>.
+1833 -433
View File
File diff suppressed because it is too large Load Diff
+27 -8
View File
@@ -29,8 +29,8 @@ please include:
_WeeChat 1.7-dev (git: v1.6-6-g997f47f)_. +
If WeeChat does not start at all, please include the version displayed by
`weechat --help` (or the version installed with your package manager).
* Your *operating system*: its name and version (examples: Linux Debian Wheezy,
FreeBSD 10.0, Windows/Cygwin 64-bit, Windows/Ubuntu 64-bit...).
* Your *operating system*: its name and version (examples: Linux Debian Bookworm,
FreeBSD 13.0, Windows/Cygwin 64-bit, Windows/Ubuntu 64-bit...).
* The *steps to reproduce*: if possible, please include a reproducible example:
explain the steps which led you to the problem. +
It's even better if you can reproduce the problem with a new config (and no
@@ -38,8 +38,7 @@ please include:
problem here.
* The *gdb's backtrace* (only for a crash): if you can reproduce the crash
(or if you have a core file), please include the backtrace from gdb (look at
https://weechat.org/files/doc/devel/weechat_user.en.html#report_crashes[User's guide]
for more info).
https://weechat.org/doc/weechat/user/#report_crashes[User's guide] for more info).
* The *actual result*.
* The *expected result*: the correct result you are expecting.
@@ -69,22 +68,42 @@ time, for https://github.com/weechat/weechat[WeeChat] and the website
https://github.com/weechat/weechat.org[weechat.org].
To start a translation in a new language (not yet supported), please look at
https://weechat.org/files/doc/devel/weechat_dev.en.html#translations[translations]
https://weechat.org/doc/weechat/dev/#translations[translations]
in Developer's guide.
== Feature requests
WeeChat is under active development, so your idea may already have been
implemented, or scheduled for a future version (you can check in
https://weechat.org/dev[roadmap] or
https://weechat.org/dev/[roadmap] or
https://github.com/weechat/weechat/milestones[milestones] on GitHub.
Pull requests on GitHub are welcome for minor new features.
For major new features, it's better to discuss about it in IRC
(server: _chat.freenode.net_, channel _#weechat_).
(server: _irc.libera.chat_, channel _#weechat_).
Before submitting any pull request, be sure you have read the
https://weechat.org/files/doc/devel/weechat_dev.en.html#coding_rules[coding rules]
https://weechat.org/doc/weechat/dev/#coding_rules[coding rules]
in Developer's guide, which contains info about styles used, naming convention
and other useful info.
== Semantic versioning
Since version 4.0.0, WeeChat is following a "practical" semantic versioning.
It is based on https://semver.org/[Semantic Versioning] but in a less strict way: breaking changes in API with low user impact don't bump the major version.
The version number is on three digits `X.Y.Z`, where:
* `X` is the major version
* `Y` is the minor version
* `Z` is the patch version.
Rules to increment the version number:
* the *major version* number (`X`) is incremented only when intentional breaking changes target feature areas that are actively consumed by users, scripts or C plugin API
* the *minor version* number (`Y`) is incremented for any new release of WeeChat that includes new features and bug fixes, possibly breaking API with low impact on users
* the *patch version* number (`Z`) is reserved for releases that address severe bugs or security issues found after the release.
For more information, see the https://specs.weechat.org/specs/2023-003-practical-semantic-versioning.html[specification].
-82
View File
@@ -1,82 +0,0 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2005 Julien Louis <ptitlouis@sysif.net>
# Copyright (C) 2006-2009 Emmanuel Bouthenot <kolter@openics.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
# This target will update file config-git.h with output of command "git describe"
# (if needed, and only for a devel/rc version).
BUILT_SOURCES = build-config-git.h
build-config-git.h:
-$(abs_top_srcdir)/tools/git-version.sh "$(abs_top_srcdir)" "$(VERSION)" config-git.h
if TESTS
tests_dir = tests
endif
SUBDIRS = po doc intl src $(tests_dir)
EXTRA_DIST = AUTHORS.adoc \
ChangeLog.adoc \
Contributing.adoc \
README.adoc \
ReleaseNotes.adoc \
CMakeLists.txt \
config.rpath \
config.h.cmake \
cmake/CMakeParseArguments.cmake \
cmake/FindAsciidoctor.cmake \
cmake/FindAspell.cmake \
cmake/FindCppUTest.cmake \
cmake/FindENCHANT.cmake \
cmake/FindGCRYPT.cmake \
cmake/FindGettext.cmake \
cmake/FindGnuTLS.cmake \
cmake/FindGuile.cmake \
cmake/FindIconv.cmake \
cmake/FindLua.cmake \
cmake/FindNcurses.cmake \
cmake/FindPackageHandleStandardArgs.cmake \
cmake/FindPerl.cmake \
cmake/FindPkgConfig.cmake \
cmake/FindPython.cmake \
cmake/FindRuby.cmake \
cmake/FindTCL.cmake \
cmake/FindV8.cmake \
cmake/FindZLIB.cmake \
cmake/cmake_uninstall.cmake.in \
po/CMakeLists.txt \
po/srcfiles.cmake \
tools/build-test.sh \
tools/git-version.sh \
tools/makedist.sh \
version.sh \
weechat.png \
weechat.pc.in \
weechat.cygport.in
ACLOCAL_AMFLAGS = -I m4
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = weechat.pc
icondir = $(datadir)/icons/hicolor/32x32/apps
icon_DATA = weechat.png
clean-local:
$(RM) config-git.h
+15 -80
View File
@@ -5,14 +5,14 @@
pass:[<p align="center">] image:https://weechat.org/media/images/weechat_logo_large.png[align="center"] pass:[</p>]
image:https://img.shields.io/badge/diaspora*-follow-blue.svg["Diaspora*", link="https://diasp.eu/u/weechat"]
image:https://img.shields.io/badge/mastodon-follow-blue.svg["Mastodon", link="https://hostux.social/@weechat"]
image:https://img.shields.io/badge/twitter-follow-blue.svg["Twitter", link="https://twitter.com/WeeChatClient"]
image:https://img.shields.io/badge/devel%20blog-follow-blue.svg["Devel blog", link="https://weechat.org/blog/"]
image:https://img.shields.io/badge/diaspora*-follow-blue.svg["Diaspora*", link="https://diasp.eu/u/weechat"]
image:https://img.shields.io/badge/x-follow-blue.svg["Twitter", link="https://x.com/WeeChatClient"]
image:https://img.shields.io/badge/devel%20blog-follow-blue.svg["Devel blog", link="https://blog.weechat.org/"]
image:https://img.shields.io/badge/slant-recommend-28acad.svg["Slant", link="https://www.slant.co/topics/1323/~best-irc-clients-for-linux"]
image:https://img.shields.io/badge/help-donate%20%E2%9D%A4-ff69b4.svg["Donate", link="https://weechat.org/donate/"]
image:https://travis-ci.org/weechat/weechat.svg?branch=master["Build Status", link="https://travis-ci.org/weechat/weechat"]
image:https://github.com/weechat/weechat/workflows/CI/badge.svg["CI", link="https://github.com/weechat/weechat/actions"]
image:https://codecov.io/gh/weechat/weechat/branch/master/graph/badge.svg["Code coverage", link="https://codecov.io/gh/weechat/weechat"]
*WeeChat* (Wee Enhanced Environment for Chat) is a free chat client, fast and
@@ -23,13 +23,13 @@ Homepage: https://weechat.org/
== Features
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/files/doc/stable/weechat_user.en.html#plugins[plugins]. All plugins (including https://weechat.org/files/doc/stable/weechat_user.en.html#irc_plugin[IRC]) are independent and can be unloaded.
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/doc/weechat/user/#plugins[plugins]. All plugins (including https://weechat.org/doc/weechat/user/#irc[IRC]) are independent and can be unloaded.
* *Multi-platform*: WeeChat runs on GNU/Linux, *BSD, GNU/Hurd, Haiku, macOS and Windows (Bash/Ubuntu and Cygwin).
* *Multi-protocols*: WeeChat is designed to support multiple protocols by plugins, like IRC.
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://tools.ietf.org/html/rfc1459[1459], https://tools.ietf.org/html/rfc2810[2810], https://tools.ietf.org/html/rfc2811[2811], https://tools.ietf.org/html/rfc2812[2812] and https://tools.ietf.org/html/rfc2813[2813].
* *Small, fast and very light*: the core is and should stay as light and fast as possible.
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/stable/language/perl/[Perl], https://weechat.org/scripts/stable/language/python/[Python], https://weechat.org/scripts/stable/language/ruby[Ruby], https://weechat.org/scripts/stable/language/lua/[Lua], https://weechat.org/scripts/stable/language/tcl/[Tcl], https://weechat.org/scripts/stable/language/guile/[Scheme], https://weechat.org/scripts/stable/language/javascript/[JavaScript] and https://weechat.org/scripts/stable/language/php/[PHP]).
* *Fully documented*: there is comprehensive https://weechat.org/doc/[documentation], which is https://weechat.org/files/doc/stable/weechat_dev.en.html#translations[translated] into several languages.
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://datatracker.ietf.org/doc/html/rfc1459[1459], https://datatracker.ietf.org/doc/html/rfc2810[2810], https://datatracker.ietf.org/doc/html/rfc2811[2811], https://datatracker.ietf.org/doc/html/rfc2812[2812], https://datatracker.ietf.org/doc/html/rfc2813[2813] and https://datatracker.ietf.org/doc/html/rfc7194[7194].
* *Small, fast, and very light*: the core is and should stay as light and fast as possible.
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/language/perl/[Perl], https://weechat.org/scripts/language/python/[Python], https://weechat.org/scripts/language/ruby[Ruby], https://weechat.org/scripts/language/lua/[Lua], https://weechat.org/scripts/language/tcl/[Tcl], https://weechat.org/scripts/language/guile/[Scheme], https://weechat.org/scripts/language/javascript/[JavaScript] and https://weechat.org/scripts/language/php/[PHP]).
* *Fully documented*: there is comprehensive https://weechat.org/doc/weechat/[documentation], which is https://weechat.org/doc/weechat/dev/#translations[translated] into several languages.
* *Developed from scratch*: WeeChat was built from scratch and is not based on any other client.
* *Free software*: WeeChat is released under https://www.gnu.org/licenses/gpl-3.0.html[GPLv3].
@@ -37,84 +37,19 @@ pass:[<p align="center">] image:https://weechat.org/media/images/screenshots/wee
On WeeChat's website you can find https://weechat.org/about/screenshots/[more screenshots].
== Install
== Installation
=== Dependencies
WeeChat can be installed using your favorite package manager (recommended) or by compiling it yourself.
Following packages are *required*:
For detailed instructions, please check the https://weechat.org/doc/weechat/user/#install[WeeChat user's guide].
* CMake
* libncurses
* libcurl
* zlib
* libgcrypt
== Semantic versioning
Following packages are optional:
* for i18n: gettext
* for SSL: gnutls, ca-certificates
* for spell checking: aspell or enchant
* for scripting: python, perl, ruby, lua, tcl, guile, libv8 (javascript), php
* for building doc and man page: asciidoctor
* for building tests: C++ compiler, CppUTest
For a complete list of dependencies and versions recommended, please look at
https://weechat.org/files/doc/devel/weechat_user.en.html#dependencies[user's guide].
=== Compile
WeeChat can be built with https://cmake.org/[CMake] (recommended) or autotools.
[NOTE]
Only CMake is officially supported to build WeeChat. You should only use
autotools if you are not able to use CMake. +
Building with autotools requires more dependencies and is slower than with CMake.
* Installation in system directories (requires _root_ privileges):
----
$ mkdir build
$ cd build
$ cmake ..
$ make
$ sudo make install
----
* Installation in custom directory (for example your home):
----
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/directory
$ make
$ make install
----
For more information or installation with autotools, please look at
https://weechat.org/files/doc/devel/weechat_user.en.html#compile_with_autotools[user's guide].
=== Run tests
Following packages are *required* to compile tests:
* libcpputest-dev
* C++ compiler
Tests must be enabled when compiling WeeChat:
----
$ cmake .. -DENABLE_TESTS=ON
----
They can be launched after compilation from the build directory:
----
$ ctest -V
----
WeeChat is following a "practical" semantic versioning, see file link:Contributing.adoc#semantic-versioning[Contributing.adoc].
== Copyright
Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
This file is part of WeeChat, the extensible chat client.
+2031 -272
View File
File diff suppressed because it is too large Load Diff
-70
View File
@@ -1,70 +0,0 @@
#!/bin/sh
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2005 Julien Louis <ptitlouis@sysif.net>
# Copyright (C) 2005-2006 Emmanuel Bouthenot <kolter@openics.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
###
### common stuff
###
DIR=$(cd $(dirname "$0"); pwd)
cd $DIR
AUTOGEN_LOG=autogen.log
err ()
{
echo "-------"
echo "Error :"
echo "---8<-----------------------------------"
cat $AUTOGEN_LOG
echo "----------------------------------->8---"
exit 1
}
run ()
{
echo -n "Running \"$@\"..."
eval $@ >$AUTOGEN_LOG 2>&1
if [ $? = 0 ] ; then
echo " OK"
else
echo " FAILED"
err
fi
}
# remove autotools stuff
run "rm -f config.h.in"
run "rm -f aclocal.m4 configure config.log config.status"
run "rm -rf autom4te*.cache"
# remove libtool stuff
run "rm -f libtool"
# remove gettext stuff
run "rm -f ABOUT-NLS"
run "rm -rf intl"
# execute autoreconf cmds
run "autoreconf -vi"
# ending
rm -f $AUTOGEN_LOG
+3 -3
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -34,7 +34,7 @@ if(ASCIIDOCTOR_EXECUTABLE)
execute_process(
COMMAND ${ASCIIDOCTOR_EXECUTABLE} --version
OUTPUT_VARIABLE ASCIIDOCTOR_VERSION
)
)
string(REGEX REPLACE "^Asciidoctor ([^ ]+) .*" "\\1" ASCIIDOCTOR_VERSION "${ASCIIDOCTOR_VERSION}")
@@ -45,5 +45,5 @@ if(ASCIIDOCTOR_EXECUTABLE)
mark_as_advanced(
ASCIIDOCTOR_EXECUTABLE
ASCIIDOCTOR_VERSION
)
)
endif()
+2 -2
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -55,4 +55,4 @@ endif()
mark_as_advanced(
ASPELL_INCLUDE_PATH
ASPELL_LIBRARY
)
)
+3 -3
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2014-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2014-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -27,8 +27,8 @@
# CPPUTEST_LIBRARIES = Link options to compile with CppUTest
if(CPPUTEST_FOUND)
# Already in cache, be silent
set(CPPUTEST_FIND_QUIETLY TRUE)
# Already in cache, be silent
set(CPPUTEST_FIND_QUIETLY TRUE)
endif()
find_package(PkgConfig)
+10 -11
View File
@@ -13,10 +13,8 @@
if(ENCHANT_INCLUDE_DIR AND ENCHANT_LIBRARIES)
# in cache already
set(ENCHANT_FOUND TRUE)
else()
if(NOT WIN32)
# use pkg-config to get the directories and then use these values
@@ -27,17 +25,19 @@ else()
endif()
find_path(ENCHANT_INCLUDE_DIR
NAMES enchant++.h
HINTS ${PC_ENCHANT_INCLUDEDIR}
${PC_ENCHANT_INCLUDE_DIRS}
PATH_SUFFIXES enchant )
NAMES enchant++.h
HINTS ${PC_ENCHANT_INCLUDEDIR} ${PC_ENCHANT_INCLUDE_DIRS}
PATH_SUFFIXES enchant-2 enchant
)
find_library(ENCHANT_LIBRARIES NAMES enchant
HINTS ${PC_ENCHANT_LIBDIR}
${PC_ENCHANT_LIBRARY_DIRS} )
find_library(ENCHANT_LIBRARIES
NAMES enchant-2 enchant
HINTS ${PC_ENCHANT_LIBDIR}
${PC_ENCHANT_LIBRARY_DIRS}
)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(ENCHANT DEFAULT_MSG ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES )
find_package_handle_standard_args(ENCHANT DEFAULT_MSG ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES)
mark_as_advanced(ENCHANT_INCLUDE_DIR ENCHANT_LIBRARIES)
@@ -47,5 +47,4 @@ else()
check_symbol_exists(enchant_get_version "enchant.h" HAVE_ENCHANT_GET_VERSION)
set(CMAKE_REQUIRED_INCLUDES)
set(CMAKE_REQUIRED_LIBRARIES)
endif()
-53
View File
@@ -1,53 +0,0 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
# - Find Gcrypt
# This module finds if libgcrypt is installed and determines where
# the include files and libraries are.
#
# This code sets the following variables:
#
# GCRYPT_CFLAGS = cflags to use to compile
# GCRYPT_LDFLAGS = ldflags to use to compile
#
find_program(LIBGCRYPT_CONFIG_EXECUTABLE NAMES libgcrypt-config)
set(GCRYPT_LDFLAGS)
set(GCRYPT_CFLAGS)
if(LIBGCRYPT_CONFIG_EXECUTABLE)
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS)
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS)
if(${GCRYPT_CFLAGS} MATCHES "\n")
set(GCRYPT_CFLAGS " ")
endif()
endif()
# handle the QUIETLY and REQUIRED arguments and set GCRYPT_FOUND to TRUE if
# all listed variables are TRUE
include(${CMAKE_HOME_DIRECTORY}/cmake/FindPackageHandleStandardArgs.cmake)
find_package_handle_standard_args(GCRYPT REQUIRED_VARS GCRYPT_LDFLAGS GCRYPT_CFLAGS)
if(GCRYPT_FOUND)
mark_as_advanced(GCRYPT_CFLAGS GCRYPT_LDFLAGS)
endif()
+24 -23
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2007 Julien Louis <ptitlouis@sysif.net>
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
#
@@ -28,8 +28,8 @@
# GETTEXT_FOUND = is gettext usable on system?
if(GETTEXT_FOUND)
# Already in cache, be silent
set(GETTEXT_FIND_QUIETLY TRUE)
# Already in cache, be silent
set(GETTEXT_FIND_QUIETLY TRUE)
endif()
include(CheckIncludeFiles)
@@ -45,27 +45,28 @@ set(CMAKE_REQUIRED_INCLUDES ${LIBINTL_INCLUDE})
check_include_files(libintl.h HAVE_LIBINTL_H)
if(HAVE_LIBINTL_H)
check_function_exists(dgettext LIBC_HAS_DGETTEXT)
if(LIBC_HAS_DGETTEXT)
set(GETTEXT_FOUND TRUE)
else()
find_library(LIBINTL_LIBRARY NAMES intl
PATHS
/usr/local/lib
/usr/lib
)
if(LIBINTL_LIBRARY)
if(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
set(CMAKE_REQUIRED_LIBRARIES "iconv")
check_library_exists(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT)
else()
check_library_exists(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT)
endif()
if(NOT HAVE_LIBINTL_H)
message(SEND_ERROR "Header libintl.h not found, required if ENABLE_NLS is enabled")
endif()
if(LIBINTL_HAS_DGETTEXT)
set(GETTEXT_FOUND TRUE)
endif()
check_function_exists(dgettext LIBC_HAS_DGETTEXT)
if(LIBC_HAS_DGETTEXT)
set(GETTEXT_FOUND TRUE)
else()
find_library(LIBINTL_LIBRARY NAMES intl
PATHS
/usr/local/lib
/usr/lib
)
if(LIBINTL_LIBRARY)
if(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
set(CMAKE_REQUIRED_LIBRARIES "iconv")
check_library_exists(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT)
else()
check_library_exists(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT)
endif()
if(LIBINTL_HAS_DGETTEXT)
set(GETTEXT_FOUND TRUE)
endif()
endif()
endif()
+8 -8
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
#
# This file is part of WeeChat, the extensible chat client.
@@ -30,23 +30,23 @@
# GNUTLS_LDFLAGS = ldflags to use to compile
if(GNUTLS_INCLUDE_PATH AND GNUTLS_LIBRARY)
# Already in cache, be silent
set(GNUTLS_FIND_QUIETLY TRUE)
# Already in cache, be silent
set(GNUTLS_FIND_QUIETLY TRUE)
endif()
find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config)
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=prefix gnutls
OUTPUT_VARIABLE GNUTLS_PREFIX
OUTPUT_VARIABLE GNUTLS_PREFIX
)
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --cflags gnutls
OUTPUT_VARIABLE GNUTLS_CFLAGS
OUTPUT_VARIABLE GNUTLS_CFLAGS
)
string(REGEX REPLACE "[\r\n]" "" GNUTLS_CFLAGS "${GNUTLS_CFLAGS}")
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --libs gnutls
OUTPUT_VARIABLE GNUTLS_LDFLAGS
OUTPUT_VARIABLE GNUTLS_LDFLAGS
)
string(REGEX REPLACE "[\r\n]" "" GNUTLS_LDFLAGS "${GNUTLS_LDFLAGS}")
@@ -63,8 +63,8 @@ find_library(GNUTLS_LIBRARY
PATHS GNUTLS_POSSIBLE_LIB_DIR
)
if(GNUTLS_INCLUDE_PATH AND GNUTLS_LIBRARY)
set(GNUTLS_FOUND TRUE)
if(NOT GNUTLS_INCLUDE_PATH OR NOT GNUTLS_LIBRARY)
message(FATAL_ERROR "GnuTLS was not found")
endif()
mark_as_advanced(
+4 -4
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2011-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2011-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -27,13 +27,13 @@
# GUILE_LIBRARIES = Link options to compile Guile
if(GUILE_FOUND)
# Already in cache, be silent
set(GUILE_FIND_QUIETLY TRUE)
# Already in cache, be silent
set(GUILE_FIND_QUIETLY TRUE)
endif()
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
pkg_search_module(GUILE guile-2.0)
pkg_search_module(GUILE guile-3.0 guile-2.2 guile-2.0)
if(GUILE_FOUND)
# check if variable "scm_install_gmp_memory_functions" exists
set(CMAKE_REQUIRED_INCLUDES ${GUILE_INCLUDE_DIRS})
+3 -3
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -29,8 +29,8 @@
# ICONV_FOUND = is iconv usable on system?
if(ICONV_FOUND)
# Already in cache, be silent
set(ICONV_FIND_QUIETLY TRUE)
# Already in cache, be silent
set(ICONV_FIND_QUIETLY TRUE)
endif()
include(CheckLibraryExists)
+4 -4
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -29,11 +29,11 @@
# LUA_FOUND = is liblua usable on system?
if(LUA_FOUND)
# Already in cache, be silent
set(LUA_FIND_QUIETLY TRUE)
# Already in cache, be silent
set(LUA_FIND_QUIETLY TRUE)
endif()
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
pkg_search_module(LUA lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
pkg_search_module(LUA lua5.4 lua-5.4 lua54 lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
endif()
+3 -4
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -23,9 +23,8 @@ endif()
find_path(NCURSES_INCLUDE_PATH
NAMES ncurses.h curses.h
PATHS /usr/include/ncursesw /usr/include/ncurses /usr/include
/usr/local/include/ncursesw /usr/local/include/ncurses /usr/local/include
/usr/pkg/include/ncursesw /usr/pkg/include/ncurses /usr/pkg/include
PATH_SUFFIXES ncursesw ncurses
PATHS /usr/include /usr/local/include /usr/pkg/include
)
find_library(NCURSESW_LIBRARY
+17 -8
View File
@@ -1,5 +1,6 @@
#
# Copyright (C) 2003-2017 Adam Saponara <as@php.net>
# Copyright (C) 2017 Adam Saponara <as@php.net>
# Copyright (C) 2017-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -23,25 +24,33 @@ endif()
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
pkg_search_module(PHP php7)
pkg_search_module(PHP php8 php7)
endif()
if(NOT PHP_FOUND)
find_program(PHP_CONFIG_EXECUTABLE NAMES
php-config8.2 php-config82
php-config8.1 php-config81
php-config8.0 php-config80
php-config8
php-config7.4 php-config74
php-config7.3 php-config73
php-config7.2 php-config72
php-config7.1 php-config71
php-config7.0 php-config70
php-config php-config7)
php-config7
php-config
)
if (PHP_CONFIG_EXECUTABLE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --prefix OUTPUT_VARIABLE PHP_LIB_PREFIX OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --includes OUTPUT_VARIABLE PHP_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE PHP_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --version OUTPUT_VARIABLE PHP_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
if(${PHP_VERSION} MATCHES "^7")
if(${PHP_VERSION} MATCHES "^[78]")
find_library(PHP_LIB
NAMES php7.3 php7.2 php7.1 php7.0 php7
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64)
NAMES php8.2 php82 php8.1 php81 php8.0 php80 php8 php7.4 php74 php7.3 php73 php7.2 php72 php7.1 php71 php7.0 php70 php7 php
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64
)
if(PHP_LIB)
get_filename_component(PHP_LIB_DIR ${PHP_LIB} DIRECTORY)
string(REPLACE "-I" "" PHP_INCLUDE_DIRS ${PHP_INCLUDE_DIRS})
@@ -54,9 +63,9 @@ if(NOT PHP_FOUND)
endif()
if(NOT PHP_FOUND)
message(WARNING "Could not find libphp7. "
message(WARNING "Could not find libphp. "
"Ensure PHP >=7.0.0 development libraries are installed and compiled with `--enable-embed`. "
"Ensure `php-config` is in `PATH`. "
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp7."
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp."
)
endif()
-260
View File
@@ -1,260 +0,0 @@
# FIND_PACKAGE_HANDLE_STANDARD_ARGS(<name> ... )
#
# This function is intended to be used in FindXXX.cmake modules files.
# It handles the REQUIRED, QUIET and version-related arguments to FIND_PACKAGE().
# It also sets the <UPPERCASED_NAME>_FOUND variable.
# The package is considered found if all variables <var1>... listed contain
# valid results, e.g. valid filepaths.
#
# There are two modes of this function. The first argument in both modes is
# the name of the Find-module where it is called (in original casing).
#
# The first simple mode looks like this:
# FIND_PACKAGE_HANDLE_STANDARD_ARGS(<name> (DEFAULT_MSG|"Custom failure message") <var1>...<varN> )
# If the variables <var1> to <varN> are all valid, then <UPPERCASED_NAME>_FOUND
# will be set to TRUE.
# If DEFAULT_MSG is given as second argument, then the function will generate
# itself useful success and error messages. You can also supply a custom error message
# for the failure case. This is not recommended.
#
# The second mode is more powerful and also supports version checking:
# FIND_PACKAGE_HANDLE_STANDARD_ARGS(NAME [REQUIRED_VARS <var1>...<varN>]
# [VERSION_VAR <versionvar>
# [CONFIG_MODE]
# [FAIL_MESSAGE "Custom failure message"] )
#
# As above, if <var1> through <varN> are all valid, <UPPERCASED_NAME>_FOUND
# will be set to TRUE.
# After REQUIRED_VARS the variables which are required for this package are listed.
# Following VERSION_VAR the name of the variable can be specified which holds
# the version of the package which has been found. If this is done, this version
# will be checked against the (potentially) specified required version used
# in the find_package() call. The EXACT keyword is also handled. The default
# messages include information about the required version and the version
# which has been actually found, both if the version is ok or not.
# Use the option CONFIG_MODE if your FindXXX.cmake module is a wrapper for
# a find_package(... NO_MODULE) call, in this case all the information
# provided by the config-mode of find_package() will be evaluated
# automatically.
# Via FAIL_MESSAGE a custom failure message can be specified, if this is not
# used, the default message will be displayed.
#
# Example for mode 1:
#
# FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 DEFAULT_MSG LIBXML2_LIBRARY LIBXML2_INCLUDE_DIR)
#
# LibXml2 is considered to be found, if both LIBXML2_LIBRARY and
# LIBXML2_INCLUDE_DIR are valid. Then also LIBXML2_FOUND is set to TRUE.
# If it is not found and REQUIRED was used, it fails with FATAL_ERROR,
# independent whether QUIET was used or not.
# If it is found, success will be reported, including the content of <var1>.
# On repeated Cmake runs, the same message won't be printed again.
#
# Example for mode 2:
#
# FIND_PACKAGE_HANDLE_STANDARD_ARGS(BISON REQUIRED_VARS BISON_EXECUTABLE
# VERSION_VAR BISON_VERSION)
# In this case, BISON is considered to be found if the variable(s) listed
# after REQUIRED_VAR are all valid, i.e. BISON_EXECUTABLE in this case.
# Also the version of BISON will be checked by using the version contained
# in BISON_VERSION.
# Since no FAIL_MESSAGE is given, the default messages will be printed.
#
# Another example for mode 2:
#
# FIND_PACKAGE(Automoc4 QUIET NO_MODULE HINTS /opt/automoc4)
# FIND_PACKAGE_HANDLE_STANDARD_ARGS(Automoc4 CONFIG_MODE)
# In this case, FindAutmoc4.cmake wraps a call to FIND_PACKAGE(Automoc4 NO_MODULE)
# and adds an additional search directory for automoc4.
# The following FIND_PACKAGE_HANDLE_STANDARD_ARGS() call produces a proper
# success/error message.
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
INCLUDE(FindPackageMessage)
INCLUDE(CMakeParseArguments)
# internal helper macro
MACRO(_FPHSA_FAILURE_MESSAGE _msg)
IF (${_NAME}_FIND_REQUIRED)
MESSAGE(FATAL_ERROR "${_msg}")
ELSE (${_NAME}_FIND_REQUIRED)
IF (NOT ${_NAME}_FIND_QUIETLY)
MESSAGE(STATUS "${_msg}")
ENDIF (NOT ${_NAME}_FIND_QUIETLY)
ENDIF (${_NAME}_FIND_REQUIRED)
ENDMACRO(_FPHSA_FAILURE_MESSAGE _msg)
# internal helper macro to generate the failure message when used in CONFIG_MODE:
MACRO(_FPHSA_HANDLE_FAILURE_CONFIG_MODE)
# <name>_CONFIG is set, but FOUND is false, this means that some other of the REQUIRED_VARS was not found:
IF(${_NAME}_CONFIG)
_FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: missing: ${MISSING_VARS} (found ${${_NAME}_CONFIG} ${VERSION_MSG})")
ELSE(${_NAME}_CONFIG)
# If _CONSIDERED_CONFIGS is set, the config-file has been found, but no suitable version.
# List them all in the error message:
IF(${_NAME}_CONSIDERED_CONFIGS)
SET(configsText "")
LIST(LENGTH ${_NAME}_CONSIDERED_CONFIGS configsCount)
MATH(EXPR configsCount "${configsCount} - 1")
FOREACH(currentConfigIndex RANGE ${configsCount})
LIST(GET ${_NAME}_CONSIDERED_CONFIGS ${currentConfigIndex} filename)
LIST(GET ${_NAME}_CONSIDERED_VERSIONS ${currentConfigIndex} version)
SET(configsText "${configsText} ${filename} (version ${version})\n")
ENDFOREACH(currentConfigIndex)
_FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} ${VERSION_MSG}, checked the following files:\n${configsText}")
ELSE(${_NAME}_CONSIDERED_CONFIGS)
# Simple case: No Config-file was found at all:
_FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: found neither ${_NAME}Config.cmake nor ${_NAME_LOWER}-config.cmake ${VERSION_MSG}")
ENDIF(${_NAME}_CONSIDERED_CONFIGS)
ENDIF(${_NAME}_CONFIG)
ENDMACRO(_FPHSA_HANDLE_FAILURE_CONFIG_MODE)
FUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FIRST_ARG)
# set up the arguments for CMAKE_PARSE_ARGUMENTS and check whether we are in
# new extended or in the "old" mode:
SET(options CONFIG_MODE)
SET(oneValueArgs FAIL_MESSAGE VERSION_VAR)
SET(multiValueArgs REQUIRED_VARS)
SET(_KEYWORDS_FOR_EXTENDED_MODE ${options} ${oneValueArgs} ${multiValueArgs} )
LIST(FIND _KEYWORDS_FOR_EXTENDED_MODE "${_FIRST_ARG}" INDEX)
IF(${INDEX} EQUAL -1)
SET(FPHSA_FAIL_MESSAGE ${_FIRST_ARG})
SET(FPHSA_REQUIRED_VARS ${ARGN})
SET(FPHSA_VERSION_VAR)
ELSE(${INDEX} EQUAL -1)
CMAKE_PARSE_ARGUMENTS(FPHSA "${options}" "${oneValueArgs}" "${multiValueArgs}" ${_FIRST_ARG} ${ARGN})
IF(FPHSA_UNPARSED_ARGUMENTS)
MESSAGE(FATAL_ERROR "Unknown keywords given to FIND_PACKAGE_HANDLE_STANDARD_ARGS(): \"${FPHSA_UNPARSED_ARGUMENTS}\"")
ENDIF(FPHSA_UNPARSED_ARGUMENTS)
IF(NOT FPHSA_FAIL_MESSAGE)
SET(FPHSA_FAIL_MESSAGE "DEFAULT_MSG")
ENDIF(NOT FPHSA_FAIL_MESSAGE)
ENDIF(${INDEX} EQUAL -1)
# now that we collected all arguments, process them
IF("${FPHSA_FAIL_MESSAGE}" STREQUAL "DEFAULT_MSG")
SET(FPHSA_FAIL_MESSAGE "Could NOT find ${_NAME}")
ENDIF("${FPHSA_FAIL_MESSAGE}" STREQUAL "DEFAULT_MSG")
# In config-mode, we rely on the variable <package>_CONFIG, which is set by find_package()
# when it successfully found the config-file, including version checking:
IF(FPHSA_CONFIG_MODE)
LIST(INSERT FPHSA_REQUIRED_VARS 0 ${_NAME}_CONFIG)
LIST(REMOVE_DUPLICATES FPHSA_REQUIRED_VARS)
SET(FPHSA_VERSION_VAR ${_NAME}_VERSION)
ENDIF(FPHSA_CONFIG_MODE)
IF(NOT FPHSA_REQUIRED_VARS)
MESSAGE(FATAL_ERROR "No REQUIRED_VARS specified for FIND_PACKAGE_HANDLE_STANDARD_ARGS()")
ENDIF(NOT FPHSA_REQUIRED_VARS)
LIST(GET FPHSA_REQUIRED_VARS 0 _FIRST_REQUIRED_VAR)
STRING(TOUPPER ${_NAME} _NAME_UPPER)
STRING(TOLOWER ${_NAME} _NAME_LOWER)
# collect all variables which were not found, so they can be printed, so the
# user knows better what went wrong (#6375)
SET(MISSING_VARS "")
SET(DETAILS "")
SET(${_NAME_UPPER}_FOUND TRUE)
# check if all passed variables are valid
FOREACH(_CURRENT_VAR ${FPHSA_REQUIRED_VARS})
IF(NOT ${_CURRENT_VAR})
SET(${_NAME_UPPER}_FOUND FALSE)
SET(MISSING_VARS "${MISSING_VARS} ${_CURRENT_VAR}")
ELSE(NOT ${_CURRENT_VAR})
SET(DETAILS "${DETAILS}[${${_CURRENT_VAR}}]")
ENDIF(NOT ${_CURRENT_VAR})
ENDFOREACH(_CURRENT_VAR)
# version handling:
SET(VERSION_MSG "")
SET(VERSION_OK TRUE)
SET(VERSION ${${FPHSA_VERSION_VAR}} )
IF (${_NAME}_FIND_VERSION)
IF(VERSION)
IF(${_NAME}_FIND_VERSION_EXACT) # exact version required
IF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}")
SET(VERSION_MSG "Found unsuitable version \"${VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"")
SET(VERSION_OK FALSE)
ELSE (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}")
SET(VERSION_MSG "(found suitable exact version \"${VERSION}\")")
ENDIF (NOT "${${_NAME}_FIND_VERSION}" VERSION_EQUAL "${VERSION}")
ELSE(${_NAME}_FIND_VERSION_EXACT) # minimum version specified:
IF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}")
SET(VERSION_MSG "Found unsuitable version \"${VERSION}\", but required is at least \"${${_NAME}_FIND_VERSION}\"")
SET(VERSION_OK FALSE)
ELSE ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}")
SET(VERSION_MSG "(found suitable version \"${VERSION}\", required is \"${${_NAME}_FIND_VERSION}\")")
ENDIF ("${${_NAME}_FIND_VERSION}" VERSION_GREATER "${VERSION}")
ENDIF(${_NAME}_FIND_VERSION_EXACT)
ELSE(VERSION)
# if the package was not found, but a version was given, add that to the output:
IF(${_NAME}_FIND_VERSION_EXACT)
SET(VERSION_MSG "(Required is exact version \"${${_NAME}_FIND_VERSION}\")")
ELSE(${_NAME}_FIND_VERSION_EXACT)
SET(VERSION_MSG "(Required is at least version \"${${_NAME}_FIND_VERSION}\")")
ENDIF(${_NAME}_FIND_VERSION_EXACT)
ENDIF(VERSION)
ELSE (${_NAME}_FIND_VERSION)
IF(VERSION)
SET(VERSION_MSG "(found version \"${VERSION}\")")
ENDIF(VERSION)
ENDIF (${_NAME}_FIND_VERSION)
IF(VERSION_OK)
SET(DETAILS "${DETAILS}[v${VERSION}(${${_NAME}_FIND_VERSION})]")
ELSE(VERSION_OK)
SET(${_NAME_UPPER}_FOUND FALSE)
ENDIF(VERSION_OK)
# print the result:
IF (${_NAME_UPPER}_FOUND)
FIND_PACKAGE_MESSAGE(${_NAME} "Found ${_NAME}: ${${_FIRST_REQUIRED_VAR}} ${VERSION_MSG}" "${DETAILS}")
ELSE (${_NAME_UPPER}_FOUND)
IF(FPHSA_CONFIG_MODE)
_FPHSA_HANDLE_FAILURE_CONFIG_MODE()
ELSE(FPHSA_CONFIG_MODE)
IF(NOT VERSION_OK)
_FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_FIRST_REQUIRED_VAR}})")
ELSE(NOT VERSION_OK)
_FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} (missing: ${MISSING_VARS}) ${VERSION_MSG}")
ENDIF(NOT VERSION_OK)
ENDIF(FPHSA_CONFIG_MODE)
ENDIF (${_NAME_UPPER}_FOUND)
SET(${_NAME_UPPER}_FOUND ${${_NAME_UPPER}_FOUND} PARENT_SCOPE)
ENDFUNCTION(FIND_PACKAGE_HANDLE_STANDARD_ARGS _FIRST_ARG)
+10 -10
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -29,31 +29,31 @@
# PERL_LFLAGS = perl compiler options for linking
if(PERL_FOUND)
# Already in cache, be silent
set(PERL_FIND_QUIETLY TRUE)
# Already in cache, be silent
set(PERL_FIND_QUIETLY TRUE)
endif()
find_program(PERL_EXECUTABLE
NAMES perl perl5
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
)
)
if(PERL_EXECUTABLE)
execute_process(
COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \"\$Config{archlibexp}/CORE\""
OUTPUT_VARIABLE PERL_INTERNAL_DIR
)
)
execute_process(
COMMAND ${PERL_EXECUTABLE} -MExtUtils::Embed -e ccopts
OUTPUT_VARIABLE PERL_CFLAGS
)
)
execute_process(
COMMAND ${PERL_EXECUTABLE} -MExtUtils::Embed -e ldopts
OUTPUT_VARIABLE PERL_LFLAGS
)
)
# remove the new lines from the output by replacing them with empty strings
string(REPLACE "\n" "" PERL_INTERNAL_DIR "${PERL_INTERNAL_DIR}")
@@ -63,12 +63,12 @@ if(PERL_EXECUTABLE)
find_path(PERL_INCLUDE_PATH
NAMES perl.h
PATHS ${PERL_INTERNAL_DIR}
)
)
find_library(PERL_LIBRARY
NAMES perl
PATHS /usr/lib /usr/local/lib /usr/pkg/lib ${PERL_INTERNAL_DIR}
)
)
if(PERL_LIBRARY AND PERL_INCLUDE_PATH)
set(PERL_FOUND TRUE)
@@ -80,5 +80,5 @@ if(PERL_EXECUTABLE)
PERL_LIBRARY
PERL_CFLAGS
PERL_LFLAGS
)
)
endif()
+597 -185
View File
@@ -1,117 +1,60 @@
# - a pkg-config module for CMake
#
# Usage:
# pkg_check_modules(<PREFIX> [REQUIRED] <MODULE> [<MODULE>]*)
# checks for all the given modules
#
# pkg_search_module(<PREFIX> [REQUIRED] <MODULE> [<MODULE>]*)
# checks for given modules and uses the first working one
#
# When the 'REQUIRED' argument was set, macros will fail with an error
# when module(s) could not be found
#
# It sets the following variables:
# PKG_CONFIG_FOUND ... true iff pkg-config works on the system
# PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program
# <PREFIX>_FOUND ... set to 1 iff module(s) exist
#
# For the following variables two sets of values exist; first one is the
# common one and has the given PREFIX. The second set contains flags
# which are given out when pkgconfig was called with the '--static'
# option.
# <XPREFIX>_LIBRARIES ... only the libraries (w/o the '-l')
# <XPREFIX>_LIBRARY_DIRS ... the paths of the libraries (w/o the '-L')
# <XPREFIX>_LDFLAGS ... all required linker flags
# <XPREFIX>_LDFLAGS_OTHER ... all other linker flags
# <XPREFIX>_INCLUDE_DIRS ... the '-I' preprocessor flags (w/o the '-I')
# <XPREFIX>_CFLAGS ... all required cflags
# <XPREFIX>_CFLAGS_OTHER ... the other compiler flags
#
# <XPREFIX> = <PREFIX> for common case
# <XPREFIX> = <PREFIX>_STATIC for static linking
#
# There are some special variables whose prefix depends on the count
# of given modules. When there is only one module, <PREFIX> stays
# unchanged. When there are multiple modules, the prefix will be
# changed to <PREFIX>_<MODNAME>:
# <XPREFIX>_VERSION ... version of the module
# <XPREFIX>_PREFIX ... prefix-directory of the module
# <XPREFIX>_INCLUDEDIR ... include-dir of the module
# <XPREFIX>_LIBDIR ... lib-dir of the module
#
# <XPREFIX> = <PREFIX> when |MODULES| == 1, else
# <XPREFIX> = <PREFIX>_<MODNAME>
#
# A <MODULE> parameter can have the following formats:
# {MODNAME} ... matches any version
# {MODNAME}>={VERSION} ... at least version <VERSION> is required
# {MODNAME}={VERSION} ... exactly version <VERSION> is required
# {MODNAME}<={VERSION} ... modules must not be newer than <VERSION>
#
# Examples
# pkg_check_modules (GLIB2 glib-2.0)
#
# pkg_check_modules (GLIB2 glib-2.0>=2.10)
# requires at least version 2.10 of glib2 and defines e.g.
# GLIB2_VERSION=2.10.3
#
# pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0)
# requires both glib2 and gtk2, and defines e.g.
# FOO_glib-2.0_VERSION=2.10.3
# FOO_gtk+-2.0_VERSION=2.8.20
#
# pkg_check_modules (XRENDER REQUIRED xrender)
# defines e.g.:
# XRENDER_LIBRARIES=Xrender;X11
# XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp
#
# pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2)
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
#[========================================[.rst:
FindPkgConfig
-------------
# Copyright (C) 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
#
# Redistribution and use, with or without modification, are permitted
# provided that the following conditions are met:
#
# 1. Redistributions must retain the above copyright notice, this
# list of conditions and the following disclaimer.
# 2. The name of the author may not be used to endorse or promote
# products derived from this software without specific prior
# written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
A ``pkg-config`` module for CMake.
Finds the ``pkg-config`` executable and adds the :command:`pkg_get_variable`,
:command:`pkg_check_modules` and :command:`pkg_search_module` commands. The
following variables will also be set:
``PKG_CONFIG_FOUND``
if pkg-config executable was found
``PKG_CONFIG_EXECUTABLE``
pathname of the pkg-config program
``PKG_CONFIG_VERSION_STRING``
version of pkg-config (since CMake 2.8.8)
#]========================================]
### Common stuff ####
set(PKG_CONFIG_VERSION 1)
set(PKG_CONFIG_FOUND 0)
# find pkg-config, use PKG_CONFIG if set
if((NOT PKG_CONFIG_EXECUTABLE) AND (NOT "$ENV{PKG_CONFIG}" STREQUAL ""))
set(PKG_CONFIG_EXECUTABLE "$ENV{PKG_CONFIG}" CACHE FILEPATH "pkg-config executable")
endif()
find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable")
mark_as_advanced(PKG_CONFIG_EXECUTABLE)
if(PKG_CONFIG_EXECUTABLE)
set(PKG_CONFIG_FOUND 1)
endif(PKG_CONFIG_EXECUTABLE)
if (PKG_CONFIG_EXECUTABLE)
execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --version
OUTPUT_VARIABLE PKG_CONFIG_VERSION_STRING
ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE)
endif ()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(PkgConfig
REQUIRED_VARS PKG_CONFIG_EXECUTABLE
VERSION_VAR PKG_CONFIG_VERSION_STRING)
# This is needed because the module name is "PkgConfig" but the name of
# this variable has always been PKG_CONFIG_FOUND so this isn't automatically
# handled by FPHSA.
set(PKG_CONFIG_FOUND "${PKGCONFIG_FOUND}")
# Unsets the given variables
macro(_pkgconfig_unset var)
set(${var} "" CACHE INTERNAL "")
endmacro(_pkgconfig_unset)
endmacro()
macro(_pkgconfig_set var value)
set(${var} ${value} CACHE INTERNAL "")
endmacro(_pkgconfig_set)
endmacro()
# Invokes pkgconfig, cleans up the result and sets variables
macro(_pkgconfig_invoke _pkglist _prefix _varname _regexp)
@@ -120,55 +63,311 @@ macro(_pkgconfig_invoke _pkglist _prefix _varname _regexp)
execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE} ${ARGN} ${_pkglist}
OUTPUT_VARIABLE _pkgconfig_invoke_result
RESULT_VARIABLE _pkgconfig_failed)
RESULT_VARIABLE _pkgconfig_failed
OUTPUT_STRIP_TRAILING_WHITESPACE)
if (_pkgconfig_failed)
set(_pkgconfig_${_varname} "")
_pkgconfig_unset(${_prefix}_${_varname})
else(_pkgconfig_failed)
string(REGEX REPLACE "[\r\n]" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
string(REGEX REPLACE " +$" "" _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
else()
string(REGEX REPLACE "[\r\n]" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
if (NOT ${_regexp} STREQUAL "")
string(REGEX REPLACE "${_regexp}" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
endif(NOT ${_regexp} STREQUAL "")
endif()
separate_arguments(_pkgconfig_invoke_result)
#message(STATUS " ${_varname} ... ${_pkgconfig_invoke_result}")
set(_pkgconfig_${_varname} ${_pkgconfig_invoke_result})
_pkgconfig_set(${_prefix}_${_varname} "${_pkgconfig_invoke_result}")
endif(_pkgconfig_failed)
endmacro(_pkgconfig_invoke)
endif()
endmacro()
# Internal version of pkg_get_variable; expects PKG_CONFIG_PATH to already be set
function (_pkg_get_variable result pkg variable)
_pkgconfig_invoke("${pkg}" "prefix" "result" "" "--variable=${variable}")
set("${result}"
"${prefix_result}"
PARENT_SCOPE)
endfunction ()
# Invokes pkgconfig two times; once without '--static' and once with
# '--static'
macro(_pkgconfig_invoke_dyn _pkglist _prefix _varname cleanup_regexp)
_pkgconfig_invoke("${_pkglist}" ${_prefix} ${_varname} "${cleanup_regexp}" ${ARGN})
_pkgconfig_invoke("${_pkglist}" ${_prefix} STATIC_${_varname} "${cleanup_regexp}" --static ${ARGN})
endmacro(_pkgconfig_invoke_dyn)
endmacro()
# Splits given arguments into options and a package list
macro(_pkgconfig_parse_options _result _is_req)
macro(_pkgconfig_parse_options _result _is_req _is_silent _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global)
set(${_is_req} 0)
set(${_is_silent} 0)
set(${_no_cmake_path} 0)
set(${_no_cmake_environment_path} 0)
set(${_imp_target} 0)
set(${_imp_target_global} 0)
if(DEFINED PKG_CONFIG_USE_CMAKE_PREFIX_PATH)
if(NOT PKG_CONFIG_USE_CMAKE_PREFIX_PATH)
set(${_no_cmake_path} 1)
set(${_no_cmake_environment_path} 1)
endif()
elseif(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 3.1)
set(${_no_cmake_path} 1)
set(${_no_cmake_environment_path} 1)
endif()
foreach(_pkg ${ARGN})
if (_pkg STREQUAL "REQUIRED")
set(${_is_req} 1)
endif (_pkg STREQUAL "REQUIRED")
endforeach(_pkg ${ARGN})
endif ()
if (_pkg STREQUAL "QUIET")
set(${_is_silent} 1)
endif ()
if (_pkg STREQUAL "NO_CMAKE_PATH")
set(${_no_cmake_path} 1)
endif()
if (_pkg STREQUAL "NO_CMAKE_ENVIRONMENT_PATH")
set(${_no_cmake_environment_path} 1)
endif()
if (_pkg STREQUAL "IMPORTED_TARGET")
set(${_imp_target} 1)
endif()
if (_pkg STREQUAL "GLOBAL")
set(${_imp_target_global} 1)
endif()
endforeach()
if (${_imp_target_global} AND NOT ${_imp_target})
message(SEND_ERROR "the argument GLOBAL may only be used together with IMPORTED_TARGET")
endif()
set(${_result} ${ARGN})
list(REMOVE_ITEM ${_result} "REQUIRED")
endmacro(_pkgconfig_parse_options)
list(REMOVE_ITEM ${_result} "QUIET")
list(REMOVE_ITEM ${_result} "NO_CMAKE_PATH")
list(REMOVE_ITEM ${_result} "NO_CMAKE_ENVIRONMENT_PATH")
list(REMOVE_ITEM ${_result} "IMPORTED_TARGET")
list(REMOVE_ITEM ${_result} "GLOBAL")
endmacro()
# Add the content of a variable or an environment variable to a list of
# paths
# Usage:
# - _pkgconfig_add_extra_path(_extra_paths VAR)
# - _pkgconfig_add_extra_path(_extra_paths ENV VAR)
function(_pkgconfig_add_extra_path _extra_paths_var _var)
set(_is_env 0)
if(ARGC GREATER 2 AND _var STREQUAL "ENV")
set(_var ${ARGV2})
set(_is_env 1)
endif()
if(NOT _is_env)
if(NOT "${${_var}}" STREQUAL "")
list(APPEND ${_extra_paths_var} ${${_var}})
endif()
else()
if(NOT "$ENV{${_var}}" STREQUAL "")
file(TO_CMAKE_PATH "$ENV{${_var}}" _path)
list(APPEND ${_extra_paths_var} ${_path})
unset(_path)
endif()
endif()
set(${_extra_paths_var} ${${_extra_paths_var}} PARENT_SCOPE)
endfunction()
# scan the LDFLAGS returned by pkg-config for library directories and
# libraries, figure out the absolute paths of that libraries in the
# given directories
function(_pkg_find_libs _prefix _no_cmake_path _no_cmake_environment_path)
unset(_libs)
unset(_find_opts)
# set the options that are used as long as the .pc file does not provide a library
# path to look into
if(_no_cmake_path)
list(APPEND _find_opts "NO_CMAKE_PATH")
endif()
if(_no_cmake_environment_path)
list(APPEND _find_opts "NO_CMAKE_ENVIRONMENT_PATH")
endif()
unset(_search_paths)
foreach (flag IN LISTS ${_prefix}_LDFLAGS)
if (flag MATCHES "^-L(.*)")
list(APPEND _search_paths ${CMAKE_MATCH_1})
continue()
endif()
if (flag MATCHES "^-l(.*)")
set(_pkg_search "${CMAKE_MATCH_1}")
else()
continue()
endif()
if(_search_paths)
# Firstly search in -L paths
find_library(pkgcfg_lib_${_prefix}_${_pkg_search}
NAMES ${_pkg_search}
HINTS ${_search_paths} NO_DEFAULT_PATH)
endif()
find_library(pkgcfg_lib_${_prefix}_${_pkg_search}
NAMES ${_pkg_search}
${_find_opts})
mark_as_advanced(pkgcfg_lib_${_prefix}_${_pkg_search})
if(pkgcfg_lib_${_prefix}_${_pkg_search})
list(APPEND _libs "${pkgcfg_lib_${_prefix}_${_pkg_search}}")
else()
list(APPEND _libs ${_pkg_search})
endif()
endforeach()
set(${_prefix}_LINK_LIBRARIES "${_libs}" PARENT_SCOPE)
endfunction()
# create an imported target from all the information returned by pkg-config
function(_pkg_create_imp_target _prefix _imp_target_global)
# only create the target if it is linkable, i.e. no executables
if (NOT TARGET PkgConfig::${_prefix}
AND ( ${_prefix}_INCLUDE_DIRS OR ${_prefix}_LINK_LIBRARIES OR ${_prefix}_LDFLAGS_OTHER OR ${_prefix}_CFLAGS_OTHER ))
if(${_imp_target_global})
set(_global_opt "GLOBAL")
else()
unset(_global_opt)
endif()
add_library(PkgConfig::${_prefix} INTERFACE IMPORTED ${_global_opt})
if(${_prefix}_INCLUDE_DIRS)
set_property(TARGET PkgConfig::${_prefix} PROPERTY
INTERFACE_INCLUDE_DIRECTORIES "${${_prefix}_INCLUDE_DIRS}")
endif()
if(${_prefix}_LINK_LIBRARIES)
set_property(TARGET PkgConfig::${_prefix} PROPERTY
INTERFACE_LINK_LIBRARIES "${${_prefix}_LINK_LIBRARIES}")
endif()
if(${_prefix}_LDFLAGS_OTHER)
set_property(TARGET PkgConfig::${_prefix} PROPERTY
INTERFACE_LINK_OPTIONS "${${_prefix}_LDFLAGS_OTHER}")
endif()
if(${_prefix}_CFLAGS_OTHER)
set_property(TARGET PkgConfig::${_prefix} PROPERTY
INTERFACE_COMPILE_OPTIONS "${${_prefix}_CFLAGS_OTHER}")
endif()
endif()
endfunction()
# recalculate the dynamic output
# this is a macro and not a function so the result of _pkg_find_libs is automatically propagated
macro(_pkg_recalculate _prefix _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global)
_pkg_find_libs(${_prefix} ${_no_cmake_path} ${_no_cmake_environment_path})
if(${_imp_target})
_pkg_create_imp_target(${_prefix} ${_imp_target_global})
endif()
endmacro()
###
macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
macro(_pkg_set_path_internal)
set(_extra_paths)
if(NOT _no_cmake_path)
_pkgconfig_add_extra_path(_extra_paths CMAKE_PREFIX_PATH)
_pkgconfig_add_extra_path(_extra_paths CMAKE_FRAMEWORK_PATH)
_pkgconfig_add_extra_path(_extra_paths CMAKE_APPBUNDLE_PATH)
endif()
if(NOT _no_cmake_environment_path)
_pkgconfig_add_extra_path(_extra_paths ENV CMAKE_PREFIX_PATH)
_pkgconfig_add_extra_path(_extra_paths ENV CMAKE_FRAMEWORK_PATH)
_pkgconfig_add_extra_path(_extra_paths ENV CMAKE_APPBUNDLE_PATH)
endif()
if(NOT _extra_paths STREQUAL "")
# Save the PKG_CONFIG_PATH environment variable, and add paths
# from the CMAKE_PREFIX_PATH variables
set(_pkgconfig_path_old "$ENV{PKG_CONFIG_PATH}")
set(_pkgconfig_path "${_pkgconfig_path_old}")
if(NOT _pkgconfig_path STREQUAL "")
file(TO_CMAKE_PATH "${_pkgconfig_path}" _pkgconfig_path)
endif()
# Create a list of the possible pkgconfig subfolder (depending on
# the system
set(_lib_dirs)
if(NOT DEFINED CMAKE_SYSTEM_NAME
OR (CMAKE_SYSTEM_NAME MATCHES "^(Linux|kFreeBSD|GNU)$"
AND NOT CMAKE_CROSSCOMPILING))
if(EXISTS "/etc/debian_version") # is this a debian system ?
if(CMAKE_LIBRARY_ARCHITECTURE)
list(APPEND _lib_dirs "lib/${CMAKE_LIBRARY_ARCHITECTURE}/pkgconfig")
endif()
else()
# not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
list(APPEND _lib_dirs "lib32/pkgconfig")
endif()
get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
if(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
list(APPEND _lib_dirs "lib64/pkgconfig")
endif()
get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
list(APPEND _lib_dirs "libx32/pkgconfig")
endif()
endif()
endif()
if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" AND NOT CMAKE_CROSSCOMPILING)
list(APPEND _lib_dirs "libdata/pkgconfig")
endif()
list(APPEND _lib_dirs "lib/pkgconfig")
list(APPEND _lib_dirs "share/pkgconfig")
# Check if directories exist and eventually append them to the
# pkgconfig path list
foreach(_prefix_dir ${_extra_paths})
foreach(_lib_dir ${_lib_dirs})
if(EXISTS "${_prefix_dir}/${_lib_dir}")
list(APPEND _pkgconfig_path "${_prefix_dir}/${_lib_dir}")
list(REMOVE_DUPLICATES _pkgconfig_path)
endif()
endforeach()
endforeach()
# Prepare and set the environment variable
if(NOT _pkgconfig_path STREQUAL "")
# remove empty values from the list
list(REMOVE_ITEM _pkgconfig_path "")
file(TO_NATIVE_PATH "${_pkgconfig_path}" _pkgconfig_path)
if(UNIX)
string(REPLACE ";" ":" _pkgconfig_path "${_pkgconfig_path}")
string(REPLACE "\\ " " " _pkgconfig_path "${_pkgconfig_path}")
endif()
set(ENV{PKG_CONFIG_PATH} "${_pkgconfig_path}")
endif()
# Unset variables
unset(_lib_dirs)
unset(_pkgconfig_path)
endif()
endmacro()
macro(_pkg_restore_path_internal)
if(NOT _extra_paths STREQUAL "")
# Restore the environment variable
set(ENV{PKG_CONFIG_PATH} "${_pkgconfig_path_old}")
endif()
unset(_extra_paths)
unset(_pkgconfig_path_old)
endmacro()
###
macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global _prefix)
_pkgconfig_unset(${_prefix}_FOUND)
_pkgconfig_unset(${_prefix}_VERSION)
_pkgconfig_unset(${_prefix}_PREFIX)
_pkgconfig_unset(${_prefix}_INCLUDEDIR)
_pkgconfig_unset(${_prefix}_LIBDIR)
_pkgconfig_unset(${_prefix}_MODULE_NAME)
_pkgconfig_unset(${_prefix}_LIBS)
_pkgconfig_unset(${_prefix}_LIBS_L)
_pkgconfig_unset(${_prefix}_LIBS_PATHS)
@@ -193,83 +392,77 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
# give out status message telling checked module
if (NOT ${_is_silent})
if (_pkg_check_modules_cnt EQUAL 1)
message(STATUS "checking for module '${_pkg_check_modules_list}'")
else(_pkg_check_modules_cnt EQUAL 1)
message(STATUS "checking for modules '${_pkg_check_modules_list}'")
endif(_pkg_check_modules_cnt EQUAL 1)
endif(NOT ${_is_silent})
message(STATUS "Checking for module '${_pkg_check_modules_list}'")
else()
message(STATUS "Checking for modules '${_pkg_check_modules_list}'")
endif()
endif()
set(_pkg_check_modules_packages)
set(_pkg_check_modules_failed)
_pkg_set_path_internal()
# iterate through module list and check whether they exist and match the required version
foreach (_pkg_check_modules_pkg ${_pkg_check_modules_list})
set(_pkg_check_modules_exist_query)
# check whether version is given
if (_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*")
string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\1" _pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}")
string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\2" _pkg_check_modules_pkg_op "${_pkg_check_modules_pkg}")
string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\3" _pkg_check_modules_pkg_ver "${_pkg_check_modules_pkg}")
else(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*")
if (_pkg_check_modules_pkg MATCHES "(.*[^><])(=|[><]=?)(.*)")
set(_pkg_check_modules_pkg_name "${CMAKE_MATCH_1}")
set(_pkg_check_modules_pkg_op "${CMAKE_MATCH_2}")
set(_pkg_check_modules_pkg_ver "${CMAKE_MATCH_3}")
else()
set(_pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}")
set(_pkg_check_modules_pkg_op)
set(_pkg_check_modules_pkg_ver)
endif(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*")
# handle the operands
if (_pkg_check_modules_pkg_op STREQUAL ">=")
list(APPEND _pkg_check_modules_exist_query --atleast-version)
endif(_pkg_check_modules_pkg_op STREQUAL ">=")
if (_pkg_check_modules_pkg_op STREQUAL "=")
list(APPEND _pkg_check_modules_exist_query --exact-version)
endif(_pkg_check_modules_pkg_op STREQUAL "=")
if (_pkg_check_modules_pkg_op STREQUAL "<=")
list(APPEND _pkg_check_modules_exist_query --max-version)
endif(_pkg_check_modules_pkg_op STREQUAL "<=")
# create the final query which is of the format:
# * --atleast-version <version> <pkg-name>
# * --exact-version <version> <pkg-name>
# * --max-version <version> <pkg-name>
# * --exists <pkg-name>
if (_pkg_check_modules_pkg_op)
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_ver}")
else(_pkg_check_modules_pkg_op)
list(APPEND _pkg_check_modules_exist_query --exists)
endif(_pkg_check_modules_pkg_op)
endif()
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_VERSION)
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_PREFIX)
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_INCLUDEDIR)
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_LIBDIR)
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name}")
list(APPEND _pkg_check_modules_packages "${_pkg_check_modules_pkg_name}")
# create the final query which is of the format:
# * <pkg-name> > <version>
# * <pkg-name> >= <version>
# * <pkg-name> = <version>
# * <pkg-name> <= <version>
# * <pkg-name> < <version>
# * --exists <pkg-name>
list(APPEND _pkg_check_modules_exist_query --print-errors --short-errors)
if (_pkg_check_modules_pkg_op)
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name} ${_pkg_check_modules_pkg_op} ${_pkg_check_modules_pkg_ver}")
else()
list(APPEND _pkg_check_modules_exist_query --exists)
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name}")
endif()
# execute the query
execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE} ${_pkg_check_modules_exist_query}
RESULT_VARIABLE _pkgconfig_retval)
RESULT_VARIABLE _pkgconfig_retval
ERROR_VARIABLE _pkgconfig_error
ERROR_STRIP_TRAILING_WHITESPACE)
# evaluate result and tell failures
if (_pkgconfig_retval)
if(NOT ${_is_silent})
message(STATUS " package '${_pkg_check_modules_pkg}' not found")
endif(NOT ${_is_silent})
message(STATUS " ${_pkgconfig_error}")
endif()
set(_pkg_check_modules_failed 1)
endif(_pkgconfig_retval)
endforeach(_pkg_check_modules_pkg)
endif()
endforeach()
if(_pkg_check_modules_failed)
# fail when requested
if (${_is_required})
message(SEND_ERROR "A required package was not found")
endif (${_is_required})
else(_pkg_check_modules_failed)
message(FATAL_ERROR "A required package was not found")
endif ()
else()
# when we are here, we checked whether requested modules
# exist. Now, go through them and set variables
@@ -281,17 +474,23 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
# handle case when there is only one package required
if (pkg_count EQUAL 1)
set(_pkg_check_prefix "${_prefix}")
else(pkg_count EQUAL 1)
else()
set(_pkg_check_prefix "${_prefix}_${_pkg_check_modules_pkg}")
endif(pkg_count EQUAL 1)
endif()
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" VERSION "" --modversion )
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" PREFIX "" --variable=prefix )
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" INCLUDEDIR "" --variable=includedir )
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" LIBDIR "" --variable=libdir )
pkg_get_variable("${_pkg_check_prefix}_PREFIX" ${_pkg_check_modules_pkg} "prefix")
pkg_get_variable("${_pkg_check_prefix}_INCLUDEDIR" ${_pkg_check_modules_pkg} "includedir")
pkg_get_variable("${_pkg_check_prefix}_LIBDIR" ${_pkg_check_modules_pkg} "libdir")
foreach (variable IN ITEMS PREFIX INCLUDEDIR LIBDIR)
_pkgconfig_set("${_pkg_check_prefix}_${variable}" "${${_pkg_check_prefix}_${variable}}")
endforeach ()
_pkgconfig_set("${_pkg_check_prefix}_MODULE_NAME" "${_pkg_check_modules_pkg}")
message(STATUS " found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}")
endforeach(_pkg_check_modules_pkg)
if (NOT ${_is_silent})
message(STATUS " Found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}")
endif ()
endforeach()
# set variables which are combined for multiple modules
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARIES "(^| )-l" --libs-only-l )
@@ -302,58 +501,271 @@ macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" INCLUDE_DIRS "(^| )-I" --cflags-only-I )
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS "" --cflags )
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS_OTHER "" --cflags-only-other )
endif(_pkg_check_modules_failed)
else(PKG_CONFIG_EXECUTABLE)
_pkg_recalculate("${_prefix}" ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global})
endif()
_pkg_restore_path_internal()
else()
if (${_is_required})
message(SEND_ERROR "pkg-config tool not found")
endif (${_is_required})
endif(PKG_CONFIG_EXECUTABLE)
endmacro(_pkg_check_modules_internal)
endif ()
endif()
endmacro()
###
### User visible macros start here
###
###
#[========================================[.rst:
.. command:: pkg_check_modules
Checks for all the given modules, setting a variety of result variables in
the calling scope.
.. code-block:: cmake
pkg_check_modules(<prefix>
[REQUIRED] [QUIET]
[NO_CMAKE_PATH]
[NO_CMAKE_ENVIRONMENT_PATH]
[IMPORTED_TARGET [GLOBAL]]
<moduleSpec> [<moduleSpec>...])
When the ``REQUIRED`` argument is given, the command will fail with an error
if module(s) could not be found.
When the ``QUIET`` argument is given, no status messages will be printed.
By default, if :variable:`CMAKE_MINIMUM_REQUIRED_VERSION` is 3.1 or
later, or if :variable:`PKG_CONFIG_USE_CMAKE_PREFIX_PATH` is set to a
boolean ``True`` value, then the :variable:`CMAKE_PREFIX_PATH`,
:variable:`CMAKE_FRAMEWORK_PATH`, and :variable:`CMAKE_APPBUNDLE_PATH` cache
and environment variables will be added to the ``pkg-config`` search path.
The ``NO_CMAKE_PATH`` and ``NO_CMAKE_ENVIRONMENT_PATH`` arguments
disable this behavior for the cache variables and environment variables
respectively.
The ``IMPORTED_TARGET`` argument will create an imported target named
``PkgConfig::<prefix>`` that can be passed directly as an argument to
:command:`target_link_libraries`. The ``GLOBAL`` argument will make the
imported target available in global scope.
Each ``<moduleSpec>`` can be either a bare module name or it can be a
module name with a version constraint (operators ``=``, ``<``, ``>``,
``<=`` and ``>=`` are supported). The following are examples for a module
named ``foo`` with various constraints:
- ``foo`` matches any version.
- ``foo<2`` only matches versions before 2.
- ``foo>=3.1`` matches any version from 3.1 or later.
- ``foo=1.2.3`` requires that foo must be exactly version 1.2.3.
The following variables may be set upon return. Two sets of values exist:
One for the common case (``<XXX> = <prefix>``) and another for the
information ``pkg-config`` provides when called with the ``--static``
option (``<XXX> = <prefix>_STATIC``).
``<XXX>_FOUND``
set to 1 if module(s) exist
``<XXX>_LIBRARIES``
only the libraries (without the '-l')
``<XXX>_LINK_LIBRARIES``
the libraries and their absolute paths
``<XXX>_LIBRARY_DIRS``
the paths of the libraries (without the '-L')
``<XXX>_LDFLAGS``
all required linker flags
``<XXX>_LDFLAGS_OTHER``
all other linker flags
``<XXX>_INCLUDE_DIRS``
the '-I' preprocessor flags (without the '-I')
``<XXX>_CFLAGS``
all required cflags
``<XXX>_CFLAGS_OTHER``
the other compiler flags
All but ``<XXX>_FOUND`` may be a :ref:`;-list <CMake Language Lists>` if the
associated variable returned from ``pkg-config`` has multiple values.
There are some special variables whose prefix depends on the number of
``<moduleSpec>`` given. When there is only one ``<moduleSpec>``,
``<YYY>`` will simply be ``<prefix>``, but if two or more ``<moduleSpec>``
items are given, ``<YYY>`` will be ``<prefix>_<moduleName>``.
``<YYY>_VERSION``
version of the module
``<YYY>_PREFIX``
prefix directory of the module
``<YYY>_INCLUDEDIR``
include directory of the module
``<YYY>_LIBDIR``
lib directory of the module
Examples:
.. code-block:: cmake
pkg_check_modules (GLIB2 glib-2.0)
Looks for any version of glib2. If found, the output variable
``GLIB2_VERSION`` will hold the actual version found.
.. code-block:: cmake
pkg_check_modules (GLIB2 glib-2.0>=2.10)
Looks for at least version 2.10 of glib2. If found, the output variable
``GLIB2_VERSION`` will hold the actual version found.
.. code-block:: cmake
pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0)
Looks for both glib2-2.0 (at least version 2.10) and any version of
gtk2+-2.0. Only if both are found will ``FOO`` be considered found.
The ``FOO_glib-2.0_VERSION`` and ``FOO_gtk+-2.0_VERSION`` variables will be
set to their respective found module versions.
.. code-block:: cmake
pkg_check_modules (XRENDER REQUIRED xrender)
Requires any version of ``xrender``. Example output variables set by a
successful call::
XRENDER_LIBRARIES=Xrender;X11
XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp
#]========================================]
macro(pkg_check_modules _prefix _module0)
_pkgconfig_parse_options(_pkg_modules _pkg_is_required _pkg_is_silent _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global "${_module0}" ${ARGN})
# check cached value
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION})
_pkgconfig_parse_options (_pkg_modules _pkg_is_required "${_module0}" ${ARGN})
_pkg_check_modules_internal("${_pkg_is_required}" 0 "${_prefix}" ${_pkg_modules})
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND OR
(NOT "${ARGN}" STREQUAL "" AND NOT "${__pkg_config_arguments_${_prefix}}" STREQUAL "${_module0};${ARGN}") OR
( "${ARGN}" STREQUAL "" AND NOT "${__pkg_config_arguments_${_prefix}}" STREQUAL "${_module0}"))
_pkg_check_modules_internal("${_pkg_is_required}" "${_pkg_is_silent}" ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global} "${_prefix}" ${_pkg_modules})
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION})
endmacro(pkg_check_modules)
if (${_prefix}_FOUND)
_pkgconfig_set(__pkg_config_arguments_${_prefix} "${_module0};${ARGN}")
endif()
else()
if (${_prefix}_FOUND)
_pkg_recalculate("${_prefix}" ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global})
endif()
endif()
endmacro()
###
#[========================================[.rst:
.. command:: pkg_search_module
The behavior of this command is the same as :command:`pkg_check_modules`,
except that rather than checking for all the specified modules, it searches
for just the first successful match.
.. code-block:: cmake
pkg_search_module(<prefix>
[REQUIRED] [QUIET]
[NO_CMAKE_PATH]
[NO_CMAKE_ENVIRONMENT_PATH]
[IMPORTED_TARGET [GLOBAL]]
<moduleSpec> [<moduleSpec>...])
If a module is found, the ``<prefix>_MODULE_NAME`` variable will contain the
name of the matching module. This variable can be used if you need to run
:command:`pkg_get_variable`.
Example:
.. code-block:: cmake
pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2)
#]========================================]
macro(pkg_search_module _prefix _module0)
_pkgconfig_parse_options(_pkg_modules_alt _pkg_is_required _pkg_is_silent _no_cmake_path _no_cmake_environment_path _imp_target _imp_target_global "${_module0}" ${ARGN})
# check cached value
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
set(_pkg_modules_found 0)
_pkgconfig_parse_options(_pkg_modules_alt _pkg_is_required "${_module0}" ${ARGN})
message(STATUS "checking for one of the modules '${_pkg_modules_alt}'")
if (NOT ${_pkg_is_silent})
message(STATUS "Checking for one of the modules '${_pkg_modules_alt}'")
endif ()
# iterate through all modules and stop at the first working one.
foreach(_pkg_alt ${_pkg_modules_alt})
if(NOT _pkg_modules_found)
_pkg_check_modules_internal(0 1 "${_prefix}" "${_pkg_alt}")
endif(NOT _pkg_modules_found)
_pkg_check_modules_internal(0 1 ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global} "${_prefix}" "${_pkg_alt}")
endif()
if (${_prefix}_FOUND)
set(_pkg_modules_found 1)
endif(${_prefix}_FOUND)
endforeach(_pkg_alt)
break()
endif()
endforeach()
if (NOT ${_prefix}_FOUND)
if(${_pkg_is_required})
message(SEND_ERROR "None of the required '${_pkg_modules_alt}' found")
endif(${_pkg_is_required})
endif(NOT ${_prefix}_FOUND)
endif()
endif()
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
endmacro(pkg_search_module)
elseif (${_prefix}_FOUND)
_pkg_recalculate("${_prefix}" ${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} ${_imp_target_global})
endif()
endmacro()
#[========================================[.rst:
.. command:: pkg_get_variable
Retrieves the value of a pkg-config variable ``varName`` and stores it in the
result variable ``resultVar`` in the calling scope.
.. code-block:: cmake
pkg_get_variable(<resultVar> <moduleName> <varName>)
If ``pkg-config`` returns multiple values for the specified variable,
``resultVar`` will contain a :ref:`;-list <CMake Language Lists>`.
For example:
.. code-block:: cmake
pkg_get_variable(GI_GIRDIR gobject-introspection-1.0 girdir)
#]========================================]
function (pkg_get_variable result pkg variable)
_pkg_set_path_internal()
_pkgconfig_invoke("${pkg}" "prefix" "result" "" "--variable=${variable}")
set("${result}"
"${prefix_result}"
PARENT_SCOPE)
_pkg_restore_path_internal()
endfunction ()
#[========================================[.rst:
Variables Affecting Behavior
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. variable:: PKG_CONFIG_EXECUTABLE
This can be set to the path of the pkg-config executable. If not provided,
it will be set by the module as a result of calling :command:`find_program`
internally. The ``PKG_CONFIG`` environment variable can be used as a hint.
.. variable:: PKG_CONFIG_USE_CMAKE_PREFIX_PATH
Specifies whether :command:`pkg_check_modules` and
:command:`pkg_search_module` should add the paths in the
:variable:`CMAKE_PREFIX_PATH`, :variable:`CMAKE_FRAMEWORK_PATH` and
:variable:`CMAKE_APPBUNDLE_PATH` cache and environment variables to the
``pkg-config`` search path.
If this variable is not set, this behavior is enabled by default if
:variable:`CMAKE_MINIMUM_REQUIRED_VERSION` is 3.1 or later, disabled
otherwise.
#]========================================]
### Local Variables:
### mode: cmake
+7 -76
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2009 Julien Louis <ptitlouis@sysif.net>
#
# This file is part of WeeChat, the extensible chat client.
@@ -24,80 +24,11 @@
# code sets the following variables:
#
# PYTHON_EXECUTABLE = full path to the python binary
# PYTHON_INCLUDE_PATH = path to where python.h can be found
# PYTHON_LIBRARY = path to where libpython.so* can be found
# PYTHON_LFLAGS = python compiler options for linking
if(PYTHON_FOUND)
# Already in cache, be silent
set(PYTHON_FIND_QUIETLY TRUE)
endif()
if(ENABLE_PYTHON3)
find_program(PYTHON_EXECUTABLE
NAMES python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python3 python2.7 python2.6 python2.5 python
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
)
else()
find_program(PYTHON_EXECUTABLE
NAMES python2.7 python2.6 python2.5 python
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
)
endif()
if(PYTHON_EXECUTABLE)
execute_process(
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; from distutils.sysconfig import *; sys.stdout.write(get_config_var('INCLUDEPY'))"
OUTPUT_VARIABLE PYTHON_INC_DIR
)
execute_process(
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; from distutils.sysconfig import *; sys.stdout.write(get_config_var('LIBPL'))"
OUTPUT_VARIABLE PYTHON_POSSIBLE_LIB_PATH
)
execute_process(
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; from distutils.sysconfig import *; sys.stdout.write(get_config_var('LIBS') + ' ' + get_config_var('LINKFORSHARED'))"
OUTPUT_VARIABLE PYTHON_LFLAGS
)
find_path(PYTHON_INCLUDE_PATH
NAMES Python.h
HINTS ${PYTHON_INC_DIR}
)
if(ENABLE_PYTHON3)
find_library(PYTHON_LIBRARY
NAMES python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python3 python2.7 python2.6 python2.5 python
HINTS ${PYTHON_POSSIBLE_LIB_PATH}
)
else()
find_library(PYTHON_LIBRARY
NAMES python2.7 python2.6 python2.5 python
HINTS ${PYTHON_POSSIBLE_LIB_PATH}
)
endif()
if(PYTHON_LIBRARY AND PYTHON_INCLUDE_PATH)
execute_process(
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; sys.stdout.write(sys.version[:3])"
OUTPUT_VARIABLE PYTHON_VERSION
)
execute_process(
COMMAND ${PYTHON_EXECUTABLE} -c "import sys; sys.stdout.write(str(sys.version_info < (2,5)))"
OUTPUT_VARIABLE PYTHON_OLD_VERSION
)
if(${PYTHON_OLD_VERSION} STREQUAL "True")
message("Python >= 2.5 is needed to build python plugin, version found: ${PYTHON_VERSION}")
else()
set(PYTHON_FOUND TRUE)
endif()
endif()
mark_as_advanced(
PYTHON_EXECUTABLE
PYTHON_INCLUDE_PATH
PYTHON_LIBRARY
PYTHON_LFLAGS
)
# PYTHON_INCLUDE_DIRS = path to where python.h can be found
# PYTHON_LIBRARIES = path to where libpython.so* can be found
# PYTHON_LDFLAGS = python compiler options for linking
pkg_check_modules(PYTHON python3-embed IMPORTED_TARGET GLOBAL)
if(NOT PYTHON_FOUND)
pkg_check_modules(PYTHON python3 IMPORTED_TARGET GLOBAL)
endif()
+11 -49
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -27,57 +27,19 @@
# RUBY_LIB = ruby library (found without pkg-config)
if(RUBY_FOUND)
# Already in cache, be silent
set(RUBY_FIND_QUIETLY TRUE)
# Already in cache, be silent
set(RUBY_FIND_QUIETLY TRUE)
endif()
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
pkg_search_module(RUBY ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby-1.8)
endif()
if(RUBY_FOUND)
set(RUBY_LIB "")
mark_as_advanced(RUBY_LIB)
else()
find_program(RUBY_EXECUTABLE
NAMES ruby2.6.0 ruby260 ruby2.6 ruby2.5.0 ruby250 ruby2.5 ruby2.4.0 ruby240 ruby2.4 ruby2.3.0 ruby230 ruby2.3 ruby23 ruby2.2.3 ruby223 ruby2.2.2 ruby222 ruby2.2.1 ruby221 ruby2.2.0 ruby220 ruby2.2 ruby22 ruby2.1.7 ruby217 ruby2.1.6 ruby216 ruby2.1.5 ruby215 ruby2.1.4 ruby214 ruby2.1.3 ruby213 ruby2.1.2 ruby212 ruby2.1.1 ruby211 ruby2.1.0 ruby210 ruby2.1 ruby21 ruby2.0 ruby20 ruby1.9.3 ruby193 ruby1.9.2 ruby192 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby1.8 ruby18 ruby
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
)
if(RUBY_EXECUTABLE)
execute_process(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubyhdrdir'] || RbConfig::CONFIG['archdir']"
OUTPUT_VARIABLE RUBY_ARCH_DIR
)
execute_process(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['arch']"
OUTPUT_VARIABLE RUBY_ARCH
)
execute_process(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['libdir']"
OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
)
execute_process(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubylibdir']"
OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH
)
find_path(RUBY_INCLUDE_DIRS
NAMES ruby.h
PATHS ${RUBY_ARCH_DIR}
)
set(RUBY_INCLUDE_ARCH "${RUBY_INCLUDE_DIRS}/${RUBY_ARCH}")
find_library(RUBY_LIB
NAMES ruby-1.9.3 ruby1.9.3 ruby193 ruby-1.9.2 ruby1.9.2 ruby192 ruby-1.9.1 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby1.8 ruby18 ruby
PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH}
)
if(RUBY_LIB AND RUBY_INCLUDE_DIRS)
set(RUBY_FOUND TRUE)
endif()
set(RUBY_INCLUDE_DIRS "${RUBY_INCLUDE_DIRS};${RUBY_INCLUDE_ARCH}")
mark_as_advanced(
RUBY_INCLUDE_DIRS
RUBY_LIBRARY_DIRS
RUBY_LIB
)
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
# set specific search path for macOS
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:/usr/local/opt/ruby/lib/pkgconfig")
endif()
pkg_search_module(RUBY ruby-3.3 ruby-3.2 ruby-3.1 ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
if(RUBY_FOUND AND ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
# FIXME: weird hack: hardcoding the Ruby lib location on macOS
set(RUBY_LDFLAGS "${RUBY_LDFLAGS} -L/usr/local/opt/ruby/lib")
endif()
endif()
-162
View File
@@ -1,162 +0,0 @@
#
# Copyright (C) 2008 Julien Louis <ptitlouis@sysif.net>
# Copyright (C) 2008-2019 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
# - Find Tcl includes and libraries.
# This module finds if Tcl is installed and determines where the
# include files and libraries are. It also determines what the name of
# the library is. This code sets the following variables:
# TCL_FOUND = Tcl was found
# TK_FOUND = Tk was found
# TCLTK_FOUND = Tcl and Tk were found
# TCL_LIBRARY = path to Tcl library (tcl tcl80)
# TCL_INCLUDE_PATH = path to where tcl.h can be found
# TCL_TCLSH = path to tclsh binary (tcl tcl80)
# TK_LIBRARY = path to Tk library (tk tk80 etc)
# TK_INCLUDE_PATH = path to where tk.h can be found
# TK_WISH = full path to the wish executable
#
# In an effort to remove some clutter and clear up some issues for people
# who are not necessarily Tcl/Tk gurus/developpers, some variables were
# moved or removed. Changes compared to CMake 2.4 are:
# - The stub libraries are now found in FindTclStub.cmake
# => they were only useful for people writing Tcl/Tk extensions.
# - TCL_LIBRARY_DEBUG and TK_LIBRARY_DEBUG were removed.
# => these libs are not packaged by default with Tcl/Tk distributions.
# Even when Tcl/Tk is built from source, several flavors of debug libs
# are created and there is no real reason to pick a single one
# specifically (say, amongst tcl84g, tcl84gs, or tcl84sgx).
# Let's leave that choice to the user by allowing him to assign
# TCL_LIBRARY to any Tcl library, debug or not.
# - TK_INTERNAL_PATH was removed.
# => this ended up being only a Win32 variable, and there is a lot of
# confusion regarding the location of this file in an installed Tcl/Tk
# tree anyway (see 8.5 for example). If you need the internal path at
# this point it is safer you ask directly where the *source* tree is
# and dig from there.
if(TCL_FOUND)
set(TCL_FIND_QUIETLY TRUE)
endif()
include(CMakeFindFrameworks)
include(FindTclsh)
get_filename_component(TCL_TCLSH_PATH "${TCL_TCLSH}" PATH)
get_filename_component(TCL_TCLSH_PATH_PARENT "${TCL_TCLSH_PATH}" PATH)
string(REGEX REPLACE
"^.*tclsh([0-9]\\.*[0-9]).*$" "\\1" TCL_TCLSH_VERSION "${TCL_TCLSH}")
get_filename_component(TCL_INCLUDE_PATH_PARENT "${TCL_INCLUDE_PATH}" PATH)
get_filename_component(TCL_LIBRARY_PATH "${TCL_LIBRARY}" PATH)
get_filename_component(TCL_LIBRARY_PATH_PARENT "${TCL_LIBRARY_PATH}" PATH)
string(REGEX REPLACE
"^.*tcl([0-9]\\.*[0-9]).*$" "\\1" TCL_VERSION "${TCL_LIBRARY}")
set(TCL_POSSIBLE_LIB_PATHS
"${TCL_INCLUDE_PATH_PARENT}/lib"
"${TCL_INCLUDE_PATH_PARENT}/lib64"
"${TCL_LIBRARY_PATH}"
"${TCL_TCLSH_PATH_PARENT}/lib"
"${TCL_TCLSH_PATH_PARENT}/lib64"
/usr/lib
/usr/lib64
/usr/local/lib
/usr/local/lib64
)
if(WIN32)
get_filename_component(
ActiveTcl_CurrentVersion
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]"
NAME)
set(TCLTK_POSSIBLE_LIB_PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/lib"
"$ENV{ProgramFiles}/Tcl/Lib"
"C:/Program Files/Tcl/lib"
"C:/Tcl/lib"
)
endif()
find_library(TCL_LIBRARY
NAMES
tcl86 tcl8.6
tcl85 tcl8.5
tcl
tcl${TCL_VERSION} tcl${TCL_TCLSH_VERSION}
PATHS ${TCL_POSSIBLE_LIB_PATHS}
)
cmake_find_frameworks(Tcl)
set(TCL_FRAMEWORK_INCLUDES)
if(Tcl_FRAMEWORKS)
if(NOT TCL_INCLUDE_PATH)
foreach(dir ${Tcl_FRAMEWORKS})
set(TCL_FRAMEWORK_INCLUDES ${TCL_FRAMEWORK_INCLUDES} ${dir}/Headers)
endforeach(dir)
endif()
endif()
set(TCL_POSSIBLE_INCLUDE_PATHS
"${TCL_LIBRARY_PATH_PARENT}/include"
"${TCL_INCLUDE_PATH}"
${TCL_FRAMEWORK_INCLUDES}
"${TCL_TCLSH_PATH_PARENT}/include"
/usr/include/tcl8.6
/usr/include/tcl8.5
/usr/include
/usr/local/include
/usr/include/tcl${TCL_VERSION}
/usr/local/include/tcl${TCL_VERSION}
/usr/local/include/tcl8.6
/usr/local/include/tcl8.5
)
if(WIN32)
set(TCLTK_POSSIBLE_INCLUDE_PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS}
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/include"
"$ENV{ProgramFiles}/Tcl/include"
"C:/Program Files/Tcl/include"
"C:/Tcl/include"
)
endif()
find_path(TCL_INCLUDE_PATH
NAMES tcl.h
PATHS ${TCL_POSSIBLE_INCLUDE_PATHS}
)
if(TCL_LIBRARY AND TCL_INCLUDE_PATH)
set(TCL_VERSION ${TCL_VERSION})
set(TCL_LIBARY ${TCL_LIBRARY})
set(TCL_INCLUDE_PATH ${TCL_INCLUDE_PATH})
set(TCL_FOUND TRUE)
endif()
mark_as_advanced(
TCL_INCLUDE_PATH
TCL_LIBRARY
TCL_VERSION
)
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2015-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2015-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+2 -3
View File
@@ -41,7 +41,7 @@ find_library(ZLIB_LIBRARY
${ZLIB_NAMES}
PATHS
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\GnuWin32\\Zlib;InstallPath]/lib"
)
)
mark_as_advanced(ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
if(ZLIB_INCLUDE_DIR AND EXISTS "${ZLIB_INCLUDE_DIR}/zlib.h")
@@ -66,8 +66,7 @@ endif()
# handle the QUIETLY and REQUIRED arguments and set ZLIB_FOUND to TRUE if
# all listed variables are TRUE
#INCLUDE(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
include(${CMAKE_HOME_DIRECTORY}/cmake/FindPackageHandleStandardArgs.cmake)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(ZLIB REQUIRED_VARS ZLIB_LIBRARY ZLIB_INCLUDE_DIR
VERSION_VAR ZLIB_VERSION_STRING)
+3 -5
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -28,13 +28,11 @@ list(REVERSE files)
foreach(file ${files})
message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
if(EXISTS "$ENV{DESTDIR}${file}")
exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
OUTPUT_VARIABLE rm_out
RETURN_VARIABLE rm_retval)
execute_process(COMMAND "@CMAKE_COMMAND@" -E remove "$ENV{DESTDIR}${file}" OUTPUT_VARIABLE rm_out RESULT_VARIABLE rm_retval)
if("${rm_retval}" GREATER 0)
message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
endif()
else()
message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
endif()
endforeach(file)
endforeach()
+4 -3
View File
@@ -1,10 +1,12 @@
#cmakedefine HAVE_LIBINTL_H
#cmakedefine HAVE_SYS_RESOURCE_H
#cmakedefine HAVE_FLOCK
#cmakedefine HAVE_LANGINFO_CODESET
#cmakedefine HAVE_BACKTRACE
#cmakedefine ICONV_2ARG_IS_CONST 1
#cmakedefine HAVE_MALLINFO
#cmakedefine HAVE_MALLINFO2
#cmakedefine HAVE_MALLOC_H
#cmakedefine HAVE_MALLOC_TRIM
#cmakedefine HAVE_EAT_NEWLINE_GLITCH
#cmakedefine HAVE_ASPELL_VERSION_STRING
#cmakedefine HAVE_ENCHANT_GET_VERSION
@@ -14,8 +16,7 @@
#define PACKAGE_NAME "@PROJECT_NAME@"
#define PACKAGE_STRING "@PKG_STRING@"
#define WEECHAT_LIBDIR "@WEECHAT_LIBDIR@"
#define WEECHAT_SHAREDIR "@SHAREDIR@"
#define WEECHAT_SHAREDIR "@WEECHAT_SHAREDIR@"
#define LOCALEDIR "@LOCALEDIR@"
#define WEECHAT_HOME "@WEECHAT_HOME@"
#define CA_FILE "@CA_FILE@"
#define _GNU_SOURCE 1
-1606
View File
File diff suppressed because it is too large Load Diff
+16 -26
View File
@@ -4,24 +4,26 @@ Priority: optional
Maintainer: Sébastien Helleu <flashcode@flashtux.org>
Build-Depends:
asciidoctor (>= 1.5.4),
ruby-pygments.rb,
debhelper (>= 12),
cmake, pkg-config,
libncursesw5-dev,
libncurses-dev,
gem2deb,
libperl-dev,
python-dev,
python3-dev,
libaspell-dev,
liblua5.1-0-dev,
liblua5.3-dev,
tcl8.6-dev,
guile-2.0-dev,
libv8-dev [amd64 i386 armel armhf mips mipsel hurd-i386 kfreebsd-amd64 kfreebsd-i386],
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
guile-3.0-dev,
php-dev, libphp-embed, libargon2-dev, libsodium-dev,
libxml2-dev,
libcurl4-gnutls-dev,
libgcrypt20-dev,
libgnutls28-dev,
zlib1g-dev
Standards-Version: 4.3.0
libzstd-dev,
zlib1g-dev,
libcjson-dev
Standards-Version: 4.6.2
Homepage: https://weechat.org/
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
Vcs-Browser: https://salsa.debian.org/kolter/weechat
@@ -47,7 +49,7 @@ Description: Fast, light and extensible chat client (metapackage)
- 256 colors support
- incremental text search
- dynamic filtering of buffer content
- Perl, Python, Ruby, Lua, Tcl, Scheme, JavaScript and PHP scripting
- Perl, Python, Ruby, Lua, Tcl, Scheme and PHP scripting
- script manager
- spell checking
- highly customizable and extensible
@@ -77,7 +79,7 @@ Description: Fast, light and extensible chat client - console client
- 256 colors support
- incremental text search
- dynamic filtering of buffer content
- Perl, Python, Ruby, Lua, Tcl, Scheme, JavaScript and PHP scripting
- Perl, Python, Ruby, Lua, Tcl, Scheme and PHP scripting
- script manager
- spell checking
- highly customizable and extensible
@@ -108,7 +110,7 @@ Description: Fast, light and extensible chat client - headless client
- 256 colors support
- incremental text search
- dynamic filtering of buffer content
- Perl, Python, Ruby, Lua, Tcl, Scheme, JavaScript and PHP scripting
- Perl, Python, Ruby, Lua, Tcl, Scheme and PHP scripting
- script manager
- spell checking
- highly customizable and extensible
@@ -154,6 +156,7 @@ Description: Fast, light and extensible chat client - plugins
- FIFO pipe for remote control
- Relay (IRC proxy and WeeChat protocol)
- Trigger
- Typing
Package: weechat-devel-python
Architecture: any
@@ -162,11 +165,11 @@ Depends:
${shlibs:Depends},
weechat-devel-curses (= ${binary:Version}) | weechat-devel-headless (= ${binary:Version})
Conflicts: weechat-python
Description: Fast, light and extensible chat client - Python plugin
Description: Fast, light and extensible chat client - Python 3 plugin
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package provides the Python scripting API plugin.
This package provides the Python 3 scripting API plugin.
Package: weechat-devel-perl
Architecture: any
@@ -233,19 +236,6 @@ Description: Fast, light and extensible chat client - Guile plugin
.
This package provides the Guile scripting API plugin.
Package: weechat-devel-javascript
Architecture: amd64 i386 armel armhf mips mipsel hurd-i386 kfreebsd-amd64 kfreebsd-i386
Depends:
${misc:Depends},
${shlibs:Depends},
weechat-devel-curses (= ${binary:Version}) | weechat-devel-headless (= ${binary:Version})
Conflicts: weechat-javascript
Description: Fast, light and extensible chat client - JavaScript plugin
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package provides the JavaScript scripting API plugin.
Package: weechat-devel-php
Architecture: any
Depends:
+3 -13
View File
@@ -4,10 +4,8 @@ export DEB_BUILD_MAINT_OPTIONS=hardening=+all
BUILDDIR = builddir
$(BUILDDIR)/Makefile:
mkdir -p $(BUILDDIR)
cd $(BUILDDIR) && \
cmake .. \
override_dh_auto_configure:
dh_auto_configure --buildsystem=cmake -- \
-DCMAKE_INSTALL_PREFIX:FILEPATH=/usr \
-DLIBDIR=/usr/lib/${DEB_HOST_MULTIARCH} \
-DENABLE_DOC:BOOL=ON \
@@ -18,16 +16,8 @@ $(BUILDDIR)/Makefile:
-DCMAKE_SKIP_RPATH:BOOL=ON \
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
override_dh_auto_configure:
# the package also has autotools buildsys and
# debhelper try to use it but that's not needed
echo
override_dh_auto_build: $(BUILDDIR)/Makefile
dh_auto_build
override_dh_installchangelogs:
dh_installchangelogs ChangeLog.adoc
%:
dh $@ --builddirectory=$(BUILDDIR) --without autoreconf
dh $@ --builddirectory=$(BUILDDIR)
+3
View File
@@ -0,0 +1,3 @@
tar-ignore = ".git"
tar-ignore = "build"
tar-ignore = "release"
@@ -0,0 +1,10 @@
Document: weechat-faq-es
Title: WeeChat FAQ (Spanish)
Author: Sébastien Helleu
Abstract: This document answers frequently asked questions
about the WeeChat IRC client (Spanish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
@@ -1,10 +0,0 @@
Document: weechat-tester-de
Title: WeeChat tester's guide (German)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (German version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
@@ -1,10 +0,0 @@
Document: weechat-tester-en
Title: WeeChat tester's guide (English)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (English version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
@@ -1,10 +0,0 @@
Document: weechat-tester-fr
Title: WeeChat tester's guide (French)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (French version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
@@ -1,10 +0,0 @@
Document: weechat-tester-it
Title: WeeChat tester's guide (Italian)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Italian version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
@@ -1,10 +0,0 @@
Document: weechat-tester-ja
Title: WeeChat tester's guide (Japanese)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Japanese version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
@@ -1,10 +0,0 @@
Document: weechat-tester-pl
Title: WeeChat tester's guide (Polish)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Polish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
@@ -1 +0,0 @@
../debian-stable/weechat-javascript.dirs
@@ -1 +0,0 @@
../debian-stable/weechat-javascript.install
-41
View File
@@ -1,41 +0,0 @@
weechat (2.1-1) unstable; urgency=medium
This release introduces a new headless client and a new PHP plugin for
scripting (respectively weechat-headless and weechat-php binary
packages).
To avoid at least unnecessary dependencies, each plugin has its own
separate binary package:
weechat-{perl,python,ruby,lua,guile,javascript,php}
Depending on your needs about scripting with weechat you should consider
to install the missing packages.
-- Emmanuel Bouthenot <kolter@debian.org> Wed, 21 Mar 2018 07:53:40 +0100
weechat (1.1.1-1) unstable; urgency=medium
Since version 1.1, there is a new format for regexp replacement in
triggers. This format is incompatible with version 1.0. The existing
triggers will not be automatically updated.
See https://weechat.org/files/releasenotes/ReleaseNotes-1.1.html
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 25 Jan 2015 20:41:50 +0100
weechat (0.3.1-1) unstable; urgency=low
This release introduces important changes with the usage of SSL. There
are stronger checks while connecting with SSL. By default, if a connection
is not fully trusted it will fail.
You can find more information on how to handle this new behaviour here:
https://weechat.org/blog/post/2009/12/01/SSL-certificates
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 25 Jan 2010 12:35:11 +0100
weechat (0.3.0-1) unstable; urgency=low
This release introduces major changes. Large part of code was
rewritten without keeping compatibility with older versions.
Please refer to the file /usr/share/doc/weechat-core/UPGRADE_0.3
for more information on upgrade from a version 0.2.x to 0.3.x.
-- Emmanuel Bouthenot <kolter@openics.org> Tue, 15 Sep 2009 20:59:42 +0000
+168
View File
@@ -1,3 +1,171 @@
weechat (4.0.5-1) unstable; urgency=medium
* New upstream release
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 24 Sep 2023 07:49:41 +0000
weechat (4.0.2-1) unstable; urgency=medium
* New upstream release (Closes: #1040248)
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 22 Jul 2023 05:48:35 +0000
weechat (4.0.1-1) unstable; urgency=medium
* New upstream release
* Remove NEWS file, no longer required
* Update build dependency from libncursesw5-dev to libncurses-dev
* Bump Standards-Version to 4.6.2
* Remove all patches (no longer required)
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 04 Jul 2023 19:02:41 +0000
weechat (3.8-1) unstable; urgency=medium
* New upstream release
* Add a patch remove some autotools leftovers
* Update debian/copyright (new year)
* Update debian/rules to remove workarounds which avoid issues with
autotools build system
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 15 Jan 2023 08:34:04 +0000
weechat (3.7.1-1) unstable; urgency=medium
* New upstream release
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 22 Oct 2022 12:55:10 +0000
weechat (3.7-1) unstable; urgency=medium
* New upstream release
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 18 Oct 2022 12:44:29 +0000
weechat (3.6-1) unstable; urgency=medium
* New upstream release
* Bump Standards-Version to 4.6.1.0
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 23 Jul 2022 09:56:24 +0000
weechat (3.5-1) unstable; urgency=medium
* New upstream release
* Add build dependency on libzstd-dev
-- Emmanuel Bouthenot <kolter@debian.org> Thu, 31 Mar 2022 11:36:01 +0000
weechat (3.4.1-1) unstable; urgency=medium
* New upstream release
- Fix a possible man-in-the-middle attack in TLS connection to servers
* Update build dependency from libargon2-0-dev to libargon2-dev
(libargon2-0-dev is now virtual package) (Closes: #1005703)
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 22 Mar 2022 05:55:14 +0000
weechat (3.4-2) unstable; urgency=medium
* Remove build dependency on ruby-pygments.rb (no longer required)
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 08 Jan 2022 06:00:17 +0000
weechat (3.4-1) unstable; urgency=medium
* New upstream release (Closes: #1001654, #1001245)
* Remove tester's guide from weechat-doc (according to upstream changes)
* Refresh ASCII Doctor options patch
* Update lintian override on weechat-plugins
* Update copyright (new year)
-- Emmanuel Bouthenot <kolter@debian.org> Fri, 07 Jan 2022 23:03:49 +0000
weechat (3.3-1) unstable; urgency=medium
* New upstream release
* Remove patch merged upstream (which command detection in libgcrypt)
* Minor updates in debian/copyright
* Enable Typing plugin
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 20 Sep 2021 10:05:56 +0000
weechat (3.2.1-1) unstable; urgency=medium
* New upstream release
- fix CVE-2021-40516: possible denial of service (crash) via a crafted
WebSocket in relay plugin (Closes: #993803)
* Add a patch to fix a FTBFS (related to recent changes on which command
output) (Closes: #993333)
* Bump Standards-Version to 4.6.0.1
* Remove useless HomePage field in upstream/metadata
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 07 Sep 2021 20:25:39 +0000
weechat (3.0.1-1) unstable; urgency=medium
* New upstream release
* Bump Standards-Version to 4.5.1
-- Emmanuel Bouthenot <kolter@debian.org> Wed, 03 Mar 2021 05:30:44 +0000
weechat (3.0-1) unstable; urgency=medium
* New upstream release
* Build against Guile 3.0 (instead of 2.2) (Closes: #969680)
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 21 Nov 2020 07:34:12 +0000
weechat (2.9-1) unstable; urgency=medium
* New upstream release
* Refresh ASCII Doctor options patch
* Switch debhelper compatibility to 13 and add debian/not-installed
accordingly
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 15 Aug 2020 20:31:09 +0000
weechat (2.8-1) unstable; urgency=medium
* New upstream release
- Fix FTBFS with ruby 2.7 (Closes: #954701, #954789)
- Remove patch to fix compilation error while testing iconv support
- Remove patch to fix a crash when loading script with PHP 7.4
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 04 Apr 2020 09:01:45 +0000
weechat (2.7.1-1) unstable; urgency=medium
* New upstream release
- fix CVE-2020-8955: possible remote DOS via malformed IRC messages
(Closes: #951289)
- rebuilt against python 3.8 (Closes: #953620)
* Remove Guile 2.2 support patch (merged upstream)
* Add a patch to fix compilation error while testing iconv support
* Add a patch to fix a crash when loading script with PHP 7.4
* Bump Standards-Version to 4.5.0
* Replace gem2deb build dependency by ruby-dev to facilitate
transitions to new versions of ruby (Closes: #951713)
* Set Rules-Requires-Root to no
* Switch debhelper compatibility to 12
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 09 Mar 2020 14:59:31 +0000
weechat (2.6-2) unstable; urgency=medium
* Add a patch from upstream to support Guile 2.2 (Closes: #885235)
-- Emmanuel Bouthenot <kolter@debian.org> Fri, 11 Oct 2019 15:07:22 +0000
weechat (2.6-1) unstable; urgency=medium
* New upstream release
* Build only with Python3 (Closes: #938817)
* Bump Standards-Version to 4.4.0
* Build Lua plugin against Lua 5.3
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 17 Sep 2019 13:30:32 +0000
weechat (2.4-1) unstable; urgency=medium
* New upstream release
+16 -25
View File
@@ -4,24 +4,26 @@ Priority: optional
Maintainer: Emmanuel Bouthenot <kolter@debian.org>
Build-Depends:
asciidoctor (>= 1.5.4),
ruby-pygments.rb,
debhelper (>= 12),
cmake, pkg-config,
libncursesw5-dev,
libncurses-dev,
gem2deb,
libperl-dev,
python-dev,
python3-dev,
libaspell-dev,
liblua5.1-0-dev,
liblua5.3-dev,
tcl8.6-dev,
guile-2.0-dev,
libv8-dev [amd64 i386 armel armhf mips mipsel hurd-i386 kfreebsd-amd64 kfreebsd-i386],
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
guile-3.0-dev,
php-dev, libphp-embed, libargon2-dev, libsodium-dev,
libxml2-dev,
libcurl4-gnutls-dev,
libgcrypt20-dev,
libgnutls28-dev,
zlib1g-dev
Standards-Version: 4.3.0
libzstd-dev,
zlib1g-dev,
libcjson-dev
Standards-Version: 4.6.2
Homepage: https://weechat.org/
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
Vcs-Browser: https://salsa.debian.org/kolter/weechat
@@ -46,7 +48,7 @@ Description: Fast, light and extensible chat client (metapackage)
- 256 colors support
- incremental text search
- dynamic filtering of buffer content
- Perl, Python, Ruby, Lua, Tcl, Scheme, JavaScript and PHP scripting
- Perl, Python, Ruby, Lua, Tcl, Scheme and PHP scripting
- script manager
- spell checking
- highly customizable and extensible
@@ -75,7 +77,7 @@ Description: Fast, light and extensible chat client - console client
- 256 colors support
- incremental text search
- dynamic filtering of buffer content
- Perl, Python, Ruby, Lua, Tcl, Scheme, JavaScript and PHP scripting
- Perl, Python, Ruby, Lua, Tcl, Scheme and PHP scripting
- script manager
- spell checking
- highly customizable and extensible
@@ -105,7 +107,7 @@ Description: Fast, light and extensible chat client - headless client
- 256 colors support
- incremental text search
- dynamic filtering of buffer content
- Perl, Python, Ruby, Lua, Tcl, Scheme, JavaScript and PHP scripting
- Perl, Python, Ruby, Lua, Tcl, Scheme and PHP scripting
- script manager
- spell checking
- highly customizable and extensible
@@ -149,6 +151,7 @@ Description: Fast, light and extensible chat client - plugins
- FIFO pipe for remote control
- Relay (IRC proxy and WeeChat protocol)
- Trigger
- Typing
Package: weechat-python
Architecture: any
@@ -156,11 +159,11 @@ Depends:
${misc:Depends},
${shlibs:Depends},
weechat-curses (= ${binary:Version}) | weechat-headless (= ${binary:Version})
Description: Fast, light and extensible chat client - Python plugin
Description: Fast, light and extensible chat client - Python 3 plugin
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package provides the Python scripting API plugin.
This package provides the Python 3 scripting API plugin.
Package: weechat-perl
Architecture: any
@@ -222,18 +225,6 @@ Description: Fast, light and extensible chat client - Guile plugin
.
This package provides the Guile scripting API plugin.
Package: weechat-javascript
Architecture: amd64 i386 armel armhf mips mipsel hurd-i386 kfreebsd-amd64 kfreebsd-i386
Depends:
${misc:Depends},
${shlibs:Depends},
weechat-curses (= ${binary:Version}) | weechat-headless (= ${binary:Version})
Description: Fast, light and extensible chat client - JavaScript plugin
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package provides the JavaScript scripting API plugin.
Package: weechat-php
Architecture: any
Depends:
+13 -22
View File
@@ -4,26 +4,26 @@ Upstream-Contact: Sébastien Helleu <flashcode@flashtux.org>
Source: https://weechat.org/
Files: *
Copyright: 2003-2019, Sébastien Helleu <flashcode@flashtux.org>
Copyright: 2003-2024, Sébastien Helleu <flashcode@flashtux.org>
License: GPL-3+
Files: src/core/wee-command.c
src/core/wee-command.h
Files: src/core/core-command.c
src/core/core-command.h
Copyright: 2005-2006, Emmanuel Bouthenot <kolter@openics.org>
License: GPL-3+
Files: src/core/wee-config-file.c
src/core/wee-config-file.h
src/core/wee-config.c
src/core/wee-config.h
Files: src/core/core-config-file.c
src/core/core-config-file.h
src/core/core-config.c
src/core/core-config.h
Copyright: 2005-2006, Emmanuel Bouthenot <kolter@openics.org>
License: GPL-3+
Files: src/core/hook/wee-hook-connect.c
Files: src/core/hook/hook-connect.c
Copyright: 2012, Simon Arlott
License: GPL-3+
Files: src/core/hook/wee-hook-connect.h
Files: src/core/hook/hook-connect.h
Copyright: 2012, Simon Arlott
License: GPL-3+
@@ -31,9 +31,9 @@ Files: src/gui/gui-history.c
Copyright: 2005, Emmanuel Bouthenot <kolter@openics.org>
License: GPL-3+
Files: src/core/wee-completion.c
src/core/wee-log.c
src/core/wee-utf8.c
Files: src/core/core-completion.c
src/core/core-log.c
src/core/core-utf8.c
src/core/weechat.h
src/plugins/spell/spell-config.c
src/plugins/spell/spell-config.h
@@ -45,7 +45,7 @@ Files: src/core/wee-completion.c
Copyright: 2006, Emmanuel Bouthenot <kolter@openics.org>
License: GPL-3+
Files: src/core/wee-network.c
Files: src/core/core-network.c
Copyright: 2005-2010, Emmanuel Bouthenot <kolter@openics.org>
2010, Gu1ll4um3r0m41n <aeroxteam@gmail.com>
2012, Simon Arlott
@@ -78,15 +78,6 @@ Copyright: 2005-2010, Emmanuel Bouthenot <kolter@openics.org>
2012, Simon Arlott
License: GPL-3+
Files: src/plugins/javascript/weechat-js-api.cpp
src/plugins/javascript/weechat-js-api.h
src/plugins/javascript/weechat-js-v8.cpp
src/plugins/javascript/weechat-js-v8.h
src/plugins/javascript/weechat-js.cpp
src/plugins/javascript/weechat-js.h
Copyright: 2013, Koka El Kiwi <kokakiwi@kokakiwi.net>
License: GPL-3+
Files: src/plugins/lua/weechat-lua-api.c
Copyright: 2006-2007, Emmanuel Bouthenot <kolter@openics.org>
2012, Simon Arlott
+3 -13
View File
@@ -4,10 +4,8 @@ export DEB_BUILD_MAINT_OPTIONS=hardening=+all
BUILDDIR = builddir
$(BUILDDIR)/Makefile:
mkdir -p $(BUILDDIR)
cd $(BUILDDIR) && \
cmake .. \
override_dh_auto_configure:
dh_auto_configure --buildsystem=cmake -- \
-DCMAKE_INSTALL_PREFIX:FILEPATH=/usr \
-DLIBDIR=/usr/lib/${DEB_HOST_MULTIARCH} \
-DENABLE_DOC:BOOL=ON \
@@ -18,16 +16,8 @@ $(BUILDDIR)/Makefile:
-DCMAKE_SKIP_RPATH:BOOL=ON \
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
override_dh_auto_configure:
# the package also has autotools buildsys and
# debhelper try to use it but that's not needed
echo
override_dh_auto_build: $(BUILDDIR)/Makefile
dh_auto_build
override_dh_installchangelogs:
dh_installchangelogs ChangeLog.adoc
%:
dh $@ --builddirectory=$(BUILDDIR) --without autoreconf
dh $@ --builddirectory=$(BUILDDIR)
+3
View File
@@ -0,0 +1,3 @@
tar-ignore = ".git"
tar-ignore = "build"
tar-ignore = "release"
+2 -2
View File
@@ -1,2 +1,2 @@
version=3
opts=pgpsigurlmangle=s/$/.asc/ https://weechat.org/files/src/weechat-(\d.*)\.tar\.bz2
version=4
opts=pgpsigurlmangle=s/$/.asc/ https://weechat.org/download/ /files/src/weechat-(\d.*)\.tar\.xz
+10
View File
@@ -0,0 +1,10 @@
Document: weechat-faq-es
Title: WeeChat FAQ (Spanish)
Author: Sébastien Helleu
Abstract: This document answers frequently asked questions
about the WeeChat IRC client (Spanish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
Files: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
@@ -1,10 +0,0 @@
Document: weechat-tester-de
Title: WeeChat tester's guide (German)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (German version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
@@ -1,10 +0,0 @@
Document: weechat-tester-en
Title: WeeChat tester's guide (English)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (English version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
@@ -1,10 +0,0 @@
Document: weechat-tester-fr
Title: WeeChat tester's guide (French)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (French version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
@@ -1,10 +0,0 @@
Document: weechat-tester-it
Title: WeeChat tester's guide (Italian)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Italian version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
@@ -1,10 +0,0 @@
Document: weechat-tester-ja
Title: WeeChat tester's guide (Japanese)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Japanese version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
@@ -1,10 +0,0 @@
Document: weechat-tester-pl
Title: WeeChat tester's guide (Polish)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Polish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
-1
View File
@@ -1 +0,0 @@
usr/lib
-1
View File
@@ -1 +0,0 @@
usr/lib/*/weechat/plugins/javascript.so
+1
View File
@@ -4,3 +4,4 @@ usr/lib/*/weechat/plugins/relay.so
usr/lib/*/weechat/plugins/script.so
usr/lib/*/weechat/plugins/spell.so
usr/lib/*/weechat/plugins/trigger.so
usr/lib/*/weechat/plugins/typing.so
+331 -12
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
#
# This file is part of WeeChat, the extensible chat client.
@@ -20,22 +20,341 @@
if(ENABLE_MAN OR ENABLE_DOC)
# docs languages
set(AUTOGEN_LANG de en fr it ja pl sr)
set(MAN_LANG cs de en fr it ja pl ru sr)
set(USER_LANG de en fr it ja pl sr)
set(PLUGIN_API_LANG en fr it ja sr)
set(SCRIPTING_LANG de en fr it ja pl sr)
set(FAQ_LANG de en es fr it ja pl sr)
set(QUICKSTART_LANG cs de en es fr it ja pl ru sr)
set(RELAY_LANG en fr ja sr)
set(DEV_LANG en fr ja sr)
find_package(Asciidoctor)
if(ASCIIDOCTOR_FOUND)
# common asciidoctor arguments
set(ASCIIDOCTOR_ARGS
-a experimental
-a reproducible
-a "prewrap!"
-a "webfonts!"
-a icons=font
-a revnumber="${VERSION}"
-a sectanchors
-a source-highlighter=pygments
-a pygments-style=native
-a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}"
-a autogendir="${CMAKE_CURRENT_BINARY_DIR}/autogen"
)
set(ASCIIDOCTOR_ARGS -a experimental -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=prettify)
# asciidoctor arguments for user's guide
set(ASCIIDOCTOR_USER_ARGS
-a toc=left
-a toclevels=3
-a sectnums
-a sectnumlevels=2
-a docinfo1
)
add_subdirectory(cs)
add_subdirectory(de)
add_subdirectory(en)
add_subdirectory(es)
add_subdirectory(fr)
add_subdirectory(it)
add_subdirectory(ja)
add_subdirectory(pl)
add_subdirectory(ru)
# asciidoctor arguments for plugin API reference
set(ASCIIDOCTOR_PLUGIN_API_ARGS
-a toc=left
-a toclevels=3
-a sectnums
-a sectnumlevels=2
-a docinfo1
)
# asciidoctor arguments for scripting guide
set(ASCIIDOCTOR_SCRIPTING_ARGS
-a toc=left
-a toclevels=3
-a sectnums
-a sectnumlevels=2
-a docinfo1
)
# asciidoctor arguments for FAQ
set(ASCIIDOCTOR_FAQ_ARGS
-a toc=left
-a toclevels=2
-a sectnums
-a sectnumlevels=2
-a docinfo1
)
# asciidoctor arguments for quickstart
set(ASCIIDOCTOR_QUICKSTART_ARGS
-a toc=left
-a toclevels=2
-a sectnums
-a sectnumlevels=2
-a docinfo1
)
# asciidoctor arguments for relay protocol
set(ASCIIDOCTOR_RELAY_ARGS
-a toc=left
-a toclevels=3
-a sectnums
-a sectnumlevels=2
-a docinfo1
)
# asciidoctor arguments for developer's guide
set(ASCIIDOCTOR_DEV_ARGS
-a toc=left
-a toclevels=3
-a sectnums
-a sectnumlevels=2
-a docinfo1
)
# sed arguments used to replace links in ChangeLog and release notes
set(SED_LINKS_ARGS
-e "'s/issue #\\([0-9][0-9]*\\)/https:\\/\\/github.com\\/weechat\\/weechat\\/issues\\/\\1[issue #\\1^]/g'"
-e "'s/bug #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/bugs\\/?\\1[bug #\\1^]/g'"
-e "'s/task #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/task\\/?\\1[task #\\1^]/g'"
-e "'s/patch #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/patch\\/?\\1[patch #\\1^]/g'"
-e "'s/debian #\\([0-9][0-9]*\\)/http:\\/\\/bugs.debian.org\\/cgi-bin\\/bugreport.cgi?bug=\\1[debian bug #\\1^]/g'"
-e "'s/\\(CVE-[0-9][0-9]*-[0-9][0-9]*\\)/https:\\/\\/cve.mitre.org\\/cgi-bin\\/cvename.cgi?name=\\1[\\1^]/g'"
)
# ChangeLog
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc"
COMMAND sed ARGS ${SED_LINKS_ARGS} "${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc" > "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
)
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} -o ChangeLog.html "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building ChangeLog.html"
)
add_custom_target(changelog DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html")
# Release notes
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc"
COMMAND sed ARGS ${SED_LINKS_ARGS} "${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc" > "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
)
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} -o ReleaseNotes.html "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building ReleaseNotes.html"
)
add_custom_target(rn DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html")
if(ENABLE_DOC)
set(AUTOGEN_FILES "")
foreach(lang ${AUTOGEN_LANG})
LIST(APPEND AUTOGEN_FILES
# plugin API reference
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_completions.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_config_priority.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_hdata.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infolists.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infos.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infos_hashtable.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_plugins_priority.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_url_options.${lang}.adoc"
# user's guide
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_commands.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_default_aliases.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_irc_colors.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_options.${lang}.adoc"
# scripting duide
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_functions.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_constants.${lang}.adoc"
)
endforeach()
add_custom_target(doc-autogen ALL
COMMAND "${CMAKE_COMMAND}" -E env "WEECHAT_EXTRA_LIBDIR=${PROJECT_BINARY_DIR}/src" "WEECHAT_DOCGEN_LOCALEDIR=${PROJECT_BINARY_DIR}/po" "${CMAKE_BINARY_DIR}/src/gui/curses/headless/weechat-headless" --temp-dir --doc-gen "${CMAKE_CURRENT_BINARY_DIR}/autogen"
DEPENDS
# the headless binary is required
weechat-headless
# translations must be compiled
translations
# all plugins must be loaded during doc generation
alias buflist charset exec fifo fset guile irc logger lua perl php python relay ruby script spell tcl trigger typing xfer
BYPRODUCTS ${AUTOGEN_FILES}
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
)
endif()
if(ENABLE_MAN)
foreach(lang ${MAN_LANG})
if(${lang} STREQUAL "en")
set(MANDIR_LANG "${MANDIR}/man1")
else()
set(MANDIR_LANG "${MANDIR}/${lang}/man1")
endif()
# man page: weechat
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat.${lang}.1"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o "weechat.${lang}.1" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat.1.${lang}.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat.1.${lang}.adoc"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/cmdline_options.${lang}.adoc"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/man.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat.1 (${lang})"
)
add_custom_target(doc-man-weechat-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat.${lang}.1")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat.${lang}.1" DESTINATION "${MANDIR_LANG}" RENAME "weechat.1")
# man page: weechat-headless
if(ENABLE_HEADLESS)
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.${lang}.1"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o "weechat-headless.${lang}.1" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat-headless.1.${lang}.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat-headless.1.${lang}.adoc"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/cmdline_options.${lang}.adoc"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/man.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat-headless.1 (${lang})"
)
add_custom_target(doc-man-weechat-headless-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.${lang}.1")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.${lang}.1" DESTINATION "${MANDIR_LANG}" RENAME "weechat-headless.1")
endif()
endforeach()
endif()
if(ENABLE_DOC)
# user's guide
foreach(lang ${USER_LANG})
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_user.${lang}.html"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_USER_ARGS} -o "weechat_user.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_user.${lang}.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_user.${lang}.adoc"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/cmdline_options.${lang}.adoc"
doc-autogen
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_commands.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_default_aliases.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_irc_colors.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_options.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat_user.${lang}.html"
)
add_custom_target(doc-user-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_user.${lang}.html")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_user.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
endforeach()
# plugin API reference
foreach(lang ${PLUGIN_API_LANG})
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.${lang}.html"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_PLUGIN_API_ARGS} -o "weechat_plugin_api.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_plugin_api.${lang}.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_plugin_api.${lang}.adoc"
doc-autogen
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_completions.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_config_priority.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_hdata.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infolists.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infos.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_infos_hashtable.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_plugins_priority.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_url_options.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat_plugin_api.${lang}.html"
)
add_custom_target(doc-plugin-api-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.${lang}.html")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
endforeach()
# scripting guide
foreach(lang ${SCRIPTING_LANG})
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.${lang}.html"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_SCRIPTING_ARGS} -o "weechat_scripting.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_scripting.${lang}.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_scripting.${lang}.adoc"
doc-autogen
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_functions.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_constants.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat_scripting.${lang}.html"
)
add_custom_target(doc-scripting-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.${lang}.html")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
endforeach()
# FAQ
foreach(lang ${FAQ_LANG})
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.${lang}.html"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_FAQ_ARGS} -o "weechat_faq.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_faq.${lang}.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_faq.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat_faq.${lang}.html"
)
add_custom_target(doc-faq-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.${lang}.html")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
endforeach()
# quickstart
foreach(lang ${QUICKSTART_LANG})
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.${lang}.html"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_QUICKSTART_ARGS} -o "weechat_quickstart.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_quickstart.${lang}.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_quickstart.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat_quickstart.${lang}.html"
)
add_custom_target(doc-quickstart-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.${lang}.html")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
endforeach()
# relay protocol
foreach(lang ${RELAY_LANG})
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.${lang}.html"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_RELAY_ARGS} -o "weechat_relay_protocol.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_relay_protocol.${lang}.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_relay_protocol.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat_relay_protocol.${lang}.html"
)
add_custom_target(doc-relay-protocol-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.${lang}.html")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
endforeach()
# developer's guide
foreach(lang ${DEV_LANG})
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.${lang}.html"
COMMAND "${ASCIIDOCTOR_EXECUTABLE}" ARGS ${ASCIIDOCTOR_ARGS} ${ASCIIDOCTOR_DEV_ARGS} -o "weechat_dev.${lang}.html" "${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_dev.${lang}.adoc"
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_dev.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat_dev.${lang}.html"
)
add_custom_target(doc-dev-${lang} ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.${lang}.html")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.${lang}.html" DESTINATION "${DATAROOTDIR}/doc/${PROJECT_NAME}")
endforeach()
endif()
else()
message(SEND_ERROR "Asciidoctor not found")
endif()
endif()
-28
View File
@@ -1,28 +0,0 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2006 Julien Louis <ptitlouis@sysif.net>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
SUBDIRS = . cs de en es fr it ja pl ru
EXTRA_DIST = docgen.py \
docinfo.html \
CMakeLists.txt
uninstall-hook:
-rmdir $(DESTDIR)$(datadir)/doc/$(PACKAGE)
-71
View File
@@ -1,71 +0,0 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
if(ENABLE_MAN)
# man page: weechat
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat.1
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.cs.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.cs.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat.1 (cs)"
)
add_custom_target(doc-man-weechat-cs ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat.1)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.1 DESTINATION ${MANDIR}/cs/man1)
# man page: weechat-headless
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat-headless.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.cs.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.cs.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat-headless.1 (cs)"
)
add_custom_target(doc-man-weechat-headless-cs ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1 DESTINATION ${MANDIR}/cs/man1)
endif()
if(ENABLE_DOC)
# quickstart
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.cs.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_quickstart.cs.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.cs.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.cs.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_quickstart.cs.html"
)
add_custom_target(doc-quickstart-cs ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.cs.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.cs.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
endif()
-83
View File
@@ -1,83 +0,0 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
docinfo.html \
weechat.1.cs.adoc \
weechat-headless.1.cs.adoc \
cmdline_options.cs.adoc \
cmdline_options_debug.cs.adoc \
weechat_quickstart.cs.adoc \
$(wildcard autogen/user/*.adoc) \
$(wildcard autogen/plugin_api/*.adoc)
if MAN
man_targets = weechat.1 \
weechat-headless.1
man_install = install-man
man_uninstall = uninstall-man
endif
if DOC
doc_targets = weechat_quickstart.cs.html
doc_install = install-doc
doc_uninstall = uninstall-doc
endif
all-local: $(man_targets) $(doc_targets)
# man pages
weechat.1: weechat.1.cs.adoc cmdline_options.cs.adoc cmdline_options_debug.cs.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/cs/weechat.1.cs.adoc
weechat-headless.1: weechat-headless.1.cs.adoc cmdline_options.cs.adoc cmdline_options_debug.cs.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/cs/weechat-headless.1.cs.adoc
# quickstart
weechat_quickstart.cs.html: weechat_quickstart.cs.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_quickstart.cs.html $(abs_top_srcdir)/doc/cs/weechat_quickstart.cs.adoc
# install man/docs
install-data-hook: $(man_install) $(doc_install)
install-man:
$(mkinstalldirs) $(DESTDIR)$(mandir)/cs/man1/
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/cs/man1/
install-doc:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
# uninstall man/docs
uninstall-hook: $(man_uninstall) $(doc_uninstall)
uninstall-man:
$(RM) $(DESTDIR)$(mandir)/cs/man1/weechat.1
$(RM) $(DESTDIR)$(mandir)/cs/man1/weechat-headless.1
-rmdir $(DESTDIR)$(mandir)/cs/man1
uninstall-doc:
$(RM) $(DESTDIR)$(docdir)/*.cs.html
-rmdir $(DESTDIR)$(docdir)
# clean
clean-local:
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
-16
View File
@@ -1,16 +0,0 @@
// TRANSLATION MISSING
*--no-dlclose*::
Do not call the function dlclose after plugins are unloaded.
This is useful with tools like Valgrind to display stack for unloaded
plugins.
// TRANSLATION MISSING
*--no-gnutls*::
Do not call the init and deinit functions of GnuTLS library.
This is useful with tools like Valgrind and electric-fence, to prevent
GnuTLS memory errors.
// TRANSLATION MISSING
*--no-gcrypt*::
Do not call the init and deinit functions of Gcrypt library.
This is useful with tools like Valgrind, to prevent Gcrypt memory errors.
-1
View File
@@ -1 +0,0 @@
../docinfo.html
@@ -1,3 +1,4 @@
// tag::standard[]
*-a*, *--no-connect*::
Zakaž automatické pripojení k serverům když WeeChat startuje.
@@ -9,11 +10,17 @@
Run WeeChat in background, as a daemon (works only with the command
*weechat-headless*).
// TRANSLATION MISSING
*--stdout*::
Display log messages on standard output instead of writing them in log file
(works only with the command *weechat-headless*, not compatible with option
"--daemon").
// TRANSLATION MISSING
*-d*, *--dir* _<path>_::
Nastav cestu jako dovmský adresář pro WeeChat (použitou pro konfigurační
soubory, logy, uživatelské pluginy a skripty), výchozí hodnota je
"~/.weechat" (poznámka: složka bude vytvořena pokud nebude nalezena
Weechatem)
Force a single directory for all WeeChat files (directory is created if not found).
Four directories can be given, separated by colons (in this order: config,
data, cache, runtime).
Pokud tato volba není zadána, použije se promněná prostředí WEECHAT_HOME
(pokud není prázdná)
@@ -60,3 +67,23 @@
*plugin:option*::
Nastavení pluginů.
// end::standard[]
// tag::debug[]
// TRANSLATION MISSING
*--no-dlclose*::
Do not call the function dlclose after plugins are unloaded.
This is useful with tools like Valgrind to display stack for unloaded
plugins.
// TRANSLATION MISSING
*--no-gnutls*::
Do not call the init and deinit functions of GnuTLS library.
This is useful with tools like Valgrind and electric-fence, to prevent
GnuTLS memory errors.
// TRANSLATION MISSING
*--no-gcrypt*::
Do not call the init and deinit functions of Gcrypt library.
This is useful with tools like Valgrind, to prevent Gcrypt memory errors.
// end::debug[]
+112
View File
@@ -0,0 +1,112 @@
// tag::plugin_options[]
Pro kompletní dokumentaci nastavení pluginů a jejich volby podívejte se na
https://weechat.org/doc/[WeeChat user's guide].
S irc pluginem se můžete doččasně připojit na server s URL jako:
irc[6][s]://[[nickname][:password]@]server[:port][/#channel1[,#channel2...]]
K připojení na IRC kanál Weechatu pro podporu s přezdívkou "mynick":
irc://mynick@irc.libera.chat/#weechat
IPv6 adresa může být uzavřena do hranatých závorek k přidání portu, například:
irc://mynick@[2001:db8:0:85a3::ac1f:8001]:6668/#test
// end::plugin_options[]
// tag::files[]
$HOME/.config/weechat/weechat.conf::
hlavní konfigurační soubor WeeChatu
$HOME/.config/weechat/plugins.conf::
soubor konfigurace pluginů
$HOME/.config/weechat/sec.conf::
konfigurační soubor s chráněnými daty
$HOME/.config/weechat/alias.conf::
configurační soubor pro _alias_ plugin
$HOME/.config/weechat/buflist.conf::
konfigurační soubor pro _buflist_ plugin
$HOME/.config/weechat/charset.conf::
konfigurační soubor pro _charset_ plugin
$HOME/.config/weechat/exec.conf::
konfigurační soubor pro _exec_ plugin
$HOME/.config/weechat/fifo.conf::
konfigurační soubor pro _fifo_ plugin
$HOME/.config/weechat/fset.conf::
konfigurační soubor pro _fset_ plugin
$HOME/.config/weechat/guile.conf::
konfigurační soubor pro _guile_ plugin
$HOME/.config/weechat/irc.conf::
konfigurační soubor pro _irc_ plugin
$HOME/.config/weechat/javascript.conf::
konfigurační soubor pro _javascript_ plugin
$HOME/.config/weechat/logger.conf::
konfigurační soubor pro _logger_ plugin
$HOME/.config/weechat/lua.conf::
konfigurační soubor pro _lua_ plugin
$HOME/.config/weechat/perl.conf::
konfigurační soubor pro _perl_ plugin
$HOME/.config/weechat/php.conf::
konfigurační soubor pro _php_ plugin
$HOME/.config/weechat/python.conf::
konfigurační soubor pro _python_ plugin
$HOME/.config/weechat/relay.conf::
konfigurační soubor pro _relay_ plugin
$HOME/.config/weechat/ruby.conf::
konfigurační soubor pro _ruby_ plugin
$HOME/.config/weechat/script.conf::
konfigurační soubor pro _script_ plugin
$HOME/.config/weechat/spell.conf::
konfigurační soubor pro _spell_ plugin
$HOME/.config/weechat/tcl.conf::
konfigurační soubor pro _tcl_ plugin
$HOME/.config/weechat/trigger.conf::
konfigurační soubor pro _trigger_ plugin
$HOME/.config/weechat/typing.conf::
konfigurační soubor pro _typing_ plugin
$HOME/.config/weechat/xfer.conf::
konfigurační soubor pro _xfer_ plugin
$HOME/.local/share/weechat/weechat.log::
soubor záznamů WeeChatu
// end::files[]
// tag::copyright[]
WeeChat je napsán Sébastienem Helleu a přispěvovateli (kompletní seznam je v
souboru AUTHORS.adoc).
Copyright (C) 2003-2024 {author}
WeeChat is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
Prosím přečtěte si soubor COPYING pro více informací.
Web: https://weechat.org/
// end::copyright[]
-13
View File
@@ -1,13 +0,0 @@
WeeChat je napsán Sébastienem Helleu a přispěvovateli (kompletní seznam je v
souboru AUTHORS.adoc).
Copyright (C) 2003-2019 {author}
WeeChat is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
Prosím přečtěte si soubor COPYING pro více informací.
Web: https://weechat.org/
-74
View File
@@ -1,74 +0,0 @@
$HOME/.weechat/weechat.conf::
hlavní konfigurační soubor WeeChatu
$HOME/.weechat/plugins.conf::
soubor konfigurace pluginů
$HOME/.weechat/sec.conf::
konfigurační soubor s chráněnými daty
$HOME/.weechat/alias.conf::
configurační soubor pro _alias_ plugin
$HOME/.weechat/buflist.conf::
konfigurační soubor pro _buflist_ plugin
$HOME/.weechat/charset.conf::
konfigurační soubor pro _charset_ plugin
$HOME/.weechat/exec.conf::
konfigurační soubor pro _exec_ plugin
$HOME/.weechat/fifo.conf::
konfigurační soubor pro _fifo_ plugin
$HOME/.weechat/fset.conf::
konfigurační soubor pro _fset_ plugin
$HOME/.weechat/guile.conf::
konfigurační soubor pro _guile_ plugin
$HOME/.weechat/irc.conf::
konfigurační soubor pro _irc_ plugin
$HOME/.weechat/javascript.conf::
konfigurační soubor pro _javascript_ plugin
$HOME/.weechat/logger.conf::
konfigurační soubor pro _logger_ plugin
$HOME/.weechat/lua.conf::
konfigurační soubor pro _lua_ plugin
$HOME/.weechat/perl.conf::
konfigurační soubor pro _perl_ plugin
$HOME/.weechat/php.conf::
konfigurační soubor pro _php_ plugin
$HOME/.weechat/python.conf::
konfigurační soubor pro _python_ plugin
$HOME/.weechat/relay.conf::
konfigurační soubor pro _relay_ plugin
$HOME/.weechat/ruby.conf::
konfigurační soubor pro _ruby_ plugin
$HOME/.weechat/script.conf::
konfigurační soubor pro _script_ plugin
$HOME/.weechat/spell.conf::
konfigurační soubor pro _spell_ plugin
$HOME/.weechat/tcl.conf::
konfigurační soubor pro _tcl_ plugin
$HOME/.weechat/trigger.conf::
konfigurační soubor pro _trigger_ plugin
$HOME/.weechat/xfer.conf::
konfigurační soubor pro _xfer_ plugin
$HOME/.weechat/weechat.log::
soubor záznamů WeeChatu
-14
View File
@@ -1,14 +0,0 @@
Pro kompletní dokumentaci nastavení pluginů a jejich volby podívejte se na
https://weechat.org/doc[WeeChat user's guide].
S irc pluginem se můžete doččasně připojit na server s URL jako:
irc[6][s]://[[nickname][:password]@]server[:port][/#channel1[,#channel2...]]
K připojení na IRC kanál Weechatu pro podporu s přezdívkou "mynick":
irc://mynick@chat.freenode.net/#weechat
IPv6 adresa může být uzavřena do hranatých závorek k přidání portu, například:
irc://mynick@[2001:db8:0:85a3::ac1f:8001]:6668/#test
+7 -7
View File
@@ -16,7 +16,7 @@ weechat-headless - the extensible chat client (headless version)
// TRANSLATION MISSING
[verse]
*weechat-headless* [-a|--no-connect] [--daemon] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [debug-option...] [plugin:option...]
*weechat-headless* [-a|--no-connect] [--daemon] [--stdout] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [debug-option...] [plugin:option...]
*weechat-headless* [-c|--colors]
*weechat-headless* [-h|--help]
*weechat-headless* [-l|--license]
@@ -34,22 +34,22 @@ It can be used for tests or to daemonize WeeChat with the option "--daemon".
== VOLBY
include::cmdline_options.cs.adoc[]
include::includes/cmdline_options.cs.adoc[tag=standard]
// TRANSLATION MISSING
== DEBUG OPTIONS
*WARNING:* these options are for debug purposes only, *DO NOT USE IN PRODUCTION!*
include::cmdline_options_debug.cs.adoc[]
include::includes/cmdline_options.cs.adoc[tag=debug]
== VOLBY PLUGINŮ
include::man_plugin_options.cs.adoc[]
include::includes/man.cs.adoc[tag=plugin_options]
== SOUBORY
include::man_files.cs.adoc[]
include::includes/man.cs.adoc[tag=files]
// TRANSLATION MISSING
== SEE ALSO
@@ -63,8 +63,8 @@ Tato manuálová stránka byla přeložena Ondřejem Súkupem.
== COPYRIGHT
include::man_copyright.cs.adoc[]
include::includes/man.cs.adoc[tag=copyright]
== PODPORA / HLÁŠENÍ CHYB
Pro pomoc nebo hlášení chyb https://weechat.org/about/support
Pro pomoc nebo hlášení chyb https://weechat.org/about/support/
+6 -6
View File
@@ -29,22 +29,22 @@ v obvyklých sciptovacích jazycích.
== VOLBY
include::cmdline_options.cs.adoc[]
include::includes/cmdline_options.cs.adoc[tag=standard]
// TRANSLATION MISSING
== DEBUG OPTIONS
*WARNING:* these options are for debug purposes only, *DO NOT USE IN PRODUCTION!*
include::cmdline_options_debug.cs.adoc[]
include::includes/cmdline_options.cs.adoc[tag=debug]
== VOLBY PLUGINŮ
include::man_plugin_options.cs.adoc[]
include::includes/man.cs.adoc[tag=plugin_options]
== SOUBORY
include::man_files.cs.adoc[]
include::includes/man.cs.adoc[tag=files]
// TRANSLATION MISSING
== SEE ALSO
@@ -58,8 +58,8 @@ Tato manuálová stránka byla přeložena Ondřejem Súkupem.
== COPYRIGHT
include::man_copyright.cs.adoc[]
include::includes/man.cs.adoc[tag=copyright]
== PODPORA / HLÁŠENÍ CHYB
Pro pomoc nebo hlášení chyb https://weechat.org/about/support
Pro pomoc nebo hlášení chyb https://weechat.org/about/support/
+56 -49
View File
@@ -2,10 +2,6 @@
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: cs
:toc: left
:sectnums:
:docinfo1:
[[start]]
== Spuštění WeeChatu
@@ -113,13 +109,13 @@ Použijte příkaz `/plugin` k zobrazení nahraných pluginů, pravděpodobně u
Můžete přidat irc server příkazem `/server`, například:
----
/server add freenode chat.freenode.net
/server add libera irc.libera.chat/6697 -tls
----
// TRANSLATION MISSING
In this command, `freenode` is the internal server name used by WeeChat:
you'll be able to connect with `/connect freenode` and the server options
are _irc.server.freenode.xxx_.
In this command, `libera` is the internal server name used by WeeChat:
you'll be able to connect with `/connect libera` and the server options
are _irc.server.libera.xxx_.
Jako obvykle je poskytována nápověda pokud se ztratíte:
@@ -138,45 +134,38 @@ Pro každou serverovou volbu WeeChat použije její hodnotu pokud je definována
(není "prázdná"). Jinak WeeChat použije výchozí hodnotu ("irc.server_default.xxx).
Například, je zde výchozí přezdívka (založena na vašem un*x loginu), můžete
ji přepsat pro freenode s následujícím příkazem:
ji přepsat pro libera s následujícím příkazem:
----
/set irc.server.freenode.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
/set irc.server.libera.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
----
Nastavení username a realname:
----
/set irc.server.freenode.username "Mé uživatelské jméno"
/set irc.server.freenode.realname "Mé skutečné jméno"
/set irc.server.libera.username "Mé uživatelské jméno"
/set irc.server.libera.realname "Mé skutečné jméno"
----
K zapnutí automatického připojení při spuštění:
----
/set irc.server.freenode.autoconnect on
----
K připojení s SSL:
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/set irc.server.libera.autoconnect on
----
Pokud je na serveru podporován SASL, můžete jej použít pro autentizaci (mužete
být identifikován před připojením kanálů):
----
/set irc.server.freenode.sasl_username "mynick"
/set irc.server.freenode.sasl_password "xxxxxxx"
/set irc.server.libera.sasl_username "mynick"
/set irc.server.libera.sasl_password "xxxxxxx"
----
K spuštění příkazů po připojení k serveru, například k autentizaci s nickserv
(pouze pokud nepoužíváte autentizaci přes SASL):
----
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
/set irc.server.libera.command "/msg nickserv identify xxxxxxx"
----
[NOTE]
@@ -194,24 +183,50 @@ First setup a passphrase:
----
// TRANSLATION MISSING
Then add a secured data with your freenode password:
Then add a secured data with your libera password:
----
/secure set freenode_password xxxxxxx
/secure set libera_password xxxxxxx
----
// TRANSLATION MISSING
Then you can use `+${sec.data.freenode_password}+` instead of your password in
Then you can use `+${sec.data.libera_password}+` instead of your password in
IRC options mentioned above, for example:
----
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----
K automatickému připojení některých kanálů při připojování k serveru:
----
/set irc.server.freenode.autojoin "#channel1,#channel2"
/set irc.server.libera.autojoin "#channel1,#channel2"
----
// TRANSLATION MISSING
The `/autojoin` command lets you configure the _autojoin_ option easily
(see `/help autojoin`).
// TRANSLATION MISSING
You can also configure WeeChat to automatically update the _autojoin_ option
when you join or leave channels:
----
/set irc.server_default.autojoin_dynamic on
----
K smazání hodnoty serverové volby a k použití výchozí hodnoty místo ní,
například k požití výchozích přezdívek (irc.server_default.nicks):
----
/unset irc.server.libera.nicks
----
Ostatní volby: můžete nastavit ostatní volby s následujícím příkazem ("xxx" je
název volby):
----
/set irc.server.libera.xxx value
----
// TRANSLATION MISSING
@@ -220,27 +235,17 @@ You can complete name and value of options with the kbd:[Tab] key
and kbd:[Shift+Tab] for a partial completion (useful for long words like
the name of option).
K smazání hodnoty serverové volby a k použití výchozí hodnoty místo ní,
například k požití výchozích přezdívek (irc.server_default.nicks):
----
/unset irc.server.freenode.nicks
----
Ostatní volby: můžete nastavit ostatní volby s následujícím příkazem ("xxx" je
název volby):
----
/set irc.server.freenode.xxx value
----
[[connect_to_irc_server]]
== Připojení k IRC serveru a automatické ořipojení kanálů
== Připojení k IRC serveru
----
/connect freenode
/connect libera
----
// TRANSLATION MISSING
With this command, WeeChat connects to the libera server and auto-joins the
channels configured in the "autojoin" server option.
// TRANSLATION MISSING
[NOTE]
Tento příkaz může být použit k vytvoření nového připojení k serveru bez
@@ -392,14 +397,16 @@ například:
Zkuste `/help script` pro více informací.
A seznam skriptů je dostupný v WeeChatu s příkazem `/script` nebo na této
adrese https://weechat.org/scripts
// TRANSLATION MISSING
A list of scripts is available in WeeChat with `/script` or on
https://weechat.org/scripts/[this page ^↗^^].
[[more_doc]]
== Další dokumentace
Nyní jste schopni používat WeeChat a můžete si přečíst FAQ/dokumentaci pro
jakékoliv další otázky: https://weechat.org/doc
// TRANSLATION MISSING
You can now use WeeChat and read
https://weechat.org/doc/[FAQ/documentation ^↗^^]
for any other questions.
Ať máte radost z použití WeeChatu!
-128
View File
@@ -1,128 +0,0 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
if(ENABLE_MAN)
# man page: weechat
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat.1
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.de.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.de.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat.1 (de)"
)
add_custom_target(doc-man-weechat-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat.1)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.1 DESTINATION ${MANDIR}/de/man1)
# man page: weechat-headless
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat-headless.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.de.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.de.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat-headless.1 (de)"
)
add_custom_target(doc-man-weechat-headless-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1 DESTINATION ${MANDIR}/de/man1)
endif()
if(ENABLE_DOC)
file(GLOB AUTOGEN_USER "${CMAKE_CURRENT_SOURCE_DIR}/autogen/user/*.adoc")
# user's guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.de.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_user.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.de.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.de.adoc
${AUTOGEN_USER}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_user.de.html"
)
add_custom_target(doc-user-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.de.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.de.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
# scripting guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.de.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_scripting.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.de.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.de.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_scripting.de.html"
)
add_custom_target(doc-scripting-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.de.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.de.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
# FAQ
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_faq.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.de.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.de.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_faq.de.html"
)
add_custom_target(doc-faq-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
# quickstart
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_quickstart.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.de.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.de.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_quickstart.de.html"
)
add_custom_target(doc-quickstart-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
# tester's guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_tester.de.html"
)
add_custom_target(doc-tester-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
endif()
-107
View File
@@ -1,107 +0,0 @@
#
# Copyright (C) 2003-2019 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2006 Julien Louis <ptitlouis@sysif.net>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
docinfo.html \
weechat.1.de.adoc \
weechat-headless.1.de.adoc \
cmdline_options.de.adoc \
cmdline_options_debug.de.adoc \
weechat_user.de.adoc \
weechat_scripting.de.adoc \
weechat_faq.de.adoc \
weechat_quickstart.de.adoc \
weechat_tester.de.adoc \
$(wildcard autogen/user/*.adoc)
if MAN
man_targets = weechat.1 \
weechat-headless.1
man_install = install-man
man_uninstall = uninstall-man
endif
if DOC
doc_targets = weechat_user.de.html \
weechat_scripting.de.html \
weechat_faq.de.html \
weechat_quickstart.de.html \
weechat_tester.de.html
doc_install = install-doc
doc_uninstall = uninstall-doc
endif
all-local: $(man_targets) $(doc_targets)
# man pages
weechat.1: weechat.1.de.adoc cmdline_options.de.adoc cmdline_options_debug.de.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/de/weechat.1.de.adoc
weechat-headless.1: weechat-headless.1.de.adoc cmdline_options.de.adoc cmdline_options_debug.de.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/de/weechat-headless.1.de.adoc
# user's guide
weechat_user.de.html: weechat_user.de.adoc cmdline_options.de.adoc cmdline_options_debug.de.adoc $(wildcard autogen/user/*.adoc) $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_user.de.html $(abs_top_srcdir)/doc/de/weechat_user.de.adoc
# scripting guide
weechat_scripting.de.html: weechat_scripting.de.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_scripting.de.html $(abs_top_srcdir)/doc/de/weechat_scripting.de.adoc
# FAQ
weechat_faq.de.html: weechat_faq.de.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_faq.de.html $(abs_top_srcdir)/doc/de/weechat_faq.de.adoc
# quickstart
weechat_quickstart.de.html: weechat_quickstart.de.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_quickstart.de.html $(abs_top_srcdir)/doc/de/weechat_quickstart.de.adoc
# tester's guide
weechat_tester.de.html: weechat_tester.de.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_tester.de.html $(abs_top_srcdir)/doc/de/weechat_tester.de.adoc
# install man/docs
install-data-hook: $(man_install) $(doc_install)
install-man:
$(mkinstalldirs) $(DESTDIR)$(mandir)/de/man1/
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/de/man1/
install-doc:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
# uninstall man/docs
uninstall-hook: $(man_uninstall) $(doc_uninstall)
uninstall-man:
$(RM) $(DESTDIR)$(mandir)/de/man1/weechat.1
$(RM) $(DESTDIR)$(mandir)/de/man1/weechat-headless.1
-rmdir $(DESTDIR)$(mandir)/de/man1
uninstall-doc:
$(RM) $(DESTDIR)$(docdir)/*.de.html
-rmdir $(DESTDIR)$(docdir)
# clean
clean-local:
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
-183
View File
@@ -1,183 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[width="100%",cols="^1,^2,7",options="header"]
|===
| Erweiterung | Name | Beschreibung
| alias | alias | Liste der Alias
| alias | alias_value | Wert von Alias
| exec | exec_commands_ids | IDs (Nummern und Namen) von ausgeführten Befehlen
| fset | fset_options | Konfigurationsdateien, Sektionen, Optionen und Worte von Optionen
| guile | guile_script | Liste der Skripten
| irc | irc_channel | aktueller IRC-Channel
| irc | irc_channel_nicks_hosts | Liste der Nicks und Hostnamen des aktuellen Channels
| irc | irc_channel_topic | Thema des aktuellen IRC-Channels
| irc | irc_channels | Channels auf allen IRC Servern
| irc | irc_ignores_numbers | Anzahl für festgelegte Ignorierungen
| irc | irc_modelist_masks | Modelist Maske für aktuellen IRC Channel; benötigtes Argument: modelist mode
| irc | irc_modelist_numbers | Modelist Nummern für aktuellen IRC Channel; benötigtes Argument: modelist mode
| irc | irc_msg_kick | Standardmitteilung wenn man jemanden aus einem Channel wirft
| irc | irc_msg_part | Standardmitteilung beim Verlassen (/part) eines IRC-Channels
| irc | irc_notify_nicks | Nicks für die eine Benachrichtigung existiert
| irc | irc_privates | Private auf allen IRC Servern
| irc | irc_server | aktueller IRC-Server
| irc | irc_server_channels | Channels des derzeitigen IRC-Server
| irc | irc_server_nick | Nick beim derzeitigen IRC-Server
| irc | irc_server_nicks | Nicks für alle Channels auf dem aktuellen IRC-Server
| irc | irc_server_privates | Privat auf aktuellem IRC Server
| irc | irc_servers | IRC-Server (interne Namen)
| irc | nick | Liste der Nicks im aktuellen Channel
| javascript | javascript_script | Liste der Skripten
| lua | lua_script | Liste der Skripten
| perl | perl_script | Liste der Skripten
| php | php_script | Liste der Skripten
| python | python_script | Liste der Skripten
| relay | relay_free_port | erster freier Port für Relay-Erweiterung
| relay | relay_protocol_name | alle möglichen Protokoll.Name der Relay-Erweiterung
| relay | relay_relays | Protokoll.Name des aktuellen Relays von der Relay-Erweiterung
| ruby | ruby_script | Liste der Skripten
| script | script_extensions | Liste der Skripterweiterungen
| script | script_files | Dateien die sich in den Skript-Verzeichnissen befinden
| script | script_languages | Liste der Skriptsprache
| script | script_scripts | Liste der Skripten im Repositorium
| script | script_scripts_installed | Auflistung der installierten Skripten (vom Repositorium)
| script | script_tags | Schlagwortliste für Skripten im Repositorium
| spell | spell_dicts | Auflistung der installierten Wörterbücher
| spell | spell_langs | Liste aller Sprachen die unterstützt werden
| tcl | tcl_script | Liste der Skripten
| trigger | trigger_hook_arguments | Standardargumente für einen Hook
| trigger | trigger_hook_command | Standardbefehl für einen Hook
| trigger | trigger_hook_conditions | Standardbedingungen für einen Hook
| trigger | trigger_hook_rc | Standardrückgabewerte für einen Hook-Callback
| trigger | trigger_hook_regex | standardmäßiger regulärer Ausdruck für einen Hook
| trigger | trigger_hooks | Hooks für Trigger
| trigger | trigger_hooks_filter | Hooks für Trigger (definiert den Filter für den Monitor-Buffer)
| trigger | trigger_names | trigger
| trigger | trigger_names_default | voreingestellte Trigger
| trigger | trigger_option_value | Werte für Trigger-Einstellung
| trigger | trigger_options | Einstellungen für Trigger
| trigger | trigger_post_action | nachfolgende Aktion für Trigger
| weechat | bars_names | Namen der Infobars
| weechat | bars_options | Einstellungen für Infobars
| weechat | buffer_properties_get | Eigenschaften die für den Buffer gelesen werden können
| weechat | buffer_properties_set | Eigenschaften die für den Buffer gesetzt werden können
| weechat | buffers_names | Auflistung der vorhandenen Buffer
| weechat | buffers_numbers | Anzahl der Buffer
| weechat | buffers_plugins_names | Liste der Buffer (inklusive der Erweiterungen)
| weechat | colors | Farbnamen
| weechat | commands | Befehle (weechat und Erweiterungen); optionales Argument: Präfix welcher vor den Befehlen hinzugefügt wird
| weechat | config_files | Konfigurationsdateien
| weechat | config_option_values | Werte für eine Konfigurationsoption
| weechat | config_options | Konfigurationsoptionen
| weechat | cursor_areas | Bereiche in denen der Cursor frei bewegt werden kann ("chat" oder Name einer Bar)
| weechat | env_value | Wert einer Umgebungsvariable
| weechat | env_vars | Umgebungsvariablen
| weechat | filename | Dateinamen
| weechat | filters_names | Liste der Filter
| weechat | infolists | Namen der gehookten Infolisten
| weechat | infos | Namen der gehookten Infos
| weechat | keys_codes | Tastaturcodes
| weechat | keys_codes_for_reset | Tastenbelegungen die zurückgesetzt werden können (hinzugefügte/verändert/gelöschte Tastenbelegungen)
| weechat | keys_contexts | Tastaturkontext
| weechat | layouts_names | Namen der Layouts
| weechat | nicks | Nicks in Benutzerliste für aktuellen Buffer
| weechat | palette_colors | Farbpalette
| weechat | plugins_commands | Befehle definiert durch Erweiterungen; optionales Argument: Präfix welcher vor den Befehlen hinzugefügt wird
| weechat | plugins_installed | Namen der installierten Erweiterungen
| weechat | plugins_names | Liste der Erweiterungen
| weechat | proxies_names | Namen aller Proxys
| weechat | proxies_options | Einstellungen für Proxys
| weechat | secured_data | Namen der geschützten Daten (Datei sec.conf, section data)
| weechat | weechat_commands | weechat Befehle; optionales Argument: Präfix welcher vor den Befehlen hinzugefügt wird
| weechat | windows_numbers | Nummern der Fenster
| xfer | nick | Nicks vom DCC Chat
|===
File diff suppressed because it is too large Load Diff
-89
View File
@@ -1,89 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[width="100%",cols="^1,^2,5,5,5",options="header"]
|===
| Erweiterung | Name | Beschreibung | Pointer | Argumente
| alias | alias | Liste der Alias | Alias Pointer (optional) | Name des Alias (Platzhalter "*" kann verwendet werden) (optional)
| alias | alias_default | Liste der standardmäßigen Aliase | - | -
| fset | fset_option | Auflistung der fset Optionen | fset Option-Pointer (optional) | Name einer Einstellung (Platzhalter "*" kann verwendet werden) (optional)
| guile | guile_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| irc | irc_channel | Liste der Channels eines IRC-Servers | Channel Pointer (optional) | Server,Channel (Channel ist optional)
| irc | irc_color_weechat | Zuordnung der IRC Farbkodierung und der WeeChat Farbnamen | - | -
| irc | irc_ignore | Liste von ignorierten IRCs | Ignore Pointer (optional) | -
| irc | irc_modelist | Liste der Channel-Mode-Liste für einen IRC-Channel | Modelist Pointer (optional) | Server,Channel,Type (Type ist optional)
| irc | irc_modelist_item | Liste der Items in der Channel-Modeliste | Modelist Item Pointer (optional) | Server,Channel,Type,Nummer (Nummer ist optional)
| irc | irc_nick | Liste der Nicks im IRC-Channel | Nick Pointer (optional) | server,channel,nick (nick ist optional)
| irc | irc_notify | Liste mit Benachrichtigungen | Benachrichtigungspointer (optional) | Servername (Platzhalter "*" kann verwendet werden) (optional)
| irc | irc_server | Liste der IRC-Server | Server Pointer (optional) | Servername (Platzhalter "*" kann verwendet werden) (optional)
| javascript | javascript_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| logger | logger_buffer | Auflistung der protokollierten Buffer | Logger-Pointer (optional) | -
| lua | lua_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| perl | perl_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| php | php_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| python | python_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| relay | relay | Liste der Relay-Clients | Relay Pointer (optional) | -
| ruby | ruby_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| script | script_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes, mit Dateierweiterung (Platzhalter "*" kann verwendet werden) (optional)
| tcl | tcl_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| weechat | bar | Auflistung der Bars | Bar Pointer (optional) | Name der Bar (Platzhalter "*" kann verwendet werden) (optional)
| weechat | bar_item | Auflistung der Bar-Items | Bar Item Pointer (optional) | Name des Bar-Item (Platzhalter "*" kann verwendet werden) (optional)
| weechat | bar_window | Auflistung der Bar-Fenster | Bar-Fenster Pointer (optional) | -
| weechat | buffer | Auflistung der Buffer | Buffer Pointer (optional) | Name des Buffers (Platzhalter "*" kann verwendet werden) (optional)
| weechat | buffer_lines | Zeilen des Buffers | Buffer Pointer | -
| weechat | filter | Auflistung der Filter | - | Name des Filters (Platzhalter "*" kann verwendet werden) (optional)
| weechat | history | Verlaufspeicher der Befehle | Buffer Pointer (falls nicht gesetzt, wird der globale Verlauf zurückgegeben) (optional) | -
| weechat | hook | Auflistung der Hooks | Hook-Pointer (optional) | type,arguments (type ist ein command/timer/.., arguments dient dazu nur einige hooks abzufragen (Platzhalter "*" kann verwendet werden), beide Einstellungen sind optional)
| weechat | hotlist | Liste der Buffer in Hotlist | - | -
| weechat | key | Auflistung der Tastenzuweisungen | - | Kontext ("default", "search", "cursor" oder "mouse") (optional)
| weechat | layout | Auflistung der Layouts | - | -
| weechat | nicklist | Nicks in Benutzerliste für einen Buffer | Buffer Pointer | nick_xxx oder group_xxx um nur den Nick/Group xxx abzufragen (optional)
| weechat | option | Auflistung der Einstellungen | - | Name einer Einstellung (Platzhalter "*" kann verwendet werden) (optional)
| weechat | plugin | Auflistung der Erweiterungen | Pointer der Erweiterung (optional) | Name einer Erweiterung (Platzhalter "*" kann verwendet werden) (optional)
| weechat | proxy | Liste der Proxys | Proxy Pointer (optional) | Name des Proxy (Platzhalter "*" kann verwendet werden) (optional)
| weechat | url_options | Einstellungen für URL | - | -
| weechat | window | Auflistung der Fenster | Fenster Pointer (optional) | "current" für aktuelles Fenster oder die Nummer eines Fensters (optional)
| xfer | xfer | Transferliste | Transferpointer (optional) | -
|===
-141
View File
@@ -1,141 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[width="100%",cols="^1,^2,6,6",options="header"]
|===
| Erweiterung | Name | Beschreibung | Argumente
| fifo | fifo_filename | Name der FIFO-Pipe | -
| guile | guile_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| guile | guile_interpreter | Name des verwendeten Interpreters | -
| guile | guile_version | Version des verwendeten Interpreters | -
| irc | irc_buffer | holt Buffer Pointer für einen IRC Server/Channel/Nick | server,channel,nick (Channel und Nicks sind optional)
| irc | irc_is_channel | 1, falls die Zeichenkette ein gültiger IRC-Channelname für den Server ist | Server,Channel (Server ist optional)
| irc | irc_is_nick | 1, falls die Zeichenkette ein gültiger IRC Nickname ist | Nickname
| irc | irc_nick | aktuellen Nicknamen für den Server erhalten | Servername
| irc | irc_nick_color | erhalte nick color code (*veraltet* ab Version 1.5, wird ersetzt durch "nick_color") | Nickname
| irc | irc_nick_color_name | erhalte nick color name (*veraltet* ab Version 1.5, wird ersetzt durch "nick_color_name") | Nickname
| irc | irc_nick_from_host | Nicknamen des IRC-Hosts erhalten | IRC host (in der Form `:nick!name@server.com`)
| irc | irc_server_isupport | 1 falls der Server die Funktion unterstützen sollte (durch IRC Message 005) | Server,Funktion
| irc | irc_server_isupport_value | Wert der Funktion, sofern es vom Server unterstützt wird (durch IRC Message 005) | Server,Funktion
| javascript | javascript_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| javascript | javascript_interpreter | Name des verwendeten Interpreters | -
| javascript | javascript_version | Version des verwendeten Interpreters | -
| lua | lua_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| lua | lua_interpreter | Name des verwendeten Interpreters | -
| lua | lua_version | Version des verwendeten Interpreters | -
| perl | perl_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| perl | perl_interpreter | Name des verwendeten Interpreters | -
| perl | perl_version | Version des verwendeten Interpreters | -
| php | php_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| php | php_interpreter | Name des verwendeten Interpreters | -
| php | php_version | Version des verwendeten Interpreters | -
| python | python2_bin | Pfad für Python 2.x Interpreter | -
| python | python_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| python | python_interpreter | Name des verwendeten Interpreters | -
| python | python_version | Version des verwendeten Interpreters | -
| relay | relay_client_count | Anzahl an Clients für Relay | Protokoll,Status (beide sind Optional, bei beiden Argumenten bedeutet "*", alle; Protokolle: irc, weechat; Status: connecting, waiting_auth, connected, auth_failed, disconnected)
| ruby | ruby_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| ruby | ruby_interpreter | Name des verwendeten Interpreters | -
| ruby | ruby_version | Version des verwendeten Interpreters | -
| spell | spell_dict | durch Kommata getrennte Liste von Wörterbüchern, die in diesem Buffer genutzt werden sollen | Buffer-Pointer ("0x12345678") oder der vollständige Buffername ("irc.freenode.#weechat")
| tcl | tcl_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| tcl | tcl_interpreter | Name des verwendeten Interpreters | -
| tcl | tcl_version | Version des verwendeten Interpreters | -
| weechat | charset_internal | Interner WeeChat Zeichensatz | -
| weechat | charset_terminal | Terminal Zeichensatz | -
| weechat | color_ansi_regex | erweiterte reguläre POSIX Ausdrücke um ANSI Escapesequenz zu suchen | -
| weechat | color_rgb2term | RGB Farbe wurde umgewandelt in Terminalfarbe (0-255) | RGB,limit (Obergrenze ist optional und ist Standardmäßig 256)
| weechat | color_term2rgb | Terminalfarbe (0-255) wurde umgewandelt in RGB Farbe | Farben (Terminalfarben: 0-255)
| weechat | cursor_mode | 1, falls Cursor-Modus aktiviert ist | -
| weechat | date | Datum/Zeit der WeeChat Kompilierung | -
| weechat | dir_separator | Trennzeichen für Verzeichnis | -
| weechat | filters_enabled | 1, falls Filter aktiviert sind | -
| weechat | inactivity | Inaktivität der Tastatur (Sekunden) | -
| weechat | locale | Spracheinstellung die für die übersetzten Nachrichten verwendet werden soll | -
| weechat | nick_color | zeigt Farbecode des Nick | Nickname
| weechat | nick_color_name | zeigt Farbnamen des Nick | Nickname
| weechat | pid | WeeChat PID (Prozess-ID) | -
| weechat | term_height | Höhe des Terminals | -
| weechat | term_width | Breite des Terminals | -
| weechat | totp_generate | generiert ein Time-based One-Time Passwort (TOTP) | geheime Zeichenkette (in base32), Zeitstempel (optional, standardmäßig aktuelle Zeit), Anzahl an Zeichen (optional, zwischen 4 und 10, standardmäßig 6)
| weechat | totp_validate | validiert ein Time-based One-Time Passwort (TOTP): 1 falls TOTP korrekt ist, ansonsten 0 | geheim (in base32), einmaliges Passwort, Zeitstempel (optional, standardmäßig aktuelle Zeit), Anzahl der zu testenden Passwörtern vorher/nachher (optional, standardmäßig 0)
| weechat | uptime | Laufzeit von WeeChat (Format: "days:hh:mm:ss") | "days" (Anzahl der Tage) oder "seconds" (Anzahl der Sekunden) (optional)
| weechat | version | WeeChat-Version | -
| weechat | version_git | WeeChat Git Version (Ausgabe des Befehls "git describe", ausschließlich für eine Entwicklerversion. Eine stabile Version gibt keine Information zurück) | -
| weechat | version_number | WeeChat-Version (als Zahl) | -
| weechat | weechat_dir | WeeChat Verzeichnis | -
| weechat | weechat_libdir | WeeChat "lib" Verzeichnis | -
| weechat | weechat_localedir | "lokales" Verzeichnis von WeeChat | -
| weechat | weechat_sharedir | WeeChat "share" Verzeichnis | -
| weechat | weechat_site | WeeChat Seite | -
| weechat | weechat_site_download | Download-Seite von WeeChat | -
| weechat | weechat_upgrading | 1 falls WeeChat ein Upgrade durchführt (Befehl `/upgrade`) | -
|===
@@ -1,13 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[width="100%",cols="^1,^2,6,6,8",options="header"]
|===
| Erweiterung | Name | Beschreibung | Hashtable (Eingabe) | Hashtable (Ausgabe)
| irc | irc_message_parse | Parse eine IRC Nachricht | "message": IRC Nachricht, "server": Servername (optional) | "tags": Tags, "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "host": Host, "command": Befehl, "channel": Channel, "arguments": Argumente (schließt Channel ein), "text": Text (zum Beispiel eine Nachricht von einem User), "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
| irc | irc_message_split | trennt eine IRC Nachricht (standardmäßig in 512 Bytes große Nachrichten) | "message": IRC Nachricht, "server": Servername (optional) | "msg1" ... "msgN": Nachrichten die versendet werden sollen (ohne abschließendes "\r\n"), "args1" ... "argsN": Argumente für Nachrichten, "count": Anzahl der Nachrichten
|===
@@ -1,18 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
. charset (15000)
. logger (14000)
. exec (13000)
. trigger (12000)
. spell (11000)
. alias (10000)
. buflist (9000)
. fifo (8000)
. xfer (7000)
. irc (6000)
. relay (5000)
. guile, javascript, lua, perl, php, python, ruby, tcl (4000)
. script (3000)
. fset (2000)
-407
View File
@@ -1,407 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[width="100%",cols="2,^1,7",options="header"]
|===
| Einstellung | Type ^(1)^ | Konstanten ^(2)^
| verbose | long |
| header | long |
| noprogress | long |
| nosignal | long |
| wildcardmatch | long |
| failonerror | long |
| keep_sending_on_error | long |
| proxy | string |
| proxyport | long |
| port | long |
| pre_proxy | string |
| httpproxytunnel | long |
| interface | string |
| dns_cache_timeout | long |
| proxytype | long | http, socks4, socks5, socks4a, socks5_hostname, http_1_0, https
| buffersize | long |
| tcp_nodelay | long |
| localport | long |
| localportrange | long |
| address_scope | long |
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
| noproxy | string |
| socks5_gssapi_nec | long |
| tcp_keepalive | long |
| tcp_keepidle | long |
| tcp_keepintvl | long |
| unix_socket_path | string |
| path_as_is | long |
| proxy_service_name | string |
| service_name | string |
| default_protocol | string |
| tcp_fastopen | long |
| netrc | long | ignored, optional, required
| userpwd | string |
| proxyuserpwd | string |
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate
| netrc_file | string |
| username | string |
| password | string |
| proxyusername | string |
| proxypassword | string |
| tlsauth_type | mask | none, srp
| tlsauth_username | string |
| tlsauth_password | string |
| sasl_ir | long |
| xoauth2_bearer | string |
| login_options | string |
| autoreferer | long |
| followlocation | long |
| put | long |
| post | long |
| postfields | string |
| httppost | list |
| referer | string |
| useragent | string |
| httpheader | list |
| cookie | string |
| cookiefile | string |
| postfieldsize | long |
| maxredirs | long |
| httpget | long |
| cookiejar | string |
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
| cookiesession | long |
| http200aliases | list |
| unrestricted_auth | long |
| postfieldsize_large | long long |
| cookielist | string |
| ignore_content_length | long |
| accept_encoding | string |
| transfer_encoding | long |
| http_content_decoding | long |
| http_transfer_decoding | long |
| copypostfields | string |
| postredir | mask | post_301, post_302
| expect_100_timeout_ms | long |
| headeropt | mask | unified, separate
| proxyheader | list |
| pipewait | long |
| stream_weight | long |
| mail_from | string |
| mail_rcpt | list |
| mail_auth | string |
| tftp_blksize | long |
| tftp_no_options | long |
| ftpport | string |
| quote | list |
| postquote | list |
| ftp_use_epsv | long |
| prequote | list |
| ftp_use_eprt | long |
| ftp_create_missing_dirs | long |
| ftp_response_timeout | long |
| ftpsslauth | long | default, ssl, tls
| ftp_account | string |
| ftp_skip_pasv_ip | long |
| ftp_filemethod | long | multicwd, nocwd, singlecwd
| ftp_alternative_to_user | string |
| ftp_ssl_ccc | long | ccc_none, ccc_active, ccc_passive
| dirlistonly | long |
| append | long |
| ftp_use_pret | long |
| rtsp_request | long | options, describe, announce, setup, play, pause, teardown, get_parameter, set_parameter, record, receive
| rtsp_session_id | string |
| rtsp_stream_uri | string |
| rtsp_transport | string |
| rtsp_client_cseq | long |
| rtsp_server_cseq | long |
| crlf | long |
| range | string |
| resume_from | long |
| customrequest | string |
| nobody | long |
| infilesize | long |
| upload | long |
| timecondition | long | none, ifmodsince, ifunmodsince, lastmod
| timevalue | long |
| transfertext | long |
| filetime | long |
| maxfilesize | long |
| proxy_transfer_mode | long |
| resume_from_large | long long |
| infilesize_large | long long |
| maxfilesize_large | long long |
| timeout | long |
| low_speed_limit | long |
| low_speed_time | long |
| fresh_connect | long |
| forbid_reuse | long |
| connecttimeout | long |
| ipresolve | long | whatever, v4, v6
| connect_only | long |
| max_send_speed_large | long long |
| max_recv_speed_large | long long |
| timeout_ms | long |
| connecttimeout_ms | long |
| maxconnects | long |
| use_ssl | long | none, try, control, all
| resolve | list |
| dns_servers | string |
| accepttimeout_ms | long |
| dns_interface | string |
| dns_local_ip4 | string |
| dns_local_ip6 | string |
| connect_to | list |
| sslcert | string |
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3
| ssl_verifypeer | long |
| cainfo | string |
| random_file | string |
| egdsocket | string |
| ssl_verifyhost | long |
| ssl_cipher_list | string |
| sslcerttype | string |
| sslkey | string |
| sslkeytype | string |
| sslengine | string |
| sslengine_default | long |
| capath | string |
| ssl_sessionid_cache | long |
| krblevel | string |
| keypasswd | string |
| issuercert | string |
| crlfile | string |
| certinfo | long |
| gssapi_delegation | long | none, policy_flag, flag
| ssl_options | long | allow_beast, no_revoke
| ssl_enable_alpn | long |
| ssl_enable_npn | long |
| pinnedpublickey | string |
| ssl_verifystatus | long |
| ssl_falsestart | long |
| proxy_cainfo | string |
| proxy_capath | string |
| proxy_crlfile | string |
| proxy_keypasswd | string |
| proxy_pinnedpublickey | string |
| proxy_sslcert | string |
| proxy_sslcerttype | string |
| proxy_sslkey | string |
| proxy_sslkeytype | string |
| proxy_sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3
| proxy_ssl_cipher_list | list |
| proxy_ssl_options | long | allow_beast, no_revoke
| proxy_ssl_verifyhost | long |
| proxy_ssl_verifypeer | long |
| proxy_tlsauth_password | string |
| proxy_tlsauth_type | string |
| proxy_tlsauth_username | string |
| ssh_auth_types | mask | none, policy_flag, flag
| ssh_public_keyfile | string |
| ssh_private_keyfile | string |
| ssh_host_public_key_md5 | string |
| ssh_knownhosts | string |
| new_file_perms | long |
| new_directory_perms | long |
| telnetoptions | list |
|===
-40
View File
@@ -1,40 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_alias_alias]]
* `+alias+`: auflisten, hinzufügen oder entfernen von Alternativnamen
----
/alias list [<alias>]
add <alias> [<command>[;<command>...]]
addcompletion <completion> <alias> [<command>[;<command>...]]
del <alias> [<alias>...]
list: listet Alternativbefehle auf (ohne Angabe von Argumenten wird diese Liste dargestellt)
add: fügt einen Alternativbefehl hinzu
addcompletion: fügt einen Alternativbefehl, mit einer benutzerdefinierten Vervollständigung, hinzu
del: entfernt einen Alternativbefehl
completion: Vervollständigung für Alternativbefehl: standardmäßig wird die Vervollständigung auf den Zielbefehl angewendet
Hinweis: Mit der Variablen "%%command" kann eine Vervollständigung eines vorhandenen Befehls durchgeführt werden
alias: Name des Alternativbefehls
command: Name des zuzuordnenden Befehls, inklusive Argumenten (mehrere Befehle können durch Semikolon getrennt werden)
Anmerkung: Im Befehl können Variablen genutzt werden, die dann durch den entsprechenden Wert ersetzt werden:
$n: Argument 'n' (zwischen 1 und 9)
$-m: Argumente von 1 bis 'm'
$n-: Argumente von 'n' bis zum letzten Argument
$n-m: Argumente von 'n' bis 'm'
$*: alle Argumente
$~: letztes Argument
$var: "var" ist eine lokale Variable für den jeweiligen Buffer (siehe /buffer localvar)
Beispiel: $nick, $channel, $server, $plugin, $name
Beispiele:
Alternativbefehl "/split" wird anlegt um ein Fenster horizontal zu teilen:
/alias add split /window splith
Alternativbefehl "/hallo" wird angelegt um in allen Channels, außer im #weechat Channel, den Text "Hallo" auszugeben:
/alias add hallo /allchan -exclude=#weechat msg * hallo
Alternativbefehl "/forcejoin" wird angelegt um den IRC Befehl "forcejoin" mit einer Vervollständigung von /sajoin auszuführen:
/alias addcompletion %%sajoin forcejoin /quote forcejoin
----
@@ -1,42 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[width="100%",cols="2m,5m,5",options="header"]
|===
| Alias | Befehl | Vervollständigung
| /AAWAY | /allserv /away | -
| /AME | /allchan /me | -
| /AMSG | /allchan /msg * | -
| /ANICK | /allserv /nick | -
| /BEEP | /print -beep | -
| /BYE | /quit | -
| /C | /buffer clear | -
| /CL | /buffer clear | -
| /CLOSE | /buffer close | -
| /CHAT | /dcc chat | -
| /EXIT | /quit | -
| /IG | /ignore | -
| /J | /join | -
| /K | /kick | -
| /KB | /kickban | -
| /LEAVE | /part | -
| /M | /msg | -
| /MUB | /unban * | -
| /MSGBUF | /command -buffer $1 * /input send $2- | %(buffers_plugins_names)
| /N | /names | -
| /Q | /query | -
| /REDRAW | /window refresh | -
| /SAY | /msg * | -
| /SIGNOFF | /quit | -
| /T | /topic | -
| /UB | /unban | -
| /UMODE | /mode $nick | -
| /V | /command core version | -
| /W | /who | -
| /WC | /window merge | -
| /WI | /whois | -
| /WII | /whois $1 $1 | -
| /WW | /whowas | -
|===
-50
View File
@@ -1,50 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_buflist_buflist]]
* `+buflist+`: Bar-Item mit der Liste von Buffern
----
/buflist bar
refresh
bar: fügt eine "buflist" Bar hinzu
refresh: erzwingt eine Aktualisierung der Bar-Item (buflist, buflist2 und buflist3)
Jede Zeile die einen Buffer anzeigt wird mittels Zeichenketten-Evaluation dargestellt (siehe /help eval für das Format), dazu werden folgende Optionen genutzt:
- buflist.look.display_conditions: Bedingungen um einen Buffer in der Liste darzustellen
- buflist.format.buffer: Format für den Buffer, der nicht der aktuell dargestellte Buffer ist
- buflist.format.buffer_current: Format für den aktuell dargestellten Buffer
Die folgenden Variablen können in den obigen Optionen genutzt werden:
- bar item data (siehe hdata "bar_item" in API Dokumentation für eine vollständige Liste), zum Beispiel:
- ${bar_item.name}
- buffer data (siehe hdata "buffer" in API Dokumentation für eine vollständige Liste), zum Beispiel:
- ${buffer.number}
- ${buffer.name}
- ${buffer.full_name}
- ${buffer.short_name}
- ${buffer.nicklist_nicks_count}
- irc_server: IRC Serverdaten, ausschließlich genutzt bei einem IRC Buffer (siehe hdata "irc_server" in API Dokumentation)
- irc_channel: IRC Channeldaten, ausschließlich genutzt bei einem IRC Channel Buffer (siehe hdata "irc_channel" in API Dokumentation)
- zusätzliche Variablen die durch buflist bereitgestellt werden:
- ${format_buffer}: der evaluierte Wert der Option buflist.format.buffer; dies kann in der Option buflist.format.buffer_current genutzt werden um zum Beispiel die Hintergrundfarbe zu verändern
- ${current_buffer}: ein Boolean ("0" oder "1"), "1" falls es sich um den aktuellen Buffer handelt; dies kann in einer Bedingung verwendet werden: ${if:${current_buffer}?...:...}
- ${merged}: ein Boolean ("0" oder "1"), "1" wenn der Buffer mit einem anderen zusammengefügt ist; kann innerhalb einer Bedingung genutzt werden: ${if:${merged}?...:...}
- ${format_number}: eingerückte Numer mit Trennzeichen (evaluiert aus Option buflist.format.number)
- ${number}: eingerückte Nummer, zum Beispiel " 1", falls die Anzahl der Buffer zwischen 10 und 99 liegt; bei zusammengefügten Buffern enthält die Variable für den ersten Buffer die entsprechende Nummer, die weiteren Buffer enthalten ein Leerzeichen anstelle der Nummer
- ${number2}: eingerückte Nummer, zum Beispiel " 1", falls die Anzahl der Buffer zwischen 10 und 99 liegt
- ${number_displayed}: "1" falls Nummer angezeigt wird, ansonsten "0"
- ${indent}: Einrückung für Name (Channel und private Buffer werden eingerückt) (evaluiert aus Option buflist.format.indent)
- ${format_nick_prefix}: Nick-Präfix mit entsprechender Farbe für einen Channel (evaluiert aus Option buflist.format.nick_prefix)
- ${color_nick_prefix}: Farbe für den Nick-Präfix von einem Channel (wird nur genutzt wenn die Option buflist.look.nick_prefix aktiviert ist)
- ${nick_prefix}: der Nick-Präfix für einen Channel (wird nur genutzt falls die Option buflist.look.nick_prefix aktiviert ist)
- ${format_name}: der formatierte Name (evaluiert aus Option buflist.format.name)
- ${name}: der Kurzname (falls einer gesetzt ist), ersatzweise wird auf den Originalnamen zurückgegriffen
- ${color_hotlist}: die Farbe mit der höchsten Priorität für den entsprechenden Buffer (evaluiert aus Option buflist.format.hotlist_xxx wobei xxx der entsprechende Level ist)
- ${format_hotlist}: die formatierte Hotlist (evaluiert aus Option buflist.format.hotlist)
- ${hotlist}: die Hotlist in der Rohform
- ${hotlist_priority}: "none", "low", "message", "private" oder "highlight"
- ${format_lag}: die Verzögerung für einen IRC Server-Buffer, ist leer falls es keine Verzögerung gibt (evaluiert aus Option buflist.format.lag)
----
-153
View File
@@ -1,153 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
* [[option_buflist.format.buffer]] *buflist.format.buffer*
** Beschreibung: pass:none[Format für eine Zeile mit einem Buffer (Hinweis: Inhalt wird evaluiert, siehe /help buflist); Beispiel: Standardformat für Bar-Item "buflist" anwenden und nur die Buffernummer in eckigen Klammern für die anderen Bar-Items ("buflist2 und "buflist3") anzeigen: "${if:${bar_item.name}==buflist?${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}:[${number}\]}"]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}"+`
* [[option_buflist.format.buffer_current]] *buflist.format.buffer_current*
** Beschreibung: pass:none[Format für die Zeile mit dem ausgewählten Buffer (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color:,blue}${format_buffer}"+`
* [[option_buflist.format.hotlist]] *buflist.format.hotlist*
** Beschreibung: pass:none[Format der Hotlist (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+" ${color:green}(${hotlist}${color:green})"+`
* [[option_buflist.format.hotlist_highlight]] *buflist.format.hotlist_highlight*
** Beschreibung: pass:none[Format für Buffer mit der Benachrichtungsstufe "highlight" (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color:magenta}"+`
* [[option_buflist.format.hotlist_low]] *buflist.format.hotlist_low*
** Beschreibung: pass:none[Format für Buffer mit der Benachrichtungsstufe "low" (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color:white}"+`
* [[option_buflist.format.hotlist_message]] *buflist.format.hotlist_message*
** Beschreibung: pass:none[Format für Buffer mit der Benachrichtungsstufe "message" (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color:brown}"+`
* [[option_buflist.format.hotlist_none]] *buflist.format.hotlist_none*
** Beschreibung: pass:none[Format für Buffer die nicht in der Hotlist angezeigt werden (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color:default}"+`
* [[option_buflist.format.hotlist_private]] *buflist.format.hotlist_private*
** Beschreibung: pass:none[Format für Buffer mit der Benachrichtungsstufe "private" (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color:green}"+`
* [[option_buflist.format.hotlist_separator]] *buflist.format.hotlist_separator*
** Beschreibung: pass:none[Trennzeichen for counts in hotlist (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color:default},"+`
* [[option_buflist.format.indent]] *buflist.format.indent*
** Beschreibung: pass:none[Zeichenkette die beim Einrücken von Channel und privaten Buffern angezeigt wird (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+" "+`
* [[option_buflist.format.lag]] *buflist.format.lag*
** Beschreibung: pass:none[Format für die Anzeige der Verzögerungsanzeige für IRC Serverbuffer (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+" ${color:green}[${color:brown}${lag}${color:green}]"+`
* [[option_buflist.format.name]] *buflist.format.name*
** Beschreibung: pass:none[Format für den Namen eines Buffers (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${name}"+`
* [[option_buflist.format.nick_prefix]] *buflist.format.nick_prefix*
** Beschreibung: pass:none[Format des Nick-Präfix für einen Channel (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color_nick_prefix}${nick_prefix}"+`
* [[option_buflist.format.number]] *buflist.format.number*
** Beschreibung: pass:none[Format für die Darstellung der Buffernummer, hierbei ist die Variable ${number} die eingerückte Nummer (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color:green}${number}${if:${number_displayed}?.: }"+`
* [[option_buflist.look.add_newline]] *buflist.look.add_newline*
** Beschreibung: pass:none[fügt einen Zeilenumbruch zwischen die einzelnen Buffer hinzu um pro Zeile einen Buffer anzuzeigen (empfohlen); falls deaktiviert muss ein Zeilenumbruch manuell hinzugefügt werden, "${\\n}", des Weiteren ist die Mausunterstützung nicht mehr gegeben]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_buflist.look.auto_scroll]] *buflist.look.auto_scroll*
** Beschreibung: pass:none[scrollt automatisch die buflist-Bar um den aktuellen Buffer darzustellen (dies funktioniert ausschließlich wenn die Bar links/rechts positioniert ist und als Darstellung "vertical" verwendet wird); dieser Wert ist eine prozentuale Angabe wo der aktuelle Buffer angezeigt werden soll (-1 = deaktiviert); zum Beispiel wird bei einem Wert von 50 der Buffer in der Mitte der Bar angezeigt, bei 0 wird der Buffer oben und bei 100 am unteren Rand der Bar angezeigt]
** Typ: integer
** Werte: -1 .. 100
** Standardwert: `+50+`
* [[option_buflist.look.display_conditions]] *buflist.look.display_conditions*
** Beschreibung: pass:none[Bedingungen wann ein Buffer dargestellt werden soll (Hinweis: Inhalt ist evaluiert, siehe /help buflist); Beispielsweise werden Server-Buffer versteckt, sofern sie mit dem Core-Buffer zusammengefügt worden sind: "${buffer.hidden}==0 && ((${type}!=server && ${buffer.full_name}!=core.weechat) || ${buffer.active}==1)"]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${buffer.hidden}==0"+`
* [[option_buflist.look.enabled]] *buflist.look.enabled*
** Beschreibung: pass:none[buflist aktivieren]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_buflist.look.mouse_jump_visited_buffer]] *buflist.look.mouse_jump_visited_buffer*
** Beschreibung: pass:none[ist diese Einstellung aktiviert, kann mit der linken/rechten Maustaste auf dem aktuellen Buffer zum vorherigen/nächsten Buffer gesprungen werden]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_buflist.look.mouse_move_buffer]] *buflist.look.mouse_move_buffer*
** Beschreibung: pass:none[ist diese Einstellung aktiviert, kann mit Mausgesten (Drag & Drop) ein Buffer in der Liste verschoben werden]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_buflist.look.mouse_wheel]] *buflist.look.mouse_wheel*
** Beschreibung: pass:none[ist diese Einstellung aktiviert, kann mit dem Mausrad hoch/runter zum nächsten/vorherigen Buffer in der Liste gesprungen werden]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_buflist.look.nick_prefix]] *buflist.look.nick_prefix*
** Beschreibung: pass:none[holt den Nick-Präfix und die dazugehörige Farbe aus der Nicklist um diese mit der Variable ${nick_prefix} zu nutzen; diese Option ist standardmäßig deaktiviert, da bei einer umfangreichen Nickliste es zu Verzögerungen kommen kann]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_buflist.look.nick_prefix_empty]] *buflist.look.nick_prefix_empty*
** Beschreibung: pass:none[falls der Nick-Präfix aktiviert ist, wird ein Leerzeichen genutzt falls kein Nick-Präfix für den Buffer existiert]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_buflist.look.signals_refresh]] *buflist.look.signals_refresh*
** Beschreibung: pass:none[durch Kommata getrennte Liste von zusätzlichen Signalen die dafür sorgen das die Buffer-Liste aktualisiert wird; dies kann nützlich sein falls benutzerdefinierte Variablen genutzt werden und dadurch eine Aktualisierung erforderlich wird]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[option_buflist.look.sort]] *buflist.look.sort*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Feldern um die Buffer zu sortieren; jedes Feld ist entweder eine hdata Variable von Buffer ("var"), eine hdata Variable vom Typ IRC Server ("irc_server.var") oder eine hdata Variable vom Typ IRC Channel ("irc_channel.var"); wird das "-" Zeichen vor einem Feld angewendet, wird die Ausgabe umgekehrt, um bei einem Vergleich nicht zwischen Groß- und Kleinschreibung zu unterscheiden wird das Zeichen "~" verwendet; Beispiel: "-~short_name" sortiert die Buffer nach ihrem Kurznamen, wobei dies invertierte passiert und nicht zwischen Groß-oder Kleinschreibung unterschieden wird]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"number,-active"+`

Some files were not shown because too many files have changed in this diff Show More