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

Compare commits

...

175 Commits

Author SHA1 Message Date
Sébastien Helleu 2d387313a0 core: try to mark hyperlinks with OSC8 ANSI codes
Just a POC, this doesn't work at all with ncurses.
2021-10-15 20:07:17 +02:00
Sébastien Helleu 3cd97b5131 tests: add missing include of string.h 2021-10-14 21:08:28 +02:00
Sébastien Helleu d8b8bf5a84 tests: check displayed message/error for all simulated IRC commands received 2021-10-14 21:00:47 +02:00
Sébastien Helleu 238c17bd0e irc: display command in lower case when there is a parsing error 2021-10-14 20:39:23 +02:00
Sébastien Helleu 1206e9e5c3 tests: fix typo in comment 2021-10-14 20:38:16 +02:00
Sébastien Helleu f3b4336bc4 irc: do not display message with "(null)" for 973/974/975 command received if pos_mode is NULL 2021-10-14 20:37:32 +02:00
Sébastien Helleu 55df7805c2 irc: display a single error message when parsing of a command failed 2021-10-13 18:45:36 +02:00
Sébastien Helleu 9102e4f552 irc: display a single error message when a command is not found 2021-10-13 18:45:14 +02:00
Sébastien Helleu 57ad90c3c0 irc: do not display message with "(null)" for numeric command received if pos_args is NULL 2021-10-13 18:42:47 +02:00
Sébastien Helleu ed9104fbea irc: fix parsing of CAP message when there is no prefix (closes #1707) 2021-10-09 11:27:51 +02:00
Sébastien Helleu 68a3aca643 plugins: use a different plugin priority for each scripting language 2021-10-02 20:50:35 +02:00
Sébastien Helleu 6fe354439c doc: update German auto-generated file 2021-10-02 20:41:09 +02:00
Nils Görs 63b93a8147 core: update German translations 2021-10-02 19:49:38 +02:00
Sébastien Helleu ad5fa7c99f core: add command /toggle 2021-10-01 22:55:38 +02:00
Sébastien Helleu 9548a4cf74 core: check that option is not NULL in function config_file_option_value_to_string 2021-09-27 23:23:01 +02:00
Sébastien Helleu 301f0942c6 core: fix search of option when the section is not given 2021-09-27 22:35:14 +02:00
Sébastien Helleu fb57ad147e core: check that option_name is not NULL in config file functions 2021-09-27 22:02:22 +02:00
Nils Görs 3ee2f40fb3 core: update German translations 2021-09-26 20:25:20 +02:00
Sébastien Helleu edd1971ae8 irc: fix parsing of TAGMSG message when there is a colon before the channel
This fixes the display of typing notifications on some IRC servers like
inspircd.
2021-09-21 20:41:18 +02:00
Sébastien Helleu a6826af796 core: add creation of user variables in evaluated expressions with ${define:name,value} 2021-09-20 21:15:28 +02:00
Jan Palus bd21b25bad typing: correct typo in CMake option description 2021-09-19 14:58:07 +02:00
Sébastien Helleu 48a4a043b7 Version 3.4-dev 2021-09-19 12:23:06 +02:00
Sébastien Helleu 3b9217e460 Version 3.3 2021-09-19 10:14:18 +02:00
Sébastien Helleu eaacd805ae php: add missing header files in autotools build 2021-09-19 09:54:01 +02:00
Sébastien Helleu e9d303c4fa debian: update changelog 2021-09-18 10:33:04 +02:00
Sébastien Helleu fb1bf569a9 debian: bump Standards-Version to 4.6.0.1 2021-09-18 10:32:39 +02:00
Sébastien Helleu e00937875d Version 3.3-rc1 2021-09-11 09:20:58 +02:00
a1346054 5dbf24d179 docs: trim excess whitespace 2021-09-11 00:17:36 +02:00
a1346054 9d7cac2396 build: fix shellcheck warnings 2021-09-11 00:17:36 +02:00
a1346054 04977fa9da legal: use license file from gnu.org
Downloaded from:
https://www.gnu.org/licenses/gpl-3.0.txt
2021-09-11 00:17:36 +02:00
Sébastien Helleu 4aa2b86ee2 doc: update German auto-generated file 2021-09-10 23:07:23 +02:00
Sébastien Helleu f3fc1f5f85 core: remove empty line displayed in output of /plugin list <name> 2021-09-10 23:06:05 +02:00
Nils Görs a7d3f9d4e8 core: update German translations 2021-09-10 09:59:14 +02:00
Sébastien Helleu 91d32be93c core: add options "-o", "-ol", "-i" and "-il" in command "/plugin list" 2021-09-09 21:32:58 +02:00
Sébastien Helleu a76eedcd1f core: replace deprecated cmake command "exec_program" by "execute_process"
This fixes a compilation issue on Debian Sid with the latest version of
debianutils (5.4-3), where the "which" command is now deprecated.
2021-09-08 20:46:44 +02:00
Sébastien Helleu 7742b48098 doc: update German auto-generated file 2021-09-07 21:40:01 +02:00
Nils Görs 4d0245711d core: update German translations 2021-09-07 09:42:30 +02:00
Sébastien Helleu 7d1b557627 core: fix indentation in examples of /help eval 2021-09-06 22:39:29 +02:00
Sébastien Helleu 5b3929b321 api: add split of string and shell arguments in evaluation of expressions
Split of string: ${split:number,separators,flags,xxx}
Split of shell arguments: ${split_shell:number,xxx}
2021-09-06 13:32:04 +02:00
Sébastien Helleu 8852e9fd0c core: add CVE id in ChangeLog 2021-09-05 20:54:14 +02:00
Sébastien Helleu d5b68e6b75 core: update ChangeLog (closes #1599) 2021-09-05 09:31:43 +02:00
Ivan Pešić 2446e5814f core: update Serbian translations 2021-09-04 22:01:41 +02:00
Sébastien Helleu 885b470d51 lua: add detection of Lua 5.4 2021-09-04 19:46:14 +02:00
Sébastien Helleu 97b809d164 core: add version 3.2.1 2021-09-04 16:28:04 +02:00
Sébastien Helleu 97bdd51112 relay: fix crash when decoding a malformed websocket frame 2021-09-04 15:55:37 +02:00
Nils Görs 75b9ba03a1 core: update German translations 2021-09-03 15:00:09 +02:00
Sébastien Helleu 5fb7ebdfce irc: fix send of empty JOIN when connecting to a server with only parted channels (closes #1638) 2021-09-03 13:43:07 +02:00
Sébastien Helleu 6fc6166cfe core: update translations 2021-08-31 22:39:17 +02:00
Sébastien Helleu 12be3b8c33 core: add options in command /input and new keys to remove/restore buffers in hotlist
New options in command /input:

- hotlist_remove_buffer
- hotlist_restore_buffer
- hotlist_restore_all

New keys:

- alt+h, alt+c: clear the whole hotlist (former key: alt+h)
- alt+h, alt+m: mark the current buffer as read by removing it from the hotlist
- alt+h, alt+r: restore latest hotlist removed in the current buffer
- alt+h, alt+shift+R: restore latest hotlist removed in all buffers
2021-08-31 22:32:38 +02:00
Sébastien Helleu 5b5626a82b doc: fix typo in French plugin API reference 2021-08-30 13:54:28 +02:00
Sébastien Helleu 968d17b806 core: update ChangeLog (closes #1689) 2021-08-29 10:54:51 +02:00
Sébastien Helleu 2de272ee6c api: add "${re:repl_index}" to get the index of replacement in function string_eval_expression 2021-08-29 10:40:52 +02:00
Sébastien Helleu 009a2889e3 core: ensure python stub is up-to-date in CI 2021-08-16 22:59:32 +02:00
Sébastien Helleu 86e3c672bb doc: write python stub on standard output 2021-08-16 22:59:07 +02:00
Sébastien Helleu 254c1a3e8b doc: update German auto-generated file 2021-08-13 21:08:40 +02:00
Nils Görs fa3cd3dd08 core: update German translations 2021-08-13 09:14:50 +02:00
Sébastien Helleu 89b28e362c irc: add option "-parted" in command /allchan (closes #1685) 2021-08-12 18:15:16 +02:00
Sébastien Helleu cf27302dac core: add terminal and color info in output of /debug color 2021-08-11 18:49:22 +02:00
Sébastien Helleu da8b7a85bb doc: update German auto-generated file 2021-08-10 20:37:50 +02:00
Nils Görs 964d3e54d1 core: update German translations 2021-08-10 14:55:21 +02:00
Sébastien Helleu 960b633517 core: switch to PHP 8.0 in CI 2021-08-08 18:56:16 +02:00
Sébastien Helleu addd80e7b7 doc: update auto-generated files with hdata 2021-08-08 18:44:05 +02:00
Sébastien Helleu 8e676edd1a irc: save CLIENTTAGDENY from message 005 in server, do not send typing messages if "typing" client tag is denied 2021-08-08 18:37:15 +02:00
Sébastien Helleu 415ea95eb4 core: update ChangeLog (issue #1668) 2021-08-08 09:03:22 +02:00
Adam Saponara ede09a843c php: add ifdef for zend_file_handle.filename 2021-08-08 09:00:24 +02:00
Adam Saponara 5442612bc9 php: fix PHP 8+ build 2021-08-08 09:00:24 +02:00
Sébastien Helleu 2b12b4077a php: add detection of PHP 8.0, fix compilation errors 2021-08-08 09:00:24 +02:00
Sébastien Helleu 61c3169068 core: add contributor (issue #1656) 2021-08-07 11:20:08 +02:00
Sébastien Helleu 5b48eef4fe core: update ChangeLog (issue #1656) 2021-08-07 11:19:51 +02:00
Sébastien Helleu 9b75118b83 debian: add Spanish FAQ in Debian packaging 2021-08-07 11:15:28 +02:00
Sébastien Helleu def564c5af doc: add build of Spanish FAQ 2021-08-07 11:15:28 +02:00
Victorhck 57ea636fd6 doc: add Spanish version of the FAQ 2021-08-07 11:15:28 +02:00
Victorhck 84d8120060 doc: fix typo in FAQ 2021-08-07 10:56:56 +02:00
Sébastien Helleu 20866a0457 core: fix decoding of attributes in basic ANSI colors (closes #1678) 2021-08-06 20:33:31 +02:00
Sébastien Helleu 79d50837c9 irc: fix read out of bounds in case of malformed AUTHENTICATE message (issue #1679) 2021-08-03 20:01:15 +02:00
Sébastien Helleu 791b910a77 irc: fix SASL authentication when AUTHENTICATE message is received with a server name (closes #1679) 2021-08-03 19:58:13 +02:00
Sébastien Helleu d89c4f559c api: add random integer number in evaluation of expressions with "random:min,max" 2021-08-03 19:46:41 +02:00
Nils Görs 0be4020b68 core: update German translations 2021-08-03 18:30:47 +02:00
Sébastien Helleu 72a9b87c1c irc: display a different message for setname applied on self and other nicks (closes #1676) 2021-08-01 10:30:06 +02:00
Nils Görs 88d59de940 doc: update German documentation 2021-07-12 09:51:27 +02:00
Sébastien Helleu 6ff46776a4 doc: rename secured data name in IRC server example (user's guide) 2021-07-11 21:56:28 +02:00
Sébastien Helleu 77d96fec23 doc: fix columns width in user's guide 2021-07-10 20:08:36 +02:00
Sébastien Helleu 9404097756 doc: add chapters on IRC servers, channels, private messages (user's guide) 2021-07-10 18:35:57 +02:00
Sébastien Helleu a16616637a irc: remove unneeded message about Diffie-Hellman shared secret exchange during SSL connection to server (closes #857) 2021-07-10 16:02:19 +02:00
Sébastien Helleu 2b1582c816 core: add lint with bandit in CI 2021-07-09 23:56:24 +02:00
Sébastien Helleu efea27bb24 relay: remove dead assignment 2021-07-08 23:02:50 +02:00
Sébastien Helleu 6052c1a5c0 doc: update German auto-generated file 2021-07-04 20:50:41 +02:00
Sébastien Helleu 3199877bc0 core: add bar item "typing" in status bar by default 2021-07-04 20:49:58 +02:00
Sébastien Helleu b0d4b9aaba typing: remove trailing space in translated message 2021-07-04 19:42:30 +02:00
Nils Görs 6a1425d5ba core: update German translations 2021-07-04 19:18:35 +02:00
Sébastien Helleu 64b52da406 typing: add option typing.look.input_min_chars 2021-07-04 14:02:15 +02:00
Sébastien Helleu 5ae4af1549 core: update ChangeLog 2021-07-04 13:37:52 +02:00
Sébastien Helleu f79929b382 core: update translations 2021-07-04 13:36:32 +02:00
Sébastien Helleu a4507539fb typing: add option typing.look.item_max_length 2021-07-04 13:27:33 +02:00
Sébastien Helleu 5b87e0c544 api: add function string_cut 2021-07-04 13:27:33 +02:00
Sébastien Helleu 1746e832ec typing: remove hashtables when typing is turned off 2021-07-04 13:27:33 +02:00
Sébastien Helleu ed24930547 typing: add note for translators 2021-07-04 13:27:33 +02:00
Sébastien Helleu 7c83ee02f2 tests: add tests on typing plugin functions 2021-07-04 13:27:33 +02:00
Sébastien Helleu 8dc75564c2 doc: add typing plugin files in developer's guide 2021-07-04 13:27:33 +02:00
Sébastien Helleu 5b7f55090b build: add typing plugin in Cygwin packaging 2021-07-04 13:27:33 +02:00
Sébastien Helleu de61048cd2 debian: add typing plugin in Debian packaging 2021-07-04 13:27:33 +02:00
Sébastien Helleu 252d1bbc9d doc: add file typing.conf in man page 2021-07-04 13:27:33 +02:00
Sébastien Helleu 0355f3fc1a doc: add chapter on typing extension in user's guide 2021-07-04 13:27:33 +02:00
Sébastien Helleu 09d871deb4 doc: add column for min WeeChat version in function buffer_set (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu 503a3cb755 doc: add column for min WeeChat version in function hook_set (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu c127d1693a doc: add column for min WeeChat version in function hook_modifier_exec (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu 134f4374f8 doc: add column for min WeeChat version in function hook_modifier (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu ab916d3d90 doc: add column for min WeeChat version in function hook_hsignal (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu 3d54365d67 doc: add column for min WeeChat version in function hook_process_hashtable (plugin API reference) 2021-07-04 13:27:33 +02:00
Sébastien Helleu 3c920f9a80 doc: add typing signals in plugin API reference 2021-07-04 13:27:33 +02:00
Sébastien Helleu 954f943e8e irc, typing: display typing status for IRC nicks 2021-07-04 13:27:33 +02:00
Sébastien Helleu bba300e191 typing: translate strings in typing plugin sources 2021-07-04 13:27:33 +02:00
Sébastien Helleu 7954dbc1f4 typing: replace linked list with a hashtable to store typing status on buffers 2021-07-04 13:27:33 +02:00
Sébastien Helleu b108e97085 irc: send typing status as TAGMSG to other users 2021-07-04 13:27:33 +02:00
Sébastien Helleu dccf605e66 typing: add typing plugin 2021-07-04 13:27:32 +02:00
Sébastien Helleu b585ec09f8 core: fix number of bytes read in function dir_file_copy 2021-07-03 16:50:30 +02:00
Sébastien Helleu 5253478279 script: fix move of installed script on another filesystem (closes #1667) 2021-07-03 16:06:02 +02:00
Sébastien Helleu 8a11a18dc5 api: add function file_copy (issue #1667) 2021-07-03 16:04:50 +02:00
Sébastien Helleu 9432b44a2b irc: remove dead assignments in SASL functions 2021-07-02 21:58:50 +02:00
Sébastien Helleu 1ac800906b doc: update Polish auto-generated files 2021-06-29 00:17:18 +02:00
Krzysztof Korościk 5d4adf8010 doc: updated polish translation 2021-06-28 21:43:37 +02:00
Krzysztof Korościk 689a2c1705 po: updated polish translation 2021-06-28 21:12:17 +02:00
Sébastien Helleu 9bd737ae1a doc: update German auto-generated file 2021-06-28 20:35:06 +02:00
Nils Görs f1761b66c6 core: update German translations 2021-06-28 08:58:28 +02:00
Sébastien Helleu 2205bb6b45 core: add capability message-tags in release notes 2021-06-27 10:41:24 +02:00
Sébastien Helleu e84a3676f6 core: add note about buffers that are not opened in /help layout 2021-06-27 10:35:04 +02:00
Sébastien Helleu 253598d83c doc: mention WeeChat version for WEECHAT_RC_OK_EAT in signals "irc_raw_in" and "irc_in" (plugin API reference) (issue #1657) 2021-06-27 09:56:45 +02:00
Sébastien Helleu ff6bc95429 doc: remove tag "translation missing" in French user's guide (issue #1642) 2021-06-27 09:53:47 +02:00
Sébastien Helleu 61a6b0c705 core: add contributor (issue #1657) 2021-06-27 09:49:36 +02:00
Simon Ser ff8beb1918 irc: allow signals "irc_raw_in" and "irc_in" to eat messages (issue #1657)
This is useful to implement IRC protocol extensions which introduce
new commands.
2021-06-27 09:48:16 +02:00
Ivan Pešić 59853d9b30 doc: update Serbian translations 2021-06-27 09:26:50 +02:00
Sébastien Helleu a48a615613 api: remember insertion order in hashtables 2021-06-26 21:37:02 +02:00
Sébastien Helleu 5a59482cc8 doc: update German auto-generated file 2021-06-25 13:35:16 +02:00
Nils Görs 2478a4187a core: update German translations 2021-06-25 13:27:20 +02:00
Sébastien Helleu 0fb88527ce irc: implement IRCv3.2 SASL authentication, add command /auth (closes #413) 2021-06-25 11:15:22 +02:00
Sébastien Helleu 7a0020f067 irc: fix comment on TAGMSG callback function (issue #1654) 2021-06-25 10:41:27 +02:00
Sébastien Helleu f662ca9398 doc: update German auto-generated files 2021-06-25 10:37:32 +02:00
Nils Görs 8f19798834 core: update German translations 2021-06-25 09:30:14 +02:00
Sébastien Helleu 22a7e18842 irc: add support of capability "message-tags" (closes #1654) 2021-06-24 21:04:52 +02:00
Sébastien Helleu 51123b755d core: add missing source files for gettext 2021-06-24 21:02:13 +02:00
Sébastien Helleu b1cf12700d irc: add keys/values with tags in output of irc_message_parse_to_hashtable (issue #1654)
Key is "tag_xxx" (where "xxx" is the name of tag) and value is the unescaped
tag value.
2021-06-24 21:02:03 +02:00
Sébastien Helleu 8ea1ee06e5 irc: add support of TAGMSG messages (issue #1654) 2021-06-24 21:01:22 +02:00
Sébastien Helleu 23c46c3f2b irc: escape/unescape IRC message tags values (issue #1654)
Spec: https://ircv3.net/specs/extensions/message-tags#escaping-values
2021-06-24 20:59:21 +02:00
Sébastien Helleu b3b4ef648b core: fix use of uninitialized hash when call to weecrypto_hmac fails 2021-06-23 20:46:53 +02:00
Sébastien Helleu 60b9e36ae2 core: fix function string_match with joker in the string if multiple words matched in input string
Before fix:

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

After fix:

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

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

(Small contribution to GitHub issue #1641)
2021-06-14 21:38:45 +02:00
Sébastien Helleu 19e41eb28a core: add contributor (issue #1655) 2021-06-13 16:30:24 +02:00
eevan78 31b22fec09 doc: add Serbian translations 2021-06-13 16:28:33 +02:00
Krzysztof Korościk 1624b0ba97 doc: updated polish translation 2021-06-13 14:59:07 +02:00
Krzysztof Korościk 9fe937a7fd po: updated polish translation 2021-06-13 14:41:02 +02:00
Sébastien Helleu f6d1991833 Version 3.3-dev 2021-06-13 09:51:42 +02:00
243 changed files with 77649 additions and 7834 deletions
+57 -7
View File
@@ -6,13 +6,13 @@ on:
jobs: jobs:
build: build_linux:
name: ${{ matrix.config.name }}
runs-on: ubuntu-20.04
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
os:
- ubuntu-20.04
config: config:
- { name: "cmake_gcc", cc: "gcc", cxx: "g++", tool: "cmake", args: "" } - { name: "cmake_gcc", cc: "gcc", cxx: "g++", tool: "cmake", args: "" }
- { name: "cmake_gcc_no_nls", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_NLS=OFF" } - { name: "cmake_gcc_no_nls", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_NLS=OFF" }
@@ -22,6 +22,9 @@ jobs:
- { name: "autotools_gcc", cc: "gcc", cxx: "g++", tool: "autotools", args: "" } - { name: "autotools_gcc", cc: "gcc", cxx: "g++", tool: "autotools", args: "" }
- { name: "autotools_clang", cc: "clang", cxx: "clang++", tool: "autotools", args: "" } - { name: "autotools_clang", cc: "clang", cxx: "clang++", tool: "autotools", args: "" }
name: ${{ matrix.config.name }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
@@ -30,7 +33,7 @@ jobs:
run: | run: |
sudo apt-add-repository --yes ppa:ondrej/php sudo apt-add-repository --yes ppa:ondrej/php
sudo apt-get update -qq sudo apt-get update -qq
sudo apt-get --yes --no-install-recommends install devscripts equivs python3-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python2-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev zlib1g-dev curl libcpputest-dev php7.4-dev libphp7.4-embed libargon2-0-dev libsodium-dev pylint asciidoctor sudo apt-get --yes --no-install-recommends install devscripts equivs python3-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python2-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev zlib1g-dev curl libcpputest-dev php8.0-dev libphp8.0-embed libargon2-0-dev libsodium-dev pylint python3-bandit asciidoctor
sudo -H pip3 install --ignore-installed msgcheck sudo -H pip3 install --ignore-installed msgcheck
- name: Test patches - name: Test patches
@@ -43,9 +46,12 @@ jobs:
run: | run: |
pylint --additional-builtins=_ doc/docgen.py pylint --additional-builtins=_ doc/docgen.py
pylint doc/python_stub.py pylint doc/python_stub.py
pylint tests/scripts/python/testapigen.py pylint tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
pylint tests/scripts/python/testapi.py bandit doc/docgen.py doc/python_stub.py
pylint tests/scripts/python/unparse.py bandit tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
- name: Check Python stub file
run: ./doc/python_stub.py | diff - src/plugins/python/weechat.pyi
- name: Build and run tests - name: Build and run tests
env: env:
@@ -76,3 +82,47 @@ jobs:
lcov --remove coverage.info '/usr/*' --output-file coverage.info lcov --remove coverage.info '/usr/*' --output-file coverage.info
lcov --list coverage.info lcov --list coverage.info
bash <(curl -s https://codecov.io/bash) -f coverage.info || echo 'Codecov error' bash <(curl -s https://codecov.io/bash) -f coverage.info || echo 'Codecov error'
build_macos:
strategy:
fail-fast: false
matrix:
os:
- macos-latest
config:
- { name: "cmake_gcc", cc: "gcc", cxx: "g++" }
- { name: "cmake_clang", cc: "clang", cxx: "clang++" }
name: ${{ matrix.config.name }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
brew update
brew install asciidoctor lua ruby
- name: Build
env:
CC: ${{ matrix.config.cc }}
CXX: ${{ matrix.config.cxx }}
run: |
mkdir build-tmp && cd build-tmp
cmake .. -DENABLE_MAN=ON -DENABLE_DOC=ON -DENABLE_PHP=OFF
make VERBOSE=1 -j2
sudo make install
- name: Run WeeChat
env:
TERM: xterm-256color
run: |
weechat --help
weechat-curses --help
weechat --colors
weechat --license
weechat --version
weechat --temp-dir --run-command "/debug dirs;/debug libs" --run-command "/quit"
+3
View File
@@ -56,6 +56,7 @@ Alphabetically:
* Guido Berhoerster * Guido Berhoerster
* Gwenn * Gwenn
* Hasan Kiran (turgay) * Hasan Kiran (turgay)
* Ivan Pešić
* Ivan Sichmann Freitas * Ivan Sichmann Freitas
* Jakub Jirutka * Jakub Jirutka
* Jan Palus * Jan Palus
@@ -130,6 +131,7 @@ Alphabetically:
* Simmo Saan (sim642) * Simmo Saan (sim642)
* Simon Arlott * Simon Arlott
* Simon Kuhnle * Simon Kuhnle
* Simon Ser
* Stefano Pigozzi * Stefano Pigozzi
* Stfn * Stfn
* Sven Knurr (Cthulhux) * Sven Knurr (Cthulhux)
@@ -143,6 +145,7 @@ Alphabetically:
* Trevor Bergeron * Trevor Bergeron
* Valentin Lorentz (progval) * Valentin Lorentz (progval)
* Vasco Almeida * Vasco Almeida
* Victorhck
* Voroskoi * Voroskoi
* Wojciech Kwolek * Wojciech Kwolek
* W. Trevor King * W. Trevor King
+1
View File
@@ -115,6 +115,7 @@ option(ENABLE_PHP "Enable PHP scripting language" ON)
option(ENABLE_SPELL "Enable Spell checker plugin" ON) option(ENABLE_SPELL "Enable Spell checker plugin" ON)
option(ENABLE_ENCHANT "Enable Enchant lib for Spell checker plugin" OFF) option(ENABLE_ENCHANT "Enable Enchant lib for Spell checker plugin" OFF)
option(ENABLE_TRIGGER "Enable Trigger plugin" ON) option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
option(ENABLE_TYPING "Enable Typing plugin" ON)
option(ENABLE_XFER "Enable Xfer plugin" ON) option(ENABLE_XFER "Enable Xfer plugin" ON)
option(ENABLE_MAN "Enable build of man page" OFF) option(ENABLE_MAN "Enable build of man page" OFF)
option(ENABLE_DOC "Enable build of documentation" OFF) option(ENABLE_DOC "Enable build of documentation" OFF)
+1 -1
View File
@@ -671,4 +671,4 @@ into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read Public License instead of this License. But first, please read
<https://www.gnu.org/philosophy/why-not-lgpl.html>. <https://www.gnu.org/licenses/why-not-lgpl.html>.
+79 -3
View File
@@ -15,6 +15,82 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
(file _ReleaseNotes.adoc_ in sources). (file _ReleaseNotes.adoc_ in sources).
[[v3.4]]
== Version 3.4 (under dev)
New features::
* core: add command /toggle
* api: add user variables in evaluation of expressions with "define:name,value"
Bug fixes::
* api: fix search of option when the section is not given in functions config_search_option and config_search_section_option
* irc: fix parsing of CAP message when there is no prefix (issue #1707)
* irc: fix parsing of TAGMSG message when there is a colon before the channel
[[v3.3]]
== Version 3.3 (2021-09-19)
New features::
* core: change key kbd:[Alt+h] to kbd:[Alt+h], kbd:[Alt+c] (clear hotlist)
* core: add options "hotlist_remove_buffer", "hotlist_restore_buffer" and "hotlist_restore_all" in command /input, add default keys kbd:[Alt+h], kbd:[Alt+m] (remove buffer), kbd:[Alt+h], kbd:[Alt+r] (restore hotlist in current buffer) and kbd:[Alt+h], kbd:[Alt+Shift+R] (restore hotlist in all buffers)
* core: add option "certs" in command /debug
* core: add options "-o", "-ol", "-i" and "-il" in command "/plugin list"
* api: add split of string and shell arguments in evaluation of expressions with "split:number,seps,flags,xxx" and "split_shell:number,xxx"
* api: add `${re:repl_index}` to get the index of replacement in function string_eval_expression (issue #1689)
* api: add random integer number in evaluation of expressions with "random:min,max"
* api: add function string_cut
* api: add function file_copy (issue #1667)
* api: remember insertion order in hashtables
* api: add keys/values with tags in output of irc_message_parse_to_hashtable (issue #1654)
* irc: add option "-parted" in command /allchan (issue #1685)
* irc: allow signals "irc_raw_in" and "irc_in" to eat messages (issue #1657)
* irc: implement IRCv3.2 SASL authentication, add command /auth, reconnect by default to the server in case of SASL authentication failure (issue #413)
* irc: add support of capability "message-tags" and TAGMSG messages (issue #1654)
* irc: enable all capabilities by default (if supported by server and WeeChat), change default value of option irc.server_default.capabilities to "*" (issue #320)
* irc: add options irc.look.display_account_message and irc.look.display_extended_join (issue #320)
* irc: add command /setname, add support of message and capability "setname" (issue #1653)
* irc: always set realname in nicks even when extended-join capability is not enabled (issue #1653)
* irc: add support of FAIL/WARN/NOTE messages (issue #1653)
* irc: drop support of DH-BLOWFISH and DH-AES SASL mechanisms (issue #175)
* typing: new plugin "typing": display users currently writing messages on IRC channel/private buffers
Bug fixes::
* core: fix decoding of attributes in basic ANSI colors (issue #1678)
* api: fix function string_match with joker in the string if multiple words matched in input string
* irc: fix send of empty JOIN when connecting to a server with only parted channels (issue #1638)
* irc: fix SASL authentication when AUTHENTICATE message is received with a server name (issue #1679)
* irc: remove unneeded message about Diffie-Hellman shared secret exchange during SSL connection to server (issue #857)
* irc: escape/unescape IRC message tags values (issue #1654)
* irc: set notify level to "private" for received WALLOPS
* script: fix move of installed script on another filesystem (issue #1667)
Documentation::
* add Spanish FAQ (issue #1656)
* add Serbian translations (issue #1655)
Tests::
* core: switch to PHP 8.0 in CI
* core: add build on macOS in CI
Build::
* core: fix build on macOS (issue #1662)
* lua: add detection of Lua 5.4
* php: add support of PHP 8.0 and 8.1 (issue #1599, issue #1668)
[[v3.2.1]]
== Version 3.2.1 (2021-09-04)
Bug fixes::
* relay: fix crash when decoding a malformed websocket frame (CVE-2021-40516)
[[v3.2]] [[v3.2]]
== Version 3.2 (2021-06-13) == Version 3.2 (2021-06-13)
@@ -753,7 +829,7 @@ Bug fixes::
* core: fix command /cursor stop (do not toggle cursor mode) (issue #964) * core: fix command /cursor stop (do not toggle cursor mode) (issue #964)
* core: fix delayed refresh when the signal SIGWINCH is received (terminal resized), send signal "signal_sigwinch" after refreshes (issue #902) * core: fix delayed refresh when the signal SIGWINCH is received (terminal resized), send signal "signal_sigwinch" after refreshes (issue #902)
* irc: fix update of server addresses on reconnection when the evaluated content has changed (issue #925) * irc: fix update of server addresses on reconnection when the evaluated content has changed (issue #925)
* irc: fix crash in case of invalid server reply during SASL authentication with dh-blowfish or dh-aes mechanism * irc: fix crash in case of invalid server reply during SASL authentication with DH-BLOWFISH or DH-AES mechanism
* irc: fix double decoding of IRC colors in messages sent/displayed by commands /msg and /query (issue #943) * irc: fix double decoding of IRC colors in messages sent/displayed by commands /msg and /query (issue #943)
* irc: fix parsing of message 324 (modes) when there is a colon before the modes (issue #913) * irc: fix parsing of message 324 (modes) when there is a colon before the modes (issue #913)
* relay: check buffer pointer received in "sync" and "desync" commands (weechat protocol) (issue #936) * relay: check buffer pointer received in "sync" and "desync" commands (weechat protocol) (issue #936)
@@ -1540,7 +1616,7 @@ New features::
* aspell: add completion "aspell_dicts" (list of aspell installed dictionaries) * aspell: add completion "aspell_dicts" (list of aspell installed dictionaries)
* aspell: add info "aspell_dict" (dictionaries used on a buffer) * aspell: add info "aspell_dict" (dictionaries used on a buffer)
* aspell: optimization on spellers to improve speed (save state by buffer) * aspell: optimization on spellers to improve speed (save state by buffer)
* irc: add support of "dh-aes" SASL mechanism (patch #8020) * irc: add support of DH-AES SASL mechanism (patch #8020)
* irc: add support of UHNAMES (capability "userhost-in-names") (task #9353) * irc: add support of UHNAMES (capability "userhost-in-names") (task #9353)
* irc: add tag "irc_nick_back" for messages displayed in private buffer when a nick is back on server (task #12576) * irc: add tag "irc_nick_back" for messages displayed in private buffer when a nick is back on server (task #12576)
* irc: add option irc.look.display_join_message (task #10895) * irc: add option irc.look.display_join_message (task #10895)
@@ -1920,7 +1996,7 @@ Bug fixes::
* core: fix help on plugin option when config_set_desc_plugin is called to set help on newly created option * core: fix help on plugin option when config_set_desc_plugin is called to set help on newly created option
* core: enable background process under Cygwin to connect to servers, fix reconnection problem (bug #34626) * core: enable background process under Cygwin to connect to servers, fix reconnection problem (bug #34626)
* aspell: fix URL detection (do not check spelling of URLs) (bug #34040) * aspell: fix URL detection (do not check spelling of URLs) (bug #34040)
* irc: fix memory leak in SASL/blowfish authentication * irc: fix memory leak in SASL DH-BLOWFISH authentication
* irc: fix memory leak when a server is deleted * irc: fix memory leak when a server is deleted
* irc: fix self-highlight when using /me with an IRC bouncer like znc (bug #35123) * irc: fix self-highlight when using /me with an IRC bouncer like znc (bug #35123)
* irc: use low priority for MODE sent automatically by WeeChat (when joining channel) * irc: use low priority for MODE sent automatically by WeeChat (when joining channel)
+112 -2
View File
@@ -17,6 +17,116 @@ https://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog]
(file _ChangeLog.adoc_ in sources). (file _ChangeLog.adoc_ in sources).
[[v3.3]]
== Version 3.3 (2021-09-19)
[[v3.3_hotlist_keys_clear_restore]]
=== New keys for hotlist
New keys have been added to manipulate the hotlist:
* kbd:[Alt+h], kbd:[Alt+c]: clear the whole hotlist (former key: kbd:[Alt+h])
* kbd:[Alt+h], kbd:[Alt+m]: mark the current buffer as read by removing it from the hotlist
* kbd:[Alt+h], kbd:[Alt+r]: restore latest hotlist removed in the current buffer
* kbd:[Alt+h], kbd:[Alt+Shift+R]: restore latest hotlist removed in all buffers
You can add them with the following command:
----
/key missing
----
Since the key kbd:[Alt+h] has been moved to kbd:[Alt+h], kbd:[Alt+c], you must
manually remove the old key:
----
/key unbind meta-h
----
[[v3.3_typing_bar_item]]
=== Bar item "typing"
A bar item called "typing" has been added to status bar by default. It is used
to display users that are currently typing a message on the current IRC channel
or private buffer.
If you want to display typing notifications in the status bar, add ",[typing]"
in your option _weechat.bar.status.items_.
[[v3.3_ordered_hashtables]]
=== Ordered hashtables
Hashtables entries are now ordered by creation date, the following functions
are now returning entries sorted by insertion order:
* hashtable_map
* hashtable_map_string
* hashtable_get_string (all properties except "keys_sorted" and "keys_values_sorted")
* hashtable_add_to_infolist
[[v3.3_irc_default_capabilities]]
=== IRC default capabilities
All supported capabilities are now enabled by default if the server support
them:
* account-notify
* away-notify
* cap-notify
* chghost
* extended-join
* invite-notify
* message-tags
* multi-prefix
* server-time
* setname
* userhost-in-names
Two new options have been added and enabled by default to customize the behavior
of capabilities "account-notify" and "extended-join":
* _irc.look.display_account_message_: display ACCOUNT messages received
* _irc.look.display_extended_join_: display extended join info in the JOIN
messages: account name and real name
The default value of option _irc.server_default.capabilities_ is now `*` which
means that all capabilities supported by both WeeChat and the server are enabled
by default.
After upgrade, to enable all capabilities and remove custom capabilities you
have set, you can do:
----
/set irc.server_default.capabilities "*"
/unset irc.server.example.capabilities
----
You can also explicitly disable some capabilities with this syntax
(see `/help irc.server_default.capabilities`):
----
/set irc.server_default.capabilities "*,!away-notify,!extended-join"
----
[[v3.3_irc_sasl_blowfish_aes]]
=== IRC SASL DH-BLOWFISH and DH-AES mechanisms removed
The SASL mechanisms DH-BLOWFISH and DH-AES have been removed, because they
are insecure and already removed from most IRC servers. +
If you were using one of these mechanisms, it is highly recommended to switch
to any other supported SASL mechanism.
For example:
----
/set irc.server.example.sasl_mechanism scram-sha-256
----
[[v3.2.1]]
== Version 3.2.1 (2021-09-04)
Bug fix and maintenance release.
[[v3.2]] [[v3.2]]
== Version 3.2 (2021-06-13) == Version 3.2 (2021-06-13)
@@ -1499,7 +1609,7 @@ The command `/input jump_last_buffer` still works for compatibility reasons,
but it should not be used any more. but it should not be used any more.
Similarly, a new key has been added to jump to first buffer: kbd:[Alt+j], kbd:[Alt+f]. Similarly, a new key has been added to jump to first buffer: kbd:[Alt+j], kbd:[Alt+f].
You can add it with following command: You can add it with the following command:
---- ----
/key missing /key missing
@@ -2239,7 +2349,7 @@ All users of version 0.3.1 should upgrade to this version.
=== Aliases === Aliases
IRC commands /ame and /amsg are now aliases, if you are upgrading from version IRC commands /ame and /amsg are now aliases, if you are upgrading from version
0.3.0, you must create aliases with following commands: 0.3.0, you must create aliases with the following commands:
---- ----
/alias aaway allserv /away /alias aaway allserv /away
+3 -3
View File
@@ -34,7 +34,7 @@ err ()
echo "-------" echo "-------"
echo "Error :" echo "Error :"
echo "---8<-----------------------------------" echo "---8<-----------------------------------"
cat $AUTOGEN_LOG cat "$AUTOGEN_LOG"
echo "----------------------------------->8---" echo "----------------------------------->8---"
exit 1 exit 1
} }
@@ -42,7 +42,7 @@ err ()
run () run ()
{ {
printf "Running \"%s\"..." "$@" printf "Running \"%s\"..." "$@"
if eval "$@" >$AUTOGEN_LOG 2>&1 ; then if eval "$@" >"$AUTOGEN_LOG" 2>&1 ; then
echo " OK" echo " OK"
else else
echo " FAILED" echo " FAILED"
@@ -66,4 +66,4 @@ run "rm -rf intl"
run "autoreconf -vi" run "autoreconf -vi"
# ending # ending
rm -f $AUTOGEN_LOG rm -f "$AUTOGEN_LOG"
+5 -5
View File
@@ -34,12 +34,12 @@ set(GCRYPT_CFLAGS)
if(LIBGCRYPT_CONFIG_EXECUTABLE) if(LIBGCRYPT_CONFIG_EXECUTABLE)
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS) execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --libs RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS) execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --cflags RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
if(${GCRYPT_CFLAGS} MATCHES "\n") if(NOT DEFINED ${GCRYPT_CFLAGS})
set(GCRYPT_CFLAGS " ") set(GCRYPT_CFLAGS " ")
endif() endif()
endif() endif()
+1 -1
View File
@@ -35,5 +35,5 @@ endif()
find_package(PkgConfig) find_package(PkgConfig)
if(PKG_CONFIG_FOUND) if(PKG_CONFIG_FOUND)
pkg_search_module(LUA lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua) pkg_search_module(LUA lua5.4 lua-5.4 lua54 lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
endif() endif()
+10 -6
View File
@@ -24,26 +24,30 @@ endif()
find_package(PkgConfig) find_package(PkgConfig)
if(PKG_CONFIG_FOUND) if(PKG_CONFIG_FOUND)
pkg_search_module(PHP php7) pkg_search_module(PHP php8 php7)
endif() endif()
if(NOT PHP_FOUND) if(NOT PHP_FOUND)
find_program(PHP_CONFIG_EXECUTABLE NAMES find_program(PHP_CONFIG_EXECUTABLE NAMES
php-config8.1 php-config81
php-config8.0 php-config80
php-config8
php-config7.4 php-config74 php-config7.4 php-config74
php-config7.3 php-config73 php-config7.3 php-config73
php-config7.2 php-config72 php-config7.2 php-config72
php-config7.1 php-config71 php-config7.1 php-config71
php-config7.0 php-config70 php-config7.0 php-config70
php-config php-config7 php-config7
php-config
) )
if (PHP_CONFIG_EXECUTABLE) if (PHP_CONFIG_EXECUTABLE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --prefix OUTPUT_VARIABLE PHP_LIB_PREFIX OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --prefix OUTPUT_VARIABLE PHP_LIB_PREFIX OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --includes OUTPUT_VARIABLE PHP_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --includes OUTPUT_VARIABLE PHP_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE PHP_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE PHP_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --version OUTPUT_VARIABLE PHP_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --version OUTPUT_VARIABLE PHP_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
if(${PHP_VERSION} MATCHES "^7") if(${PHP_VERSION} MATCHES "^[78]")
find_library(PHP_LIB find_library(PHP_LIB
NAMES php7.4 php7.3 php7.2 php7.1 php7.0 php7 NAMES php8.1 php8.0 php8 php7.4 php7.3 php7.2 php7.1 php7.0 php7 php
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64 HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64
) )
if(PHP_LIB) if(PHP_LIB)
@@ -58,9 +62,9 @@ if(NOT PHP_FOUND)
endif() endif()
if(NOT PHP_FOUND) if(NOT PHP_FOUND)
message(WARNING "Could not find libphp7. " message(WARNING "Could not find libphp. "
"Ensure PHP >=7.0.0 development libraries are installed and compiled with `--enable-embed`. " "Ensure PHP >=7.0.0 development libraries are installed and compiled with `--enable-embed`. "
"Ensure `php-config` is in `PATH`. " "Ensure `php-config` is in `PATH`. "
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp7." "You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp."
) )
endif() endif()
+1 -3
View File
@@ -28,9 +28,7 @@ list(REVERSE files)
foreach(file ${files}) foreach(file ${files})
message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"") message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
if(EXISTS "$ENV{DESTDIR}${file}") if(EXISTS "$ENV{DESTDIR}${file}")
exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\"" execute_process(COMMAND "@CMAKE_COMMAND@" -E remove "$ENV{DESTDIR}${file}" OUTPUT_VARIABLE rm_out RESULT_VARIABLE rm_retval)
OUTPUT_VARIABLE rm_out
RETURN_VARIABLE rm_retval)
if("${rm_retval}" GREATER 0) if("${rm_retval}" GREATER 0)
message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"") message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
endif() endif()
+49 -25
View File
@@ -64,7 +64,7 @@ darwin*)
esac esac
# Gettext # Gettext
ALL_LINGUAS="cs de es fr hu it ja pl pt pt_BR ru tr" ALL_LINGUAS="cs de es fr hu it ja pl pt pt_BR ru sr tr"
AM_GNU_GETTEXT AM_GNU_GETTEXT
AM_GNU_GETTEXT_VERSION([0.18]) AM_GNU_GETTEXT_VERSION([0.18])
@@ -130,6 +130,7 @@ AH_VERBATIM([PLUGIN_GUILE], [#undef PLUGIN_GUILE])
AH_VERBATIM([PLUGIN_JAVASCRIPT], [#undef PLUGIN_JAVASCRIPT]) AH_VERBATIM([PLUGIN_JAVASCRIPT], [#undef PLUGIN_JAVASCRIPT])
AH_VERBATIM([PLUGIN_SPELL], [#undef PLUGIN_SPELL]) AH_VERBATIM([PLUGIN_SPELL], [#undef PLUGIN_SPELL])
AH_VERBATIM([PLUGIN_TRIGGER], [#undef PLUGIN_TRIGGER]) AH_VERBATIM([PLUGIN_TRIGGER], [#undef PLUGIN_TRIGGER])
AH_VERBATIM([PLUGIN_TYPING], [#undef PLUGIN_TYPING])
AH_VERBATIM([PLUGIN_XFER], [#undef PLUGIN_XFER]) AH_VERBATIM([PLUGIN_XFER], [#undef PLUGIN_XFER])
AH_VERBATIM([TESTS], [#undef TESTS]) AH_VERBATIM([TESTS], [#undef TESTS])
AH_VERBATIM([MAN], [#undef MAN]) AH_VERBATIM([MAN], [#undef MAN])
@@ -164,6 +165,7 @@ AC_ARG_ENABLE(php, [ --disable-php turn off PHP script plugi
AC_ARG_ENABLE(spell, [ --disable-spell turn off Spell checker plugin (default=compiled)],enable_spell=$enableval,enable_spell=yes) AC_ARG_ENABLE(spell, [ --disable-spell turn off Spell checker plugin (default=compiled)],enable_spell=$enableval,enable_spell=yes)
AC_ARG_ENABLE(enchant, [ --enable-enchant turn on Enchant lib for Spell checker plugin (default=off)],enable_enchant=$enableval,enable_enchant=no) AC_ARG_ENABLE(enchant, [ --enable-enchant turn on Enchant lib for Spell checker plugin (default=off)],enable_enchant=$enableval,enable_enchant=no)
AC_ARG_ENABLE(trigger, [ --disable-trigger turn off Trigger plugin (default=compiled)],enable_trigger=$enableval,enable_trigger=yes) AC_ARG_ENABLE(trigger, [ --disable-trigger turn off Trigger plugin (default=compiled)],enable_trigger=$enableval,enable_trigger=yes)
AC_ARG_ENABLE(typing, [ --disable-typing turn off Typing plugin (default=compiled)],enable_trigger=$enableval,enable_typing=yes)
AC_ARG_ENABLE(xfer, [ --disable-xfer turn off Xfer (file transfer) plugin (default=compiled)],enable_xfer=$enableval,enable_xfer=yes) AC_ARG_ENABLE(xfer, [ --disable-xfer turn off Xfer (file transfer) plugin (default=compiled)],enable_xfer=$enableval,enable_xfer=yes)
AC_ARG_WITH(tclconfig, [ --with-tclconfig=DIR directory containing tcl configuration (tclConfig.sh)],tclconfig=$withval,tclconfig='') AC_ARG_WITH(tclconfig, [ --with-tclconfig=DIR directory containing tcl configuration (tclConfig.sh)],tclconfig=$withval,tclconfig='')
AC_ARG_WITH(debug, [ --with-debug debugging: 0=no debug, 1=debug compilation (default=0)],debug=$withval,debug=0) AC_ARG_WITH(debug, [ --with-debug debugging: 0=no debug, 1=debug compilation (default=0)],debug=$withval,debug=0)
@@ -571,7 +573,7 @@ if test "x$enable_lua" = "xyes" ; then
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
AC_MSG_CHECKING(for Lua headers and libraries with pkg-config) AC_MSG_CHECKING(for Lua headers and libraries with pkg-config)
echo echo
for l in "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do for l in "54" "5.4" "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
pkgconfig_lua_found=`$PKGCONFIG --exists lua$l 2>/dev/null` pkgconfig_lua_found=`$PKGCONFIG --exists lua$l 2>/dev/null`
if test "x$?" = "x0" ; then if test "x$?" = "x0" ; then
LUA_VERSION=`$PKGCONFIG --modversion lua$l` LUA_VERSION=`$PKGCONFIG --modversion lua$l`
@@ -590,7 +592,7 @@ if test "x$enable_lua" = "xyes" ; then
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
LUACONFIG="" LUACONFIG=""
AC_CHECK_PROGS(LUACONFIG, lua-config53 lua-config5.3 lua-config52 lua-config5.2 lua-config51 lua-config5.1 lua-config50 lua-config5.0 lua-config) AC_CHECK_PROGS(LUACONFIG, lua-config54 lua-config5.4 lua-config53 lua-config5.3 lua-config52 lua-config5.2 lua-config51 lua-config5.1 lua-config50 lua-config5.0 lua-config)
if test "x$LUACONFIG" != "x" ; then if test "x$LUACONFIG" != "x" ; then
AC_MSG_CHECKING(for Lua headers and libraries with lua-config) AC_MSG_CHECKING(for Lua headers and libraries with lua-config)
echo echo
@@ -608,7 +610,7 @@ if test "x$enable_lua" = "xyes" ; then
if test "x$ac_found_lua_header" = "xyes" -a "x$ac_found_liblua_header" = "xyes"; then if test "x$ac_found_lua_header" = "xyes" -a "x$ac_found_liblua_header" = "xyes"; then
LUA_CFLAGS="$CFLAGS" LUA_CFLAGS="$CFLAGS"
fi fi
for l in "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do for l in "54" "5.4" "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
AC_CHECK_LIB(lua$l,lua_call,ac_found_lua_lib="yes",ac_found_lua_lib="no") AC_CHECK_LIB(lua$l,lua_call,ac_found_lua_lib="yes",ac_found_lua_lib="no")
if test "x$ac_found_lua_lib" = "xyes" ; then if test "x$ac_found_lua_lib" = "xyes" ; then
LUA_VERSION=">=5.1.0" LUA_VERSION=">=5.1.0"
@@ -831,6 +833,7 @@ if test "x$enable_php" = "xyes" ; then
PHP_CFLAGS="" PHP_CFLAGS=""
PHP_LFLAGS="" PHP_LFLAGS=""
PHP_VERSIONS="8.1 81 8.0 80 8 7.4 74 7.3 73 7.2 72 7.1 71 7.0 70 7 $php_suffix"
if test -n "$php_inc"; then if test -n "$php_inc"; then
CFLAGS="$CFLAGS -I$php_inc" CFLAGS="$CFLAGS -I$php_inc"
@@ -843,7 +846,7 @@ if test "x$enable_php" = "xyes" ; then
if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then
AC_MSG_CHECKING(for PHP headers and libraries with pkg-config) AC_MSG_CHECKING(for PHP headers and libraries with pkg-config)
echo echo
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do for l in $PHP_VERSIONS "" ; do
pkgconfig_php_found=`$PKGCONFIG --exists php$l 2>/dev/null` pkgconfig_php_found=`$PKGCONFIG --exists php$l 2>/dev/null`
if test "x$?" = "x0" ; then if test "x$?" = "x0" ; then
pkgconfig_php_found=`$PKGCONFIG --atleast-version=7 php$l 2>/dev/null` pkgconfig_php_found=`$PKGCONFIG --atleast-version=7 php$l 2>/dev/null`
@@ -860,11 +863,12 @@ if test "x$enable_php" = "xyes" ; then
if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then
PHPCONFIG="" PHPCONFIG=""
AC_MSG_CHECKING(for PHP headers and libraries with php-config) AC_MSG_CHECKING(for PHP headers and libraries with php-config)
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do echo
for l in $PHP_VERSIONS "" ; do
AC_CHECK_PROG(PHPCONFIG, "php-config$l", "php-config$l") AC_CHECK_PROG(PHPCONFIG, "php-config$l", "php-config$l")
if test "x$PHPCONFIG" != "x" ; then if test "x$PHPCONFIG" != "x" ; then
php_config_version=`$PHPCONFIG --version` php_config_version=`$PHPCONFIG --version`
if test "x${php_config_version#7}" != "x${php_config_version}" ; then if echo "x$php_config_version" | grep -e "^x7" -e "^x8" 1>/dev/null 2>&1 ; then
PHP_VERSION=$php_config_version PHP_VERSION=$php_config_version
PHP_CFLAGS=`$PHPCONFIG --includes` PHP_CFLAGS=`$PHPCONFIG --includes`
PHP_LFLAGS="-L$($PHPCONFIG --prefix)/lib/ $($PHPCONFIG --libs) -lphp$l" PHP_LFLAGS="-L$($PHPCONFIG --prefix)/lib/ $($PHPCONFIG --libs) -lphp$l"
@@ -881,23 +885,25 @@ if test "x$enable_php" = "xyes" ; then
if test "x$ac_found_php_header" = "xyes" ; then if test "x$ac_found_php_header" = "xyes" ; then
PHP_CFLAGS="$CFLAGS" PHP_CFLAGS="$CFLAGS"
fi fi
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do for l in $PHP_VERSIONS "" ; do
AC_CHECK_LIB(php$l,php_execute_script,ac_found_php_lib="yes",ac_found_php_lib="no") for PHP_LIB_SUFFIX in "$l" "$(echo $l | cut -c1)" "" ; do
if test "x$ac_found_php_lib" = "xyes" ; then AC_CHECK_LIB(php$PHP_LIB_SUFFIX,php_execute_script,ac_found_php_lib="yes",ac_found_php_lib="no")
PHP_VERSION=">=7.0.0" if test "x$ac_found_php_lib" = "xyes" ; then
PHP_VERSION=">=7.0.0"
PHP_LFLAGS="$LDFLAGS -lphp7 -lm" PHP_LFLAGS="$LDFLAGS -lphp$PHP_LIB_SUFFIX -lm"
ac2_save_LDFLAGS="$LDFLAGS" ac2_save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS -lphp7 -lm" LDFLAGS="$LDFLAGS -lphp$PHP_LIB_SUFFIX -lm"
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
LDFLAGS="$LDFLAGS -ldl" LDFLAGS="$LDFLAGS -ldl"
fi
LDFLAGS="$ac2_save_LDFLAGS"
break 2
fi fi
done
LDFLAGS="$ac2_save_LDFLAGS"
break
fi
done done
fi fi
@@ -1013,6 +1019,18 @@ else
not_asked="$not_asked trigger" not_asked="$not_asked trigger"
fi fi
# ---------------------------------- typing ------------------------------------
if test "x$enable_typing" = "xyes" ; then
TYPING_CFLAGS=""
TYPING_LFLAGS=""
AC_SUBST(TYPING_CFLAGS)
AC_SUBST(TYPING_LFLAGS)
AC_DEFINE(PLUGIN_TYPING)
else
not_asked="$not_asked typing"
fi
# ---------------------------------- xfer -------------------------------------- # ---------------------------------- xfer --------------------------------------
if test "x$enable_xfer" = "xyes" ; then if test "x$enable_xfer" = "xyes" ; then
@@ -1365,6 +1383,7 @@ AM_CONDITIONAL(PLUGIN_JAVASCRIPT, test "$enable_javascript" = "yes")
AM_CONDITIONAL(PLUGIN_PHP, test "$enable_php" = "yes") AM_CONDITIONAL(PLUGIN_PHP, test "$enable_php" = "yes")
AM_CONDITIONAL(PLUGIN_SPELL, test "$enable_spell" = "yes") AM_CONDITIONAL(PLUGIN_SPELL, test "$enable_spell" = "yes")
AM_CONDITIONAL(PLUGIN_TRIGGER, test "$enable_trigger" = "yes") AM_CONDITIONAL(PLUGIN_TRIGGER, test "$enable_trigger" = "yes")
AM_CONDITIONAL(PLUGIN_TYPING, test "$enable_typing" = "yes")
AM_CONDITIONAL(PLUGIN_XFER, test "$enable_xfer" = "yes") AM_CONDITIONAL(PLUGIN_XFER, test "$enable_xfer" = "yes")
AM_CONDITIONAL(TESTS, test "$enable_tests" = "yes") AM_CONDITIONAL(TESTS, test "$enable_tests" = "yes")
AM_CONDITIONAL(MAN, test "$enable_man" = "yes") AM_CONDITIONAL(MAN, test "$enable_man" = "yes")
@@ -1373,15 +1392,16 @@ AM_CONDITIONAL(DOC, test "$enable_doc" = "yes")
AC_OUTPUT([Makefile AC_OUTPUT([Makefile
icons/Makefile icons/Makefile
doc/Makefile doc/Makefile
doc/cs/Makefile
doc/de/Makefile
doc/en/Makefile doc/en/Makefile
doc/es/Makefile
doc/fr/Makefile doc/fr/Makefile
doc/it/Makefile doc/it/Makefile
doc/de/Makefile
doc/pl/Makefile
doc/es/Makefile
doc/ru/Makefile
doc/ja/Makefile doc/ja/Makefile
doc/cs/Makefile doc/pl/Makefile
doc/ru/Makefile
doc/sr/Makefile
src/Makefile src/Makefile
src/core/Makefile src/core/Makefile
src/plugins/Makefile src/plugins/Makefile
@@ -1405,6 +1425,7 @@ AC_OUTPUT([Makefile
src/plugins/php/Makefile src/plugins/php/Makefile
src/plugins/spell/Makefile src/plugins/spell/Makefile
src/plugins/trigger/Makefile src/plugins/trigger/Makefile
src/plugins/typing/Makefile
src/plugins/xfer/Makefile src/plugins/xfer/Makefile
src/gui/Makefile src/gui/Makefile
src/gui/curses/Makefile src/gui/curses/Makefile
@@ -1493,6 +1514,9 @@ fi
if test "x$enable_trigger" = "xyes"; then if test "x$enable_trigger" = "xyes"; then
listplugins="$listplugins trigger" listplugins="$listplugins trigger"
fi fi
if test "x$enable_typing" = "xyes"; then
listplugins="$listplugins typing"
fi
if test "x$enable_xfer" = "xyes"; then if test "x$enable_xfer" = "xyes"; then
listplugins="$listplugins xfer" listplugins="$listplugins xfer"
fi fi
+2 -1
View File
@@ -20,7 +20,7 @@ Build-Depends:
libgcrypt20-dev, libgcrypt20-dev,
libgnutls28-dev, libgnutls28-dev,
zlib1g-dev zlib1g-dev
Standards-Version: 4.5.1 Standards-Version: 4.6.0.1
Homepage: https://weechat.org/ Homepage: https://weechat.org/
Vcs-Git: https://salsa.debian.org/kolter/weechat.git Vcs-Git: https://salsa.debian.org/kolter/weechat.git
Vcs-Browser: https://salsa.debian.org/kolter/weechat Vcs-Browser: https://salsa.debian.org/kolter/weechat
@@ -153,6 +153,7 @@ Description: Fast, light and extensible chat client - plugins
- FIFO pipe for remote control - FIFO pipe for remote control
- Relay (IRC proxy and WeeChat protocol) - Relay (IRC proxy and WeeChat protocol)
- Trigger - Trigger
- Typing
Package: weechat-devel-python Package: weechat-devel-python
Architecture: any Architecture: any
@@ -0,0 +1,10 @@
Document: weechat-faq-es
Title: WeeChat FAQ (Spanish)
Author: Sébastien Helleu
Abstract: This document answers frequently asked questions
about the WeeChat IRC client (Spanish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
+12
View File
@@ -1,3 +1,15 @@
weechat (3.2.1-1) unstable; urgency=medium
* New upstream release
- fix CVE-2021-40516: possible denial of service (crash) via a crafted
WebSocket in relay plugin (Closes: #993803)
* Add a patch to fix a FTBFS (related to recent changes on which command
output) (Closes: #993333)
* Bump Standards-Version to 4.6.0.1
* Remove useless HomePage field in upstream/metadata
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 07 Sep 2021 20:25:39 +0000
weechat (3.0.1-1) unstable; urgency=medium weechat (3.0.1-1) unstable; urgency=medium
* New upstream release * New upstream release
+2 -1
View File
@@ -20,7 +20,7 @@ Build-Depends:
libgcrypt20-dev, libgcrypt20-dev,
libgnutls28-dev, libgnutls28-dev,
zlib1g-dev zlib1g-dev
Standards-Version: 4.5.1 Standards-Version: 4.6.0.1
Homepage: https://weechat.org/ Homepage: https://weechat.org/
Vcs-Git: https://salsa.debian.org/kolter/weechat.git Vcs-Git: https://salsa.debian.org/kolter/weechat.git
Vcs-Browser: https://salsa.debian.org/kolter/weechat Vcs-Browser: https://salsa.debian.org/kolter/weechat
@@ -148,6 +148,7 @@ Description: Fast, light and extensible chat client - plugins
- FIFO pipe for remote control - FIFO pipe for remote control
- Relay (IRC proxy and WeeChat protocol) - Relay (IRC proxy and WeeChat protocol)
- Trigger - Trigger
- Typing
Package: weechat-python Package: weechat-python
Architecture: any Architecture: any
+10
View File
@@ -0,0 +1,10 @@
Document: weechat-faq-es
Title: WeeChat FAQ (Spanish)
Author: Sébastien Helleu
Abstract: This document answers frequently asked questions
about the WeeChat IRC client (Spanish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
Files: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
+1
View File
@@ -4,3 +4,4 @@ usr/lib/*/weechat/plugins/relay.so
usr/lib/*/weechat/plugins/script.so usr/lib/*/weechat/plugins/script.so
usr/lib/*/weechat/plugins/spell.so usr/lib/*/weechat/plugins/spell.so
usr/lib/*/weechat/plugins/trigger.so usr/lib/*/weechat/plugins/trigger.so
usr/lib/*/weechat/plugins/typing.so
+1
View File
@@ -31,6 +31,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
add_subdirectory(ja) add_subdirectory(ja)
add_subdirectory(pl) add_subdirectory(pl)
add_subdirectory(ru) add_subdirectory(ru)
add_subdirectory(sr)
else() else()
message(SEND_ERROR "Asciidoctor not found") message(SEND_ERROR "Asciidoctor not found")
endif() endif()
+1 -1
View File
@@ -18,7 +18,7 @@
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>. # along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
# #
SUBDIRS = . cs de en es fr it ja pl ru SUBDIRS = . cs de en es fr it ja pl ru sr
EXTRA_DIST = docgen.py \ EXTRA_DIST = docgen.py \
docinfo.html \ docinfo.html \
+3
View File
@@ -85,6 +85,9 @@ $HOME/.config/weechat/tcl.conf::
$HOME/.config/weechat/trigger.conf:: $HOME/.config/weechat/trigger.conf::
konfigurační soubor pro _trigger_ plugin konfigurační soubor pro _trigger_ plugin
$HOME/.config/weechat/typing.conf::
konfigurační soubor pro _typing_ plugin
$HOME/.config/weechat/xfer.conf:: $HOME/.config/weechat/xfer.conf::
konfigurační soubor pro _xfer_ plugin konfigurační soubor pro _xfer_ plugin
@@ -79,6 +79,8 @@ _last_nick_speaking_time_   (pointer, hdata: "irc_channel_speaking") +
_modelists_   (pointer, hdata: "irc_modelist") + _modelists_   (pointer, hdata: "irc_modelist") +
_last_modelist_   (pointer, hdata: "irc_modelist") + _last_modelist_   (pointer, hdata: "irc_modelist") +
_join_smart_filtered_   (hashtable) + _join_smart_filtered_   (hashtable) +
_typing_state_   (integer) +
_typing_status_sent_   (time) +
_buffer_   (pointer, hdata: "buffer") + _buffer_   (pointer, hdata: "buffer") +
_buffer_as_string_   (string) + _buffer_as_string_   (string) +
_prev_channel_   (pointer, hdata: "irc_channel") + _prev_channel_   (pointer, hdata: "irc_channel") +
@@ -237,6 +239,8 @@ _sasl_scram_client_first_   (string) +
_sasl_scram_salted_pwd_   (other) + _sasl_scram_salted_pwd_   (other) +
_sasl_scram_salted_pwd_size_   (integer) + _sasl_scram_salted_pwd_size_   (integer) +
_sasl_scram_auth_message_   (string) + _sasl_scram_auth_message_   (string) +
_sasl_temp_username_   (string) +
_sasl_temp_password_   (string) +
_is_connected_   (integer) + _is_connected_   (integer) +
_ssl_connected_   (integer) + _ssl_connected_   (integer) +
_disconnected_   (integer) + _disconnected_   (integer) +
@@ -267,6 +271,10 @@ _chantypes_   (string) +
_chanmodes_   (string) + _chanmodes_   (string) +
_monitor_   (integer) + _monitor_   (integer) +
_monitor_time_   (time) + _monitor_time_   (time) +
_clienttagdeny_   (string) +
_clienttagdeny_count_   (integer) +
_clienttagdeny_array_   (string, array_size: "clienttagdeny_count") +
_typing_allowed_   (integer) +
_reconnect_delay_   (integer) + _reconnect_delay_   (integer) +
_reconnect_start_   (time) + _reconnect_start_   (time) +
_command_time_   (time) + _command_time_   (time) +
@@ -8,7 +8,7 @@
|=== |===
| Erweiterung | Name | Beschreibung | Hashtable (Eingabe) | Hashtable (Ausgabe) | Erweiterung | Name | Beschreibung | Hashtable (Eingabe) | Hashtable (Ausgabe)
| irc | irc_message_parse | Parse eine IRC Nachricht | "message": IRC Nachricht, "server": Servername (optional) | "tags": Tags, "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "user": Benutzername, "host": Host, "command": Befehl, "channel": Kanal, "arguments": Argumente (schließt Kanal ein), "text": Text (zum Beispiel eine Nachricht von einem User), "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird) | irc | irc_message_parse | Parse eine IRC Nachricht | "message": IRC Nachricht, "server": Servername (optional) | "tags": Tags, "tag_xxx": Wert des Tags "xxx" ohne Escapezeichen (ein Schlüssel pro Tag), "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "user": Benutzer, "host": Host, "command": Befehl, "channel": Kanal, "arguments": Argumente (schließt Kanal ein), "text": Text (zum Beispiel eine Nachricht von einem User), "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
| irc | irc_message_split | trennt eine IRC Nachricht (standardmäßig in 512 Bytes große Nachrichten) | "message": IRC Nachricht, "server": Servername (optional) | "msg1" ... "msgN": Nachrichten die versendet werden sollen (ohne abschließendes "\r\n"), "args1" ... "argsN": Argumente für Nachrichten, "count": Anzahl der Nachrichten | irc | irc_message_split | trennt eine IRC Nachricht (standardmäßig in 512 Bytes große Nachrichten) | "message": IRC Nachricht, "server": Servername (optional) | "msg1" ... "msgN": Nachrichten die versendet werden sollen (ohne abschließendes "\r\n"), "args1" ... "argsN": Argumente für Nachrichten, "count": Anzahl der Nachrichten
@@ -4,18 +4,26 @@
// //
// tag::plugins_priority[] // tag::plugins_priority[]
. charset (15000) . charset (16000)
. logger (14000) . logger (15000)
. exec (13000) . exec (14000)
. trigger (12000) . trigger (13000)
. spell (11000) . spell (12000)
. alias (10000) . alias (11000)
. buflist (9000) . buflist (10000)
. fifo (8000) . fifo (9000)
. typing (8000)
. xfer (7000) . xfer (7000)
. irc (6000) . irc (6000)
. relay (5000) . relay (5000)
. guile, javascript, lua, perl, php, python, ruby, tcl (4000) . guile (4007)
. javascript (4006)
. lua (4005)
. perl (4004)
. php (4003)
. python (4002)
. ruby (4001)
. tcl (4000)
. script (3000) . script (3000)
. fset (2000) . fset (2000)
// end::plugins_priority[] // end::plugins_priority[]
+118 -34
View File
@@ -17,10 +17,11 @@ target: Servername
* `+allchan+`: führt einen Befehl aus der an alle Kanäle gesendet wird, die mit einem Server verbunden sind * `+allchan+`: führt einen Befehl aus der an alle Kanäle gesendet wird, die mit einem Server verbunden sind
---- ----
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command> /allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
[-current] -include=<channel>[,<channel>...] <command> [-current] [-parted] -include=<channel>[,<channel>...] <command>
-current: führt einen Befehl aus der an alle Kanäle des aktuellen Servers gesendet wird -current: führt einen Befehl aus der an alle Kanäle des aktuellen Servers gesendet wird
-parted: wird nur bei vom Server getrennten Kanälen ausgeführt
-exclude: dient zum Ausschluss ausgewählter Kanäle (Platzhalter "*" kann verwendet werden) -exclude: dient zum Ausschluss ausgewählter Kanäle (Platzhalter "*" kann verwendet werden)
-include: findet Anwendung für ausgewählte Kanäle (Platzhalter "*" kann verwendet werden)\n -include: findet Anwendung für ausgewählte Kanäle (Platzhalter "*" kann verwendet werden)\n
command: Befehl der ausgeführt werden soll command: Befehl der ausgeführt werden soll
@@ -41,6 +42,8 @@ Beispiele:
/allchan -exclude=#weechat,#linux* Hallo Welt /allchan -exclude=#weechat,#linux* Hallo Welt
schickt den Text 'Hallo' an alle Kanäle die mit #linux beginnen: schickt den Text 'Hallo' an alle Kanäle die mit #linux beginnen:
/allchan -include=#linux* Hallo /allchan -include=#linux* Hallo
schließt alle, vom Server getrennte, Kanäle.:
/allchan -parted /close
---- ----
[[command_irc_allpv]] [[command_irc_allpv]]
@@ -100,6 +103,26 @@ Beispiele:
/allserv /whois $nick /allserv /whois $nick
---- ----
[[command_irc_auth]]
* `+auth+`: authentifizieren mit SASL
----
/auth [<username> <password>]
username: SASL Username (Inhalt ist evaluiert, siehe /help eval; Serveroptionen werden mit ${irc_server.xxx} evaluiert und ${server} wird durch den Servernamen ersetzt)
password: SASL-Passwort oder Pfad zur Datei mit privatem Schlüssel (Inhalt ist evaluiert, siehe /help eval; Serveroptionen werden mit ${irc_server.xxx} evaluiert und ${server} wird durch den Servernamen ersetzt)
Wenn Benutzername und Kennwort nicht angegeben wurden, werden die Werte aus den Serveroptionen "sasl_username" und "sasl_password" (oder "sasl_key") verwendet.
Beispiele:
authentifizieren Sie sich mit dem im Server definierten Benutzernamen/Passwort:
/auth
authentifizieren Sie sich mit einem anderen Benutzer:
/auth user2 password2
authentifizieren als anderer Benutzer mit Mechanismus ecdsa-nist256p-challenge:
/auth user2 ${weechat_config_dir}/ecdsa2.pem
----
[[command_irc_ban]] [[command_irc_ban]]
* `+ban+`: Nicknamen oder Hosts sperren/verbannen * `+ban+`: Nicknamen oder Hosts sperren/verbannen
@@ -129,9 +152,9 @@ Ohne Angabe von Argumenten wird die Ban-Liste für den aktuellen Kanal angezeigt
Ohne Angaben von Argumenten werden "ls" und "list" gesendet. Ohne Angaben von Argumenten werden "ls" und "list" gesendet.
Fähigkeiten die von WeeChat unterstützt werden: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names. Fähigkeiten die von WeeChat unterstützt werden: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names..
Fähigkeiten die standardmäßig genutzt werden sollen, können mit der Option irc.server_default.capabilities gesetzt werden (oder individuell für jeden Server mit der Option irc.server.xxx.capabilities). Fähigkeiten die standardmäßig genutzt werden sollen, können mit der Option irc.server_default.capabilities gesetzt werden (oder individuell für jeden Server mit der Option irc.server.xxx.capabilities).
Beispiele: Beispiele:
/cap /cap
@@ -808,6 +831,15 @@ mask: nur zutreffende Services auflisten
type: nur Services von diesem Typ auflisten type: nur Services von diesem Typ auflisten
---- ----
[[command_irc_setname]]
* `+setname+`: setze Realnamen
----
/setname <Realname>
realname: neuer Realname
----
[[command_irc_squery]] [[command_irc_squery]]
* `+squery+`: Nachricht an einen Service senden * `+squery+`: Nachricht an einen Service senden
@@ -1271,7 +1303,7 @@ Beispiele:
/debug list /debug list
set <plugin> <level> set <plugin> <level>
dump [<plugin>] dump [<plugin>]
buffer|color|infolists|memory|tags|term|windows buffer|color|infolists|libs|certs|memory|tags|term|windows
mouse|cursor [verbose] mouse|cursor [verbose]
hdata [free] hdata [free]
time <command> time <command>
@@ -1289,10 +1321,11 @@ Beispiele:
hooks: zeigt die aktiven Hooks an hooks: zeigt die aktiven Hooks an
infolists: zeigt Information über die Infolists an infolists: zeigt Information über die Infolists an
libs: zeigt an welche externen Bibliotheken verwendet werden libs: zeigt an welche externen Bibliotheken verwendet werden
certs: gibt die Anzahl geladener vertrauenswürdiger Zertifizierungsstellen aus
memory: gibt Informationen über den genutzten Speicher aus memory: gibt Informationen über den genutzten Speicher aus
mouse: schaltet den debug-Modus für den Maus-Modus ein/aus mouse: schaltet den debug-Modus für den Maus-Modus ein/aus
tags: zeigt für jede einzelne Zeile die dazugehörigen Schlagwörter an tags: zeigt für jede einzelne Zeile die dazugehörigen Schlagwörter an
term: gibt Informationen über das Terminal und verfügbare Farben aus term: zeigt Informationen über das Terminal an
windows: zeigt die Fensterstruktur an windows: zeigt die Fensterstruktur an
time: misst die Zeit um einen Befehl auszuführen oder um einen Text in den aktuellen Buffer zu senden time: misst die Zeit um einen Befehl auszuführen oder um einen Text in den aktuellen Buffer zu senden
---- ----
@@ -1341,28 +1374,33 @@ Um einen Vergleich zwischen zwei Zeichenketten zu erzwingen, müssen die Ausdrü
"50" > "100" ==> 1 "50" > "100" ==> 1
Einige Variablen werden im Ausdruck mittels der Formatierung ${variable} ersetzt. Mögliche Variablen sind, nach Reihenfolge ihrer Priorität: Einige Variablen werden im Ausdruck mittels der Formatierung ${variable} ersetzt. Mögliche Variablen sind, nach Reihenfolge ihrer Priorität:
1. die Zeichenfolge selbst ohne Auswertung (Format: "raw:xxx")\n 1. die Zeichenfolge selbst ohne Auswertung (Format: "raw:xxx")
2. eine evaluierte Teilzeichenkette (Format: "eval:xxx") 2. eine benutzerdefinierte Variable (Format: "name")
3. eine evaluierte Bedingung (Format: "eval_cond:xxx") 3. eine evaluierte Teilzeichenkette (Format: "eval:xxx")
4. eine Zeichenkette mit Escapesequenzen (Format: "esc:xxx" oder "\xxx") 4. eine evaluierte Bedingung (Format: "eval_cond:xxx")
5. Zeichen, die in einer Zeichenkette nicht dargestellt werden sollen (Format: "hide:Zeichen,Zeichenkette") 5. eine Zeichenkette mit Escapesequenzen (Format: "esc:xxx" oder "\xxx")
6. eine Zeichenkette mit einer maximalen Anzahl an Zeichen (Format: "cut:max,suffix,string" oder "cut:+max,suffix,string") 6. Zeichen, die in einer Zeichenkette nicht dargestellt werden sollen (Format: "hide:Zeichen,Zeichenkette")
7. eine Zeichenkette mit einer maximalen Anzahl an Zeichen (Format: "cut:max,suffix,string" oder "cut:+max,suffix,string")
oder maximale Anzahl an Zeichen die auf dem Bildschirm angezeigt werden sollen (Format: "cutscr:Max,Suffix,Zeichenkette oder "cutscr:+Max,Suffix,Zeichenkette") oder maximale Anzahl an Zeichen die auf dem Bildschirm angezeigt werden sollen (Format: "cutscr:Max,Suffix,Zeichenkette oder "cutscr:+Max,Suffix,Zeichenkette")
7. eine Zeichenkette umkehren (Format: "rev:xxx" oder "revscr:xxx") 8. eine Zeichenkette umkehren (Format: "rev:xxx" oder "revscr:xxx")
8. eine Zeichenkette wiederholen (Format: "repeat:Anzahl,Zeichenkette") 9. eine Zeichenkette wiederholen (Format: "repeat:Anzahl,Zeichenkette")
9. Länge einer Zeichenkette (Format: "length:xxx" oder "lengthscr:xxx") 10. Länge einer Zeichenkette (Format: "length:xxx" oder "lengthscr:xxx")
10. eine Farbe (Format: "color:xxx", siehe "Anleitung für API Erweiterung", Funktion "color") 11. Aufteilen einer Zeichenkette (Format: "split:Anzahl,Trennzeichen,Flags,xxx")
11. zum modifizieren (Format: "modifier:name,data,string") 12. Aufteilen von Shell-Argumenten (Format: "split_shell:Anzahl,xxx")
12. eine Info (Format: "Info:Name,Argumente", Argumente sind optional) 13. eine Farbe (Format: "color:xxx", siehe "Anleitung für API Erweiterung", Funktion "color")
13. eine Basis 16/32/64 kodierte / dekodierte Zeichenfolge (Format: "base_encode:base,xxx" oder "base_decode:base,xxx") 14. zum modifizieren (Format: "modifier:name,data,string")
14. aktuelles Datum/Uhrzeit (Format: "date" oder "date:format") 15. eine Info (Format: "Info:Name,Argumente", Argumente sind optional)
15. eine Umgebungsvariable (Format: "env:XXX") 16. eine Basis 16/32/64 kodierte / dekodierte Zeichenfolge (Format: "base_encode:base,xxx" oder "base_decode:base,xxx")
16. ein Dreifachoperand (Format: "if:Bedingung?Wert_falls_wahr:Wert_falls_unwahr") 17. aktuelles Datum/Uhrzeit (Format: "date" oder "date:format")
17. Ergebnis eines Ausdrucks mit Klammern und Operatoren + - * / // % ** (Format: "calc:xxx") 18. eine Umgebungsvariable (Format: "env:XXX")
18. eine übersetzte Zeichenkette (Format: "translate:xxx") 19. ein Dreifachoperand (Format: "if:Bedingung?Wert_falls_wahr:Wert_falls_unwahr")
19. eine Option (Format: "file.section.option") 20. Ergebnis eines Ausdrucks mit Klammern und Operatoren + - * / // % ** (Format: "calc:xxx")
20. eine lokale Variable eines Buffers 21. eine zufällige ganze Zahl (Format: "random:min,max")
21. ein(e) hdata - Name/Variable (der Wert wird automatisch in eine Zeichenkette konvertiert), standardmäßig wird für "window" und "buffer" das aktuelle Fenster/Buffer verwendet. 22. eine übersetzte Zeichenkette (Format: "translate:xxx")
23. eine Benutzervariable definieren (Format: "define:Name,Wert")
24. eine Option (Format: "file.section.option")
25. eine lokale Variable eines Buffers
26. ein(e) hdata - Name/Variable (der Wert wird automatisch in eine Zeichenkette konvertiert), standardmäßig wird für "window" und "buffer" das aktuelle Fenster/Buffer verwendet.
Das Format für hdata kann wie folgt aufgebaut sein: Das Format für hdata kann wie folgt aufgebaut sein:
hdata.var1.var2...: startet mit hdata (der Pointer muss bekannt sein) und fragt eine Variable nach der anderen ab (weitere hdata können folgen) hdata.var1.var2...: startet mit hdata (der Pointer muss bekannt sein) und fragt eine Variable nach der anderen ab (weitere hdata können folgen)
hdata[list].var1.var2...: startet hdata mittels einer Liste, zum Beispiel: hdata[list].var1.var2...: startet hdata mittels einer Liste, zum Beispiel:
@@ -1393,10 +1431,20 @@ Beispiele (einfache Zeichenketten):
/eval -n ${rev:Hello} ==> olleH /eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> ----- /eval -n ${repeat:5,-} ==> -----
/eval -n ${length:test} ==> 4 /eval -n ${length:test} ==> 4
/eval -n ${split:1,,,abc,def,ghi} ==> abc
/eval -n ${split:-1,,,abc,def,ghi} ==> ghi
/eval -n ${split:count,,,abc,def,ghi} ==> 3
/eval -n ${split:random,,,abc,def,ghi} ==> def
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
/eval -n ${calc:(5+2)*3} ==> 21 /eval -n ${calc:(5+2)*3} ==> 21
/eval -n ${random:0,10} ==> 3
/eval -n ${base_encode:64,test} ==> dGVzdA== /eval -n ${base_encode:64,test} ==> dGVzdA==
/eval -n ${base_decode:64,dGVzdA==} ==> test /eval -n ${base_decode:64,dGVzdA==} ==> test
/eval -n ${translate:Plugin} ==> Erweiterung /eval -n ${translate:Plugin} ==> Erweiterung
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
Beispiele (Bedingungen): Beispiele (Bedingungen):
/eval -n -c ${window.buffer.number} > 2 ==> 0 /eval -n -c ${window.buffer.number} > 2 ==> 0
@@ -1549,6 +1597,9 @@ Auflistung der möglichen Aktionen:
jump_previously_visited_buffer: springt zum letzten besuchten Buffer jump_previously_visited_buffer: springt zum letzten besuchten Buffer
jump_next_visited_buffer: springt zum nächsten besuchten Buffer jump_next_visited_buffer: springt zum nächsten besuchten Buffer
hotlist_clear: löscht Hotlist (Aktivitätsanzeige für die Buffer), (optionales Argument: "lowest" löscht den niedrigsten Eintrag der Hotlist, "highest" löscht den höchsten Eintrag der Hotlist, oder eine integer Maske: eine Kombination aus 1=join/part, 2=Nachricht,4=privat,8=highlight) hotlist_clear: löscht Hotlist (Aktivitätsanzeige für die Buffer), (optionales Argument: "lowest" löscht den niedrigsten Eintrag der Hotlist, "highest" löscht den höchsten Eintrag der Hotlist, oder eine integer Maske: eine Kombination aus 1=join/part, 2=Nachricht,4=privat,8=highlight)
hotlist_remove_buffer: entferne aktuellen Buffer von der Hotlist
hotlist_restore_buffer: Wiederherstellen der neuesten Hotlist, die im aktuellen Buffer entfernt wurde
hotlist_restore_all: Wiederherstellen der neuesten Hotlist, die in allen Buffern entfernt wurde
grab_key: fängt eine Taste (optionales Argument: Verzögerung um eine Taste einzufangen. Standard sind 500 Millisekunden) grab_key: fängt eine Taste (optionales Argument: Verzögerung um eine Taste einzufangen. Standard sind 500 Millisekunden)
grab_key_command: zeigt den Tastencode (inklusive des eingebundenen Befehls) einer Tastenkombination an und fügt ihn in die Befehlszeile ein (optionales Argument: Verzögerung um eine Taste einzufangen. Standard sind 500 Millisekunden) grab_key_command: zeigt den Tastencode (inklusive des eingebundenen Befehls) einer Tastenkombination an und fügt ihn in die Befehlszeile ein (optionales Argument: Verzögerung um eine Taste einzufangen. Standard sind 500 Millisekunden)
grab_mouse: fängt den Code einer Maus Aktivität grab_mouse: fängt den Code einer Maus Aktivität
@@ -1644,6 +1695,8 @@ windows: erstellt bzw. verwendet nur Fenster (Buffer welche im jeweiligen Fenste
Wird der Befehl ohne Argumente aufgerufen, werden die erstellten Layout dargestellt. Wird der Befehl ohne Argumente aufgerufen, werden die erstellten Layout dargestellt.
Das aktuelle Layout kann beim Ausführen des /quit Befehls mit der Option "weechat.look.save_layout_on_exit" gesichert werden. Das aktuelle Layout kann beim Ausführen des /quit Befehls mit der Option "weechat.look.save_layout_on_exit" gesichert werden.
Hinweis: Das Layout merkt sich nur Fenstereinteilungen und die Positionsnummern von Buffern. Layout öffnet keine Buffer. Das bedeutet zum Beispiel, dass Sie IRC-Kanäle immer noch automatisch betreten müssen, um die Buffer zu öffnen. Das gespeicherte Layout wird erst verwendet, wenn die Buffer geöffnet sind.
---- ----
[[command_weechat_mouse]] [[command_weechat_mouse]]
@@ -1693,21 +1746,26 @@ Beispiele:
* `+plugin+`: Erweiterungen verwalten (auflisten/installieren/beenden) * `+plugin+`: Erweiterungen verwalten (auflisten/installieren/beenden)
---- ----
/plugin list|listfull [<name>] /plugin list [-o|-ol|-i|-il|<name>]
listfull [<name>]
load <filename> [<arguments>] load <filename> [<arguments>]
autoload [<arguments>] autoload [<arguments>]
reload [<name>|* [<arguments>]] reload [<name>|* [<arguments>]]
unload [<name>] unload [<name>]
list: installierte Erweiterungen werden aufgelistet list: installierte Erweiterungen werden aufgelistet
listfull: detaillierte Auflistung aller installierten Erweiterungen -o: sende Liste der geladenen Erweiterungen an den Buffer (Ausgabe in Englisch)
load: installiert eine Erweiterung -ol: sende Liste der geladenen Erweiterungen an den Buffer (Übersetzte Ausgabe)
-i: Liste der geladenen Erweiterungen in die Befehlszeile kopieren (zum Senden an den Buffer) (Ausgabe in Englisch)
-il: Liste der geladenen Erweiterungen in die Befehlszeile kopieren (zum Senden an den Buffer) (Übersetzte Ausgabe)
name: Name einer Erweiterung
listfull: geladene Erweiterungen auflisten (ausführlich)
load: Laden einer Erweiterung
filename: Erweiterung (Dateiname) welche installiert werden soll
arguments: Argumente die der Erweiterung beim Installieren übergeben werden sollen
autoload: installiert automatisch alle Erweiterungen aus dem System- oder Benutzerverzeichnis autoload: installiert automatisch alle Erweiterungen aus dem System- oder Benutzerverzeichnis
reload: startet eine Erweiterung erneut (falls kein Name angegeben wird, werden alle Erweiterungen beendet und neu gestartet) reload: startet eine Erweiterung erneut (falls kein Name angegeben wird, werden alle Erweiterungen beendet und neu gestartet)
unload: beendet eine oder alle Erweiterungen (wird kein Name angegeben dann werden alle Erweiterung beendet) unload: beendet eine oder alle Erweiterungen (wird kein Name angegeben dann werden alle Erweiterung beendet)
filename: Erweiterung (Datei) welche installiert werden soll
name: Name einer Erweiterung
arguments: Argumente die der Erweiterung beim installieren übergeben werden sollen
Ohne Angabe eines Arguments werden alle installierten Erweiterungen angezeigt. Ohne Angabe eines Arguments werden alle installierten Erweiterungen angezeigt.
---- ----
@@ -1935,6 +1993,32 @@ Beispiele:
/set env ABC "" /set env ABC ""
---- ----
[[command_weechat_toggle]]
* `+toggle+`: den Wert einer Konfigurationsoption umschalten
----
/toggle <option> [<value> [<value>...]]
option: Name einer Option
value: mögliche Werte für die Option (Werte werden wie bei Shell-Befehlsargumente aufgeteilt: Anführungszeichen können verwendet werden, um Leerzeichen am Anfang/Ende von Werten zu nutzen)
Verhalten:
- nur eine Option vom Typ Boolean oder String kann ohne Wert umgeschaltet werden:
- boolean: zwischen Ein/Aus Status umschalten, entsprechend dem aktuellen Wert
- string: Umschalten zwischen leerem String und Standardwert (funktioniert nur, wenn für die Option ein leerer String erlaubt ist)
- mit einem vorgegeben einzelnen Wert, zwischen diesem Wert und dem Standardwert der Option umschalten
- sind mehrere Werte angegeben, schalten Sie zwischen diesen Werten um: Der verwendete Wert ist der, der dem aktuellen Wert der Option folgt; wenn der aktuelle Wert der Option nicht in der Liste enthalten ist, wird der erste Wert aus der Liste verwendet
- der Sonderwert "null" kann genutzt werden, jedoch nur als erster Wert in der Liste und ohne Anführungszeichen.
Beispiele:
die Uhrzeit im Chat-Bereich umschalten (die Ausgabe des neuen Wertes wird unterdrückt):
/mute /toggle weechat.look.buffer_time_format
Zeitformat im Chat-Bereich ändern (mit Sekunden, ohne Sekunden, deaktiviert):
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
den automatischen Beitritt des #weechat-Kanals auf dem libera-Server umschalten:
/toggle irc.server.libera.autojoin null #weechat
----
[[command_weechat_unset]] [[command_weechat_unset]]
* `+unset+`: Konfigurationsparameter freigeben/zurücksetzen * `+unset+`: Konfigurationsparameter freigeben/zurücksetzen
@@ -2531,7 +2615,7 @@ disable: die Protokollierung wird für den aktuellen Buffer deaktiviert (der Lev
Die Einstellungen "logger.level.*" und "logger.mask.*" können genutzt werden um den Level der Protokollierung festzulegen und um eine Maske für einen oder mehrere Buffer zu definieren. Die Einstellungen "logger.level.*" und "logger.mask.*" können genutzt werden um den Level der Protokollierung festzulegen und um eine Maske für einen oder mehrere Buffer zu definieren.
Level der Protokollierung, die die IRC Erweiterung unterstützt: Level der Protokollierung, die die IRC Erweiterung unterstützt:
1: Nachrichten von Usern (private und öffentliche Nachrichten) , notice (Server und Kanal) 1: Nachrichten von Usern (private und öffentliche Nachrichten), notice (Server und Kanal)
2: Wechsel von Nicks (/nick) 2: Wechsel von Nicks (/nick)
3: Nachrichten vom Server 3: Nachrichten vom Server
4: join/part/quit Nachrichten 4: join/part/quit Nachrichten
+119 -51
View File
@@ -1845,6 +1845,50 @@
** Standardwert: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+` ** Standardwert: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
// end::fifo_options[] // end::fifo_options[]
// tag::typing_options[]
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
** Beschreibung: pass:none[Anzahl der Sekunden, nachdem der Pausenstatus gesetzt wurde: wenn erreicht, wird der Tippstatus entfernt]
** Typ: integer
** Werte: 1 .. 2147483647
** Standardwert: `+30+`
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
** Beschreibung: pass:none[Anzahl der Sekunden nach Setzen des Tippstatuses: wenn erreicht, wird der Tipptatus entfernt]
** Typ: integer
** Werte: 1 .. 2147483647
** Standardwert: `+6+`
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
** Beschreibung: pass:none[Anzahl der Sekunden nach Eingabe des letzten Zeichens: wenn erreicht, wird der Schreibstatus "pausiert" und es werden keine Schreibsignale mehr gesendet]
** Typ: integer
** Werte: 1 .. 2147483647
** Standardwert: `+10+`
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
** Beschreibung: pass:none[Tippfunktion für andere Nicks aktiviert (Anzeige von Tippinfos für Nicks, die im aktuellen Buffer schreiben)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
** Beschreibung: pass:none[Tippfunktion für eigene Nachrichten aktiviert (Schreibinformationen an andere Benutzer senden)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
** Beschreibung: pass:none[Mindestanzahl von Zeichen in der Nachricht, um das Senden von Tippsignalen auszulösen]
** Typ: integer
** Werte: 1 .. 2147483647
** Standardwert: `+4+`
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
** Beschreibung: pass:none[maximale Anzahl von Zeichen, die im Bar-Item "typing" angezeigt werden (0 = Inhalt nicht abschneiden)]
** Typ: integer
** Werte: 0 .. 2147483647
** Standardwert: `+0+`
// end::typing_options[]
// tag::xfer_options[] // tag::xfer_options[]
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted* * [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
** Beschreibung: pass:none[Textfarbe für Status: "abgebrochen"] ** Beschreibung: pass:none[Textfarbe für Status: "abgebrochen"]
@@ -2214,6 +2258,12 @@
** Werte: beliebige Zeichenkette ** Werte: beliebige Zeichenkette
** Standardwert: `+"%a, %d %b %Y %T %z"+` ** Standardwert: `+"%a, %d %b %Y %T %z"+`
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
** Beschreibung: pass:none[ACCOUNT Nachrichten anzeigen, die empfangen wurden, wenn die Funktion account-notify aktiviert ist]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_irc.look.display_away]] *irc.look.display_away* * [[option_irc.look.display_away]] *irc.look.display_away*
** Beschreibung: pass:none[zeigt eine Nachricht an, sobald der Abwesenheitsstatus ein- bzw. ausgeschaltet wird (off: zeigt/sendet keine Nachricht, local: eine Nachricht wird lokal angezeigt, channel: sendet eine Nachricht an die Kanäle)] ** Beschreibung: pass:none[zeigt eine Nachricht an, sobald der Abwesenheitsstatus ein- bzw. ausgeschaltet wird (off: zeigt/sendet keine Nachricht, local: eine Nachricht wird lokal angezeigt, channel: sendet eine Nachricht an die Kanäle)]
** Typ: integer ** Typ: integer
@@ -2238,6 +2288,12 @@
** Werte: on, off ** Werte: on, off
** Standardwert: `+on+` ** Standardwert: `+on+`
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
** Beschreibung: pass:none[zusätzliche Informationen in den JOIN-Nachrichten anzeigen: Kontoname und richtiger Name (Funktion extended-join muss aktiviert sein)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_irc.look.display_host_join]] *irc.look.display_host_join* * [[option_irc.look.display_host_join]] *irc.look.display_host_join*
** Beschreibung: pass:none[zeigt den Host innerhalb einer join Nachricht an] ** Beschreibung: pass:none[zeigt den Host innerhalb einer join Nachricht an]
** Typ: boolesch ** Typ: boolesch
@@ -2508,6 +2564,18 @@
** Werte: on, off ** Werte: on, off
** Standardwert: `+off+` ** Standardwert: `+off+`
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
** Beschreibung: pass:none[Nicks in der Bar-Item "typing" anzeigen, die in dem Kanal tippen (Option typing.look.enabled_nicks muss aktiviert sein und die Fähigkeit "message-tags" muss auf dem Server aktiviert sein)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
** Beschreibung: pass:none[sendet den eigenen Tippstatus an Kanäle, damit andere Benutzer sehen, wenn Sie eine Nachricht schreiben (Option typing.look.enabled_self muss aktiviert sein und die Fähigkeit "message-tags" muss auf dem Server aktiviert sein)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing* * [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
** Beschreibung: pass:none[Multiplikator für die Verzögerung bei der automatischen Wiederverbindung zum Server (1 = immer die selbe Verzögerung nutzen, 2 = Verzögerung*2 für jeden weiteren Versuch, usw.)] ** Beschreibung: pass:none[Multiplikator für die Verzögerung bei der automatischen Wiederverbindung zum Server (1 = immer die selbe Verzögerung nutzen, 2 = Verzögerung*2 für jeden weiteren Versuch, usw.)]
** Typ: integer ** Typ: integer
@@ -2665,10 +2733,10 @@
** Standardwert: `+25+` ** Standardwert: `+25+`
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
** Beschreibung: pass:none[durch Kommata getrennte Liste von erweiterten Client-Fähigkeiten ("client capabilities"), welche vom Server angeboten und genutzt werden sollen (siehe /help cap um eine Liste von Fähigkeiten zu erhalten die von WeeChat unterstützt werden) (Beispiel: "away-notify,multi-prefix")] ** Beschreibung: pass:none[durch Kommata getrennte Liste von erweiterten Client-Fähigkeiten ("client capabilities"), welche vom Server angeboten und genutzt werden sollen (siehe /help cap um eine Liste von Fähigkeiten zu erhalten die von WeeChat unterstützt werden); "*" aktiviert standardmäßig alle Funktionen (die sowohl vom Server als auch von WeeChat unterstützt werden); Platzhalter "*" ist erlaubt; eine Fähigkeit, die mit "!" beginnt, wird ignoriert (Beispiel: "*,!account-*,!extended-join")]
** Typ: Zeichenkette ** Typ: Zeichenkette
** Werte: beliebige Zeichenkette ** Werte: beliebige Zeichenkette
** Standardwert: `+""+` ** Standardwert: `+"*"+`
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message* * [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
** Beschreibung: pass:none[Teil der IRC Nachricht (empfangen oder gesendet) die zum Zielzeichensatz dekodiert/kodiert werden soll; message = die komplette IRC Nachricht (Standard), channel = beginnend mit dem Kanalnamen (sofern dieser gefunden wird, ansonsten Fallback auf text), text = beginnend mit dem Nachrichtentext (dieser Wert sollte ausprobiert werden, falls es Probleme bei der Kodierung des Kanalnamens geben sollte)] ** Beschreibung: pass:none[Teil der IRC Nachricht (empfangen oder gesendet) die zum Zielzeichensatz dekodiert/kodiert werden soll; message = die komplette IRC Nachricht (Standard), channel = beginnend mit dem Kanalnamen (sofern dieser gefunden wird, ansonsten Fallback auf text), text = beginnend mit dem Nachrichtentext (dieser Wert sollte ausprobiert werden, falls es Probleme bei der Kodierung des Kanalnamens geben sollte)]
@@ -2770,7 +2838,7 @@
** Beschreibung: pass:none[auszuführende Aktion falls die SASL Authentifizierung fehlschlägt: "continue" ignoriert das Problem welches bei der Authentifizierung aufgetreten ist, "reconnect" versucht erneut eine Verbindung herzustellen, "disconnect" trennt die Verbindung zum Server (siehe Option irc.network.sasl_fail_unavailable)] ** Beschreibung: pass:none[auszuführende Aktion falls die SASL Authentifizierung fehlschlägt: "continue" ignoriert das Problem welches bei der Authentifizierung aufgetreten ist, "reconnect" versucht erneut eine Verbindung herzustellen, "disconnect" trennt die Verbindung zum Server (siehe Option irc.network.sasl_fail_unavailable)]
** Typ: integer ** Typ: integer
** Werte: continue, reconnect, disconnect ** Werte: continue, reconnect, disconnect
** Standardwert: `+continue+` ** Standardwert: `+reconnect+`
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key* * [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
** Beschreibung: pass:none[Datei mit privatem ECC-Schlüssel für den Mechanismus "ecdsa-nist256p-challenge" (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)] ** Beschreibung: pass:none[Datei mit privatem ECC-Schlüssel für den Mechanismus "ecdsa-nist256p-challenge" (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
@@ -2779,9 +2847,9 @@
** Standardwert: `+""+` ** Standardwert: `+""+`
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism* * [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
** Beschreibung: pass:none[Verfahren welches bei einer SASL Authentifizierung angewandt werden soll: "plain" Passwort wird im Klartext gesendet, "scram-sha-1" für SCRAM-Authentifizierung mit SHA-1-Digest-Algorithmus, "scram-sha-256" für SCRAM-Authenrifizierung mit SHA-256 Digest-Algorithmus, "scram-sha-512" für SCRAM-Authentifizierung mit SHA-512 Digest-Algorithmus, "ecdsa-nist256p-challenge" für öffentlich/private Schlüsselmethode, "external" SSL Zertifikat welches auf Client Seite vorliegt wird verwendet, "dh-blowfish" Passwort wird mittels blowfish verschlüsselt (unsicher, wird nicht empfohlen), "dh-aes" Passwort wird mittels AES verschlüsselt (unsicher, wird nicht empfohlen)] ** Beschreibung: pass:none[Verfahren welches bei einer SASL Authentifizierung angewandt werden soll: "plain" Passwort wird im Klartext gesendet, "scram-sha-1" für SCRAM-Authentifizierung mit SHA-1-Digest-Algorithmus, "scram-sha-256" für SCRAM-Authenrifizierung mit SHA-256 Digest-Algorithmus, "scram-sha-512" für SCRAM-Authentifizierung mit SHA-512 Digest-Algorithmus, "ecdsa-nist256p-challenge" für öffentlich/private Schlüsselmethode, "external" ein SSL Zertifikat welches auf Client Seite vorliegt wird verwendet]
** Typ: integer ** Typ: integer
** Werte: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes ** Werte: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
** Standardwert: `+plain+` ** Standardwert: `+plain+`
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password* * [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
@@ -3075,34 +3143,6 @@
** Standardwert: `+""+` ** Standardwert: `+""+`
// end::relay_options[] // end::relay_options[]
// tag::javascript_options[]
* [[option_javascript.look.check_license]] *javascript.look.check_license*
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
// end::javascript_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
// end::ruby_options[]
// tag::guile_options[] // tag::guile_options[]
* [[option_guile.look.check_license]] *guile.look.check_license* * [[option_guile.look.check_license]] *guile.look.check_license*
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben] ** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
@@ -3117,19 +3157,33 @@
** Standardwert: `+on+` ** Standardwert: `+on+`
// end::guile_options[] // end::guile_options[]
// tag::tcl_options[] // tag::javascript_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license* * [[option_javascript.look.check_license]] *javascript.look.check_license*
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben] ** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
** Typ: boolesch ** Typ: boolesch
** Werte: on, off ** Werte: on, off
** Standardwert: `+off+` ** Standardwert: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context* * [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer] ** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
** Typ: boolesch ** Typ: boolesch
** Werte: on, off ** Werte: on, off
** Standardwert: `+on+` ** Standardwert: `+on+`
// end::tcl_options[] // end::javascript_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
// end::lua_options[]
// tag::perl_options[] // tag::perl_options[]
* [[option_perl.look.check_license]] *perl.look.check_license* * [[option_perl.look.check_license]] *perl.look.check_license*
@@ -3159,20 +3213,6 @@
** Standardwert: `+on+` ** Standardwert: `+on+`
// end::php_options[] // end::php_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
// end::lua_options[]
// tag::python_options[] // tag::python_options[]
* [[option_python.look.check_license]] *python.look.check_license* * [[option_python.look.check_license]] *python.look.check_license*
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben] ** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
@@ -3187,6 +3227,34 @@
** Standardwert: `+on+` ** Standardwert: `+on+`
// end::python_options[] // end::python_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
// end::ruby_options[]
// tag::tcl_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license*
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
// end::tcl_options[]
// tag::script_options[] // tag::script_options[]
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded* * [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
** Beschreibung: pass:none[Farbe in der der Status "autoloaded" ("a") dargestellt werden soll] ** Beschreibung: pass:none[Farbe in der der Status "autoloaded" ("a") dargestellt werden soll]
+3
View File
@@ -86,6 +86,9 @@ $HOME/.config/weechat/tcl.conf::
$HOME/.config/weechat/trigger.conf:: $HOME/.config/weechat/trigger.conf::
Konfigurationsdatei für _trigger_ Erweiterung Konfigurationsdatei für _trigger_ Erweiterung
$HOME/.config/weechat/typing.conf::
Konfigurationsdatei für _typing_ Erweiterung
$HOME/.config/weechat/xfer.conf:: $HOME/.config/weechat/xfer.conf::
Konfigurationsdatei für _xfer_ Erweiterung Konfigurationsdatei für _xfer_ Erweiterung
+4 -3
View File
@@ -559,9 +559,10 @@ Der bracketed paste Modus kann wie folgt deaktiviert werden:
[[small_terminal]] [[small_terminal]]
=== Wie kann ich die Anzeige bei sehr kleinen Terminalgrößen (wie 80 x 25) optimieren, um keinen Platz zu verschwenden? === Wie kann ich die Anzeige bei sehr kleinen Terminalgrößen (wie 80 x 25) optimieren, um keinen Platz zu verschwenden?
Sie können die seitlichen Bars (Buflist und Nicklist) entfernen und das Zeitformat im Buffer anpassen, Die seitlichen Bars (buflist und nicklist) können deaktiviert werden, die Datums-
sodass nur Stunden und Sekunden angezeigt werden. Die Ausrichtung von Nachrichten sollte deaktiviert anzeige sollte nur Stunden und Minuten darstellen, die Ausrichtung von Nach-
und der Präfix/Suffix für Nicks gesetzt werden: richten sollte ebenfalls deaktiviert werden und es sollte der Nick mit einen
Präfix und Suffix vesehen werden:
---- ----
/set buflist.look.enabled off /set buflist.look.enabled off
+12 -6
View File
@@ -1304,6 +1304,10 @@ Das Ergebnis ist eine Hashtabelle mit folgenden Schlüsseln
Tags in der Nachricht (kann leer sein). | Tags in der Nachricht (kann leer sein). |
`+time=2015-06-27T16:40:35.000Z+` `+time=2015-06-27T16:40:35.000Z+`
| tag_xxx | 3.3 |
Wert des Tags "xxx" ohne Escapezeichen (ein Schlüssel pro Tag). |
`+2015-06-27T16:40:35.000Z+`
| message_without_tags | 0.4.0 | | message_without_tags | 0.4.0 |
Die IRC Nachricht ohne Tags (wie eine Nachricht ohne Tags). | Die IRC Nachricht ohne Tags (wie eine Nachricht ohne Tags). |
`+:nick!user@host PRIVMSG #weechat :hello!+` `+:nick!user@host PRIVMSG #weechat :hello!+`
@@ -1360,10 +1364,12 @@ Das Ergebnis ist eine Hashtabelle mit folgenden Schlüsseln
---- ----
dict = weechat.info_get_hashtable( dict = weechat.info_get_hashtable(
"irc_message_parse", "irc_message_parse",
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"}) {"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
# dict == { # dict == {
# "tags": "time=2015-06-27T16:40:35.000Z", # "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
# "tag_time": "2015-06-27T16:40:35.000Z",
# "tag_tag2": "value space",
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!", # "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
# "nick": "nick", # "nick": "nick",
# "user": "user", # "user": "user",
@@ -1372,10 +1378,10 @@ dict = weechat.info_get_hashtable(
# "channel": "#weechat", # "channel": "#weechat",
# "arguments": "#weechat :hello!", # "arguments": "#weechat :hello!",
# "text": "hello!", # "text": "hello!",
# "pos_command": "47", # "pos_command": "65",
# "pos_arguments": "55", # "pos_arguments": "73",
# "pos_channel": "55", # "pos_channel": "73",
# "pos_text": "65", # "pos_text": "83",
# } # }
---- ----
+365 -27
View File
@@ -184,11 +184,11 @@ $ make
$ make install $ make install
---- ----
Optionen für CMake können mit dem Format, "-DOPTION=VALUE", genutzt werden. Optionen für CMake können mit dem Format, `-DOPTION=VALUE`, genutzt werden.
Liste von häufig verwendeten Optionen: Liste von häufig verwendeten Optionen:
[width="100%",cols="2m,2,5m,12",options="header"] [width="100%",cols="3m,3,3m,10",options="header"]
|=== |===
| Option | Wert | Standardwert | Beschreibung | Option | Wert | Standardwert | Beschreibung
@@ -291,6 +291,9 @@ Liste von häufig verwendeten Optionen:
| ENABLE_TRIGGER | `ON`, `OFF` | ON | | ENABLE_TRIGGER | `ON`, `OFF` | ON |
kompiliert <<trigger_plugin,Trigger Erweiterung>>. kompiliert <<trigger_plugin,Trigger Erweiterung>>.
| ENABLE_TYPING | `ON`, `OFF` | ON |
kompiliert <<typing_plugin,Typing Erweiterung>>.
| ENABLE_XFER | `ON`, `OFF` | ON | | ENABLE_XFER | `ON`, `OFF` | ON |
kompiliert <<xfer_plugin,Xfer Erweiterung>>. kompiliert <<xfer_plugin,Xfer Erweiterung>>.
@@ -732,6 +735,7 @@ Folgende Dateien befinden sich im WeeChat-Heimatverzeichnis:
| spell.conf | Konfiguration für _spell_-Erweiterung | Nein. | spell.conf | Konfiguration für _spell_-Erweiterung | Nein.
| tcl.conf | Konfiguration für _tcl_-Erweiterung | Nein. | tcl.conf | Konfiguration für _tcl_-Erweiterung | Nein.
| trigger.conf | Konfiguration für _trigger_-Erweiterung | möglich, hängt von den Triggern ab. | trigger.conf | Konfiguration für _trigger_-Erweiterung | möglich, hängt von den Triggern ab.
| typing.conf | Konfiguration für _typing_-Erweiterung | Nein.
| xfer.conf | Konfiguration für _xfer_-Erweiterung | Nein. | xfer.conf | Konfiguration für _xfer_-Erweiterung | Nein.
| weechat.log | WeeChat Logdateien | Nein. | weechat.log | WeeChat Logdateien | Nein.
|=== |===
@@ -777,13 +781,13 @@ Beispiel des WeeChat-Terminals:
▲ Bars "status" und "input" Bar "nicklist" ▲ ▲ Bars "status" und "input" Bar "nicklist" ▲
.... ....
Der Bildschirm setzt sich aus folgenden Bereichen zusammen: Standardmäßig ist der Bildschirm in folgende Bereiche unterteilt:
* Chat-Bereich (in der Mitte des Bildschirms). Dieser enthält den Text und zusätzlich für jede Zeile: * Chat-Bereich (in der Mitte des Bildschirms). Dieser enthält den Text und zusätzlich für jede Zeile:
** die Uhrzeit ** die Uhrzeit
** Prefix (links von dem "|") ** Prefix (links von dem "|")
** Nachricht (rechts von dem "|") ** Nachricht (rechts von dem "|")
* Die Bars können um den Chat-Bereich angeordnet werden. Standard-Bars sind: * Die Bars können um den Chat-Bereich angeordnet werden. Bars, welche standardmäßig genutzt werden sind:
** _buflist_ Bar, auf der linken Seite ** _buflist_ Bar, auf der linken Seite
** _title_ Bar, über dem Chat-Bereich ** _title_ Bar, über dem Chat-Bereich
** _status_ Bar, unter dem Chat-Bereich ** _status_ Bar, unter dem Chat-Bereich
@@ -872,6 +876,15 @@ andere Items die zur Verfügung stehen (die aber nicht standardmäßig in einer
| window_number | `2` | Nummer des aktuellen Fensters. | window_number | `2` | Nummer des aktuellen Fensters.
|=== |===
Jeder Aspekt des Layouts kann mit den entsprechenden <<command_line,Befehlen>>
angepasst werden:
<<command_weechat_bar,`/bar`>> um die Bars anzupassen,
<<command_weechat_buffer,/buffer>> und <<command_weechat_window,`/window`>>
um <<buffers_and_windows,Buffer und Fenster>> anzupassen,
und <<command_weechat_layot,/layout>> um das Bildschirmlayout zu benennen,
zu speichern und wiederherzustellen sowie die Zuordnung zwischen Fenstern
und Buffern zu behalten.
[[command_line]] [[command_line]]
=== Befehlszeile === Befehlszeile
@@ -1123,12 +1136,20 @@ Beispiele von Buffern:
* IRC Privat (wird auch Query-Buffer genannt) * IRC Privat (wird auch Query-Buffer genannt)
Ein _Fenster_ ist ein Bildschirmbereich der Buffer darstellt. Es ist möglich Ein _Fenster_ ist ein Bildschirmbereich der Buffer darstellt. Es ist möglich
den Bildschirm in mehrere Fenster aufzuteilen. den Bildschirm in mehrere Fenster aufzuteilen (Beispiele:
<<window_split_examples,below>>, siehe den Befehl <<command_weechat_window,/window command>>
für weitere Details).
Jedes Fenster stellt einen Buffer dar. Ein Buffer kann unsichtbar sein (er wird Jedes Fenster stellt einen Buffer dar. Ein Buffer kann unsichtbar sein (er wird
in einem Fenster nicht angezeigt) oder ein Buffer wird durch ein oder mehrere Fenster in einem Fenster nicht angezeigt) oder ein Buffer wird durch ein oder mehrere Fenster
angezeigt. angezeigt.
Bildschirmlayouts und die Zuordnung zwischen Fenstern und Buffern können
<<command_weechat_layout,gespeichert und wiederhergestellt>> werden.
[[window_split_examples]]
==== Beispiele
Beispiele für eine horizontal Fensteraufteilung (`/window splith`): Beispiele für eine horizontal Fensteraufteilung (`/window splith`):
.... ....
@@ -1803,7 +1824,7 @@ Befehl festgelegt werden:
[[max_hotlist_level_nicks]] [[max_hotlist_level_nicks]]
==== Maximaler Hotlist-Level für Nicks ==== Maximaler Hotlist-Level für Nicks
Es ist möglich den sogeannten maximalen Hotlist-Level für einzele Nicks einzustellen, Es ist möglich den sogenannten maximalen Hotlist-Level für einzele Nicks einzustellen,
per Buffer oder für mehrere Gruppen (wie IRC Server). per Buffer oder für mehrere Gruppen (wie IRC Server).
Die Buffer-Eigenschaft "hotlist_max_level_nicks" kann mit einer Anzahl von Nicks genutzt werden Die Buffer-Eigenschaft "hotlist_max_level_nicks" kann mit einer Anzahl von Nicks genutzt werden
@@ -2001,7 +2022,14 @@ und um eine Hilfe zu erhalten wie man es nutzt: `+/help buffer_autoset+`.
| kbd:[Alt+F12] | springt zum Ende der Benutzerliste. | `+/bar scroll nicklist * e+` | kbd:[Alt+F12] | springt zum Ende der Benutzerliste. | `+/bar scroll nicklist * e+`
| kbd:[Alt+a] | wechselt zum nächsten Buffer mit Aktivität (nach Priorität: highlight, Nachricht, ...). | `+/input jump_smart+` | kbd:[Alt+a] | wechselt zum nächsten Buffer mit Aktivität (nach Priorität: highlight, Nachricht, ...). | `+/input jump_smart+`
| kbd:[Alt+Shift+B] | buflist-Bar umschalten. | `+/buflist toggle+` | kbd:[Alt+Shift+B] | buflist-Bar umschalten. | `+/buflist toggle+`
| kbd:[Alt+h] | löscht Hotliste (Aktivitätsanzeige für die Buffer). | `+/input hotlist_clear+` | kbd:[Alt+h],
kbd:[Alt+c] | Hotlist löschen (Aktivitätsbenachrichtigung bei Buffern). | `+/input hotlist_clear+`
| kbd:[Alt+h],
kbd:[Alt+m] | Aktuellen Puffer aus Hotlist entfernen. | `+/input hotlist_remove_buffer+`
| kbd:[Alt+h],
kbd:[Alt+r] | stelle die letzte aus dem aktuellen Buffer entfernte Hotlist wieder her. | `+/input hotlist_restore_buffer+`
| kbd:[Alt+h],
kbd:[Alt+Shift+R] | stelle die neueste Hotlist wieder her, die in allen Buffern entfernt wurde. | `+/input hotlist_restore_all+`
| kbd:[Alt+j], | kbd:[Alt+j],
kbd:[Alt+f] | wechselt zum ersten Buffer. | `+/buffer -+` kbd:[Alt+f] | wechselt zum ersten Buffer. | `+/buffer -+`
| kbd:[Alt+j], | kbd:[Alt+j],
@@ -2270,7 +2298,7 @@ und der Mausgeste (optional). Die unterschiedlichen Elemente werden durch ein `+
Liste der Modifiers: Liste der Modifiers:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Modifier | Beschreibung | Modifier | Beschreibung
| ctrl | Taste kbd:[Ctrl] | ctrl | Taste kbd:[Ctrl]
@@ -2280,7 +2308,7 @@ Liste der Modifiers:
Liste der Maustasten/Mausrad: Liste der Maustasten/Mausrad:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Maustaste/-rad | Beschreibung | Maustaste/-rad | Beschreibung
| button1 | Linker Mausknopf wird gedrückt | button1 | Linker Mausknopf wird gedrückt
@@ -2293,7 +2321,7 @@ Liste der Maustasten/Mausrad:
Liste der Mausgesten (nur für Maustasten, nicht für das Mausrad, anwendbar): Liste der Mausgesten (nur für Maustasten, nicht für das Mausrad, anwendbar):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Mausgeste | Distanz | Mausgeste | Distanz
| gesture-up | 3 ... 19 | gesture-up | 3 ... 19
@@ -2308,7 +2336,7 @@ Liste der Mausgesten (nur für Maustasten, nicht für das Mausrad, anwendbar):
Liste von unvollständigen Ereignissen (nur für Mausknopf, nützlich für Erweiterungen/Skripten): Liste von unvollständigen Ereignissen (nur für Mausknopf, nützlich für Erweiterungen/Skripten):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Ereignis | Beschreibung | Ereignis | Beschreibung
| event-down | Mausknopf ist gedrückt | event-down | Mausknopf ist gedrückt
@@ -2563,6 +2591,7 @@ Standarderweiterungen:
| php | PHP-Skript API. | php | PHP-Skript API.
| spell | Rechtschreibprüfung für Befehlszeile. | spell | Rechtschreibprüfung für Befehlszeile.
| trigger | Veränderung von Text und Ausführen von Befehlen bei einem Ereignis, welche durch WeeChat oder eine Erweiterung ausgelöst werden. | trigger | Veränderung von Text und Ausführen von Befehlen bei einem Ereignis, welche durch WeeChat oder eine Erweiterung ausgelöst werden.
| typing | Benutzer anzeigen, die gerade Nachrichten schreiben.
| xfer | Datentransfer und Direktchat. | xfer | Datentransfer und Direktchat.
|=== |===
@@ -2887,15 +2916,134 @@ Es ist möglich eine oder mehrere URL von IRC Servern zu übergeben:
irc[6][s]://[nick[:password]@]irc.example.org[:port][/channel][,channel[...]] irc[6][s]://[nick[:password]@]irc.example.org[:port][/channel][,channel[...]]
---- ----
Beispiel: Anmelden beim Server _irc.libera.chat_ mit dem Nick _nono_ und betreten Beispiel: Anmelden beim Server _irc.libera.chat_ mit dem Nick _alice_ und betreten
der Channels _#weechat_ und _#toto_ (Standardport (6667) wird genutzt): der Channels _#weechat_ und _#weechat-fr_ (Standardport (6667) wird genutzt):
---- ----
$ weechat irc://nono@irc.libera.chat/#weechat,#toto $ weechat irc://alice@irc.libera.chat/#weechat,#weechat-fr
----
[[irc_servers]]
==== Server
[[irc_servers_add]]
===== Server hinzufügen
Standardmäßig sind keine Server angelegt. Es gibt keine Begrenzung für die
Anzahl von Servern. Server können mit dem Befehl <<command_irc_server,/server>>
angelegt werden.
Um zum Beispiel eine SSL verschlüsselte Verbindung zu https://libera.chat/[libera.chat]
herzustellen:
----
/server add libera irc.libera.chat/6697 -ssl
----
Um WeeChat beim Start direkt mit dem Server zu verbinden:
----
/set irc.server.libera.autoconnect on
----
Zur Authentifizierung wird empfohlen, SASL (sofern dies von dem Server unterstützt wird)
zu verwenden, wobei das Passwort als gesicherte Daten gespeichert wird (siehe auch das
Kapitel über <<irc_sasl_authentication,SASL authentication>>):
----
/set irc.server.libera.sasl_username "alice"
/secure set libera xxxxxxx
/set irc.server.libera.sasl_password "${sec.data.libera}"
----
Wenn SASL nicht unterstützt wird, können Sie einen Befehl verwenden, um eine
Nachricht an nickserv zu senden, um sich zu Authentifizieren:
----
/set irc.server.libera.command "/msg nickserv identify ${sec.data.libera}"
----
[NOTE]
Indem Sie eine Nachricht an nickserv senden, können Sie sich erst nach dem Beitritt
zu Kanälen authentifizieren. Dies kann bei Kanälen, die eine Authentifizierung benötigen,
zu Problemen führen. In diesem Fall können Sie eine Befehlsverzögerung einstellen:
`/set irc.server.libera.command_delay 5`.
[[irc_servers_options]]
===== Server-Optionen
Serveroptinen haben folgenden Aufbau `irc.server.<server>.<option>` hierbei ist `<server>`
der interne Name des Server und `<option>` ist der Name der Option. +
Der Wert einer Serveroption wird von `irc.server_default.xxx` geerbt
wenn die Serveroption den Sonderwert `null` hat.
Wenn Sie beispielsweise den _libera_-Server mit den obigen Befehlen erstellt haben,
sehen Sie dies mit dem Befehl `/fset libera`:
....
irc.server.libera.addresses string "irc.libera.chat/6697"
irc.server.libera.anti_flood_prio_high integer null -> 2
irc.server.libera.anti_flood_prio_low integer null -> 2
irc.server.libera.autoconnect boolean on
irc.server.libera.autojoin string null -> ""
irc.server.libera.autoreconnect boolean null -> on
irc.server.libera.autoreconnect_delay integer null -> 10
irc.server.libera.autorejoin boolean null -> off
irc.server.libera.autorejoin_delay integer null -> 30
irc.server.libera.away_check integer null -> 0
irc.server.libera.away_check_max_nicks integer null -> 25
irc.server.libera.capabilities string null -> "*"
irc.server.libera.charset_message integer null -> message
irc.server.libera.command string null -> ""
irc.server.libera.command_delay integer null -> 0
irc.server.libera.connection_timeout integer null -> 60
irc.server.libera.default_chantypes string null -> "#&"
irc.server.libera.ipv6 boolean null -> on
irc.server.libera.local_hostname string null -> ""
irc.server.libera.msg_kick string null -> ""
irc.server.libera.msg_part string null -> "WeeChat ${info:version}"
irc.server.libera.msg_quit string null -> "WeeChat ${info:version}"
irc.server.libera.nicks string null -> "alice,alice1,alice2,alice3,alice4"
irc.server.libera.nicks_alternate boolean null -> on
irc.server.libera.notify string null -> ""
irc.server.libera.password string null -> ""
irc.server.libera.proxy string null -> ""
irc.server.libera.realname string null -> ""
irc.server.libera.sasl_fail integer null -> reconnect
irc.server.libera.sasl_key string null -> ""
irc.server.libera.sasl_mechanism integer null -> plain
irc.server.libera.sasl_password string "${sec.data.libera}"
irc.server.libera.sasl_timeout integer null -> 15
irc.server.libera.sasl_username string "alice"
irc.server.libera.split_msg_max_length integer null -> 512
irc.server.libera.ssl boolean on
irc.server.libera.ssl_cert string null -> ""
irc.server.libera.ssl_dhkey_size integer null -> 2048
irc.server.libera.ssl_fingerprint string null -> ""
irc.server.libera.ssl_password string null -> ""
irc.server.libera.ssl_priorities string null -> "NORMAL:-VERS-SSL3.0"
irc.server.libera.ssl_verify boolean null -> on
irc.server.libera.usermode string null -> ""
irc.server.libera.username string null -> "alice"
....
Wenn Sie beispielsweise automatisch eine Verbindung zu allen von Ihnen
erstellten Servern herstellen möchten, ohne dies für jeden Server einzeln einstellen
zu müssen, können Sie Folgendes tun:
----
/set irc.server_default.autoconnect on
----
Und dann können Sie die Serveroption zurücksetzen, sodass sie den standardmäßig
geerbten Wert verwendet, der jetzt `on` anstelle des Standardwerts `off` ist:
----
/unset irc.server.libera.autoconnect
---- ----
[[irc_ssl_certificates]] [[irc_ssl_certificates]]
==== SSL Zertifikate ===== SSL Zertifikate
Wenn eine Verbindung mittels SSL zu einem IRC Server hergestellt wird dann überprüft Wenn eine Verbindung mittels SSL zu einem IRC Server hergestellt wird dann überprüft
WeeChat immer ob dieser Verbindung sicher ist. WeeChat immer ob dieser Verbindung sicher ist.
@@ -2925,7 +3073,7 @@ die Verifizierung sehr streng genommen wird und dadurch vielleicht versagt. Auch
die Verbindung mit einer vorherigen Version (<0.3.1) funktioniert hat. die Verbindung mit einer vorherigen Version (<0.3.1) funktioniert hat.
[[irc_connect_oftc_with_certificate]] [[irc_connect_oftc_with_certificate]]
===== erstes Beispiel: Verbindung zu oftc und Überprüfung der Zertifikate ====== erstes Beispiel: Verbindung zu oftc und Überprüfung der Zertifikate
* Importieren Sie die Zertifikate in einer Shell: * Importieren Sie die Zertifikate in einer Shell:
@@ -2948,7 +3096,7 @@ Es ist möglich mehrere Zertifikate in der Datei CAs.pem zu verwenden.
---- ----
[[irc_connect_oftc_with_certfp]] [[irc_connect_oftc_with_certfp]]
===== zweites Beispiel: Verbindung zu oftc mittels CertFP ====== zweites Beispiel: Verbindung zu oftc mittels CertFP
* Erstellen Sie ein Zertifikat in der Shell: * Erstellen Sie ein Zertifikat in der Shell:
@@ -2973,7 +3121,7 @@ das auch beispielsweise `~/.weechat` sein kann.
Für weiterreichende Informationen lesen Sie bitte: https://www.oftc.net/NickServ/CertFP Für weiterreichende Informationen lesen Sie bitte: https://www.oftc.net/NickServ/CertFP
[[irc_sasl_authentication]] [[irc_sasl_authentication]]
==== SASL Authentifizierung ===== SASL Authentifizierung
WeeChat unterstützt eine SASL Authentifikation, mittels verschiedener Mechanismen: WeeChat unterstützt eine SASL Authentifikation, mittels verschiedener Mechanismen:
@@ -2983,10 +3131,6 @@ WeeChat unterstützt eine SASL Authentifikation, mittels verschiedener Mechanism
* _scram-sha-512_: SCRAM mit SHA-512 Digest-Algorithmus * _scram-sha-512_: SCRAM mit SHA-512 Digest-Algorithmus
* _ecdsa-nist256p-challenge_: Abgleich von öffentlichem/privatem Schlüssel * _ecdsa-nist256p-challenge_: Abgleich von öffentlichem/privatem Schlüssel
* _external_: SSL Zertifikat welches auf Client Seite vorliegt * _external_: SSL Zertifikat welches auf Client Seite vorliegt
* _dh-blowfish_: Passwort wird mittels blowfish verschlüsselt
(*unsicher*, wird nicht empfohlen)
* _dh-aes_: Passwort wird mittels AES verschlüsselt
(*unsicher*, wird nicht empfohlen)
Optionen für Server sind: Optionen für Server sind:
@@ -2999,7 +3143,7 @@ Optionen für Server sind:
_ecdsa-nist256p-challenge_ Mechanismus) _ecdsa-nist256p-challenge_ Mechanismus)
[[irc_sasl_ecdsa_nist256p_challenge]] [[irc_sasl_ecdsa_nist256p_challenge]]
===== SASL ECDSA-NIST256P-CHALLENGE ====== SASL ECDSA-NIST256P-CHALLENGE
Es muss ein privater Schlüssel erstellt werden um sich mittels des Es muss ein privater Schlüssel erstellt werden um sich mittels des
ECDSA-NIST256P-CHALLENGE Mechanismus authentifizieren zu können (es wird ECDSA-NIST256P-CHALLENGE Mechanismus authentifizieren zu können (es wird
@@ -3046,8 +3190,42 @@ Erneut mit dem Server verbinden:
/reconnect libera /reconnect libera
---- ----
[[irc_servers_connection]]
===== Verbindung zum Server
Um sich mit einem Server zu Verbinden, nutzt man den
<<command_irc_connect,/connect>> Befehl:
----
/connect libera
----
Um die Verbindung zu trennen:
----
/disconnect libera
----
Oder nur folgenden Befehl, wenn Sie sich in einem Buffer befinden, der zu
einem _libera_ Server gehört (Server, Kanal, privat):
----
/disconnect
----
Wenn Sie gleichzeitig mit mehreren Servern verbunden sind, werden die Serverbuffer
standardmäßig zusammengeführt. Sie können zwischen zusammengefügten Buffern mit
der kbd:[Ctrl+x] Taste wechseln.
Es ist möglich, die automatische Zusammenführung von Serverbuffern zu deaktivieren,
um unabhängige Serverbuffer zu haben:
----
/set irc.look.server_buffer independent
----
[[irc_tor_sasl]] [[irc_tor_sasl]]
==== Connect with TOR and SASL ===== Connect with TOR and SASL
Einige Server unterstützen eine Verbindungen mittels TOR (https://www.torproject.org/), Einige Server unterstützen eine Verbindungen mittels TOR (https://www.torproject.org/),
dies ist ein Netzwerk mit virtueller Tunneln, durch welchen Personen und Gruppen ihre dies ist ein Netzwerk mit virtueller Tunneln, durch welchen Personen und Gruppen ihre
@@ -3095,6 +3273,68 @@ Abschließend, stellen Sie eine Verbindung zum Server her:
/connect irc-tor /connect irc-tor
---- ----
[[irc_channels]]
==== Kanäle
Kanäle können mit dem Befehl <<command_irc_join,/join>> betreten
werden:
----
/join #channel
----
Verbindung zum Kanal trennen (der Buffer bleibt geöffnet):
----
/part [quit message]
----
Kanäle die man betreten hat, werden nicht gesichert. Um diese Kanäle
automatisch bei einer Verbindung zum Server zu betreten, müssen diese
Kanäle in der `autojoin` Option des Servers eingetragen werden:
----
/set irc.server.libera.autojoin "#weechat,#weechat-de"
----
[NOTE]
Es gibt Skripte, die dabei helfen das zu automatisieren,
siehe `/script search autojoin`.
Geben Sie acht, Leerzeichen werden verwendet um die Liste der Kanäle
von den Schlüsseln zu trennen. Ein Beispiel, wenn `#channel1` einen
Schlüssel erfordert, aber nicht `#channel2`:
----
/set irc.server.libera.autojoin "#channel1,#channel2 key1"
----
Um eine Hilfe über das Format zu erhalten, siehe `/help irc.server.libera.autojoin`.
[[irc_private_messages]]
==== private Nachrichten
Sie können eine private Nachricht mit dem Befehl <<command_irc_query,/query>> senden,
was einen separaten Buffer, für die Konversation, öffnet:
----
/query bob hallo, wie geht es Dir?
----
Ohne Angabe von Argumenten öffnet der Befehl nur den Buffer
(oder wählt ihn aus, wenn er bereits geöffnet ist):
----
/query bob
----
Um einen privaten Buffer zu schließen, führt man diesen Befehl in dem
privaten Buffer aus:
----
/close
----
[[irc_smart_filter_join_part_quit]] [[irc_smart_filter_join_part_quit]]
==== einfacher Filter für join/part/quit Nachrichten ==== einfacher Filter für join/part/quit Nachrichten
@@ -3237,7 +3477,7 @@ Falls die Option nicht gesetzt ist (Standard) wählt WeeChat einen geeigneten Bu
Unvollständige Liste der IRC Nachrichten bzw. Alias die angepasst werden können: Unvollständige Liste der IRC Nachrichten bzw. Alias die angepasst werden können:
[width="100%",cols="^1m,^3m,8",options="header"] [width="100%",cols="^2m,^3m,15",options="header"]
|=== |===
| Nachricht | Alias | Beschreibung | Nachricht | Alias | Beschreibung
| error | | Fehler | error | | Fehler
@@ -3508,8 +3748,8 @@ Erstellt eine Struktur in folgender Form:
│ └── #mychan.weechatlog │ └── #mychan.weechatlog
├── oftc ├── oftc
│ ├── oftc.weechatlog │ ├── oftc.weechatlog
│ ├── #chan1.weechatlog │ ├── #channel1.weechatlog
│ └── #chan2.weechatlog │ └── #channel2.weechatlog
... ...
.... ....
@@ -4773,6 +5013,104 @@ Optionen:
include::includes/autogen_user_options.de.adoc[tag=trigger_options] include::includes/autogen_user_options.de.adoc[tag=trigger_options]
[[typing_plugin]]
=== Schreibstatus
Die typing-Erweitertung wird verwendet, um andere Benutzer darüber zu informieren,
dass Sie Nachrichten schreiben, und zeigt eine Liste der Benutzer an, die derzeit
eine Nachricht in dem Buffer eingeben.
Es wird von der IRC-Erweiterung für Kanäle- und private Buffern verwendet, sofern
die "message-tags"-Fähigkeit aktiviert ist (dies kann mit folgendenen Befehl,
wie folgt überprüfen werden <<command_irc_cap,/cap>>). +
Unter der Haube wird die Eingabe des Client-Tags gemäß dieser Spezifikation verwendet:
https://ircv3.net/specs/client-tags/typing.html.
[[typing_activation]]
==== Aktivierung
Aus Datenschutzgründen ist diese Tippfunktion standardmäßig deaktiviert. +
Wenn Sie es verwenden möchten, müssen Sie Optionen sowohl in den typing- als
auch für die IRC-Erweiterung aktivieren:
----
/set typing.look.enabled_nicks on
/set typing.look.enabled_self on
/set irc.look.typing_status_nicks on
/set irc.look.typing_status_self on
----
Die Tippbenachrichtigungen werden am Ende der Statusleiste angezeigt.
Beispiel für die Statusleiste mit dem "typing" Item: "bob" tippt gerade eine
Nachricht und "alice" hat eine Nachricht getippt, machte aber eine Pause:
....
│[12:55] [6] [irc/libera] 3:#test(+n){4} [Typing: bob, (alice)] │
│[@Flashy] █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[typing_signals_sent]]
==== Signale gesendet
Wenn Sie eine Nachricht eingeben (Befehle, die mit `/` beginnen, werden ignoriert),
sendet die typing-Erweitertung Signale, um andere Erweiterungen (wie z.B. IRC) darüber
zu informieren, dass Sie eine Nachricht eingeben. Diese Erweiterungen können dann
Tippbenachrichtigungen an andere Benutzer senden.
Die folgenden Signale werden gesendet, wenn Sie eine Nachricht schreiben:
[width="100%",cols="1,1,5",options="header"]
|===
| Signal | Argumente | Beschreibung
| typing_self_typing | Pointer: buffer. | Du schreibst eine Nachricht.
| typing_self_paused | Pointer: buffer. | Du machst beim Schrieben einer Nachricht, eine Pause.
| typing_self_cleared | Pointer: buffer. | Du hast die Eingabezeile gelöscht, ohne die Nachricht zu senden.
| typing_self_sent | Pointer: buffer. | Du hast die Nachricht in den Buffer geschickt.
|===
[[typing_signals_caught]]
==== Signale empfangen
Die typing-Erweiterung fängt einige Signale ab, die von anderen Erweiterungen (wie IRC)
gesendet werden können, um interne Hashtables zu aktualisieren, die verwendet werden,
um den Schreibstatus von Nicks in Buffern zu sichern. Diese Hashtabellen werden verwendet,
um den Inhalt des "typing"-Items zu erstellen.
Die folgenden Signale werden von der typing-Erweiterung empfangen:
[width="100%",cols="1,4,3",options="header"]
|===
| Signal | Argumente | Beschreibung
| typing_set_nick |
Zeichenkette: Bufferpointer + ";" + Status (möglich: "off", "typing", "paused",
"cleared") + ";" + Nick. +
Beispiele: "0x1234abcd;typing;alice". |
Schreibstatus für einen Nick in einem Buffer festlegen.
| typing_reset_buffer |
Pointer: Buffer. |
Schreibstatus für alle Nicks in einem Buffer entfernen.
|===
[[typing_options]]
==== Optionen
Sektionen in Datei _typing.conf_:
[width="100%",cols="3m,6m,16",options="header"]
|===
| Sektion | Steuerbefehl | Beschreibung
| look | /set typing.look.* | Erscheinungsbild.
|===
Optionen:
include::includes/autogen_user_options.de.adoc[tag=typing_options]
[[xfer_plugin]] [[xfer_plugin]]
=== Xfer === Xfer
+2
View File
@@ -81,6 +81,7 @@ LOCALE_LIST = (
'it_IT', 'it_IT',
'ja_JP', 'ja_JP',
'pl_PL', 'pl_PL',
'sr_RS',
) )
# all commands/options/.. of following plugins will produce a file # all commands/options/.. of following plugins will produce a file
@@ -114,6 +115,7 @@ PLUGIN_LIST = {
'spell': 'o', 'spell': 'o',
'trigger': 'o', 'trigger': 'o',
'xfer': 'co', 'xfer': 'co',
'typing': 'o',
} }
# options to ignore # options to ignore
@@ -79,6 +79,8 @@ _last_nick_speaking_time_   (pointer, hdata: "irc_channel_speaking") +
_modelists_   (pointer, hdata: "irc_modelist") + _modelists_   (pointer, hdata: "irc_modelist") +
_last_modelist_   (pointer, hdata: "irc_modelist") + _last_modelist_   (pointer, hdata: "irc_modelist") +
_join_smart_filtered_   (hashtable) + _join_smart_filtered_   (hashtable) +
_typing_state_   (integer) +
_typing_status_sent_   (time) +
_buffer_   (pointer, hdata: "buffer") + _buffer_   (pointer, hdata: "buffer") +
_buffer_as_string_   (string) + _buffer_as_string_   (string) +
_prev_channel_   (pointer, hdata: "irc_channel") + _prev_channel_   (pointer, hdata: "irc_channel") +
@@ -237,6 +239,8 @@ _sasl_scram_client_first_   (string) +
_sasl_scram_salted_pwd_   (other) + _sasl_scram_salted_pwd_   (other) +
_sasl_scram_salted_pwd_size_   (integer) + _sasl_scram_salted_pwd_size_   (integer) +
_sasl_scram_auth_message_   (string) + _sasl_scram_auth_message_   (string) +
_sasl_temp_username_   (string) +
_sasl_temp_password_   (string) +
_is_connected_   (integer) + _is_connected_   (integer) +
_ssl_connected_   (integer) + _ssl_connected_   (integer) +
_disconnected_   (integer) + _disconnected_   (integer) +
@@ -267,6 +271,10 @@ _chantypes_   (string) +
_chanmodes_   (string) + _chanmodes_   (string) +
_monitor_   (integer) + _monitor_   (integer) +
_monitor_time_   (time) + _monitor_time_   (time) +
_clienttagdeny_   (string) +
_clienttagdeny_count_   (integer) +
_clienttagdeny_array_   (string, array_size: "clienttagdeny_count") +
_typing_allowed_   (integer) +
_reconnect_delay_   (integer) + _reconnect_delay_   (integer) +
_reconnect_start_   (time) + _reconnect_start_   (time) +
_command_time_   (time) + _command_time_   (time) +
@@ -8,7 +8,7 @@
|=== |===
| Plugin | Name | Description | Hashtable (input) | Hashtable (output) | Plugin | Name | Description | Hashtable (input) | Hashtable (output)
| irc | irc_message_parse | parse an IRC message | "message": IRC message, "server": server name (optional) | "tags": tags, "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found) | irc | irc_message_parse | parse an IRC message | "message": IRC message, "server": server name (optional) | "tags": tags, "tag_xxx": unescaped value of tag "xxx" (one key per tag), "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
| irc | irc_message_split | split an IRC message (to fit in 512 bytes by default) | "message": IRC message, "server": server name (optional) | "msg1" ... "msgN": messages to send (without final "\r\n"), "args1" ... "argsN": arguments of messages, "count": number of messages | irc | irc_message_split | split an IRC message (to fit in 512 bytes by default) | "message": IRC message, "server": server name (optional) | "msg1" ... "msgN": messages to send (without final "\r\n"), "args1" ... "argsN": arguments of messages, "count": number of messages
@@ -4,18 +4,26 @@
// //
// tag::plugins_priority[] // tag::plugins_priority[]
. charset (15000) . charset (16000)
. logger (14000) . logger (15000)
. exec (13000) . exec (14000)
. trigger (12000) . trigger (13000)
. spell (11000) . spell (12000)
. alias (10000) . alias (11000)
. buflist (9000) . buflist (10000)
. fifo (8000) . fifo (9000)
. typing (8000)
. xfer (7000) . xfer (7000)
. irc (6000) . irc (6000)
. relay (5000) . relay (5000)
. guile, javascript, lua, perl, php, python, ruby, tcl (4000) . guile (4007)
. javascript (4006)
. lua (4005)
. perl (4004)
. php (4003)
. python (4002)
. ruby (4001)
. tcl (4000)
. script (3000) . script (3000)
. fset (2000) . fset (2000)
// end::plugins_priority[] // end::plugins_priority[]
+135 -51
View File
@@ -17,10 +17,11 @@ target: server name
* `+allchan+`: execute a command on all channels of all connected servers * `+allchan+`: execute a command on all channels of all connected servers
---- ----
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command> /allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
[-current] -include=<channel>[,<channel>...] <command> [-current] [-parted] -include=<channel>[,<channel>...] <command>
-current: execute command for channels of current server only -current: execute command for channels of current server only
-parted: execute on parted channels only
-exclude: exclude some channels (wildcard "*" is allowed) -exclude: exclude some channels (wildcard "*" is allowed)
-include: include only some channels (wildcard "*" is allowed) -include: include only some channels (wildcard "*" is allowed)
command: command to execute (or text to send to buffer if command does not start with '/') command: command to execute (or text to send to buffer if command does not start with '/')
@@ -41,6 +42,8 @@ Examples:
/allchan -exclude=#weechat,#linux* hello /allchan -exclude=#weechat,#linux* hello
say 'hello' on all channels beginning with #linux: say 'hello' on all channels beginning with #linux:
/allchan -include=#linux* hello /allchan -include=#linux* hello
close all buffers with parted channels:
/allchan -parted /close
---- ----
[[command_irc_allpv]] [[command_irc_allpv]]
@@ -100,6 +103,26 @@ Examples:
/allserv /whois $nick /allserv /whois $nick
---- ----
[[command_irc_auth]]
* `+auth+`: authenticate with SASL
----
/auth [<username> <password>]
username: SASL username (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
password: SASL password or path to file with private key (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
If username and password are not provided, the values from server options "sasl_username" and "sasl_password" (or "sasl_key") are used.
Examples:
authenticate with username/password defined in the server:
/auth
authenticate as a different user:
/auth user2 password2
authenticate as a different user with mechanism ecdsa-nist256p-challenge:
/auth user2 ${weechat_config_dir}/ecdsa2.pem
----
[[command_irc_ban]] [[command_irc_ban]]
* `+ban+`: ban nicks or hosts * `+ban+`: ban nicks or hosts
@@ -129,7 +152,7 @@ Without argument, this command displays the ban list for current channel.
Without argument, "ls" and "list" are sent. Without argument, "ls" and "list" are sent.
Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names. Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities). The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities).
@@ -808,6 +831,15 @@ mask: list only services matching this mask
type: list only services of this type type: list only services of this type
---- ----
[[command_irc_setname]]
* `+setname+`: set real name
----
/setname <realname>
realname: new real name
----
[[command_irc_squery]] [[command_irc_squery]]
* `+squery+`: deliver a message to a service * `+squery+`: deliver a message to a service
@@ -1271,7 +1303,7 @@ Examples:
/debug list /debug list
set <plugin> <level> set <plugin> <level>
dump [<plugin>] dump [<plugin>]
buffer|color|infolists|memory|tags|term|windows buffer|color|infolists|libs|certs|memory|tags|term|windows
mouse|cursor [verbose] mouse|cursor [verbose]
hdata [free] hdata [free]
time <command> time <command>
@@ -1289,6 +1321,7 @@ Examples:
hooks: display infos about hooks hooks: display infos about hooks
infolists: display infos about infolists infolists: display infos about infolists
libs: display infos about external libraries used libs: display infos about external libraries used
certs: display number of loaded trusted certificate authorities
memory: display infos about memory usage memory: display infos about memory usage
mouse: toggle debug for mouse mouse: toggle debug for mouse
tags: display tags for lines tags: display tags for lines
@@ -1342,27 +1375,32 @@ To force a string comparison, you can add double quotes around each expression,
Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority: Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
1. the string itself without evaluation (format: "raw:xxx") 1. the string itself without evaluation (format: "raw:xxx")
2. an evaluated sub-string (format: "eval:xxx") 2. a user-defined variable (format: "name")
3. an evaluated condition (format: "eval_cond:xxx") 3. an evaluated sub-string (format: "eval:xxx")
4. a string with escaped chars (format: "esc:xxx" or "\xxx") 4. an evaluated condition (format: "eval_cond:xxx")
5. a string with chars to hide (format: "hide:char,string") 5. a string with escaped chars (format: "esc:xxx" or "\xxx")
6. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string") 6. a string with chars to hide (format: "hide:char,string")
7. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string") or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
7. a reversed string (format: "rev:xxx" or "revscr:xxx") 8. a reversed string (format: "rev:xxx" or "revscr:xxx")
8. a repeated string (format: "repeat:count,string") 9. a repeated string (format: "repeat:count,string")
9. length of a string (format: "length:xxx" or "lengthscr:xxx") 10. length of a string (format: "length:xxx" or "lengthscr:xxx")
10. a color (format: "color:xxx", see "Plugin API reference", function "color") 11. split of a string (format: "split:number,separators,flags,xxx")
11. a modifier (format: "modifier:name,data,string") 12. split of shell argmuents (format: "split_shell:number,xxx")
12. an info (format: "info:name,arguments", arguments are optional) 13. a color (format: "color:xxx", see "Plugin API reference", function "color")
13. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx") 14. a modifier (format: "modifier:name,data,string")
14. current date/time (format: "date" or "date:format") 15. an info (format: "info:name,arguments", arguments are optional)
15. an environment variable (format: "env:XXX") 16. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
16. a ternary operator (format: "if:condition?value_if_true:value_if_false") 17. current date/time (format: "date" or "date:format")
17. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx") 18. an environment variable (format: "env:XXX")
18. a translated string (format: "translate:xxx") 19. a ternary operator (format: "if:condition?value_if_true:value_if_false")
19. an option (format: "file.section.option") 20. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
20. a local variable in buffer 21. a random integer number (format: "random:min,max")
21. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer. 22. a translated string (format: "translate:xxx")
23. define a user variable (format: "define:name,value")
24. an option (format: "file.section.option")
25. a local variable in buffer
26. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
Format for hdata can be one of following: Format for hdata can be one of following:
hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed) hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example: hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example:
@@ -1374,29 +1412,39 @@ Format for hdata can be one of following:
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get". For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".
Examples (simple strings): Examples (simple strings):
/eval -n ${raw:${info:version}} ==> ${info:version} /eval -n ${raw:${info:version}} ==> ${info:version}
/eval -n ${eval_cond:${window.win_width}>100} ==> 1 /eval -n ${eval_cond:${window.win_width}>100} ==> 1
/eval -n ${info:version} ==> 0.4.3 /eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user /eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3 /eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.password} ==> secret /eval -n ${sec.data.password} ==> secret
/eval -n ${window} ==> 0x2549aa0 /eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320 /eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat /eval -n ${window.buffer.full_name} ==> core.weechat
/eval -n ${window.buffer.number} ==> 1 /eval -n ${window.buffer.number} ==> 1
/eval -n ${\t} ==> <tab> /eval -n ${\t} ==> <tab>
/eval -n ${hide:-,${relay.network.password}} ==> -------- /eval -n ${hide:-,${relay.network.password}} ==> --------
/eval -n ${cut:3,+,test} ==> tes+ /eval -n ${cut:3,+,test} ==> tes+
/eval -n ${cut:+3,+,test} ==> te+ /eval -n ${cut:+3,+,test} ==> te+
/eval -n ${date:%H:%M:%S} ==> 07:46:40 /eval -n ${date:%H:%M:%S} ==> 07:46:40
/eval -n ${if:${info:term_width}>80?big:small} ==> big /eval -n ${if:${info:term_width}>80?big:small} ==> big
/eval -n ${rev:Hello} ==> olleH /eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> ----- /eval -n ${repeat:5,-} ==> -----
/eval -n ${length:test} ==> 4 /eval -n ${length:test} ==> 4
/eval -n ${calc:(5+2)*3} ==> 21 /eval -n ${split:1,,,abc,def,ghi} ==> abc
/eval -n ${base_encode:64,test} ==> dGVzdA== /eval -n ${split:-1,,,abc,def,ghi} ==> ghi
/eval -n ${base_decode:64,dGVzdA==} ==> test /eval -n ${split:count,,,abc,def,ghi} ==> 3
/eval -n ${translate:Plugin} ==> Extension /eval -n ${split:random,,,abc,def,ghi} ==> def
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
/eval -n ${calc:(5+2)*3} ==> 21
/eval -n ${random:0,10} ==> 3
/eval -n ${base_encode:64,test} ==> dGVzdA==
/eval -n ${base_decode:64,dGVzdA==} ==> test
/eval -n ${translate:Plugin} ==> Extension
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
Examples (conditions): Examples (conditions):
/eval -n -c ${window.buffer.number} > 2 ==> 0 /eval -n -c ${window.buffer.number} > 2 ==> 0
@@ -1549,6 +1597,9 @@ list of actions:
jump_previously_visited_buffer: jump to previously visited buffer jump_previously_visited_buffer: jump to previously visited buffer
jump_next_visited_buffer: jump to next visited buffer jump_next_visited_buffer: jump to next visited buffer
hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight) hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight)
hotlist_remove_buffer: remove current buffer from hotlist
hotlist_restore_buffer: restore latest hotlist removed in the current buffer
hotlist_restore_all: restore latest hotlist removed in all buffers
grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds) grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds) grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
grab_mouse: grab mouse event code grab_mouse: grab mouse event code
@@ -1644,6 +1695,8 @@ windows: store/apply only windows (buffer displayed by each window)
Without argument, this command displays stored layouts. Without argument, this command displays stored layouts.
The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit". The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit".
Note: the layout only remembers windows split and buffers numbers. It does not open buffers. That means for example you must still auto-join IRC channels to open the buffers, the saved layout only applies once the buffers are opened.
---- ----
[[command_weechat_mouse]] [[command_weechat_mouse]]
@@ -1693,21 +1746,26 @@ Examples:
* `+plugin+`: list/load/unload plugins * `+plugin+`: list/load/unload plugins
---- ----
/plugin list|listfull [<name>] /plugin list [-o|-ol|-i|-il|<name>]
listfull [<name>]
load <filename> [<arguments>] load <filename> [<arguments>]
autoload [<arguments>] autoload [<arguments>]
reload [<name>|* [<arguments>]] reload [<name>|* [<arguments>]]
unload [<name>] unload [<name>]
list: list loaded plugins list: list loaded plugins
-o: send list of loaded plugins to buffer (string in English)
-ol: send list of loaded plugins to buffer (translated string)
-i: copy list of loaded plugins in command line (for sending to buffer) (string in English)
-il: copy list of loaded plugins in command line (for sending to buffer) (translated string)
name: a plugin name
listfull: list loaded plugins (verbose) listfull: list loaded plugins (verbose)
load: load a plugin load: load a plugin
filename: plugin (file) to load
arguments: arguments given to plugin on load
autoload: autoload plugins in system or user directory autoload: autoload plugins in system or user directory
reload: reload a plugin (if no name given, unload all plugins, then autoload plugins) reload: reload a plugin (if no name given, unload all plugins, then autoload plugins)
unload: unload a plugin (if no name given, unload all plugins) unload: unload a plugin (if no name given, unload all plugins)
filename: plugin (file) to load
name: a plugin name
arguments: arguments given to plugin on load
Without argument, this command lists loaded plugins. Without argument, this command lists loaded plugins.
---- ----
@@ -1935,6 +1993,32 @@ Examples:
/set env ABC "" /set env ABC ""
---- ----
[[command_weechat_toggle]]
* `+toggle+`: toggle value of a config option
----
/toggle <option> [<value> [<value>...]]
option: name of an option
value: possible values for the option (values are split like the shell command arguments: quotes can be used to preserve spaces at the beginning/end of values)
Behavior:
- only an option of type boolean or string can be toggled without a value:
- boolean: toggle between on/off according to current value
- string: toggle between empty string and default value (works only if empty string is allowed for the option)
- with a single value given, toggle between this value and the default value of option
- with multiple values given, toggle between these values: the value used is the one following the current value of option; if the current value of option is not in list, the first value in the list is used
- the special value "null" can be given, but only as first value in the list and without quotes around.
Examples:
toggle display of time in chat area (without displaying the new value used):
/mute /toggle weechat.look.buffer_time_format
switch format of time in chat area (with seconds, without seconds, disabled):
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
toggle autojoin of #weechat channel on libera server:
/toggle irc.server.libera.autojoin null #weechat
----
[[command_weechat_unset]] [[command_weechat_unset]]
* `+unset+`: unset/reset config options * `+unset+`: unset/reset config options
+119 -51
View File
@@ -1845,6 +1845,50 @@
** default value: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+` ** default value: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
// end::fifo_options[] // end::fifo_options[]
// tag::typing_options[]
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
** description: pass:none[number of seconds after paused status has been set: if reached, the typing status is removed]
** type: integer
** values: 1 .. 2147483647
** default value: `+30+`
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
** description: pass:none[number of seconds after typing status has been set: if reached, the typing status is removed]
** type: integer
** values: 1 .. 2147483647
** default value: `+6+`
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
** description: pass:none[number of seconds after typing last char: if reached, the typing status becomes "paused" and no more typing signals are sent]
** type: integer
** values: 1 .. 2147483647
** default value: `+10+`
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
** description: pass:none[typing enabled for other nicks (display typing info for nicks typing in the current buffer)]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
** description: pass:none[typing enabled for self messages (send typing info to other users)]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
** description: pass:none[min number of chars in message to trigger send of typing signals]
** type: integer
** values: 1 .. 2147483647
** default value: `+4+`
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
** description: pass:none[max number of chars displayed in the bar item "typing" (0 = do not truncate content)]
** type: integer
** values: 0 .. 2147483647
** default value: `+0+`
// end::typing_options[]
// tag::xfer_options[] // tag::xfer_options[]
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted* * [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
** description: pass:none[text color for "aborted" status] ** description: pass:none[text color for "aborted" status]
@@ -2214,6 +2258,12 @@
** values: any string ** values: any string
** default value: `+"%a, %d %b %Y %T %z"+` ** default value: `+"%a, %d %b %Y %T %z"+`
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
** description: pass:none[display ACCOUNT messages received when capability account-notify is enabled]
** type: boolean
** values: on, off
** default value: `+on+`
* [[option_irc.look.display_away]] *irc.look.display_away* * [[option_irc.look.display_away]] *irc.look.display_away*
** description: pass:none[display message when (un)marking as away (off: do not display/send anything, local: display locally, channel: send action to channels)] ** description: pass:none[display message when (un)marking as away (off: do not display/send anything, local: display locally, channel: send action to channels)]
** type: integer ** type: integer
@@ -2238,6 +2288,12 @@
** values: on, off ** values: on, off
** default value: `+on+` ** default value: `+on+`
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
** description: pass:none[display extra information in the JOIN messages: account name and real name (capability extended-join must be enabled)]
** type: boolean
** values: on, off
** default value: `+on+`
* [[option_irc.look.display_host_join]] *irc.look.display_host_join* * [[option_irc.look.display_host_join]] *irc.look.display_host_join*
** description: pass:none[display host in join messages] ** description: pass:none[display host in join messages]
** type: boolean ** type: boolean
@@ -2508,6 +2564,18 @@
** values: on, off ** values: on, off
** default value: `+off+` ** default value: `+off+`
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
** description: pass:none[display nicks typing on the channel in bar item "typing" (option typing.look.enabled_nicks must be enabled and capability "message-tags" must be enabled on the server)]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
** description: pass:none[send self typing status to channels so that other users see when you are typing a message (option typing.look.enabled_self must be enabled and capability "message-tags" must be enabled on the server)]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing* * [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
** description: pass:none[growing factor for autoreconnect delay to server (1 = always same delay, 2 = delay*2 for each retry, etc.)] ** description: pass:none[growing factor for autoreconnect delay to server (1 = always same delay, 2 = delay*2 for each retry, etc.)]
** type: integer ** type: integer
@@ -2665,10 +2733,10 @@
** default value: `+25+` ** default value: `+25+`
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
** description: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")] ** description: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat); "*" enables all capabilities by default (supported by both server and WeeChat); wildcard "*" is allowed; a capability beginning with "!" is excluded (example: "*,!account-*,!extended-join")]
** type: string ** type: string
** values: any string ** values: any string
** default value: `+""+` ** default value: `+"*"+`
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message* * [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
** description: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)] ** description: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)]
@@ -2770,7 +2838,7 @@
** description: pass:none[action to perform if SASL authentication fails: "continue" to ignore the authentication problem, "reconnect" to schedule a reconnection to the server, "disconnect" to disconnect from server (see also option irc.network.sasl_fail_unavailable)] ** description: pass:none[action to perform if SASL authentication fails: "continue" to ignore the authentication problem, "reconnect" to schedule a reconnection to the server, "disconnect" to disconnect from server (see also option irc.network.sasl_fail_unavailable)]
** type: integer ** type: integer
** values: continue, reconnect, disconnect ** values: continue, reconnect, disconnect
** default value: `+continue+` ** default value: `+reconnect+`
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key* * [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
** description: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)] ** description: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)]
@@ -2779,9 +2847,9 @@
** default value: `+""+` ** default value: `+""+`
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism* * [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
** description: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL cert, "dh-blowfish" for blowfish crypted password (insecure, not recommended), "dh-aes" for AES crypted password (insecure, not recommended)] ** description: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL certificate]
** type: integer ** type: integer
** values: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes ** values: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
** default value: `+plain+` ** default value: `+plain+`
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password* * [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
@@ -3075,34 +3143,6 @@
** default value: `+""+` ** default value: `+""+`
// end::relay_options[] // end::relay_options[]
// tag::javascript_options[]
* [[option_javascript.look.check_license]] *javascript.look.check_license*
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** type: boolean
** values: on, off
** default value: `+on+`
// end::javascript_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** type: boolean
** values: on, off
** default value: `+on+`
// end::ruby_options[]
// tag::guile_options[] // tag::guile_options[]
* [[option_guile.look.check_license]] *guile.look.check_license* * [[option_guile.look.check_license]] *guile.look.check_license*
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed] ** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
@@ -3117,19 +3157,33 @@
** default value: `+on+` ** default value: `+on+`
// end::guile_options[] // end::guile_options[]
// tag::tcl_options[] // tag::javascript_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license* * [[option_javascript.look.check_license]] *javascript.look.check_license*
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed] ** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** type: boolean ** type: boolean
** values: on, off ** values: on, off
** default value: `+off+` ** default value: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context* * [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower] ** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** type: boolean ** type: boolean
** values: on, off ** values: on, off
** default value: `+on+` ** default value: `+on+`
// end::tcl_options[] // end::javascript_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** type: boolean
** values: on, off
** default value: `+on+`
// end::lua_options[]
// tag::perl_options[] // tag::perl_options[]
* [[option_perl.look.check_license]] *perl.look.check_license* * [[option_perl.look.check_license]] *perl.look.check_license*
@@ -3159,20 +3213,6 @@
** default value: `+on+` ** default value: `+on+`
// end::php_options[] // end::php_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** type: boolean
** values: on, off
** default value: `+on+`
// end::lua_options[]
// tag::python_options[] // tag::python_options[]
* [[option_python.look.check_license]] *python.look.check_license* * [[option_python.look.check_license]] *python.look.check_license*
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed] ** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
@@ -3187,6 +3227,34 @@
** default value: `+on+` ** default value: `+on+`
// end::python_options[] // end::python_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** type: boolean
** values: on, off
** default value: `+on+`
// end::ruby_options[]
// tag::tcl_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license*
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** type: boolean
** values: on, off
** default value: `+on+`
// end::tcl_options[]
// tag::script_options[] // tag::script_options[]
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded* * [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
** description: pass:none[color for status "autoloaded" ("a")] ** description: pass:none[color for status "autoloaded" ("a")]
+3
View File
@@ -86,6 +86,9 @@ $HOME/.config/weechat/tcl.conf::
$HOME/.config/weechat/trigger.conf:: $HOME/.config/weechat/trigger.conf::
configuration file for _trigger_ plugin configuration file for _trigger_ plugin
$HOME/.config/weechat/typing.conf::
configuration file for _typing_ plugin
$HOME/.config/weechat/xfer.conf:: $HOME/.config/weechat/xfer.conf::
configuration file for _xfer_ plugin configuration file for _xfer_ plugin
+59 -48
View File
@@ -89,6 +89,7 @@ The main WeeChat directories are:
|       spell/ | Spell plugin. |       spell/ | Spell plugin.
|       tcl/ | Tcl scripting API. |       tcl/ | Tcl scripting API.
|       trigger/ | Trigger plugin. |       trigger/ | Trigger plugin.
|       typing/ | Typing plugin.
|       xfer/ | Xfer plugin (IRC DCC file/chat). |       xfer/ | Xfer plugin (IRC DCC file/chat).
| tests/ | Tests. | tests/ | Tests.
|    scripts/ | Scripting API tests. |    scripts/ | Scripting API tests.
@@ -294,6 +295,7 @@ WeeChat "core" is located in following directories:
|       irc-redirect.c | Redirection of IRC command output. |       irc-redirect.c | Redirection of IRC command output.
|       irc-sasl.c | SASL authentication with IRC server. |       irc-sasl.c | SASL authentication with IRC server.
|       irc-server.c | I/O communication with IRC server. |       irc-server.c | I/O communication with IRC server.
|       irc-tag.c | Functions to manipulate IRC message tags.
|       irc-upgrade.c | Save/restore of IRC data when upgrading WeeChat. |       irc-upgrade.c | Save/restore of IRC data when upgrading WeeChat.
|    javascript/ | JavaScript plugin. |    javascript/ | JavaScript plugin.
|       weechat-js.cpp | Main JavaScript functions (load/unload scripts, execute JavaScript code). |       weechat-js.cpp | Main JavaScript functions (load/unload scripts, execute JavaScript code).
@@ -363,6 +365,11 @@ WeeChat "core" is located in following directories:
|       trigger-command.c | Trigger commands. |       trigger-command.c | Trigger commands.
|       trigger-completion.c | Trigger completions. |       trigger-completion.c | Trigger completions.
|       trigger-config.c | Trigger config options (file trigger.conf). |       trigger-config.c | Trigger config options (file trigger.conf).
|    typing/ | Typing plugin.
|       typing.c | Main typing functions.
|       typing-bar-item.c | Typing bar items.
|       typing-config.c | Typing config options (file typing.conf).
|       typing-status.c | Messages typing status on buffers.
|    xfer/ | Xfer plugin (IRC DCC file/chat). |    xfer/ | Xfer plugin (IRC DCC file/chat).
|       xfer.c | Main xfer functions. |       xfer.c | Main xfer functions.
|       xfer-buffer.c | Xfer buffer. |       xfer-buffer.c | Xfer buffer.
@@ -382,54 +389,58 @@ WeeChat "core" is located in following directories:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="2m,3",options="header"]
|=== |===
| Path/file | Description | Path/file | Description
| tests/ | Root of tests. | tests/ | Root of tests.
|    tests.cpp | Program used to run all tests. |    tests.cpp | Program used to run all tests.
|    scripts/ | Root of scripting API tests. |    scripts/ | Root of scripting API tests.
|       test-scripts.cpp | Program used to run the scripting API tests. |       test-scripts.cpp | Program used to run the scripting API tests.
|       python/ | Python scripts to generate and run the scripting API tests. |       python/ | Python scripts to generate and run the scripting API tests.
|          testapigen.py | Python script generating scripts in all languages to test the scripting API. |          testapigen.py | Python script generating scripts in all languages to test the scripting API.
|          testapi.py | Python script with scripting API tests, used by script testapigen.py. |          testapi.py | Python script with scripting API tests, used by script testapigen.py.
|          unparse.py | Convert Python code to other languages, used by script testapigen.py. |          unparse.py | Convert Python code to other languages, used by script testapigen.py.
|    unit/ | Root of unit tests. |    unit/ | Root of unit tests.
|       test-plugins.cpp | Tests: plugins. |       test-plugins.cpp | Tests: plugins.
|       core/ | Root of unit tests for core. |       core/ | Root of unit tests for core.
|          test-core-arraylist.cpp | Tests: arraylists. |          test-core-arraylist.cpp | Tests: arraylists.
|          test-core-calc.cpp | Tests: calculation of expressions. |          test-core-calc.cpp | Tests: calculation of expressions.
|          test-core-crypto.cpp | Tests: cryptographic functions. |          test-core-config-file.cpp | Tests: configuration files.
|          test-core-dir.cpp | Tests: directory/file functions. |          test-core-crypto.cpp | Tests: cryptographic functions.
|          test-core-eval.cpp | Tests: evaluation of expressions. |          test-core-dir.cpp | Tests: directory/file functions.
|          test-core-hashtble.cpp | Tests: hashtables. |          test-core-eval.cpp | Tests: evaluation of expressions.
|          test-core-hdata.cpp | Tests: hdata. |          test-core-hashtble.cpp | Tests: hashtables.
|          test-core-hook.cpp | Tests: hooks. |          test-core-hdata.cpp | Tests: hdata.
|          test-core-infolist.cpp | Tests: infolists. |          test-core-hook.cpp | Tests: hooks.
|          test-core-list.cpp | Tests: lists. |          test-core-infolist.cpp | Tests: infolists.
|          test-core-network.cpp | Tests: network functions. |          test-core-list.cpp | Tests: lists.
|          test-core-secure.cpp | Tests: secured data. |          test-core-network.cpp | Tests: network functions.
|          test-core-signal.cpp | Tests: signals. |          test-core-secure.cpp | Tests: secured data.
|          test-core-string.cpp | Tests: strings. |          test-core-signal.cpp | Tests: signals.
|          test-core-url.cpp | Tests: URLs. |          test-core-string.cpp | Tests: strings.
|          test-core-utf8.cpp | Tests: UTF-8. |          test-core-url.cpp | Tests: URLs.
|          test-core-util.cpp | Tests: utility functions. |          test-core-utf8.cpp | Tests: UTF-8.
|       gui/ | Root of unit tests for interfaces. |          test-core-util.cpp | Tests: utility functions.
|          test-gui-color.cpp | Tests: colors. |       gui/ | Root of unit tests for interfaces.
|          test-gui-line.cpp | Tests: lines. |          test-gui-color.cpp | Tests: colors.
|          test-gui-nick.cpp | Tests: nicks. |          test-gui-line.cpp | Tests: lines.
|       plugins/ | Root of unit tests for plugins. |          test-gui-nick.cpp | Tests: nicks.
|          irc/ | Root of unit tests for IRC plugin. |       plugins/ | Root of unit tests for plugins.
|             test-irc-channel.cpp | Tests: IRC channels. |          irc/ | Root of unit tests for IRC plugin.
|             test-irc-color.cpp | Tests: IRC colors. |             test-irc-channel.cpp | Tests: IRC channels.
|             test-irc-config.cpp | Tests: IRC configuration. |             test-irc-color.cpp | Tests: IRC colors.
|             test-irc-ignore.cpp | Tests: IRC ignores. |             test-irc-config.cpp | Tests: IRC configuration.
|             test-irc-message.cpp | Tests: IRC messages. |             test-irc-ignore.cpp | Tests: IRC ignores.
|             test-irc-mode.cpp | Tests: IRC modes. |             test-irc-message.cpp | Tests: IRC messages.
|             test-irc-nick.cpp | Tests: IRC nicks. |             test-irc-mode.cpp | Tests: IRC modes.
|             test-irc-protocol.cpp | Tests: IRC protocol. |             test-irc-nick.cpp | Tests: IRC nicks.
|             test-irc-server.cpp | Tests: IRC server. |             test-irc-protocol.cpp | Tests: IRC protocol.
|          trigger/ | Root of unit tests for trigger plugin. |             test-irc-server.cpp | Tests: IRC server.
|             test-trigger.cpp | Tests: triggers. |          trigger/ | Root of unit tests for trigger plugin.
|          relay/ | Root of unit tests for Relay plugin. |             test-trigger.cpp | Tests: triggers.
|             test-relay-auth.cpp | Tests: clients authentication. |          typing/ | Root of unit tests for typing plugin.
|             test-typing.cpp | Tests: typing.
|             test-typing-status.cpp | Tests: typing status.
|          relay/ | Root of unit tests for Relay plugin.
|             test-relay-auth.cpp | Tests: clients authentication.
|=== |===
+1 -1
View File
@@ -524,7 +524,7 @@ You can just disable bracketed paste mode:
=== How can I customize display for very small terminal size (like 80x25), to not waste space? === How can I customize display for very small terminal size (like 80x25), to not waste space?
You can remove side bars (buflist and nicklist), change time format to display You can remove side bars (buflist and nicklist), change time format to display
only hours and seconds, disable alignment of messages and set a char for nick only hours and minutes, disable alignment of messages and set a char for nick
prefix/suffix: prefix/suffix:
---- ----
File diff suppressed because it is too large Load Diff
+12 -6
View File
@@ -1277,6 +1277,10 @@ The result is a hashtable with following keys
The tags in message (can be empty). | The tags in message (can be empty). |
`+time=2015-06-27T16:40:35.000Z+` `+time=2015-06-27T16:40:35.000Z+`
| tag_xxx | 3.3 |
Unescaped value of tag "xxx" (one key per tag). |
`+2015-06-27T16:40:35.000Z+`
| message_without_tags | 0.4.0 | | message_without_tags | 0.4.0 |
The message without the tags (the same as message if there are no tags). | The message without the tags (the same as message if there are no tags). |
`+:nick!user@host PRIVMSG #weechat :hello!+` `+:nick!user@host PRIVMSG #weechat :hello!+`
@@ -1333,10 +1337,12 @@ The result is a hashtable with following keys
---- ----
dict = weechat.info_get_hashtable( dict = weechat.info_get_hashtable(
"irc_message_parse", "irc_message_parse",
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"}) {"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
# dict == { # dict == {
# "tags": "time=2015-06-27T16:40:35.000Z", # "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
# "tag_time": "2015-06-27T16:40:35.000Z",
# "tag_tag2": "value space",
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!", # "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
# "nick": "nick", # "nick": "nick",
# "user": "user", # "user": "user",
@@ -1345,10 +1351,10 @@ dict = weechat.info_get_hashtable(
# "channel": "#weechat", # "channel": "#weechat",
# "arguments": "#weechat :hello!", # "arguments": "#weechat :hello!",
# "text": "hello!", # "text": "hello!",
# "pos_command": "47", # "pos_command": "65",
# "pos_arguments": "55", # "pos_arguments": "73",
# "pos_channel": "55", # "pos_channel": "73",
# "pos_text": "65", # "pos_text": "83",
# } # }
---- ----
+344 -24
View File
@@ -176,11 +176,11 @@ $ make
$ make install $ make install
---- ----
Options can be used for CMake, with format: "-DOPTION=VALUE". Options can be used for CMake, with format: `-DOPTION=VALUE`.
List of commonly used options: List of commonly used options:
[width="100%",cols="2m,2,5m,12",options="header"] [width="100%",cols="3m,3,3m,10",options="header"]
|=== |===
| Option | Values | Default value | Description | Option | Values | Default value | Description
@@ -195,7 +195,7 @@ List of commonly used options:
The default home directory when running WeeChat. + The default home directory when running WeeChat. +
With an empty value (recommended), XDG directories are used by default. With an empty value (recommended), XDG directories are used by default.
If non empty, a single directory for all files is used. If non empty, a single directory for all files is used.
The value can also be 4 directories separated by colons, in this order: The value can also be 4 directories separated by colons, in this order:
config, data, cache, runtime. config, data, cache, runtime.
| ENABLE_ALIAS | `ON`, `OFF` | ON | | ENABLE_ALIAS | `ON`, `OFF` | ON |
@@ -283,6 +283,9 @@ List of commonly used options:
| ENABLE_TRIGGER | `ON`, `OFF` | ON | | ENABLE_TRIGGER | `ON`, `OFF` | ON |
Compile <<trigger_plugin,Trigger plugin>>. Compile <<trigger_plugin,Trigger plugin>>.
| ENABLE_TYPING | `ON`, `OFF` | ON |
Compile <<typing_plugin,Typing plugin>>.
| ENABLE_XFER | `ON`, `OFF` | ON | | ENABLE_XFER | `ON`, `OFF` | ON |
Compile <<xfer_plugin,Xfer plugin>>. Compile <<xfer_plugin,Xfer plugin>>.
@@ -723,6 +726,7 @@ The files in the WeeChat home directory are:
| tcl.conf | Configuration file for _tcl_ plugin | No. | tcl.conf | Configuration file for _tcl_ plugin | No.
| spell.conf | Configuration file for _spell_ plugin | No. | spell.conf | Configuration file for _spell_ plugin | No.
| trigger.conf | Configuration file for _trigger_ plugin | Possible, depends on triggers. | trigger.conf | Configuration file for _trigger_ plugin | Possible, depends on triggers.
| typing.conf | Configuration file for _typing_ plugin | No.
| xfer.conf | Configuration file for _xfer_ plugin | No. | xfer.conf | Configuration file for _xfer_ plugin | No.
| weechat.log | WeeChat log file | No. | weechat.log | WeeChat log file | No.
|=== |===
@@ -771,7 +775,7 @@ Example of terminal with WeeChat:
▲ bars "status" and "input" bar "nicklist" ▲ ▲ bars "status" and "input" bar "nicklist" ▲
.... ....
The screen is divided up into the following areas: By default, the screen is divided up into the following areas:
* chat area (middle of screen) with chat lines, and for each line: * chat area (middle of screen) with chat lines, and for each line:
** time ** time
@@ -866,6 +870,13 @@ Other items available (not used in bars by default):
| window_number | `2` | Current window number. | window_number | `2` | Current window number.
|=== |===
Each aspect of the layout can be customized with the appropriate <<command_line,command>>:
<<command_weechat_bar,`/bar`>> to customize the bars,
<<command_weechat_buffer,/buffer>> and <<command_weechat_window,`/window`>>
to customize <<buffers_and_windows,buffers and windows>>,
and <<command_weechat_layot,/layout>> to name, save and restore the screen layout
and the association between windows and buffers.
[[command_line]] [[command_line]]
=== Command line === Command line
@@ -1108,11 +1119,18 @@ Examples of buffers:
* irc private messages * irc private messages
A _window_ is a screen area which displays a buffer. It is possible to split A _window_ is a screen area which displays a buffer. It is possible to split
your screen into many windows. your screen into many windows (examples <<window_split_examples,below>>,
see the <<command_weechat_window,/window command>> for details).
Each window displays one buffer. A buffer can be hidden (not displayed by a Each window displays one buffer. A buffer can be hidden (not displayed by a
window) or displayed by one or more windows. window) or displayed by one or more windows.
Screen layouts and the association between windows and buffers can be
<<command_weechat_layout,saved and restored>>.
[[window_split_examples]]
==== Examples
Example of horizontal split (`/window splith`): Example of horizontal split (`/window splith`):
.... ....
@@ -1968,7 +1986,14 @@ with `+/script install buffer_autoset.py+` and get help with
| kbd:[Alt+F12] | Go to the end of nicklist. | `+/bar scroll nicklist * e+` | kbd:[Alt+F12] | Go to the end of nicklist. | `+/bar scroll nicklist * e+`
| kbd:[Alt+a] | Switch to next buffer with activity (with priority: highlight, message, other). | `+/input jump_smart+` | kbd:[Alt+a] | Switch to next buffer with activity (with priority: highlight, message, other). | `+/input jump_smart+`
| kbd:[Alt+Shift+B] | Toggle buflist. | `+/buflist toggle+` | kbd:[Alt+Shift+B] | Toggle buflist. | `+/buflist toggle+`
| kbd:[Alt+h] | Clear hotlist (activity notification on other buffers). | `+/input hotlist_clear+` | kbd:[Alt+h],
kbd:[Alt+c] | Clear hotlist (activity notification on buffers). | `+/input hotlist_clear+`
| kbd:[Alt+h],
kbd:[Alt+m] | Remove current buffer from hotlist. | `+/input hotlist_remove_buffer+`
| kbd:[Alt+h],
kbd:[Alt+r] | Restore latest hotlist removed in the current buffer. | `+/input hotlist_restore_buffer+`
| kbd:[Alt+h],
kbd:[Alt+Shift+R] | Restore latest hotlist removed in all buffers. | `+/input hotlist_restore_all+`
| kbd:[Alt+j], | kbd:[Alt+j],
kbd:[Alt+f] | Switch to first buffer. | `+/buffer -+` kbd:[Alt+f] | Switch to first buffer. | `+/buffer -+`
| kbd:[Alt+j], | kbd:[Alt+j],
@@ -2234,7 +2259,7 @@ Event name consists of a modifier (optional), a button/wheel name and a gesture
List of modifiers: List of modifiers:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Modifier | Description | Modifier | Description
| ctrl | Key kbd:[Ctrl] | ctrl | Key kbd:[Ctrl]
@@ -2244,7 +2269,7 @@ List of modifiers:
List of buttons/wheel: List of buttons/wheel:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Button/wheel | Description | Button/wheel | Description
| button1 | Click on left button | button1 | Click on left button
@@ -2257,7 +2282,7 @@ List of buttons/wheel:
List of gestures (only for buttons, not wheel): List of gestures (only for buttons, not wheel):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Gesture | Distance | Gesture | Distance
| gesture-up | 3 ... 19 | gesture-up | 3 ... 19
@@ -2272,7 +2297,7 @@ List of gestures (only for buttons, not wheel):
List of incomplete events (only for buttons, useful for plugins/scripts): List of incomplete events (only for buttons, useful for plugins/scripts):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Event | Description | Event | Description
| event-down | Button was pressed but not released yet | event-down | Button was pressed but not released yet
@@ -2519,6 +2544,7 @@ Default plugins are:
| php | PHP scripting API. | php | PHP scripting API.
| spell | Spell checking for command line. | spell | Spell checking for command line.
| trigger | Text replacement and command execution on events triggered by WeeChat/plugins. | trigger | Text replacement and command execution on events triggered by WeeChat/plugins.
| typing | Display users currently writing messages.
| xfer | File transfer and direct chat. | xfer | File transfer and direct chat.
|=== |===
@@ -2838,15 +2864,130 @@ It is possible to give URL for one or many IRC servers, as follow:
irc[6][s]://[nick[:password]@]irc.example.org[:port][/channel][,channel[...]] irc[6][s]://[nick[:password]@]irc.example.org[:port][/channel][,channel[...]]
---- ----
Example to join _#weechat_ and _#toto_ on server _irc.libera.chat_ server, Example to join _#weechat_ and _#weechat-fr_ on server _irc.libera.chat_ server,
default port (6667), with nick _nono_: default port (6667), with nick _alice_:
---- ----
$ weechat irc://nono@irc.libera.chat/#weechat,#toto $ weechat irc://alice@irc.libera.chat/#weechat,#weechat-fr
----
[[irc_servers]]
==== Servers
[[irc_servers_add]]
===== Add a server
By default no servers are defined. You can add as many servers as you want with
the <<command_irc_server,/server>> command.
For example to connect to https://libera.chat/[libera.chat] with SSL (encrypted trafic):
----
/server add libera irc.libera.chat/6697 -ssl
----
You can tell WeeChat to auto-connect to this server on startup:
----
/set irc.server.libera.autoconnect on
----
To authenticate, it is recommended to use SASL (if supported on the server),
with the password stored as secured data (see also chapter on
<<irc_sasl_authentication,SASL authentication>>):
----
/set irc.server.libera.sasl_username "alice"
/secure set libera xxxxxxx
/set irc.server.libera.sasl_password "${sec.data.libera}"
----
If SASL is not supported, you can use a command to send a message to nickserv:
----
/set irc.server.libera.command "/msg nickserv identify ${sec.data.libera}"
----
[NOTE]
By sending a message to nickserv, you may authenticate after joining channels
which could be a problem on some channels requiring you to be authenticated
to join. In this case, you can set a command delay:
`/set irc.server.libera.command_delay 5`.
[[irc_servers_options]]
===== Server options
Server options are named `irc.server.<server>.<option>` where `<server>` is the
internal name of the server and `<option>` the name of an option. +
The value of a server option is inherited from `irc.server_default.xxx`
if the server option has the special value `null`.
For example if you created the _libera_ server with the commands above, you'll
see this with the command `/fset libera`:
....
irc.server.libera.addresses string "irc.libera.chat/6697"
irc.server.libera.anti_flood_prio_high integer null -> 2
irc.server.libera.anti_flood_prio_low integer null -> 2
irc.server.libera.autoconnect boolean on
irc.server.libera.autojoin string null -> ""
irc.server.libera.autoreconnect boolean null -> on
irc.server.libera.autoreconnect_delay integer null -> 10
irc.server.libera.autorejoin boolean null -> off
irc.server.libera.autorejoin_delay integer null -> 30
irc.server.libera.away_check integer null -> 0
irc.server.libera.away_check_max_nicks integer null -> 25
irc.server.libera.capabilities string null -> "*"
irc.server.libera.charset_message integer null -> message
irc.server.libera.command string null -> ""
irc.server.libera.command_delay integer null -> 0
irc.server.libera.connection_timeout integer null -> 60
irc.server.libera.default_chantypes string null -> "#&"
irc.server.libera.ipv6 boolean null -> on
irc.server.libera.local_hostname string null -> ""
irc.server.libera.msg_kick string null -> ""
irc.server.libera.msg_part string null -> "WeeChat ${info:version}"
irc.server.libera.msg_quit string null -> "WeeChat ${info:version}"
irc.server.libera.nicks string null -> "alice,alice1,alice2,alice3,alice4"
irc.server.libera.nicks_alternate boolean null -> on
irc.server.libera.notify string null -> ""
irc.server.libera.password string null -> ""
irc.server.libera.proxy string null -> ""
irc.server.libera.realname string null -> ""
irc.server.libera.sasl_fail integer null -> reconnect
irc.server.libera.sasl_key string null -> ""
irc.server.libera.sasl_mechanism integer null -> plain
irc.server.libera.sasl_password string "${sec.data.libera}"
irc.server.libera.sasl_timeout integer null -> 15
irc.server.libera.sasl_username string "alice"
irc.server.libera.split_msg_max_length integer null -> 512
irc.server.libera.ssl boolean on
irc.server.libera.ssl_cert string null -> ""
irc.server.libera.ssl_dhkey_size integer null -> 2048
irc.server.libera.ssl_fingerprint string null -> ""
irc.server.libera.ssl_password string null -> ""
irc.server.libera.ssl_priorities string null -> "NORMAL:-VERS-SSL3.0"
irc.server.libera.ssl_verify boolean null -> on
irc.server.libera.usermode string null -> ""
irc.server.libera.username string null -> "alice"
....
For example if you want to automatically connect to all servers you define
without having to do it on each server, you can do:
----
/set irc.server_default.autoconnect on
----
And then you can reset the server option so that it uses the default inherited
value, which is now `on` instead of the default value `off`:
----
/unset irc.server.libera.autoconnect
---- ----
[[irc_ssl_certificates]] [[irc_ssl_certificates]]
==== SSL certificates ===== SSL certificates
When connecting to IRC server with SSL, WeeChat checks by default that the When connecting to IRC server with SSL, WeeChat checks by default that the
connection is fully trusted. connection is fully trusted.
@@ -2875,7 +3016,7 @@ Option "ssl_verify" is on by default, so verification is strict and may fail,
even if it was OK with versions prior to 0.3.1. even if it was OK with versions prior to 0.3.1.
[[irc_connect_oftc_with_certificate]] [[irc_connect_oftc_with_certificate]]
===== First example: connect to oftc and check certificate ====== First example: connect to oftc and check certificate
* Import certificate in shell: * Import certificate in shell:
@@ -2898,7 +3039,7 @@ It is possible to concatenate many certificates in file CAs.pem.
---- ----
[[irc_connect_oftc_with_certfp]] [[irc_connect_oftc_with_certfp]]
===== Second example: connect to oftc using CertFP ====== Second example: connect to oftc using CertFP
* Create certificate in shell: * Create certificate in shell:
@@ -2923,7 +3064,7 @@ which can also be for example `~/.weechat`.
For more information, look at https://www.oftc.net/NickServ/CertFP For more information, look at https://www.oftc.net/NickServ/CertFP
[[irc_sasl_authentication]] [[irc_sasl_authentication]]
==== SASL authentication ===== SASL authentication
WeeChat supports SASL authentication, using different mechanisms: WeeChat supports SASL authentication, using different mechanisms:
@@ -2933,8 +3074,6 @@ WeeChat supports SASL authentication, using different mechanisms:
* _scram-sha-512_: SCRAM with SHA-512 digest algorithm * _scram-sha-512_: SCRAM with SHA-512 digest algorithm
* _ecdsa-nist256p-challenge_: challenge with public/private key * _ecdsa-nist256p-challenge_: challenge with public/private key
* _external_: client side SSL cert * _external_: client side SSL cert
* _dh-blowfish_: blowfish encrypted password (*insecure*, not recommended)
* _dh-aes_: AES encrypted password (*insecure*, not recommended)
Options in servers are: Options in servers are:
@@ -2947,7 +3086,7 @@ Options in servers are:
_ecdsa-nist256p-challenge_) _ecdsa-nist256p-challenge_)
[[irc_sasl_ecdsa_nist256p_challenge]] [[irc_sasl_ecdsa_nist256p_challenge]]
===== SASL ECDSA-NIST256P-CHALLENGE ====== SASL ECDSA-NIST256P-CHALLENGE
You must generate a private key in order to authentify with the You must generate a private key in order to authentify with the
ECDSA-NIST256P-CHALLENGE mechanism (no password is required on connection). ECDSA-NIST256P-CHALLENGE mechanism (no password is required on connection).
@@ -2992,8 +3131,39 @@ Reconnect to the server:
/reconnect libera /reconnect libera
---- ----
[[irc_servers_connection]]
===== Connection
You can connect to server with the <<command_irc_connect,/connect>> command:
----
/connect libera
----
To disconnect:
----
/disconnect libera
----
Or just this if you are on any buffer belonging to _libera_ server (server,
channel, private):
----
/disconnect
----
When you connect to multiple servers at same time, server buffers are merged
by default and you can switch between them with the kbd:[Ctrl+x] key. +
It is possible to disable auto merge of server buffers to have independent
server buffers:
----
/set irc.look.server_buffer independent
----
[[irc_tor_sasl]] [[irc_tor_sasl]]
==== Connect with TOR and SASL ===== Connect with TOR and SASL
Some servers support connections with TOR (https://www.torproject.org/), Some servers support connections with TOR (https://www.torproject.org/),
a network of virtual tunnels that allows people and groups to improve their a network of virtual tunnels that allows people and groups to improve their
@@ -3040,6 +3210,63 @@ And finally, connect to the server:
/connect irc-tor /connect irc-tor
---- ----
[[irc_channels]]
==== Channels
You can join channels with the <<command_irc_join,/join>> command:
----
/join #channel
----
Part a channel (keeping the buffer open):
----
/part [quit message]
----
The channels you joined are not saved. If you want to join them automatically
when connecting to the server, you must set the server `autojoin` option:
----
/set irc.server.libera.autojoin "#weechat,#weechat-fr"
----
[NOTE]
Some scripts can help to automatically set this option,
see `/script search autojoin`.
Be careful, spaces can be used only to separate list of channels from keys,
for example if `#channel1` requires a key but not `#channel2`:
----
/set irc.server.libera.autojoin "#channel1,#channel2 key1"
----
For help on the format, see `/help irc.server.libera.autojoin`.
[[irc_private_messages]]
==== Private messages
You can send a private message with the <<command_irc_query,/query>> command,
which opens a separate buffer:
----
/query bob hi, how are you?
----
Without arguments the command just opens the buffer (or selects it if already open):
----
/query bob
----
To close the private buffer, you can do this command on the private buffer:
----
/close
----
[[irc_smart_filter_join_part_quit]] [[irc_smart_filter_join_part_quit]]
==== Smart filter for join/part/quit messages ==== Smart filter for join/part/quit messages
@@ -3178,7 +3405,7 @@ server or channel buffer.
Non-comprehensive list of IRC messages or alias that you can customize: Non-comprehensive list of IRC messages or alias that you can customize:
[width="100%",cols="^1m,^3m,8",options="header"] [width="100%",cols="^2m,^3m,15",options="header"]
|=== |===
| message | alias | description | message | alias | description
| error | | error | error | | error
@@ -3442,8 +3669,8 @@ You'll have following files:
│ └── #mychan.weechatlog │ └── #mychan.weechatlog
├── oftc ├── oftc
│ ├── oftc.weechatlog │ ├── oftc.weechatlog
│ ├── #chan1.weechatlog │ ├── #channel1.weechatlog
│ └── #chan2.weechatlog │ └── #channel2.weechatlog
... ...
.... ....
@@ -4682,6 +4909,99 @@ Options:
include::includes/autogen_user_options.en.adoc[tag=trigger_options] include::includes/autogen_user_options.en.adoc[tag=trigger_options]
[[typing_plugin]]
=== Typing
The typing plugin is used to inform other users you are typing messages and
show a list of users currently typing a message on the buffer.
It is used by IRC plugin on channel and private buffers, when the "message-tags"
capability is enabled (you can check with <<command_irc_cap,/cap>> command). +
Under the hood, typing client tag is used, following this specification:
https://ircv3.net/specs/client-tags/typing.html.
[[typing_activation]]
==== Activation
For privacy considerations, the typing feature is disabled by default. +
If you want to use it, you must enable options in both typing and irc plugins:
----
/set typing.look.enabled_nicks on
/set typing.look.enabled_self on
/set irc.look.typing_status_nicks on
/set irc.look.typing_status_self on
----
The typing notifications are displayed at the end of the status bar.
Example of status bar with the "typing" item: "bob" is typing a message and
"alice" was typing a message but made a pause:
....
│[12:55] [6] [irc/libera] 3:#test(+n){4} [Typing: bob, (alice)] │
│[@Flashy] █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[typing_signals_sent]]
==== Signals sent
When you are typing a message (not a command starting with `/`), the typing
plugin sends signals to inform other plugins (like IRC) that you are typing,
and these plugins can then send typing notifications to other users.
The following signals are sent when you are typing messages:
[width="100%",cols="1,1,5",options="header"]
|===
| Signal | Arguments | Description
| typing_self_typing | Pointer: buffer. | You are typing a message.
| typing_self_paused | Pointer: buffer. | You made a pause while typing a message.
| typing_self_cleared | Pointer: buffer. | You cleared the command line without sending the message.
| typing_self_sent | Pointer: buffer. | You sent the message to the buffer.
|===
[[typing_signals_caught]]
==== Signals caught
The typing plugin is catching some signals that can be sent by other plugins
(like IRC), to update internal hashtables used to store the typing state of
nicks on buffers. These hashtables are used to build the content of "typing"
bar item.
The following signals are caught by the typing plugin:
[width="100%",cols="1,4,3",options="header"]
|===
| Signal | Arguments | Description
| typing_set_nick |
String: buffer pointer + ";" + state (one of: "off", "typing", "paused",
"cleared") + ";" + nick. +
Example: "0x1234abcd;typing;alice". |
Set typing state for a nick on a buffer.
| typing_reset_buffer |
Pointer: buffer. |
Remove typing state for all nicks on a buffer.
|===
[[typing_options]]
==== Options
Sections in file _typing.conf_:
[width="100%",cols="3m,6m,16",options="header"]
|===
| Section | Control command | Description
| look | /set typing.look.* | Look and feel.
|===
Options:
include::includes/autogen_user_options.en.adoc[tag=typing_options]
[[xfer_plugin]] [[xfer_plugin]]
=== Xfer === Xfer
+13
View File
@@ -19,6 +19,19 @@
if(ENABLE_DOC) if(ENABLE_DOC)
# FAQ
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.es.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_faq.es.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.es.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.es.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_faq.es.html"
)
add_custom_target(doc-faq-es ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.es.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.es.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# quickstart # quickstart
add_custom_command( add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.es.html OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.es.html
+7 -1
View File
@@ -21,6 +21,7 @@ docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \ EXTRA_DIST = CMakeLists.txt \
docinfo.html \ docinfo.html \
weechat_faq.es.adoc \
weechat_quickstart.es.adoc weechat_quickstart.es.adoc
if MAN if MAN
@@ -29,12 +30,17 @@ if MAN
man_uninstall = man_uninstall =
endif endif
if DOC if DOC
doc_targets = weechat_quickstart.es.html doc_targets = weechat_faq.es.html \
weechat_quickstart.es.html
doc_install = install-doc doc_install = install-doc
doc_uninstall = uninstall-doc doc_uninstall = uninstall-doc
endif endif
all-local: $(man_targets) $(doc_targets) all-local: $(man_targets) $(doc_targets)
# FAQ
weechat_faq.es.html: weechat_faq.es.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_faq.es.html $(abs_top_srcdir)/doc/es/weechat_faq.es.adoc
# quickstart # quickstart
weechat_quickstart.es.html: weechat_quickstart.es.adoc $(abs_top_srcdir)/doc/docinfo.html weechat_quickstart.es.html: weechat_quickstart.es.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.es.html $(abs_top_srcdir)/doc/es/weechat_quickstart.es.adoc $(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.es.html $(abs_top_srcdir)/doc/es/weechat_quickstart.es.adoc
File diff suppressed because it is too large Load Diff
@@ -79,6 +79,8 @@ _last_nick_speaking_time_   (pointer, hdata: "irc_channel_speaking") +
_modelists_   (pointer, hdata: "irc_modelist") + _modelists_   (pointer, hdata: "irc_modelist") +
_last_modelist_   (pointer, hdata: "irc_modelist") + _last_modelist_   (pointer, hdata: "irc_modelist") +
_join_smart_filtered_   (hashtable) + _join_smart_filtered_   (hashtable) +
_typing_state_   (integer) +
_typing_status_sent_   (time) +
_buffer_   (pointer, hdata: "buffer") + _buffer_   (pointer, hdata: "buffer") +
_buffer_as_string_   (string) + _buffer_as_string_   (string) +
_prev_channel_   (pointer, hdata: "irc_channel") + _prev_channel_   (pointer, hdata: "irc_channel") +
@@ -237,6 +239,8 @@ _sasl_scram_client_first_   (string) +
_sasl_scram_salted_pwd_   (other) + _sasl_scram_salted_pwd_   (other) +
_sasl_scram_salted_pwd_size_   (integer) + _sasl_scram_salted_pwd_size_   (integer) +
_sasl_scram_auth_message_   (string) + _sasl_scram_auth_message_   (string) +
_sasl_temp_username_   (string) +
_sasl_temp_password_   (string) +
_is_connected_   (integer) + _is_connected_   (integer) +
_ssl_connected_   (integer) + _ssl_connected_   (integer) +
_disconnected_   (integer) + _disconnected_   (integer) +
@@ -267,6 +271,10 @@ _chantypes_   (string) +
_chanmodes_   (string) + _chanmodes_   (string) +
_monitor_   (integer) + _monitor_   (integer) +
_monitor_time_   (time) + _monitor_time_   (time) +
_clienttagdeny_   (string) +
_clienttagdeny_count_   (integer) +
_clienttagdeny_array_   (string, array_size: "clienttagdeny_count") +
_typing_allowed_   (integer) +
_reconnect_delay_   (integer) + _reconnect_delay_   (integer) +
_reconnect_start_   (time) + _reconnect_start_   (time) +
_command_time_   (time) + _command_time_   (time) +
@@ -8,7 +8,7 @@
|=== |===
| Extension | Nom | Description | Table de hachage (entrée) | Table de hachage (sortie) | Extension | Nom | Description | Table de hachage (entrée) | Table de hachage (sortie)
| irc | irc_message_parse | analyse un message IRC | "message" : message IRC, "server" : nom du serveur (optionnel) | "tags" : étiquettes, "message_without_tags" : message sans les étiquettes, "nick" : pseudo, "user" : nom d'utilisateur, "host" : nom d'hôte, "command" : commande, "channel" : canal, "arguments" : paramètres (inclut le canal), "text" : texte (par exemple message utilisateur), "pos_command" : index de "command" dans le message ("-1" si "command" n'a pas été trouvé), "pos_arguments" : index de "arguments" dans le message ("-1" si "arguments" n'a pas été trouvé), "pos_channel" : index de "channel" dans le message ("-1" si "channel" n'a pas été trouvé), "pos_text" : index de "text" dans le message ("-1" si "text" n'a pas été trouvé) | irc | irc_message_parse | analyse un message IRC | "message" : message IRC, "server" : nom du serveur (optionnel) | "tags" : étiquettes, "tag_xxx" : valeur de l'étiquette "xxx" sans échappements (une clé par étiquette), "message_without_tags" : message sans les étiquettes, "nick" : pseudo, "user" : nom d'utilisateur, "host" : nom d'hôte, "command" : commande, "channel" : canal, "arguments" : paramètres (inclut le canal), "text" : texte (par exemple message utilisateur), "pos_command" : index de "command" dans le message ("-1" si "command" n'a pas été trouvé), "pos_arguments" : index de "arguments" dans le message ("-1" si "arguments" n'a pas été trouvé), "pos_channel" : index de "channel" dans le message ("-1" si "channel" n'a pas été trouvé), "pos_text" : index de "text" dans le message ("-1" si "text" n'a pas été trouvé)
| irc | irc_message_split | découper un message IRC (pour tenir dans les 512 octets par défaut) | "message" : message IRC, "server" : nom du serveur (optionnel) | "msg1" ... "msgN" : messages à envoyer (sans le "\r\n" final), "args1" ... "argsN" : paramètres des messages, "count" : nombre de messages | irc | irc_message_split | découper un message IRC (pour tenir dans les 512 octets par défaut) | "message" : message IRC, "server" : nom du serveur (optionnel) | "msg1" ... "msgN" : messages à envoyer (sans le "\r\n" final), "args1" ... "argsN" : paramètres des messages, "count" : nombre de messages
@@ -4,18 +4,26 @@
// //
// tag::plugins_priority[] // tag::plugins_priority[]
. charset (15000) . charset (16000)
. logger (14000) . logger (15000)
. exec (13000) . exec (14000)
. trigger (12000) . trigger (13000)
. spell (11000) . spell (12000)
. alias (10000) . alias (11000)
. buflist (9000) . buflist (10000)
. fifo (8000) . fifo (9000)
. typing (8000)
. xfer (7000) . xfer (7000)
. irc (6000) . irc (6000)
. relay (5000) . relay (5000)
. guile, javascript, lua, perl, php, python, ruby, tcl (4000) . guile (4007)
. javascript (4006)
. lua (4005)
. perl (4004)
. php (4003)
. python (4002)
. ruby (4001)
. tcl (4000)
. script (3000) . script (3000)
. fset (2000) . fset (2000)
// end::plugins_priority[] // end::plugins_priority[]
+135 -51
View File
@@ -17,10 +17,11 @@ cible : nom du serveur
* `+allchan+`: exécuter une commande sur tous les canaux de tous les serveurs connectés * `+allchan+`: exécuter une commande sur tous les canaux de tous les serveurs connectés
---- ----
/allchan [-current] [-exclude=<canal>[,<canal>...]] <commande> /allchan [-current] [-parted] [-exclude=<canal>[,<canal>...]] <commande>
[-current] [-include=<canal>[,<canal>...]] <commande> [-current] [-parted] -include=<canal>[,<canal>...] <commande>
-current : exécuter la commande pour les canaux du serveur courant seulement -current : exécuter la commande pour les canaux du serveur courant seulement
-parted : exécuter la commande sur les canaux quittés seulement
-exclude : exclure certains canaux (le caractère joker "*" est autorisé) -exclude : exclure certains canaux (le caractère joker "*" est autorisé)
-include : inclure seulement certains canaux (le caractère joker "*" est autorisé) -include : inclure seulement certains canaux (le caractère joker "*" est autorisé)
commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/') commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')
@@ -41,6 +42,8 @@ Exemples :
/allchan -exclude=#weechat,#linux* bonjour /allchan -exclude=#weechat,#linux* bonjour
dire 'bonjour' sur tous les canaux commençant par #linux : dire 'bonjour' sur tous les canaux commençant par #linux :
/allchan -include=#linux* bonjour /allchan -include=#linux* bonjour
fermer tous les tampons avec des canaux quittés :
/allchan -parted /close
---- ----
[[command_irc_allpv]] [[command_irc_allpv]]
@@ -100,6 +103,26 @@ Exemples :
/allserv /whois $nick /allserv /whois $nick
---- ----
[[command_irc_auth]]
* `+auth+`: s'authentifier avec SASL
----
/auth [<utilisateur> <mot_de_passe>]
utilisateur : nom d'utilisateur SASL (le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)
mot_de_passe : mot de passe SASL ou chemin vers le fichier de clé privée (le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)
Si le nom d'utilisateur et mot de passe ne sont pas donnés, les valeurs des options serveur "sasl_username" et "sasl_password" (ou "sasl_key") sont utilisées.
Exemples :
s'authentifier avec le nom d'utilisateur et mot de passe défini dans le serveur :
/auth
s'authentifier avec un utilisateur différent :
/auth utilisateur2 mot_de_passe2
s'authentifier avec un utilisateur différent et le mécanisme ecdsa-nist256p-challenge :
/auth utilisateur2 ${weechat_config_dir}/ecdsa2.pem
----
[[command_irc_ban]] [[command_irc_ban]]
* `+ban+`: bannir des pseudos ou hôtes * `+ban+`: bannir des pseudos ou hôtes
@@ -129,7 +152,7 @@ Sans paramètre, cette commande affiche la liste des bannissements pour le canal
Sans paramètre, "ls" et "list" sont envoyés. Sans paramètre, "ls" et "list" sont envoyés.
Les capacités supportées par WeeChat sont : account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names. Les capacités supportées par WeeChat sont : account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
Les capacités à activer automatiquement sur les serveurs peuvent être définies dans l'option irc.server_default.capabilities (ou par serveur dans l'option irc.server.xxx.capabilities). Les capacités à activer automatiquement sur les serveurs peuvent être définies dans l'option irc.server_default.capabilities (ou par serveur dans l'option irc.server.xxx.capabilities).
@@ -808,6 +831,15 @@ masque : lister seulement les services qui correspondent à ce masque
type : lister seulement les services de ce type type : lister seulement les services de ce type
---- ----
[[command_irc_setname]]
* `+setname+`: définir le nom réel
----
/setname <nom_réel>
nom_réel : nouveau nom réel
----
[[command_irc_squery]] [[command_irc_squery]]
* `+squery+`: envoyer un message à un service * `+squery+`: envoyer un message à un service
@@ -1271,7 +1303,7 @@ Exemples :
/debug list /debug list
set <extension> <niveau> set <extension> <niveau>
dump [<extension>] dump [<extension>]
buffer|color|infolists|memory|tags|term|windows buffer|color|infolists|libs|certs|memory|tags|term|windows
cursor|mouse [verbose] cursor|mouse [verbose]
hdata [free] hdata [free]
time <commande> time <commande>
@@ -1289,6 +1321,7 @@ extension : nom de l'extension ("core" pour le cœur de WeeChat)
hooks : afficher des infos sur les hooks hooks : afficher des infos sur les hooks
infolists : afficher des infos sur les infolists infolists : afficher des infos sur les infolists
libs : afficher des infos sur les bibliothèques externes utilisées libs : afficher des infos sur les bibliothèques externes utilisées
certs : afficher le nombre de certificats des autorités de certification chargés
memory : afficher des infos sur l'utilisation de la mémoire memory : afficher des infos sur l'utilisation de la mémoire
mouse : activer/désactiver le debug pour la souris mouse : activer/désactiver le debug pour la souris
tags : afficher les étiquettes pour les lignes tags : afficher les étiquettes pour les lignes
@@ -1342,27 +1375,32 @@ Pour forcer une comparaison de chaînes, vous pouvez ajouter des guillemets auto
Des variables sont remplacées dans l'expression, en utilisant le format ${variable}, la variable pouvant être, par ordre de priorité : Des variables sont remplacées dans l'expression, en utilisant le format ${variable}, la variable pouvant être, par ordre de priorité :
1. la chaîne elle-même sans évaluation (format : "raw:xxx") 1. la chaîne elle-même sans évaluation (format : "raw:xxx")
2. une sous-chaîne évaluée (format : "eval:xxx") 2. une variable définie par l'utilisateur (format : "nom")
3. une condition évaluée (format : "eval_cond:xxx") 3. une sous-chaîne évaluée (format : "eval:xxx")
4. une chaîne avec les caractères échappés (format : "esc:xxx" ou "\xxx") 4. une condition évaluée (format : "eval_cond:xxx")
5. une chaîne avec des caractères à cacher (format : "hide:caractère,chaîne") 5. une chaîne avec les caractères échappés (format : "esc:xxx" ou "\xxx")
6. une chaîne avec un maximum de caractères (format : "cut:max,suffixe,chaîne" ou "cut:+max,suffixe,chaîne") 6. une chaîne avec des caractères à cacher (format : "hide:caractère,chaîne")
7. une chaîne avec un maximum de caractères (format : "cut:max,suffixe,chaîne" ou "cut:+max,suffixe,chaîne")
ou un maximum de caractères affichés à l'écran (format : "cutscr:max,suffixe,chaîne" ou "cutscr:+max,suffixe,chaîne") ou un maximum de caractères affichés à l'écran (format : "cutscr:max,suffixe,chaîne" ou "cutscr:+max,suffixe,chaîne")
7. une chaîne inversée (format : "rev:xxx" ou "revscr:xxx") 8. une chaîne inversée (format : "rev:xxx" ou "revscr:xxx")
8. une chaîne répétée (format : "repeat:nombre,chaîne") 9. une chaîne répétée (format : "repeat:nombre,chaîne")
9. longueur d'une chaîne (format : "length:xxx" ou "lengthscr:xxx") 10. longueur d'une chaîne (format : "length:xxx" ou "lengthscr:xxx")
10. une couleur (format : "color:xxx", voir la "Référence API extension", fonction "color") 11. découpage d'une chaîne (format : "split:nombre,séparateurs,flags,xxx")
11. un modificateur (format : "modifier:nom,données,chaîne") 12. découpage de paramètres shell (format : "split_shell:nombre,xxx")
12. une info (format : "info:nom,paramètres", les paramètres sont optionnels) 13. une couleur (format : "color:xxx", voir la "Référence API extension", fonction "color")
13. une chaîne encodée/decodée en base 16, 32 ou 64 (format : "base_encode:base,xxx" ou "base_decode:base,xxx") 14. un modificateur (format : "modifier:nom,données,chaîne")
14. la date/heure courante (format : "date" ou "date:format") 15. une info (format : "info:nom,paramètres", les paramètres sont optionnels)
15. une variable d'environnement (format : "env:XXX") 16. une chaîne encodée/decodée en base 16, 32 ou 64 (format : "base_encode:base,xxx" ou "base_decode:base,xxx")
16. un opérateur ternaire (format : "if:condition?valeur_si_vrai:valeur_si_faux") 17. la date/heure courante (format : "date" ou "date:format")
17. le résultat d'une expression avec parenthèses et les opérateurs + - * / // % ** (format: "calc:xxx") 18. une variable d'environnement (format : "env:XXX")
18. une chaîne traduite (format : "translate:xxx") 19. un opérateur ternaire (format : "if:condition?valeur_si_vrai:valeur_si_faux")
19. une option (format : "fichier.section.option") 20. le résultat d'une expression avec parenthèses et les opérateurs + - * / // % ** (format : "calc:xxx")
20. une variable locale du tampon 21. un nombre entier aléatoire (format : "random:min,max")
21. un hdata/variable (la valeur est automatiquement convertie en chaîne), par défaut "window" et "buffer" pointent vers la fenêtre et le tampon courants. 22. une chaîne traduite (format : "translate:xxx")
23. déclaration d'une variable utilisateur (format : "define:nom,valeur")
24. une option (format : "fichier.section.option")
25. une variable locale du tampon
26. un hdata/variable (la valeur est automatiquement convertie en chaîne), par défaut "window" et "buffer" pointent vers la fenêtre et le tampon courants.
Le format du hdata peut être le suivant : Le format du hdata peut être le suivant :
hdata.var1.var2... : démarrer avec un hdata (le pointeur doit être connu), et demander les variables l'une après l'autre (d'autres hdata peuvent être suivis) hdata.var1.var2... : démarrer avec un hdata (le pointeur doit être connu), et demander les variables l'une après l'autre (d'autres hdata peuvent être suivis)
hdata[liste].var1.var2... : démarrer avec un hdata en utilisant une liste/pointeur/nom de pointeur, par exemple : hdata[liste].var1.var2... : démarrer avec un hdata en utilisant une liste/pointeur/nom de pointeur, par exemple :
@@ -1374,29 +1412,39 @@ Le format du hdata peut être le suivant :
Pour le nom du hdata et des variables, voir la "Référence API extension", fonction "weechat_hdata_get". Pour le nom du hdata et des variables, voir la "Référence API extension", fonction "weechat_hdata_get".
Exemples (chaînes simples) : Exemples (chaînes simples) :
/eval -n ${raw:${info:version}} ==> ${info:version} /eval -n ${raw:${info:version}} ==> ${info:version}
/eval -n ${eval_cond:${window.win_width}>100} ==> 1 /eval -n ${eval_cond:${window.win_width}>100} ==> 1
/eval -n ${info:version} ==> 0.4.3 /eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user /eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3 /eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.password} ==> secret /eval -n ${sec.data.password} ==> secret
/eval -n ${window} ==> 0x2549aa0 /eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320 /eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat /eval -n ${window.buffer.full_name} ==> core.weechat
/eval -n ${window.buffer.number} ==> 1 /eval -n ${window.buffer.number} ==> 1
/eval -n ${\t} ==> <tab> /eval -n ${\t} ==> <tab>
/eval -n ${hide:-,${relay.network.password}} ==> -------- /eval -n ${hide:-,${relay.network.password}} ==> --------
/eval -n ${cut:3,+,test} ==> tes+ /eval -n ${cut:3,+,test} ==> tes+
/eval -n ${cut:+3,+,test} ==> te+ /eval -n ${cut:+3,+,test} ==> te+
/eval -n ${date:%H:%M:%S} ==> 07:46:40 /eval -n ${date:%H:%M:%S} ==> 07:46:40
/eval -n ${if:${info:term_width}>80?big:small} ==> big /eval -n ${if:${info:term_width}>80?big:small} ==> big
/eval -n ${rev:Hello} ==> olleH /eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> ----- /eval -n ${repeat:5,-} ==> -----
/eval -n ${length:test} ==> 4 /eval -n ${length:test} ==> 4
/eval -n ${calc:(5+2)*3} ==> 21 /eval -n ${split:1,,,abc,def,ghi} ==> abc
/eval -n ${base_encode:64,test} ==> dGVzdA== /eval -n ${split:-1,,,abc,def,ghi} ==> ghi
/eval -n ${base_decode:64,dGVzdA==} ==> test /eval -n ${split:count,,,abc,def,ghi} ==> 3
/eval -n ${translate:Plugin} ==> Extension /eval -n ${split:random,,,abc,def,ghi} ==> def
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
/eval -n ${calc:(5+2)*3} ==> 21
/eval -n ${random:0,10} ==> 3
/eval -n ${base_encode:64,test} ==> dGVzdA==
/eval -n ${base_decode:64,dGVzdA==} ==> test
/eval -n ${translate:Plugin} ==> Extension
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
Exemples (conditions) : Exemples (conditions) :
/eval -n -c ${window.buffer.number} > 2 ==> 0 /eval -n -c ${window.buffer.number} > 2 ==> 0
@@ -1549,6 +1597,9 @@ liste des actions :
jump_previously_visited_buffer : sauter au tampon visité précédemment jump_previously_visited_buffer : sauter au tampon visité précédemment
jump_next_visited_buffer : sauter au tampon visité après jump_next_visited_buffer : sauter au tampon visité après
hotlist_clear : effacer la hotlist (paramètre facultatif : "lowest" pour effacer seulement le plus petit niveau dans la hotlist, "highest" pour effacer seulement le niveau le plus haut dans la hotlist, ou un masque de niveaux : entier qui est une combinaison de 1=join/part, 2=message, 4=privé, 8=highlight) hotlist_clear : effacer la hotlist (paramètre facultatif : "lowest" pour effacer seulement le plus petit niveau dans la hotlist, "highest" pour effacer seulement le niveau le plus haut dans la hotlist, ou un masque de niveaux : entier qui est une combinaison de 1=join/part, 2=message, 4=privé, 8=highlight)
hotlist_remove_buffer : supprimer le tampon courant de la hotlist
hotlist_restore_buffer : restaurer la dernière hotlist supprimée dans le tampon courant
hotlist_restore_all : restaurer la dernière hotlist supprimée dans tous les tampons
grab_key : capturer une touche (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes) grab_key : capturer une touche (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes)
grab_key_command : capturer une touche avec sa commande associée (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes) grab_key_command : capturer une touche avec sa commande associée (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes)
grab_mouse : capturer un évènement de la souris grab_mouse : capturer un évènement de la souris
@@ -1644,6 +1695,8 @@ windows : stocker/appliquer seulement pour les fenêtres (le tampon affiché pa
Sans paramètre, cette commande affiche les dispositions stockées. Sans paramètre, cette commande affiche les dispositions stockées.
La disposition courante peut être sauvegardée sur la commande /quit avec l'option "weechat.look.save_layout_on_exit". La disposition courante peut être sauvegardée sur la commande /quit avec l'option "weechat.look.save_layout_on_exit".
Note : la disposition se souvient seulement de la division des fenêtres et des numéros de tampons. Elle n'ouvre pas les tampons. Cela signifie par exemple que vous devez toujours automatiquement rejoindre les canaux IRC pour ouvrir les tampons, la disposition sauvée ne s'applique qu'une fois les tampons ouverts.
---- ----
[[command_weechat_mouse]] [[command_weechat_mouse]]
@@ -1693,21 +1746,26 @@ Exemples :
* `+plugin+`: lister/charger/décharger des extensions * `+plugin+`: lister/charger/décharger des extensions
---- ----
/plugin list|listfull [<nom>] /plugin list [-o|-ol|-i|-il|<nom>]
listfull [<nom>]
load <fichier> [<paramètres>] load <fichier> [<paramètres>]
autoload [<paramètres>] autoload [<paramètres>]
reload [<nom>|* [<paramètres]] reload [<nom>|* [<paramètres]]
unload [<nom>] unload [<nom>]
list : lister les extensions chargées list : lister les extensions chargées
-o : envoyer la liste des extensions chargées au tampon (chaîne en anglais)
-ol : envoyer la liste des extensions chargées au tampon (chaîne traduite)
-i : copier la liste des extensions chargées dans la ligne de commande (pour envoi au tampon) (chaîne en anglais)
-il : copier la liste des extensions chargées dans la ligne de commande (pour envoi au tampon) (chaîne traduite)
nom : nom d'extension
listfull : lister les extensions chargées (verbeux) listfull : lister les extensions chargées (verbeux)
load : charger une extension load : charger une extension
fichier : extension (fichier) à charger
paramètres : paramètres donnés à l'extension lors de son chargement
autoload : charger automatiquement les extensions dans un répertoire système ou utilisateur autoload : charger automatiquement les extensions dans un répertoire système ou utilisateur
reload : recharger une extension (si pas de nom donné, décharger toutes les extensions, puis recharger automatiquement les extensions) reload : recharger une extension (si pas de nom donné, décharger toutes les extensions, puis recharger automatiquement les extensions)
unload : décharger une extension (si pas de nom donné, décharger toutes les extensions) unload : décharger une extension (si pas de nom donné, décharger toutes les extensions)
fichier : extension (fichier) à charger
nom : nom d'extension
paramètres : paramètres donnés à l'extension lors de son chargement
Sans paramètre, cette commande liste les extensions chargées. Sans paramètre, cette commande liste les extensions chargées.
---- ----
@@ -1935,6 +1993,32 @@ Exemples :
/set env ABC "" /set env ABC ""
---- ----
[[command_weechat_toggle]]
* `+toggle+`: basculer la valeur d'une option de configuration
----
/toggle <option> [<valeur> [<valeur>...]]
option : nom d'une option
valeur : valeurs possibles pour l'option (les valeurs sont découpées comme le les paramètres d'une commande par le shell : des guillemets peuvent être utilisés pour préserver les espaces au début et à la fin des valeurs)
Comportement :
- seule une option de type booléen ou chaîne peut être basculée sans valeur :
- booléen : basculer on/off selon la valeur courante
- chaîne : basculer entre chaîne vide et la valeur par défaut (fonctionne seulement si une chaîne vide est autorisée pour l'option)
- avec une seule valeur donnée, basculer entre cette valeur et la valeur par défaut de l'option
- avec plusieurs valeurs données, basculer entre les valeurs : la valeur utilisée est celle qui suit la valeur courante de l'option ; si la valeur courante n'est pas dans la liste, la première valeur de la liste est utilisée
- la valeur spéciale "null" peut être donnée, mais seulement comme première valeur dans la liste et sans guillemets autour.
Exemples :
basculer l'affichage de l'heure dans la zone de discussion (sans afficher la nouvelle valeur utilisée) :
/mute /toggle weechat.look.buffer_time_format
basculer le format de l'heure dans la zone de discussion (avec secondes, sans secondes, désactivé) :
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
basculer le "join" automatique du canal #weechat sur le serveur libera :
/toggle irc.server.libera.autojoin null #weechat
----
[[command_weechat_unset]] [[command_weechat_unset]]
* `+unset+`: supprimer/réinitialiser des options de configuration * `+unset+`: supprimer/réinitialiser des options de configuration
+119 -51
View File
@@ -1845,6 +1845,50 @@
** valeur par défaut: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+` ** valeur par défaut: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
// end::fifo_options[] // end::fifo_options[]
// tag::typing_options[]
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
** description: pass:none[nombre de secondes après que le statut "paused" ait été défini : si atteint, le statut d'écriture est supprimé]
** type: entier
** valeurs: 1 .. 2147483647
** valeur par défaut: `+30+`
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
** description: pass:none[nombre de secondes après que le statut "typing" ait été défini : si atteint, le statut d'écriture est supprimé]
** type: entier
** valeurs: 1 .. 2147483647
** valeur par défaut: `+6+`
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
** description: pass:none[nombre de secondes après avoir tapé le dernier caractère : si atteint, le statut d'écriture devient "paused" et il n'y a plus de signaux typing envoyés]
** type: entier
** valeurs: 1 .. 2147483647
** valeur par défaut: `+10+`
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
** description: pass:none[activer le statut d'écriture pour les autres pseudos (afficher le statut d'écriture pour les autres pseudos écrivant un message dans le tampon courant)]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
** description: pass:none[activer le statut d'écriture pour ses propres messages (envoyer l'information aux autres utilisateurs)]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
** description: pass:none[nombre minimum de caractères dans le message pour déclencher l'envoi des signaux typing]
** type: entier
** valeurs: 1 .. 2147483647
** valeur par défaut: `+4+`
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
** description: pass:none[nombre maximum de caractères affichés dans l'objet de barre "typing" (0 = ne pas tronquer le contenu)]
** type: entier
** valeurs: 0 .. 2147483647
** valeur par défaut: `+0+`
// end::typing_options[]
// tag::xfer_options[] // tag::xfer_options[]
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted* * [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
** description: pass:none[couleur du texte pour le statut "interrompu"] ** description: pass:none[couleur du texte pour le statut "interrompu"]
@@ -2214,6 +2258,12 @@
** valeurs: toute chaîne ** valeurs: toute chaîne
** valeur par défaut: `+"%a, %d %b %Y %T %z"+` ** valeur par défaut: `+"%a, %d %b %Y %T %z"+`
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
** description: pass:none[afficher les messages ACCOUNT reçus quand la capacité account-notify est activée]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+on+`
* [[option_irc.look.display_away]] *irc.look.display_away* * [[option_irc.look.display_away]] *irc.look.display_away*
** description: pass:none[afficher un message pour l'absence/retour (off : ne rien afficher/envoyer, local : afficher en local, channel : envoyer l'action aux canaux)] ** description: pass:none[afficher un message pour l'absence/retour (off : ne rien afficher/envoyer, local : afficher en local, channel : envoyer l'action aux canaux)]
** type: entier ** type: entier
@@ -2238,6 +2288,12 @@
** valeurs: on, off ** valeurs: on, off
** valeur par défaut: `+on+` ** valeur par défaut: `+on+`
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
** description: pass:none[afficher les informations supplémentaires sur les messages JOIN : nom de compte et nom réel (la capacité extended-join doit être activée)]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+on+`
* [[option_irc.look.display_host_join]] *irc.look.display_host_join* * [[option_irc.look.display_host_join]] *irc.look.display_host_join*
** description: pass:none[afficher le nom d'hôte dans les messages join] ** description: pass:none[afficher le nom d'hôte dans les messages join]
** type: booléen ** type: booléen
@@ -2508,6 +2564,18 @@
** valeurs: on, off ** valeurs: on, off
** valeur par défaut: `+off+` ** valeur par défaut: `+off+`
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
** description: pass:none[afficher les pseudos qui écrivent sur le canal dans l'objet de barre "typing" (l'option typing.look.enabled_nicks doit être activée et la capacité "message-tags" doit être activée sur le serveur)]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
** description: pass:none[envoyer le statut d'écriture de message aux canaux de sorte que les autres utilisateurs voient quand vous écrivez un message (l'option typing.look.enabled_self doit être activée et la capacité "message-tags" doit être activée sur le serveur)]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing* * [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
** description: pass:none[facteur de croissance du délai d'auto-reconnexion au serveur (1 = toujours le même délai, 2 = délai*2 pour chaque tentative, etc.)] ** description: pass:none[facteur de croissance du délai d'auto-reconnexion au serveur (1 = toujours le même délai, 2 = délai*2 pour chaque tentative, etc.)]
** type: entier ** type: entier
@@ -2665,10 +2733,10 @@
** valeur par défaut: `+25+` ** valeur par défaut: `+25+`
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
** description: pass:none[liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles (voir /help cap pour la liste des capacités supportées par WeeChat) (exemple : "away-notify,multi-prefix")] ** description: pass:none[liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles (voir /help cap pour la liste des capacités supportées par WeeChat) ; "*" active toutes les capacités par défaut (supportées par le serveur et WeeChat) ; le caractère joker "*" est autorisé ; une capacité commençant par "!" est exclue (exemple : "*,!account-*,!extended-join")]
** type: chaîne ** type: chaîne
** valeurs: toute chaîne ** valeurs: toute chaîne
** valeur par défaut: `+""+` ** valeur par défaut: `+"*"+`
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message* * [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
** description: pass:none[partie du message IRC (reçu ou envoyé) qui est décodé/encode vers le jeu de caractères cible ; message = le message IRC entier (par défaut), channel = à partir du nom du canal seulement (si trouvé, sinon à partir du texte), text = à partir du texte seulement (vous devriez essayer cette valeur si vous avec des problèmes d'encodage avec le nom du canal)] ** description: pass:none[partie du message IRC (reçu ou envoyé) qui est décodé/encode vers le jeu de caractères cible ; message = le message IRC entier (par défaut), channel = à partir du nom du canal seulement (si trouvé, sinon à partir du texte), text = à partir du texte seulement (vous devriez essayer cette valeur si vous avec des problèmes d'encodage avec le nom du canal)]
@@ -2770,7 +2838,7 @@
** description: pass:none[action à effectuer si l'authentification SASL échoue : "continue" pour ignorer le problème d'authentification, "reconnect" pour planifier une reconnexion au serveur, "disconnect" pour se déconnecter du serveur (voir aussi l'option irc.network.sasl_fail_unavailable)] ** description: pass:none[action à effectuer si l'authentification SASL échoue : "continue" pour ignorer le problème d'authentification, "reconnect" pour planifier une reconnexion au serveur, "disconnect" pour se déconnecter du serveur (voir aussi l'option irc.network.sasl_fail_unavailable)]
** type: entier ** type: entier
** valeurs: continue, reconnect, disconnect ** valeurs: continue, reconnect, disconnect
** valeur par défaut: `+continue+` ** valeur par défaut: `+reconnect+`
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key* * [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
** description: pass:none[fichier avec la clé privée ECC pour le mécanisme "ecdsa-nist256p-challenge" (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)] ** description: pass:none[fichier avec la clé privée ECC pour le mécanisme "ecdsa-nist256p-challenge" (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
@@ -2779,9 +2847,9 @@
** valeur par défaut: `+""+` ** valeur par défaut: `+""+`
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism* * [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
** description: pass:none[mécanisme pour l'authentification SASL : "plain" pour un mot de passe en clair, "scram-sha-1" pour une authentification SCRAM avec algorithme de hachage SHA-1, "scram-sha-256" pour une authentification SCRAM avec algorithme de hachage SHA-256, "scram-sha-512" pour une authentification SCRAM avec algorithme de hachage SHA-512, "ecdsa-nist256p-challenge" pour une authentification par challenge avec clé, "external" pour une authentification en utilisant un certificat SSL côté client, "dh-blowfish" pour un mot de passe chiffré avec blowfish (non sûr, non recommandé), "dh-aes" pour un mot de passe chiffré avec AES (non sûr, non recommandé)] ** description: pass:none[mécanisme pour l'authentification SASL : "plain" pour un mot de passe en clair, "scram-sha-1" pour une authentification SCRAM avec algorithme de hachage SHA-1, "scram-sha-256" pour une authentification SCRAM avec algorithme de hachage SHA-256, "scram-sha-512" pour une authentification SCRAM avec algorithme de hachage SHA-512, "ecdsa-nist256p-challenge" pour une authentification par challenge avec clé, "external" pour une authentification en utilisant un certificat SSL côté client]
** type: entier ** type: entier
** valeurs: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes ** valeurs: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
** valeur par défaut: `+plain+` ** valeur par défaut: `+plain+`
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password* * [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
@@ -3075,34 +3143,6 @@
** valeur par défaut: `+""+` ** valeur par défaut: `+""+`
// end::relay_options[] // end::relay_options[]
// tag::javascript_options[]
* [[option_javascript.look.check_license]] *javascript.look.check_license*
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+on+`
// end::javascript_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+on+`
// end::ruby_options[]
// tag::guile_options[] // tag::guile_options[]
* [[option_guile.look.check_license]] *guile.look.check_license* * [[option_guile.look.check_license]] *guile.look.check_license*
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché] ** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
@@ -3117,19 +3157,33 @@
** valeur par défaut: `+on+` ** valeur par défaut: `+on+`
// end::guile_options[] // end::guile_options[]
// tag::tcl_options[] // tag::javascript_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license* * [[option_javascript.look.check_license]] *javascript.look.check_license*
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché] ** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
** type: booléen ** type: booléen
** valeurs: on, off ** valeurs: on, off
** valeur par défaut: `+off+` ** valeur par défaut: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context* * [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent] ** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
** type: booléen ** type: booléen
** valeurs: on, off ** valeurs: on, off
** valeur par défaut: `+on+` ** valeur par défaut: `+on+`
// end::tcl_options[] // end::javascript_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+on+`
// end::lua_options[]
// tag::perl_options[] // tag::perl_options[]
* [[option_perl.look.check_license]] *perl.look.check_license* * [[option_perl.look.check_license]] *perl.look.check_license*
@@ -3159,20 +3213,6 @@
** valeur par défaut: `+on+` ** valeur par défaut: `+on+`
// end::php_options[] // end::php_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+on+`
// end::lua_options[]
// tag::python_options[] // tag::python_options[]
* [[option_python.look.check_license]] *python.look.check_license* * [[option_python.look.check_license]] *python.look.check_license*
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché] ** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
@@ -3187,6 +3227,34 @@
** valeur par défaut: `+on+` ** valeur par défaut: `+on+`
// end::python_options[] // end::python_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+on+`
// end::ruby_options[]
// tag::tcl_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license*
** description: pass:none[vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
** description: pass:none[garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+on+`
// end::tcl_options[]
// tag::script_options[] // tag::script_options[]
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded* * [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
** description: pass:none[couleur du statut "chargé auto" ("a")] ** description: pass:none[couleur du statut "chargé auto" ("a")]
+3
View File
@@ -88,6 +88,9 @@ $HOME/.config/weechat/tcl.conf::
$HOME/.config/weechat/trigger.conf:: $HOME/.config/weechat/trigger.conf::
fichier de configuration pour l'extension _trigger_ fichier de configuration pour l'extension _trigger_
$HOME/.config/weechat/typing.conf::
fichier de configuration pour l'extension _typing_
$HOME/.config/weechat/xfer.conf:: $HOME/.config/weechat/xfer.conf::
fichier de configuration pour l'extension _xfer_ fichier de configuration pour l'extension _xfer_
+59 -48
View File
@@ -91,6 +91,7 @@ Les répertoires principaux de WeeChat sont :
|       spell/ | Extension Spell. |       spell/ | Extension Spell.
|       tcl/ | API script Tcl. |       tcl/ | API script Tcl.
|       trigger/ | Extension Trigger. |       trigger/ | Extension Trigger.
|       typing/ | Extension Typing.
|       xfer/ | Extension Xfer (IRC DCC fichier/discussion). |       xfer/ | Extension Xfer (IRC DCC fichier/discussion).
| tests/ | Tests. | tests/ | Tests.
|    scripts/ | Tests de l'API script. |    scripts/ | Tests de l'API script.
@@ -296,6 +297,7 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|       irc-redirect.c | Redirection de la sortie des commandes IRC. |       irc-redirect.c | Redirection de la sortie des commandes IRC.
|       irc-sasl.c | Authentification SASL avec le serveur IRC. |       irc-sasl.c | Authentification SASL avec le serveur IRC.
|       irc-server.c | Communication avec le serveur IRC. |       irc-server.c | Communication avec le serveur IRC.
|       irc-tag.c | Fonctions pour manipuler les étiquettes de message IRC.
|       irc-upgrade.c | Sauvegarde/restauration des données IRC lors de la mise à jour de WeeChat. |       irc-upgrade.c | Sauvegarde/restauration des données IRC lors de la mise à jour de WeeChat.
|    javascript/ | Extension JavaScript. |    javascript/ | Extension JavaScript.
|       weechat-js.cpp | Fonctions principales pour JavaScript (chargement/déchargement des scripts, exécution de code JavaScript). |       weechat-js.cpp | Fonctions principales pour JavaScript (chargement/déchargement des scripts, exécution de code JavaScript).
@@ -365,6 +367,11 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|       trigger-command.c | Commandes pour Trigger. |       trigger-command.c | Commandes pour Trigger.
|       trigger-completion.c | Complétions pour Trigger. |       trigger-completion.c | Complétions pour Trigger.
|       trigger-config.c | Options de configuration pour Trigger (fichier trigger.conf). |       trigger-config.c | Options de configuration pour Trigger (fichier trigger.conf).
|    typing/ | Extension Typing.
|       typing.c | Fonctions principales de Typing.
|       typing-bar-item.c | Objets de barre Typing.
|       typing-config.c | Options de configuration pour Typing (fichier typing.conf).
|       typing-status.c | Statut d'écriture de messages sur les tampons.
|    xfer/ | Extension Xfer (IRC DCC fichier/discussion). |    xfer/ | Extension Xfer (IRC DCC fichier/discussion).
|       xfer.c | Fonctions principales de Xfer. |       xfer.c | Fonctions principales de Xfer.
|       xfer-buffer.c | Tampon Xfer. |       xfer-buffer.c | Tampon Xfer.
@@ -384,54 +391,58 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
[width="100%",cols="2m,3",options="header"] [width="100%",cols="2m,3",options="header"]
|=== |===
| Chemin/fichier | Description | Chemin/fichier | Description
| tests/ | Racine des tests. | tests/ | Racine des tests.
|    tests.cpp | Programme utilisé pour lancer tous les tests. |    tests.cpp | Programme utilisé pour lancer tous les tests.
|    scripts/ | Racine des tests de l'API script. |    scripts/ | Racine des tests de l'API script.
|       test-scripts.cpp | Programme utilisé pour lancer les tests de l'API script. |       test-scripts.cpp | Programme utilisé pour lancer les tests de l'API script.
|       python/ | Scripts Python pour générer et lancer les tests de l'API script. |       python/ | Scripts Python pour générer et lancer les tests de l'API script.
|          testapigen.py | Script Python générant des scripts dans tous les languages pour tester l'API script. |          testapigen.py | Script Python générant des scripts dans tous les languages pour tester l'API script.
|          testapi.py | Script Python avec les tests API, utilisé par le script testapigen.py. |          testapi.py | Script Python avec les tests API, utilisé par le script testapigen.py.
|          unparse.py | Conversion de code Python vers d'autres langages, utilisé par le script testapigen.py. |          unparse.py | Conversion de code Python vers d'autres langages, utilisé par le script testapigen.py.
|    unit/ | Racine des tests unitaires. |    unit/ | Racine des tests unitaires.
|       test-plugins.cpp | Tests : extensions. |       test-plugins.cpp | Tests : extensions.
|       core/ | Racine des tests unitaires pour le cœur. |       core/ | Racine des tests unitaires pour le cœur.
|          test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »). |          test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »).
|          test-core-calc.cpp | Tests : calcul d'expressions. |          test-core-calc.cpp | Tests : calcul d'expressions.
|          test-core-crypto.cpp | Tests : fonctions cryptographiques. |          test-core-config-file.cpp | Tests : fichiers de configuration.
|          test-core-dir.cpp | Tests : répertoires/fichiers. |          test-core-crypto.cpp | Tests : fonctions cryptographiques.
|          test-core-eval.cpp | Tests : évaluation d'expressions. |          test-core-dir.cpp | Tests : répertoires/fichiers.
|          test-core-hashtble.cpp | Tests : tables de hachage. |          test-core-eval.cpp | Tests : évaluation d'expressions.
|          test-core-hdata.cpp | Tests : hdata. |          test-core-hashtble.cpp | Tests : tables de hachage.
|          test-core-hook.cpp | Tests : hooks. |          test-core-hdata.cpp | Tests : hdata.
|          test-core-infolist.cpp | Tests : infolists. |          test-core-hook.cpp | Tests : hooks.
|          test-core-list.cpp | Tests : listes. |          test-core-infolist.cpp | Tests : infolists.
|          test-core-network.cpp | Tests : fonctions réseau. |          test-core-list.cpp | Tests : listes.
|          test-core-secure.cpp | Tests : données sécurisées. |          test-core-network.cpp | Tests : fonctions réseau.
|          test-core-signal.cpp | Tests : signaux. |          test-core-secure.cpp | Tests : données sécurisées.
|          test-core-string.cpp | Tests : chaînes. |          test-core-signal.cpp | Tests : signaux.
|          test-core-url.cpp | Tests : URLs. |          test-core-string.cpp | Tests : chaînes.
|          test-core-utf8.cpp | Tests : UTF-8. |          test-core-url.cpp | Tests : URLs.
|          test-core-util.cpp | Tests : fonctions utiles. |          test-core-utf8.cpp | Tests : UTF-8.
|       gui/ | Racine des tests unitaires pour les interfaces. |          test-core-util.cpp | Tests : fonctions utiles.
|          test-gui-color.cpp | Tests : couleurs. |       gui/ | Racine des tests unitaires pour les interfaces.
|          test-gui-line.cpp | Tests : lignes. |          test-gui-color.cpp | Tests : couleurs.
|          test-gui-nick.cpp | Tests : pseudos. |          test-gui-line.cpp | Tests : lignes.
|       plugins/ | Racine des tests unitaires pour les extensions. |          test-gui-nick.cpp | Tests : pseudos.
|          irc/ | Racine des tests unitaires pour l'extension IRC. |       plugins/ | Racine des tests unitaires pour les extensions.
|             test-irc-channel.cpp | Tests : canaux IRC. |          irc/ | Racine des tests unitaires pour l'extension IRC.
|             test-irc-color.cpp | Tests : couleurs IRC. |             test-irc-channel.cpp | Tests : canaux IRC.
|             test-irc-config.cpp | Tests : configuration IRC. |             test-irc-color.cpp | Tests : couleurs IRC.
|             test-irc-ignore.cpp | Tests : ignores IRC. |             test-irc-config.cpp | Tests : configuration IRC.
|             test-irc-message.cpp | Tests : messages IRC. |             test-irc-ignore.cpp | Tests : ignores IRC.
|             test-irc-mode.cpp | Tests : modes IRC. |             test-irc-message.cpp | Tests : messages IRC.
|             test-irc-nick.cpp | Tests : pseudos IRC. |             test-irc-mode.cpp | Tests : modes IRC.
|             test-irc-protocol.cpp | Tests : protocole IRC. |             test-irc-nick.cpp | Tests : pseudos IRC.
|             test-irc-server.cpp | Tests : serveur IRC. |             test-irc-protocol.cpp | Tests : protocole IRC.
|          trigger/ | Racine des tests unitaires pour l'extension trigger. |             test-irc-server.cpp | Tests : serveur IRC.
|             test-trigger.cpp | Tests : triggers. |          trigger/ | Racine des tests unitaires pour l'extension trigger.
|          relay/ | Racine des tests unitaires pour l'extension Relay. |             test-trigger.cpp | Tests : triggers.
|             test-relay-auth.cpp | Tests : authentification des clients. |          typing/ | Racine des tests unitaires pour l'extension typing.
|             test-typing.cpp | Tests : typing.
|             test-typing-status.cpp | Tests : statut d'écriture.
|          relay/ | Racine des tests unitaires pour l'extension Relay.
|             test-relay-auth.cpp | Tests : authentification des clients.
|=== |===
[[documentation_translations]] [[documentation_translations]]
+1 -1
View File
@@ -544,7 +544,7 @@ Vous pouvez simplement désactiver le mode "bracketed paste" :
=== Comment puis-je personnaliser l'affichage pour un tout petit terminal (comme 80x25), pour ne pas perdre de place ? === Comment puis-je personnaliser l'affichage pour un tout petit terminal (comme 80x25), pour ne pas perdre de place ?
Vous pouvez retirer les barres latérales (buflist et nicklist), changer le format Vous pouvez retirer les barres latérales (buflist et nicklist), changer le format
de l'heure pour n'afficher que les heures et les secondes, désactiver l'alignement de l'heure pour n'afficher que les heures et les minutes, désactiver l'alignement
des messages et définir un caractère de préfixe/suffixe pour les pseudos : des messages et définir un caractère de préfixe/suffixe pour les pseudos :
---- ----
File diff suppressed because it is too large Load Diff
+12 -6
View File
@@ -1314,6 +1314,10 @@ Le résultat est une table de hachage avec les clés suivantes
Les étiquettes dans le message (peut être vide). | Les étiquettes dans le message (peut être vide). |
`+time=2015-06-27T16:40:35.000Z+` `+time=2015-06-27T16:40:35.000Z+`
| tag_xxx | 3.3 |
Valeur de l'étiquette "xxx" sans les échappements (une clé par étiquette). |
`+2015-06-27T16:40:35.000Z+`
| message_without_tags | 0.4.0 | | message_without_tags | 0.4.0 |
Le message sans les étiquettes (la même chose que le message s'il n'y a pas Le message sans les étiquettes (la même chose que le message s'il n'y a pas
d'étiquettes). | d'étiquettes). |
@@ -1371,10 +1375,12 @@ Le résultat est une table de hachage avec les clés suivantes
---- ----
dict = weechat.info_get_hashtable( dict = weechat.info_get_hashtable(
"irc_message_parse", "irc_message_parse",
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"}) {"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
# dict == { # dict == {
# "tags": "time=2015-06-27T16:40:35.000Z", # "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
# "tag_time": "2015-06-27T16:40:35.000Z",
# "tag_tag2": "value space",
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!", # "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
# "nick": "nick", # "nick": "nick",
# "user": "user", # "user": "user",
@@ -1383,10 +1389,10 @@ dict = weechat.info_get_hashtable(
# "channel": "#weechat", # "channel": "#weechat",
# "arguments": "#weechat :hello!", # "arguments": "#weechat :hello!",
# "text": "hello!", # "text": "hello!",
# "pos_command": "47", # "pos_command": "65",
# "pos_arguments": "55", # "pos_arguments": "73",
# "pos_channel": "55", # "pos_channel": "73",
# "pos_text": "65", # "pos_text": "83",
# } # }
---- ----
+359 -25
View File
@@ -180,11 +180,11 @@ $ make
$ make install $ make install
---- ----
Des options peuvent être utilisées pour CMake, avec le format : "-DOPTION=VALUE". Des options peuvent être utilisées pour CMake, avec le format : `-DOPTION=VALUE`.
Liste des options couramment utilisées : Liste des options couramment utilisées :
[width="100%",cols="2m,2,5m,12",options="header"] [width="100%",cols="3m,3,3m,10",options="header"]
|=== |===
| Option | Valeurs | Valeur par défaut | Description | Option | Valeurs | Valeur par défaut | Description
@@ -288,6 +288,9 @@ Liste des options couramment utilisées :
| ENABLE_TRIGGER | `ON`, `OFF` | ON | | ENABLE_TRIGGER | `ON`, `OFF` | ON |
Compiler <<trigger_plugin,l'extension Trigger>>. Compiler <<trigger_plugin,l'extension Trigger>>.
| ENABLE_TYPING | `ON`, `OFF` | ON |
Compiler <<typing_plugin,l'extension Typing>>.
| ENABLE_XFER | `ON`, `OFF` | ON | | ENABLE_XFER | `ON`, `OFF` | ON |
Compiler <<xfer_plugin,l'extension Xfer>>. Compiler <<xfer_plugin,l'extension Xfer>>.
@@ -742,6 +745,7 @@ Les fichiers dans le répertoire principal de WeeChat sont :
| tcl.conf | Fichier de configuration de l'extension _tcl_ | Non. | tcl.conf | Fichier de configuration de l'extension _tcl_ | Non.
| spell.conf | Fichier de configuration de l'extension _spell_ | Non. | spell.conf | Fichier de configuration de l'extension _spell_ | Non.
| trigger.conf | Fichier de configuration de l'extension _trigger_ | Possible, cela dépend des triggers. | trigger.conf | Fichier de configuration de l'extension _trigger_ | Possible, cela dépend des triggers.
| typing.conf | Fichier de configuration de l'extension _typing_ | Non.
| xfer.conf | Fichier de configuration de l'extension _xfer_ | Non. | xfer.conf | Fichier de configuration de l'extension _xfer_ | Non.
| weechat.log | Fichier de log WeeChat | Non. | weechat.log | Fichier de log WeeChat | Non.
|=== |===
@@ -790,7 +794,7 @@ Exemple de terminal avec WeeChat :
▲ barres "status" et "input" barre "nicklist" ▲ ▲ barres "status" et "input" barre "nicklist" ▲
.... ....
L'écran est composé des zones suivantes : Par défaut, l'écran est composé des zones suivantes :
* zone de discussion (milieu de l'écran) avec les lignes de discussion, et * zone de discussion (milieu de l'écran) avec les lignes de discussion, et
pour chaque ligne : pour chaque ligne :
@@ -886,6 +890,13 @@ Autres objets (non utilisés dans des barres par défaut) :
| window_number | `2` | Numéro de la fenêtre courante. | window_number | `2` | Numéro de la fenêtre courante.
|=== |===
Chaque aspect de la disposition peut être configuré par la <<command_line,command>> appropriée :
<<command_weechat_bar,`/bar`>> pour configurer les barres,
<<command_weechat_buffer,/buffer>> et <<command_weechat_window,`/window`>>
pour configurer les <<buffers_and_windows,tampons et fenêtres>>,
et <<command_weechat_layot,/layout>> pour nommer, sauver et restaurer la disposition
de l'écran et l'association entre les fenêtres et les tampons.
[[command_line]] [[command_line]]
=== Ligne de commande === Ligne de commande
@@ -1137,11 +1148,18 @@ Exemples de tampons :
Une fenêtre (_window_) est une zone de l'écran affichant un tampon. Il est Une fenêtre (_window_) est une zone de l'écran affichant un tampon. Il est
possible de découper l'écran horizontalement ou verticalement en plusieurs possible de découper l'écran horizontalement ou verticalement en plusieurs
fenêtres. fenêtres (exemples <<window_split_examples,ci-dessous>>, voir la
<<command_weechat_window,commande /window>> pour plus d'informations).
Chaque fenêtre affiche un tampon. Un tampon peut être caché (affiché par Chaque fenêtre affiche un tampon. Un tampon peut être caché (affiché par
aucune fenêtre) ou affiché par une ou plusieurs fenêtres. aucune fenêtre) ou affiché par une ou plusieurs fenêtres.
Les dispositions d'écran et l'association entre les fenêtres et les tampons
peuvent être <<command_weechat_layout,sauvées et restaurées>>.
[[window_split_examples]]
==== Exemples
Exemple de découpage horizontal (`/window splith`) : Exemple de découpage horizontal (`/window splith`) :
.... ....
@@ -2034,7 +2052,14 @@ avec `+/help buffer_autoset+`.
| kbd:[Alt+F12] | Aller à la fin de la liste des pseudos. | `+/bar scroll nicklist * e+` | kbd:[Alt+F12] | Aller à la fin de la liste des pseudos. | `+/bar scroll nicklist * e+`
| kbd:[Alt+a] | Sauter au prochain tampon avec activité (avec priorité : highlight, message, autre). | `+/input jump_smart+` | kbd:[Alt+a] | Sauter au prochain tampon avec activité (avec priorité : highlight, message, autre). | `+/input jump_smart+`
| kbd:[Alt+Shift+B] | Activer/désactiver buflist. | `+/buflist toggle+` | kbd:[Alt+Shift+B] | Activer/désactiver buflist. | `+/buflist toggle+`
| kbd:[Alt+h] | Vider la hotlist (notification d'activité sur les autres tampons). | `+/input hotlist_clear+` | kbd:[Alt+h],
kbd:[Alt+c] | Vider la hotlist (notification d'activité sur les tampons). | `+/input hotlist_clear+`
| kbd:[Alt+h],
kbd:[Alt+m] | Supprimer le tampon courant de la hotlist. | `+/input hotlist_remove_buffer+`
| kbd:[Alt+h],
kbd:[Alt+r] | Restaurer la dernière hotlist supprimée dans le tampon courant. | `+/input hotlist_restore_buffer+`
| kbd:[Alt+h],
kbd:[Alt+Shift+R] | Restaurer la dernière hotlist supprimée dans tous les tampons. | `+/input hotlist_restore_all+`
| kbd:[Alt+j], | kbd:[Alt+j],
kbd:[Alt+f] | Sauter au premier tampon. | `+/buffer -+` kbd:[Alt+f] | Sauter au premier tampon. | `+/buffer -+`
| kbd:[Alt+j], | kbd:[Alt+j],
@@ -2308,7 +2333,7 @@ et un geste (facultatif). Les différents éléments sont séparés par `+-+`.
Liste des modificateurs : Liste des modificateurs :
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Modificateur | Description | Modificateur | Description
| ctrl | Touche kbd:[Ctrl] | ctrl | Touche kbd:[Ctrl]
@@ -2318,7 +2343,7 @@ Liste des modificateurs :
Liste des boutons/roulette : Liste des boutons/roulette :
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Bouton/roulette | Description | Bouton/roulette | Description
| button1 | Clic sur le bouton gauche | button1 | Clic sur le bouton gauche
@@ -2331,7 +2356,7 @@ Liste des boutons/roulette :
Liste des gestes (seulement pour les boutons, pas la roulette) : Liste des gestes (seulement pour les boutons, pas la roulette) :
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Geste | Distance | Geste | Distance
| gesture-up | 3 ... 19 | gesture-up | 3 ... 19
@@ -2347,7 +2372,7 @@ Liste des gestes (seulement pour les boutons, pas la roulette) :
Liste des évènements incomplets (seulement pour les boutons, pratique pour les Liste des évènements incomplets (seulement pour les boutons, pratique pour les
extensions/scripts) : extensions/scripts) :
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Évènement | Description | Évènement | Description
| event-down | Le bouton a été pressé mais pas encore relâché | event-down | Le bouton a été pressé mais pas encore relâché
@@ -2605,6 +2630,7 @@ Les extensions par défaut sont :
| php | Interface (API) pour scripts PHP. | php | Interface (API) pour scripts PHP.
| spell | Vérification orthographique de la ligne de commande. | spell | Vérification orthographique de la ligne de commande.
| trigger | Remplacement de texte et exécution de commande sur des évènements de WeeChat ou des extensions. | trigger | Remplacement de texte et exécution de commande sur des évènements de WeeChat ou des extensions.
| typing | Affichage des utilisateurs qui sont en train d'écrire des messages.
| xfer | Transfert de fichier et discussion directe. | xfer | Transfert de fichier et discussion directe.
|=== |===
@@ -2938,15 +2964,133 @@ Il est possible de passer une URL pour un ou plusieurs serveurs, comme suit :
irc[6][s]://[pseudo[:mot_passe]@]irc.example.org[:port][/canal][,canal[...]] irc[6][s]://[pseudo[:mot_passe]@]irc.example.org[:port][/canal][,canal[...]]
---- ----
Exemple pour rejoindre _#weechat_ et _#toto_ sur le serveur _irc.libera.chat_, Exemple pour rejoindre _#weechat_ et _#weechat-fr_ sur le serveur
port par défaut (6667), avec le pseudo _nono_ : _irc.libera.chat_, port par défaut (6667), avec le pseudo _alice_ :
---- ----
$ weechat irc://nono@irc.libera.chat/#weechat,#toto $ weechat irc://alice@irc.libera.chat/#weechat,#weechat-fr
----
[[irc_servers]]
==== Serveurs
[[irc_servers_add]]
===== Ajout d'un serveur
Par défaut aucun serveur n'est défini. Vous pouvez ajouter autant de serveurs
que vous le souhaitez avec la commande <<command_irc_server,/server>>.
Par exemple pour vous connecter à https://libera.chat/[libera.chat] avec SSL
(communications chiffrées) :
----
/server add libera irc.libera.chat/6697 -ssl
----
Vous pouvez demander à WeeChat de se connecter automatiquement à ce serveur
au démarrage :
----
/set irc.server.libera.autoconnect on
----
Pour vous authentifier, il est recommandé d'utiliser SASL (si le serveur le
supporte), avec le mot de passe stocké sous forme de donnée sécurisée (voir aussi
le chapitre sur <<irc_sasl_authentication,l'authentification avec SASL>>) :
----
/set irc.server.libera.sasl_username "alice"
/secure set libera xxxxxxx
/set irc.server.libera.sasl_password "${sec.data.libera}"
----
Si SASL n'est pas supporté, vous pouvez utiliser une commande pour envoyer
un message à nickserv :
----
/set irc.server.libera.command "/msg nickserv identify ${sec.data.libera}"
----
[NOTE]
En envoyant une commande à nickserv, vous pourriez être authentifié après avoir
rejoint les canaux, ce qui peut être un problème sur certains canaux qui
vous obligent à être authentifié pour les rejoindre. Dans ce cas, vous pouvez
définir un délai après la commande : `/set irc.server.libera.command_delay 5`.
[[irc_servers_options]]
===== Options du serveur
Les options du serveur sont nommées `irc.server.<serveur>.<option>` où `<serveur>`
est le nom interne du serveur et `<option>` le nom de l'option. +
La valeur d'une option de serveur est héritée de `irc.server_default.xxx` si
l'option de serveur a la valeur spéciale `null`.
Par exemple si vous avez créé le serveur _libera_ avec les commandes ci-dessus,
vous verrez ceci avec la commande `/fset libera` :
....
irc.server.libera.addresses string "irc.libera.chat/6697"
irc.server.libera.anti_flood_prio_high integer null -> 2
irc.server.libera.anti_flood_prio_low integer null -> 2
irc.server.libera.autoconnect boolean on
irc.server.libera.autojoin string null -> ""
irc.server.libera.autoreconnect boolean null -> on
irc.server.libera.autoreconnect_delay integer null -> 10
irc.server.libera.autorejoin boolean null -> off
irc.server.libera.autorejoin_delay integer null -> 30
irc.server.libera.away_check integer null -> 0
irc.server.libera.away_check_max_nicks integer null -> 25
irc.server.libera.capabilities string null -> "*"
irc.server.libera.charset_message integer null -> message
irc.server.libera.command string null -> ""
irc.server.libera.command_delay integer null -> 0
irc.server.libera.connection_timeout integer null -> 60
irc.server.libera.default_chantypes string null -> "#&"
irc.server.libera.ipv6 boolean null -> on
irc.server.libera.local_hostname string null -> ""
irc.server.libera.msg_kick string null -> ""
irc.server.libera.msg_part string null -> "WeeChat ${info:version}"
irc.server.libera.msg_quit string null -> "WeeChat ${info:version}"
irc.server.libera.nicks string null -> "alice,alice1,alice2,alice3,alice4"
irc.server.libera.nicks_alternate boolean null -> on
irc.server.libera.notify string null -> ""
irc.server.libera.password string null -> ""
irc.server.libera.proxy string null -> ""
irc.server.libera.realname string null -> ""
irc.server.libera.sasl_fail integer null -> reconnect
irc.server.libera.sasl_key string null -> ""
irc.server.libera.sasl_mechanism integer null -> plain
irc.server.libera.sasl_password string "${sec.data.libera}"
irc.server.libera.sasl_timeout integer null -> 15
irc.server.libera.sasl_username string "alice"
irc.server.libera.split_msg_max_length integer null -> 512
irc.server.libera.ssl boolean on
irc.server.libera.ssl_cert string null -> ""
irc.server.libera.ssl_dhkey_size integer null -> 2048
irc.server.libera.ssl_fingerprint string null -> ""
irc.server.libera.ssl_password string null -> ""
irc.server.libera.ssl_priorities string null -> "NORMAL:-VERS-SSL3.0"
irc.server.libera.ssl_verify boolean null -> on
irc.server.libera.usermode string null -> ""
irc.server.libera.username string null -> "alice"
....
Par exemple si vous voulez vous connecter automatiquement à tous les serveurs
que vous ajoutez sans avoir à le faire sur chaque serveur, vous pouvez faire :
----
/set irc.server_default.autoconnect on
----
Et puis vous pouvez réinitialiser l'option du serveur pour qu'elle utilise
la valeur héritée, qui est maintenant `on` au lieu de la valeur par défaut `off` :
----
/unset irc.server.libera.autoconnect
---- ----
[[irc_ssl_certificates]] [[irc_ssl_certificates]]
==== Certificats SSL ===== Certificats SSL
Lors de la connexion à un serveur IRC avec SSL, WeeChat vérifie par défaut que Lors de la connexion à un serveur IRC avec SSL, WeeChat vérifie par défaut que
la connexion est entièrement de confiance. la connexion est entièrement de confiance.
@@ -2977,7 +3121,7 @@ et peut échouer, même si cela pouvait être OK dans les versions inférieures
0.3.1. 0.3.1.
[[irc_connect_oftc_with_certificate]] [[irc_connect_oftc_with_certificate]]
===== Premier exemple : se connecter à oftc en vérifiant le certificat ====== Premier exemple : se connecter à oftc en vérifiant le certificat
* Importer le certificat sous le shell : * Importer le certificat sous le shell :
@@ -3000,7 +3144,7 @@ Il est possible de concaténer plusieurs certificats dans le fichier CAs.pem.
---- ----
[[irc_connect_oftc_with_certfp]] [[irc_connect_oftc_with_certfp]]
===== Second exemple : se connecter à oftc en utilisant CertFP ====== Second exemple : se connecter à oftc en utilisant CertFP
* Créer le certificat sous le shell : * Créer le certificat sous le shell :
@@ -3025,7 +3169,7 @@ config WeeChat qui peut aussi être par exemple `~/.weechat`.
Pour plus d'informations, consulter https://www.oftc.net/NickServ/CertFP Pour plus d'informations, consulter https://www.oftc.net/NickServ/CertFP
[[irc_sasl_authentication]] [[irc_sasl_authentication]]
==== Authentification avec SASL ===== Authentification avec SASL
WeeChat supporte l'authentification avec SASL, en utilisant différents WeeChat supporte l'authentification avec SASL, en utilisant différents
mécanismes : mécanismes :
@@ -3036,8 +3180,6 @@ mécanismes :
* _scram-sha-512_ : SCRAM avec algorithme de hachage SHA-512 * _scram-sha-512_ : SCRAM avec algorithme de hachage SHA-512
* _ecdsa-nist256p-challenge_ : challenge avec clé publique/privée * _ecdsa-nist256p-challenge_ : challenge avec clé publique/privée
* _external_ : certificat SSL côté client * _external_ : certificat SSL côté client
* _dh-blowfish_ : mot de passe chiffré avec blowfish (*non sûr*, non recommandé)
* _dh-aes_ : mot de passe chiffré avec AES (*non sûr*, non recommandé)
Les options dans le serveur sont : Les options dans le serveur sont :
@@ -3050,7 +3192,7 @@ Les options dans le serveur sont :
_ecdsa-nist256p-challenge_) _ecdsa-nist256p-challenge_)
[[irc_sasl_ecdsa_nist256p_challenge]] [[irc_sasl_ecdsa_nist256p_challenge]]
===== SASL ECDSA-NIST256P-CHALLENGE ====== SASL ECDSA-NIST256P-CHALLENGE
Vous devez générer une clé privée pour vous authentifier avec le mécanisme Vous devez générer une clé privée pour vous authentifier avec le mécanisme
ECDSA-NIST256P-CHALLENGE (aucun mot de passe n'est requis lors de la ECDSA-NIST256P-CHALLENGE (aucun mot de passe n'est requis lors de la
@@ -3096,8 +3238,41 @@ Reconnectez-vous au serveur :
/reconnect libera /reconnect libera
---- ----
[[irc_servers_connection]]
===== Connexion
Vous pouvez vous connecter au serveur avec la commande
<<command_irc_connect,/connect>> :
----
/connect libera
----
Pour vous déconnecter :
----
/disconnect libera
----
Ou juste ceci si vous être sur un tampon appartenant au serveur _libera_
(serveur, canal, privé) :
----
/disconnect
----
Lorsque vous vous connectez à plusieurs serveurs à la fois, les tampons des
serveurs sont mélangés par défaut et vous pouvez basculer entre eux avec
la touche kbd:[Ctrl+x]. +
Il est possible de désactiver le mélange des tampons serveurs pour avoir
un tampon distinct par serveur :
----
/set irc.look.server_buffer independent
----
[[irc_tor_sasl]] [[irc_tor_sasl]]
==== Connexion avec TOR et SASL ===== Connexion avec TOR et SASL
Quelques serveurs acceptent les connexions avec TOR (https://www.torproject.org/), Quelques serveurs acceptent les connexions avec TOR (https://www.torproject.org/),
un réseau de tunnels virtuels qui permet aux personnes et groupes d'améliorer un réseau de tunnels virtuels qui permet aux personnes et groupes d'améliorer
@@ -3116,7 +3291,7 @@ et port dépend de votre configuration de TOR) :
/proxy add tor socks5 127.0.0.1 9050 /proxy add tor socks5 127.0.0.1 9050
---- ----
Maintenant, ajouter un nouveau serveur (remplacez le nom du serveur "irc-tor" et Maintenant, ajoutez un nouveau serveur (remplacez le nom du serveur "irc-tor" et
l'adresse par une valide) : l'adresse par une valide) :
---- ----
@@ -3145,6 +3320,66 @@ Et enfin, connectez-vous au serveur :
/connect irc-tor /connect irc-tor
---- ----
[[irc_channels]]
==== Canaux
Vous pouvez rejoindre des canaux avec la commande <<command_irc_join,/join>> :
----
/join #canal
----
Quitter un canal (en laissant le tampon ouvert) :
----
/part [message de fin]
----
Les canaux que vous rejoignez ne sont pas sauvegardés. Si vous souhaitez les
rejoindre automatiquement à la connexion au serveur, vous devez définir l'option
`autojoin` du serveur :
----
/set irc.server.libera.autojoin "#weechat,#weechat-fr"
----
[NOTE]
Certains scripts peuvent aider pour définir automatiquement cette option,
voir `/script search autojoin`.
Attention, les espaces ne peuvent être utilisés que pour séparer les canaux
des clés, par exemple si `#canal1` requiert une clé mais pas `#canal2`:
----
/set irc.server.libera.autojoin "#canal1,#canal2 cle1"
----
Pour de l'aide sur le format, voir `/help irc.server.libera.autojoin`.
[[irc_private_messages]]
==== Messages privés
Vous pouvez envoyer un message privé avec la commande <<command_irc_query,/query>>,
qui ouvre un tampon séparé :
----
/query bob salut, comment vas-tu ?
----
Sans paramètre la commande ouvre juste le tampon (ou le sélectionne s'il est
déjà ouvert) :
----
/query bob
----
Pour fermer le tampon privé, vous pouvez utiliser cette commande sur le tampon
privé :
----
/close
----
[[irc_smart_filter_join_part_quit]] [[irc_smart_filter_join_part_quit]]
==== Filtre intelligent pour les messages join/part/quit ==== Filtre intelligent pour les messages join/part/quit
@@ -3286,7 +3521,7 @@ le tampon approprié, généralement le tampon du serveur ou du canal.
Liste non exhaustive des messages ou alias que vous pouvez paramétrer : Liste non exhaustive des messages ou alias que vous pouvez paramétrer :
[width="100%",cols="^1m,^3m,8",options="header"] [width="100%",cols="^2m,^3m,15",options="header"]
|=== |===
| message | alias | description | message | alias | description
| error | | erreur | error | | erreur
@@ -3550,11 +3785,11 @@ Vous obtiendrez les fichiers suivants :
├── libera ├── libera
│ ├── libera.weechatlog │ ├── libera.weechatlog
│ ├── #weechat.weechatlog │ ├── #weechat.weechatlog
│ └── #mychan.weechatlog │ └── #moncanal.weechatlog
├── oftc ├── oftc
│ ├── oftc.weechatlog │ ├── oftc.weechatlog
│ ├── #chan1.weechatlog │ ├── #canal1.weechatlog
│ └── #chan2.weechatlog │ └── #canal2.weechatlog
... ...
.... ....
@@ -4844,6 +5079,105 @@ Options :
include::includes/autogen_user_options.fr.adoc[tag=trigger_options] include::includes/autogen_user_options.fr.adoc[tag=trigger_options]
[[typing_plugin]]
=== Typing
L'extension typing est utilisée pour informer les autres utilisateurs quand
vous êtes en train d'écrire un message et afficher la liste des utilisateurs
qui écrivent actuellement un message sur un tampon.
Elle est utilisée par l'extension IRC sur les tampons de canaux et privés,
lorsque la capacité "message-tags" est activée (vous pouvez vérifier avec la
commande <<command_irc_cap,/cap>>). +
Sous le capot, l'étiquette client typing est utilisée, en suivant cette
spécification : https://ircv3.net/specs/client-tags/typing.html.
[[typing_activation]]
==== Activation
Pour des considérations de confidentialité, la fonctionnalité typing est
désactivée par défaut. +
Si vous voulez l'utiliser, vous devez activer des options dans les extensions
typing et irc :
----
/set typing.look.enabled_nicks on
/set typing.look.enabled_self on
/set irc.look.typing_status_nicks on
/set irc.look.typing_status_self on
----
Les notifications "typing" sont affichées à la fin de la barre de statut.
Exemple de barre de statut avec l'objet "typing" : "bob" écrit un message et
"alice" était en train d'en écrire un mais a fait une pause :
....
│[12:55] [6] [irc/libera] 3:#test(+n){4} [Écrit : bob, (alice)] │
│[@Flashy] █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[typing_signals_sent]]
==== Signaux envoyés
Lorsque vous écrivez un message (pas une commande commençant par `/`), l'extension
typing envoie des signaux pour informer les autres extensions (comme IRC) que
vous êtres en train d'écrire, et ces extensions peuvent alors envoyer des
notifications aux autres utilisateurs.
Les signaux suivants sont envoyés quand vous écrivez des messages :
[width="100%",cols="1,1,5",options="header"]
|===
| Signal | Paramètres | Description
| typing_self_typing | Pointeur : tampon. | Vous écrivez un message.
| typing_self_paused | Pointeur : tampon. | Vous avez fait une pause dans l'écriture d'un message.
| typing_self_cleared | Pointeur : tampon. | Vous avez effacé la ligne de commande sans envoyée le message.
| typing_self_sent | Pointeur : tampon. | Vous avez envoyé le message au tampon.
|===
[[typing_signals_caught]]
==== Signaux captés
L'extension typing capte des signaux qui peuvent être envoyés par d'autres
extensions (comme IRC), pour mettre à jour des tables de hachage internes
qui sont utilisées pour sauvegarder l'état d'écriture de message des pseudos
sur les tampons. Ces tables de hachages sont utilisées pour construire le
contenu de l'objet de barre "typing".
Les signaux suivants sont captés par l'extension typing :
[width="100%",cols="1,4,3",options="header"]
|===
| Signal | Paramètres | Description
| typing_set_nick |
Chaîne : pointeur tampon + ";" + état (un parmi ceux-ci : "off", "typing",
"paused", "cleared") + ";" + pseudo. +
Example: "0x1234abcd;typing;alice". |
Définir l'état de la saisie du pseudo sur le tampon.
| typing_reset_buffer |
Pointeur : tampon. |
Supprimer l'état de saisir pour tous les pseudos d'un tampon.
|===
[[typing_options]]
==== Options
Sections dans le fichier _typing.conf_ :
[width="100%",cols="3m,6m,16",options="header"]
|===
| Section | Commande de contrôle | Description
| look | /set typing.look.* | Aspect/présentation.
|===
Options :
include::includes/autogen_user_options.fr.adoc[tag=typing_options]
[[xfer_plugin]] [[xfer_plugin]]
=== Xfer === Xfer
@@ -79,6 +79,8 @@ _last_nick_speaking_time_   (pointer, hdata: "irc_channel_speaking") +
_modelists_   (pointer, hdata: "irc_modelist") + _modelists_   (pointer, hdata: "irc_modelist") +
_last_modelist_   (pointer, hdata: "irc_modelist") + _last_modelist_   (pointer, hdata: "irc_modelist") +
_join_smart_filtered_   (hashtable) + _join_smart_filtered_   (hashtable) +
_typing_state_   (integer) +
_typing_status_sent_   (time) +
_buffer_   (pointer, hdata: "buffer") + _buffer_   (pointer, hdata: "buffer") +
_buffer_as_string_   (string) + _buffer_as_string_   (string) +
_prev_channel_   (pointer, hdata: "irc_channel") + _prev_channel_   (pointer, hdata: "irc_channel") +
@@ -237,6 +239,8 @@ _sasl_scram_client_first_   (string) +
_sasl_scram_salted_pwd_   (other) + _sasl_scram_salted_pwd_   (other) +
_sasl_scram_salted_pwd_size_   (integer) + _sasl_scram_salted_pwd_size_   (integer) +
_sasl_scram_auth_message_   (string) + _sasl_scram_auth_message_   (string) +
_sasl_temp_username_   (string) +
_sasl_temp_password_   (string) +
_is_connected_   (integer) + _is_connected_   (integer) +
_ssl_connected_   (integer) + _ssl_connected_   (integer) +
_disconnected_   (integer) + _disconnected_   (integer) +
@@ -267,6 +271,10 @@ _chantypes_   (string) +
_chanmodes_   (string) + _chanmodes_   (string) +
_monitor_   (integer) + _monitor_   (integer) +
_monitor_time_   (time) + _monitor_time_   (time) +
_clienttagdeny_   (string) +
_clienttagdeny_count_   (integer) +
_clienttagdeny_array_   (string, array_size: "clienttagdeny_count") +
_typing_allowed_   (integer) +
_reconnect_delay_   (integer) + _reconnect_delay_   (integer) +
_reconnect_start_   (time) + _reconnect_start_   (time) +
_command_time_   (time) + _command_time_   (time) +
@@ -8,7 +8,7 @@
|=== |===
| Plugin | Nome | Descrizione | Tabella hash (input) | Tabella hash (output) | Plugin | Nome | Descrizione | Tabella hash (input) | Tabella hash (output)
| irc | irc_message_parse | controlla un messaggio IRC | "message": messaggio IRC, "server": nome server (opzionale) | "tags": tags, "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found) | irc | irc_message_parse | controlla un messaggio IRC | "message": messaggio IRC, "server": nome server (opzionale) | "tags": tags, "tag_xxx": unescaped value of tag "xxx" (one key per tag), "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
| irc | irc_message_split | split an IRC message (to fit in 512 bytes by default) | "message": messaggio IRC, "server": nome server (opzionale) | "msg1" ... "msgN": messaggio da inviare (senza "\r\n" finale), "args1" ... "argsN": argomenti dei messaggi, "count": numero di messaggi | irc | irc_message_split | split an IRC message (to fit in 512 bytes by default) | "message": messaggio IRC, "server": nome server (opzionale) | "msg1" ... "msgN": messaggio da inviare (senza "\r\n" finale), "args1" ... "argsN": argomenti dei messaggi, "count": numero di messaggi
@@ -4,18 +4,26 @@
// //
// tag::plugins_priority[] // tag::plugins_priority[]
. charset (15000) . charset (16000)
. logger (14000) . logger (15000)
. exec (13000) . exec (14000)
. trigger (12000) . trigger (13000)
. spell (11000) . spell (12000)
. alias (10000) . alias (11000)
. buflist (9000) . buflist (10000)
. fifo (8000) . fifo (9000)
. typing (8000)
. xfer (7000) . xfer (7000)
. irc (6000) . irc (6000)
. relay (5000) . relay (5000)
. guile, javascript, lua, perl, php, python, ruby, tcl (4000) . guile (4007)
. javascript (4006)
. lua (4005)
. perl (4004)
. php (4003)
. python (4002)
. ruby (4001)
. tcl (4000)
. script (3000) . script (3000)
. fset (2000) . fset (2000)
// end::plugins_priority[] // end::plugins_priority[]
+146 -62
View File
@@ -17,10 +17,11 @@ destinazione: nome server
* `+allchan+`: esegue un comando su tutti i canali di tutti i server connessi * `+allchan+`: esegue un comando su tutti i canali di tutti i server connessi
---- ----
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command> /allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
[-current] -include=<channel>[,<channel>...] <command> [-current] [-parted] -include=<channel>[,<channel>...] <command>
-current: execute command for channels of current server only -current: execute command for channels of current server only
-parted: execute on parted channels only
-exclude: exclude some channels (wildcard "*" is allowed) -exclude: exclude some channels (wildcard "*" is allowed)
-include: include only some channels (wildcard "*" is allowed) -include: include only some channels (wildcard "*" is allowed)
command: command to execute (or text to send to buffer if command does not start with '/') command: command to execute (or text to send to buffer if command does not start with '/')
@@ -41,6 +42,8 @@ Examples:
/allchan -exclude=#weechat,#linux* hello /allchan -exclude=#weechat,#linux* hello
say 'hello' on all channels beginning with #linux: say 'hello' on all channels beginning with #linux:
/allchan -include=#linux* hello /allchan -include=#linux* hello
close all buffers with parted channels:
/allchan -parted /close
---- ----
[[command_irc_allpv]] [[command_irc_allpv]]
@@ -100,6 +103,26 @@ Examples:
/allserv /whois $nick /allserv /whois $nick
---- ----
[[command_irc_auth]]
* `+auth+`: authenticate with SASL
----
/auth [<username> <password>]
username: SASL username (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
password: SASL password or path to file with private key (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
If username and password are not provided, the values from server options "sasl_username" and "sasl_password" (or "sasl_key") are used.
Examples:
authenticate with username/password defined in the server:
/auth
authenticate as a different user:
/auth user2 password2
authenticate as a different user with mechanism ecdsa-nist256p-challenge:
/auth user2 ${weechat_config_dir}/ecdsa2.pem
----
[[command_irc_ban]] [[command_irc_ban]]
* `+ban+`: banna nick oppure host * `+ban+`: banna nick oppure host
@@ -129,7 +152,7 @@ Without argument, this command displays the ban list for current channel.
Without argument, "ls" and "list" are sent. Without argument, "ls" and "list" are sent.
Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names. Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities). The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities).
@@ -808,6 +831,15 @@ mask: elenca solo i servizi che corrispondono a questa mask
tipo: elenca solo i servizi di questo tipo tipo: elenca solo i servizi di questo tipo
---- ----
[[command_irc_setname]]
* `+setname+`: set real name
----
/setname <realname>
realname: new real name
----
[[command_irc_squery]] [[command_irc_squery]]
* `+squery+`: invia un messaggio ad un servizio * `+squery+`: invia un messaggio ad un servizio
@@ -1271,7 +1303,7 @@ Examples:
/debug list /debug list
set <plugin> <level> set <plugin> <level>
dump [<plugin>] dump [<plugin>]
buffer|color|infolists|memory|tags|term|windows buffer|color|infolists|libs|certs|memory|tags|term|windows
mouse|cursor [verbose] mouse|cursor [verbose]
hdata [free] hdata [free]
time <command> time <command>
@@ -1289,6 +1321,7 @@ Examples:
hooks: display infos about hooks hooks: display infos about hooks
infolists: display infos about infolists infolists: display infos about infolists
libs: display infos about external libraries used libs: display infos about external libraries used
certs: display number of loaded trusted certificate authorities
memory: display infos about memory usage memory: display infos about memory usage
mouse: toggle debug for mouse mouse: toggle debug for mouse
tags: display tags for lines tags: display tags for lines
@@ -1342,27 +1375,32 @@ To force a string comparison, you can add double quotes around each expression,
Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority: Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
1. the string itself without evaluation (format: "raw:xxx") 1. the string itself without evaluation (format: "raw:xxx")
2. an evaluated sub-string (format: "eval:xxx") 2. a user-defined variable (format: "name")
3. an evaluated condition (format: "eval_cond:xxx") 3. an evaluated sub-string (format: "eval:xxx")
4. a string with escaped chars (format: "esc:xxx" or "\xxx") 4. an evaluated condition (format: "eval_cond:xxx")
5. a string with chars to hide (format: "hide:char,string") 5. a string with escaped chars (format: "esc:xxx" or "\xxx")
6. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string") 6. a string with chars to hide (format: "hide:char,string")
7. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string") or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
7. a reversed string (format: "rev:xxx" or "revscr:xxx") 8. a reversed string (format: "rev:xxx" or "revscr:xxx")
8. a repeated string (format: "repeat:count,string") 9. a repeated string (format: "repeat:count,string")
9. length of a string (format: "length:xxx" or "lengthscr:xxx") 10. length of a string (format: "length:xxx" or "lengthscr:xxx")
10. a color (format: "color:xxx", see "Plugin API reference", function "color") 11. split of a string (format: "split:number,separators,flags,xxx")
11. a modifier (format: "modifier:name,data,string") 12. split of shell argmuents (format: "split_shell:number,xxx")
12. an info (format: "info:name,arguments", arguments are optional) 13. a color (format: "color:xxx", see "Plugin API reference", function "color")
13. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx") 14. a modifier (format: "modifier:name,data,string")
14. current date/time (format: "date" or "date:format") 15. an info (format: "info:name,arguments", arguments are optional)
15. an environment variable (format: "env:XXX") 16. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
16. a ternary operator (format: "if:condition?value_if_true:value_if_false") 17. current date/time (format: "date" or "date:format")
17. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx") 18. an environment variable (format: "env:XXX")
18. a translated string (format: "translate:xxx") 19. a ternary operator (format: "if:condition?value_if_true:value_if_false")
19. an option (format: "file.section.option") 20. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
20. a local variable in buffer 21. a random integer number (format: "random:min,max")
21. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer. 22. a translated string (format: "translate:xxx")
23. define a user variable (format: "define:name,value")
24. an option (format: "file.section.option")
25. a local variable in buffer
26. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
Format for hdata can be one of following: Format for hdata can be one of following:
hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed) hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example: hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example:
@@ -1374,29 +1412,39 @@ Format for hdata can be one of following:
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get". For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".
Examples (simple strings): Examples (simple strings):
/eval -n ${raw:${info:version}} ==> ${info:version} /eval -n ${raw:${info:version}} ==> ${info:version}
/eval -n ${eval_cond:${window.win_width}>100} ==> 1 /eval -n ${eval_cond:${window.win_width}>100} ==> 1
/eval -n ${info:version} ==> 0.4.3 /eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user /eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3 /eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.password} ==> secret /eval -n ${sec.data.password} ==> secret
/eval -n ${window} ==> 0x2549aa0 /eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320 /eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat /eval -n ${window.buffer.full_name} ==> core.weechat
/eval -n ${window.buffer.number} ==> 1 /eval -n ${window.buffer.number} ==> 1
/eval -n ${\t} ==> <tab> /eval -n ${\t} ==> <tab>
/eval -n ${hide:-,${relay.network.password}} ==> -------- /eval -n ${hide:-,${relay.network.password}} ==> --------
/eval -n ${cut:3,+,test} ==> tes+ /eval -n ${cut:3,+,test} ==> tes+
/eval -n ${cut:+3,+,test} ==> te+ /eval -n ${cut:+3,+,test} ==> te+
/eval -n ${date:%H:%M:%S} ==> 07:46:40 /eval -n ${date:%H:%M:%S} ==> 07:46:40
/eval -n ${if:${info:term_width}>80?big:small} ==> big /eval -n ${if:${info:term_width}>80?big:small} ==> big
/eval -n ${rev:Hello} ==> olleH /eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> ----- /eval -n ${repeat:5,-} ==> -----
/eval -n ${length:test} ==> 4 /eval -n ${length:test} ==> 4
/eval -n ${calc:(5+2)*3} ==> 21 /eval -n ${split:1,,,abc,def,ghi} ==> abc
/eval -n ${base_encode:64,test} ==> dGVzdA== /eval -n ${split:-1,,,abc,def,ghi} ==> ghi
/eval -n ${base_decode:64,dGVzdA==} ==> test /eval -n ${split:count,,,abc,def,ghi} ==> 3
/eval -n ${translate:Plugin} ==> Extension /eval -n ${split:random,,,abc,def,ghi} ==> def
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
/eval -n ${calc:(5+2)*3} ==> 21
/eval -n ${random:0,10} ==> 3
/eval -n ${base_encode:64,test} ==> dGVzdA==
/eval -n ${base_decode:64,dGVzdA==} ==> test
/eval -n ${translate:Plugin} ==> Extension
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
Examples (conditions): Examples (conditions):
/eval -n -c ${window.buffer.number} > 2 ==> 0 /eval -n -c ${window.buffer.number} > 2 ==> 0
@@ -1549,6 +1597,9 @@ list of actions:
jump_previously_visited_buffer: jump to previously visited buffer jump_previously_visited_buffer: jump to previously visited buffer
jump_next_visited_buffer: jump to next visited buffer jump_next_visited_buffer: jump to next visited buffer
hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight) hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight)
hotlist_remove_buffer: remove current buffer from hotlist
hotlist_restore_buffer: restore latest hotlist removed in the current buffer
hotlist_restore_all: restore latest hotlist removed in all buffers
grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds) grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds) grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
grab_mouse: grab mouse event code grab_mouse: grab mouse event code
@@ -1644,6 +1695,8 @@ windows: store/apply only windows (buffer displayed by each window)
Without argument, this command displays stored layouts. Without argument, this command displays stored layouts.
The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit". The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit".
Note: the layout only remembers windows split and buffers numbers. It does not open buffers. That means for example you must still auto-join IRC channels to open the buffers, the saved layout only applies once the buffers are opened.
---- ----
[[command_weechat_mouse]] [[command_weechat_mouse]]
@@ -1693,23 +1746,28 @@ Examples:
* `+plugin+`: elenca/carica/scarica plugin * `+plugin+`: elenca/carica/scarica plugin
---- ----
/plugin list|listfull [<nome>] /plugin list [-o|-ol|-i|-il|<name>]
load <nome_file> [<argomenti>] listfull [<name>]
autoload [<argomenti>] load <filename> [<arguments>]
reload [<nome>|* [<argomenti>]] autoload [<arguments>]
unload [<nome>] reload [<name>|* [<arguments>]]
unload [<name>]
list: elenca i plugin caricati list: list loaded plugins
listfull: elenca i plugin caricati (dettagliato) -o: send list of loaded plugins to buffer (string in English)
load: carica un plugin -ol: send list of loaded plugins to buffer (translated string)
autoload: carica automaticamente un plugin nella directory di sistema o utente -i: copy list of loaded plugins in command line (for sending to buffer) (string in English)
reload: ricarica un plugin (se non specificato, scarica e poi ricarica tutti i plugin) -il: copy list of loaded plugins in command line (for sending to buffer) (translated string)
unload: scarica un plugin (se non specificato, scarica tutti i plugin name: a plugin name
nomefile: plugin (file) da caricare listfull: list loaded plugins (verbose)
nome: nome di un plugin load: load a plugin
argomenti: argomenti passati al plugin durante il caricamento filename: plugin (file) to load
arguments: arguments given to plugin on load
autoload: autoload plugins in system or user directory
reload: reload a plugin (if no name given, unload all plugins, then autoload plugins)
unload: unload a plugin (if no name given, unload all plugins)
Senza argomento, questo comando elenca i plugin caricati. Without argument, this command lists loaded plugins.
---- ----
[[command_weechat_print]] [[command_weechat_print]]
@@ -1935,6 +1993,32 @@ Examples:
/set env ABC "" /set env ABC ""
---- ----
[[command_weechat_toggle]]
* `+toggle+`: toggle value of a config option
----
/toggle <option> [<value> [<value>...]]
option: name of an option
value: possible values for the option (values are split like the shell command arguments: quotes can be used to preserve spaces at the beginning/end of values)
Behavior:
- only an option of type boolean or string can be toggled without a value:
- boolean: toggle between on/off according to current value
- string: toggle between empty string and default value (works only if empty string is allowed for the option)
- with a single value given, toggle between this value and the default value of option
- with multiple values given, toggle between these values: the value used is the one following the current value of option; if the current value of option is not in list, the first value in the list is used
- the special value "null" can be given, but only as first value in the list and without quotes around.
Examples:
toggle display of time in chat area (without displaying the new value used):
/mute /toggle weechat.look.buffer_time_format
switch format of time in chat area (with seconds, without seconds, disabled):
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
toggle autojoin of #weechat channel on libera server:
/toggle irc.server.libera.autojoin null #weechat
----
[[command_weechat_unset]] [[command_weechat_unset]]
* `+unset+`: annulla/ripristina opzione * `+unset+`: annulla/ripristina opzione
+119 -51
View File
@@ -1845,6 +1845,50 @@
** valore predefinito: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+` ** valore predefinito: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
// end::fifo_options[] // end::fifo_options[]
// tag::typing_options[]
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
** descrizione: pass:none[number of seconds after paused status has been set: if reached, the typing status is removed]
** tipo: intero
** valori: 1 .. 2147483647
** valore predefinito: `+30+`
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
** descrizione: pass:none[number of seconds after typing status has been set: if reached, the typing status is removed]
** tipo: intero
** valori: 1 .. 2147483647
** valore predefinito: `+6+`
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
** descrizione: pass:none[number of seconds after typing last char: if reached, the typing status becomes "paused" and no more typing signals are sent]
** tipo: intero
** valori: 1 .. 2147483647
** valore predefinito: `+10+`
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
** descrizione: pass:none[typing enabled for other nicks (display typing info for nicks typing in the current buffer)]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
** descrizione: pass:none[typing enabled for self messages (send typing info to other users)]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
** descrizione: pass:none[min number of chars in message to trigger send of typing signals]
** tipo: intero
** valori: 1 .. 2147483647
** valore predefinito: `+4+`
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
** descrizione: pass:none[max number of chars displayed in the bar item "typing" (0 = do not truncate content)]
** tipo: intero
** valori: 0 .. 2147483647
** valore predefinito: `+0+`
// end::typing_options[]
// tag::xfer_options[] // tag::xfer_options[]
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted* * [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
** descrizione: pass:none[colore del testo per lo status "annullato"] ** descrizione: pass:none[colore del testo per lo status "annullato"]
@@ -2214,6 +2258,12 @@
** valori: qualsiasi stringa ** valori: qualsiasi stringa
** valore predefinito: `+"%a, %d %b %Y %T %z"+` ** valore predefinito: `+"%a, %d %b %Y %T %z"+`
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
** descrizione: pass:none[display ACCOUNT messages received when capability account-notify is enabled]
** tipo: bool
** valori: on, off
** valore predefinito: `+on+`
* [[option_irc.look.display_away]] *irc.look.display_away* * [[option_irc.look.display_away]] *irc.look.display_away*
** descrizione: pass:none[mostra messaggio quando (non) si risulta assenti (off: non mostra/invia nulla, local: mostra localmente, channel: invia azioni ai canali)] ** descrizione: pass:none[mostra messaggio quando (non) si risulta assenti (off: non mostra/invia nulla, local: mostra localmente, channel: invia azioni ai canali)]
** tipo: intero ** tipo: intero
@@ -2238,6 +2288,12 @@
** valori: on, off ** valori: on, off
** valore predefinito: `+on+` ** valore predefinito: `+on+`
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
** descrizione: pass:none[display extra information in the JOIN messages: account name and real name (capability extended-join must be enabled)]
** tipo: bool
** valori: on, off
** valore predefinito: `+on+`
* [[option_irc.look.display_host_join]] *irc.look.display_host_join* * [[option_irc.look.display_host_join]] *irc.look.display_host_join*
** descrizione: pass:none[visualizza l'host nei messaggi di entrata] ** descrizione: pass:none[visualizza l'host nei messaggi di entrata]
** tipo: bool ** tipo: bool
@@ -2508,6 +2564,18 @@
** valori: on, off ** valori: on, off
** valore predefinito: `+off+` ** valore predefinito: `+off+`
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
** descrizione: pass:none[display nicks typing on the channel in bar item "typing" (option typing.look.enabled_nicks must be enabled and capability "message-tags" must be enabled on the server)]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
** descrizione: pass:none[send self typing status to channels so that other users see when you are typing a message (option typing.look.enabled_self must be enabled and capability "message-tags" must be enabled on the server)]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing* * [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
** descrizione: pass:none[growing factor for autoreconnect delay to server (1 = always same delay, 2 = delay*2 for each retry, etc.)] ** descrizione: pass:none[growing factor for autoreconnect delay to server (1 = always same delay, 2 = delay*2 for each retry, etc.)]
** tipo: intero ** tipo: intero
@@ -2665,10 +2733,10 @@
** valore predefinito: `+25+` ** valore predefinito: `+25+`
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
** descrizione: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")] ** descrizione: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat); "*" enables all capabilities by default (supported by both server and WeeChat); wildcard "*" is allowed; a capability beginning with "!" is excluded (example: "*,!account-*,!extended-join")]
** tipo: stringa ** tipo: stringa
** valori: qualsiasi stringa ** valori: qualsiasi stringa
** valore predefinito: `+""+` ** valore predefinito: `+"*"+`
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message* * [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
** descrizione: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)] ** descrizione: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)]
@@ -2770,7 +2838,7 @@
** descrizione: pass:none[action to perform if SASL authentication fails: "continue" to ignore the authentication problem, "reconnect" to schedule a reconnection to the server, "disconnect" to disconnect from server (see also option irc.network.sasl_fail_unavailable)] ** descrizione: pass:none[action to perform if SASL authentication fails: "continue" to ignore the authentication problem, "reconnect" to schedule a reconnection to the server, "disconnect" to disconnect from server (see also option irc.network.sasl_fail_unavailable)]
** tipo: intero ** tipo: intero
** valori: continue, reconnect, disconnect ** valori: continue, reconnect, disconnect
** valore predefinito: `+continue+` ** valore predefinito: `+reconnect+`
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key* * [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
** descrizione: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)] ** descrizione: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)]
@@ -2779,9 +2847,9 @@
** valore predefinito: `+""+` ** valore predefinito: `+""+`
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism* * [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
** descrizione: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL cert, "dh-blowfish" for blowfish crypted password (insecure, not recommended), "dh-aes" for AES crypted password (insecure, not recommended)] ** descrizione: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL certificate]
** tipo: intero ** tipo: intero
** valori: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes ** valori: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
** valore predefinito: `+plain+` ** valore predefinito: `+plain+`
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password* * [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
@@ -3075,34 +3143,6 @@
** valore predefinito: `+""+` ** valore predefinito: `+""+`
// end::relay_options[] // end::relay_options[]
// tag::javascript_options[]
* [[option_javascript.look.check_license]] *javascript.look.check_license*
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** tipo: bool
** valori: on, off
** valore predefinito: `+on+`
// end::javascript_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** tipo: bool
** valori: on, off
** valore predefinito: `+on+`
// end::ruby_options[]
// tag::guile_options[] // tag::guile_options[]
* [[option_guile.look.check_license]] *guile.look.check_license* * [[option_guile.look.check_license]] *guile.look.check_license*
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed] ** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
@@ -3117,19 +3157,33 @@
** valore predefinito: `+on+` ** valore predefinito: `+on+`
// end::guile_options[] // end::guile_options[]
// tag::tcl_options[] // tag::javascript_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license* * [[option_javascript.look.check_license]] *javascript.look.check_license*
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed] ** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** tipo: bool ** tipo: bool
** valori: on, off ** valori: on, off
** valore predefinito: `+off+` ** valore predefinito: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context* * [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower] ** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** tipo: bool ** tipo: bool
** valori: on, off ** valori: on, off
** valore predefinito: `+on+` ** valore predefinito: `+on+`
// end::tcl_options[] // end::javascript_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** tipo: bool
** valori: on, off
** valore predefinito: `+on+`
// end::lua_options[]
// tag::perl_options[] // tag::perl_options[]
* [[option_perl.look.check_license]] *perl.look.check_license* * [[option_perl.look.check_license]] *perl.look.check_license*
@@ -3159,20 +3213,6 @@
** valore predefinito: `+on+` ** valore predefinito: `+on+`
// end::php_options[] // end::php_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** tipo: bool
** valori: on, off
** valore predefinito: `+on+`
// end::lua_options[]
// tag::python_options[] // tag::python_options[]
* [[option_python.look.check_license]] *python.look.check_license* * [[option_python.look.check_license]] *python.look.check_license*
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed] ** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
@@ -3187,6 +3227,34 @@
** valore predefinito: `+on+` ** valore predefinito: `+on+`
// end::python_options[] // end::python_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** tipo: bool
** valori: on, off
** valore predefinito: `+on+`
// end::ruby_options[]
// tag::tcl_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license*
** descrizione: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
** tipo: bool
** valori: on, off
** valore predefinito: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
** descrizione: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
** tipo: bool
** valori: on, off
** valore predefinito: `+on+`
// end::tcl_options[]
// tag::script_options[] // tag::script_options[]
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded* * [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
** descrizione: pass:none[colore per lo status "caricato automaticamente" ("a")] ** descrizione: pass:none[colore per lo status "caricato automaticamente" ("a")]
+3
View File
@@ -88,6 +88,9 @@ $HOME/.config/weechat/tcl.conf::
$HOME/.config/weechat/trigger.conf:: $HOME/.config/weechat/trigger.conf::
configuration file for _trigger_ plugin configuration file for _trigger_ plugin
$HOME/.config/weechat/typing.conf::
configuration file for _typing_ plugin
$HOME/.config/weechat/xfer.conf:: $HOME/.config/weechat/xfer.conf::
configuration file for _xfer_ plugin configuration file for _xfer_ plugin
+1 -1
View File
@@ -579,7 +579,7 @@ You can just disable bracketed paste mode:
// TRANSLATION MISSING // TRANSLATION MISSING
You can remove side bars (buflist and nicklist), change time format to display You can remove side bars (buflist and nicklist), change time format to display
only hours and seconds, disable alignment of messages and set a char for nick only hours and minutes, disable alignment of messages and set a char for nick
prefix/suffix: prefix/suffix:
---- ----
File diff suppressed because it is too large Load Diff
+13 -6
View File
@@ -1340,6 +1340,11 @@ The result is a hashtable with following keys
The tags in message (can be empty). | The tags in message (can be empty). |
`+time=2015-06-27T16:40:35.000Z+` `+time=2015-06-27T16:40:35.000Z+`
// TRANSLATION MISSING
| tag_xxx | 3.3 |
Unescaped value of tag "xxx" (one key per tag). |
`+2015-06-27T16:40:35.000Z+`
| message_without_tags | 0.4.0 | | message_without_tags | 0.4.0 |
The message without the tags (the same as message if there are no tags). | The message without the tags (the same as message if there are no tags). |
`+:nick!user@host PRIVMSG #weechat :hello!+` `+:nick!user@host PRIVMSG #weechat :hello!+`
@@ -1398,10 +1403,12 @@ The result is a hashtable with following keys
---- ----
dict = weechat.info_get_hashtable( dict = weechat.info_get_hashtable(
"irc_message_parse", "irc_message_parse",
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"}) {"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
# dict == { # dict == {
# "tags": "time=2015-06-27T16:40:35.000Z", # "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
# "tag_time": "2015-06-27T16:40:35.000Z",
# "tag_tag2": "value space",
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!", # "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
# "nick": "nick", # "nick": "nick",
# "user": "user", # "user": "user",
@@ -1410,10 +1417,10 @@ dict = weechat.info_get_hashtable(
# "channel": "#weechat", # "channel": "#weechat",
# "arguments": "#weechat :hello!", # "arguments": "#weechat :hello!",
# "text": "hello!", # "text": "hello!",
# "pos_command": "47", # "pos_command": "65",
# "pos_arguments": "55", # "pos_arguments": "73",
# "pos_channel": "55", # "pos_channel": "73",
# "pos_text": "65", # "pos_text": "83",
# } # }
---- ----
+358 -25
View File
@@ -211,13 +211,13 @@ $ make install
---- ----
// TRANSLATION MISSING // TRANSLATION MISSING
Options can be used for CMake, with format: "-DOPTION=VALUE". Options can be used for CMake, with format: `-DOPTION=VALUE`.
// TRANSLATION MISSING // TRANSLATION MISSING
List of commonly used options: List of commonly used options:
// TRANSLATION MISSING // TRANSLATION MISSING
[width="100%",cols="2m,2,5m,12",options="header"] [width="100%",cols="3m,3,3m,10",options="header"]
|=== |===
| Option | Values | Default value | Description | Option | Values | Default value | Description
@@ -322,6 +322,9 @@ List of commonly used options:
| ENABLE_TRIGGER | `ON`, `OFF` | ON | | ENABLE_TRIGGER | `ON`, `OFF` | ON |
Compile <<trigger_plugin,Trigger plugin>>. Compile <<trigger_plugin,Trigger plugin>>.
| ENABLE_TYPING | `ON`, `OFF` | ON |
Compile <<typing_plugin,Typing plugin>>.
| ENABLE_XFER | `ON`, `OFF` | ON | | ENABLE_XFER | `ON`, `OFF` | ON |
Compile <<xfer_plugin,Xfer plugin>>. Compile <<xfer_plugin,Xfer plugin>>.
@@ -789,6 +792,7 @@ The files in the WeeChat home directory are:
| spell.conf | Configuration file for _spell_ plugin | No. | spell.conf | Configuration file for _spell_ plugin | No.
| tcl.conf | Configuration file for _tcl_ plugin | No. | tcl.conf | Configuration file for _tcl_ plugin | No.
| trigger.conf | Configuration file for _trigger_ plugin | Possible, depends on triggers. | trigger.conf | Configuration file for _trigger_ plugin | Possible, depends on triggers.
| typing.conf | Configuration file for _typing_ plugin | No.
| xfer.conf | Configuration file for _xfer_ plugin | No. | xfer.conf | Configuration file for _xfer_ plugin | No.
| weechat.log | WeeChat log file | No. | weechat.log | WeeChat log file | No.
|=== |===
@@ -838,7 +842,8 @@ Esempio di terminale con WeeChat:
▲ bars "status" and "input" bar "nicklist" ▲ ▲ bars "status" and "input" bar "nicklist" ▲
.... ....
Lo schermo è composto dalle seguenti aree: // TRANSLATION MISSING
By default, the screen is divided up into the following areas:
* area di chat (centro dello schermo) con le righe di chat, e per ogni riga: * area di chat (centro dello schermo) con le righe di chat, e per ogni riga:
** ora ** ora
@@ -944,6 +949,14 @@ Other items available (not used in bars by default):
| window_number | `2` | Current window number. | window_number | `2` | Current window number.
|=== |===
// TRANSLATION MISSING
Each aspect of the layout can be customized with the appropriate <<command_line,command>>:
<<command_weechat_bar,`/bar`>> to customize the bars,
<<command_weechat_buffer,/buffer>> and <<command_weechat_window,`/window`>>
to customize <<buffers_and_windows,buffers and windows>>,
and <<command_weechat_layot,/layout>> to name, save and restore the screen layout
and the association between windows and buffers.
[[command_line]] [[command_line]]
=== Riga di comando === Riga di comando
@@ -1197,12 +1210,23 @@ Esempi di buffer:
* canale irc * canale irc
* query irc * query irc
// TRANSLATION MISSING
Una _finestra_ (o window) è un'area dello schermo in cui viene visualizzato Una _finestra_ (o window) è un'area dello schermo in cui viene visualizzato
un buffer. È possibile dividere lo schermo in più finestre. un buffer. È possibile dividere lo schermo in più finestre (examples
<<window_split_examples,below>>, see the <<command_weechat_window,/window command>>
for details).
Ogni finestra visualizza un buffer. Un buffer può essere nascosto (non visualizzato Ogni finestra visualizza un buffer. Un buffer può essere nascosto (non visualizzato
da una finestra) o visualizzato da una o più finestre. da una finestra) o visualizzato da una o più finestre.
// TRANSLATION MISSING
Screen layouts and the association between windows and buffers can be
<<command_weechat_layout,saved and restored>>.
// TRANSLATION MISSING
[[window_split_examples]]
==== Examples
Esempio di split orizzontale (`/window splith`): Esempio di split orizzontale (`/window splith`):
// TRANSLATION MISSING // TRANSLATION MISSING
@@ -2094,7 +2118,18 @@ with `+/script install buffer_autoset.py+` and get help with `+/help buffer_auto
| kbd:[Alt+a] | Passa al buffer successivo con attività (con priorità: highligh, messagge, altro). | `+/input jump_smart+` | kbd:[Alt+a] | Passa al buffer successivo con attività (con priorità: highligh, messagge, altro). | `+/input jump_smart+`
// TRANSLATION MISSING // TRANSLATION MISSING
| kbd:[Alt+Shift+B] | Toggle buflist. | `+/buflist toggle+` | kbd:[Alt+Shift+B] | Toggle buflist. | `+/buflist toggle+`
| kbd:[Alt+h] | Pulisce hotlist (notifica di attività su altri buffer). | `+/input hotlist_clear+` // TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+c] | Clear hotlist (activity notification on buffers). | `+/input hotlist_clear+`
// TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+m] | Remove current buffer from hotlist. | `+/input hotlist_remove_buffer+`
// TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+r] | Restore latest hotlist removed in the current buffer. | `+/input hotlist_restore_buffer+`
// TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+Shift+R] | Restore latest hotlist removed in all buffers. | `+/input hotlist_restore_all+`
// TRANSLATION MISSING // TRANSLATION MISSING
| kbd:[Alt+j], | kbd:[Alt+j],
kbd:[Alt+f] | Switch to first buffer. | `+/buffer -+` kbd:[Alt+f] | Switch to first buffer. | `+/buffer -+`
@@ -2400,7 +2435,7 @@ pulsante/rotellina e un'azione (opzionale). Elementi diversi sono separati da `+
Elenco di modificatori Elenco di modificatori
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Modificatore | Descrizione | Modificatore | Descrizione
| ctrl | Tasto kbd:[Ctrl] | ctrl | Tasto kbd:[Ctrl]
@@ -2410,7 +2445,7 @@ Elenco di modificatori
Elenco di pulsanti/rotellina: Elenco di pulsanti/rotellina:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Pulsante/rotellina | Descrizione | Pulsante/rotellina | Descrizione
| button1 | Click sul tasto sinistro | button1 | Click sul tasto sinistro
@@ -2423,7 +2458,7 @@ Elenco di pulsanti/rotellina:
Elenco di azioni (solo per i pulsanti, non la rotellina): Elenco di azioni (solo per i pulsanti, non la rotellina):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Azione | Distanza | Azione | Distanza
| gesture-up | 3 ... 19 | gesture-up | 3 ... 19
@@ -2439,7 +2474,7 @@ Elenco di azioni (solo per i pulsanti, non la rotellina):
// TRANSLATION MISSING // TRANSLATION MISSING
List of incomplete events (only for buttons, useful for plugins/scripts): List of incomplete events (only for buttons, useful for plugins/scripts):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Event | Description | Event | Description
| event-down | Button was pressed but not released yet | event-down | Button was pressed but not released yet
@@ -2704,6 +2739,8 @@ I plugin predefiniti sono:
| spell | Controllo ortografico per la riga di comando. | spell | Controllo ortografico per la riga di comando.
// TRANSLATION MISSING // TRANSLATION MISSING
| trigger | Text replacement and command execution on events triggered by WeeChat/plugins. | trigger | Text replacement and command execution on events triggered by WeeChat/plugins.
// TRANSLATION MISSING
| typing | Display users currently writing messages.
| xfer | Trasferimento file e chat diretta. | xfer | Trasferimento file e chat diretta.
|=== |===
@@ -3053,15 +3090,131 @@ trasferimento file (tramite plugin xfer, consultare <<xfer_plugin,plugin Xfer>>)
irc[6][s]://[nick[:password]@]irc.esempio.org[:porta][/#canale][,#canale[...]] irc[6][s]://[nick[:password]@]irc.esempio.org[:porta][/#canale][,#canale[...]]
---- ----
Esempio per entrare in _#weechat_ e _#tizio_ sul server _irc.libera.chat_, Esempio per entrare in _#weechat_ e _#weechat-fr_ sul server _irc.libera.chat_,
porta predefinita (6667), con il nick _caio_: porta predefinita (6667), con il nick _alice_:
---- ----
$ weechat irc://caio@irc.libera.chat/#weechat,#tizio $ weechat irc://alice@irc.libera.chat/#weechat,#weechat-fr
----
// TRANSLATION MISSING
[[irc_servers]]
==== Servers
[[irc_servers_add]]
===== Add a server
By default no servers are defined. You can add as many servers as you want with
the <<command_irc_server,/server>> command.
For example to connect to https://libera.chat/[libera.chat] with SSL (encrypted trafic):
----
/server add libera irc.libera.chat/6697 -ssl
----
You can tell WeeChat to auto-connect to this server on startup:
----
/set irc.server.libera.autoconnect on
----
To authenticate, it is recommended to use SASL (if supported on the server),
with the password stored as secured data (see also chapter on
<<irc_sasl_authentication,SASL authentication>>):
----
/set irc.server.libera.sasl_username "alice"
/secure set libera xxxxxxx
/set irc.server.libera.sasl_password "${sec.data.libera}"
----
If SASL is not supported, you can use a command to send a message to nickserv:
----
/set irc.server.libera.command "/msg nickserv identify ${sec.data.libera}"
----
[NOTE]
By sending a message to nickserv, you may authenticate after joining channels
which could be a problem on some channels requiring you to be authenticated
to join. In this case, you can set a command delay:
`/set irc.server.libera.command_delay 5`.
[[irc_servers_options]]
===== Server options
Server options are named `irc.server.<server>.<option>` where `<server>` is the
internal name of the server and `<option>` the name of an option. +
The value of a server option is inherited from `irc.server_default.xxx`
if the server option has the special value `null`.
For example if you created the _libera_ server with the commands above, you'll
see this with the command `/fset libera`:
....
irc.server.libera.addresses string "irc.libera.chat/6697"
irc.server.libera.anti_flood_prio_high integer null -> 2
irc.server.libera.anti_flood_prio_low integer null -> 2
irc.server.libera.autoconnect boolean on
irc.server.libera.autojoin string null -> ""
irc.server.libera.autoreconnect boolean null -> on
irc.server.libera.autoreconnect_delay integer null -> 10
irc.server.libera.autorejoin boolean null -> off
irc.server.libera.autorejoin_delay integer null -> 30
irc.server.libera.away_check integer null -> 0
irc.server.libera.away_check_max_nicks integer null -> 25
irc.server.libera.capabilities string null -> "*"
irc.server.libera.charset_message integer null -> message
irc.server.libera.command string null -> ""
irc.server.libera.command_delay integer null -> 0
irc.server.libera.connection_timeout integer null -> 60
irc.server.libera.default_chantypes string null -> "#&"
irc.server.libera.ipv6 boolean null -> on
irc.server.libera.local_hostname string null -> ""
irc.server.libera.msg_kick string null -> ""
irc.server.libera.msg_part string null -> "WeeChat ${info:version}"
irc.server.libera.msg_quit string null -> "WeeChat ${info:version}"
irc.server.libera.nicks string null -> "alice,alice1,alice2,alice3,alice4"
irc.server.libera.nicks_alternate boolean null -> on
irc.server.libera.notify string null -> ""
irc.server.libera.password string null -> ""
irc.server.libera.proxy string null -> ""
irc.server.libera.realname string null -> ""
irc.server.libera.sasl_fail integer null -> reconnect
irc.server.libera.sasl_key string null -> ""
irc.server.libera.sasl_mechanism integer null -> plain
irc.server.libera.sasl_password string "${sec.data.libera}"
irc.server.libera.sasl_timeout integer null -> 15
irc.server.libera.sasl_username string "alice"
irc.server.libera.split_msg_max_length integer null -> 512
irc.server.libera.ssl boolean on
irc.server.libera.ssl_cert string null -> ""
irc.server.libera.ssl_dhkey_size integer null -> 2048
irc.server.libera.ssl_fingerprint string null -> ""
irc.server.libera.ssl_password string null -> ""
irc.server.libera.ssl_priorities string null -> "NORMAL:-VERS-SSL3.0"
irc.server.libera.ssl_verify boolean null -> on
irc.server.libera.usermode string null -> ""
irc.server.libera.username string null -> "alice"
....
For example if you want to automatically connect to all servers you define
without having to do it on each server, you can do:
----
/set irc.server_default.autoconnect on
----
And then you can reset the server option so that it uses the default inherited
value, which is now `on` instead of the default value `off`:
----
/unset irc.server.libera.autoconnect
---- ----
[[irc_ssl_certificates]] [[irc_ssl_certificates]]
==== Certificati SSL ===== Certificati SSL
Al momento della connessione al server IRC con SSL, WeeChat verifica in Al momento della connessione al server IRC con SSL, WeeChat verifica in
maniera predefinita che la connessione sia completamente fidata. maniera predefinita che la connessione sia completamente fidata.
@@ -3094,7 +3247,7 @@ e potrebbe fallire, anche se funziona senza problemi con versioni precedenti
la 0.3.1. la 0.3.1.
[[irc_connect_oftc_with_certificate]] [[irc_connect_oftc_with_certificate]]
===== Primo esempio: connessione a otfc e verifica del certificato ====== Primo esempio: connessione a otfc e verifica del certificato
* Importare certificati nella shell: * Importare certificati nella shell:
@@ -3120,7 +3273,7 @@ E possibile concatenare più certificati nel file CAs.pem.
---- ----
[[irc_connect_oftc_with_certfp]] [[irc_connect_oftc_with_certfp]]
===== Secondo esempio: connessione a otfc con CertFP ====== Secondo esempio: connessione a otfc con CertFP
* Creare un certificato nella shell: * Creare un certificato nella shell:
@@ -3147,7 +3300,7 @@ which can also be for example `~/.weechat`.
Per maggiori informazioni consultare https://www.oftc.net/NickServ/CertFP Per maggiori informazioni consultare https://www.oftc.net/NickServ/CertFP
[[irc_sasl_authentication]] [[irc_sasl_authentication]]
==== Autenticazione SASL ===== Autenticazione SASL
// TRANSLATION MISSING // TRANSLATION MISSING
WeeChat supports SASL authentication, using different mechanisms: WeeChat supports SASL authentication, using different mechanisms:
@@ -3163,10 +3316,6 @@ WeeChat supports SASL authentication, using different mechanisms:
// TRANSLATION MISSING // TRANSLATION MISSING
* _ecdsa-nist256p-challenge_: challenge with public/private key * _ecdsa-nist256p-challenge_: challenge with public/private key
* _external_: certificato SSL da lato client * _external_: certificato SSL da lato client
// TRANSLATION MISSING
* _dh-blowfish_: blowfish encrypted password (*insecure*, not recommended)
// TRANSLATION MISSING
* _dh-aes_: AES encrypted password (*insecure*, not recommended)
Le opzioni nel server sono: Le opzioni nel server sono:
@@ -3183,7 +3332,7 @@ Le opzioni nel server sono:
// TRANSLATION MISSING // TRANSLATION MISSING
[[irc_sasl_ecdsa_nist256p_challenge]] [[irc_sasl_ecdsa_nist256p_challenge]]
===== SASL ECDSA-NIST256P-CHALLENGE ====== SASL ECDSA-NIST256P-CHALLENGE
You must generate a private key in order to authentify with the You must generate a private key in order to authentify with the
ECDSA-NIST256P-CHALLENGE mechanism (no password is required on connection). ECDSA-NIST256P-CHALLENGE mechanism (no password is required on connection).
@@ -3228,9 +3377,41 @@ Reconnect to the server:
/reconnect libera /reconnect libera
---- ----
// TRANSLATION MISSING
[[irc_servers_connection]]
===== Connection
You can connect to server with the <<command_irc_connect,/connect>> command:
----
/connect libera
----
To disconnect:
----
/disconnect libera
----
Or just this if you are on any buffer belonging to _libera_ server (server,
channel, private):
----
/disconnect
----
When you connect to multiple servers at same time, server buffers are merged
by default and you can switch between them with the kbd:[Ctrl+x] key. +
It is possible to disable auto merge of server buffers to have independent
server buffers:
----
/set irc.look.server_buffer independent
----
// TRANSLATION MISSING // TRANSLATION MISSING
[[irc_tor_sasl]] [[irc_tor_sasl]]
==== Connect with TOR and SASL ===== Connect with TOR and SASL
// TRANSLATION MISSING // TRANSLATION MISSING
Some servers support connections with TOR (https://www.torproject.org/), Some servers support connections with TOR (https://www.torproject.org/),
@@ -3281,6 +3462,64 @@ And finally, connect to the server:
/connect irc-tor /connect irc-tor
---- ----
// TRANSLATION MISSING
[[irc_channels]]
==== Channels
You can join channels with the <<command_irc_join,/join>> command:
----
/join #channel
----
Part a channel (keeping the buffer open):
----
/part [quit message]
----
The channels you joined are not saved. If you want to join them automatically
when connecting to the server, you must set the server `autojoin` option:
----
/set irc.server.libera.autojoin "#weechat,#weechat-fr"
----
[NOTE]
Some scripts can help to automatically set this option,
see `/script search autojoin`.
Be careful, spaces can be used only to separate list of channels from keys,
for example if `#channel1` requires a key but not `#channel2`:
----
/set irc.server.libera.autojoin "#channel1,#channel2 key1"
----
For help on the format, see `/help irc.server.libera.autojoin`.
[[irc_private_messages]]
==== Private messages
You can send a private message with the <<command_irc_query,/query>> command,
which opens a separate buffer:
----
/query bob hi, how are you?
----
Without arguments the command just opens the buffer (or selects it if already open):
----
/query bob
----
To close the private buffer, you can do this command on the private buffer:
----
/close
----
[[irc_smart_filter_join_part_quit]] [[irc_smart_filter_join_part_quit]]
==== Filtro smart per i messaggi di entrata/uscita/disconnessione ==== Filtro smart per i messaggi di entrata/uscita/disconnessione
@@ -3430,7 +3669,7 @@ appropriato, di solito quello del server o del canale.
Ecco una lista incompleta dei messaggi IRC o degli alias che è possibile Ecco una lista incompleta dei messaggi IRC o degli alias che è possibile
personalizzare: personalizzare:
[width="100%",cols="^1m,^3m,8",options="header"] [width="100%",cols="^2m,^3m,15",options="header"]
|=== |===
| messaggio | alias | descrizione | messaggio | alias | descrizione
| error | | errore | error | | errore
@@ -3707,8 +3946,8 @@ Si avranno i seguenti file:
│ └── #mychan.weechatlog │ └── #mychan.weechatlog
├── oftc ├── oftc
│ ├── oftc.weechatlog │ ├── oftc.weechatlog
│ ├── #chan1.weechatlog │ ├── #channel1.weechatlog
│ └── #chan2.weechatlog │ └── #channel2.weechatlog
... ...
.... ....
@@ -5017,6 +5256,100 @@ Options:
include::includes/autogen_user_options.it.adoc[tag=trigger_options] include::includes/autogen_user_options.it.adoc[tag=trigger_options]
// TRANSLATION MISSING
[[typing_plugin]]
=== Typing
The typing plugin is used to inform other users you are typing messages and
show a list of users currently typing a message on the buffer.
It is used by IRC plugin on channel and private buffers, when the "message-tags"
capability is enabled (you can check with <<command_irc_cap,/cap>> command). +
Under the hood, typing client tag is used, following this specification:
https://ircv3.net/specs/client-tags/typing.html.
[[typing_activation]]
==== Activation
For privacy considerations, the typing feature is disabled by default. +
If you want to use it, you must enable options in both typing and irc plugins:
----
/set typing.look.enabled_nicks on
/set typing.look.enabled_self on
/set irc.look.typing_status_nicks on
/set irc.look.typing_status_self on
----
The typing notifications are displayed at the end of the status bar.
Example of status bar with the "typing" item: "bob" is typing a message and
"alice" was typing a message but made a pause:
....
│[12:55] [6] [irc/libera] 3:#test(+n){4} [Typing: bob, (alice)] │
│[@Flashy] █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[typing_signals_sent]]
==== Signals sent
When you are typing a message (not a command starting with `/`), the typing
plugin sends signals to inform other plugins (like IRC) that you are typing,
and these plugins can then send typing notifications to other users.
The following signals are sent when you are typing messages:
[width="100%",cols="1,1,5",options="header"]
|===
| Signal | Arguments | Description
| typing_self_typing | Pointer: buffer. | You are typing a message.
| typing_self_paused | Pointer: buffer. | You made a pause while typing a message.
| typing_self_cleared | Pointer: buffer. | You cleared the command line without sending the message.
| typing_self_sent | Pointer: buffer. | You sent the message to the buffer.
|===
[[typing_signals_caught]]
==== Signals caught
The typing plugin is catching some signals that can be sent by other plugins
(like IRC), to update internal hashtables used to store the typing state of
nicks on buffers. These hashtables are used to build the content of "typing"
bar item.
The following signals are caught by the typing plugin:
[width="100%",cols="1,4,3",options="header"]
|===
| Signal | Arguments | Description
| typing_set_nick |
String: buffer pointer + ";" + state (one of: "off", "typing", "paused",
"cleared") + ";" + nick. +
Example: "0x1234abcd;typing;alice". |
Set typing state for a nick on a buffer.
| typing_reset_buffer |
Pointer: buffer. |
Remove typing state for all nicks on a buffer.
|===
[[typing_options]]
==== Opzioni
Sections in file _typing.conf_:
[width="100%",cols="3m,6m,16",options="header"]
|===
| Section | Control command | Description
| look | /set typing.look.* | Look and feel.
|===
Options:
include::includes/autogen_user_options.it.adoc[tag=typing_options]
[[xfer_plugin]] [[xfer_plugin]]
=== Xfer === Xfer
@@ -79,6 +79,8 @@ _last_nick_speaking_time_   (pointer, hdata: "irc_channel_speaking") +
_modelists_   (pointer, hdata: "irc_modelist") + _modelists_   (pointer, hdata: "irc_modelist") +
_last_modelist_   (pointer, hdata: "irc_modelist") + _last_modelist_   (pointer, hdata: "irc_modelist") +
_join_smart_filtered_   (hashtable) + _join_smart_filtered_   (hashtable) +
_typing_state_   (integer) +
_typing_status_sent_   (time) +
_buffer_   (pointer, hdata: "buffer") + _buffer_   (pointer, hdata: "buffer") +
_buffer_as_string_   (string) + _buffer_as_string_   (string) +
_prev_channel_   (pointer, hdata: "irc_channel") + _prev_channel_   (pointer, hdata: "irc_channel") +
@@ -237,6 +239,8 @@ _sasl_scram_client_first_   (string) +
_sasl_scram_salted_pwd_   (other) + _sasl_scram_salted_pwd_   (other) +
_sasl_scram_salted_pwd_size_   (integer) + _sasl_scram_salted_pwd_size_   (integer) +
_sasl_scram_auth_message_   (string) + _sasl_scram_auth_message_   (string) +
_sasl_temp_username_   (string) +
_sasl_temp_password_   (string) +
_is_connected_   (integer) + _is_connected_   (integer) +
_ssl_connected_   (integer) + _ssl_connected_   (integer) +
_disconnected_   (integer) + _disconnected_   (integer) +
@@ -267,6 +271,10 @@ _chantypes_   (string) +
_chanmodes_   (string) + _chanmodes_   (string) +
_monitor_   (integer) + _monitor_   (integer) +
_monitor_time_   (time) + _monitor_time_   (time) +
_clienttagdeny_   (string) +
_clienttagdeny_count_   (integer) +
_clienttagdeny_array_   (string, array_size: "clienttagdeny_count") +
_typing_allowed_   (integer) +
_reconnect_delay_   (integer) + _reconnect_delay_   (integer) +
_reconnect_start_   (time) + _reconnect_start_   (time) +
_command_time_   (time) + _command_time_   (time) +
@@ -8,7 +8,7 @@
|=== |===
| プラグイン | 名前 | 説明 | ハッシュテーブル (入力) | ハッシュテーブル (出力) | プラグイン | 名前 | 説明 | ハッシュテーブル (入力) | ハッシュテーブル (出力)
| irc | irc_message_parse | IRC メッセージを解析 | "message": IRC メッセージ、"server": サーバ名 (任意) | "tags": tags, "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found) | irc | irc_message_parse | IRC メッセージを解析 | "message": IRC メッセージ、"server": サーバ名 (任意) | "tags": tags, "tag_xxx": unescaped value of tag "xxx" (one key per tag), "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
| irc | irc_message_split | IRC メッセージを分割 (デフォルトでは 512 バイト内に収まるように分割します) | "message": IRC メッセージ、"server": サーバ名 (任意) | "msg1" ... "msgN": 送信メッセージ (最後の "\r\n" は無し), "args1" ... "argsN": メッセージの引数、"count": メッセージの数 | irc | irc_message_split | IRC メッセージを分割 (デフォルトでは 512 バイト内に収まるように分割します) | "message": IRC メッセージ、"server": サーバ名 (任意) | "msg1" ... "msgN": 送信メッセージ (最後の "\r\n" は無し), "args1" ... "argsN": メッセージの引数、"count": メッセージの数
@@ -4,18 +4,26 @@
// //
// tag::plugins_priority[] // tag::plugins_priority[]
. charset (15000) . charset (16000)
. logger (14000) . logger (15000)
. exec (13000) . exec (14000)
. trigger (12000) . trigger (13000)
. spell (11000) . spell (12000)
. alias (10000) . alias (11000)
. buflist (9000) . buflist (10000)
. fifo (8000) . fifo (9000)
. typing (8000)
. xfer (7000) . xfer (7000)
. irc (6000) . irc (6000)
. relay (5000) . relay (5000)
. guile, javascript, lua, perl, php, python, ruby, tcl (4000) . guile (4007)
. javascript (4006)
. lua (4005)
. perl (4004)
. php (4003)
. python (4002)
. ruby (4001)
. tcl (4000)
. script (3000) . script (3000)
. fset (2000) . fset (2000)
// end::plugins_priority[] // end::plugins_priority[]
+233 -149
View File
@@ -17,10 +17,11 @@ target: サーバ名
* `+allchan+`: 全てのサーバ、全てのチャンネルに対してコマンドを実行 * `+allchan+`: 全てのサーバ、全てのチャンネルに対してコマンドを実行
---- ----
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command> /allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
[-current] -include=<channel>[,<channel>...] <command> [-current] [-parted] -include=<channel>[,<channel>...] <command>
-current: execute command for channels of current server only -current: execute command for channels of current server only
-parted: execute on parted channels only
-exclude: exclude some channels (wildcard "*" is allowed) -exclude: exclude some channels (wildcard "*" is allowed)
-include: include only some channels (wildcard "*" is allowed) -include: include only some channels (wildcard "*" is allowed)
command: command to execute (or text to send to buffer if command does not start with '/') command: command to execute (or text to send to buffer if command does not start with '/')
@@ -41,6 +42,8 @@ Examples:
/allchan -exclude=#weechat,#linux* hello /allchan -exclude=#weechat,#linux* hello
say 'hello' on all channels beginning with #linux: say 'hello' on all channels beginning with #linux:
/allchan -include=#linux* hello /allchan -include=#linux* hello
close all buffers with parted channels:
/allchan -parted /close
---- ----
[[command_irc_allpv]] [[command_irc_allpv]]
@@ -100,6 +103,26 @@ Examples:
/allserv /whois $nick /allserv /whois $nick
---- ----
[[command_irc_auth]]
* `+auth+`: authenticate with SASL
----
/auth [<username> <password>]
username: SASL username (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
password: SASL password or path to file with private key (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
If username and password are not provided, the values from server options "sasl_username" and "sasl_password" (or "sasl_key") are used.
Examples:
authenticate with username/password defined in the server:
/auth
authenticate as a different user:
/auth user2 password2
authenticate as a different user with mechanism ecdsa-nist256p-challenge:
/auth user2 ${weechat_config_dir}/ecdsa2.pem
----
[[command_irc_ban]] [[command_irc_ban]]
* `+ban+`: ニックネームかホスト名を指定してバン * `+ban+`: ニックネームかホスト名を指定してバン
@@ -121,19 +144,19 @@ channel: チャンネル名
req|ack [<capability> [<capability>...]] req|ack [<capability> [<capability>...]]
end end
ls: サーバがサポートする機能をリスト ls: list the capabilities supported by the server
list: 現在有効化されている機能をリスト list: list the capabilities currently enabled
req: 機能情報を要求 req: request a capability
ack: クライアント側に承認を要求する機能を承認 ack: acknowledge capabilities which require client-side acknowledgement
end: 機能情報交換を終了 end: end the capability negotiation
引数無しの場合、"ls" "list" を送信します。 Without argument, "ls" and "list" are sent.
WeeChat がサポートする機能: account-notifyaway-notifycap-notifychghostextended-joininvite-notifymulti-prefixserver-timeuserhost-in-names Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
自動的に有効化する機能を設定するにはオプション irc.server_default.capabilities (または対象のサーバに関するオプション irc.server.xxx.capabilities) を使ってください。 The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities).
: Examples:
/cap /cap
/cap req multi-prefix away-notify /cap req multi-prefix away-notify
---- ----
@@ -808,6 +831,15 @@ mask: マスクにマッチするサービスだけをリストアップ
type: タイプにマッチするサービスだけをリストアップ type: タイプにマッチするサービスだけをリストアップ
---- ----
[[command_irc_setname]]
* `+setname+`: set real name
----
/setname <realname>
realname: new real name
----
[[command_irc_squery]] [[command_irc_squery]]
* `+squery+`: サービスにメッセージを配送 * `+squery+`: サービスにメッセージを配送
@@ -1271,30 +1303,31 @@ Examples:
/debug list /debug list
set <plugin> <level> set <plugin> <level>
dump [<plugin>] dump [<plugin>]
buffer|color|infolists|memory|tags|term|windows buffer|color|infolists|libs|certs|memory|tags|term|windows
mouse|cursor [verbose] mouse|cursor [verbose]
hdata [free] hdata [free]
time <command> time <command>
list: デバッグレベルの設定されたプラグインをリストアップ list: list plugins with debug levels
set: プラグインのデバッグレベルを設定 set: set debug level for plugin
plugin: プラグインの名前 ("core" WeeChat コアを意味する) plugin: name of plugin ("core" for WeeChat core)
level: プラグインのデバッグレベル (0 はデバッグの無効化) level: debug level for plugin (0 = disable debug)
dump: WeeChat ログファイルにメモリダンプを保存 (WeeChat がクラッシュした場合と同じダンプが書き込まれます) dump: save memory dump in WeeChat log file (same dump is written when WeeChat crashes)
buffer: ログファイルに 16 進値でバッファの内容をダンプ buffer: dump buffer content with hexadecimal values in log file
color: 現在の色ペアに関する情報を表示 color: display infos about current color pairs
cursor: カーソルモードのデバッグを切り替え cursor: toggle debug for cursor mode
dirs: ディレクトリを表示 dirs: display directories
hdata: hdata に関する情報を表示 (free を付けた場合: メモリから全ての hdata を削除) hdata: display infos about hdata (with free: remove all hdata in memory)
hooks: フックに関する情報を表示 hooks: display infos about hooks
infolists: インフォリストに関する情報を表示 infolists: display infos about infolists
libs: 使用中の外部ライブラリに関する情報を表示 libs: display infos about external libraries used
memory: メモリ使用量に関する情報を表示 certs: display number of loaded trusted certificate authorities
mouse: マウスのデバックを切り替え memory: display infos about memory usage
tags: 行のタグを表示 mouse: toggle debug for mouse
term: 端末に関する情報を表示 tags: display tags for lines
windows: ウィンドウツリーの情報を表示 term: display infos about terminal
time: コマンドの実行時間や現在のバッファへのテキスト送信にかかった時間を測定 windows: display windows tree
time: measure time to execute a command or to send text to the current buffer
---- ----
[[command_weechat_eval]] [[command_weechat_eval]]
@@ -1342,27 +1375,32 @@ To force a string comparison, you can add double quotes around each expression,
Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority: Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
1. the string itself without evaluation (format: "raw:xxx") 1. the string itself without evaluation (format: "raw:xxx")
2. an evaluated sub-string (format: "eval:xxx") 2. a user-defined variable (format: "name")
3. an evaluated condition (format: "eval_cond:xxx") 3. an evaluated sub-string (format: "eval:xxx")
4. a string with escaped chars (format: "esc:xxx" or "\xxx") 4. an evaluated condition (format: "eval_cond:xxx")
5. a string with chars to hide (format: "hide:char,string") 5. a string with escaped chars (format: "esc:xxx" or "\xxx")
6. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string") 6. a string with chars to hide (format: "hide:char,string")
7. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string") or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
7. a reversed string (format: "rev:xxx" or "revscr:xxx") 8. a reversed string (format: "rev:xxx" or "revscr:xxx")
8. a repeated string (format: "repeat:count,string") 9. a repeated string (format: "repeat:count,string")
9. length of a string (format: "length:xxx" or "lengthscr:xxx") 10. length of a string (format: "length:xxx" or "lengthscr:xxx")
10. a color (format: "color:xxx", see "Plugin API reference", function "color") 11. split of a string (format: "split:number,separators,flags,xxx")
11. a modifier (format: "modifier:name,data,string") 12. split of shell argmuents (format: "split_shell:number,xxx")
12. an info (format: "info:name,arguments", arguments are optional) 13. a color (format: "color:xxx", see "Plugin API reference", function "color")
13. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx") 14. a modifier (format: "modifier:name,data,string")
14. current date/time (format: "date" or "date:format") 15. an info (format: "info:name,arguments", arguments are optional)
15. an environment variable (format: "env:XXX") 16. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
16. a ternary operator (format: "if:condition?value_if_true:value_if_false") 17. current date/time (format: "date" or "date:format")
17. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx") 18. an environment variable (format: "env:XXX")
18. a translated string (format: "translate:xxx") 19. a ternary operator (format: "if:condition?value_if_true:value_if_false")
19. an option (format: "file.section.option") 20. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
20. a local variable in buffer 21. a random integer number (format: "random:min,max")
21. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer. 22. a translated string (format: "translate:xxx")
23. define a user variable (format: "define:name,value")
24. an option (format: "file.section.option")
25. a local variable in buffer
26. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
Format for hdata can be one of following: Format for hdata can be one of following:
hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed) hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example: hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example:
@@ -1374,29 +1412,39 @@ Format for hdata can be one of following:
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get". For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".
Examples (simple strings): Examples (simple strings):
/eval -n ${raw:${info:version}} ==> ${info:version} /eval -n ${raw:${info:version}} ==> ${info:version}
/eval -n ${eval_cond:${window.win_width}>100} ==> 1 /eval -n ${eval_cond:${window.win_width}>100} ==> 1
/eval -n ${info:version} ==> 0.4.3 /eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user /eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3 /eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.password} ==> secret /eval -n ${sec.data.password} ==> secret
/eval -n ${window} ==> 0x2549aa0 /eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320 /eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat /eval -n ${window.buffer.full_name} ==> core.weechat
/eval -n ${window.buffer.number} ==> 1 /eval -n ${window.buffer.number} ==> 1
/eval -n ${\t} ==> <tab> /eval -n ${\t} ==> <tab>
/eval -n ${hide:-,${relay.network.password}} ==> -------- /eval -n ${hide:-,${relay.network.password}} ==> --------
/eval -n ${cut:3,+,test} ==> tes+ /eval -n ${cut:3,+,test} ==> tes+
/eval -n ${cut:+3,+,test} ==> te+ /eval -n ${cut:+3,+,test} ==> te+
/eval -n ${date:%H:%M:%S} ==> 07:46:40 /eval -n ${date:%H:%M:%S} ==> 07:46:40
/eval -n ${if:${info:term_width}>80?big:small} ==> big /eval -n ${if:${info:term_width}>80?big:small} ==> big
/eval -n ${rev:Hello} ==> olleH /eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> ----- /eval -n ${repeat:5,-} ==> -----
/eval -n ${length:test} ==> 4 /eval -n ${length:test} ==> 4
/eval -n ${calc:(5+2)*3} ==> 21 /eval -n ${split:1,,,abc,def,ghi} ==> abc
/eval -n ${base_encode:64,test} ==> dGVzdA== /eval -n ${split:-1,,,abc,def,ghi} ==> ghi
/eval -n ${base_decode:64,dGVzdA==} ==> test /eval -n ${split:count,,,abc,def,ghi} ==> 3
/eval -n ${translate:Plugin} ==> Extension /eval -n ${split:random,,,abc,def,ghi} ==> def
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
/eval -n ${calc:(5+2)*3} ==> 21
/eval -n ${random:0,10} ==> 3
/eval -n ${base_encode:64,test} ==> dGVzdA==
/eval -n ${base_decode:64,dGVzdA==} ==> test
/eval -n ${translate:Plugin} ==> Extension
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
Examples (conditions): Examples (conditions):
/eval -n -c ${window.buffer.number} > 2 ==> 0 /eval -n -c ${window.buffer.number} > 2 ==> 0
@@ -1510,60 +1558,63 @@ value: 表示する履歴エントリの数
---- ----
/input <action> [<arguments>] /input <action> [<arguments>]
アクションリスト: list of actions:
return: "enter" キーをシミュレート return: simulate key "enter"
complete_next: 次の補完候補で単語を補完 complete_next: complete word with next completion
complete_previous: 一つ前の補完候補で単語を補完 complete_previous: complete word with previous completion
search_text_here: 現在の位置でテキストを検索 search_text_here: search text in buffer at current position
search_text: バッファ内のテキストを検索 search_text: search text in buffer
search_switch_case: 完全一致検索に変更 search_switch_case: switch exact case for search
search_switch_regex: 検索タイプの切り替え: 文字列/正規表現 search_switch_regex: switch search type: string/regular expression
search_switch_where: 検索範囲の切り替え: メッセージ/プレフィックス search_switch_where: switch search in messages/prefixes
search_previous: 一つ前の行を検索 search_previous: search previous line
search_next: 次の行を検索 search_next: search next line
search_stop_here: 現在の位置で検索を終了 search_stop_here: stop search at current position
search_stop: 検索を終了 search_stop: stop search
delete_previous_char: 一つ前の文字を削除 delete_previous_char: delete previous char
delete_next_char: 次の文字を削除 delete_next_char: delete next char
delete_previous_word: 一つ前の単語を削除 delete_previous_word: delete previous word
delete_next_word: 次の単語を削除 delete_next_word: delete next word
delete_beginning_of_line: 行の最初からカーソル位置までを削除 delete_beginning_of_line: delete from beginning of line until cursor
delete_end_of_line: カーソルから行の最後までを削除 delete_end_of_line: delete from cursor until end of line
delete_line: 行を削除 delete_line: delete entire line
clipboard_paste: WeeChat 専用の内部クリップボードの内容をペースト clipboard_paste: paste from the internal clipboard
transpose_chars: 2 つの文字を入れ替え transpose_chars: transpose two chars
undo: 最新のコマンドラインアクションまで元に戻す undo: undo last command line action
redo: 最新のコマンドラインアクションまでやり直す redo: redo last command line action
move_beginning_of_line: カーソルを行頭に移動 move_beginning_of_line: move cursor to beginning of line
move_end_of_line: カーソルを行末まで移動 move_end_of_line: move cursor to end of line
move_previous_char: カーソルを一つ前の文字に移動 move_previous_char: move cursor to previous char
move_next_char: カーソルを次の文字に移動 move_next_char: move cursor to next char
move_previous_word: カーソルを一つ前の単語に移動 move_previous_word: move cursor to previous word
move_next_word: カーソルを次の単語に移動 move_next_word: move cursor to next word
history_previous: 現在のバッファ履歴のひとつ前のコマンドを再呼び出し history_previous: recall previous command in current buffer history
history_next: 現在のバッファ履歴の次のコマンドを再呼び出し history_next: recall next command in current buffer history
history_global_previous: グローバル履歴の一つ前のコマンドを再呼び出し history_global_previous: recall previous command in global history
history_global_next: グローバル履歴の次のコマンドを再呼び出し history_global_next: recall next command in global history
jump_smart: 次のアクティブバッファに飛ぶ jump_smart: jump to next buffer with activity
jump_last_buffer_displayed: 表示されている最後のバッファに移動 (最新のバッファ移動の一つ前に表示されていたバッファ) jump_last_buffer_displayed: jump to last buffer displayed (before last jump to a buffer)
jump_previously_visited_buffer: 一つ前に訪れたバッファに移動 jump_previously_visited_buffer: jump to previously visited buffer
jump_next_visited_buffer: 次に訪れたバッファに移動 jump_next_visited_buffer: jump to next visited buffer
hotlist_clear: ホットリストを消去 (オプション引数: "lowest" はホットリスト内の最も低いレベルだけを消去。"highest" はホットリスト内の最も高いレベルだけを消去。レベルマスクは 1 (参加/退出)、2 (メッセージ)、4 (プライベートメッセージ)、8 (ハイライト) を合計した整数値で指定したレベルを消去) hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight)
grab_key: キーを横取り (任意引数: 最後の横取りからの遅延時間、デフォルトは 500 ミリ秒) hotlist_remove_buffer: remove current buffer from hotlist
grab_key_command: あるコマンドに関連してキーを横取り (任意引数: 最後の横取りからの遅延時間、デフォルトは 500 ミリ秒) hotlist_restore_buffer: restore latest hotlist removed in the current buffer
grab_mouse: grab マウスイベントコードを横取り hotlist_restore_all: restore latest hotlist removed in all buffers
grab_mouse_area: 範囲指定のマウスイベントコードを横取り grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
set_unread: 全てのバッファに対して未読マーカーを設定 grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
set_unread_current_buffer: 現在のバッファに対して未読マーカーを設定 grab_mouse: grab mouse event code
switch_active_buffer: 次のマージされたバッファに移動 grab_mouse_area: grab mouse event code with area
switch_active_buffer_previous: 一つ前のマージされたバッファに移動 set_unread: set unread marker for all buffers
zoom_merged_buffer: マージされたバッファにズーム set_unread_current_buffer: set unread marker for current buffer
insert: コマンドラインにテキストを挿入 (エスケープ文字も可、/help print を参照してください) switch_active_buffer: switch to next merged buffer
send: バッファにテキストを送信 switch_active_buffer_previous: switch to previous merged buffer
paste_start: ペーストの開始 (括弧付きペーストモード) zoom_merged_buffer: zoom on merged buffer
paste_stop: ペーストの終了 (括弧付きペーストモード) insert: insert text in command line (escaped chars are allowed, see /help print)
send: send text to the buffer
paste_start: start paste (bracketed paste mode)
paste_stop: stop paste (bracketed paste mode)
これらのコマンドはキーバインドかプラグインで利用できます。 This command is used by key bindings or plugins.
---- ----
[[command_weechat_key]] [[command_weechat_key]]
@@ -1631,19 +1682,21 @@ listdefault: デフォルトキーをリストアップ
del [<name>] [buffers|windows] del [<name>] [buffers|windows]
rename <name> <new_name> rename <name> <new_name>
store: レイアウトに現在のバッファ/ウィンドウを保存 store: store current buffers/windows in a layout
apply: 保存されたレイアウトを適用 apply: apply stored layout
leave: 現在のレイアウトを保持する (レイアウトを更新しない) leave: leave current layout (does not update any layout)
del: レイアウトとして保存されているバッファとウィンドウを削除 del: delete buffers and/or windows in a stored layout
(名前の後に "バッファ" や "ウィンドウ" を指定しない場合、レイアウトを削除) (if neither "buffers" nor "windows" is given after the name, the layout is deleted)
rename: レイアウトのリネーム rename: rename a layout
name: 保存されたレイアウトの名前 (初期状態は "default") name: name for stored layout (default is "default")
buffers: バッファのみに対してレイアウトを保存/適用 (バッファの順番) buffers: store/apply only buffers (order of buffers)
windows: ウィンドウのみに対してレイアウトを保存/適用 (それぞれのウィンドウに表示されるバッファ) windows: store/apply only windows (buffer displayed by each window)
引数を指定しなかった場合、保存されたレイアウトを表示します。 Without argument, this command displays stored layouts.
"weechat.look.save_layout_on_exit" オプションを使えば、現在のレイアウトを /quit コマンドの実行時に保存することが可能です。 The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit".
Note: the layout only remembers windows split and buffers numbers. It does not open buffers. That means for example you must still auto-join IRC channels to open the buffers, the saved layout only applies once the buffers are opened.
---- ----
[[command_weechat_mouse]] [[command_weechat_mouse]]
@@ -1693,23 +1746,28 @@ Examples:
* `+plugin+`: プラグインの表示/ロード/アンロード * `+plugin+`: プラグインの表示/ロード/アンロード
---- ----
/plugin list|listfull [<name>] /plugin list [-o|-ol|-i|-il|<name>]
listfull [<name>]
load <filename> [<arguments>] load <filename> [<arguments>]
autoload [<arguments>] autoload [<arguments>]
reload [<name>|* [<arguments>]] reload [<name>|* [<arguments>]]
unload [<name>] unload [<name>]
list: ロードされたプラグインをリストアップ list: list loaded plugins
listfull: ロードされたプラグインをリストアップ (詳細) -o: send list of loaded plugins to buffer (string in English)
load: プラグインをロード -ol: send list of loaded plugins to buffer (translated string)
autoload: システムかユーザディレクトリ指定の自動ロードプラグインをロード -i: copy list of loaded plugins in command line (for sending to buffer) (string in English)
reload: プラグインを再ロード (名前が指定されない場合は、全てのプラグインをアンロードし、プラグインを自動ロード) -il: copy list of loaded plugins in command line (for sending to buffer) (translated string)
unload: プラグインのアンロード (名前が指定されない場合は、全てのプラグインをアンロード) name: a plugin name
filename: ロードするプラグイン (ファイル) listfull: list loaded plugins (verbose)
name: プラグイン名 load: load a plugin
arguments: ロードするプラグインに与える引数 filename: plugin (file) to load
arguments: arguments given to plugin on load
autoload: autoload plugins in system or user directory
reload: reload a plugin (if no name given, unload all plugins, then autoload plugins)
unload: unload a plugin (if no name given, unload all plugins)
引数無しでは、ロードされたプラグインをリストアップ。 Without argument, this command lists loaded plugins.
---- ----
[[command_weechat_print]] [[command_weechat_print]]
@@ -1935,6 +1993,32 @@ option: オプションの名前 (value を指定せずにワイルドカード
/set env ABC "" /set env ABC ""
---- ----
[[command_weechat_toggle]]
* `+toggle+`: toggle value of a config option
----
/toggle <option> [<value> [<value>...]]
option: name of an option
value: possible values for the option (values are split like the shell command arguments: quotes can be used to preserve spaces at the beginning/end of values)
Behavior:
- only an option of type boolean or string can be toggled without a value:
- boolean: toggle between on/off according to current value
- string: toggle between empty string and default value (works only if empty string is allowed for the option)
- with a single value given, toggle between this value and the default value of option
- with multiple values given, toggle between these values: the value used is the one following the current value of option; if the current value of option is not in list, the first value in the list is used
- the special value "null" can be given, but only as first value in the list and without quotes around.
Examples:
toggle display of time in chat area (without displaying the new value used):
/mute /toggle weechat.look.buffer_time_format
switch format of time in chat area (with seconds, without seconds, disabled):
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
toggle autojoin of #weechat channel on libera server:
/toggle irc.server.libera.autojoin null #weechat
----
[[command_weechat_unset]] [[command_weechat_unset]]
* `+unset+`: オプションのアンセット/リセット * `+unset+`: オプションのアンセット/リセット
+119 -51
View File
@@ -1845,6 +1845,50 @@
** デフォルト値: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+` ** デフォルト値: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
// end::fifo_options[] // end::fifo_options[]
// tag::typing_options[]
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
** 説明: pass:none[number of seconds after paused status has been set: if reached, the typing status is removed]
** タイプ: 整数
** 値: 1 .. 2147483647
** デフォルト値: `+30+`
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
** 説明: pass:none[number of seconds after typing status has been set: if reached, the typing status is removed]
** タイプ: 整数
** 値: 1 .. 2147483647
** デフォルト値: `+6+`
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
** 説明: pass:none[number of seconds after typing last char: if reached, the typing status becomes "paused" and no more typing signals are sent]
** タイプ: 整数
** 値: 1 .. 2147483647
** デフォルト値: `+10+`
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
** 説明: pass:none[typing enabled for other nicks (display typing info for nicks typing in the current buffer)]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
** 説明: pass:none[typing enabled for self messages (send typing info to other users)]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
** 説明: pass:none[min number of chars in message to trigger send of typing signals]
** タイプ: 整数
** 値: 1 .. 2147483647
** デフォルト値: `+4+`
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
** 説明: pass:none[max number of chars displayed in the bar item "typing" (0 = do not truncate content)]
** タイプ: 整数
** 値: 0 .. 2147483647
** デフォルト値: `+0+`
// end::typing_options[]
// tag::xfer_options[] // tag::xfer_options[]
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted* * [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
** 説明: pass:none["中止" 状態のテキスト色] ** 説明: pass:none["中止" 状態のテキスト色]
@@ -2214,6 +2258,12 @@
** 値: 未制約文字列 ** 値: 未制約文字列
** デフォルト値: `+"%a, %d %b %Y %T %z"+` ** デフォルト値: `+"%a, %d %b %Y %T %z"+`
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
** 説明: pass:none[display ACCOUNT messages received when capability account-notify is enabled]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+on+`
* [[option_irc.look.display_away]] *irc.look.display_away* * [[option_irc.look.display_away]] *irc.look.display_away*
** 説明: pass:none[離席状態が変更されたらメッセージを表示 (off: 何も表示/送信しない、local: ローカルに表示、channel: チャンネルにアクションを送信)] ** 説明: pass:none[離席状態が変更されたらメッセージを表示 (off: 何も表示/送信しない、local: ローカルに表示、channel: チャンネルにアクションを送信)]
** タイプ: 整数 ** タイプ: 整数
@@ -2238,6 +2288,12 @@
** 値: on, off ** 値: on, off
** デフォルト値: `+on+` ** デフォルト値: `+on+`
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
** 説明: pass:none[display extra information in the JOIN messages: account name and real name (capability extended-join must be enabled)]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+on+`
* [[option_irc.look.display_host_join]] *irc.look.display_host_join* * [[option_irc.look.display_host_join]] *irc.look.display_host_join*
** 説明: pass:none[参加メッセージにホスト名を表示] ** 説明: pass:none[参加メッセージにホスト名を表示]
** タイプ: ブール ** タイプ: ブール
@@ -2508,6 +2564,18 @@
** 値: on, off ** 値: on, off
** デフォルト値: `+off+` ** デフォルト値: `+off+`
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
** 説明: pass:none[display nicks typing on the channel in bar item "typing" (option typing.look.enabled_nicks must be enabled and capability "message-tags" must be enabled on the server)]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
** 説明: pass:none[send self typing status to channels so that other users see when you are typing a message (option typing.look.enabled_self must be enabled and capability "message-tags" must be enabled on the server)]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing* * [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
** 説明: pass:none[サーバに自動再接続する際の遅延間隔に関する増加係数 (1 = 遅延間隔は常に同じ, 2 = リトライごとに遅延間隔を 2 倍、など)] ** 説明: pass:none[サーバに自動再接続する際の遅延間隔に関する増加係数 (1 = 遅延間隔は常に同じ, 2 = リトライごとに遅延間隔を 2 倍、など)]
** タイプ: 整数 ** タイプ: 整数
@@ -2665,10 +2733,10 @@
** デフォルト値: `+25+` ** デフォルト値: `+25+`
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
** 説明: pass:none[サーバで利用可能ならば有効化する "client capabilities" のコンマ区切りリスト (WeeChat がサポートする機能のリストは /help cap を参照してください) (例: "away-notify,multi-prefix")] ** 説明: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat); "*" enables all capabilities by default (supported by both server and WeeChat); wildcard "*" is allowed; a capability beginning with "!" is excluded (example: "*,!account-*,!extended-join")]
** タイプ: 文字列 ** タイプ: 文字列
** 値: 未制約文字列 ** 値: 未制約文字列
** デフォルト値: `+""+` ** デフォルト値: `+"*"+`
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message* * [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
** 説明: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)] ** 説明: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)]
@@ -2770,7 +2838,7 @@
** 説明: pass:none[SASL 認証が失敗した場合の挙動: 認証の問題を無視する場合は "continue"、サーバへの再接続を予定する場合は "reconnect"、サーバから切断する場合は "disconnect" (irc.network.sasl_fail_unavailable も参照してください)] ** 説明: pass:none[SASL 認証が失敗した場合の挙動: 認証の問題を無視する場合は "continue"、サーバへの再接続を予定する場合は "reconnect"、サーバから切断する場合は "disconnect" (irc.network.sasl_fail_unavailable も参照してください)]
** タイプ: 整数 ** タイプ: 整数
** 値: continue, reconnect, disconnect ** 値: continue, reconnect, disconnect
** デフォルト値: `+continue+` ** デフォルト値: `+reconnect+`
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key* * [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
** 説明: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)] ** 説明: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)]
@@ -2779,9 +2847,9 @@
** デフォルト値: `+""+` ** デフォルト値: `+""+`
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism* * [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
** 説明: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL cert, "dh-blowfish" for blowfish crypted password (insecure, not recommended), "dh-aes" for AES crypted password (insecure, not recommended)] ** 説明: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL certificate]
** タイプ: 整数 ** タイプ: 整数
** 値: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes ** 値: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
** デフォルト値: `+plain+` ** デフォルト値: `+plain+`
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password* * [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
@@ -3075,34 +3143,6 @@
** デフォルト値: `+""+` ** デフォルト値: `+""+`
// end::relay_options[] // end::relay_options[]
// tag::javascript_options[]
* [[option_javascript.look.check_license]] *javascript.look.check_license*
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+on+`
// end::javascript_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+on+`
// end::ruby_options[]
// tag::guile_options[] // tag::guile_options[]
* [[option_guile.look.check_license]] *guile.look.check_license* * [[option_guile.look.check_license]] *guile.look.check_license*
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます] ** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
@@ -3117,19 +3157,33 @@
** デフォルト値: `+on+` ** デフォルト値: `+on+`
// end::guile_options[] // end::guile_options[]
// tag::tcl_options[] // tag::javascript_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license* * [[option_javascript.look.check_license]] *javascript.look.check_license*
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます] ** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
** タイプ: ブール ** タイプ: ブール
** 値: on, off ** 値: on, off
** デフォルト値: `+off+` ** デフォルト値: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context* * [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです] ** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
** タイプ: ブール ** タイプ: ブール
** 値: on, off ** 値: on, off
** デフォルト値: `+on+` ** デフォルト値: `+on+`
// end::tcl_options[] // end::javascript_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+on+`
// end::lua_options[]
// tag::perl_options[] // tag::perl_options[]
* [[option_perl.look.check_license]] *perl.look.check_license* * [[option_perl.look.check_license]] *perl.look.check_license*
@@ -3159,20 +3213,6 @@
** デフォルト値: `+on+` ** デフォルト値: `+on+`
// end::php_options[] // end::php_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+on+`
// end::lua_options[]
// tag::python_options[] // tag::python_options[]
* [[option_python.look.check_license]] *python.look.check_license* * [[option_python.look.check_license]] *python.look.check_license*
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます] ** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
@@ -3187,6 +3227,34 @@
** デフォルト値: `+on+` ** デフォルト値: `+on+`
// end::python_options[] // end::python_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+on+`
// end::ruby_options[]
// tag::tcl_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license*
** 説明: pass:none[スクリプトをロードしたら、ライセンスを確認してください: ライセンスがプラグインのライセンスと異なる場合、警告が表示されます]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
** 説明: pass:none[ソースコード評価 (スクリプトコマンドのオプション "eval" またはインフォ "%s_eval") の呼び出し間にコンテキストを保持します; スクリプトコードを評価する際は隠しスクリプトが使われます; このオプションを無効化した場合、評価毎に隠しスクリプトをアンロードします: メモリ使用量を節約できますが、遅いです]
** タイプ: ブール
** 値: on, off
** デフォルト値: `+on+`
// end::tcl_options[]
// tag::script_options[] // tag::script_options[]
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded* * [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
** 説明: pass:none["自動ロード" 状態 ("a") に対応する色] ** 説明: pass:none["自動ロード" 状態 ("a") に対応する色]
+3
View File
@@ -86,6 +86,9 @@ $HOME/.config/weechat/tcl.conf::
$HOME/.config/weechat/trigger.conf:: $HOME/.config/weechat/trigger.conf::
_trigger_ プラグイン用の設定ファイル _trigger_ プラグイン用の設定ファイル
$HOME/.config/weechat/typing.conf::
_typing_ プラグイン用の設定ファイル
$HOME/.config/weechat/xfer.conf:: $HOME/.config/weechat/xfer.conf::
_xfer_ プラグイン用の設定ファイル _xfer_ プラグイン用の設定ファイル
+69 -48
View File
@@ -95,6 +95,7 @@ qweechat::
|       spell/ | spell プラグイン |       spell/ | spell プラグイン
|       tcl/ | tcl スクリプト用 API |       tcl/ | tcl スクリプト用 API
|       trigger/ | trigger プラグイン |       trigger/ | trigger プラグイン
|       typing/ | typing プラグイン
|       xfer/ | xfer (IRC DCC ファイル/チャット) |       xfer/ | xfer (IRC DCC ファイル/チャット)
| tests/ | テスト | tests/ | テスト
|    scripts/ | スクリプト API テスト |    scripts/ | スクリプト API テスト
@@ -305,6 +306,8 @@ WeeChat "core" は以下のディレクトリに配置されています:
|       irc-redirect.c | IRC コマンド出力のリダイレクト |       irc-redirect.c | IRC コマンド出力のリダイレクト
|       irc-sasl.c | IRC サーバに対する SASL 認証 |       irc-sasl.c | IRC サーバに対する SASL 認証
|       irc-server.c | IRC サーバとの入出力通信 |       irc-server.c | IRC サーバとの入出力通信
// TRANSLATION MISSING
|       irc-tag.c | Functions to manipulate IRC message tags.
|       irc-upgrade.c | WeeChat をアップグレードする際の IRC データの保存およびロード |       irc-upgrade.c | WeeChat をアップグレードする際の IRC データの保存およびロード
|    javascript/ | JavaScript プラグイン |    javascript/ | JavaScript プラグイン
|       weechat-js.cpp | JavaScript の主要関数 (スクリプトのロード/アンロード、JavaScript コードの実行) |       weechat-js.cpp | JavaScript の主要関数 (スクリプトのロード/アンロード、JavaScript コードの実行)
@@ -376,6 +379,16 @@ WeeChat "core" は以下のディレクトリに配置されています:
|       trigger-command.c | trigger コマンド |       trigger-command.c | trigger コマンド
|       trigger-completion.c | trigger 補完 |       trigger-completion.c | trigger 補完
|       trigger-config.c | trigger 設定オプション (trigger.conf ファイル) |       trigger-config.c | trigger 設定オプション (trigger.conf ファイル)
// TRANSLATION MISSING
|    typing/ | Typing plugin.
// TRANSLATION MISSING
|       typing.c | Main typing functions.
// TRANSLATION MISSING
|       typing-bar-item.c | Typing bar items.
// TRANSLATION MISSING
|       typing-config.c | Typing config options (file typing.conf).
// TRANSLATION MISSING
|       typing-status.c | Messages typing status on buffers.
|    xfer/ | xfer プラグイン (IRC DCC ファイル/チャット) |    xfer/ | xfer プラグイン (IRC DCC ファイル/チャット)
|       xfer.c | xfer の主要関数 |       xfer.c | xfer の主要関数
|       xfer-buffer.c | xfer バッファ |       xfer-buffer.c | xfer バッファ
@@ -395,71 +408,79 @@ WeeChat "core" は以下のディレクトリに配置されています:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="2m,3",options="header"]
|=== |===
| パス/ファイル名 | 説明 | パス/ファイル名 | 説明
| tests/ | テスト用のルートディレクトリ | tests/ | テスト用のルートディレクトリ
|    tests.cpp | 全テストの実行時に使われるプログラム |    tests.cpp | 全テストの実行時に使われるプログラム
|    scripts/ | スクリプト API テスト用のルートディレクトリ |    scripts/ | スクリプト API テスト用のルートディレクトリ
|       test-scripts.cpp | スクリプト API テストの実行時に使われるプログラム |       test-scripts.cpp | スクリプト API テストの実行時に使われるプログラム
|       python/ | スクリプト API テストを生成、実行する Python スクリプト |       python/ | スクリプト API テストを生成、実行する Python スクリプト
|          testapigen.py | スクリプト API のテスト時にすべての言語に関するスクリプトを生成する Python スクリプト |          testapigen.py | スクリプト API のテスト時にすべての言語に関するスクリプトを生成する Python スクリプト
|          testapi.py | スクリプト API テスト時に使われる Python スクリプト (スクリプト testapigen.py から使われます) |          testapi.py | スクリプト API テスト時に使われる Python スクリプト (スクリプト testapigen.py から使われます)
|          unparse.py | Python コードを別の言語に変換 (スクリプト testapigen.py から使われます) |          unparse.py | Python コードを別の言語に変換 (スクリプト testapigen.py から使われます)
|    unit/ | 単体テスト用のルートディレクトリ |    unit/ | 単体テスト用のルートディレクトリ
|       test-plugins.cpp | テスト: プラグイン |       test-plugins.cpp | テスト: プラグイン
|       core/ | core 向け単体テスト用のルートディレクトリ |       core/ | core 向け単体テスト用のルートディレクトリ
|          test-core-arraylist.cpp | テスト: 配列リスト |          test-core-arraylist.cpp | テスト: 配列リスト
// TRANSLATION MISSING // TRANSLATION MISSING
|          test-core-calc.cpp | Tests: calculation of expressions. |          test-core-calc.cpp | Tests: calculation of expressions.
// TRANSLATION MISSING // TRANSLATION MISSING
|          test-core-crypto.cpp | Tests: cryptographic functions. |          test-core-config-file.cpp | Tests: configuration files.
// TRANSLATION MISSING // TRANSLATION MISSING
|          test-core-dir.cpp | Tests: directory/file functions. |          test-core-crypto.cpp | Tests: cryptographic functions.
|          test-core-eval.cpp | テスト: 式の評価
|          test-core-hashtble.cpp | テスト: ハッシュテーブル
|          test-core-hdata.cpp | テスト: hdata
|          test-core-hook.cpp | テスト: フック
|          test-core-infolist.cpp | テスト: インフォリスト
|          test-core-list.cpp | テスト: リスト
// TRANSLATION MISSING // TRANSLATION MISSING
|          test-core-network.cpp | Tests: network functions. |          test-core-dir.cpp | Tests: directory/file functions.
|          test-core-secure.cpp | テスト: データ保護 |          test-core-eval.cpp | テスト: 式の評価
|          test-core-hashtble.cpp | テスト: ハッシュテーブル
|          test-core-hdata.cpp | テスト: hdata
|          test-core-hook.cpp | テスト: フック
|          test-core-infolist.cpp | テスト: インフォリスト
|          test-core-list.cpp | テスト: リスト
// TRANSLATION MISSING // TRANSLATION MISSING
|          test-core-signal.cpp | テスト: signals. |          test-core-network.cpp | Tests: network functions.
|          test-core-string.cpp | テスト: 文字列 |          test-core-secure.cpp | テスト: データ保護
|          test-core-url.cpp | テスト: URL
|          test-core-utf8.cpp | テスト: UTF-8
|          test-core-util.cpp | テスト: ユーティリティ関数
|       gui/ | インターフェースの単体テストを収める最上位ディレクトリ
// TRANSLATION MISSING // TRANSLATION MISSING
|          test-gui-color.cpp | Tests: colors. |          test-core-signal.cpp | テスト: signals.
|          test-gui-line.cpp | テスト: |          test-core-string.cpp | テスト: 文字列
|          test-core-url.cpp | テスト: URL
|          test-core-utf8.cpp | テスト: UTF-8
|          test-core-util.cpp | テスト: ユーティリティ関数
|       gui/ | インターフェースの単体テストを収める最上位ディレクトリ
// TRANSLATION MISSING // TRANSLATION MISSING
|          test-gui-nick.cpp | テスト: nicks |          test-gui-color.cpp | Tests: colors.
|       plugins/ | プラグインの単体テストを収める最上位ディレクトリ |          test-gui-line.cpp | テスト: 行
|          irc/ | IRC プラグインの単体テストを収める最上位ディレクトリ
// TRANSLATION MISSING // TRANSLATION MISSING
|             test-irc-channel.cpp | Tests: IRC channels. |          test-gui-nick.cpp | テスト: nicks
|             test-irc-color.cpp | Tests: IRC colors. |       plugins/ | プラグインの単体テストを収める最上位ディレクトリ
|             test-irc-config.cpp | テスト: IRC 設定 |          irc/ | IRC プラグインの単体テストを収める最上位ディレクトリ
// TRANSLATION MISSING // TRANSLATION MISSING
|             test-irc-ignore.cpp | Tests: IRC ignores. |             test-irc-channel.cpp | Tests: IRC channels.
|             test-irc-color.cpp | Tests: IRC colors.
|             test-irc-config.cpp | テスト: IRC 設定
// TRANSLATION MISSING // TRANSLATION MISSING
|             test-irc-message.cpp | Tests: IRC messages. |             test-irc-ignore.cpp | Tests: IRC ignores.
// TRANSLATION MISSING // TRANSLATION MISSING
|             test-irc-mode.cpp | Tests: IRC modes. |             test-irc-message.cpp | Tests: IRC messages.
// TRANSLATION MISSING // TRANSLATION MISSING
|             test-irc-nick.cpp | Tests: IRC nicks. |             test-irc-mode.cpp | Tests: IRC modes.
|             test-irc-protocol.cpp | テスト: IRC プロトコル
// TRANSLATION MISSING // TRANSLATION MISSING
|             test-irc-server.cpp | Tests: IRC server. |             test-irc-nick.cpp | Tests: IRC nicks.
|             test-irc-protocol.cpp | テスト: IRC プロトコル
// TRANSLATION MISSING // TRANSLATION MISSING
|          trigger/ | Root of unit tests for trigger plugin. |             test-irc-server.cpp | Tests: IRC server.
// TRANSLATION MISSING // TRANSLATION MISSING
|             test-trigger.cpp | Tests: triggers. |          trigger/ | Root of unit tests for trigger plugin.
// TRANSLATION MISSING // TRANSLATION MISSING
|          relay/ | Root of unit tests for Relay plugin. |             test-trigger.cpp | Tests: triggers.
// TRANSLATION MISSING // TRANSLATION MISSING
|             test-relay-auth.cpp | Tests: clients authentication. |          typing/ | Root of unit tests for typing plugin.
// TRANSLATION MISSING
|             test-typing.cpp | Tests: typing.
// TRANSLATION MISSING
|             test-typing-status.cpp | Tests: typing status.
// TRANSLATION MISSING
|          relay/ | Root of unit tests for Relay plugin.
// TRANSLATION MISSING
|             test-relay-auth.cpp | Tests: clients authentication.
|=== |===
[[documentation_translations]] [[documentation_translations]]
+1 -1
View File
@@ -526,7 +526,7 @@ scrreen
// TRANSLATION MISSING // TRANSLATION MISSING
You can remove side bars (buflist and nicklist), change time format to display You can remove side bars (buflist and nicklist), change time format to display
only hours and seconds, disable alignment of messages and set a char for nick only hours and minutes, disable alignment of messages and set a char for nick
prefix/suffix: prefix/suffix:
---- ----
File diff suppressed because it is too large Load Diff
+13 -6
View File
@@ -1315,6 +1315,11 @@ _WeeChat バージョン 0.3.4 以上で利用可。_
メッセージに付けられたタグ (空にすることも可) | メッセージに付けられたタグ (空にすることも可) |
`+time=2015-06-27T16:40:35.000Z+` `+time=2015-06-27T16:40:35.000Z+`
// TRANSLATION MISSING
| tag_xxx | 3.3 |
Unescaped value of tag "xxx" (one key per tag). |
`+2015-06-27T16:40:35.000Z+`
| message_without_tags | 0.4.0 | | message_without_tags | 0.4.0 |
タグを除いたメッセージ (タグが付けられていなければメッセージと同じ) | タグを除いたメッセージ (タグが付けられていなければメッセージと同じ) |
`+:nick!user@host PRIVMSG #weechat :hello!+` `+:nick!user@host PRIVMSG #weechat :hello!+`
@@ -1373,10 +1378,12 @@ _WeeChat バージョン 0.3.4 以上で利用可。_
---- ----
dict = weechat.info_get_hashtable( dict = weechat.info_get_hashtable(
"irc_message_parse", "irc_message_parse",
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"}) {"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
# dict == { # dict == {
# "tags": "time=2015-06-27T16:40:35.000Z", # "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
# "tag_time": "2015-06-27T16:40:35.000Z",
# "tag_tag2": "value space",
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!", # "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
# "nick": "nick", # "nick": "nick",
# "user": "user", # "user": "user",
@@ -1385,10 +1392,10 @@ dict = weechat.info_get_hashtable(
# "channel": "#weechat", # "channel": "#weechat",
# "arguments": "#weechat :hello!", # "arguments": "#weechat :hello!",
# "text": "hello!", # "text": "hello!",
# "pos_command": "47", # "pos_command": "65",
# "pos_arguments": "55", # "pos_arguments": "73",
# "pos_channel": "55", # "pos_channel": "73",
# "pos_text": "65", # "pos_text": "83",
# } # }
---- ----
+358 -23
View File
@@ -185,11 +185,11 @@ $ make
$ make install $ make install
---- ----
CMake に対するオプションを指定するには、以下の書式を使ってください: "-DOPTION=VALUE" CMake に対するオプションを指定するには、以下の書式を使ってください: `-DOPTION=VALUE`
よく利用されるオプションのリスト: よく利用されるオプションのリスト:
[width="100%",cols="2m,2,5m,12",options="header"] [width="100%",cols="3m,3,3m,10",options="header"]
|=== |===
| オプション | 値 | デフォルト値 | 説明 | オプション | 値 | デフォルト値 | 説明
@@ -294,6 +294,9 @@ CMake に対するオプションを指定するには、以下の書式を使
| ENABLE_TRIGGER | `ON`, `OFF` | ON | | ENABLE_TRIGGER | `ON`, `OFF` | ON |
<<trigger_plugin,Trigger プラグイン>>のコンパイル。 <<trigger_plugin,Trigger プラグイン>>のコンパイル。
| ENABLE_TYPING | `ON`, `OFF` | ON |
<<typing_plugin,Typing プラグイン>>のコンパイル。
| ENABLE_XFER | `ON`, `OFF` | ON | | ENABLE_XFER | `ON`, `OFF` | ON |
<<xfer_plugin,Xfer プラグイン>>のコンパイル。 <<xfer_plugin,Xfer プラグイン>>のコンパイル。
@@ -755,6 +758,7 @@ WeeChat ホームディレクトリには以下のファイルが含まれます
| spell.conf | _spell_ プラグイン用の設定ファイル | 保護されません | spell.conf | _spell_ プラグイン用の設定ファイル | 保護されません
| tcl.conf | _tcl_ プラグイン用の設定ファイル | 保護されません | tcl.conf | _tcl_ プラグイン用の設定ファイル | 保護されません
| trigger.conf | _trigger_ プラグイン用の設定ファイル | 保護される場合もあります、トリガに依存します | trigger.conf | _trigger_ プラグイン用の設定ファイル | 保護される場合もあります、トリガに依存します
| typing.conf | _typing_ プラグイン用の設定ファイル | 保護されません
| xfer.conf | _xfer_ プラグイン用の設定ファイル | 保護されません | xfer.conf | _xfer_ プラグイン用の設定ファイル | 保護されません
| weechat.log | WeeChat ログファイル | 保護されません | weechat.log | WeeChat ログファイル | 保護されません
|=== |===
@@ -803,7 +807,8 @@ WeeChat を起動した端末の例:
▲ "status" と "input" バー "nicklist" バー ▲ ▲ "status" と "input" バー "nicklist" バー ▲
.... ....
画面は以下のエリアから構成されます: // TRANSLATION MISSING
By default, the screen is divided up into the following areas:
* チャットログが表示されるチャットエリア (画面の真ん中)、それぞれの行は: * チャットログが表示されるチャットエリア (画面の真ん中)、それぞれの行は:
** 時刻 ** 時刻
@@ -910,6 +915,14 @@ WeeChat を起動した端末の例:
| window_number | `2` | 現在のウィンドウ番号 | window_number | `2` | 現在のウィンドウ番号
|=== |===
// TRANSLATION MISSING
Each aspect of the layout can be customized with the appropriate <<command_line,command>>:
<<command_weechat_bar,`/bar`>> to customize the bars,
<<command_weechat_buffer,/buffer>> and <<command_weechat_window,`/window`>>
to customize <<buffers_and_windows,buffers and windows>>,
and <<command_weechat_layot,/layout>> to name, save and restore the screen layout
and the association between windows and buffers.
[[command_line]] [[command_line]]
=== コマンドライン === コマンドライン
@@ -1155,12 +1168,23 @@ _バッファ_ は番号、名前、表示された行
* irc チャンネル * irc チャンネル
* irc プライベートメッセージ * irc プライベートメッセージ
// TRANSLATION MISSING
_window_ _window_
はバッファを表示する画面エリアのことです。画面を複数のウィンドウに分割することができます はバッファを表示する画面エリアのことです。画面を複数のウィンドウに分割することができます
(examples <<window_split_examples,below>>, see the
<<command_weechat_window,/window command>> for details).
それぞれのウィンドウは 1 つのバッファを表示します。バッファは隠したり それぞれのウィンドウは 1 つのバッファを表示します。バッファは隠したり
(ウィンドウに表示しない)、複数のウィンドウに表示することできます。 (ウィンドウに表示しない)、複数のウィンドウに表示することできます。
// TRANSLATION MISSING
Screen layouts and the association between windows and buffers can be
<<command_weechat_layout,saved and restored>>.
// TRANSLATION MISSING
[[window_split_examples]]
==== Examples
水平方向分割の例 (`/window splith`): 水平方向分割の例 (`/window splith`):
.... ....
@@ -2024,7 +2048,18 @@ irc サーバ "libera" に含まれる全てのバッファに対して設定す
| kbd:[Alt+a] | 変更のあった次のバッファに移動 (優先順位: ハイライト、新規メッセージ、その他) | `+/input jump_smart+` | kbd:[Alt+a] | 変更のあった次のバッファに移動 (優先順位: ハイライト、新規メッセージ、その他) | `+/input jump_smart+`
// TRANSLATION MISSING // TRANSLATION MISSING
| kbd:[Alt+Shift+B] | Toggle buflist. | `+/buflist toggle+` | kbd:[Alt+Shift+B] | Toggle buflist. | `+/buflist toggle+`
| kbd:[Alt+h] | ホットリスト (他のバッファにあった変更通知リスト) を消去 | `+/input hotlist_clear+` // TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+c] | Clear hotlist (activity notification on buffers). | `+/input hotlist_clear+`
// TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+m] | Remove current buffer from hotlist. | `+/input hotlist_remove_buffer+`
// TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+r] | Restore latest hotlist removed in the current buffer. | `+/input hotlist_restore_buffer+`
// TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+Shift+R] | Restore latest hotlist removed in all buffers. | `+/input hotlist_restore_all+`
| kbd:[Alt+j], | kbd:[Alt+j],
kbd:[Alt+f] | 最初のバッファに移動 | `+/buffer -+` kbd:[Alt+f] | 最初のバッファに移動 | `+/buffer -+`
| kbd:[Alt+j], | kbd:[Alt+j],
@@ -2305,7 +2340,7 @@ WeeChat はデフォルトマウスイベントの多くを定義しています
修飾キーリスト: 修飾キーリスト:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| 修飾キー | 説明 | 修飾キー | 説明
| ctrl | kbd:[Ctrl] キー | ctrl | kbd:[Ctrl] キー
@@ -2315,7 +2350,7 @@ WeeChat はデフォルトマウスイベントの多くを定義しています
ボタン/ホイールのリスト: ボタン/ホイールのリスト:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| ボタン/ホイール | 説明 | ボタン/ホイール | 説明
| button1 | 左ボタンクリック | button1 | 左ボタンクリック
@@ -2328,7 +2363,7 @@ WeeChat はデフォルトマウスイベントの多くを定義しています
ジェスチャーのリスト (ボタンのみ対応、ホイール未対応): ジェスチャーのリスト (ボタンのみ対応、ホイール未対応):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| ジェスチャー | 距離 | ジェスチャー | 距離
| gesture-up | 3 から 19 | gesture-up | 3 から 19
@@ -2343,7 +2378,7 @@ WeeChat はデフォルトマウスイベントの多くを定義しています
未完了イベントのリスト (ボタンのみ、プラグイン/スクリプトで便利): 未完了イベントのリスト (ボタンのみ、プラグイン/スクリプトで便利):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| イベント | 説明 | イベント | 説明
| event-down | マウスボタンが押され、離されていない状態 | event-down | マウスボタンが押され、離されていない状態
@@ -2594,6 +2629,8 @@ When a plugin is unloaded, WeeChat removes:
| php | PHP スクリプト API | php | PHP スクリプト API
| spell | コマンドラインのスペルチェック | spell | コマンドラインのスペルチェック
| trigger | WeeChat およびプラグインが発生させたイベントに対するテキスト置換とコマンド実行 | trigger | WeeChat およびプラグインが発生させたイベントに対するテキスト置換とコマンド実行
// TRANSLATION MISSING
| typing | Display users currently writing messages.
| xfer | ファイル転送とダイレクトチャット | xfer | ファイル転送とダイレクトチャット
|=== |===
@@ -2914,15 +2951,131 @@ IRC プラグインは IRC プロトコルに従って他の人と会話を行
irc[6][s]://[nick[:password]@]irc.example.org[:port][/channel][,channel[...]] irc[6][s]://[nick[:password]@]irc.example.org[:port][/channel][,channel[...]]
---- ----
_nono_ というニックネームを使って _irc.libera.chat_ ホストのデフォルトポート (6667) _alice_ というニックネームを使って _irc.libera.chat_ ホストのデフォルトポート (6667)
で稼働中の IRC サーバ上の _#weechat_ と _#toto_ チャンネルに参加する例: で稼働中の IRC サーバ上の _#weechat_ と _#weechat-fr_ チャンネルに参加する例:
---- ----
$ weechat irc://nono@irc.libera.chat/#weechat,#toto $ weechat irc://alice@irc.libera.chat/#weechat,#weechat-fr
----
// TRANSLATION MISSING
[[irc_servers]]
==== Servers
[[irc_servers_add]]
===== Add a server
By default no servers are defined. You can add as many servers as you want with
the <<command_irc_server,/server>> command.
For example to connect to https://libera.chat/[libera.chat] with SSL (encrypted trafic):
----
/server add libera irc.libera.chat/6697 -ssl
----
You can tell WeeChat to auto-connect to this server on startup:
----
/set irc.server.libera.autoconnect on
----
To authenticate, it is recommended to use SASL (if supported on the server),
with the password stored as secured data (see also chapter on
<<irc_sasl_authentication,SASL authentication>>):
----
/set irc.server.libera.sasl_username "alice"
/secure set libera xxxxxxx
/set irc.server.libera.sasl_password "${sec.data.libera}"
----
If SASL is not supported, you can use a command to send a message to nickserv:
----
/set irc.server.libera.command "/msg nickserv identify ${sec.data.libera}"
----
[NOTE]
By sending a message to nickserv, you may authenticate after joining channels
which could be a problem on some channels requiring you to be authenticated
to join. In this case, you can set a command delay:
`/set irc.server.libera.command_delay 5`.
[[irc_servers_options]]
===== Server options
Server options are named `irc.server.<server>.<option>` where `<server>` is the
internal name of the server and `<option>` the name of an option. +
The value of a server option is inherited from `irc.server_default.xxx`
if the server option has the special value `null`.
For example if you created the _libera_ server with the commands above, you'll
see this with the command `/fset libera`:
....
irc.server.libera.addresses string "irc.libera.chat/6697"
irc.server.libera.anti_flood_prio_high integer null -> 2
irc.server.libera.anti_flood_prio_low integer null -> 2
irc.server.libera.autoconnect boolean on
irc.server.libera.autojoin string null -> ""
irc.server.libera.autoreconnect boolean null -> on
irc.server.libera.autoreconnect_delay integer null -> 10
irc.server.libera.autorejoin boolean null -> off
irc.server.libera.autorejoin_delay integer null -> 30
irc.server.libera.away_check integer null -> 0
irc.server.libera.away_check_max_nicks integer null -> 25
irc.server.libera.capabilities string null -> "*"
irc.server.libera.charset_message integer null -> message
irc.server.libera.command string null -> ""
irc.server.libera.command_delay integer null -> 0
irc.server.libera.connection_timeout integer null -> 60
irc.server.libera.default_chantypes string null -> "#&"
irc.server.libera.ipv6 boolean null -> on
irc.server.libera.local_hostname string null -> ""
irc.server.libera.msg_kick string null -> ""
irc.server.libera.msg_part string null -> "WeeChat ${info:version}"
irc.server.libera.msg_quit string null -> "WeeChat ${info:version}"
irc.server.libera.nicks string null -> "alice,alice1,alice2,alice3,alice4"
irc.server.libera.nicks_alternate boolean null -> on
irc.server.libera.notify string null -> ""
irc.server.libera.password string null -> ""
irc.server.libera.proxy string null -> ""
irc.server.libera.realname string null -> ""
irc.server.libera.sasl_fail integer null -> reconnect
irc.server.libera.sasl_key string null -> ""
irc.server.libera.sasl_mechanism integer null -> plain
irc.server.libera.sasl_password string "${sec.data.libera}"
irc.server.libera.sasl_timeout integer null -> 15
irc.server.libera.sasl_username string "alice"
irc.server.libera.split_msg_max_length integer null -> 512
irc.server.libera.ssl boolean on
irc.server.libera.ssl_cert string null -> ""
irc.server.libera.ssl_dhkey_size integer null -> 2048
irc.server.libera.ssl_fingerprint string null -> ""
irc.server.libera.ssl_password string null -> ""
irc.server.libera.ssl_priorities string null -> "NORMAL:-VERS-SSL3.0"
irc.server.libera.ssl_verify boolean null -> on
irc.server.libera.usermode string null -> ""
irc.server.libera.username string null -> "alice"
....
For example if you want to automatically connect to all servers you define
without having to do it on each server, you can do:
----
/set irc.server_default.autoconnect on
----
And then you can reset the server option so that it uses the default inherited
value, which is now `on` instead of the default value `off`:
----
/unset irc.server.libera.autoconnect
---- ----
[[irc_ssl_certificates]] [[irc_ssl_certificates]]
==== SSL 証明書 ===== SSL 証明書
SSL を使って IRC サーバに接続する場合、WeeChat SSL を使って IRC サーバに接続する場合、WeeChat
はデフォルトで接続が完全に信頼できるものかどうかを確認します。 はデフォルトで接続が完全に信頼できるものかどうかを確認します。
@@ -2953,7 +3106,7 @@ irc.server.xxx.ssl_verify::
より前のバージョンでは信頼性の確認に成功していたものが失敗する場合もあります。 より前のバージョンでは信頼性の確認に成功していたものが失敗する場合もあります。
[[irc_connect_oftc_with_certificate]] [[irc_connect_oftc_with_certificate]]
===== 最初の例: oftc に接続して、証明書を確認 ====== 最初の例: oftc に接続して、証明書を確認
* シェルを使って証明書をインポート: * シェルを使って証明書をインポート:
@@ -2977,7 +3130,7 @@ CAs.pem ファイル中で複数の証明書を連結することもできます
---- ----
[[irc_connect_oftc_with_certfp]] [[irc_connect_oftc_with_certfp]]
===== 2 番目の例: CertFP を使って oftc に接続 ====== 2 番目の例: CertFP を使って oftc に接続
* シェルで証明書を作成: * シェルで証明書を作成:
@@ -3003,7 +3156,7 @@ which can also be for example `~/.weechat`.
より詳しい情報は https://www.oftc.net/NickServ/CertFP を確認してください。 より詳しい情報は https://www.oftc.net/NickServ/CertFP を確認してください。
[[irc_sasl_authentication]] [[irc_sasl_authentication]]
==== SASL 認証 ===== SASL 認証
WeeChat は SASL 認証をサポートします、以下の認証メカニズムを利用できます: WeeChat は SASL 認証をサポートします、以下の認証メカニズムを利用できます:
@@ -3016,8 +3169,6 @@ WeeChat は SASL 認証をサポートします、以下の認証メカニズム
* _scram-sha-512_: SCRAM with SHA-512 digest algorithm * _scram-sha-512_: SCRAM with SHA-512 digest algorithm
* _ecdsa-nist256p-challenge_: 公開鍵/秘密鍵を使うチャレンジ認証 * _ecdsa-nist256p-challenge_: 公開鍵/秘密鍵を使うチャレンジ認証
* _external_: クライアント側 SSL 証明書 * _external_: クライアント側 SSL 証明書
* _dh-blowfish_: blowfish 暗号パスワード (*危険*、非推奨)
* _dh-aes_: AES 暗号パスワード (*危険*、非推奨)
サーバオプション: サーバオプション:
@@ -3030,7 +3181,7 @@ WeeChat は SASL 認証をサポートします、以下の認証メカニズム
(_ecdsa-nist256p-challenge_ 用) (_ecdsa-nist256p-challenge_ 用)
[[irc_sasl_ecdsa_nist256p_challenge]] [[irc_sasl_ecdsa_nist256p_challenge]]
===== SASL ECDSA-NIST256P-CHALLENGE 認証 ====== SASL ECDSA-NIST256P-CHALLENGE 認証
ECDSA-NIST256P-CHALLENGE を使って認証を行うためには、秘密鍵を作成してください ECDSA-NIST256P-CHALLENGE を使って認証を行うためには、秘密鍵を作成してください
(接続の際にパスワードは不要です)。 (接続の際にパスワードは不要です)。
@@ -3076,9 +3227,41 @@ $ openssl ec -noout -text -conv_form compressed -in ~/.config/weechat/ecdsa.pem
/reconnect libera /reconnect libera
---- ----
// TRANSLATION MISSING
[[irc_servers_connection]]
===== Connection
You can connect to server with the <<command_irc_connect,/connect>> command:
----
/connect libera
----
To disconnect:
----
/disconnect libera
----
Or just this if you are on any buffer belonging to _libera_ server (server,
channel, private):
----
/disconnect
----
When you connect to multiple servers at same time, server buffers are merged
by default and you can switch between them with the kbd:[Ctrl+x] key. +
It is possible to disable auto merge of server buffers to have independent
server buffers:
----
/set irc.look.server_buffer independent
----
// TRANSLATION MISSING // TRANSLATION MISSING
[[irc_tor_sasl]] [[irc_tor_sasl]]
==== Connect with TOR and SASL ===== Connect with TOR and SASL
// TRANSLATION MISSING // TRANSLATION MISSING
Some servers support connections with TOR (https://www.torproject.org/), Some servers support connections with TOR (https://www.torproject.org/),
@@ -3127,6 +3310,64 @@ And finally, connect to the server:
/connect irc-tor /connect irc-tor
---- ----
// TRANSLATION MISSING
[[irc_channels]]
==== Channels
You can join channels with the <<command_irc_join,/join>> command:
----
/join #channel
----
Part a channel (keeping the buffer open):
----
/part [quit message]
----
The channels you joined are not saved. If you want to join them automatically
when connecting to the server, you must set the server `autojoin` option:
----
/set irc.server.libera.autojoin "#weechat,#weechat-fr"
----
[NOTE]
Some scripts can help to automatically set this option,
see `/script search autojoin`.
Be careful, spaces can be used only to separate list of channels from keys,
for example if `#channel1` requires a key but not `#channel2`:
----
/set irc.server.libera.autojoin "#channel1,#channel2 key1"
----
For help on the format, see `/help irc.server.libera.autojoin`.
[[irc_private_messages]]
==== Private messages
You can send a private message with the <<command_irc_query,/query>> command,
which opens a separate buffer:
----
/query bob hi, how are you?
----
Without arguments the command just opens the buffer (or selects it if already open):
----
/query bob
----
To close the private buffer, you can do this command on the private buffer:
----
/close
----
[[irc_smart_filter_join_part_quit]] [[irc_smart_filter_join_part_quit]]
==== 参加/退出/終了メッセージに対するスマートフィルタ ==== 参加/退出/終了メッセージに対するスマートフィルタ
@@ -3264,7 +3505,7 @@ weechat::
カスタマイズできる一部の IRC メッセージ、別名のリストは以下です: カスタマイズできる一部の IRC メッセージ、別名のリストは以下です:
[width="100%",cols="^1m,^3m,8",options="header"] [width="100%",cols="^2m,^3m,15",options="header"]
|=== |===
| メッセージ | 別名 | 説明 | メッセージ | 別名 | 説明
| error | | エラー | error | | エラー
@@ -3530,8 +3771,8 @@ IRC サーバ名を使ったディレクトリに、チャンネル名を使っ
│ └── #mychan.weechatlog │ └── #mychan.weechatlog
├── oftc ├── oftc
│ ├── oftc.weechatlog │ ├── oftc.weechatlog
│ ├── #chan1.weechatlog │ ├── #channel1.weechatlog
│ └── #chan2.weechatlog │ └── #channel2.weechatlog
... ...
.... ....
@@ -4780,6 +5021,100 @@ _trigger.conf_ ファイル内のセクション:
include::includes/autogen_user_options.ja.adoc[tag=trigger_options] include::includes/autogen_user_options.ja.adoc[tag=trigger_options]
// TRANSLATION MISSING
[[typing_plugin]]
=== Typing
The typing plugin is used to inform other users you are typing messages and
show a list of users currently typing a message on the buffer.
It is used by IRC plugin on channel and private buffers, when the "message-tags"
capability is enabled (you can check with <<command_irc_cap,/cap>> command). +
Under the hood, typing client tag is used, following this specification:
https://ircv3.net/specs/client-tags/typing.html.
[[typing_activation]]
==== Activation
For privacy considerations, the typing feature is disabled by default. +
If you want to use it, you must enable options in both typing and irc plugins:
----
/set typing.look.enabled_nicks on
/set typing.look.enabled_self on
/set irc.look.typing_status_nicks on
/set irc.look.typing_status_self on
----
The typing notifications are displayed at the end of the status bar.
Example of status bar with the "typing" item: "bob" is typing a message and
"alice" was typing a message but made a pause:
....
│[12:55] [6] [irc/libera] 3:#test(+n){4} [Typing: bob, (alice)] │
│[@Flashy] █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[typing_signals_sent]]
==== Signals sent
When you are typing a message (not a command starting with `/`), the typing
plugin sends signals to inform other plugins (like IRC) that you are typing,
and these plugins can then send typing notifications to other users.
The following signals are sent when you are typing messages:
[width="100%",cols="1,1,5",options="header"]
|===
| Signal | Arguments | Description
| typing_self_typing | Pointer: buffer. | You are typing a message.
| typing_self_paused | Pointer: buffer. | You made a pause while typing a message.
| typing_self_cleared | Pointer: buffer. | You cleared the command line without sending the message.
| typing_self_sent | Pointer: buffer. | You sent the message to the buffer.
|===
[[typing_signals_caught]]
==== Signals caught
The typing plugin is catching some signals that can be sent by other plugins
(like IRC), to update internal hashtables used to store the typing state of
nicks on buffers. These hashtables are used to build the content of "typing"
bar item.
The following signals are caught by the typing plugin:
[width="100%",cols="1,4,3",options="header"]
|===
| Signal | Arguments | Description
| typing_set_nick |
String: buffer pointer + ";" + state (one of: "off", "typing", "paused",
"cleared") + ";" + nick. +
Example: "0x1234abcd;typing;alice". |
Set typing state for a nick on a buffer.
| typing_reset_buffer |
Pointer: buffer. |
Remove typing state for all nicks on a buffer.
|===
[[typing_options]]
==== オプション
_typing.conf_ ファイル内のセクション:
[width="100%",cols="3m,6m,16",options="header"]
|===
| セクション | 操作コマンド | 説明
| look | /set typing.look.* | 外観
|===
オプション:
include::includes/autogen_user_options.ja.adoc[tag=typing_options]
[[xfer_plugin]] [[xfer_plugin]]
=== Xfer === Xfer
@@ -79,6 +79,8 @@ _last_nick_speaking_time_   (pointer, hdata: "irc_channel_speaking") +
_modelists_   (pointer, hdata: "irc_modelist") + _modelists_   (pointer, hdata: "irc_modelist") +
_last_modelist_   (pointer, hdata: "irc_modelist") + _last_modelist_   (pointer, hdata: "irc_modelist") +
_join_smart_filtered_   (hashtable) + _join_smart_filtered_   (hashtable) +
_typing_state_   (integer) +
_typing_status_sent_   (time) +
_buffer_   (pointer, hdata: "buffer") + _buffer_   (pointer, hdata: "buffer") +
_buffer_as_string_   (string) + _buffer_as_string_   (string) +
_prev_channel_   (pointer, hdata: "irc_channel") + _prev_channel_   (pointer, hdata: "irc_channel") +
@@ -237,6 +239,8 @@ _sasl_scram_client_first_   (string) +
_sasl_scram_salted_pwd_   (other) + _sasl_scram_salted_pwd_   (other) +
_sasl_scram_salted_pwd_size_   (integer) + _sasl_scram_salted_pwd_size_   (integer) +
_sasl_scram_auth_message_   (string) + _sasl_scram_auth_message_   (string) +
_sasl_temp_username_   (string) +
_sasl_temp_password_   (string) +
_is_connected_   (integer) + _is_connected_   (integer) +
_ssl_connected_   (integer) + _ssl_connected_   (integer) +
_disconnected_   (integer) + _disconnected_   (integer) +
@@ -267,6 +271,10 @@ _chantypes_   (string) +
_chanmodes_   (string) + _chanmodes_   (string) +
_monitor_   (integer) + _monitor_   (integer) +
_monitor_time_   (time) + _monitor_time_   (time) +
_clienttagdeny_   (string) +
_clienttagdeny_count_   (integer) +
_clienttagdeny_array_   (string, array_size: "clienttagdeny_count") +
_typing_allowed_   (integer) +
_reconnect_delay_   (integer) + _reconnect_delay_   (integer) +
_reconnect_start_   (time) + _reconnect_start_   (time) +
_command_time_   (time) + _command_time_   (time) +
@@ -8,7 +8,7 @@
|=== |===
| Wtyczka | Nazwa | Opis | Hashtable (wejście) | Hashtable (wyjście) | Wtyczka | Nazwa | Opis | Hashtable (wejście) | Hashtable (wyjście)
| irc | irc_message_parse | przetwarza wiadomość IRC | "message": wiadomość IRC, "server": nazwa serwera (opcjonalne) | "tags": tagi, "message_without_tags": wiadomość bez tagów, "nick": nick, "user": użytkownik, "host": host, "command": komenda, "channel": kanał, "arguments": argumenty (razem z kanałem), "text": tekst (na przykład wiadomość użytkownika), "pos_command": indeks wiadomości "command" message ("-1" jeśli "command" nie zostało znalezione), "pos_arguments": indeks wiadomości "arguments" ("-1" jeśli "arguments" nie zostało znalezione), "pos_channel": indeks wiadomości "channel" ("-1" jeśli "channel" nie zostało znalezione), "pos_text": indeks słowa "text" ("-1" jeśli "text" nie zostało znalezione) | irc | irc_message_parse | przetwarza wiadomość IRC | "message": wiadomość IRC, "server": nazwa serwera (opcjonalne) | "tags": tagi, "tag_xxx": niewyescapowana wartość tagu "xxx" (jeden klucz per tag), "message_without_tags": wiadomość bez tagów, "nick": nick, "user": użytkownik, "host": host, "command": komenda, "channel": kanał, "arguments": argumenty (razem z kanałem), "text": tekst (na przykład wiadomość użytkownika), "pos_command": indeks wiadomości "command" ("-1" jeśli "command" nie zostało znalezione), "pos_arguments": indeks wiadomości "arguments" ("-1" jeśli "arguments" nie zostało znalezione), "pos_channel": indeks wiadomości "channel" ("-1" jeśli "channel" nie zostało znalezione), "pos_text": indeks słowa "text" ("-1" jeśli "text" nie zostało znalezione)
| irc | irc_message_split | dziel wiadomość IRC (aby zmieściła się domyślnie w 512 bajtach) | "message": wiadomość IRC, "server": nazwa serwera (opcjonalne) | "msg1" ... "msgN": wiadomości do wysłania (bez kończącego "\r\n"), "args1" ... "argsN": argumenty wiadomości, "count": ilość wiadomości | irc | irc_message_split | dziel wiadomość IRC (aby zmieściła się domyślnie w 512 bajtach) | "message": wiadomość IRC, "server": nazwa serwera (opcjonalne) | "msg1" ... "msgN": wiadomości do wysłania (bez kończącego "\r\n"), "args1" ... "argsN": argumenty wiadomości, "count": ilość wiadomości
@@ -4,18 +4,26 @@
// //
// tag::plugins_priority[] // tag::plugins_priority[]
. charset (15000) . charset (16000)
. logger (14000) . logger (15000)
. exec (13000) . exec (14000)
. trigger (12000) . trigger (13000)
. spell (11000) . spell (12000)
. alias (10000) . alias (11000)
. buflist (9000) . buflist (10000)
. fifo (8000) . fifo (9000)
. typing (8000)
. xfer (7000) . xfer (7000)
. irc (6000) . irc (6000)
. relay (5000) . relay (5000)
. guile, javascript, lua, perl, php, python, ruby, tcl (4000) . guile (4007)
. javascript (4006)
. lua (4005)
. perl (4004)
. php (4003)
. python (4002)
. ruby (4001)
. tcl (4000)
. script (3000) . script (3000)
. fset (2000) . fset (2000)
// end::plugins_priority[] // end::plugins_priority[]
+264 -180
View File
@@ -17,30 +17,33 @@ cel: nazwa serwera
* `+allchan+`: wykonuje komendę na wszystkich kanałach na połączonych serwerach * `+allchan+`: wykonuje komendę na wszystkich kanałach na połączonych serwerach
---- ----
/allchan [-current] [-exclude=<kanał>[,<kanał>...]] <komenda> /allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
[-current] -include=<kanał>[,<kanał>...] <komenda> [-current] [-parted] -include=<channel>[,<channel>...] <command>
-current: wykonuje komendę tylko na kanałach obecnego serwera -current: execute command for channels of current server only
-exclude: wyklucza niektóre kanały (wildcard "*" jest dozwolony) -parted: execute on parted channels only
-include: uwzględnia tylko niektóre znaki (wildcard "*" est dozwolony) -exclude: exclude some channels (wildcard "*" is allowed)
komenda: komenda do wykonania (albo tekst do wysłania do bufora jeśli komenda nie zaczyna się od '/') -include: include only some channels (wildcard "*" is allowed)
command: command to execute (or text to send to buffer if command does not start with '/')
Komenda i argumenty są przetwarzane (zobacz /help eval), następujące zmienne są podmieniane: Command and arguments are evaluated (see /help eval), the following variables are replaced:
$server nazwa serwera $server server name
$channel nazwa kanału $channel channel name
$nick nick na serwerze $nick nick on server
${irc_server.xxx} zmienna xxx na serwerze ${irc_server.xxx} variable xxx in server
${irc_channel.xxx} zmienna xxx w kanalel ${irc_channel.xxx} variable xxx in channel
Przykłady: Examples:
wykonuje '/me testuje' na wszystkich kanałach: execute '/me is testing' on all channels:
/allchan /me testuje /allchan /me is testing
wysyła 'witam' wszędzie tylko nie na #weechat: say 'hello' everywhere but not on #weechat:
/allchan -exclude=#weechat witam /allchan -exclude=#weechat hello
wysyła 'witam' wszędzie poza #weechat oraz kanałami zaczynającymi się od #linux: say 'hello' everywhere but not on #weechat and channels beginning with #linux:
/allchan -exclude=#weechat,#linux* witam /allchan -exclude=#weechat,#linux* hello
wysyła 'witam' na wszytkich kanałach zaczynających się od #linux: say 'hello' on all channels beginning with #linux:
/allchan -include=#linux* witam /allchan -include=#linux* hello
close all buffers with parted channels:
/allchan -parted /close
---- ----
[[command_irc_allpv]] [[command_irc_allpv]]
@@ -100,6 +103,26 @@ Przykłady:
/allserv /whois $nick /allserv /whois $nick
---- ----
[[command_irc_auth]]
* `+auth+`: uwuerzytelnienie za pomocą SASL
----
/auth [<użytkownik> <hasło>]
użytkownik: nazwa użytkownika SASL (zawartość jest przetwarzana, zobacz /help eval; opcje serwera są dostępne przez ${irc_server.xxx} i ${server} jest zastępowane nazwą serwera)
hasło: hasło SASL albo ścieżka do pliku z kluczem prywatnym (zawartość jest przetwarzana, zobacz /help eval; opcje serwera są dostępne przez ${irc_server.xxx} i ${server} jest zastępowane nazwą serwera)
Jeśli nazwa użytkownika i hasło nie zostaną podane, wtedy będą użyte wartości opcji serwera "sasl_username" i "sasl_password" (lub "sasl_key").
Przykłady:
uwierzytelnienie z nazwą użytkownika/hasłem zdefiniowanymi dla serwera:
/auth
uwierzytelnienie jako inny użytkownik:
/auth user2 password2
uwierzytelnienie jako inny użytkownik za pomocą mechanizmu ecdsa-nist256p-challenge:
/auth user2 ${weechat_config_dir}/ecdsa2.pem
----
[[command_irc_ban]] [[command_irc_ban]]
* `+ban+`: banuje nick albo host * `+ban+`: banuje nick albo host
@@ -129,7 +152,7 @@ Bez podania argumentu komenda wyświetla listę banów na obecnym kanale.
Bez argumentu, wysyłane są "ls" i "list". Bez argumentu, wysyłane są "ls" i "list".
Opcje wspierane przez WeeChat to: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names. Opcje wspierane przez WeeChat to: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
Opcje automatycznie włączane na serwerach można ustawić za pomocą opcji irc.server_default.capabilities (albo dla konkretnego serwera, opcja irc.server.xxx.capabilities). Opcje automatycznie włączane na serwerach można ustawić za pomocą opcji irc.server_default.capabilities (albo dla konkretnego serwera, opcja irc.server.xxx.capabilities).
@@ -807,6 +830,15 @@ maska: wyświetl tylko serwisy pasujące do maski
typ: wyświetl tylko serwisy tego typu typ: wyświetl tylko serwisy tego typu
---- ----
[[command_irc_setname]]
* `+setname+`: ustaw real name
----
/setname <realname>
realname: nowy real name
----
[[command_irc_squery]] [[command_irc_squery]]
* `+squery+`: dostarcza wiadomość do usługi * `+squery+`: dostarcza wiadomość do usługi
@@ -1270,7 +1302,7 @@ Przykłady:
/debug list /debug list
set <wtyczka> <poziom> set <wtyczka> <poziom>
dump [<wtyczka>] dump [<wtyczka>]
buffer|color|infolists|memory|tags|term|windows buffer|color|infolists|libs|certs|memory|tags|term|windows
mouse|cursor [verbose] mouse|cursor [verbose]
hdata [free] hdata [free]
time <komenda> time <komenda>
@@ -1288,6 +1320,7 @@ Przykłady:
hooks: wyświetla informacje o hooks hooks: wyświetla informacje o hooks
infolists: wyświetla informacje o infolistach infolists: wyświetla informacje o infolistach
libs: wyświetla informacje o użytych zewnętrznych bibliotekach libs: wyświetla informacje o użytych zewnętrznych bibliotekach
certs: wyświetla ilość załadowanych zaufanych centrów certyfikacyjnych
memory: wyświetla informacje o zużyciu pamięci memory: wyświetla informacje o zużyciu pamięci
mouse: przełącza debugowanie myszy mouse: przełącza debugowanie myszy
tags: wyświetla tagi dla linii tags: wyświetla tagi dla linii
@@ -1303,101 +1336,116 @@ infolists: wyświetla informacje o infolistach
/eval [-n|-s] [-d] <wyrażenie> /eval [-n|-s] [-d] <wyrażenie>
[-n] [-d [-d]] -c <wyrażenie1> <operator> <wyrażenie2> [-n] [-d [-d]] -c <wyrażenie1> <operator> <wyrażenie2>
-n: wyświetla wynik bez wysyłania go do buforu (tryb debugowania) -n: display result without sending it to buffer (debug mode)
-s: podziel wyrażenie przed przetworzeniem go (wiele komend może być oddzielonych średnikami) -s: split expression before evaluating it (many commands can be separated by semicolons)
-d: wyświetl wyjście debugowe po ewaluacji (drugie -d wyświetli więcej informacji) -d: display debug output after evaluation (with two -d: more verbose debug)
-c: przetwarza jako warunek: użyj operatorów i nawiasów, zwraca wartość logiczną ("0" lub "1") -c: evaluate as condition: use operators and parentheses, return a boolean value ("0" or "1")
wyrażenie: wyrażenie do przetworzenia, zmienne o formacie ${zmienna} są zastępowane (zobacz niżej); wiele komend można oddzielić średnikami expression: expression to evaluate, variables with format ${variable} are replaced (see below); many commands can be separated by semicolons
operator: operator logiczny lub porównania: operator: a logical or comparison operator:
- operatory logiczne: - logical operators:
&& logiczne „i” && boolean "and"
|| logiczne „lub” || boolean "or"
- operatory porównania: - comparison operators:
== równy == equal
!= różny != not equal
<= mniejszy lub równy <= less or equal
< mniejszy < less
>= większy lub równy >= greater or equal
> większy > greater
=~ pasuje do rozszerzonego wyrażenia regularnego POSIX =~ is matching POSIX extended regex
!~ NIE pasuje do rozszerzonego wyrażenia regularnego POSIX !~ is NOT matching POSIX extended regex
==* pasuje do maski, rozróżnia wielkość znaków (dzika karta „*” dozwolona) ==* is matching mask, case sensitive (wildcard "*" is allowed)
!!* NIE pasuje do maski, rozróżnia wielkość znaków (dzika karta „*” dozwolona) !!* is NOT matching mask, case sensitive (wildcard "*" is allowed)
=* pasuje do maski, nie rozróżnia wielkość znaków (dzika karta „*” dozwolona) =* is matching mask, case insensitive (wildcard "*" is allowed)
!* NIE pasuje do maski, nie rozróżnia wielkość znaków (dzika karta „*” dozwolona) !* is NOT matching mask, case insensitive (wildcard "*" is allowed)
==- jest zawarte, rozróżnia wielkość znaków ==- is included, case sensitive
!!- NIE jest zawarte,rozróżnia wielkość znaków !!- is NOT included, case sensitive
=- jest zawarte, nie rozróżnia wielkość znaków =- is included, case insensitive
!- NIE jest zawarte, nie rozróżnia wielkość znaków !- is NOT included, case insensitive
Wyrażenie jest uznawane za „prawdziwe” jeśli nie jest NULL, nie jest puste, oraz różni się od „0”. An expression is considered as "true" if it is not NULL, not empty, and different from "0".
Porównania dokonuje się z użyciem liczb całkowitych jeśli oba wyrażenia są liczbami całkowitymi, w jednym z następujących formatów: The comparison is made using floating point numbers if the two expressions are valid numbers, with one of the following formats:
- liczby całkowite (przykłady: 5, -7) - integer (examples: 5, -7)
- liczby zmiennoprzecinkowe (przykłady: 5.2, -7.5, 2.83e-2) - floating point number (examples: 5.2, -7.5, 2.83e-2)
- liczby szesnastkowe (przykłady: 0xA3, -0xA3) - hexadecimal number (examples: 0xA3, -0xA3)
W celu wymuszenia porównywania ciągów, należy umieścić każde wyrażenie w cudzysłowie, na przykład: To force a string comparison, you can add double quotes around each expression, for example:
50 > 100 ==> 0 50 > 100 ==> 0
"50" > "100" ==> 1 "50" > "100" ==> 1
Niektóre zmienne w wyrażeniach są zamieniane, poprzez zastosowanie formatu ${zmienna}, według priorytetu zmienną może być: Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
1. nieprzetworzony ciąg (format: "raw:xxx") 1. the string itself without evaluation (format: "raw:xxx")
2. przetworzony ciąg (format: "eval:xxx") 2. a user-defined variable (format: "name")
3. przetworzony warunek (format: "eval_cond:xxx") 3. an evaluated sub-string (format: "eval:xxx")
4. ciąg z wyescapowanymi znakami (format: "esc:xxx" lub "\xxx") 4. an evaluated condition (format: "eval_cond:xxx")
5. ciąg ze znakami do ukrycia (format: "hide:char,string") 5. a string with escaped chars (format: "esc:xxx" or "\xxx")
6. ciąg o maksymalnej długości (format: "cut:max,suffix,string" lub "cut:+max,suffix,string") 6. a string with chars to hide (format: "hide:char,string")
lub maksymalna ilość znaków wyświetlanych na ekranie (format: "cutscr:max,suffix,string" lub "cutscr:+max,suffix,string") 7. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
7. odwrócony ciąg (format: "rev:xxx") or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
8. powtórzony ciąg (format: "repeat:ilość,ciąg") 8. a reversed string (format: "rev:xxx" or "revscr:xxx")
9. długość ciągu (format: "length:xxx" or "lengthscr:xxx") 9. a repeated string (format: "repeat:count,string")
10. kolor (format "color:xxx", zobacz „Opis API wtyczek”, funkcja "color") 10. length of a string (format: "length:xxx" or "lengthscr:xxx")
11. modyfikator (format: "modifier:name,data,string") 11. split of a string (format: "split:number,separators,flags,xxx")
12. informacja (format: "info:nazwa,argumenty", argumenty są opcjonalne) 12. split of shell argmuents (format: "split_shell:number,xxx")
13. ciąg zakodowany/zdekodowany z base 16/32/64 (format: "base_encode:base,xxx" lub "base_decode:base,xxx") 13. a color (format: "color:xxx", see "Plugin API reference", function "color")
14. obecna data/czas (format: "date" lub "date:format") 14. a modifier (format: "modifier:name,data,string")
15. zmienna środowiskowa (format: "env:XXX") 15. an info (format: "info:name,arguments", arguments are optional)
16. wyrażenie warunkowe (format: "if:condition?value_if_true:value_if_false") 16. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
17. wynik wyrażenia z nawiasami i operatorami + - * / // % ** (format: "calc:xxx") 17. current date/time (format: "date" or "date:format")
18. przetłumaczony ciąg (format: "translate:xxx") 18. an environment variable (format: "env:XXX")
19. opcja (format: plik.sekcja.opcja) 19. a ternary operator (format: "if:condition?value_if_true:value_if_false")
20. zmienna lokalna w buforze 20. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
21. nazwa hdatay/zmiennej (wartość jest automatycznie konwertowana na ciąg znaków), domyślnie „window” i „buffer” wskazują na aktualne okno/bufor. 21. a random integer number (format: "random:min,max")
Format dla hdata może być jednym z poniższych: 22. a translated string (format: "translate:xxx")
hdata.zmienna1.zmienna2...: inicjuje hdata (wskaźnik musi być znany), następnie wypytuje zmienne jedna po drugiej (inne hdata mogą być następne) 23. define a user variable (format: "define:name,value")
hdata[list].zmienna1.zmienna2...: inicjuje hdata z wykorzystaniem listy, na przykład: 24. an option (format: "file.section.option")
${buffer[gui_buffers].full_name}: pełna nazwa buforu w połączonej liście buforów 25. a local variable in buffer
${plugin[weechat_plugins].name}: nazwa pierwszej wtyczki w połączonej liście wtyczek 26. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
hdata[wskaźnik].zmienna1.zmienna2...: zacznij z hdata używając wskaźnika, na przykład: Format for hdata can be one of following:
${buffer[0x1234abcd].full_name}: pełna nazwa buforu z tym wskaźnikiem (może zostać użyte w triggerach) hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
${buffer[my_pointer].full_name}: pełna nazwa buforu z jego wskaźnikiem (może zostać użyte w triggerach) hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example:
Nazwy hdata i zmiennych, można znaleźć w „Opisie API wtyczek”, funkcja "weechat_hdata_get". ${buffer[gui_buffers].full_name}: full name of first buffer in linked list of buffers
${plugin[weechat_plugins].name}: name of first plugin in linked list of plugins
hdata[pointer].var1.var2...: start with a hdata using a pointer, for example:
${buffer[0x1234abcd].full_name}: full name of the buffer with this pointer (can be used in triggers)
${buffer[my_pointer].full_name}: full name of the buffer with this pointer name (can be used in triggers)
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".
Przykłady (proste ciągi): Examples (simple strings):
/eval -n ${raw:${info:version}} ==> ${info:version} /eval -n ${raw:${info:version}} ==> ${info:version}
/eval -n ${eval_cond:${window.win_width}>100} ==> 1 /eval -n ${eval_cond:${window.win_width}>100} ==> 1
/eval -n ${info:version} ==> 0.4.3 /eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user /eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3 /eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.password} ==> secret /eval -n ${sec.data.password} ==> secret
/eval -n ${window} ==> 0x2549aa0 /eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320 /eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat /eval -n ${window.buffer.full_name} ==> core.weechat
/eval -n ${window.buffer.number} ==> 1 /eval -n ${window.buffer.number} ==> 1
/eval -n ${\t} ==> <tab> /eval -n ${\t} ==> <tab>
/eval -n ${hide:-,${relay.network.password}} ==> -------- /eval -n ${hide:-,${relay.network.password}} ==> --------
/eval -n ${cut:3,+,test} ==> tes+ /eval -n ${cut:3,+,test} ==> tes+
/eval -n ${cut:+3,+,test} ==> te+ /eval -n ${cut:+3,+,test} ==> te+
/eval -n ${date:%H:%M:%S} ==> 07:46:40 /eval -n ${date:%H:%M:%S} ==> 07:46:40
/eval -n ${if:${info:term_width}>80?big:small} ==> big /eval -n ${if:${info:term_width}>80?big:small} ==> big
/eval -n ${rev:Hello} ==> olleH /eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> ----- /eval -n ${repeat:5,-} ==> -----
/eval -n ${length:test} ==> 4 /eval -n ${length:test} ==> 4
/eval -n ${calc:(5+2)*3} ==> 21 /eval -n ${split:1,,,abc,def,ghi} ==> abc
/eval -n ${base_encode:64,test} ==> dGVzdA== /eval -n ${split:-1,,,abc,def,ghi} ==> ghi
/eval -n ${base_decode:64,dGVzdA==} ==> test /eval -n ${split:count,,,abc,def,ghi} ==> 3
/eval -n ${translate:Plugin} ==> Wtyczka /eval -n ${split:random,,,abc,def,ghi} ==> def
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
/eval -n ${calc:(5+2)*3} ==> 21
/eval -n ${random:0,10} ==> 3
/eval -n ${base_encode:64,test} ==> dGVzdA==
/eval -n ${base_decode:64,dGVzdA==} ==> test
/eval -n ${translate:Plugin} ==> Extension
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
Przykłady (warunki): Examples (conditions):
/eval -n -c ${window.buffer.number} > 2 ==> 0 /eval -n -c ${window.buffer.number} > 2 ==> 0
/eval -n -c ${window.win_width} > 100 ==> 1 /eval -n -c ${window.win_width} > 100 ==> 1
/eval -n -c (8 > 12) || (5 > 2) ==> 1 /eval -n -c (8 > 12) || (5 > 2) ==> 1
@@ -1509,60 +1557,63 @@ Wartość: ilość elementów historii do pokazania
---- ----
/input <akcja> [<argumenty>] /input <akcja> [<argumenty>]
lista akcji: list of actions:
return: symuluje klawisz "enter" return: simulate key "enter"
complete_next: dopełnia słowo następnym dopełnieniem complete_next: complete word with next completion
complete_previous: dopełnia słowo poprzednim dopełnieniem complete_previous: complete word with previous completion
search_text_here: szuka testu w obecnej pozycji w buforze search_text_here: search text in buffer at current position
search_text: szuka tekstu w buforze search_text: search text in buffer
search_switch_case: przełącza na dokładne dopasowanie przy szukaniu search_switch_case: switch exact case for search
search_switch_regex: przełącza typy wyszukiwania ciąg/wyrażenie regularne search_switch_regex: switch search type: string/regular expression
search_switch_where: zmienia miejsce przeszukiwania na wiadomości/przedrostki search_switch_where: switch search in messages/prefixes
search_previous: szuka poprzednich linii search_previous: search previous line
search_next: szuka następnych linii search_next: search next line
search_stop_here: zatrzymuje wyszukiwanie na obecnej pozycji search_stop_here: stop search at current position
search_stop: zatrzymuje wyszukiwanie search_stop: stop search
delete_previous_char: usuwa poprzedni znak delete_previous_char: delete previous char
delete_next_char: usuwa następny znak delete_next_char: delete next char
delete_previous_word: usuwa poprzednie słowo delete_previous_word: delete previous word
delete_next_word: usuwa następne słowo delete_next_word: delete next word
delete_beginning_of_line: usuwa od początku linii do kursora delete_beginning_of_line: delete from beginning of line until cursor
delete_end_of_line: usuwa od kursora do końca linii delete_end_of_line: delete from cursor until end of line
delete_line: usuwa cała lin delete_line: delete entire line
clipboard_paste: wkleja ze schowka clipboard_paste: paste from the internal clipboard
transpose_chars: zamienia dwa znaki transpose_chars: transpose two chars
undo: cofa ostatnia akcję w linii poleceń undo: undo last command line action
redo: ponownie wykonuje cofniętą akcję w linii poleceń redo: redo last command line action
move_beginning_of_line: przesuwa kursor na początek linii move_beginning_of_line: move cursor to beginning of line
move_end_of_line: przesuwa kursor na koniec linii move_end_of_line: move cursor to end of line
move_previous_char: przesuwa kursor do poprzedniego znaku move_previous_char: move cursor to previous char
move_next_char: przesuwa kursor do następnego znaku move_next_char: move cursor to next char
move_previous_word: przesuwa kursor do poprzedniego słowa move_previous_word: move cursor to previous word
move_next_word: przesuwa kursor do następnego słowa move_next_word: move cursor to next word
history_previous: przywołuje poprzednia komendę z historii obecnego bufora history_previous: recall previous command in current buffer history
history_next: przywołuje następną komendę z historii obecnego bufora history_next: recall next command in current buffer history
history_global_previous: przywołuje poprzednią komendę z globalnej historii history_global_previous: recall previous command in global history
history_global_next: przywołuje następną komendę z globalnej historii history_global_next: recall next command in global history
jump_smart: przechodzi do następnego bufora z aktywnością jump_smart: jump to next buffer with activity
jump_last_buffer_displayed: przechodzi do ostatnio wyświetlanego bufora (przed ostatnim przeskoczeniem do bufora) jump_last_buffer_displayed: jump to last buffer displayed (before last jump to a buffer)
jump_previously_visited_buffer: przeskakuje do poprzedniego bufora jump_previously_visited_buffer: jump to previously visited buffer
jump_next_visited_buffer: przeskakuje to następnego bufora jump_next_visited_buffer: jump to next visited buffer
hotlist_clear: czyści hotlistę (opcjonaly argument: "lowest" czyści najniższy poziom na hotliście, "highest" czyści najwyższy poziom na hotliście, albo maska poziomu: liczba będąca kombinacją 1=join/part, 2=wiadomość, 4=prywatny, 8=podświetlenie) hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight)
grab_key: przechwytuje klawisz (opcjonalny argument: opóźnienie końca przechwycenia, domyślnie jest to 500 milisekund) hotlist_remove_buffer: remove current buffer from hotlist
grab_key_command: przechwytuje klawisz z przypisaną komendą (opcjonalny argument: opóźnienie końca przechwycenia, domyślnie jest to 500 milisekund) hotlist_restore_buffer: restore latest hotlist removed in the current buffer
grab_mouse: przechwytuje kod zdarzenia myszy hotlist_restore_all: restore latest hotlist removed in all buffers
grab_mouse_area: przechwytuje kod zdarzenia myszy z obszarem grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
set_unread: ustawia znacznik nie przeczytania dla wszystkich buforów grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
set_unread_current_buffer: ustawia znacznik nie przeczytania dla obecnego bufora grab_mouse: grab mouse event code
switch_active_buffer: przełącza do następnego połączonego buforu grab_mouse_area: grab mouse event code with area
switch_active_buffer_previous: przełącza do poprzedniego połączonego buforu set_unread: set unread marker for all buffers
zoom_merged_buffer: zoom na połączony bufor set_unread_current_buffer: set unread marker for current buffer
insert: wkleja tekst do linii poleceń (dozwolone są wyescapowane znaki, zobacz /help print) switch_active_buffer: switch to next merged buffer
send: wysyła tekst do bufora switch_active_buffer_previous: switch to previous merged buffer
paste_start: zaczyna wklejanie (tryb z rozpoznawaniem wklejanego tekstu) zoom_merged_buffer: zoom on merged buffer
paste_stop: kończy wklejanie (tryb z rozpoznawaniem wklejanego tekstu) insert: insert text in command line (escaped chars are allowed, see /help print)
send: send text to the buffer
paste_start: start paste (bracketed paste mode)
paste_stop: stop paste (bracketed paste mode)
Ta komenda jest używana do przypisywania klawiszy lub przez wtyczki. This command is used by key bindings or plugins.
---- ----
[[command_weechat_key]] [[command_weechat_key]]
@@ -1643,6 +1694,8 @@ windows: zapisuje/stosuje tylko okna (bufory wyświetlane w każdym oknie)
Komenda wywołana bez argumentów wyświetli zapisane układy. Komenda wywołana bez argumentów wyświetli zapisane układy.
Obecny układ można zapisać podczas wykonywania komendy /quit za pomocą opcji "weechat.look.save_layout_on_exit". Obecny układ można zapisać podczas wykonywania komendy /quit za pomocą opcji "weechat.look.save_layout_on_exit".
Uwaga: zapamiętywany jest tylko podział okien i numery buforów. Bufory nie są otwierane. Oznacza to, że musisz na przykład samemu wejść na kanały IRC w celu otwarcia buforów, zapisany układ zostanie zastosowany po otwarciu buforów.
---- ----
[[command_weechat_mouse]] [[command_weechat_mouse]]
@@ -1692,23 +1745,28 @@ Przykłady:
* `+plugin+`: lista/załaduj/wyładuj wtyczkę * `+plugin+`: lista/załaduj/wyładuj wtyczkę
---- ----
/plugin list|listfull [<nazwa>] /plugin list [-o|-ol|-i|-il|<name>]
load <nazwapliku> [<argumenty>] listfull [<name>]
autoload [<argumenty>] load <filename> [<arguments>]
reload [<nazwa>|* [<argumenty>]] autoload [<arguments>]
unload [<nazwa>] reload [<name>|* [<arguments>]]
unload [<name>]
list: lista załadowanych wtyczek list: list loaded plugins
listfull: lista załadowanych wtyczek (szczegółowa) -o: send list of loaded plugins to buffer (string in English)
load: ładuje wtyczkę -ol: send list of loaded plugins to buffer (translated string)
autoload: automatycznie ładuje wtyczki w katalogu systemowym lub użytkownika -i: copy list of loaded plugins in command line (for sending to buffer) (string in English)
reload: przeładuje pojedynczą wtyczkę (jeśli nie podano nazwy, przeładuje wszystkie wtyczki) -il: copy list of loaded plugins in command line (for sending to buffer) (translated string)
unload: wyładowuje wtyczkę (jeśli nie podano nazwy, wyładuje wszystkie wtyczkę name: a plugin name
nazwapliku: wtyczka (plik) do załadowania listfull: list loaded plugins (verbose)
nazwa: nazwa wtyczki load: load a plugin
argumenty: argumenty przekazywane do wtyczki podczas ładowania filename: plugin (file) to load
arguments: arguments given to plugin on load
autoload: autoload plugins in system or user directory
reload: reload a plugin (if no name given, unload all plugins, then autoload plugins)
unload: unload a plugin (if no name given, unload all plugins)
Bez argumentów ta komenda wyświetli wszystkie załadowane wtyczki. Without argument, this command lists loaded plugins.
---- ----
[[command_weechat_print]] [[command_weechat_print]]
@@ -1934,6 +1992,32 @@ Przykłady:
/set env ABC "" /set env ABC ""
---- ----
[[command_weechat_toggle]]
* `+toggle+`: toggle value of a config option
----
/toggle <option> [<value> [<value>...]]
option: name of an option
value: possible values for the option (values are split like the shell command arguments: quotes can be used to preserve spaces at the beginning/end of values)
Behavior:
- only an option of type boolean or string can be toggled without a value:
- boolean: toggle between on/off according to current value
- string: toggle between empty string and default value (works only if empty string is allowed for the option)
- with a single value given, toggle between this value and the default value of option
- with multiple values given, toggle between these values: the value used is the one following the current value of option; if the current value of option is not in list, the first value in the list is used
- the special value "null" can be given, but only as first value in the list and without quotes around.
Examples:
toggle display of time in chat area (without displaying the new value used):
/mute /toggle weechat.look.buffer_time_format
switch format of time in chat area (with seconds, without seconds, disabled):
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
toggle autojoin of #weechat channel on libera server:
/toggle irc.server.libera.autojoin null #weechat
----
[[command_weechat_unset]] [[command_weechat_unset]]
* `+unset+`: skasuj/zresetuj zmienną konfiguracyjną * `+unset+`: skasuj/zresetuj zmienną konfiguracyjną
+119 -51
View File
@@ -1845,6 +1845,50 @@
** domyślna wartość: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+` ** domyślna wartość: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
// end::fifo_options[] // end::fifo_options[]
// tag::typing_options[]
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
** opis: pass:none[number of seconds after paused status has been set: if reached, the typing status is removed]
** typ: liczba
** wartości: 1 .. 2147483647
** domyślna wartość: `+30+`
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
** opis: pass:none[number of seconds after typing status has been set: if reached, the typing status is removed]
** typ: liczba
** wartości: 1 .. 2147483647
** domyślna wartość: `+6+`
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
** opis: pass:none[number of seconds after typing last char: if reached, the typing status becomes "paused" and no more typing signals are sent]
** typ: liczba
** wartości: 1 .. 2147483647
** domyślna wartość: `+10+`
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
** opis: pass:none[typing enabled for other nicks (display typing info for nicks typing in the current buffer)]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
** opis: pass:none[typing enabled for self messages (send typing info to other users)]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
** opis: pass:none[min number of chars in message to trigger send of typing signals]
** typ: liczba
** wartości: 1 .. 2147483647
** domyślna wartość: `+4+`
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
** opis: pass:none[max number of chars displayed in the bar item "typing" (0 = do not truncate content)]
** typ: liczba
** wartości: 0 .. 2147483647
** domyślna wartość: `+0+`
// end::typing_options[]
// tag::xfer_options[] // tag::xfer_options[]
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted* * [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
** opis: pass:none[kolor statusu "aborted"] ** opis: pass:none[kolor statusu "aborted"]
@@ -2214,6 +2258,12 @@
** wartości: dowolny ciąg ** wartości: dowolny ciąg
** domyślna wartość: `+"%a, %d %b %Y %T %z"+` ** domyślna wartość: `+"%a, %d %b %Y %T %z"+`
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
** opis: pass:none[wyświetl wiadomość ACCOUNT otrzymaną, kiedy opcja account-notify jest włączona]
** typ: bool
** wartości: on, off
** domyślna wartość: `+on+`
* [[option_irc.look.display_away]] *irc.look.display_away* * [[option_irc.look.display_away]] *irc.look.display_away*
** opis: pass:none[wyświetl wiadomość, kiedy w(y)łączamy tryb oddalenia (off: nie wyświetlaj/wysyłaj nic, local: wyświetl lokalnie, channel: wyślij akcję na kanały)] ** opis: pass:none[wyświetl wiadomość, kiedy w(y)łączamy tryb oddalenia (off: nie wyświetlaj/wysyłaj nic, local: wyświetl lokalnie, channel: wyślij akcję na kanały)]
** typ: liczba ** typ: liczba
@@ -2238,6 +2288,12 @@
** wartości: on, off ** wartości: on, off
** domyślna wartość: `+on+` ** domyślna wartość: `+on+`
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
** opis: pass:none[wyświetl dodatkowe informacje w wiadomości JOIN: nazwa konta i real name (opcja extended-join musi być włączona)]
** typ: bool
** wartości: on, off
** domyślna wartość: `+on+`
* [[option_irc.look.display_host_join]] *irc.look.display_host_join* * [[option_irc.look.display_host_join]] *irc.look.display_host_join*
** opis: pass:none[wyświetlaj host w wiadomościach o wejściu na kanał] ** opis: pass:none[wyświetlaj host w wiadomościach o wejściu na kanał]
** typ: bool ** typ: bool
@@ -2508,6 +2564,18 @@
** wartości: on, off ** wartości: on, off
** domyślna wartość: `+off+` ** domyślna wartość: `+off+`
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
** opis: pass:none[display nicks typing on the channel in bar item "typing" (option typing.look.enabled_nicks must be enabled and capability "message-tags" must be enabled on the server)]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
** opis: pass:none[send self typing status to channels so that other users see when you are typing a message (option typing.look.enabled_self must be enabled and capability "message-tags" must be enabled on the server)]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing* * [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
** opis: pass:none[rosnący współczynnik opóźnienia ponownego połączenia z serwerem (1 = stała wartość, 2 = opóźnienie*2 dla każdej próby, etc.)] ** opis: pass:none[rosnący współczynnik opóźnienia ponownego połączenia z serwerem (1 = stała wartość, 2 = opóźnienie*2 dla każdej próby, etc.)]
** typ: liczba ** typ: liczba
@@ -2665,10 +2733,10 @@
** domyślna wartość: `+25+` ** domyślna wartość: `+25+`
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities* * [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
** opis: pass:none[oddzielona przecinkami lista opcji klienta do włączenia dla serwera, jeśli są dostępne (zobacz /help cap żeby poznać listę opcji wspieranych przez WeeChat) (przykład: "away-notify,multi-prefix")] ** opis: pass:none[oddzielona przecinkami lista opcji klienta do włączenia dla serwera, jeśli są dostępne (zobacz /help cap żeby poznać listę opcji wspieranych przez WeeChat); "*" włącza domyślnie wszystkie opcje (wspierane zarówno przez serwer i WeeChat); wildcard "*" jest dozwolony; opcje zaczynające się od "!" są pomijane (przykład: "*,!account-*,!extended-join")]
** typ: ciąg ** typ: ciąg
** wartości: dowolny ciąg ** wartości: dowolny ciąg
** domyślna wartość: `+""+` ** domyślna wartość: `+"*"+`
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message* * [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
** opis: pass:none[część wiadomości IRC (otrzymanej lub wysłanej), która jest kodowana na ustawione kodowanie; message = cała wiadomość IRC (domyślne), channel = zaczynając od nazwy kanału (jeśli znaleziona, w przeciwnym wypadku text), text = zaczynając od samego tekstu (powinieneś spróbować tej wartości, jeśli masz problem z kodowaniem nazwy kanału)] ** opis: pass:none[część wiadomości IRC (otrzymanej lub wysłanej), która jest kodowana na ustawione kodowanie; message = cała wiadomość IRC (domyślne), channel = zaczynając od nazwy kanału (jeśli znaleziona, w przeciwnym wypadku text), text = zaczynając od samego tekstu (powinieneś spróbować tej wartości, jeśli masz problem z kodowaniem nazwy kanału)]
@@ -2770,7 +2838,7 @@
** opis: pass:none[akcja do wykonania jeśli uwierzytelnianie SASL się nie powiedzie: "continue" dla zignorowania problemu, "reconnect" ponownie połącz się z serwerem, "disconnect" odłącz od serwera (zobacz też opcję irc.network.sasl_fail_unavailable)] ** opis: pass:none[akcja do wykonania jeśli uwierzytelnianie SASL się nie powiedzie: "continue" dla zignorowania problemu, "reconnect" ponownie połącz się z serwerem, "disconnect" odłącz od serwera (zobacz też opcję irc.network.sasl_fail_unavailable)]
** typ: liczba ** typ: liczba
** wartości: continue, reconnect, disconnect ** wartości: continue, reconnect, disconnect
** domyślna wartość: `+continue+` ** domyślna wartość: `+reconnect+`
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key* * [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
** opis: pass:none[plik z kluczem prywatnym ECC dla mechanizmu "ecdsa-nist256p-challenge" (ścieżka jest przetwarzana, zobacz funkcję string_eval_path_home w opisie API wtyczek)] ** opis: pass:none[plik z kluczem prywatnym ECC dla mechanizmu "ecdsa-nist256p-challenge" (ścieżka jest przetwarzana, zobacz funkcję string_eval_path_home w opisie API wtyczek)]
@@ -2779,9 +2847,9 @@
** domyślna wartość: `+""+` ** domyślna wartość: `+""+`
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism* * [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
** opis: pass:none[mechanizm autentykacji SASL: "plain" dla hasła w czystym tekście, "scram-sha-1" dla uwierzytelnienia SCRAM za pomocą algorytmu SHA-1, "scram-sha-256" dla uwierzytelnienia SCRAM za pomocą algorytmu SHA-256, "scram-sha-512" dla uwierzytelnienia SCRAM za pomocą algorytmu SHA-512, "ecdsa-nist256p-challenge" uwierzytelnianie na podstawie pary kluczy, "external" dla uwierzytelnienia za pomocą certyfikatu SSL po stronie klienta, "dh-blowfish" dla hasła szyfrowanego za pomocą blowfish (mało bezpieczne, niepolecane), "dh-aes" dla hasła szyfrowanego za pomocą AES (mało bezpieczne, niepolecane)] ** opis: pass:none[mechanizm autentykacji SASL: "plain" dla hasła w czystym tekście, "scram-sha-1" dla uwierzytelnienia SCRAM za pomocą algorytmu SHA-1, "scram-sha-256" dla uwierzytelnienia SCRAM za pomocą algorytmu SHA-256, "scram-sha-512" dla uwierzytelnienia SCRAM za pomocą algorytmu SHA-512, "ecdsa-nist256p-challenge" uwierzytelnianie na podstawie pary kluczy, "external" dla uwierzytelnienia za pomocą certyfikatu SSL po stronie klienta]
** typ: liczba ** typ: liczba
** wartości: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes ** wartości: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
** domyślna wartość: `+plain+` ** domyślna wartość: `+plain+`
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password* * [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
@@ -3075,34 +3143,6 @@
** domyślna wartość: `+""+` ** domyślna wartość: `+""+`
// end::relay_options[] // end::relay_options[]
// tag::javascript_options[]
* [[option_javascript.look.check_license]] *javascript.look.check_license*
** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** opis: pass:none[przechowuj kontekst pomiędzy dwoma odwołaniami do wykonania tego samego kodu źródłowego (opcja "eval" komendy script lub info "%s_eval"); ukryty sktypt jest używany do wykonania kodu skryptu; jeśli ta opcja jest wyłączona, ukryty skrypt jest wyładowywany po każdym wykonaniu: zajmuje to mniej pamięci, ale jest wolniejsze]
** typ: bool
** wartości: on, off
** domyślna wartość: `+on+`
// end::javascript_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** opis: pass:none[przechowuj kontekst pomiędzy dwoma odwołaniami do wykonania tego samego kodu źródłowego (opcja "eval" komendy script lub info "%s_eval"); ukryty sktypt jest używany do wykonania kodu skryptu; jeśli ta opcja jest wyłączona, ukryty skrypt jest wyładowywany po każdym wykonaniu: zajmuje to mniej pamięci, ale jest wolniejsze]
** typ: bool
** wartości: on, off
** domyślna wartość: `+on+`
// end::ruby_options[]
// tag::guile_options[] // tag::guile_options[]
* [[option_guile.look.check_license]] *guile.look.check_license* * [[option_guile.look.check_license]] *guile.look.check_license*
** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie] ** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie]
@@ -3117,19 +3157,33 @@
** domyślna wartość: `+on+` ** domyślna wartość: `+on+`
// end::guile_options[] // end::guile_options[]
// tag::tcl_options[] // tag::javascript_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license* * [[option_javascript.look.check_license]] *javascript.look.check_license*
** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie] ** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie]
** typ: bool ** typ: bool
** wartości: on, off ** wartości: on, off
** domyślna wartość: `+off+` ** domyślna wartość: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context* * [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
** opis: pass:none[przechowuj kontekst pomiędzy dwoma odwołaniami do wykonania tego samego kodu źródłowego (opcja "eval" komendy script lub info "%s_eval"); ukryty sktypt jest używany do wykonania kodu skryptu; jeśli ta opcja jest wyłączona, ukryty skrypt jest wyładowywany po każdym wykonaniu: zajmuje to mniej pamięci, ale jest wolniejsze] ** opis: pass:none[przechowuj kontekst pomiędzy dwoma odwołaniami do wykonania tego samego kodu źródłowego (opcja "eval" komendy script lub info "%s_eval"); ukryty sktypt jest używany do wykonania kodu skryptu; jeśli ta opcja jest wyłączona, ukryty skrypt jest wyładowywany po każdym wykonaniu: zajmuje to mniej pamięci, ale jest wolniejsze]
** typ: bool ** typ: bool
** wartości: on, off ** wartości: on, off
** domyślna wartość: `+on+` ** domyślna wartość: `+on+`
// end::tcl_options[] // end::javascript_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** opis: pass:none[przechowuj kontekst pomiędzy dwoma odwołaniami do wykonania tego samego kodu źródłowego (opcja "eval" komendy script lub info "%s_eval"); ukryty sktypt jest używany do wykonania kodu skryptu; jeśli ta opcja jest wyłączona, ukryty skrypt jest wyładowywany po każdym wykonaniu: zajmuje to mniej pamięci, ale jest wolniejsze]
** typ: bool
** wartości: on, off
** domyślna wartość: `+on+`
// end::lua_options[]
// tag::perl_options[] // tag::perl_options[]
* [[option_perl.look.check_license]] *perl.look.check_license* * [[option_perl.look.check_license]] *perl.look.check_license*
@@ -3159,20 +3213,6 @@
** domyślna wartość: `+on+` ** domyślna wartość: `+on+`
// end::php_options[] // end::php_options[]
// tag::lua_options[]
* [[option_lua.look.check_license]] *lua.look.check_license*
** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
** opis: pass:none[przechowuj kontekst pomiędzy dwoma odwołaniami do wykonania tego samego kodu źródłowego (opcja "eval" komendy script lub info "%s_eval"); ukryty sktypt jest używany do wykonania kodu skryptu; jeśli ta opcja jest wyłączona, ukryty skrypt jest wyładowywany po każdym wykonaniu: zajmuje to mniej pamięci, ale jest wolniejsze]
** typ: bool
** wartości: on, off
** domyślna wartość: `+on+`
// end::lua_options[]
// tag::python_options[] // tag::python_options[]
* [[option_python.look.check_license]] *python.look.check_license* * [[option_python.look.check_license]] *python.look.check_license*
** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie] ** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie]
@@ -3187,6 +3227,34 @@
** domyślna wartość: `+on+` ** domyślna wartość: `+on+`
// end::python_options[] // end::python_options[]
// tag::ruby_options[]
* [[option_ruby.look.check_license]] *ruby.look.check_license*
** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
** opis: pass:none[przechowuj kontekst pomiędzy dwoma odwołaniami do wykonania tego samego kodu źródłowego (opcja "eval" komendy script lub info "%s_eval"); ukryty sktypt jest używany do wykonania kodu skryptu; jeśli ta opcja jest wyłączona, ukryty skrypt jest wyładowywany po każdym wykonaniu: zajmuje to mniej pamięci, ale jest wolniejsze]
** typ: bool
** wartości: on, off
** domyślna wartość: `+on+`
// end::ruby_options[]
// tag::tcl_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license*
** opis: pass:none[sprawdza licencję skryptów podczas ich ładowania: jeśli licencja jest inna niż licencja wtyczki wyświetlane jest ostrzeżenie]
** typ: bool
** wartości: on, off
** domyślna wartość: `+off+`
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
** opis: pass:none[przechowuj kontekst pomiędzy dwoma odwołaniami do wykonania tego samego kodu źródłowego (opcja "eval" komendy script lub info "%s_eval"); ukryty sktypt jest używany do wykonania kodu skryptu; jeśli ta opcja jest wyłączona, ukryty skrypt jest wyładowywany po każdym wykonaniu: zajmuje to mniej pamięci, ale jest wolniejsze]
** typ: bool
** wartości: on, off
** domyślna wartość: `+on+`
// end::tcl_options[]
// tag::script_options[] // tag::script_options[]
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded* * [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
** opis: pass:none[kolor dla statusu "automatycznie ładowany" ("a")] ** opis: pass:none[kolor dla statusu "automatycznie ładowany" ("a")]
+3
View File
@@ -87,6 +87,9 @@ $HOME/.config/weechat/tcl.conf::
$HOME/.config/weechat/trigger.conf:: $HOME/.config/weechat/trigger.conf::
plik konfiguracyjny wtyczki _trigger_ plik konfiguracyjny wtyczki _trigger_
$HOME/.config/weechat/typing.conf::
plik konfiguracyjny wtyczki _typing_
$HOME/.config/weechat/xfer.conf:: $HOME/.config/weechat/xfer.conf::
plik konfiguracyjny wtyczki _xfer_ plik konfiguracyjny wtyczki _xfer_
+4 -3
View File
@@ -525,9 +525,10 @@ Możesz po prostu wyłączyć tą opcję:
[[small_terminal]] [[small_terminal]]
=== Jak mogę dostosować wyświetlanie do bardzo małych terminali (jak 80x25), żeby nie tracić przestrzeni? === Jak mogę dostosować wyświetlanie do bardzo małych terminali (jak 80x25), żeby nie tracić przestrzeni?
Możesz usunąć boczne paski (listy buforów i nicków), zmienić wyświetlany format czasu // TRANSLATION MISSING
żeby wyświetlane były tylko godziny i minuty, wyłączyć wyrównywanie wiadomości i ustawić You can remove side bars (buflist and nicklist), change time format to display
znak dla prefiksu/sufiksu nicka: only hours and minutes, disable alignment of messages and set a char for nick
prefix/suffix:
---- ----
/set buflist.look.enabled off /set buflist.look.enabled off
+12 -6
View File
@@ -1284,6 +1284,10 @@ Wynik jest tabela hashy z następującymi kluczami
Tagi w wiadomości (mogą byc puste). | Tagi w wiadomości (mogą byc puste). |
`+time=2015-06-27T16:40:35.000Z+` `+time=2015-06-27T16:40:35.000Z+`
| tag_xxx | 3.3 |
Niewyescapowana wartość tagu "xxx" (jeden klucz per tag). |
`+2015-06-27T16:40:35.000Z+`
| message_without_tags | 0.4.0 | | message_without_tags | 0.4.0 |
Wiadomość bez tagów (jeśli nie ma tagów jest to to samo co wiadomość). | Wiadomość bez tagów (jeśli nie ma tagów jest to to samo co wiadomość). |
`+:nick!user@host PRIVMSG #weechat :hello!+` `+:nick!user@host PRIVMSG #weechat :hello!+`
@@ -1340,10 +1344,12 @@ Wynik jest tabela hashy z następującymi kluczami
---- ----
dict = weechat.info_get_hashtable( dict = weechat.info_get_hashtable(
"irc_message_parse", "irc_message_parse",
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"}) {"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
# dict == { # dict == {
# "tags": "time=2015-06-27T16:40:35.000Z", # "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
# "tag_time": "2015-06-27T16:40:35.000Z",
# "tag_tag2": "value space",
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!", # "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
# "nick": "nick", # "nick": "nick",
# "user": "user", # "user": "user",
@@ -1352,10 +1358,10 @@ dict = weechat.info_get_hashtable(
# "channel": "#weechat", # "channel": "#weechat",
# "arguments": "#weechat :hello!", # "arguments": "#weechat :hello!",
# "text": "hello!", # "text": "hello!",
# "pos_command": "47", # "pos_command": "65",
# "pos_arguments": "55", # "pos_arguments": "73",
# "pos_channel": "55", # "pos_channel": "73",
# "pos_text": "65", # "pos_text": "83",
# } # }
---- ----
+371 -52
View File
@@ -182,11 +182,11 @@ $ make
$ make install $ make install
---- ----
Opcje mogą zostać przekazane do CMake, format "-DOPCJA=WARTOŚĆ". Opcje mogą zostać przekazane do CMake, format `-DOPCJA=WARTOŚĆ`.
Lista popularnych opcji: Lista popularnych opcji:
[width="100%",cols="2m,2,5m,12",options="header"] [width="100%",cols="3m,3,3m,10",options="header"]
|=== |===
| Opcja | Wartość | Wartość domyślna | Opis | Opcja | Wartość | Wartość domyślna | Opis
@@ -289,6 +289,9 @@ Lista popularnych opcji:
| ENABLE_TRIGGER | `ON`, `OFF` | ON | | ENABLE_TRIGGER | `ON`, `OFF` | ON |
Kompilacja <<trigger_plugin,wtyczki trigger>>. Kompilacja <<trigger_plugin,wtyczki trigger>>.
| ENABLE_TYPING | `ON`, `OFF` | ON |
Kompilacja <<typing_plugin,wtyczki typing>>.
| ENABLE_XFER | `ON`, `OFF` | ON | | ENABLE_XFER | `ON`, `OFF` | ON |
Kompilacja <<xfer_plugin,wtyczki xfer>>. Kompilacja <<xfer_plugin,wtyczki xfer>>.
@@ -634,7 +637,7 @@ Niektóre zmienne śwodowiskowe są używane przez WeeChat o ile zostały zdefin
[width="100%",cols="1m,6",options="header"] [width="100%",cols="1m,6",options="header"]
|=== |===
| Nazwa | Opis | Nazwa | Opis
| WEECHAT_HOME | Katalog domowy WeeChat (z plikami konfiguracyjnymi, logami, skryptami, ...). Działa tak samo jak <<compile_with_cmake,CMake option>> `WEECHAT_HOME`. | WEECHAT_HOME | Katalog domowy WeeChat (z plikami konfiguracyjnymi, logami, skryptami, ...). Działa tak samo jak <<compile_with_cmake,opcja CMake>> `WEECHAT_HOME`.
| WEECHAT_PASSPHRASE | Hasło używane do odszyfrowania zabezpieczonych danych. | WEECHAT_PASSPHRASE | Hasło używane do odszyfrowania zabezpieczonych danych.
| WEECHAT_EXTRA_LIBDIR | Dodatkowy katalog do ładowania wtyczek (z katalogu "plugins" znajdującego się pod tą ścieżką). | WEECHAT_EXTRA_LIBDIR | Dodatkowy katalog do ładowania wtyczek (z katalogu "plugins" znajdującego się pod tą ścieżką).
|=== |===
@@ -731,6 +734,7 @@ Pliki tworzone w katalogu domowym WeeChat:
| spell.conf | Plik konfiguracyjny wtyczki _spell_ | Nie. | spell.conf | Plik konfiguracyjny wtyczki _spell_ | Nie.
| tcl.conf | Plik konfiguracyjny wtyczki _tcl_ | Nie. | tcl.conf | Plik konfiguracyjny wtyczki _tcl_ | Nie.
| trigger.conf | Plik konfiguracyjny wtyczki _trigger_ | Możliwe, zależy od triggerów. | trigger.conf | Plik konfiguracyjny wtyczki _trigger_ | Możliwe, zależy od triggerów.
| typing.conf | Plik konfiguracyjny wtyczki _typing_ | Nie.
| xfer.conf | Plik konfiguracyjny wtyczki _xfer_ | Nie. | xfer.conf | Plik konfiguracyjny wtyczki _xfer_ | Nie.
| weechat.log | Plik z logami WeeChat | Nie. | weechat.log | Plik z logami WeeChat | Nie.
|=== |===
@@ -778,7 +782,7 @@ Przykład terminala z WeeChat:
▲ bars "status" and "input" bar "nicklist" ▲ ▲ bars "status" and "input" bar "nicklist" ▲
.... ....
Ekran składa się z następujących obszarów: Domyślnie ekran jest podzielony na następujące obszary:
* obszar rozmowy (środek ekranu) z liniami rozmowy, zawierającymi: * obszar rozmowy (środek ekranu) z liniami rozmowy, zawierającymi:
** czas ** czas
@@ -873,6 +877,13 @@ Inne dostępne elementy (nie używane domyślnie w paskach):
| window_number | `2` | Numer obecnego okna. | window_number | `2` | Numer obecnego okna.
|=== |===
Każdy aspekt układu może zostać spersonalizowany za pomocą <<command_line,komend>>:
<<command_weechat_bar,`/bar`>> do dostosowania pasków,
<<command_weechat_buffer,/buffer>> i <<command_weechat_window,`/window`>>
do dostosowania <<buffers_and_windows,budorów i okien>>,
i <<command_weechat_layot,/layout>> żeby nazwać, zapisać i przywrócić układ ekranu
i powiązania między oknami i buforami.
[[command_line]] [[command_line]]
=== Linia poleceń === Linia poleceń
@@ -1116,11 +1127,18 @@ Przykłady buforów:
* prywatna rozmowa irc * prywatna rozmowa irc
_Okno_ to obszar ekranu, w którym wyświetlane są bufory. Nie jest możliwe _Okno_ to obszar ekranu, w którym wyświetlane są bufory. Nie jest możliwe
podzielenie ekranu na kilka okien. podzielenie ekranu na kilka okien (przykłady <<window_split_examples,poniżej>>,
szczegóły <<command_weechat_window,komenda /window>>).
Każde okno wyświetla jeden bufor. Bufor może zostać ukryty (nie wyświetlany w Każde okno wyświetla jeden bufor. Bufor może zostać ukryty (nie wyświetlany w
oknie) lub wyświetlany w jednym lub więcej oknach. oknie) lub wyświetlany w jednym lub więcej oknach.
Układy ekranu i powiązania między oknami i buforami mogą być
<<command_weechat_layout,zapisywane i przywracane>>.
[[window_split_examples]]
==== Przykłady
Przykład podziału poziomego (`/window splith`): Przykład podziału poziomego (`/window splith`):
.... ....
@@ -1231,7 +1249,7 @@ Linie wyświetlane w formatowanych buforach maja następujące pola:
| wiadomość | Tak | Wiadomość. | wiadomość | Tak | Wiadomość.
| wyświetlone | Nie | Boolean: true jeśli linia została wyświetlona, false jeśli linia została odfiltrowana komendą <<command_weechat_filter,/filter>>. | wyświetlone | Nie | Boolean: true jeśli linia została wyświetlona, false jeśli linia została odfiltrowana komendą <<command_weechat_filter,/filter>>.
| podświetlenie | Nie | Boolean: true jeśli linia ma podświetlenie, false w przeciwnym wypadku. | podświetlenie | Nie | Boolean: true jeśli linia ma podświetlenie, false w przeciwnym wypadku.
| tagi | Przez `/debug tags` | Tagi powiązane z linią (zobacz <<lines_tags,lines tags>>). | 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 pomoćą wielu opcji wyglądu
@@ -1981,7 +1999,18 @@ Można ją zapisać za pomocą skryptu _buffer_autoset.py_: można go zaintalowa
| kbd:[Alt+F12] | Idź na koniec listy nicków. | `+/bar scroll nicklist * e+` | kbd:[Alt+F12] | Idź na koniec listy nicków. | `+/bar scroll nicklist * e+`
| kbd:[Alt+a] | Przełącz na następny bufor z aktywnością (z priorytetem: powiadomienie, wiadomość, inne). | `+/input jump_smart+` | kbd:[Alt+a] | Przełącz na następny bufor z aktywnością (z priorytetem: powiadomienie, wiadomość, inne). | `+/input jump_smart+`
| kbd:[Alt+Shift+B] | Przełącza widoczność listy buforów. | `+/buflist toggle+` | kbd:[Alt+Shift+B] | Przełącza widoczność listy buforów. | `+/buflist toggle+`
| kbd:[Alt+h] | Wyczyść hotlistę (powiadomienia o aktywności w innych buforach). | `+/input hotlist_clear+` // TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+c] | Clear hotlist (activity notification on buffers). | `+/input hotlist_clear+`
// TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+m] | Remove current buffer from hotlist. | `+/input hotlist_remove_buffer+`
// TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+r] | Restore latest hotlist removed in the current buffer. | `+/input hotlist_restore_buffer+`
// TRANSLATION MISSING
| kbd:[Alt+h],
kbd:[Alt+Shift+R] | Restore latest hotlist removed in all buffers. | `+/input hotlist_restore_all+`
| kbd:[Alt+j], | kbd:[Alt+j],
kbd:[Alt+f] | Przełącz na pierwszy bufor. | `+/buffer -+` kbd:[Alt+f] | Przełącz na pierwszy bufor. | `+/buffer -+`
| kbd:[Alt+j], | kbd:[Alt+j],
@@ -2249,7 +2278,7 @@ Nazwa zdarzenia zawiera modyfikator (opcjonalny), nazwę klawisza/rolki i gest
Lista modyfikatorów: Lista modyfikatorów:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Modyfikator | Opis | Modyfikator | Opis
| ctrl | Klawisz kbd:[Ctrl] | ctrl | Klawisz kbd:[Ctrl]
@@ -2259,7 +2288,7 @@ Lista modyfikatorów:
Lista klawiszy/rolek: Lista klawiszy/rolek:
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Klawisz/rolka | Opis | Klawisz/rolka | Opis
| button1 | Lewy klawisz myszy | button1 | Lewy klawisz myszy
@@ -2272,7 +2301,7 @@ Lista klawiszy/rolek:
Lista gestów (tylko dla klawiszy, nie rolki): Lista gestów (tylko dla klawiszy, nie rolki):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Gest | Odległość | Gest | Odległość
| gesture-up | 3 ... 19 | gesture-up | 3 ... 19
@@ -2287,7 +2316,7 @@ Lista gestów (tylko dla klawiszy, nie rolki):
Lista niedkończonych zdarzeń (tylko dla przycisków, użyteczne dla wtyczek/skryptów): Lista niedkończonych zdarzeń (tylko dla przycisków, użyteczne dla wtyczek/skryptów):
[width="100%",cols="2m,3",options="header"] [width="100%",cols="1m,4",options="header"]
|=== |===
| Zdarzenie | Opis | Zdarzenie | Opis
| event-down | Klawisz został wciśnięty ale jeszcze nie puszczony | event-down | Klawisz został wciśnięty ale jeszcze nie puszczony
@@ -2408,7 +2437,7 @@ danych (utworzone za pomocą `/secure set xxx ...`). +
Pełną listę dostępnych opcji można uzyskać wykonując `/help secure`. Pełną listę dostępnych opcji można uzyskać wykonując `/help secure`.
W celu użycia hasła _libera_, na przykład z W celu użycia hasła _libera_, na przykład z
<<irc_sasl_authentication,SASL authentication>>: <<irc_sasl_authentication,uwierzytelnianiem SASL>>:
---- ----
/set irc.server.libera.sasl_password "${sec.data.libera}" /set irc.server.libera.sasl_password "${sec.data.libera}"
@@ -2535,6 +2564,8 @@ Domyślne wtyczki:
| php | Wsparcie dla skryptów napisanych w PHP. | php | Wsparcie dla skryptów napisanych w PHP.
| spell | Sprawdzanie pisowni w linii poleceń. | spell | Sprawdzanie pisowni w linii poleceń.
| trigger | Zamiana tekstu i wykonywanie komend dla zdarzeń wywołanych przez WeeChat/wtyczki. | trigger | Zamiana tekstu i wykonywanie komend dla zdarzeń wywołanych przez WeeChat/wtyczki.
// TRANSLATION MISSING
| typing | Display users currently writing messages.
| xfer | Przesyłanie plików i bezpośredni chat. | xfer | Przesyłanie plików i bezpośredni chat.
|=== |===
@@ -2858,15 +2889,131 @@ Możliwe jest podanie adresu URL do jednego lub wielu serwerów IRC:
irc[6][s]://[nick[:hasło]@]adres.serwera.irc[:port][/kanał][,kanał[...]] irc[6][s]://[nick[:hasło]@]adres.serwera.irc[:port][/kanał][,kanał[...]]
---- ----
Przykład wejścia na kanały _#weechat_ i _#toto_ na serwerze _irc.libera.chat_, Przykład wejścia na kanały _#weechat_ i _#weechat-fr_ na serwerze
na domyślnym porcie (6667), z nickiem _nono_: _irc.libera.chat_, na domyślnym porcie (6667), z nickiem _alice_:
---- ----
$ weechat irc://nono@irc.libera.chat/#weechat,#toto $ weechat irc://alice@irc.libera.chat/#weechat,#weechat-fr
----
// TRANSLATION MISSING
[[irc_servers]]
==== Servers
[[irc_servers_add]]
===== Add a server
By default no servers are defined. You can add as many servers as you want with
the <<command_irc_server,/server>> command.
For example to connect to https://libera.chat/[libera.chat] with SSL (encrypted trafic):
----
/server add libera irc.libera.chat/6697 -ssl
----
You can tell WeeChat to auto-connect to this server on startup:
----
/set irc.server.libera.autoconnect on
----
To authenticate, it is recommended to use SASL (if supported on the server),
with the password stored as secured data (see also chapter on
<<irc_sasl_authentication,SASL authentication>>):
----
/set irc.server.libera.sasl_username "alice"
/secure set libera xxxxxxx
/set irc.server.libera.sasl_password "${sec.data.libera}"
----
If SASL is not supported, you can use a command to send a message to nickserv:
----
/set irc.server.libera.command "/msg nickserv identify ${sec.data.libera}"
----
[NOTE]
By sending a message to nickserv, you may authenticate after joining channels
which could be a problem on some channels requiring you to be authenticated
to join. In this case, you can set a command delay:
`/set irc.server.libera.command_delay 5`.
[[irc_servers_options]]
===== Server options
Server options are named `irc.server.<server>.<option>` where `<server>` is the
internal name of the server and `<option>` the name of an option. +
The value of a server option is inherited from `irc.server_default.xxx`
if the server option has the special value `null`.
For example if you created the _libera_ server with the commands above, you'll
see this with the command `/fset libera`:
....
irc.server.libera.addresses string "irc.libera.chat/6697"
irc.server.libera.anti_flood_prio_high integer null -> 2
irc.server.libera.anti_flood_prio_low integer null -> 2
irc.server.libera.autoconnect boolean on
irc.server.libera.autojoin string null -> ""
irc.server.libera.autoreconnect boolean null -> on
irc.server.libera.autoreconnect_delay integer null -> 10
irc.server.libera.autorejoin boolean null -> off
irc.server.libera.autorejoin_delay integer null -> 30
irc.server.libera.away_check integer null -> 0
irc.server.libera.away_check_max_nicks integer null -> 25
irc.server.libera.capabilities string null -> "*"
irc.server.libera.charset_message integer null -> message
irc.server.libera.command string null -> ""
irc.server.libera.command_delay integer null -> 0
irc.server.libera.connection_timeout integer null -> 60
irc.server.libera.default_chantypes string null -> "#&"
irc.server.libera.ipv6 boolean null -> on
irc.server.libera.local_hostname string null -> ""
irc.server.libera.msg_kick string null -> ""
irc.server.libera.msg_part string null -> "WeeChat ${info:version}"
irc.server.libera.msg_quit string null -> "WeeChat ${info:version}"
irc.server.libera.nicks string null -> "alice,alice1,alice2,alice3,alice4"
irc.server.libera.nicks_alternate boolean null -> on
irc.server.libera.notify string null -> ""
irc.server.libera.password string null -> ""
irc.server.libera.proxy string null -> ""
irc.server.libera.realname string null -> ""
irc.server.libera.sasl_fail integer null -> reconnect
irc.server.libera.sasl_key string null -> ""
irc.server.libera.sasl_mechanism integer null -> plain
irc.server.libera.sasl_password string "${sec.data.libera}"
irc.server.libera.sasl_timeout integer null -> 15
irc.server.libera.sasl_username string "alice"
irc.server.libera.split_msg_max_length integer null -> 512
irc.server.libera.ssl boolean on
irc.server.libera.ssl_cert string null -> ""
irc.server.libera.ssl_dhkey_size integer null -> 2048
irc.server.libera.ssl_fingerprint string null -> ""
irc.server.libera.ssl_password string null -> ""
irc.server.libera.ssl_priorities string null -> "NORMAL:-VERS-SSL3.0"
irc.server.libera.ssl_verify boolean null -> on
irc.server.libera.usermode string null -> ""
irc.server.libera.username string null -> "alice"
....
For example if you want to automatically connect to all servers you define
without having to do it on each server, you can do:
----
/set irc.server_default.autoconnect on
----
And then you can reset the server option so that it uses the default inherited
value, which is now `on` instead of the default value `off`:
----
/unset irc.server.libera.autoconnect
---- ----
[[irc_ssl_certificates]] [[irc_ssl_certificates]]
==== Certyfikaty SSL ===== Certyfikaty SSL
Podczas łączenia się z serwerem IRC, WeeChat domyślnie sprawdza czy połączenie Podczas łączenia się z serwerem IRC, WeeChat domyślnie sprawdza czy połączenie
jest w pełni zaufane. jest w pełni zaufane.
@@ -2894,7 +3041,7 @@ Opcja "ssl_verify" jest domyślnie włączona, weryfikacja jest restrykcyjna i m
się nie powieść, nawet jeśli wszystko było OK w wersjach przed 0.3.1. się nie powieść, nawet jeśli wszystko było OK w wersjach przed 0.3.1.
[[irc_connect_oftc_with_certificate]] [[irc_connect_oftc_with_certificate]]
===== Pierwszy przykład: połączenie z oftc i sprawdzenie certyfikatu ====== Pierwszy przykład: połączenie z oftc i sprawdzenie certyfikatu
* Import certyfikatu w kosoli: * Import certyfikatu w kosoli:
@@ -2917,7 +3064,7 @@ Możliwe jest umieszczenie wielu certyfikatów w pliku CAs.pem.
---- ----
[[irc_connect_oftc_with_certfp]] [[irc_connect_oftc_with_certfp]]
===== Drugi przykład: połączenie z oftc używając CertFP ====== Drugi przykład: połączenie z oftc używając CertFP
* Tworzenie certyfikatu w konsoli: * Tworzenie certyfikatu w konsoli:
@@ -2942,23 +3089,16 @@ który może być ustawiony na przykład na `~/.weechat`.
Więcej informacji można znaleźć pod adresem: https://www.oftc.net/NickServ/CertFP Więcej informacji można znaleźć pod adresem: https://www.oftc.net/NickServ/CertFP
[[irc_sasl_authentication]] [[irc_sasl_authentication]]
==== Uwierzytelnianie SASL ===== Uwierzytelnianie SASL
WeeChat wspiera uwierzytelnianie SASL, używając różnych mechanizmów: WeeChat wspiera uwierzytelnianie SASL, używając różnych mechanizmów:
* _plain_: hasło w czystym tekście (domyślne) * _plain_: hasło w czystym tekście (domyślne)
// TRANSLATION MISSING * _scram-sha-1_: SCRAM z użyciem algorytmu SHA-1
* _scram-sha-1_: SCRAM with SHA-1 digest algorithm * _scram-sha-256_: SCRAM z użyciem algorytmu SHA-256
// TRANSLATION MISSING * _scram-sha-512_: SCRAM z użyciem algorytmu SHA-512
* _scram-sha-256_: SCRAM with SHA-256 digest algorithm
// TRANSLATION MISSING
* _scram-sha-512_: SCRAM with SHA-512 digest algorithm
* _ecdsa-nist256p-challenge_: klucz prywatny/publiczny * _ecdsa-nist256p-challenge_: klucz prywatny/publiczny
* _external_: certyfikat SSL po stronie klienta * _external_: certyfikat SSL po stronie klienta
* _dh-blowfish_: hasło zaszyfrowane algorytmem blowfish
(*niebezpieczne*, nie zalecane)
* _dh-aes_: hasło zaszyfrowane algorytmem AES
(*niebezpieczne*, nie zalecane)
Opcje dla serwerów to: Opcje dla serwerów to:
@@ -2971,7 +3111,7 @@ Opcje dla serwerów to:
_ecdsa-nist256p-challenge_) _ecdsa-nist256p-challenge_)
[[irc_sasl_ecdsa_nist256p_challenge]] [[irc_sasl_ecdsa_nist256p_challenge]]
===== SASL ECDSA-NIST256P-CHALLENGE ====== SASL ECDSA-NIST256P-CHALLENGE
Musisz wygenerować klucz prywatny w celu uwierzytelnienia za pomocą mechanizmu Musisz wygenerować klucz prywatny w celu uwierzytelnienia za pomocą mechanizmu
ECDSA-NIST256P-CHALLENGE (hasło nie potrzebne do połączenia). ECDSA-NIST256P-CHALLENGE (hasło nie potrzebne do połączenia).
@@ -3017,13 +3157,43 @@ Ponowne połączenie z serwerem:
---- ----
// TRANSLATION MISSING // TRANSLATION MISSING
[[irc_tor_sasl]] [[irc_servers_connection]]
==== Connect with TOR and SASL ===== Connection
// TRANSLATION MISSING You can connect to server with the <<command_irc_connect,/connect>> command:
Some servers support connections with TOR (https://www.torproject.org/),
a network of virtual tunnels that allows people and groups to improve their ----
privacy and security on the Internet. /connect libera
----
To disconnect:
----
/disconnect libera
----
Or just this if you are on any buffer belonging to _libera_ server (server,
channel, private):
----
/disconnect
----
When you connect to multiple servers at same time, server buffers are merged
by default and you can switch between them with the kbd:[Ctrl+x] key. +
It is possible to disable auto merge of server buffers to have independent
server buffers:
----
/set irc.look.server_buffer independent
----
[[irc_tor_sasl]]
===== Połączenie za pomocą TORa i SASL
Niekróre serwery wspierają połączenia z sieci TOR (https://www.torproject.org/),
sieci wirtualnych tuneli, które umożliwają poprawienie swojej prywatności
i bezpieczeństwa w Internecie.
Pierwszym krokiem jest instalacja TORa. Dla Debiana (i pochodnych): Pierwszym krokiem jest instalacja TORa. Dla Debiana (i pochodnych):
@@ -3038,11 +3208,11 @@ zależą od twojej konfiguracji TORa):
/proxy add tor socks5 127.0.0.1 9050 /proxy add tor socks5 127.0.0.1 9050
---- ----
// TRANSLATION MISSING Teraz należy dodać nowy serwer (zastąp nazwę serwera "irc-tor" i andres właściwymi
Now, add a new server (replace server name "irc-tor" and the address by a valid one): wartościami):
---- ----
/server add irc-tor this.is.the.address.onion /server add irc-tor adres.serwera.onion
---- ----
Ustaw proxy dla TOR: Ustaw proxy dla TOR:
@@ -3061,13 +3231,70 @@ się jak wygenerować klucz prywatny):
/set irc.server.irc-tor.sasl_key "${weechat_config_dir}/ecdsa.pem" /set irc.server.irc-tor.sasl_key "${weechat_config_dir}/ecdsa.pem"
---- ----
// TRANSLATION MISSING Teraz pozostaje już się tylko połączyć z serwerem:
And finally, connect to the server:
---- ----
/connect irc-tor /connect irc-tor
---- ----
// TRANSLATION MISSING
[[irc_channels]]
==== Channels
You can join channels with the <<command_irc_join,/join>> command:
----
/join #channel
----
Part a channel (keeping the buffer open):
----
/part [quit message]
----
The channels you joined are not saved. If you want to join them automatically
when connecting to the server, you must set the server `autojoin` option:
----
/set irc.server.libera.autojoin "#weechat,#weechat-fr"
----
[NOTE]
Some scripts can help to automatically set this option,
see `/script search autojoin`.
Be careful, spaces can be used only to separate list of channels from keys,
for example if `#channel1` requires a key but not `#channel2`:
----
/set irc.server.libera.autojoin "#channel1,#channel2 key1"
----
For help on the format, see `/help irc.server.libera.autojoin`.
[[irc_private_messages]]
==== Private messages
You can send a private message with the <<command_irc_query,/query>> command,
which opens a separate buffer:
----
/query bob hi, how are you?
----
Without arguments the command just opens the buffer (or selects it if already open):
----
/query bob
----
To close the private buffer, you can do this command on the private buffer:
----
/close
----
[[irc_smart_filter_join_part_quit]] [[irc_smart_filter_join_part_quit]]
==== Inteligentne filtry dla wiadomości ==== Inteligentne filtry dla wiadomości
@@ -3207,7 +3434,7 @@ zazwyczaj bufor serwera albo kanału.
Niepełna lista wiadomości IRC lub aliasów jakie można dostosować: Niepełna lista wiadomości IRC lub aliasów jakie można dostosować:
[width="100%",cols="^1m,^3m,8",options="header"] [width="100%",cols="^2m,^3m,15",options="header"]
|=== |===
| wiadomość | alias | opis | wiadomość | alias | opis
| error | | błąd | error | | błąd
@@ -3474,8 +3701,8 @@ Spowoduje powstanie następującej struktury:
│ └── #mychan.weechatlog │ └── #mychan.weechatlog
├── oftc ├── oftc
│ ├── oftc.weechatlog │ ├── oftc.weechatlog
│ ├── #chan1.weechatlog │ ├── #channel1.weechatlog
│ └── #chan2.weechatlog │ └── #channel2.weechatlog
... ...
.... ....
@@ -3522,8 +3749,7 @@ protokołów:
[[relay_password]] [[relay_password]]
==== Hasło ==== Hasło
// TRANSLATION MISSING Zaleca się ustawenia hasła dla pośrednika za pomocą poniższych komend:
It is highly recommended to set a password for relay, with these commands:
---- ----
/secure set relay moje_hasło /secure set relay moje_hasło
@@ -3621,13 +3847,12 @@ Teraz możesz się połączyć na porcie 8000 za pomocą dowolnego klienta IRC
używając hasła serwera "moje_hasło" (lub "libera:moje_hasło" jeśli żaden używając hasła serwera "moje_hasło" (lub "libera:moje_hasło" jeśli żaden
serwer nie został podany w przekaźniku). serwer nie został podany w przekaźniku).
// TRANSLATION MISSING Na przydład jeśli używasz WeeChat jako klienta pośrednika IRC, z serwerem
For example if you use WeeChat as IRC client of the relay, with a server called nazwanym "relay" i hasłem pośrednika "moje_hasło", możesz ustawić hasło
"relay" and the relay password "secret", you can setup the password with these za pomocą tych komend:
commands:
---- ----
/secure set relay_libera libera:secret /secure set relay_libera libera:moje_hasło
/set irc.server.relay.password "{sec.data.relay_libera}" /set irc.server.relay.password "{sec.data.relay_libera}"
---- ----
@@ -4101,7 +4326,7 @@ Trigger posiada następujące opcje (nazwy to `trigger.trigger.<nazwa>.<opcja>`)
| regex | string | | regex | string |
Jedno lub więcej rozszerzonych wyrażeń regularnych POSIX, do zamiany danych Jedno lub więcej rozszerzonych wyrażeń regularnych POSIX, do zamiany danych
otrzymanych w odpowiedzi od podpiętego zdarzenia (i trochę rzeczy dodanych otrzymanych w odpowiedzi od podpiętego zdarzenia (i trochę rzeczy dodanych
przez wtyczkę trigger) zobacz <<trigger_regex,regular expression>>. przez wtyczkę trigger) zobacz <<trigger_regex,wyrażenia regularne>>.
| command | string | | command | string |
Komenda do wykonania (wiele komend należy oddzielić średnikiem); jest to Komenda do wykonania (wiele komend należy oddzielić średnikiem); jest to
@@ -4719,6 +4944,100 @@ Opcje:
include::includes/autogen_user_options.pl.adoc[tag=trigger_options] include::includes/autogen_user_options.pl.adoc[tag=trigger_options]
// TRANSLATION MISSING
[[typing_plugin]]
=== Typing
The typing plugin is used to inform other users you are typing messages and
show a list of users currently typing a message on the buffer.
It is used by IRC plugin on channel and private buffers, when the "message-tags"
capability is enabled (you can check with <<command_irc_cap,/cap>> command). +
Under the hood, typing client tag is used, following this specification:
https://ircv3.net/specs/client-tags/typing.html.
[[typing_activation]]
==== Activation
For privacy considerations, the typing feature is disabled by default. +
If you want to use it, you must enable options in both typing and irc plugins:
----
/set typing.look.enabled_nicks on
/set typing.look.enabled_self on
/set irc.look.typing_status_nicks on
/set irc.look.typing_status_self on
----
The typing notifications are displayed at the end of the status bar.
Example of status bar with the "typing" item: "bob" is typing a message and
"alice" was typing a message but made a pause:
....
│[12:55] [6] [irc/libera] 3:#test(+n){4} [Typing: bob, (alice)] │
│[@Flashy] █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[typing_signals_sent]]
==== Signals sent
When you are typing a message (not a command starting with `/`), the typing
plugin sends signals to inform other plugins (like IRC) that you are typing,
and these plugins can then send typing notifications to other users.
The following signals are sent when you are typing messages:
[width="100%",cols="1,1,5",options="header"]
|===
| Signal | Arguments | Description
| typing_self_typing | Pointer: buffer. | You are typing a message.
| typing_self_paused | Pointer: buffer. | You made a pause while typing a message.
| typing_self_cleared | Pointer: buffer. | You cleared the command line without sending the message.
| typing_self_sent | Pointer: buffer. | You sent the message to the buffer.
|===
[[typing_signals_caught]]
==== Signals caught
The typing plugin is catching some signals that can be sent by other plugins
(like IRC), to update internal hashtables used to store the typing state of
nicks on buffers. These hashtables are used to build the content of "typing"
bar item.
The following signals are caught by the typing plugin:
[width="100%",cols="1,4,3",options="header"]
|===
| Signal | Arguments | Description
| typing_set_nick |
String: buffer pointer + ";" + state (one of: "off", "typing", "paused",
"cleared") + ";" + nick. +
Example: "0x1234abcd;typing;alice". |
Set typing state for a nick on a buffer.
| typing_reset_buffer |
Pointer: buffer. |
Remove typing state for all nicks on a buffer.
|===
[[typing_options]]
==== Opcje
Sekcje w pliku _typing.conf_:
[width="100%",cols="3m,6m,16",options="header"]
|===
| Sekcja | Komenda | Opis
| look | /set typing.look.* | Wygląd.
|===
Opcje:
include::includes/autogen_user_options.pl.adoc[tag=typing_options]
[[xfer_plugin]] [[xfer_plugin]]
=== Xfer === Xfer
+10 -19
View File
@@ -24,7 +24,6 @@ This script requires Python 3.6+.
""" """
from pathlib import Path from pathlib import Path
from typing import TextIO
import re import re
@@ -37,7 +36,6 @@ STUB_HEADER = """\
# #
from typing import Dict from typing import Dict
""" """
CONSTANT_RE = r"""\ CONSTANT_RE = r"""\
@@ -52,10 +50,8 @@ def (?P<function>\w+)(?P<args>[^)]*)(?P<return>\) -> [^:]+:) \.\.\.\
""" """
def write_stub_constants(stub_file: TextIO) -> None: def print_stub_constants() -> None:
""" """Print constants, extracted from the Scripting guide."""
Write constants in the stub file, extracted from the Scripting guide.
"""
types = { types = {
"integer": "int", "integer": "int",
"string": "str", "string": "str",
@@ -64,34 +60,29 @@ def write_stub_constants(stub_file: TextIO) -> None:
with open(DOC_DIR / "weechat_scripting.en.adoc") as scripting_file: with open(DOC_DIR / "weechat_scripting.en.adoc") as scripting_file:
scripting = scripting_file.read() scripting = scripting_file.read()
for match in constant_pattern.finditer(scripting): for match in constant_pattern.finditer(scripting):
stub_file.write(f'{match["constant"]}: {types[match["type"]]}\n') print(f'{match["constant"]}: {types[match["type"]]}')
def write_stub_functions(stub_file: TextIO) -> None: def print_stub_functions() -> None:
""" """Print function prototypes, extracted from the Plugin API reference."""
Write function prototypes in the stub file, extracted from the
Plugin API reference.
"""
function_pattern = re.compile(FUNCTION_RE, re.DOTALL) function_pattern = re.compile(FUNCTION_RE, re.DOTALL)
with open(DOC_DIR / "weechat_plugin_api.en.adoc") as api_doc_file: with open(DOC_DIR / "weechat_plugin_api.en.adoc") as api_doc_file:
api_doc = api_doc_file.read() api_doc = api_doc_file.read()
for match in function_pattern.finditer(api_doc): for match in function_pattern.finditer(api_doc):
url = f'https://weechat.org/doc/api#_{match["function"]}' url = f'https://weechat.org/doc/api#_{match["function"]}'
stub_file.write( print(
f"""\n f"""\n
def {match["function"]}{match["args"]}{match["return"]} def {match["function"]}{match["args"]}{match["return"]}
\"""`{match["function"]} in WeeChat plugin API reference <{url}>`_\""" \"""`{match["function"]} in WeeChat plugin API reference <{url}>`_\"""
... ..."""
"""
) )
def stub_api() -> None: def stub_api() -> None:
"""Write Python stub file.""" """Write Python stub file."""
with open("weechat.pyi", "w") as stub_file: print(STUB_HEADER)
stub_file.write(STUB_HEADER) print_stub_constants()
write_stub_constants(stub_file) print_stub_functions()
write_stub_functions(stub_file)
if __name__ == "__main__": if __name__ == "__main__":
+3
View File
@@ -85,6 +85,9 @@ $HOME/.config/weechat/tcl.conf::
$HOME/.config/weechat/trigger.conf:: $HOME/.config/weechat/trigger.conf::
файл конфигурации для плагина _trigger_ файл конфигурации для плагина _trigger_
$HOME/.config/weechat/typing.conf::
файл конфигурации для плагина _typing_
$HOME/.config/weechat/xfer.conf:: $HOME/.config/weechat/xfer.conf::
файл конфигурации для плагина _xref_ файл конфигурации для плагина _xref_
+164
View File
@@ -0,0 +1,164 @@
#
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
if(ENABLE_MAN)
# man page: weechat
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat.1
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.sr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.sr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/includes/man.sr.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat.1 (sr)"
)
add_custom_target(doc-man-weechat-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat.1)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.1 DESTINATION ${MANDIR}/sr/man1)
if(ENABLE_HEADLESS)
# man page: weechat-headless
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -b manpage -o weechat-headless.1 ${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.sr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.sr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/includes/man.sr.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat-headless.1 (sr)"
)
add_custom_target(doc-man-weechat-headless-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat-headless.1 DESTINATION ${MANDIR}/sr/man1)
endif()
endif()
if(ENABLE_DOC)
file(GLOB AUTOGEN_USER "${CMAKE_CURRENT_SOURCE_DIR}/includes/autogen_user_*.adoc")
file(GLOB AUTOGEN_PLUGIN "${CMAKE_CURRENT_SOURCE_DIR}/includes/autogen_api_*.adoc")
# user's guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.sr.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_user.sr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.sr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/includes/cmdline_options.sr.adoc
${AUTOGEN_USER}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_user.sr.html"
)
add_custom_target(doc-user-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.sr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.sr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# plugin API reference
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.sr.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_plugin_api.sr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.sr.adoc
${AUTOGEN_PLUGIN}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_plugin_api.sr.html"
)
add_custom_target(doc-plugin-api-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.sr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.sr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# scripting guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.sr.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_scripting.sr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.sr.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_scripting.sr.html"
)
add_custom_target(doc-scripting-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.sr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.sr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# FAQ
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.sr.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_faq.sr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.sr.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_faq.sr.html"
)
add_custom_target(doc-faq-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.sr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.sr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# quickstart
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.sr.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_quickstart.sr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.sr.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_quickstart.sr.html"
)
add_custom_target(doc-quickstart-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.sr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.sr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# tester's guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.sr.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.sr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.sr.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_tester.sr.html"
)
add_custom_target(doc-tester-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.sr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.sr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# relay protocol
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.sr.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_relay_protocol.sr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_relay_protocol.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_relay_protocol.sr.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_relay_protocol.sr.html"
)
add_custom_target(doc-relay-protocol-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.sr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.sr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# developer's guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.sr.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_dev.sr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_dev.sr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_dev.sr.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_dev.sr.html"
)
add_custom_target(doc-dev-sr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.sr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_dev.sr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
endif()
+135
View File
@@ -0,0 +1,135 @@
#
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2006 Julien Louis <ptitlouis@sysif.net>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
docinfo.html \
weechat.1.sr.adoc \
weechat-headless.1.sr.adoc \
weechat_user.sr.adoc \
weechat_plugin_api.sr.adoc \
weechat_scripting.sr.adoc \
weechat_faq.sr.adoc \
weechat_quickstart.sr.adoc \
weechat_tester.sr.adoc \
weechat_relay_protocol.sr.adoc \
weechat_dev.sr.adoc \
includes/autogen_api_completions.sr.adoc \
includes/autogen_api_hdata.sr.adoc \
includes/autogen_api_infolists.sr.adoc \
includes/autogen_api_infos.sr.adoc \
includes/autogen_api_infos_hashtable.sr.adoc \
includes/autogen_api_plugins_priority.sr.adoc \
includes/autogen_api_url_options.sr.adoc \
includes/autogen_user_commands.sr.adoc \
includes/autogen_user_default_aliases.sr.adoc \
includes/autogen_user_irc_colors.sr.adoc \
includes/autogen_user_options.sr.adoc \
includes/cmdline_options.sr.adoc \
includes/man.sr.adoc
if MAN
man_targets = weechat.1 \
weechat-headless.1
man_install = install-man
man_uninstall = uninstall-man
endif
if DOC
doc_targets = weechat_user.sr.html \
weechat_plugin_api.sr.html \
weechat_scripting.sr.html \
weechat_faq.sr.html \
weechat_quickstart.sr.html \
weechat_tester.sr.html \
weechat_relay_protocol.sr.html \
weechat_dev.sr.html
doc_install = install-doc
doc_uninstall = uninstall-doc
endif
all-local: $(man_targets) $(doc_targets)
# man pages
weechat.1: weechat.1.sr.adoc includes/cmdline_options.sr.adoc includes/man.sr.adoc
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/sr/weechat.1.sr.adoc
weechat-headless.1: weechat-headless.1.sr.adoc includes/cmdline_options.sr.adoc includes/man.sr.adoc
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/sr/weechat-headless.1.sr.adoc
# user's guide
weechat_user.sr.html: weechat_user.sr.adoc includes/cmdline_options.sr.adoc $(wildcard includes/autogen_user_*.adoc) $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_user.sr.html $(abs_top_srcdir)/doc/sr/weechat_user.sr.adoc
# plugin API reference
weechat_plugin_api.sr.html: weechat_plugin_api.sr.adoc $(wildcard includes/autogen_api_*.adoc) $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_plugin_api.sr.html $(abs_top_srcdir)/doc/sr/weechat_plugin_api.sr.adoc
# scripting guide
weechat_scripting.sr.html: weechat_scripting.sr.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_scripting.sr.html $(abs_top_srcdir)/doc/sr/weechat_scripting.sr.adoc
# FAQ
weechat_faq.sr.html: weechat_faq.sr.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_faq.sr.html $(abs_top_srcdir)/doc/sr/weechat_faq.sr.adoc
# quickstart
weechat_quickstart.sr.html: weechat_quickstart.sr.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.sr.html $(abs_top_srcdir)/doc/sr/weechat_quickstart.sr.adoc
# tester's guide
weechat_tester.sr.html: weechat_tester.sr.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.sr.html $(abs_top_srcdir)/doc/sr/weechat_tester.sr.adoc
# relay protocol
weechat_relay_protocol.sr.html: weechat_relay_protocol.sr.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_relay_protocol.sr.html $(abs_top_srcdir)/doc/sr/weechat_relay_protocol.sr.adoc
# developer's guide
weechat_dev.sr.html: weechat_dev.sr.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_dev.sr.html $(abs_top_srcdir)/doc/sr/weechat_dev.sr.adoc
# install man/docs
install-data-hook: $(man_install) $(doc_install)
install-man:
$(mkinstalldirs) $(DESTDIR)$(mandir)/sr/man1/
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/sr/man1/
install-doc:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
# uninstall man/docs
uninstall-hook: $(man_uninstall) $(doc_uninstall)
uninstall-man:
$(RM) $(DESTDIR)$(mandir)/sr/man1/weechat.1
$(RM) $(DESTDIR)$(mandir)/sr/man1/weechat-headless.1
-rmdir $(DESTDIR)$(mandir)/sr/man1
uninstall-doc:
$(RM) $(DESTDIR)$(docdir)/*.sr.html
-rmdir $(DESTDIR)$(docdir)
# clean
clean-local:
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
+1
View File
@@ -0,0 +1 @@
../docinfo.html
@@ -0,0 +1,192 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
// tag::completions[]
[width="100%",cols="^1,^2,7",options="header"]
|===
| Додатак | Име | Опис
| alias | alias | листа алијаса
| alias | alias_value | вредност алијаса
| exec | exec_commands_ids | ids (бројеви и имена) извршених команди
| fset | fset_options | конфигурациони фајлови, одељци, опције и речи опција
| guile | guile_script | листа скрипти
| irc | irc_channel | текући IRC канал
| irc | irc_channel_nicks_hosts | надимци и имена хостова текућег IRC канала
| irc | irc_channel_topic | тема текућег IRC канала
| irc | irc_channels | канали на свим IRC серверима
| irc | irc_ignores_numbers | бројеви за дефинисана игнорисања
| irc | irc_modelist_masks | modelist маске текућег IRC канала; обавезни аргумент: modelist режим
| irc | irc_modelist_numbers | modelist бројеви текућег IRC канала; обавезни аргумент: modelist режим
| irc | irc_msg_kick | подразумевана порука о избацивању
| irc | irc_msg_part | подразумевана поздравна порука за IRC канал
| irc | irc_notify_nicks | надимци у листи за обавештавање
| irc | irc_privates | приватни разговори на свим IRC серверима
| irc | irc_raw_filters | филтери за сирови irc бафер
| irc | irc_server | текући IRC сервер
| irc | irc_server_channels | канали на текућем IRC серверу
| irc | irc_server_nick | надимак на текућем IRC серверу
| irc | irc_server_nicks | надимци на свим каналима текућег IRC сервера
| irc | irc_server_privates | приватни разговори на текућем IRC серверу
| irc | irc_servers | IRC сервери (интерна имена)
| irc | nick | надимци текућег IRC канала
| javascript | javascript_script | листа скрипти
| lua | lua_script | листа скрипти
| perl | perl_script | листа скрипти
| php | php_script | листа скрипти
| python | python_script | листа скрипти
| relay | relay_free_port | први слободни порт за relay додатак
| relay | relay_protocol_name | сви могући протокол.име за relay додатак
| relay | relay_relays | протокол.име текућих релеја за relay додатак
| ruby | ruby_script | листа скрипти
| script | script_extensions | листа скрипт екстензија
| script | script_files | фајлови у скрипт директоријумима
| script | script_languages | листа скрипт језика
| script | script_scripts | листа скрипти у репозиторијуму
| script | script_scripts_installed | листа инсталираних скрипти (из репозиторијума)
| script | script_tags | ознаке скрипти у репозиторијуму
| spell | spell_dicts | листа инсталираних речника
| spell | spell_langs | листа свих подржаних језика
| tcl | tcl_script | листа скрипти
| trigger | trigger_hook_arguments | подразумевани аргументи за куку
| trigger | trigger_hook_command | подразумевана команда за куку
| trigger | trigger_hook_conditions | подразумевани услови за куку
| trigger | trigger_hook_rc | подразумевани повратни кодови за функцију повратног позива куке
| trigger | trigger_hook_regex | подразумевани регуларни израз за куку
| trigger | trigger_hooks | куке за окидаче
| trigger | trigger_hooks_filter | куке за окидаче (за филтере у монитор баферу)
| trigger | trigger_names | окидачи
| trigger | trigger_names_default | подразумевани окидачи
| trigger | trigger_option_value | вредност опције окидача
| trigger | trigger_options | опције за окидаче
| trigger | trigger_post_action | пост акције окидача
| weechat | bars_names | имена трака
| weechat | bars_options | опције за траке
| weechat | buffer_local_variable_value | вредност бафер локалне променљиве
| weechat | buffer_local_variables | бафер локалне променљиве
| weechat | buffer_properties_get | особине које могу да се читају за бафер
| weechat | buffer_properties_set | особине које могу да се поставе за бафер
| weechat | buffers_names | имена бафера
| weechat | buffers_numbers | бројеви бафера
| weechat | buffers_plugins_names | имена бафера (укључујући имена додатака)
| weechat | colors | имена боја
| weechat | commands | команде (weechat и додаци); необавезни аргумент: префикс који се додаје испред команди
| weechat | config_files | конфигурациони фајлови
| weechat | config_option_values | вредности за опцију конфигурације
| weechat | config_options | конфигурационе опције
| weechat | cursor_areas | површине („chat” или име траке) за слободно померање курсора
| weechat | env_value | вредност променљиве окружења
| weechat | env_vars | променљиве окружења
| weechat | filename | имефајла; необавезни аргумент: подразумевана путања (израчунато, погледајте /help eval)
| weechat | filters_names | имена филтера
| weechat | infolists | имена прикачених инфолисти
| weechat | infos | имена прикачених infos
| weechat | keys_codes | кодови тастера
| weechat | keys_codes_for_reset | кодови тастера који могу да се ресетују (додати, редефинисани или уклоњени тастери)
| weechat | keys_contexts | контексти тастера
| weechat | layouts_names | имена распореда
| weechat | nicks | надимци у листи надимака текућег бафера
| weechat | palette_colors | палета боја
| weechat | plugins_commands | команде које су дефинисали додаци; необавезни аргумент: префикс који се додаје испред команди
| weechat | plugins_installed | имена инсталираних додатака
| weechat | plugins_names | имена додатака
| weechat | proxies_names | имена проксија
| weechat | proxies_options | опције за проксије
| weechat | secured_data | имена обезбеђених података (фајл sec.conf, одељак data)
| weechat | weechat_commands | weechat команде; необавезни аргумент: префикс који се додаје испред команди
| weechat | windows_numbers | бројеви прозора
| xfer | nick | надимци за DCC разговор
|===
// end::completions[]
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,94 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
// tag::infolists[]
[width="100%",cols="^1,^2,5,5,5",options="header"]
|===
| Додатак | Име | Опис | Показивач | Аргументи
| alias | alias | листа алијаса | показивач на алијас (необавезно) | име алијаса (дозвољен је џокер „*”) (необавезно)
| alias | alias_default | листа подразумеваних алијаса | - | -
| buflist | buflist | листа бафера у buflist ставки траке | - | име buflist ставке траке (необавезно)
| fset | fset_option | листа fset опција | показивач fset опција (необавезно) | име опције (дозвољен је џокер „*”) (необавезно)
| guile | guile_script | листа скрипти | поинтер на скрипту (није обавезан) | име скрипте (дозвољен је џокер „*”) (није обавезно)
| irc | irc_channel | листа канала на IRC серверу | показивач на канал (није обавезан) | сервер,канал (канал није обавезан)
| irc | irc_color_weechat | мапирање кодова IRC боја и WeeChat имена боја | - | -
| irc | irc_ignore | листа IRC игнорисања | показивач игнорисања (није обавезан) | -
| irc | irc_modelist | листа листи режима канала за IRC канал | показивач на листу режима (није обавезан) | сервер,канал,тип (тип није обавезан)
| irc | irc_modelist_item | листа ставки у листи режима канала | показивач на ставку листе режима (није обавезан) | сервер,канал,тип,број (број није обавезан)
| irc | irc_nick | листа надимака за IRC канал | показивач надимка (није обавезан) | сервер,канал,надимак (надимак није обавезан)
| irc | irc_notify | листа обавештења | показивач обавештења (није обавезан) | име сервера (дозвољен је џокер „*”) (није обавезно)
| irc | irc_server | листа IRC сервера | показивач на сервер (није обавезан) | име сервера (дозвољен је џокер „*”) (није обавезно)
| javascript | javascript_script | листа скрипти | поинтер на скрипту (није обавезан) | име скрипте (дозвољен је џокер „*”) (није обавезно)
| logger | logger_buffer | листа логер бафера | показивач на логер (није обавезан) | -
| lua | lua_script | листа скрипти | поинтер на скрипту (није обавезан) | име скрипте (дозвољен је џокер „*”) (није обавезно)
| perl | perl_script | листа скрипти | поинтер на скрипту (није обавезан) | име скрипте (дозвољен је џокер „*”) (није обавезно)
| php | php_script | листа скрипти | поинтер на скрипту (није обавезан) | име скрипте (дозвољен је џокер „*”) (није обавезно)
| python | python_script | листа скрипти | поинтер на скрипту (није обавезан) | име скрипте (дозвољен је џокер „*”) (није обавезно)
| relay | relay | листа релеј клијената | показивач на релеј (није обавезан) | -
| ruby | ruby_script | листа скрипти | поинтер на скрипту (није обавезан) | име скрипте (дозвољен је џокер „*”) (није обавезно)
| script | script_script | листа скрипти | поинтер на скрипту (није обавезан) | име скрипте са екстензијом (дозвољен је џокер „*”) (није обавезно)
| tcl | tcl_script | листа скрипти | поинтер на скрипту (није обавезан) | име скрипте (дозвољен је џокер „*”) (није обавезно)
| weechat | bar | листа трака | показивач на траку (није обавезан) | име траке (дозвољен је џокер „*”) (није обавезно)
| weechat | bar_item | листа ставки траке | показивач на ставку траке (није обавезан) | име ставке траке (дозвољен је џокер „*”) (није обавезно)
| weechat | bar_window | листа прозора трака | показивач на прозор траке (није обавезан) | -
| weechat | buffer | листа бафера | показивач на бафер (није обавезан) | име бафера (дозвољен је џокер „*”) (није обавезно)
| weechat | buffer_lines | линије бафера | показивач на бафер | -
| weechat | filter | листа филтера | - | име филтера (дозвољен је џокер „*”) (није обавезно)
| weechat | history | историја команди | показивач на бафер (ако није постављен, враћа се глобална историја) (није обавезан) | -
| weechat | hook | листа кука | показивач на куку (није обавезан) | тип,аргументи (тип је command/timer/.., аргументи ако желите да вам се врате само неке куке (дозвољен је џокер „*”), оба нису обавезни)
| weechat | hotlist | листа бафера у врућој листи | - | -
| weechat | key | листа тастерских пречица | - | контекст („default”, „search”, „cursor” или „mouse”) (није обавезан)
| weechat | layout | листа распореда | - | -
| weechat | nicklist | надимци у листи надимака за бафер | показивач на бафер | nick_xxx или group_xxx ако желите само надимак/групу xxx (није обавезно)
| weechat | option | листа опција | - | име опције (дозвољен је џокер „*”) (необавезно)
| weechat | plugin | листа додатака | показивач на додатак (није обавезан) | име додатка (дозвољен је џокер „*”) (није обавезно)
| weechat | proxy | листа проксија | показивач на прокси (није обавезан) | име проксија (дозвољен је џокер „*”) (није обавезно)
| weechat | url_options | опције за URL | - | -
| weechat | window | листа прозора | показивач на прозор (није обавезан) | „current” за текући прозор или број прозора (није обавезно)
| xfer | xfer | листа xfer | показивач на xfer (није обавезан) | -
|===
// end::infolists[]
+164
View File
@@ -0,0 +1,164 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
// tag::infos[]
[width="100%",cols="^1,^2,6,6",options="header"]
|===
| Додатак | Име | Опис | Аргументи
| fifo | fifo_filename | име FIFO пајпа | -
| guile | guile_eval | израчунавање изворног кода | изворни кôд који треба да се изврши
| guile | guile_interpreter | име интерпретера који се користи | -
| guile | guile_version | верзија интерпретера која се користи | -
| irc | irc_buffer | враћа показивач на бафер за IRC сервер/канал/надимак | сервер,канал,надимак (канал и надимци нису обавезни)
| irc | irc_is_channel | 1 ако је стринг важеће име IRC канала за сервер | сервер,канал (сервер није обавезан)
| irc | irc_is_message_ignored | 1 ако се надимак игнорише (порука се не приказује) | сервер,порука (порука представља сирову IRC message)
| irc | irc_is_nick | 1 ако је стринг важеће име IRC надимка | сервер,надимак (сервер није обавезан)
| irc | irc_nick | враћа тренутни надимак на серверу | име сервера
| irc | irc_nick_color | враћа кôд боје надимка (*застарело* од верзије 1.5, замењено са „nick_color”) | надимак
| irc | irc_nick_color_name | враћа кôд боје надимка (*застарело* од верзије 1.5, замењено са „nick_color_name”) | надимак
| irc | irc_nick_from_host | враћа надимак из IRC хоста | IRC хост (као `:надимак!име@сервер.com`)
| irc | irc_server_isupport | 1 ако сервер подржава ову могућност (из IRC поруке 005) | сервер,могућност
| irc | irc_server_isupport_value | вредност могућности, ако је сервер подржава (из IRC поруке 005) | сервер,могућност
| javascript | javascript_eval | израчунавање изворног кода | изворни кôд који треба да се изврши
| javascript | javascript_interpreter | име интерпретера који се користи | -
| javascript | javascript_version | верзија интерпретера која се користи | -
| lua | lua_eval | израчунавање изворног кода | изворни кôд који треба да се изврши
| lua | lua_interpreter | име интерпретера који се користи | -
| lua | lua_version | верзија интерпретера која се користи | -
| perl | perl_eval | израчунавање изворног кода | изворни кôд који треба да се изврши
| perl | perl_interpreter | име интерпретера који се користи | -
| perl | perl_version | верзија интерпретера која се користи | -
| php | php_eval | израчунавање изворног кода | изворни кôд који треба да се изврши
| php | php_interpreter | име интерпретера који се користи | -
| php | php_version | верзија интерпретера која се користи | -
| python | python2_bin | путања до Python 2.x интерпретера (*застарело* од верзије 2.6, скрипте смеју да користе само Python 3) | -
| python | python_eval | израчунавање изворног кода | изворни кôд који треба да се изврши
| python | python_interpreter | име интерпретера који се користи | -
| python | python_version | верзија интерпретера која се користи | -
| relay | relay_client_count | број клијената за релеј | протокол,статус (оба нису обавезна, за сваки аргумент „*” значи све; протоколи: irc, weechat; статуси: connecting, waiting_auth, connected, auth_failed, disconnected)
| ruby | ruby_eval | израчунавање изворног кода | изворни кôд који треба да се изврши
| ruby | ruby_interpreter | име интерпретера који се користи | -
| ruby | ruby_version | верзија интерпретера која се користи | -
| spell | spell_dict | листа речника раздвојених запетама који се користе у баферу | показивач на бафер („0x12345678”) или пуно име бафера („irc.libera.#weechat”)
| tcl | tcl_eval | израчунавање изворног кода | изворни кôд који треба да се изврши
| tcl | tcl_interpreter | име интерпретера који се користи | -
| tcl | tcl_version | верзија интерпретера која се користи | -
| weechat | auto_connect | 1 ако је укључено аутоматско повезивање са серверима, 0 ако је корисник то искључио (опцијом „-a” или „--no-connect”) | -
| weechat | charset_internal | WeeChat интерни скуп карактера | -
| weechat | charset_terminal | скуп карактера терминала | -
| weechat | color_ansi_regex | POSIX проширени регуларни израз за претрагу ANSI обележавајућих (escape) низова | -
| weechat | color_rgb2term | RGB боја конвертована у терминалску боју (0-255) | rgb,граница (граница није обавезна и подразумевано се поставља на 256)
| weechat | color_term2rgb | терминалска боја (0-255) конвертована у RGB боју | боја (терминалска боја: 0-255)
| weechat | cursor_mode | 1 ако је укључен режим померања курсора | -
| weechat | date | датум/време компајлирања програма WeeChat | -
| weechat | dir_separator | граничник директоријума | -
| weechat | filters_enabled | 1 ако су филтери укључени | -
| weechat | inactivity | неактивност тастатуре (секунди) | -
| weechat | locale | локале које се користи за превод порука | -
| weechat | nick_color | враћање кода боје надимка | надимак;боје (боје је необавезна листа боја раздвојених запетама које треба да се користе; за боју је дозвољена позадина у формату текст:позадина; ако су боје присутне, WeeChat опције везане за боју надимака и форсирање боја за надимке се игноришу)
| weechat | nick_color_name | враћање имена боје надимка | надимак;боје (боје је необавезна листа боја раздвојених запетама које треба да се користе; за боју је дозвољена позадина у формату текст:позадина; ако су боје присутне, WeeChat опције везане за боју надимака и форсирање боја за надимке се игноришу)
| weechat | pid | WeeChat PID (ID процеса) | -
| weechat | term_color_pairs | број парова боја који терминал подржава | -
| weechat | term_colors | број боја које подржава терминал | -
| weechat | term_height | висина терминала | -
| weechat | term_width | ширина терминала | -
| weechat | totp_generate | генерисање Time-based One-Time Password (TOTP) | secret (у base32), timestamp (није обавезно, подразумевано је текуће време), број цифара (није обавезно, између 4 и 10, подразумевано је 6)
| weechat | totp_validate | валидација Time-based One-Time Password (TOTP): 1 ако је TOTP исправна, у супротном је 0 | secret (у base32), one-time password, timestamp (није обавезно, подразумевано је текуће време), број лозинки пре/након које се тестирају (није обавезно, подразумевано је 0)
| weechat | uptime | WeeChat време извршавања (формат: „дана:чч:мм:сс”) | „days” (број дана) или „seconds” (број секунди) (није обавезно)
| weechat | version | верзија програма WeeChat | -
| weechat | version_git | WeeChat git верзија (излаз команде „git describe” само за развојну верзију, празно за стабилну верзију) | -
| weechat | version_number | верзија програма WeeChat (као број) | -
| weechat | weechat_cache_dir | WeeChat кеш директоријум | -
| weechat | weechat_config_dir | WeeChat конфигурациони директоријум | -
| weechat | weechat_daemon | 1 ако се програм WeeChat извршава у даемон режиму (без корисничког интерфејса, у позадини) | -
| weechat | weechat_data_dir | WeeChat директоријум са подацима | -
| weechat | weechat_dir | WeeChat директоријум (*застарело* од верзије 3.2, замењено је са „weechat_config_dir”, „weechat_data_dir”, „weechat_cache_dir” и „weechat_runtime_dir”) | -
| weechat | weechat_headless | 1 ако се програм WeeChat извршава без директног улаза/излаза | -
| weechat | weechat_libdir | WeeChat „lib” директоријум | -
| weechat | weechat_localedir | WeeChat „locale” директоријум | -
| weechat | weechat_runtime_dir | WeeChat директоријум за време извршавања | -
| weechat | weechat_sharedir | WeeChat „share” директоријум | -
| weechat | weechat_site | WeeChat сајт | -
| weechat | weechat_site_download | WeeChat сајт, страна за преузимање | -
| weechat | weechat_upgrading | 1 ако се програм WeeChat ажурира (командом `/upgrade`) | -
|===
// end::infos[]
@@ -0,0 +1,20 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
// tag::infos_hashtable[]
[width="100%",cols="^1,^2,6,6,8",options="header"]
|===
| Додатак | Име | Опис | Хеш табела (улаз) | Хеш табела (излаз)
| irc | irc_message_parse | парсирање IRC поруке | „message”: IRC порука, „server”: име сервера (није обавезно) | „tags”: ознаке, „tag_xxx”: неозначена вредност ознаке „xxx” (један кључ по ознаци), „message_without_tags”: поруке без ознака, „nick”: надимак, „user”: корисник, „host”: хост, „command”: команда, „channel”: канал, „arguments”: аргументи (укључујући channel), „text”: текст (на пример, корисничка порука), „pos_command”: индекс „command” поруке („-1” ако „command” није пронађена), „pos_arguments”: индекс „arguments” поруке („-1” ако „arguments” није пронађена), „pos_channel”: индекс „channel” поруке („-1” ако „channel” није пронађена), „pos_text”: индекс „text” поруке („-1” ако „text” није пронађена)
| irc | irc_message_split | подела IRC поруке (подразумевано тако да стане у 512 бајтова) | „message”: IRC порука, „server”: име сервера (није обавезно) | „msg1” ... „msgN”: поруке које се шаљу (без „\r\n” на крају), „args1” ... „argsN”: аргументи порука, „count”: број порука
| weechat | focus_info | враћање инфо о фокусу | „x”: x координата (стринг са целим бројем >= 0), „y”: y координата (стринг са целим бројем >= 0) | погледајте функцију „hook_focus” у API референтном приручнику за додатке
| weechat | secured_data | обезбеђени подаци | - | обезбеђени подаци: имена и вредности (будите пажљиви: вредности су осетљиви подаци: НЕМОЈТЕ да их штампате/логујете било где)
|===
// end::infos_hashtable[]
@@ -0,0 +1,29 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
// tag::plugins_priority[]
. charset (16000)
. logger (15000)
. exec (14000)
. trigger (13000)
. spell (12000)
. alias (11000)
. buflist (10000)
. fifo (9000)
. typing (8000)
. xfer (7000)
. irc (6000)
. relay (5000)
. guile (4007)
. javascript (4006)
. lua (4005)
. perl (4004)
. php (4003)
. python (4002)
. ruby (4001)
. tcl (4000)
. script (3000)
. fset (2000)
// end::plugins_priority[]
@@ -0,0 +1,436 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
// tag::url_options[]
[width="100%",cols="2,^1,7",options="header"]
|===
| Опција | Тип ^(1)^ | Константе ^(2)^
| verbose | long |
| header | long |
| noprogress | long |
| nosignal | long |
| wildcardmatch | long |
| failonerror | long |
| keep_sending_on_error | long |
| proxy | string |
| proxyport | long |
| port | long |
| pre_proxy | string |
| httpproxytunnel | long |
| interface | string |
| dns_cache_timeout | long |
| proxytype | long | http, socks4, socks5, socks4a, socks5_hostname, http_1_0, https
| buffersize | long |
| tcp_nodelay | long |
| localport | long |
| localportrange | long |
| address_scope | long |
| protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
| redir_protocols | mask | http, https, ftp, ftps, scp, sftp, telnet, ldap, ldaps, dict, file, tftp, all, imap, imaps, pop3, pop3s, smtp, smtps, rtsp, rtmp, rtmpt, rtmpe, rtmpte, rtmps, rtmpts, gopher, smb, smbs
| noproxy | string |
| socks5_gssapi_nec | long |
| tcp_keepalive | long |
| tcp_keepidle | long |
| tcp_keepintvl | long |
| unix_socket_path | string |
| abstract_unix_socket | string |
| path_as_is | long |
| proxy_service_name | string |
| service_name | string |
| default_protocol | string |
| tcp_fastopen | long |
| socks5_auth | long |
| haproxyprotocol | long |
| doh_url | string |
| netrc | long | ignored, optional, required
| userpwd | string |
| proxyuserpwd | string |
| httpauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
| proxyauth | mask | none, basic, digest, ntlm, any, anysafe, digest_ie, only, ntlm_wb, negotiate, gssapi, bearer
| netrc_file | string |
| username | string |
| password | string |
| proxyusername | string |
| proxypassword | string |
| tlsauth_type | mask | none, srp
| tlsauth_username | string |
| tlsauth_password | string |
| sasl_ir | long |
| xoauth2_bearer | string |
| login_options | string |
| disallow_username_in_url | long |
| autoreferer | long |
| followlocation | long |
| put | long |
| post | long |
| postfields | string |
| referer | string |
| useragent | string |
| httpheader | list |
| cookie | string |
| cookiefile | string |
| postfieldsize | long |
| maxredirs | long |
| httpget | long |
| cookiejar | string |
| http_version | long | none, 1_0, 1_1, 2_0, 2, 2tls, 2_prior_knowledge
| cookiesession | long |
| http200aliases | list |
| unrestricted_auth | long |
| postfieldsize_large | long long |
| cookielist | string |
| ignore_content_length | long |
| accept_encoding | string |
| transfer_encoding | long |
| http_content_decoding | long |
| http_transfer_decoding | long |
| copypostfields | string |
| postredir | mask | post_301, post_302
| expect_100_timeout_ms | long |
| headeropt | mask | unified, separate
| proxyheader | list |
| pipewait | long |
| stream_weight | long |
| request_target | string |
| mail_from | string |
| mail_rcpt | list |
| mail_auth | string |
| tftp_blksize | long |
| tftp_no_options | long |
| ftpport | string |
| quote | list |
| postquote | list |
| ftp_use_epsv | long |
| prequote | list |
| ftp_use_eprt | long |
| ftp_create_missing_dirs | long |
| ftp_response_timeout | long |
| ftpsslauth | long | default, ssl, tls
| ftp_account | string |
| ftp_skip_pasv_ip | long |
| ftp_filemethod | long | multicwd, nocwd, singlecwd
| ftp_alternative_to_user | string |
| ftp_ssl_ccc | long | ccc_none, ccc_active, ccc_passive
| dirlistonly | long |
| append | long |
| ftp_use_pret | long |
| rtsp_request | long | options, describe, announce, setup, play, pause, teardown, get_parameter, set_parameter, record, receive
| rtsp_session_id | string |
| rtsp_stream_uri | string |
| rtsp_transport | string |
| rtsp_client_cseq | long |
| rtsp_server_cseq | long |
| crlf | long |
| range | string |
| resume_from | long |
| customrequest | string |
| nobody | long |
| infilesize | long |
| upload | long |
| timecondition | long | none, ifmodsince, ifunmodsince, lastmod
| timevalue | long |
| transfertext | long |
| filetime | long |
| maxfilesize | long |
| proxy_transfer_mode | long |
| resume_from_large | long long |
| infilesize_large | long long |
| maxfilesize_large | long long |
| timevalue_large | long long |
| upload_buffersize | long |
| timeout | long |
| low_speed_limit | long |
| low_speed_time | long |
| fresh_connect | long |
| forbid_reuse | long |
| connecttimeout | long |
| ipresolve | long | whatever, v4, v6
| connect_only | long |
| max_send_speed_large | long long |
| max_recv_speed_large | long long |
| timeout_ms | long |
| connecttimeout_ms | long |
| maxconnects | long |
| use_ssl | long | none, try, control, all
| resolve | list |
| dns_servers | string |
| accepttimeout_ms | long |
| dns_interface | string |
| dns_local_ip4 | string |
| dns_local_ip6 | string |
| connect_to | list |
| happy_eyeballs_timeout_ms | long |
| dns_shuffle_addresses | long |
| upkeep_interval_ms | long |
| sslcert | string |
| sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
| ssl_verifypeer | long |
| cainfo | string |
| random_file | string |
| egdsocket | string |
| ssl_verifyhost | long |
| ssl_cipher_list | string |
| sslcerttype | string |
| sslkey | string |
| sslkeytype | string |
| sslengine | string |
| sslengine_default | long |
| capath | string |
| ssl_sessionid_cache | long |
| krblevel | string |
| keypasswd | string |
| issuercert | string |
| crlfile | string |
| certinfo | long |
| gssapi_delegation | long | none, policy_flag, flag
| ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
| ssl_enable_alpn | long |
| ssl_enable_npn | long |
| pinnedpublickey | string |
| ssl_verifystatus | long |
| ssl_falsestart | long |
| proxy_cainfo | string |
| proxy_capath | string |
| proxy_crlfile | string |
| proxy_keypasswd | string |
| proxy_pinnedpublickey | string |
| proxy_sslcert | string |
| proxy_sslcerttype | string |
| proxy_sslkey | string |
| proxy_sslkeytype | string |
| proxy_sslversion | long | default, tlsv1, sslv2, sslv3, tlsv1_0, tlsv1_1, tlsv1_2, tlsv1_3, max_default, max_none, max_tlsv1_0, max_tlsv1_1, max_tlsv1_2, max_tlsv1_3
| proxy_ssl_cipher_list | list |
| proxy_ssl_options | long | allow_beast, no_revoke, no_backends, ok, too_late, unknown_backend
| proxy_ssl_verifyhost | long |
| proxy_ssl_verifypeer | long |
| proxy_tlsauth_password | string |
| proxy_tlsauth_type | string |
| proxy_tlsauth_username | string |
| tls13_ciphers | list |
| proxy_tls13_ciphers | list |
| ssh_auth_types | mask | none, policy_flag, flag
| ssh_public_keyfile | string |
| ssh_private_keyfile | string |
| ssh_host_public_key_md5 | string |
| ssh_knownhosts | string |
| ssh_compression | long |
| new_file_perms | long |
| new_directory_perms | long |
| telnetoptions | list |
|===
// end::url_options[]
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,44 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
// tag::default_aliases[]
[width="100%",cols="2m,5m,5",options="header"]
|===
| Alias | Команда | Довршавање
| /AAWAY | /allserv /away | -
| /ANICK | /allserv /nick | -
| /BEEP | /print -beep | -
| /BYE | /quit | -
| /C | /buffer clear | -
| /CL | /buffer clear | -
| /CLOSE | /buffer close | -
| /CHAT | /dcc chat | -
| /EXIT | /quit | -
| /IG | /ignore | -
| /J | /join | -
| /K | /kick | -
| /KB | /kickban | -
| /LEAVE | /part | -
| /M | /msg | -
| /MUB | /unban * | -
| /MSGBUF | /command -buffer $1 * /input send $2- | %(buffers_plugins_names)
| /N | /names | -
| /Q | /query | -
| /REDRAW | /window refresh | -
| /SAY | /msg * | -
| /SIGNOFF | /quit | -
| /T | /topic | -
| /UB | /unban | -
| /UMODE | /mode $nick | -
| /V | /command core version | -
| /W | /who | -
| /WC | /window close | -
| /WI | /whois | -
| /WII | /whois $1 $1 | -
| /WM | /window merge | -
| /WW | /whowas | -
|===
// end::default_aliases[]

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