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

Compare commits

...

586 Commits

Author SHA1 Message Date
Sébastien Helleu 778594d68f Version 3.4 2021-12-18 08:57:32 +01:00
Sébastien Helleu 37d4d2ac65 debian: update changelog 2021-12-18 08:41:05 +01:00
Krzysztof Korościk 2376b6aa5e doc: update polish translation 2021-12-17 23:28:35 +01:00
Nils Görs 5a24ffd951 doc: update German documentation 2021-12-17 09:19:32 +01:00
Sébastien Helleu a1cc70b752 core: fix broken links in README (closes #1729) 2021-12-16 20:41:12 +01:00
Sébastien Helleu 1cedb78348 doc: add workaround for download of plugins.xml.gz on macOS (FAQ) 2021-12-15 21:05:06 +01:00
Ivan Pešić 0123abb83e doc: Update Serbian translation 2021-12-13 22:16:57 +01:00
Sébastien Helleu 463517bd1e core: fix tests on PHP plugin in CI 2021-12-13 21:39:25 +01:00
Sébastien Helleu 46f3bee2ff core: add build of zst archive in make dist 2021-12-13 21:10:06 +01:00
Krzysztof Korościk d80b27af64 doc: updated polish cmdline options 2021-12-12 20:47:42 +01:00
Krzysztof Korościk e2d44181d7 doc: updated polish user guide 2021-12-12 20:37:02 +01:00
Krzysztof Korościk ba4f762964 po: updated polish translation 2021-12-12 00:44:04 +01:00
Sébastien Helleu dad3e6099c doc: use unbreakable spaces in example of missing translation tag (developer's guide)
This allows to search this tag in docs with grep and ignore the example in the
developer's guide.
2021-12-11 09:40:07 +01:00
Sébastien Helleu 5208552a98 doc: remove missing translation comments in French docs 2021-12-11 09:35:01 +01:00
Sébastien Helleu 07721d3dc1 Version 3.4-rc1 2021-12-10 18:49:11 +01:00
Nils Görs d236171035 core: update German translations 2021-12-10 11:21:47 +01:00
Sébastien Helleu a4d560e0aa doc: fix color codes attributes in developer's guide 2021-12-08 20:54:40 +01:00
Sébastien Helleu 7bf0a5c734 doc: remove list of remote interfaces, redirect to web site (user's guide) 2021-12-05 22:00:24 +01:00
Sébastien Helleu 10a8732d41 doc: rename section "WeeChat extension" to "Extending WeeChat" (user's guide) 2021-12-05 21:39:28 +01:00
Sébastien Helleu fd017ce474 doc: add section "Script manager" (user's guide) 2021-12-05 21:39:28 +01:00
Sébastien Helleu 1c0d8f5fd3 doc: add section "WeeChat extension" above "Plugins" (user's guide) 2021-12-05 21:39:28 +01:00
Sébastien Helleu 160ffe8e11 doc: move sections "Exec", "Fifo" and "Trigger" at top level after "Relay" (user's guide) 2021-12-05 21:39:28 +01:00
Sébastien Helleu 4c7b898666 doc: move section "Xfer" at top level after "IRC" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu 391d0a18a1 doc: move section "Typing" at top level after "IRC" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu a5db952842 doc: move section "Spell" in "Configuration" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu 7cb5147e74 doc: move section "Relay" at top level after "IRC" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu a5ffd8b800 doc: move section "Logger" in "Configuration" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu 66384544b5 doc: move section "IRC" at top level after "Configuration" (user's guide) 2021-12-05 20:59:19 +01:00
Sébastien Helleu c88428fb41 doc: move section "Bare display" in "Buffers and windows" (user's guide) 2021-12-05 14:15:52 +01:00
Sébastien Helleu 71991fcc73 doc: add fset buffer example (user's guide) 2021-12-05 14:11:25 +01:00
Sébastien Helleu b82a9c44fd doc: fix typo in French user's guide 2021-12-05 13:56:59 +01:00
Sébastien Helleu 637c7bb3d4 doc: move section "Fset" in "Interface" (user's guide) 2021-12-05 13:15:35 +01:00
Sébastien Helleu 268cb53238 doc: move section "Charset" in "Configuration" (user's guide) 2021-12-05 12:43:54 +01:00
Sébastien Helleu 9e721d0ad5 doc: move section "Buflist" in "Interface" (user's guide) 2021-12-05 12:36:39 +01:00
Sébastien Helleu 287d5146b4 doc: move section "Alias" in "Configuration" (user's guide) 2021-12-05 12:25:41 +01:00
Sébastien Helleu 1cfb5e5d1e doc: change section title for debug build and address sanitizer (user's guide) 2021-12-05 11:55:02 +01:00
Sébastien Helleu 866fef2595 doc: fix cross-reference to mouse actions (user's guide) 2021-12-05 11:47:04 +01:00
Sébastien Helleu 2dabce9ac8 doc: move section "Key bindings" at top level, add section title "Configuration" (user's guide) 2021-12-04 20:12:06 +01:00
Sébastien Helleu f33e9b6737 doc: move section "Running WeeChat" at top level, add section title "Interface" (user's guide) 2021-12-04 15:59:55 +01:00
Sébastien Helleu 50cea48b51 doc: move section "Upgrade" at top level after "Installation" (user's guide) 2021-12-04 15:59:46 +01:00
Sébastien Helleu ae891ab322 doc: reduce font size in table of contents 2021-12-04 15:38:47 +01:00
Sébastien Helleu 0a14441d35 doc: remove section title for extra debug options on command line (user's guide) 2021-12-04 15:31:38 +01:00
Sébastien Helleu f2310dae42 doc: add more categories for key bindings (user's guide) 2021-12-04 15:15:58 +01:00
Sébastien Helleu 67a364550f core: fix typo in weechat --help 2021-12-03 12:03:08 +01:00
Sébastien Helleu 64592951b5 doc: use only a link to user's guide in Installation chapter (README) 2021-12-01 18:54:28 +01:00
Sébastien Helleu 3a38879590 doc: remove tester's guide 2021-12-01 18:48:14 +01:00
Sébastien Helleu d447755b1f core: update ChangeLog 2021-11-28 22:21:55 +01:00
Sébastien Helleu 2564fa2882 doc: disable web fonts in docs generated by asciidoctor 2021-11-27 16:53:12 +01:00
Sébastien Helleu 928ed152ed doc: make reproducible build of docs with asciidoctor 2021-11-27 16:09:11 +01:00
Sébastien Helleu 7014322b2e doc: add dark theme in docs generated by asciidoctor 2021-11-27 16:05:28 +01:00
Sébastien Helleu 9b6606394c doc: fix column size in table with color codes (developer's guide) 2021-11-27 16:05:28 +01:00
Sébastien Helleu 198872c027 doc: escape example of link in developer's guide 2021-11-27 16:05:28 +01:00
Sébastien Helleu c8776b14f6 doc: switch from prettify to pygments for syntax highlighting 2021-11-27 16:05:28 +01:00
Nils Görs 35c26fb001 doc: update German documentation 2021-11-24 12:30:41 +01:00
Thomas Faughnan eca9c89747 doc: fix typo in link for '/layout' in user guide 2021-11-23 09:34:19 +01:00
Sébastien Helleu aed64f5020 ruby: add detection of Ruby 3.0 in autotools (issue #1721) 2021-11-21 16:57:17 +01:00
Sébastien Helleu 266233636d core: add issue #1605 in ChangeLog 2021-11-21 16:48:39 +01:00
Sébastien Helleu be753046b7 core: fix detection of Ruby 3.0 on macOS (issue #1721) 2021-11-21 16:38:22 +01:00
Sébastien Helleu 15f5bc7944 tests: add missing include of stdio.h 2021-11-21 16:37:23 +01:00
Sébastien Helleu 27a480c7d7 core: fix compilation with Ruby 3.0 on macOS (issue #1721, closes #1605) 2021-11-21 16:29:40 +01:00
Sébastien Helleu fe9768f484 ruby: add detection of Ruby 3.0.0, remove old way to detect Ruby (closes #1721) 2021-11-21 11:39:56 +01:00
Sébastien Helleu aace0a1a58 core: fix links to docs in release notes 2021-11-20 20:34:21 +01:00
Sébastien Helleu 792739ee42 core: add build with CMake and Ninja in CI 2021-11-20 19:02:53 +01:00
Sébastien Helleu 8b11fa86cd core: add build on macOS 11 in CI 2021-11-20 17:34:33 +01:00
Sébastien Helleu 28d013b704 build: add targets "changelog" and "rn" to build HTML version of ChangeLog and release notes (CMake build only) 2021-11-20 17:23:59 +01:00
Sébastien Helleu 5fffaf89e4 build: improve error management in build of tarballs 2021-11-20 15:32:06 +01:00
Sébastien Helleu 006964c4dc irc: fix memory leak in case of realloc error 2021-11-20 13:21:51 +01:00
Sébastien Helleu 05d31b476b trigger: hide key and password in command "/msg nickserv setpass nick key password" 2021-11-13 15:41:31 +01:00
Sébastien Helleu 50edb33f1c core: speed up eval by storing length of prefix/suffix in eval structure 2021-11-13 15:18:49 +01:00
Sébastien Helleu c82358c17c core: free strings with XDG directories in case of error 2021-11-13 14:59:14 +01:00
Sébastien Helleu d64050bafb relay: remove dead assignment in websocket decoding 2021-11-13 13:32:02 +01:00
Sébastien Helleu 1556e4ac5a core: fix memory leak in evaluated expression "split:number,seps,flags,xxx" when multiple "strip_items" are given 2021-11-13 13:29:32 +01:00
Sébastien Helleu a3924a27a0 tests: add tests on some IRC SASL functions 2021-11-13 09:06:34 +01:00
Sébastien Helleu cbadaecc4f core: add note about default trigger "cmd_pass_register" in release notes 2021-11-13 08:48:04 +01:00
Sébastien Helleu 7cad1230e6 trigger: add comments with list of all commands in default triggers 2021-11-12 21:20:14 +01:00
Sébastien Helleu 997559e55b trigger: split default triggers on multiple lines 2021-11-12 21:08:39 +01:00
Sébastien Helleu d98940fecb tests: add tests on default triggers 2021-11-12 20:58:30 +01:00
Sébastien Helleu f2ad57ceb9 trigger: add support of option "-server" when hiding passwords in command /msg nickserv register 2021-11-12 20:52:14 +01:00
Sébastien Helleu d4650183ba doc: fix typos in user's guide 2021-11-11 21:33:16 +01:00
Sébastien Helleu a6c40d2190 doc: fix sentences in French user's guide 2021-11-11 21:18:10 +01:00
Sébastien Helleu 563a6db02d core: fix typos in docs 2021-11-11 09:28:24 +01:00
Sébastien Helleu 5ddd72c0e9 tests: add extra tests on functions string_strcmp_ignore_chars and string_convert_escaped_chars 2021-11-09 20:41:23 +01:00
Ivan Pešić 80b86ea647 core: update Serbian translations 2021-11-08 20:48:59 +01:00
Santiago Forero bbcdb90fbb core: update Spanish translations 2021-11-08 20:25:41 +01:00
Sébastien Helleu 253b25db03 core: fix random integer number with large range in evaluation of expressions on GNU/Hurd 2021-11-07 20:16:26 +01:00
Sébastien Helleu 4c9e7ed09e tests: fix allocation of test_ptr_1_hashtable_dyn in hdata tests 2021-11-07 18:13:03 +01:00
Sébastien Helleu 12043622e6 tests: add tests on UTF-8 string functions 2021-11-07 14:39:48 +01:00
Sébastien Helleu f4a1baaed3 irc: extend size of some internal buffers 2021-11-07 08:57:07 +01:00
Sébastien Helleu 9303f5abd9 core: update ChangeLog 2021-11-06 18:57:49 +01:00
Sébastien Helleu 1b8ad40b81 irc: do not display a message parsing error when a channel buffer can not be created 2021-11-06 18:19:12 +01:00
Sébastien Helleu 2f177dd188 irc: fix join of channels with name longer than 127 chars (closes #1717) 2021-11-06 18:17:39 +01:00
Sébastien Helleu edfc415e9e irc: fix memory leak in main IRC message callback 2021-11-06 17:58:48 +01:00
Sébastien Helleu 8bb5e33348 irc: fix memory leak in callback of IRC message 353 2021-11-06 17:55:31 +01:00
Sébastien Helleu b3cf7658f7 doc: replace ${name} by ${server_name} in example of function hdata_search (plugin API reference) 2021-11-06 16:03:40 +01:00
Sébastien Helleu 2081fa54af core: reverse diff arguments in CI 2021-11-06 15:59:28 +01:00
Sébastien Helleu 2da2172593 api: add parameters pointers, extra_vars and options in function hdata_search 2021-11-06 15:59:18 +01:00
Sébastien Helleu 018a4bda53 core: add hdata changes in release notes 2021-11-05 20:21:39 +01:00
Sébastien Helleu 14c6ef3d83 tests: add missing include of string.h 2021-11-05 20:21:17 +01:00
Sébastien Helleu 9c5837d143 core: add unit tests on hdata 2021-11-05 20:04:10 +01:00
Sébastien Helleu 5e08f9876a core: fix access to integer/long/time arrays in hdata, add support of static arrays in hdata 2021-11-04 23:55:02 +01:00
Sébastien Helleu ee66fc3a85 core: fix crash in function hdata_set when pointer value is NULL in hashtable 2021-11-03 23:54:12 +01:00
Sébastien Helleu 13472adfff core: check that time is valid in function hdata_set 2021-11-03 23:23:09 +01:00
Sébastien Helleu 60b374901f core: remove useless test in function hdata_update 2021-11-03 23:02:01 +01:00
Sébastien Helleu d8a3a0137c core: check that hdata and name are not NULL in function hdata_compare 2021-11-02 21:08:24 +01:00
Sébastien Helleu f66e55564e core: check that name is not NULL in function hdata_get_var 2021-11-01 22:16:50 +01:00
Sébastien Helleu 6e83225e6f core: use a "free value" callback in hashtable weechat_hdata 2021-10-29 22:13:53 +02:00
Sébastien Helleu f03622d141 doc: update Polish auto-generated files 2021-10-24 09:23:01 +02:00
Krzysztof Korościk 4f20417cb2 po: updated polish translation 2021-10-24 00:38:46 +02:00
Krzysztof Korościk f15337ea9a doc: updated polish translation 2021-10-23 23:29:34 +02:00
Sébastien Helleu 49221b56b9 doc: update German auto-generated file 2021-10-23 20:58:16 +02:00
Nils Görs 75f71cd311 core: update German translations 2021-10-23 17:58:01 +02:00
Sébastien Helleu 505a9f937a core: fix typo in ChangeLog 2021-10-23 15:13:53 +02:00
Sébastien Helleu 08d3e3b2b7 core: update ChangeLog (closes #1666) 2021-10-23 14:44:20 +02:00
Sébastien Helleu fb4d947a8c core: update translations 2021-10-23 14:44:11 +02:00
Sébastien Helleu 2ca6420e17 irc: do not display first parameter in numeric command when it is "*" 2021-10-17 21:28:31 +02:00
Sébastien Helleu cde0d5f7a5 irc: do not display "*" when received as nick in command 900 2021-10-17 21:28:31 +02:00
Sébastien Helleu ba5b744397 irc: add URL to extended-join extension 2021-10-17 21:28:31 +02:00
Sébastien Helleu 1447c7ad83 irc: fix URL to invite-notify extension 2021-10-17 21:28:31 +02:00
Sébastien Helleu b57d19c893 irc: add more CAP command examples 2021-10-17 21:28:31 +02:00
Sébastien Helleu 9063546acc irc: remove parameters argc/argv/argv_eol from command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu f1cb767001 irc: keep trailing spaces in received message 322 2021-10-17 21:28:31 +02:00
Sébastien Helleu 634eac455d tests: ensure trailing spaces are preserved in some incoming IRC commands 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2f90fc0299 irc: don't keep trailing spaces in received message TAGMSG 2021-10-17 21:28:31 +02:00
Sébastien Helleu d2bd952210 tests: protect IRC message with quotes in command /server fakerecv 2021-10-17 21:28:31 +02:00
Sébastien Helleu 9fbe18eb27 irc: remove quotes around message in command /server fakerecv
This preserves trailing spaces at the end of the message.
2021-10-17 21:28:31 +02:00
Sébastien Helleu 2ca37a9128 irc: remove server in "903" and "904" command callbacks examples 2021-10-17 21:28:31 +02:00
Sébastien Helleu a73e9eb8ca irc: use parsed command parameters in "901" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a3ddeba9f9 irc: use parsed command parameters in "900" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu baa91a45a8 irc: use parsed command parameters in "730", "731", "732", "733" and "734" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu 6124bf3c92 irc: use parsed command parameters in "729" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 6a8ec55118 irc: use parsed command parameters in "728" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 4b6038975c irc: use parsed command parameters in "470" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5e63161b5b irc: use parsed command parameters in "438" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 32c99047f4 irc: use parsed command parameters in "437" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2ef9509dbe irc: remove server in "432" and "433" command callbacks examples 2021-10-17 21:28:31 +02:00
Sébastien Helleu c7cb025582 irc: use parsed command parameters in "368" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 96288d69e2 irc: use parsed command parameters in "367" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu aad86a1955 irc: use parsed command parameters in "366" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu dcbf534d53 irc: use parsed command parameters in "353" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu c8329da6e0 irc: use parsed command parameters in "352" and "354" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3e1b621f52 tests: add extra tests on notice message received with just a server address 2021-10-17 21:28:31 +02:00
Sébastien Helleu 56cb9e50af irc: fix display of address in notice messages received 2021-10-17 21:28:31 +02:00
Sébastien Helleu 9b17f1fee4 irc: use parsed command parameters in "351" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu cee4bf7e3c irc: use parsed command parameters in "349" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 027ecc6b0e irc: use parsed command parameters in "348" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 22ecfda777 irc: use parsed command parameters in "347" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2ae974f5c3 irc: use parsed command parameters in "346" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 99d565f6df irc: use parsed command parameters in "345" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5546b0af0e irc: use parsed command parameters in "344" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 741343e9aa irc: use parsed command parameters in "341" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 0e9710de81 irc: use parsed command parameters in "338" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 32ae101096 irc: use parsed command parameters in "333" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3a5a2abeea irc: use parsed command parameters in "332" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu de567aa1d3 irc: use parsed command parameters in "331" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a5e470a16a irc: use parsed command parameters in "330" and "343" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu b3ce8b5282 irc: use parsed command parameters in "329" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 31b15c1423 irc: use parsed command parameters in "328" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 60c9beab2b irc: rename some variables "str_params" to a more meaningful name 2021-10-17 21:28:31 +02:00
Sébastien Helleu 10a1c9bda4 irc: use parsed command parameters in "327" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 6f8f547242 irc: use parsed command parameters in "324" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2509486c6a irc: use parsed command parameters in "323" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu df9c32b0c3 irc: use parsed command parameters in "322" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu c577da0375 irc: use parsed command parameters in "321" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 4e1d40034e irc: use parsed command parameters in "317" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a1a4f337ff irc: use parsed command parameters in "315" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu e412a34668 irc: use parsed command parameters in "314" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3c7d4b0516 irc: use parsed command parameters in "312" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 572bcc2c59 irc: use parsed command parameters in "311" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3360cadd55 irc: use parsed command parameters in "whois" and "whowas" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu f51f3dbe29 irc: use parsed command parameters in "305" and "306" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu efecdf5d45 irc: use parsed command parameters in "303" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 76b75ad5cd irc: use parsed command parameters in "numeric" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 74ceaa1a68 irc: use parsed command parameters in "301" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 12a4519448 irc: use parsed command parameters in "221" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 033fbf63b0 irc: use parsed command parameters in "008" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 1029780ce2 irc: use parsed command parameters in "005" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 0ea0b24563 irc: use parsed command parameters in "001" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu ec816b4be5 irc: use parsed command parameters in "wallops" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 7c1ea1cb32 irc: use parsed command parameters in "topic" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 27f554659e irc: use parsed command parameters in "973", "974" and "975" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5389ceb237 irc: use parsed command parameters in "tagmsg" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 03e0122155 irc: use parsed command parameters in "setname" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 8d12187f3d irc: require nick in "away" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu bf8c85f422 irc: use parsed command parameters in "quit" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 179822fb91 irc: use parsed command parameters in "privmsg" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5e712d7145 irc: use parsed command parameters in "pong" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 8ea41d91c9 irc: use parsed command parameters in "ping" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 7a88e007a5 tests: check missing nick in IRC commands invite/join/kick/kill/mode/nick/part 2021-10-17 21:28:31 +02:00
Sébastien Helleu 257fe7362a tests: fix comments 2021-10-17 21:28:31 +02:00
Sébastien Helleu 52cc1165c4 irc: ensure the nick is not empty when the nick is required in a command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 0be96b7c66 irc: fix messages displayed when prefix/nick is missing 2021-10-17 21:28:31 +02:00
Sébastien Helleu 9d4119232f irc: remove check of address/host in command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu adcc04cc5a irc: fix extraction of address from prefix
Do not return the nick when the address is missing.
2021-10-17 21:28:31 +02:00
Sébastien Helleu e5996f626b irc: use parsed command parameters in "part" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu d8c7cf41b5 irc: use parsed command parameters in "notice" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5123483c33 tests: fix IRC protocol tests 2021-10-17 21:28:31 +02:00
Sébastien Helleu 33a3c485be irc: shorten error in case of missing parameters in command received 2021-10-17 21:28:31 +02:00
Sébastien Helleu 7b4d48c46d irc: fix number of required parameters in generic error command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 4ee82d1c70 irc: use parsed command parameters in "nick" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a1a4d627e1 irc: use parsed command parameters in "mode" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5a5c2cbd1a irc: rename macro IRC_PROTOCOL_CHECK_HOST to IRC_PROTOCOL_CHECK_PREFIX 2021-10-17 21:28:31 +02:00
Sébastien Helleu 2bd3681eef irc: use parsed command parameters in "kill" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 604415e19e irc: use parsed command parameters in "kick" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu e653ee04d2 irc: use parsed command parameters in "join" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 3c737ca304 irc: use parsed command parameters in "invite" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 1f83df7a18 irc: use parsed command parameters in "fail", "warn" and "note" command callbacks 2021-10-17 21:28:31 +02:00
Sébastien Helleu eda8ad9de5 irc: use parsed command parameters in "generic_error" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu df6f32a7bb irc: use parsed command parameters in "error" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu a2a733fc36 irc: use parsed command parameters in "chghost" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 56edeba7fc irc: use parsed command parameters in "cap" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 15392e4a81 irc: use parsed command parameters in "away" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu cb856a7f3a irc: use parsed command parameters in "authenticate" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 69c457287d irc: use parsed command parameters in "account" command callback 2021-10-17 21:28:31 +02:00
Sébastien Helleu 5458382bb8 irc: fix typo in a comment 2021-10-17 21:28:31 +02:00
Sébastien Helleu 849105ebd6 irc: replace "message" by "command" in description of functions 2021-10-17 21:28:31 +02:00
Sébastien Helleu cbc4073815 irc: send parsed parameters to IRC command callbacks 2021-10-17 21:28:30 +02:00
Sébastien Helleu c4b4d80936 irc: parse and return command parameters in message parser 2021-10-17 21:28:30 +02:00
Sébastien Helleu f0898eae64 doc: update Serbian auto-generated file 2021-10-17 21:27:41 +02:00
Ivan Pešić 9378a7572b core: Update Serbian translation 2021-10-17 21:26:20 +02:00
Sébastien Helleu 3cd97b5131 tests: add missing include of string.h 2021-10-14 21:08:28 +02:00
Sébastien Helleu d8b8bf5a84 tests: check displayed message/error for all simulated IRC commands received 2021-10-14 21:00:47 +02:00
Sébastien Helleu 238c17bd0e irc: display command in lower case when there is a parsing error 2021-10-14 20:39:23 +02:00
Sébastien Helleu 1206e9e5c3 tests: fix typo in comment 2021-10-14 20:38:16 +02:00
Sébastien Helleu f3b4336bc4 irc: do not display message with "(null)" for 973/974/975 command received if pos_mode is NULL 2021-10-14 20:37:32 +02:00
Sébastien Helleu 55df7805c2 irc: display a single error message when parsing of a command failed 2021-10-13 18:45:36 +02:00
Sébastien Helleu 9102e4f552 irc: display a single error message when a command is not found 2021-10-13 18:45:14 +02:00
Sébastien Helleu 57ad90c3c0 irc: do not display message with "(null)" for numeric command received if pos_args is NULL 2021-10-13 18:42:47 +02:00
Sébastien Helleu ed9104fbea irc: fix parsing of CAP message when there is no prefix (closes #1707) 2021-10-09 11:27:51 +02:00
Sébastien Helleu 68a3aca643 plugins: use a different plugin priority for each scripting language 2021-10-02 20:50:35 +02:00
Sébastien Helleu 6fe354439c doc: update German auto-generated file 2021-10-02 20:41:09 +02:00
Nils Görs 63b93a8147 core: update German translations 2021-10-02 19:49:38 +02:00
Sébastien Helleu ad5fa7c99f core: add command /toggle 2021-10-01 22:55:38 +02:00
Sébastien Helleu 9548a4cf74 core: check that option is not NULL in function config_file_option_value_to_string 2021-09-27 23:23:01 +02:00
Sébastien Helleu 301f0942c6 core: fix search of option when the section is not given 2021-09-27 22:35:14 +02:00
Sébastien Helleu fb57ad147e core: check that option_name is not NULL in config file functions 2021-09-27 22:02:22 +02:00
Nils Görs 3ee2f40fb3 core: update German translations 2021-09-26 20:25:20 +02:00
Sébastien Helleu edd1971ae8 irc: fix parsing of TAGMSG message when there is a colon before the channel
This fixes the display of typing notifications on some IRC servers like
inspircd.
2021-09-21 20:41:18 +02:00
Sébastien Helleu a6826af796 core: add creation of user variables in evaluated expressions with ${define:name,value} 2021-09-20 21:15:28 +02:00
Jan Palus bd21b25bad typing: correct typo in CMake option description 2021-09-19 14:58:07 +02:00
Sébastien Helleu 48a4a043b7 Version 3.4-dev 2021-09-19 12:23:06 +02:00
Sébastien Helleu 3b9217e460 Version 3.3 2021-09-19 10:14:18 +02:00
Sébastien Helleu eaacd805ae php: add missing header files in autotools build 2021-09-19 09:54:01 +02:00
Sébastien Helleu e9d303c4fa debian: update changelog 2021-09-18 10:33:04 +02:00
Sébastien Helleu fb1bf569a9 debian: bump Standards-Version to 4.6.0.1 2021-09-18 10:32:39 +02:00
Sébastien Helleu e00937875d Version 3.3-rc1 2021-09-11 09:20:58 +02:00
a1346054 5dbf24d179 docs: trim excess whitespace 2021-09-11 00:17:36 +02:00
a1346054 9d7cac2396 build: fix shellcheck warnings 2021-09-11 00:17:36 +02:00
a1346054 04977fa9da legal: use license file from gnu.org
Downloaded from:
https://www.gnu.org/licenses/gpl-3.0.txt
2021-09-11 00:17:36 +02:00
Sébastien Helleu 4aa2b86ee2 doc: update German auto-generated file 2021-09-10 23:07:23 +02:00
Sébastien Helleu f3fc1f5f85 core: remove empty line displayed in output of /plugin list <name> 2021-09-10 23:06:05 +02:00
Nils Görs a7d3f9d4e8 core: update German translations 2021-09-10 09:59:14 +02:00
Sébastien Helleu 91d32be93c core: add options "-o", "-ol", "-i" and "-il" in command "/plugin list" 2021-09-09 21:32:58 +02:00
Sébastien Helleu a76eedcd1f core: replace deprecated cmake command "exec_program" by "execute_process"
This fixes a compilation issue on Debian Sid with the latest version of
debianutils (5.4-3), where the "which" command is now deprecated.
2021-09-08 20:46:44 +02:00
Sébastien Helleu 7742b48098 doc: update German auto-generated file 2021-09-07 21:40:01 +02:00
Nils Görs 4d0245711d core: update German translations 2021-09-07 09:42:30 +02:00
Sébastien Helleu 7d1b557627 core: fix indentation in examples of /help eval 2021-09-06 22:39:29 +02:00
Sébastien Helleu 5b3929b321 api: add split of string and shell arguments in evaluation of expressions
Split of string: ${split:number,separators,flags,xxx}
Split of shell arguments: ${split_shell:number,xxx}
2021-09-06 13:32:04 +02:00
Sébastien Helleu 8852e9fd0c core: add CVE id in ChangeLog 2021-09-05 20:54:14 +02:00
Sébastien Helleu d5b68e6b75 core: update ChangeLog (closes #1599) 2021-09-05 09:31:43 +02:00
Ivan Pešić 2446e5814f core: update Serbian translations 2021-09-04 22:01:41 +02:00
Sébastien Helleu 885b470d51 lua: add detection of Lua 5.4 2021-09-04 19:46:14 +02:00
Sébastien Helleu 97b809d164 core: add version 3.2.1 2021-09-04 16:28:04 +02:00
Sébastien Helleu 97bdd51112 relay: fix crash when decoding a malformed websocket frame 2021-09-04 15:55:37 +02:00
Nils Görs 75b9ba03a1 core: update German translations 2021-09-03 15:00:09 +02:00
Sébastien Helleu 5fb7ebdfce irc: fix send of empty JOIN when connecting to a server with only parted channels (closes #1638) 2021-09-03 13:43:07 +02:00
Sébastien Helleu 6fc6166cfe core: update translations 2021-08-31 22:39:17 +02:00
Sébastien Helleu 12be3b8c33 core: add options in command /input and new keys to remove/restore buffers in hotlist
New options in command /input:

- hotlist_remove_buffer
- hotlist_restore_buffer
- hotlist_restore_all

New keys:

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

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

After fix:

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

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

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

This fixes a build error on these old distributions:

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

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

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

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

With the old behavior we had:

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

And with the new behavior, we have:

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

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

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

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

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

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

The SIGHUP signal makes now WeeChat quit, it was the behavior before version
2.9 of WeeChat (see commit de1e61f7cd).
2021-03-16 18:47:31 +01:00
Sébastien Helleu bb41de8c02 api: add info "weechat_daemon" 2021-03-14 14:11:06 +01:00
Sébastien Helleu a02a2fbaae doc: use full path /usr/bin/pass in example for option sec.crypt.passphrase_command 2021-03-14 13:38:50 +01:00
Sébastien Helleu e37f2569f9 core: mention /fset command in header comment of configuration files 2021-03-14 11:36:07 +01:00
Sébastien Helleu ab282db3a6 core: update ChangeLog (closes #1618) 2021-03-14 10:56:51 +01:00
Sébastien Helleu 8c793fe7cc fset: add fset bar on configuration reload (issue #1618) 2021-03-14 10:56:24 +01:00
Sébastien Helleu 35b5adbc4c buflist: always add buflist bar when plugin is loaded, hide bar by default if buflist is disabled (issue #1618) 2021-03-14 10:55:48 +01:00
Sébastien Helleu a4440ba8e5 buflist: add buflist bar on configuration reload (issue #1618) 2021-03-14 10:55:24 +01:00
Nils Görs 3bdae5b464 doc: update German documentation 2021-03-13 23:56:16 +01:00
Sébastien Helleu d2c56084f8 doc: add upgrade chapter in user's guide 2021-03-13 15:17:01 +01:00
Sébastien Helleu 5311c103d5 debian: update debian/ubuntu patches with new Standards-Version 2021-03-08 20:48:06 +01:00
Sébastien Helleu 39bd4e2099 debian: fix watch according to download page changes 2021-03-08 20:38:25 +01:00
Sébastien Helleu 35ca5cde9c debian: bump Standards-Version to 4.5.1 2021-03-08 20:37:43 +01:00
Sébastien Helleu c49255a851 core: add missing include of sys/time.h in C headers 2021-03-07 13:21:24 +01:00
Sébastien Helleu 2b1c2d6d05 Version 3.2-dev 2021-03-07 12:11:55 +01:00
393 changed files with 117763 additions and 35174 deletions
+68 -10
View File
@@ -1,33 +1,42 @@
name: CI
on: [push, pull_request]
on:
- push
- pull_request
jobs:
build:
build_linux:
name: ${{ matrix.config.name }}
runs-on: ubuntu-18.04
strategy:
fail-fast: false
matrix:
os:
- ubuntu-20.04
config:
- { name: "cmake_gcc", cc: "gcc", cxx: "g++", tool: "cmake", args: "" }
- { name: "cmake_gcc_ninja", cc: "gcc", cxx: "g++", tool: "cmake", args: "-G Ninja" }
- { name: "cmake_gcc_no_nls", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_NLS=OFF" }
- { name: "cmake_gcc_py2", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_PYTHON2=ON" }
- { name: "cmake_gcc_coverage", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_CODE_COVERAGE=ON" }
- { name: "cmake_clang", cc: "clang", cxx: "clang++", tool: "cmake", args: "" }
- { name: "autotools_gcc", cc: "gcc", cxx: "g++", 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:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
sudo apt-add-repository --yes ppa:ondrej/php
sudo apt-get update -qq
sudo apt-get --yes --no-install-recommends install devscripts equivs python-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev zlib1g-dev curl libcpputest-dev php7.4-dev libphp7.4-embed libargon2-0-dev libsodium-dev pylint3 asciidoctor
sudo -H pip install --ignore-installed msgcheck
sudo apt-get --yes purge php8.1-dev
sudo apt-get --yes --no-install-recommends install devscripts equivs python3-pip libenchant-dev autopoint cmake ninja-build 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
- name: Test patches
run: ./tools/build-debian.sh test-patches
@@ -37,10 +46,14 @@ jobs:
- name: Check Python scripts
run: |
pylint3 --additional-builtins=_ doc/docgen.py
pylint3 tests/scripts/python/testapigen.py
pylint3 tests/scripts/python/testapi.py
pylint3 tests/scripts/python/unparse.py
pylint --additional-builtins=_ doc/docgen.py
pylint doc/python_stub.py
pylint tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
bandit doc/docgen.py doc/python_stub.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
env:
@@ -71,3 +84,48 @@ jobs:
lcov --remove coverage.info '/usr/*' --output-file coverage.info
lcov --list coverage.info
bash <(curl -s https://codecov.io/bash) -f coverage.info || echo 'Codecov error'
build_macos:
strategy:
fail-fast: false
matrix:
os:
- macos-11
- macos-10.15
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"
+4
View File
@@ -43,6 +43,7 @@ Alphabetically:
* Elizabeth Myers (Elizacat)
* Elián Hanisch (m4v)
* Emanuele Giaquinta
* Emir Sarı
* emk
* Érico Nogueira
* Esteban I. Ruiz Moreno (Exio)
@@ -55,6 +56,7 @@ Alphabetically:
* Guido Berhoerster
* Gwenn
* Hasan Kiran (turgay)
* Ivan Pešić
* Ivan Sichmann Freitas
* Jakub Jirutka
* Jan Palus
@@ -129,6 +131,7 @@ Alphabetically:
* Simmo Saan (sim642)
* Simon Arlott
* Simon Kuhnle
* Simon Ser
* Stefano Pigozzi
* Stfn
* Sven Knurr (Cthulhux)
@@ -142,6 +145,7 @@ Alphabetically:
* Trevor Bergeron
* Valentin Lorentz (progval)
* Vasco Almeida
* Victorhck
* Voroskoi
* Wojciech Kwolek
* W. Trevor King
+5 -15
View File
@@ -27,8 +27,8 @@ project(weechat C)
set(CMAKE_VERBOSE_MAKEFILE OFF)
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
set(CMAKE_SKIP_RPATH ON)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -Wall -Wextra -Werror-implicit-function-declaration")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -Wall -Wextra")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra -Werror-implicit-function-declaration")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra")
# version
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-major OUTPUT_VARIABLE VERSION_MAJOR)
@@ -115,6 +115,7 @@ option(ENABLE_PHP "Enable PHP scripting language" ON)
option(ENABLE_SPELL "Enable Spell checker plugin" ON)
option(ENABLE_ENCHANT "Enable Enchant lib for Spell checker plugin" OFF)
option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
option(ENABLE_TYPING "Enable Typing plugin" ON)
option(ENABLE_XFER "Enable Xfer plugin" ON)
option(ENABLE_MAN "Enable build of man page" OFF)
option(ENABLE_DOC "Enable build of documentation" OFF)
@@ -134,23 +135,11 @@ if(ENABLE_TESTS AND NOT ENABLE_HEADLESS)
endif()
# option WEECHAT_HOME
if(NOT DEFINED WEECHAT_HOME OR "${WEECHAT_HOME}" STREQUAL "")
set(WEECHAT_HOME "~/.weechat")
endif()
set(WEECHAT_HOME "${WEECHAT_HOME}" CACHE
STRING "WeeChat home directory for config, logs, scripts.. (default is \"~/.weechat\")"
STRING "Force a single WeeChat home directory for config, logs, scripts, etc."
FORCE)
mark_as_advanced(CLEAR WEECHAT_HOME)
# option CA_FILE
if(NOT DEFINED CA_FILE OR "${CA_FILE}" STREQUAL "")
set(CA_FILE "/etc/ssl/certs/ca-certificates.crt")
endif()
set(CA_FILE "${CA_FILE}" CACHE
STRING "File containing the certificate authorities (default is \"/etc/ssl/certs/ca-certificates.crt\"). This is the default value of option \"weechat.network.gnutls_ca_file\"."
FORCE)
mark_as_advanced(CLEAR CA_FILE)
if(COMMAND cmake_policy)
if(POLICY CMP0003)
cmake_policy(SET CMP0003 NEW)
@@ -170,6 +159,7 @@ check_include_files("langinfo.h" HAVE_LANGINFO_CODESET)
check_include_files("sys/resource.h" HAVE_SYS_RESOURCE_H)
check_function_exists(mallinfo HAVE_MALLINFO)
check_function_exists(mallinfo2 HAVE_MALLINFO2)
check_symbol_exists("eat_newline_glitch" "term.h" HAVE_EAT_NEWLINE_GLITCH)
+1 -1
View File
@@ -671,4 +671,4 @@ into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<https://www.gnu.org/philosophy/why-not-lgpl.html>.
<https://www.gnu.org/licenses/why-not-lgpl.html>.
+163 -3
View File
@@ -15,6 +15,166 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
(file _ReleaseNotes.adoc_ in sources).
[[v3.4]]
== Version 3.4 (2021-12-18)
New features::
* core: add support of static arrays in hdata
* core: add command /toggle
* api: add parameters pointers, extra_vars and options in function hdata_search
* api: add user variables in evaluation of expressions with "define:name,value"
* api: add IRC message parameters "param1" to "paramN" and "num_params" in output of irc_message_parse
* irc: allow quotes around IRC message in command /server fakerecv
* trigger: hide key and password in command "/msg nickserv setpass nick key password"
* trigger: add support of option "-server" when hiding passwords in command /msg nickserv register
Bug fixes::
* core: fix memory leak in evaluated expression "split:number,seps,flags,xxx" when multiple "strip_items" are given
* core: fix random integer number with large range in evaluation of expressions on GNU/Hurd
* core: fix access to integer/long/time arrays in hdata
* api: fix search of option when the section is not given in functions config_search_option and config_search_section_option
* irc: fix join of channels with long name (issue #1717)
* irc: fix parsing of parameters in all IRC messages (issue #1666)
* 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
Documentation::
* doc: remove tester's guide
* doc: add dark theme (automatic, following browser/desktop settings)
* doc: make build reproducible
* doc: disable web fonts
* doc: switch from prettify to pygments for syntax highlighting
Tests::
* core: add build with CMake and Ninja in CI
* core: add build on macOS 11 in CI
Build::
* ruby: add detection of Ruby 3.0 (issue #1721, issue #1605)
* core: add targets "changelog" and "rn" to build HTML version of ChangeLog and release notes (CMake build only)
[[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]]
== Version 3.2 (2021-06-13)
New features::
* core: use XDG directories by default (config, data, cache, runtime) (issue #1285)
* core: add option weechat.network.gnutls_ca_system, rename option weechat.network.gnutls_ca_file to weechat.network.gnutls_ca_user (now evaluated), delete and reload certificates when options are changed (issue #972)
* core: evaluate option weechat.plugin.path, change default value to "${weechat_data_dir}/plugins"
* core: add options to customize commands executed on system signals received (SIGHUP, SIGQUIT, SIGTERM, SIGUSR1, SIGUSR2) (issue #1595)
* core: quit WeeChat by default when signal SIGHUP is received in normal run, reload configuration in weechat-headless (issue #1595)
* core: add signals "cursor_start" and "cursor_end"
* api: add function crypto_hmac (issue #1628)
* api: add translated string in evaluation of expressions with "translate:xxx"
* api: add evaluation of WeeChat directories with "${weechat_xxx_dir}" in evaluated strings
* api: add optional key "directory" in hashtable options of function/modifier string_eval_path_home
* api: add supported prefixes "${weechat_xxx_dir}" in function mkdir_home
* api: add infos "weechat_config_dir", "weechat_data_dir", "weechat_cache_dir" and "weechat_runtime_dir"
* api: add support of pointer names in function string_eval_expression (direct and in hdata)
* api: add info "weechat_daemon"
* buflist: add option buflist.format.tls_version
* fifo: change default value of option fifo.file.path to "${weechat_runtime_dir}/weechat_fifo_${info:pid}"
* irc: add support of SASL mechanisms SCRAM-SHA-1, SCRAM-SHA-256 and SCRAM-SHA-512 (issue #1628)
* irc: add variable "${target}" (target nick) in commands /kick and /kickban
* irc: add bar item "tls_version", add options irc.color.item_tls_version_ok, irc.color.item_tls_version_deprecated and irc.color.item_tls_version_insecure (issue #1622)
* irc: evaluate server options "sasl_key" and "ssl_cert"
* logger: change default value of option logger.file.path to "${weechat_data_dir}/logs"
* python: add stub for WeeChat API (issue #1377)
* relay: evaluate option relay.network.ssl_cert_key, change default value to "${weechat_config_dir}/ssl/relay.pem"
* script: change default value of option script.scripts.path to "${weechat_cache_dir}/script"
* trigger: add variables "${tg_shell_argc}" and "${tg_shell_argvN}" in command trigger evaluated strings (issue #1624)
* xfer: change default value of option xfer.file.download_path to "${weechat_data_dir}/xfer"
Bug fixes::
* core: split startup commands before evaluating them (issue #1643)
* core: set server name when connecting to server with TLS (SNI extension) only if it's not an IPV4/IPv6 (issue #1635)
* core: use function mallinfo2 instead of mallinfo when available (issue #1636)
* core: display a warning when the file with certificate authorities is not found (option weechat.network.gnutls_ca_file)
* core: evaluate left/right part of comparison after split on the comparison operator in ${if:xxx} (issue #1627)
* core: prevent switching to start of visited buffers when jumping to next (issue #1591, issue #1592)
* core: recreate buflist and fset bars on /reload when WeeChat is started without configuration files (issue #1618)
* buflist: fix comparison of hotlists in option buflist.look.sort (issue #1621)
* irc: split server command before evaluating it (issue #1643)
* xfer: make file transfer fail when option xfer.file.auto_rename is off and file already exists (issue #1633)
Tests::
* core: switch from Ubuntu 18.04 to 20.04 in CI
* trigger: add tests on main trigger functions
Build::
* core: remove build option CA_FILE
* core: set WeeChat home to empty string by default in CMake and autotools
[[v3.1]]
== Version 3.1 (2021-03-07)
@@ -698,7 +858,7 @@ Bug fixes::
* 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)
* 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 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)
@@ -1485,7 +1645,7 @@ New features::
* aspell: add completion "aspell_dicts" (list of aspell installed dictionaries)
* aspell: add info "aspell_dict" (dictionaries used on a 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 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)
@@ -1865,7 +2025,7 @@ Bug fixes::
* 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)
* 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 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)
+1 -1
View File
@@ -82,7 +82,7 @@ https://github.com/weechat/weechat/milestones[milestones] on GitHub.
Pull requests on GitHub are welcome for minor new features.
For major new features, it's better to discuss about it in IRC
(server: _chat.freenode.net_, channel _#weechat_).
(server: _irc.libera.chat_, channel _#weechat_).
Before submitting any pull request, be sure you have read the
https://weechat.org/files/doc/devel/weechat_dev.en.html#coding_rules[coding rules]
+8 -75
View File
@@ -26,9 +26,9 @@ Homepage: https://weechat.org/
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/files/doc/stable/weechat_user.en.html#plugins[plugins]. All plugins (including https://weechat.org/files/doc/stable/weechat_user.en.html#irc_plugin[IRC]) are independent and can be unloaded.
* *Multi-platform*: WeeChat runs on GNU/Linux, *BSD, GNU/Hurd, Haiku, macOS and Windows (Bash/Ubuntu and Cygwin).
* *Multi-protocols*: WeeChat is designed to support multiple protocols by plugins, like IRC.
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://tools.ietf.org/html/rfc1459[1459], https://tools.ietf.org/html/rfc2810[2810], https://tools.ietf.org/html/rfc2811[2811], https://tools.ietf.org/html/rfc2812[2812] and https://tools.ietf.org/html/rfc2813[2813].
* *Small, fast and very light*: the core is and should stay as light and fast as possible.
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/stable/language/perl/[Perl], https://weechat.org/scripts/stable/language/python/[Python], https://weechat.org/scripts/stable/language/ruby[Ruby], https://weechat.org/scripts/stable/language/lua/[Lua], https://weechat.org/scripts/stable/language/tcl/[Tcl], https://weechat.org/scripts/stable/language/guile/[Scheme], https://weechat.org/scripts/stable/language/javascript/[JavaScript] and https://weechat.org/scripts/stable/language/php/[PHP]).
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://tools.ietf.org/html/rfc1459[1459], https://tools.ietf.org/html/rfc2810[2810], https://tools.ietf.org/html/rfc2811[2811], https://tools.ietf.org/html/rfc2812[2812], and https://tools.ietf.org/html/rfc2813[2813].
* *Small, fast, and very light*: the core is and should stay as light and fast as possible.
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/language/perl/[Perl], https://weechat.org/scripts/language/python/[Python], https://weechat.org/scripts/language/ruby[Ruby], https://weechat.org/scripts/language/lua/[Lua], https://weechat.org/scripts/language/tcl/[Tcl], https://weechat.org/scripts/language/guile/[Scheme], https://weechat.org/scripts/language/javascript/[JavaScript] and https://weechat.org/scripts/language/php/[PHP]).
* *Fully documented*: there is comprehensive https://weechat.org/doc/[documentation], which is https://weechat.org/files/doc/stable/weechat_dev.en.html#translations[translated] into several languages.
* *Developed from scratch*: WeeChat was built from scratch and is not based on any other client.
* *Free software*: WeeChat is released under https://www.gnu.org/licenses/gpl-3.0.html[GPLv3].
@@ -37,80 +37,13 @@ pass:[<p align="center">] image:https://weechat.org/media/images/screenshots/wee
On WeeChat's website you can find https://weechat.org/about/screenshots/[more screenshots].
== Install
== Installation
=== Dependencies
WeeChat can be installed using your favorite package manager (recommended)
or by compiling it yourself.
Following packages are *required*:
* CMake
* libncurses
* libcurl
* zlib
* libgcrypt
Following packages are optional:
* for i18n: gettext
* for SSL: gnutls, ca-certificates
* for spell checking: aspell or enchant
* for scripting: python, perl, ruby, lua, tcl, guile, libv8 (javascript), php
* for building doc and man page: asciidoctor
* for building tests: C++ compiler, CppUTest
For a complete list of dependencies and versions recommended, please look at
https://weechat.org/files/doc/devel/weechat_user.en.html#dependencies[user's guide].
=== Compile
WeeChat can be built with https://cmake.org/[CMake] (recommended) or autotools.
[NOTE]
Only CMake is officially supported to build WeeChat. You should only use
autotools if you are not able to use CMake. +
Building with autotools requires more dependencies and is slower than with CMake.
* Installation in system directories (requires _root_ privileges):
----
$ mkdir build
$ cd build
$ cmake ..
$ make
$ sudo make install
----
* Installation in custom directory (for example your home):
----
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/directory
$ make
$ make install
----
For more information or installation with autotools, please look at
https://weechat.org/files/doc/devel/weechat_user.en.html#compile_with_autotools[user's guide].
=== Run tests
Following packages are *required* to compile tests:
* libcpputest-dev
* C++ compiler
Tests must be enabled when compiling WeeChat:
----
$ cmake .. -DENABLE_TESTS=ON
----
They can be launched after compilation from the build directory:
----
$ ctest -V
----
For detailed instructions, please check the
https://weechat.org/files/doc/stable/weechat_user.en.html#install[WeeChat user's guide].
== Copyright
+333 -15
View File
@@ -17,6 +17,324 @@ https://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog]
(file _ChangeLog.adoc_ in sources).
[[v3.4]]
== Version 3.4 (2021-12-18)
[[v3.4_default_triggers]]
=== Default triggers
The existing triggers "cmd_pass" and "cmd_pass_register" have been updated to
hide key and password in command `/msg nickserv setpass <nick> <key> <password>`
and support the option `-server <name>`.
You can restore the default triggers with the following command:
----
/trigger restore cmd_pass cmd_pass_register
----
[[v3.4_hdata_search]]
=== New parameters in function hdata_search
New parameters have been added in function
link:https://weechat.org/doc/plugin#_hdata_search[hdata_search], used for the
evaluation of expression.
New parameters are the same as function
link:https://weechat.org/doc/plugin#_string_eval_expression[string_eval_expression]:
* pointers: hashtable with pointers (pointers)
* extra_vars: hashtable with extra variables (strings)
* options: hashtable with options (strings).
The following scripts are updated consequently to be compatible with all
WeeChat versions:
* https://weechat.org/scripts/source/autoauth.py/[autoauth.py] 1.3
* https://weechat.org/scripts/source/buffer_open.py/[buffer_open.py] 0.3
* https://weechat.org/scripts/source/collapse_channel.py/[collapse_channel.py] 0.9
* https://weechat.org/scripts/source/grep_filter.py/[grep_filter.py] 0.11
* https://weechat.org/scripts/source/samechannel.rb/[samechannel.rb] 0.2
* https://weechat.org/scripts/source/soju.py/[soju.py] 0.1.4
* https://weechat.org/scripts/source/stalker.pl/[stalker.pl] 1.6.3
[[v3.4_hdata_arrays]]
=== Static array support in hdata
Support of static array in hdata has been added.
For pointers to arrays, a prefix `*,` must be added in parameter `array_size`
of API function link:https://weechat.org/doc/plugin#_hdata_new_var[hdata_new_var].
[[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]]
== Version 3.2 (2021-06-13)
[[v3.2_xdg_directories]]
=== XDG directories
Support of XDG directories has been added. For compatibility, if the directory
_~/.weechat_ exists, WeeChat will still use it for all files.
If you want to switch to XDG directories, you must create and move manually
all files in the appropriate directories. +
See https://specs.weechat.org/specs/001285-follow-xdg-base-dir-spec.html#weechat-home[WeeChat XDG specification]
for more information.
Some options have new default value: `%h` is replaced by `${weechat_xxx_dir}`. +
If you didn't change the value, it is recommended to set the new default value,
by doing `/unset <option>` on each option:
[width="100%",cols="2m,2m,5m",options="header"]
|===
| Option | Old default value | New default value
| fifo.file.path | %h/weechat_fifo | ${weechat_runtime_dir}/weechat_fifo_${info:pid}
| logger.file.path | %h/logs/ | ${weechat_data_dir}/logs
| relay.network.ssl_cert_key | %h/ssl/relay.pem | ${weechat_config_dir}/ssl/relay.pem
| script.scripts.path | %h/script | ${weechat_cache_dir}/script
| weechat.plugin.path | %h/plugins | ${weechat_data_dir}/plugins
| xfer.file.download_path | %h/xfer | ${weechat_data_dir}/xfer
|===
The following scripts are updated to take care of XDG directories, be sure
they are all up-to-date, otherwise files may be saved in wrong directories or
the script may not find some files:
* https://weechat.org/scripts/source/autoconf.py/[autoconf.py] 0.4
* https://weechat.org/scripts/source/axolotl.py/[axolotl.py] 0.1.1
* https://weechat.org/scripts/source/beinc.py/[beinc.py] 4.2
* https://weechat.org/scripts/source/buddylist.pl/[buddylist.pl] 2.1
* https://weechat.org/scripts/source/bufsave.py/[bufsave.py] 0.5
* https://weechat.org/scripts/source/chanop.py/[chanop.py] 0.3.4
* https://weechat.org/scripts/source/chanstat.py/[chanstat.py] 0.2
* https://weechat.org/scripts/source/colorize_lines.pl/[colorize_lines.pl] 4.0
* https://weechat.org/scripts/source/confversion.py/[confversion.py] 0.4
* https://weechat.org/scripts/source/country.py/[country.py] 0.6.2
* https://weechat.org/scripts/source/cron.py/[cron.py] 0.5
* https://weechat.org/scripts/source/crypt.py/[crypt.py] 1.4.5
* https://weechat.org/scripts/source/grep.py/[grep.py] 0.8.5
* https://weechat.org/scripts/source/growl.py/[growl.py] 1.0.7
* https://weechat.org/scripts/source/histman.py/[histman.py] 0.8.2
* https://weechat.org/scripts/source/hl2file.py/[hl2file.py] 0.3
* https://weechat.org/scripts/source/hotlist2extern.pl/[hotlist2extern.pl] 1.0
* https://weechat.org/scripts/source/jnotify.pl/[jnotify.pl] 1.2
* https://weechat.org/scripts/source/latex_unicode.py/[latex_unicode.py] 1.2
* https://weechat.org/scripts/source/luanma.pl/[luanma.pl] 0.3
* https://weechat.org/scripts/source/otr.py/[otr.py] 1.9.3
* https://weechat.org/scripts/source/pop3_mail.pl/[pop3_mail.pl] 0.4
* https://weechat.org/scripts/source/purgelogs.py/[purgelogs.py] 0.5
* https://weechat.org/scripts/source/query_blocker.pl/[query_blocker.pl] 1.3
* https://weechat.org/scripts/source/queryman.py/[queryman.py] 0.6
* https://weechat.org/scripts/source/queue.py/[queue.py] 0.4.3
* https://weechat.org/scripts/source/rslap.pl/[rslap.pl] 1.4
* https://weechat.org/scripts/source/rssagg.pl/[rssagg.pl] 1.3
* https://weechat.org/scripts/source/slack.py/[slack.py] 2.8.0
* https://weechat.org/scripts/source/stalker.pl/[stalker.pl] 1.6.2
* https://weechat.org/scripts/source/substitution.rb/[substitution.rb] 0.0.2
* https://weechat.org/scripts/source/triggerreply.py/[triggerreply.py] 0.4.3
* https://weechat.org/scripts/source/update_notifier.py/[update_notifier.py] 0.6
* https://weechat.org/scripts/source/url_olde.py/[url_olde.py] 0.8
* https://weechat.org/scripts/source/urlserver.py/[urlserver.py] 2.6
* https://weechat.org/scripts/source/weetext.py/[weetext.py] 0.1.3
* https://weechat.org/scripts/source/zncplayback.py/[zncplayback.py] 0.2.1
To check if XDG directories are used, you can run command `/debug dirs`, which
should show different directories for config/data/cache/runtime, like this:
----
Directories:
home:
config: /home/user/.config/weechat
data: /home/user/.local/share/weechat
cache: /home/user/.cache/weechat
runtime: /run/user/1000/weechat
lib: /usr/lib/x86_64-linux-gnu/weechat
lib (extra): -
share: /usr/share/weechat
locale: /usr/share/locale
----
With the legacy _~/.weechat_ directory, the output would be:
----
Directories:
home:
config: /home/user/.weechat
data: /home/user/.weechat
cache: /home/user/.weechat
runtime: /home/user/.weechat
lib: /usr/lib/x86_64-linux-gnu/weechat
lib (extra): -
share: /usr/share/weechat
locale: /usr/share/locale
----
[[v3.2_gnutls_ca]]
=== GnuTLS certificate authorities
A new option has been added to load system's default trusted certificate
authorities on startup: _weechat.network.gnutls_ca_system_ (boolean, enabled
by default).
The option _weechat.network.gnutls_ca_file_ has been renamed to
_weechat.network.gnutls_ca_user_ and is now used for extra certificates
(not the system ones). +
This option now supports multiple files, separated by colons.
If you have set a user CA file in option _weechat.network.gnutls_ca_file_,
then you must set this same value in the new option
_weechat.network.gnutls_ca_user_.
When one of these options are changed, all certificates are purged and reloaded
from files.
[[v3.2_split_commands_before_eval]]
=== Split of commands before evaluation
The split of commands is now performed before the evaluation of string, in the
following cases:
* IRC server option _irc.server_default.command_ or _irc.server.xxx.command_
* startup option with command line parameter `-r` / `--run-command`
* options _weechat.startup.command_before_plugins_ and _weechat.startup.command_after_plugins_.
If ever you used here multiple commands that are found by evaluation, then
you must use multiple commands directly.
For example if you did this:
----
/secure set commands "/command1 secret1;/command2 secret2"
/set irc.server.libera.command "${sec.data.commands}"
----
This will now execute a single command: `/command1` with two parameters:
`secret1;/command2` and `secret2`, which is not what you expect.
So you must now do this instead:
----
/secure set command1 "/command1 secret1"
/secure set command2 "/command2 secret2"
/set irc.server.libera.command "${sec.data.command1};${sec.data.command2}"
----
You could also do this, but be careful, there are two evaluations of strings
(the secured data itself is evaluated as well):
----
/secure set commands "/command1 secret1;/command2 secret2"
/set irc.server.libera.command "/eval -s ${sec.data.commands}"
----
[[v3.1]]
== Version 3.1 (2021-03-07)
@@ -40,7 +358,7 @@ the clear password. +
For example with password-store (command `pass`):
----
/set sec.crypt.passphrase_command "pass show weechat/passphrase"
/set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase"
----
[[v3.1_window_splitv]]
@@ -135,12 +453,12 @@ If you want to use a command, you must add explicitly the leading `/`:
----
[[v3.0_trigger_beep]]
=== Default "beep" trigger
=== Default trigger "beep"
The command of "beep" trigger is now executed only if the message does NOT
contain the tag "notify_none" (in addition to existing conditions).
You can restore the default "beep" trigger with the following command:
You can restore the default trigger "beep" with the following command:
----
/trigger restore beep
@@ -202,7 +520,7 @@ using this modifier and the "modifier_data" argument must be updated.
The old format contained plugin name + ";" + buffer name + ";" + tags:
----
irc;freenode.#weechat;tag1,tag2,tag3
irc;libera.#weechat;tag1,tag2,tag3
----
The new format contains buffer pointer + ";" + tags:
@@ -214,7 +532,7 @@ The new format contains buffer pointer + ";" + tags:
The following scripts are updated consequently to be compatible with all
WeeChat versions:
* https://weechat.org/scripts/source/colorize_lines.pl.html/[colorize_lines.pl] 3.9
* https://weechat.org/scripts/source/colorize_lines.pl/[colorize_lines.pl] 3.9
* https://weechat.org/scripts/source/colorize_nicks.py/[colorize_nicks.py] 27
* https://weechat.org/scripts/source/colorizer.rb/[colorizer.rb] 0.2
* https://weechat.org/scripts/source/curiousignore.pl/[curiousignore.pl] 0.4
@@ -278,8 +596,8 @@ For example you can do that:
----
/secure passphrase my_secret_passphrase
/secure set freenode my_password
/set irc.server.freenode.sasl_password "${sec.data.freenode}"
/secure set libera my_password
/set irc.server.libera.sasl_password "${sec.data.libera}"
----
This will be displayed like that in WeeChat, using the new regex value of
@@ -287,8 +605,8 @@ _cmd_pass_ trigger:
----
/secure passphrase ********************
/secure set freenode ***********
/set irc.server.freenode.sasl_password "${sec.data.freenode}"
/secure set libera ***********
/set irc.server.libera.sasl_password "${sec.data.libera}"
----
If you want to use the new trigger regex after upgrade, you can do:
@@ -334,7 +652,7 @@ A _handshake_ command has been added in weechat relay protocol. +
The client should send this command before the _init_ to negotiate the way to
authenticate with the relay server.
See the link:weechat_relay_protocol.en.html#command_handshake[handshake command]
See the link:https://weechat.org/doc/relay#command_handshake[handshake command]
in Relay protocol doc for more information.
==== Server "nonce"
@@ -352,7 +670,7 @@ So the hash is computed on: (`server nonce` + `client nonce` + `password`).
This salt is now mandatory even for algorithms `SHA256` and `SHA512`; this is
a breaking change in protocol, needed for security reasons.
See the link:weechat_relay_protocol.en.html#command_init[init command]
See the link:https://weechat.org/doc/relay#command_init[init command]
in Relay protocol doc for more information.
[[v2.8]]
@@ -678,7 +996,7 @@ Or set explicitly the value:
The existing triggers "cmd_pass" and "msg_auth" have been updated to hide
password in command `/msg nickserv set password` and support the option
`-server xxx`.
`-server <name>`.
You can restore the default triggers with the following command:
@@ -1100,7 +1418,7 @@ Globally (default value for all servers):
For a specific server:
----
/set irc.server.freenode.nicks_alternate off
/set irc.server.libera.nicks_alternate off
----
[[v1.3]]
@@ -1339,7 +1657,7 @@ The command `/input jump_last_buffer` still works for compatibility reasons,
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].
You can add it with following command:
You can add it with the following command:
----
/key missing
@@ -2079,7 +2397,7 @@ All users of version 0.3.1 should upgrade to this version.
=== Aliases
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
+3 -3
View File
@@ -34,7 +34,7 @@ err ()
echo "-------"
echo "Error :"
echo "---8<-----------------------------------"
cat $AUTOGEN_LOG
cat "$AUTOGEN_LOG"
echo "----------------------------------->8---"
exit 1
}
@@ -42,7 +42,7 @@ err ()
run ()
{
printf "Running \"%s\"..." "$@"
if eval "$@" >$AUTOGEN_LOG 2>&1 ; then
if eval "$@" >"$AUTOGEN_LOG" 2>&1 ; then
echo " OK"
else
echo " FAILED"
@@ -66,4 +66,4 @@ run "rm -rf intl"
run "autoreconf -vi"
# ending
rm -f $AUTOGEN_LOG
rm -f "$AUTOGEN_LOG"
+5 -5
View File
@@ -34,12 +34,12 @@ set(GCRYPT_CFLAGS)
if(LIBGCRYPT_CONFIG_EXECUTABLE)
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS)
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS)
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --libs RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
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")
set(GCRYPT_CFLAGS " ")
endif()
if(NOT DEFINED ${GCRYPT_CFLAGS})
set(GCRYPT_CFLAGS " ")
endif()
endif()
+1 -1
View File
@@ -35,5 +35,5 @@ endif()
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
pkg_search_module(LUA lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
pkg_search_module(LUA lua5.4 lua-5.4 lua54 lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
endif()
+10 -6
View File
@@ -24,26 +24,30 @@ endif()
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
pkg_search_module(PHP php7)
pkg_search_module(PHP php8 php7)
endif()
if(NOT PHP_FOUND)
find_program(PHP_CONFIG_EXECUTABLE NAMES
php-config8.1 php-config81
php-config8.0 php-config80
php-config8
php-config7.4 php-config74
php-config7.3 php-config73
php-config7.2 php-config72
php-config7.1 php-config71
php-config7.0 php-config70
php-config php-config7
php-config7
php-config
)
if (PHP_CONFIG_EXECUTABLE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --prefix OUTPUT_VARIABLE PHP_LIB_PREFIX OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --includes OUTPUT_VARIABLE PHP_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE PHP_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --version OUTPUT_VARIABLE PHP_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
if(${PHP_VERSION} MATCHES "^7")
if(${PHP_VERSION} MATCHES "^[78]")
find_library(PHP_LIB
NAMES php7.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
)
if(PHP_LIB)
@@ -58,9 +62,9 @@ if(NOT PHP_FOUND)
endif()
if(NOT PHP_FOUND)
message(WARNING "Could not find libphp7. "
message(WARNING "Could not find libphp. "
"Ensure PHP >=7.0.0 development libraries are installed and compiled with `--enable-embed`. "
"Ensure `php-config` is in `PATH`. "
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp7."
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp."
)
endif()
+8 -46
View File
@@ -33,51 +33,13 @@ endif()
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
pkg_search_module(RUBY ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9)
endif()
if(RUBY_FOUND)
set(RUBY_LIB "")
mark_as_advanced(RUBY_LIB)
else()
find_program(RUBY_EXECUTABLE
NAMES ruby2.7.0 ruby270 ruby2.7 ruby2.6.0 ruby260 ruby2.6 ruby2.5.0 ruby250 ruby2.5 ruby2.4.0 ruby240 ruby2.4 ruby2.3.0 ruby230 ruby2.3 ruby23 ruby2.2.3 ruby223 ruby2.2.2 ruby222 ruby2.2.1 ruby221 ruby2.2.0 ruby220 ruby2.2 ruby22 ruby2.1.7 ruby217 ruby2.1.6 ruby216 ruby2.1.5 ruby215 ruby2.1.4 ruby214 ruby2.1.3 ruby213 ruby2.1.2 ruby212 ruby2.1.1 ruby211 ruby2.1.0 ruby210 ruby2.1 ruby21 ruby2.0 ruby20 ruby1.9.3 ruby193 ruby1.9.2 ruby192 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
)
if(RUBY_EXECUTABLE)
execute_process(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubyhdrdir'] || RbConfig::CONFIG['archdir']"
OUTPUT_VARIABLE RUBY_ARCH_DIR
)
execute_process(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['arch']"
OUTPUT_VARIABLE RUBY_ARCH
)
execute_process(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['libdir']"
OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
)
execute_process(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubylibdir']"
OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH
)
find_path(RUBY_INCLUDE_DIRS
NAMES ruby.h
PATHS ${RUBY_ARCH_DIR}
)
set(RUBY_INCLUDE_ARCH "${RUBY_INCLUDE_DIRS}/${RUBY_ARCH}")
find_library(RUBY_LIB
NAMES ruby-1.9.3 ruby1.9.3 ruby193 ruby-1.9.2 ruby1.9.2 ruby192 ruby-1.9.1 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby
PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH}
)
if(RUBY_LIB AND RUBY_INCLUDE_DIRS)
set(RUBY_FOUND TRUE)
endif()
set(RUBY_INCLUDE_DIRS "${RUBY_INCLUDE_DIRS};${RUBY_INCLUDE_ARCH}")
mark_as_advanced(
RUBY_INCLUDE_DIRS
RUBY_LIBRARY_DIRS
RUBY_LIB
)
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
# set specific search path for macOS
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:/usr/local/opt/ruby/lib/pkgconfig")
endif()
pkg_search_module(RUBY ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
if(RUBY_FOUND AND ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
# FIXME: weird hack: hardcoding the Ruby lib location on macOS
set(RUBY_LDFLAGS "${RUBY_LDFLAGS} -L/usr/local/opt/ruby/lib")
endif()
endif()
+1 -3
View File
@@ -28,9 +28,7 @@ list(REVERSE files)
foreach(file ${files})
message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
if(EXISTS "$ENV{DESTDIR}${file}")
exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
OUTPUT_VARIABLE rm_out
RETURN_VARIABLE rm_retval)
execute_process(COMMAND "@CMAKE_COMMAND@" -E remove "$ENV{DESTDIR}${file}" OUTPUT_VARIABLE rm_out RESULT_VARIABLE rm_retval)
if("${rm_retval}" GREATER 0)
message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
endif()
+1 -1
View File
@@ -5,6 +5,7 @@
#cmakedefine HAVE_BACKTRACE
#cmakedefine ICONV_2ARG_IS_CONST 1
#cmakedefine HAVE_MALLINFO
#cmakedefine HAVE_MALLINFO2
#cmakedefine HAVE_EAT_NEWLINE_GLITCH
#cmakedefine HAVE_ASPELL_VERSION_STRING
#cmakedefine HAVE_ENCHANT_GET_VERSION
@@ -17,5 +18,4 @@
#define WEECHAT_SHAREDIR "@WEECHAT_SHAREDIR@"
#define LOCALEDIR "@LOCALEDIR@"
#define WEECHAT_HOME "@WEECHAT_HOME@"
#define CA_FILE "@CA_FILE@"
#define _GNU_SOURCE 1
+58 -42
View File
@@ -64,7 +64,7 @@ darwin*)
esac
# 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_VERSION([0.18])
@@ -98,6 +98,7 @@ AC_MSG_RESULT($ac_cv_type_socklen_t)
AC_FUNC_SELECT_ARGTYPES
AC_TYPE_SIGNAL
AC_CHECK_FUNCS([mallinfo])
AC_CHECK_FUNCS([mallinfo2])
# Variables in config.h
@@ -129,12 +130,12 @@ AH_VERBATIM([PLUGIN_GUILE], [#undef PLUGIN_GUILE])
AH_VERBATIM([PLUGIN_JAVASCRIPT], [#undef PLUGIN_JAVASCRIPT])
AH_VERBATIM([PLUGIN_SPELL], [#undef PLUGIN_SPELL])
AH_VERBATIM([PLUGIN_TRIGGER], [#undef PLUGIN_TRIGGER])
AH_VERBATIM([PLUGIN_TYPING], [#undef PLUGIN_TYPING])
AH_VERBATIM([PLUGIN_XFER], [#undef PLUGIN_XFER])
AH_VERBATIM([TESTS], [#undef TESTS])
AH_VERBATIM([MAN], [#undef MAN])
AH_VERBATIM([DOC], [#undef DOC])
AH_VERBATIM([WEECHAT_HOME], [#define WEECHAT_HOME "~/.weechat"])
AH_VERBATIM([CA_FILE], [#define CA_FILE "/etc/ssl/certs/ca-certificates.crt"])
AH_VERBATIM([WEECHAT_HOME], [#define WEECHAT_HOME ""])
# Arguments for ./configure
@@ -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(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(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_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)
@@ -171,19 +173,10 @@ AC_ARG_ENABLE(tests, [ --enable-tests turn on build of tests (d
AC_ARG_ENABLE(man, [ --enable-man turn on build of man page (default=not built)],enable_man=$enableval,enable_man=no)
AC_ARG_ENABLE(doc, [ --enable-doc turn on build of documentation (default=not built)],enable_doc=$enableval,enable_doc=no)
AC_ARG_VAR(WEECHAT_HOME, [WeeChat home directory for config, logs, scripts.. (default is "~/.weechat")])
AC_ARG_VAR(CA_FILE, [File containing the certificate authorities (default is "/etc/ssl/certs/ca-certificates.crt"). This is the default value of option "weechat.network.gnutls_ca_file".])
AC_ARG_VAR(WEECHAT_HOME, [Force a single WeeChat home directory for config, logs, scripts, etc.])
if test "x$WEECHAT_HOME" = "x" ; then
WEECHAT_HOME="~/.weechat"
fi
AC_DEFINE_UNQUOTED(WEECHAT_HOME, "$WEECHAT_HOME")
if test "x$CA_FILE" = "x" ; then
CA_FILE="/etc/ssl/certs/ca-certificates.crt"
fi
AC_DEFINE_UNQUOTED(CA_FILE, "$CA_FILE")
not_asked=""
not_found=""
@@ -508,7 +501,7 @@ RUBY_VERSION=
if test "x$enable_ruby" = "xyes" ; then
RUBY_CFLAGS=""
RUBY_LFLAGS=""
for v in "2.7" "2.6" "2.5" "2.4" "2.3" "2.2" "2.1" "2.0" "1.9" "1.8" ; do
for v in "3.0" "2.7" "2.6" "2.5" "2.4" "2.3" "2.2" "2.1" "2.0" "1.9" "1.8" ; do
pkgconfig_ruby_found=`$PKGCONFIG --exists ruby-$v 2>/dev/null`
if test "x$?" = "x0" ; then
RUBY_VERSION=`$PKGCONFIG --modversion ruby-$v`
@@ -580,7 +573,7 @@ if test "x$enable_lua" = "xyes" ; then
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
AC_MSG_CHECKING(for Lua headers and libraries with pkg-config)
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`
if test "x$?" = "x0" ; then
LUA_VERSION=`$PKGCONFIG --modversion lua$l`
@@ -599,7 +592,7 @@ if test "x$enable_lua" = "xyes" ; then
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
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
AC_MSG_CHECKING(for Lua headers and libraries with lua-config)
echo
@@ -617,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
LUA_CFLAGS="$CFLAGS"
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")
if test "x$ac_found_lua_lib" = "xyes" ; then
LUA_VERSION=">=5.1.0"
@@ -840,6 +833,7 @@ if test "x$enable_php" = "xyes" ; then
PHP_CFLAGS=""
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
CFLAGS="$CFLAGS -I$php_inc"
@@ -852,7 +846,7 @@ if test "x$enable_php" = "xyes" ; then
if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then
AC_MSG_CHECKING(for PHP headers and libraries with pkg-config)
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`
if test "x$?" = "x0" ; then
pkgconfig_php_found=`$PKGCONFIG --atleast-version=7 php$l 2>/dev/null`
@@ -869,11 +863,12 @@ if test "x$enable_php" = "xyes" ; then
if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then
PHPCONFIG=""
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")
if test "x$PHPCONFIG" != "x" ; then
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_CFLAGS=`$PHPCONFIG --includes`
PHP_LFLAGS="-L$($PHPCONFIG --prefix)/lib/ $($PHPCONFIG --libs) -lphp$l"
@@ -890,23 +885,25 @@ if test "x$enable_php" = "xyes" ; then
if test "x$ac_found_php_header" = "xyes" ; then
PHP_CFLAGS="$CFLAGS"
fi
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do
AC_CHECK_LIB(php$l,php_execute_script,ac_found_php_lib="yes",ac_found_php_lib="no")
if test "x$ac_found_php_lib" = "xyes" ; then
PHP_VERSION=">=7.0.0"
for l in $PHP_VERSIONS "" ; do
for PHP_LIB_SUFFIX in "$l" "$(echo $l | cut -c1)" "" ; do
AC_CHECK_LIB(php$PHP_LIB_SUFFIX,php_execute_script,ac_found_php_lib="yes",ac_found_php_lib="no")
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"
LDFLAGS="$LDFLAGS -lphp7 -lm"
ac2_save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS -lphp$PHP_LIB_SUFFIX -lm"
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
LDFLAGS="$LDFLAGS -ldl"
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
LDFLAGS="$LDFLAGS -ldl"
fi
LDFLAGS="$ac2_save_LDFLAGS"
break 2
fi
LDFLAGS="$ac2_save_LDFLAGS"
break
fi
done
done
fi
@@ -1022,6 +1019,18 @@ else
not_asked="$not_asked trigger"
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 --------------------------------------
if test "x$enable_xfer" = "xyes" ; then
@@ -1254,7 +1263,7 @@ if test "x$enable_man" = "xyes" -o "x$enable_doc" = "xyes"; then
enable_man="no"
enable_doc="no"
fi
ASCIIDOCTOR_ARGS="-a experimental -a 'prewrap!' -a icons=font -a sectanchors -a source-highlighter=prettify"
ASCIIDOCTOR_ARGS="-a experimental -a reproducible -a 'prewrap!' -a 'webfonts!' -a icons=font -a sectanchors -a source-highlighter=pygments -a pygments-style=native"
AC_SUBST(ASCIIDOCTOR)
AC_SUBST(ASCIIDOCTOR_ARGS)
fi
@@ -1374,6 +1383,7 @@ AM_CONDITIONAL(PLUGIN_JAVASCRIPT, test "$enable_javascript" = "yes")
AM_CONDITIONAL(PLUGIN_PHP, test "$enable_php" = "yes")
AM_CONDITIONAL(PLUGIN_SPELL, test "$enable_spell" = "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(TESTS, test "$enable_tests" = "yes")
AM_CONDITIONAL(MAN, test "$enable_man" = "yes")
@@ -1382,15 +1392,16 @@ AM_CONDITIONAL(DOC, test "$enable_doc" = "yes")
AC_OUTPUT([Makefile
icons/Makefile
doc/Makefile
doc/cs/Makefile
doc/de/Makefile
doc/en/Makefile
doc/es/Makefile
doc/fr/Makefile
doc/it/Makefile
doc/de/Makefile
doc/pl/Makefile
doc/es/Makefile
doc/ru/Makefile
doc/ja/Makefile
doc/cs/Makefile
doc/pl/Makefile
doc/ru/Makefile
doc/sr/Makefile
src/Makefile
src/core/Makefile
src/plugins/Makefile
@@ -1414,6 +1425,7 @@ AC_OUTPUT([Makefile
src/plugins/php/Makefile
src/plugins/spell/Makefile
src/plugins/trigger/Makefile
src/plugins/typing/Makefile
src/plugins/xfer/Makefile
src/gui/Makefile
src/gui/curses/Makefile
@@ -1502,6 +1514,9 @@ fi
if test "x$enable_trigger" = "xyes"; then
listplugins="$listplugins trigger"
fi
if test "x$enable_typing" = "xyes"; then
listplugins="$listplugins typing"
fi
if test "x$enable_xfer" = "xyes"; then
listplugins="$listplugins xfer"
fi
@@ -1547,7 +1562,6 @@ echo " Compile with debug..... : $msg_debug"
echo " Compile tests.......... : $msg_tests"
echo " Man page............... : $msg_man"
echo " Documentation.......... : $msg_doc"
echo " Certificate authorities : ${CA_FILE}"
if test "x$not_asked" != "x" || test "x$not_found" != "x"; then
echo ""
@@ -1561,8 +1575,10 @@ if test "x$not_asked" != "x" || test "x$not_found" != "x"; then
fi
echo ""
echo "WeeChat home directory is ${WEECHAT_HOME}"
echo ""
if test "x$WEECHAT_HOME" != "x" ; then
echo "WeeChat home directory is forced by default to: ${WEECHAT_HOME}"
echo ""
fi
eval echo "WeeChat will be installed in $bindir"
echo ""
echo "configure complete, now type 'make' to build WeeChat $VERSION"
+2 -1
View File
@@ -20,7 +20,7 @@ Build-Depends:
libgcrypt20-dev,
libgnutls28-dev,
zlib1g-dev
Standards-Version: 4.4.0
Standards-Version: 4.6.0.1
Homepage: https://weechat.org/
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
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
- Relay (IRC proxy and WeeChat protocol)
- Trigger
- Typing
Package: weechat-devel-python
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
@@ -1,10 +0,0 @@
Document: weechat-tester-de
Title: WeeChat tester's guide (German)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (German version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
@@ -1,10 +0,0 @@
Document: weechat-tester-en
Title: WeeChat tester's guide (English)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (English version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
@@ -1,10 +0,0 @@
Document: weechat-tester-fr
Title: WeeChat tester's guide (French)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (French version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
@@ -1,10 +0,0 @@
Document: weechat-tester-it
Title: WeeChat tester's guide (Italian)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Italian version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
@@ -1,10 +0,0 @@
Document: weechat-tester-ja
Title: WeeChat tester's guide (Japanese)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Japanese version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
@@ -1,10 +0,0 @@
Document: weechat-tester-pl
Title: WeeChat tester's guide (Polish)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Polish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
+21
View File
@@ -1,3 +1,24 @@
weechat (3.3-1) unstable; urgency=medium
* New upstream release
* Remove patch merged upstream (which command detection in libgcrypt)
* Minor updates in debian/copyright
* Enable Typing plugin
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 20 Sep 2021 10:05:56 +0000
weechat (3.2.1-1) unstable; urgency=medium
* New upstream release
- fix CVE-2021-40516: possible denial of service (crash) via a crafted
WebSocket in relay plugin (Closes: #993803)
* Add a patch to fix a FTBFS (related to recent changes on which command
output) (Closes: #993333)
* Bump Standards-Version to 4.6.0.1
* Remove useless HomePage field in upstream/metadata
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 07 Sep 2021 20:25:39 +0000
weechat (3.0.1-1) unstable; urgency=medium
* New upstream release
+2 -1
View File
@@ -20,7 +20,7 @@ Build-Depends:
libgcrypt20-dev,
libgnutls28-dev,
zlib1g-dev
Standards-Version: 4.4.0
Standards-Version: 4.6.0.1
Homepage: https://weechat.org/
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
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
- Relay (IRC proxy and WeeChat protocol)
- Trigger
- Typing
Package: weechat-python
Architecture: any
+2 -2
View File
@@ -1,2 +1,2 @@
version=3
opts=pgpsigurlmangle=s/$/.asc/ https://weechat.org/files/src/weechat-(\d.*)\.tar\.bz2
version=4
opts=pgpsigurlmangle=s/$/.asc/ https://weechat.org/download/ /files/src/weechat-(\d.*)\.tar\.xz
+10
View File
@@ -0,0 +1,10 @@
Document: weechat-faq-es
Title: WeeChat FAQ (Spanish)
Author: Sébastien Helleu
Abstract: This document answers frequently asked questions
about the WeeChat IRC client (Spanish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
Files: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
@@ -1,10 +0,0 @@
Document: weechat-tester-de
Title: WeeChat tester's guide (German)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (German version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
@@ -1,10 +0,0 @@
Document: weechat-tester-en
Title: WeeChat tester's guide (English)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (English version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
@@ -1,10 +0,0 @@
Document: weechat-tester-fr
Title: WeeChat tester's guide (French)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (French version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
@@ -1,10 +0,0 @@
Document: weechat-tester-it
Title: WeeChat tester's guide (Italian)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Italian version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
@@ -1,10 +0,0 @@
Document: weechat-tester-ja
Title: WeeChat tester's guide (Japanese)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Japanese version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
@@ -1,10 +0,0 @@
Document: weechat-tester-pl
Title: WeeChat tester's guide (Polish)
Author: Sébastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (Polish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
Files: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
+1
View File
@@ -4,3 +4,4 @@ usr/lib/*/weechat/plugins/relay.so
usr/lib/*/weechat/plugins/script.so
usr/lib/*/weechat/plugins/spell.so
usr/lib/*/weechat/plugins/trigger.so
usr/lib/*/weechat/plugins/typing.so
+53 -1
View File
@@ -21,7 +21,58 @@
if(ENABLE_MAN OR ENABLE_DOC)
find_package(Asciidoctor)
if(ASCIIDOCTOR_FOUND)
set(ASCIIDOCTOR_ARGS -a experimental -a "prewrap!" -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=prettify)
# common asciidoctor arguments
set(ASCIIDOCTOR_ARGS -a experimental -a reproducible -a "prewrap!" -a "webfonts!" -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=pygments -a pygments-style=native)
# sed arguments used to replace links in ChangeLog and release notes
set(SED_LINKS_ARGS
-e "'s/issue #\\([0-9][0-9]*\\)/https:\\/\\/github.com\\/weechat\\/weechat\\/issues\\/\\1[issue #\\1^]/g'"
-e "'s/bug #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/bugs\\/?\\1[bug #\\1^]/g'"
-e "'s/task #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/task\\/?\\1[task #\\1^]/g'"
-e "'s/patch #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/patch\\/?\\1[patch #\\1^]/g'"
-e "'s/debian #\\([0-9][0-9]*\\)/http:\\/\\/bugs.debian.org\\/cgi-bin\\/bugreport.cgi?bug=\\1[debian bug #\\1^]/g'"
-e "'s/\\(CVE-[0-9][0-9]*-[0-9][0-9]*\\)/https:\\/\\/cve.mitre.org\\/cgi-bin\\/cvename.cgi?name=\\1[\\1^]/g'"
)
# ChangeLog
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
COMMAND sed ARGS ${SED_LINKS_ARGS} ${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc > ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}" -o ChangeLog.html ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html
${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building ChangeLog.html"
)
add_custom_target(changelog DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html)
# Release notes
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
COMMAND sed ARGS ${SED_LINKS_ARGS} ${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc > ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}" -o ReleaseNotes.html ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html
${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building ReleaseNotes.html"
)
add_custom_target(rn DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html)
# man/doc in all languages
add_subdirectory(cs)
add_subdirectory(de)
add_subdirectory(en)
@@ -31,6 +82,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
add_subdirectory(ja)
add_subdirectory(pl)
add_subdirectory(ru)
add_subdirectory(sr)
else()
message(SEND_ERROR "Asciidoctor not found")
endif()
+1 -1
View File
@@ -18,7 +18,7 @@
# 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 \
docinfo.html \
+4 -4
View File
@@ -16,11 +16,11 @@
(works only with the command *weechat-headless*, not compatible with option
"--daemon").
// TRANSLATION MISSING
*-d*, *--dir* _<path>_::
Nastav cestu jako dovmský adresář pro WeeChat (použitou pro konfigurační
soubory, logy, uživatelské pluginy a skripty), výchozí hodnota je
"~/.weechat" (poznámka: složka bude vytvořena pokud nebude nalezena
Weechatem)
Force a single directory for all WeeChat files (directory is created if not found).
Four directories can be given, separated by colons (in this order: config,
data, cache, runtime).
Pokud tato volba není zadána, použije se promněná prostředí WEECHAT_HOME
(pokud není prázdná)
+29 -26
View File
@@ -8,7 +8,7 @@ S irc pluginem se můžete doččasně připojit na server s URL jako:
K připojení na IRC kanál Weechatu pro podporu s přezdívkou "mynick":
irc://mynick@chat.freenode.net/#weechat
irc://mynick@irc.libera.chat/#weechat
IPv6 adresa může být uzavřena do hranatých závorek k přidání portu, například:
@@ -16,79 +16,82 @@ IPv6 adresa může být uzavřena do hranatých závorek k přidání portu, nap
// end::plugin_options[]
// tag::files[]
$HOME/.weechat/weechat.conf::
$HOME/.config/weechat/weechat.conf::
hlavní konfigurační soubor WeeChatu
$HOME/.weechat/plugins.conf::
$HOME/.config/weechat/plugins.conf::
soubor konfigurace pluginů
$HOME/.weechat/sec.conf::
$HOME/.config/weechat/sec.conf::
konfigurační soubor s chráněnými daty
$HOME/.weechat/alias.conf::
$HOME/.config/weechat/alias.conf::
configurační soubor pro _alias_ plugin
$HOME/.weechat/buflist.conf::
$HOME/.config/weechat/buflist.conf::
konfigurační soubor pro _buflist_ plugin
$HOME/.weechat/charset.conf::
$HOME/.config/weechat/charset.conf::
konfigurační soubor pro _charset_ plugin
$HOME/.weechat/exec.conf::
$HOME/.config/weechat/exec.conf::
konfigurační soubor pro _exec_ plugin
$HOME/.weechat/fifo.conf::
$HOME/.config/weechat/fifo.conf::
konfigurační soubor pro _fifo_ plugin
$HOME/.weechat/fset.conf::
$HOME/.config/weechat/fset.conf::
konfigurační soubor pro _fset_ plugin
$HOME/.weechat/guile.conf::
$HOME/.config/weechat/guile.conf::
konfigurační soubor pro _guile_ plugin
$HOME/.weechat/irc.conf::
$HOME/.config/weechat/irc.conf::
konfigurační soubor pro _irc_ plugin
$HOME/.weechat/javascript.conf::
$HOME/.config/weechat/javascript.conf::
konfigurační soubor pro _javascript_ plugin
$HOME/.weechat/logger.conf::
$HOME/.config/weechat/logger.conf::
konfigurační soubor pro _logger_ plugin
$HOME/.weechat/lua.conf::
$HOME/.config/weechat/lua.conf::
konfigurační soubor pro _lua_ plugin
$HOME/.weechat/perl.conf::
$HOME/.config/weechat/perl.conf::
konfigurační soubor pro _perl_ plugin
$HOME/.weechat/php.conf::
$HOME/.config/weechat/php.conf::
konfigurační soubor pro _php_ plugin
$HOME/.weechat/python.conf::
$HOME/.config/weechat/python.conf::
konfigurační soubor pro _python_ plugin
$HOME/.weechat/relay.conf::
$HOME/.config/weechat/relay.conf::
konfigurační soubor pro _relay_ plugin
$HOME/.weechat/ruby.conf::
$HOME/.config/weechat/ruby.conf::
konfigurační soubor pro _ruby_ plugin
$HOME/.weechat/script.conf::
$HOME/.config/weechat/script.conf::
konfigurační soubor pro _script_ plugin
$HOME/.weechat/spell.conf::
$HOME/.config/weechat/spell.conf::
konfigurační soubor pro _spell_ plugin
$HOME/.weechat/tcl.conf::
$HOME/.config/weechat/tcl.conf::
konfigurační soubor pro _tcl_ plugin
$HOME/.weechat/trigger.conf::
$HOME/.config/weechat/trigger.conf::
konfigurační soubor pro _trigger_ plugin
$HOME/.weechat/xfer.conf::
$HOME/.config/weechat/typing.conf::
konfigurační soubor pro _typing_ plugin
$HOME/.config/weechat/xfer.conf::
konfigurační soubor pro _xfer_ plugin
$HOME/.weechat/weechat.log::
$HOME/.local/share/weechat/weechat.log::
soubor záznamů WeeChatu
// end::files[]
+21 -28
View File
@@ -113,13 +113,13 @@ Použijte příkaz `/plugin` k zobrazení nahraných pluginů, pravděpodobně u
Můžete přidat irc server příkazem `/server`, například:
----
/server add freenode chat.freenode.net
/server add libera irc.libera.chat/6697 -ssl
----
// TRANSLATION MISSING
In this command, `freenode` is the internal server name used by WeeChat:
you'll be able to connect with `/connect freenode` and the server options
are _irc.server.freenode.xxx_.
In this command, `libera` is the internal server name used by WeeChat:
you'll be able to connect with `/connect libera` and the server options
are _irc.server.libera.xxx_.
Jako obvykle je poskytována nápověda pokud se ztratíte:
@@ -138,45 +138,38 @@ Pro každou serverovou volbu WeeChat použije její hodnotu pokud je definována
(není "prázdná"). Jinak WeeChat použije výchozí hodnotu ("irc.server_default.xxx).
Například, je zde výchozí přezdívka (založena na vašem un*x loginu), můžete
ji přepsat pro freenode s následujícím příkazem:
ji přepsat pro libera s následujícím příkazem:
----
/set irc.server.freenode.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
/set irc.server.libera.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
----
Nastavení username a realname:
----
/set irc.server.freenode.username "Mé uživatelské jméno"
/set irc.server.freenode.realname "Mé skutečné jméno"
/set irc.server.libera.username "Mé uživatelské jméno"
/set irc.server.libera.realname "Mé skutečné jméno"
----
K zapnutí automatického připojení při spuštění:
----
/set irc.server.freenode.autoconnect on
----
K připojení s SSL:
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/set irc.server.libera.autoconnect on
----
Pokud je na serveru podporován SASL, můžete jej použít pro autentizaci (mužete
být identifikován před připojením kanálů):
----
/set irc.server.freenode.sasl_username "mynick"
/set irc.server.freenode.sasl_password "xxxxxxx"
/set irc.server.libera.sasl_username "mynick"
/set irc.server.libera.sasl_password "xxxxxxx"
----
K spuštění příkazů po připojení k serveru, například k autentizaci s nickserv
(pouze pokud nepoužíváte autentizaci přes SASL):
----
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
/set irc.server.libera.command "/msg nickserv identify xxxxxxx"
----
[NOTE]
@@ -194,24 +187,24 @@ First setup a passphrase:
----
// TRANSLATION MISSING
Then add a secured data with your freenode password:
Then add a secured data with your libera password:
----
/secure set freenode_password xxxxxxx
/secure set libera_password xxxxxxx
----
// TRANSLATION MISSING
Then you can use `+${sec.data.freenode_password}+` instead of your password in
Then you can use `+${sec.data.libera_password}+` instead of your password in
IRC options mentioned above, for example:
----
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----
K automatickému připojení některých kanálů při připojování k serveru:
----
/set irc.server.freenode.autojoin "#channel1,#channel2"
/set irc.server.libera.autojoin "#channel1,#channel2"
----
// TRANSLATION MISSING
@@ -224,25 +217,25 @@ K smazání hodnoty serverové volby a k použití výchozí hodnoty místo ní,
například k požití výchozích přezdívek (irc.server_default.nicks):
----
/unset irc.server.freenode.nicks
/unset irc.server.libera.nicks
----
Ostatní volby: můžete nastavit ostatní volby s následujícím příkazem ("xxx" je
název volby):
----
/set irc.server.freenode.xxx value
/set irc.server.libera.xxx value
----
[[connect_to_irc_server]]
== Připojení k IRC serveru
----
/connect freenode
/connect libera
----
// TRANSLATION MISSING
With this command, WeeChat connects to the freenode server and auto-joins the
With this command, WeeChat connects to the libera server and auto-joins the
channels configured in the "autojoin" server option.
// TRANSLATION MISSING
-13
View File
@@ -107,17 +107,4 @@ if(ENABLE_DOC)
add_custom_target(doc-quickstart-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# tester's guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_tester.de.html"
)
add_custom_target(doc-tester-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
endif()
+1 -7
View File
@@ -28,7 +28,6 @@ EXTRA_DIST = CMakeLists.txt \
weechat_scripting.de.adoc \
weechat_faq.de.adoc \
weechat_quickstart.de.adoc \
weechat_tester.de.adoc \
includes/autogen_api_completions.de.adoc \
includes/autogen_api_hdata.de.adoc \
includes/autogen_api_infolists.de.adoc \
@@ -53,8 +52,7 @@ if DOC
doc_targets = weechat_user.de.html \
weechat_scripting.de.html \
weechat_faq.de.html \
weechat_quickstart.de.html \
weechat_tester.de.html
weechat_quickstart.de.html
doc_install = install-doc
doc_uninstall = uninstall-doc
endif
@@ -82,10 +80,6 @@ weechat_faq.de.html: weechat_faq.de.adoc $(abs_top_srcdir)/doc/docinfo.html
weechat_quickstart.de.html: weechat_quickstart.de.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.de.html $(abs_top_srcdir)/doc/de/weechat_quickstart.de.adoc
# tester's guide
weechat_tester.de.html: weechat_tester.de.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.de.html $(abs_top_srcdir)/doc/de/weechat_tester.de.adoc
# install man/docs
install-data-hook: $(man_install) $(doc_install)
+11 -11
View File
@@ -18,23 +18,23 @@
| guile | guile_script | Liste der Skripten
| irc | irc_channel | aktueller IRC-Channel
| irc | irc_channel | aktueller IRC-Kanal
| irc | irc_channel_nicks_hosts | Liste der Nicks und Hostnamen des aktuellen Channels
| irc | irc_channel_nicks_hosts | Liste der Nicks und Hostnamen des aktuellen Kanals
| irc | irc_channel_topic | Thema des aktuellen IRC-Channels
| irc | irc_channel_topic | Thema des aktuellen IRC-Kanals
| irc | irc_channels | Channels auf allen IRC Servern
| irc | irc_channels | Kanäle auf allen IRC Servern
| irc | irc_ignores_numbers | Anzahl für festgelegte Ignorierungen
| irc | irc_modelist_masks | Modelist Maske für aktuellen IRC Channel; benötigtes Argument: modelist mode
| irc | irc_modelist_masks | Modelist Maske für aktuellen IRC Kanal; benötigtes Argument: modelist mode
| irc | irc_modelist_numbers | Modelist Nummern für aktuellen IRC Channel; benötigtes Argument: modelist mode
| irc | irc_modelist_numbers | Modelist Nummern für aktuellen IRC Kanal; benötigtes Argument: modelist mode
| irc | irc_msg_kick | Standardmitteilung wenn man jemanden aus einem Channel wirft
| irc | irc_msg_kick | Standardmitteilung wenn man jemanden aus einem Kanal wirftchannel
| irc | irc_msg_part | Standardmitteilung beim Verlassen (/part) eines IRC-Channels
| irc | irc_msg_part | Standardmitteilung beim Verlassen (/part) eines IRC-Kanals
| irc | irc_notify_nicks | Nicks für die eine Benachrichtigung existiert
@@ -44,17 +44,17 @@
| irc | irc_server | aktueller IRC-Server
| irc | irc_server_channels | Channels des derzeitigen IRC-Server
| irc | irc_server_channels | Kanäle des derzeitigen IRC-Server
| irc | irc_server_nick | Nick beim derzeitigen IRC-Server
| irc | irc_server_nicks | Nicks für alle Channels auf dem aktuellen IRC-Server
| irc | irc_server_nicks | Nicks für alle Kanäle auf dem aktuellen IRC-Server
| irc | irc_server_privates | Privat auf aktuellem IRC Server
| irc | irc_servers | IRC-Server (interne Namen)
| irc | nick | Liste der Nicks im aktuellen Channel
| irc | nick | Liste der Nicks im aktuellen Kanal
| javascript | javascript_script | Liste der Skripten
+14 -2
View File
@@ -53,7 +53,7 @@ _next_script_   (pointer, hdata: "guile_script") +
| irc
| [[hdata_irc_channel]]<<hdata_irc_channel,irc_channel>>
| IRC-Channel
| IRC-Kanal
| -
| _type_   (integer) +
_name_   (string) +
@@ -79,6 +79,8 @@ _last_nick_speaking_time_   (pointer, hdata: "irc_channel_speaking") +
_modelists_   (pointer, hdata: "irc_modelist") +
_last_modelist_   (pointer, hdata: "irc_modelist") +
_join_smart_filtered_   (hashtable) +
_typing_state_   (integer) +
_typing_status_sent_   (time) +
_buffer_   (pointer, hdata: "buffer") +
_buffer_as_string_   (string) +
_prev_channel_   (pointer, hdata: "irc_channel") +
@@ -87,7 +89,7 @@ _next_channel_   (pointer, hdata: "irc_channel") +
| irc
| [[hdata_irc_channel_speaking]]<<hdata_irc_channel_speaking,irc_channel_speaking>>
| IRC channel_speaking
| irc channel_speaking
| -
| _nick_   (string) +
_time_last_message_   (time) +
@@ -233,6 +235,12 @@ _hook_connect_   (pointer, hdata: "hook") +
_hook_fd_   (pointer, hdata: "hook") +
_hook_timer_connection_   (pointer, hdata: "hook") +
_hook_timer_sasl_   (pointer, hdata: "hook") +
_sasl_scram_client_first_   (string) +
_sasl_scram_salted_pwd_   (other) +
_sasl_scram_salted_pwd_size_   (integer) +
_sasl_scram_auth_message_   (string) +
_sasl_temp_username_   (string) +
_sasl_temp_password_   (string) +
_is_connected_   (integer) +
_ssl_connected_   (integer) +
_disconnected_   (integer) +
@@ -263,6 +271,10 @@ _chantypes_   (string) +
_chanmodes_   (string) +
_monitor_   (integer) +
_monitor_time_   (time) +
_clienttagdeny_   (string) +
_clienttagdeny_count_   (integer) +
_clienttagdeny_array_   (string, array_size: "clienttagdeny_count") +
_typing_allowed_   (integer) +
_reconnect_delay_   (integer) +
_reconnect_start_   (time) +
_command_time_   (time) +
@@ -18,17 +18,17 @@
| guile | guile_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
| irc | irc_channel | Liste der Channels eines IRC-Servers | Channel Pointer (optional) | Server,Channel (Channel ist optional)
| irc | irc_channel | Liste der Kanäle eines IRC-Servers | Pointer vom Kanal (optional) | Server,Kanal (Kanal ist optional)
| irc | irc_color_weechat | Zuordnung der IRC Farbkodierung und der WeeChat Farbnamen | - | -
| irc | irc_ignore | Liste von ignorierten IRCs | Ignore Pointer (optional) | -
| irc | irc_modelist | Liste der Channel-Mode-Liste für einen IRC-Channel | Modelist Pointer (optional) | Server,Channel,Type (Type ist optional)
| irc | irc_modelist | Liste der Kanalmoduslisten für einen IRC-Kanal | Modelist Pointer (optional) | Server,Channel,Type (Type ist optional)
| irc | irc_modelist_item | Liste der Items in der Channel-Modeliste | Modelist Item Pointer (optional) | Server,Channel,Type,Nummer (Nummer ist optional)
| irc | irc_modelist_item | Liste der Items in der Kanal-Modeliste | Modelist Item Pointer (optional) | Server,Channel,Type,Nummer (Nummer ist optional)
| irc | irc_nick | Liste der Nicks im IRC-Channel | Nick Pointer (optional) | server,channel,nick (nick ist optional)
| irc | irc_nick | Liste der Nicks im IRC-Kanal | Nick Pointer (optional) | server,channel,nick (nick ist optional)
| irc | irc_notify | Liste mit Benachrichtigungen | Benachrichtigungspointer (optional) | Servername (Platzhalter "*" kann verwendet werden) (optional)
+15 -5
View File
@@ -16,9 +16,9 @@
| guile | guile_version | Version des verwendeten Interpreters | -
| irc | irc_buffer | holt Buffer Pointer für einen IRC Server/Channel/Nick | server,channel,nick (Channel und Nicks sind optional)
| irc | irc_buffer | holt Buffer Pointer für einen IRC Server/Kanal/Nick | server,channel,nick (Kanal und Nicks sind optional)
| irc | irc_is_channel | 1, falls die Zeichenkette ein gültiger IRC-Channelname für den Server ist | Server,Channel (Server ist optional)
| irc | irc_is_channel | 1, falls die Zeichenkette ein gültiger IRC-Kanalname für den Server ist | Server,Kanal (Server ist optional)
| irc | irc_is_message_ignored | 1, wenn der Nick ignoriert wird (Meldung wird nicht angezeigt) | Server,Nachricht (Nachricht ist die unverarbeitete IRC Nachricht)
@@ -60,7 +60,7 @@
| php | php_version | Version des verwendeten Interpreters | -
| python | python2_bin | Pfad für Python 2.x Interpreter | -
| python | python2_bin | Pfad zum Python 2.x Interpreter (*veraltet*, seit WeeChat Version 2.6 müssen Skripten Python3 verwenden) | -
| python | python_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
@@ -76,7 +76,7 @@
| ruby | ruby_version | Version des verwendeten Interpreters | -
| spell | spell_dict | durch Kommata getrennte Liste von Wörterbüchern, die in diesem Buffer genutzt werden sollen | Buffer-Pointer ("0x12345678") oder der vollständige Buffername ("irc.freenode.#weechat")
| spell | spell_dict | durch Kommata getrennte Liste von Wörterbüchern, die in diesem Buffer genutzt werden sollen | Buffer-Pointer ("0x12345678") oder der vollständige Buffername ("irc.libera.#weechat")
| tcl | tcl_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
@@ -134,7 +134,15 @@
| weechat | version_number | WeeChat-Version (als Zahl) | -
| weechat | weechat_dir | WeeChat Verzeichnis | -
| weechat | weechat_cache_dir | WeeChat Cache-Verzeichnis | -
| weechat | weechat_config_dir | WeeChat Konfigurationsverzeichnis | -
| weechat | weechat_daemon | 1, falls WeeChat im Daemon-Modus ausgeführt wird (ohne Oberfläche, im Hintergrund) | -
| weechat | weechat_data_dir | WeeChat-Datenverzeichnis | -
| weechat | weechat_dir | WeeChat-Verzeichnis (*veraltet* seit Version 3.2, ersetzt durch "weechat_config_dir", "weechat_data_dir", "weechat_cache_dir" und "weechat_runtime_dir") | -
| weechat | weechat_headless | 1, falls WeeChat im Hintergrundmodus ausgeführt wird | -
@@ -142,6 +150,8 @@
| weechat | weechat_localedir | "lokales" Verzeichnis von WeeChat | -
| weechat | weechat_runtime_dir | WeeChat-Laufzeitverzeichnis | -
| weechat | weechat_sharedir | WeeChat "share" Verzeichnis | -
| weechat | weechat_site | WeeChat Seite | -
@@ -8,7 +8,7 @@
|===
| 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": Channel, "arguments": Argumente (schließt Channel ein), "text": Text (zum Beispiel eine Nachricht von einem User), "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
| irc | irc_message_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), "param1" ... "paramN": geparste Befehlsparameter, "num_params": Anzahl geparste Befehlsparameter, "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
@@ -4,18 +4,26 @@
//
// tag::plugins_priority[]
. charset (15000)
. logger (14000)
. exec (13000)
. trigger (12000)
. spell (11000)
. alias (10000)
. buflist (9000)
. fifo (8000)
. 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, 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)
. fset (2000)
// end::plugins_priority[]
+251 -163
View File
@@ -14,33 +14,36 @@ target: Servername
----
[[command_irc_allchan]]
* `+allchan+`: führt einen Befehl aus der an alle Channels 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>
[-current] -include=<channel>[,<channel>...] <command>
/allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
[-current] [-parted] -include=<channel>[,<channel>...] <command>
-current: führt einen Befehl aus der an alle Channels des aktuellen Servers gesendet wird
-exclude: dient zum Ausschluss ausgewählter Channels (Platzhalter "*" kann verwendet werden)
-include: findet Anwendung für ausgewählte Channels (Platzhalter "*" kann verwendet werden)\n
-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)
-include: findet Anwendung für ausgewählte Kanäle (Platzhalter "*" kann verwendet werden)\n
command: Befehl der ausgeführt werden soll
Argumente und Befehl werden evaluiert (siehe /help eval), folgende Variablen können genutzt werden:
$server Name des Servers
$channel Name des Channel
$channel Name des Kanals
$nick Nickname der auf dem Server genutzt wird
${irc_server.xxx} Variable xxx von Server
${irc_channel.xxx} Variable xxx von Channel
${irc_channel.xxx} Variable xxx von Kanal
Beispiele:
führe den Befehl '/me Ich teste gerade etwas...' für alle Channels aus:
führe den Befehl '/me Ich teste gerade etwas...' für alle Kanäle aus:
/allchan /me Ich teste gerade etwas...
schicke 'Hallo Welt' an jeden Channel, ausgenommen an den #weechat Channel:
schicke 'Hallo Welt' an jeden Kanal, ausgenommen an den #weechat Kanal:
/allchan -exclude=#weechat Hallo Welt
schicke 'Hallo Welt' an jeden Channel, ausgenommen an den #weechat Channel und Channels die mit #linux beginnen:
schicke 'Hallo Welt' an jeden Kanal, ausgenommen an den #weechat Kanal und Kanäle die mit #linux beginnen:
/allchan -exclude=#weechat,#linux* Hallo Welt
schickt den Text 'Hallo' an alle Channels die mit #linux beginnen:
schickt den Text 'Hallo' an alle Kanäle die mit #linux beginnen:
/allchan -include=#linux* Hallo
schließt alle, vom Server getrennte, Kanäle.:
/allchan -parted /close
----
[[command_irc_allpv]]
@@ -57,10 +60,10 @@ Beispiele:
Argumente und Befehl werden evaluiert (siehe /help eval), folgende Variablen können genutzt werden:
$server Name des Servers
$channel Name des Channel
$channel Name des Kanals
$nick Nickname der auf dem Server genutzt wird
${irc_server.xxx} Variable xxx von Server
${irc_channel.xxx} Variable xxx von Channel
${irc_channel.xxx} Variable xxx von Kanal
Beispiele:
führe den Befehl '/me Ich teste gerade etwas...' für alle privaten Buffer aus:
@@ -100,16 +103,36 @@ Beispiele:
/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]]
* `+ban+`: Nicknamen oder Hosts sperren/verbannen
----
/ban [<channel>] [<nick> [<nick>...]]
channel: Name des Channel
channel: Name des Kanals
nick: Nick oder Host
Ohne Angabe von Argumenten wird die Ban-Liste für den aktuellen Channel angezeigt.
Ohne Angabe von Argumenten wird die Ban-Liste für den aktuellen Kanal angezeigt.
----
[[command_irc_cap]]
@@ -129,9 +152,9 @@ Ohne Angabe von Argumenten wird die Ban-Liste für den aktuellen Channel angezei
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:
/cap
@@ -161,7 +184,7 @@ Beispiele:
Um eine Verbindung zum Server, oder Verbindungsversuche, zu beenden wird der Befehl /disconnect verwendet.
Beispiele:
/connect freenode
/connect libera
/connect irc.oftc.net/6667
/connect irc6.oftc.net/6667 -ipv6
/connect irc6.oftc.net/6697 -ipv6 -ssl
@@ -177,7 +200,7 @@ Beispiele:
/ctcp [-server <server>] <target>[,<target>...] <type> [<arguments>]
server: an diesen Server senden (interner Servername)
target: Nick- oder Channelname an welchen eine CTCP-Nachricht geschickt werden soll ('*' = aktuellen Channel)
target: Nick- oder Kanalname an welchen eine CTCP-Nachricht geschickt werden soll ('*' = aktueller Kanal)
type: CTCP-Nachricht (Beispiele: "version", "ping", usw.)
arguments: Argumente für CTCP
@@ -188,12 +211,12 @@ Beispiele:
----
[[command_irc_cycle]]
* `+cycle+`: Einen Channel verlassen und wieder betreten
* `+cycle+`: Einen Kanal verlassen und wieder betreten
----
/cycle [<channel>[,<channel>...]] [<message>]
channel: Name des Channels
channel: Name des Kanals
message: Abschiedsnachricht (wird anderen Usern angezeigt)
----
@@ -222,7 +245,7 @@ Beispiel:
* -yes
nick: Nick oder Maske (Platzhalter "*" kann verwendet werden)
*: entzieht allen Nicks im Channel den half-operator-Status, ausgenommen sich selber
*: entzieht allen Nicks im Kanal den half-operator-Status, ausgenommen sich selber
----
[[command_irc_deop]]
@@ -233,7 +256,7 @@ nick: Nick oder Maske (Platzhalter "*" kann verwendet werden)
* -yes
nick: Nick oder Maske (Platzhalter "*" kann verwendet werden)
*: entzieht allen Nicks im Channel den Operator-Status, ausgenommen sich selber
*: entzieht allen Nicks im Kanal den Operator-Status, ausgenommen sich selber
----
[[command_irc_devoice]]
@@ -244,7 +267,7 @@ nick: Nick oder Maske (Platzhalter "*" kann verwendet werden)
* -yes
nick: Nick oder Maske (Platzhalter "*" kann verwendet werden)
*: entzieht allen Nicks im Channel den voice-Status
*: entzieht allen Nicks im Kanal den voice-Status
----
[[command_irc_die]]
@@ -276,11 +299,11 @@ target: Servername
* -yes
nick: Nick oder Maske (Platzhalter "*" kann verwendet werden)
*: vergibt an alle Nicks im Channel den half-operator-Status
*: vergibt an alle Nicks im Kanal den half-operator-Status
----
[[command_irc_ignore]]
* `+ignore+`: Ignoriert Nicks/Hosts von Channels oder Servern
* `+ignore+`: Ignoriert Nicks/Hosts von Kanälen oder Servern
----
/ignore list
@@ -294,17 +317,17 @@ nick: Nick oder Maske (Platzhalter "*" kann verwendet werden)
number: Nummer der Ignorierung die entfernt werden soll (nutze "list" um den entsprechenden Eintrag zu finden)
-all: entfernt alle Einträge
server: interner Name des Server auf welchem die Ignorierung statt finden soll
channel: Name des Channel, in dem die Ignorierung statt finden soll
channel: Name des Kanals, in dem die Ignorierung statt finden soll
Hinweis: Um zwischen Groß-und Kleinschreibung zu unterscheiden muss am Wortanfang "(?-i)" genutzt werden.
Beispiele:
ignoriert den Nick "toto" global:
/ignore add toto
ignoriert den Host "toto@domain.com" auf dem freenode Server:
/ignore add toto@domain.com freenode
ignoriert den Host "toto*@*.domain.com" im Chat freenode/#weechat:
/ignore add toto*@*.domain.com freenode #weechat
ignoriert den Host "toto@domain.com" auf dem libera Server:
/ignore add toto@domain.com libera
ignoriert den Host "toto*@*.domain.com" im Chat libera/#weechat:
/ignore add toto*@*.domain.com libera #weechat
----
[[command_irc_info]]
@@ -317,13 +340,13 @@ target: Servername
----
[[command_irc_invite]]
* `+invite+`: Eine Person in einen Channel einladen
* `+invite+`: Eine Person in einen Kanal einladen
----
/invite <nick> [<nick>...] [<channel>]
nick: Nickname
channel: Name des Channels
channel: Name des Kanals
----
[[command_irc_ison]]
@@ -336,43 +359,43 @@ nick: Nickname
----
[[command_irc_join]]
* `+join+`: einen Channel betreten
* `+join+`: einen Kanal betreten
----
/join [-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]
-noswitch: es wird nicht zu dem angegebenen Channel gewechselt
-noswitch: es wird nicht zu dem angegebenen Kanal gewechselt
server: an angegebenen Server (interner Name) senden
channel: Name des Channels, der betreten werden soll
key: Zugriffsschlüssel für einen Channel (Channel, die einen Zugriffsschlüssel benötigen, müssen zuerst aufgeführt werden)
channel: Name des Kanals, der betreten werden soll
key: Zugriffsschlüssel für einen Kanal (Kanäle, die einen Zugriffsschlüssel benötigen, müssen zuerst aufgeführt werden)
Beispiele:
/join #weechat
/join #geschützter_Channel,#weechat Zugriffsschlüssel
/join -server freenode #weechat
/join #geschützter_Kanal,#weechat Zugriffsschlüssel
/join -server libera #weechat
/join -noswitch #weechat
----
[[command_irc_kick]]
* `+kick+`: wirft einen User aus einem Channel
* `+kick+`: wirft einen User aus einem Kanal
----
/kick [<channel>] <nick> [<reason>]
channel: Channelname
channel: Kanalname
nick: Nick der rausgeworfen werden soll
reason: Begründung für den Rauswurf (Variablen die genutzt werden können: $nick, $channel und $server)
reason: Begründung für den Rauswurf (evaluiert, siehe /help eval; besondere Variablen ${nick} (eigener Nick), ${target} (betroffener Nick), ${channel} und ${server}, werden durch den entsprechenden Wert ersetzt)
----
[[command_irc_kickban]]
* `+kickban+`: wirft einen User aus einem Channel und sein Host kommt auf die Bannliste
* `+kickban+`: wirft einen User aus einem Kanal und sein Host kommt auf die Bannliste
----
/kickban [<channel>] <nick> [<reason>]
channel: Channelname
channel: Kanalname
nick: Nickname der rausgeworfen und gebannt werden soll
reason: Begründung weshalb der User rausgeworfen wurde (Variablen die genutzt werden können: $nick, $channel und $server)
reason: Begründung für den Rauswurf (evaluiert, siehe /help eval; besondere Variablen ${nick} (eigener Nick), ${target} (betroffener Nick), ${channel} und ${server}, werden durch den entsprechenden Wert ersetzt)
Es ist möglich kick/ban mittels einer Maske auszuführen. Der Nick wird aus der Maske heraus gefiltert und durch "*" ersetzt.
@@ -402,22 +425,22 @@ server_mask: die aufzulistenden Server sollen diesem Muster entsprechen
----
[[command_irc_list]]
* `+list+`: Channels mit ihrem Thema auflisten
* `+list+`: Kanäle und deren Themen auflisten
----
/list [-server <server>] [-re <regex>] [<channel>[,<channel>...]] [<target>]
server: an diesen Server senden (interner Name)
regexp: erweiterter regulärer POSIX Ausdruck, der auf die Ausgabe angewendet werden soll (zwischen Groß- und Kleinschreibung wird nicht unterschieden. Um zwischen Groß- und Kleinschreibung zu unterscheiden muss zu Beginn "(?-i)" genutzt werden)
channel: aufzulistender Channel
channel: aufzulistender Kanal
target: Servername
Beispiele:
listet alle Channels des Servers auf (dies kann bei großen Netzwerken sehr lange dauern):
listet alle Kanäle des Servers auf (dies kann bei großen Netzwerken sehr lange dauern):
/list
listet den Channel #weechat auf:
listet den Kanal #weechat auf:
/list #weechat
listet alle Channels auf die mit "#weechat" beginnen (dies kann bei großen Netzwerken sehr lange dauern):
listet alle Kanäle auf die mit "#weechat" beginnen (dies kann bei großen Netzwerken sehr lange dauern):
/list -re #weechat.*
----
@@ -438,7 +461,7 @@ target: Server, der die Anfrage weiterleiten soll
----
[[command_irc_me]]
* `+me+`: eine CTCP ACTION an den aktuellen Channel senden
* `+me+`: eine CTCP ACTION an den aktuellen Kanal senden
----
/me <message>
@@ -447,26 +470,26 @@ message: zu sendende Nachricht
----
[[command_irc_mode]]
* `+mode+`: Eigenschaften eines Channel oder von einem User ändern
* `+mode+`: Eigenschaften eines Kanals oder von einem User ändern
----
/mode [<channel>] [+|-]o|p|s|i|t|n|m|l|b|e|v|k [<arguments>]
<nick> [+|-]i|s|w|o
Channel-Eigenschaften:
channel: zu ändernder Channel (standardmäßig der erste Channel)
Kanal-Eigenschaften:
channel: zu ändernder Kanal (standardmäßig der erste Kanal)
o: vergibt/entzieht Operator Privilegien
p: privater Channel
s: geheimer Channel
i: geschlossener Channel (Zutritt nur mit Einladung)
p: privater Kanal
s: geheimer Kanal
i: geschlossener Kanal (Zutritt nur mit Einladung)
t: nur Operatoren dürfen das Thema setzen
n: keine Nachrichten von außerhalb des Channels zulassen
m: moderierter Channel (schreiben nur mit Voice)
l: maximale Anzahl an Usern im Channel festlegen
n: keine Nachrichten von außerhalb des Kanals zulassen
m: moderierter Kanal (schreiben nur mit Voice)
l: maximale Anzahl an Usern im Kanal festlegen
b: Bannmaske für zu sperrende User (in nick!ident@host-Form)
e: legt Ausnahmemaske fest
v: vergibt/entzieht Schreibrechte (voice) in moderierten Channels
k: legt ein Passwort für den Channel fest
v: vergibt/entzieht Schreibrechte (voice) in moderierten Kanälen
k: legt ein Passwort für den Kanal fest
User-Eigenschaften:
nick: zu ändernder Nickname
i: User als unsichtbar kennzeichnen
@@ -493,23 +516,23 @@ target: Servername
----
[[command_irc_msg]]
* `+msg+`: Nachricht an Nick/Channel verschicken
* `+msg+`: Nachricht an Nick/Kanal verschicken
----
/msg [-server <server>] <target>[,<target>...] <text>
server: schicke an diesen Server (interner Servername)
target: Nick oder Channel (darf eine Maske sein, '*' = aktueller Channel)
target: Nick oder Kanal (darf eine Maske sein, '*' = aktueller c)
text: zu sendender Text
----
[[command_irc_names]]
* `+names+`: Nicknamen in Channels auflisten
* `+names+`: Nicknamen des Kanals auflisten
----
/names [<channel>[,<channel>...]]
channel: Name des Channels
channel: Name des Kanals
----
[[command_irc_nick]]
@@ -529,7 +552,7 @@ nick: neuer Nickname
/notice [-server <server>] <target> <text>
server: an diesen Server senden (interner Name)
target: Nick- oder Channelname
target: Nick- oder Kanalname
text: zu sendender Text
----
@@ -552,21 +575,21 @@ Ohne Angabe von Argumenten werden alle Benachrichtigungen für den aktuellen Ser
Beispiele:
Benachrichtigung falls sich "toto" am aktuellen Server an- oder abmeldet:
/notify add toto
Benachrichtigung falls sich "toto" am freenode Server an- oder abmeldet:
/notify add toto freenode
Benachrichtigung falls "toto" den Befehl away am freenode Server nutzt:
/notify add toto freenode -away
Benachrichtigung falls sich "toto" am libera Server an- oder abmeldet:
/notify add toto libera
Benachrichtigung falls "toto" den Befehl away am libera Server nutzt:
/notify add toto libera -away
----
[[command_irc_op]]
* `+op+`: Channel-Operator Status an Nicknamen vergeben
* `+op+`: Status des Kanal-Operator an Nicknamen vergeben
----
/op <nick> [<nick>...]
* -yes
nick: Nick oder Maske (Platzhalter "*" kann verwendet werden)
*: vergibt an alle Nicks im Channel den Operator-Status
*: vergibt an alle Nicks im Kanal den Operator-Status
----
[[command_irc_oper]]
@@ -580,12 +603,12 @@ password: Passwort
----
[[command_irc_part]]
* `+part+`: Einen Channel verlassen
* `+part+`: Einen Kanal verlassen
----
/part [<channel>[,<channel>...]] [<message>]
channel: Name des Channels welcher verlassen werden soll
channel: Name des Kanals welcher verlassen werden soll
message: Abschiedsnachricht (wird anderen Usern angezeigt)
----
@@ -622,15 +645,15 @@ target: Nickname
----
[[command_irc_quiet]]
* `+quiet+`: Nicks oder Hosts das Wort entziehen (User können im Channel erst schreiben, wenn sie "+v" oder höher besitzen)
* `+quiet+`: Nicks oder Hosts das Wort entziehen (User können im Kanal erst schreiben, wenn sie "+v" oder höher besitzen)
----
/quiet [<channel>] [<nick> [<nick>...]]
channel: Name des Channel
channel: Name des Kanals
nick: Nick oder Host
Ohne Angabe von Argumenten wird die Quiet-Liste für den aktuellen Channel angezeigt.
Ohne Angabe von Argumenten wird die Quiet-Liste für den aktuellen Kanal angezeigt.
----
[[command_irc_quote]]
@@ -652,7 +675,7 @@ data: unbearbeitete (RAW) Daten die gesendet werden sollen
server: Servername zu welchem neu verbunden werden soll (interner Name)
-all: mit allen Servern neu verbinden
-nojoin: Channels werden nicht betreten (auch falls autojoin für diesen Server aktiviert ist)
-nojoin: Kanäle werden nicht betreten (auch falls autojoin für diesen Server aktiviert ist)
-switch: wechselt zur nächsten Server-Adresse
----
@@ -666,12 +689,12 @@ option: zusätzliche Einstellung, die von manchen Servern berücksichtigt wird
----
[[command_irc_remove]]
* `+remove+`: zwingt einen User einen Channel zu verlassen
* `+remove+`: zwingt einen User einen Kanal zu verlassen
----
/remove [<channel>] <nick> [<reason>]
channel: Channelname
channel: Kanalname
nick: Nick der rausgeworfen werden soll
reason: Begründung für den Rauswurf (Variablen die genutzt werden können: $nick, $channel und $server)
----
@@ -686,23 +709,23 @@ target: Servername
----
[[command_irc_sajoin]]
* `+sajoin+`: fordert einen User auf einen oder mehrere Channel zu betreten
* `+sajoin+`: fordert einen User auf einen oder mehrere Kanäle zu betreten
----
/sajoin <nick> <channel>[,<channel>...]
nick: Nickname
channel: Name des Channels
channel: Name des Kanals
----
[[command_irc_samode]]
* `+samode+`: ändert den Modus des Channels ohne das Operator-Privilegien vorliegen
* `+samode+`: ändert den Modus des Kanals ohne das Operator-Privilegien vorliegen
----
/samode [<channel>] <mode>
Channel: Name des Channel
Mode: neuer Modus für Channel
Channel: Name des Kanals
Mode: neuer Modus für Kanal
----
[[command_irc_sanick]]
@@ -716,13 +739,13 @@ new_nick: neuer Nickname
----
[[command_irc_sapart]]
* `+sapart+`: zwingt einen User den oder die Channel(s) zu verlassen
* `+sapart+`: zwingt einen User den oder die Kanäle zu verlassen
----
/sapart <nick> <channel>[,<channel>...]
nick: Nickname
channel: Name des Channels
channel: Name des Kanals
----
[[command_irc_saquit]]
@@ -775,16 +798,16 @@ nooption: stellt die Boolean Einstellung auf 'off' (Beispiel: -nossl)
Beispiele:
/server listfull
/server add freenode chat.freenode.net
/server add freenode chat.freenode.net/6697 -ssl -autoconnect
/server add libera irc.libera.chat
/server add libera irc.libera.chat/6697 -ssl -autoconnect
/server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667
/server copy freenode freenode-test
/server rename freenode-test freenode2
/server reorder freenode2 freenode
/server del freenode
/server copy libera libera-test
/server rename libera-test libera2
/server reorder libera2 libera
/server del libera
/server deloutq
/server raw
/server raw s:freenode
/server raw s:libera
/server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo
----
@@ -808,6 +831,15 @@ mask: nur zutreffende Services auflisten
type: nur Services von diesem Typ auflisten
----
[[command_irc_setname]]
* `+setname+`: setze Realnamen
----
/setname <Realname>
realname: neuer Realname
----
[[command_irc_squery]]
* `+squery+`: Nachricht an einen Service senden
@@ -846,7 +878,7 @@ target: Name des Servers
user: Benutzername
target: Servername
channel: Channelname
channel: Kanalname
----
[[command_irc_time]]
@@ -859,14 +891,14 @@ target: Zeit des angegebenen Servers abfragen
----
[[command_irc_topic]]
* `+topic+`: Thema des Channels abfragen/setzen
* `+topic+`: Thema des Kanals abfragen/setzen
----
/topic [<channel>] [<topic>|-delete]
channel: Name des Channels
topic: neues Thema für den Channel
-delete: entfernt das Thema des Channels
channel: Name des Kanals
topic: neues Thema für den Kanal
-delete: entfernt das Thema des Kanals
----
[[command_irc_trace]]
@@ -884,7 +916,7 @@ target: Servername
----
/unban [<channel>] <nick>|<number> [<nick>|<number>...]
channel: Name des Channel
channel: Name des Kanals
nick: Nick oder Host
number: ban Nummer (wird beim Befehl /ban angezeigt)
----
@@ -895,7 +927,7 @@ channel: Name des Channel
----
/unquiet [<channel>] <nick>|<number> [<nick>|<number>...]
channel: Name des Channel
channel: Name des Kanals
nick: Nick oder Host
number: Quiet-Nummer (wird beim Befehl /quiet angezeigt)
----
@@ -936,16 +968,16 @@ target: Servername
* -yes
nick: Nick oder Maske (Platzhalter "*" kann verwendet werden)
*: vergibt an alle Nicks im Channel den voice-Status
*: vergibt an alle Nicks im Kanal den voice-Status
----
[[command_irc_wallchops]]
* `+wallchops+`: Nachricht an Channel-Operator verschicken
* `+wallchops+`: Nachricht an Kanal-Operator verschicken
----
/wallchops [<channel>] <text>
channel: Name des Channel
channel: Name des Kanals
text: Text der versendet werden soll
----
@@ -978,7 +1010,7 @@ target: Name des Servers (interner Servername)
nick: Nick, welcher abgefragt werden soll (es kann auch eine Maske genutzt werden)
Ohne Angabe von Argumenten, nutzt /whois folgende Regel:
- den eigenen Nick, falls es sich um einen Server/Channel Buffer handelt
- den eigenen Nick, falls es sich um einen Server/Kanal-Buffer handelt
- den Nick des Gesprächspartners, falls es sich um einen privaten Buffer handelt.
Sollte die Einstellung irc.network.whois_double_nick aktiviert sein dann wird ein Nick zweimal verwendet (sofern der Nick nur einmal angegeben wurde), um die Idle-Zeit zu erhalten.
@@ -1271,7 +1303,7 @@ Beispiele:
/debug list
set <plugin> <level>
dump [<plugin>]
buffer|color|infolists|memory|tags|term|windows
buffer|color|infolists|libs|certs|memory|tags|term|windows
mouse|cursor [verbose]
hdata [free]
time <command>
@@ -1289,10 +1321,11 @@ Beispiele:
hooks: zeigt die aktiven Hooks an
infolists: zeigt Information über die Infolists an
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
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
term: gibt Informationen über das Terminal und verfügbare Farben aus
term: zeigt Informationen über das Terminal 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
----
@@ -1341,27 +1374,33 @@ Um einen Vergleich zwischen zwei Zeichenketten zu erzwingen, müssen die Ausdrü
"50" > "100" ==> 1
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
2. eine evaluierte Teilzeichenkette (Format: "eval:xxx")
3. eine evaluierte Bedingung (Format: "eval_cond:xxx")
4. eine Zeichenkette mit Escapesequenzen (Format: "esc:xxx" oder "\xxx")
5. Zeichen, die in einer Zeichenkette nicht dargestellt werden sollen (Format: "hide:Zeichen,Zeichenkette")
6. eine Zeichenkette mit einer maximalen Anzahl an Zeichen (Format: "cut:+Max,Suffix,Zeichenkette")
1. die Zeichenfolge selbst ohne Auswertung (Format: "raw:xxx")
2. eine benutzerdefinierte Variable (Format: "name")
3. eine evaluierte Teilzeichenkette (Format: "eval:xxx")
4. eine evaluierte Bedingung (Format: "eval_cond:xxx")
5. eine Zeichenkette mit Escapesequenzen (Format: "esc:xxx" oder "\xxx")
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")
7. eine Zeichenkette umkehren (Format: "rev:xxx" oder "revscr:xxx")
8. eine Zeichenkette wiederholen (Format: "repeat:Anzahl,Zeichenkette")
9. 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. ein Modifizierer (Format: "info:Name,Argumente", Argumente sind optional)
12. eine Info (Format: "Info:Name,Argumente", Argumente sind optional)
13. eine Basis 16/32/64 kodierte / dekodierte Zeichenfolge (Format: "base_encode:base,xxx" oder "base_decode:base,xxx")
14. aktuelles Datum/Uhrzeit (Format: "date" oder "date:format")
15. eine Umgebungsvariable (Format: "env:XXX")
16. ein Dreifachoperand (Format: "if:Bedingung?Wert_falls_wahr:Wert_falls_unwahr")
17. Ergebnis eines Ausdrucks mit Klammern und Operatoren + - * / // % ** (Format: "calc:xxx")
18. eine Option (Format: "file.section.option")
19. eine lokale Variable eines Buffers
20. 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.
8. eine Zeichenkette umkehren (Format: "rev:xxx" oder "revscr:xxx")
9. eine Zeichenkette wiederholen (Format: "repeat:Anzahl,Zeichenkette")
10. Länge einer Zeichenkette (Format: "length:xxx" oder "lengthscr:xxx")
11. Aufteilen einer Zeichenkette (Format: "split:Anzahl,Trennzeichen,Flags,xxx")
12. Aufteilen von Shell-Argumenten (Format: "split_shell:Anzahl,xxx")
13. eine Farbe (Format: "color:xxx", siehe "Anleitung für API Erweiterung", Funktion "color")
14. zum modifizieren (Format: "modifier:name,data,string")
15. eine Info (Format: "Info:Name,Argumente", Argumente sind optional)
16. eine Basis 16/32/64 kodierte / dekodierte Zeichenfolge (Format: "base_encode:base,xxx" oder "base_decode:base,xxx")
17. aktuelles Datum/Uhrzeit (Format: "date" oder "date:format")
18. eine Umgebungsvariable (Format: "env:XXX")
19. ein Dreifachoperand (Format: "if:Bedingung?Wert_falls_wahr:Wert_falls_unwahr")
20. Ergebnis eines Ausdrucks mit Klammern und Operatoren + - * / // % ** (Format: "calc:xxx")
21. eine zufällige ganze Zahl (Format: "random:min,max")
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:
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:
@@ -1369,6 +1408,7 @@ Das Format für hdata kann wie folgt aufgebaut sein:
${plugin[weechat_plugins].name}: Name der ersten Erweiterung, in der verknüpften Liste aller Erweiterungen
hdata[pointer].var1.var2...: startet hdata mittels einem Pointer, zum Beispiel:
${buffer[0x1234abcd].full_name}: vollständiger Name eines Buffers und des dazugehörigen Pointers (kann in triggern benutzt werden)
${buffer[my_pointer].full_name}: vollständiger Name des Buffers mit dem entsprechenden Pointernamen (kann in Triggern verwendet werden)
Die vorhandenen Namen für hdata und Variablen sind in der "Anleitung für API Erweiterung", Bereich "weechat_hdata_get". beschrieben
Beispiele (einfache Zeichenketten):
@@ -1377,7 +1417,7 @@ Beispiele (einfache Zeichenketten):
/eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.freenode_password} ==> geheim
/eval -n ${sec.data.password} ==> geheim
/eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat
@@ -1391,9 +1431,20 @@ Beispiele (einfache Zeichenketten):
/eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> -----
/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 ${random:0,10} ==> 3
/eval -n ${base_encode:64,test} ==> dGVzdA==
/eval -n ${base_decode:64,dGVzdA==} ==> test
/eval -n ${translate:Plugin} ==> Erweiterung
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
Beispiele (Bedingungen):
/eval -n -c ${window.buffer.number} > 2 ==> 0
@@ -1431,7 +1482,7 @@ addreplace: erzeugt neuen Filter oder ersetzt einen schon existierenden Filter
del: Filter entfernen
-all: entfernt alle Filter
buffer: durch Kommata getrennte Liste von Buffer in denen der Filter aktiv sein soll:
- ist der vollständige Name eines Buffer inklusive seiner Erweiterung (Beispiel: "irc.freenode.#weechat" oder "irc.server.freenode")
- ist der vollständige Name eines Buffer inklusive seiner Erweiterung (Beispiel: "irc.libera.#weechat" oder "irc.server.libera")
- "*" bedeutet, alle Buffer
- beginnt ein Name mit '!' wird für diesen Buffer kein Filter genutzt
- Platzhalter "*" kann verwendet werden
@@ -1466,11 +1517,11 @@ Beispiele:
filtert Nicks wenn diese den Channel betreten oder durch den Befehl "/names" angezeigt werden:
/filter add nicks * irc_366 *
filtert Nick "toto" im IRC Channel #weechat:
/filter add toto irc.freenode.#weechat nick_toto *
/filter add toto irc.libera.#weechat nick_toto *
filtert IRC join/action Nachrichten von Nick "toto":
/filter add toto * nick_toto+irc_join,nick_toto+irc_action *
filtert Zeilen die "weechat sucks" im IRC Channel #weechat enthalten:
/filter add sucks irc.freenode.#weechat * weechat sucks
/filter add sucks irc.libera.#weechat * weechat sucks
filter Zeilen die exakt "WeeChat sucks" lauten und das in allen Buffern:
/filter add sucks2 * * (?-i)^WeeChat sucks$
----
@@ -1546,6 +1597,9 @@ Auflistung der möglichen Aktionen:
jump_previously_visited_buffer: springt zum letzten 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_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_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
@@ -1641,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.
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]]
@@ -1672,7 +1728,7 @@ Beispiele:
-core: keine Ausgabe im WeeChat Core Buffer
-current: Ausgabe im aktuellen Buffer wird unterdrückt
-buffer: Ausgabe im ausgewählten Buffer wird unterdrückt
name: vollständiger Buffername (Beispiel: "irc.server.freenode", "irc.freenode.#weechat")
name: vollständiger Buffername (Beispiel: "irc.server.libera", "irc.libera.#weechat")
command: Befehl der ohne Textausgabe ausgeführt werden soll (das Präfix, '/', wird automatisch hinzugefügt, falls es dem Befehl nicht vorangestellt wurde)
Wird kein Buffer ausgewählt (-core, -current oder -buffer), dann wird die Textausgabe generell unterdrückt.
@@ -1680,31 +1736,36 @@ Wird kein Buffer ausgewählt (-core, -current oder -buffer), dann wird die Texta
Beispiele:
Speichern der Konfiguration:
/mute save
Nachricht in den aktuellen Channel senden:
Nachricht in den aktuellen Kanal senden:
/mute -current msg * hi!
Nachricht an den #weechat Channel senden:
/mute -buffer irc.freenode.#weechat msg #weechat hi!
Nachricht an den #weechat Kanal senden:
/mute -buffer irc.libera.#weechat msg #weechat hi!
----
[[command_weechat_plugin]]
* `+plugin+`: Erweiterungen verwalten (auflisten/installieren/beenden)
----
/plugin list|listfull [<name>]
/plugin list [-o|-ol|-i|-il|<name>]
listfull [<name>]
load <filename> [<arguments>]
autoload [<arguments>]
reload [<name>|* [<arguments>]]
unload [<name>]
list: installierte Erweiterungen werden aufgelistet
listfull: detaillierte Auflistung aller installierten Erweiterungen
load: installiert eine Erweiterung
-o: sende Liste der geladenen Erweiterungen an den Buffer (Ausgabe in Englisch)
-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
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)
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.
----
@@ -1751,7 +1812,7 @@ Beispiele:
zeigt eine Nachricht im Core-Buffer mit dem Präfix "abc" an:
/print -core abc\tmeine Nachricht
es wird eine Nachricht im Channel #weechat ausgegeben:
/print -buffer irc.freenode.#weechat Nachricht an #weechat
/print -buffer irc.libera.#weechat Nachricht an #weechat
gibt einen Schneemann aus (U+2603):
/print -escape \u2603
verschickt Alarm (BEL):
@@ -1885,15 +1946,15 @@ Beispiele:
festlegen eine Passphrase:
/secure passphrase Dies ist meine Passphrase
nutze Programm "pass" um die Passphrase beim Start auszulesen:
/set sec.crypt.passphrase_command "pass show weechat/passphrase"
verschlüsselt freenode SASL Passwort:
/secure set freenode meinPasswort
/set irc.server.freenode.sasl_password "${sec.data.freenode}"
/set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase"
verschlüsselt libera SASL Passwort:
/secure set libera meinPasswort
/set irc.server.libera.sasl_password "${sec.data.libera}"
verschlüsselt oftc Passwort für nickserv:
/secure set oftc meinPasswort
/set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}"
Alternativbefehl um den eigenen Nick zu ghosten:
/alias add ghost /eval /msg -server freenode nickserv ghost meinNick ${sec.data.freenode}
/alias add ghost /eval /msg -server libera nickserv ghost meinNick ${sec.data.libera}
----
[[command_weechat_set]]
@@ -1932,6 +1993,32 @@ Beispiele:
/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]]
* `+unset+`: Konfigurationsparameter freigeben/zurücksetzen
@@ -1980,7 +2067,7 @@ Nutzt man die "-quit" Funktion ist die Abfolge geringfügig anders:
5. WeeChat wird beendet
Die Sitzung kann zu einem späteren Zeitpunkt wiederhergestellt werden: weechat --upgrade
WICHTIG: Die Sitzung muss mit exakt den selben Konfigurationsdateien wiederhergestellt werden (*.conf)
Es ist möglich die WeeChat-Sitzung auf einem anderen Rechner wiederherzustellen, sofern man den Inhalt des "~/.weechat" Verzeichnisses dorthin kopiert.
Es ist möglich, die WeeChat-Sitzung auf einem anderen Computer wiederherzustellen, wenn Sie den Inhalt der WeeChat Verzeichnisse kopieren (siehe / debug dirs).
----
[[command_weechat_uptime]]
@@ -2022,7 +2109,7 @@ command: Befehl welcher ausgeführt werden soll (oder ein Text der an einen Buff
Hinweis: Der Befehl wird in dem Buffer ausgeführt, in welchem der /wait Befehl ausgeführt wurde (sollte der Buffer nicht mehr existieren, wird der Befehl nicht ausgeführt).
Beispiele:
Betritt nach 10 Sekunden den Channel #test:
Betritt nach 10 Sekunden den Kanal #test:
/wait 10 /join #test
Setzt nach 15 Minuten eine globale Abwesenheit:
/wait 15m /away -all Bin dann mal eben weg
@@ -2145,7 +2232,7 @@ Die folgenden Variablen können in den obigen Optionen genutzt werden:
- ${buffer.short_name}
- ${buffer.nicklist_nicks_count}
- irc_server: IRC Serverdaten, ausschließlich genutzt bei einem IRC Buffer (siehe hdata "irc_server" in API Dokumentation)
- irc_channel: IRC Channeldaten, ausschließlich genutzt bei einem IRC Channel Buffer (siehe hdata "irc_channel" in API Dokumentation)
- irc_channel: IRC Kanaldaten, ausschließlich genutzt bei einem IRC Kanal-Buffer (siehe hdata "irc_channel" in API Dokumentation)
- zusätzliche Variablen die durch buflist bereitgestellt werden:
- ${format_buffer}: der evaluierte Wert der Option buflist.format.buffer; dies kann in der Option buflist.format.buffer_current genutzt werden um zum Beispiel die Hintergrundfarbe zu verändern
- ${current_buffer}: ein Boolean ("0" oder "1"), "1" falls es sich um den aktuellen Buffer handelt; dies kann in einer Bedingung verwendet werden: ${if:${current_buffer}?...:...}
@@ -2165,6 +2252,7 @@ Die folgenden Variablen können in den obigen Optionen genutzt werden:
- ${hotlist}: die Hotlist in der Rohform
- ${hotlist_priority}: "none", "low", "message", "private" oder "highlight"
- ${format_lag}: die Verzögerung für einen IRC Server-Buffer, ist leer falls es keine Verzögerung gibt (evaluiert aus Option buflist.format.lag)
- ${format_tls_version}: Indikator der TLS Version für den Serverbuffer, Channels bleiben unberührt (evaluiert aus Option buflist.format.tls_version)
----
// end::buflist_commands[]
@@ -2271,14 +2359,14 @@ disable: deaktivieren der FIFO pipe
toggle: Status der FIFO pipe umschalten
Die FIFO-Pipe wird als Fernbedienung genutzt, es können Befehle oder Text von der Shell an die FIFO-Pipe geschickt werden
Standardmäßig ist die FIFO-Pipe in ~/.weechat/weechat_fifo
Standardmäßig heißt die FIFO-Pipe weechat_fifo_xxx (wobei xxx die WeeChat-Prozess-ID ist) und befindet sich im WeeChat-Laufzeitverzeichnis (siehe /debug dirs).
Folgendes Format wird erwartet:
plugin.buffer *Text oder Befehl an dieser Stelle
*Text oder Befehl an dieser Stelle
Beispiel um den eigenen Nick auf dem Server freenode zu ändern:
echo 'irc.server.freenode */nick newnick' >~/.weechat/weechat_fifo
Beispiel um den eigenen Nick auf dem Server libera zu ändern:
echo 'irc.server.libera */nick newnick' >/run/user/1000/weechat/weechat_fifo_12345
Bitte lese die Benutzeranleitung für weitere Informationen und Beispiele.
@@ -2527,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.
Level der Protokollierung, die die IRC Erweiterung unterstützt:
1: Nachrichten von Usern (private und öffentliche Nachrichten) , notice (Server und Channel)
1: Nachrichten von Usern (private und öffentliche Nachrichten), notice (Server und Kanal)
2: Wechsel von Nicks (/nick)
3: Nachrichten vom Server
4: join/part/quit Nachrichten
@@ -2542,7 +2630,7 @@ Beispiele:
/set logger.level.irc 3
Die Protokollierung, für den WeeChat Haupt-Buffer, wird deaktiviert:
/set logger.level.core.weechat 0
Für jeden IRC-Server wird ein separates Verzeichnis erstellt und darin eine eigene Protokoll-Datei, für jeden Channel:
Für jeden IRC-Server wird ein separates Verzeichnis erstellt und darin eine eigene Protokoll-Datei, für jeden Kanal:
/set logger.mask.irc "$server/$channel.weechatlog"
----
// end::logger_commands[]
@@ -2715,7 +2803,7 @@ Ohne Angabe eines Argumentes listet dieser Befehl alle geladenen Skripten auf.
stop: schließt den Server Socket (Clients bleiben verbunden)
name: Name des Relays (siehe Format weiter unten)
port: Port der für Relay genutzt werden soll
path: Pfad der für Relay genutzt werden soll (ausschließlich für UNIX Domain Socket); "%h" wird durch das WeeChat Verzeichnis ersetzt, Standardverzeichnis: ("~/.weechat"), Inhalt ist evaluiert (siehe /help eval)
path: Pfad der für Relay genutzt werden soll (ausschließlich für UNIX Domain Socket); Pfad ist evaluiert (siehe Funktion string_eval_path_home in Erweiterung API Referenz)/n
raw: öffnet einen Buffer mit Relay-Rohdaten
sslcertkey: setzt SSL Zertifikat/Schlüssel mittels Pfad in Einstellung relay.network.ssl_cert_key
@@ -2734,10 +2822,10 @@ Das "weechat" Protokoll wird von einem Remote-Interface genutzt um eine Verbindu
Ohne Angabe von Argumenten werden alle Relay-Clients in einem neuen Buffer dargestellt.
Beispiele:
IRC Proxy für Server "freenode":
/relay add irc.freenode 8000
IRC Proxy, für Server "freenode", mit SSL:
/relay add ssl.irc.freenode 8001
IRC Proxy für Server "libera":
/relay add irc.libera 8000
IRC Proxy, für Server "libera", mit SSL:
/relay add ssl.irc.libera 8001
IRC Proxy für alle Server (Client wählt aus), mit SSL:
/relay add ssl.irc 8002
WeeChat Protokoll:
@@ -2751,7 +2839,7 @@ Beispiele:
WeeChat Protokoll, mit SSL, mit IPv4 + IPv6:
/relay add ipv4.ipv6.ssl.weechat 9001
Weechat Protokoll über UNIX Domain Socket:
/relay add unix.weechat %h/relay_socket
/relay add unix.weechat ${weechat_runtime_dir}/relay_socket
----
// end::relay_commands[]
+246 -118
View File
@@ -17,7 +17,7 @@
** Standardwert: `+sha256+`
* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command*
** Beschreibung: pass:none[Auslesen der Passphrase aus der Ausgabe des angegebenen Befehls (nur die erste Zeile wird verwendet und darf kein zusätzliches Zeichen enthalten); Diese Option wird nur verwendet, wenn die Datei sec.conf gelesen wird und wenn die Umgebungsvariable "WEECHAT_PASSPHRASE" nicht festgelegt ist (die Umgebungsvariable hat eine höhere Priorität); Beispiel mit Passwortspeicher: "pass show weechat / passphrase"]
** Beschreibung: pass:none[Auslesen der Passphrase aus der Ausgabe des angegebenen Befehls (nur die erste Zeile wird verwendet und darf kein zusätzliches Zeichen enthalten); Diese Option wird nur verwendet, wenn die Datei sec.conf gelesen wird und wenn die Umgebungsvariable "WEECHAT_PASSPHRASE" nicht festgelegt ist (die Umgebungsvariable hat eine höhere Priorität); Beispiel mit Passwortspeicher: "/usr/bin/pass show weechat / passphrase"]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
@@ -55,7 +55,7 @@
** Standardwert: `+white+`
* [[option_weechat.color.chat_channel]] *weechat.color.chat_channel*
** Beschreibung: pass:none[Farbe für den Channel-Namen]
** Beschreibung: pass:none[Farbe für den Kanalnamen]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+white+`
@@ -403,7 +403,7 @@
** Standardwert: `+default+`
* [[option_weechat.color.status_number]] *weechat.color.status_number*
** Beschreibung: pass:none[Farbe des aktuellen Channels in der Statuszeile]
** Beschreibung: pass:none[Farbe des aktuellen Kanals in der Statuszeile]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+yellow+`
@@ -1260,11 +1260,17 @@
** Werte: 1 .. 2147483647
** Standardwert: `+60+`
* [[option_weechat.network.gnutls_ca_file]] *weechat.network.gnutls_ca_file*
** Beschreibung: pass:none[Datei beinhaltet die digitalen Zertifikate ("%h" wird durch das WeeChat Verzeichnis ersetzt, Standardverzeichnis: "~/.weechat")]
* [[option_weechat.network.gnutls_ca_system]] *weechat.network.gnutls_ca_system*
** Beschreibung: pass:none[lädt die standardmäßigen vertrauenswürdigen Zertifizierungsstellen des Systems beim Start; Dies kann deaktiviert werden, um Speicherplatz zu sparen, falls keine SSL-Verbindungen verwendet werden]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_weechat.network.gnutls_ca_user]] *weechat.network.gnutls_ca_user*
** Beschreibung: pass:none[zusätzliche Datei(en) bei den Zertifizierungsstellen; mehrere Dateien müssen durch Doppelpunkte getrennt werden (jeder Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"/etc/ssl/certs/ca-certificates.crt"+`
** Standardwert: `+""+`
* [[option_weechat.network.gnutls_handshake_timeout]] *weechat.network.gnutls_handshake_timeout*
** Beschreibung: pass:none[Zeitüberschreitung für gnutls Handshake (in Sekunden)]
@@ -1297,10 +1303,10 @@
** Standardwert: `+".so,.dll"+`
* [[option_weechat.plugin.path]] *weechat.plugin.path*
** Beschreibung: pass:none[Suchpfad für Erweiterungen ("%h"' wird durch das WeeChat-Basisverzeichnis ersetzt, voreingestellt ist "~/.weechat")]
** Beschreibung: pass:none[Pfad für die Suche nach Erweiterungen (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"%h/plugins"+`
** Standardwert: `+"${weechat_data_dir}/plugins"+`
* [[option_weechat.plugin.save_config_on_unload]] *weechat.plugin.save_config_on_unload*
** Beschreibung: pass:none[speichert Konfigurationen, falls Erweiterungen beendet werden]
@@ -1308,14 +1314,44 @@
** Werte: on, off
** Standardwert: `+on+`
* [[option_weechat.signal.sighup]] *weechat.signal.sighup*
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${if:${info:weechat_headless}?/reload:/quit -yes}"+`
* [[option_weechat.signal.sigquit]] *weechat.signal.sigquit*
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"/quit -yes"+`
* [[option_weechat.signal.sigterm]] *weechat.signal.sigterm*
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"/quit -yes"+`
* [[option_weechat.signal.sigusr1]] *weechat.signal.sigusr1*
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[option_weechat.signal.sigusr2]] *weechat.signal.sigusr2*
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[option_weechat.startup.command_after_plugins]] *weechat.startup.command_after_plugins*
** Beschreibung: pass:none[Nach dem Start von WeeChat wird dieser Befehl aufgerufen. Dies geschieht nachdem die Erweiterungen geladen worden sind (mehrere Befehle sind durch ";" zu trennen) (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
** Beschreibung: pass:none[Befehl wird ausgeführt, wenn WeeChat gestartet wird, nachdem die Erweiterungen geladen wurden. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[option_weechat.startup.command_before_plugins]] *weechat.startup.command_before_plugins*
** Beschreibung: pass:none[Nach dem Start von WeeChat wird dieser Befehl aufgerufen. Dies geschieht bevor die Erweiterungen geladen werden (mehrere Befehle sind durch ";" zu trennen) (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
** Beschreibung: pass:none[Befehl wird ausgeführt, wenn WeeChat gestartet wird, bevor Erweiterungen geladen werden. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
@@ -1421,10 +1457,10 @@
** Standardwert: `+""+`
* [[option_logger.file.path]] *logger.file.path*
** Beschreibung: pass:none[Pfad für WeeChat Protokolldateien; "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat"); eine Datumsspezifikation ist zulässig (siehe: man strftime) (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
** Beschreibung: pass:none[Pfad für WeeChat-Protokolldateien; Datumsangaben sind zulässig (siehe man strftime) (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"%h/logs/"+`
** Standardwert: `+"${weechat_data_dir}/logs"+`
* [[option_logger.file.replacement_char]] *logger.file.replacement_char*
** Beschreibung: pass:none[Ersatzzeichen für Dateinamen, falls der Dateiname Sonderzeichen beinhaltet (z.B. das Trennzeichen bei Verzeichnissen "/")]
@@ -1687,7 +1723,7 @@
** Standardwert: `+"${color:default},"+`
* [[option_buflist.format.indent]] *buflist.format.indent*
** Beschreibung: pass:none[Zeichenkette die beim Einrücken von Channel und privaten Buffern angezeigt wird (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Beschreibung: pass:none[Zeichenkette die beim Einrücken von Kanal und privaten Buffern angezeigt wird (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+" "+`
@@ -1705,7 +1741,7 @@
** Standardwert: `+"${name}"+`
* [[option_buflist.format.nick_prefix]] *buflist.format.nick_prefix*
** Beschreibung: pass:none[Format des Nick-Präfix für einen Channel (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Beschreibung: pass:none[Format des Nick-Präfix für einen Kanal (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color_nick_prefix}${nick_prefix}"+`
@@ -1716,6 +1752,12 @@
** Werte: beliebige Zeichenkette
** Standardwert: `+"${color:green}${number}${if:${number_displayed}?.: }"+`
* [[option_buflist.format.tls_version]] *buflist.format.tls_version*
** Beschreibung: pass:none[Format für die TLS-Version für einen IRC-Serverbuffer (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+" ${color:default}(${if:${tls_version}==TLS1.3?${color:green}:${if:${tls_version}==TLS1.2?${color:yellow}:${color:red}}}${translate:${tls_version}}${color:default})"+`
* [[option_buflist.look.add_newline]] *buflist.look.add_newline*
** Beschreibung: pass:none[fügt einen Zeilenumbruch zwischen die einzelnen Buffer hinzu um pro Zeile einen Buffer anzuzeigen (empfohlen); falls deaktiviert muss ein Zeilenumbruch manuell hinzugefügt werden, "${\\n}", des Weiteren ist die Mausunterstützung nicht mehr gegeben]
** Typ: boolesch
@@ -1777,7 +1819,7 @@
** Standardwert: `+""+`
* [[option_buflist.look.sort]] *buflist.look.sort*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Feldern um die Buffer zu sortieren; jedes Feld ist entweder eine hdata Variable von Buffer ("var"), eine hdata Variable vom Typ IRC Server ("irc_server.var") oder eine hdata Variable vom Typ IRC Channel ("irc_channel.var"); wird das "-" Zeichen vor einem Feld angewendet, wird die Ausgabe umgekehrt, um bei einem Vergleich nicht zwischen Groß- und Kleinschreibung zu unterscheiden wird das Zeichen "~" verwendet; Beispiel: "-~short_name" sortiert die Buffer nach ihrem Kurznamen, wobei dies invertiert passiert und nicht zwischen Groß-oder Kleinschreibung unterschieden wird (Hinweis: der Inhalt ist evaluiert, nur der Pointer der bar_item kann genutzt werden, Beispiel "bar_item.name")]
** Beschreibung: pass:none[durch Kommata getrennte Liste von Feldern um die Buffer zu sortieren; jedes Feld ist entweder eine hdata Variable von Buffer ("var"), eine hdata Variable vom Typ IRC Server ("irc_server.var") oder eine hdata Variable vom Typ IRC Kanal ("irc_channel.var"); wird das "-" Zeichen vor einem Feld angewendet, wird die Ausgabe umgekehrt, um bei einem Vergleich nicht zwischen Groß- und Kleinschreibung zu unterscheiden wird das Zeichen "~" verwendet; Beispiel: "-~short_name" sortiert die Buffer nach ihren Kurznamen, wobei dies invertiert passiert und nicht zwischen Groß-oder Kleinschreibung unterschieden wird (Hinweis: der Inhalt ist evaluiert, vor dem Aufteilen in Felder, kann nur die Variable "bar_item" genutzt werden, um zwischen verschiedenen Buffer-Items zu unterscheiden, zum Beispiel "${bar_item.name}")]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"number,-active"+`
@@ -1797,12 +1839,56 @@
** Standardwert: `+on+`
* [[option_fifo.file.path]] *fifo.file.path*
** Beschreibung: pass:none[Pfad für eingehende Dateien: "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat"); WeeChat PID kann mit ${info:pid} genutzt werden (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
** Beschreibung: pass:none[Pfad für FIFO-Datei; WeeChat PID kann im Pfad mit ${info:pid} verwendet werden (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"%h/weechat_fifo"+`
** Standardwert: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
// 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[]
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
** Beschreibung: pass:none[Textfarbe für Status: "abgebrochen"]
@@ -1871,7 +1957,7 @@
** Standardwert: `+off+`
* [[option_xfer.file.auto_accept_nicks]] *xfer.file.auto_accept_nicks*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nicks deren Chat- und Transferanfragen automatisch akzeptiert werden. Format : "server.nick" (für einen speziellen Server) oder "nick" (global, für alle Server); Beispiel: "freenode.FlashCode,andrew"]
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nicks deren Chat- und Transferanfragen automatisch akzeptiert werden. Format : "server.nick" (für einen speziellen Server) oder "nick" (global, für alle Server); Beispiel: "libera.FlashCode,andrew"]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
@@ -1901,10 +1987,10 @@
** Standardwert: `+on+`
* [[option_xfer.file.download_path]] *xfer.file.download_path*
** Beschreibung: pass:none[Pfad für eingehende Dateien: "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat") (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
** Beschreibung: pass:none[Pfad zum Schreiben eingehender Dateien (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"%h/xfer"+`
** Standardwert: `+"${weechat_data_dir}/xfer"+`
* [[option_xfer.file.download_temporary_suffix]] *xfer.file.download_temporary_suffix*
** Beschreibung: pass:none[Dateiendung der temporären Datei, die während eines eingehenden Datei-Transfers genutzt wird und die gelöscht wird, sobald die Übertragung erfolgreich beendet wurde; wenn -leer-, dann wird keine temporäre Dateiendung während des Transfers genutzt]
@@ -1913,7 +1999,7 @@
** Standardwert: `+".part"+`
* [[option_xfer.file.upload_path]] *xfer.file.upload_path*
** Beschreibung: pass:none[Pfad für ausgehende Dateien (falls kein Pfad durch den Anwender angegeben wurde): "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat") (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
** Beschreibung: pass:none[Pfad zum Lesen von Dateien beim Senden (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"~"+`
@@ -1999,7 +2085,7 @@
** Standardwert: `+lightcyan+`
* [[option_irc.color.item_channel_modes]] *irc.color.item_channel_modes*
** Beschreibung: pass:none[Farbe der Channel-Modes (neben dem Channelnamen)]
** Beschreibung: pass:none[Farbe der Kanal-Modes (neben des Kanalnamens)]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+default+`
@@ -2022,6 +2108,24 @@
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+default+`
* [[option_irc.color.item_tls_version_deprecated]] *irc.color.item_tls_version_deprecated*
** Beschreibung: pass:none[Farbe die für eine unsicherere TLS-Version im Bar-Item "tls_version" genutzt wird]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+yellow+`
* [[option_irc.color.item_tls_version_insecure]] *irc.color.item_tls_version_insecure*
** Beschreibung: pass:none[Farbe die für eine unsichere TLS-Versionen im Bar-Item "tls_version" genutzt wirdFarbe für unsichere TLS-Versionen im Balkenelement "tls_version"]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+red+`
* [[option_irc.color.item_tls_version_ok]] *irc.color.item_tls_version_ok*
** Beschreibung: pass:none[Farbe die für eine sicherere TLS-Version im Bar-Item "tls_version" genutzt wird]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+green+`
* [[option_irc.color.message_account]] *irc.color.message_account*
** Beschreibung: pass:none[Textfarbe für "account" Nachrichten]
** Typ: Farbe
@@ -2035,7 +2139,7 @@
** Standardwert: `+brown+`
* [[option_irc.color.message_join]] *irc.color.message_join*
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Betreten eines Channels angezeigt werden soll]
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Betreten eines Kanals angezeigt werden soll]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+green+`
@@ -2047,7 +2151,7 @@
** Standardwert: `+red+`
* [[option_irc.color.message_quit]] *irc.color.message_quit*
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Verlassen/Beenden eines Channels angezeigt werden soll]
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Verlassen/Beenden eines Kanals angezeigt werden soll]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+red+`
@@ -2083,49 +2187,49 @@
** Standardwert: `+default+`
* [[option_irc.color.topic_current]] *irc.color.topic_current*
** Beschreibung: pass:none[Farbe in dem das aktuelle Thema des Channels dargestellt werden soll (wenn ein Channel betreten oder der Befehl /topic genutzt wird)]
** Beschreibung: pass:none[Farbe in dem das aktuelle Thema des Kanals dargestellt werden soll (wenn ein Kanal betreten oder der Befehl /topic genutzt wird)]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+default+`
* [[option_irc.color.topic_new]] *irc.color.topic_new*
** Beschreibung: pass:none[Farbe in dem das neue Thema des Channels dargestellt werden soll, falls das Thema des Channels geändert wurde]
** Beschreibung: pass:none[Farbe in dem das neue Thema des Kanals dargestellt werden soll, falls das Thema des Kanals geändert wurde]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+white+`
* [[option_irc.color.topic_old]] *irc.color.topic_old*
** Beschreibung: pass:none[Farbe in dem das alte Thema des Channels dargestellt werden soll, falls das Thema des Channels geändert wurde]
** Beschreibung: pass:none[Farbe in dem das alte Thema des Kanals dargestellt werden soll, falls das Thema des Kanals geändert wurde]
** Typ: Farbe
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
** Standardwert: `+default+`
* [[option_irc.look.buffer_open_before_autojoin]] *irc.look.buffer_open_before_autojoin*
** Beschreibung: pass:none[betritt man automatisch einen Channel-Buffer (mittels autojoin Option) wird dieser direkt geöffnet, ohne auf die JOIN Nachricht des Servers zu warten; dies ist sinnvoll um die Channels immer an der selben Position bei einem Neustart zu öffnen]
** Beschreibung: pass:none[betritt man automatisch einen Kanal-Buffer (mittels autojoin Option) wird dieser direkt geöffnet, ohne auf die JOIN Nachricht des Servers zu warten; dies ist sinnvoll um die Kanäle immer an der selben Position bei einem Neustart zu öffnen]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_irc.look.buffer_open_before_join]] *irc.look.buffer_open_before_join*
** Beschreibung: pass:none[betritt man mittels dem /join Befehl einen Channel wird der Buffer direkt geöffnet, ohne auf die JOIN Nachricht des Servers zu warten]
** Beschreibung: pass:none[betritt man mittels dem /join Befehl einen Kanal wird der Buffer direkt geöffnet, ohne auf die JOIN Nachricht des Servers zu warten]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_irc.look.buffer_switch_autojoin]] *irc.look.buffer_switch_autojoin*
** Beschreibung: pass:none[wechselt automatisch zum Channel-Buffer falls dieser automatisch betreten wurde (mittels der Serveroption "autojoin")]
** Beschreibung: pass:none[wechselt automatisch zum Kanal-Buffer falls dieser automatisch betreten wurde (mittels der Serveroption "autojoin")]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_irc.look.buffer_switch_join]] *irc.look.buffer_switch_join*
** Beschreibung: pass:none[wechselt automatisch zum Channel-Buffer falls dieser manuell betreten wurde (mittels dem /join Befehl)]
** Beschreibung: pass:none[wechselt automatisch zum Kanal-Buffer falls dieser manuell betreten wurde (mittels dem /join Befehl)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_irc.look.color_nicks_in_names]] *irc.look.color_nicks_in_names*
** Beschreibung: pass:none[nutzt in der Ausgabe von /names die jeweiligen Farbe des Nick (oder bei der Auflistung der Nicks wenn man einen Channel betritt)]
** Beschreibung: pass:none[nutzt in der Ausgabe von /names die jeweiligen Farbe des Nick (oder bei der Auflistung der Nicks wenn man einen Kanal betritt)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
@@ -2143,7 +2247,7 @@
** Standardwert: `+on+`
* [[option_irc.look.color_pv_nick_like_channel]] *irc.look.color_pv_nick_like_channel*
** Beschreibung: pass:none[nutzt die selbe Farbe für die Darstellung des Nicks im Channel wie auch im privaten Buffer]
** Beschreibung: pass:none[nutzt die selbe Farbe für die Darstellung des Nicks im Kanal wie auch im privaten Buffer]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
@@ -2154,8 +2258,14 @@
** Werte: beliebige Zeichenkette
** 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*
** 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 Channels)]
** 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
** Werte: off, local, channel
** Standardwert: `+local+`
@@ -2178,6 +2288,12 @@
** Werte: on, off
** 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*
** Beschreibung: pass:none[zeigt den Host innerhalb einer join Nachricht an]
** Typ: boolesch
@@ -2197,13 +2313,13 @@
** Standardwert: `+on+`
* [[option_irc.look.display_join_message]] *irc.look.display_join_message*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nachrichten die beim Betreten eines Channels angezeigt werden sollen: 324 = Channel-Modi, 329 = Erstellungsdatum des Channels, 332 = Topic, 333 = Nick/Datum für Topic, 353 = genutzte Namen im Channel, 366 = Anzahl der Nicks im Channel]
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nachrichten die beim Betreten eines Kanals angezeigt werden sollen: 324 = Channel-Modi, 329 = Erstellungsdatum des Kanals, 332 = Topic, 333 = Nick/Datum für Topic, 353 = genutzte Namen im Kanal, 366 = Anzahl der Nicks im Kanal]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"329,332,333,366"+`
* [[option_irc.look.display_old_topic]] *irc.look.display_old_topic*
** Beschreibung: pass:none[zeige das alte Thema an, falls das Thema des Channels geändert wurde]
** Beschreibung: pass:none[zeige das alte Thema an, falls das Thema des Kanals geändert wurde]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
@@ -2227,7 +2343,7 @@
** Standardwert: `+off+`
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Wörtern die in Channel-Buffern als Highlight erscheinen sollen (zwischen Groß- und Kleinschreibung wird nicht unterschieden. Um zwischen Groß- und Kleinschreibung zu unterscheiden muss zu Beginn "(?-i)" genutzt werden; des Weiteren können folgende Variablen genutzt werden: $nick, $channel und $server). Wird ein Buffer geöffnet, dann werden die angegeben Wörter dem Buffer-Merkmal "highlight_words" hinzugefügt. Dies bedeutet, dass diese Einstellung keinen direkten Einfluss auf schon geöffnete Buffer hat. Eine leere Zeichenkette deaktiviert ein Highlight für den Nick. Beispiel: "$nick", "(?-i)$nick"]
** Beschreibung: pass:none[durch Kommata getrennte Liste von Wörtern die im Kanal-Buffern als Highlight erscheinen sollen (zwischen Groß- und Kleinschreibung wird nicht unterschieden. Um zwischen Groß- und Kleinschreibung zu unterscheiden muss zu Beginn "(?-i)" genutzt werden; des Weiteren können folgende Variablen genutzt werden: $nick, $channel und $server). Wird ein Buffer geöffnet, dann werden die angegeben Wörter dem Buffer-Merkmal "highlight_words" hinzugefügt. Dies bedeutet, dass diese Einstellung keinen direkten Einfluss auf schon geöffnete Buffer hat. Eine leere Zeichenkette deaktiviert ein Highlight für den Nick. Beispiel: "$nick", "(?-i)$nick"]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"$nick"+`
@@ -2251,7 +2367,7 @@
** Standardwert: `+"irc_privmsg,irc_notice"+`
* [[option_irc.look.item_channel_modes_hide_args]] *irc.look.item_channel_modes_hide_args*
** Beschreibung: pass:none[unterdrückt die Ausgabe von Argumenten die die Channel-Modi betreffen, sofern der entsprechende Modus für den Channel gesetzt ist ("*" unterdrückt jedwede Ausgabe von Argumenten; wird kein Wert angegeben, dann werden alle Argumente angezeigt); Beispiele: "kf" unterdrückt die Argumente, falls "k" oder "f" für den Channel gesetzt sind]
** Beschreibung: pass:none[unterdrückt die Ausgabe von Argumenten die die Kanalmodi betreffen, sofern der entsprechende Modus für den Kanal gesetzt ist ("*" unterdrückt jedwede Ausgabe von Argumenten; wird kein Wert angegeben, dann werden alle Argumente angezeigt); Beispiele: "kf" unterdrückt die Argumente, falls "k" oder "f" für den Kanal gesetzt sind]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"k"+`
@@ -2275,7 +2391,7 @@
** Standardwert: `+on+`
* [[option_irc.look.join_auto_add_chantype]] *irc.look.join_auto_add_chantype*
** Beschreibung: pass:none[es wird dem Channelnamen automatisch der Channel-Typ vorangestellt, falls bei der Benutzung des /join Befehls der angegebene Channel-Name keinen gültigen Typ besitzt; Beispiel: "/join weechat" wird als: "/join #weechat" versendet]
** Beschreibung: pass:none[es wird dem Kanalnamen automatisch der Kanal-Typ vorangestellt, falls bei der Benutzung des /join Befehls der angegebene Kanalname keinen gültigen Typ besitzt; Beispiel: "/join weechat" wird als: "/join #weechat" versendet]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
@@ -2287,13 +2403,13 @@
** Standardwert: `+current+`
* [[option_irc.look.new_channel_position]] *irc.look.new_channel_position*
** Beschreibung: pass:none[ein neu geöffneter Channel wird auf eine Position gezwungen (none = standardmäßige Position (sollte der letzte Buffer in der Liste sein), next = aktueller Buffer + 1, near_server = nach dem letztem Channel/privaten Buffer des jeweiligen Servers)]
** Beschreibung: pass:none[ein neu geöffneter Kanal wird auf eine Position gezwungen (none = standardmäßige Position (sollte der letzte Buffer in der Liste sein), next = aktueller Buffer + 1, near_server = nach dem letztem Kanal/privaten Buffer des jeweiligen Servers)]
** Typ: integer
** Werte: none, next, near_server
** Standardwert: `+none+`
* [[option_irc.look.new_pv_position]] *irc.look.new_pv_position*
** Beschreibung: pass:none[ein neuer privater Buffer wird auf eine Position gezwungen (none = standardmäßige Position (sollte der letzte Buffer in der Liste sein), next = aktueller Buffer + 1, near_server = nach dem letztem Channel/privaten Buffer des jeweiligen Servers)]
** Beschreibung: pass:none[ein neuer privater Buffer wird auf eine Position gezwungen (none = standardmäßige Position (sollte der letzte Buffer in der Liste sein), next = aktueller Buffer + 1, near_server = nach dem letztem Kanal/privaten Buffer des jeweiligen Servers)]
** Typ: integer
** Werte: none, next, near_server
** Standardwert: `+none+`
@@ -2329,13 +2445,13 @@
** Standardwert: `+auto+`
* [[option_irc.look.notice_welcome_redirect]] *irc.look.notice_welcome_redirect*
** Beschreibung: pass:none[automatische Weiterleitung von Willkommen Nachrichten in den entsprechenden Channel-Buffer. Solche Nachrichten haben als Empfänger den entsprechenden Nick. Der Channelname wird aber der Nachricht vorangestellt. Eine solche ENTRYMSG Nachricht sieht auf dem Atheme IRC Server wie folgt aus: "[#channel\] Herzlich Willkommen in diesem Channel ..."]
** Beschreibung: pass:none[automatische Weiterleitung von Willkommen Nachrichten in den entsprechenden Kanal-Buffer. Solche Nachrichten haben als Empfänger den entsprechenden Nick. Der Kanalname wird aber der Nachricht vorangestellt. Eine solche ENTRYMSG Nachricht sieht auf dem Atheme IRC Server wie folgt aus: "[#channel\] Herzlich Willkommen in diesem Kanal ..."]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
* [[option_irc.look.notice_welcome_tags]] *irc.look.notice_welcome_tags*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Schlagwörtern für Willkommen-Nachrichten die in einen Channel umgeleitet werden. Zum Beispiel: "notify_private"]
** Beschreibung: pass:none[durch Kommata getrennte Liste von Schlagwörtern für Willkommen-Nachrichten die in einen Kanal umgeleitet werden. Zum Beispiel: "notify_private"]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
@@ -2353,7 +2469,7 @@
** Standardwert: `+"notify_message"+`
* [[option_irc.look.part_closes_buffer]] *irc.look.part_closes_buffer*
** Beschreibung: pass:none[schließt den Buffer wenn "/part" im Channel ausgeführt wird]
** Beschreibung: pass:none[schließt den Buffer wenn "/part" im Kanal ausgeführt wird]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
@@ -2383,7 +2499,7 @@
** Standardwert: `+merge_with_core+`
* [[option_irc.look.smart_filter]] *irc.look.smart_filter*
** Beschreibung: pass:none[filtert join/part/quit/nick Nachrichten für einen Nick der einige Minuten im Channel inaktiv gewesen ist (dazu muss ein Filter mit dem Schlagwort "irc_smart_filter" erstellt werden, siehe /help filter)]
** Beschreibung: pass:none[filtert join/part/quit/nick Nachrichten für einen Nick der einige Minuten im Kanal inaktiv gewesen ist (dazu muss ein Filter mit dem Schlagwort "irc_smart_filter" erstellt werden, siehe /help filter)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+on+`
@@ -2413,7 +2529,7 @@
** Standardwert: `+on+`
* [[option_irc.look.smart_filter_join_unmask]] *irc.look.smart_filter_join_unmask*
** Beschreibung: pass:none[Verzögerung (in Minuten) um Join Mitteilungen rückwirkend anzuzeigen, falls diese mittels "irc_smart_filter" unterdrückt wurden. Sollte ein Nick während der vorgegeben Zeit etwas im Channel schreiben, dann wird seine Join Mitteilung angezeigt. Dies bezieht sich auf Nachrichten, eine Notice, Änderungen am Topic oder falls der Nick gewechselt wird (0 = deaktiviert: join-Mitteilungen bleiben verborgen)]
** Beschreibung: pass:none[Verzögerung (in Minuten) um Join Mitteilungen rückwirkend anzuzeigen, falls diese mittels "irc_smart_filter" unterdrückt wurden. Sollte ein Nick während der vorgegeben Zeit etwas im Kanal schreiben, dann wird seine Join Mitteilung angezeigt. Dies bezieht sich auf Nachrichten, eine Notice, Änderungen am Topic oder falls der Nick gewechselt wird (0 = deaktiviert: join-Mitteilungen bleiben verborgen)]
** Typ: integer
** Werte: 0 .. 10080
** Standardwert: `+30+`
@@ -2443,7 +2559,19 @@
** Standardwert: `+off+`
* [[option_irc.look.topic_strip_colors]] *irc.look.topic_strip_colors*
** Beschreibung: pass:none[Farben werden im Channel-Thema entfernt (wird nur genutzt wenn der Buffer-Titel angezeigt wird)]
** Beschreibung: pass:none[Farben werden im Kanalthema entfernt (wird nur genutzt wenn der Buffer-Titel angezeigt wird)]
** Typ: boolesch
** Werte: on, 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+`
@@ -2563,7 +2691,7 @@
** Standardwert: `+off+`
* [[option_irc.server_default.autojoin]] *irc.server_default.autojoin*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Channels, die beim Verbinden mit dem Server automatisch betreten werden (nachdem die Einstellungen command + delay ausgeführt wurden). Channels die einen Schlüssel benötigen müssen in der Auflistung als erstes aufgeführt werden. Die Schlüssel, zu den jeweiligen Channels, werden nach den Channels aufgeführt (eine Trennung von Channels und Schlüssel erfolgt mittels einem Leerzeichen. Schlüssel werden untereinander auch durch Kommata voneinander getrennt) (Beispiel: "#channel1,#channel2,#channnel3 key1,key2", #channel1 und #channel2 sind durch jeweils einen Schlüssel, key1 und key2, geschützt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
** Beschreibung: pass:none[durch Kommata getrennte Liste von Kanälen, die beim Verbinden mit dem Server automatisch betreten werden (nachdem die Einstellungen command + delay ausgeführt wurden). Kanäle, die einen Schlüssel benötigen, müssen in der Auflistung als erstes aufgeführt werden. Die Schlüssel, zu den jeweiligen Kanälen, werden nach den Kanälen aufgeführt (eine Trennung von Kanälen und Schlüssel erfolgt mittels eines Leerzeichens. Schlüssel werden hintereinander auch durch Kommata voneinander getrennt) (Beispiel: "#channel1,#channel2,#channnel3 key1,key2", #channel1 und #channel2 sind durch jeweils einen Schlüssel, key1 und key2, geschützt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
@@ -2581,13 +2709,13 @@
** Standardwert: `+10+`
* [[option_irc.server_default.autorejoin]] *irc.server_default.autorejoin*
** Beschreibung: pass:none[Channels automatisch betreten, falls man rausgeworfen wurde. Es kann eine lokale Buffer Variable für einen Channel erstellt werden, diese lokale Variable wird vorrangig behandelt (Name der lokalen Variable: "autorejoin", Wert: "on" oder "off")]
** Beschreibung: pass:none[Kanäle automatisch betreten, falls man rausgeworfen wurde. Es kann eine lokale Buffer Variable für einen Kanal erstellt werden, diese lokale Variable wird vorrangig behandelt (Name der lokalen Variable: "autorejoin", Wert: "on" oder "off")]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_irc.server_default.autorejoin_delay]] *irc.server_default.autorejoin_delay*
** Beschreibung: pass:none[Wartezeit, in Sekunden, die verstreichen soll bevor man den Channel automatisch erneut betritt (nachdem man rausgeworfen wurde)]
** Beschreibung: pass:none[Wartezeit, in Sekunden, die verstreichen soll bevor man den Kanal automatisch erneut betritt (nachdem man rausgeworfen wurde)]
** Typ: integer
** Werte: 0 .. 86400
** Standardwert: `+30+`
@@ -2599,31 +2727,31 @@
** Standardwert: `+0+`
* [[option_irc.server_default.away_check_max_nicks]] *irc.server_default.away_check_max_nicks*
** Beschreibung: pass:none[Die Abwesenheit von Nutzern in Channels wird nicht überprüft wenn die Anzahl der Nutzer höher ist, als der angegebene Wert (0 = unbegrenzte Anzahl an Nutzern im Channel)]
** Beschreibung: pass:none[Die Abwesenheit von Nutzern in Kanälen wird nicht überprüft wenn die Anzahl der Nutzer höher ist, als der angegebene Wert (0 = unbegrenzte Anzahl an Nutzern im Kanal)]
** Typ: integer
** Werte: 0 .. 1000000
** Standardwert: `+25+`
* [[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
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
** Standardwert: `+"*"+`
* [[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 Channel-Namen (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 Channel-Namen 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)]
** Typ: integer
** Werte: message, channel, text
** Standardwert: `+message+`
* [[option_irc.server_default.command]] *irc.server_default.command*
** Beschreibung: pass:none[Befehl(e) welche nach einem Verbindungsaufbau zum Server und vor dem automatischem Betreten von Channels ausgeführt werden sollen (mehrere Befehle müssen durch ";" getrennt werden, soll ein Semikolon genutzt werden, schreibt man "\;", die Platzhalter $nick,$channel und $server werden durch den entsprechenden Wert ersetzt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
** Beschreibung: pass:none[Befehl(e) welche nach einem Verbindungsaufbau zum Server und vor dem automatischem Betreten von Kanälen ausgeführt werden sollen (mehrere Befehle können durch ";" getrennt werden, will man ein Semikolon nutzen, schreibt man "\;", die Platzhalter $nick,$channel und $server werden durch den entsprechenden Wert ersetzt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[option_irc.server_default.command_delay]] *irc.server_default.command_delay*
** Beschreibung: pass:none[Wartezeit (in Sekunden) nach Ausführung des Befehls und bevor Channels automatisch betreten werden (Beispiel: es wird eine gewisse Zeit gewartet, um eine Authentifizierung zu ermöglichen)]
** Beschreibung: pass:none[Wartezeit (in Sekunden) nach Ausführung des Befehls und bevor Kanäle automatisch betreten werden (Beispiel: es wird eine gewisse Zeit gewartet, um eine Authentifizierung zu ermöglichen)]
** Typ: integer
** Werte: 0 .. 3600
** Standardwert: `+0+`
@@ -2635,7 +2763,7 @@
** Standardwert: `+60+`
* [[option_irc.server_default.default_chantypes]] *irc.server_default.default_chantypes*
** Beschreibung: pass:none[Channel-Typ-Präfix, die verwendet werden sollen, wenn der Server diese nicht in Nachricht 005 sendet (Standard ist "#&")]
** Beschreibung: pass:none[Kanal-Typ-Präfix, die verwendet werden sollen, wenn der Server diese nicht in Nachricht 005 sendet (Standard ist "#&")]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"#&"+`
@@ -2653,7 +2781,7 @@
** Standardwert: `+""+`
* [[option_irc.server_default.msg_kick]] *irc.server_default.msg_kick*
** Beschreibung: pass:none[Standardmitteilung einer kick-Nachricht, für die Befehle "/kick" und "/kickban" (Hinweis: Inhalt wird evaluiert, siehe /help eval; Variablen die genutzt werden können: ${nick}, ${channel} und ${server})]
** Beschreibung: pass:none[Standardmitteilung einer kick-Nachricht, für die Befehle "/kick" und "/kickban" (Hinweis: Inhalt wird evaluiert, siehe /help eval; besondere Variablen ${nick} (eigener Nick), ${target} (betroffener Nick), ${channel} und ${server}, werden durch den entsprechenden Wert ersetzt)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
@@ -2710,18 +2838,18 @@
** 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
** Werte: continue, reconnect, disconnect
** Standardwert: `+continue+`
** Standardwert: `+reconnect+`
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
** Beschreibung: pass:none[Datei mit privatem ECC Schlüssel für den "ecdsa-nist256p-challenge" Mechanismus ("%h" wird durch das WeeChat Verzeichnis ersetzt, standardmäßig "~/.weechat")]
** 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)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[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, "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
** Werte: plain, 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+`
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
@@ -2755,7 +2883,7 @@
** Standardwert: `+off+`
* [[option_irc.server_default.ssl_cert]] *irc.server_default.ssl_cert*
** Beschreibung: pass:none[Datei für SSL Zertifikat um automatisch den eigenen Nick zu identifizieren ("%h" wird durch das WeeChat Verzeichnis ersetzt, Standardverzeichnis: "~/.weechat")]
** Beschreibung: pass:none[SSL-Zertifikatdatei zur automatischen Identifizierung Ihres Nick (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
@@ -2791,7 +2919,7 @@
** Standardwert: `+on+`
* [[option_irc.server_default.usermode]] *irc.server_default.usermode*
** Beschreibung: pass:none[Usermode(s) der direkt nach der Verbindung zum Server gesetzt werden soll. Dies geschieht bevor Befehle für den Server ausgeführt und bevor Channels automatisch betreten werden; Beispiele: "+R" (um den Modus "R" zu setzen), "+R-i" (setzt den Modus "R" und entfernt den Modus "i"); siehe /help mode um den Befehlssatz angezeigt zu bekommen (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
** Beschreibung: pass:none[Usermode(s) der direkt nach der Verbindung zum Server gesetzt werden soll. Dies geschieht bevor Befehle für den Server ausgeführt und bevor Kanäle automatisch betreten werden; Beispiele: "+R" (um den Modus "R" zu setzen), "+R-i" (setzt den Modus "R" und entfernt den Modus "i"); siehe /help mode um den Befehlssatz angezeigt zu bekommen (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
@@ -2859,13 +2987,13 @@
** Standardwert: `+white+`
* [[option_relay.irc.backlog_max_minutes]] *relay.irc.backlog_max_minutes*
** Beschreibung: pass:none[Zeitangabe, in Minuten, wie lange die Zeilen im Verlaufsspeicher für jeden IRC Channel gehalten werden sollen (0 = unbegrenzt, Beispiele: 1440 = einen Tag, 10080 = eine Woche, 43200 = einen Monat, 525600 = ein Jahr)]
** Beschreibung: pass:none[Zeitangabe, in Minuten, wie lange die Zeilen im Verlaufsspeicher für jeden IRC Kanal gehalten werden sollen (0 = unbegrenzt, Beispiele: 1440 = einen Tag, 10080 = eine Woche, 43200 = einen Monat, 525600 = ein Jahr)]
** Typ: integer
** Werte: 0 .. 2147483647
** Standardwert: `+0+`
* [[option_relay.irc.backlog_max_number]] *relay.irc.backlog_max_number*
** Beschreibung: pass:none[maximale Anzahl an Zeilen im Verlaufsspeicher. Dies gilt für jeden IRC Channel (0: keine Zeilenbegrenzung)]
** Beschreibung: pass:none[maximale Anzahl an Zeilen im Verlaufsspeicher. Dies gilt für jeden IRC Kanal (0: keine Zeilenbegrenzung)]
** Typ: integer
** Werte: 0 .. 2147483647
** Standardwert: `+1024+`
@@ -2883,7 +3011,7 @@
** Standardwert: `+off+`
* [[option_relay.irc.backlog_tags]] *relay.irc.backlog_tags*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nachrichten-Tags welche im Verlaufsspeicher von IRC Channels angezeigt werden (unterstützte Tags: "irc_join", "irc_part", "irc_quit", "irc_nick", "irc_privmsg"), "*" = alle unterstützten Tags]
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nachrichten-Tags welche im Verlaufsspeicher von IRC Kanälen angezeigt werden (unterstützte Tags: "irc_join", "irc_part", "irc_quit", "irc_nick", "irc_privmsg"), "*" = alle unterstützten Tags]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"irc_privmsg"+`
@@ -2979,10 +3107,10 @@
** Standardwert: `+100000+`
* [[option_relay.network.ssl_cert_key]] *relay.network.ssl_cert_key*
** Beschreibung: pass:none[Datei mit SSL Zertifikat und privatem Schlüssel (zur Nutzung von Clients mit SSL)]
** Beschreibung: pass:none[Datei mit SSL-Zertifikat und privatem Schlüssel (zum Bedienen von Clients mit SSL) (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"%h/ssl/relay.pem"+`
** Standardwert: `+"${weechat_config_dir}/ssl/relay.pem"+`
* [[option_relay.network.ssl_priorities]] *relay.network.ssl_priorities*
** Beschreibung: pass:none[Zeichenkette mit Prioritäten für gnutls (für die korrekte Syntax siehe gnutls Dokumentation unter Funktion gnutls_priority_init. Gebräuchliche Zeichenketten sind: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
@@ -3015,34 +3143,6 @@
** Standardwert: `+""+`
// 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[]
* [[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]
@@ -3057,19 +3157,33 @@
** Standardwert: `+on+`
// end::guile_options[]
// tag::tcl_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license*
// 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_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]
** Typ: boolesch
** Werte: on, off
** 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[]
* [[option_perl.look.check_license]] *perl.look.check_license*
@@ -3099,20 +3213,6 @@
** Standardwert: `+on+`
// 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[]
* [[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]
@@ -3127,6 +3227,34 @@
** Standardwert: `+on+`
// 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[]
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
** Beschreibung: pass:none[Farbe in der der Status "autoloaded" ("a") dargestellt werden soll]
@@ -3285,7 +3413,7 @@
** Standardwert: `+lightmagenta+`
* [[option_script.look.columns]] *script.look.columns*
** Beschreibung: pass:none[Format in welchem die Spalten im Skript Buffer dargestellt werden sollen. Es können folgende Spaltenbezeichnungen genutzt werden: %a=Autor, %d=Beschreibung, %D=hinzugefügt, %e=Dateierweiterung, %l=Programmiersprache, %L=Lizenz, %n=Skriptname, mit Dateierweiterung, %N=Skriptname, %r=Voraussetzungen, %s=Status, %t=Schlagwörter, %u=Datum der letzten Überarbeitung, %v=Version, %V=installierte Version, %w=min_WeeChat_Version, %W=max_WeeChat_Version)]
** Beschreibung: pass:none[Format in welchem die Spalten im Skript-Buffer dargestellt werden sollen. Es können folgende Spaltenbezeichnungen genutzt werden: %a=Autor, %d=Beschreibung, %D=Skript hinzugefügt, %e=Dateierweiterung, %l=Programmiersprache, %L=Lizenz, %n=Skriptname, mit Dateierweiterung, %N=Skriptname, %r=Voraussetzungen, %s=Status, %t=Schlagwörter, %u=Datum der letzten Überarbeitung, %v=Version, %V=installierte Version, %w=min_WeeChat_Version, %W=max_WeeChat_Version)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"%s %n %V %v %u | %d | %t"+`
@@ -3363,10 +3491,10 @@
** Standardwert: `+""+`
* [[option_script.scripts.path]] *script.scripts.path*
** Beschreibung: pass:none[lokales Cache-Verzeichnis für die Script-Erweiterung; "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat") (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
** Beschreibung: pass:none[lokales Cache-Verzeichnis für Skripten (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"%h/script"+`
** Standardwert: `+"${weechat_cache_dir}/script"+`
* [[option_script.scripts.url]] *script.scripts.url*
** Beschreibung: pass:none[URL für Datei mit der Auflistung aller Skripten]
+2 -3
View File
@@ -16,9 +16,8 @@
"--daemon").
*-d*, *--dir* _<path>_::
legt den Konfigurationsordner für WeeChat fest in welchem die Erweiterungen,
Skripten, Protokolldateien etc.pp. gesichert werden (Voreinstellung: "~/.weechat").
Sollte das Verzeichnis nicht existieren wird es beim Start angelegt.
Erzwingen Sie ein einzelnes Verzeichnis für alle WeeChat-Dateien (Verzeichnis wird erstellt, wenn es nicht gefunden wird).
Es können vier Verzeichnisse angegeben werden, die durch Doppelpunkte getrennt sind (folgende Reihenfolge: Konfiguration, Daten, Cache, Laufzeit).
Wird diese Option nicht genutzt, wird die Umgebungsvariable WEECHAT_HOME genutzt
(sofern diese vorhanden ist).
+29 -26
View File
@@ -9,7 +9,7 @@ indem man eine URL verwendet:
Um dem WeeChat IRC Support-Channel, mit dem Nick "mynick", beizutreten:
irc://mynick@chat.freenode.net/#weechat
irc://mynick@irc.libera.chat/#weechat
Um eine IPv6 Adresse zu nutzen, muss diese in eckige Klammern gesetzt werden:
@@ -17,79 +17,82 @@ Um eine IPv6 Adresse zu nutzen, muss diese in eckige Klammern gesetzt werden:
// end::plugin_options[]
// tag::files[]
$HOME/.weechat/weechat.conf::
$HOME/.config/weechat/weechat.conf::
WeeChats Konfigurationsdatei
$HOME/.weechat/plugins.conf::
$HOME/.config/weechat/plugins.conf::
Konfigurationsdatei für Erweiterungen
$HOME/.weechat/sec.conf::
$HOME/.config/weechat/sec.conf::
Konfigurationsdatei mit schutzwürdigen Daten
$HOME/.weechat/alias.conf::
$HOME/.config/weechat/alias.conf::
Konfigurationsdatei für _alias_ Erweiterung
$HOME/.weechat/buflist.conf::
$HOME/.config/weechat/buflist.conf::
Konfigurationsdatei für _buflist_ Erweiterung
$HOME/.weechat/charset.conf::
$HOME/.config/weechat/charset.conf::
Konfigurationsdatei für _charset_ Erweiterung
$HOME/.weechat/exec.conf::
$HOME/.config/weechat/exec.conf::
Konfigurationsdatei für _exec_ Erweiterung
$HOME/.weechat/fifo.conf::
$HOME/.config/weechat/fifo.conf::
Konfigurationsdatei für _fifo_ Erweiterung
$HOME/.weechat/fset.conf::
$HOME/.config/weechat/fset.conf::
Konfigurationsdatei für _fset_ Erweiterung
$HOME/.weechat/guile.conf::
$HOME/.config/weechat/guile.conf::
Konfigurationsdatei für _guile_ Erweiterung
$HOME/.weechat/irc.conf::
$HOME/.config/weechat/irc.conf::
Konfigurationsdatei für _irc_ Erweiterung
$HOME/.weechat/javascript.conf::
$HOME/.config/weechat/javascript.conf::
Konfigurationsdatei für _javascript_ Erweiterung
$HOME/.weechat/logger.conf::
$HOME/.config/weechat/logger.conf::
Konfigurationsdatei für _logger_ Erweiterung
$HOME/.weechat/lua.conf::
$HOME/.config/weechat/lua.conf::
Konfigurationsdatei für _lua_ Erweiterung
$HOME/.weechat/perl.conf::
$HOME/.config/weechat/perl.conf::
Konfigurationsdatei für _perl_ Erweiterung
$HOME/.weechat/php.conf::
$HOME/.config/weechat/php.conf::
Konfigurationsdatei für _php_ Erweiterung
$HOME/.weechat/python.conf::
$HOME/.config/weechat/python.conf::
Konfigurationsdatei für _python_ Erweiterung
$HOME/.weechat/relay.conf::
$HOME/.config/weechat/relay.conf::
Konfigurationsdatei für _relay_ Erweiterung
$HOME/.weechat/ruby.conf::
$HOME/.config/weechat/ruby.conf::
Konfigurationsdatei für _ruby_ Erweiterung
$HOME/.weechat/script.conf::
$HOME/.config/weechat/script.conf::
Konfigurationsdatei für _script_ Erweiterung
$HOME/.weechat/spell.conf::
$HOME/.config/weechat/spell.conf::
Konfigurationsdatei für _spell_ Erweiterung
$HOME/.weechat/tcl.conf::
$HOME/.config/weechat/tcl.conf::
Konfigurationsdatei für _tcl_ Erweiterung
$HOME/.weechat/trigger.conf::
$HOME/.config/weechat/trigger.conf::
Konfigurationsdatei für _trigger_ Erweiterung
$HOME/.weechat/xfer.conf::
$HOME/.config/weechat/typing.conf::
Konfigurationsdatei für _typing_ Erweiterung
$HOME/.config/weechat/xfer.conf::
Konfigurationsdatei für _xfer_ Erweiterung
$HOME/.weechat/weechat.log::
$HOME/.local/share/weechat/weechat.log::
WeeChat Protokolldatei
// end::files[]
+47 -35
View File
@@ -441,7 +441,7 @@ Natürlich ist das möglich:
[[timezone]]
=== Wie kann ich die Zeitzone ändern?
Es gibt in WeeChat keine Option um die Zeitzone einzustellen. Die
Es gibt in WeeChat keine Option um die Zeitzone einzustellen. Die
Umgebungsvariable `TZ` muss auf einen entsprechenden Wert eingestellt werden.
Am Besten machen Sie dies in Ihrer Shell-Initialisierungsdatei oder in der
Befehlszeile, bevor Sie WeeChat starten:
@@ -559,9 +559,10 @@ Der bracketed paste Modus kann wie folgt deaktiviert werden:
[[small_terminal]]
=== 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,
sodass nur Stunden und Sekunden angezeigt werden. Die Ausrichtung von Nachrichten sollte deaktiviert
und der Präfix/Suffix für Nicks gesetzt werden:
Die seitlichen Bars (buflist und nicklist) können deaktiviert werden, die Datums-
anzeige sollte nur Stunden und Minuten darstellen, die Ausrichtung von Nach-
richten sollte ebenfalls deaktiviert werden und es sollte der Nick mit einen
Präfix und Suffix vesehen werden:
----
/set buflist.look.enabled off
@@ -775,7 +776,8 @@ anstelle der kbd:[Shift]-Taste gedrückt werden).
Falls macOS genutzt wird,
muss mittels Homebrew `openssl` installiert werden.
Eine CA-Datei wird mittels Zertifikaten vom Systemschlüssel geladen.
Der Pfad zu den Zertifikaten kann in WeeChat eingestellt werden:
Ab WeeChat ≤ 3.1 können Sie den Pfad zu Systemzertifikaten festlegen:
----
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
@@ -817,10 +819,11 @@ Im folgenden Beispiel muss "xxx" durch den betroffenen Servernamen ersetzt werde
/set irc.server.xxx.ssl_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
----
[[irc_ssl_freenode]]
=== Wie kann ich eine SSL gesicherte Verbindung zum freenode Server herstellen?
[[irc_ssl_libera]]
=== Wie kann ich eine SSL gesicherte Verbindung zum libera Server herstellen?
Die Option _weechat.network.gnutls_ca_file_ sollte auf die Zertifikationsdatei zeigen:
Ab WeeChat ≤ 3.1 kann mit der Option _weechat.network.gnutls_ca_file_ eine Datei mit
Zertifikaten ausgewählt werden:
----
/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"
@@ -840,9 +843,9 @@ dass die Zertifikate in einer anderen Datei bereitgestellt werden:
Konfiguration des Servers, Port angeben, SSL aktivieren und Verbindung herstellen:
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/connect freenode
/set irc.server.libera.addresses "irc.libera.chat/6697"
/set irc.server.libera.ssl on
/connect libera
----
[[irc_oauth]]
@@ -869,8 +872,8 @@ ist es ratsam auf diese Funktion zurückzugreifen
und sich nicht mittels "nickserv" zu authentifizieren:
----
/set irc.server.freenode.sasl_username "meinNick"
/set irc.server.freenode.sasl_password "xxxxxxx"
/set irc.server.libera.sasl_username "meinNick"
/set irc.server.libera.sasl_password "xxxxxxx"
----
Unterstützt der Server keine SASL Authentifizierung,
@@ -878,7 +881,7 @@ kann eine Verzögerung aktiviert werden,
um sich vor dem Betreten von Channels bei "nickserv" zu identifizieren:
----
/set irc.server.freenode.command_delay 5
/set irc.server.libera.command_delay 5
----
[[edit_autojoin]]
@@ -886,10 +889,10 @@ um sich vor dem Betreten von Channels bei "nickserv" zu identifizieren:
Um die Liste der autojoin Channels zu editieren,
kann der Befehl `/set` genutzt werden.
In folgendem Beispiel wird der "freenode"-Server angepasst:
In folgendem Beispiel wird der "libera"-Server angepasst:
----
/set irc.server.freenode.autojoin [TAB]
/set irc.server.libera.autojoin [TAB]
----
[NOTE]
@@ -1089,16 +1092,16 @@ das Skript _buffer_autoset.py_ nutzen:
----
Um zum Beispiel Highlights (Hervorhebungen) von Nick "mike" im Channel
#weechat auf dem IRC Server freenode zu deaktivieren:
#weechat auf dem IRC Server libera zu deaktivieren:
----
/buffer_autoset add irc.freenode.#weechat hotlist_max_level_nicks_add mike:2
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
Um dies auf den kompletten freenode Server anzuwenden:
Um dies auf den kompletten libera Server anzuwenden:
----
/buffer_autoset add irc.freenode hotlist_max_level_nicks_add mike:2
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
Für weitere Beispiele, siehe `+/help buffer_autoset+`.
@@ -1136,16 +1139,18 @@ Die Skripten für WeeChat sind mit anderen IRC-Clients nicht kompatibel und vice
[[scripts_update]]
=== Der Befehl "/script update" liest die Skriptliste nicht ein, wie kann ich das beheben?
Als erstes sollte das Kapitel über SSL Verbindungen in dieser FAQ gelesen werden
(besonders über die Option _weechat.network.gnutls_ca_file_).
Als erstes sollte das Kapitel über SSL Verbindungen in dieser FAQ gelesen werden.
Wenn das nicht hilft, sollte die Skriptliste von Hand gelöscht werden. Dazu
folgenden Befehl in der Shell ausführen:
----
$ rm ~/.weechat/script/plugins.xml.gz
$ rm ~/.cache/weechat/script/plugins.xml.gz
----
[NOTE]
Ab WeeChat ≤ 3.1, sollte der Pfad: _~/.weechat/script/plugins.xml.gz_ lauten.
Danach sollte man noch einmal versuchen die Datei herunter zu laden:
----
@@ -1165,10 +1170,18 @@ Das bedeutet aber auch, dass die Skripten von Hand aktuell gehalten werden müss
* und in der Shell, mit installiertem curl:
----
$ cd ~/.weechat/script
$ cd ~/.cache/weechat/script
$ curl -O https://weechat.org/files/plugins.xml.gz
----
Wenn Sie macOS ausführen und die heruntergeladene Datei eine Größe von 0 Byte hat,
versuchen Sie, diese Variable in Ihrer Shell-Initialisierungsdatei oder auf der
Befehlszeile zu setzen. Bevor Sie WeeChat starten:
----
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
----
[[spell_dictionaries]]
=== Ich habe aspell Wörterbücher auf mein System installiert. Wie kann ich diese nutzen, ohne WeeChat neu starten zu müssen?
@@ -1217,9 +1230,8 @@ Damit WeeChat weniger Speicher benötigt, solltest Du folgende Tipps umsetzen:
Fifo, Logger, Perl, Python, Ruby, Lua, Tcl, Guile, JavaScript, PHP, Spell, Xfer
(wird für DCC benötigst), siehe `/help weechat.plugin.autoload`.
* installiere ausschließlich Skripten die Du auch nutzt
* falls man SSL *NICHT* nutzt, sollte kein Zertifikat geladen werden. In diesem
Fall, einfach den Eintrag in folgender Option leer lassen:
_weechat.network.gnutls_ca_file_
* Laden Sie keine Systemzertifikate, wenn SSL *NICHT* verwendet wird: Deaktivieren Sie diese Option:
_weechat.network.gnutls_ca_system_.
* der Wert der Option _weechat.history.max_buffer_lines_number_ sollte möglichst
niedrig eingestellt werden oder die Option _weechat.history.max_buffer_lines_minutes_
verwendet werden.
@@ -1278,18 +1290,17 @@ Beispiel:
----
/secure passphrase xxxxxxxxxx
/secure set freenode_username username
/secure set freenode_password xxxxxxxx
/set irc.server.freenode.sasl_username "${sec.data.freenode_username}"
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
/secure set libera_username username
/secure set libera_password xxxxxxxx
/set irc.server.libera.sasl_username "${sec.data.libera_username}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----
[[sharing_config_files]]
=== Ich möchte meine WeeChat Konfiguration teilen. Welche Dateien kann ich weitergeben und welche sollte ich behalten?
Es können alle _~/.weechat/*.conf_ Dateien geteilt werden.
Hiervon ausgenommen ist die Datei _sec.conf_,
die durch eine Passphrase verschlüsselte, sensible, Daten enthalten kann.
Sie können Ihre _*.conf_ Konfigurationsdateien teilen, mit Ausnahme der Datei _sec.conf_, die Ihre mit
Ihrer Passphrase verschlüsselten Kennwörter enthält.
Einige andere Dateien enthalten möglicherweise vertrauliche Informationen wie
Kennwörter (sofern sie nicht mit dem Befehl `/secure` in _sec.conf_ gesichert werden).
@@ -1328,7 +1339,8 @@ $ LD_PRELOAD=/lib/libpthread.so.0 gdb /Pfad/zu/weechat
[[supported_os]]
=== Auf welchen Plattformen läuft WeeChat und wird es noch auf andere Betriebssysteme portiert?
Eine vollständige Liste der Portierungen findest Du unter: https://weechat.org/download.
WeeChat läuft auf den meisten Linux/BSD-Distributionen, GNU/Hurd, Mac OS und
Windows (Cygwin und Windows Subsystem für Linux) einwandfrei.
Wir geben unser Bestes, WeeChat auf möglichst viele Plattformen zu portieren.
Deshalb ist jede Hilfe gerne gesehen, die es uns ermöglicht,
+25 -32
View File
@@ -123,13 +123,13 @@ Um eine Verbindung zu einem IRC Server herzustellen, wird der
`/server` Befehl verwendet. Beispiel:
----
/server add freenode chat.freenode.net
/server add libera irc.libera.chat/6697 -ssl
----
In diesem Beispiel ist `freenode` der interne, von Weechat genutzte Servername.
Mit dem Befehl `/connect freenode` kann jetzt die Verbindung
zu diesem Freenode-IRC-Server aufgebaut werden.
Alle für den Server relevanten Optionen sind unter _irc.server.freenode.xxx_ zu finden.
In diesem Beispiel ist `libera` der interne, von Weechat genutzte Servername.
Mit dem Befehl `/connect libera` kann jetzt die Verbindung
zu diesem Libera-IRC-Server aufgebaut werden.
Alle für den Server relevanten Optionen sind unter _irc.server.libera.xxx_ zu finden.
Verwende die Hilfe, falls noch Fragen offen sind:
@@ -149,31 +149,24 @@ definiert ist (nicht "null"). Andernfalls verwendet WeeChat die Vorgabewerte
(_irc.server_default.xxx_).
Beispielsweise werden Standard Nicks verwendet (basierend auf dem Un*x Login).
Sollen speziell für den freenode-Server andere Nicks genutzt werden,
Sollen speziell für den libera-Server andere Nicks genutzt werden,
können diese mit folgendem Befehl angepasst werden:
----
/set irc.server.freenode.nicks "meinNick,meinNick2,meinNick3,meinNick4,meinNick5"
/set irc.server.libera.nicks "meinNick,meinNick2,meinNick3,meinNick4,meinNick5"
----
Benutzernamen und wirklichen Namen (realname) anpassen:
----
/set irc.server.freenode.username "Mein Benutzername"
/set irc.server.freenode.realname "Mein wirklicher Name"
/set irc.server.libera.username "Mein Benutzername"
/set irc.server.libera.realname "Mein wirklicher Name"
----
Beim Start von WeeChat automatisch die Verbindung zu einem Server herstellen:
----
/set irc.server.freenode.autoconnect on
----
Beim Verbindungsaufbau SSL (sichere Verbindung) nutzen:
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/set irc.server.libera.autoconnect on
----
Wenn der Server SASL unterstützt,
@@ -182,8 +175,8 @@ Der Benutzer wird auf diese Weise gegenüber dem IRC-Server identifiziert,
noch bevor Server-Befehle übermittelt oder Cannels (Chaträume) betreten werden können.
----
/set irc.server.freenode.sasl_username "mynick"
/set irc.server.freenode.sasl_password "xxxxxxx"
/set irc.server.libera.sasl_username "mynick"
/set irc.server.libera.sasl_password "xxxxxxx"
----
Wenn der Server keine SASL-Authentifizierung unterstützt,
@@ -191,7 +184,7 @@ muss der Benutzer sich nach dem Verbindungsaufbau bei "nickserv" identifizieren.
Der dafür notwendige IRC-Server-Befehl kann auch automatisch übermittelt werden:
----
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
/set irc.server.libera.command "/msg nickserv identify xxxxxxx"
----
[NOTE]
@@ -207,19 +200,19 @@ Zuerst sollte die Passphrase gesetzt werden:
----
Jetzt wird das Passwort (`xxxxxx`)
für den Zugang zum Freenode-Server verschlüsselt
und mit dem Bezeichner `freenode_password` verknüpft:
für den Zugang zum Libera-Server verschlüsselt
und mit dem Bezeichner `libera_password` verknüpft:
----
/secure set freenode_password xxxxxx
/secure set libera_password xxxxxx
----
Das geschützte Freenode-Passwort kann nun in anderen Optionen genutzt werden.
Das geschützte Libera-Passwort kann nun in anderen Optionen genutzt werden.
Dazu wird anstelle des Klartext-Passwortes die Variable
`+${sec.data.freenode_password}+` eingesetzt:
`+${sec.data.libera_password}+` eingesetzt:
----
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----
Das automatische Betreten (auto-join) von Channels (Chaträume) direkt nach dem
@@ -227,7 +220,7 @@ Verbindungsaufbau zum IRC-Server kann durch den Eintrag der gewünschten Channel
in folgender Option erreicht werden:
----
/set irc.server.freenode.autojoin "#channel1,#channel2"
/set irc.server.libera.autojoin "#channel1,#channel2"
----
[TIP]
@@ -239,28 +232,28 @@ sein kann).
Mit dem Befehl `/unset` können Server-Optionen zurückgesetzt werden.
Ist eine Server-Option zurückgesetzt, _wirkt_ der entsprechende Vorgabewert
aus dem fall-back-Bereich `irc.server_default.xxx`. So nimmt, beispielsweise
nach dem Rücksetzen der Freenode-Nicks, diese Server-Option _automatisch_ den Wert
nach dem Rücksetzen der Libera-Nicks, diese Server-Option _automatisch_ den Wert
der entsprechenden fall-back-Option `irc.server_default.nicks` an:
----
/unset irc.server.freenode.nicks
/unset irc.server.libera.nicks
----
*Andere Optionen:*
Werte anderer Server-Optionen (`xxx`) können festgelegt werden mit:
----
/set irc.server.freenode.xxx Wert
/set irc.server.libera.xxx Wert
----
[[connect_to_irc_server]]
== Verbinden mit dem IRC-Server
----
/connect freenode
/connect libera
----
Mittels obigem Befehl stellt WeeChat eine Verbindung zum freenode Server
Mittels obigem Befehl stellt WeeChat eine Verbindung zum libera Server
her und betritt automatisch die Kanäle die in der "autojoin" Server-Option
aufgeführt sind.
+102 -72
View File
@@ -72,13 +72,18 @@ und die Dokumentation für die Funktion `+hook_process+` in link:weechat_plugin_
[[languages_specificities]]
=== Besonderheiten der einzelnen Skriptsprachen
[[language_python]]
==== Python
[[python_module]]
===== Module
WeeChat definiert ein `weechat` Module welches mittels `import weechat`
importiert werden muss.
importiert werden muss. +
Ein Python-Stub für die WeeChat-API ist im Repository verfügbar:
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi].
[[python_functions]]
===== Funktionen
Funktionen werden aufgerufen mittels `+weechat.xxx(arg1, arg2, ...)+`.
@@ -86,6 +91,7 @@ Funktionen werden aufgerufen mittels `+weechat.xxx(arg1, arg2, ...)+`.
Die Funktionen `+print*+` werden bei python durch `+prnt*+` ersetzt
(`print` war ein reserviertes Schlüsselwort unter Python 2).
[[python_strings]]
===== In Callbacks empfangene Zeichen
Mit Python 3 und WeeChat ≥ 2.7 sind die Zeichenketten in Callbacks
@@ -142,18 +148,23 @@ Mit Python 2, das mittlerweile veraltet ist und nicht mehr verwendet werden soll
Zeichenkette die an die Callbacks gesendet wird immer vom Typ `str` und kann deshalb bei den
oben genannten Fällen, ungültige UTF-8 Daten enthalten.
[[language_perl]]
==== Perl
[[perl_functions]]
===== Funktionen
Funktionen werden aufgerufen mittels `+weechat::xxx(arg1, arg2, ...);+`.
[[language_ruby]]
==== Ruby
[[ruby_init]]
===== Initialization
Es muss _weechat_init_ definiert werden und darin dann _register_ ausgeführt werden.
[[ruby_functions]]
===== Functions
Funktionen werden aufgerufen mittels `+Weechat.xxx(arg1, arg2, ...)+`.
@@ -178,20 +189,26 @@ Weechat.bar_new("name", "off", "0", "window", "", "left", "vertical", "vertical"
["default", "default", "default", "default"], "0", "items")
----
[[language_lua]]
==== Lua
[[lua_functions]]
===== Funktionen
Funktionen werden aufgerufen mittels `+weechat.xxx(arg1, arg2, ...)+`.
[[language_tcl]]
==== Tcl
[[tcl_functions]]
===== Funktionen
Funktionen werden aufgerufen mittels `+weechat::xxx arg1 arg2 ...+`.
[[language_guile]]
==== Guile (Scheme)
[[guile_functions]]
===== Funktionen
Funktionen werden aufgerufen mittels `+(weechat:xxx arg1 arg2 ...)+`.
@@ -204,14 +221,18 @@ für andere Funktionen), da die Anzahl der Argumente die zulässige Anzahl in Gu
* config_new_option
* bar_new
[[language_javascript]]
==== JavaScript
[[javascript_functions]]
===== Funktionen
Funktionen werden aufgerufen mittels `+weechat.xxx(arg1, arg2, ...);+`.
[[language_php]]
==== PHP
[[php_functions]]
===== Functions
Funktionen werden aufgerufen mittels `+weechat_xxx(arg1, arg2, ...);+`.
@@ -222,11 +243,11 @@ Funktionen werden aufgerufen mittels `+weechat_xxx(arg1, arg2, ...);+`.
Ein WeeChat-Skript muss sich bei WeeChat "registrieren". Dazu muss das Skript
zuerst die "register" Funktion ausführen.
Prototyp:
Prototyp (Python):
[source,python]
----
weechat.register(Name, Author, Version, Lizenz, Beschreibung, Shutdown_Funktion, Zeichensatz)
def register(name: str, author: str, version: str, license: str, description: str, shutdown_function: str, charset: str) -> int: ...
----
Argumente:
@@ -349,7 +370,7 @@ anlegen, der in das Verzeichnis _Skriptsprache/autoload_ zeigt.
Ein Beispiel für ein Python-Skript:
----
$ cd ~/.weechat/python/autoload
$ cd ~/.local/share/weechat/python/autoload
$ ln -s ../script.py
----
@@ -792,58 +813,58 @@ Liste der Konstanten in Skript API:
| Kategorie | Konstanten
| return codes |
WEECHAT_RC_OK +
WEECHAT_RC_OK_EAT +
WEECHAT_RC_ERROR
`WEECHAT_RC_OK` (integer) +
`WEECHAT_RC_OK_EAT` (integer) +
`WEECHAT_RC_ERROR` (integer)
| Konfigurationsdatei |
WEECHAT_CONFIG_READ_OK +
WEECHAT_CONFIG_READ_MEMORY_ERROR +
WEECHAT_CONFIG_READ_FILE_NOT_FOUND +
WEECHAT_CONFIG_WRITE_OK +
WEECHAT_CONFIG_WRITE_ERROR +
WEECHAT_CONFIG_WRITE_MEMORY_ERROR +
WEECHAT_CONFIG_OPTION_SET_OK_CHANGED +
WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE +
WEECHAT_CONFIG_OPTION_SET_ERROR +
WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND +
WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET +
WEECHAT_CONFIG_OPTION_UNSET_OK_RESET +
WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED +
WEECHAT_CONFIG_OPTION_UNSET_ERROR
`WEECHAT_CONFIG_READ_OK` (integer) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_WRITE_OK` (integer) +
`WEECHAT_CONFIG_WRITE_ERROR` (integer) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (integer) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
| sortierte Listen |
WEECHAT_LIST_POS_SORT +
WEECHAT_LIST_POS_BEGINNING +
WEECHAT_LIST_POS_END
`WEECHAT_LIST_POS_SORT` (string) +
`WEECHAT_LIST_POS_BEGINNING` (string) +
`WEECHAT_LIST_POS_END` (string)
| Hotlist |
WEECHAT_HOTLIST_LOW +
WEECHAT_HOTLIST_MESSAGE +
WEECHAT_HOTLIST_PRIVATE +
WEECHAT_HOTLIST_HIGHLIGHT
`WEECHAT_HOTLIST_LOW` (string) +
`WEECHAT_HOTLIST_MESSAGE` (string) +
`WEECHAT_HOTLIST_PRIVATE` (string) +
`WEECHAT_HOTLIST_HIGHLIGHT` (string)
| hook Prozesse |
WEECHAT_HOOK_PROCESS_RUNNING +
WEECHAT_HOOK_PROCESS_ERROR
`WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
`WEECHAT_HOOK_PROCESS_ERROR` (integer)
| hook Connect |
WEECHAT_HOOK_CONNECT_OK +
WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND +
WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND +
WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED +
WEECHAT_HOOK_CONNECT_PROXY_ERROR +
WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR +
WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR +
WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR +
WEECHAT_HOOK_CONNECT_MEMORY_ERROR +
WEECHAT_HOOK_CONNECT_TIMEOUT +
WEECHAT_HOOK_CONNECT_SOCKET_ERROR
`WEECHAT_HOOK_CONNECT_OK` (integer) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (integer) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
| hook Signal |
WEECHAT_HOOK_SIGNAL_STRING +
WEECHAT_HOOK_SIGNAL_INT +
WEECHAT_HOOK_SIGNAL_POINTER
`WEECHAT_HOOK_SIGNAL_STRING` (string) +
`WEECHAT_HOOK_SIGNAL_INT` (string) +
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|===
[[common_tasks]]
@@ -886,13 +907,13 @@ weechat.prnt("", "%sfalsche Anzahl an Argumenten" % weechat.prefix("error"))
weechat.prnt("", "Text %sGeld auf Blau" % weechat.color("yellow,blue"))
# sucht einen bestimmten Buffer und gibt dort einen Text aus
# (der Name des Buffers muss folgendes Format besitzen Erweiterung.Name, Beispiel: "irc.freenode.#weechat")
buffer = weechat.buffer_search("irc", "freenode.#weechat")
# (der Name des Buffers muss folgendes Format besitzen Erweiterung.Name, Beispiel: "irc.libera.#weechat")
buffer = weechat.buffer_search("irc", "libera.#weechat")
weechat.prnt(buffer, "Nachricht im #weechat Channel")
# die zweite Möglichkeit einen Buffer zu suchen (empfohlen!)
# (bitte beachten Sie dass der Server- und Channelname durch ein Komma zu trennen sind)
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
weechat.prnt(buffer, "Nachricht im #weechat Channel")
----
@@ -914,7 +935,7 @@ Beispiele:
weechat.command("", "/help")
# sendet den Text "Hallo" in den IRC Channel #weechat (die Teilnehmer des Channels sehen diese Nachricht)
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
weechat.command(buffer, "Hallo")
----
@@ -1221,7 +1242,7 @@ xxx,irc_raw_in2_yyy::
[source,python]
----
def join_cb(data, signal, signal_data):
# Das Signal lautet: "freenode,irc_in2_join"
# Das Signal lautet: "libera,irc_in2_join"
# signal_data enthält die IRC Nachricht, zum Beispiel: ":nick!user@host JOIN :#channel"
server = signal.split(",")[0]
msg = weechat.info_get_hashtable("irc_message_parse", {"message": signal_data})
@@ -1275,71 +1296,80 @@ Das Ergebnis ist eine Hashtabelle mit folgenden Schlüsseln
(das Beispiel bezieht sich auf folgende IRC Nachricht:
`+@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!+`):
[width="100%",cols="1,^2,10,8",options="header"]
[width="100%",cols="3,^2,10,7",options="header"]
|===
| Schlüssel | WeeChat version | Beschreibung | Beispiel
| Schlüssel | Seit WeeChat ^(1)^ | Beschreibung | Beispiel
| Tags | 0.4.0 |
| Tags | 0.4.0 |
Tags in der Nachricht (kann leer sein). |
`+time=2015-06-27T16:40:35.000Z+`
| message_without_tags | ≥ 0.4.0 |
| 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 |
Die IRC Nachricht ohne Tags (wie eine Nachricht ohne Tags). |
`+:nick!user@host PRIVMSG #weechat :hello!+`
| nick | 0.3.4 |
| nick | 0.3.4 |
der ursprüngliche Nick. |
`+nick+`
| user | 2.7 |
| user | 2.7 |
der ursprüngliche Benutzer. |
`+user+`
| host | 0.3.4 |
| host | 0.3.4 |
der ursprüngliche Host (beinhaltet den Nick). |
`+nick!user@host+`
| command | 0.3.4 |
| command | 0.3.4 |
der Befehl (_PRIVMSG_, _NOTICE_, ...). |
`+PRIVMSG+`
| channel | 0.3.4 |
| channel | 0.3.4 |
der Zielchanne.l|
`+#weechat+`
| arguments | 0.3.4 |
| arguments | 0.3.4 |
das Argument des Befehls (beinhaltet den Channel). |
`+#weechat :hello!+`
| text | 1.3 |
| text | 1.3 |
der Text (zum Beispiel eine Nachricht eines Users). |
`+hello!+`
| pos_command | 1.3 |
| pos_command | 1.3 |
Index von _command_ innerhalb einer Nachricht ("-1" falls _command_ nicht gefunden wird). |
`+47+`
| pos_arguments | 1.3 |
| pos_arguments | 1.3 |
Index von_arguments_ innerhalb einer Nachricht ("-1" falls _arguments_ nicht gefunden wird). |
`+55+`
| pos_channel | 1.3 |
| pos_channel | 1.3 |
Index von _channel_ innerhalb einer Nachricht ("-1" falls _channel_ nicht gefunden wird). |
`+55+`
| pos_text | 1.3 |
| pos_text | 1.3 |
Index von _text_ innerhalb einer Nachricht ("-1" falls _text_ nicht gefunden wird). |
`+65+`
|===
[NOTE]
^(1)^ Der Schlüssel wurde mit dieser WeeChat Version eingeführt.
[source,python]
----
dict = weechat.info_get_hashtable(
"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 == {
# "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!",
# "nick": "nick",
# "user": "user",
@@ -1348,10 +1378,10 @@ dict = weechat.info_get_hashtable(
# "channel": "#weechat",
# "arguments": "#weechat :hello!",
# "text": "hello!",
# "pos_command": "47",
# "pos_arguments": "55",
# "pos_channel": "55",
# "pos_text": "65",
# "pos_command": "65",
# "pos_arguments": "73",
# "pos_channel": "73",
# "pos_text": "83",
# }
----
@@ -1393,8 +1423,8 @@ weechat.prnt("", "Version %s" % weechat.info_get("version", ""))
[source,python]
----
# WeeChat Hauptverzeichnis, zum Beispiel: "/home/xxxx/.weechat"
weechat.prnt("", "WeeChat Hauptverzeichnis: %s" % weechat.info_get("weechat_dir", ""))
# Zum Beispiel, das WeeChat-Konfigurationsverzeichnis: "/home/user/.config/weechat"
weechat.prnt("", "WeeChat config dir: %s" % weechat.info_get("weechat_config_dir", ""))
# Inaktivität der Tastatur
weechat.prnt("", "Tastatur ist seit %s Sekunden nicht mehr betätigt worden" % weechat.info_get("inactivity", ""))
-148
View File
@@ -1,148 +0,0 @@
= WeeChat Anleitung für Testpersonen
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: de
:toc: left
:toc-title: Inhaltsverzeichnis
:sectnums:
:docinfo1:
Übersetzer:
* Juergen Descher <jhdl@gmx.net>, 2009
* Nils Görs <weechatter@arcor.de>, 2009-2016
[[purpose]]
== Intention
Viele dankbare Anwender fragen uns wie sie bei der Entwicklung von WeeChat
helfen können. Der einfachste (aber auch der kniffligste) Weg uns zu helfen ist:
testen!
Testen ist ein sehr wichtiger Teil der Programmentwicklung und sollte daher
nicht unterbewertet werden. Wenn neue Funktionen implementiert wurden dann
müssen diese getestet werden. Für manche Funktionen gibt es sehr viele
verschiedene Problemstellungen, oder diese sind äußerst Umfangreich. Dadurch
können die Entwickler nicht jede einzelne Variante ausprobieren.
Ein Beispiel: Eine berüchtigte Zeichensatz-Erweiterung wurde in WeeChat 0.2.2
eingeführt. Keiner von uns, Entwickler, Mithelfende und Tester, nutzten Channels
in denen länderspezifische Zeichen im eigenen Namen Verwendung fanden. Somit wurde
die Version 0.2.2 freigegeben und wir bekamen daraufhin eine Flut von Beschwerden
durch russischen User, bei denen der Fehler sichtbar war. Hätten wir mehr Tester,
dann sollte so etwas nicht mehr passieren.
Eine stabile Version von WeeChat zu testen bringt uns leider nicht weiter da die
Entwickler in der Zwischenzeit neue Funktionen implementiert haben und vermutlich
alte Fehler schon behoben wurden.
[[prepare_system]]
== Bereite Dein System vor
Es wäre uns schon sehr damit geholfen wenn Du Linux _core_ Dateien aktivieren würdest.
Falls WeeChat abstürzen sollte wird eine Datei Namens _core_ erzeugt. Diese Datei
beinhaltet viele nützliche Debug-Informationen um das genaue Problem in WeeChat
zu lokalisieren.
Falls Du die _bash_ als shell benutzt, dann ergänze Deine _~/.bashrc_ durch folgende
Zeile:
----
ulimit -c unlimited
----
[[download]]
== Besorge Dir die Entwickler-Version
aktueller Programmcode (mit den aktuellen Fehlern und Funktionen) ist im GIT Repository
gespeichert.
Du könntest Dich dazu entscheiden es manuell zu bauen (empfohlen):
* die GIT Version kann parallel zur stabilen Version kompiliert und installiert
werden.
* Du benötigst keine Root-Rechte, und opfern brauchst Du Deine stabile Version
von WeeChat auch nicht.
[[get_sources]]
=== Beschaffe und baue die Quellen
Erstelle zuerst einen neuen Ordner, z.B. _weechat-git_:
----
$ mkdir ~/weechat-git
$ cd ~/weechat-git
----
Falls Du git installiert hast, clone das git Repository (empfohlen):
----
$ git clone https://github.com/weechat/weechat.git
$ cd weechat
----
[NOTE]
Um auf den aktuellen Stand zu kommen verwendest Du z.B. `git pull` in
diesem Ordner.
Ansonsten kannst Du das _Entwickler-Paket_ herunterladen und entpacken:
----
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
$ tar xvjf weechat-devel.tar.bz2
$ cd weechat-devel
----
Um die Quellen zu übersetzen, wird CMake empfohlen:
----
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
$ make
$ make install
----
Falls Du CMake nicht hast, ist es auch möglich die autotools zu nutzen:
----
$ ./autogen.sh
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
$ make
$ make install
----
[[install_binary_package]]
=== Installieren des Programm-Paketes
Abhängig Deiner Linux Distribution:
* Debian: https://weechat.org/download/debian
* Gentoo: https://weechat.org/download
* ArchLinux: PKGBUILD von https://aur.archlinux.org/
* andere: Wissen wir nicht! Eheh.
[[run]]
== WeeChat starten
Die Befehlszeile lautet:
----
$ ~/weechat-git/bin/weechat
----
Immer noch munter? Dann solltest Du jetzt das bekannte Interface sehen und nun
prahle vor Anderen, dass Du die neueste WeeChat-Version verwendest :)
Solltest Du nun ein merkwürdiges Verhalten bemerken (es können diverse Probleme
oder Abstürze auftreten oder einfach Dein Bier überkochen) zögere nicht, komme
in den Channel _#weechat_ auf _chat.freenode.net_ (A.d.Ü.: englischsprachig) und
berichte uns darüber.
Auch falls alles korrekt funktionieren sollte gib uns trotzdem Bescheid, wir
brauchen Deine Rückmeldung!
+2572 -1981
View File
File diff suppressed because it is too large Load Diff
+2
View File
@@ -81,6 +81,7 @@ LOCALE_LIST = (
'it_IT',
'ja_JP',
'pl_PL',
'sr_RS',
)
# all commands/options/.. of following plugins will produce a file
@@ -114,6 +115,7 @@ PLUGIN_LIST = {
'spell': 'o',
'trigger': 'o',
'xfer': 'co',
'typing': 'o',
}
# options to ignore
+211 -3
View File
@@ -3,36 +3,244 @@
Copyright (C) 2016-2021 Sébastien Helleu <flashcode@flashtux.org>
-->
<style>
#header,#content,#footnotes,#footer {
/* themes/colors */
@media (prefers-color-scheme: dark) {
/* dark theme */
:root {
--body-bg-color: #1a1a1a;
--body-color: #ddd;
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
--link-color: #8aceff;
--table-thead-tfoot: #252525;
--th-color: #fff;
--toc-bg-color: #252525;
--color-header1: #ddd;
--color-header2: #da8975;
--header-details-color: #aaa;
--border: 1px solid #444;
--code-bg-color: #252525;
--pre-bg-color: #202020;
--pre-code-bg-color: #202020;
--keyseq-color: #777;
--kbd-bg-color: #252525;
--kbd-border: 1px solid #333;
--kbd-box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 .1em #2c2c2c;
--icon-note-color: #4d7cc6;
--icon-tip-color: #fff;
--icon-warning-color: #f39c12;
--icon-caution-color: #bf3400;
--icon-important-color: #f44336;
--mark-bg-color: #007;
}
}
@media (not (prefers-color-scheme: dark)), (prefers-color-scheme: light) {
/* light theme */
:root {
--body-bg-color: ##fff;
--body-color: #353535;
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
--link-color: #1d4b8f;
--table-thead-tfoot: #f7f8f7;
--th-color: #000;
--toc-bg-color: #f8f8f7;
--color-header1: #000;
--color-header2: #ba3925;
--header-details-color: #797979;
--border: 1px solid #dddddf;
--code-bg-color: #f7f7f8;
--keyseq-color: #333c;
--pre-bg-color: #f7f7f8;
--pre-code-bg-color: #202020;
--kbd-bg-color: #f7f7f7;
--kbd-border: 1px solid #ccc;
--kbd-box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 .1em #fff;
--icon-note-color: #19407c;
--icon-tip-color: #111;
--icon-warning-color: #bf6900;
--icon-caution-color: #ff0000;
--icon-important-color: #bf0000;
--mark-bg-color: #9df;
}
}
body {
background-color: var(--body-bg-color);
color: var(--body-color);
font-family: var(--body-font);
}
h1 {
color: var(--color-header1) !important;
}
h2, h3, h4, h5, h6 {
color: var(--color-header2) !important;
}
h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 {
font-family: var(--body-font);
}
a:link, a:visited, #header .details span.email a {
color: var(--link-color);
}
table thead, table tfoot {
background: var(--table-thead-tfoot) !important;
}
table.tableblock, th.tableblock, td.tableblock {
border: var(--border);
}
th {
color: var(--th-color) !important;
}
td {
background-color: var(--body-bg-color);
color: var(--body-color) !important;
}
#toc.toc2 {
background-color: var(--toc-bg-color);
border-right: none;
}
#toc.toc2 > ul {
font-size: .9em;
}
@media screen and (max-width:767px) {
#toc.toc2 {
background-color: var(--body-bg-color);
}
}
p, .paragraph.lead > p, #preamble > .sectionbody > [class="paragraph"]:first-of-type p, #toctitle, .title {
color: var(--body-color);
}
#header .details {
border-bottom: var(--border);
color: var(--header-details-color);
}
code, .prettyprint {
background-color: var(--code-bg-color) !important;
color: var(--body-color);
}
pre > code {
background-color: var(--pre-code-bg-color) !important;
}
.keyseq {
color: var(--keyseq-color);
}
kbd {
background-color: var(--kbd-bg-color) !important;
border: var(--kbd-border) !important;
box-shadow: var(--kbd-box-shadow);
color: var(--body-color);
}
.literalblock pre, .listingblock > .content > pre:not(.highlight), .listingblock > .content > pre[class="highlight"], .listingblock > .content > pre[class^="highlight "] {
background-color: var(--pre-bg-color);
color: var(--body-color);
}
.sect1 + .sect1 {
border-top: var(--border);
}
.admonitionblock td.icon .icon-note::before {
color: var(--icon-note-color);
}
.admonitionblock td.icon .icon-tip::before {
color: var(--icon-tip-color);
}
.admonitionblock td.icon .icon-warning::before {
color: var(--icon-warning-color);
}
.admonitionblock td.icon .icon-caution::before {
color: var(--icon-caution-color);
}
.admonitionblock td.icon .icon-important::before {
color: var(--icon-important-color);
}
.admonitionblock > table td.content {
border-left: var(--border);
}
mark {
background-color: var(--mark-bg-color);
color: var(--body-color);
}
/* syntax highlighting tuning */
pre.pygments .tok-cp {
color: #ed4848;
}
pre.pygments .tok-nc, pre.pygments .tok-nf {
color: #649fef;
}
pre.pygments .tok-gu, pre.pygments .tok-nc, pre.pygments .tok-nn {
text-decoration: none;
}
/* asciidoctor styles tuning */
#header, #content, #footnotes, #footer {
max-width: none;
padding-left: 3em;
padding-right: 3em;
}
#header #revnumber {
text-transform: none;
}
h1,h2,h3,h4,h5 {
h1, h2, h3, h4, h5 {
font-weight: bold;
}
.literalblock pre {
font-family: monospace, 'Courier New', Courier;
line-height: normal;
}
kbd {
font-size: .9em;
}
.keyseq {
margin-left: .2em;
margin-right: .2em;
}
.tableblock kbd {
margin-top: .2em;
margin-bottom: .2em;
}
.hex {
padding: 0 .2em;
border: 1px solid #88b;
border: var(--border);
margin: 0 .2em;
font-family: monospace;
font-size: 1.1em;
}
</style>
-13
View File
@@ -122,19 +122,6 @@ if(ENABLE_DOC)
add_custom_target(doc-quickstart-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# tester's guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_tester.en.html"
)
add_custom_target(doc-tester-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# relay protocol
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.en.html
-6
View File
@@ -29,7 +29,6 @@ EXTRA_DIST = CMakeLists.txt \
weechat_scripting.en.adoc \
weechat_faq.en.adoc \
weechat_quickstart.en.adoc \
weechat_tester.en.adoc \
weechat_relay_protocol.en.adoc \
weechat_dev.en.adoc \
includes/autogen_api_completions.en.adoc \
@@ -58,7 +57,6 @@ if DOC
weechat_scripting.en.html \
weechat_faq.en.html \
weechat_quickstart.en.html \
weechat_tester.en.html \
weechat_relay_protocol.en.html \
weechat_dev.en.html
doc_install = install-doc
@@ -92,10 +90,6 @@ weechat_faq.en.html: weechat_faq.en.adoc $(abs_top_srcdir)/doc/docinfo.html
weechat_quickstart.en.html: weechat_quickstart.en.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.en.html $(abs_top_srcdir)/doc/en/weechat_quickstart.en.adoc
# tester's guide
weechat_tester.en.html: weechat_tester.en.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.en.html $(abs_top_srcdir)/doc/en/weechat_tester.en.adoc
# relay protocol
weechat_relay_protocol.en.html: weechat_relay_protocol.en.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_relay_protocol.en.html $(abs_top_srcdir)/doc/en/weechat_relay_protocol.en.adoc
+12
View File
@@ -79,6 +79,8 @@ _last_nick_speaking_time_   (pointer, hdata: "irc_channel_speaking") +
_modelists_   (pointer, hdata: "irc_modelist") +
_last_modelist_   (pointer, hdata: "irc_modelist") +
_join_smart_filtered_   (hashtable) +
_typing_state_   (integer) +
_typing_status_sent_   (time) +
_buffer_   (pointer, hdata: "buffer") +
_buffer_as_string_   (string) +
_prev_channel_   (pointer, hdata: "irc_channel") +
@@ -233,6 +235,12 @@ _hook_connect_   (pointer, hdata: "hook") +
_hook_fd_   (pointer, hdata: "hook") +
_hook_timer_connection_   (pointer, hdata: "hook") +
_hook_timer_sasl_   (pointer, hdata: "hook") +
_sasl_scram_client_first_   (string) +
_sasl_scram_salted_pwd_   (other) +
_sasl_scram_salted_pwd_size_   (integer) +
_sasl_scram_auth_message_   (string) +
_sasl_temp_username_   (string) +
_sasl_temp_password_   (string) +
_is_connected_   (integer) +
_ssl_connected_   (integer) +
_disconnected_   (integer) +
@@ -263,6 +271,10 @@ _chantypes_   (string) +
_chanmodes_   (string) +
_monitor_   (integer) +
_monitor_time_   (time) +
_clienttagdeny_   (string) +
_clienttagdeny_count_   (integer) +
_clienttagdeny_array_   (string, array_size: "clienttagdeny_count") +
_typing_allowed_   (integer) +
_reconnect_delay_   (integer) +
_reconnect_start_   (time) +
_command_time_   (time) +
+13 -3
View File
@@ -60,7 +60,7 @@
| php | php_version | version of the interpreter used | -
| python | python2_bin | path to python 2.x interpreter | -
| python | python2_bin | path to Python 2.x interpreter (*deprecated* since version 2.6, scripts must use Python 3 only) | -
| python | python_eval | evaluation of source code | source code to execute
@@ -76,7 +76,7 @@
| ruby | ruby_version | version of the interpreter used | -
| spell | spell_dict | comma-separated list of dictionaries used in buffer | buffer pointer ("0x12345678") or buffer full name ("irc.freenode.#weechat")
| spell | spell_dict | comma-separated list of dictionaries used in buffer | buffer pointer ("0x12345678") or buffer full name ("irc.libera.#weechat")
| tcl | tcl_eval | evaluation of source code | source code to execute
@@ -134,7 +134,15 @@
| weechat | version_number | WeeChat version (as number) | -
| weechat | weechat_dir | WeeChat directory | -
| weechat | weechat_cache_dir | WeeChat cache directory | -
| weechat | weechat_config_dir | WeeChat config directory | -
| weechat | weechat_daemon | 1 if WeeChat is running in daemon mode (headless, in background) | -
| weechat | weechat_data_dir | WeeChat data directory | -
| weechat | weechat_dir | WeeChat directory (*deprecated* since version 3.2, replaced by "weechat_config_dir", "weechat_data_dir", "weechat_cache_dir" and "weechat_runtime_dir") | -
| weechat | weechat_headless | 1 if WeeChat is running headless | -
@@ -142,6 +150,8 @@
| weechat | weechat_localedir | WeeChat "locale" directory | -
| weechat | weechat_runtime_dir | WeeChat runtime directory | -
| weechat | weechat_sharedir | WeeChat "share" directory | -
| weechat | weechat_site | WeeChat site | -
@@ -8,7 +8,7 @@
|===
| 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), "param1" ... "paramN": parsed command parameters, "num_params": number of parsed command parameters, "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
@@ -4,18 +4,26 @@
//
// tag::plugins_priority[]
. charset (15000)
. logger (14000)
. exec (13000)
. trigger (12000)
. spell (11000)
. alias (10000)
. buflist (9000)
. fifo (8000)
. 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, 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)
. fset (2000)
// end::plugins_priority[]
+180 -92
View File
@@ -17,10 +17,11 @@ target: server name
* `+allchan+`: execute a command on all channels of all connected servers
----
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command>
[-current] -include=<channel>[,<channel>...] <command>
/allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
[-current] [-parted] -include=<channel>[,<channel>...] <command>
-current: execute command for channels of current server only
-parted: execute on parted channels only
-exclude: exclude 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 '/')
@@ -41,6 +42,8 @@ Examples:
/allchan -exclude=#weechat,#linux* hello
say 'hello' on all channels beginning with #linux:
/allchan -include=#linux* hello
close all buffers with parted channels:
/allchan -parted /close
----
[[command_irc_allpv]]
@@ -100,6 +103,26 @@ Examples:
/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]]
* `+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.
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).
@@ -161,7 +184,7 @@ Examples:
To disconnect from a server or stop any connection attempt, use command /disconnect.
Examples:
/connect freenode
/connect libera
/connect irc.oftc.net/6667
/connect irc6.oftc.net/6667 -ipv6
/connect irc6.oftc.net/6697 -ipv6 -ssl
@@ -301,10 +324,10 @@ Note: the regular expression can start with "(?-i)" to become case sensitive.
Examples:
ignore nick "toto" everywhere:
/ignore add toto
ignore host "toto@domain.com" on freenode server:
/ignore add toto@domain.com freenode
ignore host "toto*@*.domain.com" on freenode/#weechat:
/ignore add toto*@*.domain.com freenode #weechat
ignore host "toto@domain.com" on libera server:
/ignore add toto@domain.com libera
ignore host "toto*@*.domain.com" on libera/#weechat:
/ignore add toto*@*.domain.com libera #weechat
----
[[command_irc_info]]
@@ -349,7 +372,7 @@ nick: nick
Examples:
/join #weechat
/join #protectedchan,#weechat key
/join -server freenode #weechat
/join -server libera #weechat
/join -noswitch #weechat
----
@@ -361,7 +384,7 @@ Examples:
channel: channel name
nick: nick
reason: reason (special variables $nick, $channel and $server are replaced by their value)
reason: reason (evaluated, see /help eval; special variables ${nick} (self nick), ${target} (target nick), ${channel} and ${server} are replaced by their values)
----
[[command_irc_kickban]]
@@ -372,7 +395,7 @@ channel: channel name
channel: channel name
nick: nick
reason: reason (special variables $nick, $channel and $server are replaced by their value)
reason: reason (evaluated, see /help eval; special variables ${nick} (self nick), ${target} (target nick), ${channel} and ${server} are replaced by their values)
It is possible to kick/ban with a mask, nick will be extracted from mask and replaced by "*".
@@ -402,7 +425,7 @@ server_mask: list of servers must match this mask
----
[[command_irc_list]]
* `+list+`: list channels and their topic
* `+list+`: list channels and their topics
----
/list [-server <server>] [-re <regex>] [<channel>[,<channel>...]] [<target>]
@@ -552,10 +575,10 @@ Without argument, this command displays notifications for current server (or all
Examples:
notify when "toto" joins/quits current server:
/notify add toto
notify when "toto" joins/quits freenode server:
/notify add toto freenode
notify when "toto" is away or back on freenode server:
/notify add toto freenode -away
notify when "toto" joins/quits libera server:
/notify add toto libera
notify when "toto" is away or back on libera server:
/notify add toto libera -away
----
[[command_irc_op]]
@@ -673,7 +696,7 @@ option: extra option, for some servers
channel: channel name
nick: nick
reason: reason (special variables $nick, $channel and $server are replaced by their value)
reason: reason (special variables $nick, $channel and $server are replaced by their values)
----
[[command_irc_restart]]
@@ -775,16 +798,16 @@ nooption: set boolean option to 'off' (for example: -nossl)
Examples:
/server listfull
/server add freenode chat.freenode.net
/server add freenode chat.freenode.net/6697 -ssl -autoconnect
/server add libera irc.libera.chat
/server add libera irc.libera.chat/6697 -ssl -autoconnect
/server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667
/server copy freenode freenode-test
/server rename freenode-test freenode2
/server reorder freenode2 freenode
/server del freenode
/server copy libera libera-test
/server rename libera-test libera2
/server reorder libera2 libera
/server del libera
/server deloutq
/server raw
/server raw s:freenode
/server raw s:libera
/server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo
----
@@ -808,6 +831,15 @@ mask: list only services matching this mask
type: list only services of this type
----
[[command_irc_setname]]
* `+setname+`: set real name
----
/setname <realname>
realname: new real name
----
[[command_irc_squery]]
* `+squery+`: deliver a message to a service
@@ -1271,7 +1303,7 @@ Examples:
/debug list
set <plugin> <level>
dump [<plugin>]
buffer|color|infolists|memory|tags|term|windows
buffer|color|infolists|libs|certs|memory|tags|term|windows
mouse|cursor [verbose]
hdata [free]
time <command>
@@ -1289,6 +1321,7 @@ Examples:
hooks: display infos about hooks
infolists: display infos about infolists
libs: display infos about external libraries used
certs: display number of loaded trusted certificate authorities
memory: display infos about memory usage
mouse: toggle debug for mouse
tags: display tags for lines
@@ -1342,58 +1375,76 @@ 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:
1. the string itself without evaluation (format: "raw:xxx")
2. an evaluated sub-string (format: "eval:xxx")
3. an evaluated condition (format: "eval_cond:xxx")
4. a string with escaped chars (format: "esc:xxx" or "\xxx")
5. a string with chars to hide (format: "hide:char,string")
6. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
2. a user-defined variable (format: "name")
3. an evaluated sub-string (format: "eval:xxx")
4. an evaluated condition (format: "eval_cond:xxx")
5. a string with escaped chars (format: "esc:xxx" or "\xxx")
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")
7. a reversed string (format: "rev:xxx" or "revscr:xxx")
8. a repeated string (format: "repeat:count,string")
9. length of a string (format: "length:xxx" or "lengthscr:xxx")
10. a color (format: "color:xxx", see "Plugin API reference", function "color")
11. a modifier (format: "modifier:name,data,string")
12. an info (format: "info:name,arguments", arguments are optional)
13. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
14. current date/time (format: "date" or "date:format")
15. an environment variable (format: "env:XXX")
16. a ternary operator (format: "if:condition?value_if_true:value_if_false")
17. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
18. an option (format: "file.section.option")
19. a local variable in buffer
20. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
8. a reversed string (format: "rev:xxx" or "revscr:xxx")
9. a repeated string (format: "repeat:count,string")
10. length of a string (format: "length:xxx" or "lengthscr:xxx")
11. split of a string (format: "split:number,separators,flags,xxx")
12. split of shell argmuents (format: "split_shell:number,xxx")
13. a color (format: "color:xxx", see "Plugin API reference", function "color")
14. a modifier (format: "modifier:name,data,string")
15. an info (format: "info:name,arguments", arguments are optional)
16. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
17. current date/time (format: "date" or "date:format")
18. an environment variable (format: "env:XXX")
19. a ternary operator (format: "if:condition?value_if_true:value_if_false")
20. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
21. a random integer number (format: "random:min,max")
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:
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, for example:
hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, for example:
${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".
Examples (simple strings):
/eval -n ${raw:${info:version}} ==> ${info:version}
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
/eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.freenode_password} ==> secret
/eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat
/eval -n ${window.buffer.number} ==> 1
/eval -n ${\t} ==> <tab>
/eval -n ${hide:-,${relay.network.password}} ==> --------
/eval -n ${cut:3,+,test} ==> tes+
/eval -n ${cut:+3,+,test} ==> te+
/eval -n ${date:%H:%M:%S} ==> 07:46:40
/eval -n ${if:${info:term_width}>80?big:small} ==> big
/eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> -----
/eval -n ${length:test} ==> 4
/eval -n ${calc:(5+2)*3} ==> 21
/eval -n ${base_encode:64,test} ==> dGVzdA==
/eval -n ${base_decode:64,dGVzdA==} ==> test
/eval -n ${raw:${info:version}} ==> ${info:version}
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
/eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.password} ==> secret
/eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat
/eval -n ${window.buffer.number} ==> 1
/eval -n ${\t} ==> <tab>
/eval -n ${hide:-,${relay.network.password}} ==> --------
/eval -n ${cut:3,+,test} ==> tes+
/eval -n ${cut:+3,+,test} ==> te+
/eval -n ${date:%H:%M:%S} ==> 07:46:40
/eval -n ${if:${info:term_width}>80?big:small} ==> big
/eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> -----
/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 ${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):
/eval -n -c ${window.buffer.number} > 2 ==> 0
@@ -1431,7 +1482,7 @@ addreplace: add or replace an existing filter
del: delete a filter
-all: delete all filters
buffer: comma separated list of buffers where filter is active:
- this is full name including plugin (example: "irc.freenode.#weechat" or "irc.server.freenode")
- this is full name including plugin (example: "irc.libera.#weechat" or "irc.server.libera")
- "*" means all buffers
- a name starting with '!' is excluded
- wildcard "*" is allowed
@@ -1466,11 +1517,11 @@ Examples:
filter nicks displayed when joining channels or with /names:
/filter add nicks * irc_366 *
filter nick "toto" on IRC channel #weechat:
/filter add toto irc.freenode.#weechat nick_toto *
/filter add toto irc.libera.#weechat nick_toto *
filter IRC join/action messages from nick "toto":
/filter add toto * nick_toto+irc_join,nick_toto+irc_action *
filter lines containing "weechat sucks" on IRC channel #weechat:
/filter add sucks irc.freenode.#weechat * weechat sucks
/filter add sucks irc.libera.#weechat * weechat sucks
filter lines that are strictly equal to "WeeChat sucks" on all buffers:
/filter add sucks2 * * (?-i)^WeeChat sucks$
----
@@ -1546,6 +1597,9 @@ list of actions:
jump_previously_visited_buffer: jump to previously 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_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_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
@@ -1641,6 +1695,8 @@ windows: store/apply only windows (buffer displayed by each window)
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".
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]]
@@ -1672,7 +1728,7 @@ Examples:
-core: no output on WeeChat core buffer
-current: no output on current buffer
-buffer: no output on specified buffer
name: full buffer name (examples: "irc.server.freenode", "irc.freenode.#weechat")
name: full buffer name (examples: "irc.server.libera", "irc.libera.#weechat")
command: command to execute silently (a '/' is automatically added if not found at beginning of command)
If no target is specified (-core, -current or -buffer), then default is to mute all buffers.
@@ -1683,28 +1739,33 @@ Examples:
message to current IRC channel:
/mute -current msg * hi!
message to #weechat channel:
/mute -buffer irc.freenode.#weechat msg #weechat hi!
/mute -buffer irc.libera.#weechat msg #weechat hi!
----
[[command_weechat_plugin]]
* `+plugin+`: list/load/unload plugins
----
/plugin list|listfull [<name>]
/plugin list [-o|-ol|-i|-il|<name>]
listfull [<name>]
load <filename> [<arguments>]
autoload [<arguments>]
reload [<name>|* [<arguments>]]
unload [<name>]
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)
load: load a plugin
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)
filename: plugin (file) to load
name: a plugin name
arguments: arguments given to plugin on load
Without argument, this command lists loaded plugins.
----
@@ -1751,7 +1812,7 @@ Examples:
display message on core buffer with prefix "abc":
/print -core abc\tThe message
display a message on channel #weechat:
/print -buffer irc.freenode.#weechat Message on #weechat
/print -buffer irc.libera.#weechat Message on #weechat
display a snowman (U+2603):
/print -escape \u2603
send alert (BEL):
@@ -1885,15 +1946,15 @@ Examples:
set a passphrase:
/secure passphrase this is my passphrase
use program "pass" to read the passphrase on startup:
/set sec.crypt.passphrase_command "pass show weechat/passphrase"
encrypt freenode SASL password:
/secure set freenode mypassword
/set irc.server.freenode.sasl_password "${sec.data.freenode}"
/set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase"
encrypt libera SASL password:
/secure set libera mypassword
/set irc.server.libera.sasl_password "${sec.data.libera}"
encrypt oftc password for nickserv:
/secure set oftc mypassword
/set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}"
alias to ghost the nick "mynick":
/alias add ghost /eval /msg -server freenode nickserv ghost mynick ${sec.data.freenode}
/alias add ghost /eval /msg -server libera nickserv ghost mynick ${sec.data.libera}
----
[[command_weechat_set]]
@@ -1932,6 +1993,32 @@ Examples:
/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]]
* `+unset+`: unset/reset config options
@@ -1980,7 +2067,7 @@ With option "-quit", the process is slightly different:
5. quit WeeChat
Then later you can restore session with command: weechat --upgrade
IMPORTANT: you must restore the session with exactly same configuration (files *.conf).
It is possible to restore WeeChat session on another machine if you copy the content of directory "~/.weechat".
It is possible to restore WeeChat session on another machine if you copy the content of WeeChat home directories (see /debug dirs).
----
[[command_weechat_uptime]]
@@ -2165,6 +2252,7 @@ The following variables can be used in these options:
- ${hotlist}: the raw hotlist
- ${hotlist_priority}: "none", "low", "message", "private" or "highlight"
- ${format_lag}: the lag for an IRC server buffer, empty if there's no lag (evaluation of option buflist.format.lag)
- ${format_tls_version}: indicator of TLS version for a server buffer, empty for channels (evaluation of option buflist.format.tls_version)
----
// end::buflist_commands[]
@@ -2271,14 +2359,14 @@ disable: disable FIFO pipe
toggle: toggle FIFO pipe
FIFO pipe is used as remote control of WeeChat: you can send commands or text to the FIFO pipe from your shell.
By default the FIFO pipe is in ~/.weechat/weechat_fifo
By default the FIFO pipe is called weechat_fifo_xxx (where xxx is the WeeChat process id) and located in the WeeChat runtime directory (see /debug dirs).
The expected format is one of:
plugin.buffer *text or command here
*text or command here
For example to change your freenode nick:
echo 'irc.server.freenode */nick newnick' >~/.weechat/weechat_fifo
For example to change your libera nick:
echo 'irc.server.libera */nick newnick' >/run/user/1000/weechat/weechat_fifo_12345
Please read the user's guide for more info and examples.
@@ -2715,7 +2803,7 @@ Without argument, this command lists all loaded scripts.
stop: close the server socket (clients remain connected)
name: relay name (see format below)
port: port used for relay
path: path used for relay (for UNIX domain socket only); "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default), content is evaluated (see /help eval)
path: path used for relay (for UNIX domain socket only); path is evaluated (see function string_eval_path_home in plugin API reference)
raw: open buffer with raw Relay data
sslcertkey: set SSL certificate/key using path in option relay.network.ssl_cert_key
@@ -2734,10 +2822,10 @@ The "weechat" protocol allows a remote interface to connect on the port, see the
Without argument, this command opens buffer with list of relay clients.
Examples:
irc proxy, for server "freenode":
/relay add irc.freenode 8000
irc proxy, for server "freenode", with SSL:
/relay add ssl.irc.freenode 8001
irc proxy, for server "libera":
/relay add irc.libera 8000
irc proxy, for server "libera", with SSL:
/relay add ssl.irc.libera 8001
irc proxy, for all servers (client will choose), with SSL:
/relay add ssl.irc 8002
weechat protocol:
@@ -2751,7 +2839,7 @@ Examples:
weechat protocol with SSL, using IPv4 + IPv6:
/relay add ipv4.ipv6.ssl.weechat 9001
weechat protocol over UNIX domain socket:
/relay add unix.weechat %h/relay_socket
/relay add unix.weechat ${weechat_runtime_dir}/relay_socket
----
// end::relay_commands[]
+210 -82
View File
@@ -17,7 +17,7 @@
** default value: `+sha256+`
* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command*
** description: pass:none[read the passphrase from the output of this system command (only the first line is used and it must not contain any extra character); this option is used only when reading file sec.conf and if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); example with password-store: "pass show weechat/passphrase"]
** description: pass:none[read the passphrase from the output of this system command (only the first line is used and it must not contain any extra character); this option is used only when reading file sec.conf and if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); example with password-store: "/usr/bin/pass show weechat/passphrase"]
** type: string
** values: any string
** default value: `+""+`
@@ -1260,11 +1260,17 @@
** values: 1 .. 2147483647
** default value: `+60+`
* [[option_weechat.network.gnutls_ca_file]] *weechat.network.gnutls_ca_file*
** description: pass:none[file containing the certificate authorities ("%h" will be replaced by WeeChat home, "~/.weechat" by default)]
* [[option_weechat.network.gnutls_ca_system]] *weechat.network.gnutls_ca_system*
** description: pass:none[load system's default trusted certificate authorities on startup; this can be turned off to save some memory only if you are not using SSL connections at all]
** type: boolean
** values: on, off
** default value: `+on+`
* [[option_weechat.network.gnutls_ca_user]] *weechat.network.gnutls_ca_user*
** description: pass:none[extra file(s) with certificate authorities; multiple files must be separated by colons (each path is evaluated, see function string_eval_path_home in plugin API reference)]
** type: string
** values: any string
** default value: `+"/etc/ssl/certs/ca-certificates.crt"+`
** default value: `+""+`
* [[option_weechat.network.gnutls_handshake_timeout]] *weechat.network.gnutls_handshake_timeout*
** description: pass:none[timeout (in seconds) for gnutls handshake]
@@ -1297,10 +1303,10 @@
** default value: `+".so,.dll"+`
* [[option_weechat.plugin.path]] *weechat.plugin.path*
** description: pass:none[path for searching plugins ("%h" will be replaced by WeeChat home, "~/.weechat" by default)]
** description: pass:none[path for searching plugins (path is evaluated, see function string_eval_path_home in plugin API reference)]
** type: string
** values: any string
** default value: `+"%h/plugins"+`
** default value: `+"${weechat_data_dir}/plugins"+`
* [[option_weechat.plugin.save_config_on_unload]] *weechat.plugin.save_config_on_unload*
** description: pass:none[save configuration files when unloading plugins]
@@ -1308,14 +1314,44 @@
** values: on, off
** default value: `+on+`
* [[option_weechat.signal.sighup]] *weechat.signal.sighup*
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
** type: string
** values: any string
** default value: `+"${if:${info:weechat_headless}?/reload:/quit -yes}"+`
* [[option_weechat.signal.sigquit]] *weechat.signal.sigquit*
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
** type: string
** values: any string
** default value: `+"/quit -yes"+`
* [[option_weechat.signal.sigterm]] *weechat.signal.sigterm*
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
** type: string
** values: any string
** default value: `+"/quit -yes"+`
* [[option_weechat.signal.sigusr1]] *weechat.signal.sigusr1*
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
** type: string
** values: any string
** default value: `+""+`
* [[option_weechat.signal.sigusr2]] *weechat.signal.sigusr2*
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
** type: string
** values: any string
** default value: `+""+`
* [[option_weechat.startup.command_after_plugins]] *weechat.startup.command_after_plugins*
** description: pass:none[command executed when WeeChat starts, after loading plugins (note: content is evaluated, see /help eval)]
** description: pass:none[command executed when WeeChat starts, after loading plugins; multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
** type: string
** values: any string
** default value: `+""+`
* [[option_weechat.startup.command_before_plugins]] *weechat.startup.command_before_plugins*
** description: pass:none[command executed when WeeChat starts, before loading plugins (note: content is evaluated, see /help eval)]
** description: pass:none[command executed when WeeChat starts, before loading plugins; multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
** type: string
** values: any string
** default value: `+""+`
@@ -1421,10 +1457,10 @@
** default value: `+""+`
* [[option_logger.file.path]] *logger.file.path*
** description: pass:none[path for WeeChat log files; "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default); date specifiers are permitted (see man strftime) (note: content is evaluated, see /help eval)]
** description: pass:none[path for WeeChat log files; date specifiers are permitted (see man strftime) (path is evaluated, see function string_eval_path_home in plugin API reference)]
** type: string
** values: any string
** default value: `+"%h/logs/"+`
** default value: `+"${weechat_data_dir}/logs"+`
* [[option_logger.file.replacement_char]] *logger.file.replacement_char*
** description: pass:none[replacement char for special chars in filename built with mask (like directory delimiter)]
@@ -1716,6 +1752,12 @@
** values: any string
** default value: `+"${color:green}${number}${if:${number_displayed}?.: }"+`
* [[option_buflist.format.tls_version]] *buflist.format.tls_version*
** description: pass:none[format for TLS version on an IRC server buffer (note: content is evaluated, see /help buflist)]
** type: string
** values: any string
** default value: `+" ${color:default}(${if:${tls_version}==TLS1.3?${color:green}:${if:${tls_version}==TLS1.2?${color:yellow}:${color:red}}}${translate:${tls_version}}${color:default})"+`
* [[option_buflist.look.add_newline]] *buflist.look.add_newline*
** description: pass:none[add newline between the buffers displayed, so each buffer is displayed on a separate line (recommended); if disabled, newlines must be manually added in the formats with "${\n}", and the mouse actions are not possible any more]
** type: boolean
@@ -1777,7 +1819,7 @@
** default value: `+""+`
* [[option_buflist.look.sort]] *buflist.look.sort*
** description: pass:none[comma-separated list of fields to sort buffers; each field is a hdata variable of buffer ("var"), a hdata variable of IRC server ("irc_server.var") or a hdata variable of IRC channel ("irc_channel.var"); char "-" can be used before field to reverse order, char "~" can be used to do a case insensitive comparison; example: "-~short_name" for case insensitive and reverse sort on buffer short name (note: content is evaluated, only the pointer to bar_item can be used, for example "bar_item.name")]
** description: pass:none[comma-separated list of fields to sort buffers; each field is a hdata variable of buffer ("var"), a hdata variable of IRC server ("irc_server.var") or a hdata variable of IRC channel ("irc_channel.var"); char "-" can be used before field to reverse order, char "~" can be used to do a case insensitive comparison; example: "-~short_name" for case insensitive and reverse sort on buffer short name (note: the content is evaluated, before being split into fields, but at that time "bar_item" is the only variable that can be used, to distinguish between different buflist items, for example "${bar_item.name}")]
** type: string
** values: any string
** default value: `+"number,-active"+`
@@ -1797,12 +1839,56 @@
** default value: `+on+`
* [[option_fifo.file.path]] *fifo.file.path*
** description: pass:none[path for FIFO file; "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default); WeeChat PID can be used in path with ${info:pid} (note: content is evaluated, see /help eval)]
** description: pass:none[path for FIFO file; WeeChat PID can be used in path with ${info:pid} (path is evaluated, see function string_eval_path_home in plugin API reference)]
** type: string
** values: any string
** default value: `+"%h/weechat_fifo"+`
** default value: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
// 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[]
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
** description: pass:none[text color for "aborted" status]
@@ -1871,7 +1957,7 @@
** default value: `+off+`
* [[option_xfer.file.auto_accept_nicks]] *xfer.file.auto_accept_nicks*
** description: pass:none[comma-separated list of nicks for which the incoming files and chats are automatically accepted; format is "server.nick" (for a specific server) or "nick" (for all servers); example: "freenode.FlashCode,andrew"]
** description: pass:none[comma-separated list of nicks for which the incoming files and chats are automatically accepted; format is "server.nick" (for a specific server) or "nick" (for all servers); example: "libera.FlashCode,andrew"]
** type: string
** values: any string
** default value: `+""+`
@@ -1901,10 +1987,10 @@
** default value: `+on+`
* [[option_xfer.file.download_path]] *xfer.file.download_path*
** description: pass:none[path for writing incoming files: "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default) (note: content is evaluated, see /help eval)]
** description: pass:none[path for writing incoming files (path is evaluated, see function string_eval_path_home in plugin API reference)]
** type: string
** values: any string
** default value: `+"%h/xfer"+`
** default value: `+"${weechat_data_dir}/xfer"+`
* [[option_xfer.file.download_temporary_suffix]] *xfer.file.download_temporary_suffix*
** description: pass:none[temporary filename suffix used during the transfer for a file received, it is removed after successful transfer; if empty string, no filename suffix is used during the transfer]
@@ -1913,7 +1999,7 @@
** default value: `+".part"+`
* [[option_xfer.file.upload_path]] *xfer.file.upload_path*
** description: pass:none[path for reading files when sending (when no path is specified by user): "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default) (note: content is evaluated, see /help eval)]
** description: pass:none[path for reading files when sending (path is evaluated, see function string_eval_path_home in plugin API reference)]
** type: string
** values: any string
** default value: `+"~"+`
@@ -2022,6 +2108,24 @@
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
** default value: `+default+`
* [[option_irc.color.item_tls_version_deprecated]] *irc.color.item_tls_version_deprecated*
** description: pass:none[color for deprecated TLS versions in bar item "tls_version"]
** type: color
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
** default value: `+yellow+`
* [[option_irc.color.item_tls_version_insecure]] *irc.color.item_tls_version_insecure*
** description: pass:none[color for insecure TLS versions in bar item "tls_version"]
** type: color
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
** default value: `+red+`
* [[option_irc.color.item_tls_version_ok]] *irc.color.item_tls_version_ok*
** description: pass:none[color for higher supported TLS version in bar item "tls_version"]
** type: color
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
** default value: `+green+`
* [[option_irc.color.message_account]] *irc.color.message_account*
** description: pass:none[color for text in account messages]
** type: color
@@ -2154,6 +2258,12 @@
** values: any string
** 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*
** 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
@@ -2178,6 +2288,12 @@
** values: on, off
** 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*
** description: pass:none[display host in join messages]
** type: boolean
@@ -2227,19 +2343,19 @@
** default value: `+off+`
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
** description: pass:none[comma separated list of words to highlight in channel buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their value), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
** description: pass:none[comma separated list of words to highlight in channel buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their values), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
** type: string
** values: any string
** default value: `+"$nick"+`
* [[option_irc.look.highlight_pv]] *irc.look.highlight_pv*
** description: pass:none[comma separated list of words to highlight in private buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their value), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
** description: pass:none[comma separated list of words to highlight in private buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their values), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
** type: string
** values: any string
** default value: `+"$nick"+`
* [[option_irc.look.highlight_server]] *irc.look.highlight_server*
** description: pass:none[comma separated list of words to highlight in server buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their value), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
** description: pass:none[comma separated list of words to highlight in server buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their values), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
** type: string
** values: any string
** default value: `+"$nick"+`
@@ -2448,6 +2564,18 @@
** values: on, 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*
** description: pass:none[growing factor for autoreconnect delay to server (1 = always same delay, 2 = delay*2 for each retry, etc.)]
** type: integer
@@ -2605,10 +2733,10 @@
** default value: `+25+`
* [[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
** values: any string
** default value: `+""+`
** default value: `+"*"+`
* [[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)]
@@ -2617,7 +2745,7 @@
** default value: `+message+`
* [[option_irc.server_default.command]] *irc.server_default.command*
** description: pass:none[command(s) to run after connection to server and before auto-join of channels (many commands can be separated by ";", use "\;" for a semicolon, special variables $nick, $channel and $server are replaced by their value) (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)]
** description: pass:none[command(s) to run after connection to server and before auto-join of channels (many commands can be separated by ";", use "\;" for a semicolon, special variables $nick, $channel and $server are replaced by their values) (note: commands are evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)]
** type: string
** values: any string
** default value: `+""+`
@@ -2653,19 +2781,19 @@
** default value: `+""+`
* [[option_irc.server_default.msg_kick]] *irc.server_default.msg_kick*
** description: pass:none[default kick message used by commands "/kick" and "/kickban" (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their value)]
** description: pass:none[default kick message used by commands "/kick" and "/kickban" (note: content is evaluated, see /help eval; special variables ${nick} (self nick), ${target} (target nick), ${channel} and ${server} are replaced by their values)]
** type: string
** values: any string
** default value: `+""+`
* [[option_irc.server_default.msg_part]] *irc.server_default.msg_part*
** description: pass:none[default part message (leaving channel) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their value; "%v" is replaced by WeeChat version if there is no ${...} in string)]
** description: pass:none[default part message (leaving channel) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their values; "%v" is replaced by WeeChat version if there is no ${...} in string)]
** type: string
** values: any string
** default value: `+"WeeChat ${info:version}"+`
* [[option_irc.server_default.msg_quit]] *irc.server_default.msg_quit*
** description: pass:none[default quit message (disconnecting from server) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their value; "%v" is replaced by WeeChat version if there is no ${...} in string)]
** description: pass:none[default quit message (disconnecting from server) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their values; "%v" is replaced by WeeChat version if there is no ${...} in string)]
** type: string
** values: any string
** default value: `+"WeeChat ${info:version}"+`
@@ -2710,18 +2838,18 @@
** 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
** values: continue, reconnect, disconnect
** default value: `+continue+`
** default value: `+reconnect+`
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
** description: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" ("%h" will be replaced by WeeChat home, "~/.weechat" by default)]
** 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)]
** type: string
** values: any string
** default value: `+""+`
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
** description: pass:none[mechanism for SASL authentication: "plain" for plain text password, "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
** values: plain, 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+`
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
@@ -2755,7 +2883,7 @@
** default value: `+off+`
* [[option_irc.server_default.ssl_cert]] *irc.server_default.ssl_cert*
** description: pass:none[SSL certificate file used to automatically identify your nick ("%h" will be replaced by WeeChat home, "~/.weechat" by default)]
** description: pass:none[SSL certificate file used to automatically identify your nick (path is evaluated, see function string_eval_path_home in plugin API reference)]
** type: string
** values: any string
** default value: `+""+`
@@ -2979,10 +3107,10 @@
** default value: `+100000+`
* [[option_relay.network.ssl_cert_key]] *relay.network.ssl_cert_key*
** description: pass:none[file with SSL certificate and private key (for serving clients with SSL)]
** description: pass:none[file with SSL certificate and private key (for serving clients with SSL) (path is evaluated, see function string_eval_path_home in plugin API reference)]
** type: string
** values: any string
** default value: `+"%h/ssl/relay.pem"+`
** default value: `+"${weechat_config_dir}/ssl/relay.pem"+`
* [[option_relay.network.ssl_priorities]] *relay.network.ssl_priorities*
** description: pass:none[string with priorities for gnutls (for syntax, see documentation of function gnutls_priority_init in gnutls manual, common strings are: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
@@ -3015,34 +3143,6 @@
** default value: `+""+`
// 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[]
* [[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]
@@ -3057,19 +3157,33 @@
** default value: `+on+`
// end::guile_options[]
// tag::tcl_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license*
// 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_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]
** type: boolean
** values: on, off
** 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[]
* [[option_perl.look.check_license]] *perl.look.check_license*
@@ -3099,20 +3213,6 @@
** default value: `+on+`
// 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[]
* [[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]
@@ -3127,6 +3227,34 @@
** default value: `+on+`
// 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[]
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
** description: pass:none[color for status "autoloaded" ("a")]
@@ -3285,7 +3413,7 @@
** default value: `+lightmagenta+`
* [[option_script.look.columns]] *script.look.columns*
** description: pass:none[format of columns displayed in script buffer: following column identifiers are replaced by their value: %a=author, %d=description, %D=date added, %e=extension, %l=language, %L=license, %n=name with extension, %N=name, %r=requirements, %s=status, %t=tags, %u=date updated, %v=version, %V=version loaded, %w=min_weechat, %W=max_weechat)]
** description: pass:none[format of columns displayed in script buffer: following column identifiers are replaced by their values: %a=author, %d=description, %D=date added, %e=extension, %l=language, %L=license, %n=name with extension, %N=name, %r=requirements, %s=status, %t=tags, %u=date updated, %v=version, %V=version loaded, %w=min_weechat, %W=max_weechat)]
** type: string
** values: any string
** default value: `+"%s %n %V %v %u | %d | %t"+`
@@ -3363,10 +3491,10 @@
** default value: `+""+`
* [[option_script.scripts.path]] *script.scripts.path*
** description: pass:none[local cache directory for scripts; "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default) (note: content is evaluated, see /help eval)]
** description: pass:none[local cache directory for scripts (path is evaluated, see function string_eval_path_home in plugin API reference)]
** type: string
** values: any string
** default value: `+"%h/script"+`
** default value: `+"${weechat_cache_dir}/script"+`
* [[option_script.scripts.url]] *script.scripts.url*
** description: pass:none[URL for file with list of scripts]
+3 -3
View File
@@ -15,9 +15,9 @@
"--daemon").
*-d*, *--dir* _<path>_::
Set path as home for WeeChat (used for configuration files, logs, user
plugins and scripts), default value is "~/.weechat" (note: directory is
created if not found by WeeChat).
Force a single directory for all WeeChat files (directory is created if not found).
Four directories can be given, separated by colons (in this order: config,
data, cache, runtime).
If this option is not given, the environment variable WEECHAT_HOME is used
(if not empty).
+29 -26
View File
@@ -8,7 +8,7 @@ With irc plugin, you can connect to temporary server with an URL like:
To join WeeChat IRC channel support with nick "mynick":
irc://mynick@chat.freenode.net/#weechat
irc://mynick@irc.libera.chat/#weechat
IPv6 address can be enclosed in brackets to add a port after address, for
example:
@@ -17,79 +17,82 @@ example:
// end::plugin_options[]
// tag::files[]
$HOME/.weechat/weechat.conf::
$HOME/.config/weechat/weechat.conf::
main WeeChat configuration file
$HOME/.weechat/plugins.conf::
$HOME/.config/weechat/plugins.conf::
plugins configuration file
$HOME/.weechat/sec.conf::
$HOME/.config/weechat/sec.conf::
configuration file with secured data
$HOME/.weechat/alias.conf::
$HOME/.config/weechat/alias.conf::
configuration file for _alias_ plugin
$HOME/.weechat/buflist.conf::
$HOME/.config/weechat/buflist.conf::
configuration file for _buflist_ plugin
$HOME/.weechat/charset.conf::
$HOME/.config/weechat/charset.conf::
configuration file for _charset_ plugin
$HOME/.weechat/exec.conf::
$HOME/.config/weechat/exec.conf::
configuration file for _exec_ plugin
$HOME/.weechat/fifo.conf::
$HOME/.config/weechat/fifo.conf::
configuration file for _fifo_ plugin
$HOME/.weechat/fset.conf::
$HOME/.config/weechat/fset.conf::
configuration file for _fset_ plugin
$HOME/.weechat/guile.conf::
$HOME/.config/weechat/guile.conf::
configuration file for _guile_ plugin
$HOME/.weechat/irc.conf::
$HOME/.config/weechat/irc.conf::
configuration file for _irc_ plugin
$HOME/.weechat/javascript.conf::
$HOME/.config/weechat/javascript.conf::
configuration file for _javascript_ plugin
$HOME/.weechat/logger.conf::
$HOME/.config/weechat/logger.conf::
configuration file for _logger_ plugin
$HOME/.weechat/lua.conf::
$HOME/.config/weechat/lua.conf::
configuration file for _lua_ plugin
$HOME/.weechat/perl.conf::
$HOME/.config/weechat/perl.conf::
configuration file for _perl_ plugin
$HOME/.weechat/php.conf::
$HOME/.config/weechat/php.conf::
configuration file for _php_ plugin
$HOME/.weechat/python.conf::
$HOME/.config/weechat/python.conf::
configuration file for _python_ plugin
$HOME/.weechat/relay.conf::
$HOME/.config/weechat/relay.conf::
configuration file for _relay_ plugin
$HOME/.weechat/ruby.conf::
$HOME/.config/weechat/ruby.conf::
configuration file for _ruby_ plugin
$HOME/.weechat/script.conf::
$HOME/.config/weechat/script.conf::
configuration file for _script_ plugin
$HOME/.weechat/spell.conf::
$HOME/.config/weechat/spell.conf::
configuration file for _spell_ plugin
$HOME/.weechat/tcl.conf::
$HOME/.config/weechat/tcl.conf::
configuration file for _tcl_ plugin
$HOME/.weechat/trigger.conf::
$HOME/.config/weechat/trigger.conf::
configuration file for _trigger_ plugin
$HOME/.weechat/xfer.conf::
$HOME/.config/weechat/typing.conf::
configuration file for _typing_ plugin
$HOME/.config/weechat/xfer.conf::
configuration file for _xfer_ plugin
$HOME/.weechat/weechat.log::
$HOME/.local/share/weechat/weechat.log::
WeeChat log file
// end::files[]
+129 -107
View File
@@ -89,6 +89,7 @@ The main WeeChat directories are:
|       spell/ | Spell plugin.
|       tcl/ | Tcl scripting API.
|       trigger/ | Trigger plugin.
|       typing/ | Typing plugin.
|       xfer/ | Xfer plugin (IRC DCC file/chat).
| tests/ | Tests.
|    scripts/ | Scripting API tests.
@@ -98,6 +99,7 @@ The main WeeChat directories are:
|       gui/ | Unit tests for interfaces functions.
|       plugins/ | Unit tests for plugins.
|          irc/ | Unit tests for IRC plugin.
|          trigger/ | Unit tests for trigger plugin.
| doc/ | Documentation.
| po/ | Translations files (gettext).
| debian/ | Debian packaging.
@@ -127,6 +129,7 @@ WeeChat "core" is located in following directories:
|    wee-config.c | Configuration options for WeeChat core (file weechat.conf).
|    wee-crypto.c | Cryptographic functions.
|    wee-debug.c | Some debug functions.
|    wee-dir.c | Directory/file functions.
|    wee-eval.c | Evaluation of expressions with references to internal vars.
|    wee-hashtable.c | Hashtables.
|    wee-hdata.c | Hdata (direct access to data using hashtables).
@@ -140,6 +143,7 @@ WeeChat "core" is located in following directories:
|    wee-secure.c | Secured data functions.
|    wee-secure-buffer.c | Secured data buffer.
|    wee-secure-config.c | Secured data options (file sec.conf).
|    wee-signal.c | Signal functions.
|    wee-string.c | Functions on strings.
|    wee-upgrade-file.c | Internal upgrade system.
|    wee-upgrade.c | Upgrade for WeeChat core (buffers, lines, history, ...).
@@ -291,6 +295,7 @@ WeeChat "core" is located in following directories:
|       irc-redirect.c | Redirection of IRC command output.
|       irc-sasl.c | SASL authentication 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.
|    javascript/ | JavaScript plugin.
|       weechat-js.cpp | Main JavaScript functions (load/unload scripts, execute JavaScript code).
@@ -360,6 +365,11 @@ WeeChat "core" is located in following directories:
|       trigger-command.c | Trigger commands.
|       trigger-completion.c | Trigger completions.
|       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.c | Main xfer functions.
|       xfer-buffer.c | Xfer buffer.
@@ -379,50 +389,61 @@ WeeChat "core" is located in following directories:
[width="100%",cols="2m,3",options="header"]
|===
| Path/file | Description
| tests/ | Root of tests.
|    tests.cpp | Program used to run all tests.
|    scripts/ | Root of 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.
|          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.
|          unparse.py | Convert Python code to other languages, used by script testapigen.py.
|    unit/ | Root of unit tests.
|       test-plugins.cpp | Tests: plugins.
|       core/ | Root of unit tests for core.
|          test-core-arraylist.cpp | Tests: arraylists.
|          test-core-calc.cpp | Tests: calculation of expressions.
|          test-core-crypto.cpp | Tests: cryptographic functions.
|          test-core-eval.cpp | Tests: evaluation of expressions.
|          test-core-hashtble.cpp | Tests: hashtables.
|          test-core-hdata.cpp | Tests: hdata.
|          test-core-hook.cpp | Tests: hooks.
|          test-core-infolist.cpp | Tests: infolists.
|          test-core-list.cpp | Tests: lists.
|          test-core-secure.cpp | Tests: secured data.
|          test-core-string.cpp | Tests: strings.
|          test-core-url.cpp | Tests: URLs.
|          test-core-utf8.cpp | Tests: UTF-8.
|          test-core-util.cpp | Tests: utility functions.
|       gui/ | Root of unit tests for interfaces.
|          test-gui-color.cpp | Tests: colors.
|          test-gui-line.cpp | Tests: lines.
|          test-gui-nick.cpp | Tests: nicks.
|       plugins/ | Root of unit tests for plugins.
|          irc/ | Root of unit tests for IRC plugin.
|             test-irc-channel.cpp | Tests: IRC channels.
|             test-irc-color.cpp | Tests: IRC colors.
|             test-irc-config.cpp | Tests: IRC configuration.
|             test-irc-ignore.cpp | Tests: IRC ignores.
|             test-irc-message.cpp | Tests: IRC messages.
|             test-irc-mode.cpp | Tests: IRC modes.
|             test-irc-nick.cpp | Tests: IRC nicks.
|             test-irc-protocol.cpp | Tests: IRC protocol.
|             test-irc-server.cpp | Tests: IRC server.
|          relay/ | Root of unit tests for Relay plugin.
|             test-relay-auth.cpp | Tests: clients authentication.
| Path/file | Description
| tests/ | Root of tests.
|    tests.cpp | Program used to run all tests.
|    scripts/ | Root of 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.
|          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.
|          unparse.py | Convert Python code to other languages, used by script testapigen.py.
|    unit/ | Root of unit tests.
|       test-plugins.cpp | Tests: plugins.
|       core/ | Root of unit tests for core.
|          test-core-arraylist.cpp | Tests: arraylists.
|          test-core-calc.cpp | Tests: calculation of expressions.
|          test-core-config-file.cpp | Tests: configuration files.
|          test-core-crypto.cpp | Tests: cryptographic functions.
|          test-core-dir.cpp | Tests: directory/file functions.
|          test-core-eval.cpp | Tests: evaluation of expressions.
|          test-core-hashtble.cpp | Tests: hashtables.
|          test-core-hdata.cpp | Tests: hdata.
|          test-core-hook.cpp | Tests: hooks.
|          test-core-infolist.cpp | Tests: infolists.
|          test-core-list.cpp | Tests: lists.
|          test-core-network.cpp | Tests: network functions.
|          test-core-secure.cpp | Tests: secured data.
|          test-core-signal.cpp | Tests: signals.
|          test-core-string.cpp | Tests: strings.
|          test-core-url.cpp | Tests: URLs.
|          test-core-utf8.cpp | Tests: UTF-8.
|          test-core-util.cpp | Tests: utility functions.
|       gui/ | Root of unit tests for interfaces.
|          test-gui-color.cpp | Tests: colors.
|          test-gui-line.cpp | Tests: lines.
|          test-gui-nick.cpp | Tests: nicks.
|       plugins/ | Root of unit tests for plugins.
|          irc/ | Root of unit tests for IRC plugin.
|             test-irc-buffer.cpp | Tests: IRC buffers.
|             test-irc-channel.cpp | Tests: IRC channels.
|             test-irc-color.cpp | Tests: IRC colors.
|             test-irc-config.cpp | Tests: IRC configuration.
|             test-irc-ignore.cpp | Tests: IRC ignores.
|             test-irc-message.cpp | Tests: IRC messages.
|             test-irc-mode.cpp | Tests: IRC modes.
|             test-irc-nick.cpp | Tests: IRC nicks.
|             test-irc-protocol.cpp | Tests: IRC protocol.
|             test-irc-sasl.cpp | Tests: SASL authentication with IRC protocol.
|             test-irc-server.cpp | Tests: IRC server.
|          trigger/ | Root of unit tests for trigger plugin.
|             test-trigger.cpp | Tests: triggers.
|             test-trigger-config.cpp | Tests: trigger configuration.
|          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.
|===
[[documentation_translations]]
@@ -444,7 +465,6 @@ Documentation files:
|       weechat_quickstart.XX.adoc | link:weechat_quickstart.en.html[Quickstart guide].
|       weechat_relay_protocol.XX.adoc | link:weechat_relay_protocol.en.html[Relay protocol] (for remote interfaces).
|       weechat_scripting.XX.adoc | link:weechat_scripting.en.html[Scripting guide].
|       weechat_tester.XX.adoc | link:weechat_tester.en.html[Tester's guide].
|       weechat_user.XX.adoc | link:weechat_user.en.html[User's guide].
|       includes/ | Files included in documentation.
|          autogen_api_completions.XX.adoc | Auto-generated file for Plugin API reference: completions (do *NEVER* update manually!).
@@ -490,7 +510,7 @@ directory:
Example in C:
[source,C]
[source,c]
----
/*
* weechat.c - core functions for WeeChat
@@ -528,7 +548,7 @@ Some basic rules you *must* follow when you write C code:
Example:
[source,C]
[source,c]
----
/*
* Checks if a string with boolean value is valid.
@@ -559,7 +579,7 @@ foo ()
Exception: in `for` loops, where variables like "i" or "n" are OK.
* Initialize local variables after declaration, in body of function, example:
[source,C]
[source,c]
----
void
foo ()
@@ -577,7 +597,7 @@ foo ()
* Place curly brackets `+{ }+` alone on lines, and indent them with number of
spaces used for line above opening curly bracket (the `if` in example):
[source,C]
[source,c]
----
if (nicks_count == 1)
{
@@ -588,7 +608,7 @@ if (nicks_count == 1)
* Use empty lines to separate many different blocks inside functions, and if
possible add a comment for each one, like this:
[source,C]
[source,c]
----
/*
* Sends a message from out queue.
@@ -631,7 +651,7 @@ irc_server_outqueue_send (struct t_irc_server *server)
* Indent the `if` conditions, and use parentheses around conditions with an
operator (not needed for single boolean), like this:
[source,C]
[source,c]
----
if (something)
{
@@ -655,7 +675,7 @@ else
* Indent the `switch` statements like this:
[source,C]
[source,c]
----
switch (string[0])
{
@@ -673,7 +693,7 @@ switch (string[0])
* Use `typedef` for function prototypes but not for structures:
[source,C]
[source,c]
----
typedef int (t_hook_callback_fd)(void *data, int fd);
@@ -755,7 +775,7 @@ Structures have name _t_X_Y_ or _t_X_Y_Z_:
Example: an IRC nick (from _src/plugins/irc/irc-nick.h_):
[source,C]
[source,c]
----
struct t_irc_nick
{
@@ -785,7 +805,7 @@ _X_ is name of variable, using singular form).
Example: windows (from _src/gui/gui-window.c_):
[source,C]
[source,c]
----
struct t_gui_window *gui_windows = NULL; /* first window */
struct t_gui_window *last_gui_window = NULL; /* last window */
@@ -805,7 +825,7 @@ Naming convention for functions is the same as
Example: creation of a new window (from _src/gui/gui-window.c_):
[source,C]
[source,c]
----
/*
* Creates a new window.
@@ -841,7 +861,7 @@ and next node.
Example: list of buffers (from _src/gui/gui-buffer.h_):
[source,C]
[source,c]
----
struct t_gui_buffer
{
@@ -856,7 +876,7 @@ struct t_gui_buffer
Then the two list pointers, to the head and tail of list:
[source,C]
[source,c]
----
struct t_gui_buffer *gui_buffers = NULL; /* first buffer */
struct t_gui_buffer *last_gui_buffer = NULL; /* last buffer */
@@ -871,18 +891,10 @@ underline, ...) and colors on screen.
All attributes/colors are prefixed with a char in string, which can be:
* _0x19_: color code (followed by color code(s))
* _0x1A_: set attribute (followed by attribute on one char)
* _0x1B_: remove attribute (followed by attribute on one char)
* _0x1A_: set attribute (followed by raw attribute on one char)
* _0x1B_: remove attribute (followed by raw attribute on one char)
* _0x1C_: reset (nothing after)
Allowed attributes are (one or more chars):
* `+*+`: bold
* `+!+`: reverse
* `+/+`: italic
* `+_+`: underline
* `+|+`: keep attributes
Possible colors are:
* standard color: optional attributes + number on 2 digits
@@ -891,45 +903,55 @@ Possible colors are:
In following table, these conventions are used:
* `STD`: standard color (2 digits)
* `(A)STD`: standard color with optional attributes (attributes + 2 digits)
* `(ATTR)STD`: standard color with optional attributes (attributes + 2 digits)
* `EXT`: extended color (`+@+` + 5 digits)
* `(A)EXT`: extended color with optional attributes (`+@+` + attributes + 5 digits)
* `ATTR`: one attribute char (`+*+`, `+!+`, `+/+`, `+_+` or `+|+`)
* `(ATTR)EXT`: extended color with optional attributes (`+@+` + attributes + 5 digits)
* `(ATTR)`: one or more attribute chars:
** `+*+`: bold
** `+!+`: reverse
** `+/+`: italic
** `+_+`: underline
** `+|+`: keep attributes
* `(a)`: one raw attribute char:
** _0x01_: bold
** _0x02_: reverse
** _0x03_: italic
** _0x04_: underline
All combinations are summarized in this table:
[width="100%",cols="4,2,2,8",options="header"]
[width="100%",cols="4,3,2,8",options="header"]
|===
| Code | Example | Areas | Description
| [hex]#19# + STD | [hex]#19# `+01+` | chat + bars | Set attributes and color using option, see table below.
| [hex]#19# + EXT | [hex]#19# `+@00001+` | chat | Set color with a ncurses pair (used only on `/color` buffer).
| [hex]#19# + "F" + (A)STD | [hex]#19# `+F*05+` | chat + bars | Set foreground (WeeChat color).
| [hex]#19# + "F" + (A)EXT | [hex]#19# `+F@00214+` | chat + bars | Set foreground (extended color).
| [hex]#19# + "B" + STD | [hex]#19# `+B05+` | chat + bars | Set background (WeeChat color).
| [hex]#19# + "B" + EXT | [hex]#19# `+B@00124+` | chat + bars | Set background (extended color).
| [hex]#19# + "*" + (A)STD | [hex]#19# `+*05+` | chat + bars | Set foreground (WeeChat color).
| [hex]#19# + "*" + (A)EXT | [hex]#19# `+*@00214+` | chat + bars | Set foreground (extended color).
| [hex]#19# + "*" + (A)STD + "," + STD ^(1)^ | [hex]#19# `+*08,05+` | chat + bars | Set foreground/background (WeeChat colors).
| [hex]#19# + "*" + (A)STD + "," + EXT ^(1)^ | [hex]#19# `+*01,@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
| [hex]#19# + "*" + (A)EXT + "," + STD ^(1)^ | [hex]#19# `+*@00214,05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
| [hex]#19# + "*" + (A)EXT + "," + EXT ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + bars | Set foreground/background (extended colors).
| [hex]#19# + "*" + (A)STD + "~" + STD | [hex]#19# `+*08~05+` | chat + bars | Set foreground/background (WeeChat colors).
| [hex]#19# + "*" + (A)STD + "~" + EXT | [hex]#19# `+*01~@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
| [hex]#19# + "*" + (A)EXT + "~" + STD | [hex]#19# `+*@00214~05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
| [hex]#19# + "*" + (A)EXT + "~" + EXT | [hex]#19# `+*@00214~@00017+` | chat + bars | Set foreground/background (extended colors).
| [hex]#19# + "b" + "F" | [hex]#19# `+bF+` | bars | Set bar foreground color.
| [hex]#19# + "b" + "D" | [hex]#19# `+bD+` | bars | Set bar delimiter color.
| [hex]#19# + "b" + "B" | [hex]#19# `+bB+` | bars | Set bar background color.
| [hex]#19# + "b" + "_" | [hex]#19# `+b_+` | input bar | Start input char (used only in item "input_text").
| [hex]#19# + "b" + "-" | [hex]#19# `+b-+` | input bar | Start input hidden char (used only in item "input_text").
| [hex]#19# + "b" + "#" | [hex]#19# `+b#+` | input bar | Move cursor char (used only in item "input_text").
| [hex]#19# + "b" + "i" | [hex]#19# `+bi+` | bars | Start item.
| [hex]#19# + "b" + "l" (lower L) | [hex]#19# `+bl+` | bars | Start line item.
| [hex]#19# + "E" | [hex]#19# `+E+` | chat + bars | Emphasize text _(WeeChat ≥ 0.4.2)_.
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + bars | Reset color (keep attributes).
| [hex]#1A# + ATTR | [hex]#1A# `+*+` | chat + bars | Set attribute.
| [hex]#1B# + ATTR | [hex]#1B# `+*+` | chat + bars | Remove attribute.
| [hex]#1C# | [hex]#1C# | chat + bars | Reset attributes and color.
| Code | Example | Areas | Description
| [hex]#19# + `STD` | [hex]#19# `+01+` | chat + bars | Set attributes and color using option, see table below.
| [hex]#19# + `EXT` | [hex]#19# `+@00001+` | chat | Set color with a ncurses pair (used only on `/color` buffer).
| [hex]#19# + `F` + `(ATTR)STD` | [hex]#19# `+F*05+` | chat + bars | Set foreground (WeeChat color).
| [hex]#19# + `F` + `(ATTR)EXT` | [hex]#19# `+F@00214+` | chat + bars | Set foreground (extended color).
| [hex]#19# + `B` + `STD` | [hex]#19# `+B05+` | chat + bars | Set background (WeeChat color).
| [hex]#19# + `B` + `EXT` | [hex]#19# `+B@00124+` | chat + bars | Set background (extended color).
| [hex]#19# + `*` + `(ATTR)STD` | [hex]#19# `+*05+` | chat + bars | Set foreground (WeeChat color).
| [hex]#19# + `*` + `(ATTR)EXT` | [hex]#19# `+*@00214+` | chat + bars | Set foreground (extended color).
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `STD` ^(1)^ | [hex]#19# `+*08,05+` | chat + bars | Set foreground/background (WeeChat colors).
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `EXT` ^(1)^ | [hex]#19# `+*01,@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `STD` ^(1)^ | [hex]#19# `+*@00214,05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `EXT` ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + bars | Set foreground/background (extended colors).
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `STD` | [hex]#19# `+*08~05+` | chat + bars | Set foreground/background (WeeChat colors).
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `EXT` | [hex]#19# `+*01~@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `STD` | [hex]#19# `+*@00214~05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `EXT` | [hex]#19# `+*@00214~@00017+` | chat + bars | Set foreground/background (extended colors).
| [hex]#19# + `b` + `F` | [hex]#19# `+bF+` | bars | Set bar foreground color.
| [hex]#19# + `b` + `D` | [hex]#19# `+bD+` | bars | Set bar delimiter color.
| [hex]#19# + `b` + `B` | [hex]#19# `+bB+` | bars | Set bar background color.
| [hex]#19# + `b` + `_` | [hex]#19# `+b_+` | input bar | Start input char (used only in item "input_text").
| [hex]#19# + `b` + `-` | [hex]#19# `+b-+` | input bar | Start input hidden char (used only in item "input_text").
| [hex]#19# + `b` + `#` | [hex]#19# `+b#+` | input bar | Move cursor char (used only in item "input_text").
| [hex]#19# + `b` + `i` | [hex]#19# `+bi+` | bars | Start item.
| [hex]#19# + `b` + `l` (lower L) | [hex]#19# `+bl+` | bars | Start line item.
| [hex]#19# + `E` | [hex]#19# `+E+` | chat + bars | Emphasize text _(WeeChat ≥ 0.4.2)_.
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + bars | Reset color (keep attributes).
| [hex]#1A# + `(a)` | [hex]#1A# [hex]#01# | chat + bars | Set attribute.
| [hex]#1B# + `(a)` | [hex]#1B# [hex]#01# | chat + bars | Remove attribute.
| [hex]#1C# | [hex]#1C# | chat + bars | Reset attributes and color.
|===
[NOTE]
@@ -1046,7 +1068,7 @@ Then some macros are defined to call these functions.
For example, function _hook_timer_ is defined in structure _t_weechat_plugin_
like this:
[source,C]
[source,c]
----
struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
long interval,
@@ -1059,7 +1081,7 @@ struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
And the macro used to call this function is:
[source,C]
[source,c]
----
#define weechat_hook_timer(__interval, __align_second, __max_calls, \
__callback, __data) \
@@ -1070,7 +1092,7 @@ And the macro used to call this function is:
So in a plugin, the call to function will be for example:
[source,C]
[source,c]
----
server->hook_timer_sasl = weechat_hook_timer (timeout * 1000,
0, 1,
@@ -1183,7 +1205,7 @@ work on it.
The translations missing in files are indicated by this string:
----
// TRANSLATION MISSING
// TRANSLATION MISSING
----
You must translate whole file except links and special keywords for notes,
@@ -1200,7 +1222,7 @@ warnings, ... These words must be kept unchanged:
[CAUTION]
----
When there is a name after `<<link_name>>`, then you must translate it:
When there is a name after `+<<link_name>>+`, then you must translate it:
----
<<link_name,this text must be translated>>
+42 -29
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?
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:
----
@@ -727,7 +727,8 @@ you have to use kbd:[Alt] instead of kbd:[Shift]).
If you are using macOS, you must install `openssl` from Homebrew.
A CA file will be bootstrapped using certificates from the system keychain.
You can then set the path to certificates in WeeChat:
With WeeChat ≤ 3.1, you can then set the path to system certificates:
----
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
@@ -764,10 +765,11 @@ by your server name:
/set irc.server.xxx.ssl_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
----
[[irc_ssl_freenode]]
=== How can I connect to freenode server using SSL?
[[irc_ssl_libera]]
=== How can I connect to libera server using SSL?
Set option _weechat.network.gnutls_ca_file_ to file with certificates:
With WeeChat ≤ 3.1, set option _weechat.network.gnutls_ca_file_ to file with
certificates:
----
/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"
@@ -786,9 +788,9 @@ Check that you have this file on your system (commonly brought by package
Setup server port, SSL, then connect:
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/connect freenode
/set irc.server.libera.addresses "irc.libera.chat/6697"
/set irc.server.libera.ssl on
/connect libera
----
[[irc_oauth]]
@@ -813,25 +815,25 @@ If the server supports SASL, you should use that instead of sending the
command for nickserv authentication, for example:
----
/set irc.server.freenode.sasl_username "mynick"
/set irc.server.freenode.sasl_password "xxxxxxx"
/set irc.server.libera.sasl_username "mynick"
/set irc.server.libera.sasl_password "xxxxxxx"
----
If the server does not support SASL, you can add a delay (between command and
join of channels):
----
/set irc.server.freenode.command_delay 5
/set irc.server.libera.command_delay 5
----
[[edit_autojoin]]
=== How can I add/remove channels from autojoin option?
You can use the `/set` command to edit the list of autojoin channels,
for example for the "freenode" server:
for example for the "libera" server:
----
/set irc.server.freenode.autojoin [TAB]
/set irc.server.libera.autojoin [TAB]
----
[NOTE]
@@ -1002,16 +1004,16 @@ _buffer_autoset.py_ script:
----
For example, to permanently disable highlights from "mike" on #weechat
on the IRC server freenode:
on the IRC server libera:
----
/buffer_autoset add irc.freenode.#weechat hotlist_max_level_nicks_add mike:2
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
To apply it to the entire freenode server instead:
To apply it to the entire libera server instead:
----
/buffer_autoset add irc.freenode hotlist_max_level_nicks_add mike:2
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
For more examples, see `+/help buffer_autoset+`.
@@ -1047,15 +1049,17 @@ Scripts are not compatible with other IRC clients.
[[scripts_update]]
=== The command "/script update" can not read scripts, how to fix that?
First check questions about SSL connection in this FAQ
(especially the option _weechat.network.gnutls_ca_file_).
First check questions about SSL connection in this FAQ.
If still not working, try to manually delete the scripts file (in your shell):
----
$ rm ~/.weechat/script/plugins.xml.gz
$ rm ~/.cache/weechat/script/plugins.xml.gz
----
[NOTE]
With WeeChat ≤ 3.1, the path should be: _~/.weechat/script/plugins.xml.gz_.
And update scripts again in WeeChat:
----
@@ -1075,10 +1079,18 @@ have to update manually the file yourself to get updates):
* in your shell, with curl installed:
----
$ cd ~/.weechat/script
$ cd ~/.cache/weechat/script
$ curl -O https://weechat.org/files/plugins.xml.gz
----
If you're running macOS and the downloaded file has a size of 0 bytes,
try to set this variable in your shell initialization file or on command line,
before starting WeeChat:
----
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
----
[[spell_dictionaries]]
=== I installed aspell dictionaries on my system, how can I use them without restarting WeeChat?
@@ -1125,8 +1137,8 @@ You can try following tips to consume less memory:
fifo, logger, perl, python, ruby, lua, tcl, guile, javascript, php, spell,
xfer (used for DCC). See `/help weechat.plugin.autoload`.
* Load only scripts that you really need.
* Do not load certificates if SSL is *NOT* used: set empty string in option
_weechat.network.gnutls_ca_file_.
* Do not load system certificates if SSL is *NOT* used: turn off this option:
_weechat.network.gnutls_ca_system_.
* Reduce value of option _weechat.history.max_buffer_lines_number_ or set value
of option _weechat.history.max_buffer_lines_minutes_.
* Reduce value of option _weechat.history.max_commands_.
@@ -1182,16 +1194,16 @@ For example:
----
/secure passphrase xxxxxxxxxx
/secure set freenode_username username
/secure set freenode_password xxxxxxxx
/set irc.server.freenode.sasl_username "${sec.data.freenode_username}"
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
/secure set libera_username username
/secure set libera_password xxxxxxxx
/set irc.server.libera.sasl_username "${sec.data.libera_username}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----
[[sharing_config_files]]
=== I want to share my WeeChat configuration, what files should I share and what should I keep private?
You can share files _~/.weechat/*.conf_ except the file _sec.conf_ which
You can share configuration files _*.conf_ except the file _sec.conf_ which
contains your passwords ciphered with your passphrase.
Some other files may contain sensitive info like passwords (if they are not
@@ -1231,7 +1243,8 @@ $ LD_PRELOAD=/lib/libpthread.so.0 gdb /path/to/weechat
[[supported_os]]
=== What is the list of supported platforms for WeeChat? Will it be ported to other operating systems?
The full list is on this page: https://weechat.org/download
WeeChat runs fine on most Linux/BSD distributions, GNU/Hurd, Mac OS and Windows
(Cygwin and Windows Subsystem for Linux).
We do our best to run on as many platforms as possible. Help is welcome for
some OS' we don't have, to test WeeChat.
File diff suppressed because it is too large Load Diff
+21 -28
View File
@@ -105,12 +105,12 @@ other plugins in the list.
You can add an IRC server with the `/server` command, for example:
----
/server add freenode chat.freenode.net
/server add libera irc.libera.chat/6697 -ssl
----
In this command, `freenode` is the internal server name used by WeeChat:
you'll be able to connect with `/connect freenode` and the server options
are _irc.server.freenode.xxx_.
In this command, `libera` is the internal server name used by WeeChat:
you'll be able to connect with `/connect libera` and the server options
are _irc.server.libera.xxx_.
As usual, help is available if you're lost:
@@ -129,45 +129,38 @@ For each server option, WeeChat uses its value if it is defined (not
"null"). Otherwise WeeChat uses default value ("irc.server_default.xxx").
For example there are default nicks (based on your un*x login), and you can
override them for the freenode server with following command:
override them for the libera server with following command:
----
/set irc.server.freenode.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
/set irc.server.libera.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
----
To set the user and real names:
----
/set irc.server.freenode.username "My user name"
/set irc.server.freenode.realname "My real name"
/set irc.server.libera.username "My user name"
/set irc.server.libera.realname "My real name"
----
To enable auto-connect to server at startup:
----
/set irc.server.freenode.autoconnect on
----
To connect with SSL:
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/set irc.server.libera.autoconnect on
----
If SASL is available on the server, you can use it for authentication (you will be
identified before you join channels):
----
/set irc.server.freenode.sasl_username "mynick"
/set irc.server.freenode.sasl_password "xxxxxxx"
/set irc.server.libera.sasl_username "mynick"
/set irc.server.libera.sasl_password "xxxxxxx"
----
To run a command after connection to server, for example to authenticate
with nickserv (only if you don't use SASL for authentication):
----
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
/set irc.server.libera.command "/msg nickserv identify xxxxxxx"
----
[NOTE]
@@ -182,23 +175,23 @@ First setup a passphrase:
/secure passphrase this is my secret passphrase
----
Then add a secured data with your freenode password:
Then add a secured data with your libera password:
----
/secure set freenode_password xxxxxxx
/secure set libera_password xxxxxxx
----
Then you can use `+${sec.data.freenode_password}+` instead of your password in the
Then you can use `+${sec.data.libera_password}+` instead of your password in the
IRC options mentioned above, for example:
----
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----
To auto-join some channels when connecting to server:
----
/set irc.server.freenode.autojoin "#channel1,#channel2"
/set irc.server.libera.autojoin "#channel1,#channel2"
----
[TIP]
@@ -210,24 +203,24 @@ To remove a value of a server option, and use the default value instead,
for example to use default nicks (irc.server_default.nicks):
----
/unset irc.server.freenode.nicks
/unset irc.server.libera.nicks
----
Other options: you can setup other options with the following command ("xxx" is
option name):
----
/set irc.server.freenode.xxx value
/set irc.server.libera.xxx value
----
[[connect_to_irc_server]]
== Connect to IRC server
----
/connect freenode
/connect libera
----
With this command, WeeChat connects to the freenode server and auto-joins the
With this command, WeeChat connects to the libera server and auto-joins the
channels configured in the "autojoin" server option.
[NOTE]
+72 -72
View File
@@ -436,11 +436,11 @@ hda:
item 2:
__path: ['0x558d62840ea0']
number: 1
full_name: 'irc.server.freenode'
full_name: 'irc.server.libera'
item 3:
__path: ['0x558d62a9cea0']
number: 2
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
----
* Request all lines of first buffer:
@@ -588,15 +588,15 @@ inf: ('version_number', '34144256')
* Request WeeChat directory:
----
(info_weechat_dir) info weechat_dir
(info_weechat_config_dir) info weechat_config_dir
----
Response:
[source,python]
----
id: 'info_weechat_dir'
inf: ('weechat_dir', '/home/xxx/.weechat')
id: 'info_weechat_config_dir'
inf: ('weechat_config_dir', '/home/user/.config/weechat')
----
[[command_infolist]]
@@ -747,7 +747,7 @@ Syntax:
Arguments:
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
_core.weechat_ or _irc.freenode.#weechat_)
_core.weechat_ or _irc.libera.#weechat_)
Examples:
@@ -856,10 +856,10 @@ hda:
prefix_color: None
----
* Request nicklist for buffer "irc.freenode.#weechat":
* Request nicklist for buffer "irc.libera.#weechat":
----
(nicklist_weechat) nicklist irc.freenode.#weechat
(nicklist_weechat) nicklist irc.libera.#weechat
----
Response:
@@ -948,7 +948,7 @@ Syntax:
Arguments:
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
_core.weechat_ or _irc.freenode.#weechat_)
_core.weechat_ or _irc.libera.#weechat_)
* _data_: data to send to buffer: if beginning by `/`, this will be executed as
a command on buffer, otherwise text is sent as input of buffer
@@ -963,7 +963,7 @@ input core.weechat /help filter
* Send message "hello!" to #weechat channel:
----
input irc.freenode.#weechat hello!
input irc.libera.#weechat hello!
----
[[command_completion]]
@@ -983,7 +983,7 @@ Syntax:
Arguments:
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
_core.weechat_ or _irc.freenode.#weechat_)
_core.weechat_ or _irc.libera.#weechat_)
* _position_: position for completion in string (starts to 0);
if the value is -1, the position is the length of _data_ (so the completion
is made at the end of _data_)
@@ -1144,7 +1144,7 @@ Syntax:
Arguments:
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
_core.weechat_ or _irc.freenode.#weechat_); name "*" can be used to
_core.weechat_ or _irc.libera.#weechat_); name "*" can be used to
specify all buffers
* _options_: one of following keywords, separated by commas (default is
_buffers,upgrade,buffer,nicklist_ for "*" and _buffer,nicklist_ for a buffer):
@@ -1179,14 +1179,14 @@ sync core.buffer
* Synchronize #weechat channel, without nicklist:
----
sync irc.freenode.#weechat buffer
sync irc.libera.#weechat buffer
----
* Get general signals + all signals for #weechat channel:
----
sync * buffers,upgrade
sync irc.freenode.#weechat
sync irc.libera.#weechat
----
[[command_desync]]
@@ -1209,7 +1209,7 @@ Syntax:
Arguments:
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
_core.weechat_ or _irc.freenode.#weechat_); name "*" can be used to
_core.weechat_ or _irc.libera.#weechat_); name "*" can be used to
specify all buffers
* _options_: one of following keywords, separated by commas (default is
_buffers,upgrade,buffer,nicklist_ for "*" and _buffer,nicklist_ for a buffer);
@@ -1217,7 +1217,7 @@ Arguments:
[NOTE]
When using buffer "*", the other buffers synchronized (using a name) are kept. +
So if you send: "sync *", then "sync irc.freenode.#weechat", then "desync *",
So if you send: "sync *", then "sync irc.libera.#weechat", then "desync *",
the updates on #weechat channel will still be sent by WeeChat (you must remove
it explicitly to stop updates).
@@ -1235,13 +1235,13 @@ desync * buffers,upgrade,buffer,nicklist
* Desynchronize nicklist for #weechat channel (keep buffer updates):
----
desync irc.freenode.#weechat nicklist
desync irc.libera.#weechat nicklist
----
* Desynchronize #weechat channel:
----
desync irc.freenode.#weechat
desync irc.libera.#weechat
----
[[command_test]]
@@ -1481,7 +1481,7 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| short_name | string | Short name (example: _#weechat_).
| nicklist | integer | 1 if buffer has a nicklist, otherwise 0.
| title | string | Buffer title.
@@ -1490,8 +1490,8 @@ Data sent as hdata:
| next_buffer | pointer | Pointer to next buffer.
|===
Example: channel _#weechat_ joined on freenode, new buffer
_irc.freenode.#weechat_:
Example: channel _#weechat_ joined on libera, new buffer
_irc.libera.#weechat_:
[source,python]
----
@@ -1511,13 +1511,13 @@ hda:
item 1:
__path: ['0x35a8a60']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
short_name: None
nicklist: 0
title: None
local_variables: {
'plugin': 'irc',
'name': 'freenode.#weechat',
'name': 'libera.#weechat',
}
prev_buffer: '0x34e7400'
next_buffer: '0x0'
@@ -1535,12 +1535,12 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| prev_buffer | pointer | Pointer to previous buffer.
| next_buffer | pointer | Pointer to next buffer.
|===
Example: buffer _irc.freenode.#weechat_ moved to number 2:
Example: buffer _irc.libera.#weechat_ moved to number 2:
[source,python]
----
@@ -1556,7 +1556,7 @@ hda:
item 1:
__path: ['0x34588c0']
number: 2
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x347b9f0'
next_buffer: '0x3471bc0'
----
@@ -1573,12 +1573,12 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| prev_buffer | pointer | Pointer to previous buffer.
| next_buffer | pointer | Pointer to next buffer.
|===
Example: buffer _irc.freenode.#weechat_ merged with buffer #2:
Example: buffer _irc.libera.#weechat_ merged with buffer #2:
[source,python]
----
@@ -1594,7 +1594,7 @@ hda:
item 1:
__path: ['0x4db4c00']
number: 2
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x4cef9b0'
next_buffer: '0x0'
----
@@ -1611,12 +1611,12 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| prev_buffer | pointer | Pointer to previous buffer.
| next_buffer | pointer | Pointer to next buffer.
|===
Example: buffer _irc.freenode.#weechat_ unmerged:
Example: buffer _irc.libera.#weechat_ unmerged:
[source,python]
----
@@ -1632,7 +1632,7 @@ hda:
item 1:
__path: ['0x4db4c00']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x4cef9b0'
next_buffer: '0x0'
----
@@ -1651,12 +1651,12 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| prev_buffer | pointer | Pointer to previous buffer.
| next_buffer | pointer | Pointer to next buffer.
|===
Example: buffer _irc.freenode.#weechat_ hidden:
Example: buffer _irc.libera.#weechat_ hidden:
[source,python]
----
@@ -1672,7 +1672,7 @@ hda:
item 1:
__path: ['0x4db4c00']
number: 2
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x4cef9b0'
next_buffer: '0x0'
----
@@ -1691,12 +1691,12 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| prev_buffer | pointer | Pointer to previous buffer.
| next_buffer | pointer | Pointer to next buffer.
|===
Example: buffer _irc.freenode.#weechat_ unhidden:
Example: buffer _irc.libera.#weechat_ unhidden:
[source,python]
----
@@ -1712,7 +1712,7 @@ hda:
item 1:
__path: ['0x4db4c00']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x4cef9b0'
next_buffer: '0x0'
----
@@ -1729,7 +1729,7 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| short_name | string | Short name (example: _#weechat_).
| local_variables | hashtable | Local variables.
|===
@@ -1750,15 +1750,15 @@ hda:
item 1:
__path: ['0x4df7b80']
number: 5
full_name: 'irc.freenode.Flash2'
full_name: 'irc.libera.Flash2'
short_name: 'Flash2'
local_variables: {
'server': 'freenode',
'server': 'libera',
'plugin': 'irc',
'type': 'private',
'channel': 'FlashCode',
'nick': 'test',
'name': 'freenode.Flash2',
'name': 'libera.Flash2',
}
----
@@ -1774,7 +1774,7 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| title | string | Buffer title.
|===
@@ -1793,7 +1793,7 @@ hda:
item 1:
__path: ['0x4a715d0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
title: 'Welcome on #weechat! https://weechat.org/'
----
@@ -1811,10 +1811,10 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
|===
Example: buffer _irc.freenode.#weechat_ has been cleared:
Example: buffer _irc.libera.#weechat_ has been cleared:
[source,python]
----
@@ -1828,7 +1828,7 @@ hda:
item 1:
__path: ['0x4a715d0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
----
[[message_buffer_type_changed]]
@@ -1843,7 +1843,7 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| type | integer | Buffer type: 0 = formatted (default), 1 = free content.
|===
@@ -1879,11 +1879,11 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| local_variables | hashtable | Local variables.
|===
Example: local variable _test_ added in buffer _irc.freenode.#weechat_:
Example: local variable _test_ added in buffer _irc.libera.#weechat_:
[source,python]
----
@@ -1898,15 +1898,15 @@ hda:
item 1:
__path: ['0x4a73de0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
local_variables: {
'server': 'freenode',
'server': 'libera',
'test': 'value',
'plugin': 'irc',
'type': 'channel',
'channel': '#weechat',
'nick': 'test',
'name': 'freenode.#weechat',
'name': 'libera.#weechat',
}
----
@@ -1922,11 +1922,11 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| local_variables | hashtable | Local variables.
|===
Example: local variable _test_ updated in buffer _irc.freenode.#weechat_:
Example: local variable _test_ updated in buffer _irc.libera.#weechat_:
[source,python]
----
@@ -1941,7 +1941,7 @@ hda:
item 1:
__path: ['0x4a73de0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
local_variables: {
'server': 'local',
'test': 'value2',
@@ -1949,7 +1949,7 @@ hda:
'type': 'channel',
'channel': '#weechat',
'nick': 'test',
'name': 'freenode.#weechat',
'name': 'libera.#weechat',
}
----
@@ -1965,11 +1965,11 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
| local_variables | hashtable | Local variables.
|===
Example: local variable _test_ removed from buffer _irc.freenode.#weechat_:
Example: local variable _test_ removed from buffer _irc.libera.#weechat_:
[source,python]
----
@@ -1984,14 +1984,14 @@ hda:
item 1:
__path: ['0x4a73de0']
number: 3
full_name: 'irc.freenode.#prout'
full_name: 'irc.libera.#prout'
local_variables: {
'server': 'local',
'plugin': 'irc',
'type': 'channel',
'channel': '#weechat',
'nick': 'test',
'name': 'freenode.#weechat',
'name': 'libera.#weechat',
}
----
@@ -2017,7 +2017,7 @@ Data sent as hdata:
| message | string | Message.
|===
Example: new message _hello!_ from nick _FlashCode_ on buffer _irc.freenode.#weechat_:
Example: new message _hello!_ from nick _FlashCode_ on buffer _irc.libera.#weechat_:
[source,python]
----
@@ -2066,10 +2066,10 @@ Data sent as hdata:
|===
| Name | Type | Description
| number | integer | Buffer number (≥ 1).
| full_name | string | Full name (example: _irc.freenode.#weechat_).
| full_name | string | Full name (example: _irc.libera.#weechat_).
|===
Example: buffer _irc.freenode.#weechat_ is being closed by WeeChat:
Example: buffer _irc.libera.#weechat_ is being closed by WeeChat:
[source,python]
----
@@ -2083,7 +2083,7 @@ hda:
item 1:
__path: ['0x4a715d0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
----
[[message_nicklist]]
@@ -2109,7 +2109,7 @@ Data sent as hdata:
| prefix_color | string | Prefix color (only for a nick).
|===
Example: nicklist for buffer _irc.freenode.#weechat_:
Example: nicklist for buffer _irc.libera.#weechat_:
[source,python]
----
@@ -2529,7 +2529,7 @@ objects, and then set of objects (path with pointers, then objects).
* _values_: list of values (number of values is number of keys returned for
hdata)
Example of hdata with two buffers (weechat core and freenode server) and two
Example of hdata with two buffers (weechat core and libera server) and two
keys (_number_ and _full_name_):
....
@@ -2537,10 +2537,10 @@ keys (_number_ and _full_name_):
hdata buffer:gui_buffers(*) number,full_name
# response
┌────────┬──────────────────────────┬───╥─────────┬───┬──────────────╥─────────┬───┬─────────────────────
│ buffer │ number:int,full_name:str │ 2 ║ 0x12345 │ 1 │ core.weechat ║ 0x6789a │ 2 │ irc.server.freenode
└────────┴──────────────────────────┴───╨─────────┴───┴──────────────╨─────────┴───┴─────────────────────
└──────┘ └────────────────────────┘ └─┘ └──────────────────────────┘ └─────────────────────────────────
┌────────┬──────────────────────────┬───╥─────────┬───┬──────────────╥─────────┬───┬───────────────────┐
│ buffer │ number:int,full_name:str │ 2 ║ 0x12345 │ 1 │ core.weechat ║ 0x6789a │ 2 │ irc.server.libera
└────────┴──────────────────────────┴───╨─────────┴───┴──────────────╨─────────┴───┴───────────────────┘
└──────┘ └────────────────────────┘ └─┘ └──────────────────────────┘ └───────────────────────────────┘
h-path keys count buffer 1 buffer 2
....
@@ -2682,7 +2682,7 @@ An item is:
** _type_: type of variable (_int_, _str_, ...)
** _value_: value of variable
Example of infolist with two buffers (weechat core and freenode server):
Example of infolist with two buffers (weechat core and libera server):
....
# command
+102 -72
View File
@@ -66,12 +66,17 @@ link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference].
[[languages_specificities]]
=== Languages specificities
[[language_python]]
==== Python
[[python_module]]
===== Module
WeeChat defines a `weechat` module which must be imported with `import weechat`.
WeeChat defines a `weechat` module which must be imported with `import weechat`. +
A Python stub for WeeChat API is available in the repository:
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi].
[[python_functions]]
===== Functions
Functions are called with `+weechat.xxx(arg1, arg2, ...)+`.
@@ -79,6 +84,7 @@ Functions are called with `+weechat.xxx(arg1, arg2, ...)+`.
Functions `+print*+` are called `+prnt*+` in python (because `print` was a
reserved keyword in Python 2).
[[python_strings]]
===== Strings received in callbacks
In Python 3 and with WeeChat ≥ 2.7, the strings received in callbacks have type
@@ -132,18 +138,23 @@ In Python 2, which is now deprecated and should not be used any more, the
strings sent to callbacks are always of type `str`, and may contain invalid
UTF-8 data, in the cases mentioned above.
[[language_perl]]
==== Perl
[[perl_functions]]
===== Functions
Functions are called with `+weechat::xxx(arg1, arg2, ...);+`.
[[language_ruby]]
==== Ruby
[[ruby_init]]
===== Initialization
You have to define _weechat_init_ and call _register_ inside.
[[ruby_functions]]
===== Functions
Functions are called with `+Weechat.xxx(arg1, arg2, ...)+`.
@@ -168,20 +179,26 @@ Weechat.bar_new("name", "off", "0", "window", "", "left", "vertical", "vertical"
["default", "default", "default", "default"], "0", "items")
----
[[language_lua]]
==== Lua
[[lua_functions]]
===== Functions
Functions are called with `+weechat.xxx(arg1, arg2, ...)+`.
[[language_tcl]]
==== Tcl
[[tcl_functions]]
===== Functions
Functions are called with `+weechat::xxx arg1 arg2 ...+`.
[[language_guile]]
==== Guile (Scheme)
[[guile_functions]]
===== Functions
Functions are called with `+(weechat:xxx arg1 arg2 ...)+`.
@@ -194,14 +211,18 @@ arguments in Guile:
* config_new_option
* bar_new
[[language_javascript]]
==== JavaScript
[[javascript_functions]]
===== Functions
Functions are called with `+weechat.xxx(arg1, arg2, ...);+`.
[[language_php]]
==== PHP
[[php_functions]]
===== Functions
Functions are called with `+weechat_xxx(arg1, arg2, ...);+`.
@@ -212,11 +233,11 @@ Functions are called with `+weechat_xxx(arg1, arg2, ...);+`.
All WeeChat scripts must "register" themselves to WeeChat, and this must be
first WeeChat function called in script.
Prototype:
Prototype (Python):
[source,python]
----
weechat.register(name, author, version, license, description, shutdown_function, charset)
def register(name: str, author: str, version: str, license: str, description: str, shutdown_function: str, charset: str) -> int: ...
----
Arguments:
@@ -337,7 +358,7 @@ WeeChat is starting.
For example with Python:
----
$ cd ~/.weechat/python/autoload
$ cd ~/.local/share/weechat/python/autoload
$ ln -s ../script.py
----
@@ -776,58 +797,58 @@ List of constants in script API:
| Category | Constants
| return codes |
WEECHAT_RC_OK +
WEECHAT_RC_OK_EAT +
WEECHAT_RC_ERROR
`WEECHAT_RC_OK` (integer) +
`WEECHAT_RC_OK_EAT` (integer) +
`WEECHAT_RC_ERROR` (integer)
| configuration files |
WEECHAT_CONFIG_READ_OK +
WEECHAT_CONFIG_READ_MEMORY_ERROR +
WEECHAT_CONFIG_READ_FILE_NOT_FOUND +
WEECHAT_CONFIG_WRITE_OK +
WEECHAT_CONFIG_WRITE_ERROR +
WEECHAT_CONFIG_WRITE_MEMORY_ERROR +
WEECHAT_CONFIG_OPTION_SET_OK_CHANGED +
WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE +
WEECHAT_CONFIG_OPTION_SET_ERROR +
WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND +
WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET +
WEECHAT_CONFIG_OPTION_UNSET_OK_RESET +
WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED +
WEECHAT_CONFIG_OPTION_UNSET_ERROR
`WEECHAT_CONFIG_READ_OK` (integer) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_WRITE_OK` (integer) +
`WEECHAT_CONFIG_WRITE_ERROR` (integer) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (integer) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
| sorted lists |
WEECHAT_LIST_POS_SORT +
WEECHAT_LIST_POS_BEGINNING +
WEECHAT_LIST_POS_END
`WEECHAT_LIST_POS_SORT` (string) +
`WEECHAT_LIST_POS_BEGINNING` (string) +
`WEECHAT_LIST_POS_END` (string)
| hotlist |
WEECHAT_HOTLIST_LOW +
WEECHAT_HOTLIST_MESSAGE +
WEECHAT_HOTLIST_PRIVATE +
WEECHAT_HOTLIST_HIGHLIGHT
`WEECHAT_HOTLIST_LOW` (string) +
`WEECHAT_HOTLIST_MESSAGE` (string) +
`WEECHAT_HOTLIST_PRIVATE` (string) +
`WEECHAT_HOTLIST_HIGHLIGHT` (string)
| hook process |
WEECHAT_HOOK_PROCESS_RUNNING +
WEECHAT_HOOK_PROCESS_ERROR
`WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
`WEECHAT_HOOK_PROCESS_ERROR` (integer)
| hook connect |
WEECHAT_HOOK_CONNECT_OK +
WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND +
WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND +
WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED +
WEECHAT_HOOK_CONNECT_PROXY_ERROR +
WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR +
WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR +
WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR +
WEECHAT_HOOK_CONNECT_MEMORY_ERROR +
WEECHAT_HOOK_CONNECT_TIMEOUT +
WEECHAT_HOOK_CONNECT_SOCKET_ERROR
`WEECHAT_HOOK_CONNECT_OK` (integer) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (integer) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
| hook signal |
WEECHAT_HOOK_SIGNAL_STRING +
WEECHAT_HOOK_SIGNAL_INT +
WEECHAT_HOOK_SIGNAL_POINTER
`WEECHAT_HOOK_SIGNAL_STRING` (string) +
`WEECHAT_HOOK_SIGNAL_INT` (string) +
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|===
[[common_tasks]]
@@ -868,13 +889,13 @@ weechat.prnt("", "%swrong arguments" % weechat.prefix("error"))
weechat.prnt("", "text %syellow on blue" % weechat.color("yellow,blue"))
# search buffer and display message
# (full name of buffer is plugin.name, for example: "irc.freenode.#weechat")
buffer = weechat.buffer_search("irc", "freenode.#weechat")
# (full name of buffer is plugin.name, for example: "irc.libera.#weechat")
buffer = weechat.buffer_search("irc", "libera.#weechat")
weechat.prnt(buffer, "message on #weechat channel")
# other solution to find an IRC buffer (better)
# (note that server and channel are separated by a comma)
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
weechat.prnt(buffer, "message on #weechat channel")
----
@@ -895,7 +916,7 @@ Examples:
weechat.command("", "/help")
# send "hello" to #weechat IRC channel (users on channel will see message)
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
weechat.command(buffer, "hello")
----
@@ -1196,7 +1217,7 @@ xxx,irc_raw_in2_yyy::
[source,python]
----
def join_cb(data, signal, signal_data):
# signal is for example: "freenode,irc_in2_join"
# signal is for example: "libera,irc_in2_join"
# signal_data is IRC message, for example: ":nick!user@host JOIN :#channel"
server = signal.split(",")[0]
msg = weechat.info_get_hashtable("irc_message_parse", {"message": signal_data})
@@ -1248,71 +1269,80 @@ The result is a hashtable with following keys
(the example values are built with this message:
`+@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!+`):
[width="100%",cols="1,^2,10,8",options="header"]
[width="100%",cols="3,^2,10,7",options="header"]
|===
| Key | WeeChat version | Description | Example
| Key | Since WeeChat ^(1)^ | Description | Example
| tags | 0.4.0 |
| tags | 0.4.0 |
The tags in message (can be empty). |
`+time=2015-06-27T16:40:35.000Z+`
| message_without_tags | ≥ 0.4.0 |
| 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 |
The message without the tags (the same as message if there are no tags). |
`+:nick!user@host PRIVMSG #weechat :hello!+`
| nick | 0.3.4 |
| nick | 0.3.4 |
The origin nick. |
`+nick+`
| user | 2.7 |
| user | 2.7 |
The origin user. |
`+user+`
| host | 0.3.4 |
| host | 0.3.4 |
The origin host (includes the nick). |
`+nick!user@host+`
| command | 0.3.4 |
| command | 0.3.4 |
The command (_PRIVMSG_, _NOTICE_, ...). |
`+PRIVMSG+`
| channel | 0.3.4 |
| channel | 0.3.4 |
The target channel. |
`+#weechat+`
| arguments | 0.3.4 |
| arguments | 0.3.4 |
The command arguments (includes the channel). |
`+#weechat :hello!+`
| text | 1.3 |
| text | 1.3 |
The text (for example user message). |
`+hello!+`
| pos_command | 1.3 |
| pos_command | 1.3 |
The index of _command_ in message ("-1" if _command_ was not found). |
`+47+`
| pos_arguments | 1.3 |
| pos_arguments | 1.3 |
The index of _arguments_ in message ("-1" if _arguments_ was not found). |
`+55+`
| pos_channel | 1.3 |
| pos_channel | 1.3 |
The index of _channel_ in message ("-1" if _channel_ was not found). |
`+55+`
| pos_text | 1.3 |
| pos_text | 1.3 |
The index of _text_ in message ("-1" if _text_ was not found). |
`+65+`
|===
[NOTE]
^(1)^ The key has been introduced in this WeeChat version.
[source,python]
----
dict = weechat.info_get_hashtable(
"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 == {
# "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!",
# "nick": "nick",
# "user": "user",
@@ -1321,10 +1351,10 @@ dict = weechat.info_get_hashtable(
# "channel": "#weechat",
# "arguments": "#weechat :hello!",
# "text": "hello!",
# "pos_command": "47",
# "pos_arguments": "55",
# "pos_channel": "55",
# "pos_text": "65",
# "pos_command": "65",
# "pos_arguments": "73",
# "pos_channel": "73",
# "pos_text": "83",
# }
----
@@ -1365,8 +1395,8 @@ weechat.prnt("", "Version %s" % weechat.info_get("version", ""))
[source,python]
----
# WeeChat home directory, for example: "/home/xxxx/.weechat"
weechat.prnt("", "WeeChat home dir: %s" % weechat.info_get("weechat_dir", ""))
# WeeChat config directory, for example: "/home/user/.config/weechat"
weechat.prnt("", "WeeChat config dir: %s" % weechat.info_get("weechat_config_dir", ""))
# keyboard inactivity
weechat.prnt("", "Inactivity since %s seconds" % weechat.info_get("inactivity", ""))
-131
View File
@@ -1,131 +0,0 @@
= WeeChat tester's guide
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: en
:toc: left
:sectnums:
:docinfo1:
[[purpose]]
== Purpose
Many thankful users ask us how can they help developing WeeChat. The
easiest (and also most tricky) way to help developing WeeChat is testing!
Testing is a very important part of software development and should not be
underestimated. When some features are implemented it should be tested, but for
some features there are too many use cases or these cases are tricky and
developers can't try out every case.
For example: A notorious charset plugin was introduced in WeeChat 0.2.2: none
of us (developers, contributors and testers) used channels with national
characters in their names and when 0.2.2 was released we got flooded by Russian
users blaming us. If we have more testers it should not happen again in the
future.
Testing the stable version of WeeChat is pointless because developers are busy
implementing new stuff (and fixing old bugs) all the time.
[[prepare_system]]
== Prepare your system
It would help us a lot if you enable Linux _core_ files: if WeeChat crashes,
Linux will write a file called _core_. This file contains very useful debug
info, to know exactly where is problem in WeeChat.
If you're using the _bash_ shell, add following line to your _~/.bashrc_:
----
ulimit -c unlimited
----
[[download]]
== Download devel version
Fresh code (with latest bugs and features) is stored in a GIT repository.
You may decide to build it manually (recommended way):
* The GIT version can be built and installed in parallel to the stable version.
* You don't need root access, and you don't need to sacrifice the stable
version of WeeChat.
[[get_sources]]
=== Get and build sources
First create a directory, for example _weechat-git_:
----
$ mkdir ~/weechat-git
$ cd ~/weechat-git
----
If you have git installed, you can just clone the git repository (recommended
way):
----
$ git clone https://github.com/weechat/weechat.git
$ cd weechat
----
[NOTE]
Later, you can run `git pull` in this directory, to get deltas with
the latest updates.
Otherwise you can download and unpack _devel_ package:
----
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
$ tar xvjf weechat-devel.tar.bz2
$ cd weechat-devel
----
To build sources, CMake is recommended:
----
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
$ make
$ make install
----
If you don't have CMake, it's still possible to use autotools:
----
$ ./autogen.sh
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
$ make
$ make install
----
[[install_binary_package]]
=== Install binary package
According to your Linux distribution:
* Debian: https://weechat.org/download/debian
* Gentoo: https://weechat.org/download
* ArchLinux: PKGBUILD from https://aur.archlinux.org/
* other: we don't know! Eheh.
[[run]]
== Run WeeChat
Command is:
----
$ ~/weechat-git/bin/weechat
----
If you're still awake you should see the familiar interface and brag about
having the newest possible version of WeeChat. ;)
Now if you experience strange behavior (it may have issues or crash or boil
your beer) don't hesitate to join _#weechat_ at _chat.freenode.net_ and tell us.
If it doesn't crash - tell us too, we need your feedback!
+2428 -1857
View File
File diff suppressed because it is too large Load Diff
+13
View File
@@ -19,6 +19,19 @@
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
add_custom_command(
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 \
docinfo.html \
weechat_faq.es.adoc \
weechat_quickstart.es.adoc
if MAN
@@ -29,12 +30,17 @@ if MAN
man_uninstall =
endif
if DOC
doc_targets = weechat_quickstart.es.html
doc_targets = weechat_faq.es.html \
weechat_quickstart.es.html
doc_install = install-doc
doc_uninstall = uninstall-doc
endif
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
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
File diff suppressed because it is too large Load Diff
+103 -141
View File
@@ -1,4 +1,4 @@
= WeeChat Quick Start Guide
= WeeChat guía rápida
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: es
@@ -7,57 +7,54 @@
:docinfo1:
// TRANSLATION MISSING
Translators:
Traductores:
* Lázaro A. <uranio-235@myopera.com>, 2012
* Victorhck <victorhck@mailbox.org>, 2021
[[start]]
== Iniciar WeeChat
Es recomendable una terminal emulada para X (pero no indispensable)
Es recomendable un emulador de terminal para X (pero no indispensable)
rxvt-unicode: tiene un buen soporte para UTF-8, y no da problemas con
los atajas de teclados predeterminados.
los atajos de teclado predeterminados.
// TRANSLATION MISSING
Run from your shell:
Ejecuta desde una consola:
----
$ weechat
----
[[help]]
== Ayuda en linea
== Ayuda en línea
WeeChat tiene ayuda para todos los comandos, solo teclee:
WeeChat tiene ayuda para todos los comandos, simplemente escriba:
----
/help
----
Para obtener ayuda específicamente de un comando, teclee:
Para obtener ayuda específica de un comando, escriba:
----
/help comando
----
// TRANSLATION MISSING
Help is available for options as well:
También hay ayuda disponible para las opciones:
----
/help config.section.option
----
(donde `config` es el nombre de la configuración del núcleo o del
plugin que desea configurar, `section`, la sección de esa configuración
complemento que desea configurar, `section`, la sección de esa configuración
y `option` el nombre de la opción).
// TRANSLATION MISSING
[[options]]
== Set options
== Configurar las opciones
Para configurar una opción, use:
Para configurar una opción, utilice:
----
/set config.section.option valor
@@ -66,75 +63,66 @@ Para configurar una opción, use:
WeeChat usará inmediatamente el nuevo valor asignado (*no* es necesario
reiniciar WeeChat después de aplicar cambios a la configuración).
Todas las opciones se salvarán de manera automática cuando cierre
WeeChat o usando el comando `/save` para forzar la forzar a WeeChat a
Todas las opciones se guardarán de manera automática cuando cierre
WeeChat o usando el comando `/save` para forzar a WeeChat a
guardar todos los archivos de configuración.
// TRANSLATION MISSING
[IMPORTANT]
It is *not recommended* to edit configuration files by hand because WeeChat
may write them at any time (for example on `/quit`) and after any change
you must run the command `/reload` (with the risk of losing other changes
that were not yet saved with `/save`). +
You can use the command `/set`, which checks the value and applies immediately
the changes.
*No se recomienda* editar los archivos de configuración a mano porque WeeChat
puede escribirlos en cualquier momento (por ejemplo al ejecutar `/quit`) y después de cualquier cambio
debería ejecutar el comando `/reload` (con el riesgo de perder otros cambios
que todavía no fueron guardados con `/save`). +
Puede utilizar el comando `/set`, que comprueba el valor y aplica inmediatamente
los cambios.
// TRANSLATION MISSING
The plugin _fset_ allows you to easily browse options and change them.
El complemento _fset_ le permite navegar fácilmente por las opciones y cambiarlas.
// TRANSLATION MISSING
For example to display WeeChat options:
Por ejemplo para mostrar las opciones de WeeChat:
----
/fset weechat.*
----
// TRANSLATION MISSING
IRC options:
Opciones de IRC:
----
/fset irc.*
----
// TRANSLATION MISSING
The `/fset` command has completion on part of option names, so for example if
you type `/fset hot` and press kbd:[Tab] this is completed as `/fset hotlist`.
If you press kbd:[Enter], options about the hotlist are displayed.
El comando `/fset` dispone de autocompletado de parte de los nombres de opciones, así por ejemplo si
escribe `/fset hot` y presiona kbd:[Tab] el resto del comando será autocompletado como `/fset hotlist`.
Si pulsa kbd:[Enter], se mostrarán las opciones sobre los atajos de teclado.
// TRANSLATION MISSING
For more information about `/fset` command and keys, see `/help fset`.
Para más información sobre el comando `/fset` y las teclas, vea `/help fset`.
[[core_vs_plugins]]
== Núcleo vs Plugins
== Núcleo vs Complementos
Llamaremos "Núcleo de WeeChat" a la aplicación que solo se usa para
mostrar información en pantalla e interactuar con el usuario, eso es lo
único que hace el núcleo de WeeChat sin no tiene plugins. (para los
único que hace el núcleo de WeeChat sin no tiene complementos. (para los
fieles seguidores: IRC fue parte del núcleo para las versiones ≤
0.2.6).
Todos los protocolos de red como IRC, provienen en plugins separados.
Todos los protocolos de red como IRC, provienen de complementos separados.
Use el comando `/plugin` para ver una lista de los plugins cargados,
Use el comando `/plugin` para ver una lista de los complementos cargados,
seguramente vera irc y otros.
// TRANSLATION MISSING
[[add_irc_server]]
== Add an IRC server
== Añadir un servidor IRC
// TRANSLATION MISSING
You can add an IRC server with `/server` command, for example:
Puede añadir un servidor IRC mediante el comando `/server`, por ejemplo:
----
/server add freenode chat.freenode.net
/server add libera irc.libera.chat/6697 -ssl
----
// TRANSLATION MISSING
In this command, `freenode` is the internal server name used by WeeChat:
you'll be able to connect with `/connect freenode` and the server options
are _irc.server.freenode.xxx_.
En este comando, `libera` es el nombre interno del servidor utilizado por WeeChat:
más tarde podrá conectar con ese servidor mediante `/connect libera` y las opciones del servidor
serán _irc.server.libera.xxx_.
La ayuda está disponible; si te pierdes:
Si se encuentra perdido, puede consultar la ayuda disponible:
----
/help server
@@ -143,9 +131,9 @@ La ayuda está disponible; si te pierdes:
[[irc_server_options]]
== Personalizar las opciones de un servidor IRC
WeeChat usa las opciones por defecto para todos los servidores
WeeChat usa las opciones predeterminadas para todos los servidores
("predeterminado") si no le especifica un valor individual a un servidor
en específico. Esas opciones por defectos son las que se muestran en
en específico. Esas opciones predeterminadas son las que se muestran en
"irc.server_default.*"
Para cada opción de "server", WeeChat usa estos valores previamente
@@ -153,123 +141,105 @@ asignados siempre y cuando no sean Nulos. Si no hay nada asignado,
WeeChat usara los valores predeterminados ("irc.server_default.xxx")
Por ejemplo, tenemos el nick por defecto (que se basa en su login) pero
usted puedes sobreescribirlo para el servidor identificado como freenode
usted puedes sobreescribirlo para el servidor identificado como libera
de la siguiente manera:
----
/set irc.server.freenode.nicks "nick,nick2,nick3,nick4,nick5"
/set irc.server.libera.nicks "nick,nick2,nick3,nick4,nick5"
----
También para configurar el nombre de usuario y el nombre real:
----
/set irc.server.freenode.username "Mi nombre de usuario"
/set irc.server.freenode.realname "Mi nombre real"
/set irc.server.libera.username "Mi nombre de usuario"
/set irc.server.libera.realname "Mi nombre real"
----
Para que el servidor se conecte cuando WeeChat inicie:
----
/set irc.server.freenode.autoconnect on
/set irc.server.libera.autoconnect on
----
// TRANSLATION MISSING
To connect with SSL:
Si la opción SASL está disponible en el servidor, puede utilizarla para autentificarse (será
identificado o identificada antes de unirse a los canales):
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/set irc.server.libera.sasl_username "nick"
/set irc.server.libera.sasl_password "xxxxxxx"
----
// TRANSLATION MISSING
If SASL is available on server, you can use it for authentication (you will be
identified before you join channels):
Para ejecutar un comando después de conectarse al servidor, por ejemplo autentificarse
con el servicio de identificación de nicks nickserv (solo si no utiliza SASL para autentificarse):
----
/set irc.server.freenode.sasl_username "nick"
/set irc.server.freenode.sasl_password "xxxxxxx"
/set irc.server.libera.command "/msg nickserv identify xxxxxxx"
----
// TRANSLATION MISSING
To run a command after connection to server, for example to authenticate
with nickserv (only if you don't use SASL for authentication):
----
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
----
// TRANSLATION MISSING
[NOTE]
Many commands in option _command_ can be separated by `;` (semi-colon).
Muchos comandos en la opción _command_ pueden ser separados por `;` (punto y coma).
// TRANSLATION MISSING
If you want to protect your password in configuration files, you can use
secured data.
Si quiere proteger su contraseña en los archivos de configuración, puede utilizar
una securización de los datos.
// TRANSLATION MISSING
First setup a passphrase:
Primero configure una frase de contraseña
----
/secure passphrase this is my secret passphrase
----
// TRANSLATION MISSING
Then add a secured data with your freenode password:
Después añada un dato securizado con su contraseña de libera:
----
/secure set freenode_password xxxxxxx
/secure set libera_password xxxxxxx
----
// TRANSLATION MISSING
Then you can use `+${sec.data.freenode_password}+` instead of your password in
IRC options mentioned above, for example:
Después puede utilizar `+${sec.data.libera_password}+` en vez de su contraseña en
las opciones de IRC mencionadas anteriormente, por ejemplo:
----
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----
Para unirse automáticamente a canales cuando el servidor se conecte:
----
/set irc.server.freenode.autojoin "#uncanal,#otrocanal"
/set irc.server.libera.autojoin "#uncanal,#otrocanal"
----
// TRANSLATION MISSING
[TIP]
You can complete name and value of options with the kbd:[Tab] key
and kbd:[Shift+Tab] for a partial completion (useful for long words like
the name of option).
Puede completar el nombre y el valor de las opciones con la tecla kbd:[Tab]
y kbd:[Shift+Tab] para un autocompletado parcial (útil para palabras largas como
el nombre de la opción).
Para eliminar un valor asignado a una opción de servidor y usar los
valores por defecto en su lugar, por ejemplo, usar el nick por defecto
valores predeterminados en su lugar, por ejemplo, usar el nick predeterminado
(irc.server_default.nicks):
----
/unset irc.server.freenode.nicks
/unset irc.server.libera.nicks
----
Otras opciones: pude configurar otras opciones con el siguiente comando,
Otras opciones: puede configurar otras opciones con el siguiente comando,
donde "xxx" es el nombre de la opción.
----
/set irc.server.freenode.xxx valor
/set irc.server.libera.xxx valor
----
[[connect_to_irc_server]]
== Conectarse a un servidor IRC
----
/connect freenode
/connect libera
----
// TRANSLATION MISSING
With this command, WeeChat connects to the freenode server and auto-joins the
channels configured in the "autojoin" server option.
Con este comando, WeeChat se conecta al servidor de libera y inicia sesión automáticamente en
los canales configurados en la opción del servidor "autojoin".
// TRANSLATION MISSING
[NOTE]
Este comando también puede usarse para crear y conectarse a un nuevo
servidor sin usar el comando `/server` (see `/help connect`).
servidor sin usar el comando `/server` (vea `/help connect`).
Por defecto, todos los buffers del servidor están junto al buffer de
núcleo. Para cambiar entre el buffer del núcleo y el buffer de los
@@ -297,36 +267,32 @@ Sale de un canal (mantiene el buffer abierto):
/part [mensaje de partida]
----
// TRANSLATION MISSING
Close a server, channel or private buffer (`/close` is an alias for
Cierra un servidor, canal o buffer privado (`/close` es un alias para
`/buffer close`):
----
/close
----
// TRANSLATION MISSING
[WARNING]
Closing the server buffer will close all channel/private buffers.
Al cerrar el buffer del servidor cerrará todos los buffer de canales/privados
// TRANSLATION MISSING
Disconnect from server, on the server buffer:
Para desconectar del servidor, en el buffer del servidor ejecute:
----
/disconnect
----
// TRANSLATION MISSING
[[irc_private_messages]]
== IRC private messages
== Mensajes privados en IRC
Open a buffer and send a message to another user (nick _foo_):
Abre un buffer y envíe un mensaje a otra persona (nick _foo_):
----
/query foo this is a message
/query foo esto es un mensaje
----
Close the private buffer:
Cierra el buffer privado:
----
/close
@@ -335,11 +301,11 @@ Close the private buffer:
[[buffer_window]]
== Manipulando buffer/ventana
Un buffer, es un componente vinculado a un plugin con un número, una
Un buffer, es un componente vinculado a un complemento con un número, una
categoría y un nombre. El buffer contiene los datos que se muestran en
la pantalla.
Una ventana es una vista de un buffer. Por defecto, una sola ventana
Una ventana es una vista de un buffer. De manera predeterminada, una sola ventana
muestra un solo buffer. Si divide la pantalla, podrá ver muchas
ventanas conteniendo varios buffer al mismo tiempo.
@@ -357,8 +323,7 @@ junto a otras mas grande (2/3) use el comando
/window splitv 33
----
// TRANSLATION MISSING
To remove the split:
Para eliminar esa división:
----
/window merge
@@ -367,19 +332,19 @@ To remove the split:
[[key_bindings]]
== Atajos de teclado
WeeChat usa muchas teclas por defecto. Las mismas, están bien
WeeChat usa muchas teclas por defecto. Éstas, están bien
explicadas en la documentación pero debe conocer al menos la mas
importantes.
- kbd:[Alt+←] / kbd:[Alt+→] o kbd:[F5] / kbd:[F6]: Cambiara al buffer
- kbd:[Alt+←] / kbd:[Alt+→] o kbd:[F5] / kbd:[F6]: Cambiará al buffer
siguiente/anterior
// TRANSLATION MISSING
- kbd:[F1] / kbd:[F2]: scroll bar with list of buffers ("buflist")
- kbd:[F7] / kbd:[F8]: Cambiara a la siguiente/anterior ventana (cuando la pantalla
- kbd:[F1] / kbd:[F2]: desplazará la barra de scroll con la lista de buffers ("buflist")
- kbd:[F7] / kbd:[F8]: cambiará a la siguiente/anterior ventana (cuando la pantalla
este dividida)
- kbd:[F9] / kbd:[F10]: desplazamiento del texto en la barra de titulo
- kbd:[F11] / kbd:[F12]: desplazamiento del texto en la lista de nick
- kbd:[Tab]: Completa los textos o nick que se escriben
- kbd:[F9] / kbd:[F10]: desplazamiento del texto en la barra de título
- kbd:[F11] / kbd:[F12]: desplazamiento del texto en la lista de nicks
- kbd:[Tab]: completa los textos o nicks que se escriben
- kbd:[PgUp] / kbd:[PgDn]: desplazamiento del texto en el buffer
- kbd:[Alt+a]: salta al siguiente buffer con actividad reciente
@@ -391,10 +356,10 @@ alguna tecla.
Por ejemplo, para asignar la combinación kbd:[Alt+!] al comando `/buffer close`:
----
/key bind (presionamos alt-k) (presionamos alt-!) /buffer close
/key bind (presionamos Alt-k) (presionamos Alt-!) /buffer close
----
El comando se vera mas o menos así:
El comando tendrá un aspecto similar a esto:
----
/key bind meta-! /buffer close
@@ -407,28 +372,25 @@ Para eliminar una combinación:
----
[[plugins_scripts]]
== Plugins/scripts
== Complementos/scripts
En algunas distribuciones como Debian, los plugins están disponibles en
En algunas distribuciones como Debian, los complementos están disponibles en
un paquete separado (como weechat-plugin).
Los plugins se cargan de manera automática cuando son encontrados por WeeChat
Los complementos se cargan de manera automática cuando son encontrados por WeeChat
(por favor, refierase a la documentación de WeeChat para ver como cargar/descargar
plugins y scripts).
complementos y scripts).
// TRANSLATION MISSING
Many external scripts (from contributors) are available for WeeChat, you can
download and install scripts from the repository with the `/script` command,
for example:
Muchos scripts externo (ofrecidos por colaboradores) están disponibles para WeeChat, puede
descargar e instalar scripts desde el repositorio mediante el comando `/script`,
por ejemplo:
----
/script install go.py
----
// TRANSLATION MISSING
See `/help script` for more info.
Vea `/help script` para obtener más información.
// TRANSLATION MISSING
A list of scripts is available in WeeChat with `/script` or at this URL:
Hay una lista de scripts disponibles en WeeChat mediante el comando `/script` o en este enlace:
https://weechat.org/scripts
[[more_doc]]
@@ -437,4 +399,4 @@ https://weechat.org/scripts
Ahora puede usar WeeChat y leer las FAQ/documentación para cada pregunta
en: https://weechat.org/doc
Disfrute de WeeChat!
¡Disfrute de WeeChat!
-13
View File
@@ -122,19 +122,6 @@ if(ENABLE_DOC)
add_custom_target(doc-quickstart-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.fr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# tester's guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.fr.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.fr.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.fr.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_tester.fr.html"
)
add_custom_target(doc-tester-fr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.fr.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# relay protocol
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.fr.html
-6
View File
@@ -29,7 +29,6 @@ EXTRA_DIST = CMakeLists.txt \
weechat_scripting.fr.adoc \
weechat_faq.fr.adoc \
weechat_quickstart.fr.adoc \
weechat_tester.fr.adoc \
weechat_relay_protocol.fr.adoc \
weechat_dev.fr.adoc \
includes/autogen_api_completions.fr.adoc \
@@ -58,7 +57,6 @@ if DOC
weechat_scripting.fr.html \
weechat_faq.fr.html \
weechat_quickstart.fr.html \
weechat_tester.fr.html \
weechat_relay_protocol.fr.html \
weechat_dev.fr.html
doc_install = install-doc
@@ -92,10 +90,6 @@ weechat_faq.fr.html: weechat_faq.fr.adoc $(abs_top_srcdir)/doc/docinfo.html
weechat_quickstart.fr.html: weechat_quickstart.fr.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.fr.html $(abs_top_srcdir)/doc/fr/weechat_quickstart.fr.adoc
# tester's guide
weechat_tester.fr.html: weechat_tester.fr.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.fr.html $(abs_top_srcdir)/doc/fr/weechat_tester.fr.adoc
# relay protocol
weechat_relay_protocol.fr.html: weechat_relay_protocol.fr.adoc $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_relay_protocol.fr.html $(abs_top_srcdir)/doc/fr/weechat_relay_protocol.fr.adoc
+12
View File
@@ -79,6 +79,8 @@ _last_nick_speaking_time_   (pointer, hdata: "irc_channel_speaking") +
_modelists_   (pointer, hdata: "irc_modelist") +
_last_modelist_   (pointer, hdata: "irc_modelist") +
_join_smart_filtered_   (hashtable) +
_typing_state_   (integer) +
_typing_status_sent_   (time) +
_buffer_   (pointer, hdata: "buffer") +
_buffer_as_string_   (string) +
_prev_channel_   (pointer, hdata: "irc_channel") +
@@ -233,6 +235,12 @@ _hook_connect_   (pointer, hdata: "hook") +
_hook_fd_   (pointer, hdata: "hook") +
_hook_timer_connection_   (pointer, hdata: "hook") +
_hook_timer_sasl_   (pointer, hdata: "hook") +
_sasl_scram_client_first_   (string) +
_sasl_scram_salted_pwd_   (other) +
_sasl_scram_salted_pwd_size_   (integer) +
_sasl_scram_auth_message_   (string) +
_sasl_temp_username_   (string) +
_sasl_temp_password_   (string) +
_is_connected_   (integer) +
_ssl_connected_   (integer) +
_disconnected_   (integer) +
@@ -263,6 +271,10 @@ _chantypes_   (string) +
_chanmodes_   (string) +
_monitor_   (integer) +
_monitor_time_   (time) +
_clienttagdeny_   (string) +
_clienttagdeny_count_   (integer) +
_clienttagdeny_array_   (string, array_size: "clienttagdeny_count") +
_typing_allowed_   (integer) +
_reconnect_delay_   (integer) +
_reconnect_start_   (time) +
_command_time_   (time) +
+13 -3
View File
@@ -60,7 +60,7 @@
| php | php_version | version de l'interpréteur utilisé | -
| python | python2_bin | chemin vers l'interpréteur python 2.x | -
| python | python2_bin | chemin vers l'interpréteur Python 2.x (*obsolète* depuis la version 2.6, les scripts doivent utiliser seulement Python 3) | -
| python | python_eval | évaluation de code source | code source à exécuter
@@ -76,7 +76,7 @@
| ruby | ruby_version | version de l'interpréteur utilisé | -
| spell | spell_dict | liste de dictionnaires (séparés par des virgules) utilisés sur le tampon | pointeur vers un tampon ("0x12345678") ou nom complet de tampon ("irc.freenode.#weechat")
| spell | spell_dict | liste de dictionnaires (séparés par des virgules) utilisés sur le tampon | pointeur vers un tampon ("0x12345678") ou nom complet de tampon ("irc.libera.#weechat")
| tcl | tcl_eval | évaluation de code source | code source à exécuter
@@ -134,7 +134,15 @@
| weechat | version_number | version de WeeChat (sous forme de nombre) | -
| weechat | weechat_dir | répertoire de WeeChat | -
| weechat | weechat_cache_dir | répertoire du cache WeeChat | -
| weechat | weechat_config_dir | répertoire de la configuration WeeChat | -
| weechat | weechat_daemon | 1 si WeeChat tourne en mode démon (sans interface, en tâche de fond) | -
| weechat | weechat_data_dir | répertoire des données WeeChat | -
| weechat | weechat_dir | répertoire de WeeChat (*obsolète depuis la version 3.2, remplacé par "weechat_config_dir", "weechat_data_dir", "weechat_cache_dir" et "weechat_runtime_dir") | -
| weechat | weechat_headless | 1 si WeeChat tourne sans interface | -
@@ -142,6 +150,8 @@
| weechat | weechat_localedir | répertoire "locale" de WeeChat | -
| weechat | weechat_runtime_dir | répertoire de "runtime" WeeChat | -
| weechat | weechat_sharedir | répertoire "share" de WeeChat | -
| weechat | weechat_site | site WeeChat | -
@@ -8,7 +8,7 @@
|===
| 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), "param1" ... "paramN" : paramètres de la commande, "num_params" : nombre de paramètres dans la commande, "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
@@ -4,18 +4,26 @@
//
// tag::plugins_priority[]
. charset (15000)
. logger (14000)
. exec (13000)
. trigger (12000)
. spell (11000)
. alias (10000)
. buflist (9000)
. fifo (8000)
. 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, 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)
. fset (2000)
// end::plugins_priority[]
+181 -93
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 [-current] [-exclude=<canal>[,<canal>...]] <commande>
[-current] [-include=<canal>[,<canal>...]] <commande>
/allchan [-current] [-parted] [-exclude=<canal>[,<canal>...]] <commande>
[-current] [-parted] -include=<canal>[,<canal>...] <commande>
-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é)
-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 '/')
@@ -41,6 +42,8 @@ Exemples :
/allchan -exclude=#weechat,#linux* bonjour
dire 'bonjour' sur tous les canaux commençant par #linux :
/allchan -include=#linux* bonjour
fermer tous les tampons avec des canaux quittés :
/allchan -parted /close
----
[[command_irc_allpv]]
@@ -100,6 +103,26 @@ Exemples :
/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]]
* `+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.
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).
@@ -161,7 +184,7 @@ nooption : définir l'option booléenne à 'off' (par exemple : -nossl)
Pour se déconnecter du serveur ou stopper toute tentative de connexion, utilisez la commande /disconnect.
Exemples :
/connect freenode
/connect libera
/connect irc.oftc.net/6667
/connect irc6.oftc.net/6667 -ipv6
/connect irc6.oftc.net/6697 -ipv6 -ssl
@@ -301,10 +324,10 @@ Note : l'expression régulière peut commencer par "(?-i)" pour devenir sensibl
Exemples :
ignorer le pseudo "toto" partout :
/ignore add toto
ignorer le hôte "toto@domain.com" sur le serveur freenode :
/ignore add toto@domain.com freenode
ignorer le hôte "toto*@*.domain.com" sur freenode/#weechat :
/ignore add toto*@*.domain.com freenode #weechat
ignorer le hôte "toto@domain.com" sur le serveur libera :
/ignore add toto@domain.com libera
ignorer le hôte "toto*@*.domain.com" sur libera/#weechat :
/ignore add toto*@*.domain.com libera #weechat
----
[[command_irc_info]]
@@ -349,7 +372,7 @@ pseudo : pseudo
Exemples :
/join #weechat
/join #protectedchan,#weechat key
/join -server freenode #weechat
/join -server libera #weechat
/join -noswitch #weechat
----
@@ -361,7 +384,7 @@ Exemples :
canal : nom du canal
pseudo : pseudo
raison : raison (les variables spéciales $nick, $channel et $server sont remplacées par leur valeur)
raison : raison (évaluée, voir /help eval ; les variables spéciales ${nick} (propre pseudo), ${target} (pseudo cible), ${channel} et ${server} sont remplacées par leur valeurs)
----
[[command_irc_kickban]]
@@ -372,7 +395,7 @@ raison : raison (les variables spéciales $nick, $channel et $server sont rempl
canal : nom du canal
pseudo : pseudo
raison : raison (les variables spéciales $nick, $channel et $server sont remplacées par leur valeur)
raison : raison (évaluée, voir /help eval ; les variables spéciales ${nick} (propre pseudo), ${target} (pseudo cible), ${channel} et ${server} sont remplacées par leur valeurs)
Il est possible d'éjecter/bannir avec un masque, le pseudo sera extrait du masque et remplacé par "*".
@@ -402,7 +425,7 @@ masque_serveur : liste des serveurs correspondant au masque
----
[[command_irc_list]]
* `+list+`: lister les canaux et leur titre
* `+list+`: lister les canaux et leurs titres
----
/list [-server <serveur>] [-re <regex>] [<canal>[,<canal>...]] [<cible>]
@@ -552,10 +575,10 @@ Sans paramètre, cette commande affiche les notifications pour le serveur couran
Exemples :
notifier quand "toto" rejoint/quitte le serveur courant :
/notify add toto
notifier quand "toto" rejoint/quitte le serveur freenode :
/notify add toto freenode
notifier quand "toto" est absent ou de retour sur le serveur freenode :
/notify add toto freenode -away
notifier quand "toto" rejoint/quitte le serveur libera :
/notify add toto libera
notifier quand "toto" est absent ou de retour sur le serveur libera :
/notify add toto libera -away
----
[[command_irc_op]]
@@ -673,7 +696,7 @@ option : option supplémentaire, pour certains serveurs
canal : nom du canal
pseudo : pseudo
raison : raison (les variables spéciales $nick, $channel et $server sont remplacées par leur valeur)
raison : raison (les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs)
----
[[command_irc_restart]]
@@ -775,16 +798,16 @@ nom_machine : nom ou adresse IP du serveur avec port en option (défaut : 6667
Exemples :
/server listfull
/server add freenode chat.freenode.net
/server add freenode chat.freenode.net/6697 -ssl -autoconnect
/server add libera irc.libera.chat
/server add libera irc.libera.chat/6697 -ssl -autoconnect
/server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667
/server copy freenode freenode-test
/server rename freenode-test freenode2
/server reorder freenode2 freenode
/server del freenode
/server copy libera libera-test
/server rename libera-test libera2
/server reorder libera2 libera
/server del libera
/server deloutq
/server raw
/server raw s:freenode
/server raw s:libera
/server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo
----
@@ -808,6 +831,15 @@ masque : lister seulement les services qui correspondent à ce masque
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]]
* `+squery+`: envoyer un message à un service
@@ -1271,7 +1303,7 @@ Exemples :
/debug list
set <extension> <niveau>
dump [<extension>]
buffer|color|infolists|memory|tags|term|windows
buffer|color|infolists|libs|certs|memory|tags|term|windows
cursor|mouse [verbose]
hdata [free]
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
infolists : afficher des infos sur les infolists
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
mouse : activer/désactiver le debug pour la souris
tags : afficher les étiquettes pour les lignes
@@ -1342,58 +1375,76 @@ 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é :
1. la chaîne elle-même sans évaluation (format : "raw:xxx")
2. une sous-chaîne évaluée (format : "eval:xxx")
3. une condition évaluée (format : "eval_cond:xxx")
4. une chaîne avec les caractères échappés (format : "esc:xxx" ou "\xxx")
5. une chaîne avec des caractères à cacher (format : "hide:caractère,chaîne")
6. une chaîne avec un maximum de caractères (format : "cut:max,suffixe,chaîne" ou "cut:+max,suffixe,chaîne")
2. une variable définie par l'utilisateur (format : "nom")
3. une sous-chaîne évaluée (format : "eval:xxx")
4. une condition évaluée (format : "eval_cond:xxx")
5. une chaîne avec les caractères échappés (format : "esc:xxx" ou "\xxx")
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")
7. 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. 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. un modificateur (format : "modifier:nom,données,chaîne")
12. une info (format : "info:nom,paramètres", les paramètres sont optionnels)
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. la date/heure courante (format : "date" ou "date:format")
15. une variable d'environnement (format : "env:XXX")
16. un opérateur ternaire (format : "if:condition?valeur_si_vrai:valeur_si_faux")
17. le résultat d'une expression avec parenthèses et les opérateurs + - * / // % ** (format: "calc:xxx")
18. une option (format : "fichier.section.option")
19. une variable locale du tampon
20. 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.
8. une chaîne inversée (format : "rev:xxx" ou "revscr:xxx")
9. une chaîne répétée (format : "repeat:nombre,chaîne")
10. longueur d'une chaîne (format : "length:xxx" ou "lengthscr:xxx")
11. découpage d'une chaîne (format : "split:nombre,séparateurs,flags,xxx")
12. découpage de paramètres shell (format : "split_shell:nombre,xxx")
13. une couleur (format : "color:xxx", voir la "Référence API extension", fonction "color")
14. un modificateur (format : "modifier:nom,données,chaîne")
15. une info (format : "info:nom,paramètres", les paramètres sont optionnels)
16. une chaîne encodée/decodée en base 16, 32 ou 64 (format : "base_encode:base,xxx" ou "base_decode:base,xxx")
17. la date/heure courante (format : "date" ou "date:format")
18. une variable d'environnement (format : "env:XXX")
19. un opérateur ternaire (format : "if:condition?valeur_si_vrai:valeur_si_faux")
20. le résultat d'une expression avec parenthèses et les opérateurs + - * / // % ** (format : "calc:xxx")
21. un nombre entier aléatoire (format : "random:min,max")
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 :
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, par exemple :
hdata[liste].var1.var2... : démarrer avec un hdata en utilisant une liste/pointeur/nom de pointeur, par exemple :
${buffer[gui_buffers].full_name} : nom complet du premier tampon dans la liste chaînée des tampons
${plugin[weechat_plugins].name} : nom de la première extension dans la liste chaînée des extensions
hdata[pointeur].var1.var2... : démarrer avec un hdata en utilisant un pointeur, par exemple :
${buffer[0x1234abcd].full_name} : nom complet du tampon avec ce pointeur (peut être utilisé dans les triggers)
${buffer[my_pointer].full_name} : nom complet du tampon avec ce nom de pointeur (peut être utilisé dans les triggers)
Pour le nom du hdata et des variables, voir la "Référence API extension", fonction "weechat_hdata_get".
Exemples (chaînes simples) :
/eval -n ${raw:${info:version}} ==> ${info:version}
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
/eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.freenode_password} ==> secret
/eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat
/eval -n ${window.buffer.number} ==> 1
/eval -n ${\t} ==> <tab>
/eval -n ${hide:-,${relay.network.password}} ==> --------
/eval -n ${cut:3,+,test} ==> tes+
/eval -n ${cut:+3,+,test} ==> te+
/eval -n ${date:%H:%M:%S} ==> 07:46:40
/eval -n ${if:${info:term_width}>80?big:small} ==> big
/eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> -----
/eval -n ${length:test} ==> 4
/eval -n ${calc:(5+2)*3} ==> 21
/eval -n ${base_encode:64,test} ==> dGVzdA==
/eval -n ${base_decode:64,dGVzdA==} ==> test
/eval -n ${raw:${info:version}} ==> ${info:version}
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
/eval -n ${info:version} ==> 0.4.3
/eval -n ${env:HOME} ==> /home/user
/eval -n ${weechat.look.scroll_amount} ==> 3
/eval -n ${sec.data.password} ==> secret
/eval -n ${window} ==> 0x2549aa0
/eval -n ${window.buffer} ==> 0x2549320
/eval -n ${window.buffer.full_name} ==> core.weechat
/eval -n ${window.buffer.number} ==> 1
/eval -n ${\t} ==> <tab>
/eval -n ${hide:-,${relay.network.password}} ==> --------
/eval -n ${cut:3,+,test} ==> tes+
/eval -n ${cut:+3,+,test} ==> te+
/eval -n ${date:%H:%M:%S} ==> 07:46:40
/eval -n ${if:${info:term_width}>80?big:small} ==> big
/eval -n ${rev:Hello} ==> olleH
/eval -n ${repeat:5,-} ==> -----
/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 ${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) :
/eval -n -c ${window.buffer.number} > 2 ==> 0
@@ -1431,7 +1482,7 @@ addreplace : ajouter ou remplacer un filtre existant
del : supprimer un filtre
-all : supprimer tous les filtres
tampon : liste des tampons, séparés par des virgules, où le filtre est actif :
- il s'agit du nom complet incluant l'extension (exemple : "irc.freenode.#weechat" ou "irc.server.freenode")
- il s'agit du nom complet incluant l'extension (exemple : "irc.libera.#weechat" ou "irc.server.libera")
- "*" signifie tous les tampons
- un nom commençant par '!' est exclu
- le caractère joker "*" est autorisé
@@ -1466,11 +1517,11 @@ Exemples :
filtrer les pseudos afficher en rejoignant les canaux ou avec /names :
/filter add nicks * irc_366 *
filtrer le pseudo "toto" sur le canal IRC #weechat :
/filter add toto irc.freenode.#weechat nick_toto *
/filter add toto irc.libera.#weechat nick_toto *
filtrer les messages IRC join/action du pseudo "toto" :
/filter add toto * nick_toto+irc_join,nick_toto+irc_action *
filtrer les lignes contenant "weechat sucks" sur le canal IRC #weechat :
/filter add sucks irc.freenode.#weechat * weechat sucks
/filter add sucks irc.libera.#weechat * weechat sucks
filtrer les lignes qui sont strictement égales à "WeeChat sucks" sur tous les tampons :
/filter add sucks2 * * (?-i)^WeeChat sucks$
----
@@ -1546,6 +1597,9 @@ liste des actions :
jump_previously_visited_buffer : sauter au tampon visité précédemment
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_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_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
@@ -1583,7 +1637,7 @@ listdefault : afficher les touches par défaut
contexte : nom du contexte ("default" ou "search")
bind : associer une commande à une touche ou affiche la commande associée à la touche
bindctxt : associer une commande à une touche ou affiche la commande associée à la touche pour le contexte donné
commande : commande (plusieurs commandes peuvent êtres séparées par des points-virgules)
commande : commande (plusieurs commandes peuvent être séparées par des points-virgules)
unbind : supprimer l'association à une touche
unbindctxt : supprimer l'association à une touche pour le contexte donné
reset : réinitialiser une touche à son association par défaut
@@ -1641,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.
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]]
@@ -1672,7 +1728,7 @@ Exemples :
-core : pas d'affichage sur le tampon core WeeChat
-current : pas d'affichage sur le tampon courant
-buffer : pas d'affichage sur le tampon spécifié
nom : nom complet du tampon (exemples : "irc.server.freenode", "irc.freenode.#weechat")
nom : nom complet du tampon (exemples : "irc.server.libera", "irc.libera.#weechat")
commande : commande à exécuter silencieusement (un '/' est automatiquement ajouté s'il n'est pas trouvé au début de la commande)
Si aucune cible n'est spécifiée (-core, -current ou -buffer), alors par défaut tous les tampons seront silencieux.
@@ -1683,28 +1739,33 @@ Exemples :
message au canal IRC courant :
/mute -current msg * bonjour !
message au canal #weechat :
/mute -buffer irc.freenode.#weechat msg #weechat bonjour !
/mute -buffer irc.libera.#weechat msg #weechat bonjour !
----
[[command_weechat_plugin]]
* `+plugin+`: lister/charger/décharger des extensions
----
/plugin list|listfull [<nom>]
/plugin list [-o|-ol|-i|-il|<nom>]
listfull [<nom>]
load <fichier> [<paramètres>]
autoload [<paramètres>]
reload [<nom>|* [<paramètres]]
unload [<nom>]
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)
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
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)
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.
----
@@ -1751,7 +1812,7 @@ Exemples :
afficher un message sur le tampon core avec le préfixe "abc" :
/print -core abc\tLe message
afficher un message sur le canal #weechat :
/print -buffer irc.freenode.#weechat Message sur #weechat
/print -buffer irc.libera.#weechat Message sur #weechat
afficher un bonhomme de neige (U+2603) :
/print -escape \u2603
envoyer une alerte (BEL) :
@@ -1885,15 +1946,15 @@ Exemples :
définir une phrase de chiffrement :
/secure passphrase ceci est ma phrase de chiffrement
utiliser le programme "pass" pour lire la phrase de chiffrement au démarrage :
/set sec.crypt.passphrase_command "pass show weechat/passphrase"
chiffrer le mot de passe freenode SASL :
/secure set freenode motdepasse
/set irc.server.freenode.sasl_password "${sec.data.freenode}"
/set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase"
chiffrer le mot de passe libera SASL :
/secure set libera motdepasse
/set irc.server.libera.sasl_password "${sec.data.libera}"
chiffrer le mot de passe oftc pour nickserv :
/secure set oftc motdepasse
/set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}"
alias pour ghost du pseudo "pseudo" :
/alias add ghost /eval /msg -server freenode nickserv ghost pseudo ${sec.data.freenode}
/alias add ghost /eval /msg -server libera nickserv ghost pseudo ${sec.data.libera}
----
[[command_weechat_set]]
@@ -1932,6 +1993,32 @@ Exemples :
/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]]
* `+unset+`: supprimer/réinitialiser des options de configuration
@@ -1980,7 +2067,7 @@ Avec l'option "-quit", le processus est légèrement différent :
5. quitter WeeChat
Et plus tard vous pouvez restaurer la session avec la commande : weechat --upgrade
IMPORTANT : vous devez restaurer la session avec exactement la même configuration (fichiers *.conf).
Il est également possible de restaurer la session WeeChat sur une autre machine si vous y copiez le contenu du répertoire "~/.weechat".
Il est également possible de restaurer la session WeeChat sur une autre machine si vous y copiez le contenu des répertoires personnels de WeeChat (voir /debug dirs).
----
[[command_weechat_uptime]]
@@ -2165,6 +2252,7 @@ Les variables suivantes peuvent être utilisées dans ces options :
- ${hotlist} : la hotlist brute
- ${hotlist_priority} : "none", "low", "message", "private" ou "highlight"
- ${format_lag} : le lag pour un tampon de serveur IRC, vide s'il n'y a pas de lag (évaluation de l'option buflist.format.lag)
- ${format_tls_version}: indicateur de la version de TLS pour le serveur courant, vide pour les canaux (évaluation de l'option buflist.format.tls_version)
----
// end::buflist_commands[]
@@ -2271,14 +2359,14 @@ disable : désactiver le tube FIFO
toggle : activer/désactiver le tube FIFO
Le tube FIFO est utilisé comme contrôle à distance de WeeChat : vous pouvez envoyer des commandes ou du texte au tube FIFO depuis votre shell.
Par défaut le tube FIFO est dans ~/.weechat/weechat_fifo
Par défaut le tube FIFO se nomme weechat_fifo_xxx (où xxx est l'id du processus WeeChat) et situé dans le répertoire "runtime" de WeeChat (voir /debug dirs).
Le format attendu est l'un des suivants :
plugin.buffer *texte ou commande ici
*texte ou commande ici
Par exemple pour changer votre pseudo sur freenode :
echo 'irc.server.freenode */nick autrepseudo' >~/.weechat/weechat_fifo
Par exemple pour changer votre pseudo sur libera :
echo 'irc.server.libera */nick autrepseudo' >/run/user/1000/weechat/weechat_fifo_12345
Merci de lire le guide utilisateur pour plus d'information et des exemples.
@@ -2715,7 +2803,7 @@ Sans paramètre, cette commande liste les scripts chargés.
stop : fermer le socket serveur (les clients restent connectés)
nom : nom du relai (voir le format ci-dessous)
port : port utilisé pour le relai
chemin : chemin utilisé pour le relai (pour un socket de domaine UNIX seulement) ; "%h" au début de la chaîne est remplacé par le répertoire de base WeeChat (par défaut : "~/.weechat"), le contenu est évalué (voir /help eval)
chemin : chemin utilisé pour le relai (pour un socket de domaine UNIX seulement) ; le chemin est évalué (voir la fonction string_eval_path_home dans la référence API extension)
raw : ouvrir le tampon avec les données brutes Relay
sslcertkey : définir le certificat/clé SSL en utilisant le chemin de l'option relay.network.ssl_cert_key
@@ -2734,10 +2822,10 @@ Le protocole "weechat" permet à une interface distante de se connecter sur le p
Sans paramètre, cette commande ouvre le tampon avec la liste des clients pour le relai.
Exemples :
proxy irc, pour le serveur "freenode" :
/relay add irc.freenode 8000
proxy irc, pour le serveur "freenode", avec SSL :
/relay add ssl.irc.freenode 8001
proxy irc, pour le serveur "libera" :
/relay add irc.libera 8000
proxy irc, pour le serveur "libera", avec SSL :
/relay add ssl.irc.libera 8001
proxy irc, pour tous les serveurs (le client choisira), avec SSL :
/relay add ssl.irc 8002
protocole weechat :
@@ -2751,7 +2839,7 @@ Exemples :
protocole weechat avec SSL, en utilisant IPv4 + IPv6 :
/relay add ipv4.ipv6.ssl.weechat 9001
protocole weechat avec un socket de domaine UNIX :
/relay add unix.weechat %h/relay_socket
/relay add unix.weechat ${weechat_runtime_dir}/relay_socket
----
// end::relay_commands[]
+207 -79
View File
@@ -17,7 +17,7 @@
** valeur par défaut: `+sha256+`
* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command*
** description: pass:none[lire la phrase de chiffrement depuis la sortie de cette commande système (seule la première ligne est utilisée et elle ne doit contenir aucun autre caractère) ; cette option est utilisée seulement pour lire le fichier sec.conf et si la variable d'environnement "WEECHAT_PASSPHRASE" n'est pas définie (la variable d'environnement a une priorité plus haute) ; exemple avec password-store : "pass show weechat/passphrase"]
** description: pass:none[lire la phrase de chiffrement depuis la sortie de cette commande système (seule la première ligne est utilisée et elle ne doit contenir aucun autre caractère) ; cette option est utilisée seulement pour lire le fichier sec.conf et si la variable d'environnement "WEECHAT_PASSPHRASE" n'est pas définie (la variable d'environnement a une priorité plus haute) ; exemple avec password-store : "/usr/bin/pass show weechat/passphrase"]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
@@ -1260,11 +1260,17 @@
** valeurs: 1 .. 2147483647
** valeur par défaut: `+60+`
* [[option_weechat.network.gnutls_ca_file]] *weechat.network.gnutls_ca_file*
** description: pass:none[fichier contenant les autorités de certification ("%h" sera remplacé par le répertoire de base WeeChat, par défaut : "~/.weechat")]
* [[option_weechat.network.gnutls_ca_system]] *weechat.network.gnutls_ca_system*
** description: pass:none[charger les certificats des autorités de certification système au démarrage ; cela peut être désactivée pour économiser de la mémoire, seulement si vous n'utilisez pas du tout de connexions SSL]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+on+`
* [[option_weechat.network.gnutls_ca_user]] *weechat.network.gnutls_ca_user*
** description: pass:none[fichier(s) supplémentaire(s) avec des autorités de certification ; plusieurs fichiers doivent être séparés par ":" (chaque chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"/etc/ssl/certs/ca-certificates.crt"+`
** valeur par défaut: `+""+`
* [[option_weechat.network.gnutls_handshake_timeout]] *weechat.network.gnutls_handshake_timeout*
** description: pass:none[délai d'attente maximum (en secondes) pour la poignée de main (handshake) gnutls]
@@ -1297,10 +1303,10 @@
** valeur par défaut: `+".so,.dll"+`
* [[option_weechat.plugin.path]] *weechat.plugin.path*
** description: pass:none[chemin de recherche des extensions ("%h" sera remplacé par le répertoire de base WeeChat, par défaut : "~/.weechat")]
** description: pass:none[chemin de recherche des extensions (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"%h/plugins"+`
** valeur par défaut: `+"${weechat_data_dir}/plugins"+`
* [[option_weechat.plugin.save_config_on_unload]] *weechat.plugin.save_config_on_unload*
** description: pass:none[sauvegarder les fichiers de configuration lors du déchargement des extensions]
@@ -1308,14 +1314,44 @@
** valeurs: on, off
** valeur par défaut: `+on+`
* [[option_weechat.signal.sighup]] *weechat.signal.sighup*
** description: pass:none[commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"${if:${info:weechat_headless}?/reload:/quit -yes}"+`
* [[option_weechat.signal.sigquit]] *weechat.signal.sigquit*
** description: pass:none[commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"/quit -yes"+`
* [[option_weechat.signal.sigterm]] *weechat.signal.sigterm*
** description: pass:none[commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"/quit -yes"+`
* [[option_weechat.signal.sigusr1]] *weechat.signal.sigusr1*
** description: pass:none[commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
* [[option_weechat.signal.sigusr2]] *weechat.signal.sigusr2*
** description: pass:none[commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
* [[option_weechat.startup.command_after_plugins]] *weechat.startup.command_after_plugins*
** description: pass:none[commande exécutée quand WeeChat démarre, après le chargement des extensions (note : le contenu est évalué, voir /help eval)]
** description: pass:none[commande exécutée quand WeeChat démarre, après le chargement des extensions ; plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
* [[option_weechat.startup.command_before_plugins]] *weechat.startup.command_before_plugins*
** description: pass:none[commande exécutée quand WeeChat démarre, avant le chargement des extensions (note : le contenu est évalué, voir /help eval)]
** description: pass:none[commande exécutée quand WeeChat démarre, avant le chargement des extensions ; plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
@@ -1421,10 +1457,10 @@
** valeur par défaut: `+""+`
* [[option_logger.file.path]] *logger.file.path*
** description: pass:none[chemin pour les fichiers de log WeeChat ; "%h" au début de la chaîne est remplacé par le répertoire de base WeeChat (par défaut : "~/.weechat") ; les caractères de formatage de date sont autorisés (voir man strftime) (note : le contenu est évalué, voir /help eval)]
** description: pass:none[chemin pour les fichiers de log WeeChat ; les caractères de formatage de date sont autorisés (voir man strftime) (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"%h/logs/"+`
** valeur par défaut: `+"${weechat_data_dir}/logs"+`
* [[option_logger.file.replacement_char]] *logger.file.replacement_char*
** description: pass:none[caractère de remplacement dans le nom de fichier construit avec le masque (comme le délimiteur de répertoire)]
@@ -1716,6 +1752,12 @@
** valeurs: toute chaîne
** valeur par défaut: `+"${color:green}${number}${if:${number_displayed}?.: }"+`
* [[option_buflist.format.tls_version]] *buflist.format.tls_version*
** description: pass:none[format pour la version de TLS sur un serveur IRC (note : le contenu est évalué, voir /help buflist)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+" ${color:default}(${if:${tls_version}==TLS1.3?${color:green}:${if:${tls_version}==TLS1.2?${color:yellow}:${color:red}}}${translate:${tls_version}}${color:default})"+`
* [[option_buflist.look.add_newline]] *buflist.look.add_newline*
** description: pass:none[ajouter une nouvelle ligne entre les tampons affichés, de sorte que chaque tampon est affiché sur une ligne séparée (recommandé) ; si désactivé, les nouvelles lignes doivent être ajoutées dans les formats avec "${\n}", et les actions de souris ne sont plus possibles]
** type: booléen
@@ -1777,7 +1819,7 @@
** valeur par défaut: `+""+`
* [[option_buflist.look.sort]] *buflist.look.sort*
** description: pass:none[liste de champs séparés par des virgules pour trier les tampons ; chaque champ est une variable hdata du tampon ("var"), une variable hdata du serveur IRC ("irc_server.var") ou une variable hdata du canal IRC ("irc_channel.var") ; le caractère "-" peut être utilisé pour inverser l'ordre, le caractère "~" peut être utilisé pour effectuer une comparaison insensible à la casse ; exemple : "-~short_name" pour un tri inverse insensible à la casse sur le nom court du tampon (note : le contenu est évalué, seul le pointeur vers bar_item peut être utilisé, par exemple "bar_item.name")]
** description: pass:none[liste de champs séparés par des virgules pour trier les tampons ; chaque champ est une variable hdata du tampon ("var"), une variable hdata du serveur IRC ("irc_server.var") ou une variable hdata du canal IRC ("irc_channel.var") ; le caractère "-" peut être utilisé pour inverser l'ordre, le caractère "~" peut être utilisé pour effectuer une comparaison insensible à la casse ; exemple : "-~short_name" pour un tri inverse insensible à la casse sur le nom court du tampon (note : le contenu est évalué, avant d'être découpé en champs, mais à cet instant "bar_item" est la seule variable qui peut être utilisée, pour distinguer les différents objets de barre buflist, par exemple "${bar_item.name}")]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"number,-active"+`
@@ -1797,12 +1839,56 @@
** valeur par défaut: `+on+`
* [[option_fifo.file.path]] *fifo.file.path*
** description: pass:none[chemin pour le tube FIFO ; "%h" au début de la chaîne est remplacé par le répertoire de base WeeChat (par défaut : "~/.weechat") ; le PID de WeeChat peut être utilisé dans le chemin avec ${info:pid} (note : le contenu est évalué, voir /help eval)]
** description: pass:none[chemin pour le tube FIFO ; le PID de WeeChat peut être utilisé dans le chemin avec ${info:pid} (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"%h/weechat_fifo"+`
** valeur par défaut: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
// 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[]
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
** description: pass:none[couleur du texte pour le statut "interrompu"]
@@ -1871,7 +1957,7 @@
** valeur par défaut: `+off+`
* [[option_xfer.file.auto_accept_nicks]] *xfer.file.auto_accept_nicks*
** description: pass:none[liste de pseudos (séparés par des virgules) pour lesquels les demandes d'envoi de fichiers et de discussion sont automatiquement acceptées ; le format est "serveur.pseudo" (pour un serveur spécifique) ou "pseudo" (pour tous les serveurs) ; exemple : "freenode.FlashCode,andrew"]
** description: pass:none[liste de pseudos (séparés par des virgules) pour lesquels les demandes d'envoi de fichiers et de discussion sont automatiquement acceptées ; le format est "serveur.pseudo" (pour un serveur spécifique) ou "pseudo" (pour tous les serveurs) ; exemple : "libera.FlashCode,andrew"]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
@@ -1901,10 +1987,10 @@
** valeur par défaut: `+on+`
* [[option_xfer.file.download_path]] *xfer.file.download_path*
** description: pass:none[chemin où écrire les fichiers reçus : "%h" au début de la chaîne est remplacé par le répertoire de base WeeChat (par défaut : "~/.weechat") (note : le contenu est évalué, voir /help eval)]
** description: pass:none[chemin où écrire les fichiers reçus (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"%h/xfer"+`
** valeur par défaut: `+"${weechat_data_dir}/xfer"+`
* [[option_xfer.file.download_temporary_suffix]] *xfer.file.download_temporary_suffix*
** description: pass:none[suffixe de fichier temporaire utilisé pendant le transfert pour un fichier reçu, il est supprimé après un transfert réussi ; si chaîne vide, aucun suffixe de fichier n'est utilisé pendant le transfert]
@@ -1913,7 +1999,7 @@
** valeur par défaut: `+".part"+`
* [[option_xfer.file.upload_path]] *xfer.file.upload_path*
** description: pass:none[chemin pour lire les fichiers envoyés (quand aucun chemin n'est spécifié par l'utilisateur) : "%h" au début de la chaîne est remplacé par le répertoire de base WeeChat (par défaut : "~/.weechat") (note : le contenu est évalué, voir /help eval)]
** description: pass:none[chemin lire les fichiers à envoyer (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"~"+`
@@ -2022,6 +2108,24 @@
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
** valeur par défaut: `+default+`
* [[option_irc.color.item_tls_version_deprecated]] *irc.color.item_tls_version_deprecated*
** description: pass:none[couleur pour les versions obsolètes de TLS dans l'objet de barre "tls_version"]
** type: couleur
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
** valeur par défaut: `+yellow+`
* [[option_irc.color.item_tls_version_insecure]] *irc.color.item_tls_version_insecure*
** description: pass:none[couleur pour les versions non sécurisées de TLS dans l'objet de barre "tls_version"]
** type: couleur
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
** valeur par défaut: `+red+`
* [[option_irc.color.item_tls_version_ok]] *irc.color.item_tls_version_ok*
** description: pass:none[couleur pour la version de TLS la plus haute dans l'objet de barre "tls_version"]
** type: couleur
** valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné
** valeur par défaut: `+green+`
* [[option_irc.color.message_account]] *irc.color.message_account*
** description: pass:none[couleur pour le texte dans les messages account]
** type: couleur
@@ -2154,6 +2258,12 @@
** valeurs: toute chaîne
** 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*
** 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
@@ -2178,6 +2288,12 @@
** valeurs: on, off
** 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*
** description: pass:none[afficher le nom d'hôte dans les messages join]
** type: booléen
@@ -2448,6 +2564,18 @@
** valeurs: on, 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*
** 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
@@ -2605,10 +2733,10 @@
** valeur par défaut: `+25+`
* [[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
** valeurs: toute chaîne
** valeur par défaut: `+""+`
** valeur par défaut: `+"*"+`
* [[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)]
@@ -2617,7 +2745,7 @@
** valeur par défaut: `+message+`
* [[option_irc.server_default.command]] *irc.server_default.command*
** description: pass:none[commande(s) à exécuter après la connexion au serveur et avant le "join" automatique des canaux (plusieurs commandes peuvent être séparées par ";", utilisez "\;" pour un point-virgule, les variables spéciales $nick, $channel et $server sont remplacées par leur valeur) (note : 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)]
** description: pass:none[commande(s) à exécuter après la connexion au serveur et avant le "join" automatique des canaux (plusieurs commandes peuvent être séparées par ";", utilisez "\;" pour un point-virgule, les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs) (note : les commandes sont évaluées, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
@@ -2653,19 +2781,19 @@
** valeur par défaut: `+""+`
* [[option_irc.server_default.msg_kick]] *irc.server_default.msg_kick*
** description: pass:none[message par défaut pour l'éjection utilisé par les commandes "/kick" et "/kickban" (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick}, ${channel} et ${server} sont remplacées par leur valeur)]
** description: pass:none[message par défaut pour l'éjection utilisé par les commandes "/kick" et "/kickban" (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick} (propre pseudo), ${target} (pseudo cible), ${channel} et ${server} sont remplacées par leur valeurs)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
* [[option_irc.server_default.msg_part]] *irc.server_default.msg_part*
** description: pass:none[message par défaut pour le part (en quittant un canal) (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick}, ${channel} et ${server} sont remplacées par leur valeur ; "%v" est remplacé par la version de WeeChat s'il n'y a pas de ${...} dans la chaîne)]
** description: pass:none[message par défaut pour le part (en quittant un canal) (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick}, ${channel} et ${server} sont remplacées par leur valeurs ; "%v" est remplacé par la version de WeeChat s'il n'y a pas de ${...} dans la chaîne)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"WeeChat ${info:version}"+`
* [[option_irc.server_default.msg_quit]] *irc.server_default.msg_quit*
** description: pass:none[message de fin par défaut (lors de la déconnexion du serveur) (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick}, ${channel} et ${server} sont remplacées par leur valeur ; "%v" est remplacé par la version de WeeChat s'il n'y a pas de ${...} dans la chaîne)]
** description: pass:none[message de fin par défaut (lors de la déconnexion du serveur) (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick}, ${channel} et ${server} sont remplacées par leurs valeurs ; "%v" est remplacé par la version de WeeChat s'il n'y a pas de ${...} dans la chaîne)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"WeeChat ${info:version}"+`
@@ -2710,18 +2838,18 @@
** 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
** 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*
** description: pass:none[fichier avec la clé privée ECC pour le mécanisme "ecdsa-nist256p-challenge" ("%h" sera remplacé par le répertoire de base WeeChat, par défaut : "~/.weechat")]
** 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)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
* [[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, "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
** valeurs: plain, 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+`
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
@@ -2755,7 +2883,7 @@
** valeur par défaut: `+off+`
* [[option_irc.server_default.ssl_cert]] *irc.server_default.ssl_cert*
** description: pass:none[fichier de certificat SSL utilisé pour identifier automatiquement votre pseudo ("%h" sera remplacé par le répertoire de base WeeChat, par défaut : "~/.weechat")]
** description: pass:none[fichier de certificat SSL utilisé pour identifier automatiquement votre pseudo (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
@@ -2979,10 +3107,10 @@
** valeur par défaut: `+100000+`
* [[option_relay.network.ssl_cert_key]] *relay.network.ssl_cert_key*
** description: pass:none[fichier avec le certificat et la clé privée SSL (pour servir les clients avec SSL)]
** description: pass:none[fichier avec le certificat et la clé privée SSL (pour servir les clients avec SSL) (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"%h/ssl/relay.pem"+`
** valeur par défaut: `+"${weechat_config_dir}/ssl/relay.pem"+`
* [[option_relay.network.ssl_priorities]] *relay.network.ssl_priorities*
** description: pass:none[chaîne avec les priorités pour gnutls (pour la syntaxe, voir la documentation de la fonction gnutls_priority_init du manuel gnutls, les chaînes courantes sont : "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
@@ -3015,34 +3143,6 @@
** valeur par défaut: `+""+`
// 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[]
* [[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é]
@@ -3057,19 +3157,33 @@
** valeur par défaut: `+on+`
// end::guile_options[]
// tag::tcl_options[]
* [[option_tcl.look.check_license]] *tcl.look.check_license*
// 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_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]
** type: booléen
** valeurs: on, off
** 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[]
* [[option_perl.look.check_license]] *perl.look.check_license*
@@ -3099,20 +3213,6 @@
** valeur par défaut: `+on+`
// 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[]
* [[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é]
@@ -3127,6 +3227,34 @@
** valeur par défaut: `+on+`
// 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[]
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
** description: pass:none[couleur du statut "chargé auto" ("a")]
@@ -3285,7 +3413,7 @@
** valeur par défaut: `+lightmagenta+`
* [[option_script.look.columns]] *script.look.columns*
** description: pass:none[format des colonnes affichées dans le tampon des scripts : les identifiants de colonne suivants sont remplacés par leur valeur : %a=auteur, %d=description, %D=date d'ajout, %e=extension, %l=langage, %L=licence, %n=nom avec extension, %N=nom, %r=dépendances, %s=statuts, %t=étiquettes, %u=date de mise à jour, %v=version, %V=version chargée, %w=min_weechat, %W=max_weechat]
** description: pass:none[format des colonnes affichées dans le tampon des scripts : les identifiants de colonne suivants sont remplacés par leurs valeurs : %a=auteur, %d=description, %D=date d'ajout, %e=extension, %l=langage, %L=licence, %n=nom avec extension, %N=nom, %r=dépendances, %s=statuts, %t=étiquettes, %u=date de mise à jour, %v=version, %V=version chargée, %w=min_weechat, %W=max_weechat]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"%s %n %V %v %u | %d | %t"+`
@@ -3363,10 +3491,10 @@
** valeur par défaut: `+""+`
* [[option_script.scripts.path]] *script.scripts.path*
** description: pass:none[répertoire du cache local pour les scripts ; "%h" au début de la chaîne est remplacé par le répertoire de base WeeChat (par défaut : "~/.weechat") (note : le contenu est évalué, voir /help eval)]
** description: pass:none[répertoire du cache local pour les scripts (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"%h/script"+`
** valeur par défaut: `+"${weechat_cache_dir}/script"+`
* [[option_script.scripts.url]] *script.scripts.url*
** description: pass:none[URL pour le fichier avec la liste des scripts]
+4 -4
View File
@@ -15,10 +15,10 @@
*weechat-headless*, non compatible avec l'option "--daemon").
*-d*, *--dir* _<répertoire>_::
Définir le répertoire comme étant la base de WeeChat
(utilisé pour les fichiers de configuration, logs, extensions
et scripts de l'utilisateur), la valeur par défaut est "~/.weechat"
(note : le répertoire est créé s'il n'est pas trouvé par WeeChat).
Forcer un unique répertoire pour tous les fichiers WeeChat (le répertoire
est créé s'il n'est pas trouvé).
Quatre répertoires peuvent être donnés, séparés par ":" (dans cet ordre :
config, data, cache, runtime).
Si cette option n'est pas donnée, la variable d'environnement WEECHAT_HOME
est utilisée (si non vide).
+29 -26
View File
@@ -10,7 +10,7 @@ temporaire avec une URL, comme ceci :
Pour rejoindre le canal IRC de support WeeChat avec le pseudo "monpseudo" :
irc://monpseudo@chat.freenode.net/#weechat
irc://monpseudo@irc.libera.chat/#weechat
Les adresses IPv6 peuvent être entourées par des crochets pour ajouter un port
après, par exemple :
@@ -19,79 +19,82 @@ après, par exemple :
// end::plugin_options[]
// tag::files[]
$HOME/.weechat/weechat.conf::
$HOME/.config/weechat/weechat.conf::
fichier de configuration principal de WeeChat
$HOME/.weechat/plugins.conf::
$HOME/.config/weechat/plugins.conf::
fichier de configuration des extensions
$HOME/.weechat/sec.conf::
$HOME/.config/weechat/sec.conf::
fichier de configuration avec les données sécurisées
$HOME/.weechat/alias.conf::
$HOME/.config/weechat/alias.conf::
fichier de configuration pour l'extension _alias_
$HOME/.weechat/buflist.conf::
$HOME/.config/weechat/buflist.conf::
fichier de configuration pour l'extension _buflist_
$HOME/.weechat/charset.conf::
$HOME/.config/weechat/charset.conf::
fichier de configuration pour l'extension _charset_
$HOME/.weechat/exec.conf::
$HOME/.config/weechat/exec.conf::
fichier de configuration pour l'extension _exec_
$HOME/.weechat/fifo.conf::
$HOME/.config/weechat/fifo.conf::
fichier de configuration pour l'extension _fifo_
$HOME/.weechat/fset.conf::
$HOME/.config/weechat/fset.conf::
fichier de configuration pour l'extension _fset_
$HOME/.weechat/guile.conf::
$HOME/.config/weechat/guile.conf::
fichier de configuration pour l'extension _guile_
$HOME/.weechat/irc.conf::
$HOME/.config/weechat/irc.conf::
fichier de configuration pour l'extension _irc_
$HOME/.weechat/javascript.conf::
$HOME/.config/weechat/javascript.conf::
fichier de configuration pour l'extension _javascript_
$HOME/.weechat/logger.conf::
$HOME/.config/weechat/logger.conf::
fichier de configuration pour l'extension _logger_
$HOME/.weechat/lua.conf::
$HOME/.config/weechat/lua.conf::
fichier de configuration pour l'extension _lua_
$HOME/.weechat/perl.conf::
$HOME/.config/weechat/perl.conf::
fichier de configuration pour l'extension _perl_
$HOME/.weechat/php.conf::
$HOME/.config/weechat/php.conf::
fichier de configuration pour l'extension _php_
$HOME/.weechat/python.conf::
$HOME/.config/weechat/python.conf::
fichier de configuration pour l'extension _python_
$HOME/.weechat/relay.conf::
$HOME/.config/weechat/relay.conf::
fichier de configuration pour l'extension _relay_
$HOME/.weechat/ruby.conf::
$HOME/.config/weechat/ruby.conf::
fichier de configuration pour l'extension _ruby_
$HOME/.weechat/script.conf::
$HOME/.config/weechat/script.conf::
fichier de configuration pour l'extension _script_
$HOME/.weechat/spell.conf::
$HOME/.config/weechat/spell.conf::
fichier de configuration pour l'extension _spell_
$HOME/.weechat/tcl.conf::
$HOME/.config/weechat/tcl.conf::
fichier de configuration pour l'extension _tcl_
$HOME/.weechat/trigger.conf::
$HOME/.config/weechat/trigger.conf::
fichier de configuration pour l'extension _trigger_
$HOME/.weechat/xfer.conf::
$HOME/.config/weechat/typing.conf::
fichier de configuration pour l'extension _typing_
$HOME/.config/weechat/xfer.conf::
fichier de configuration pour l'extension _xfer_
$HOME/.weechat/weechat.log::
$HOME/.local/share/weechat/weechat.log::
fichier de log de WeeChat
// end::files[]
+129 -106
View File
@@ -91,6 +91,7 @@ Les répertoires principaux de WeeChat sont :
|       spell/ | Extension Spell.
|       tcl/ | API script Tcl.
|       trigger/ | Extension Trigger.
|       typing/ | Extension Typing.
|       xfer/ | Extension Xfer (IRC DCC fichier/discussion).
| tests/ | Tests.
|    scripts/ | Tests de l'API script.
@@ -100,6 +101,7 @@ Les répertoires principaux de WeeChat sont :
|       gui/ | Tests unitaires pour les fonctions de l'interface.
|       plugins/ | Tests unitaires pour les extensions.
|          irc/ | Tests unitaires pour l'extension IRC.
|          trigger/ | Tests unitaires pour l'extension trigger.
| doc/ | Documentation.
| po/ | Fichiers de traductions (gettext).
| debian/ | Empaquetage Debian.
@@ -129,6 +131,7 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|    wee-config.c | Options de configuration du cœur de WeeChat (fichier weechat.conf).
|    wee-crypto.c | Fonctions de cryptographie.
|    wee-debug.c | Quelques fonctions de debug.
|    wee-dir.c | Fonctions sur les répertoires/fichiers.
|    wee-eval.c | Évaluation d'expressions avec des références à des variables internes.
|    wee-hashtable.c | Tables de hachage.
|    wee-hdata.c | Hdata (accès direct aux données en utilisant des tables de hachage).
@@ -142,6 +145,7 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|    wee-secure.c | Fonctions pour les données sécurisées.
|    wee-secure-buffer.c | Tampon pour les données sécurisées.
|    wee-secure-config.c | Options des données sécurisées (fichier sec.conf).
|    wee-signal.c | Fonctions sur les signaux.
|    wee-string.c | Fonctions sur les chaînes de caractères.
|    wee-upgrade-file.c | Système de mise à jour interne.
|    wee-upgrade.c | Mise à jour du cœur de WeeChat (tampons, lignes, historique, ...).
@@ -293,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-sasl.c | Authentification SASL 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.
|    javascript/ | Extension JavaScript.
|       weechat-js.cpp | Fonctions principales pour JavaScript (chargement/déchargement des scripts, exécution de code JavaScript).
@@ -362,6 +367,11 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|       trigger-command.c | Commandes pour Trigger.
|       trigger-completion.c | Complétions pour Trigger.
|       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.c | Fonctions principales de Xfer.
|       xfer-buffer.c | Tampon Xfer.
@@ -381,49 +391,61 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
[width="100%",cols="2m,3",options="header"]
|===
| Chemin/fichier | Description
| tests/ | Racine des tests.
|    tests.cpp | Programme utilisé pour lancer tous les tests.
|    scripts/ | Racine des 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.
|          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.
|          unparse.py | Conversion de code Python vers d'autres langages, utilisé par le script testapigen.py.
|    unit/ | Racine des tests unitaires.
|       test-plugins.cpp | Tests : extensions.
|       core/ | Racine des tests unitaires pour le cœur.
|          test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »).
|          test-core-calc.cpp | Tests : calcul d'expressions.
|          test-core-crypto.cpp | Tests : fonctions cryptographiques.
|          test-core-eval.cpp | Tests : évaluation d'expressions.
|          test-core-hashtble.cpp | Tests : tables de hachage.
|          test-core-hdata.cpp | Tests : hdata.
|          test-core-hook.cpp | Tests : hooks.
|          test-core-infolist.cpp | Tests : infolists.
|          test-core-list.cpp | Tests : listes.
|          test-core-secure.cpp | Tests : données sécurisées.
|          test-core-string.cpp | Tests : chaînes.
|          test-core-url.cpp | Tests : URLs.
|          test-core-utf8.cpp | Tests : UTF-8.
|          test-core-util.cpp | Tests : fonctions utiles.
|       gui/ | Racine des tests unitaires pour les interfaces.
|          test-gui-color.cpp | Tests : couleurs.
|          test-gui-line.cpp | Tests : lignes.
|          test-gui-nick.cpp | Tests : pseudos.
|       plugins/ | Racine des tests unitaires pour les extensions.
|          irc/ | Racine des tests unitaires pour l'extension IRC.
|             test-irc-channel.cpp | Tests : canaux IRC.
|             test-irc-color.cpp | Tests : couleurs IRC.
|             test-irc-config.cpp | Tests : configuration IRC.
|             test-irc-ignore.cpp | Tests : ignores IRC.
|             test-irc-message.cpp | Tests : messages IRC.
|             test-irc-mode.cpp | Tests : modes IRC.
|             test-irc-nick.cpp | Tests : pseudos IRC.
|             test-irc-protocol.cpp | Tests : protocole IRC.
|             test-irc-server.cpp | Tests : serveur IRC.
|          relay/ | Racine des tests unitaires pour l'extension Relay.
|             test-relay-auth.cpp | Tests : authentification des clients.
| Chemin/fichier | Description
| tests/ | Racine des tests.
|    tests.cpp | Programme utilisé pour lancer tous les tests.
|    scripts/ | Racine des 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.
|          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.
|          unparse.py | Conversion de code Python vers d'autres langages, utilisé par le script testapigen.py.
|    unit/ | Racine des tests unitaires.
|       test-plugins.cpp | Tests : extensions.
|       core/ | Racine des tests unitaires pour le cœur.
|          test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »).
|          test-core-calc.cpp | Tests : calcul d'expressions.
|          test-core-config-file.cpp | Tests : fichiers de configuration.
|          test-core-crypto.cpp | Tests : fonctions cryptographiques.
|          test-core-dir.cpp | Tests : répertoires/fichiers.
|          test-core-eval.cpp | Tests : évaluation d'expressions.
|          test-core-hashtble.cpp | Tests : tables de hachage.
|          test-core-hdata.cpp | Tests : hdata.
|          test-core-hook.cpp | Tests : hooks.
|          test-core-infolist.cpp | Tests : infolists.
|          test-core-list.cpp | Tests : listes.
|          test-core-network.cpp | Tests : fonctions réseau.
|          test-core-secure.cpp | Tests : données sécurisées.
|          test-core-signal.cpp | Tests : signaux.
|          test-core-string.cpp | Tests : chaînes.
|          test-core-url.cpp | Tests : URLs.
|          test-core-utf8.cpp | Tests : UTF-8.
|          test-core-util.cpp | Tests : fonctions utiles.
|       gui/ | Racine des tests unitaires pour les interfaces.
|          test-gui-color.cpp | Tests : couleurs.
|          test-gui-line.cpp | Tests : lignes.
|          test-gui-nick.cpp | Tests : pseudos.
|       plugins/ | Racine des tests unitaires pour les extensions.
|          irc/ | Racine des tests unitaires pour l'extension IRC.
|             test-irc-buffer.cpp | Tests : tampons IRC.
|             test-irc-channel.cpp | Tests : canaux IRC.
|             test-irc-color.cpp | Tests : couleurs IRC.
|             test-irc-config.cpp | Tests : configuration IRC.
|             test-irc-ignore.cpp | Tests : ignores IRC.
|             test-irc-message.cpp | Tests : messages IRC.
|             test-irc-mode.cpp | Tests : modes IRC.
|             test-irc-nick.cpp | Tests : pseudos IRC.
|             test-irc-protocol.cpp | Tests : protocole IRC.
|             test-irc-sasl.cpp | Tests : authentification SASL avec le protocole IRC.
|             test-irc-server.cpp | Tests : serveur IRC.
|          trigger/ | Racine des tests unitaires pour l'extension trigger.
|             test-trigger.cpp | Tests : triggers.
|             test-trigger-config.cpp | Tests : configuration trigger.
|          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]]
@@ -445,7 +467,6 @@ Fichiers de documentation :
|       weechat_quickstart.XX.adoc | link:weechat_quickstart.fr.html[Guide de démarrage].
|       weechat_relay_protocol.XX.adoc | link:weechat_relay_protocol.fr.html[Protocole Relay (pour les interfaces distantes)].
|       weechat_scripting.XX.adoc | link:weechat_scripting.fr.html[Guide pour scripts].
|       weechat_tester.XX.adoc | link:weechat_tester.fr.html[Guide du testeur].
|       weechat_user.XX.adoc | link:weechat_user.fr.html[Guide utilisateur].
|       includes/ | Fichiers inclus dans la documentation.
|          autogen_api_completions.XX.adoc | Fichier auto-généré pour la Référence API extension : complétions (ne *JAMAIS* mettre à jour manuellement !).
@@ -491,7 +512,7 @@ fichiers sont dans le répertoire _po/_ :
Exemple en C :
[source,C]
[source,c]
----
/*
* weechat.c - core functions for WeeChat
@@ -532,7 +553,7 @@ Quelques règles basiques que vous *devez* suivre quand vous écrivez du code C
Exemple :
[source,C]
[source,c]
----
/*
* Checks if a string with boolean value is valid.
@@ -565,7 +586,7 @@ foo ()
* Initialisez les variables locales après la déclaration, dans le corps de la
fonction, exemple :
[source,C]
[source,c]
----
void
foo ()
@@ -585,7 +606,7 @@ foo ()
nombre d'espaces utilisés sur la ligne au dessus de l'accolade ouvrante (le
`if` dans l'exemple) :
[source,C]
[source,c]
----
if (nicks_count == 1)
{
@@ -596,7 +617,7 @@ if (nicks_count == 1)
* Utilisez des lignes vides pour séparer différents blocs dans les fonctions, et
si possible ajoutez un commentaire pour chacun, comme ceci :
[source,C]
[source,c]
----
/*
* Sends a message from out queue.
@@ -640,7 +661,7 @@ irc_server_outqueue_send (struct t_irc_server *server)
conditions avec un opérateur (pas nécessaire pour un booléen simple), comme
ceci :
[source,C]
[source,c]
----
if (something)
{
@@ -664,7 +685,7 @@ else
* Indentez les `switch` comme ceci :
[source,C]
[source,c]
----
switch (string[0])
{
@@ -683,7 +704,7 @@ switch (string[0])
* Utilisez `typedef` pur les prototypes de fonctions mais pas pour les
structures :
[source,C]
[source,c]
----
typedef int (t_hook_callback_fd)(void *data, int fd);
@@ -765,7 +786,7 @@ Les structures ont le nom _t_X_Y_ ou _t_X_Y_Z_ :
Exemple : un pseudo IRC (de _src/plugins/irc/irc-nick.h_) :
[source,C]
[source,c]
----
struct t_irc_nick
{
@@ -795,7 +816,7 @@ _last_X_ (où _X_ est le nom de la variable, en utilisant le singulier).
Exemple : fenêtres (de _src/gui/gui-window.c_) :
[source,C]
[source,c]
----
struct t_gui_window *gui_windows = NULL; /* first window */
struct t_gui_window *last_gui_window = NULL; /* last window */
@@ -815,7 +836,7 @@ La convention pour les noms des fonctions est le même que celui des
Exemple : création d'une nouvelle fenêtre (de _src/gui/gui-window.c_) :
[source,C]
[source,c]
----
/*
* Creates a new window.
@@ -853,7 +874,7 @@ pointeur vers le nœud précédent/suivant.
Exemple : liste des tampons (de _src/gui/gui-buffer.h_) :
[source,C]
[source,c]
----
struct t_gui_buffer
{
@@ -868,7 +889,7 @@ struct t_gui_buffer
Et les deux pointeurs vers la tête et la fin de liste :
[source,C]
[source,c]
----
struct t_gui_buffer *gui_buffers = NULL; /* first buffer */
struct t_gui_buffer *last_gui_buffer = NULL; /* last buffer */
@@ -884,18 +905,10 @@ Tous les attributs/couleurs sont préfixés par un caractère dans la chaîne, q
peuvent être :
* _0x19_ : code couleur (suivi par un/des code(s) couleur)
* _0x1A_ : activer un attribut (suivi par un attribut sur un caractère)
* _0x1B_ : supprimer un attribut (suivi par un attribut sur un caractère)
* _0x1A_ : activer un attribut (suivi par un attribut brut sur un caractère)
* _0x1B_ : supprimer un attribut (suivi par un attribut brut sur un caractère)
* _0x1C_ : réinitialiser (rien après)
Les attributs autorisés sont (un ou plusieurs caractères) :
* `+*+` : gras
* `+!+` : vidéo inverse
* `+/+` : italique
* `+_+` : souligné
* `+|+` : garder les attributs
Les couleurs possibles sont :
* couleur standard : attributs facultatifs + nombre sur 2 digits
@@ -904,47 +917,57 @@ Les couleurs possibles sont :
Dans le tableau qui suit, les conventions suivantes sont utilisées :
* `STD` : couleur standard (2 digits)
* `(A)STD` : couleur standard avec des attributs facultatifs
* `(ATTR)STD` : couleur standard avec des attributs facultatifs
(attributs + 2 digits)
* `EXT` : couleur étendue (`+@+` + 5 digits)
* `(A)EXT` : couleur étendue avec des attributs facultatifs
* `(ATTR)EXT` : couleur étendue avec des attributs facultatifs
(`+@+` + attributs + 5 digits)
* `ATTR` : un caractère d'attribut (`+*+`, `+!+`, `+/+`, `+_+` ou `+|+`)
* `(ATTR)` : un ou plusieurs caractères d'attribut :
** `+*+` : gras
** `+!+` : vidéo inverse
** `+/+` : italique
** `+_+` : souligné
** `+|+` : garder les attributs
* `(a)` : un caractère d'attribut brut :
** _0x01_ : gras
** _0x02_ : vidéo inverse
** _0x03_ : italique
** _0x04_ : souligné
Toutes les combinaisons sont résumées dans ce tableau :
[width="100%",cols="4,2,2,8",options="header"]
[width="100%",cols="4,3,2,8",options="header"]
|===
| Code | Exemple | Aires | Description
| [hex]#19# + STD | [hex]#19# `+01+` | chat + barres | Définir les attributs et la couleur en utilisant une option, voir le tableau ci-dessous.
| [hex]#19# + EXT | [hex]#19# `+@00001+` | chat | Définir une couleur avec la paire ncurses (utilisé seulement sur le tampon `/color`).
| [hex]#19# + "F" + (A)STD | [hex]#19# `+F*05+` | chat + barres | Définir la couleur de texte (couleur WeeChat).
| [hex]#19# + "F" + (A)EXT | [hex]#19# `+F@00214+` | chat + barres | Définir la couleur de texte (couleur étendue).
| [hex]#19# + "B" + STD | [hex]#19# `+B05+` | chat + barres | Définir la couleur de fond (couleur WeeChat).
| [hex]#19# + "B" + EXT | [hex]#19# `+B@00124+` | chat + barres | Définir le couleur de fond (couleur étendue).
| [hex]#19# + "*" + (A)STD | [hex]#19# `+*05+` | chat + barres | Définir la couleur de texte (couleur WeeChat).
| [hex]#19# + "*" + (A)EXT | [hex]#19# `+*@00214+` | chat + barres | Définir la couleur de texte (couleur étendue).
| [hex]#19# + "*" + (A)STD + "," + STD ^(1)^ | [hex]#19# `+*08,05+` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat).
| [hex]#19# + "*" + (A)STD + "," + EXT ^(1)^ | [hex]#19# `+*01,@00214+` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue).
| [hex]#19# + "*" + (A)EXT + "," + STD ^(1)^ | [hex]#19# `+*@00214,05+` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat).
| [hex]#19# + "*" + (A)EXT + "," + EXT ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + barres | Définir la couleur de texte/fond (couleurs étendues).
| [hex]#19# + "*" + (A)STD + "~" + STD | [hex]#19# `+*08~05+` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat).
| [hex]#19# + "*" + (A)STD + "~" + EXT | [hex]#19# `+*01~@00214+` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue).
| [hex]#19# + "*" + (A)EXT + "~" + STD | [hex]#19# `+*@00214~05+` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat).
| [hex]#19# + "*" + (A)EXT + "~" + EXT | [hex]#19# `+*@00214~@00017+` | chat + barres | Définir la couleur de texte/fond (couleurs étendues).
| [hex]#19# + "b" + "F" | [hex]#19# `+bF+` | barres | Définir la couleur de texte de la barre.
| [hex]#19# + "b" + "D" | [hex]#19# `+bD+` | barres | Définir la couleur du délimiteur de la barre.
| [hex]#19# + "b" + "B" | [hex]#19# `+bB+` | barres | Définir la couleur de fond de la barre.
| [hex]#19# + "b" + "_" | [hex]#19# `+b_+` | barre input | Caractère de démarrage dans l'entrée (utilisé seulement dans l'objet "input_text").
| [hex]#19# + "b" + "-" | [hex]#19# `+b-+` | barre input | Caractère de démarrage caché dans l'entrée (utilisé seulement dans l'objet "input_text").
| [hex]#19# + "b" + "#" | [hex]#19# `+b#+` | barre input | Caractère de déplacement du curseur (utilisé seulement dans l'objet "input_text").
| [hex]#19# + "b" + "i" | [hex]#19# `+bi+` | barres | Début d'objet.
| [hex]#19# + "b" + "l" (lower L) | [hex]#19# `+bl+` | barres | Ligne de démarrage d'objet.
| [hex]#19# + "E" | [hex]#19# `+E+` | chat + barres | Texte mis en valeur _(WeeChat ≥ 0.4.2)_.
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + barres | Réinitialiser la couleur (garder les attributs).
| [hex]#1A# + ATTR | [hex]#1A# `+*+` | chat + barres | Activer un attribut.
| [hex]#1B# + ATTR | [hex]#1B# `+*+` | chat + barres | Supprimer un attribut.
| [hex]#1C# | [hex]#1C# | chat + barres | Réinitialiser les attributs et la couleur.
| Code | Exemple | Aires | Description
| [hex]#19# + `STD` | [hex]#19# `+01+` | chat + barres | Définir les attributs et la couleur en utilisant une option, voir le tableau ci-dessous.
| [hex]#19# + `EXT` | [hex]#19# `+@00001+` | chat | Définir une couleur avec la paire ncurses (utilisé seulement sur le tampon `/color`).
| [hex]#19# + `F` + `(ATTR)STD` | [hex]#19# `+F*05+` | chat + barres | Définir la couleur de texte (couleur WeeChat).
| [hex]#19# + `F` + `(ATTR)EXT` | [hex]#19# `+F@00214+` | chat + barres | Définir la couleur de texte (couleur étendue).
| [hex]#19# + `B` + `STD` | [hex]#19# `+B05+` | chat + barres | Définir la couleur de fond (couleur WeeChat).
| [hex]#19# + `B` + `EXT` | [hex]#19# `+B@00124+` | chat + barres | Définir le couleur de fond (couleur étendue).
| [hex]#19# + `*` + `(ATTR)STD` | [hex]#19# `+*05+` | chat + barres | Définir la couleur de texte (couleur WeeChat).
| [hex]#19# + `*` + `(ATTR)EXT` | [hex]#19# `+*@00214+` | chat + barres | Définir la couleur de texte (couleur étendue).
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `STD` ^(1)^ | [hex]#19# `+*08,05+` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat).
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `EXT` ^(1)^ | [hex]#19# `+*01,@00214+` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue).
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `STD` ^(1)^ | [hex]#19# `+*@00214,05+` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat).
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `EXT` ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + barres | Définir la couleur de texte/fond (couleurs étendues).
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `STD` | [hex]#19# `+*08~05+` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat).
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `EXT` | [hex]#19# `+*01~@00214+` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue).
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `STD` | [hex]#19# `+*@00214~05+` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat).
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `EXT` | [hex]#19# `+*@00214~@00017+` | chat + barres | Définir la couleur de texte/fond (couleurs étendues).
| [hex]#19# + `b` + `F` | [hex]#19# `+bF+` | barres | Définir la couleur de texte de la barre.
| [hex]#19# + `b` + `D` | [hex]#19# `+bD+` | barres | Définir la couleur du délimiteur de la barre.
| [hex]#19# + `b` + `B` | [hex]#19# `+bB+` | barres | Définir la couleur de fond de la barre.
| [hex]#19# + `b` + `_` | [hex]#19# `+b_+` | barre input | Caractère de démarrage dans l'entrée (utilisé seulement dans l'objet "input_text").
| [hex]#19# + `b` + `-` | [hex]#19# `+b-+` | barre input | Caractère de démarrage caché dans l'entrée (utilisé seulement dans l'objet "input_text").
| [hex]#19# + `b` + `#` | [hex]#19# `+b#+` | barre input | Caractère de déplacement du curseur (utilisé seulement dans l'objet "input_text").
| [hex]#19# + `b` + `i` | [hex]#19# `+bi+` | barres | Début d'objet.
| [hex]#19# + `b` + `l` (lower L) | [hex]#19# `+bl+` | barres | Ligne de démarrage d'objet.
| [hex]#19# + `E` | [hex]#19# `+E+` | chat + barres | Texte mis en valeur _(WeeChat ≥ 0.4.2)_.
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + barres | Réinitialiser la couleur (garder les attributs).
| [hex]#1A# + `(a)` | [hex]#1A# [hex]#01# | chat + barres | Activer un attribut.
| [hex]#1B# + `(a)` | [hex]#1B# [hex]#01# | chat + barres | Supprimer un attribut.
| [hex]#1C# | [hex]#1C# | chat + barres | Réinitialiser les attributs et la couleur.
|===
[NOTE]
@@ -1064,7 +1087,7 @@ Et puis des macros sont utilisées pour appeler ces fonctions.
Par exemple, la fonction _hook_timer_ est définie dans la structure
_t_weechat_plugin_ comme ceci :
[source,C]
[source,c]
----
struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
long interval,
@@ -1077,7 +1100,7 @@ struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
Et la macro utilisée pour appeler cette fonction est :
[source,C]
[source,c]
----
#define weechat_hook_timer(__interval, __align_second, __max_calls, \
__callback, __data) \
@@ -1088,7 +1111,7 @@ Et la macro utilisée pour appeler cette fonction est :
Donc dans une extension, l'appel à cette fonction sera par exemple :
[source,C]
[source,c]
----
server->hook_timer_sasl = weechat_hook_timer (timeout * 1000,
0, 1,
@@ -1205,7 +1228,7 @@ _doc/en/_), puis travaillez dessus.
Les traductions manquantes dans les fichiers sont indiquées par cette chaîne :
----
// TRANSLATION MISSING
// TRANSLATION MISSING
----
Vous devez traduire tout le fichier sauf les liens et les mots-clés spéciaux
@@ -1222,7 +1245,7 @@ pour les notes, avertissements, ... Ces mots doivent être gardés tels quels :
[CAUTION]
----
Lorsqu'il y a un nom après `<<link_name>>`, alors vous devez le traduire :
Lorsqu'il y a un nom après `+<<link_name>>+`, alors vous devez le traduire :
----
<<link_name,ce texte doit être traduit>>
+43 -31
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 ?
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 :
----
@@ -750,8 +750,9 @@ kbd:[Alt] au lieu de kbd:[Shift]).
=== J'ai des problèmes pour me connecter au serveur avec SSL, que puis-je faire ?
Si vous utilisez macOS, vous devez installer `openssl` depuis Homebrew.
Un fichier CA sera installé avec le le trousseau système. Vous pouvez alors
définie le chemin vers les certificats sous WeeChat :
Un fichier CA sera installé avec le le trousseau système.
Avec WeeChat ≤ 3.1, vous pouvez définir le chemin vers les certificats système :
----
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
@@ -789,11 +790,11 @@ seulement), remplacez "xxx" par le nom de votre serveur :
/set irc.server.xxx.ssl_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
----
[[irc_ssl_freenode]]
=== Comment puis-je me connecter à freenode avec SSL ?
[[irc_ssl_libera]]
=== Comment puis-je me connecter à libera avec SSL ?
Positionnez l'option _weechat.network.gnutls_ca_file_ avec le fichier des
certificats :
Avec WeeChat ≤ 3.1, positionnez l'option _weechat.network.gnutls_ca_file_ avec
le fichier des certificats :
----
/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"
@@ -813,9 +814,9 @@ Vérifiez que vous avez bien ce fichier (fourni généralement par le paquet
Configurez le port du serveur, SSL, puis connectez-vous :
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/connect freenode
/set irc.server.libera.addresses "irc.libera.chat/6697"
/set irc.server.libera.ssl on
/connect libera
----
[[irc_oauth]]
@@ -840,25 +841,25 @@ Si le serveur supporte SASL, vous devriez l'utiliser au lieu d'envoyer une
commande pour l'authentification avec nickserv, par exemple :
----
/set irc.server.freenode.sasl_username "mynick"
/set irc.server.freenode.sasl_password "xxxxxxx"
/set irc.server.libera.sasl_username "mynick"
/set irc.server.libera.sasl_password "xxxxxxx"
----
Si le serveur ne supporte pas SASL, vous pouvez ajouter un délai (entre la
commande et le join des canaux) :
----
/set irc.server.freenode.command_delay 5
/set irc.server.libera.command_delay 5
----
[[edit_autojoin]]
=== Comment puis-je ajouter/supprimer des canaux de l'option autojoin ?
Vous pouvez utiliser la commande `/set` pour éditer la liste des canaux de
l'autojoin, par exemple pour le serveur freenode :
l'autojoin, par exemple pour le serveur libera :
----
/set irc.server.freenode.autojoin [TAB]
/set irc.server.libera.autojoin [TAB]
----
[NOTE]
@@ -1038,16 +1039,16 @@ du script _buffer_autoset.py_ :
----
Par exemple, pour désactiver de manière permanente les highlights de "mike" sur
#weechat sur le serveur IRC freenode :
#weechat sur le serveur IRC libera :
----
/buffer_autoset add irc.freenode.#weechat hotlist_max_level_nicks_add mike:2
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
Pour l'appliquer à l'ensemble du serveur freenode :
Pour l'appliquer à l'ensemble du serveur libera :
----
/buffer_autoset add irc.freenode hotlist_max_level_nicks_add mike:2
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
Pour plus d'exemples, voir `+/help buffer_autoset+`.
@@ -1086,16 +1087,18 @@ Les scripts ne sont pas compatibles avec d'autres clients IRC.
[[scripts_update]]
=== La commande "/script update" ne peut pas lire les scripts, comment corriger ça ?
Consultez d'abord les questions à propos des connexions SSL dans cette FAQ
(en particulier l'option _weechat.network.gnutls_ca_file_).
Consultez d'abord les questions à propos des connexions SSL dans cette FAQ.
Si cela ne fonctionne toujours pas, essayez de supprimer manuellement le fichier
avec les scripts (dans votre shell) :
----
$ rm ~/.weechat/script/plugins.xml.gz
$ rm ~/.cache/weechat/script/plugins.xml.gz
----
[NOTE]
Avec WeeChat ≤ 3.1, le chemin devrait être : _~/.weechat/script/plugins.xml.gz_.
Et mettez à jour les scripts à nouveau dans WeeChat :
----
@@ -1116,10 +1119,18 @@ vous-même pour obtenir les mises à jour) :
* dans votre shell, avec curl installé :
----
$ cd ~/.weechat/script
$ cd ~/.cache/weechat/script
$ curl -O https://weechat.org/files/plugins.xml.gz
----
Si vous êtes sous macOS et que le fichier téléchargé a une taille de 0 octet,
essayez de définir cette variable dans votre fichier d'initialisation du shell
ou sur la ligne de commande, avant de démarrer WeeChat :
----
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
----
[[spell_dictionaries]]
=== J'ai installé des dictionnaires aspell sur mon système, comment les utiliser sans redémarrer WeeChat ?
@@ -1170,8 +1181,8 @@ Vous pouvez essayer les astuces suivantes pour consommer moins de mémoire :
spell, xfer (utilisé pour les DCC).
Voir `/help weechat.plugin.autoload`.
* Charger uniquement les scripts dont vous avez vraiment besoin.
* Ne pas charger les certificats si SSL n'est *PAS* utilisé : affecter une
chaîne vide pour l'option _weechat.network.gnutls_ca_file_.
* Ne pas charger les certificats si SSL n'est *PAS* utilisé : désactiver
l'option _weechat.network.gnutls_ca_system_.
* Réduire la valeur de l'option _weechat.history.max_buffer_lines_number_ ou
affecter une valeur à l'option _weechat.history.max_buffer_lines_minutes_.
* Réduire la valeur de l'option _weechat.history.max_commands_.
@@ -1230,16 +1241,16 @@ Par exemple :
----
/secure passphrase xxxxxxxxxx
/secure set freenode_username username
/secure set freenode_password xxxxxxxx
/set irc.server.freenode.sasl_username "${sec.data.freenode_username}"
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
/secure set libera_username username
/secure set libera_password xxxxxxxx
/set irc.server.libera.sasl_username "${sec.data.libera_username}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----
[[sharing_config_files]]
=== Je souhaite partager ma configuration de WeeChat, quels fichiers dois-je partager et que dois-je garder privé ?
Vous pouvez partager les fichiers _~/.weechat/*.conf_ sauf le fichier
Vous pouvez partager les fichiers de configuration _*.conf_ sauf le fichier
_sec.conf_ qui contient vos mots de passes chiffrés avec votre phrase
de chiffrement.
@@ -1281,7 +1292,8 @@ $ LD_PRELOAD=/lib/libpthread.so.0 gdb /path/to/weechat
[[supported_os]]
=== Quelle est la liste des plates-formes supportées par WeeChat ? Sera-t-il porté sur d'autres systèmes d'exploitation ?
La liste complète est sur cette page : https://weechat.org/download
WeeChat tourne bien sur la plupart des distributions Linux/BSD, GNU/Hurd, Mac OS
et Windows (Cygwin et Windows Subsystem for Linux).
Nous faisons le maximum pour supporter le plus de plates-formes possible.
Toute aide est la bienvenue pour les systèmes que nous n'avons pas, pour y
File diff suppressed because it is too large Load Diff
+21 -28
View File
@@ -110,12 +110,12 @@ devriez voir "irc" et d'autres extensions dans cette liste.
Vous pouvez ajouter un serveur IRC avec la commande `/server`, par exemple :
----
/server add freenode chat.freenode.net
/server add libera irc.libera.chat/6697 -ssl
----
Dans cette commande, `freenode` est le nom interne du serveur utilisé par
WeeChat : vous pourrez vous connecter avec `/connect freenode` et les options
du serveur sont _irc.server.freenode.xxx_.
Dans cette commande, `libera` est le nom interne du serveur utilisé par
WeeChat : vous pourrez vous connecter avec `/connect libera` et les options
du serveur sont _irc.server.libera.xxx_.
Comme d'habitude, de l'aide est disponible si vous êtes perdus :
@@ -135,38 +135,31 @@ définie (non "null"). Sinon WeeChat utilise la valeur par défaut
("irc.server_default.xxx").
Par exemple il y a des pseudos par défaut (basés sur votre login un*x), et
vous pouvez les écraser pour le serveur freenode avec la commande suivante :
vous pouvez les écraser pour le serveur libera avec la commande suivante :
----
/set irc.server.freenode.nicks "pseudo,pseudo2,pseudo3,pseudo4,pseudo5"
/set irc.server.libera.nicks "pseudo,pseudo2,pseudo3,pseudo4,pseudo5"
----
Pour modifier le nom d'utilisateur et nom réel :
----
/set irc.server.freenode.username "Mon nom d'utilisateur"
/set irc.server.freenode.realname "Mon nom réel"
/set irc.server.libera.username "Mon nom d'utilisateur"
/set irc.server.libera.realname "Mon nom réel"
----
Pour activer la connexion automatique au serveur lors du démarrage :
----
/set irc.server.freenode.autoconnect on
----
Pour se connecter avec SSL :
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/set irc.server.libera.autoconnect on
----
Si SASL est disponible sur le serveur, vous pouvez l'utiliser pour
l'authentification (vous serez identifié avant de rejoindre les canaux) :
----
/set irc.server.freenode.sasl_username "pseudo"
/set irc.server.freenode.sasl_password "xxxxxxx"
/set irc.server.libera.sasl_username "pseudo"
/set irc.server.libera.sasl_password "xxxxxxx"
----
Pour lancer une commande après connexion au serveur, par exemple pour
@@ -174,7 +167,7 @@ s'authentifier auprès de nickserv (seulement si vous n'utilisez pas SASL pour
l'authentification) :
----
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
/set irc.server.libera.command "/msg nickserv identify xxxxxxx"
----
[NOTE]
@@ -190,23 +183,23 @@ Définissez d'abord une phrase de chiffrement :
/secure passphrase this is my secret passphrase
----
Puis ajoutez une donnée sécurisée avec votre mot de passe freenode :
Puis ajoutez une donnée sécurisée avec votre mot de passe libera :
----
/secure set freenode_password xxxxxxx
/secure set libera_password xxxxxxx
----
Vous pouvez alors utiliser `+${sec.data.freenode_password}+` au lieu de votre
Vous pouvez alors utiliser `+${sec.data.libera_password}+` au lieu de votre
mot de passe dans les options IRC mentionnées ci-dessus, par exemple :
----
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----
Pour rejoindre automatiquement des canaux lors de la connexion au serveur :
----
/set irc.server.freenode.autojoin "#canal1,#canal2"
/set irc.server.libera.autojoin "#canal1,#canal2"
----
[TIP]
@@ -219,24 +212,24 @@ défaut à la place, par exemple pour utiliser les pseudos par défaut
(irc.server_default.nicks) :
----
/unset irc.server.freenode.nicks
/unset irc.server.libera.nicks
----
Autres options : vous pouvez modifier les autres options avec la commande
suivante ("xxx" est le nom d'une option) :
----
/set irc.server.freenode.xxx valeur
/set irc.server.libera.xxx valeur
----
[[connect_to_irc_server]]
== Se connecter au serveur IRC
----
/connect freenode
/connect libera
----
Avec cette commande, WeeChat se connecte au serveur freenode et rejoint
Avec cette commande, WeeChat se connecte au serveur libera et rejoint
automatiquement les canaux configurés dans l'option "autojoin" du serveur.
[NOTE]
+72 -72
View File
@@ -447,11 +447,11 @@ hda:
item 2:
__path: ['0x558d62840ea0']
number: 1
full_name: 'irc.server.freenode'
full_name: 'irc.server.libera'
item 3:
__path: ['0x558d62a9cea0']
number: 2
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
----
* Demander toutes les lignes du premier tampon :
@@ -599,15 +599,15 @@ inf: ('version_number', '34144256')
* Demander le répertoire de WeeChat :
----
(info_weechat_dir) info weechat_dir
(info_weechat_config_dir) info weechat_config_dir
----
Réponse :
[source,python]
----
id: 'info_weechat_dir'
inf: ('weechat_dir', '/home/xxx/.weechat')
id: 'info_weechat_config_dir'
inf: ('weechat_config_dir', '/home/user/.config/weechat')
----
[[command_infolist]]
@@ -759,7 +759,7 @@ Syntaxe :
Paramètres :
* _tampon_ : pointeur (par exemple : "0x1234abcd") ou nom complet du tampon (par exemple :
_core.weechat_ ou _irc.freenode.#weechat_)
_core.weechat_ ou _irc.libera.#weechat_)
Exemples :
@@ -868,10 +868,10 @@ hda:
prefix_color: None
----
* Demander la liste de pseudos pour le tampon "irc.freenode.#weechat" :
* Demander la liste de pseudos pour le tampon "irc.libera.#weechat" :
----
(nicklist_weechat) nicklist irc.freenode.#weechat
(nicklist_weechat) nicklist irc.libera.#weechat
----
Réponse :
@@ -960,7 +960,7 @@ Syntaxe :
Paramètres :
* _tampon_ : pointeur (par exemple : "0x1234abcd") ou nom complet du tampon (par exemple :
_core.weechat_ ou _irc.freenode.#weechat_)
_core.weechat_ ou _irc.libera.#weechat_)
* _données_ : données à envoyer au tampon : si elles commencent par `/`,
cela sera exécuté comme une commande sur le tampon, sinon le texte est envoyé
comme entrée sur le tampon
@@ -976,7 +976,7 @@ input core.weechat /help filter
* Envoyer le message "bonjour !" sur le canal #weechat :
----
input irc.freenode.#weechat bonjour !
input irc.libera.#weechat bonjour !
----
[[command_completion]]
@@ -996,7 +996,7 @@ Syntaxe :
Paramètres :
* _tampon_ : pointeur (par exemple : "0x1234abcd") ou nom complet du tampon (par exemple :
_core.weechat_ ou _irc.freenode.#weechat_)
_core.weechat_ ou _irc.libera.#weechat_)
* _position_ : position dans la chaîne pour la complétion (démarre à 0) ;
si la valeur est -1, la position est la longueur de _données_ (donc la
complétion se fait à la fin de _données_)
@@ -1157,7 +1157,7 @@ Syntaxe :
Paramètres :
* _tampon_ : pointeur (par exemple : "0x1234abcd") ou nom complet du tampon (par exemple :
_core.weechat_ ou _irc.freenode.#weechat_); le nom "*" peut être utilisé pour
_core.weechat_ ou _irc.libera.#weechat_); le nom "*" peut être utilisé pour
spécifier tous les tampons
* _options_ : un ou plusieurs mots-clés, séparés par des virgules (par défaut
_buffers,upgrade,buffer,nicklist_ pour "*" et _buffer,nicklist_ pour un
@@ -1194,14 +1194,14 @@ sync core.buffer
* Synchroniser le canal #weechat, sans la liste de pseudos :
----
sync irc.freenode.#weechat buffer
sync irc.libera.#weechat buffer
----
* Obtenir les signaux généraux + tous les signaux pour le canal #weechat :
----
sync * buffers,upgrade
sync irc.freenode.#weechat
sync irc.libera.#weechat
----
[[command_desync]]
@@ -1225,7 +1225,7 @@ Syntaxe :
Paramètres :
* _tampon_ : pointeur (par exemple : "0x1234abcd") ou nom complet du tampon (par exemple :
_core.weechat_ ou _irc.freenode.#weechat_); le nom "*" peut être utilisé pour
_core.weechat_ ou _irc.libera.#weechat_); le nom "*" peut être utilisé pour
spécifier tous les tampons
* _options_ : un ou plusieurs mots-clés, séparés par des virgules (le défaut est
_buffers,upgrade,buffer,nicklist_ pour "*" et _buffer,nicklist_ pour un
@@ -1234,7 +1234,7 @@ Paramètres :
[NOTE]
En utilisant le tampon "*", les autres tampons synchronisés (en utilisant un
nom) sont gardés. +
Donc si vous envoyez : "sync *", puis "sync irc.freenode.#weechat", puis
Donc si vous envoyez : "sync *", puis "sync irc.libera.#weechat", puis
"desync *", les mises à jour sur le canal #weechat seront toujours envoyées par
WeeChat (vous devez le retirer explicitement pour stopper les mises à jour).
@@ -1253,13 +1253,13 @@ desync * buffers,upgrade,buffer,nicklist
mises à jour du tampon) :
----
desync irc.freenode.#weechat nicklist
desync irc.libera.#weechat nicklist
----
* Désynchroniser le canal #weechat :
----
desync irc.freenode.#weechat
desync irc.libera.#weechat
----
[[command_test]]
@@ -1504,7 +1504,7 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| short_name | chaîne | Nom court (exemple : _#weechat_).
| nicklist | entier | 1 si le tampon a une liste de pseudos, sinon 0.
| title | chaîne | Titre du tampon.
@@ -1513,8 +1513,8 @@ Données envoyées dans le hdata :
| next_buffer | pointeur | Pointeur vers le tampon suivant.
|===
Exemple : canal _#weechat_ rejoint sur freenode, nouveau tampon
_irc.freenode.#weechat_ :
Exemple : canal _#weechat_ rejoint sur libera, nouveau tampon
_irc.libera.#weechat_ :
[source,python]
----
@@ -1534,13 +1534,13 @@ hda:
item 1:
__path: ['0x35a8a60']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
short_name: None
nicklist: 0
title: None
local_variables: {
'plugin': 'irc',
'name': 'freenode.#weechat',
'name': 'libera.#weechat',
}
prev_buffer: '0x34e7400'
next_buffer: '0x0'
@@ -1558,12 +1558,12 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| prev_buffer | pointeur | Pointeur vers le tampon précédent.
| next_buffer | pointeur | Pointeur vers le tampon suivant.
|===
Exemple : tampon _irc.freenode.#weechat_ déplacé vers le numéro 2 :
Exemple : tampon _irc.libera.#weechat_ déplacé vers le numéro 2 :
[source,python]
----
@@ -1579,7 +1579,7 @@ hda:
item 1:
__path: ['0x34588c0']
number: 2
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x347b9f0'
next_buffer: '0x3471bc0'
----
@@ -1596,12 +1596,12 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| prev_buffer | pointeur | Pointeur vers le tampon précédent.
| next_buffer | pointeur | Pointeur vers le tampon suivant.
|===
Exemple : tampon _irc.freenode.#weechat_ mélangé avec le tampon n°2 :
Exemple : tampon _irc.libera.#weechat_ mélangé avec le tampon n°2 :
[source,python]
----
@@ -1617,7 +1617,7 @@ hda:
item 1:
__path: ['0x4db4c00']
number: 2
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x4cef9b0'
next_buffer: '0x0'
----
@@ -1634,12 +1634,12 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| prev_buffer | pointeur | Pointeur vers le tampon précédent.
| next_buffer | pointeur | Pointeur vers le tampon suivant.
|===
Exemple : tampon _irc.freenode.#weechat_ sorti du mélange :
Exemple : tampon _irc.libera.#weechat_ sorti du mélange :
[source,python]
----
@@ -1655,7 +1655,7 @@ hda:
item 1:
__path: ['0x4db4c00']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x4cef9b0'
next_buffer: '0x0'
----
@@ -1674,12 +1674,12 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| prev_buffer | pointeur | Pointeur vers le tampon précédent.
| next_buffer | pointeur | Pointeur vers le tampon suivant.
|===
Exemple : tampon _irc.freenode.#weechat_ masqué :
Exemple : tampon _irc.libera.#weechat_ masqué :
[source,python]
----
@@ -1695,7 +1695,7 @@ hda:
item 1:
__path: ['0x4db4c00']
number: 2
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x4cef9b0'
next_buffer: '0x0'
----
@@ -1714,12 +1714,12 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| prev_buffer | pointeur | Pointeur vers le tampon précédent.
| next_buffer | pointeur | Pointeur vers le tampon suivant.
|===
Exemple : tampon _irc.freenode.#weechat_ démasqué :
Exemple : tampon _irc.libera.#weechat_ démasqué :
[source,python]
----
@@ -1735,7 +1735,7 @@ hda:
item 1:
__path: ['0x4db4c00']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
prev_buffer: '0x4cef9b0'
next_buffer: '0x0'
----
@@ -1752,7 +1752,7 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| short_name | chaîne | Nom court (exemple : _#weechat_).
| local_variables | table de hachage | Variables locales.
|===
@@ -1773,15 +1773,15 @@ hda:
item 1:
__path: ['0x4df7b80']
number: 5
full_name: 'irc.freenode.Flash2'
full_name: 'irc.libera.Flash2'
short_name: 'Flash2'
local_variables: {
'server': 'freenode',
'server': 'libera',
'plugin': 'irc',
'type': 'private',
'channel': 'FlashCode',
'nick': 'test',
'name': 'freenode.Flash2',
'name': 'libera.Flash2',
}
----
@@ -1797,7 +1797,7 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| title | chaîne | Titre du tampon.
|===
@@ -1816,7 +1816,7 @@ hda:
item 1:
__path: ['0x4a715d0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
title: 'Welcome on #weechat! https://weechat.org/'
----
@@ -1834,10 +1834,10 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
|===
Exemple : tampon _irc.freenode.#weechat_ vidé :
Exemple : tampon _irc.libera.#weechat_ vidé :
[source,python]
----
@@ -1851,7 +1851,7 @@ hda:
item 1:
__path: ['0x4a715d0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
----
[[message_buffer_type_changed]]
@@ -1866,7 +1866,7 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| type | entier | Type de tampon : 0 = formaté (par défaut), 1 = contenu libre.
|===
@@ -1902,12 +1902,12 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| local_variables | table de hachage | Variables locales.
|===
Exemple : variable locale _test_ ajoutée dans le tampon
_irc.freenode.#weechat_ :
_irc.libera.#weechat_ :
[source,python]
----
@@ -1922,15 +1922,15 @@ hda:
item 1:
__path: ['0x4a73de0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
local_variables: {
'server': 'freenode',
'server': 'libera',
'test': 'value',
'plugin': 'irc',
'type': 'channel',
'channel': '#weechat',
'nick': 'test',
'name': 'freenode.#weechat',
'name': 'libera.#weechat',
}
----
@@ -1946,12 +1946,12 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| local_variables | table de hachage | Variables locales.
|===
Exemple : variable locale _test_ mise à jour dans le tampon
_irc.freenode.#weechat_ :
_irc.libera.#weechat_ :
[source,python]
----
@@ -1966,7 +1966,7 @@ hda:
item 1:
__path: ['0x4a73de0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
local_variables: {
'server': 'local',
'test': 'value2',
@@ -1974,7 +1974,7 @@ hda:
'type': 'channel',
'channel': '#weechat',
'nick': 'test',
'name': 'freenode.#weechat',
'name': 'libera.#weechat',
}
----
@@ -1990,11 +1990,11 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
| local_variables | table de hachage | Variables locales.
|===
Exemple : variable locale _test_ supprimée du tampon _irc.freenode.#weechat_ :
Exemple : variable locale _test_ supprimée du tampon _irc.libera.#weechat_ :
[source,python]
----
@@ -2009,14 +2009,14 @@ hda:
item 1:
__path: ['0x4a73de0']
number: 3
full_name: 'irc.freenode.#prout'
full_name: 'irc.libera.#prout'
local_variables: {
'server': 'local',
'plugin': 'irc',
'type': 'channel',
'channel': '#weechat',
'nick': 'test',
'name': 'freenode.#weechat',
'name': 'libera.#weechat',
}
----
@@ -2043,7 +2043,7 @@ Données envoyées dans le hdata :
|===
Exemple : nouveau message _hello!_ du pseudo _FlashCode_ sur le tampon
_irc.freenode.#weechat_ :
_irc.libera.#weechat_ :
[source,python]
----
@@ -2092,10 +2092,10 @@ Données envoyées dans le hdata :
|===
| Nom | Type | Description
| number | entier | Numéro de tampon (≥ 1).
| full_name | chaîne | Nom complet (exemple : _irc.freenode.#weechat_).
| full_name | chaîne | Nom complet (exemple : _irc.libera.#weechat_).
|===
Exemple : tampon _irc.freenode.#weechat_ en cours de fermeture par WeeChat :
Exemple : tampon _irc.libera.#weechat_ en cours de fermeture par WeeChat :
[source,python]
----
@@ -2109,7 +2109,7 @@ hda:
item 1:
__path: ['0x4a715d0']
number: 3
full_name: 'irc.freenode.#weechat'
full_name: 'irc.libera.#weechat'
----
[[message_nicklist]]
@@ -2137,7 +2137,7 @@ Données envoyées dans le hdata :
| prefix_color | chaîne | Couleur du préfixe (seulement pour un pseudo).
|===
Exemple : liste de pseudos pour le tampon _irc.freenode.#weechat_ :
Exemple : liste de pseudos pour le tampon _irc.libera.#weechat_ :
[source,python]
----
@@ -2567,17 +2567,17 @@ objets).
retournées pour le hdata)
Exemple de hdata avec deux tampons (tampon "core" weechat et le serveur
freenode) et deux clés (_number_ et _full_name_) :
libera) et deux clés (_number_ et _full_name_) :
....
# commande
hdata buffer:gui_buffers(*) number,full_name
# réponse
┌────────┬──────────────────────────┬───╥─────────┬───┬──────────────╥─────────┬───┬─────────────────────
│ buffer │ number:int,full_name:str │ 2 ║ 0x12345 │ 1 │ core.weechat ║ 0x6789a │ 2 │ irc.server.freenode
└────────┴──────────────────────────┴───╨─────────┴───┴──────────────╨─────────┴───┴─────────────────────
└──────┘ └────────────────────────┘ └─┘ └──────────────────────────┘ └───────────────────────────────
┌────────┬──────────────────────────┬───╥─────────┬───┬──────────────╥─────────┬───┬───────────────────┐
│ buffer │ number:int,full_name:str │ 2 ║ 0x12345 │ 1 │ core.weechat ║ 0x6789a │ 2 │ irc.server.libera
└────────┴──────────────────────────┴───╨─────────┴───┴──────────────╨─────────┴───┴───────────────────┘
└──────┘ └────────────────────────┘ └─┘ └──────────────────────────┘ └───────────────────────────────┘
h-path clés nombre tampon 1 tampon 2
....
@@ -2721,7 +2721,7 @@ Un élément est :
** _value_ : valeur de la variable
Exemple d'infolist avec deux tampons (tampon "core" weechat et le serveur
freenode) :
libera) :
....
# commande
+102 -72
View File
@@ -72,12 +72,17 @@ link:weechat_plugin_api.en.html#_hook_process[Référence API extension WeeChat]
[[languages_specificities]]
=== Spécificités des langages
[[language_python]]
==== Python
[[python_module]]
===== Module
WeeChat définit un module `weechat` qui doit être importé avec `import weechat`.
WeeChat définit un module `weechat` qui doit être importé avec `import weechat`. +
Un "stub" Python pour l'API WeeChat est disponible dans le dépôt :
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi].
[[python_functions]]
===== Fonctions
Les fonctions sont appelées avec `+weechat.xxx(arg1, arg2, ...)+`.
@@ -85,6 +90,7 @@ Les fonctions sont appelées avec `+weechat.xxx(arg1, arg2, ...)+`.
Les fonctions `+print*+` se nomment `+prnt*+` en python (car `print` était un
mot clé réservé en Python 2).
[[python_strings]]
===== Chaînes reçues dans les fonctions de rappel
En Python 3 et avec WeeChat ≥ 2.7, les chaînes reçues dans les fonctions de
@@ -141,18 +147,23 @@ En Python 2, qui est déconseillé et ne devrait plus être utilisé, les chaîn
envoyées aux fonctions de rappel sont toujours de type `str`, et peuvent contenir
des données invalides UTF-8, dans les cas mentionnés ci-dessus.
[[language_perl]]
==== Perl
[[perl_functions]]
===== Fonctions
Les fonctions sont appelées par `+weechat::xxx(arg1, arg2, ...);+`.
[[language_ruby]]
==== Ruby
[[ruby_init]]
===== Initialisation
Vous devez définir _weechat_init_ et appeler _register_ dedans.
[[ruby_functions]]
===== Fonctions
Les fonctions sont appelées par `+Weechat.xxx(arg1, arg2, ...)+`.
@@ -178,20 +189,26 @@ Weechat.bar_new("name", "off", "0", "window", "", "left", "vertical", "vertical"
["default", "default", "default", "default"], "0", "items")
----
[[language_lua]]
==== Lua
[[lua_functions]]
===== Fonctions
Les fonctions sont appelées par `+weechat.xxx(arg1, arg2, ...)+`.
[[language_tcl]]
==== Tcl
[[tcl_functions]]
===== Fonctions
Les fonctions sont appelées par `+weechat::xxx arg1 arg2 ...+`.
[[language_guile]]
==== Guile (Scheme)
[[guile_functions]]
===== Fonctions
Les fonctions sont appelées par `+(weechat:xxx arg1 arg2 ...)+`.
@@ -204,14 +221,18 @@ excède la limite de Guile :
* config_new_option
* bar_new
[[language_javascript]]
==== JavaScript
[[javascript_functions]]
===== Fonctions
Les fonctions sont appelées par `+weechat.xxx(arg1, arg2, ...);+`.
[[language_php]]
==== PHP
[[php_functions]]
===== Fonctions
Les fonctions sont appelées par `+weechat_xxx(arg1, arg2, ...);+`.
@@ -222,11 +243,11 @@ Les fonctions sont appelées par `+weechat_xxx(arg1, arg2, ...);+`.
Tous les scripts WeeChat doivent s'enregistrer ("register") auprès de WeeChat,
et cela doit être la première fonction WeeChat appelée dans le script.
Prototype :
Prototype (Python) :
[source,python]
----
weechat.register(name, author, version, license, description, shutdown_function, charset)
def register(name: str, author: str, version: str, license: str, description: str, shutdown_function: str, charset: str) -> int: ...
----
Paramètres :
@@ -349,7 +370,7 @@ automatiquement le script quand WeeChat démarre.
Par exemple en Python :
----
$ cd ~/.weechat/python/autoload
$ cd ~/.local/share/weechat/python/autoload
$ ln -s ../script.py
----
@@ -796,58 +817,58 @@ Liste des constantes de l'API script :
| Catégorie | Constantes
| codes retour |
WEECHAT_RC_OK +
WEECHAT_RC_OK_EAT +
WEECHAT_RC_ERROR
`WEECHAT_RC_OK` (entier) +
`WEECHAT_RC_OK_EAT` (entier) +
`WEECHAT_RC_ERROR` (entier)
| fichiers de configuration |
WEECHAT_CONFIG_READ_OK +
WEECHAT_CONFIG_READ_MEMORY_ERROR +
WEECHAT_CONFIG_READ_FILE_NOT_FOUND +
WEECHAT_CONFIG_WRITE_OK +
WEECHAT_CONFIG_WRITE_ERROR +
WEECHAT_CONFIG_WRITE_MEMORY_ERROR +
WEECHAT_CONFIG_OPTION_SET_OK_CHANGED +
WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE +
WEECHAT_CONFIG_OPTION_SET_ERROR +
WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND +
WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET +
WEECHAT_CONFIG_OPTION_UNSET_OK_RESET +
WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED +
WEECHAT_CONFIG_OPTION_UNSET_ERROR
`WEECHAT_CONFIG_READ_OK` (entier) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (entier) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (entier) +
`WEECHAT_CONFIG_WRITE_OK` (entier) +
`WEECHAT_CONFIG_WRITE_ERROR` (entier) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (entier) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (entier) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (entier) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (entier) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (entier) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (entier) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (entier) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (entier) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (entier)
| listes triées |
WEECHAT_LIST_POS_SORT +
WEECHAT_LIST_POS_BEGINNING +
WEECHAT_LIST_POS_END
`WEECHAT_LIST_POS_SORT` (chaîne) +
`WEECHAT_LIST_POS_BEGINNING` (chaîne) +
`WEECHAT_LIST_POS_END` (chaîne)
| hotlist |
WEECHAT_HOTLIST_LOW +
WEECHAT_HOTLIST_MESSAGE +
WEECHAT_HOTLIST_PRIVATE +
WEECHAT_HOTLIST_HIGHLIGHT
`WEECHAT_HOTLIST_LOW` (chaîne) +
`WEECHAT_HOTLIST_MESSAGE` (chaîne) +
`WEECHAT_HOTLIST_PRIVATE` (chaîne) +
`WEECHAT_HOTLIST_HIGHLIGHT` (chaîne)
| hook process |
WEECHAT_HOOK_PROCESS_RUNNING +
WEECHAT_HOOK_PROCESS_ERROR
`WEECHAT_HOOK_PROCESS_RUNNING` (entier) +
`WEECHAT_HOOK_PROCESS_ERROR` (entier)
| hook connect |
WEECHAT_HOOK_CONNECT_OK +
WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND +
WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND +
WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED +
WEECHAT_HOOK_CONNECT_PROXY_ERROR +
WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR +
WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR +
WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR +
WEECHAT_HOOK_CONNECT_MEMORY_ERROR +
WEECHAT_HOOK_CONNECT_TIMEOUT +
WEECHAT_HOOK_CONNECT_SOCKET_ERROR
`WEECHAT_HOOK_CONNECT_OK` (entier) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (entier) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (entier) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (entier) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (entier) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (entier)
| hook signal |
WEECHAT_HOOK_SIGNAL_STRING +
WEECHAT_HOOK_SIGNAL_INT +
WEECHAT_HOOK_SIGNAL_POINTER
`WEECHAT_HOOK_SIGNAL_STRING` (chaîne) +
`WEECHAT_HOOK_SIGNAL_INT` (chaîne) +
`WEECHAT_HOOK_SIGNAL_POINTER` (chaîne)
|===
[[common_tasks]]
@@ -889,13 +910,13 @@ weechat.prnt("", "%smauvais paramètres" % weechat.prefix("error"))
weechat.prnt("", "texte %sjaune sur bleu" % weechat.color("yellow,blue"))
# chercher un tampon et afficher un message
# (le nom complet d'un tampon est extension.nom, par exemple : "irc.freenode.#weechat")
buffer = weechat.buffer_search("irc", "freenode.#weechat")
# (le nom complet d'un tampon est extension.nom, par exemple : "irc.libera.#weechat")
buffer = weechat.buffer_search("irc", "libera.#weechat")
weechat.prnt(buffer, "message sur le canal #weechat")
# autre solution pour chercher un tampon IRC (meilleure)
# (notez que le serveur et le canal sont séparés par une virgule)
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
weechat.prnt(buffer, "message sur le canal #weechat")
----
@@ -917,7 +938,7 @@ Exemples :
weechat.command("", "/help")
# envoyer "bonjour" au canal IRC #weechat (les utilisateurs sur le canal verront le message)
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
weechat.command(buffer, "bonjour")
----
@@ -1230,7 +1251,7 @@ xxx,irc_raw_in2_yyy::
[source,python]
----
def join_cb(data, signal, signal_data):
# signal est par exemple : "freenode,irc_in2_join"
# signal est par exemple : "libera,irc_in2_join"
# signal_data est le message IRC, par exemple : ":nick!user@host JOIN :#canal"
server = signal.split(",")[0]
msg = weechat.info_get_hashtable("irc_message_parse", {"message": signal_data})
@@ -1285,72 +1306,81 @@ Le résultat est une table de hachage avec les clés suivantes
(les exemples de valeurs sont construits avec ce message :
`+@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!+`) :
[width="100%",cols="1,^2,10,8",options="header"]
[width="100%",cols="3,^2,10,7",options="header"]
|===
| Clé | Version de WeeChat | Description | Exemple
| Clé | Depuis WeeChat ^(1)^ | Description | Exemple
| tags | 0.4.0 |
| tags | 0.4.0 |
Les étiquettes dans le message (peut être vide). |
`+time=2015-06-27T16:40:35.000Z+`
| message_without_tags | ≥ 0.4.0 |
| 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 |
Le message sans les étiquettes (la même chose que le message s'il n'y a pas
d'étiquettes). |
`+:nick!user@host PRIVMSG #weechat :hello!+`
| nick | 0.3.4 |
| nick | 0.3.4 |
Le pseudo d'origine. |
`+nick+`
| user | 2.7 |
| user | 2.7 |
L'utilisateur d'origine. |
`+user+`
| host | 0.3.4 |
| host | 0.3.4 |
L'hôte d'origine (incluant le pseudo). |
`+nick!user@host+`
| command | 0.3.4 |
| command | 0.3.4 |
La commande (_PRIVMSG_, _NOTICE_, ...). |
`+PRIVMSG+`
| channel | 0.3.4 |
| channel | 0.3.4 |
Le canal cible. |
`+#weechat+`
| arguments | 0.3.4 |
| arguments | 0.3.4 |
Les paramètres de la commande (incluant le canal). |
`+#weechat :hello!+`
| text | 1.3 |
| text | 1.3 |
Le texte (par exemple un message utilisateur). |
`+hello!+`
| pos_command | 1.3 |
| pos_command | 1.3 |
La position de _command_ dans le message ("-1" si _command_ n'a pas été trouvé). |
`+47+`
| pos_arguments | 1.3 |
| pos_arguments | 1.3 |
La position de _arguments_ dans le message ("-1" si _arguments_ n'a pas été trouvé). |
`+55+`
| pos_channel | 1.3 |
| pos_channel | 1.3 |
La position de _channel_ dans le message ("-1" si _channel_ n'a pas été trouvé). |
`+55+`
| pos_text | 1.3 |
| pos_text | 1.3 |
La position de _text_ dans le message ("-1" si _text_ n'a pas été trouvé). |
`+65+`
|===
[NOTE]
^(1)^ La clé a été introduite dans cette version de WeeChat.
[source,python]
----
dict = weechat.info_get_hashtable(
"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 == {
# "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!",
# "nick": "nick",
# "user": "user",
@@ -1359,10 +1389,10 @@ dict = weechat.info_get_hashtable(
# "channel": "#weechat",
# "arguments": "#weechat :hello!",
# "text": "hello!",
# "pos_command": "47",
# "pos_arguments": "55",
# "pos_channel": "55",
# "pos_text": "65",
# "pos_command": "65",
# "pos_arguments": "73",
# "pos_channel": "73",
# "pos_text": "83",
# }
----
@@ -1405,8 +1435,8 @@ weechat.prnt("", "Version %s" % weechat.info_get("version", ""))
[source,python]
----
# répertoire de WeeChat, par exemple : "/home/xxxx/.weechat"
weechat.prnt("", "Répertoire WeeChat : %s" % weechat.info_get("weechat_dir", ""))
# répertoire de config WeeChat, par exemple : "/home/user/.config/weechat"
weechat.prnt("", "Répertoire de config WeeChat : %s" % weechat.info_get("weechat_config_dir", ""))
# inactivité clavier
weechat.prnt("", "Inactivité depuis %s secondes" % weechat.info_get("inactivity", ""))
-138
View File
@@ -1,138 +0,0 @@
= Guide du testeur WeeChat
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: fr
:toc: left
:toc-title: Table des matières
:sectnums:
:docinfo1:
[[purpose]]
== Objet
Beaucoup d'utilisateurs nous demandent comment aider WeeChat. La façon
la plus facile (et aussi la plus rusée) consiste à le tester !
Le test est une partie très importante du développement de logiciel et
ne devrait pas être sous-estimé. Lorsque de nouvelles fonctionnalités
sont implémentées, elles doivent être testées, mais pour certaines
fonctionnalités il y a trop de cas à tester et les développeurs ne
peuvent pas tout tester.
Par exemple : l'extension charset introduite dans WeeChat WeeChat 0.2.2 : aucun
de nous (développeurs, contributeurs et testeurs) n'utilisait de canaux avec
des caractères spéciaux dans leurs noms et quand la version 0.2.2 a été rendue
disponible, nous avons reçu de nombreuses remontées d'utilisateurs russes.
Si nous avons plus de testeurs, cela ne devrait pas arriver à nouveau dans le
futur.
Tester les versions stables de WeeChat est inutile car les
développeurs sont constamment occupés à implémenter de nouvelles
fonctionnalités (et à corriger des anciens bugs).
[[prepare_system]]
== Préparez votre système
Cela nous aiderait beaucoup si vous activiez les fichiers _core_ Linux : si
WeeChat se plante, Linux écrit un fichier _core_. Ce fichier contient des
informations importantes pour le debug, pour savoir exactement où le problème
se situe dans WeeChat).
Si vous utilisez le shell _bash_, ajoutez cette ligne dans votre _~/.bashrc_ :
----
ulimit -c unlimited
----
[[download]]
== Téléchargement de la version devel
Le code tout frais (avec les derniers bugs et fonctionnalités) est stocké dans
GIT.
Vous pouvez décider de le construire manuellement (méthode recommandée) :
* La version GIT peut être construite et installée en parallèle de la version
stable,
* Vous n'avez pas besoin d'accès root ni de sacrifier votre version stable de
WeeChat.
[[get_sources]]
=== Obtenir et compiler les sources
Créez tout d'abord un répertoire, par exemple _weechat-git_ :
----
$ mkdir ~/weechat-git
$ cd ~/weechat-git
----
Si vous avez git installé, vous pouvez cloner la base GIT (recommandé) :
----
$ git clone https://github.com/weechat/weechat.git
$ cd weechat
----
[NOTE]
Plus tard, vous pourrez utiliser la commande `git pull` dans ce répertoire
pour obtenir juste les deltas avec la version d'aujourd'hui.
Sinon vous pouvez installer le paquet _devel_ :
----
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
$ tar xvjf weechat-devel.tar.bz2
$ cd weechat-devel
----
Pour compiler les sources, CMake est recommandé :
----
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
$ make
$ make install
----
Si vous n'avez pas CMake, il est toujours possible d'utiliser les autotools :
----
$ ./autogen.sh
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
$ make
$ make install
----
[[install_binary_package]]
=== Obtenir un paquet binaire
Selon votre distribution Linux :
* Debian : https://weechat.org/download/debian
* Gentoo : https://weechat.org/download
* ArchLinux : PKGBUILD depuis https://aur.archlinux.org/
* autre : nous ne savons pas ! Eheh.
[[run]]
== Lancer WeeChat
La commande est :
----
$ ~/weechat-git/bin/weechat
----
Si vous êtes encore éveillé, vous devriez voir une interface familière et
pouvoir vous vanter d'utiliser la version la plus récente possible de WeeChat ;)
Maintenant si vous obtenez un comportement étrange ou un plantage, n'hésitez
pas à nous en avertir sur _#weechat_, serveur _chat.freenode.net_.
S'il n'y a pas de plantage, dites-le nous aussi, nous avons besoin de votre
retour et de vos impressions !
+2513 -1922
View File
File diff suppressed because it is too large Load Diff
-13
View File
@@ -122,17 +122,4 @@ if(ENABLE_DOC)
add_custom_target(doc-quickstart-it ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.it.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.it.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
# tester's guide
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.it.html
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.it.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.it.adoc
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.it.adoc
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_tester.it.html"
)
add_custom_target(doc-tester-it ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.it.html)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.it.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
endif()

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