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

Compare commits

..

178 Commits

Author SHA1 Message Date
Sébastien Helleu 9ad62dec1e Version 4.2.1 2024-01-22 18:46:53 +01:00
Sébastien Helleu f9cc10005c irc: fix random date displayed when a received message contains tags but no "time" (issue #2064) 2024-01-22 13:59:46 +01:00
Sébastien Helleu e42e632408 Version 4.2.1-dev 2024-01-22 13:09:45 +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
672 changed files with 77126 additions and 63883 deletions
-43
View File
@@ -1,43 +0,0 @@
---
name: Bug report
about: Create a bug report (please do not report security issues here)
labels: bug
---
<!-- 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: 
- Terminal: 
- Terminal multiplexer (screen/tmux/…/none): 
+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,8 +0,0 @@
---
name: Feature request
about: Request a new feature / enhancement
labels: feature
---
## 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
-19
View File
@@ -1,19 +0,0 @@
---
name: Question
about: >
Ask a question (please read first FAQ and docs and ask on #weechat channel
before opening any question issue)
labels: question
---
<!-- Please read first FAQ/docs and ask on #weechat channel before opening any question issue -->
## 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
+1
View File
@@ -85,6 +85,7 @@ jobs:
matrix:
os:
- macos-12
- macos-11
config:
- { name: "gcc", cc: "gcc", cxx: "g++" }
- { name: "clang", cc: "clang", cxx: "clang++" }
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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>
#
+69 -11
View File
@@ -10,22 +10,79 @@ This document lists all the changes for each version. +
For a list of important changes that require manual actions, please look at release notes.
[[v4.1.4]]
== Version 4.1.4 (under dev)
[[v4.2.1]]
== Version 4.2.1 (2024-01-22)
Bug fixes::
* core, relay: fix include directory of libzstd
* core: add missing mouse events "alt-ctrl-button2" and "alt-ctrl-button3"
* irc: fix crash in split of IRC message containing a newline if the server is not given
* python: fix truncation of unsigned long long integer returned by function string_parse_size
* script: always display list of scripts when searching scripts with `/script search` (issue #2077)
* script: fix default mouse keys (issue #2076)
* tcl: fix truncation of long integer returned by function hdata_long
* trigger: fix memory leak when adding a new trigger with `/trigger` command
* irc: fix random date displayed when a received message contains tags but no "time" (issue #2064)
[[v4.2.0]]
== Version 4.2.0 (2024-01-21)
New features::
* core: add variable "opening" in buffer, do not send buffer signals when the buffer is opening
* core: store microseconds in buffer lines (issue #649)
* core: evaluate expressions even when the suffix is missing ("}" by default) (issue #2042, issue #1714)
* core: add syntax highlighting in evaluation of expressions with `raw_hl:string` and `hl:string`, add option weechat.color.eval_syntax_colors (issue #2042)
* core: add option `search_history` in command `/input`, add key kbd:[Ctrl+r] to search in commands history, add key context "histsearch" (issue #2040)
* core: add option weechat.look.buffer_search_history (issue #2040)
* core: add key kbd:[Ctrl+o] to send command found and insert next one in input (issue #2040)
* core: add buffer variables "text_search_direction", "text_search_history" and "text_search_ptr_history" (issue #2040)
* core: move key kbd:[Ctrl+r] to kbd:[Ctrl+s] (issue #2040)
* core: move key kbd:[Ctrl+s], kbd:[Ctrl+u] to kbd:[Alt+Shift+U] (issue #2040)
* core: display only version with command `/version`, add options `-o` and `-ol` in command `/upgrade`
* core: add number of processes in command `/sys waitpid`
* core, alias, trigger: allow wildcard in commands `/bar`, `/item`, `/proxy`, `/alias` and `/trigger` (issue #1956)
* api: add functions util_strftimeval, util_parse_time, printf_datetime_tags, printf_y_datetime_tags (issue #649)
* api: add argument "date_usec" in hook_print callback (issue #649)
* api: add property "type" in function buffer_get_string
* api: add info "mouse"
* buflist: jump to previous/next buffer displayed in buflist item with ctrl+wheel up/down on a buflist item (issue #1473)
* irc: add option irc.look.display_host_wallops
* irc: add server option "anti_flood" (now in milliseconds), remove server options "anti_flood_prio_{high|low}" (issue #1039)
* irc: add option irc.look.list_buffer
* irc: change default value of server option "tls_priorities" to `NORMAL`
* irc: add support of RGB colors in messages, add option irc.color.term_remap (issue #2025)
* irc: add tags "nick_xxx" and "host_xxx" in all messages, including self and server messages
* irc: add option irc.look.ignore_tag_messages (issue #989)
* relay: change default value of option relay.network.tls_priorities to `NORMAL`
* trigger: change format of variables `${tg_date}` from "%Y-%m-%d %H:%M:%S" to "%FT%T.%f" (issue #649)
* trigger: rename local variable "trigger_filter" to "filter" on monitor buffer (issue #2037)
Bug fixes::
* core: fix crash on plugin reload when using musl libc (issue #2052)
* core: fix infinite loop in display when the chat area is too small (issue #2053)
* core: fix value of buffer variable "num_history" when the value defined in option weechat.history.max_commands is reached
* core: remove incorrect warning when binding keys kbd:[F10] to kbd:[F20] (issue #2039)
* core: call hook config when options are removed
* core: display an error with command `/history N` when N is not a valid integer
* core: fix memory leak when config version is invalid or not supported
* core: fix crash when "config_version" is present in a configuration file without a value
* core: display an error on startup if environment variable "HOME" is not set
* core: fix crash when a custom bar item name is already used by a default bar item (issue #2034)
* core: fix random timeouts when a lot of concurrent processes are launched with hook_process (issue #2033)
* api: return NULL instead of empty infolist "key" when context is not found
* irc: check if arguments are not NULL in some infos
* irc: fix info "irc_is_message_ignored" (issue #2059)
* irc: fix display of self messages when the message split fails due to inconsistent max lengths sent by the server in message 005
* irc: display messages 730/731 (monitored nicks online/offline) even if command `/notify` was not used (issue #2049)
* irc: remove trailing "\r\n" in signals "irc_out" and "irc_outtags" when messages are queued
* irc: fix target buffer of IRC message 337 (whois reply: "is hiding their idle time")
* irc: revert compute of nick colors to case sensitive way, deprecate again infos "irc_nick_color" and "irc_nick_color_name" (issue #194, issue #2032)
* relay: close properly connection with the IRC client in case of server disconnection (issue #2038)
* ruby: fix use of NULL variable when displaying exception
Tests::
* core: add tests on plugin config and plugin API info functions
* irc: add tests on info functions
Build::
* core: make libintl.h required if CMake option ENABLE_NLS is enabled (issue #2031)
* ruby: add detection of Ruby 3.3
[[v4.1.3]]
@@ -82,7 +139,8 @@ New features::
* core: add options weechat.buffer.* to save buffer properties set by user, add option `setauto` in command `/buffer` (issue #352)
* core: add parameters and key bindings to move to edges of current area with commands `/cursor go` and `/cursor move` (issue #1282)
* core: add variables "_chat_focused_line_bol" and "_chat_focused_line_eol" in focus data (issue #1955)
* api: add function hook_url, add option `url` in command `/debug` (issue #1723)
* api: add support of format/translation of command arguments description line by line (issue #2005)
* api: add function string_concat (issue #2005)
* api: add support of path to variable and hashtable comparison in function hdata_compare (issue #1066)
* api: add infos "nick_color_ignore_case" and "nick_color_name_ignore_case" (issue #194)
* api: add info "buffer" (issue #1962)
+2 -2
View File
@@ -5,8 +5,8 @@
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/diaspora*-follow-blue.svg["Diaspora*", link="https://diasp.eu/u/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://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"]
@@ -49,7 +49,7 @@ WeeChat is following a "practical" semantic versioning, see file link:Contributi
== Copyright
Copyright (C) 2003-2023 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.
+90 -21
View File
@@ -11,25 +11,102 @@ It is recommended to read it when upgrading to a new stable version. +
For a complete list of changes, please look at ChangeLog.
[[v4.1.4]]
== Version 4.1.4 (under dev)
[[v4.2.1]]
== Version 4.2.1 (2024-01-22)
[[v4.1.4_script_keys]]
=== Script keys
No release notes.
Some arguments to the `/script` command were renamed in version 4.1.0, but the
keys using these arguments were not changed at same time.
[[v4.2.0]]
== Version 4.2.0 (2024-01-21)
They're now using the new arguments by default, but you must reset manually
the keys with the following commands:
[[v4.2.0_lines_microseconds]]
=== Microseconds in buffer lines
Microseconds have been added in buffer lines (for both date and printed date).
Here are the changes that could affect plugins and scripts:
* hook_print: the C callback receives a new argument "date_usec" (microseconds
of date), after the argument "date" (scripting API is unchanged: the
microseconds are not available)
* trigger of types "print" and "timer": the format of variable `${tg_date}` is
changed from `%Y-%m-%d %H:%M:%S` to `%FT%T.%f` (where `%f` is the number of
microseconds on 6 digits)
[[v4.2.0_irc_anti_flood]]
=== IRC anti-flood
The anti-flood mechanism in IRC plugin has been improved and is now configured
in milliseconds instead of seconds. +
It is done with a single option `irc.server_default.anti_flood` (and same option
in servers), which replaces both options `anti_flood_prio_high` and
`anti_flood_prio_low`.
The default value is 2000 (2 seconds), and for example if you want to set
a delay of 0.5 seconds between your messages sent:
----
/reset weechat.key_mouse.@chat(script.scripts):button1
/reset weechat.key_mouse.@chat(script.scripts):button2
/reset weechat.key_mouse.@chat(script.scripts):wheeldown
/reset weechat.key_mouse.@chat(script.scripts):wheelup
/set irc.server_default.anti_flood 500
----
When upgrading from an old WeeChat version, you'll see such messages, which are
perfectly normal (they're displayed to warn you about unknown options, and then
you have to set the new option if needed):
----
=!= | Warning: /home/user/.config/weechat/irc.conf, line 131: ignoring unknown option for section "server_default": anti_flood_prio_high = 2
=!= | Warning: /home/user/.config/weechat/irc.conf, line 132: ignoring unknown option for section "server_default": anti_flood_prio_low = 2
=!= | Warning: /home/user/.config/weechat/irc.conf, line 212: ignoring invalid value for option in section "server": libera.anti_flood_prio_high
=!= | Warning: //home/user/.config/weechat/irc.conf, line 213: ignoring invalid value for option in section "server": libera.anti_flood_prio_low
----
[[v4.2.0_search_commands_history]]
=== Search in commands history
Search in commands history has been added with new keys and a new key context
called "histsearch".
Some existing keys have been moved as well.
New keys can be changed and added with the following commands after upgrade
from an old WeeChat version:
----
/key missing
/key unbind ctrl-s,ctrl-u
/key bind meta-U /allbuf /buffer set unread
/key bind ctrl-r /input search_history
/key bindctxt search ctrl-r /input search_previous
----
[[v4.2.0_irc_rgb_colors]]
=== RGB colors in IRC messages
Support for RGB colors in IRC messages has been added and a new key
kbd:[Ctrl+c], kbd:[d] is available to insert this color code in command line.
You can add this key with this command:
----
/key missing
----
[[v4.2.0_custom_bar_items]]
=== Custom bar items
Custom bar items must now have a different name than default bar items
(for example the custom bar item name `time` is now forbidden). +
If you have such names in your config, WeeChat will now fail to load them
(this should not happen anyway, since such bar items can not be properly used
or can cause a crash of WeeChat).
[[v4.2.0_nick_color_infos]]
=== Nick color infos
The infos irc_nick_color and irc_nick_color_name are deprecated again, and the
algorithm to compute IRC nick colors has been reverted to case sensitive. +
The server name has been removed from arguments.
[[v4.1.3]]
== Version 4.1.3 (2024-01-20)
@@ -47,19 +124,11 @@ No release notes.
=== Custom bar items
Custom bar items must now have a different name than default bar items
(for example the custom bar item name `time` is now forbidden).
(for example the custom bar item name `time` is now forbidden). +
If you have such names in your config, WeeChat will now fail to load them
(this should not happen anyway, since such bar items can not be properly used
or can cause a crash of WeeChat).
[[v4.1.1_nick_color_infos]]
=== Nick color infos
The infos irc_nick_color and irc_nick_color_name are deprecated again, and the
algorithm to compute IRC nick colors has been reverted to case sensitive. +
The server name has been removed from arguments.
[[v4.1.0]]
== Version 4.1.0 (2023-10-15)
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2014-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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>
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2011-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+1 -1
View File
@@ -1,6 +1,6 @@
#
# Copyright (C) 2017 Adam Saponara <as@php.net>
# Copyright (C) 2017-2023 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2017-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2015-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+3
View File
@@ -0,0 +1,3 @@
tar-ignore = ".git"
tar-ignore = "build"
tar-ignore = "release"
+1 -1
View File
@@ -4,7 +4,7 @@ Upstream-Contact: Sébastien Helleu <flashcode@flashtux.org>
Source: https://weechat.org/
Files: *
Copyright: 2003-2023, Sébastien Helleu <flashcode@flashtux.org>
Copyright: 2003-2024, Sébastien Helleu <flashcode@flashtux.org>
License: GPL-3+
Files: src/core/wee-command.c
+3
View File
@@ -0,0 +1,3 @@
tar-ignore = ".git"
tar-ignore = "build"
tar-ignore = "release"
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
+1 -1
View File
@@ -99,7 +99,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat je napsán Sébastienem Helleu a přispěvovateli (kompletní seznam je v
souboru AUTHORS.adoc).
Copyright (C) 2003-2023 {author}
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
+1 -1
View File
@@ -100,7 +100,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat wird programmiert von Sébastien Helleu und weiteren Beteiligten (eine vollständige Auflistung
findet man in der AUTHORS.adoc Datei).
Copyright (C) 2003-2023 {author}
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
+16
View File
@@ -621,6 +621,22 @@ die von einer Weechat Version ≥ 4.0.0 erstellt wurde, sind die Tastennamen ung
Um dies zu reparieren, muss WeeChat beendet und alle Einträge aus dem Abschnitt `[key*]` innerhalb der weechat.conf entfernt werden.
Wenn WeeChat erneut gestartet wird, wird die Standardtastenbelegung neu erstellt.
[[key_f11]]
=== Die Taste F11 maximiert das Terminalfenster. Wie kann ich aber in der Nicklist nach oben scrollen?
Die kbd:[F11] Taste wird häufig von Terminals verwendet, um das Fenster zu maximieren. Aber
kbd:[F11]/kbd:[F12] sind ebenso die Standardtasten, in WeeChat, um in der Nickliste zu scrollen.
Man kann andere Tasten nutzen, zum Beispiel kbd:[Shift+F11] und kbd:[Shift+F12],
mit WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Eine andere Möglichkeit besteht darin, die Maus zu aktivieren (Taste: kbd:[Alt+m]) und mit dem Mausrad zu scrollen (siehe auch Fragen zu <<mouse,mouse>>).
[[customize_key_bindings]]
=== Wie kann ich die Tastaturbelegung anpassen?
+2
View File
@@ -664,8 +664,10 @@ Liste der Skript API Funktionen:
color +
print (für Python: prnt) +
print_date_tags (für Python: prnt_date_tags) +
print_datetime_tags (für Python: prnt_datetime_tags) +
print_y (für Python: prnt_y) +
print_y_date_tags (für Python: prnt_y_date_tags) +
print_y_datetime_tags (für Python: prnt_y_datetime_tags) +
log_print
| Hooks
+73 -20
View File
@@ -920,11 +920,30 @@ In der _input_ Bar lautet die Standardeinstellung:
| Item | Beispiel | Beschreibung
| input_prompt | `[@Flashy(i)]` | Input prompt, für irc: Nick und Modi (Modus "+i" bedeutet auf libera, unsichtbar).
| away | `(away)` | Abwesenheitsanzeige.
| input_search | `[Search (~ str,msg)]` | Suchindikatoren ("`~`": Groß-und Kleinschreibung ignorieren, "`==`": Groß-und Kleinschreibung berücksichtigen, "`str`": einfache Textsuche, "`regex`": suche mit regulären Ausdrücken, "`msg`": Suche in Nachrichten, "`pre`": Suche in Präfix, "`pre\|msg`": Suche in Präfix und Nachrichten).
| input_paste | `[Paste 7 lines ? [ctrl-y] Ja [ctrl-n] Nein]` | Nachfrage ob sieben Zeilen eingefügt werden sollen.
| input_search | `[Search lines (~ str,msg)]` | Suchindikatoren ("`~`": Groß-und Kleinschreibung ignorieren, "`==`": Groß-und Kleinschreibung berücksichtigen, "`str`": einfache Textsuche, "`regex`": suche mit regulären Ausdrücken, "`msg`": Suche in Nachrichten, "`pre`": Suche in Präfix, "`pre\|msg`": Suche in Präfix und Nachrichten).
| input_paste | `[Paste 7 lines ? [ctrl-y] Ja [ctrl-n] Nein]` | Nachfrage, ob sieben Zeilen eingefügt werden sollen.
| input_text | `hi peter!` | Text der eingegeben wird.
|===
Es existieren zwei Suchmodi:
* Suche in Zeilen, zum Beispiel `[Search lines (~ str,msg)]`, mit folgenden Infos:
** `~`: Groß-und Kleinschreibung ignorieren
** `==`: Groß-und Kleinschreibung berücksichtigen
** `str`: einfache Textsuche
** `regex`: suche mit regulären Ausdrücken
** `msg`: Suche in Nachrichten
** `pre`: Suche in Präfix
** `pre\|msg`: Suche in Präfix und Nachrichten
* Suche im Befehlsverlauf, zum Beispiel `[Search command (~ str,local)]`,
mit den folgenden Informationen:
** `~`: Groß-und Kleinschreibung ignorieren
** `==`: Groß-und Kleinschreibung berücksichtigen
** `str`: einfache Textsuche
** `regex`: suche mit regulären Ausdrücken
** `local`: suche im lokalen Bufferverlauf
** `global`: suche im globalen Verlauf
In der _nicklist_ Bar lautet die Standardeinstellung:
[width="100%",cols="^3,^3,9",options="header"]
@@ -1016,6 +1035,11 @@ Zeichen, genutzt werden:
| kbd:[Ctrl+c], kbd:[c],
kbd:[xx], kbd:[,],
kbd:[yy] | Textfarbe `xx` und Hintergrundfarbe `yy` (siehe Farbtabelle).
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx] | Textfarbe `xxxxxx` (RGB als hexadezimale Zahl, zum Beispiel `FF0000` für rot).
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx], kbd:[,],
kbd:[yyyyyy] | Textfarbe `xxxxxx` und Hintergrundfarbe `yyyyyy` (RGB als hexadezimale Zahl).
| kbd:[Ctrl+c], kbd:[i] | Text wird kursiv dargestellt.
| kbd:[Ctrl+c], kbd:[o] | deaktiviert Farben und Attribute.
| kbd:[Ctrl+c], kbd:[v] | Farben umkehren (kehrt Textfarbe und Hintergrundfarbe um).
@@ -1023,8 +1047,8 @@ Zeichen, genutzt werden:
|===
[NOTE]
Der selbe Befehl (ohne den Wert für kbd:[Ctrl+c], kbd:[c]) sollte genutzt werden
um die Farbkodierungen bzw. Attribute zu deaktivieren.
Der selbe Code (ohne Nummer für kbd:[Ctrl+c], kbd:[c] und kbd:[Ctrl+c], kbd:[d])
kann verwendet werden, um das Attribut zu stoppen.
Farbtabelle für kbd:[Ctrl+c], kbd:[c]:
@@ -1587,6 +1611,7 @@ Sie können mit dem Befehl <<command_weechat_key,/key>> geändert und neue hinzu
| Taste | Beschreibung | Befehl
| kbd:[Ctrl+c], kbd:[b] | fügt Steuerzeichen für fett geschrieben Text ein. | `+/input insert \x02+`
| kbd:[Ctrl+c], kbd:[c] | fügt Steuerzeichen für Textfarbe ein. | `+/input insert \x03+`
| kbd:[Ctrl+c], kbd:[d] | fügt Steuerzeichen für Textfarbe ein (RGB Farbe, als hexadezimale Zahl). | `+/input insert \x04+`
| kbd:[Ctrl+c], kbd:[i] | fügt Steuerzeichen für kursiven Text ein. | `+/input insert \x1D+`
| kbd:[Ctrl+c], kbd:[o] | fügt Steuerzeichen für Standardfarbe ein. | `+/input insert \x0F+`
| kbd:[Ctrl+c], kbd:[v] | fügt Steuerzeichen für Hintergrundfarbe ein. | `+/input insert \x16+`
@@ -1620,8 +1645,8 @@ Sie können mit dem Befehl <<command_weechat_key,/key>> geändert und neue hinzu
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Taste | Beschreibung | Befehl
| kbd:[Ctrl+r] | Textsuche im Verlaufsspeicher des Buffers (siehe <<key_bindings_search_context,Tasten für Such-Kontext>>). | `+/input search_text_here+`
| kbd:[Ctrl+s], kbd:[Ctrl+u] | setzt für alle Buffer die Markierung für ungelesene Nachrichten. | `+/allbuf /buffer set unread+`
| kbd:[Ctrl+r] | sucht nach Text im Befehlsverlauf (siehe <<key_bindings_histsearch_context,keys for context "histsearch">>). | `+/input search_history+`
| kbd:[Ctrl+s] | sucht nach Text in Bufferzeilen (siehe <<key_bindings_search_context,keys for context "search">>). | `+/input search_text_here+`
| kbd:[Ctrl+x] | Wechseln Sie den aktuellen Buffer, wenn diese zusammengefügt worden sind, z.B. zwischen IRC-Serverbuffer wechseln. | `+/buffer switch+`
| kbd:[Alt+x] | Zoom eines zusammengefügten Buffers (kbd:[Alt+x] ein zweites mal: alle zusammengefügten Buffer werden angezeigt). | `+/buffer zoom+`
| kbd:[PgUp] | eine Seite im Verlaufsspeicher des Buffers nach oben blättern. | `+/window page_up+`
@@ -1647,6 +1672,7 @@ Sie können mit dem Befehl <<command_weechat_key,/key>> geändert und neue hinzu
| kbd:[Alt+n] | springt zur nächsten Highlight Nachricht. | `+/window scroll_next_highlight+`
| kbd:[Alt+p] | springt zur vorherigen Highlight Nachricht. | `+/window scroll_previous_highlight+`
| kbd:[Alt+u] | springt zur ersten ungelesenen Zeile im Buffer. | `+/window scroll_unread+`
| kbd:[Alt+Shift+U] | setzt für alle Buffer die Markierung für ungelesene Nachrichten. | `+/allbuf /buffer set unread+`
| kbd:[Alt+<] | springt zum letzten besuchten Buffer. | `+/buffer jump prev_visited+`
| kbd:[Alt+>] | springt zum nächsten besuchten Buffer. | `+/buffer jump next_visited+`
| kbd:[Alt+/] | wechselt zum jeweils zuletzt angezeigten Buffern. | `+/buffer jump last_displayed+`
@@ -1723,23 +1749,48 @@ Sie können mit dem Befehl <<command_weechat_key,/key>> geändert und neue hinzu
[[key_bindings_search_context]]
=== Suchkontext
Diese Tasten werden im Kontext "search" verwendet (wenn kbd:[Ctrl+r] genutzt wird um
in einem Buffer nach einem Text zu suchen).
Diese Tasten werden im Kontext "search" verwendet (wenn kbd:[Ctrl+s] gedrückt wird, um Text
in Bufferzeilen zu suchen).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Taste | Beschreibung | Befehl
| kbd:[Ctrl+r] | Wechsel des Suchmodus: einfache Textsuche (Standard), reguläre Ausdrücke. | `+/input search_switch_regex+`
| kbd:[Ctrl+x] | Wechsel des Suchmodus: einfache Textsuche (Standard), reguläre Ausdrücke. | `+/input search_switch_regex+`
| kbd:[Alt+c] | auf Groß-/Kleinschreibung umschalten. | `+/input search_switch_case+`
| kbd:[Tab] | wechselt Suche in: Nachricht (Standard), im Präfix, Präfix + Nachricht. | `+/input search_switch_where+`
| kbd:[↑] | sucht vorheriger Zeile. | `+/input search_previous+`
| kbd:[] | sucht nächste Zeile . | `+/input search_next+`
| kbd:[Ctrl+r] +
kbd:[] | sucht vorheriger Zeile. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | sucht nächste Zeile . | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | beendet Suche ab aktueller Position. | `+/input search_stop_here+`
| kbd:[Ctrl+q] | Suche wird abgebrochen und der Bildlauf wird auf die Vortextsuche zurückgesetzt. | `+/input search_stop+`
|===
[[key_bindings_histsearch_context]]
=== Kontext der Verlaufssuche
Diese Tasten werden im Kontext "histsearch" verwendet (wenn kbd:[Ctrl+r] gedrückt wird, um Text
im Befehlsverlauf zu suchen).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Taste | Beschreibung | Befehl
| kbd:[Ctrl+x] | Wechsel des Suchmodus: einfache Textsuche (Standard), reguläre Ausdrücke. | `+/input search_switch_regex+`
| kbd:[Alt+c] | auf Groß-/Kleinschreibung umschalten. | `+/input search_switch_case+`
| kbd:[Tab] | umschalten der Suche für: lokaler Bufferverlauf (Standard), globaler Verlauf. | `+/input search_switch_where+`
| kbd:[Ctrl+r] +
kbd:[↑] | Suche in vorherigen (älteren) Verlaufseinträgen. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Suche in nachfolgenden (neueren) Verlaufseinträgen. | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Suche stoppen und übereinstimmende Eingaben verwenden. | `+/input search_stop_here+`
| kbd:[Ctrl+o] | führt den im Verlauf gefundenen Befehl aus und fügt den nächsten in die Befehlszeile ein. | `+/input history_use_get_next+`
| kbd:[Ctrl+q] | stoppt die Suche und stellt die Eingabe auf ihren ursprünglichen Wert zurück. | `+/input search_stop+`
|===
[[key_bindings_cursor_context]]
=== Cursor-Kontext
@@ -1806,10 +1857,10 @@ wurde (Befehl: `+/mouse toggle+`).
| kbd:[▼] | - | chat: /list buffer | gehe fünf Zeilen im /list-Buffer nach unten. | `+/list -down 5+`
| kbd:[■ □ □] | - | chat: /list buffer | Zeile im /list-Buffer auswählen. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat: /list buffer | tritt dem IRC-Kanal, in der ausgewählten Zeile, bei. | `+hsignal:irc_list_mouse+`
| kbd:[▲] | - | chat: script buffer | fünf Zeilen nach oben blättern, im Script-Buffer. | `+/script -up 5+`
| kbd:[▼] | - | chat: script buffer | fünf Zeilen nach unten blättern, im Script-Buffer. | `+/script -down 5+`
| kbd:[■ □ □] | - | chat: script buffer | wählt einen Eintrag im Script-Buffer aus. | `+/script -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat: script buffer | installiert/entfernt ein Skript. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[▲] | - | chat: script buffer | fünf Zeilen nach oben blättern, im Script-Buffer. | `+/script up 5+`
| kbd:[▼] | - | chat: script buffer | fünf Zeilen nach unten blättern, im Script-Buffer. | `+/script down 5+`
| kbd:[■ □ □] | - | chat: script buffer | wählt einen Eintrag im Script-Buffer aus. | `+/script go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat: script buffer | installiert/entfernt ein Skript. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[■ □ □] | up / left | buflist | verschiebt Buffer in der Reihenfolge nach unten. | Signal `+buflist_mouse+`.
| kbd:[■ □ □] | down / right | buflist | verschiebt Buffer in der Reihenfolge nach oben. | Signal `+buflist_mouse+`.
| kbd:[■ □ □] | - | buflist | wechselt zum Buffer (oder zum vorherigen Buffer, falls der aktuell genutzte Buffer angewählt wurde). | Signal `+buflist_mouse+`.
@@ -1927,8 +1978,8 @@ Diese Tasten und Aktionen werden im fset-Buffer verwendet (siehe <<script_manage
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|===
| Taste | Action ^(1)^ | Beschreibung | Befehl
| kbd:[↑] | | eine Zeile nach oben. | `+/script -up+`
| kbd:[↓] | | eine Zeile nach unten. | `+/script -down+`
| kbd:[↑] | | eine Zeile nach oben. | `+/script up+`
| kbd:[↓] | | eine Zeile nach unten. | `+/script down+`
| kbd:[PgUp] | | eine Seite hoch blättern. | `+/window page_up+`
| kbd:[PgDn] | | eine Seite nach unten blättern. | `+/window page_down+`
| kbd:[Alt+i] | `i` | Skript installieren. | `+/script install+`
@@ -5233,7 +5284,7 @@ Wenn _var_ nicht angegeben ist, wird die Standardvariable verwendet, sie hängt
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| line | message | buffer, buffer_name, y, date, date_usec, date_printed, date_usec_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
@@ -5396,7 +5447,9 @@ Der Callback von "line" legt folgende Variablen in der Hashtable an:
| buffer_type | string | Buffertyp ("formatted" oder "free").
| y | string | Zeilennummer bei einem Buffer mit freier Einteilung (≥ 0), -1 für einen Buffer mit formatiertem Inhalt.
| date | string | Datum der Zeile (Zeitstempel).
| date_usec | string | Mikrosekunden des Zeilendatums.
| date_printed | string | Datum wann die Zeile dargestellt wurde (Zeitstempel).
| date_usec_printed | string | Mikrosekunden des Datums, an dem die Zeile angezeigt wurde.
| str_time | string | Datum für Darstellung. Kann Farbkodierungen erhalten.
| tags | string | Tags einer Nachricht (Komma wird automatisch zu Beginn und Ende den Tags hinzugefügt).
| displayed | string | "1" wenn Zeile dargestellt wird, "0" wenn Zeile gefiltert wird.
@@ -5435,7 +5488,7 @@ Der Callback von "print" legt folgende Variablen in der Hashtable an:
|===
| Variable | Typ | Beschreibung
| buffer | pointer | Buffer.
| tg_date | string | Datum/Uhrzeit der Nachricht (Format: `YYYY-MM-DD hh:mm:ss`).
| tg_date | string | Datum/Uhrzeit der Nachricht (Format: `%FT%T.%f`, siehe link:weechat_plugin_api.en.html#_util_strftimeval[WeeChat plugin API reference / util_strftimeval ^↗^^]).
| tg_displayed | string | "1" wenn Nachricht dargestellt wird, "0" falls Nachricht gefiltert wird.
| tg_highlight | string | "1" falls es sich um eine Highlight-Nachricht handelt, andernfalls "0".
| tg_prefix | string | Präfix.
@@ -5500,7 +5553,7 @@ Der Callback von "timer" legt folgende Variablen in der Hashtable an:
|===
| Variable | Typ | Beschreibung
| tg_remaining_calls | string | Anzahl der noch ausstehenden Aufrufe.
| tg_date | string | aktuelles Datum und Uhrzeit (Format: `YYYY-MM-DD hh:mm:ss`).
| tg_date | string | aktuelles Datum und Uhrzeit (Format: `%FT%T.%f`, siehe link:weechat_plugin_api.en.html#_util_strftimeval[WeeChat plugin API reference / util_strftimeval ^↗^^]).
|===
[[trigger_data_config]]
+1 -1
View File
@@ -1,6 +1,6 @@
<!--
Custom styles for Asciidoctor
Copyright (C) 2016-2023 Sébastien Helleu <flashcode@flashtux.org>
Copyright (C) 2016-2024 Sébastien Helleu <flashcode@flashtux.org>
-->
<style>
+1 -1
View File
@@ -100,7 +100,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat is written by Sébastien Helleu and contributors (complete list is in
the AUTHORS.adoc file).
Copyright (C) 2003-2023 {author}
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
+6 -1
View File
@@ -403,6 +403,8 @@ WeeChat "core" is located in following directories:
|          unparse.py | Convert Python code to other languages, used by script testapigen.py.
|    unit/ | Root of unit tests.
|       test-plugins.cpp | Tests: plugins.
|       test-plugin-api-info.cpp | Tests: plugin API info functions.
|       test-plugin-config.cpp | Tests: plugin config functions.
|       core/ | Root of unit tests for core.
|          test-core-arraylist.cpp | Tests: arraylists.
|          test-core-calc.cpp | Tests: calculation of expressions.
@@ -424,6 +426,8 @@ WeeChat "core" is located in following directories:
|          test-core-utf8.cpp | Tests: UTF-8.
|          test-core-util.cpp | Tests: utility functions.
|          test-core-sys.cpp | Tests: system functions.
|          hook/ | Root of unit tests for hooks.
|             test-hook-command.cpp | Tests: hooks "command".
|       gui/ | Root of unit tests for interfaces.
|          test-gui-bar-window.cpp | Tests: bar window functions.
|          test-gui-buffer.cpp | Tests: buffer functions.
@@ -443,6 +447,7 @@ WeeChat "core" is located in following directories:
|             test-irc-config.cpp | Tests: IRC configuration.
|             test-irc-ctcp.cpp | Tests: IRC CTCP.
|             test-irc-ignore.cpp | Tests: IRC ignores.
|             test-irc-info.cpp | Tests: IRC info.
|             test-irc-join.cpp | Tests: IRC join functions.
|             test-irc-list.cpp | Tests: IRC buffer for reply to /list command.
|             test-irc-message.cpp | Tests: IRC messages.
@@ -528,7 +533,7 @@ Example in C:
/*
* weechat.c - core functions for WeeChat
*
* Copyright (C) 2023 Your Name <your@email.com>
* Copyright (C) 2024 Your Name <your@email.com>
*
* This file is part of WeeChat, the extensible chat client.
*
+17
View File
@@ -591,6 +591,23 @@ version ≥ 4.0.0, the keys names become invalid and many keys won't work at all
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
[[key_f11]]
=== Key F11 maximizes the terminal window, how can I scroll up the nicklist?
The key kbd:[F11] is commonly used by terminals to maximize the window, and
kbd:[F11]/kbd:[F12] are the default keys in WeeChat to scroll the nicklist.
You can bind other keys, for example kbd:[Shift+F11] and kbd:[Shift+F12],
with WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Other solution is to enable mouse (key: kbd:[Alt+m]) and scroll with the mouse
wheel (see also questions about <<mouse,mouse>>).
[[customize_key_bindings]]
=== How can I customize key bindings?
+330 -42
View File
@@ -2567,7 +2567,7 @@ str3 = weechat.string_input_for_buffer("//test") # "/test"
==== string_eval_expression
_WeeChat ≥ 0.4.0, updated in 0.4.2, 0.4.3, 1.0, 1.1, 1.2, 1.3, 1.6, 1.8, 2.0,
2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6, 3.8, 4.0.0._
2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6, 3.8, 4.0.0, 4.2.0._
Evaluate an expression and return result as a string.
Special variables with format `+${variable}+` are expanded (see table below).
@@ -2900,11 +2900,21 @@ expanded to last):
|===
| Format | Min WeeChat | Description | Examples
| `+${raw_hl:xxx}+` | 4.2.0
| Raw string (not evaluated), with syntax highlighting (using colors).
| >> `+${raw_hl:${cut:1,,${rev:hello}}}+` +
== `+${cut:1,,${rev:hello}}+` (with colors)
| `+${raw:xxx}+` | 3.1
| Raw string (not evaluated).
| >> `+${raw:${info:version}}+` +
== `+${info:version}+`
| `+${hl:xxx}+` | 4.2.0
| String with syntax highlighting (using colors).
| >> `+${hl:${file.section.option}}+` +
== `+test ${variable}+` (with colors)
| `+${name}+` | 3.4
| User variable (defined with `+${define:name,value}+`).
| >> `+${name}+` +
@@ -3476,6 +3486,46 @@ weechat_string_dyn_free (string, 1);
[NOTE]
This function is not available in scripting API.
==== string_concat
_WeeChat ≥ 4.2.0._
Concatenate multiple strings using a separator.
Prototype:
[source,c]
----
const char *weechat_string_concat (const char *separator, ...);
----
Arguments:
* _separator_: the separator string which is inserted between concatenated
strings (can be NULL or empty string)
[NOTE]
Last argument *MUST* always be NULL. +
A macro called `WEECHAT_STR_CONCAT` can be used, where the final NULL value is
not needed (usage of this macro is recommended).
Return value:
* concatenated string
C example:
[source,c]
----
const char *result = weechat_string_concat (" / ", "abc", "def", "ghi", NULL); /* result == "abc / def / ghi" */
/* with macro */
const char *result = WEECHAT_STR_CONCAT(" / ", "abc", "def", "ghi"); /* result == "abc / def / ghi" */
----
[NOTE]
This function is not available in scripting API.
[[utf-8]]
=== UTF-8
@@ -4646,6 +4696,81 @@ weechat_printf (NULL, "date: %s",
[NOTE]
This function is not available in scripting API.
==== util_strftimeval
_WeeChat ≥ 4.2.0._
Format date and time like function `strftime` in C library, using `struct timeval`
as input, and supporting extra specifiers for microseconds.
Prototype:
[source,c]
----
int weechat_util_strftimeval (char *string, int max, const char *format, struct timeval *tv);
----
Arguments:
* _string_: buffer where the formatted string is stored
* _max_: string size
* _format_: format, the same as _strftime_ function, with these extra specifiers:
** `%.N` where `N` is between 1 and 6: zero-padded microseconds on N digits
(for example `%.3` for milliseconds)
** `%f`: alias of `%.6`
Return value:
* number of bytes put in _string_ (value returned from _strftime_ function)
C example:
[source,c]
----
char time[256];
struct timeval tv;
gettimeofday (&tv, NULL);
weechat_util_strftimeval (time, sizeof (time), "%FT%T.%f", &tv);
/* result: 2023-12-26T18:10:04.460509 */
----
[NOTE]
This function is not available in scripting API.
==== util_parse_time
_WeeChat ≥ 4.2.0._
Parse date/time with support of microseconds.
Prototype:
[source,c]
----
int util_parse_time (const char *datetime, struct timeval *tv);
----
Arguments:
* _date_: date/time
* _tv_: parsed date/time ("timeval" structure)
Return value:
* 1 if OK, 0 if error
C example:
[source,c]
----
struct timeval tv;
weechat_util_parse_time ("2023-12-25T10:29:09.456789Z", &tv); /* == 1 */
/* result: tv.tv_sec == 1703500149, tv.tv_usec = 456789 */
----
[NOTE]
This function is not available in scripting API.
==== util_version_number
_WeeChat ≥ 0.3.9._
@@ -9220,13 +9345,13 @@ Prototype:
void weechat_printf (struct t_gui_buffer *buffer, const char *message, ...);
----
This function is a shortcut for function printf_date_tags. These two calls give
exactly same result:
This function is a shortcut for function printf_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf (buffer, "message");
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
Arguments:
@@ -9288,6 +9413,15 @@ void weechat_printf_date_tags (struct t_gui_buffer *buffer, time_t date,
const char *tags, const char *message, ...);
----
This function is a shortcut for function printf_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
Arguments:
* _buffer_: buffer pointer, if NULL, message is displayed on WeeChat buffer
@@ -9322,6 +9456,62 @@ weechat.prnt_date_tags("", time - 120, "notify_message",
[NOTE]
Function is called "print_date_tags" in scripts ("prnt_date_tags" in Python).
==== printf_datetime_tags
_WeeChat ≥ 4.2.0._
Display a message on a buffer, using a custom date/time (with microseconds)
and tags.
Prototype:
[source,c]
----
void weechat_printf_datetime_tags (struct t_gui_buffer *buffer, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
Arguments:
* _buffer_: buffer pointer, if NULL, message is displayed on WeeChat buffer
* _date_: date for message (0 means current date/time)
* _date_usec_: microseconds of date (between 0 and 999999)
* _tags_: comma separated list of tags (NULL means no tags)
* _message_: message to display
See the link:weechat_user.en.html#lines_tags[WeeChat user's guide / Lines tags ^↗^^]
for a list of commonly used tags in WeeChat.
C example:
[source,c]
----
struct timeval tv_now;
gettimeofday (&tv_now, NULL);
weechat_printf_datetime_tags (NULL, tv_now.tv_sec - 120, tv_now.tv_usec,
"notify_message",
"Message 2 minutes ago, with a tag 'notify_message'");
----
Script (Python):
[source,python]
----
# prototype
def prnt_datetime_tags(buffer: str, date: int, date_usec: int, tags: str, message: str) -> int: ...
# example
now = time.time()
time_sec = int(now)
time_usec = int((now * 1000000) % 1000000)
weechat.prnt_datetime_tags("", time_sec - 120, time_usec, "notify_message",
"Message 2 minutes ago, with a tag 'notify_message'")
----
[NOTE]
Function is called "print_datetime_tags" in scripts ("prnt_datetime_tags" in Python).
==== printf_y
Display a message on a line of a buffer with free content.
@@ -9330,8 +9520,16 @@ Prototype:
[source,c]
----
void weechat_printf_y (struct t_gui_buffer *buffer, int y,
const char *message, ...);
void weechat_printf_y (struct t_gui_buffer *buffer, int y, const char *message, ...);
----
This function is a shortcut for function printf_y_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf_y (buffer, 0, "message");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "message");
----
Arguments:
@@ -9379,6 +9577,15 @@ void weechat_printf_y_date_tags (struct t_gui_buffer *buffer, int y, time_t date
const char *tags, const char *message, ...);
----
This function is a shortcut for function printf_y_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf_y_date_tags (buffer, 0, 0, NULL, "message");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "message");
----
Arguments:
* _buffer_: buffer pointer
@@ -9410,6 +9617,53 @@ weechat.prnt_y_date_tags("", 2, 0, "my_tag", "My message on third line with a ta
[NOTE]
Function is called "print_y_date_tags" in scripts ("prnt_y_date_tags" in Python).
==== printf_y_datetime_tags
_WeeChat ≥ 4.2.0._
Display a message on a line of a buffer with free content, using a custom
date/time (with microseconds) and tags.
Prototype:
[source,c]
----
void weechat_printf_y_datetime_tags (struct t_gui_buffer *buffer, int y, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
Arguments:
* _buffer_: buffer pointer
* _y_: line number (first line is 0); a negative value adds a line after last
line displayed: absolute value of _y_ is the number of lines after last line
(for example -1 is immediately after last line, -2 is 2 lines after last line)
* _date_: date for message (0 means current date/time)
* _date_usec_: microseconds of date (between 0 and 999999)
* _tags_: comma separated list of tags (NULL means no tags)
* _message_: message to display
C example:
[source,c]
----
weechat_printf_y_datetime_tags (buffer, 2, 0, 0, "my_tag", "My message on third line with a tag");
----
Script (Python):
[source,python]
----
# prototype
def prnt_y_datetime_tags(buffer: str, y: int, date: int, date_usec: int, tags: str, message: str) -> int: ...
# example
weechat.prnt_y_datetime_tags("", 2, 0, 0, "my_tag", "My message on third line with a tag")
----
[NOTE]
Function is called "print_y_datetime_tags" in scripts ("prnt_y_datetime_tags" in Python).
==== log_printf
Write a message in WeeChat log file (weechat.log).
@@ -10773,7 +11027,7 @@ hook = weechat.hook_connect("", "my.server.org", 1234, 1, 0, "",
==== hook_line
_WeeChat ≥ 2.3, updated in 3.7._
_WeeChat ≥ 2.3, updated in 4.2.0._
Hook a line to be printed in a buffer.
@@ -10872,11 +11126,21 @@ Line data sent to the callback is a hashtable, with following values
| N/A ("0").
| `+1533792000+`
| date_usec
| Microseconds of line date (between 0 and 999999).
| N/A ("0").
| `+123456+`
| date_printed
| Date when line was displayed (timestamp).
| N/A ("0").
| `+1533792012+`
| date_usec_printed
| Microseconds of date when line was displayed (between 0 and 999999).
| N/A ("0").
| `+654321+`
| str_time
| Date for display (possible color codes inside).
| N/A (empty string).
@@ -10963,11 +11227,22 @@ in this hashtable):
| The date is set to this value. +
The value of `+str_time+` is updated accordingly.
| date_usec
| Integer ("0" to "999999").
| N/A.
| The microseconds of line date is set to this value. +
The value of `+str_time+` is updated accordingly.
| date_printed
| Timestamp.
| N/A.
| The printed date is set to this timestamp (not displayed).
| date_usec_printed
| Integer ("0" to "999999").
| N/A.
| The microseconds of printed date is set to this value.
| str_time
| String.
| N/A.
@@ -11048,7 +11323,7 @@ hook = weechat.hook_line("", "", "irc_join", "my_line_cb", "")
==== hook_print
_Updated in 0.4.3, 1.0, 1.5._
_Updated in 0.4.3, 1.0, 1.5, 4.2.0._
Hook a message printed. It is called when a line has been added in a buffer
with formatted content.
@@ -11068,6 +11343,7 @@ struct t_hook *weechat_hook_print (struct t_gui_buffer *buffer,
void *data,
struct t_gui_buffer *buffer,
time_t date,
int date_usec,
int tags_count,
const char **tags,
int displayed,
@@ -11097,6 +11373,7 @@ Arguments:
** _void *data_: pointer
** _struct t_gui_buffer *buffer_: buffer pointer
** _time_t date_: date
** _int date_usec_: microseconds of date
** _int tags_count_: number of tags for line
** _const char **tags_: array with tags for line
** _int displayed_: 1 if line is displayed, 0 if it is filtered (hidden)
@@ -11127,7 +11404,7 @@ C example:
----
int
my_print_cb (const void *pointer, void *data, struct t_gui_buffer *buffer,
time_t date, int tags_count, const char **tags,
time_t date, int date_usec, int tags_count, const char **tags,
int displayed, int highlight,
const char *prefix, const char *message)
{
@@ -13242,9 +13519,15 @@ Content of hashtable sent to callback (keys and values are of type "string"):
| _chat_line_date | Line date/time.
| "1313237175" | "0"
| _chat_line_date_usec | Microseconds of line date/time.
| "123456" | "0"
| _chat_line_date_printed | Line date/time ^(4)^.
| "1313237175" | "0"
| _chat_line_date_usec_printed | Microseconds of line printed date/time ^(4)^.
| "123456" | "0"
| _chat_line_time | Time displayed.
| "14:06:15" | ""
@@ -14032,6 +14315,7 @@ Arguments:
* _buffer_: buffer pointer
* _property_: property name:
** _opening_: 1 if buffer is opening, otherwise 0 _(WeeChat ≥ 4.2.0)_
** _number_: number of buffer (starts to 1)
** _layout_number_: number of buffer saved in layout
** _layout_number_merge_order_: order in merge for layout
@@ -14039,24 +14323,18 @@ Arguments:
** _type_: buffer type (0: formatted, 1: free content)
** _notify_: notify level for buffer
** _num_displayed_: number of windows displaying buffer
** _active_: 2 if buffer is the only active (merged), 1 if buffer is active,
0 if buffer is merged and not selected
** _hidden_: 1 if buffer is hidden, otherwise 0
_(WeeChat ≥ 1.0)_
** _zoomed_: 1 if buffer is merged and zoomed, otherwise 0
_(WeeChat ≥ 1.0)_
** _active_: 2 if buffer is the only active (merged), 1 if buffer is active, 0 if buffer is merged and not selected
** _hidden_: 1 if buffer is hidden, otherwise 0 _(WeeChat ≥ 1.0)_
** _zoomed_: 1 if buffer is merged and zoomed, otherwise 0 _(WeeChat ≥ 1.0)_
** _print_hooks_enabled_: 1 if print hooks are enabled, otherwise 0
** _day_change_: 1 if messages for the day change are displayed, otherwise 0
_(WeeChat ≥ 0.4.3)_
** _clear_: 1 if buffer can be cleared with command `/buffer clear`, otherwise 0
_(WeeChat ≥ 1.0)_
** _filter_: 1 if filters are enabled on buffer, otherwise 0
_(WeeChat ≥ 1.0)_
** _lines_hidden_: 1 if at least one line is hidden on buffer (filtered), or 0
if all lines are displayed
** _day_change_: 1 if messages for the day change are displayed, otherwise 0 _(WeeChat ≥ 0.4.3)_
** _clear_: 1 if buffer can be cleared with command `/buffer clear`, otherwise 0 _(WeeChat ≥ 1.0)_
** _filter_: 1 if filters are enabled on buffer, otherwise 0 _(WeeChat ≥ 1.0)_
** _closing_: 1 if buffer is closing, otherwise 0 _(WeeChat ≥ 1.0)_
** _lines_hidden_: 1 if at least one line is hidden on buffer (filtered), or 0 if all lines are displayed
** _prefix_max_length_: max length for prefix in this buffer
** _time_for_each_line_: 1 if time is displayed for each line in buffer
(default), otherwise 0
** _next_line_id_: next line id in buffer _(WeeChat ≥ 3.8)_
** _time_for_each_line_: 1 if time is displayed for each line in buffer (default), otherwise 0
** _nicklist_: 1 if nicklist is enabled, otherwise 0
** _nicklist_case_sensitive_: 1 if nicks are case sensitive, otherwise 0
** _nicklist_max_length_: max length for a nick
@@ -14064,15 +14342,13 @@ Arguments:
** _nicklist_count_: number of nicks and groups in nicklist
** _nicklist_visible_count_: number of nicks/groups displayed
** _nicklist_groups_count_: number of groups in nicklist
** _nicklist_visible_groups_count_: number of groups displayed
** _nicklist_groups_visible_count_: number of groups displayed
** _nicklist_nicks_count_: number of nicks in nicklist
** _nicklist_visible_nicks_count_: number of nicks displayed
** _nicklist_nicks_visible_count_: number of nicks displayed
** _input_: 1 if input is enabled, otherwise 0
** _input_get_unknown_commands_: 1 if unknown commands are sent to input
callback, otherwise 0
** _input_get_unknown_commands_: 1 if unknown commands are sent to input callback, otherwise 0
** _input_get_empty_: 1 if empty input is sent to input callback, otherwise 0
** _input_multiline_: 1 if multiple lines are sent as one message to input
callback, otherwise 0
** _input_multiline_: 1 if multiple lines are sent as one message to input callback, otherwise 0
** _input_size_: input size (in bytes)
** _input_length_: input length (number of chars)
** _input_pos_: cursor position in buffer input
@@ -14080,9 +14356,22 @@ Arguments:
** _num_history_: number of commands in history
** _text_search_: text search type:
*** 0: no search at this moment
*** 1: backward search (direction: oldest messages)
*** 2: forward search (direction: newest messages)
*** 1: search in buffer lines
*** 2: search in commands history
** _text_search_direction_: direction for search:
*** 0: backward search (direction: oldest messages/commands)
*** 1: forward search (direction: newest messages/commands)
** _text_search_exact_: 1 if text search is case sensitive
** _text_search_regex_: 1 if searching with a regular expression
** _text_search_where_:
*** 0: no search at this moment
*** 1: search in message
*** 2: search in prefix
*** 3: search in prefix and message
** _text_search_history_:
*** 0: no search at this moment
*** 1: search in buffer local history
*** 2: search in global history
** _text_search_found_: 1 if text found, otherwise 0
Return value:
@@ -14124,13 +14413,12 @@ Arguments:
* _buffer_: buffer pointer
* _property_: property name:
** _plugin_: name of plugin which created this buffer ("core" for WeeChat main
buffer)
** _plugin_: name of plugin which created this buffer ("core" for WeeChat main buffer)
** _name_: name of buffer
** _full_name_: full name of buffer ("plugin.name") _(WeeChat ≥ 0.3.7)_
** _short_name_: short name of buffer (note: used for display only and can be
changed by user, this must not be used to find name of buffer, use instead
_name_, _full_name_ or local variable _channel_)
** _old_full_name_: old full name of buffer ("plugin.name"), set before the buffer is renamed _(WeeChat ≥ 2.8)_
** _short_name_: short name of buffer (note: used for display only and can be changed by user, this must not be used to find name of buffer, use instead _name_, _full_name_ or local variable _channel_)
** _type_: type of buffer: "formatted" or "free" _(WeeChat ≥ 4.2.0)_
** _title_: title of buffer
** _input_: input text
** _text_search_input_: input saved before text search
@@ -14140,8 +14428,7 @@ Arguments:
** _highlight_tags_restrict_: restrict highlights to messages with these tags
** _highlight_tags_: force highlight on messages with these tags
** _hotlist_max_level_nicks_: max hotlist level for some nicks
** _localvar_xxx_: get content of local variable "xxx" (replace "xxx" by the
name of variable to read)
** _localvar_xxx_: get content of local variable "xxx" (replace "xxx" by the name of variable to read)
Return value:
@@ -14185,8 +14472,9 @@ Arguments:
* _buffer_: buffer pointer
* _property_: property name:
** _plugin_: pointer to plugin which created this buffer (NULL for WeeChat main
buffer)
** _plugin_: pointer to plugin which created this buffer (NULL for WeeChat main buffer)
** _text_search_regex_compiled_: compiled regular expression
** _text_search_ptr_history_: history found
** _highlight_disable_regex_compiled_: regular expression _highlight_disable_regex_ compiled
** _highlight_regex_compiled_: regular expression _highlight_regex_ compiled
+25 -10
View File
@@ -488,7 +488,9 @@ hda:
'buffer': 'ptr',
'y': 'int',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'str_time': 'str',
'tags_count': 'int',
'tags_array': 'arr',
@@ -506,7 +508,9 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404926
date_usec: 118712
date_printed: 1588404926
date_usec_printed: 118712
str_time: 'F@0025209F@0024535F@0024026'
tags_count: 0
tags_array: []
@@ -522,7 +526,9 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404930
date_usec: 25
date_printed: 1588404930
date_usec_printed: 25
str_time: 'F@0025209F@0024535F@0024030'
tags_count: 0
tags_array: []
@@ -712,11 +718,14 @@ inl:
input_buffer_1st_display: 0
num_history: 0
text_search: 0
text_search_direction: 0
text_search_exact: 0
text_search_regex: 0
text_search_regex_compiled: '0x0'
text_search_where: 0
text_search_history: 0
text_search_found: 0
text_search_ptr_history: '0x0'
text_search_input: None
highlight_words: None
highlight_disable_regex: None
@@ -2047,16 +2056,18 @@ Data sent as hdata:
[width="100%",cols="3m,2,10",options="header"]
|===
| Name | Type | Description
| buffer | pointer | Buffer pointer.
| date | time | Date of message.
| date_printed | time | Date when WeeChat displayed message.
| displayed | char | 1 if message is displayed, 0 if message is filtered (hidden).
| notify_level | char | Notify level: -1 = notify disabled, 0 = low, 1 = message, 2 = private, 3 = highlight.
| highlight | char | 1 if line has a highlight, otherwise 0.
| tags_array | array of strings | List of tags for line.
| prefix | string | Prefix.
| message | string | Message.
| Name | Type | Description
| buffer | pointer | Buffer pointer.
| date | time | Date of message.
| date_usec | integer | Microseconds of date.
| date_printed | time | Date when WeeChat displayed message.
| date_usec_printed | integer | Microseconds of date when WeeChat displayed message.
| displayed | char | 1 if message is displayed, 0 if message is filtered (hidden).
| notify_level | char | Notify level: -1 = notify disabled, 0 = low, 1 = message, 2 = private, 3 = highlight.
| highlight | char | 1 if line has a highlight, otherwise 0.
| tags_array | array of strings | List of tags for line.
| prefix | string | Prefix.
| message | string | Message.
|===
Example: new message _hello!_ from nick _FlashCode_ on buffer _irc.libera.#weechat_:
@@ -2068,7 +2079,9 @@ hda:
keys: {
'buffer': 'ptr',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'displayed': 'chr',
'notify_level': 'chr',
'highlight': 'chr',
@@ -2081,7 +2094,9 @@ hda:
__path: ['0x4a49600']
buffer: '0x4a715d0'
date: 1362728993
date_usec: 902765
date_printed: 1362728993
date_usec_printed: 902765
displayed: 1
notify_level: 1
highlight: 0
+2
View File
@@ -649,8 +649,10 @@ List of functions in script API:
color +
print (for python: prnt) +
print_date_tags (for python: prnt_date_tags) +
print_datetime_tags (for python: prnt_datetime_tags) +
print_y (for python: prnt_y) +
print_y_date_tags (for python: prnt_y_date_tags) +
print_y_datetime_tags (for python: prnt_y_datetime_tags) +
log_print
| hooks
+73 -19
View File
@@ -914,11 +914,30 @@ Bar _input_ has following default items:
| Item | Example | Description
| input_prompt | `[@Flashy(i)]` | Input prompt, for irc: nick and modes (mode "+i" means invisible on libera).
| away | `(away)` | Away indicator.
| input_search | `[Search (~ str,msg)]` | Search indicator ("`~`": case insensitive, "`==`": case sensitive, "`str`": search string, "`regex`": search regular expression, "`msg`": search in messages, "`pre`": search in prefixes, "`pre\|msg`": search in prefixes and messages).
| input_search | `[Search lines (~ str,msg)]` | Search indicator (see below)
| input_paste | `[Paste 7 lines ? [ctrl-y] Yes [ctrl-n] No]` | Question to user for pasting lines.
| input_text | `hi peter!` | Input text.
|===
There are two search modes:
* search in lines, for example `[Search lines (~ str,msg)]`, with the following info:
** `~`: case insensitive
** `==`: case sensitive
** `str`: search string
** `regex`: search regular expression
** `msg`: search in messages
** `pre`: search in prefixes
** `pre\|msg`: search in prefixes and messages.
* search in commands history, for example `[Search command (~ str,local)]`,
with the following info:
** `~`: case insensitive
** `==`: case sensitive
** `str`: search string
** `regex`: search regular expression
** `local`: search in buffer local history
** `global`: search in global history.
Bar _nicklist_ has following default items:
[width="100%",cols="^3,^3,9",options="header"]
@@ -1007,6 +1026,11 @@ follow (press kbd:[Ctrl+c] then following letter, with optional value):
| kbd:[Ctrl+c], kbd:[c],
kbd:[xx], kbd:[,],
kbd:[yy] | Text color `xx` and background `yy` (see list of colors below).
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx] | Text color `xxxxxx` (RGB as hexadecimal, for example `FF0000` for red).
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx], kbd:[,],
kbd:[yyyyyy] | Text color `xxxxxx` and background `yyyyyy` (RGB as hexadecimal).
| kbd:[Ctrl+c], kbd:[i] | Italic text.
| kbd:[Ctrl+c], kbd:[o] | Disable color and attributes.
| kbd:[Ctrl+c], kbd:[v] | Reverse video (revert text color with background).
@@ -1014,8 +1038,8 @@ follow (press kbd:[Ctrl+c] then following letter, with optional value):
|===
[NOTE]
The same code (without number for kbd:[Ctrl+c], kbd:[c]) can be used to stop the
attribute.
The same code (without number for kbd:[Ctrl+c], kbd:[c] and kbd:[Ctrl+c], kbd:[d])
can be used to stop the attribute.
Color codes for kbd:[Ctrl+c], kbd:[c] are:
@@ -1559,6 +1583,7 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Execute command or send message (in search mode: stop search). | `+/input return+`
| kbd:[Ctrl+o] | Execute the command found in history and insert the next one in the command line. | `+/input history_use_get_next+`
| kbd:[Alt+Enter] | Insert a newline. | `+/input insert \n+`
| kbd:[Alt+d] | Delete next word in command line (deleted string is copied to the internal clipboard). | `+/input delete_next_word+`
| kbd:[Alt+k] | Grab a key and insert its code (and command bound if key exists) in command line. | `+/input grab_key_command+`
@@ -1574,6 +1599,7 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
| Key | Description | Command
| kbd:[Ctrl+c], kbd:[b] | Insert code for bold text. | `+/input insert \x02+`
| kbd:[Ctrl+c], kbd:[c] | Insert code for colored text. | `+/input insert \x03+`
| kbd:[Ctrl+c], kbd:[d] | Insert code for colored text (RGB color, as hexadecimal). | `+/input insert \x04+`
| kbd:[Ctrl+c], kbd:[i] | Insert code for italic text. | `+/input insert \x1D+`
| kbd:[Ctrl+c], kbd:[o] | Insert code for color reset. | `+/input insert \x0F+`
| kbd:[Ctrl+c], kbd:[v] | Insert code for reverse color. | `+/input insert \x16+`
@@ -1607,8 +1633,8 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Key | Description | Command
| kbd:[Ctrl+r] | Search for text in buffer history (see <<key_bindings_search_context,keys for search context>>). | `+/input search_text_here+`
| kbd:[Ctrl+s], kbd:[Ctrl+u] | Set unread marker on all buffers. | `+/allbuf /buffer set unread+`
| kbd:[Ctrl+r] | Search for text in commands history (see <<key_bindings_histsearch_context,keys for context "histsearch">>). | `+/input search_history+`
| kbd:[Ctrl+s] | Search for text in buffer lines (see <<key_bindings_search_context,keys for context "search">>). | `+/input search_text_here+`
| kbd:[Ctrl+x] | Switch current buffer if buffers are merged with same number, for example switch to another IRC server buffer. | `+/buffer switch+`
| kbd:[Alt+x] | Zoom on merged buffer (kbd:[Alt+x] again: display all merged buffers). | `+/buffer zoom+`
| kbd:[PgUp] | Scroll up one page in buffer history. | `+/window page_up+`
@@ -1634,6 +1660,7 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
| kbd:[Alt+n] | Scroll to next highlight. | `+/window scroll_next_highlight+`
| kbd:[Alt+p] | Scroll to previous highlight. | `+/window scroll_previous_highlight+`
| kbd:[Alt+u] | Scroll to first unread line in buffer. | `+/window scroll_unread+`
| kbd:[Alt+Shift+U] | Set unread marker on all buffers. | `+/allbuf /buffer set unread+`
| kbd:[Alt+<] | Switch to previous buffer in list of visited buffers. | `+/buffer jump prev_visited+`
| kbd:[Alt+>] | Switch to next buffer in list of visited buffers. | `+/buffer jump next_visited+`
| kbd:[Alt+/] | Switch to last buffer displayed (before last jump to a buffer). | `+/buffer jump last_displayed+`
@@ -1710,23 +1737,48 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
[[key_bindings_search_context]]
=== Search context
These keys are used in context "search" (when kbd:[Ctrl+r] is pressed to search
text in buffer).
These keys are used in context "search" (when kbd:[Ctrl+s] is pressed to search
text in buffer lines).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Key | Description | Command
| kbd:[Ctrl+r] | Switch search type: string (default), regular expression. | `+/input search_switch_regex+`
| kbd:[Ctrl+x] | Switch search type: string (default), regular expression. | `+/input search_switch_regex+`
| kbd:[Alt+c] | Switch exact case for search. | `+/input search_switch_case+`
| kbd:[Tab] | Switch search in: messages (default), prefixes, prefixes + messages. | `+/input search_switch_where+`
| kbd:[↑] | Search previous line. | `+/input search_previous+`
| kbd:[] | Search next line. | `+/input search_next+`
| kbd:[Ctrl+r] +
kbd:[] | Search previous line. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Search next line. | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Stop search at current position. | `+/input search_stop_here+`
| kbd:[Ctrl+q] | Stop search and reset scroll to pre-text search state. | `+/input search_stop+`
|===
[[key_bindings_histsearch_context]]
=== History search context
These keys are used in context "histsearch" (when kbd:[Ctrl+r] is pressed to
search text in commands history).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Key | Description | Command
| kbd:[Ctrl+x] | Switch search type: string (default), regular expression. | `+/input search_switch_regex+`
| kbd:[Alt+c] | Switch exact case for search. | `+/input search_switch_case+`
| kbd:[Tab] | Switch search in: buffer local history (default), global history. | `+/input search_switch_where+`
| kbd:[Ctrl+r] +
kbd:[↑] | Search in previous (older) history entries. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Search in next (newer) history entries. | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Stop search and use matching input. | `+/input search_stop_here+`
| kbd:[Ctrl+o] | Execute the command found in history and insert the next one in the command line. | `+/input history_use_get_next+`
| kbd:[Ctrl+q] | Stop search and restore input to its initial value. | `+/input search_stop+`
|===
[[key_bindings_cursor_context]]
=== Cursor context
@@ -1793,10 +1845,10 @@ These mouse actions are possible only if mouse is enabled with key kbd:[Alt+m]
| kbd:[▼] | - | chat: /list buffer | Move five lines down in /list buffer. | `+/list -down 5+`
| kbd:[■ □ □] | - | chat: /list buffer | Select line in /list buffer. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat: /list buffer | Join IRC channel on selected line. | `+hsignal:irc_list_mouse+`
| kbd:[▲] | - | chat: script buffer | Move five lines up in script buffer. | `+/script -up 5+`
| kbd:[▼] | - | chat: script buffer | Move five lines down in script buffer. | `+/script -down 5+`
| kbd:[■ □ □] | - | chat: script buffer | Select line in script buffer. | `+/script -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat: script buffer | Install/remove script. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[▲] | - | chat: script buffer | Move five lines up in script buffer. | `+/script up 5+`
| kbd:[▼] | - | chat: script buffer | Move five lines down in script buffer. | `+/script down 5+`
| kbd:[■ □ □] | - | chat: script buffer | Select line in script buffer. | `+/script go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat: script buffer | Install/remove script. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[■ □ □] | up / left | buflist | Move buffer to a lower number. | Signal `+buflist_mouse+`.
| kbd:[■ □ □] | down / right | buflist | Move buffer to a higher number. | Signal `+buflist_mouse+`.
| kbd:[■ □ □] | - | buflist | Switch to buffer (previously visited buffer if the buffer is the current one). | Signal `+buflist_mouse+`.
@@ -1914,8 +1966,8 @@ These keys and actions are used on the script buffer (see <<script_manager,scrip
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|===
| Key | Action ^(1)^ | Description | Command
| kbd:[↑] | | Move one line up. | `+/script -up+`
| kbd:[↓] | | Move one line down. | `+/script -down+`
| kbd:[↑] | | Move one line up. | `+/script up+`
| kbd:[↓] | | Move one line down. | `+/script down+`
| kbd:[PgUp] | | Move one page up. | `+/window page_up+`
| kbd:[PgDn] | | Move one page down. | `+/window page_down+`
| kbd:[Alt+i] | `i` | Install script. | `+/script install+`
@@ -5126,7 +5178,7 @@ type:
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| line | message | buffer, buffer_name, y, date, date_usec, date_printed, date_usec_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
@@ -5285,7 +5337,9 @@ The "line" callback sets following variables in hashtable:
| buffer_type | string | Buffer type ("formatted" or "free").
| y | string | Line number for a buffer with free content (≥ 0), -1 for a buffer with formatted content.
| date | string | Line date (timestamp).
| date_usec | string | Microseconds of line date.
| date_printed | string | Date when line was displayed (timestamp).
| date_usec_printed | string | Microseconds of date when line was displayed.
| str_time | string | Date for display. It may contain color codes.
| tags | string | Tags of message (with comma added at beginning/end of string).
| displayed | string | "1" if displayed, "0" if line filtered.
@@ -5324,7 +5378,7 @@ The "print" callback sets following variables in hashtable:
|===
| Variable | Type | Description
| buffer | pointer | Buffer.
| tg_date | string | Message date/time (format: `YYYY-MM-DD hh:mm:ss`).
| tg_date | string | Message date/time (format: `%FT%T.%f`, see link:weechat_plugin_api.en.html#_util_strftimeval[WeeChat plugin API reference / util_strftimeval ^↗^^]).
| tg_displayed | string | "1" if displayed, "0" if line filtered.
| tg_highlight | string | "1" if highlight, otherwise "0".
| tg_prefix | string | Prefix.
@@ -5389,7 +5443,7 @@ The "timer" callback sets following variables in hashtable:
|===
| Variable | Type | Description
| tg_remaining_calls | string | Number of remaining calls.
| tg_date | string | Current date/time (format: `YYYY-MM-DD hh:mm:ss`).
| tg_date | string | Current date/time (format: `%FT%T.%f`, see link:weechat_plugin_api.en.html#_util_strftimeval[WeeChat plugin API reference / util_strftimeval ^↗^^]).
|===
[[trigger_data_config]]
+18
View File
@@ -607,6 +607,24 @@ version ≥ 4.0.0, the keys names become invalid and many keys won't work at all
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
// TRANSLATION MISSING
[[key_f11]]
=== Key F11 maximizes the terminal window, how can I scroll up the nicklist?
The key kbd:[F11] is commonly used by terminals to maximize the window, and
kbd:[F11]/kbd:[F12] are the default keys in WeeChat to scroll the nicklist.
You can bind other keys, for example kbd:[Shift+F11] and kbd:[Shift+F12],
with WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Other solution is to enable mouse (key: kbd:[Alt+m]) and scroll with the mouse
wheel (see also questions about <<mouse,mouse>>).
[[customize_key_bindings]]
=== ¿Cómo puedo personalizar los atajos de teclado?
+1 -1
View File
@@ -102,7 +102,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat est écrit par Sébastien Helleu et des contributeurs (la liste complète
est dans le fichier AUTHORS.adoc).
Copyright (C) 2003-2023 {author}
Copyright (C) 2003-2024 {author}
WeeChat est un logiciel libre ; vous pouvez le redistribuer et/ou le modifier
sous les termes de la GNU General Public License telle que publiée par la
+7 -2
View File
@@ -150,7 +150,7 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|    wee-util.c | Quelques autres fonctions utilitaires.
|    wee-version.c | Fonctions pour la version de WeeChat.
|    weechat.c | Fonctions principales : options de ligne de commande, démarrage.
|    hook/ | Hook functions.
|    hook/ | Fonctions "hook".
|       wee-hook-command-run.c | Hook "command_run".
|       wee-hook-command.c | Hook "command".
|       wee-hook-completion.c | Hook "completion".
@@ -405,6 +405,8 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|          unparse.py | Conversion de code Python vers d'autres langages, utilisé par le script testapigen.py.
|    unit/ | Racine des tests unitaires.
|       test-plugins.cpp | Tests : extensions.
|       test-plugin-api-info.cpp | Tests : fonctions info de l'API extension.
|       test-plugin-config.cpp | Tests : fonctions config de l'extension.
|       core/ | Racine des tests unitaires pour le cœur.
|          test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »).
|          test-core-calc.cpp | Tests : calcul d'expressions.
@@ -426,6 +428,8 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|          test-core-utf8.cpp | Tests : UTF-8.
|          test-core-util.cpp | Tests : fonctions utiles.
|          test-core-sys.cpp | Tests : fonctions système.
|          hook/ | Racine des tests pour les hooks.
|             test-hook-command.cpp | Tests : hooks "command".
|       gui/ | Racine des tests unitaires pour les interfaces.
|          test-gui-bar-window.cpp | Tests : fonctions de fenêtres de barre.
|          test-gui-buffer.cpp | Tests : fonctions de tampons.
@@ -445,6 +449,7 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|             test-irc-config.cpp | Tests : configuration IRC.
|             test-irc-ctcp.cpp | Tests : CTCP IRC.
|             test-irc-ignore.cpp | Tests : ignores IRC.
|             test-irc-info.cpp | Tests : infos IRC.
|             test-irc-join.cpp | Tests : fonctions de join IRC.
|             test-irc-list.cpp | Tests : tampon IRC pour la réponse à la commande /list.
|             test-irc-message.cpp | Tests : messages IRC.
@@ -530,7 +535,7 @@ Exemple en C :
/*
* weechat.c - core functions for WeeChat
*
* Copyright (C) 2023 Your Name <your@email.com>
* Copyright (C) 2024 Your Name <your@email.com>
*
* This file is part of WeeChat, the extensible chat client.
*
+18
View File
@@ -611,6 +611,24 @@ Pour les réparer, quittez WeeChat, supprimez toutes les sections `[key*]` de
weechat.conf et démarrez WeeChat à nouveau : toutes les touches par défaut
seront recréées.
[[key_f11]]
=== La touche F11 maximise la fenêtre du terminal, comment puis-je faire défiler la liste de pseudos vers le haut ?
La touche kbd:[F11] est fréquemment utilisée par les terminaux pour maximiser
la fenêtre, et kbd:[F11]/kbd:[F12] sont les touches par défaut dans WeeChat
pour faire défiler la liste des pseudos.
Vous pouvez associer d'autres touches, par exemple kbd:[Shift+F11] et kbd:[Shift+F12],
avec WeeChat ≥ 4.0.0 :
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Une autre solution est d'activer la souris (touche : kbd:[Alt+m]) et faire défiler
avec la roulette de la souris (voir aussi les questions sur la <<mouse,souris>>).
[[customize_key_bindings]]
=== Comment puis-je configurer les raccourcis clavier ?
+347 -54
View File
@@ -2613,7 +2613,7 @@ str3 = weechat.string_input_for_buffer("//test") # "/test"
==== string_eval_expression
_WeeChat ≥ 0.4.0, mis à jour dans la 0.4.2, 0.4.3, 1.0, 1.1, 1.2, 1.3, 1.6, 1.8,
2.0, 2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6, 3.8, 4.0.0._
2.0, 2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6, 3.8, 4.0.0, 4.2.0._
Évaluer l'expression et retourner le résultat sous forme de chaîne.
Les variables spéciales avec le format `+${variable}+` sont étendues (voir le
@@ -2952,11 +2952,22 @@ première étendue à la dernière) :
|===
| Format | WeeChat mini | Description | Exemples
| `+${raw_hl:xxx}+` | 4.2.0
| Chaîne brute (non évaluée), avec mise en évidence de la syntaxe (en utilisant
des couleurs).
| >> `+${raw_hl:${cut:1,,${rev:hello}}}+` +
== `+${cut:1,,${rev:hello}}+` (avec des couleurs)
| `+${raw:xxx}+` | 3.1
| Chaîne brute (non évaluée).
| >> `+${raw:${info:version}}+` +
== `+${info:version}+`
| `+${hl:xxx}+` | 4.2.0
| Chaîne avec mise en évidence de la syntaxe (en utilisant des couleurs).
| >> `+${hl:${fichier.section.option}}+` +
== `+test ${variable}+` (avec des couleurs)
| `+${nom}+` | 3.4
| Variable définie par l'utilisateur (avec `+${define:nom,valeur}+`).
| >> `+${nom}+` +
@@ -3533,6 +3544,46 @@ weechat_string_dyn_free (string, 1);
[NOTE]
Cette fonction n'est pas disponible dans l'API script.
==== string_concat
_WeeChat ≥ 4.2.0._
Concaténer plusieurs chaînes de caractères en utilisant un séparateur.
Prototype :
[source,c]
----
const char *weechat_string_concat (const char *separator, ...);
----
Paramètres :
* _separator_ : la chaîne de séparation qui est insérée entre les chaînes
concaténées (peut être NULL ou une chaîne vide)
[NOTE]
Le dernier paramètre *DOIT* toujours être NULL. +
Une macro nommée `WEECHAT_STR_CONCAT` peut être utilisée, où la valeur finale
NULL n'est pas nécessaire (l'utilisation de cette macro est recommandée).
Valeur de retour :
* chaîne concaténée
Exemple en C :
[source,c]
----
const char *result = weechat_string_concat (" / ", "abc", "def", "ghi", NULL); /* result == "abc / def / ghi" */
/* with macro */
const char *result = WEECHAT_STR_CONCAT(" / ", "abc", "def", "ghi"); /* result == "abc / def / ghi" */
----
[NOTE]
Cette fonction n'est pas disponible dans l'API script.
[[utf-8]]
=== UTF-8
@@ -4724,6 +4775,83 @@ weechat_printf (NULL, "date : %s",
[NOTE]
Cette fonction n'est pas disponible dans l'API script.
==== util_strftimeval
_WeeChat ≥ 4.2.0._
Formatter la date et l'heure comme la fonction `strftime` de la bibliothèque C,
en utilisant un `struct timeval` en entrée et en supportant des caractères de
conversion pour les microsecondes.
Prototype :
[source,c]
----
int weechat_util_strftimeval (char *string, int max, const char *format, struct timeval *tv);
----
Paramètres :
* _string_ : tampon où stocker la chaîne formattée
* _max_ : taille de la chaîne
* _format_ : format, le même que celui de la fonction _strftime_, avec des
caractères de conversion supplémentaires :
** `%.N` où `N` est entre 1 and 6: microsecondes remplies avec des zéros sur
N chiffres (par exemple `%.3` pour les millisecondes)
** `%f` : alias de `%.6`
Valeur de retour :
* nombre d'octets placés dans _string_ (valeur retournée par la fonction _strftime_).
Exemple en C :
[source,c]
----
char time[256];
struct timeval tv;
gettimeofday (&tv, NULL);
weechat_util_strftimeval (time, sizeof (time), "%FT%T.%f", &tv);
/* résultat : 2023-12-26T18:10:04.460509 */
----
[NOTE]
Cette fonction n'est pas disponible dans l'API script.
==== util_parse_time
_WeeChat ≥ 4.2.0._
Analyser la date/heure avec le support des microsecondes.
Prototype :
[source,c]
----
int util_parse_time (const char *datetime, struct timeval *tv);
----
Paramètres :
* _date_ : date/heure
* _tv_: date/heure analysée (structure "timeval")
Valeur de retour :
* 1 si OK, 0 si erreur
Exemple en C :
[source,c]
----
struct timeval tv;
weechat_util_parse_time ("2023-12-25T10:29:09.456789Z", &tv); /* == 1 */
/* result: tv.tv_sec == 1703500149, tv.tv_usec = 456789 */
----
[NOTE]
Cette fonction n'est pas disponible dans l'API script.
==== util_version_number
_WeeChat ≥ 0.3.9._
@@ -5662,7 +5790,7 @@ Paramètres :
Valeur de retour :
* 1 if OK, 0 if error
* 1 si OK, 0 si erreur
Exemple en C :
@@ -9368,13 +9496,13 @@ Prototype :
void weechat_printf (struct t_gui_buffer *buffer, const char *message, ...);
----
Cette fonction est un raccourci vers la fonction printf_date_tags. Ces deux appels
donnent exactement le même résultat :
Cette fonction est un raccourci vers la fonction printf_datetime_tags. +
Ces deux appels donnent exactement le même résultat :
[source,c]
----
weechat_printf (buffer, "message");
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
Paramètres :
@@ -9439,6 +9567,15 @@ void weechat_printf_date_tags (struct t_gui_buffer *buffer, time_t date,
const char *tags, const char *message, ...);
----
Cette fonction est un raccourci vers la fonction printf_datetime_tags. +
Ces deux appels donnent exactement le même résultat :
[source,c]
----
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
Paramètres :
* _buffer_ : pointeur vers le tampon, si NULL, le message est affiché sur le
@@ -9476,6 +9613,65 @@ weechat.prnt_date_tags("", time - 120, "notify_message",
La fonction s'appelle "print_date_tags" dans les scripts ("prnt_date_tags" en
Python).
==== printf_datetime_tags
_WeeChat ≥ 4.2.0._
Afficher un message sur un tampon, en utilisant une date/heure (avec microsecondes)
et des étiquettes personnalisées.
Prototype :
[source,c]
----
void weechat_printf_datetime_tags (struct t_gui_buffer *buffer, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
Paramètres :
* _buffer_ : pointeur vers le tampon, si NULL, le message est affiché sur le
tampon WeeChat
* _date_ : date pour le message (0 signifie la date/heure courante)
* _date_usec_ : microsecondes de la date (entre 0 et 999999)
* _tags_ : liste d'étiquettes séparées par des virgules (NULL signifie aucune
étiquette)
* _message_ : message à afficher
Voir le link:weechat_user.fr.html#lines_tags[Guide utilisateur WeeChat / Étiquettes des lignes ^↗^^]
pour une liste des étiquettes couramment utilisées dans WeeChat.
Exemple en C :
[source,c]
----
struct timeval tv_now;
gettimeofday (&tv_now, NULL);
weechat_printf_datetime_tags (NULL, tv_now.tv_sec - 120, tv_now.tv_usec,
"notify_message",
"Message il y a 2 minutes avec une étiquette 'notify_message'");
----
Script (Python) :
[source,python]
----
# prototype
def prnt_datetime_tags(buffer: str, date: int, date_usec: int, tags: str, message: str) -> int: ...
# exemple
now = time.time()
time_sec = int(now)
time_usec = int((now * 1000000) % 1000000)
weechat.prnt_datetime_tags("", time_sec - 120, time_usec, "notify_message",
"Message il y a 2 minutes avec une étiquette 'notify_message'")
----
[NOTE]
La fonction s'appelle "print_datetime_tags" dans les scripts ("prnt_datetime_tags"
en Python).
==== printf_y
Afficher un message sur une ligne d'un tampon avec contenu libre.
@@ -9484,8 +9680,16 @@ Prototype :
[source,c]
----
void weechat_printf_y (struct t_gui_buffer *buffer, int y,
const char *message, ...);
void weechat_printf_y (struct t_gui_buffer *buffer, int y, const char *message, ...);
----
Cette fonction est un raccourci vers la fonction printf_y_datetime_tags. +
Ces deux appels donnent exactement le même résultat :
[source,c]
----
weechat_printf_y (buffer, 0, "message");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "message");
----
Paramètres :
@@ -9534,6 +9738,15 @@ void weechat_printf_y_date_tags (struct t_gui_buffer *buffer, int y, time_t date
const char *tags, const char *message, ...);
----
Cette fonction est un raccourci vers la fonction printf_y_datetime_tags. +
Ces deux appels donnent exactement le même résultat :
[source,c]
----
weechat_printf_y_date_tags (buffer, 0, 0, NULL, "message");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "message");
----
Paramètres :
* _buffer_ : pointeur vers le tampon
@@ -9568,6 +9781,56 @@ weechat.prnt_y_date_tags("", 2, 0, "mon_etiquette", "Mon message sur la 3ème li
La fonction s'appelle "print_y_date_tags" dans les scripts ("prnt_y_date_tags"
en Python).
==== printf_y_datetime_tags
_WeeChat ≥ 4.2.0._
Afficher un message sur une ligne d'un tampon avec contenu libre, en utilisant
une date/heure (avec microsecondes) et des étiquettes personnalisées.
Prototype :
[source,c]
----
void weechat_printf_y_datetime_tags (struct t_gui_buffer *buffer, int y, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
Paramètres :
* _buffer_ : pointeur vers le tampon
* _y_ : numéro de ligne (la première ligne est 0); une valeur négative affiche
une ligne après la dernière ligne affichée : la valeur absolue de _y_ est le
nombre de lignes après la dernière ligne (par exemple -1 est immédiatement
après la dernière ligne, -2 est 2 lignes après la dernière ligne)
* _date_ : date pour le message (0 signifie la date/heure courante)
* _date_usec_ : microsecondes de la date (entre 0 et 999999)
* _tags_ : liste d'étiquettes séparées par des virgules (NULL signifie aucune
étiquette)
* _message_ : message à afficher
Exemple en C :
[source,c]
----
weechat_printf_y_datetime_tags (buffer, 2, 0, 0, "mon_etiquette", "Mon message sur la 3ème ligne avec une étiquette");
----
Script (Python) :
[source,python]
----
# prototype
def prnt_y_datetime_tags(buffer: str, y: int, date: int, date_usec: int, tags: str, message: str) -> int: ...
# exemple
weechat.prnt_y_datetime_tags("", 2, 0, 0, "mon_etiquette", "Mon message sur la 3ème ligne avec une étiquette")
----
[NOTE]
La fonction s'appelle "print_y_datetime_tags" dans les scripts
("prnt_y_datetime_tags" en Python).
==== log_printf
Écrire un message dans le fichier de log WeeChat (weechat.log).
@@ -10982,7 +11245,7 @@ hook = weechat.hook_connect("", "my.server.org", 1234, 1, 0, "",
==== hook_line
_WeeChat ≥ 2.3, mis à jour dans la 3.7._
_WeeChat ≥ 2.3, mis à jour dans la 4.2.0._
Intercepter une ligne sur le point d'être affichée dans un tampon.
@@ -11088,11 +11351,21 @@ de hachage, avec les valeurs suivantes (les clés et valeurs sont des chaînes)
| N/A ("0").
| `+1533792000+`
| date_usec
| Microsecondes de la date de la ligne (entre 0 et 999999).
| N/A ("0").
| `+123456+`
| date_printed
| Date d'affichage de la ligne (horodatage).
| N/A ("0").
| `+1533792012+`
| date_usec_printed
| Microsecondes de la date d'affichage de la ligne (entre 0 et 999999).
| N/A ("0").
| `+654321+`
| str_time
| Date pour l'affichage (elle peut contenir des codes couleur).
| N/A (chaîne vide).
@@ -11181,11 +11454,22 @@ valeurs sont des chaînes dans cette table de hachage) :
| La date est positionnée à cet horodatage. +
La valeur de `+str_time+` est mise à jour en conséquence.
| date_usec
| Entier ("0" à "999999").
| N/A.
| Les microsecondes de la date sont positionnées à cette valeur. +
La valeur de `+str_time+` est mise à jour en conséquence.
| date_printed
| Horodatage.
| N/A.
| La date d'affichage est positionnée à cet horodatage (non affichée).
| date_usec_printed
| Entier ("0" à "999999").
| N/A.
| Les microsecondes de la date d'affichage sont positionnées à cette valeur.
| str_time
| Chaîne.
| N/A.
@@ -11269,7 +11553,7 @@ hook = weechat.hook_line("", "", "irc_join", "my_line_cb", "")
==== hook_print
_Mis à jour dans la 0.4.3, 1.0, 1.5._
_Mis à jour dans la 0.4.3, 1.0, 1.5, 4.2.0._
Intercepter un message affiché. Il est appelée quand une ligne a été ajoutée
dans un tampon avec contenu formaté.
@@ -11289,6 +11573,7 @@ struct t_hook *weechat_hook_print (struct t_gui_buffer *buffer,
void *data,
struct t_gui_buffer *buffer,
time_t date,
int date_usec,
int tags_count,
const char **tags,
int displayed,
@@ -11320,6 +11605,7 @@ Paramètres :
** _void *data_ : pointeur
** _struct t_gui_buffer *buffer_ : pointeur vers le tampon
** _time_t date_ : date
** _int date_usec_ : microsecondes de la date
** _int tags_count_ : nombre d'étiquettes de la ligne
** _const char **tags_ : tableau avec les étiquettes de la ligne
** _int displayed_ : 1 si la ligne est affichée, 0 si elle est filtrée (cachée)
@@ -11354,7 +11640,7 @@ Exemple en C :
----
int
my_print_cb (const void *pointer, void *data, struct t_gui_buffer *buffer,
time_t date, int tags_count, const char **tags,
time_t date, int date_usec, int tags_count, const char **tags,
int displayed, int highlight,
const char *prefix, const char *message)
{
@@ -13543,9 +13829,15 @@ valeurs sont de type "string") :
| _chat_line_date | Date/heure de la ligne.
| "1313237175" | "0"
| _chat_line_date_usec | Microsecondes de la date/heure de la ligne.
| "123456" | "0"
| _chat_line_date_printed | Date/heure de la ligne ^(4)^.
| "1313237175" | "0"
| _chat_line_date_usec_printed | Microsecondes de la date/heure de la ligne ^(4)^.
| "123456" | "0"
| _chat_line_time | Heure affichée.
| "14:06:15" | ""
@@ -14339,6 +14631,7 @@ Paramètres :
* _buffer_ : pointeur vers le tampon
* _property_ : nom de la propriété :
** _opening_ : 1 si le tampon est en cours d'ouverture, sinon 0 _(WeeChat ≥ 4.2.0)_
** _number_ : numéro du tampon (commence à 1)
** _layout_number_ : numéro du tampon sauvegardé dans le "layout"
** _layout_number_merge_order_ : ordre du tampon mélangé pour le "layout"
@@ -14346,40 +14639,32 @@ Paramètres :
** _type_ : type de tampon (0 : formaté, 1 : contenu libre)
** _notify_ : niveau de notification du tampon
** _num_displayed_ : nombre de fenêtres affichant ce tampon
** _active_ : 2 si le tampon est le seul actif (mélangé), 1 si le tampon est
actif, 0 si le tampon est mélangé et n'est pas sélectionné
** _hidden_ : 1 si le tampon est caché, sinon 0
_(WeeChat ≥ 1.0)_
** _zoomed_ : 1 si le tampon est mélangé et zoomé, sinon 0
_(WeeChat ≥ 1.0)_
** _active_ : 2 si le tampon est le seul actif (mélangé), 1 si le tampon est actif, 0 si le tampon est mélangé et n'est pas sélectionné
** _hidden_ : 1 si le tampon est caché, sinon 0 _(WeeChat ≥ 1.0)_
** _zoomed_ : 1 si le tampon est mélangé et zoomé, sinon 0 _(WeeChat ≥ 1.0)_
** _print_hooks_enabled_ : 1 si les hooks "print" sont activés, sinon 0
** _day_change_ : 1 si les messages de changement de jour sont affichés, sinon 0
_(WeeChat ≥ 0.4.3)_
** _clear_ : 1 si le tampon peut être effacé avec la commande `/buffer clear`,
sinon 0 _(WeeChat ≥ 1.0)_
** _filter_ : 1 si les filtres sont activés sur le tampon, sinon 0
_(WeeChat ≥ 1.0)_
** _lines_hidden_ : 1 si au moins une ligne est cachée dans le tampon
(filtrée), ou 0 si toutes les lignes sont affichées
** _day_change_ : 1 si les messages de changement de jour sont affichés, sinon 0 _(WeeChat ≥ 0.4.3)_
** _clear_ : 1 si le tampon peut être effacé avec la commande `/buffer clear`, sinon 0 _(WeeChat ≥ 1.0)_
** _filter_ : 1 si les filtres sont activés sur le tampon, sinon 0 _(WeeChat ≥ 1.0)_
** _closing_ : 1 si le tampon est en cours de fermeture, sinon 0 _(WeeChat ≥ 1.0)_
** _lines_hidden_ : 1 si au moins une ligne est cachée dans le tampon (filtrée), ou 0 si toutes les lignes sont affichées
** _prefix_max_length_ : longueur maximale du préfixe dans ce tampon
** _time_for_each_line_ : 1 si l'heure est affichée pour chaque ligne du tampon
(par défaut), sinon 0
** _next_line_id_ : prochain identifiant de ligne dans le tampon _(WeeChat ≥ 3.8)_
** _time_for_each_line_ : 1 si l'heure est affichée pour chaque ligne du tampon (par défaut), sinon 0
** _nicklist_ : 1 si la liste de pseudos est activée, sinon 0
** _nicklist_case_sensitive_ : 1 si les pseudos sont sensibles à la casse,
sinon 0
** _nicklist_case_sensitive_ : 1 si les pseudos sont sensibles à la casse, sinon 0
** _nicklist_max_length_ : longueur maximale d'un pseudo
** _nicklist_display_groups_ : 1 si les groupes sont affichés, sinon 0
** _nicklist_count_ : nombre de pseudos et groupes dans la liste de pseudos
** _nicklist_groups_count_ : nombre de groupes dans la liste de pseudos
** _nicklist_nicks_count_ : nombre de pseudos dans la liste de pseudos
** _nicklist_visible_count_ : nombre de pseudos/groupes affichés
** _nicklist_groups_count_ : nombre de groupes dans la liste de pseudos
** _nicklist_groups_visible_count_ : nombre de groupes affichés
** _nicklist_nicks_count_ : nombre de pseudos dans la liste de pseudos
** _nicklist_nicks_visible_count_ : nombre de pseudos affichés
** _input_ : 1 si la zone de saisie est activée, sinon 0
** _input_get_unknown_commands_ : 1 si les commandes inconnues sont envoyées
à la fonction de rappel "input", sinon 0
** _input_get_empty_ : 1 si une entrée vide est envoyée à la fonction de rappel
"input", sinon 0
** _input_multiline_ : 1 si plusieurs lignes sont envoyées comme un seul message
à la fonction de rappel "input", sinon 0
** _input_get_unknown_commands_ : 1 si les commandes inconnues sont envoyées à la fonction de rappel "input", sinon 0
** _input_get_empty_ : 1 si une entrée vide est envoyée à la fonction de rappel "input", sinon 0
** _input_multiline_ : 1 si plusieurs lignes sont envoyées comme un seul message à la fonction de rappel "input", sinon 0
** _input_size_ : taille de la zone de saisie (en octets)
** _input_length_ : longueur de la zone de saisie (nombre de caractères)
** _input_pos_ : position du curseur dans la zone de saisie
@@ -14387,9 +14672,22 @@ Paramètres :
** _num_history_ : nombre de commandes dans l'historique
** _text_search_ : type de recherche de texte :
*** 0 : pas de recherche en cours
*** 1 : recherche arrière (vers les messages les plus anciens)
*** 2 : recherche avant (vers les messages les plus récents)
*** 1 : recherche dans les lignes du tampon
*** 2 : recherche dans l'historique de commandes
** _text_search_direction_ : direction pour la recherche :
*** 0 : recherche arrière (vers les messages/commandes plus anciens)
*** 1 : recherche avant (vers les messages/commandes plus récents)
** _text_search_exact_ : 1 si la recherche de texte est sensible à la casse
** _text_search_regex_ : 1 si la recherche est avec une expression régulière
** _text_search_where_ :
*** 0 : pas de recherche en cours
*** 1 : recherche dans le message
*** 2 : recherche dans le préfixe
*** 3 : recherche dans le préfixe et le message
** _text_search_history_:
*** 0 : pas de recherche en cours
*** 1 : recherche dans l'historique local du tampon
*** 2 : recherche dans l'historique global
** _text_search_found_ : 1 si du texte a été trouvé, sinon 0
Valeur de retour :
@@ -14431,28 +14729,22 @@ Paramètres :
* _buffer_ : pointeur vers le tampon
* _property_ : nom de la propriété :
** _plugin_ : nom de l'extension qui a créé ce tampon ("core" pour le tampon
principal WeeChat)
** _plugin_ : nom de l'extension qui a créé ce tampon ("core" pour le tampon principal WeeChat)
** _name_ : nom du tampon
** _full_name_ : nom complet du tampon ("extension.nom") _(WeeChat ≥ 0.3.7)_
** _short_name_ : nom court du tampon (note : utilisé pour l'affichage
seulement et peut être changé par l'utilisateur, il ne doit pas être utilisé
pour trouver le nom du tampon, utilisez à la place _name_, _full_name_ ou
bien la variable locale _channel_)
** _old_full_name_ : ancien nom complet du tampon ("extension.nom"), défini avant que le tampon ne soit renommé _(WeeChat ≥ 2.8)_
** _short_name_ : nom court du tampon (note : utilisé pour l'affichage seulement et peut être changé par l'utilisateur, il ne doit pas être utilisé pour trouver le nom du tampon, utilisez à la place _name_, _full_name_ ou bien la variable locale _channel_)
** _type_ : type de tampon : "formatted" (formaté) ou "free" (contenu libre) _(WeeChat ≥ 4.2.0)_
** _title_ : titre du tampon
** _input_ : texte saisi
** _text_search_input_ : texte saisi sauvegardé avant la recherche de texte
** _highlight_words_ : liste des mots pour le highlight
** _highlight_disable_regex_ : expression régulière POSIX étendue pour désactiver
le highlight
** _highlight_disable_regex_ : expression régulière POSIX étendue pour désactiver le highlight
** _highlight_regex_ : expression régulière POSIX étendue pour le highlight
** _highlight_tags_restrict_ : restreindre les highlights aux messages
comportant ces étiquettes
** _highlight_tags_restrict_ : restreindre les highlights aux messages comportant ces étiquettes
** _highlight_tags_ : forcer le highlight pour les messages avec ces étiquettes
** _hotlist_max_level_nicks_ : niveau maximum pour la hotlist pour certains
pseudos
** _localvar_xxx_ : contenu de la variable locale "xxx" (remplacer "xxx" par le
nom de la variable locale à lire)
** _hotlist_max_level_nicks_ : niveau maximum pour la hotlist pour certains pseudos
** _localvar_xxx_ : contenu de la variable locale "xxx" (remplacer "xxx" par le nom de la variable locale à lire)
Valeur de retour :
@@ -14496,8 +14788,9 @@ Paramètres :
* _buffer_ : pointeur vers le tampon
* _property_ : nom de la propriété :
** _plugin_ : pointeur vers l'extension qui a créé le tampon (NULL pour le
tampon principal WeeChat)
** _plugin_ : pointeur vers l'extension qui a créé le tampon (NULL pour le tampon principal WeeChat)
** _text_search_regex_compiled_ : expression régulière compilée
** _text_search_ptr_history_ : entrée d'historique trouvée
** _highlight_disable_regex_compiled_ : expression régulière _highlight_disable_regex_ compilée
** _highlight_regex_compiled_ : expression régulière _highlight_regex_ compilée
+25 -10
View File
@@ -503,7 +503,9 @@ hda:
'buffer': 'ptr',
'y': 'int',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'str_time': 'str',
'tags_count': 'int',
'tags_array': 'arr',
@@ -521,7 +523,9 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404926
date_usec: 118712
date_printed: 1588404926
date_usec_printed: 118712
str_time: 'F@0025209F@0024535F@0024026'
tags_count: 0
tags_array: []
@@ -537,7 +541,9 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404930
date_usec: 25
date_printed: 1588404930
date_usec_printed: 25
str_time: 'F@0025209F@0024535F@0024030'
tags_count: 0
tags_array: []
@@ -728,11 +734,14 @@ inl:
input_buffer_1st_display: 0
num_history: 0
text_search: 0
text_search_direction: 0
text_search_exact: 0
text_search_regex: 0
text_search_regex_compiled: '0x0'
text_search_where: 0
text_search_history: 0
text_search_found: 0
text_search_ptr_history: '0x0'
text_search_input: None
highlight_words: None
highlight_disable_regex: None
@@ -2075,16 +2084,18 @@ Données envoyées dans le hdata :
[width="100%",cols="3m,2,10",options="header"]
|===
| Nom | Type | Description
| buffer | pointeur | Pointeur vers le tampon.
| date | date/heure | Date du message.
| date_printed | date/heure | Date d'affichage du message.
| displayed | caractère | 1 si le message est affiché, 0 si le message est filtré (caché).
| notify_level | caractère | Niveau de notification : -1 = notification désactivée, 0 = bas, 1 = message, 2 = privé, 3 = highlight.
| highlight | caractère | 1 si la ligne a un highlight, sinon 0.
| tags_array | tableau de chaînes | Liste des étiquettes de la ligne.
| prefix | chaîne | Préfixe.
| message | chaîne | Message.
| Nom | Type | Description
| buffer | pointeur | Pointeur vers le tampon.
| date | date/heure | Date du message.
| date_usec | entier | Microsecondes de la date.
| date_printed | date/heure | Date d'affichage du message.
| date_usec_printed | entier | Microsecondes de la date d'affichage du message.
| displayed | caractère | 1 si le message est affiché, 0 si le message est filtré (caché).
| notify_level | caractère | Niveau de notification : -1 = notification désactivée, 0 = bas, 1 = message, 2 = privé, 3 = highlight.
| highlight | caractère | 1 si la ligne a un highlight, sinon 0.
| tags_array | tableau de chaînes | Liste des étiquettes de la ligne.
| prefix | chaîne | Préfixe.
| message | chaîne | Message.
|===
Exemple : nouveau message _hello!_ du pseudo _FlashCode_ sur le tampon
@@ -2097,7 +2108,9 @@ hda:
keys: {
'buffer': 'ptr',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'displayed': 'chr',
'notify_level': 'chr',
'highlight': 'chr',
@@ -2110,7 +2123,9 @@ hda:
__path: ['0x4a49600']
buffer: '0x4a715d0'
date: 1362728993
date_usec: 902765
date_printed: 1362728993
date_usec_printed: 902765
displayed: 1
notify_level: 1
highlight: 0
+2
View File
@@ -670,8 +670,10 @@ Liste des fonctions de l'API script :
color +
print (pour python : prnt) +
print_date_tags (pour python : prnt_date_tags) +
print_datetime_tags (pour python : prnt_datetime_tags) +
print_y (pour python : prnt_y) +
print_y_date_tags (pour python : prnt_y_date_tags) +
print_y_datetime_tags (pour python : prnt_y_datetime_tags) +
log_print
| hooks
+73 -19
View File
@@ -928,11 +928,31 @@ La barre _input_ contient les objets (items) suivants par défaut :
| Objet (item) | Exemple | Description
| input_prompt | `[@Flashy(i)]` | Prompt, pour irc : pseudo et modes (le mode "+i" signifie invisible sur libera).
| away | `(absent)` | Indicateur d'absence.
| input_search | `[Recherche (~ str,msg)]` | Indicateur de recherche de texte ("`~`" : insensible à la casse, "`==`" : sensible à la casse, "`str`" : recherche de chaîne, "`regex`" : recherche d'expression régulière, "`msg`" : recherche dans les messages, "`pre`" : recherche dans les préfixes, "`pre\|msg`" : recherche dans les préfixes et messages).
| input_search | `[Recherche lignes (~ str,msg)]` | Indicateur de recherche de texte (voir ci-dessous).
| input_paste | `[Coller 7 lignes ? [ctrl-y] Oui [ctrl-n] Non]` | Question à l'utilisateur pour coller des lignes.
| input_text | `salut peter !` | Texte entré.
|===
Il y a deux modes de recherche :
* recherche dans les lignes, par exemple `[Recherche lignes (~ str,msg)]`,
avec les informations suivantes :
** `~` : insensible à la casse
** `==` : sensible à la casse
** `str` : recherche de chaîne
** `regex` : recherche d'expression régulière
** `msg` : recherche dans les messages
** `pre` : recherche dans les préfixes
** `pre\|msg` : recherche dans les préfixes et messages
* recherche dans l'historique de commandes, par exemple `[Recherche commande (~ str,local)]`,
avec les informations suivantes :
** `~` : insensible à la casse
** `==` : sensible à la casse
** `str` : recherche de chaîne
** `regex` : recherche d'expression régulière
** `local` : recherche dans l'historique local du tampon
** `global` : recherche dans l'historique global.
La barre _nicklist_ contient les objets (items) suivants par défaut :
[width="100%",cols="^3,^3,9",options="header"]
@@ -1022,6 +1042,11 @@ suit et éventuellement une valeur) :
| kbd:[Ctrl+c], kbd:[c],
kbd:[xx], kbd:[,],
kbd:[yy] | Couleur du texte `xx` et du fond `yy` (voir la liste des couleurs ci-dessous).
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx] | Couleur du texte `xxxxxx` (RGB en hexadécimal, par exemple `FF0000` pour du rouge).
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx], kbd:[,],
kbd:[yyyyyy] | Couleur du texte `xxxxxx` et du fond `yyyyyy` (RGB en hexadécimal).
| kbd:[Ctrl+c], kbd:[i] | Texte en italique.
| kbd:[Ctrl+c], kbd:[o] | Désactiver la couleur et tous les attributs.
| kbd:[Ctrl+c], kbd:[v] | Vidéo inverse (inversion de la couleur d'écriture et du fond).
@@ -1029,8 +1054,8 @@ suit et éventuellement une valeur) :
|===
[NOTE]
Le même code (sans le numéro pour kbd:[Ctrl+c], kbd:[c]) peut être utilisé pour
stopper l'attribut défini.
Le même code (sans le numéro pour kbd:[Ctrl+c], kbd:[c] et kbd:[Ctrl+c], kbd:[d])
peut être utilisé pour stopper l'attribut défini.
Les codes couleur pour kbd:[Ctrl+c], kbd:[c] sont :
@@ -1609,6 +1634,7 @@ Ils peuvent être modifiés et de nouveaux peuvent être ajoutés avec la comman
| Touche | Description | Commande
| kbd:[Ctrl+c], kbd:[b] | Insérer le code pour mettre le texte en gras. | `+/input insert \x02+`
| kbd:[Ctrl+c], kbd:[c] | Insérer le code pour écrire en couleur. | `+/input insert \x03+`
| kbd:[Ctrl+c], kbd:[d] | Insérer le code pour écrire en couleur (couleur RGB, en hexadécimal). | `+/input insert \x04+`
| kbd:[Ctrl+c], kbd:[i] | Insérer le code pour mettre le texte en italique. | `+/input insert \x1D+`
| kbd:[Ctrl+c], kbd:[o] | Insérer le code pour réinitialiser la couleur. | `+/input insert \x0F+`
| kbd:[Ctrl+c], kbd:[v] | Insérer le code pour écrire en couleur inversée. | `+/input insert \x16+`
@@ -1642,8 +1668,8 @@ Ils peuvent être modifiés et de nouveaux peuvent être ajoutés avec la comman
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Touche | Description | Commande
| kbd:[Ctrl+r] | Chercher du texte dans l'historique du tampon (voir <<key_bindings_search_context,les touches pour le contexte de recherche>>). | `+/input search_text_here+`
| kbd:[Ctrl+s], kbd:[Ctrl+u] | Positionner le marqueur de données non lues sur tous les tampons. | `+/allbuf /buffer set unread+`
| kbd:[Ctrl+r] | Chercher du texte dans l'historique de commandes (voir <<key_bindings_histsearch_context,les touches pour le contexte "histsearch">>). | `+/input search_history+`
| kbd:[Ctrl+s] | Chercher du texte dans les lignes du tampon (voir <<key_bindings_search_context,les touches pour le contexte "search">>). | `+/input search_text_here+`
| kbd:[Ctrl+x] | Changer de tampon courant si plusieurs tampons sont mélangés avec le même numéro, par exemple basculer vers un autre tampon serveur IRC. | `+/buffer switch+`
| kbd:[Alt+x] | Zoomer sur le tampon mélangé (kbd:[Alt+x] de nouveau : afficher tous les tampons mélangés). | `+/buffer zoom+`
| kbd:[PgUp] | Monter d'une page dans l'historique du tampon. | `+/window page_up+`
@@ -1669,6 +1695,7 @@ Ils peuvent être modifiés et de nouveaux peuvent être ajoutés avec la comman
| kbd:[Alt+n] | Se positionner sur le highlight suivant. | `+/window scroll_next_highlight+`
| kbd:[Alt+p] | Se positionner sur le highlight précédent. | `+/window scroll_previous_highlight+`
| kbd:[Alt+u] | Se positionner sur la première ligne non lue du tampon. | `+/window scroll_unread+`
| kbd:[Alt+Shift+U] | Positionner le marqueur de données non lues sur tous les tampons. | `+/allbuf /buffer set unread+`
| kbd:[Alt+<] | Sauter au tampon précédent dans la liste des tampons visités. | `+/buffer jump prev_visited+`
| kbd:[Alt+>] | Sauter au tampon suivant dans la liste des tampons visités. | `+/buffer jump next_visited+`
| kbd:[Alt+/] | Sauter au dernier tampon affiché (avant le dernier saut vers un tampon). | `+/buffer jump last_displayed+`
@@ -1745,23 +1772,48 @@ Ils peuvent être modifiés et de nouveaux peuvent être ajoutés avec la comman
[[key_bindings_search_context]]
=== Contexte de recherche
Ces touches sont utilisées dans le contexte "search" (lorsque kbd:[Ctrl+r] est
pressé pour chercher du texte dans le tampon).
Ces touches sont utilisées dans le contexte "search" (lorsque kbd:[Ctrl+s] est
pressé pour chercher du texte dans les lignes du tampon).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Touche | Description | Commande
| kbd:[Ctrl+r] | Basculer le type de recherche : chaîne (par défaut), expression régulière. | `+/input search_switch_regex+`
| kbd:[Ctrl+x] | Basculer le type de recherche : chaîne (par défaut), expression régulière. | `+/input search_switch_regex+`
| kbd:[Alt+c] | Basculer la casse exacte pour la recherche. | `+/input search_switch_case+`
| kbd:[Tab] | Basculer la recherche dans : les messages (par défaut), les préfixes, les préfixes + messages. | `+/input search_switch_where+`
| kbd:[↑] | Chercher la ligne précédente. | `+/input search_previous+`
| kbd:[] | Chercher la ligne suivante. | `+/input search_next+`
| kbd:[Ctrl+r] +
kbd:[] | Chercher la ligne précédente. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Chercher la ligne suivante. | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Arrêter la recherche à la position courante. | `+/input search_stop_here+`
| kbd:[Ctrl+q] | Arrêter la recherche et réinitialiser le défilement à l'état antérieur à la recherche de texte. | `+/input search_stop+`
|===
[[key_bindings_histsearch_context]]
=== Contexte de recherche dans l'historique
Ces touches sont utilisées dans le contexte "histsearch" (lorsque kbd:[Ctrl+r]
est pressé pour chercher du texte dans l'historique des commandes).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Touche | Description | Commande
| kbd:[Ctrl+x] | Basculer le type de recherche : chaîne (par défaut), expression régulière. | `+/input search_switch_regex+`
| kbd:[Alt+c] | Basculer la casse exacte pour la recherche. | `+/input search_switch_case+`
| kbd:[Tab] | Basculer la recherche dans : l'historique local du tampon (par défaut), l'historique global. | `+/input search_switch_where+`
| kbd:[Ctrl+r] +
kbd:[↑] | Chercher dans les entrées précédentes (plus anciennes) de l'historique. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Chercher dans les entrées suivantes (plus récentes) de l'historique. | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Arrêter la recherche et utiliser la commande trouvée. | `+/input search_stop_here+`
| kbd:[Ctrl+o] | Exécuter la commande trouvée dans l'historique et insérer la suivante sur la ligne de commande. | `+/input history_use_get_next+`
| kbd:[Ctrl+q] | Arrêter la recherche et restaurer la ligne de commande à sa valeur initiale. | `+/input search_stop+`
|===
[[key_bindings_cursor_context]]
=== Contexte curseur
@@ -1828,10 +1880,10 @@ avec la touche kbd:[Alt+m] (commande : `+/mouse toggle+`).
| kbd:[▼] | - | chat : tampon /list | Descendre de cinq lignes dans le tampon /list. | `+/list -down 5+`
| kbd:[■ □ □] | - | chat : tampon /list | Sélectionner la ligne dans le tampon /list. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat : tampon /list | Rejoindre le canal IRC sur la ligne sélectionnée. | `+hsignal:irc_list_mouse+`
| kbd:[▲] | - | chat : tampon script | Monter de 5 lignes dans le tampon script. | `+/script -up 5+`
| kbd:[▼] | - | chat : tampon script | Descendre de 5 lignes dans le tampon script. | `+/script -down 5+`
| kbd:[■ □ □] | - | chat : tampon script | Sélectionner la ligne dans le tampon script. | `+/script -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat : tampon script | Installer/supprimer un script. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[▲] | - | chat : tampon script | Monter de 5 lignes dans le tampon script. | `+/script up 5+`
| kbd:[▼] | - | chat : tampon script | Descendre de 5 lignes dans le tampon script. | `+/script down 5+`
| kbd:[■ □ □] | - | chat : tampon script | Sélectionner la ligne dans le tampon script. | `+/script go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat : tampon script | Installer/supprimer un script. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[■ □ □] | haut / gauche | buflist | Déplacer le tampon vers un numéro inférieur. | Signal `+buflist_mouse+`.
| kbd:[■ □ □] | bas / droit | buflist | Déplacer le tampon vers un numéro supérieur. | Signal `+buflist_mouse+`.
| kbd:[■ □ □] | - | buflist | Aller au tampon (tampon précédent dans la liste des tampons visités si le tampon est le courant). | Signal `+buflist_mouse+`.
@@ -1952,8 +2004,8 @@ Ces touches et actions sont utilisées sur le tampon script
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|===
| Touche | Action ^(1)^ | Description | Commande
| kbd:[↑] | | Monter d'une ligne. | `+/script -up+`
| kbd:[↓] | | Descendre d'une ligne. | `+/script -down+`
| kbd:[↑] | | Monter d'une ligne. | `+/script up+`
| kbd:[↓] | | Descendre d'une ligne. | `+/script down+`
| kbd:[PgUp] | | Monter d'une page. | `+/window page_up+`
| kbd:[PgDn] | | Descendre d'une page. | `+/window page_down+`
| kbd:[Alt+i] | `i` | Installer le script. | `+/script install+`
@@ -5282,7 +5334,7 @@ du type de hook :
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| line | message | buffer, buffer_name, y, date, date_usec, date_printed, date_usec_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
@@ -5453,7 +5505,9 @@ de hachage :
| buffer_type | chaîne | Type de tampon ("formatted" ou "free").
| y | chaîne | Numéro de ligne pour un tampon avec contenu libre (≥ 0), -1 pour un tampon avec contenu formaté.
| date | chaîne | Date de la ligne (horodatage).
| date_usec | chaîne | Microsecondes de la date de la ligne.
| date_printed | chaîne | Date d'affichage de la ligne (horodatage).
| date_usec_printed | chaîne | Microsecondes de la date d'affichage de la ligne.
| str_time | chaîne | Date pour l'affichage. Elle peut contenir des codes couleur.
| tags | chaîne | Étiquettes du message (avec une virgule en début/fin de chaîne).
| displayed | chaîne | "1" si affichée, "0" si la ligne est filtrée.
@@ -5494,7 +5548,7 @@ hachage :
|===
| Variable | Type | Description
| buffer | pointeur | Tampon.
| tg_date | chaîne | Date/heure du message (format : `YYYY-MM-DD hh:mm:ss`).
| tg_date | chaîne | Date/heure du message (format : `%FT%T.%f`, voir la link:weechat_plugin_api.fr.html#_util_strftimeval[Référence API extension WeeChat / util_strftimeval ^↗^^]).
| tg_displayed | chaîne | "1" si affiché, "0" si ligne filtrée.
| tg_highlight | chaîne | "1" si highlight, sinon "0".
| tg_prefix | chaîne | Préfixe.
@@ -5563,7 +5617,7 @@ hachage :
|===
| Variable | Type | Description
| tg_remaining_calls | chaîne | Nombre d'appels restants.
| tg_date | chaîne | Date/heure courante (format : `YYYY-MM-DD hh:mm:ss`).
| tg_date | chaîne | Date/heure courante (format : `%FT%T.%f`, voir la link:weechat_plugin_api.fr.html#_util_strftimeval[Référence API extension WeeChat / util_strftimeval ^↗^^]).
|===
[[trigger_data_config]]
+1 -1
View File
@@ -103,7 +103,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat is written by Sébastien Helleu and contributors (complete list is in
the AUTHORS.adoc file).
Copyright (C) 2003-2023 {author}
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
+18
View File
@@ -653,6 +653,24 @@ version ≥ 4.0.0, the keys names become invalid and many keys won't work at all
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
// TRANSLATION MISSING
[[key_f11]]
=== Key F11 maximizes the terminal window, how can I scroll up the nicklist?
The key kbd:[F11] is commonly used by terminals to maximize the window, and
kbd:[F11]/kbd:[F12] are the default keys in WeeChat to scroll the nicklist.
You can bind other keys, for example kbd:[Shift+F11] and kbd:[Shift+F12],
with WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Other solution is to enable mouse (key: kbd:[Alt+m]) and scroll with the mouse
wheel (see also questions about <<mouse,mouse>>).
[[customize_key_bindings]]
=== Come posso personalizzare le associazioni dei tasti?
+376 -45
View File
@@ -2717,7 +2717,7 @@ str3 = weechat.string_input_for_buffer("//test") # "/test"
==== string_eval_expression
_WeeChat ≥ 0.4.0, updated in 0.4.2, 0.4.3, 1.0, 1.1, 1.2, 1.3, 1.6, 1.8, 2.0,
2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6, 3.8, 4.0.0._
2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6, 3.8, 4.0.0, 4.2.0._
Evaluate an expression and return result as a string.
Special variables with format `+${variable}+` are expanded (see table below).
@@ -3050,11 +3050,21 @@ expanded to last):
|===
| Format | Min WeeChat | Description | Examples
| `+${raw_hl:xxx}+` | 4.2.0
| Raw string (not evaluated), with syntax highlighting (using colors).
| >> `+${raw_hl:${cut:1,,${rev:hello}}}+` +
== `+${cut:1,,${rev:hello}}+` (with colors)
| `+${raw:xxx}+` | 3.1
| Raw string (not evaluated).
| >> `+${raw:${info:version}}+` +
== `+${info:version}+`
| `+${hl:xxx}+` | 4.2.0
| String with syntax highlighting (using colors).
| >> `+${hl:${file.section.option}}+` +
== `+test ${variable}+` (with colors)
| `+${name}+` | 3.4
| User variable (defined with `+${define:name,value}+`).
| >> `+${name}+` +
@@ -3641,6 +3651,51 @@ weechat_string_dyn_free (string, 1);
[NOTE]
Questa funzione non è disponibile nelle API per lo scripting.
==== string_concat
_WeeChat ≥ 4.2.0._
// TRANSLATION MISSING
Concatenate multiple strings using a separator.
Prototipo:
[source,c]
----
const char *weechat_string_concat (const char *separator, ...);
----
Argomenti:
// TRANSLATION MISSING
* _separator_: the separator string which is inserted between concatenated
strings (can be NULL or empty string)
// TRANSLATION MISSING
[NOTE]
Last argument *MUST* always be NULL. +
A macro called `WEECHAT_STR_CONCAT` can be used, where the final NULL value is
not needed (usage of this macro is recommended).
Valore restituito:
// TRANSLATION MISSING
* concatenated string
Esempio in C:
// TRANSLATION MISSING
[source,c]
----
const char *result = weechat_string_concat (" / ", "abc", "def", "ghi", NULL); /* result == "abc / def / ghi" */
/* with macro */
const char *result = WEECHAT_STR_CONCAT(" / ", "abc", "def", "ghi"); /* result == "abc / def / ghi" */
----
[NOTE]
Questa funzione non è disponibile nelle API per lo scripting.
[[utf-8]]
=== UTF-8
@@ -4858,6 +4913,83 @@ weechat_printf (NULL, "date: %s",
[NOTE]
Questa funzione non è disponibile nelle API per lo scripting.
// TRANSLATION MISSING
==== util_strftimeval
_WeeChat ≥ 4.2.0._
Format date and time like function `strftime` in C library, using `struct timeval`
as input, and supporting extra specifiers for microseconds.
Prototype:
[source,c]
----
int weechat_util_strftimeval (char *string, int max, const char *format, struct timeval *tv);
----
Arguments:
* _string_: buffer where the formatted string is stored
* _max_: string size
* _format_: format, the same as _strftime_ function, with these extra specifiers:
** `%.N` where `N` is between 1 and 6: zero-padded microseconds on N digits
(for example `%.3` for milliseconds)
** `%f`: alias of `%.6`
Return value:
* number of bytes put in _string_ (value returned from _strftime_ function)
C example:
[source,c]
----
char time[256];
struct timeval tv;
gettimeofday (&tv, NULL);
weechat_util_strftimeval (time, sizeof (time), "%FT%T.%f", &tv);
/* result: 2023-12-26T18:10:04.460509 */
----
[NOTE]
Questa funzione non è disponibile nelle API per lo scripting.
// TRANSLATION MISSING
==== util_parse_time
_WeeChat ≥ 4.2.0._
Parse date/time with support of microseconds.
Prototype:
[source,c]
----
int util_parse_time (const char *datetime, struct timeval *tv);
----
Arguments:
* _date_: date/time
* _tv_: parsed date/time ("timeval" structure)
Return value:
* 1 if OK, 0 if error
C example:
[source,c]
----
struct timeval tv;
weechat_util_parse_time ("2023-12-25T10:29:09.456789Z", &tv); /* == 1 */
/* result: tv.tv_sec == 1703500149, tv.tv_usec = 456789 */
----
[NOTE]
Questa funzione non è disponibile nelle API per lo scripting.
==== util_version_number
_WeeChat ≥ 0.3.9._
@@ -9556,13 +9688,13 @@ void weechat_printf (struct t_gui_buffer *buffer, const char *message, ...);
----
// TRANSLATION MISSING
This function is a shortcut for function printf_date_tags. These two calls give
exactly same result:
This function is a shortcut for function printf_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf (buffer, "message");
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
Argomenti:
@@ -9628,6 +9760,16 @@ void weechat_printf_date_tags (struct t_gui_buffer *buffer, time_t date,
const char *tags, const char *message, ...);
----
// TRANSLATION MISSING
This function is a shortcut for function printf_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
Argomenti:
* _buffer_: puntatore al buffer, se NULL il messaggio viene visualizzato
@@ -9665,6 +9807,67 @@ weechat.prnt_date_tags("", time - 120, "notify_message",
[NOTE]
La funzione è chiamata "print_date_tags" negli script ("prnt_date_tags" in Python).
==== printf_datetime_tags
_WeeChat ≥ 4.2.0._
// TRANSLATION MISSING
Display a message on a buffer, using a custom date/time (with microseconds)
and tags.
Prototipo:
[source,c]
----
void weechat_printf_datetime_tags (struct t_gui_buffer *buffer, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
Argomenti:
* _buffer_: puntatore al buffer, se NULL il messaggio viene visualizzato
sul buffer di WeeChat
* _date_: data per il messaggio (0 indica data/ora corrente)
// TRANSLATION MISSING
* _date_usec_: microseconds of date (between 0 and 999999)
// TRANSLATION MISSING
* _tags_: lista di tag separati da virgole (NULL means no tags)
* _message_: messaggio da visualizzare
// TRANSLATION MISSING
See the link:weechat_user.it.html#lines_tags[WeeChat user's guide / Lines tags ^↗^^]
for a list of commonly used tags in WeeChat.
Esempio in C:
[source,c]
----
struct timeval tv_now;
gettimeofday (&tv_now, NULL);
weechat_printf_datetime_tags (NULL, tv_now.tv_sec - 120, tv_now.tv_usec,
"notify_message",
"Messaggio 2 minuti fa, con tag 'notify_message'");
----
Script (Python):
[source,python]
----
# prototipo
def prnt_datetime_tags(buffer: str, date: int, date_usec: int, tags: str, message: str) -> int: ...
# esempio
now = time.time()
time_sec = int(now)
time_usec = int((now * 1000000) % 1000000)
weechat.prnt_datetime_tags("", time_sec - 120, time_usec, "notify_message",
"Messaggio 2 minuti fa, con tag 'notify_message'")
----
[NOTE]
La funzione è chiamata "print_datetime_tags" negli script ("prnt_datetime_tags" in Python).
==== printf_y
Visualizza un messaggio sulla riga di un buffer con contenuto libero.
@@ -9673,8 +9876,17 @@ Prototipo:
[source,c]
----
void weechat_printf_y (struct t_gui_buffer *buffer, int y,
const char *message, ...);
void weechat_printf_y (struct t_gui_buffer *buffer, int y, const char *message, ...);
----
// TRANSLATION MISSING
This function is a shortcut for function printf_y_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf_y (buffer, 0, "message");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "message");
----
Argomenti:
@@ -9724,6 +9936,16 @@ void weechat_printf_y_date_tags (struct t_gui_buffer *buffer, int y, time_t date
const char *tags, const char *message, ...);
----
// TRANSLATION MISSING
This function is a shortcut for function printf_y_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf_y_date_tags (buffer, 0, 0, NULL, "message");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "message");
----
Argomenti:
* _buffer_: puntatore al buffer
@@ -9758,6 +9980,58 @@ weechat.prnt_y_date_tags("", 2, 0, "my_tag", "My message on third line with a ta
[NOTE]
La funzione è chiamata "print_y_date_tags" negli script ("prnt_y_date_tags in Python).
==== printf_y_datetime_tags
_WeeChat ≥ 4.2.0._
// TRANSLATION MISSING
Display a message on a line of a buffer with free content, using a custom
date/time (with microseconds) and tags.
Prototipo:
[source,c]
----
void weechat_printf_y_datetime_tags (struct t_gui_buffer *buffer, int y, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
Argomenti:
* _buffer_: puntatore al buffer
// TRANSLATION MISSING
* _y_: numero di riga (la prima riga è 0); a negative value adds a line after
last line displayed: absolute value of _y_ is the number of lines after last
line (for example -1 is immediately after last line, -2 is 2 lines after last
line)
* _date_: data per il messaggio (0 indica data/ora corrente)
// TRANSLATION MISSING
* _date_usec_: microseconds of date (between 0 and 999999)
// TRANSLATION MISSING
* _tags_: lista di tag separati da virgole (NULL means no tags)
* _message_: messaggio da visualizzare
Esempio in C:
[source,c]
----
weechat_printf_y_datetime_tags (buffer, 2, 0, 0, "my_tag", "My message on third line with a tag");
----
Script (Python):
[source,python]
----
# prototipo
def prnt_y_datetime_tags(buffer: str, y: int, date: int, date_usec: int, tags: str, message: str) -> int: ...
# esempio
weechat.prnt_y_datetime_tags("", 2, 0, 0, "my_tag", "My message on third line with a tag")
----
[NOTE]
La funzione è chiamata "print_y_datetime_tags" negli script ("prnt_y_datetime_tags in Python).
==== log_printf
Scrive un messaggio nel file di log di WeeChat (weechat.log).
@@ -11163,7 +11437,7 @@ hook = weechat.hook_connect("", "my.server.org", 1234, 1, 0, "",
// TRANSLATION MISSING
==== hook_line
_WeeChat ≥ 2.3, updated in 3.7._
_WeeChat ≥ 2.3, updated in 4.2.0._
Hook a line to be printed in a buffer.
@@ -11262,11 +11536,21 @@ Line data sent to the callback is a hashtable, with following values
| N/A ("0").
| `+1533792000+`
| date_usec
| Microseconds of line date (between 0 and 999999).
| N/A ("0").
| `+123456+`
| date_printed
| Date when line was displayed (timestamp).
| N/A ("0").
| `+1533792012+`
| date_usec_printed
| Microseconds of date when line was displayed (between 0 and 999999).
| N/A ("0").
| `+654321+`
| str_time
| Date for display (possible color codes inside).
| N/A (empty string).
@@ -11353,11 +11637,22 @@ in this hashtable):
| The date is set to this value. +
The value of `+str_time+` is updated accordingly.
| date_usec
| Integer ("0" to "999999").
| N/A.
| The microseconds of line date is set to this value. +
The value of `+str_time+` is updated accordingly.
| date_printed
| Timestamp.
| N/A.
| The printed date is set to this timestamp (not displayed).
| date_usec_printed
| Integer ("0" to "999999").
| N/A.
| The microseconds of printed date is set to this value.
| str_time
| String.
| N/A.
@@ -11439,7 +11734,7 @@ hook = weechat.hook_line("", "", "irc_join", "my_line_cb", "")
==== hook_print
// TRANSLATION MISSING
_Updated in 0.4.3, 1.0, 1.5._
_Updated in 0.4.3, 1.0, 1.5, 4.2.0._
// TRANSLATION MISSING
Hook su un messaggio stampato. It is called when a line has been added in
@@ -11461,6 +11756,7 @@ struct t_hook *weechat_hook_print (struct t_gui_buffer *buffer,
void *data,
struct t_gui_buffer *buffer,
time_t date,
int date_usec,
int tags_count,
const char **tags,
int displayed,
@@ -11494,6 +11790,8 @@ Argomenti:
** _void *data_: puntatore
** _struct t_gui_buffer *buffer_: puntatore al buffer
** _time_t date_: data
// TRANSLATION MISSING
** _int date_usec_: microseconds of date
** _int tags_count_: numero di tag per riga
** _const char **tags_: array con tag per riga
** _int displayed_: 1 se la riga è visualizzata, 0 se filtrata (nascosta)
@@ -11526,7 +11824,7 @@ Esempio in C:
----
int
my_print_cb (const void *pointer, void *data, struct t_gui_buffer *buffer,
time_t date, int tags_count, const char **tags,
time_t date, int date_usec, int tags_count, const char **tags,
int displayed, int highlight,
const char *prefix, const char *message)
{
@@ -13836,9 +14134,17 @@ Contenuto della tabella hash inviata alla callback (tasti e valori sono di tipo
| _chat_line_date | Riga con data/ora.
| "1313237175" | "0"
// TRANSLATION MISSING
| _chat_line_date_usec | Microseconds of line date/time.
| "123456" | "0"
| _chat_line_date_printed | Riga con data/ora ^(4)^.
| "1313237175" | "0"
// TRANSLATION MISSING
| _chat_line_date_usec_printed | Microseconds of line printed date/time ^(4)^.
| "123456" | "0"
| _chat_line_time | Ora visualizzata.
| "14:06:15" | ""
@@ -14663,6 +14969,8 @@ Argomenti:
* _buffer_: puntatore al buffer
* _property_: nome della proprietà:
// TRANSLATION MISSING
** _opening_: 1 if buffer is opening, otherwise 0 _(WeeChat ≥ 4.2.0)_
** _number_: numero del buffer (inizia da 1)
** _layout_number_: numero del buffer salvato nel layout
** _layout_number_merge_order_: ordine di unione per i layout
@@ -14671,50 +14979,46 @@ Argomenti:
** _notify_: livello di notifica per il buffer
** _num_displayed_: numero delle finestre che visualizzano il buffer
// TRANSLATION MISSING
** _active_: 2 if buffer is the only active (merged), 1 se il buffer è attivo,
0 se il buffer è unito e non selezionato
** _active_: 2 if buffer is the only active (merged), 1 se il buffer è attivo, 0 se il buffer è unito e non selezionato
// TRANSLATION MISSING
** _hidden_: 1 if buffer is hidden, otherwise 0
_(WeeChat ≥ 1.0)_
** _hidden_: 1 if buffer is hidden, otherwise 0 _(WeeChat ≥ 1.0)_
// TRANSLATION MISSING
** _zoomed_: 1 if buffer is merged and zoomed, otherwise 0
_(WeeChat ≥ 1.0)_
** _print_hooks_enabled_: 1 se gli hook sulla stampa sono abilitati,
altrimenti 0
** _zoomed_: 1 if buffer is merged and zoomed, otherwise 0 _(WeeChat ≥ 1.0)_
** _print_hooks_enabled_: 1 se gli hook sulla stampa sono abilitati, altrimenti 0
// TRANSLATION MISSING
** _day_change_: 1 if messages for the day change are displayed, otherwise 0
_(WeeChat ≥ 0.4.3)_
** _day_change_: 1 if messages for the day change are displayed, otherwise 0 _(WeeChat ≥ 0.4.3)_
// TRANSLATION MISSING
** _clear_: 1 if buffer can be cleared with command `/buffer clear`, otherwise 0
_(WeeChat ≥ 1.0)_
** _clear_: 1 if buffer can be cleared with command `/buffer clear`, otherwise 0 _(WeeChat ≥ 1.0)_
// TRANSLATION MISSING
** _filter_: 1 if filters are enabled on buffer, otherwise 0
_(WeeChat ≥ 1.0)_
** _lines_hidden_: 1 se almeno una riga è nascosta sul buffer (filtrata),
oppure 0 se vengono visualizzate tutte le righe
** _filter_: 1 if filters are enabled on buffer, otherwise 0 _(WeeChat ≥ 1.0)_
// TRANSLATION MISSING
** _closing_: 1 if buffer is closing, otherwise 0 _(WeeChat ≥ 1.0)_
** _lines_hidden_: 1 se almeno una riga è nascosta sul buffer (filtrata), oppure 0 se vengono visualizzate tutte le righe
** _prefix_max_length_: lunghezza massima del prefisso in questo buffer
** _time_for_each_line_: 1 se l'ora è visualizzata per ogni riga nel buffer
(predefinito), altrimenti 0
// TRANSLATION MISSING
** _next_line_id_: next line id in buffer _(WeeChat ≥ 3.8)_
** _time_for_each_line_: 1 se l'ora è visualizzata per ogni riga nel buffer (predefinito), altrimenti 0
** _nicklist_: 1 se la lista nick è abilitata, altrimenti 0
** _nicklist_case_sensitive_: 1 se i nick sono sensibili alle maiuscole,
altrimenti 0
** _nicklist_case_sensitive_: 1 se i nick sono sensibili alle maiuscole, altrimenti 0
** _nicklist_max_length_: lunghezza massima per un nick
** _nicklist_display_groups_: 1 se i gruppi vengono visualizzati, altrimenti 0
// TRANSLATION MISSING
** _nicklist_count_: number of nicks and groups in nicklist
// TRANSLATION MISSING
** _nicklist_visible_count_: numero di nick/gruppi visualizzati
** _nicklist_groups_count_: number of groups in nicklist
// TRANSLATION MISSING
** _nicklist_groups_visible_count_: number of groups displayed
// TRANSLATION MISSING
** _nicklist_nicks_count_: number of nicks in nicklist
** _nicklist_visible_count_: numero di nick/gruppi visualizzati
// TRANSLATION MISSING
** _nicklist_nicks_visible_count_: number of nicks displayed
** _input_: 1 se l'input è abilitato, altrimenti 0
** _input_get_unknown_commands_: 1 se i comandi sconosciuti vengono inviati
alla callback di input, altrimenti 0
** _input_get_unknown_commands_: 1 se i comandi sconosciuti vengono inviati alla callback di input, altrimenti 0
// TRANSLATION MISSING
** _input_get_empty_: 1 if empty input is sent to input callback, otherwise 0
// TRANSLATION MISSING
** _input_multiline_: 1 if multiple lines are sent as one message to input
callback, otherwise 0
** _input_multiline_: 1 if multiple lines are sent as one message to input callback, otherwise 0
** _input_size_: dimensione per l'input (in byte)
** _input_length_: lunghezza dell'input (numero di caratteri)
** _input_pos_: posizione del cursore nell'input del buffer
@@ -14722,9 +15026,33 @@ Argomenti:
** _num_history_: numero di comandi nella cronologia
** _text_search_: tipo di ricerca nel testo:
*** 0: nessuna ricerca in questo momento
*** 1: ricerca all'indietro (direzione: messaggi più vecchi)
*** 2: ricerca in avanti (direzione: messaggi più nuovi)
// TRANSLATION MISSING
*** 1: search in buffer lines
// TRANSLATION MISSING
*** 2: search in commands history
// TRANSLATION MISSING
** _text_search_direction_: direction for search:
// TRANSLATION MISSING
*** 0: backward search (direction: oldest messages/commands)
// TRANSLATION MISSING
*** 1: forward search (direction: newest messages/commands)
** _text_search_exact_: 1 se la ricerca testo è esatta
// TRANSLATION MISSING
** _text_search_regex_: 1 if searching with a regular expression
** _text_search_where_:
*** 0: nessuna ricerca in questo momento
// TRANSLATION MISSING
*** 1: search in message
// TRANSLATION MISSING
*** 2: search in prefix
// TRANSLATION MISSING
*** 3: search in prefix and message
** _text_search_history_:
*** 0: nessuna ricerca in questo momento
// TRANSLATION MISSING
*** 1: search in buffer local history
// TRANSLATION MISSING
*** 2: search in global history
** _text_search_found_: 1 se il testo viene trovato, altrimenti 0
Valore restituito:
@@ -14766,13 +15094,14 @@ Argomenti:
* _buffer_: puntatore al buffer
* _property_: nome proprietà:
** _plugin_: nome del plugin che ha creato questo buffer ("core"
per il buffer principale di WeeChat)
** _plugin_: nome del plugin che ha creato questo buffer ("core" per il buffer principale di WeeChat)
** _name_: nome del buffer
** _full_name_: nome completo del buffer ("plugin.nome") _(WeeChat ≥ 0.3.7)_
** _short_name_: nome breve del buffer (nota: usato solo per il display e può
essere cambiato dall'utente, questo nome non va usato per trovare il nome del
buffer, utilizzare invece _name_, _fullname_ o la variabile locale _channel_)
// TRANSLATION MISSING
** _old_full_name_: old full name of buffer ("plugin.name"), set before the buffer is renamed _(WeeChat ≥ 2.8)_
** _short_name_: nome breve del buffer (nota: usato solo per il display e può essere cambiato dall'utente, questo nome non va usato per trovare il nome del buffer, utilizzare invece _name_, _fullname_ o la variabile locale _channel_)
// TRANSLATION MISSING
** _type_: type of buffer: "formatted" or "free" _(WeeChat ≥ 4.2.0)_
** _title_: titolo del buffer
** _input_: testo in ingresso
** _text_search_input_: input salvato prima della ricerca nel testo
@@ -14786,8 +15115,7 @@ Argomenti:
// TRANSLATION MISSING
** _highlight_tags_: force highlight on messages with these tags
** _hotlist_max_level_nicks_: livello massimo della hotlist per alcuni nick
** _localvar_xxx_: ottiene il contenuto della variabile locale "xxx"
(sostituire "xxx" con il nome della variabile da leggere)
** _localvar_xxx_: ottiene il contenuto della variabile locale "xxx" (sostituire "xxx" con il nome della variabile da leggere)
Valore restituito:
@@ -14831,8 +15159,11 @@ Argomenti:
* _buffer_: puntatore al buffer
* _property_: nome proprietà:
** _plugin_: puntatore al plugin che ha creato questo buffer (NULL
per il buffer principale di WeeChat)
** _plugin_: puntatore al plugin che ha creato questo buffer (NULL per il buffer principale di WeeChat)
// TRANSLATION MISSING
** _text_search_regex_compiled_: compiled regular expression
// TRANSLATION MISSING
** _text_search_ptr_history_: history found
** _highlight_disable_regex_compiled_: espressione regolare _highlight_disable_regex_ compilata
** _highlight_regex_compiled_: espressione regolare _highlight_regex_ compilata
+4
View File
@@ -681,10 +681,14 @@ Elenco di funzioni nelle API per gli script:
print (for python: prnt) +
// TRANSLATION MISSING
print_date_tags (for python: prnt_date_tags) +
// TRANSLATION MISSING
print_datetime_tags (for python: prnt_datetime_tags) +
// TRANSLATION MISSING
print_y (for python: prnt_y) +
// TRANSLATION MISSING
print_y_date_tags (for python: prnt_y_date_tags) +
// TRANSLATION MISSING
print_y_datetime_tags (for python: prnt_y_datetime_tags) +
log_print
| hook
+94 -19
View File
@@ -1003,11 +1003,33 @@ La barra _input_ ha i seguenti elementi predefiniti:
| input_prompt | `[@Flashy(i)]` | Prompt per l'input, for irc: nick and modes (mode "+i" means invisible on libera).
| away | `(assente)` | Indicatore di assenza.
// TRANSLATION MISSING
| input_search | `[Search (~ str,msg)]` | Search indicator ("`~`": case insensitive, "`==`": case sensitive, "`str`": search string, "`regex`": search regular expression, "`msg`": search in messages, "`pre`": search in prefixes, "`pre\|msg`": search in prefixes and messages).
| input_search | `[Search lines (~ str,msg)]` | Search indicator (see below).
| input_paste | `[Incollare 7 righe ? [ctrl-y] Sì [ctrl-n] No]` | Chiede all'utente se incollare le righe.
| input_text | `ciao peter!` | Testo in input.
|===
// TRANSLATION MISSING
There are two search modes:
// TRANSLATION MISSING
* search in lines, for example `[Search lines (~ str,msg)]`, with the following info:
** `~`: case insensitive
** `==`: case sensitive
** `str`: search string
** `regex`: search regular expression
** `msg`: search in messages
** `pre`: search in prefixes
** `pre\|msg`: search in prefixes and messages.
* search in commands history, for example `[Search command (~ str,local)]`,
with the following info:
** `~`: case insensitive
** `==`: case sensitive
** `str`: search string
** `regex`: search regular expression
** `local`: search in buffer local history
** `global`: search in global history.
La barra _nicklist_ ha i seguenti elementi predefiniti:
[width="100%",cols="^3,^3,9",options="header"]
@@ -1106,6 +1128,13 @@ opzionale):
kbd:[xx], kbd:[,],
kbd:[yy] | colore del testo `xx` e di sfondo `yy` (consultare la lista di colori che segue).
// TRANSLATION MISSING
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx] | Text color `xxxxxx` (RGB as hexadecimal, for example `FF0000` for red).
// TRANSLATION MISSING
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx], kbd:[,],
kbd:[yyyyyy] | Text color `xxxxxx` and background `yyyyyy` (RGB as hexadecimal).
// TRANSLATION MISSING
| kbd:[Ctrl+c], kbd:[i] | italic text.
| kbd:[Ctrl+c], kbd:[o] | disabilita colori ed attributi.
| kbd:[Ctrl+c], kbd:[v] | video inverso (inverte il colore del testo con quello di sfondo).
@@ -1113,8 +1142,9 @@ opzionale):
|===
[NOTE]
Lo stesso codice (senza numero per kbd:[Ctrl+c], kbd:[c]) può essere usato per
terminare l'attributo.
// TRANSLATION MISSING
The same code (without number for kbd:[Ctrl+c], kbd:[c] and kbd:[Ctrl+c], kbd:[d])
can be used to stop the attribute.
I codici colore per kbd:[Ctrl+c], kbd:[c] sono:
@@ -1720,6 +1750,8 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
| Tasti | Descrizione | Comando
| kbd:[Ctrl+c], kbd:[b] | Inserisce il codice per il testo in grassetto. | `+/input insert \x02+`
| kbd:[Ctrl+c], kbd:[c] | Inserisce il codice per il testo colorato. | `+/input insert \x03+`
// TRANSLATION MISSING
| kbd:[Ctrl+c], kbd:[d] | Insert code for colored text (RGB color, as hexadecimal). | `+/input insert \x04+`
| kbd:[Ctrl+c], kbd:[i] | Inserisce il codice per il testo in corsivo. | `+/input insert \x1D+`
| kbd:[Ctrl+c], kbd:[o] | Inserisce il codice per il reset dei colori. | `+/input insert \x0F+`
| kbd:[Ctrl+c], kbd:[v] | Inserisce il codice per l'inversione dei colori. | `+/input insert \x16+`
@@ -1756,8 +1788,10 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Tasti | Descrizione | Comando
| kbd:[Ctrl+r] | Cerca del testo nella cronologia del buffer (consultare <<key_bindings_search_context,tasti per il contesto search>>). | `+/input search_text_here+`
| kbd:[Ctrl+s], kbd:[Ctrl+u] | Imposta l'evidenziatore dei messaggi non letti su tutti i buffer. | `+/allbuf /buffer set unread+`
// TRANSLATION MISSING
| kbd:[Ctrl+r] | Search for text in commands history (see <<key_bindings_histsearch_context,keys for context "histsearch">>). | `+/input search_history+`
// TRANSLATION MISSING
| kbd:[Ctrl+s] | Search for text in buffer lines (see <<key_bindings_search_context,keys for context "search">>). | `+/input search_text_here+`
// TRANSLATION MISSING
| kbd:[Ctrl+x] | Switch current buffer if buffers are merged with same number, for example switch to another IRC server buffer. | `+/buffer switch+`
// TRANSLATION MISSING
@@ -1786,6 +1820,7 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
| kbd:[Alt+n] | Scorre fino alla notifica successiva. | `+/window scroll_next_highlight+`
| kbd:[Alt+p] | Scorre fino alla notifica precedente. | `+/window scroll_previous_highlight+`
| kbd:[Alt+u] | Scorre fino alla prima riga non letta nel buffer. | `+/window scroll_unread+`
| kbd:[Alt+Shift+U] | Imposta l'evidenziatore dei messaggi non letti su tutti i buffer. | `+/allbuf /buffer set unread+`
| kbd:[Alt+<] | Passa al buffer precedente nella lista dei buffer visitati. | `+/buffer jump prev_visited+`
| kbd:[Alt+>] | Passa al buffer successivo nella lista dei buffer visitati. | `+/buffer jump next_visited+`
| kbd:[Alt+/] | Passa all'ultimo buffer mostrato (prima dell'ultimo passaggio ad un buffer). | `+/buffer jump last_displayed+`
@@ -1878,19 +1913,22 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
[[key_bindings_search_context]]
=== Search context
Questi tasti sono usati nel contesto "search" (quando viene digitato
kbd:[Ctrl+r] per cercare del testo nel buffer).
// TRANSLATION MISSING
These keys are used in context "search" (when kbd:[Ctrl+s] is pressed to search
text in buffer lines).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Tasti | Descrizione | Comando
// TRANSLATION MISSING
| kbd:[Ctrl+r] | Switch search type: string (default), regular expression. | `+/input search_switch_regex+`
| kbd:[Ctrl+x] | Switch search type: string (default), regular expression. | `+/input search_switch_regex+`
| kbd:[Alt+c] | Passa alla ricerca esatta. | `+/input search_switch_case+`
// TRANSLATION MISSING
| kbd:[Tab] | Switch search in: messages (default), prefixes, prefixes + messages. | `+/input search_switch_where+`
| kbd:[↑] | Cerca riga precedente. | `+/input search_previous+`
| kbd:[] | Cerca riga successiva. | `+/input search_next+`
| kbd:[Ctrl+r] +
kbd:[] | Cerca riga precedente. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Cerca riga successiva. | `+/input search_next+`
// TRANSLATION MISSING
| kbd:[Enter] +
kbd:[Ctrl+j] +
@@ -1899,6 +1937,39 @@ kbd:[Ctrl+r] per cercare del testo nel buffer).
| kbd:[Ctrl+q] | Stop search and reset scroll to pre-text search state. | `+/input search_stop+`
|===
// TRANSLATION MISSING
[[key_bindings_histsearch_context]]
=== History search context
// TRANSLATION MISSING
These keys are used in context "histsearch" (when kbd:[Ctrl+r] is pressed to
search text in commands history).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Tasti | Descrizione | Comando
// TRANSLATION MISSING
| kbd:[Ctrl+x] | Switch search type: string (default), regular expression. | `+/input search_switch_regex+`
// TRANSLATION MISSING
| kbd:[Alt+c] | Switch exact case for search. | `+/input search_switch_case+`
// TRANSLATION MISSING
| kbd:[Tab] | Switch search in: buffer local history (default), global history. | `+/input search_switch_where+`
// TRANSLATION MISSING
| kbd:[Ctrl+r] +
kbd:[↑] | Search in previous (older) history entries. | `+/input search_previous+`
// TRANSLATION MISSING
| kbd:[Ctrl+s] +
kbd:[↓] | Search in next (newer) history entries. | `+/input search_next+`
// TRANSLATION MISSING
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Stop search and use matching input. | `+/input search_stop_here+`
// TRANSLATION MISSING
| kbd:[Ctrl+o] | Execute the command found in history and insert the next one in the command line. | `+/input history_use_get_next+`
// TRANSLATION MISSING
| kbd:[Ctrl+q] | Stop search and restore input to its initial value. | `+/input search_stop+`
|===
// TRANSLATION MISSING
[[key_bindings_cursor_context]]
=== Cursor context
@@ -1990,13 +2061,13 @@ These mouse actions are possible only if mouse is enabled with key kbd:[Alt+m]
// TRANSLATION MISSING
| kbd:[□ □ ■] | - | chat: /list buffer | Join IRC channel on selected line. | `+hsignal:irc_list_mouse+`
// TRANSLATION MISSING
| kbd:[▲] | - | chat: script buffer | Move 5 lines up in script buffer. | `+/script -up 5+`
| kbd:[▲] | - | chat: script buffer | Move 5 lines up in script buffer. | `+/script up 5+`
// TRANSLATION MISSING
| kbd:[▼] | - | chat: script buffer | Move 5 lines down in script buffer. | `+/script -down 5+`
| kbd:[▼] | - | chat: script buffer | Move 5 lines down in script buffer. | `+/script down 5+`
// TRANSLATION MISSING
| kbd:[■ □ □] | - | chat: script buffer | Select line in script buffer. | `+/script -go ${_chat_line_y}+`
| kbd:[■ □ □] | - | chat: script buffer | Select line in script buffer. | `+/script go ${_chat_line_y}+`
// TRANSLATION MISSING
| kbd:[□ □ ■] | - | chat: script buffer | Install/remove script. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[□ □ ■] | - | chat: script buffer | Install/remove script. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
// TRANSLATION MISSING
| kbd:[■ □ □] | up / left | buflist | Move buffer to a lower number. | Signal `+buflist_mouse+`.
// TRANSLATION MISSING
@@ -2129,8 +2200,8 @@ These keys and actions are used on the script buffer (see <<script_manager,scrip
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|===
| Key | Action ^(1)^ | Description | Command
| kbd:[↑] | | Move one line up. | `+/script -up+`
| kbd:[↓] | | Move one line down. | `+/script -down+`
| kbd:[↑] | | Move one line up. | `+/script up+`
| kbd:[↓] | | Move one line down. | `+/script down+`
| kbd:[PgUp] | | Move one page up. | `+/window page_up+`
| kbd:[PgDn] | | Move one page down. | `+/window page_down+`
| kbd:[Alt+i] | `i` | Install script. | `+/script install+`
@@ -5504,7 +5575,7 @@ type:
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| line | message | buffer, buffer_name, y, date, date_usec, date_printed, date_usec_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
@@ -5663,7 +5734,9 @@ The "line" callback sets following variables in hashtable:
| buffer_type | string | Buffer type ("formatted" or "free").
| y | string | Line number for a buffer with free content (≥ 0), -1 for a buffer with formatted content.
| date | string | Line date (timestamp).
| date_usec | string | Microseconds of line date.
| date_printed | string | Date when line was displayed (timestamp).
| date_usec_printed | string | Microseconds of date when line was displayed.
| str_time | string | Date for display. It may contain color codes.
| tags | string | Tags of message (with comma added at beginning/end of string).
| displayed | string | "1" if displayed, "0" if line filtered.
@@ -5702,7 +5775,8 @@ The "print" callback sets following variables in hashtable:
|===
| Variable | Type | Description
| buffer | pointer | Buffer.
| tg_date | string | Message date/time (format: `YYYY-MM-DD hh:mm:ss`).
// TRANSLATION MISSING
| tg_date | string | Message date/time (format: `%FT%T.%f`, see link:weechat_plugin_api.it.html#_util_strftimeval[WeeChat plugin API reference / util_strftimeval ^↗^^]).
| tg_displayed | string | "1" if displayed, "0" if line filtered.
| tg_highlight | string | "1" if highlight, otherwise "0".
| tg_prefix | string | Prefix.
@@ -5767,7 +5841,8 @@ The "timer" callback sets following variables in hashtable:
|===
| Variable | Type | Description
| tg_remaining_calls | string | Number of remaining calls.
| tg_date | string | Current date/time (format: `YYYY-MM-DD hh:mm:ss`).
// TRANSLATION MISSING
| tg_date | string | Current date/time (format: `%FT%T.%f`, see link:weechat_plugin_api.it.html#_util_strftimeval[WeeChat plugin API reference / util_strftimeval ^↗^^]).
|===
[[trigger_data_config]]
+1 -1
View File
@@ -100,7 +100,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat は Sébastien Helleu さんと貢献者によって作成されています
(完全なリストは AUTHORS.adoc ファイルを参照してください)。
著作権 (C) 2003-2023 {author}
著作権 (C) 2003-2024 {author}
WeeChat はフリーソフトウェアです。あなたはこれを、フリーソフトウェア財団によって発行された
GNU 一般公衆利用許諾契約書 (バージョン 2 か、希望によってはそれ以降のバージョンのうちどれか)
+11 -1
View File
@@ -430,6 +430,10 @@ WeeChat "core" は以下のディレクトリに配置されています:
|          unparse.py | Python コードを別の言語に変換 (スクリプト testapigen.py から使われます)
|    unit/ | 単体テスト用のルートディレクトリ
|       test-plugins.cpp | テスト: プラグイン
// TRANSLATION MISSING
|       test-plugin-api-info.cpp | Tests: plugin API info functions.
// TRANSLATION MISSING
|       test-plugin-config.cpp | Tests: plugin config functions.
|       core/ | core 向け単体テスト用のルートディレクトリ
|          test-core-arraylist.cpp | テスト: 配列リスト
// TRANSLATION MISSING
@@ -459,6 +463,10 @@ WeeChat "core" は以下のディレクトリに配置されています:
|          test-core-util.cpp | テスト: ユーティリティ関数
// TRANSLATION MISSING
|          test-core-sys.cpp | Tests: system functions.
// TRANSLATION MISSING
|          hook/ | Root of unit tests for hooks.
// TRANSLATION MISSING
|             test-hook-command.cpp | Tests: hooks "command".
|       gui/ | インターフェースの単体テストを収める最上位ディレクトリ
// TRANSLATION MISSING
|          test-gui-bar-window.cpp | Tests: bar window functions.
@@ -492,6 +500,8 @@ WeeChat "core" は以下のディレクトリに配置されています:
// TRANSLATION MISSING
|             test-irc-ignore.cpp | Tests: IRC ignores.
// TRANSLATION MISSING
|             test-irc-info.cpp | Tests: IRC info.
// TRANSLATION MISSING
|             test-irc-join.cpp | Tests: IRC join functions.
// TRANSLATION MISSING
|             test-irc-list.cpp | Tests: IRC buffer for reply to /list command.
@@ -601,7 +611,7 @@ WeeChat とプラグインの翻訳は gettext で行います、ファイルは
/*
* weechat.c - core functions for WeeChat
*
* Copyright (C) 2023 Your Name <your@email.com>
* Copyright (C) 2024 Your Name <your@email.com>
*
* This file is part of WeeChat, the extensible chat client.
*
+18
View File
@@ -607,6 +607,24 @@ version ≥ 4.0.0, the keys names become invalid and many keys won't work at all
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
// TRANSLATION MISSING
[[key_f11]]
=== Key F11 maximizes the terminal window, how can I scroll up the nicklist?
The key kbd:[F11] is commonly used by terminals to maximize the window, and
kbd:[F11]/kbd:[F12] are the default keys in WeeChat to scroll the nicklist.
You can bind other keys, for example kbd:[Shift+F11] and kbd:[Shift+F12],
with WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Other solution is to enable mouse (key: kbd:[Alt+m]) and scroll with the mouse
wheel (see also questions about <<mouse,mouse>>).
[[customize_key_bindings]]
=== どうすればキー割り当てをカスタマイズできますか。
+373 -40
View File
@@ -2637,7 +2637,7 @@ str3 = weechat.string_input_for_buffer("//test") # "/test"
// TRANSLATION MISSING
_WeeChat ≥ 0.4.0, updated in 0.4.2, 0.4.3, 1.0, 1.1, 1.2, 1.3, 1.6, 1.8, 2.0,
2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6, 3.8, 4.0.0._
2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6, 3.8, 4.0.0, 4.2.0._
式を評価して文字列として返す。`+${variable}+`
という書式で書かれた特殊変数は展開されます (以下の表を参照)。
@@ -2980,12 +2980,24 @@ str5 = weechat.string_eval_expression("password=abc password=def", {}, {}, optio
// TRANSLATION MISSING
| 書式 | Min WeeChat | 説明 | 例
// TRANLSATION MISSING
| `+${raw_hl:xxx}+` | 4.2.0
| Raw string (not evaluated), with syntax highlighting (using colors).
| >> `+${raw_hl:${cut:1,,${rev:hello}}}+` +
== `+${cut:1,,${rev:hello}}+` (with colors)
// TRANSLATION MISSING
| `+${raw:xxx}+` | 3.1
| Raw string (not evaluated).
| >> `+${raw:${info:version}}+` +
== `+${info:version}+`
// TRANSLATION MISSING
| `+${hl:xxx}+` | 4.2.0
| String with syntax highlighting (using colors).
| >> `+${hl:${file.section.option}}+` +
== `+test ${variable}+` (with colors)
// TRANSLATION MISSING
| `+${name}+` | 3.4
| User variable (defined with `+${define:name,value}+`).
@@ -3579,6 +3591,51 @@ weechat_string_dyn_free (string, 1);
[NOTE]
スクリプト API ではこの関数を利用できません。
==== string_concat
_WeeChat ≥ 4.2.0._
// TRANSLATION MISSING
Concatenate multiple strings using a separator.
プロトタイプ:
[source,c]
----
const char *weechat_string_concat (const char *separator, ...);
----
引数:
// TRANSLATION MISSING
* _separator_: the separator string which is inserted between concatenated
strings (can be NULL or empty string)
// TRANSLATION MISSING
[NOTE]
Last argument *MUST* always be NULL. +
A macro called `WEECHAT_STR_CONCAT` can be used, where the final NULL value is
not needed (usage of this macro is recommended).
戻り値:
// TRANSLATION MISSING
* concatenated string
C 言語での使用例:
// TRANSLATION MISSING
[source,c]
----
const char *result = weechat_string_concat (" / ", "abc", "def", "ghi", NULL); /* result == "abc / def / ghi" */
/* with macro */
const char *result = WEECHAT_STR_CONCAT(" / ", "abc", "def", "ghi"); /* result == "abc / def / ghi" */
----
[NOTE]
スクリプト API ではこの関数を利用できません。
[[utf-8]]
=== UTF-8
@@ -4763,6 +4820,83 @@ weechat_printf (NULL, "date: %s",
[NOTE]
スクリプト API ではこの関数を利用できません。
// TRANSLATION MISSING
==== util_strftimeval
_WeeChat ≥ 4.2.0._
Format date and time like function `strftime` in C library, using `struct timeval`
as input, and supporting extra specifiers for microseconds.
Prototype:
[source,c]
----
int weechat_util_strftimeval (char *string, int max, const char *format, struct timeval *tv);
----
Arguments:
* _string_: buffer where the formatted string is stored
* _max_: string size
* _format_: format, the same as _strftime_ function, with these extra specifiers:
** `%.N` where `N` is between 1 and 6: zero-padded microseconds on N digits
(for example `%.3` for milliseconds)
** `%f`: alias of `%.6`
Return value:
* number of bytes put in _string_ (value returned from _strftime_ function)
C example:
[source,c]
----
char time[256];
struct timeval tv;
gettimeofday (&tv, NULL);
weechat_util_strftimeval (time, sizeof (time), "%FT%T.%f", &tv);
/* result: 2023-12-26T18:10:04.460509 */
----
[NOTE]
スクリプト API ではこの関数を利用できません。
// TRANSLATION MISSING
==== util_parse_time
_WeeChat ≥ 4.2.0._
Parse date/time with support of microseconds.
Prototype:
[source,c]
----
int util_parse_time (const char *datetime, struct timeval *tv);
----
Arguments:
* _date_: date/time
* _tv_: parsed date/time ("timeval" structure)
Return value:
* 1 if OK, 0 if error
C example:
[source,c]
----
struct timeval tv;
weechat_util_parse_time ("2023-12-25T10:29:09.456789Z", &tv); /* == 1 */
/* result: tv.tv_sec == 1703500149, tv.tv_usec = 456789 */
----
[NOTE]
スクリプト API ではこの関数を利用できません。
==== util_version_number
_WeeChat バージョン 0.3.9 以上で利用可。_
@@ -9318,13 +9452,13 @@ weechat.prnt("", "Color: %sblue %sdefault color %syellow on red"
void weechat_printf (struct t_gui_buffer *buffer, const char *message, ...);
----
この関数は printf_date_tags
この関数は printf_datetime_tags
関数の別名です。以下に示す通り、どちらの関数も同じ結果を返します:
[source,c]
----
weechat_printf (buffer, "message");
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
引数:
@@ -9386,6 +9520,15 @@ void weechat_printf_date_tags (struct t_gui_buffer *buffer, time_t date,
const char *tags, const char *message, ...);
----
この関数は printf_datetime_tags
関数の別名です。以下に示す通り、どちらの関数も同じ結果を返します:
[source,c]
----
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
引数:
* _buffer_: バッファへのポインタ、NULL の場合、メッセージは WeeChat バッファに表示
@@ -9420,6 +9563,64 @@ weechat.prnt_date_tags("", time - 120, "notify_message",
[NOTE]
この関数をスクリプトの中で実行するには "print_date_tags" (Python の場合は "prnt_date_tags") と書きます。
==== printf_datetime_tags
_WeeChat ≥ 4.2.0._
// TRANSLATION MISSING
Display a message on a buffer, using a custom date/time (with microseconds)
and tags.
プロトタイプ:
[source,c]
----
void weechat_printf_datetime_tags (struct t_gui_buffer *buffer, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
引数:
* _buffer_: バッファへのポインタ、NULL の場合、メッセージは WeeChat バッファに表示
* _date_: メッセージの日付 (0 は現在の日付/時間を意味する)
// TRANSLATION MISSING
* _date_usec_: microseconds of date (between 0 and 999999)
* _tags_: タグのコンマ区切りリスト (タグを指定しない場合は NULL)
* _message_: 表示するメッセージ
WeeChat で共通に使われるタグのリストは
link:weechat_user.ja.html#lines_tags[WeeChat ユーザーズガイド / 行のタグ ^↗^^]を参照してください
C 言語での使用例:
[source,c]
----
struct timeval tv_now;
gettimeofday (&tv_now, NULL);
weechat_printf_datetime_tags (NULL, tv_now.tv_sec - 120, tv_now.tv_usec,
"notify_message",
"Message 2 minutes ago, with a tag 'notify_message'");
----
スクリプト (Python) での使用例:
[source,python]
----
# プロトタイプ
def prnt_datetime_tags(buffer: str, date: int, date_usec: int, tags: str, message: str) -> int: ...
# 例
now = time.time()
time_sec = int(now)
time_usec = int((now * 1000000) % 1000000)
weechat.prnt_datetime_tags("", time_sec - 120, time_usec, "notify_message",
"Message 2 minutes ago, with a tag 'notify_message'")
----
[NOTE]
この関数をスクリプトの中で実行するには "print_datetime_tags" (Python の場合は "prnt_datetime_tags") と書きます。
==== printf_y
自由内容のバッファのある行にメッセージを表示
@@ -9428,8 +9629,17 @@ weechat.prnt_date_tags("", time - 120, "notify_message",
[source,c]
----
void weechat_printf_y (struct t_gui_buffer *buffer, int y,
const char *message, ...);
void weechat_printf_y (struct t_gui_buffer *buffer, int y, const char *message, ...);
----
// TRANSLATION MISSING
This function is a shortcut for function printf_y_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf_y (buffer, 0, "message");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "message");
----
引数:
@@ -9478,6 +9688,16 @@ void weechat_printf_y_date_tags (struct t_gui_buffer *buffer, int y, time_t date
const char *tags, const char *message, ...);
----
// TRANSLATION MISSING
This function is a shortcut for function printf_y_datetime_tags. +
These two calls give exactly same result:
[source,c]
----
weechat_printf_y_date_tags (buffer, 0, 0, NULL, "message");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "message");
----
引数:
* _buffer_: バッファへのポインタ
@@ -9509,6 +9729,55 @@ weechat.prnt_y_date_tags("", 2, 0, "my_tag", "My message on third line with a ta
[NOTE]
この関数をスクリプトの中で実行するには "print_y_date_tags" (Python の場合は "prnt_y_date_tags") と書きます。
==== printf_y_datetime_tags
_WeeChat ≥ 4.2.0._
// TRANSLATION MISSING
Display a message on a line of a buffer with free content, using a custom
date/time (with microseconds) and tags.
プロトタイプ:
[source,c]
----
void weechat_printf_y_datetime_tags (struct t_gui_buffer *buffer, int y, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
引数:
* _buffer_: バッファへのポインタ
* _y_: 行番号 (1 行目は 0); 負数の場合は表示された最後の行の後に行を追加する:
_y_ の絶対値で最後の行の後に追加する行数を指定 (例えば
-1 は最後の行のすぐ後、-2 は 最後の行の 2 行後)
* _date_: メッセージの日付 (0 は現在の日付/時間を意味する)
// TRANSLATION MISSING
* _date_usec_: microseconds of date (between 0 and 999999)
* _tags_: タグのコンマ区切りリスト (タグを指定しない場合は NULL)
* _message_: 表示するメッセージ
C 言語での使用例:
[source,c]
----
weechat_printf_y_datetime_tags (buffer, 2, 0, 0, "my_tag", "My message on third line with a tag");
----
スクリプト (Python) での使用例:
[source,python]
----
# プロトタイプ
def prnt_y_datetime_tags(buffer: str, y: int, date: int, date_usec: int, tags: str, message: str) -> int: ...
# 例
weechat.prnt_y_datetime_tags("", 2, 0, 0, "my_tag", "My message on third line with a tag")
----
[NOTE]
この関数をスクリプトの中で実行するには "print_y_datetime_tags" (Python の場合は "prnt_y_datetime_tags") と書きます。
==== log_printf
WeeChat ログファイル (weechat.log) にメッセージを書き込む。
@@ -10887,7 +11156,7 @@ hook = weechat.hook_connect("", "my.server.org", 1234, 1, 0, "",
==== hook_line
// TRANSLATION MISSING
_WeeChat ≥ 2.3, updated in 3.7._
_WeeChat ≥ 2.3, updated in 4.2.0._
バッファに対する行表示をフックする。
@@ -10986,11 +11255,23 @@ struct t_hook *weechat_hook_line (const char *buffer_type,
| 利用不可 ("0")
| `+1533792000+`
// TRANSLATION MISSING
| date_usec
| Microseconds of line date (between 0 and 999999).
| N/A ("0").
| `+123456+`
| date_printed
| 行が表示された日付 (タイムスタンプ)
| 利用不可 ("0")
| `+1533792012+`
// TRANSLATION MISSING
| date_usec_printed
| Microseconds of date when line was displayed (between 0 and 999999).
| N/A ("0").
| `+654321+`
| str_time
| 行に追加される日付 (色コードを入れてもよい)
| 利用不可 (空文字列)
@@ -11078,11 +11359,24 @@ WeeChat はそれらを無視します。
| 日付はこの値に設定されます +
これに対応して `+str_time+` も更新されます
// TRANSLATION MISSING
| date_usec
| Integer ("0" to "999999").
| 利用不可
| The microseconds of line date is set to this value. +
これに対応して `+str_time+` も更新されます
| date_printed
| タイムスタンプ
| 利用不可
| 表示される日付はこのタイムスタンプを使います。The printed date is set to this timestamp (not displayed).
// TRANSLATION MISSING
| date_usec_printed
| Integer ("0" to "999999").
| 利用不可
| The microseconds of printed date is set to this value.
| str_time
| 文字列
| 利用不可
@@ -11163,7 +11457,7 @@ hook = weechat.hook_line("", "", "irc_join", "my_line_cb", "")
==== hook_print
_WeeChat バージョン 0.4.3、1.0、1.5 で更新。_
_WeeChat バージョン 0.4.3、1.0、1.5、4.2.0 で更新。_
メッセージの表示をフックする。これは行がフォーマット済みバッファに追加された時点で呼び出されます。
@@ -11182,6 +11476,7 @@ struct t_hook *weechat_hook_print (struct t_gui_buffer *buffer,
void *data,
struct t_gui_buffer *buffer,
time_t date,
int date_usec,
int tags_count,
const char **tags,
int displayed,
@@ -11211,6 +11506,8 @@ struct t_hook *weechat_hook_print (struct t_gui_buffer *buffer,
** _void *data_: ポインタ
** _struct t_gui_buffer *buffer_: バッファへのポインタ
** _time_t date_: 日付
// TRANSLATION MISSING
** _int date_usec_: microseconds of date
** _int tags_count_: 行に付けられたタグの個数
** _const char **tags_: 行に付けられたタグの配列
** _int displayed_: 行が表示される場合は 1、フィルタされる (隠される) 場合は 0
@@ -11241,7 +11538,7 @@ C 言語での使用例:
----
int
my_print_cb (const void *pointer, void *data, struct t_gui_buffer *buffer,
time_t date, int tags_count, const char **tags,
time_t date, int date_usec, int tags_count, const char **tags,
int displayed, int highlight,
const char *prefix, const char *message)
{
@@ -13403,9 +13700,17 @@ info を使う前にエリアが一致していることを確認して下さい
| _chat_line_date | 日付/時間の行
| "1313237175" | "0"
// TRANSLATION MISSING
| _chat_line_date_usec | Microseconds of line date/time.
| "123456" | "0"
| _chat_line_date_printed | 日付/時間の行 ^(4)^
| "1313237175" | "0"
// TRANSLATION MISSING
| _chat_line_date_usec_printed | Microseconds of line printed date/time ^(4)^.
| "123456" | "0"
| _chat_line_time | 表示された時間
| "14:06:15" | ""
@@ -14202,6 +14507,8 @@ int weechat_buffer_get_integer (struct t_gui_buffer *buffer,
* _buffer_: バッファへのポインタ
* _property_: プロパティ名:
// TRANSLATION MISSING
** _opening_: 1 if buffer is opening, otherwise 0 _(WeeChat ≥ 4.2.0)_
** _number_: バッファの番号 (1 以上)
** _layout_number_: レイアウトに保存されたバッファの番号
** _layout_number_merge_order_: レイアウトのマージをする際の順番
@@ -14209,39 +14516,38 @@ int weechat_buffer_get_integer (struct t_gui_buffer *buffer,
** _type_: バッファタイプ (0: 書式あり、1: 自由内容)
** _notify_: バッファの通知レベル
** _num_displayed_: バッファを表示しているウィンドウの数
** _active_: バッファがマージされて選択されている場合は 2、バッファが選択されている場合は
1、バッファがマージされ選択されていない場合は 0
** _hidden_: バッファがされている場合は 1、そうでない場合は 0
_(WeeChat バージョン 1.0 以上で利用可)_
** _zoomed_: バッファがマージとズームされている場合は 1、そうでない場合は 0
_(WeeChat バージョン 1.0 以上で利用可)_
** _active_: バッファがマージされて選択されている場合は 2、バッファが選択されている場合は 1、バッファがマージされ選択されていない場合は 0
** _hidden_: バッファが隠されている場合は 1、そうでない場合は 0 _(WeeChat バージョン 1.0 以上で利用可)_
** _zoomed_: バッファがマージとズームされている場合は 1、そうでない場合は 0 _(WeeChat バージョン 1.0 以上で利用可)_
** _print_hooks_enabled_: プリントフックが有効化されている場合は 1、そうでない場合は 0
** _day_change_: 日付変更メッセージを表示する場合は 1、そうでない場合は 0
_(WeeChat バージョン 0.4.3 以上で利用可)_
** _clear_: コマンド `/buffer clear` でバッファをクリアできる場合は 1、そうでない場合は 0
_(WeeChat バージョン 1.0 以上で利用可)_
** _filter_: バッファでフィルタが有効な場合は 1、そうでない場合は 0
_(WeeChat バージョン 1.0 以上で利用可)_
** _lines_hidden_: バッファに非表示 (フィルタされた) メッセージが 1
行以上含まれる場合は 1、すべてのメッセージが表示冴えている場合は 0
** _day_change_: 日付変更メッセージを表示する場合は 1、そうでない場合は 0 _(WeeChat バージョン 0.4.3 以上で利用可)_
** _clear_: コマンド `/buffer clear` でバッファをクリアできる場合は 1、そうでない場合は 0 _(WeeChat バージョン 1.0 以上で利用可)_
** _filter_: バッファでフィルタが有効な場合は 1、そうでない場合は 0 _(WeeChat バージョン 1.0 以上で利用可)_
// TRANSLATION MISSING
** _closing_: 1 if buffer is closing, otherwise 0 _(WeeChat ≥ 1.0)_
** _lines_hidden_: バッファに非表示 (フィルタされた) メッセージが 1 行以上含まれる場合は 1、すべてのメッセージが表示冴えている場合は 0
** _prefix_max_length_: バッファプレフィックスの最大長
** _time_for_each_line_: バッファの各行に時間を表示する場合は
1 (デフォルト)、そうでない場合は 0
// TRANSLATION MISSING
** _next_line_id_: next line id in buffer _(WeeChat ≥ 3.8)_
** _time_for_each_line_: バッファの各行に時間を表示する場合は 1 (デフォルト)、そうでない場合は 0
** _nicklist_: ニックネームリストが有効化されている場合は 1、そうでない場合は 0
** _nicklist_case_sensitive_: ニックネームの大文字小文字を区別する場合は 1、そうでない場合は 0
** _nicklist_max_length_: ニックネームの最大長
** _nicklist_display_groups_: グループを表示する場合 1、そうでない場合は 0
** _nicklist_count_: ニックネームリストに含まれるニックネームとグループの数
// TRANSLATION MISSING
** _nicklist_visible_count_: number of nicks/groups displayed
** _nicklist_groups_count_: ニックネームリストに含まれるグループの数
// TRANSLATION MISSING
** _nicklist_groups_visible_count_: number of groups displayed
** _nicklist_nicks_count_: ニックネームリストに含まれるニックネームの数
** _nicklist_visible_count_: 表示されているニックネームとグループの数
// TRANSLATION MISSING
** _nicklist_nicks_visible_count_: number of nicks displayed
** _input_: 入力可能な場合は 1、そうでない場合は 0
** _input_get_unknown_commands_: 未定義のコマンドを入力コールバックに送信する場合は
1、そうでない場合は 0
** _input_get_unknown_commands_: 未定義のコマンドを入力コールバックに送信する場合は 1、そうでない場合は 0
** _input_get_empty_: 入力コールバックに何も送信されなかった場合は 1、そうでない場合は 0
// TRANSLATION MISSING
** _input_multiline_: 1 if multiple lines are sent as one message to input
callback, otherwise 0
** _input_multiline_: 1 if multiple lines are sent as one message to input callback, otherwise 0
** _input_size_: 入力サイズ (バイト単位)
** _input_length_: 入力長 (文字数)
** _input_pos_: バッファ入力におけるカーソル位置
@@ -14249,9 +14555,33 @@ int weechat_buffer_get_integer (struct t_gui_buffer *buffer,
** _num_history_: コマンド履歴の数
** _text_search_: テキスト検索タイプ:
*** 0: 現在検索していない
*** 1: 後方検索 (検索方向: 最古のメッセージに向かって検索)
*** 2: 前方検索 (検索方向: 最新のメッセージに向かって検索)
// TRANSLATION MISSING
*** 1: search in buffer lines
// TRANSLATION MISSING
*** 2: search in commands history
// TRANSLATION MISSING
** _text_search_direction_: direction for search:
// TRANSLATION MISSING
*** 0: backward search (direction: oldest messages/commands)
// TRANSLATION MISSING
*** 1: forward search (direction: newest messages/commands)
** _text_search_exact_: テキスト検索で大文字小文字を区別する場合は 1
// TRANSLATION MISSING
** _text_search_regex_: 1 if searching with a regular expression
** _text_search_where_:
*** 0: 現在検索していない
// TRANSLATION MISSING
*** 1: search in message
// TRANSLATION MISSING
*** 2: search in prefix
// TRANSLATION MISSING
*** 3: search in prefix and message
** _text_search_history_:
*** 0: 現在検索していない
// TRANSLATION MISSING
*** 1: search in buffer local history
// TRANSLATION MISSING
*** 2: search in global history
** _text_search_found_: テキストが見つかった場合は 1、そうでない場合は 0
戻り値:
@@ -14293,13 +14623,14 @@ const char *weechat_buffer_get_string (struct t_gui_buffer *buffer,
* _buffer_: バッファへのポインタ
* _property_: プロパティ名:
** _plugin_: バッファを作成したプラグインの名前
("core" は WeeChat メインバッファ)
** _plugin_: バッファを作成したプラグインの名前 ("core" は WeeChat メインバッファ)
** _name_: バッファの名前
** _full_name_: バッファの完全な名前 ("plugin.name") _(WeeChat バージョン 0.3.7 以上で利用可)_
** _short_name_: バッファの短縮名 (注意:
表示目的以外に使用するのは禁止、ユーザは書き換えることが可能、バッファを検索する際にこれを使ってはいけない、_name_、_full_name_、またはローカル変数
_channel_ を使うこと)
// TRANSLATION MISSING
** _old_full_name_: old full name of buffer ("plugin.name"), set before the buffer is renamed _(WeeChat ≥ 2.8)_
** _short_name_: バッファの短縮名 (注意: 表示目的以外に使用するのは禁止、ユーザは書き換えることが可能、バッファを検索する際にこれを使ってはいけない、_name_、_full_name_、またはローカル変数 _channel_ を使うこと)
// TRANSLATION MISSING
** _type_: type of buffer: "formatted" or "free" _(WeeChat ≥ 4.2.0)_
** _title_: バッファのタイトル
** _input_: 入力テキスト
** _text_search_input_: テキスト検索前に保存した入力テキスト
@@ -14310,8 +14641,7 @@ const char *weechat_buffer_get_string (struct t_gui_buffer *buffer,
** _highlight_tags_restrict_: これらのタグを付けられたメッセージだけにハイライトを制限する
** _highlight_tags_: これらのタグを付けられたメッセージを強制的にハイライトする
** _hotlist_max_level_nicks_: 一部のニックネームに対するホットリストレベルの最大値
** _localvar_xxx_: ローカル変数 "xxx" の値
("xxx" は読み出す変数の名前)
** _localvar_xxx_: ローカル変数 "xxx" の値 ("xxx" は読み出す変数の名前)
戻り値:
@@ -14355,8 +14685,11 @@ void *weechat_buffer_pointer (struct t_gui_buffer *buffer,
* _buffer_: バッファへのポインタ
* _property_: プロパティ名:
** _plugin_: このバッファを作ったプラグインへのポインタ
(WeeChat メインバッファの場合は NULL)
** _plugin_: このバッファを作ったプラグインへのポインタ (WeeChat メインバッファの場合は NULL)
// TRANSLATION MISSING
** _text_search_regex_compiled_: compiled regular expression
// TRANSLATION MISSING
** _text_search_ptr_history_: history found
** _highlight_disable_regex_compiled_: コンパイル済みの正規表現 _highlight_disable_regex_
** _highlight_regex_compiled_: コンパイル済みの正規表現 _highlight_regex_
+27 -10
View File
@@ -507,7 +507,9 @@ hda:
'buffer': 'ptr',
'y': 'int',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed', 'int',
'str_time': 'str',
'tags_count': 'int',
'tags_array': 'arr',
@@ -525,7 +527,9 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404926
date_usec: 118712
date_printed: 1588404926
date_usec_printed: 118712
str_time: 'F@0025209F@0024535F@0024026'
tags_count: 0
tags_array: []
@@ -541,7 +545,9 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404930
date_usec: 25
date_printed: 1588404930
date_usec_printed: 25
str_time: 'F@0025209F@0024535F@0024030'
tags_count: 0
tags_array: []
@@ -733,11 +739,14 @@ inl:
input_buffer_1st_display: 0
num_history: 0
text_search: 0
text_search_direction: 0
text_search_exact: 0
text_search_regex: 0
text_search_regex_compiled: '0x0'
text_search_where: 0
text_search_history: 0
text_search_found: 0
text_search_ptr_history: '0x0'
text_search_input: None
highlight_words: None
highlight_disable_regex: None
@@ -2082,17 +2091,21 @@ hdata として送られるデータ:
[width="100%",cols="3m,2,10",options="header"]
|===
| 名前 | 型 | 説明
| buffer | pointer | バッファへのポインタ
| date | time | メッセージの日付
| date_printed | time | WeeChat メッセージを表示した日付
| displayed | char | メッセージが表示される場合は 1、メッセージがフィルタされる (隠される) 場合は 0
| 名前 | 型 | 説明
| buffer | pointer | バッファへのポインタ
| date | time | メッセージの日付
// TRANSLATION MISSING
| notify_level | char | Notify level: -1 = notify disabled, 0 = low, 1 = message, 2 = private, 3 = highlight.
| highlight | char | 行がハイライト部分を含む場合は 1、それ以外は 0
| tags_array | string の配列 | 行に対するタグのリスト
| prefix | string | プレフィックス
| message | string | メッセージ
| date_usec | integer | Microseconds of date.
| date_printed | time | WeeChat メッセージを表示した日付
// TRANSLATION MISSING
| date_usec_printed | integer | Microseconds of date when WeeChat displayed message.
| displayed | char | メッセージが表示される場合は 1、メッセージがフィルタされる (隠される) 場合は 0
// TRANSLATION MISSING
| notify_level | char | Notify level: -1 = notify disabled, 0 = low, 1 = message, 2 = private, 3 = highlight.
| highlight | char | 行がハイライト部分を含む場合は 1、それ以外は 0
| tags_array | string の配列 | 行に対するタグのリスト
| prefix | string | プレフィックス
| message | string | メッセージ
|===
例: バッファ _irc.libera.#weechat_ でニックネーム _FlashCode_ からの新しいメッセージ _hello!_:
@@ -2104,7 +2117,9 @@ hda:
keys: {
'buffer': 'ptr',
'date': 'tim',
'date_used': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'displayed': 'chr',
'notify_level': 'chr',
'highlight': 'chr',
@@ -2117,7 +2132,9 @@ hda:
__path: ['0x4a49600']
buffer: '0x4a715d0'
date: 1362728993
date_usec: 902765
date_printed: 1362728993
date_usec_printed: 902765
displayed: 1
notify_level: 1
highlight: 0
+2
View File
@@ -671,8 +671,10 @@ link:weechat_plugin_api.ja.html[WeeChat プラグイン API リファレンス 
color +
print (python では prnt) +
print_date_tags (python では prnt_date_tags) +
print_datetime_tags (python では prnt_datetime_tags) +
print_y (python では prnt_y) +
print_y_date_tags (python では prnt_y_date_tags) +
print_y_datetime_tags (python では prnt_y_datetime_tags) +
log_print
| フック
+97 -19
View File
@@ -970,11 +970,36 @@ By default, the screen is divided up into the following areas:
| 要素 | 例 | 説明
| input_prompt | `[@Flashy]` | 入力プロンプト、irc の場合: ニックネームとモード (libera では "+i" モードは不可視状態を意味します)
| away | `(away)` | 離席状態表示
| input_search | `[Search (~ str,msg)]` | 検索インジケータ ("`~`": 大文字小文字を区別しない、"`==`": 大文字小文字を区別する、"`str`": 検索文字列、"`regex`": 検索正規表現、"`msg`": メッセージ部分から検索、"`pre`": プレフィックス部分から検索、"`pre\|msg`": プレフィックス部分とメッセージ部分から検索)
// TRANSLATION MISSING
| input_search | `[Search lines (~ str,msg)]` | Search indicator (see below).
| input_paste | `[Paste 7 lines ? [ctrl-y] Yes [ctrl-n] No]` | 行をペーストする場合にユーザへ行われる質問
| input_text | `hi peter!` | 入力テキスト
|===
// TRANSLATION MISSING
There are two search modes:
// TRANSLATION MISSING
* search in lines, for example `[Search lines (~ str,msg)]`, with the following info:
** `~`: 大文字小文字を区別しない
** `==`: 大文字小文字を区別する
** `str`: 検索文字列
** `regex`: 検索正規表現
** `msg`: メッセージ部分から検索
** `pre`: プレフィックス部分から検索
** `pre\|msg`: プレフィックス部分とメッセージ部分から検索
// TRANSLATION MISSING
* search in commands history, for example `[Search command (~ str,local)]`,
with the following info:
** `~`: 大文字小文字を区別しない
** `==`: 大文字小文字を区別する
** `str`: 検索文字列
** `regex`: 検索正規表現
// TRANSLATION MISSING
** `local`: search in buffer local history
// TRANSLATION MISSING
** `global`: search in global history.
ニックネームリスト (_nicklist_) バーは以下の初期要素を持っています:
[width="100%",cols="^3,^3,9",options="header"]
@@ -1077,6 +1102,13 @@ IRC 等のプラグインでは、以下の色コードと属性を利用でき
| kbd:[Ctrl+c], kbd:[c],
kbd:[xx], kbd:[,],
kbd:[yy] | テキスト表示色を `xx` に、背景色を `yy` に (以下の色リストを参照)
// TRANSLATION MISSING
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx] | Text color `xxxxxx` (RGB as hexadecimal, for example `FF0000` for red).
// TRANSLATION MISSING
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx], kbd:[,],
kbd:[yyyyyy] | Text color `xxxxxx` and background `yyyyyy` (RGB as hexadecimal).
| kbd:[Ctrl+c], kbd:[i] | テキストをイタリック体に
| kbd:[Ctrl+c], kbd:[o] | テキスト表示色と属性をリセット
| kbd:[Ctrl+c], kbd:[v] | テキストを反転 (テキスト表示色と背景色の入れ替え)
@@ -1084,8 +1116,9 @@ IRC 等のプラグインでは、以下の色コードと属性を利用でき
|===
[NOTE]
同じコードで (色コードを入力せずに kbd:[Ctrl+c], kbd:[c]
を使うことで) 属性をキャンセルすることができます。
// TRANSLATION MISSING
The same code (without number for kbd:[Ctrl+c], kbd:[c] and kbd:[Ctrl+c], kbd:[d])
can be used to stop the attribute.
kbd:[Ctrl+c], kbd:[c] 用の色コード:
@@ -1681,6 +1714,8 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
| キー | 説明 | コマンド
| kbd:[Ctrl+c], kbd:[b] | テキストを太字化するコードの挿入 | `+/input insert \x02+`
| kbd:[Ctrl+c], kbd:[c] | テキストに色をつけるコードの挿入 | `+/input insert \x03+`
// TRANSLATION MISSING
| kbd:[Ctrl+c], kbd:[d] | Insert code for colored text (RGB color, as hexadecimal). | `+/input insert \x04+`
| kbd:[Ctrl+c], kbd:[i] | テキストをイタリック体にするコードの挿入 | `+/input insert \x1D+`
| kbd:[Ctrl+c], kbd:[o] | テキスト色のリセットを行うコードの挿入 | `+/input insert \x0F+`
| kbd:[Ctrl+c], kbd:[v] | テキスト色の反転を行うコードの挿入 | `+/input insert \x16+`
@@ -1717,8 +1752,10 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| キー | 説明 | コマンド
| kbd:[Ctrl+r] | バッファ中の履歴からテキスト検索 (<<key_bindings_search_context,検索モード用のキー>>を参照) | `+/input search_text_here+`
| kbd:[Ctrl+s], kbd:[Ctrl+u] | すべてのバッファに未読マークをセット | `+/allbuf /buffer set unread+`
// TRANSLATION MISSING
| kbd:[Ctrl+r] | Search for text in commands history (see <<key_bindings_histsearch_context,keys for context "histsearch">>). | `+/input search_history+`
// TRANSLATION MISSING
| kbd:[Ctrl+s] | Search for text in buffer lines (see <<key_bindings_search_context,keys for context "search">>). | `+/input search_text_here+`
// TRANSLATION MISSING
| kbd:[Ctrl+x] | Switch current buffer if buffers are merged with same number, for example switch to another IRC server buffer. | `+/buffer switch+`
| kbd:[Alt+x] | マージされたバッファに再ズーム (kbd:[Alt+x]: 全てのマージされたバッファを表示) | `+/buffer zoom+`
@@ -1745,6 +1782,7 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
| kbd:[Alt+n] | 次のハイライトまでスクロール | `+/window scroll_next_highlight+`
| kbd:[Alt+p] | 前のハイライトまでスクロール | `+/window scroll_previous_highlight+`
| kbd:[Alt+u] | バッファを最初の未読行までスクロール | `+/window scroll_unread+`
| kbd:[Alt+Shift+U] | すべてのバッファに未読マークをセット | `+/allbuf /buffer set unread+`
| kbd:[Alt+<] | バッファ訪問履歴で前のバッファに移動 | `+/buffer jump prev_visited+`
| kbd:[Alt+>] | バッファ訪問履歴で次のバッファに移動 | `+/buffer jump next_visited+`
| kbd:[Alt+/] | 最後に表示したバッファに移動 (バッファ移動前に表示していたウィンドウ) | `+/buffer jump last_displayed+`
@@ -1832,17 +1870,20 @@ They can be changed and new ones can be added with the <<command_weechat_key,/ke
[[key_bindings_search_context]]
=== Search context
以下のキーは「検索」検索モード (バッファ内のテキスト検索用に
kbd:[Ctrl+r] が押された状態) でのみ有効です。
// TRANSLATION MISSING
These keys are used in context "search" (when kbd:[Ctrl+s] is pressed to search
text in buffer lines).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| キー | 説明 | コマンド
| kbd:[Ctrl+r] | 検索タイプを切り替え: 文字列 (デフォルト)、正規表現 | `+/input search_switch_regex+`
| kbd:[Ctrl+x] | 検索タイプを切り替え: 文字列 (デフォルト)、正規表現 | `+/input search_switch_regex+`
| kbd:[Alt+c] | 大文字小文字を区別して検索 | `+/input search_switch_case+`
| kbd:[Tab] | 検索範囲: メッセージ (デフォルト)、プレフィックス、プレフィックスとメッセージ | `+/input search_switch_where+`
| kbd:[↑] | 前のキーワードで検索 | `+/input search_previous+`
| kbd:[] | のキーワードで検索 | `+/input search_next+`
| kbd:[Ctrl+r] +
kbd:[] | のキーワードで検索 | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | 次のキーワードで検索 | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | 現在の位置で検索を終了 | `+/input search_stop_here+`
@@ -1850,6 +1891,37 @@ kbd:[Ctrl+r] が押された状態) でのみ有効です。
| kbd:[Ctrl+q] | Stop search and reset scroll to pre-text search state. | `+/input search_stop+`
|===
// TRANSLATION MISSING
[[key_bindings_histsearch_context]]
=== History search context
// TRANSLATION MISSING
These keys are used in context "histsearch" (when kbd:[Ctrl+r] is pressed to
search text in commands history).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| キー | 説明 | コマンド
| kbd:[Ctrl+x] | 検索タイプを切り替え: 文字列 (デフォルト)、正規表現 | `+/input search_switch_regex+`
| kbd:[Alt+c] | 大文字小文字を区別して検索 | `+/input search_switch_case+`
// TRANSLATION MISSING
| kbd:[Tab] | Switch search in: buffer local history (default), global history. | `+/input search_switch_where+`
// TRANSLATION MISSING
| kbd:[Ctrl+r] +
kbd:[↑] | Search in previous (older) history entries. | `+/input search_previous+`
// TRANSLATION MISSING
| kbd:[Ctrl+s] +
kbd:[↓] | Search in next (newer) history entries. | `+/input search_next+`
// TRANSLATION MISSING
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Stop search and use matching input. | `+/input search_stop_here+`
// TRANSLATION MISSING
| kbd:[Ctrl+o] | Execute the command found in history and insert the next one in the command line. | `+/input history_use_get_next+`
// TRANSLATION MISSING
| kbd:[Ctrl+q] | Stop search and restore input to its initial value. | `+/input search_stop+`
|===
// TRANSLATION MISSING
[[key_bindings_cursor_context]]
=== Cursor context
@@ -1938,10 +2010,10 @@ These mouse actions are possible only if mouse is enabled with key kbd:[Alt+m]
| kbd:[■ □ □] | - | chat: /list buffer | Select line in /list buffer. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
// TRANSLATION MISSING
| kbd:[□ □ ■] | - | chat: /list buffer | Join IRC channel on selected line. | `+hsignal:irc_list_mouse+`
| kbd:[▲] | - | チャット: スクリプトバッファ | スクリプトバッファを 5 行上方向にスクロール | `+/script -up 5+`
| kbd:[▼] | - | チャット: スクリプトバッファ | スクリプトバッファで 5 行下方向にスクロール | `+/script -down 5+`
| kbd:[■ □ □] | - | チャット: スクリプトバッファ | スクリプトバッファで行選択 | `+/script -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | チャット: スクリプトバッファ | スクリプトのインストール `+/ 削除 | /script -go ${_chat_line_y};/script installremove ${script_name_with_extension}+`
| kbd:[▲] | - | チャット: スクリプトバッファ | スクリプトバッファを 5 行上方向にスクロール | `+/script up 5+`
| kbd:[▼] | - | チャット: スクリプトバッファ | スクリプトバッファで 5 行下方向にスクロール | `+/script down 5+`
| kbd:[■ □ □] | - | チャット: スクリプトバッファ | スクリプトバッファで行選択 | `+/script go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | チャット: スクリプトバッファ | スクリプトのインストール `+/ 削除 | /script go ${_chat_line_y};/script installremove ${script_name_with_extension}+`
| kbd:[■ □ □] | 上 / 左 | バッファリスト | 指定したバッファを下の番号に移動 | `+buflist_mouse+` シグナル
| kbd:[■ □ □] | 下 / 右 | バッファリスト | 指定したバッファを上の番号に移動 | `+buflist_mouse+` シグナル
| kbd:[■ □ □] | - | バッファリスト | 指定したバッファに切り替える (現在のバッファを指定した場合、バッファ切り替え履歴で前のバッファに切り替える) | `+buflist_mouse+` シグナル
@@ -2068,8 +2140,8 @@ These keys and actions are used on the script buffer (see <<script_manager,scrip
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|===
| Key | Action ^(1)^ | Description | Command
| kbd:[↑] | | Move one line up. | `+/script -up+`
| kbd:[↓] | | Move one line down. | `+/script -down+`
| kbd:[↑] | | Move one line up. | `+/script up+`
| kbd:[↓] | | Move one line down. | `+/script down+`
| kbd:[PgUp] | | Move one page up. | `+/window page_up+`
| kbd:[PgDn] | | Move one page down. | `+/window page_down+`
| kbd:[Alt+i] | `i` | Install script. | `+/script install+`
@@ -5343,7 +5415,7 @@ type:
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer、buffer_name、y、date、date_printed、str_time、tags、notify_level、highlight、prefix、message
| line | message | buffer、buffer_name、y、date、date_usec、date_printed、date_usec_printed、str_time、tags、notify_level、highlight、prefix、message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
@@ -5503,7 +5575,11 @@ _weechat_print_ 修飾子では、メッセージタグを使う変数 (下の
| buffer_type | string | バッファ型 ("formatted" または "free")
| y | string | 自由内容バッファの行番号 (≥ 0)、-1 はフォーマット済みバッファ用
| date | string | 行の日付 (タイムスタンプ)
// TRANSLATION MISSING
| date_usec | string | Microseconds of line date.
| date_printed | string | 行が表示される日付 (タイムスタンプ).
// TRANSLATION MISSING
| date_usec_printed | string | Microseconds of date when line was displayed.
| str_time | string | 表示に使う日付、色コードを含めることも可能
| tags | string | メッセージのタグ (文字列の最初と最後にコンマが追加されます)
| displayed | string | "1" の場合は表示、"0" の場合は非表示
@@ -5545,7 +5621,8 @@ _weechat_print_ 修飾子では、メッセージタグを使う変数 (下の
|===
| 変数 | 型 | 説明
| buffer | pointer | メッセージが表示されたバッファ
| tg_date | string | メッセージの日付と時間 (書式: `YYYY-MM-DD hh:mm:ss`)
// TRANSLATION MISSING
| tg_date | string | メッセージの日付と時間 (書式: `%FT%T.%f`, see link:weechat_plugin_api.ja.html#_util_strftimeval[WeeChat plugin API reference / util_strftimeval ^↗^^]).
| tg_displayed | string | 表示された場合 "1"、フィルタされた場合 "0"
| tg_highlight | string | ハイライトされた場合 "1"、それ以外は "0"
| tg_prefix | string | プレフィックス
@@ -5617,7 +5694,8 @@ _weechat_print_ 修飾子では、メッセージタグを使う変数 (下の
|===
| 変数 | 型 | 説明
| tg_remaining_calls | string | 残り呼び出し回数
| tg_date | string | 現在の日付および時間 (書式: `YYYY-MM-DD hh:mm:ss`)
// TRANSLATION MISSING
| tg_date | string | 現在の日付および時間 (書式: `%FT%T.%f`, see link:weechat_plugin_api.ja.html#_util_strftimeval[WeeChat plugin API reference / util_strftimeval ^↗^^]).
|===
[[trigger_data_config]]
+1 -1
View File
@@ -101,7 +101,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat jest tworzony przez Sébastien Helleu i społeczność (pełna lista dostępna
jest w pliku AUTHORS.adoc).
Copyright (C) 2003-2023 {author}
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
+49 -41
View File
@@ -6,7 +6,7 @@
Tłumaczenie:
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2022
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2024
[[general]]
== Ogólne
@@ -582,14 +582,30 @@ Jeśli używasz aplikacji Terminal na macOS włącz opcję
"Use option as meta key" w menu Settings/Keyboard. Następnie możesz używać klawisza
kbd:[Option] jako klawisza meta.
// TRANSLATION MISSING
[[enter_key]]
=== Some keys including Enter are not working, why?
=== Niektóre przyciski w tym Enter nie działają, dlatego?
If you run a WeeChat < 4.0.0 with configuration files created by any
version ≥ 4.0.0, the keys names become invalid and many keys won't work at all. +
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
Jeśli używasz WeeChat < 4.0.0 z plikami konfiguracyjnymi stworzonymi przez dowolną
wers ≥ 4.0.0, nazwy przycisków stały się nieprawidłowe i wiele z nich nie będzie działać. +
Żeby to naprawić zamknij WeeChat, usuń wszystkie sekcje `[key*]` z pliku weechat.conf
i uruchom WeeChat ponownie: przywróci to domyślną konfigurację skrótów klawiszowych.
[[key_f11]]
=== F11 maksymalizuje okno terminala, jak mogę przewijać listę nicków?
Klawisz kbd:[F11] jest często używany przez terminale do maksymalizacji okna, oraz
kbd:[F11]/kbd:[F12] są domyślnie używane przez WeeChat do przewijania listy nicków.
Możesz przypisać inne klawisze, na przykład kbd:[Shift+F11] i kbd:[Shift+F12],
w WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Innym rozwiązaniem jest włączenie obsługi myszy (kbd:[Alt+m]) i przewijanie listy za
pomocą kółka myszy (zobacz pytania na temat <<mouse,obsługi myszy>>).
[[customize_key_bindings]]
=== Jak mogę zmienić przypisania klawiszy?
@@ -621,8 +637,7 @@ komendy w stylu `/123` żeby przejść do bufora #123:
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
// TRANSLATION MISSING
For an easy jump to buffers, you can also install the _go.py_ script:
Dla łatwego przechodzenia między buforami możesz również zainstalować skrypt _go.py_:
----
/script install go.py
@@ -938,15 +953,13 @@ lub grup buforów (jak serwery IRC).
W celu wyłączenia tylko podświetleń wystarczy ustawić ja na 2.
// TRANSLATION MISSING
For the current buffer:
Dla obecnego bufora:
----
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
----
// TRANSLATION MISSING
For all channels on server "libera":
Dla wszystkich kanałów na serwerze "libera":
----
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
@@ -1080,10 +1093,8 @@ W celu zmniejszenia używanej pamięci możesz zastosować się do poniższych r
Możesz skorzystać z tych samych porad jak dla <<memory_usage,memory>>, oraz tych:
// TRANSLATION MISSING
* schowaj pasek "nicklist": `/bar hide nicklist` (key: kbd:[Alt+Shift+N]).
// TRANSLATION MISSING
* Disable "buflist": `/buflist disable` (key: kbd:[Alt+Shift+B]).
* schowaj pasek "nicklist": `/bar hide nicklist` (kbd:[Alt+Shift+N]).
* wyłącz "buflist": `/buflist disable` (kbd:[Alt+Shift+B]).
* usuń wyświetlanie sekund w czasie na pasku statusu:
`+/set weechat.look.item_time_format "%H:%M"+` (domyślna wartość)
* wyłącz automatyczne sprawdzanie poprawności wpisywanych słów w linii poleceń (o ile je włączyłeś):
@@ -1111,9 +1122,8 @@ Wyłącz odpowiedzi na wszystkie zapytania CTCP:
/set irc.ctcp.ping ""
----
// TRANSLATION MISSING
With WeeChat < 4.1.0, other CTCP queries were replied by default and must be
disabled as well:
Dla WeeChat < 4.1.0, automatyczne odpowiedzi są również domyślnie wysyłane dla innch zapytań CTCP i muszą zostać
również wyłączone:
----
/set irc.ctcp.finger ""
@@ -1154,34 +1164,32 @@ w _sec.conf_ za pomocą komendy `/secure`).
Przejrzyj link:weechat_user.pl.html#files_and_directories[Poradnik użytkownika / Pliki i foldery ^↗^^],
gdzie znajdziesz więcej informacji o plikach konfiguracyjnych.
// TRANSLATION MISSING
[[move_to_another_device]]
=== I want to move my WeeChat to another device and keep my config, what should I copy?
=== Chcę przenieść WeeChat na inne urządzenie i zachować swoją konfigurację, co powinienem skompilować?
First check directories used by WeeChat with this command: `/debug dirs`. +
Directories home/config and home/data must be copied (all files and sub-directories).
Najpierw sprawdź katalogi używane przez WeeChat za pomocą polecenia: `/debug dirs`. +
Katalogi home/config i home/data muszą zostać skopiowane (wszystkie pliki i podkatalogi).
For example if you're using XDG directories (default with WeeChat ≥ 3.2),
the directories should be `$HOME/.config/weechat` and `$HOME/.local/share/weechat`. +
If you're using a single directory (default with WeeChat < 3.2), the directory
should be `$HOME/.weechat`.
Na przykład jeśli używasz katalogów XDG (domyślnie dla WeeChat ≥ 3.2), katalogi te to
`$HOME/.config/weechat` i `$HOME/.local/share/weechat`. +
Jeśli używasz pojedynczego katalogu (domyślne dla WeeChat < 3.2) jest to katalog
`$HOME/.weechat`.
[IMPORTANT]
The WeeChat version on the new device must be greater than or equal to the version
on the initial device. +
Downgrading WeeChat configuration is *NOT SUPPORTED* and can break it,
leading to unusable WeeChat.
Wersja WeeChat na nowym urządzeniu musi być wyższa lub taka sama jak na obecnym. +
Przenoszenie konfiguracji do starszej wersji WeeChat *NIE JEST WSPIERANE* i może ją zepsuć,
prowadząć do niestabilnego działania WeeChat.
Steps:
Kroki:
. Quit Weechat: `/quit` (or `/upgrade -quit` if you want to resume the session,
which includes content of all buffers).
. Copy all directories, sub-directories and files to the new device, keeping
same names and permissions.
. Optional: copy any file outside these directories that you refer to in your
configuration (it's not recommended to use files outside WeeChat directories).
. Start WeeChat on the new device: `weechat` (or `weechat --upgrade` if you
saved the session).
. Zamknij Weechat: `/quit` (lub `/upgrade -quit` jeśli chcesz przywrócić sesję,
co zawiera zawartość wszystkich buforów).
. Skopiuj wszystkie katalogi, podkatalogi i pliki na nowe urządzenie, zachowując ich
nazwy i uprawnienia.
. Opcjonalne: skopiuj dowolne pliki z poza tych katalogów, do których odnosisz się w swojej
konfiguracji (nie zaleca się używania plików z poza katalogów WeeChat).
. Uruchom WeeChat na nowym urządzeniu: `weechat` (lub `weechat --upgrade` jeśli zapisywałeś
sesje).
[[development]]
== Rozwój
+1 -1
View File
@@ -6,7 +6,7 @@
Tłumaczenie:
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2022
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2024
[[start]]
== Uruchamianie WeeChat
+3 -1
View File
@@ -6,7 +6,7 @@
Tłumaczenie:
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2022
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2024
Ten dokument opisuje klienta rozmów WeeChat, który jest częścią WeeChat.
@@ -657,8 +657,10 @@ Lista funkcji w API skryptów:
color +
print (dla pythona: prnt) +
print_date_tags (dla pythona: prnt_date_tags) +
print_datetime_tags (dla pythona: prnt_datetime_tags) +
print_y (dla pythona: prnt_y) +
print_y_date_tags (dla pythona: prnt_y_date_tags) +
print_y_datetime_tags (dla pythona: prnt_y_datetime_tags) +
log_print
| hooks
+148 -129
View File
@@ -6,7 +6,7 @@
Tłumaczenie:
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2022
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2024
Ten dokument opisuje klienta rozmów WeeChat, będącego częścią WeeChat.
@@ -248,8 +248,7 @@ $ make install
Opcje mogą zostać przekazane do CMake, format `-DOPCJA=WARTOŚĆ`.
// TRANSLATION MISSING
List of available options:
Lista dostępnych opcji:
[width="100%",cols="3m,3,3m,10",options="header"]
|===
@@ -303,9 +302,8 @@ List of available options:
| ENABLE_GUILE | `ON`, `OFF` | ON
| Kompilacja <<scripting_plugins,wtyczki guile>> (Scheme).
// TRANSLATION MISSING
| ENABLE_HEADLESS | `ON`, `OFF` | ON
| Compile headless binary.
| Kompilacja pliku binarnego w trybie headless.
| ENABLE_IRC | `ON`, `OFF` | ON
| Kompilacja <<irc,wtyczki IRC>>.
@@ -365,9 +363,8 @@ List of available options:
| ENABLE_XFER | `ON`, `OFF` | ON
| Kompilacja <<xfer,wtyczki xfer>>.
// TRANSLATION MISSING
| ENABLE_ZSTD | `ON`, `OFF` | ON
| Enable https://facebook.github.io/zstd/[Zstandard ^↗^^] compression.
| Włącza kompresje https://facebook.github.io/zstd/[Zstandard ^↗^^].
| ENABLE_TESTS | `ON`, `OFF` | OFF
| Kompiluje testy.
@@ -921,11 +918,30 @@ Pasek _input_ posiada następujące domyślne elementy:
| Element | Przykład | Opis
| input_prompt | `[@Flashy(i)]` | Input prompt, dla irc: nick i tryby (tryb "+i" oznacza niewidzialny na libera).
| away | `(away)` | Wskaźnik nieobecności.
| input_search | `[Szukam (~ str,msg)]` | Wskaźnik wyszukiwania ("`~`": wielkość liter ma znaczenie, "`==`": wielkość liter nie ma znaczenia, "`str`": wyszukiwanie ciągu, "`regex`": wyszukiwanie wyrażenia regularnego, "`msg`": wyszukiwanie w wiadomościach, "`pre`": wyszukiwanie w prefiksach, "`pre\|msg`": wyszukiwanie w prefiksach i wiadomościach).
| input_search | `[Search lines (~ str,msg)]` | Wskaźnik wyszukiwania (zobacz poniżej).
| input_paste | `[Wkleić 7 linii ? [ctrl-y] Tak [ctrl-n] Nie]` | Pyta użytkownika podczas wklejania kilku linii tekstu.
| input_text | `hi peter!` | Wprowadzony tekst.
|===
Dostępne są dwa tryby wyszukiwania:
* wyszukiwanie w liniach, na przydład `[Search lines (~ str,msg)]`, z następującymi informacjami:
** `~`: wielkość liter ma znaczenie
** `==`: wielkość liter nie ma znaczenia
** `str`: wyszukiwanie ciągu
** `regex`: wyszukiwanie wyrażenia regularnego
** `msg`: wyszukiwanie w wiadomościach
** `pre`: wyszukiwanie w prefiksach
** `pre\|msg`: wyszukiwanie w prefiksach i wiadomościach)
* wyszukiwanie w historii komend, na przydład `[Search command (~ str,local)]`,
z następującymi informacjami:
** `~`: wielkość liter ma znaczenie
** `==`: wielkość liter nie ma znaczenia
** `str`: wyszukiwanie ciągu
** `regex`: wyszukiwanie wyrażenia regularnego
** `local`: wyszukiwanie w lokalnej historii bufora
** `global`: wyszukiwanie w globalnej historii.
Pasek _nicklist_ posiada następujące domyślne elementy:
[width="100%",cols="^3,^3,9",options="header"]
@@ -946,10 +962,8 @@ Inne dostępne elementy (nie używane domyślnie w paskach):
| buffer_short_name | `#test` | Skrócona nazwa obecnego buforu.
| buflist2 | `1.weechat` | Lista buforów, drugi element paska (zobacz opcję <<option_buflist.look.use_items,buflist.look.use_items>>).
| buflist3 | `1.weechat` | Lista buforów, trzeci element paska (zobac opcję <<option_buflist.look.use_items,buflist.look.use_items>>).
// TRANSLATION MISSING
| buflist4 | `1.weechat` | List of buffers, fourth bar item (see option <<option_buflist.look.use_items,buflist.look.use_items>>).
// TRANSLATION MISSING
| buflist5 | `1.weechat` | List of buffers, fifth bar item (see option <<option_buflist.look.use_items,buflist.look.use_items>>).
| buflist4 | `1.weechat` | Lista buforów, czwarty element paska (zobacz opcję <<option_buflist.look.use_items,buflist.look.use_items>>).
| buflist5 | `1.weechat` | Lista buforów, piąty element paska (zobacz opcję <<option_buflist.look.use_items,buflist.look.use_items>>).
| fset | `+buflist.look.sort: …+` | Pomoc dla obecnie wybranej opcji w buforze fset.
| irc_channel | `#test` | Nazwa bieżącego kanału IRC.
| irc_host | `+user@host.com+` | Aktualny host IRC.
@@ -1010,21 +1024,26 @@ Dla niektórych wtyczek jak IRC, można użyć kolorów i atrybutów w następuj
[width="100%",cols="1,2",options="header"]
|===
| Klawisz | Opis
| kbd:[Ctrl+c], kbd:[b] | pogrubiony tekst
| kbd:[Ctrl+c], kbd:[b] | Pogrubiony tekst
| kbd:[Ctrl+c], kbd:[c],
kbd:[xx] | kolor tekstu `xx` (zgodnie z poniższą listą kolorów)
kbd:[xx] | Kolor tekstu `xx` (zgodnie z poniższą listą kolorów)
| kbd:[Ctrl+c], kbd:[c],
kbd:[xx], kbd:[,],
kbd:[yy] | kolor tekstu `xx` i tła `yy` (zgodnie z poniższą listą kolorów)
| kbd:[Ctrl+c], kbd:[i] | pochyły tekst
| kbd:[Ctrl+c], kbd:[o] | wyłącza kolory i atrybuty
| kbd:[Ctrl+c], kbd:[v] | odwróć video (przywraca kolor tekstu i tła)
| kbd:[Ctrl+c], kbd:[_] | podkreślony tekst
kbd:[yy] | Kolor tekstu `xx` i tła `yy` (zgodnie z poniższą listą kolorów)
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx] | Kolor tekstu `xxxxxx` (RGB jako wartości szesnastkowe, na przykład `FF0000` dla czerwonego).
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx], kbd:[,],
kbd:[yyyyyy] | Kolor tekstu `xxxxxx` i tła `yyyyyy` (RGB jako wartości szesnastkowe).
| kbd:[Ctrl+c], kbd:[i] | Kursywa
| kbd:[Ctrl+c], kbd:[o] | Wyłącza kolory i atrybuty
| kbd:[Ctrl+c], kbd:[v] | Odwróć video (przywraca kolor tekstu i tła)
| kbd:[Ctrl+c], kbd:[_] | Podkreślony tekst
|===
[NOTE]
Ten sam sktót (bez numeru dla kbd:[Ctrl+c], kbd:[c]) może zostać użyty do zatrzymania
atrybutu.
Te same skróty (bez numeru kbd:[Ctrl+c], kbd:[c] i kbd:[Ctrl+c], kbd:[d])
mogą zostać użyte dla zatrzymania atrybutu.
Kody kolorów dla kbd:[Ctrl+c], kbd:[c]:
@@ -1281,7 +1300,7 @@ Linie wyświetlane w formatowanych buforach maja następujące pola:
| tagi | Przez `/debug tags` | Tagi powiązane z linią (zobacz <<lines_tags,tagi linii>>).
|===
Wyświetlanie linni może być zmienione za pomoćą wielu opcji wyglądu
Wyświetlanie linni może być zmienione za pomocą wielu opcji wyglądu
(_pass:[weechat.look.*]_) oraz koloru (_pass:[weechat.color.chat_*]_).
[[lines_tags]]
@@ -1387,9 +1406,8 @@ WeeChat i jego wtyczki domyślnie tworzą następujące zmienne:
| filter
| dowolny ciąg
// TRANSLATION MISSING
| Filter defined on some buffers like `/fset`, `/list` (irc), `/server raw` (irc)
and `/script`.
| Filtr zdefiniowany w niektórych buforach jak `/fset`, `/list` (irc), `/server raw` (irc)
i `/script`.
| host
| dowolny ciąg
@@ -1472,10 +1490,9 @@ External plugins and scripts can define and use other local variables.
[[buflist]]
=== Lista buforów
// TRANSLATION MISSING
Wtyczka buflist wyświetla listę buforów w elemencie paska nazwanym "buflist"
(four other bar items "buflist2", "buflist3", "buflist4" and "buflist5" are
available as well). +
(cztery dodatkowe elementy "buflist2", "buflist3", "buflist4" i "buflist5"
również dostępne). +
Domyślny pasek "buflist" jest tworzony podczas uruchomieina z włączoną wtyczką.
[[buflist_commands]]
@@ -1499,21 +1516,21 @@ Opcje:
include::{autogendir}/autogen_user_options.pl.adoc[tag=buflist_options]
// TRANSLATION MISSING
[[cursor_mode]]
=== Cursor mode
=== Tryb kursora
The cursor mode allows you to move freely the cursor anywhere on screen, in chat
area and bars, and lets you perform actions at the given position. +
You can enter in cursor mode either with the command `/cursor` or with a mouse
middle click (mouse must have been enabled with key kbd:[Alt+m] or command
`/mouse enable`).
Tryb kursora pozwala na przesuwanie kurdsora w dowolne miejsce na ekranie,
w obszarze czatu i paskach, i pozwala na wykonywanie akcji w danym miejscu. +
Możesz wejść w tryb kursora za pomocą komendy `/cursor` lub za pomocą środkowego
przycisku myszy (obsługa myszy musi być włączona za pomocą kbd:[Alt+m] lub
komendy `/mouse enable`).
Typical use is to quote messages (chat area) or interact with nicks (nicklist bar).
Typowym użyciem jest cytowanie wiadomości (obszar czatu) i interakcja z nickami
(pasek z listą nicków).
See command <<command_weechat_cursor,/cursor>> and
<<key_bindings_cursor_context,key bindings in cursor context>> for the list
of actions you can perform in this mode.
Zobacz komendę <<command_weechat_cursor,/cursor>> i
<<key_bindings_cursor_context,skróty klawiszowe w trybie kursora>> dla listy akcji
dostępnych w tym trybie.
[[key_bindings]]
== Skróty klawiszowe
@@ -1590,6 +1607,7 @@ Można je zmienić oraz dodać nowe za pomocą komendy <<command_weechat_key,/ke
| Skrót | Opis | Komenda
| kbd:[Ctrl+c], kbd:[b] | Wstaw kod dla pogrubionego tekstu. | `+/input insert \x02+`
| kbd:[Ctrl+c], kbd:[c] | Wstaw kod dla kolorowego tekstu. | `+/input insert \x03+`
| kbd:[Ctrl+c], kbd:[d] | Wstaw kod dla kolorowego tekstu (kolor RGB jaki liczba szesnastkowa). | `+/input insert \x04+`
| kbd:[Ctrl+c], kbd:[i] | Wstaw kod dla pochyłego tekstu. | `+/input insert \x1D+`
| kbd:[Ctrl+c], kbd:[o] | Wstaw kod dla zresetowania koloru. | `+/input insert \x0F+`
| kbd:[Ctrl+c], kbd:[v] | Wstaw kod dla odwrócenia koloru. | `+/input insert \x16+`
@@ -1608,14 +1626,13 @@ Można je zmienić oraz dodać nowe za pomocą komendy <<command_weechat_key,/ke
| kbd:[Ctrl+↓] | Pokaż następną komendę/wiadomość w historii globalnej (wspólnej dla wszystkich buforów). | `+/input history_global_next+`
|===
// TRANSLATION MISSING
[[key_bindings_cmdline_system]]
==== System
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Skrót | Opis | Komenda
| kbd:[Ctrl+z] | Suspend WeeChat process. | `+/sys suspend+`
| kbd:[Ctrl+z] | Uśpij proces WeeChat. | `+/sys suspend+`
|===
[[key_bindings_buffers]]
@@ -1624,8 +1641,8 @@ Można je zmienić oraz dodać nowe za pomocą komendy <<command_weechat_key,/ke
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Skrót | Opis | Komenda
| kbd:[Ctrl+r] | Wyszukaj tekst w historii bufora (zobacz <<key_bindings_search_context,skróty dla kontekstu wyszukiwania>>). | `+/input search_text_here+`
| kbd:[Ctrl+s], kbd:[Ctrl+u] | Ustaw znacznik nieprzeczytania we wszystkich buforach. | `+/allbuf /buffer set unread+`
| kbd:[Ctrl+r] | Szukaj tekstu w historii komend (zobacz <<key_bindings_histsearch_context,skróty w kontekscie "histsearch">>). | `+/input search_history+`
| kbd:[Ctrl+s] | Szukaj tekstu w liniach bufora (zobacz <<key_bindings_search_context,skróty w kontekscie "search">>). | `+/input search_text_here+`
| kbd:[Ctrl+x] | Przełącz obecny bufor jeśli bufory są połączone pod tym samym numerem, na przykład przełącz na bufor innego serwera IRC. | `+/buffer switch+`
| kbd:[Alt+x] | Pokaż wybrany z połączonych buforów (naciśnij kbd:[Alt+x] ponownie: wyświetl wszystkie połączone bufory). | `+/buffer zoom+`
| kbd:[PgUp] | Przewiń jedną stronę w górę w historii bufora. | `+/window page_up+`
@@ -1651,6 +1668,7 @@ Można je zmienić oraz dodać nowe za pomocą komendy <<command_weechat_key,/ke
| kbd:[Alt+n] | Przewiń do następnego powiadomienia. | `+/window scroll_next_highlight+`
| kbd:[Alt+p] | Przewiń do poprzedniego powiadomienia. | `+/window scroll_previous_highlight+`
| kbd:[Alt+u] | Przewiń do pierwszej nieprzeczytanej linii w buforze. | `+/window scroll_unread+`
| kbd:[Alt+Shift+U] | Ustaw znacznik nieprzeczytania we wszystkich buforach. | `+/allbuf /buffer set unread+`
| kbd:[Alt+<] | Przełącz na poprzedni bufor z listy odwiedzonych buforów. | `+/buffer jump prev_visited+`
| kbd:[Alt+>] | Przełącz na następny bufor z listy odwiedzonych buforów. | `+/buffer jump next_visited+`
| kbd:[Alt+/] | Przełącz na ostatnio wyświetlony bufor (przed ostatnią zmianą bufora). | `+/buffer jump last_displayed+`
@@ -1725,31 +1743,55 @@ Można je zmienić oraz dodać nowe za pomocą komendy <<command_weechat_key,/ke
|===
[[key_bindings_search_context]]
=== Wyszukiwanie
=== Wyszukiwanie tekstu
Te skróty są używane w kontekście wyszukiwania (kiedy kombinacja kbd:[Ctrl+r]
zostanie wciśnięta w buforze tekstowym).
Te skróty można użyć w kontskście "search" (kiedy kbd:[Ctrl+s] zostało wciśnięte do wyszukiwania
tekstu w liniach bufora).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Skrót | Opis | Komenda
| kbd:[Ctrl+r] | Przełącz rodzaj wyszukiwania: ciąg (domyślne), wyrażenie regularne. | `+/input search_switch_regex+`
| kbd:[Ctrl+x] | Przełącz rodzaj wyszukiwania: ciąg (domyślne), wyrażenie regularne. | `+/input search_switch_regex+`
| kbd:[Alt+c] | Przełącz dopasowywanie wielości liter podczas wyszukiwania. | `+/input search_switch_case+`
| kbd:[Tab] | Przełącz miejsce wyszukiwania: wiadomości (domyślne), prefiksy, prefiksy + wiadmości. | `+/input search_switch_where+`
| kbd:[↑] | Poprzednie wystąpienie. | `+/input search_previous+`
| kbd:[] | Następne wystąpienie. | `+/input search_next+`
| kbd:[Ctrl+r] +
kbd:[] | Poprzednie wystąpienie. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Następne wystąpienie. | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Zatrzymaj wyszukiwanie na obecnej pozycji. | `+/input search_stop_here+`
| kbd:[Ctrl+q] | Zatrzymaj wyszukiwanie i przywróć ekran do stanu z przed wyszukiwania. | `+/input search_stop+`
|===
[[key_bindings_histsearch_context]]
=== Wyszukiwanie w historii komend
Te skróty można użyć w kontskście "histsearch" (kiedy kbd:[Ctrl+r] zostało wciśnięte do wyszukiwania
tekstu w historii komend).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Skrót | Opis | Komenda
| kbd:[Ctrl+x] | Przełącz rodzaj wyszukiwania: ciąg (domyślne), wyrażenie regularne. | `+/input search_switch_regex+`
| kbd:[Alt+c] | Przełącz dopasowywanie wielości liter podczas wyszukiwania. | `+/input search_switch_case+`
| kbd:[Tab] | Przełącz przeszukiwanie w: lokalnej histori (domyślne), historia globalna. | `+/input search_switch_where+`
| kbd:[Ctrl+r] +
kbd:[↑] | Szukaj we wcześniejszych (starszych) wpisach w historii. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Szukaj w następnych (nowszych) wpisach w historii. | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Zatrzymaj wyszukiwanie i użyj znalezionej komendy. | `+/input search_stop_here+`
| kbd:[Ctrl+o] | Wykonaj komende znaleziona w historii i wstaw kolejna do linii poleceń. | `+/input history_use_get_next+`
| kbd:[Ctrl+q] | Zatrzymaj wyszukiwanie i przywróć linię poleceń do początkowej wartości. | `+/input search_stop+`
|===
[[key_bindings_cursor_context]]
=== Kursor
// TRANSLATION MISSING
Te skróty są używane w kontekście kursora (dowolne przemieszczanie kursora na
ekranie), see <<cursor_mode,Cursor mode>>.
ekranie), zobacz <<cursor_mode,tryb kursora>>.
[width="100%",cols="^.^3,^.^2,.^7,.^7",options="header"]
|===
@@ -1758,18 +1800,12 @@ ekranie), see <<cursor_mode,Cursor mode>>.
| kbd:[↓] | - | Przesuń kursor linię niżej. | `+/cursor move down+`
| kbd:[←] | - | Przesuń kursor kolumnę w lewo. | `+/cursor move left+`
| kbd:[→] | - | Przesuń kursor kolumnę w prawo. | `+/cursor move right+`
// TRANSLATION MISSING
| kbd:[Alt+] | - | Move cursor to the first line of the area. | `+/cursor move edge_top+`
// TRANSLATION MISSING
| kbd:[Alt+] | - | Move cursor to the last line of the area. | `+/cursor move edge_bottom+`
// TRANSLATION MISSING
| kbd:[Alt+←] | - | Move cursor to the first column of the area. | `+/cursor move edge_left+`
// TRANSLATION MISSING
| kbd:[Alt+→] | - | Move cursor to the last column of the area. | `+/cursor move edge_right+`
// TRANSLATION MISSING
| kbd:[Alt+Home] | - | Move cursor to the top left corner of the area. | `+/cursor move top_left+`
// TRANSLATION MISSING
| kbd:[Alt+End] | - | Move cursor to the bottom right corner of the area. | `+/cursor move bottom_right+`
| kbd:[Alt+↑] | - | Przesuń kursor do pierwszej linii w obszarze. | `+/cursor move edge_top+`
| kbd:[Alt+] | - | Przesuń kursor do ostatniej linii w obszarze. | `+/cursor move edge_bottom+`
| kbd:[Alt+←] | - | Przesuń kursor do pierwszej kolumny w obszarze. | `+/cursor move edge_left+`
| kbd:[Alt+] | - | Przesuń kursor do ostatniej kolumny w obszarze. | `+/cursor move edge_right+`
| kbd:[Alt+Home] | - | Przesuń kursor w górny lewy róg obszaru. | `+/cursor move top_left+`
| kbd:[Alt+End] | - | Przesuń kursor w dolny prawy róg obszaru. | `+/cursor move bottom_right+`
| kbd:[Alt+Shift+↑] | - | Przesuń kursor obszar do góry. | `+/cursor move area_up+`
| kbd:[Alt+Shift+↓] | - | Przesuń kursor obszar w dół. | `+/cursor move area_down+`
| kbd:[Alt+Shift+←] | - | Przesuń kursor obszar w lewo. | `+/cursor move area_left+`
@@ -1810,23 +1846,17 @@ za pomocą skrótu kbd:[Alt+m] (komenda: `+/mouse toggle+`).
| kbd:[▼] | - | chat: bufor fset | Przewiń pięć linii w dół w buforze fset. | `+/fset -down 5+`
| kbd:[■ □ □] | - | chat: bufor fset | Zaznacz linię b buforze fset. | `+/window ${_window_number};/fset -go ${fset_option_index}+`
| kbd:[□ □ ■] | - | chat: bufor fset | Przełącz (włącz/wyłącz) lub edytuj wartośc opcji. | `+hsignal:fset_mouse+`
// TRANSLATION MISSING
| kbd:[□ □ ■] | left | chat: bufor fset | Zmniejsz wartość zmiennej liczbowej / koloru / enum, ustaw/rozszerz wartośc innego typu. | `+hsignal:fset_mouse+`
// TRANSLATION MISSING
| kbd:[□ □ ■] | right | chat: bufor fset | Zwiększ wartość zmiennej liczbowej / koloru / enum, ustaw/rozszerz wartośc innego typu. | `+hsignal:fset_mouse+`
| kbd:[□ □ ■] | up / down | chat: bufor fset | Zaznacz/odznacz wiele opcji. | `+hsignal:fset_mouse+`
// TRANSLATION MISSING
| kbd:[▲] | - | chat: /list buffer | Move five lines up in /list buffer. | `+/list -up 5+`
// TRANSLATION MISSING
| kbd:[▼] | - | chat: /list buffer | Move five lines down in /list buffer. | `+/list -down 5+`
// TRANSLATION MISSING
| kbd:[] | - | chat: /list buffer | Select line in /list buffer. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
// TRANSLATION MISSING
| kbd:[□ □ ■] | - | chat: /list buffer | Join IRC channel on selected line. | `+hsignal:irc_list_mouse+`
| kbd:[▲] | - | chat: bufor skryptów | Przejdź 5 linii w górę w buforze skryptów. | `+/script -up 5+`
| kbd:[▼] | - | chat: bufor skryptów | Przejdź 5 linii w dół w buforze skryptów. | `+/script -down 5+`
| kbd:[■ □ □] | - | chat: bufor skryptów | Zaznacz linię w buforze skryptów. | `+/script -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat: bufor skryptów | Zainstaluj/usuń skrypt. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[□ □ ■] | lewo | chat: bufor fset | Zmniejsz wartość zmiennej liczbowej / koloru / enum, ustaw/rozszerz wartośc innego typu. | `+hsignal:fset_mouse+`
| kbd:[□ □ ■] | prawo | chat: bufor fset | Zwiększ wartość zmiennej liczbowej / koloru / enum, ustaw/rozszerz wartośc innego typu. | `+hsignal:fset_mouse+`
| kbd:[□ □ ■] | góra / dół | chat: bufor fset | Zaznacz/odznacz wiele opcji. | `+hsignal:fset_mouse+`
| kbd:[▲] | - | chat: /list buffer | Przesuń pięć linii w górę w buforze /list. | `+/list -up 5+`
| kbd:[▼] | - | chat: /list buffer | Przesuń pięć linii w dół w buforze /list. | `+/list -down 5+`
| kbd:[■ □ □] | - | chat: /list buffer | Wybierz linię w buforze /list. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | chat: /list buffer | Wejdź na kanał IRC w zaznaczonej linii. | `+hsignal:irc_list_mouse+`
| kbd:[▲] | - | chat: bufor skryptów | Przejdź 5 linii w górę w buforze skryptów. | `+/script up 5+`
| kbd:[▼] | - | chat: bufor skryptów | Przejdź 5 linii w dół w buforze skryptów. | `+/script down 5+`
| kbd:[■ □ □] | - | chat: bufor skryptów | Zaznacz linię w buforze skryptów. | `+/script go ${_chat_line_y}+`
| kbd:[] | - | chat: bufor skryptów | Zainstaluj/usuń skrypt. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[■ □ □] | góra / lewo | buflist | Przenieś bufor na niższy numer. | Sygnał `+buflist_mouse+`.
| kbd:[■ □ □] | dół / prawo | buflist | Przenieś bufor na wyższy numer. | Sygnał `+buflist_mouse+`.
| kbd:[■ □ □] | - | buflist | Przełącz na bufor (poprzednio odwiedzony bufor, jeśli jest to obecny bufor). | Sygnał `+buflist_mouse+`.
@@ -1849,14 +1879,13 @@ za pomocą skrótu kbd:[Alt+m] (komenda: `+/mouse toggle+`).
|===
[NOTE]
// TRANSLATION MISSING
^(1)^ Buttons: +
kbd:[□ □]: click on left button +
kbd:[□ □]: click on middle button +
kbd:[□ □ ◼]: click on right button +
Wheel: +
kbd:[]: wheel up +
kbd:[▼]: wheel down
^(1)^ Przyciski: +
kbd:[◼ □ □]: kliknięcie lewym przyciskiem +
kbd:[□ □]: kliknięcie środkowym przyciskiem +
kbd:[□ □]: kliknięcie prawym przyciskiem +
Kółko: +
kbd:[▲]: w górę +
kbd:[]: w dół
[[key_bindings_fset_buffer]]
=== Bufor fset
@@ -1875,9 +1904,7 @@ Poniższe skróty i akcje mogą zostać użyte w buforze fset (zobacz <<fset,wty
| kbd:[F11] | `pass:[<]` | Przewiń poziomo w lewo. | `+/fset -left+`
| kbd:[F12] | `pass:[>]` | Przewiń poziomo w prawo. | `+/fset -right+`
| kbd:[Alt+Space] | `t` | Przełącz zmienną boolowską. | `+/fset -toggle+`
// TRANSLATION MISSING
| kbd:[Alt+-] | `-` | Odejmij 1 od wartości liczbowej/koloru/enum, ustaw wartość pozostałych typów. | `+/fset -del -1+`
// TRANSLATION MISSING
| kbd:[Alt++] | `+` | Dodaj 1 do wartości liczbowej/koloru/enum, dodaj to wartości pozostałych typów. | `+/fset -add 1+`
| kbd:[Alt+f], kbd:[Alt+r] | `r` | Zresetuj wartość. | `+/fset -reset+`
| kbd:[Alt+f], kbd:[Alt+u] | `u` | Skasuj wartość. | `+/fset -unset+`
@@ -1906,11 +1933,10 @@ Poniższe skróty i akcje mogą zostać użyte w buforze fset (zobacz <<fset,wty
[NOTE]
^(1)^ Akcja musi zostać wprowadzona z linii poleceń i potwierdzona przez kbd:[Enter].
// TRANSLATION MISSING
[[key_bindings_irc_list_buffer]]
=== IRC /list buffer
=== Bufor IRC /list
These keys and actions are used on the IRC /list buffer (see command <<command_irc_list,/list>>).
Te skróty i akcje mogą zostać użyte w buforze IRC /list (zobacz komendę <<command_irc_list,/list>>).
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|===
@@ -1923,18 +1949,18 @@ These keys and actions are used on the IRC /list buffer (see command <<command_i
| kbd:[Alt+End] | `pass:[>>]` | Przejdź do ostatniej linii. | `+/list -go end+`
| kbd:[F11] | `pass:[<]` | Przewiń poziomo w lewo. | `+/list -left+`
| kbd:[F12] | `pass:[>]` | Przewiń poziomo w prawo. | `+/list -right+`
| kbd:[Ctrl+j] | `j` | Join IRC channel on selected line. | `+/list -join+`
| | `xxx` | Show only channels with "xxx" in name or topic (case insensitive). |
| | `n:xxx` | Show only channels with "xxx" in name (case insensitive). |
| | `t:xxx` | Show only channels with "xxx" in topic (case insensitive). |
| | `u:n` | Show only channels with at least "n" users. |
| | `u:>n` | Show only channels with more than "n" users. |
| | `u:<n` | Show only channels with less than "n" users. |
| | `c:xxx` | Show only channels matching the evaluated condition "xxx", using following variables: name, name2, users, topic. |
| | `s:x,y` | Sort channels by fields x,y (see command <<command_irc_list,/list>>). |
| | `s:` | Reset sort to its default value (see command <<command_irc_list,/list>>). |
| | `$` | Refresh list (run again command <<command_irc_list,/list>>). |
| | `q` | Close buffer. | `+/buffer close+`
| kbd:[Ctrl+j] | `j` | Wejdź na kanał IRC z zaznaczonej linii. | `+/list -join+`
| | `xxx` | Pokaż tylko kanały z "xxx" w nazwie lub temacie (wielkość liter nie jest uwzględniana). |
| | `n:xxx` | Pokaż tylko kanały z "xxx" w nazwie (wielkość liter nie jest uwzględniana). |
| | `t:xxx` | Pokaż tylko kanały z "xxx" w temacie (wielkość liter nie jest uwzględniana). |
| | `u:n` | Pokaż tylko kanały z przynajmniej "n" użytkownikami. |
| | `u:>n` | Pokaż tylko kanały z więcej niż "n" użytkownikami. |
| | `u:<n` | Pokaż tylko kanały z mniej niż "n" użytkownikami. |
| | `c:xxx` | Pokaż tylko kanały pasujące do przetworzonego warunku "xxx", z użyciem następujących zmiennych: name, name2, users, topic. |
| | `s:x,y` | Sortuj kanały po polach x,y (zobacz komendę <<command_irc_list,/list>>). |
| | `s:` | Zresetuj sortowanie do domyślnej wartości (zobacz komendę <<command_irc_list,/list>>). |
| | `$` | Odświerz listę (wykonaj ponownie komendę <<command_irc_list,/list>>). |
| | `q` | Zamknij bufor. | `+/buffer close+`
|===
[NOTE]
@@ -1948,27 +1974,22 @@ Te skróty klawiszowe i akcje mogą zostać użyte w buforze skryptów (zobacz <
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|===
| Skrót | Akcja ^(1)^ | Opis | Komenda
| kbd:[↑] | | Przejdź linię wyżej. | `+/script -up+`
| kbd:[↓] | | Przejdź linię niżej. | `+/script -down+`
| kbd:[↑] | | Przejdź linię wyżej. | `+/script up+`
| kbd:[↓] | | Przejdź linię niżej. | `+/script down+`
| kbd:[PgUp] | | Przewiń stronę do góry. | `+/window page_up+`
| kbd:[PgDn] | | Przewiń stronę w dół. | `+/window page_down+`
| kbd:[Alt+i] | `i` | Zainstaluj skrypt. | `+/script install+`
| kbd:[Alt+r] | `r` | Usuń skrypt. | `+/script remove+`
| kbd:[Alt+l] | `l` | Załaduj skrypt. | `+/script load+`
// TRANSLATION MISSING
| kbd:[Alt+L] | `L` | Reload script. | `+/script reload+`
| kbd:[Alt+L] | `L` | Przeładuj skrypt. | `+/script reload+`
| kbd:[Alt+u] | `u` | Wyładuj skrypt. | `+/script unload+`
| kbd:[Alt+Shift+A] | `A` | Automatycznie ładuj skrypt. | `+/script toggleautoload+`
| kbd:[Alt+h] | `h` | Zablokuj/odblokuj skrypt. | `+/script hold+`
| kbd:[Alt+v] | `v` | Pokarz skrypt. | `+/script show+`
// TRANSLATION MISSING
| | `s:x,y` | Sort scripts by fields x,y (see option <<option_script.look.sort,script.look.sort>>). |
// TRANSLATION MISSING
| | `s:` | Reset sort to its default value (see option <<option_script.look.sort,script.look.sort>>). |
// TRANSLATION MISSING
| | `$` | Refresh list. |
// TRANSLATION MISSING
| | `q` | Close buffer. | `+/buffer close+`
| | `s:x,y` | Sortuj skrypty po polach x,y (zobacz opcję <<option_script.look.sort,script.look.sort>>). |
| | `s:` | Zresetuj sortowanie do domyślnej wartości (zobacz opcję <<option_script.look.sort,script.look.sort>>). |
| | `$` | Odświerza listę. |
| | `q` | Zamyka bufor. | `+/buffer close+`
|===
[NOTE]
@@ -3317,8 +3338,7 @@ Sekcje w pliku _weechat.conf_:
| bar | <<command_weechat_bar,/bar>> +
/set weechat.bar.* | Opcje pasków.
| layout | <<command_weechat_layout,/layout>> | Układy.
// TRANSLATION MISSING
| buffer | <<command_weechat_buffer,/buffer setauto>> | Properties auto-applied on buffers when they are opened.
| buffer | <<command_weechat_buffer,/buffer setauto>> | Właściwości automatycznie nanoszne na bufory podczas otwierania.
| notify | <<command_weechat_buffer,/buffer notify>> | Poziomy powiadomień dla buforów (opcje mogą być dodawane/usuwane w sekcji).
| filter | <<command_weechat_filter,/filter>> | Filtry.
| key | <<command_weechat_key,/key>> | Skróty klawiszowe dla domyślnego kontekstu.
@@ -4196,14 +4216,12 @@ Jeśli chcesz przywrócić standardowe odpowiedzi dla CTCP usuń opcję:
/unset irc.ctcp.version
----
// TRANSLATION MISSING
The CTCP replies are evaluated (see command <<command_weechat_eval,/eval>>) and
the following extra variables are available:
Odpowiedzi CTCP są przetwarzane (zobacz komendę <<command_weechat_eval,/eval>>),
można użyć następujących zmiennych:
[width="100%",cols="2,4,8",options="header"]
|===
// TRANSLATION MISSING
| Variable | Opis | Wartość/Przykład
| Zmienna | Opis | Wartość/Przykład
| `+${clientinfo}+` | Lista wspieranych CTCP | `+ACTION DCC CLIENTINFO PING SOURCE TIME VERSION+`
| `+${version}+` | Wersja WeeChat | `+4.1.0-dev+`
| `+${versiongit}+` | Wersja WeeChat + wersja Git ^(1)^ | `+4.1.0-dev (git: v4.0.0-51-g8f98b922a)+`
@@ -4221,8 +4239,7 @@ the following extra variables are available:
^(1)^ Wersja git jest wynikiem komendy `git describe`. Jest dostępna tylko jeśli
WeeChat został skompilowany wewnątrz repozytorium Git i Git był zainstalowany.
// TRANSLATION MISSING
The default CTCP replies are:
Domyślne odpowiedzi CTCP:
[width="100%",cols="2,4,8",options="header"]
|===
@@ -5212,7 +5229,7 @@ od typu hooka:
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| line | message | buffer, buffer_name, y, date, date_usec, date_printed, date_usec_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
@@ -5371,7 +5388,9 @@ Callback "line" ustawia następujące zmienne w tablicy hashy:
| buffer_type | ciąg | Typ bufora ("formatted" lub "free").
| y | ciąg | Numer linii bufora z wolną zawartością (≥ 0), -1 dla bufora ze sformatowaną zawartością.
| date | ciąg | Linia z datą (timestamp).
| date_usec | ciąg | Mikrosekundy w linii z datą.
| date_printed | ciąg | Data, kiedy linia została wyświetlona (timestamp).
| date_usec_printed | ciąg | Mikrosekundy w dacie wyświetlenia linii.
| str_time | ciąg | Date do wyświetlenia. Może zawierać kody kolorów.
| tags | ciąg | Tagi wiadomości (z przecinkiem dodanym na początku/końcu ciągu).
| displayed | ciąg | "1" jeśli wyświetlono, "0" jeśli nie wyświetlono.
@@ -5410,7 +5429,7 @@ Callback "print" ustawia następujące zmienne w tablicy hashy:
|===
| Zmienna | Typ | Opis
| buffer | wskaźnik | Bufor.
| tg_date | ciąg | Data/czas wiadomości (format: `YYYY-MM-DD hh:mm:ss`).
| tg_date | ciąg | Data/czas wiadomości (format: `%FT%T.%f`, zobacz link:weechat_plugin_api.en.html#_util_strftimeval[Opis API wtyczek WeeChat / util_strftimeval ^↗^^]).
| tg_displayed | ciąg | "1" jeśli wyświetlone, "0" jeśli linia odfiltrowana.
| tg_highlight | ciąg | "1" jeśli higlight, inaczej "0".
| tg_prefix | ciąg | Prefiks.
@@ -5475,7 +5494,7 @@ Callback "timer" ustawia następujące zmienne w tablicy hashy:
|===
| Zmienna | Typ | Opis
| tg_remaining_calls | ciąg | Liczba pozostałych wywołań.
| tg_date | ciąg | Obecna data/czas (format: `YYYY-MM-DD hh:mm:ss`).
| tg_date | ciąg | Obecna data/czas `%FT%T.%f`, zobacz link:weechat_plugin_api.en.html#_util_strftimeval[Opis API wtyczek WeeChat / util_strftimeval ^↗^^]).
|===
[[trigger_data_config]]
+1 -1
View File
@@ -1,7 +1,7 @@
#!/usr/bin/env python3
#
# Copyright (C) 2019 Simmo Saan <simmo.saan@gmail.com>
# Copyright (C) 2021-2023 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2021-2024 Sébastien Helleu <flashcode@flashtux.org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
+1 -1
View File
@@ -99,7 +99,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat написан Sébastien Helleu и другими участниками (полный список находится
в файле AUTHORS.adoc).
Copyright (C) 2003-2023 {author}
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
+1 -1
View File
@@ -97,7 +97,7 @@ $HOME/.config/weechat/weechat.log::
// tag::copyright[]
Програм WeeChat је написао Себастијен Елеу и људи који су дали свој допринос (комплетна листа се налази у фајлу AUTHORS.adoc).
Ауторска права (C) 2003-2023 {author}
Ауторска права (C) 2003-2024 {author}
WeeChat је слободни софтвер; можете га редистрибуирати и/или изменити под условима ГНУ Опште Јавне Лиценце коју је објавила Free Software Foundation; или верзије 3 Лиценце, или (по вашој жељи) било којој каснијој верзији.
+7 -3
View File
@@ -240,8 +240,7 @@ WeeChat „језгро” се налази у следећим директо
|       buflist.c | Главне buflist функције.
|       buflist-bar-item.c | Buflist ставке траке.
|       buflist-command.c | Buflist команде.
// TRANSLATION MISSING
|       buflist-completion.c | Buflist completions.
|       buflist-completion.c | Buflist довршавања.
|       buflist-config.c | Buflist опције кофиг (фајл buflist.conf).
|       buflist-info.c | Buflist info/infolists/hdata.
|       buflist-mouse.c | Buflist акције мишем.
@@ -406,6 +405,8 @@ WeeChat „језгро” се налази у следећим директо
|          unparse.py | Конверзија Python кода у остале језике, користи је скрипта testapigen.py.
|    unit/ | Корен unit тестова.
|       test-plugins.cpp | Тестови: plugins.
|       test-plugin-api-info.cpp | Тестови: инфо функције API додатака.
|       test-plugin-config.cpp | Тестови: функције конфигурације додатка.
|       core/ | Корен unit тестова језгра.
|          test-core-arraylist.cpp | Тестови: arraylists.
|          test-core-calc.cpp | Тестови: калкулација израза.
@@ -427,6 +428,8 @@ WeeChat „језгро” се налази у следећим директо
|          test-core-utf8.cpp | Тестови: UTF-8.
|          test-core-util.cpp | Тестови: помоћне функције.
|          test-core-sys.cpp | Тестови: системске функције.
|          hook/ | Корен unit тестова за куке.
|             test-hook-command.cpp | Тестови: куке „command”.
|       gui/ | Корен unit тестова интерфејса.
|          test-gui-bar-window.cpp | Тестови: функције прозора траке.
|          test-gui-buffer.cpp | Тестови: бафер функције.
@@ -446,6 +449,7 @@ WeeChat „језгро” се налази у следећим директо
|             test-irc-config.cpp | Тестови: IRC конфигурација.
|             test-irc-ctcp.cpp | Тестови: IRC CTCP.
|             test-irc-ignore.cpp | Тестови: IRC игнорисања.
|             test-irc-info.cpp | Тестови: IRC информације.
|             test-irc-join.cpp | Тестови: IRC функције приступања.
|             test-irc-list.cpp | Тестови: IRC бафер за одговор на /list команду.
|             test-irc-message.cpp | Тестови: IRC поруке.
@@ -529,7 +533,7 @@ WeeChat „језгро” се налази у следећим директо
/*
* weechat.c - core functions for WeeChat
*
* Copyright (C) 2023 Your Name <your@email.com>
* Copyright (C) 2024 Your Name <your@email.com>
*
* This file is part of WeeChat, the extensible chat client.
*
+42 -27
View File
@@ -517,14 +517,30 @@ UXTerm*metaSendsEscape: true
Ако користите macOS Terminal апликацију, укључите опцију „Use option as meta key” у менију Settings/Keyboard након чега можете користити тастер kbd:[Option] као meta тастер.
// TRANSLATION MISSING
[[enter_key]]
=== Some keys including Enter are not working, why?
=== Зашто неки тастери, укључујући Ентер, не функционишу?
If you run a WeeChat < 4.0.0 with configuration files created by any
version ≥ 4.0.0, the keys names become invalid and many keys won't work at all. +
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
Ако извршавате WeeChat < 4.0.0 са конфигурационим фајловима које је креирала било
која верзија ≥ 4.0.0, имена тастера постану неисправна и многи тастери уопште неће радити. +
Да бисте их поправили, напустите WeeChat, уклоните из weechat.conf све одељке `[key*]`
и поново покрените WeeChat: креираће се сви подразумевани тастери.
[[key_f11]]
=== Тастер F11 максимизира прозор терминала, како могу да скролујем навише листу надимака?
Терминало обично користе тастер kbd:[F11] да максимизују прозор, а у програму WeeChat
тастери kbd:[F11]/kbd:[F12] су подразумевани тастери за скроловање листе надимака.
Можете да вежете остале тастере, на пример kbd:[Shift+F11] и kbd:[Shift+F12],
у WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Још једно решење је да укључите миша (тастер: kbd:[Alt+m]) и да скролујете точкићем
миша (погледајте такође питање у вези са <<mouse,мишем>>).
[[customize_key_bindings]]
=== Како могу да прилагодим тастерске пречице?
@@ -1022,34 +1038,33 @@ export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
Погледајте link:weechat_user.sr.html#files_and_directories[Корисничко упутство / Фајлови и директоријуми ^↗^^] за више информација о конфигурационим фајловима.
// TRANSLATION MISSING
[[move_to_another_device]]
=== I want to move my WeeChat to another device and keep my config, what should I copy?
=== Желим да преместим свој WeeChat на други уређај и да задржим текућу конфигурацију, шта би требало да копирам?
First check directories used by WeeChat with this command: `/debug dirs`. +
Directories home/config and home/data must be copied (all files and sub-directories).
Следећом командом најпре проверите које директоријуме користи WeeChat: `/debug dirs`. +
Морају да се копирају директоријуми home/config и home/data (сви фајлови и поддиректоријуми).
For example if you're using XDG directories (default with WeeChat ≥ 3.2),
the directories should be `$HOME/.config/weechat` and `$HOME/.local/share/weechat`. +
If you're using a single directory (default with WeeChat < 3.2), the directory
should be `$HOME/.weechat`.
На пример, ако користите XDG директоријуме (подразумевано са WeeChat ≥ 3.2),
директоријуми би требало да буду `$HOME/.config/weechat` и `$HOME/.local/share/weechat`. +
Ако користите један директоријум (подразумевано са WeeChat < 3.2), директоријум би
требало да буде `$HOME/.weechat`.
[IMPORTANT]
The WeeChat version on the new device must be greater than or equal to the version
on the initial device. +
Downgrading WeeChat configuration is *NOT SUPPORTED* and can break it,
leading to unusable WeeChat.
WeeChat верзија на новом уређају мора да буде већа или једнака од верзије на почетном
уређају. +
Враћање WeeChat конфигурације уназад *НИЈЕ ПОДРЖАНО* и може да је поквари,
па на тај начин WeeChat постаје неупотребљив.
Steps:
Кораци:
. Quit Weechat: `/quit` (or `/upgrade -quit` if you want to resume the session,
which includes content of all buffers).
. Copy all directories, sub-directories and files to the new device, keeping
same names and permissions.
. Optional: copy any file outside these directories that you refer to in your
configuration (it's not recommended to use files outside WeeChat directories).
. Start WeeChat on the new device: `weechat` (or `weechat --upgrade` if you
saved the session).
. Напустите Weechat: `/quit` (или `/upgrade -quit` ако желите могућност да наставите сесију,
што укључује садржај свих бафера).
. Копирајте све директоријуме, поддиректоријуме и фајлове на нови уређај, задржавајући
иста имена и дозволе.
. Није обавезно: копирајте све фајлове ван ових директоријума на које указује ваша
конфигурација (не препоручује се употреба фајлова ван WeeChat директоријума).
. Покрените WeeChat на новом уређају: `weechat` (или `weechat --upgrade` у случају да сте
сачували сесију).
[[development]]
== Развој
+340 -42
View File
@@ -2479,7 +2479,7 @@ str3 = weechat.string_input_for_buffer("//test") # "/test"
==== string_eval_expression
_WeeChat ≥ 0.4.0, ажурирано у верзијама 0.4.2, 0.4.3, 1.0, 1.1, 1.2, 1.3, 1.6, 1.8, 2.0, 2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6 и 3.8, 4.0.0._
_WeeChat ≥ 0.4.0, ажурирано у верзијама 0.4.2, 0.4.3, 1.0, 1.1, 1.2, 1.3, 1.6, 1.8, 2.0, 2.2, 2.3, 2.7, 2.9, 3.1, 3.2, 3.3, 3.4, 3.6 и 3.8, 4.0.0, 4.2.0._
Израчунава израз и враћа вредност као стринг. Специјалне променљиве у формату `+${променљива}+` се развијају (погледајте табелу испод).
@@ -2789,11 +2789,21 @@ str5 = weechat.string_eval_expression("password=abc password=def", {}, {}, optio
|===
| Формат | Мин WeeChat | Опис | Примери
| `+${raw_hl:xxx}+` | 4.2.0
| Сирови стринг (не израчунава се), са истицањем синтаксе (употребом боја).
| >> `+${raw_hl:${cut:1,,${rev:hello}}}+` +
== `+${cut:1,,${rev:hello}}+` (са бојама)
| `+${raw:xxx}+` | 3.1
| Сирови стринг (не израчунава се).
| >> `+${raw:${info:version}}+` +
== `+${info:version}+`
| `+${hl:xxx}+` | 4.2.0
| Стринг са истицањем синтаксе (употребом боја).
| >> `+${hl:${file.section.option}}+` +
== `+test ${variable}+` (са бојама)
| `+${име}+` | 3.4
| Корисничка променљива (дефинисана са `+${define:име,вредност}+`).
| >> `+${име}+` +
@@ -3357,6 +3367,46 @@ weechat_string_dyn_free (string, 1);
[NOTE]
Ова функција није доступна у API скриптовања.
==== string_concat
_WeeChat ≥ 4.2.0._
Спаја више стрингова користећи граничник.
Прототип:
[source,c]
----
const char *weechat_string_concat (const char *separator, ...);
----
Аргументи:
* _separator_: стринг граничник који се умеће између спојених стрингова
(може да буде NULL или празан стринг)
[NOTE]
Последњи аргумент *MUST* увек да буде NULL. +
Може да се употреби макро `WEECHAT_STR_CONCAT`, тамо где није потребна
завршна NULL вредност (препоручује се уптореба овог макроа).
Повратна вредност:
* спојени стринг
C пример:
[source,c]
----
const char *result = weechat_string_concat (" / ", "абв", "гдђ", "ежз", NULL); /* резултат == "абв / гдђ / ежз" */
/* са макроом */
const char *result = WEECHAT_STR_CONCAT(" / ", "абв", "гдђ", "ежз"); /* резултат == "абв / гдђ / ежз" */
----
[NOTE]
Ова функција није доступна у API скриптовања.
[[utf-8]]
=== UTF-8
@@ -4346,9 +4396,8 @@ int weechat_file_compress (const char *from, const char *to,
* _to_: одредишни фајл
* _compressor_: компресор који треба да се користи, једно од:
** _gzip_: gzip компресија
// TRANSLATION MISSING
** _zstd_: zstandard компресија (available only if zstd was enabled when
WeeChat was compiled)
** _zstd_: zstandard компресија (доступно само ако је zstd било укључено
у време када је WeeChat компајлиран)
* _compression_level_: ниво компресије, између 1 (брзо, ниска компресија) и
100 (споро, најбоља компресија)
@@ -4508,6 +4557,81 @@ weechat_printf (NULL, "date: %s",
[NOTE]
Ова функција није доступна у API скриптовања.
==== util_strftimeval
_WeeChat ≥ 4.2.0._
Форматира датум и време као функција `strftime` у C библиотеци, користећи `struct timeval`
као улаз и уз подршку додатних спецификатора за микросекунде.
Прототип:
[source,c]
----
int weechat_util_strftimeval (char *string, int max, const char *format, struct timeval *tv);
----
Аргументи:
* _string_: бафер у који се смешта форматирани стринг
* _max_: величина стринга
* _format_: формат, исто као за _strftime_ функцију, са следећим додатним спецификаторима:
** `%.N` где је `N` између 1 и 6: микросекунде допуњене нулама на N цифара
(на пример `%.3` за милисекунде)
** `%f`: алијас за `%.6`
Повратна вредност:
* број бајтова постављен у _string_ (вредност враћена из функције _strftime_)
C пример:
[source,c]
----
char time[256];
struct timeval tv;
gettimeofday (&tv, NULL);
weechat_util_strftimeval (time, sizeof (time), "%FT%T.%f", &tv);
/* резултат: 2023-12-26T18:10:04.460509 */
----
[NOTE]
Ова функција није доступна у API скриптовања.
==== util_parse_time
_WeeChat ≥ 4.2.0._
Парсира датум/време са подршком за милисекунде.
Прототип:
[source,c]
----
int util_parse_time (const char *datetime, struct timeval *tv);
----
Аргументи:
* _date_: датум/време
* _tv_: парсиран датум/време („timeval” структура)
Повратна вредност:
* 1 ако је OK, 0 у случају грешке
C пример:
[source,c]
----
struct timeval tv;
weechat_util_parse_time ("2023-12-25T10:29:09.456789Z", &tv); /* == 1 */
/* резултат: tv.tv_sec == 1703500149, tv.tv_usec = 456789 */
----
[NOTE]
Ова функција није доступна у API скриптовања.
==== util_version_number
_WeeChat ≥ 0.3.9._
@@ -8978,12 +9102,13 @@ weechat.prnt("", "Color: %sblue %sdefault color %syellow on red"
void weechat_printf (struct t_gui_buffer *buffer, const char *message, ...);
----
Ова функција је пречица за функцију printf_date_tags. Следећа два позива дају потпуно исти резултат:
Ова функција је пречица за функцију printf_datetime_tags. +
Следећа два позива дају потпуно исти резултат:
[source,c]
----
weechat_printf (buffer, "message");
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
Аргументи:
@@ -9041,6 +9166,15 @@ void weechat_printf_date_tags (struct t_gui_buffer *buffer, time_t date,
const char *tags, const char *message, ...);
----
Ова функција је пречица за функцију printf_datetime_tags. +
Следећа два позива дају потпуно исти резултат:
[source,c]
----
weechat_printf_date_tags (buffer, 0, NULL, "message");
weechat_printf_datetime_tags (buffer, 0, 0, NULL, "message");
----
Аргументи:
* _buffer_: показивач на бафер, ако је NULL, порука се приказује у WeeChat баферу
@@ -9074,6 +9208,61 @@ weechat.prnt_date_tags("", time - 120, "notify_message",
[NOTE]
Функција се у скриптама зове „print_date_tags” („prnt_date_tags” у језику Python).
==== printf_datetime_tags
_WeeChat ≥ 4.2.0._
Приказује поруку у баферу, користећи произвољни датум/време (са микросекундама)
и ознаке.
Прототип:
[source,c]
----
void weechat_printf_datetime_tags (struct t_gui_buffer *buffer, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
Аргументи:
* _buffer_: показивач на бафер, ако је NULL, порука се приказује у WeeChat баферу
* _date_: датум за поруку (0 значи текући датум/време)
* _date_usec_: микросекунде датума (између 0 и 999999)
* _tags_: листа ознака раздвојених запетама (NULL значи да нема ознака)
* _message_: порука која треба да се прикаже
За листу ознака које се уобичјаено користе у програму WeeChat, погледајте link:weechat_user.sr.html#lines_tags[Корисничко упутство / Ознаке линија ^↗^^].
C пример:
[source,c]
----
struct timeval tv_now;
gettimeofday (&tv_now, NULL);
weechat_printf_datetime_tags (NULL, tv_now.tv_sec - 120, tv_now.tv_usec,
"notify_message",
"Message 2 minutes ago, with a tag 'notify_message'");
----
Скрипта (Python):
[source,python]
----
# прототип
def prnt_datetime_tags(buffer: str, date: int, date_usec: int, tags: str, message: str) -> int: ...
# пример
now = time.time()
time_sec = int(now)
time_usec = int((now * 1000000) % 1000000)
weechat.prnt_datetime_tags("", time_sec - 120, time_usec, "notify_message",
"Message 2 minutes ago, with a tag 'notify_message'")
----
[NOTE]
Функција се у скриптама зове „print_datetime_tags” („prnt_datetime_tags” у језику Python).
==== printf_y
Приказује поруку на линији бафера са слободним садржајем.
@@ -9082,8 +9271,16 @@ weechat.prnt_date_tags("", time - 120, "notify_message",
[source,c]
----
void weechat_printf_y (struct t_gui_buffer *buffer, int y,
const char *message, ...);
void weechat_printf_y (struct t_gui_buffer *buffer, int y, const char *message, ...);
----
Ова функција је скраћеница за функцију printf_y_datetime_tags. +
Следећа два позива враћају потпуно исти резултат:
[source,c]
----
weechat_printf_y (buffer, 0, "порука");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "порука");
----
Аргументи:
@@ -9096,7 +9293,7 @@ C пример:
[source,c]
----
weechat_printf_y (buffer, 2, "My message on third line");
weechat_printf_y (buffer, 2, "Моја порука на трећој линији");
----
Скрипта (Python):
@@ -9107,7 +9304,7 @@ weechat_printf_y (buffer, 2, "My message on third line");
def prnt_y(buffer: str, y: int, message: str) -> int: ...
# пример
weechat.prnt_y("", 2, "My message on third line")
weechat.prnt_y("", 2, "Моја порука на трећој линији")
----
[NOTE]
@@ -9128,6 +9325,15 @@ void weechat_printf_y_date_tags (struct t_gui_buffer *buffer, int y, time_t date
const char *tags, const char *message, ...);
----
Ова функција је скраћеница за функцију printf_y_datetime_tags. +
Следећа два позива враћају потпуно исти резултат:
[source,c]
----
weechat_printf_y_date_tags (buffer, 0, 0, NULL, "порука");
weechat_printf_y_datetime_tags (buffer, 0, 0, 0, NULL, "порука");
----
Аргументи:
* _buffer_: показивач на бафер
@@ -9157,6 +9363,51 @@ weechat.prnt_y_date_tags("", 2, 0, "my_tag", "My message on third line with a ta
[NOTE]
У скриптама се функција зове „print_y_date_tags” („prnt_y_date_tags” у језику Python).
==== printf_y_datetime_tags
_WeeChat ≥ 4.2.0._
Приказује поруку на линији бафера са произвољним садржајем, користећи произвољни
датум/време (са микросекундама) и ознакама.
Прототип:
[source,c]
----
void weechat_printf_y_datetime_tags (struct t_gui_buffer *buffer, int y, time_t date,
int date_usec, const char *tags, const char *message, ...);
----
Аргументи:
* _buffer_: показивач на бафер
* _y_: број линије (прва линија је 0); негативна вредност додаје линију иза последње приказане линије: апсолутна вредност _y_ је број линија након последње линије (на пример -1 је непосредно након последње линије, -2 је 2 линије након последње линије)
* _date_: датум за поруку (0 значи текући датум/време)
* _date_usec_: микросекунде датума (између 0 и 999999)
* _tags_: листа ознака раздвојених запетама (NULL значи да нема ознака)
* _message_: порука која треба да се прикаже
C пример:
[source,c]
----
weechat_printf_y_datetime_tags (buffer, 2, 0, 0, "my_tag", "My message on third line with a tag");
----
Скрипта (Python):
[source,python]
----
# прототип
def prnt_y_datetime_tags(buffer: str, y: int, date: int, date_usec: int, tags: str, message: str) -> int: ...
# пример
weechat.prnt_y_datetime_tags("", 2, 0, 0, "my_tag", "My message on third line with a tag")
----
[NOTE]
У скриптама се функција зове „print_y_datetime_tags” („prnt_y_datetime_tags” у језику Python).
==== log_printf
Уписује поруку у WeeChat лог фајл (weechat.log).
@@ -9957,8 +10208,7 @@ struct t_hook *weechat_hook_process_hashtable (const char *command,
_/dev/null_.
|===
// TRANSLATION MISSING
For command "url:...", see available options in function <<_hook_url,hook_url>>.
За команду "url:...", погледајте доступне опције у функцији <<_hook_url,hook_url>>.
Повратна вредност:
@@ -10118,12 +10368,11 @@ hook4 = weechat.hook_process_hashtable("sh",
20000, "my_process_cb", "")
----
// TRANSLATION MISSING
==== hook_url
_WeeChat ≥ 4.1.0._
URL transfer.
URL трансфер.
Прототип:
@@ -10144,29 +10393,29 @@ struct t_hook *weechat_hook_url (const char *url,
Аргументи:
* _url_: URL
* _options_: options for URL transfer (see below); хеш табела се дуплира у функцији, тако да након овог позива безбедно можете да ослободите меморију коју заузима
* _timeout_: timeout for URL transfer (in milliseconds): after this timeout,
the transfer is stopped (0 means no timeout)
* _callback_: function called when the transfer has ended, arguments and return
value:
** _const void *pointer_: pointer
** _void *data_: pointer
* _options_: опције URL трансфера (погледајте испод); хеш табела се дуплира у функцији, тако да након овог позива безбедно можете да ослободите меморију коју заузима
* _timeout_: истек времена URL трансфера (у милисекундама): након овог периода,
трансфер се зауставља (0 значи без истека времена)
* _callback_: функција која се позива када се заврши трансфер, аргументи и повратна
вредност:
** _const void *pointer_: показивач
** _void *data_: показивач
** _const char *url_: URL
** _struct t_hashtable *options_: options
** _struct t_hashtable *output_: result (keys and values are strings), which may
contain the following keys:
*** _response_code_: HTTP response code
*** _headers_: HTTP headers in response
*** _output_: standard output (set only if _file_out_ was not set in options)
*** _error_: error message (set only in case of error)
** return value:
** _struct t_hashtable *options_: опције
** _struct t_hashtable *output_: резултат (кључеви и вредности су стрингови), који може
да садржи следеће кључеве:
*** _response_code_: HTTP кôд одзива
*** _headers_: HTTP заглавља у одзиву
*** _output_: стандардни излаз (поставља се само ако у опцијама није постављено _file_out_)
*** _error_: порука о грешки (поставља се само у случају грешке)
** повратна вредност:
*** _WEECHAT_RC_OK_
*** _WEECHAT_RC_ERROR_
* _callback_pointer_: показивач који се прослеђује функцији повратног позива када је позове програм WeeChat
* _callback_data_: показивач који се прослеђује функцији повратног позива када је позове програм WeeChat; ако није NULL, алоцирала га је malloc (или нека слична функција) и аутоматски се ослобађа када се кука обрише
The following Curl options are available (see `+man curl_easy_setopt+` for
a description of each option):
Доступне су следеће Curl опције (погледајте `+man curl_easy_setopt+` за
опис сваке од опција):
include::{autogendir}/autogen_api_url_options.sr.adoc[tag=url_options]
@@ -10174,11 +10423,11 @@ include::{autogendir}/autogen_api_url_options.sr.adoc[tag=url_options]
^(1)^ За опције типа „mask”, формат је: „вредност1+вредност2+вредност3”; за опције типа „list”, ставке листе морају да се раздвоје преломом линије (`\n`). +
^(2)^ Ако су доступне константе, оне морају да се користе као вредност опције.
These two extra options (strings) are allowed for input/output file:
За улазни/излазни фајл су дозвољене следеће две додатне опције (стрингови):
[width="100%",cols="2,^1,7",options="header"]
|===
| Option | Type | Description
| Опција | Тип | Опис
| file_in | string | фајл који се чита и шаље URL адресама (post фајл)
| file_out | string | преузети URL/фајл се уписује у овај фајл (уместо на стандардни излаз)
|===
@@ -10249,12 +10498,12 @@ def my_url_cb(data: str, url: str, options: Dict[str, str], output: Dict[str, st
weechat.prnt("", "output: %s" % output)
return weechat.WEECHAT_RC_OK
# example 1: output to a file
# пример 1: излаз у фајл
hook1 = weechat.hook_url("https://weechat.org/",
{"file_out": "/tmp/weechat.org.html"},
20000, "my_url_cb", "")
# example 2: custom HTTP headers, output sent to callback
# пример 2: произвољна HTTP заглавља, излаз се шаље функцији повратног позива
options = {
"httpheader": "\n".join([
"Header1: value1",
@@ -10441,7 +10690,7 @@ hook = weechat.hook_connect("", "my.server.org", 1234, 1, 0, "",
==== hook_line
_WeeChat ≥ 2.3, ажурирано у 3.7._
_WeeChat ≥ 2.3, ажурирано у 4.2.0._
Качи се на линију која треба да се испише у бафер.
@@ -10526,11 +10775,21 @@ struct t_hook *weechat_hook_line (const char *buffer_type,
| Нема ("0").
| `+1533792000+`
| date_usec
| Микросекунде датума линије (између 0 и 999999).
| N/A ("0").
| `+123456+`
| date_printed
| Датум када је линија била приказана (временска ознака).
| Нема ("0").
| `+1533792012+`
| date_usec_printed
| Микросекунде датума када је линија била приказана (између 0 и 999999).
| N/A ("0").
| `+654321+`
| str_time
| Датум за приказ (са могућим кодовима боја у себи).
| Нема (празан стринг).
@@ -10615,11 +10874,22 @@ struct t_hook *weechat_hook_line (const char *buffer_type,
| Датум се поставља на ову вредност. +
Сагласно овоме се поставља и вредност `+str_time+`.
| date_usec
| Цео број ("0" до "999999").
| Нема.
| Микросекунде датума линије се постављају на ову вредност. +
Сагласно овоме се поставља и вредност `+str_time+`.
| date_printed
| Временска ознака.
| Нема.
| Датум се поставља на ову временску ознаку (не приказује се).
| date_usec_printed
| Цео број ("0" до "999999").
| Нема.
| Микросекунде исписаног датума се постављају на ову вредност.
| str_time
| Стринг.
| Нема.
@@ -10700,7 +10970,7 @@ hook = weechat.hook_line("", "", "irc_join", "my_line_cb", "")
==== hook_print
_Ажурирано у верзијама 0.4.3, 1.0, 1.5._
_Ажурирано у верзијама 0.4.3, 1.0, 1.5, 4.2.0._
Качи се на поруку која се исписује. Позива се када се у бафер са форматираним садржајем дода линија.
@@ -10718,6 +10988,7 @@ struct t_hook *weechat_hook_print (struct t_gui_buffer *buffer,
void *data,
struct t_gui_buffer *buffer,
time_t date,
int date_usec,
int tags_count,
const char **tags,
int displayed,
@@ -10741,6 +11012,7 @@ struct t_hook *weechat_hook_print (struct t_gui_buffer *buffer,
** _void *data_: показивач
** _struct t_gui_buffer *buffer_: показивач на бафер
** _time_t date_: датум
** _int date_usec_: микросекунде датума
** _int tags_count_: број ознака за линију
** _const char **tags_: низ са ознакама за линију
** _int displayed_: 1 ако се линија приказује, 0 ако је филтрирана (скривена)
@@ -10767,7 +11039,7 @@ C пример:
----
int
my_print_cb (const void *pointer, void *data, struct t_gui_buffer *buffer,
time_t date, int tags_count, const char **tags,
time_t date, int date_usec, int tags_count, const char **tags,
int displayed, int highlight,
const char *prefix, const char *message)
{
@@ -12812,9 +13084,15 @@ struct t_hook *weechat_hook_focus (const char *area,
| _chat_line_date | Датум/време линије.
| "1313237175" | "0"
| _chat_line_date_usec | Микросекунде датума/времена линије.
| "123456" | "0"
| _chat_line_date_printed | Датум/време линије ^(4)^.
| "1313237175" | "0"
| _chat_line_date_usec_printed | Микросекунде датума/времемна приказа линије ^(4)^.
| "123456" | "0"
| _chat_line_time | Приказано време.
| "14:06:15" | ""
@@ -13570,6 +13848,7 @@ int weechat_buffer_get_integer (struct t_gui_buffer *buffer,
* _buffer_: показивач на бафер
* _property_: име особине:
** _opening_: 1 ако се бафер отвара, у супротном 0 _(WeeChat ≥ 4.2.0)_
** _number_: број бафера (почиње се од 1)
** _layout_number_: број бафера сачуван у распореду
** _layout_number_merge_order_: редослед у спајању за распоред
@@ -13584,8 +13863,10 @@ int weechat_buffer_get_integer (struct t_gui_buffer *buffer,
** _day_change_: 1 ако су приказују поруке о промени дана, у супротном 0 _(WeeChat ≥ 0.4.3)_
** _clear_: 1 ако бафер може да се очисти командом `/buffer clear`, у супротном 0 _(WeeChat ≥ 1.0)_
** _filter_: 1 ако су у баферу укључени филтери, у успротном 0 _(WeeChat ≥ 1.0)_
** _closing_: 1 ако се бафер затвара, у супротном 0 _(WeeChat ≥ 1.0)_
** _lines_hidden_: 1 ако је у баферу скривена бар једна линија (филтрирана), или 0 ако се приказују све линије
** _prefix_max_length_: максимална дужина префикса у овом баферу
** _next_line_id_: id следеће линије у баферу _(WeeChat ≥ 3.8)_
** _time_for_each_line_: 1 ако се време приказује са сваку линију у баферу (подразумевано), у супротном 0
** _nicklist_: 1 ако је укључена листа надимака, у супротном 0
** _nicklist_case_sensitive_: 1 ако се у надимцима прави разлика у величини слова, у супротном 0
@@ -13594,9 +13875,9 @@ int weechat_buffer_get_integer (struct t_gui_buffer *buffer,
** _nicklist_count_: број надимака и група у листи надимака
** _nicklist_visible_count_: број приказаних надимака/група
** _nicklist_groups_count_: број група у листи надимака
** _nicklist_visible_groups_count_: број приказаних група
** _nicklist_groups_visible_count_: број приказаних група
** _nicklist_nicks_count_: број надимака у листи надимака
** _nicklist_visible_nicks_count_: број приказаних надимака
** _nicklist_nicks_visible_count_: број приказаних надимака
** _input_: 1 ако је укључен унос, у супротном 0
** _input_get_unknown_commands_: 1 ако се непознате команде шаљу функцији повратног позива уноса, у супротном 0
** _input_get_empty_: 1 ако се функцији повратног позива уноса шаље празан унос, у супротном 0
@@ -13608,9 +13889,22 @@ int weechat_buffer_get_integer (struct t_gui_buffer *buffer,
** _num_history_: број команди у историји
** _text_search_: тип претраге текста:
*** 0: у овом тренутку нема претраге
*** 1: претрага уназад (смер: ка најстаријим порукама)
*** 2: претрага унапред (смер: ка најновијим порукама)
*** 1: претрага у линијама бафера
*** 2: претрага у историји команди
** _text_search_direction_: смер претраге:
*** 0: претрага уназад (смер: најстарије поруке/команде)
*** 1: претрага унапред (смер: најновије поруке/команде)
** _text_search_exact_: 1 ако претрага текста прави разлику у величини слова
** _text_search_regex_: 1 ако се претражује регуларним изразом
** _text_search_where_:
*** 0: у овом тренутку нема претраге
*** 1: претрага у поруци
*** 2: претрага у префиксу
*** 3: претрага у префиксу и поруци
** _text_search_history_:
*** 0: у овом тренутку нема претраге
*** 1: претрага у локалној историји бафера
*** 2: претрага у глобалној историји
** _text_search_found_: 1 ако се текст пронађе, у супротном 0
Повратна вредност:
@@ -13655,7 +13949,9 @@ const char *weechat_buffer_get_string (struct t_gui_buffer *buffer,
** _plugin_: име додатка који је креирао овај бафер („core” за главни бафер програма WeeChat)
** _name_: име бафера
** _full_name_: пуно име бафера („додатак.име”) _(WeeChat ≥ 0.3.7)_
** _old_full_name_: старо пуно име бафера („додатак.име”), постављено пре промене имена бафера _(WeeChat ≥ 2.8)_
** _short_name_: кратко име бафера (напомена: користи се само за приказ и корисник може да га промени, ово не сме да се употребљава за проналажење имена бафера, уместо њега употребите _name_, _full_name_ или локалну променљиву _channel_)
** _type_: тип бафера: „formatted” или „free” _(WeeChat ≥ 4.2.0)_
** _title_: наслов бафера
** _input_: текст уноса
** _text_search_input_: сачувани унос пре претраге текста
@@ -13710,6 +14006,8 @@ void *weechat_buffer_pointer (struct t_gui_buffer *buffer,
* _buffer_: показивач на бафер
* _property_: име особине:
** _plugin_: показивач на додатак који је креирао овај бафер (NULL за главни бафер програма WeeChat)
** _text_search_regex_compiled_: компајлирани регуларни израз
** _text_search_ptr_history_: пронађена историја
** _highlight_disable_regex_compiled_: компајлиран регуларни израз _highlight_disable_regex_
** _highlight_regex_compiled_: компајлиран регуларни израз _highlight_regex_
+25 -10
View File
@@ -439,7 +439,9 @@ hda:
'buffer': 'ptr',
'y': 'int',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'str_time': 'str',
'tags_count': 'int',
'tags_array': 'arr',
@@ -457,7 +459,9 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404926
date_usec: 118712
date_printed: 1588404926
date_usec_printed: 118712
str_time: 'F@0025209F@0024535F@0024026'
tags_count: 0
tags_array: []
@@ -473,7 +477,9 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404930
date_usec: 25
date_printed: 1588404930
date_usec_printed: 25
str_time: 'F@0025209F@0024535F@0024030'
tags_count: 0
tags_array: []
@@ -661,11 +667,14 @@ inl:
input_buffer_1st_display: 0
num_history: 0
text_search: 0
text_search_direction: 0
text_search_exact: 0
text_search_regex: 0
text_search_regex_compiled: '0x0'
text_search_where: 0
text_search_history: 0
text_search_found: 0
text_search_ptr_history: '0x0'
text_search_input: None
highlight_words: None
highlight_disable_regex: None
@@ -1943,16 +1952,18 @@ hda:
[width="100%", cols="3m,2,10", options="header"]
|===
| Име | Тип | Опис
| buffer | показивач | Показивач на бафер.
| date | време | Датум поруке.
| date_printed | време | Датум када је програм WeeChat приказао поруку.
| displayed | карактер | 1 ако је порука приказана, 0 ако је порука филтрирана (скривена).
| notify_level | карактер | Ниво обавештења: -1 = обавештење искључено, 0 = ниски, 1 = порука, 2 = приватно, 3 = истицање.
| highlight | карактер | 1 ако се у линији налази истицање, у супротном 0.
| tags_array | низ стрингова | Листа ознака за линију.
| prefix | стринг | Префикс.
| message | стринг | Порука.
| Име | Тип | Опис
| buffer | показивач | Показивач на бафер.
| date | време | Датум поруке.
| date_usec | цео број | Микросекунде датума.
| date_printed | време | Датум када је програм WeeChat приказао поруку.
| date_usec_printed | цео број | Микросекунде датума када је WeeChat приказао поруку.
| displayed | карактер | 1 ако је порука приказана, 0 ако је порука филтрирана (скривена).
| notify_level | карактер | Ниво обавештења: -1 = обавештење искључено, 0 = ниски, 1 = порука, 2 = приватно, 3 = истицање.
| highlight | карактер | 1 ако се у линији налази истицање, у супротном 0.
| tags_array | низ стрингова | Листа ознака за линију.
| prefix | стринг | Префикс.
| message | стринг | Порука.
|===
Пример: нова порука _здраво!_ од надимка _FlashCode_ у баферу _irc.libera.#weechat_:
@@ -1964,7 +1975,9 @@ hda:
keys: {
'buffer': 'ptr',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'displayed': 'chr',
'notify_level': 'chr',
'highlight': 'chr',
@@ -1977,7 +1990,9 @@ hda:
__path: ['0x4a49600']
buffer: '0x4a715d0'
date: 1362728993
date_usec: 902765
date_printed: 1362728993
date_usec_printed: 902765
displayed: 1
notify_level: 1
highlight: 0
+2
View File
@@ -610,8 +610,10 @@ weechat_hook_timer(1000, 0, 1, $timer_cb, 'test');
color +
print (за python: prnt) +
print_date_tags (за python: prnt_date_tags) +
print_datetime_tags (за python: prnt_datetime_tags) +
print_y (за python: prnt_y) +
print_y_date_tags (за python: prnt_y_date_tags) +
print_y_datetime_tags (за python: prnt_y_datetime_tags) +
log_print
| куке
+81 -35
View File
@@ -239,8 +239,7 @@ $ make install
Можете да користите опције за CMake, у формату: `-DОПЦИЈА=ВРЕДНОСТ`.
// TRANSLATION MISSING
List of available options:
Листа доступних опција:
[width="100%", cols="3m,3,3m,10", options="header"]
|===
@@ -294,9 +293,8 @@ List of available options:
| ENABLE_GUILE | `ON`, `OFF` | ON
| Компајлира <<scripting_plugins,Guile додатак>> (Scheme).
// TRANSLATION MISSING
| ENABLE_HEADLESS | `ON`, `OFF` | ON
| Compile headless binary.
| Компајлира извршни фајл без корисничког интерфејса.
| ENABLE_IRC | `ON`, `OFF` | ON
| Компајлира <<irc,IRC додатак>>.
@@ -356,9 +354,8 @@ List of available options:
| ENABLE_XFER | `ON`, `OFF` | ON
| Компајлира <<xfer,Xfer додатак>>.
// TRANSLATION MISSING
| ENABLE_ZSTD | `ON`, `OFF` | ON
| Enable https://facebook.github.io/zstd/[Zstandard ^↗^^] compression.
| Укључује https://facebook.github.io/zstd/[Zstandard ^↗^^] компресију.
| ENABLE_TESTS | `ON`, `OFF` | OFF
| Компајлира тестове.
@@ -865,11 +862,30 @@ _input_ трака садржи следеће подразумеване ста
| Ставка | Пример | Опис
| input_prompt | `[@Flashy(i)]` | Одзив за унос, за irc: надимак и режими (режим „+i” значи невидљив на серверу libera).
| away | `(одсутан)` | Индикатор одсутности.
| input_search | `[Претрага (~ str,msg)]` | Индикатор претраге („`~`”: не прави се разлика у величини слова, „`==`”: прави се разлика у величини слова, „`str`”: стринг претраге, „`regex`”: претрага по регуларном изразу, „`msg`”: претрага у порукама, „`pre`”: претрага у префиксима, „`pre\|msg`”: претрага и у префиксима и у порукама).
| input_search | `[Претрага линија (~ str,msg)]` | Индикатор претраге (погледајте испод).
| input_paste | `[Да налепим 7 линија? [ctrl-y] Да [ctrl-n] Не]` | Питање за корисника пре налељпивања линија.
| input_text | `hi peter!` | Текст уноса.
| input_text | `ћао петре!` | Текст уноса.
|===
Постоје два режима претраге:
* претрага у линијама, на пример `[Претрага линија (~ str,msg)]`, са следећим информацијама:
** `~`: не прави се разлика у величини слова
** `==`: прави се разлика у величини слова
** `str`: стринг претраге
** `regex`: претрага по регуларном изразу
** `msg`: претрага у порукама
** `pre`: претрага у префиксима
** `pre\|msg`: претрага и у префиксима и у порукама
* претрага по историји команди, на пример `[Претрага команди (~ str,local)]`,
са следећим информацијама:
** `~`: не прави се разлика у величини слова
** `==`: прави се разлика у величини слова
** `str`: стринг претраге
** `regex`: претрага по регуларном изразу
** `local`: претрага по локалној историји бафера
** `global`: претрага по глобалној историји.
_nicklist_ трака садржи следеће подразумеване ставке:
[width="100%", cols="^3,^3,9", options="header"]
@@ -890,10 +906,8 @@ _nicklist_ трака садржи следеће подразумеване с
| buffer_short_name | `#test` | Кратко име текућег бафера.
| buflist2 | `1.weechat` | Листа бафера, друга ставка траке (погледајте опцију <<option_buflist.look.use_items,buflist.look.use_items>>).
| buflist3 | `1.weechat` | Листа бафера, трећа ставка траке (погледајте опцију <<option_buflist.look.use_items,buflist.look.use_items>>).
// TRANSLATION MISSING
| buflist4 | `1.weechat` | List of buffers, fourth bar item (see option <<option_buflist.look.use_items,buflist.look.use_items>>).
// TRANSLATION MISSING
| buflist5 | `1.weechat` | List of buffers, fifth bar item (see option <<option_buflist.look.use_items,buflist.look.use_items>>).
| buflist4 | `1.weechat` | Листа бафера, четврта ставка траке (погледајте опцију <<option_buflist.look.use_items,buflist.look.use_items>>).
| buflist5 | `1.weechat` | Листа бафера, пета ставка траке (погледајте опцију <<option_buflist.look.use_items,buflist.look.use_items>>).
| fset | `+buflist.look.sort: …+` | Помоћ у вези тренутно изабране опције у fset баферу.
| irc_channel | `#test` | Име тренутног IRC канала.
| irc_host | `+user@host.com+` | Име тренутног IRC хоста.
@@ -950,6 +964,11 @@ WeeChat командна линија (на дну прозора) вам омо
| kbd:[Ctrl+c], kbd:[c],
kbd:[xx], kbd:[,],
kbd:[yy] | Текст у боји `xx` и позадина у `yy` (погледајте листу боја испод).
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx] | Текст у боји `xxxxxx` (RGB као хексадецимални број, на пример, `FF0000` за црвену).
| kbd:[Ctrl+c], kbd:[d],
kbd:[xxxxxx], kbd:[,],
kbd:[yyyyyy] | Текст у боји `xxxxxx` и позадина `yyyyyy` (RGB као хексадецимални број).
| kbd:[Ctrl+c], kbd:[i] | Текст у курзиву.
| kbd:[Ctrl+c], kbd:[o] | Искључивање боје и атрибута.
| kbd:[Ctrl+c], kbd:[v] | Обрнути видео (боје текста и позадине се замењују једна са другом).
@@ -957,7 +976,8 @@ WeeChat командна линија (на дну прозора) вам омо
|===
[NOTE]
Исти кôд (без броја за kbd:[Ctrl+c], kbd:[c]) може да се употреби за заустављање атрибута.
Исти кôд (без броја за kbd:[Ctrl+c], kbd:[c] и kbd:[Ctrl+c], kbd:[d])
може да се употреби за стопирање атрибута.
Кодови боја за kbd:[Ctrl+c], kbd:[c] су:
@@ -1379,10 +1399,8 @@ _прозор_ је површина екрана која приказује б
[[buflist]]
=== Листа бафера
// TRANSLATION MISSING
Buflist додатак приказује листу бафера у ставки траке која се зове „buflist”
(four other bar items "buflist2", "buflist3", "buflist4" and "buflist5" are
available as well). +
(доступне су и четири остале ставке траке "buflist2", "buflist3", "buflist4" и "buflist5"). +
Подразумевана трака „buflist” са овом ставком се креира током покретања програма.
[[buflist_commands]]
@@ -1495,6 +1513,7 @@ WeeChat нуди доста подразумеваних тастерских п
| Тастер | Опис | Команда
| kbd:[Ctrl+c], kbd:[b] | Уметање кода за подебљани текст. | `+/input insert \x02+`
| kbd:[Ctrl+c], kbd:[c] | Уметање кода за обојени текст. | `+/input insert \x03+`
| kbd:[Ctrl+c], kbd:[d] | Уметање кода за обојени текст (RGB боја, као хексадецимални број). | `+/input insert \x04+`
| kbd:[Ctrl+c], kbd:[i] | Уметање кода за текст у курзиву. | `+/input insert \x1D+`
| kbd:[Ctrl+c], kbd:[o] | Уметање кода за ресет боје. | `+/input insert \x0F+`
| kbd:[Ctrl+c], kbd:[v] | Уметање кода за обрнуту боју. | `+/input insert \x16+`
@@ -1528,8 +1547,8 @@ WeeChat нуди доста подразумеваних тастерских п
[width="100%", cols="^.^3,.^8,.^5", options="header"]
|===
| Тастер | Опис | Команда
| kbd:[Ctrl+r] | Претрага на текст у историји бафера (погледајте <<key_bindings_search_context,тастери уsearch”>>). | `+/input search_text_here+`
| kbd:[Ctrl+s], kbd:[Ctrl+u] | Поставља маркер непрочитано за све бафере. | `+/allbuf /buffer set unread+`
| kbd:[Ctrl+r] | Претрага текста у историји команди (погледајте <<key_bindings_histsearch_context,тастери за контекст „histsearch”>>). | `+/input search_history+`
| kbd:[Ctrl+s] | Претрага текста у линијама бафера (погледајте <<key_bindings_search_context,тастери за контекст „search”>>). | `+/input search_text_here+`
| kbd:[Ctrl+x] | Мења текући бафер ако су бафери спојени са истим бројем, на пример, прелазак на други IRC сервер бафер. | `+/buffer switch+`
| kbd:[Alt+x] | Зум на спојени бафер (kbd:[Alt+x] поново: приказује све спојене бафере). | `+/buffer zoom+`
| kbd:[PgUp] | Скролује навише једну страну у историји бафера. | `+/window page_up+`
@@ -1555,6 +1574,7 @@ WeeChat нуди доста подразумеваних тастерских п
| kbd:[Alt+n] | Скроловање до наредног истицања. | `+/window scroll_next_highlight+`
| kbd:[Alt+p] | Скроловање на претходно истицање. | `+/window scroll_previous_highlight+`
| kbd:[Alt+u] | Скроловање на прву непрочитану линију у баферу. | `+/window scroll_unread+`
| kbd:[Alt+Shift+U] | Поставља маркер непрочитано за све бафере. | `+/allbuf /buffer set unread+`
| kbd:[Alt+<] | Прелаз на претходни бафер у листи посећених бафера. | `+/buffer jump prev_visited+`
| kbd:[Alt+>] | Прелаз на наредни бафер у листи посећених бафера. | `+/buffer jump next_visited+`
| kbd:[Alt+/] | Прелаз на последње приказани бафер. | `+/buffer jump last_displayed+`
@@ -1631,22 +1651,48 @@ WeeChat нуди доста подразумеваних тастерских п
[[key_bindings_search_context]]
=== Контекст претраге
Следећи тастери се користе у „search” контексту (када се притисне kbd:[Ctrl+r] за претрагу текста у баферу).
Следећи тастери се користе у контексту „search” (када се притисне kbd:[Ctrl+s] за претрагу
текста у линијама бафера).
[width="100%", cols="^.^3,.^8,.^5", options="header"]
|===
| Тастер | Опис | Команда
| kbd:[Ctrl+r] | Пребацивање типа претраге: стринг (подраз.), регуларни израз. | `+/input search_switch_regex+`
| kbd:[Ctrl+x] | Пребацивање типа претраге: стринг (подраз.), регуларни израз. | `+/input search_switch_regex+`
| kbd:[Alt+c] | Пребацивање разликовања величине слова у претраци. | `+/input search_switch_case+`
| kbd:[Tab] | Пребацивање претраге у: порукама (подраз.), префиксима, префиксима + порукама. | `+/input search_switch_where+`
| kbd:[↑] | Претрага претходне линије. | `+/input search_previous+`
| kbd:[] | Претрага наредне линије. | `+/input search_next+`
| kbd:[Ctrl+r] +
kbd:[] | Претрага претходне линије. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Претрага наредне линије. | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Заустављање претраге на текућој позицији. | `+/input search_stop_here+`
| kbd:[Ctrl+q] | Заустављање претраге и ресетовање скрола на стање пре почетка претраге текста. | `+/input search_stop+`
|===
[[key_bindings_histsearch_context]]
=== Контекст претраге историје
Следећи тастери се користе у контексту „histsearch” (када се притисне kbd:[Ctrl+r] за претрагу
текста у историји команди).
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Тастер | Опис | Команда
| kbd:[Ctrl+x] | Пребацивање типа претраге: стринг (подраз.), регуларни израз. | `+/input search_switch_regex+`
| kbd:[Alt+c] | Пребацивање разликовања величине слова у претраци. | `+/input search_switch_case+`
| kbd:[Tab] | Пребацивање претраге по: локалној историји бафера (подразумевано), глобалној историји. | `+/input search_switch_where+`
| kbd:[Ctrl+r] +
kbd:[↑] | Претрага по претходним (старијим) ставкама историје. | `+/input search_previous+`
| kbd:[Ctrl+s] +
kbd:[↓] | Претрага по наредним (новијим) ставкама историје. | `+/input search_next+`
| kbd:[Enter] +
kbd:[Ctrl+j] +
kbd:[Ctrl+m] | Заустављање претраге и употреба пронађеног улаза. | `+/input search_stop_here+`
| kbd:[Ctrl+o] | Извршавање команде пронађене у историји и уметање наредне у командну линију. | `+/input history_use_get_next+`
| kbd:[Ctrl+q] | Заустављање претраге и враћање улаза на почетну вредност. | `+/input search_stop+`
|===
[[key_bindings_cursor_context]]
=== Контекст курсора
@@ -1713,10 +1759,10 @@ WeeChat нуди доста подразумеваних тастерских п
| kbd:[▼] | - | чет: /list бафер | Помера за пет линија наниже у /list баферу. | `+/list -down 5+`
| kbd:[■ □ □] | - | чет: /list бафер | Бира линију у /list баферу. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | чет: /list бафер | Приступа IRC каналу на изабраној линији. | `+hsignal:irc_list_mouse+`
| kbd:[▲] | - | чет: script бафер | Помера за пет линија навише у script баферу. | `+/script -up 5+`
| kbd:[▼] | - | чет: script бафер | Помера за пет линија наниже у script баферу. | `+/script -down 5+`
| kbd:[■ □ □] | - | чет: script бафер | Бира линију у script баферу. | `+/script -go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | чет: script бафер | Инсталира/уклања скрипту. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[▲] | - | чет: script бафер | Помера за пет линија навише у script баферу. | `+/script up 5+`
| kbd:[▼] | - | чет: script бафер | Помера за пет линија наниже у script баферу. | `+/script down 5+`
| kbd:[■ □ □] | - | чет: script бафер | Бира линију у script баферу. | `+/script go ${_chat_line_y}+`
| kbd:[□ □ ■] | - | чет: script бафер | Инсталира/уклања скрипту. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
| kbd:[■ □ □] | горе / лево | листа бафера | Помера бафер на нижи број. | Signal `+buflist_mouse+`.
| kbd:[■ □ □] | доле / десно | листа бафера | Помера бафер на виши број. | Signal `+buflist_mouse+`.
| kbd:[■ □ □] | - | листа бафера | Пребацивање на бафер (претходно посећени багер ако је бафер текући). | Signal `+buflist_mouse+`.
@@ -1834,21 +1880,19 @@ kbd:[▼]: точкић доле
[width="100%", cols="^.^3,^.^2,.^8,.^5", options="header"]
|===
| Тастер | Акција ^(1)^ | Опис | Команда
| kbd:[↑] | | Помера једну линију навише. | `+/script -up+`
| kbd:[↓] | | Помера једну линију наниже. | `+/script -down+`
| kbd:[↑] | | Помера једну линију навише. | `+/script up+`
| kbd:[↓] | | Помера једну линију наниже. | `+/script down+`
| kbd:[PgUp] | | Помера једну страну навише. | `+/window page_up+`
| kbd:[PgDn] | | Помера једну страну наниже. | `+/window page_down+`
| kbd:[Alt+i] | `i` | Инсталира скрипту. | `+/script install+`
| kbd:[Alt+r] | `r` | Брише скрипту. | `+/script remove+`
| kbd:[Alt+l] | `l` | Учитава скрипту. | `+/script load+`
// TRANSLATION MISSING
| kbd:[Alt+L] | `L` | Reload script. | `+/script reload+`
| kbd:[Alt+L] | `L` | Поново учитава скрипту. | `+/script reload+`
| kbd:[Alt+u] | `u` | Уклања скрипту из меморије. | `+/script unload+`
| kbd:[Alt+Shift+A] | `A` | Аутоучитавање скрипте. | `+/script toggleautoload+`
| kbd:[Alt+h] | `h` | Задржава/отпушта скрипту. | `+/script hold+`
| kbd:[Alt+v] | `v` | Преглед скрипте. | `+/script show+`
// TRANSLATION MISSING
| | `s:x,y` | Sort scripts by fields x,y (погледајте опцију <<option_script.look.sort,script.look.sort>>). |
| | `s:x,y` | Сортира скрипте по пољима x,y (погледајте опцију <<option_script.look.sort,script.look.sort>>). |
| | `s:` | Ресетује сортирање на подразумевану вредност (погледајте опцију <<option_script.look.sort,script.look.sort>>). |
| | `$` | Освежава листу. |
| | `q` | Затвара бафер. | `+/buffer close+`
@@ -4871,7 +4915,7 @@ y/${chars:a-z}${chars:A-Z}/${chars:b-z}a${chars:B-Z}A/
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| line | message | buffer, buffer_name, y, date, date_usec, date_printed, date_usec_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
@@ -5020,7 +5064,9 @@ ${buffer[${tg_signal_data}].full_name}
| buffer_type | стринг | Тип бафера („formatted” или „free”).
| y | стринг | Број линије за бафер са слободним садржајем (≥ 0), -1 за бафер са форматираним садржајем.
| date | стринг | Датум линије (временска ознака).
| date_usec | стринг | Microseconds датума линије.
| date_printed | стринг | Датум када је линија била приказана (временска ознака).
| date_usec_printed | стринг | Microseconds датума када је линија била приказана.
| str_time | стринг | Датум за приказ. Може да садржи кодове боја.
| tags | стринг | Ознаке поруке (са запетом додатом на почетак/крај стринга).
| displayed | стринг | „1” ако се приказује, „0” ако је линија филтрирана.
@@ -5059,7 +5105,7 @@ ${buffer[${tg_signal_data}].full_name}
|===
| Променљива | Тип | Опис
| buffer | показивач | Бафер.
| tg_date | стринг | Датум/време поруке (формат: `ГГГГ-ММ-ДД чч:мм:сс`).
| tg_date | стринг | Датум/време поруке (формат: `%FT%T.%f`, погледајте link:weechat_plugin_api.sr.html#_util_strftimeval[WeeChat референтни прикучник API додатака / util_strftimeval ^↗^^]).
| tg_displayed | стринг | „1” ако се приказује, „0” ако се линија филтрира.
| tg_highlight | стринг | „1” ако је истакнута, у супротном „0”.
| tg_prefix | стринг | Префикс.
@@ -5124,7 +5170,7 @@ ${buffer[${tg_signal_data}].full_name}
|===
| Променљива | Тип | Опис
| tg_remaining_calls | стринг | Број преосталих позива.
| tg_date | стринг | Текући датум/време (формат: `ГГГГ-ММ-ДД чч:мм:сс`).
| tg_date | стринг | Текући датум/време (формат: `%FT%T.%f`, погледајте link:weechat_plugin_api.sr.html#_util_strftimeval[WeeChat референтни приручник API додатака / util_strftimeval ^↗^^]).
|===
[[trigger_data_config]]
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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.
#
+4174 -3019
View File
File diff suppressed because it is too large Load Diff
+4832 -4999
View File
File diff suppressed because it is too large Load Diff
+4198 -3429
View File
File diff suppressed because it is too large Load Diff
+4665 -4862
View File
File diff suppressed because it is too large Load Diff
+3902 -2567
View File
File diff suppressed because it is too large Load Diff
+4198 -3146
View File
File diff suppressed because it is too large Load Diff
+4421 -4451
View File
File diff suppressed because it is too large Load Diff
+4930 -6577
View File
File diff suppressed because it is too large Load Diff
+4360 -4120
View File
File diff suppressed because it is too large Load Diff
+4075 -2968
View File
File diff suppressed because it is too large Load Diff
+3904 -2563
View File
File diff suppressed because it is too large Load Diff
+4551 -5086
View File
File diff suppressed because it is too large Load Diff
+4491 -5208
View File
File diff suppressed because it is too large Load Diff
+3623 -2323
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 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>
#
+2 -2
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2008 Julien Louis <ptitlouis@sysif.net>
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
#
@@ -92,7 +92,7 @@ include_directories(${GNUTLS_INCLUDE_PATH})
include_directories(${CURL_INCLUDE_DIRS})
if(ENABLE_ZSTD)
include_directories(${LIBZSTD_INCLUDE_DIRS})
include_directories(${ZSTD_INCLUDE_DIRS})
endif()
include_directories("${CMAKE_BINARY_DIR}")
+1 -1
View File
@@ -1,7 +1,7 @@
/*
* wee-hook-command-run.c - WeeChat command_run hook
*
* Copyright (C) 2003-2023 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.
*
+1 -1
View File
@@ -1,5 +1,5 @@
/*
* Copyright (C) 2003-2023 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.
*
+242 -4
View File
@@ -1,7 +1,7 @@
/*
* wee-hook-command.c - WeeChat command hook
*
* Copyright (C) 2003-2023 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.
*
@@ -269,6 +269,236 @@ hook_command_build_completion (struct t_hook_command *hook_command)
free (completion);
}
/*
* Removes all raw markers from a string: converts "raw[xxx]" to "xxx".
*
* Note: result must be freed after use.
*/
char *
hook_command_remove_raw_markers (const char *string)
{
const char *ptr_string, *pos_raw, *pos_end;
char **result;
if (!string)
return NULL;
result = string_dyn_alloc (128);
if (!result)
return NULL;
ptr_string = string;
while (ptr_string[0])
{
pos_raw = strstr (ptr_string, "raw[");
if (!pos_raw)
{
string_dyn_concat (result, ptr_string, -1);
break;
}
pos_end = strchr (pos_raw, ']');
if (!pos_end)
{
string_dyn_concat (result, ptr_string, -1);
break;
}
if (pos_raw > ptr_string)
string_dyn_concat (result, ptr_string, pos_raw - ptr_string);
if (pos_end > pos_raw + 4)
string_dyn_concat (result, pos_raw + 4, pos_end - pos_raw - 4);
ptr_string = pos_end + 1;
}
return string_dyn_free (result, 0);
}
/*
* Frees an argument description.
*/
void
hook_command_arraylist_arg_desc_free (void *data, struct t_arraylist *arraylist,
void *pointer)
{
/* make C compiler happy */
(void) data;
(void) arraylist;
free (pointer);
}
/*
* Formats and translates arguments description of a command.
*
* Note: result must be freed after use.
*/
char *
hook_command_format_args_description (const char *args_description)
{
struct t_arraylist *args;
const char *pos, *ptr_line;
char **lines, **result, *arg_translated, *arg_name, *line_translated;
int i, j, num_lines, length, max_length_arg, size, line_after_args;
int lines_added;
if (!args_description)
return NULL;
if (!args_description[0])
return strdup (args_description);
/* if args description is not formatted, translate the whole string */
if (strncmp (args_description,
WEECHAT_HOOK_COMMAND_STR_FORMATTED "\n",
strlen (WEECHAT_HOOK_COMMAND_STR_FORMATTED) + 1) != 0)
{
return strdup (_(args_description));
}
/* translate line by line and indent properly arguments */
result = NULL;
lines = NULL;
args = NULL;
result = string_dyn_alloc (1024);
if (!result)
goto error;
lines = string_split (args_description, "\n", NULL, 0, 0, &num_lines);
if (!lines)
goto error;
if (num_lines == 0)
{
string_free_split (lines);
return string_dyn_free (result, 0);
}
args = arraylist_new (num_lines, 0, 1,
NULL, NULL,
&hook_command_arraylist_arg_desc_free, NULL);
if (!args)
goto error;
/* store description of arguments and find longest argument name on screen */
line_after_args = -1;
max_length_arg = 0;
for (i = 0; i < num_lines; i++)
{
if (!lines[i][0])
{
line_after_args = i;
break;
}
if (strcmp (lines[i], WEECHAT_HOOK_COMMAND_STR_FORMATTED) == 0)
continue;
arg_translated = hook_command_remove_raw_markers (_(lines[i]));
if (!arg_translated)
continue;
arraylist_add (args, arg_translated);
if ((strncmp (arg_translated, "> ", 2) == 0)
|| (strncmp (arg_translated, ">> ", 3) == 0))
continue;
pos = strchr (arg_translated, ':');
if (!pos)
continue;
arg_name = string_strndup (arg_translated, pos - arg_translated);
if (arg_name)
{
length = utf8_strlen_screen (arg_name);
if (length > max_length_arg)
max_length_arg = length;
free (arg_name);
}
}
/* add arguments with their description */
lines_added = 0;
size = arraylist_size (args);
for (i = 0; i < size; i++)
{
ptr_line = (const char *)arraylist_get (args, i);
if (!ptr_line)
continue;
if (lines_added > 0)
string_dyn_concat (result, "\n", -1);
if (strncmp (ptr_line, "> ", 2) == 0)
{
/* indented line: after the argument name */
for (j = 0; j < max_length_arg + 2; j++)
{
string_dyn_concat (result, " ", -1);
}
ptr_line += 2;
}
else if (strncmp (ptr_line, ">> ", 3) == 0)
{
/* indented line: after the argument name (+ 2 spaces) */
for (j = 0; j < max_length_arg + 4; j++)
{
string_dyn_concat (result, " ", -1);
}
ptr_line += 3;
}
else
{
pos = strchr (ptr_line, ':');
if (pos)
{
arg_name = string_strndup (ptr_line, pos - ptr_line);
if (arg_name)
{
length = utf8_strlen_screen (arg_name);
for (j = length; j < max_length_arg; j++)
{
string_dyn_concat (result, " ", -1);
}
free (arg_name);
}
}
}
string_dyn_concat (result, ptr_line, -1);
lines_added++;
}
/* add additional description (after arguments) */
if (line_after_args >= 0)
{
for (i = line_after_args; i < num_lines; i++)
{
if (lines_added > 0)
string_dyn_concat (result, "\n", -1);
if (lines[i][0])
{
line_translated = hook_command_remove_raw_markers (_(lines[i]));
if (line_translated)
{
string_dyn_concat (result, line_translated, -1);
lines_added++;
free (line_translated);
}
}
}
}
arraylist_free (args);
string_free_split (lines);
return string_dyn_free (result, 0);
error:
if (args)
arraylist_free (args);
if (result)
string_dyn_free (result, 1);
if (lines)
string_free_split (lines);
return NULL;
}
/*
* Hooks a command.
*
@@ -820,6 +1050,8 @@ int
hook_command_add_to_infolist (struct t_infolist_item *item,
struct t_hook *hook)
{
char *args_desc_nls;
if (!item || !hook || !hook->hook_data)
return 0;
@@ -846,11 +1078,17 @@ hook_command_add_to_infolist (struct t_infolist_item *item,
if (!infolist_new_var_string (item, "args_description",
HOOK_COMMAND(hook, args_description)))
return 0;
args_desc_nls = hook_command_format_args_description (
HOOK_COMMAND(hook, args_description));
if (!infolist_new_var_string (item, "args_description_nls",
(HOOK_COMMAND(hook, args_description)
&& HOOK_COMMAND(hook, args_description)[0]) ?
_(HOOK_COMMAND(hook, args_description)) : ""))
(args_desc_nls) ? args_desc_nls : ""))
{
if (args_desc_nls)
free (args_desc_nls);
return 0;
}
if (args_desc_nls)
free (args_desc_nls);
if (!infolist_new_var_string (item, "completion", HOOK_COMMAND(hook, completion)))
return 0;
+2 -1
View File
@@ -1,5 +1,5 @@
/*
* Copyright (C) 2003-2023 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.
*
@@ -76,6 +76,7 @@ struct t_hook_command_similar
};
extern char *hook_command_get_description (struct t_hook *hook);
extern char *hook_command_format_args_description (const char *args_description);
extern struct t_hook *hook_command (struct t_weechat_plugin *plugin,
const char *command,
const char *description,

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