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

Compare commits

..

234 Commits

Author SHA1 Message Date
Sébastien Helleu 2904a2e811 Version 2.5 2019-06-06 20:43:20 +02:00
Sébastien Helleu c64cbe1a84 doc: update French auto-generated file 2019-06-06 20:09:08 +02:00
Sébastien Helleu 40f12ec20f core: add FUNDING.yml 2019-06-05 21:32:54 +02:00
Sébastien Helleu 4c9b61755b Version 2.5-rc2 2019-06-04 23:12:40 +02:00
Sébastien Helleu 22895f3f5e relay: set socket option SO_KEEPALIVE only for TCP sockets when creating the socket (issue #733) 2019-06-04 22:59:42 +02:00
Sébastien Helleu 479d234ced relay: set socket option SO_REUSEADDR only for TCP sockets when creating the socket (issue #733) 2019-06-04 22:54:00 +02:00
Sébastien Helleu 86d9cb1e41 relay: set socket option SO_REUSEADDR only for TCP sockets (issue #733) 2019-06-04 22:45:54 +02:00
Sébastien Helleu b4dadd6d98 relay: add UNIX domain socket completion for command /relay add (issue #733) 2019-06-04 22:29:18 +02:00
Sébastien Helleu bfbb511169 relay: fix typo in French translation of /help relay (issue #733) 2019-06-04 22:27:03 +02:00
Sébastien Helleu 22e6777aed relay: fix crash when deleting a relay (issue #733) 2019-06-04 22:19:39 +02:00
Sébastien Helleu 66011b4bee relay: fix truncated path when the unix socket path is longer than the authorized one (issue #733) 2019-06-04 22:19:31 +02:00
Sébastien Helleu 917b2ddf69 spell: add a warning if aspell.conf is still present (on first spell load) 2019-06-04 20:56:05 +02:00
Sébastien Helleu c4a482e067 core: sort changes by importance instead of commit date in release notes 2019-06-04 07:52:42 +02:00
Sébastien Helleu 5edf6ff1c5 doc: update Polish auto-generated files 2019-06-02 06:01:05 +02:00
Krzysztof Korościk a6f44be396 po: upated polish translation 2019-06-01 00:15:12 +02:00
Krzysztof Korościk 5e1174d135 doc: updated polish translation 2019-05-31 23:18:12 +02:00
weechatter 2ab08885be doc: update German documentation 2019-05-27 22:49:17 +02:00
Sébastien Helleu 99bb53f693 doc: add example of WeeChat command to setup the password in a WeeChat IRC relay client (user's guide) 2019-05-27 21:40:01 +02:00
Sébastien Helleu a599e0328b doc: disambiguate key binding "l", which is lower "L" (not "1") 2019-05-27 21:38:39 +02:00
weechatter f3f5bf1d31 core: update German translations 2019-05-26 15:00:15 +02:00
Sébastien Helleu 92a4948666 doc: add extra left/right margins on key sequences 2019-05-26 14:52:00 +02:00
Sébastien Helleu c0bb243541 doc: add links to WeeChat directories and files (user's guide) 2019-05-26 14:51:14 +02:00
Sébastien Helleu f1f1474fda doc: update Japanese auto-generated file 2019-05-26 13:22:17 +02:00
Sébastien Helleu b0554c7415 Merge pull request #1349 from l/master/translation/ja_JP
core: update Japanese translations
2019-05-26 13:21:35 +02:00
AYANOKOUZI, Ryuunosuke 26c844cd25 core: update Japanese translations 2019-05-26 09:00:00 +09:00
Sébastien Helleu ad40118469 doc: increase font size for key bindings 2019-05-25 16:10:23 +02:00
Sébastien Helleu bea63c7b60 doc: remove extra spaces before colons 2019-05-24 21:53:41 +02:00
Sébastien Helleu d3c3e97a0d doc: remove extra space in python dict (scripting guide) 2019-05-24 21:53:17 +02:00
Sébastien Helleu 7cf4585690 doc: fix styles in user's guide 2019-05-24 21:52:35 +02:00
Sébastien Helleu c9762c84e1 doc: fix style in bar items chapter (user's guide) 2019-05-23 21:12:40 +02:00
Sébastien Helleu c716ec1398 doc: update German auto-generated file 2019-05-16 22:02:52 +02:00
weechatter 403555d1be core: update German translations 2019-05-16 20:55:13 +02:00
Sébastien Helleu b6d56d4972 Version 2.5-rc1 2019-05-14 20:31:36 +02:00
Sébastien Helleu 34adcde2ff irc: add extra check on argument "nick" in functions "irc_nick_set_*" 2019-05-14 07:26:48 +02:00
Sébastien Helleu f6d6f7bac5 irc: fix crash when the nick in incoming message is not found in channel 2019-05-14 07:25:04 +02:00
Sébastien Helleu 90610c55c8 relay: remove useless condition
This fixes a compilation warning on FreeBSD.
2019-05-13 22:08:35 +02:00
Sébastien Helleu 828710737a core: update ChangeLog (closes #733, closes #1333) 2019-05-13 21:57:42 +02:00
Sébastien Helleu ec5aca81e7 relay: set address to "local" if not known 2019-05-13 21:57:23 +02:00
Sébastien Helleu 9ed89beaa0 core: update translations 2019-05-13 21:43:11 +02:00
Sébastien Helleu 8121747e7b relay: rename variables in function relay_config_check_path_length 2019-05-13 20:50:13 +02:00
Sébastien Helleu 6f3e563f8b relay: fix comment 2019-05-12 22:57:25 +02:00
Sébastien Helleu 4d156ed8d7 doc: update chapter on relay unix domain sockets; add translations (user's guide) 2019-05-12 22:52:33 +02:00
Sébastien Helleu d1577b34da relay: set mode 700 on the unix socket file (only the owner can use it) 2019-05-12 22:27:43 +02:00
Sébastien Helleu ef1fcbd183 relay: do not overwrite a file if it's not a socket, display an error when the socket can not be created 2019-05-12 22:18:42 +02:00
Sébastien Helleu 585eb337e8 relay: evaluate path of unix socket relay 2019-05-12 21:53:23 +02:00
Sébastien Helleu b228ccdfc3 relay: rename function relay_config_check_path_len to relay_config_check_path_length 2019-05-12 21:39:22 +02:00
Sébastien Helleu ade52cdc7d relay: fix update of port/path variables in relay server when options relay.port.* and relay.path.* are changed with /set 2019-05-12 21:39:22 +02:00
Sébastien Helleu eacc08f2e1 relay: fix section used when the unix relay does not start with "unix." 2019-05-12 21:39:22 +02:00
Sébastien Helleu f273487688 relay: add unix relay format in /help relay 2019-05-12 21:39:22 +02:00
Sébastien Helleu 170c523c84 relay: remove extra newline at the end of /help relay 2019-05-12 21:39:22 +02:00
Sébastien Helleu c4230ecece relay: remove local variable ptr_server from function relay_config_check_path_cb (not needed) 2019-05-12 21:39:22 +02:00
Sébastien Helleu c1af2702b8 relay: improve message displayed on a new client 2019-05-12 21:39:22 +02:00
Sébastien Helleu 78fda01dd5 relay: improve message displayed when the relay is removed 2019-05-12 21:39:22 +02:00
Sébastien Helleu 9d04bc5801 relay: improve message displayed when the relay is added 2019-05-12 21:39:22 +02:00
Sébastien Helleu abe85999d8 relay: rename function relay_config_create_option_port to relay_config_create_option_port_path 2019-05-12 21:39:22 +02:00
Sébastien Helleu df3848e1f0 relay: fix code style 2019-05-12 21:39:22 +02:00
Sébastien Helleu c78fb8dc7c relay: rename variable "un" to "unix_socket" 2019-05-12 18:52:22 +02:00
Ryan Farley ffefd1b785 relay: add UNIX socket support (closes #733) 2019-05-12 18:51:13 +02:00
Nils Görs 5f87112ec5 doc: update German documentation 2019-05-12 14:28:40 +02:00
Sébastien Helleu 01795251f9 doc: fix typo in French scripting guide 2019-05-12 09:27:43 +02:00
Sébastien Helleu 1d3d0aa66e doc: add chapter about WeeChat architecture in scripting guide 2019-05-12 09:25:45 +02:00
Sébastien Helleu a24817b141 irc: rename server variable "nick_host" to "host" 2019-05-12 07:46:01 +02:00
Sébastien Helleu e1fb8433ce core: update ChangeLog (issue #1346) 2019-05-11 20:33:37 +02:00
Sébastien Helleu e3c38d7163 core: add detection of Ruby 2.6 in autotools 2019-05-11 20:32:45 +02:00
Sébastien Helleu b66655b1de Merge pull request #1346 from J0WI/patch-1
core: add detection for Ruby 2.6
2019-05-11 20:31:30 +02:00
J0WI 38b195214b core: add detection for Ruby 2.6 2019-05-11 13:31:34 +02:00
Sébastien Helleu 26ba04b454 irc: set buffer local variable "nick_host" when a channel buffer is opened 2019-05-10 22:25:56 +02:00
Sébastien Helleu 35237c8088 irc: add bar items "irc_nick", "irc_host" and "irc_nick_host" 2019-05-10 22:00:33 +02:00
Sébastien Helleu 06aa7034fb irc: add variable "nick_host" in server structure 2019-05-10 21:59:31 +02:00
Sébastien Helleu 2073408b86 irc: fix parsing of MODE command when there are colons after the first mode argument (closes #1296) 2019-05-10 19:29:58 +02:00
Sébastien Helleu 141b42817f core: update ChangeLog (issue #1341, issue #1342) 2019-05-01 08:35:07 +02:00
Sébastien Helleu 4ddfbc9714 core: add contributor in AUTHORS.adoc 2019-05-01 08:33:47 +02:00
Sébastien Helleu 2712f0991b core: replace CMAKE_INSTALL_PREFIX by ${prefix} in libdir (weechat.pc) 2019-05-01 08:32:36 +02:00
Sébastien Helleu 1102f8ccf0 Merge pull request #1342 from ryan-farley/libdir_fix
cmake: allow custom libdir (fix #1341)
2019-05-01 08:29:59 +02:00
Ryan Farley 8df3ad3d26 cmake: allow custom libdir (fix #1341)
Allows for custom LIBDIR to specified with cmake builds. WEECHAT_LIBDIR
is used for a custom Weechat directory, or set from LIBDIR (as LIBDIR
used to be set).
2019-04-25 16:53:55 -05:00
Sébastien Helleu 38535686f8 core: update ChangeLog 2019-04-20 11:00:29 +02:00
Sébastien Helleu ece92efd81 tests: add link with iconv library (if found)
This fixes a compilation error on FreeBSD.
2019-04-20 10:15:01 +02:00
Nils Görs 4718112c1c doc: update German documentation 2019-04-19 23:07:36 +02:00
Sébastien Helleu d9d1fa7210 doc: translate quickstart changes in other languages 2019-04-19 21:25:33 +02:00
Sébastien Helleu 7f00a51e19 Merge remote-tracking branch 'origin/pr/1340' 2019-04-19 20:55:23 +02:00
Michael Siegel 0b330762fa quick start guide: make two separate sections out of section 2 2019-04-19 18:18:47 +00:00
Nils Görs 88404452e0 doc: update German documentation 2019-04-19 07:12:45 +02:00
Sébastien Helleu ebff142511 core: add contributor in AUTHORS.adoc 2019-04-17 07:45:00 +02:00
Sébastien Helleu a706ee976c doc: translate quickstart changes in other languages 2019-04-17 07:44:03 +02:00
Sébastien Helleu 1e63cdcd9f Merge remote-tracking branch 'origin/pr/1339' 2019-04-17 07:32:03 +02:00
Michael Siegel ec337a7601 quick start guide: rearrange content in section 2
Put everything help-related first, then explain how to set options.
2019-04-16 22:02:19 +00:00
Sébastien Helleu 1582d923e6 core: use getopt to parse command line arguments
Multiple options can now be given in a single flag, for example:

  weechat -ast

Following formats were allowed for command line argument with a value:

  weechat -d /tmp/weechat
  weechat --dir /tmp/weechat

Now these extra formats are supported as well:

  weechat -d/tmp/weechat
  weechat --dir=/tmp/weechat
2019-04-14 13:35:47 +02:00
Sébastien Helleu cc2a6db335 doc: update Japanese auto-generated files 2019-04-14 13:21:09 +02:00
Sébastien Helleu cb28372dd7 Merge pull request #1337 from l/master/translation/ja_JP
core: update Japanese translations
2019-04-14 13:20:03 +02:00
Sébastien Helleu b376f9f013 Merge pull request #1336 from msiism/master
quick start guide: insert “the” where missing
2019-04-14 09:11:33 +02:00
Sébastien Helleu 0e2baa56cf doc: update German auto-generated files 2019-04-14 08:55:19 +02:00
AYANOKOUZI, Ryuunosuke 1876e84c82 core: update Japanese translations 2019-04-14 09:00:00 +09:00
Michael Siegel b4ecfa0159 quick start guide: insert “the” where missing 2019-04-13 20:22:17 +00:00
Nils Görs 2b65c351a8 core: update German translations 2019-04-13 21:18:56 +02:00
Sébastien Helleu 4063abc86b core: bump API version
This is required after changes on functions hook_info and info_get.
2019-04-13 20:48:42 +02:00
Sébastien Helleu dbf6691243 core: add contributor in AUTHORS.adoc (issue #931) 2019-04-13 20:48:11 +02:00
Sébastien Helleu ebf38f142e core: merge functions gui_line_prefix_is_same_nick_as_{previous|next} (issue #931) 2019-04-13 20:46:05 +02:00
Sébastien Helleu 573377e2d9 core: fix /help weechat.look.buffer_time_same 2019-04-13 20:38:19 +02:00
Adrian Bjugård 0b5bff9ef5 core: add option weechat.look.prefix_same_nick_middle (closes #930, closes #931) 2019-04-13 20:36:41 +02:00
Nils Görs 36fc3fdc3b core: update German translations 2019-04-13 18:48:08 +02:00
Nils Görs 92e3217cf5 core: update German translations 2019-04-13 17:40:47 +02:00
Simmo Saan 97e9046918 core: add option weechat.look.buffer_time_same (closes #1127) 2019-04-13 14:45:53 +02:00
Sébastien Helleu 63c992922c Merge pull request #1334 from msiism/master
Improve intro of “Start WeeChat” section
2019-04-13 13:54:27 +02:00
Sébastien Helleu 30768d4d24 trigger: add hook "info_hashtable" 2019-04-13 13:53:16 +02:00
Sébastien Helleu 8bc06ea101 trigger: add hook "info" 2019-04-13 08:52:40 +02:00
Sébastien Helleu 299c308f00 irc: fix memory leak in infos "irc_server_isupport" and "irc_server_isupport_value" 2019-04-13 08:42:45 +02:00
Sébastien Helleu 3d95217745 api: return allocated string in hook_info callback and function info_get 2019-04-13 08:42:45 +02:00
Michael Siegel beb04085d8 Improve intro of “Start WeeChat” section 2019-04-11 21:58:09 +00:00
Sébastien Helleu c80dc2a5ca Merge pull request #1332 from msiism/master
Two grammar fixes for WeeChat user’s guide
2019-04-11 22:40:56 +02:00
Michael Siegel 20c4cb5ae4 Improve grammar in “Screen layout” section 2019-04-11 19:46:57 +00:00
Michael Siegel 734d17993c Add missing “the” to footnote in “Files and directories” 2019-04-11 19:34:27 +00:00
Sébastien Helleu f701caf5bb doc: fix styles in user guide and plugin API reference 2019-04-11 20:56:35 +02:00
Sébastien Helleu 5440c9d91c doc: update German auto-generated file 2019-04-07 10:22:31 +02:00
Nils Görs 1f170bd7f3 core: update German translations 2019-04-06 22:15:58 +02:00
Sébastien Helleu a84c32cf30 xfer: add option xfer.network.speed_limit_recv (closes #269)
For consistency, the option xfer.network.speed_limit has been renamed to
xfer.network.speed_limit_send.
2019-04-06 14:11:07 +02:00
Sébastien Helleu 6ebd97cc63 core: fix typos in README 2019-04-04 20:50:49 +02:00
Sébastien Helleu f8d5776ec9 core: add links to Mastodon and Twitter in README 2019-04-04 20:49:23 +02:00
Sébastien Helleu a34233d54b core: remove link to Google+ in README 2019-04-04 20:49:06 +02:00
Nils Görs 544d006fb7 core: update German translations 2019-04-02 22:08:58 +02:00
Sébastien Helleu 6fa4494aae tests: add test with multiple wildcards in call to function string_match 2019-04-01 00:18:21 +02:00
Sébastien Helleu 5d02ff9a6d tests: add tests on function util_signal_search 2019-04-01 00:15:25 +02:00
Sébastien Helleu d2571ab53b tests: add tests on util_timeval functions 2019-04-01 00:07:32 +02:00
Sébastien Helleu 709334eede tests: add tests on function util_parse_delay with unit "ms" (milliseconds) 2019-04-01 00:02:49 +02:00
Sébastien Helleu 5f1b2722c8 doc: update Japanese auto-generated files 2019-03-31 23:54:50 +02:00
Sébastien Helleu 413aa499cc core: add documentation on command line debug options (in --help and man pages)
Command line debug options are now documented:

* --no-dlclose: do not call the function dlclose after plugins are unloaded
* --no-gnutls: do not call the init and deinit functions of GnuTLS library
* --no-gcrypt: do not call the init and deinit functions of Gcrypt library

These options must not be used in production, they're for debug only and can be
used with tools like Valgrind or electric-fence.
2019-03-31 23:53:54 +02:00
Sébastien Helleu c469f30be5 doc: fix generation of man page weechat-headless with autotools 2019-03-31 23:51:28 +02:00
Sébastien Helleu 5980a4deb8 Merge pull request #1328 from l/master/translation/ja_JP
core: update Japanese translations
2019-03-31 23:46:27 +02:00
AYANOKOUZI, Ryuunosuke 80becc9a29 core: update Japanese translations 2019-04-01 09:00:00 +09:00
Sébastien Helleu c77bffaa52 doc: update German auto-generated file 2019-03-29 23:27:45 +01:00
Sébastien Helleu dad451af34 core: send code coverage only with gcc, not with clang 2019-03-29 23:17:27 +01:00
Sébastien Helleu 3f80ae0ee8 core: add codecov badge 2019-03-29 23:17:09 +01:00
Sébastien Helleu d91954490f core: move coverage.info in parent directory 2019-03-29 23:01:27 +01:00
Sébastien Helleu 56d6b510e6 core: move upload of code coverage from build-test.sh to .travis.yml 2019-03-29 22:53:26 +01:00
Sébastien Helleu 33cefb7daa core: fix upload of code coverage to codecov.io 2019-03-29 22:46:13 +01:00
Sébastien Helleu 3e22bc116b core: upload code coverage on codecov.io in Travis CI 2019-03-29 22:37:03 +01:00
Nils Görs 4df26f391d core: update German translations 2019-03-29 22:34:33 +01:00
Sébastien Helleu b97fc2bd0f core: don't execute command scheduled by /repeat if the buffer does not exist any more 2019-03-29 20:42:00 +01:00
Sébastien Helleu 2571d17cb9 core: don't execute command scheduled by /wait if the buffer does not exist any more 2019-03-29 20:37:18 +01:00
Sébastien Helleu f1d18f4c26 core: use seconds by default in /repeat interval, allow unit for the interval 2019-03-29 20:31:19 +01:00
Sébastien Helleu fa5b1eed77 core: move parsing of /wait delay in a separate function, with unit tests 2019-03-29 20:17:26 +01:00
Sébastien Helleu b3cf270d1d core: allow text in addition to a command in command /repeat 2019-03-29 08:37:57 +01:00
Sébastien Helleu 8251f1fd13 core: update ChangeLog 2019-03-28 22:18:16 +01:00
Sébastien Helleu da43e95c75 relay: use option "delay" in call to command_options (closes #1327)
This fixes a crash when sending "/plugin reload relay" from a relay client.
2019-03-28 22:07:25 +01:00
Sébastien Helleu 4e9e5f2652 api: add option "delay" in hashtable options of function command_options (issue #1327) 2019-03-28 22:07:04 +01:00
Sébastien Helleu 2f37de9148 core: make "input_commands_allowed" work with /wait and /repeat commands (issue #928) 2019-03-28 18:45:22 +01:00
Sébastien Helleu 9b4fa10923 core: set CMake minimum version required to 3.0
This is required for add_library() with INTERFACE library type.
2019-03-25 08:52:53 +01:00
Sébastien Helleu c713a0e475 tests: fix scripting API tests on 32-bit arch
The problem is that on 32-bit arch (like GNU/Hurd), the number 42000000000000
is converted to 42000000000000L in Python, which is causing troubles in other
languages like Perl.

The fix is to use a smaller number. Such large size for function
string_format_size is tested in the C++ test suite anyway.
2019-03-25 00:18:55 +01:00
Sébastien Helleu b04d8934ee tests: fix style in CMake file 2019-03-24 13:43:19 +01:00
Sébastien Helleu 96d3a3834c doc: improve description of CMake option ENABLE_PYTHON3 in user's guide 2019-03-24 09:38:43 +01:00
Sébastien Helleu 429fafd42f doc: fix typo Gnutls -> GnuTLS in user's guide 2019-03-24 09:38:43 +01:00
Sébastien Helleu 6c41e627cd doc: fix description of man/doc CMake options in user's guide 2019-03-24 09:38:43 +01:00
Sébastien Helleu 2612adf899 core: add CMake option "ENABLE_CODE_COVERAGE" to compile with code coverage options
This option is OFF by default and should be enabled only for tests, to measure
test coverage.
2019-03-24 09:38:43 +01:00
Sébastien Helleu 47c4329404 debian: update changelog 2019-03-23 22:15:18 +01:00
Sébastien Helleu ecfe6756f8 core: switch from Ubuntu Trusty to Xenial in Travis CI 2019-03-23 22:00:26 +01:00
Sébastien Helleu e68754aafe lua: add detection of Lua 5.3 with autotools 2019-03-23 22:00:03 +01:00
Sébastien Helleu 34bf68d38e tests: remove extra output before/after tests 2019-03-23 20:08:17 +01:00
Sébastien Helleu ff32112396 irc: fix length of string for SHA-512, SHA-256 and SHA-1 in help on ssl_fingerprint option 2019-03-21 23:36:24 +01:00
Sébastien Helleu 2da148eb55 core: add Haiku as supported platform in README 2019-03-21 22:02:31 +01:00
Nils Görs 21e227020f core: update German translations 2019-03-19 23:18:33 +01:00
Sébastien Helleu bb017b2613 irc: display an error with /allchan -current or /allpv -current if the current buffer is not an irc buffer (closes #1325) 2019-03-19 20:37:06 +01:00
Sébastien Helleu 766bea3f9e tests: remove value for first #define in headers 2019-03-19 20:33:30 +01:00
Sébastien Helleu c4bf528b4e php: remove value for first #define in headers 2019-03-19 20:33:16 +01:00
Sébastien Helleu 8f79b1c0fc doc: add missing keys Ctrl+F1 and Ctrl+F2 for buflist (FAQ) 2019-03-19 20:32:27 +01:00
Sébastien Helleu f6c5061590 irc: fix update of channels modes with arguments when joining a channel (closes #1324) 2019-03-18 20:39:42 +01:00
Sébastien Helleu 1ef7a55e72 core: fix typo: Weechat -> WeeChat 2019-03-17 18:34:21 +01:00
Sébastien Helleu 3ee87bcfce core: fix description of Cygwin "weechat" package 2019-03-17 18:12:54 +01:00
Sébastien Helleu 58f4c37a63 core: fix version numbering scheme in cygport file 2019-03-17 14:40:36 +01:00
Sébastien Helleu 413221bc9e doc: update German auto-generated file 2019-03-12 22:58:54 +01:00
Nils Görs 840c815bb0 Merge branch 'master' of github.com:weechat/weechat 2019-03-12 22:43:03 +01:00
Nils Görs 27f33624bd core: update German translations 2019-03-12 22:42:39 +01:00
Sébastien Helleu 78cabc2e06 relay: fix compilation warning when gnutls is not found 2019-03-12 22:26:55 +01:00
Sébastien Helleu 5c2c19c0cd irc: fix compilation warning when gnutls is not found 2019-03-12 22:26:28 +01:00
Sébastien Helleu 99e48d7fa3 core: set max length to 4096 for /secure passphrase (closes #1323) 2019-03-12 21:30:01 +01:00
Sébastien Helleu bc6c1f274c core: improve message displayed when a command is not allowed (issue #928)
The whole command with arguments and the full buffer name are now displayed in
the warning message (in debug mode only).
2019-03-11 21:12:40 +01:00
Sébastien Helleu 92e176ab89 relay: use empty value by default for option relay.weechat.commands (issue #928)
The relay client is supposed to be safe by default, and the relay connection
should be protected by the different ways (restriction on IP address, SSL,
strong password, Time-based One-Time Password, local bind address and use of
SSH tunnel…).

So this option lets the user add extra security by allowing only some
commands (whitelist), or allowing any commands except a list of given
commands (blacklist).
2019-03-11 21:12:23 +01:00
Sébastien Helleu e44c4904c3 relay: add forbidden commands /key and /trigger in weechat protocol (issue #928) 2019-03-10 22:58:50 +01:00
Sébastien Helleu 508f224af9 relay: add forbidden commands /wait and /repeat in weechat protocol (issue #928) 2019-03-10 18:29:22 +01:00
Sébastien Helleu 2b70d71aa1 core: replace argument "keep_eol" by "flags" in function string_split (closes #1322) 2019-03-10 18:29:16 +01:00
Sébastien Helleu 8aa5f5375e core: add value -1 for keep_eol in function string_strip (issue #1322)
The value -1 means it's a standard split, but empty items are kept, and
separators are not removed at beginning/end of string.
2019-03-09 21:56:05 +01:00
Sébastien Helleu 79d0910c08 doc: update German auto-generated file 2019-03-09 20:51:31 +01:00
Nils Görs b925ed5950 core: update German translations 2019-03-09 19:34:40 +01:00
Sébastien Helleu dd44c1db16 relay: add extra forbidden commands in weechat protocol (issue #928)
Commands were already forbidden (option relay.weechat.commands):

- /exec
- /upgrade
- /quit

These extra commands are now forbidden by default:

- /fset
- /set
- /unset
- /plugin
- /script
- /python
- /perl
- /ruby
- /lua
- /tcl
- /guile
- /javascript
- /php
- /secure
2019-03-09 17:54:06 +01:00
Sébastien Helleu 2f5aa3b509 core: use bitwise shift operator to define flag constants 2019-03-02 11:09:52 +01:00
Sébastien Helleu 76290729b7 core: add contributor in AUTHORS.adoc (issue #1319) 2019-03-01 07:42:32 +01:00
Sébastien Helleu b9044f5ca1 core: update ChangeLog (issue #1319) 2019-03-01 07:41:24 +01:00
Sébastien Helleu 7b43d2fe43 Merge pull request #1319 from phy1729/quote-nick
irc: quote argument to NICK
2019-03-01 07:40:42 +01:00
Matthew Martin 77a9322bbf irc: quote argument to NICK 2019-02-28 18:55:26 -06:00
Nils Görs 6a0e9818a9 core: update German translations 2019-02-28 21:41:09 +01:00
Sébastien Helleu 791406f26f doc: fix typo in FAQ 2019-02-28 21:38:05 +01:00
Sébastien Helleu c91e47c414 script: use SHA-512 instead of MD5 for script checksum
Related to weechat/weechat.org@66a8b72ab1
2019-02-28 20:55:10 +01:00
Sébastien Helleu d290de2cba relay: add option relay.weechat.commands (closes #928) 2019-02-28 20:24:25 +01:00
Sébastien Helleu 80b980b2af api: add function command_options (issue #928) 2019-02-28 20:19:18 +01:00
Sébastien Helleu 64043d5a6c php: fix memory leak in functions using hashtable parameters
Functions fixed in PHP plugin:

- string_eval_expression
- string_eval_path_home
- key_bind
- hook_process_hashtable
- hook_hsignal_send
- info_get_hashtable
- hdata_update
2019-02-27 07:51:02 +01:00
Sébastien Helleu c079cc124e doc: fix typo in plugin API reference 2019-02-27 07:46:33 +01:00
Sébastien Helleu 55501b84d6 core: remove function gui_buffer_match_list_split, use function string_match_list 2019-02-27 07:46:29 +01:00
Sébastien Helleu 17a218e6b6 core: use function string_match_list for the autoload of plugins 2019-02-27 07:46:26 +01:00
Sébastien Helleu c2859096cb api: add function string_match_list 2019-02-27 07:46:22 +01:00
Sébastien Helleu e473161c9f core: remove parentheses after function names in ChangeLog 2019-02-26 20:02:21 +01:00
Sébastien Helleu e6850dcf9e Merge pull request #1318 from arza-zara/typos
fset: fix typo in /help fset.format.option2
2019-02-26 19:55:16 +01:00
arza 2af3157dc2 fset: fix typo in /help fset.format.option2 2019-02-26 19:33:03 +02:00
Sébastien Helleu a10769f0f8 doc: move spell chapter after scripts in user's guide 2019-02-26 08:01:42 +01:00
Sébastien Helleu 4ef149b591 core: clarify changes on option weechat.completion.nick_completer in release notes 2019-02-25 18:49:46 +01:00
Sébastien Helleu f1d30dc0b1 core: fix alignment of images in README 2019-02-24 17:03:01 +01:00
Sébastien Helleu a817327b0e core: add WeeChat logo in README 2019-02-24 16:14:57 +01:00
Sébastien Helleu 471f9c61da relay: remove obsolete comment 2019-02-24 16:13:04 +01:00
Sébastien Helleu 466268d5ef doc: update German auto-generated files 2019-02-24 10:03:30 +01:00
Nils Görs 485f5d3e87 core: update German translations 2019-02-23 23:25:22 +01:00
Sébastien Helleu 8eb24f4338 core: update ChangeLog (issue #1055, issue #1312) 2019-02-23 13:41:49 +01:00
Sébastien Helleu 4a13e1ac7e core: update translations (issue #1055, issue #1312) 2019-02-23 13:40:23 +01:00
Simmo Saan c84ac65954 core: add /filter addreplace (closes #1055) 2019-02-23 13:37:46 +01:00
Sébastien Helleu 525417c2c6 core: update ChangeLog (issue #1309, issue #1311) 2019-02-23 11:23:14 +01:00
Sébastien Helleu 68b56291f9 core: merge two comments in a single one (issue #1309, issue #1311) 2019-02-23 11:22:58 +01:00
Sébastien Helleu 7b79fbbd09 Merge remote-tracking branch 'origin/pr/1311' 2019-02-23 11:17:02 +01:00
Sébastien Helleu bdc905df16 core: replace "Desired behavior" by "Expected behavior" in bug report template 2019-02-22 21:46:24 +01:00
Sébastien Helleu baa598276c fset: fix slow refresh of fset buffer during /reload (closes #1313) 2019-02-22 21:33:39 +01:00
Sébastien Helleu 355843b27a core: move "Current behavior" after "Steps to reproduce" in bug report template 2019-02-22 21:00:55 +01:00
Simmo Saan 8ac4a75969 gui: fix use after free bug in /filter del (issue #1309)
Deleting (freeing) a filter also frees its buffers, so refilter must
happen before freeing. Disabling the filter temporarily fixes the bug.

This fix disables the filter before filter_removing signal, though.
2019-02-21 16:15:58 +02:00
Simmo Saan 91936ff583 gui: only refilter affected buffers on filter change (closes #1309) 2019-02-21 16:03:15 +02:00
Sébastien Helleu 33581dd1a7 doc: update German auto-generated files 2019-02-20 08:40:34 +01:00
Nils Görs d2ac854bfa core: update German translations 2019-02-20 08:36:58 +01:00
Nils Görs dd8969413d core: update German translations 2019-02-20 08:25:50 +01:00
Sébastien Helleu 21c02a0378 core: add command to change key alt+s in release notes 2019-02-19 22:42:11 +01:00
Sébastien Helleu 8344f0addc core: add command /spell and default key alt+s in release notes 2019-02-19 22:40:11 +01:00
Sébastien Helleu 7b0507bb47 core: add reason of aspell renaming in release notes 2019-02-19 22:35:08 +01:00
Sébastien Helleu cccd4f07e5 core: add extra instructions about spell plugin in release notes 2019-02-19 22:04:17 +01:00
Sébastien Helleu 3368557cc7 core: update translations (issue #1299) 2019-02-19 21:38:53 +01:00
Sébastien Helleu 27481df277 core: force new API version to prevent the old aspell plugin to load (issue #1299) 2019-02-19 21:21:20 +01:00
Sébastien Helleu 57aa9e060e spell: rename "aspell" plugin to "spell" (issue #1299)
The following things have been renamed:

- file aspell.conf -> spell.conf
- options aspell.* -> spell.*
- bar item aspell_dict -> spell_dict
- bar item and local variable aspell_suggest -> spell_suggest
- info aspell_dict -> spell_dict
2019-02-19 21:15:56 +01:00
Sébastien Helleu e8159298ad core: update ChangeLog (issue #1306, issue #1307) 2019-02-19 20:41:34 +01:00
Sébastien Helleu 9985af8b5d Merge remote-tracking branch 'origin/pr/1307' 2019-02-19 20:38:14 +01:00
Sébastien Helleu 6a9937f08a core: fix compilation on Mac OS (closes #1308)
This adds the missing include "unistd.h" for function "mkdtemp" (required on
Mac OS only).
2019-02-18 19:28:20 +01:00
Simmo Saan 62dfe2ac63 aspell: optimize stripping of nick_completer (issue #1306) 2019-02-18 11:48:48 +02:00
Simmo Saan d512cc324a aspell: strip trailing spaces from nick_completer (closes #1306) 2019-02-18 11:19:42 +02:00
Sébastien Helleu 0a6172c128 Version 2.5-dev 2019-02-17 08:46:20 +01:00
398 changed files with 17668 additions and 9916 deletions
+1
View File
@@ -0,0 +1 @@
custom: https://weechat.org/donate/
+5 -5
View File
@@ -10,17 +10,17 @@ about: Create a bug report (please do not report security issues here)
## Current behavior
## Steps to reproduce
1. 
2. 
3. 
## Desired behavior
## Current behavior
## Expected behavior
+12 -9
View File
@@ -1,29 +1,34 @@
dist: xenial
sudo: required
language: c
compiler:
- gcc
- clang
sudo: required
dist: trusty
env:
- BUILDTOOL="cmake" BUILDARGS=""
# - BUILDTOOL="cmake" BUILDARGS="-DENABLE_PYTHON3=ON"
- BUILDTOOL="cmake" BUILDARGS="-DENABLE_GNUTLS=OFF"
- BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
- BUILDTOOL="autotools" BUILDARGS=""
# - BUILDTOOL="autotools" BUILDARGS="--enable-python3"
- BUILDTOOL="autotools" BUILDARGS="--disable-gnutls"
matrix:
fast_finish: true
exclude:
- compiler: clang
env: BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
before_script:
# Workaround https://github.com/travis-ci/travis-ci/issues/5326
- export PATH=$(echo $PATH | tr ':' "\n" | sed '/\/opt\/python/d' | tr "\n" ":" | sed "s|::|:|g")
- echo 'APT::Install-Recommends "false";' | sudo tee -a /etc/apt/apt.conf
- sudo add-apt-repository -y ppa:ondrej/php
- travis_retry sudo apt-get update -qq
- travis_retry sudo apt-get -y install devscripts equivs python-pip libenchant-dev autopoint cmake pkg-config libncursesw5-dev gem2deb libperl-dev python-dev python3-dev libaspell-dev liblua5.1-0-dev tcl8.5-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt11-dev libgnutls-dev zlib1g-dev curl libcpputest-dev php7.0-dev libphp7.0-embed
- travis_retry sudo apt-get -y install devscripts equivs python-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls-dev zlib1g-dev curl libcpputest-dev php7.0-dev libphp7.0-embed
- travis_retry sudo gem install asciidoctor
- travis_retry sudo pip install msgcheck pylint
- travis_retry sudo -H pip install --ignore-installed msgcheck pylint
- phpenv local system
script:
@@ -43,6 +48,4 @@ after_success:
- weechat --license
- weechat --version
- weechat --temp-dir --run-command "/debug dirs;/debug libs" --run-command "/quit"
matrix:
fast_finish: true
- if [ "$CODECOVERAGE" = "1" ]; then bash <(curl -s https://codecov.io/bash) -f coverage.info || echo "Codecov error"; fi
+4
View File
@@ -16,6 +16,7 @@
Alphabetically:
* Adam Saponara (adsr)
* Adrian Bjugård
* Ailin Nemui (Nei)
* Aleksey V Zapparov
* Alex Tarkovsky
@@ -72,8 +73,10 @@ Alphabetically:
* Marco Paolone
* Mateusz Poszwa
* Matt Robinson
* Matthew Martin
* Max Anton Teufel
* Maxim Baz
* Michael Siegel
* Miroslav Koskar
* Murilo Opsfelder Araujo
* Neui
@@ -103,6 +106,7 @@ Alphabetically:
* Romero B. de S. Malaquias
* Rudolf Polzer (divVerent)
* Ruslan Bekenev
* Ryan Farley
* Ryuunosuke Ayanokouzi
* scumjr
* Sergio Durigan Junior
+49 -39
View File
@@ -19,7 +19,7 @@
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
cmake_minimum_required(VERSION 2.4)
cmake_minimum_required(VERSION 3.0)
project(weechat C)
@@ -58,10 +58,12 @@ endif()
set(PKG_STRING "${PROJECT_NAME} ${VERSION}")
string(REPLACE "\";\"" "\ " PKG_STRING ${PKG_STRING})
if(DEFINED LIBDIR)
set(LIBDIR ${LIBDIR}/${PROJECT_NAME})
else()
set(LIBDIR ${CMAKE_INSTALL_PREFIX}/lib/${PROJECT_NAME})
if(NOT DEFINED LIBDIR)
set(LIBDIR ${CMAKE_INSTALL_PREFIX}/lib)
endif()
if(NOT DEFINED WEECHAT_LIBDIR)
set(WEECHAT_LIBDIR ${LIBDIR}/${PROJECT_NAME})
endif()
if(NOT DEFINED SHAREDIR)
@@ -82,38 +84,46 @@ else()
set(INCLUDEDIR ${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME})
endif()
option(ENABLE_NCURSES "Compile the Ncurses interface" ON)
option(ENABLE_HEADLESS "Compile the headless binary (required for tests)" ON)
option(ENABLE_NLS "Enable Native Language Support" ON)
option(ENABLE_GNUTLS "Enable SSLv3/TLS support" ON)
option(ENABLE_LARGEFILE "Enable Large File Support" ON)
option(ENABLE_ALIAS "Enable Alias plugin" ON)
option(ENABLE_ASPELL "Enable Aspell plugin" ON)
option(ENABLE_ENCHANT "Enable Enchant lib for Aspell plugin" OFF)
option(ENABLE_BUFLIST "Enable Buflist plugin" ON)
option(ENABLE_CHARSET "Enable Charset plugin" ON)
option(ENABLE_EXEC "Enable Exec plugin" ON)
option(ENABLE_FIFO "Enable FIFO plugin" ON)
option(ENABLE_FSET "Enable Fast Set plugin" ON)
option(ENABLE_IRC "Enable IRC plugin" ON)
option(ENABLE_LOGGER "Enable Logger plugin" ON)
option(ENABLE_RELAY "Enable Relay plugin" ON)
option(ENABLE_SCRIPT "Enable Script plugin (script manager)" ON)
option(ENABLE_SCRIPTS "Enable script plugins (perl, python, ...)" ON)
option(ENABLE_PERL "Enable Perl scripting language" ON)
option(ENABLE_PYTHON "Enable Python scripting language" ON)
option(ENABLE_PYTHON3 "Use Python 3.x if found (NOT recommended because many \"official\" scripts won't work)" OFF)
option(ENABLE_RUBY "Enable Ruby scripting language" ON)
option(ENABLE_LUA "Enable Lua scripting language" ON)
option(ENABLE_TCL "Enable Tcl scripting language" ON)
option(ENABLE_GUILE "Enable Scheme (guile) scripting language" ON)
option(ENABLE_JAVASCRIPT "Enable JavaScript scripting language" ON)
option(ENABLE_PHP "Enable PHP scripting language" ON)
option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
option(ENABLE_XFER "Enable Xfer plugin" ON)
option(ENABLE_MAN "Enable build of man page" OFF)
option(ENABLE_DOC "Enable build of documentation" OFF)
option(ENABLE_TESTS "Enable tests" OFF)
option(ENABLE_NCURSES "Compile the Ncurses interface" ON)
option(ENABLE_HEADLESS "Compile the headless binary (required for tests)" ON)
option(ENABLE_NLS "Enable Native Language Support" ON)
option(ENABLE_GNUTLS "Enable SSLv3/TLS support" ON)
option(ENABLE_LARGEFILE "Enable Large File Support" ON)
option(ENABLE_ALIAS "Enable Alias plugin" ON)
option(ENABLE_BUFLIST "Enable Buflist plugin" ON)
option(ENABLE_CHARSET "Enable Charset plugin" ON)
option(ENABLE_EXEC "Enable Exec plugin" ON)
option(ENABLE_FIFO "Enable FIFO plugin" ON)
option(ENABLE_FSET "Enable Fast Set plugin" ON)
option(ENABLE_IRC "Enable IRC plugin" ON)
option(ENABLE_LOGGER "Enable Logger plugin" ON)
option(ENABLE_RELAY "Enable Relay plugin" ON)
option(ENABLE_SCRIPT "Enable Script plugin (script manager)" ON)
option(ENABLE_SCRIPTS "Enable script plugins (perl, python, ...)" ON)
option(ENABLE_PERL "Enable Perl scripting language" ON)
option(ENABLE_PYTHON "Enable Python scripting language" ON)
option(ENABLE_PYTHON3 "Use Python 3.x if found (NOT recommended because many \"official\" scripts won't work)" OFF)
option(ENABLE_RUBY "Enable Ruby scripting language" ON)
option(ENABLE_LUA "Enable Lua scripting language" ON)
option(ENABLE_TCL "Enable Tcl scripting language" ON)
option(ENABLE_GUILE "Enable Scheme (guile) scripting language" ON)
option(ENABLE_JAVASCRIPT "Enable JavaScript scripting language" ON)
option(ENABLE_PHP "Enable PHP scripting language" ON)
option(ENABLE_SPELL "Enable Spell checker plugin" ON)
option(ENABLE_ENCHANT "Enable Enchant lib for Spell checker plugin" OFF)
option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
option(ENABLE_XFER "Enable Xfer plugin" ON)
option(ENABLE_MAN "Enable build of man page" OFF)
option(ENABLE_DOC "Enable build of documentation" OFF)
option(ENABLE_TESTS "Enable tests" OFF)
option(ENABLE_CODE_COVERAGE "Enable code coverage" OFF)
# code coverage
add_library(coverage_config INTERFACE)
if(ENABLE_CODE_COVERAGE)
target_compile_options(coverage_config INTERFACE -O0 -g --coverage)
target_link_libraries(coverage_config INTERFACE --coverage)
endif()
# headless mode is required for tests
if(ENABLE_TESTS AND NOT ENABLE_HEADLESS)
@@ -253,10 +263,10 @@ add_custom_target(dist
set(PACKAGE "${PROJECT_NAME}")
set(prefix "${CMAKE_INSTALL_PREFIX}")
set(exec_prefix "\${prefix}")
set(libdir "\${exec_prefix}/lib")
string(REPLACE "${CMAKE_INSTALL_PREFIX}" "\${prefix}" libdir "${LIBDIR}")
set(includedir "\${prefix}/include")
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/weechat.pc.in ${CMAKE_CURRENT_BINARY_DIR}/weechat.pc @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.pc DESTINATION ${LIBDIR}/../pkgconfig)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.pc DESTINATION ${LIBDIR}/pkgconfig)
# cygport file (used to build Cygwin packages)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/weechat.cygport.in ${CMAKE_CURRENT_BINARY_DIR}/weechat-${VERSION}-1.cygport @ONLY)
+210 -155
View File
@@ -15,6 +15,61 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
(file _ReleaseNotes.adoc_ in sources).
[[v2.5]]
== Version 2.5 (2019-06-06)
New features::
* core: use getopt to parse command line arguments
* core: add option weechat.look.prefix_same_nick_middle (issue #930, issue #931)
* core: add option weechat.look.buffer_time_same (issue #1127)
* core: use seconds by default in /repeat interval, allow unit for the interval
* core: allow text in addition to a command in command /repeat
* core: add option "addreplace" in command /filter (issue #1055, issue #1312)
* api: return allocated string in hook_info callback and function info_get
* api: replace argument "keep_eol" by "flags" in function string_split (issue #1322)
* api: add function command_options (issue #928)
* api: add function string_match_list
* irc: add bar items "irc_nick", "irc_host" and "irc_nick_host"
* irc: add variable "host" in server structure
* relay: add support of UNIX socket (issue #733, issue #1333)
* relay: add option relay.weechat.commands (issue #928)
* script: use SHA-512 instead of MD5 for script checksum
* spell: rename aspell plugin to spell (issue #1299)
* trigger: add hooks "info" and "info_hashtable"
* xfer: rename option xfer.network.speed_limit to xfer.network.speed_limit_send, add option xfer.network.speed_limit_recv (issue #269)
Bug fixes::
* core: don't execute command scheduled by /repeat and /wait if the buffer does not exist any more
* core: set max length to 4096 for /secure passphrase (issue #1323)
* core: refilter only affected buffers on filter change (issue #1309, issue #1311)
* fset: fix slow refresh of fset buffer during /reload (issue #1313)
* irc: fix parsing of MODE command when there are colons after the first mode argument (issue #1296)
* irc: fix memory leak in infos "irc_server_isupport" and "irc_server_isupport_value"
* irc: fix length of string for SHA-512, SHA-256 and SHA-1 in help on ssl_fingerprint option
* irc: display an error with /allchan -current or /allpv -current if the current buffer is not an irc buffer (issue #1325)
* irc: fix update of channels modes with arguments when joining a channel (issue #1324)
* irc: quote NICK command argument sent to the server (issue #1319)
* php: fix memory leak in functions string_eval_expression, string_eval_path_home, key_bind, hook_process_hashtable, hook_hsignal_send, info_get_hashtable, hdata_update
* relay: fix crash when a weechat relay client reloads the relay plugin with /plugin reload relay (issue #1327)
* spell: fix detection of nick followed by the nick completer (issue #1306, issue #1307)
* trigger: fix split of hook arguments (issue #1322)
Tests::
* unit: add tests on function util_signal_search
Build::
* core: fix value of libdir in file weechat.pc (issue #1341, issue #1342)
* core: fix generation of man page weechat-headless with autotools
* core: add CMake option "ENABLE_CODE_COVERAGE" to compile with code coverage options (CMake ≥ 3.0 is now required)
* core: fix compilation on Mac OS (issue #1308)
* lua: add detection of Lua 5.3 with autotools
* ruby: add detection of Ruby 2.6 (issue #1346)
* tests: fix compilation of tests on FreeBSD
[[v2.4]]
== Version 2.4 (2019-02-17)
@@ -102,7 +157,7 @@ New features::
* core: send buffer pointer (when possible) in signal "hotlist_changed" (issue #1133)
* core: add support of list options in curl (issue #826, issue #219)
* core: allow merge of buffers by name in command /buffer (issue #1108, issue #1159)
* api: add function hashtable_add_from_infolist()
* api: add function hashtable_add_from_infolist
* api: add function string_format_size in scripting API
* irc: add nick, host and log tags in message displayed in private buffer when the nick comes back on the server (issue #1221)
* irc: add support for IRCv3.2 chghost, add options irc.look.smart_filter_chghost and irc.color.message_chghost (issue #640)
@@ -196,8 +251,8 @@ Build::
Bug fixes::
* python: fix arguments status/gnutls_rc/sock in hook_connect() callback
* python: fix argument fd in hook_fd() callback
* python: fix arguments status/gnutls_rc/sock in hook_connect callback
* python: fix argument fd in hook_fd callback
[[v2.0]]
== Version 2.0 (2017-12-03)
@@ -210,8 +265,8 @@ New features::
* core: make value optional in command /buffer set (issue #746, issue #1088)
* core: allow floating point and hexadecimal numbers in comparison of evaluated values
* core: add option weechat.look.save_config_with_fsync (issue #1083)
* api: add support of prefix "quiet:" in function key_unbind() to quietly remove keys
* api: add argument "recurse_subdirs" in function exec_on_files()
* api: add support of prefix "quiet:" in function key_unbind to quietly remove keys
* api: add argument "recurse_subdirs" in function exec_on_files
* alias: add infolist "alias_default" (list of default aliases)
* buflist: add two new bar items ("buflist2" and "buflist3") using the same format configuration options (issue #990)
* buflist: add option buflist.look.add_newline (issue #1027)
@@ -226,8 +281,8 @@ Bug fixes::
* core, plugins: check return code of strftime function
* core: fix cast of time_t (to "long long" instead of "long") (issue #1051)
* core: call the config hook when options are renamed or removed
* api: change type of arguments status/gnutls_rc/sock in hook_connect() callback from string to integer (in scripts)
* api: change type of argument fd in hook_fd() callback from string to integer (in scripts)
* api: change type of arguments status/gnutls_rc/sock in hook_connect callback from string to integer (in scripts)
* api: change type of argument fd in hook_fd callback from string to integer (in scripts)
* buflist: remove recursive evaluation of extra variables (issue #1060)
* guile: return integer (0/1) instead of boolean in API functions
* guile: fix return value of static strings in API functions
@@ -263,7 +318,7 @@ New features::
* core: improve speed of nicklist bar item callback
* core: allow index for hdata arrays in evaluation of expressions
* api: allow update of variables "scroll_x" and "scroll_y" in bar_window with function hdata_update
* api: add functions config_option_get_string() and hdata_compare()
* api: add functions config_option_get_string and hdata_compare
* buflist: add option buflist.look.auto_scroll (issue #332)
* buflist: add keys kbd:[F1]/kbd:[F2], kbd:[Alt+F1]/kbd:[Alt+F2] to scroll the buflist bar
* buflist: display a warning when the script "buffers.pl" is loaded
@@ -298,10 +353,10 @@ New features::
* core: add resize of window parents with /window resize [h/v]size (task #11461, issue #893)
* core: add hotlist pointer in buffer structure
* core: add last start date in output of command /version after at least one /upgrade (issue #903)
* api: add arraylist functions: arraylist_new(), arraylist_size(), arraylist_get(), arraylist_search(), arraylist_insert(), arraylist_add(), arraylist_remove(), arraylist_clear(), arraylist_free()
* api: add dynamic string functions: string_dyn_alloc(), string_dyn_copy(), string_dyn_concat(), string_dyn_free()
* api: add special key "__quiet" in hashtable for function key_bind()
* api: add `${re:#}` to get the index of last group captured in function string_eval_expression()
* api: add arraylist functions: arraylist_new, arraylist_size, arraylist_get, arraylist_search, arraylist_insert, arraylist_add, arraylist_remove, arraylist_clear, arraylist_free
* api: add dynamic string functions: string_dyn_alloc, string_dyn_copy, string_dyn_concat, string_dyn_free
* api: add special key "__quiet" in hashtable for function key_bind
* api: add `${re:#}` to get the index of last group captured in function string_eval_expression
* aspell: add options to control delimiters in suggestions: aspell.color.suggestion_delimiter_{dict|word} and aspell.look.suggestion_delimiter_{dict|word} (issue #940)
* buflist: new plugin "buflist" (bar item with list of buffers)
* irc: add option "open" in command /server (issue #966)
@@ -363,7 +418,7 @@ Bug fixes::
* core: fix deadlock when quitting after a signal SIGHUP/SIGQUIT/SIGTERM is received (issue #32)
* core: fix display of empty lines in search mode (issue #829)
* api: fix crash in function string_expand_home() when the HOME environment variable is not set (issue #827)
* api: fix crash in function string_expand_home when the HOME environment variable is not set (issue #827)
* exec: fix memory leak in display of process output
* irc: fix option "-temp" in command /server (issue #880)
* irc: fix close of server channels which are waiting for the JOIN when the server buffer is closed (issue #873)
@@ -388,8 +443,8 @@ New features::
* core: add optional argument "lowest", "highest" or level mask in command /input hotlist_clear
* core: add option "cycle" in command /buffer
* core, irc, xfer: display more information on memory allocation errors (issue #573)
* api: add "extra" argument to evaluate extra variables in function string_eval_expression() (issue #534)
* api: remove functions printf_date() and printf_tags()
* api: add "extra" argument to evaluate extra variables in function string_eval_expression (issue #534)
* api: remove functions printf_date and printf_tags
* irc: rename server options "default_msg_{kick|part|quit}" to "msg_{kick|part|quit}", evaluate them
* relay: add option relay.network.allow_empty_password (issue #735)
* relay: allow escape of comma in command "init" (weechat protocol) (issue #730)
@@ -398,10 +453,10 @@ New features::
Bug fixes::
* core, irc, xfer: refresh domain name and name server addresses before connection to servers (fix connection to servers after suspend mode) (issue #771)
* api: fix return of function string_match() when there are multiple masks in the string (issue #812)
* api: fix crash in function network_connect_to() if address is NULL
* api: fix connection to servers with hook_connect() on Windows 10 with Windows subsystem for Linux (issue #770)
* api: fix crash in function string_split_command() when the separator is not a semicolon (issue #731)
* api: fix return of function string_match when there are multiple masks in the string (issue #812)
* api: fix crash in function network_connect_to if address is NULL
* api: fix connection to servers with hook_connect on Windows 10 with Windows subsystem for Linux (issue #770)
* api: fix crash in function string_split_command when the separator is not a semicolon (issue #731)
* irc: fix socket leak in connection to server (issue #358, issue #801)
* irc: fix display of service notice mask (message 008) (issue #429)
* irc: fix NULL pointer dereference in 734 command callback (issue #738)
@@ -441,7 +496,7 @@ Bug fixes::
* core: check that pointers received in arguments are not NULL in buffers and windows functions
* core: fix truncation of buffer names in hotlist (issue #668)
* core: fix update of window title under Tmux (issue #685)
* api: fix number of arguments returned by function string_split() when keep_eol is 2 and the string ends with separators
* api: fix number of arguments returned by function string_split when keep_eol is 2 and the string ends with separators
* irc: fix first message displayed in raw buffer when the message is modified by a modifier (issue #719)
* irc: add missing completion "*" for target in command /msg
* irc: fix /msg command with multiple targets including "*"
@@ -467,8 +522,8 @@ New features::
* core: add tag "term_warning" in warnings about wrong $TERM on startup
* core: add option weechat.look.paste_auto_add_newline (issue #543)
* core: display a more explicit error when a filter fails to be added (issue #522)
* api: add function string_hex_dump()
* api: add argument "length" in function utf8_is_valid()
* api: add function string_hex_dump
* api: add argument "length" in function utf8_is_valid
* alias: display completion in /alias list (issue #518)
* fifo: add /fifo command
* irc: track real names using extended-join and WHO (issue #351)
@@ -490,7 +545,7 @@ Bug fixes::
* core: fix memory leak when using multiple "-d" or "-r" in command line arguments
* core: don't complain any more about "tmux" and "tmux-256color" $TERM values when WeeChat is running under Tmux (issue #519)
* core: fix truncated messages after a word with a length of zero on screen (for example a zero width space: U+200B) (bug #40985, issue #502)
* api: fix handle of invalid escape in function string_convert_escaped_chars()
* api: fix handle of invalid escape in function string_convert_escaped_chars
* alias: do not allow slashes and spaces in alias name (issue #646)
* irc: fix channel forwarding when option irc.look.buffer_open_before_{autojoin|join} is on (issue #643)
* irc: add a missing colon before the password in PASS message, if the password has spaces or begins with a colon (issue #602)
@@ -527,8 +582,8 @@ New features::
* core: add signal "signal_sighup"
* core: allow kbd:[Ctrl+c] to exit WeeChat when the passphrase is asked on startup (issue #452)
* core: allow pointer as list name in evaluation of hdata (issue #450)
* api: add support of evaluated sub-strings and current date/time in function string_eval_expression() and command /eval
* api: add function string_eval_path_home()
* api: add support of evaluated sub-strings and current date/time in function string_eval_expression and command /eval
* api: add function string_eval_path_home
* alias: add options "add", "addcompletion" and "del" in command /alias, remove command /unalias (issue #458)
* irc: add option irc.network.channel_encode (issue #218, issue #482)
* irc: add option irc.color.topic_current (issue #475)
@@ -540,15 +595,15 @@ New features::
Bug fixes::
* core: flush stdout/stderr after sending text directly on them (fix corrupted data sent to hook_process() callback) (issue #442)
* core: flush stdout/stderr after sending text directly on them (fix corrupted data sent to hook_process callback) (issue #442)
* core: allow execution of command "/input return" on a buffer which is not displayed in a window
* core: allow jump from current to previous buffer with default keys kbd:[Alt+j], kbd:[01..99] (issue #466)
* core: fix crash if a file descriptor used in hook_fd() is too high (> 1024 on Linux/BSD) (issue #465)
* core: fix crash if a file descriptor used in hook_fd is too high (> 1024 on Linux/BSD) (issue #465)
* core: fix display of invalid UTF-8 chars in bars
* core: fix bar item "scroll" after /buffer clear (issue #448)
* core: fix display of time in bare display when option weechat.look.buffer_time_format is set to empty string (issue #441)
* api: add missing function infolist_search_var() in script API (issue #484)
* api: add missing function hook_completion_get_string() in script API (issue #484)
* api: add missing function infolist_search_var in script API (issue #484)
* api: add missing function hook_completion_get_string in script API (issue #484)
* api: fix type of value returned by functions strcasestr, utf8_prev_char, utf8_next_char, utf8_add_offset and util_get_time_string
* api: fix type of value returned by function strcasestr
* fifo: fix send error on Cygwin when something is received in the pipe (issue #436)
@@ -585,8 +640,8 @@ New features::
* core: allow "*" as plugin name in command /plugin reload to reload all plugins with options
* core: add option "-s" in command /eval to split expression before evaluating it (no more split by default) (issue #324)
* core: add priority in plugins to initialize them in order
* api: add support of environment variables in function string_eval_expression() and command /eval
* api: add support of full color option name in functions color() and string_eval_expression() and in command /eval
* api: add support of environment variables in function string_eval_expression and command /eval
* api: add support of full color option name in functions color and string_eval_expression and in command /eval
* api: add "_chat_line" (line pointer) in hashtable of hook_focus
* irc: add support of "account-notify" capability (issue #11, issue #246)
* irc: add support of "ecdsa-nist256p-challenge" SASL mechanism (issue #251)
@@ -658,9 +713,9 @@ New features::
* core: check bar conditions in root bars and on each update of a bar item
* core: fully evaluate commands bound to keys in cursor and mouse contexts
* core: move bar item "scroll" between buffer name and lag in default bar items of status bar
* api: add regex replace feature in function string_eval_expression()
* api: send value returned by command callback in function command(), remove WeeChat error after command callback if return code is WEECHAT_RC_ERROR
* api: use microseconds instead of milliseconds in functions util_timeval_diff() and util_timeval_add()
* api: add regex replace feature in function string_eval_expression
* api: send value returned by command callback in function command, remove WeeChat error after command callback if return code is WEECHAT_RC_ERROR
* api: use microseconds instead of milliseconds in functions util_timeval_diff and util_timeval_add
* irc: add option "reorder" in command /server (issue #229)
* irc: open channel buffers before the JOIN is received from server (autojoin and manual joins), new options irc.look.buffer_open_before_{autojoin|join} (issue #216)
* irc: add server option "sasl_fail" (continue/reconnect/disconnect if SASL fails) (issue #265, task #12204)
@@ -686,7 +741,7 @@ Bug fixes::
* core: fix buffer property "lines_hidden" when merging buffers or when a line is removed from a buffer (issue #226)
* core: display time in bare display only if option weechat.look.buffer_time_format is not an empty string
* core: fix translation of message displayed after /upgrade
* api: fix truncated process output in hook_process() (issue #266)
* api: fix truncated process output in hook_process (issue #266)
* api: fix crash when reading config options with NULL value (issue #238)
* irc: defer the auto-connection to servers with a timer (issue #279, task #13038)
* irc: add missing server options "sasl_timeout" and "notify" in output of /server listfull
@@ -721,7 +776,7 @@ Bug fixes::
* core: fix compilation of plugin API functions (macros) when compiler optimizations are enabled (issue #200)
* core: fix window/buffer pointers used in command /eval
* core: fix modifier "weechat_print": discard only one line when several lines are displayed in same message (issue #171)
* api: fix bug in function hdata_move() when absolute value of count is greater than 1
* api: fix bug in function hdata_move when absolute value of count is greater than 1
* aspell: fix crash with command "/aspell addword" if no word is given (issue #164, issue #165)
* irc: fix display of channel exception list (348) with 6 arguments (date missing)
* irc: fix type of value stored in hashtable when joining a channel (issue #211)
@@ -760,25 +815,25 @@ New features::
* core: add option weechat.look.hotlist_add_conditions, remove option weechat.look.hotlist_add_buffer_if_away
* core: add option weechat.look.hotlist_remove (issue #99)
* core: add options "-beep" and "-current" in command /print
* core: add bare display mode for easy text selection and click on URLs, new key: kbd:[Alt+l], new option "bare" in command /window, new options: weechat.look.bare_display_exit_on_input and weechat.look.bare_display_time_format
* core: add bare display mode for easy text selection and click on URLs, new key: kbd:[Alt+l] (`L`), new option "bare" in command /window, new options: weechat.look.bare_display_exit_on_input and weechat.look.bare_display_time_format
* core: add signals "key_combo_{default|search|cursor}"
* core: add terabyte unit for size displayed
* core: display a warning in case of inconsistency between the options weechat.look.save_{config|layout}_on_exit
* core: add option "-mask" in command /unset (issue #112)
* core: set option weechat.look.buffer_search_where to prefix_message by default
* core: mute all buffers by default in command /mute (replace option -all by -core)
* api: allow value "-1" for property "hotlist" in function buffer_set() (to remove a buffer from hotlist)
* api: add option "buffer_flush" in function hook_process_hashtable()
* api: add support of case insensitive search and search by buffer full name in function buffer_search() (bug #34318)
* api: add option "detached" in function hook_process_hashtable()
* api: add option "signal" in function hook_set() to send a signal to the child process
* api: add support of nested variables in function string_eval_expression() and command /eval (issue #35)
* api: add support of escaped strings with format `${esc:xxx}` or `${\xxx}` in function string_eval_expression() and command /eval
* api: add functions hashtable_dup(), string_replace_regex(), string_split_shell(), string_convert_escaped_chars()
* api: add integer return code for functions hook_{signal|hsignal}_send()
* api: add argument "flags" in function hdata_new_list()
* api: allow wildcard "*" inside the mask in function string_match()
* api: allow negative value for y in function printf_y()
* api: allow value "-1" for property "hotlist" in function buffer_set (to remove a buffer from hotlist)
* api: add option "buffer_flush" in function hook_process_hashtable
* api: add support of case insensitive search and search by buffer full name in function buffer_search (bug #34318)
* api: add option "detached" in function hook_process_hashtable
* api: add option "signal" in function hook_set to send a signal to the child process
* api: add support of nested variables in function string_eval_expression and command /eval (issue #35)
* api: add support of escaped strings with format `${esc:xxx}` or `${\xxx}` in function string_eval_expression and command /eval
* api: add functions hashtable_dup, string_replace_regex, string_split_shell, string_convert_escaped_chars
* api: add integer return code for functions hook_{signal|hsignal}_send
* api: add argument "flags" in function hdata_new_list
* api: allow wildcard "*" inside the mask in function string_match
* api: allow negative value for y in function printf_y
* alias: add default alias "msgbuf" (send text to a buffer)
* exec: add exec plugin: new command /exec and file exec.conf
* irc: add bar item "irc_nick_modes" (issue #71)
@@ -830,28 +885,28 @@ Bug fixes::
* core: fix alignment of lines in merged buffers when options weechat.look.prefix_align and weechat.look.prefix_buffer_align are set to "none" (issue #43)
* core: quit WeeChat on signal SIGHUP, remove signal "signal_sighup"
* core: fix add of filter on macOS when regex for message is empty (filter regex ending with "\t")
* core: check validity of buffer pointer when data is sent to a buffer (command/text from user and API function command())
* core: check validity of buffer pointer when data is sent to a buffer (command/text from user and API function command)
* core: fix crash when buffer is closed during execution of multiple commands (issue #27)
* core: fix compilation on SmartOS (bug #40981, issue #23)
* core: add missing \0 at the end of stderr buffer in function hook_process()
* core: add missing \0 at the end of stderr buffer in function hook_process
* core: fix highlight problem with "(?-i)" and upper case letters in option weechat.look.highlight (issue #24)
* core: fix detection of terminated process in function hook_process()
* core: fix detection of terminated process in function hook_process
* core: fix "/window scroll -N" on a buffer with free content
* core: fix recursive calls to function eval_expression()
* core: fix recursive calls to function eval_expression
* core: save and restore mute state in command /mute (bug #41748)
* core: fix memory leak when removing a hdata
* core: fix memory leak in evaluation of sub-conditions
* core: fix memory leak in function gui_key_add_to_infolist() (in case of insufficient memory)
* core: fix use of invalid pointer in function gui_bar_window_content_alloc() (in case of insufficient memory)
* core: fix uninitialized value in function string_decode_base64()
* core: fix memory leak in function gui_key_add_to_infolist (in case of insufficient memory)
* core: fix use of invalid pointer in function gui_bar_window_content_alloc (in case of insufficient memory)
* core: fix uninitialized value in function string_decode_base64
* core: fix memory leak and use of invalid pointer in split of string (in case of insufficient memory)
* core: fix potential NULL pointer in function gui_color_emphasize()
* core: fix potential NULL pointer in function gui_color_emphasize
* core: use same return code and message in all commands when arguments are wrong/missing
* core: allow empty arguments for command /print
* core: fix freeze/crash in GnuTLS (bug #41576)
* api: fix function string_decode_base64()
* api: fix function string_format_size() on 32-bit systems
* api: change type of arguments displayed/highlight in hook_print() callback from string to integer (in scripts)
* api: fix function string_decode_base64
* api: fix function string_format_size on 32-bit systems
* api: change type of arguments displayed/highlight in hook_print callback from string to integer (in scripts)
* alias: change default command for alias /beep to "/print -beep"
* guile: fix module used after unload of a script
* irc: fix memory leak in CTCP answer
@@ -923,7 +978,7 @@ New features::
* core: add support of italic text (requires ncurses >= 5.9 patch 20130831)
* core: add options to customize default text search in buffers: weechat.look.buffer_search_{case_sensitive|force_default|regex|where}
* core: add support of UTF-8 chars in horizontal/vertical separators (options weechat.look.separator_{horizontal|vertical})
* core: add support of logical and/or for argument "tags" in function hook_print()
* core: add support of logical and/or for argument "tags" in function hook_print
* core: rename buffer property "highlight_tags" to "highlight_tags_restrict", new behavior for buffer property "highlight_tags" (force highlight on tags), rename option irc.look.highlight_tags to irc.look.highlight_tags_restrict
* core: rename options save/reset to store/del in command /layout
* core: replace default key kbd:[Ctrl+c], kbd:[r] by kbd:[Ctrl+c], kbd:[v] for reverse video in messages
@@ -931,10 +986,10 @@ New features::
* core: rename option weechat.look.set_title to weechat.look.window_title, value is now a string (evaluated)
* core: set option weechat.look.paste_bracketed to "on" by default
* core: use one date format when day changes from day to day+1
* api: add function infolist_search_var()
* api: add stdin options in functions hook_process_hashtable() and hook_set() to send data on stdin of child process, add function hook_set() in script API (task #10847, task #13031)
* api: add function infolist_search_var
* api: add stdin options in functions hook_process_hashtable and hook_set to send data on stdin of child process, add function hook_set in script API (task #10847, task #13031)
* api: add hdata "buffer_visited"
* api: add support of infos with format `${info:name,arguments}` in function string_eval_expression() and command /eval
* api: add support of infos with format `${info:name,arguments}` in function string_eval_expression and command /eval
* api: add support for C++ plugins
* alias: add default alias /beep => /print -stderr \a
* irc: add server option "ssl_fingerprint" (task #12724)
@@ -955,7 +1010,7 @@ Bug fixes::
* core: fix display of read marker when all buffer lines are unread and that option weechat.look.read_marker_always_show is on
* core: fix memory leak in regex matching when evaluating expression
* core: fix crash in /eval when config option has a NULL value
* core: fix crash with hdata_update() on shared strings, add hdata type "shared_string" (bug #41104)
* core: fix crash with hdata_update on shared strings, add hdata type "shared_string" (bug #41104)
* core: fix text emphasis with wide chars on screen like Japanese (patch #8253)
* core: remove option on /unset of plugin description option (plugins.desc.xxx) (bug #40768)
* core: fix random crash when closing a buffer
@@ -966,7 +1021,7 @@ Bug fixes::
* core: fix highlight on action messages: skip the nick at beginning to prevent highlight on it (bug #40516)
* core: fix bind of keys in cursor/mouse context when key starts with "@" (remove the warning about unsafe key)
* core: fix truncated prefix when filters are toggled (bug #40204)
* api: fix read of arrays in hdata functions hdata_<type>() (bug #40354)
* api: fix read of arrays in hdata functions hdata_<type> (bug #40354)
* aspell: fix detection of nicks with non-alphanumeric chars
* guile: disable guile gmp allocator (fix crash on unload of relay plugin) (bug #40628)
* irc: clear the GnuTLS session in all cases after SSL connection error
@@ -1027,11 +1082,11 @@ New features::
* core: change color format for options weechat.look.buffer_time_format and weechat.look.prefix_{action|error|join|network|quit} from `${xxx}` to `${color:xxx}`
* core: optimize the removal of lines in buffers (a lot faster to clear/close buffers with lot of lines)
* core: set options weechat.look.color_inactive_{buffer|window} to "on" by default
* api: return hashtable item pointer in functions hashtable_set() and hashtable_set_with_size()
* api: return hashtable item pointer in functions hashtable_set and hashtable_set_with_size
* api: add "callback_free_key" in hashtable
* api: add support of colors with format `${color:xxx}` in function string_eval_expression() and command /eval
* api: add argument "options" in function string_eval_expression(), add option "-c" in command /eval (to evaluate a condition)
* api: add new function strlen_screen()
* api: add support of colors with format `${color:xxx}` in function string_eval_expression and command /eval
* api: add argument "options" in function string_eval_expression, add option "-c" in command /eval (to evaluate a condition)
* api: add new function strlen_screen
* aspell: rename option aspell.look.color to aspell.color.misspelled, add option aspell.color.suggestions
* aspell: add support of enchant library (patch #6858)
* irc: add option irc.look.notice_welcome_redirect to automatically redirect channel welcome notices to the channel buffer
@@ -1056,7 +1111,7 @@ Bug fixes::
* core: fix random crash on "/buffer close" with a buffer number (or a range of buffers)
* core: fix priority of logical operators in evaluation of expression (AND takes precedence over the OR) and first evaluate sub-expressions between parentheses
* core: remove gap after read marker line when there is no bar on the right (bug #39548)
* core: use "/dev/null" for stdin in hook_process() instead of closing stdin (bug #39538)
* core: use "/dev/null" for stdin in hook_process instead of closing stdin (bug #39538)
* core: fix char displayed at the intersection of three windows (bug #39331)
* core: fix crash in evaluation of expression when reading a string in hdata with a NULL value (bug #39419)
* core: fix display bugs with some UTF-8 chars that truncates messages displayed (for example U+26C4) (bug #39201)
@@ -1099,8 +1154,8 @@ New features::
* core: add option "dirs" in command /debug
* core: add signal "window_opened" (task #12464)
* core: allow read of array in hdata without using index
* api: add new function hdata_search()
* api: add property "completion_freeze" for function buffer_set(): do not stop completion when command line is updated
* api: add new function hdata_search
* api: add property "completion_freeze" for function buffer_set: do not stop completion when command line is updated
* 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)
@@ -1126,15 +1181,15 @@ Bug fixes::
* core: reset scroll in window before zooming on a merged buffer (bug #38207)
* core: fix refresh of item "completion": clear it after any action that is changing content of command line and after switch of buffer (bug #38214)
* core: fix structures before buffer data when a buffer is closed
* core: fix refresh of line after changes with hdata_update() (update flag "displayed" according to filters)
* core: fix refresh of line after changes with hdata_update (update flag "displayed" according to filters)
* core: fix hidden lines for messages without date when option weechat.history.max_buffer_lines_minutes is set (bug #38197)
* core: use default hash/comparison callback for keys of type integer/pointer/time in hashtable
* api: do not display a warning by default when loading a script with a license different from GPL
* api: fix connection to servers with hook_connect() on macOS (bug #38496)
* api: fix bug in function string_match() when mask begins and ends with "*"
* api: allow hashtable with keys that are not strings in function hashtable_add_to_infolist()
* api: fix function string_mask_to_regex(): escape all special chars used in regex (bug #38398)
* guile: fix crash in function hdata_move()
* api: fix connection to servers with hook_connect on macOS (bug #38496)
* api: fix bug in function string_match when mask begins and ends with "*"
* api: allow hashtable with keys that are not strings in function hashtable_add_to_infolist
* api: fix function string_mask_to_regex: escape all special chars used in regex (bug #38398)
* guile: fix crash in function hdata_move
* guile: fix arguments given to callbacks (separate arguments instead of one list with arguments inside), Guile >= 2.0 is now required (bug #38350)
* guile: fix crash on calls to callbacks during load of script (bug #38343)
* irc: fix name of server buffer after /server rename (set name "server.name" instead of "name")
@@ -1150,17 +1205,17 @@ Bug fixes::
* irc: fix memory leak in purge of hashtables with joins (it was done only for the first server in the list)
* irc: add color in output of /names when result is on server buffer (channel not joined) (bug #38070)
* lua: remove use of functions for API constants
* lua: fix crash on stack overflow: call lua_pop() for values returned by lua functions (bug #38510)
* lua: fix crash on stack overflow: call lua_pop for values returned by lua functions (bug #38510)
* perl: simplify code to load scripts
* python: fix crash when loading scripts with Python 3.x (patch #8044)
* relay: fix uncontrolled format string in redirection of irc commands
* relay: rename compression "gzip" to "zlib" (compression is zlib, not gzip)
* relay: fix commands sync/desync in weechat protocol (bug #38215)
* ruby: fix crash in function hdata_move()
* ruby: fix crash with Ruby 2.0: use one array for the last 6 arguments of function config_new_option() (bug #31050)
* ruby: fix crash in function hdata_move
* ruby: fix crash with Ruby 2.0: use one array for the last 6 arguments of function config_new_option (bug #31050)
* script: create "script" directory on each action, just in case it has been removed (bug #38472)
* scripts: create directories (language and language/autoload) on each action (install/remove/autoload), just in case they have been removed (bug #38473)
* scripts: do not allow empty script name in function register()
* scripts: do not allow empty script name in function register
* xfer: fix freeze of DCC file received: use non-blocking socket after connection to sender and ensure the ACK is properly sent (bug #38340)
Build::
@@ -1183,11 +1238,11 @@ New features::
* core: add command /eval, use expression in conditions for bars
* core: add option "-quit" in command /upgrade (save session and quit without restarting WeeChat, for delayed restoration)
* core: add incomplete mouse events "event-down" and "event-drag" (task #11840)
* api: allow return code WEECHAT_RC_OK_EAT in callbacks of hook_signal() and hook_hsignal() (stop sending the signal immediately)
* api: allow creation of structure with hdata_update() (allowed for hdata "history")
* api: use hashtable "options" for command arguments in function hook_process_hashtable() (optional, default is a split of string with command)
* api: add new function string_eval_expression()
* api: connect with IPv6 by default in hook_connect() (with fallback to IPv4), shuffle list of hosts for a same address, add argument "retry" for hook_connect(), move "sock" from hook_connect() arguments to callback of hook_connect() (task #11205)
* api: allow return code WEECHAT_RC_OK_EAT in callbacks of hook_signal and hook_hsignal (stop sending the signal immediately)
* api: allow creation of structure with hdata_update (allowed for hdata "history")
* api: use hashtable "options" for command arguments in function hook_process_hashtable (optional, default is a split of string with command)
* api: add new function string_eval_expression
* api: connect with IPv6 by default in hook_connect (with fallback to IPv4), shuffle list of hosts for a same address, add argument "retry" for hook_connect, move "sock" from hook_connect arguments to callback of hook_connect (task #11205)
* aspell: add signal "aspell_suggest" (sent when new suggestions are displayed)
* aspell: add bar items "aspell_dict" (dictionary used on current buffer) and "aspell_suggest" (suggestions for misspelled word at cursor), add option aspell.check.suggestions (task #12061)
* irc: add tags "irc_nick1_xxx" and "irc_nick2_yyy" in message displayed for command "NICK"
@@ -1214,7 +1269,7 @@ Bug fixes::
* core: fix scroll to bottom of window (default key: kbd:[Alt+End]) when line displayed is bigger than chat area
* core: fix scroll in buffer after enabling/disabling some filters (if scroll is on a hidden line) (bug #37885)
* core: fix memory leak in case of error when building content of bar item for display
* core: fix detection of command in input: a single command char is considered as a command (API function string_input_for_buffer())
* core: fix detection of command in input: a single command char is considered as a command (API function string_input_for_buffer)
* core: search for a fallback template when a no template is matching command arguments
* core: fix refresh of windows after split (fix bug with horizontal separator between windows) (bug #37874)
* core: fix stuck mouse (bug #36533)
@@ -1227,11 +1282,11 @@ Bug fixes::
* core: fix display of zoomed/merged buffer (with number >= 2) after switching to it (bug #37593)
* core: fix display problem when option weechat.look.prefix_same_nick is set (problem with nick displayed in first line of screen) (bug #37556)
* core: fix wrapping of words with wide chars (the break was made before the correct position)
* api: do not call shell to execute command in hook_process() (fix security problem when a plugin/script gives untrusted command) (bug #37764)
* api: do not call shell to execute command in hook_process (fix security problem when a plugin/script gives untrusted command) (bug #37764)
* alias: give higher priority to aliases (2000) so that they take precedence over an existing command
* aspell: ignore self and remote nicks in private buffers
* aspell: fix creation of spellers when number of dictionaries is different between two buffers
* guile: fix bad conversion of shared strings (replace calls to scm_i_string_chars() by scm_to_locale_string()) (bug #38067)
* guile: fix bad conversion of shared strings (replace calls to scm_i_string_chars by scm_to_locale_string) (bug #38067)
* irc: fix display of actions (/me) when they are received from a relay client (in channel and private buffers) (bug #38027)
* irc: fix memory leak when updating modes of channel
* irc: fix crash on /upgrade (free channels before server data when a server is destroyed) (bug #37736)
@@ -1263,7 +1318,7 @@ Build::
Bug fixes::
* core: do not call shell to execute command in hook_process() (fix security problem when a plugin/script gives untrusted command) (bug #37764, CVE-2012-5534)
* core: do not call shell to execute command in hook_process (fix security problem when a plugin/script gives untrusted command) (bug #37764, CVE-2012-5534)
[[v0.3.9.1]]
== Version 0.3.9.1 (2012-11-09)
@@ -1285,15 +1340,15 @@ New features::
* core: add hdata "hotlist"
* core: add support of arrays in hdata variables
* core: add command line option "-r" (or "--run-command") to run command(s) after startup of WeeChat
* core: add function hook_set() in plugin API, add "subplugin" in hooks (set by script plugins), display subplugin in /help on commands (task #12049)
* core: add function hook_set in plugin API, add "subplugin" in hooks (set by script plugins), display subplugin in /help on commands (task #12049)
* core: add option weechat.look.jump_smart_back_to_buffer (jump back to initial buffer after reaching end of hotlist, on by default, which is old behavior)
* core: add default key kbd:[Alt+s] (toggle aspell)
* core: add callback "nickcmp" in buffers
* core: add horizontal separator between windows, new options weechat.look.window_separator_{horizontal|vertical}
* core: add options weechat.look.color_nick_offline and weechat.color.chat_nick_offline{_highlight|_highlight_bg} to use different color for offline nicks in prefix (task #11109)
* api: allow update for some variables of hdata, add new functions hdata_update() and hdata_set()
* api: add info "locale" for info_get() (locale used to translate messages)
* api: add new function util_version_number()
* api: allow update for some variables of hdata, add new functions hdata_update and hdata_set
* api: add info "locale" for info_get (locale used to translate messages)
* api: add new function util_version_number
* aspell: add option aspell.check.enabled, add options enable/disable/toggle for command /aspell (rename options enable/disable/dictlist to setdict/deldict/listdict), display aspell status with /aspell (task #11988)
* irc: generate alternate nicks dynamically when all nicks are already in use (task #12209)
* irc: add bar item "buffer_modes", remove option irc.look.item_channel_modes (task #12022)
@@ -1311,12 +1366,12 @@ New features::
Bug fixes::
* core: fix display bug when end of a line is displayed on top of chat (last line truncated and MORE(0) in status bar) (bug #37203)
* core: fix IP address returned by hook_connect() (return IP really used, not first IP for hostname)
* core: fix IP address returned by hook_connect (return IP really used, not first IP for hostname)
* core: display spaces at the end of messages in chat area (bug #37024)
* core: fix infinite loop in display when chat area has width of 1 with a bar displayed on the right (nicklist by default) (bug #37089)
* core: fix display of "bar more down" char when text is truncated by size_max in bars with vertical filling (bug #37054)
* core: fix color of long lines (displayed on more than one line on screen) under FreeBSD (bug #36999)
* core: return error string to callback of hook_connect() if getaddrinfo fails in child process
* core: return error string to callback of hook_connect if getaddrinfo fails in child process
* core: scroll to bottom of window after reaching first or last highlight with keys kbd:[Alt+p] / kbd:[Alt+n]
* core: fix refresh of bar items when switching window
* core: fix refresh of bar items "buffer_filter" and "scroll" in root bars (bug #36816)
@@ -1342,8 +1397,8 @@ Bug fixes::
* python: fix crash when unloading a script without pointer to interpreter
* relay: fix freeze when writing on relay socket (use non-blocking sockets in relay for irc and weechat protocols) (bug #36655)
* scripts: fix deletion of configuration files when script is unloaded (bug #36977)
* scripts: fix function unhook_all(): delete only callbacks of hooks and add missing call to unhook()
* scripts: ignore call to register() (with a warning) if script is already registered
* scripts: fix function unhook_all: delete only callbacks of hooks and add missing call to unhook
* scripts: ignore call to register (with a warning) if script is already registered
* xfer: fix DCC transfer error (bug #37432)
Documentation::
@@ -1367,7 +1422,7 @@ New features::
* core: add option weechat.look.prefix_same_nick (hide or change prefix on messages whose nick is the same as previous message) (task #11965)
* core: convert tabs to spaces in text pasted (bug #25028)
* core: add a connection timeout for child process in hook_connect() (bug #35966)
* core: add a connection timeout for child process in hook_connect (bug #35966)
* core: add support of terminal "bracketed paste mode", new options weechat.look.paste_bracketed and weechat.look.paste_bracketed_timer_delay (task #11316)
* core: support lines of 16 Kb long in configuration files (instead of 1 Kb)
* core: convert options weechat.look.prefix_align_more and weechat.look.prefix_buffer_align_more from boolean to string (task #11197)
@@ -1394,9 +1449,9 @@ Bug fixes::
* core: fix lost scroll when switching to a buffer with a pending search
* core: fix display of wide chars on last column of chat area (patch #7733)
* api: display warning in scripts when invalid pointers (malformed strings) are given to plugin API functions (warning displayed if debug for plugin is >= 1)
* scripts: fix type of argument "rc" in callback of hook_process() (from string to integer)
* scripts: fix type of argument "rc" in callback of hook_process (from string to integer)
* guile: fix crash on ARM when loading guile plugin (bug #36479)
* guile: add missing function hook_process_hashtable() in API
* guile: add missing function hook_process_hashtable in API
* irc: update channel modes by using chanmodes from message 005 (do not send extra command "MODE" to server), fix parsing of modes (bug #36215)
* irc: hide everything after "identify" or "register" in messages to nickserv when option irc.look.hide_nickserv_pwd is on (bug #36362)
* irc: set user modes only if target nick is self nick in message 221 (patch #7754)
@@ -1416,8 +1471,8 @@ Bug fixes::
* relay: keep spaces in beginning of "input" received from client (WeeChat protocol)
* relay: fix crash on /upgrade when client is connected using WeeChat protocol
* relay: redirect some irc messages from clients to hide output (messages: mode, ison, list, names, topic, who, whois, whowas, time, userhost) (bug #33516)
* tcl: add missing function hdata_char() in API
* tcl: fix pointer sent to function hook_signal_send() when type of data is a pointer
* tcl: add missing function hdata_char in API
* tcl: fix pointer sent to function hook_signal_send when type of data is a pointer
Documentation::
@@ -1444,8 +1499,8 @@ New features::
* core: add optional arguments for command /plugin load/reload/autoload
* core: use extended regex in filters (task #9497, patch #7616)
* api: add modifier "input_text_for_buffer" (bug #35317)
* api: add support of URL in hook_process() / hook_process_hashtable() (task #10247)
* api: add new functions strcasecmp_range(), strncasecmp_range(), string_regex_flags(), string_regcomp(), hashtable_map_string(), hook_process_hashtable(), hdata_check_pointer(), hdata_char(), hdata_hashtable() and nicklist_get_next_item()
* api: add support of URL in hook_process / hook_process_hashtable (task #10247)
* api: add new functions strcasecmp_range, strncasecmp_range, string_regex_flags, string_regcomp, hashtable_map_string, hook_process_hashtable, hdata_check_pointer, hdata_char, hdata_hashtable and nicklist_get_next_item
* alias: add default alias /umode => /mode $nick
* irc: add option "capabilities" in servers to enable client capabilities on connection
* irc: add signal "irc_server_opened"
@@ -1469,9 +1524,9 @@ Internationalization::
Bug fixes::
* core: fix expand of path `~` to home of user in function string_expand_home() (`~/xxx` was OK, but not `~`)
* core: fix expand of path `~` to home of user in function string_expand_home (`~/xxx` was OK, but not `~`)
* core: fix memory leak when closing buffer
* core: fix memory leak in function util_search_full_lib_name()
* core: fix memory leak in function util_search_full_lib_name
* core: automatically add newline char after last pasted line (when pasting many lines with confirmation) (task #10703)
* core: fix bug with layout: assign layout number in buffers when doing /layout save
* core: do not auto add space after nick completer if option weechat.completion.nick_add_space is off
@@ -1481,7 +1536,7 @@ Bug fixes::
* core: apply filters after full reload of configuration files (with /reload) (bug #31182)
* core: allow list for option weechat.plugin.extension (makes weechat.conf portable across Un*x and Windows) (task #11479)
* core: display error in command /buffer if arguments are wrong (bug #34180)
* core: fix help on plugin option when config_set_desc_plugin() is called to set help on newly created option
* core: fix help on plugin option when config_set_desc_plugin is called to set help on newly created option
* core: enable background process under Cygwin to connect to servers, fix reconnection problem (bug #34626)
* aspell: fix URL detection (do not check spelling of URLs) (bug #34040)
* irc: fix memory leak in SASL/blowfish authentication
@@ -1516,7 +1571,7 @@ Build::
New features::
* core: add color attribute "|" (keep attributes) and value "resetcolor" for function color() in plugin API (used by irc plugin to keep bold/reverse/underlined in message when changing color) (bug #34550)
* core: add color attribute "|" (keep attributes) and value "resetcolor" for function color in plugin API (used by irc plugin to keep bold/reverse/underlined in message when changing color) (bug #34550)
* core: add new option weechat.look.color_basic_force_bold, off by default: bold is used only if terminal has less than 16 colors (patch #7621)
* core: add default key kbd:[F5] (`meta2-[E`) for Linux console
* core: add "inactive" colors for inactive windows and lines in merged buffers, new options: weechat.look.color_inactive_window, weechat.look.color_inactive_buffer, weechat.look.color_inactive_message, weechat.look.color_inactive_prefix, weechat.look.color_inactive_prefix_buffer, weechat.look.color_inactive_time, weechat.color.chat_inactive_line, weechat.color.chat_inactive_window, weechat.color.chat_prefix_buffer_inactive_line
@@ -1543,7 +1598,7 @@ New features::
* core: add horizontal scrolling for buffers with free content (command /window scroll_horiz) (task #11112)
* core: change default value of option weechat.network.gnutls_ca_file to "/etc/ssl/certs/ca-certificates.crt"
* api: add info "cursor_mode"
* api: add new functions key_bind(), key_unbind(), hook_focus(), hdata_new(), hdata_new_var(), hdata_new_list(), hdata_get(), hdata_get_var_offset(), hdata_get_var_type(), hdata_get_var_type_string(), hdata_get_var_hdata(), hdata_get_var(), hdata_get_var_at_offset(), hdata_get_list(), hdata_move(), hdata_integer(), hdata_string(), hdata_pointer(), hdata_time(), hdata_get_string()
* api: add new functions key_bind, key_unbind, hook_focus, hdata_new, hdata_new_var, hdata_new_list, hdata_get, hdata_get_var_offset, hdata_get_var_type, hdata_get_var_type_string, hdata_get_var_hdata, hdata_get_var, hdata_get_var_at_offset, hdata_get_list, hdata_move, hdata_integer, hdata_string, hdata_pointer, hdata_time, hdata_get_string
* irc: allow reason for command /disconnect
* irc: allow server name for commands /die and /restart
* irc: add new info_hashtable "irc_message_split"
@@ -1553,15 +1608,15 @@ New features::
Bug fixes::
* core: fix freeze when calling function util_file_get_content() with a directory instead of a filename
* core: display timeout for hook_process() command only if debug for core is enabled (task #11401)
* core: fix freeze when calling function util_file_get_content with a directory instead of a filename
* core: display timeout for hook_process command only if debug for core is enabled (task #11401)
* core: bufferize lines displayed before core buffer is created, to display them in buffer when it is created
* core: fix display of background color in chat area after line feed
* core: fix paste detection (problem with end of lines)
* core: fix display of paste multi-line prompt with a root input bar (bug #34305)
* core: replace deprecated GnuTLS function gnutls_certificate_client_set_retrieve_function() by new function gnutls_certificate_set_retrieve_function() (GnuTLS >= 2.11.0)
* core: use dynamic buffer size for calls to vsnprintf()
* core: fix memory leak in unhook of hook_connect()
* core: replace deprecated GnuTLS function gnutls_certificate_client_set_retrieve_function by new function gnutls_certificate_set_retrieve_function (GnuTLS >= 2.11.0)
* core: use dynamic buffer size for calls to vsnprintf
* core: fix memory leak in unhook of hook_connect
* core: fix memory leak in display of empty bar items
* core: fix input of wide UTF-8 chars under Cygwin (bug #34061)
* core: fix bugs with automatic layout (bug #26110), add support of merged buffers in layout (task #10893)
@@ -1573,10 +1628,10 @@ Bug fixes::
* core: fix bugs with bar windows: do not create bar windows for hidden bars
* core: fix completion bug when two words for completion are equal but with different case
* core: fix completion for command arguments when same command exists in many plugins (bug #33753)
* core: fix freeze when hook_fd() is called with a bad file/socket (bug #33619)
* core: fix freeze when hook_fd is called with a bad file/socket (bug #33619)
* core: fix bug with option weechat.look.hotlist_count_max (value+1 was used)
* api: use arguments for infolist "window" to return only one window by number
* api: fix bug with function config_set_desc_plugin() (use immediately description for option when function is called)
* api: fix bug with function config_set_desc_plugin (use immediately description for option when function is called)
* scripts: fix crash with scripts not auto-loaded having a buffer opened after /upgrade (input/close callbacks for buffer not set properly)
* irc: fix display of items "away" and "lag" in root bars, refresh all irc bar items on signal "buffer_switch" (bug #34466)
* irc: fix crash on malformed irc notice received (without message after target)
@@ -1597,7 +1652,7 @@ Bug fixes::
* relay: fix bug with self nick when someone changes its nick on channel (bug #33739)
* relay: fix memory leak (free some parsed messages) (bug #33387)
* relay: fix memory leak on plugin load (free raw messages)
* perl: replace calls to SvPV() by SvPV_nolen() (patch #7436)
* perl: replace calls to SvPV by SvPV_nolen (patch #7436)
Build::
@@ -1629,8 +1684,8 @@ New features::
* core: remember scroll position for all buffers in windows (bug #25555)
* core: improve display of commands lists in /help (add arguments -list and -listfull) (task #10299)
* core: improve arguments displayed in /help of commands
* api: add new function config_set_desc_plugin() (task #10925)
* api: add new functions buffer_match_list() and window_search_with_buffer()
* api: add new function config_set_desc_plugin (task #10925)
* api: add new functions buffer_match_list and window_search_with_buffer
* aspell: add section "option" in aspell.conf for speller options (task #11083)
* irc: add new options irc.color.topic_old and irc.color.topic_new
* irc: add option "ssl_priorities" in servers (task #10106, debian #624055)
@@ -1688,7 +1743,7 @@ New features::
* core: add 256 colors support, new command /color, new section "palette" in weechat.conf (task #6834)
* core: add info "weechat_upgrading", signal "upgrade_ended", display duration of upgrade
* core: add new option weechat.look.highlight_regex and function string_has_highlight_regex() in plugin API (task #10321)
* core: add new option weechat.look.highlight_regex and function string_has_highlight_regex in plugin API (task #10321)
* core: add new option weechat.look.hotlist_unique_numbers (task #10691)
* core: add property "hotlist_max_level_nicks" in buffers to set max hotlist level for some nicks in buffer
* core: add new options weechat.look.input_share and weechat.look.input_share_overwrite (task #9228)
@@ -1696,7 +1751,7 @@ New features::
* core: replace the 10 nick color options and number of nick colors by a single option weechat.color.chat_nick_colors (comma separated list of colors)
* core: add color support in option weechat.look.buffer_time_format
* api: add priority for hooks (task #10550)
* api: add new functions: list_search_pos(), list_casesearch_pos(), hashtable_get_string(), hashtable_set_pointer(), hook_info_hashtable(), info_get_hashtable(), hook_hsignal(), hook_hsignal_send(), hook_completion_get_string(), nicklist_group_get_integer(), nicklist_group_get_string(), nicklist_group_get_pointer(), nicklist_group_set(), nicklist_nick_get_integer(), nicklist_nick_get_string(), nicklist_nick_get_pointer(), nicklist_nick_set()
* api: add new functions: list_search_pos, list_casesearch_pos, hashtable_get_string, hashtable_set_pointer, hook_info_hashtable, info_get_hashtable, hook_hsignal, hook_hsignal_send, hook_completion_get_string, nicklist_group_get_integer, nicklist_group_get_string, nicklist_group_get_pointer, nicklist_group_set, nicklist_nick_get_integer, nicklist_nick_get_string, nicklist_nick_get_pointer, nicklist_nick_set
* irc: add option "-server" in command /join (task #10837)
* irc: add option "-switch" in commands /connect and /reconnect
* irc: add command /notify, new options irc.look.notify_tags_ison, irc.look.notify_tags_whois, irc.network.notify_check_ison, irc.network.notify_check_whois, new option "notify" in servers, new infolist "irc_notify" (task #5441)
@@ -1717,9 +1772,9 @@ New features::
Bug fixes::
* core: fix scroll problem on buffers with free content and non-allocated lines (bug #32039)
* core: call to function hook_config() when config option is created
* core: call to function hook_config when config option is created
* core: fix infinite loop on GnuTLS handshake when connecting with SSL to server on wrong port or server with SSL problems (bug #27487)
* core: fix data sent to callback of hook_process() (some data was sometimes missing), use a 64KB buffer for child output and send data to callback only when buffer is full
* core: fix data sent to callback of hook_process (some data was sometimes missing), use a 64KB buffer for child output and send data to callback only when buffer is full
* core: fix crash when displaying groups in buffer nicklist
* core: fix bug with message "day changed to", sometimes displayed several times wrongly
* core: fix default value of bar items options (bug #31422)
@@ -1738,7 +1793,7 @@ Bug fixes::
* irc: switch to next server address when IRC error is received after TCP connection but before message 001 (bug #30884)
* irc: fix bug with hostmasks in command /ignore (bug #30716)
* relay: split of messages sent to clients of irc proxy
* scripts: add missing function infolist_reset_item_cursor() in API (bug #31057)
* scripts: add missing function infolist_reset_item_cursor in API (bug #31057)
* lua: fix crash when unloading script
* xfer: fix dcc chat buffer name (use irc server in name) (bug #29925)
* xfer: fix dcc file transfer for large files (more than 4 GB) on 32-bit systems (bug #31531)
@@ -1760,7 +1815,7 @@ New features::
* core: add new option weechat.look.confirm_quit
* core: add new option weechat.color.status_name_ssl (task #10339)
* core: add hashtables with new functions in plugin API
* api: add function string_expand_home(), fix bug with replacement of home in paths
* api: add function string_expand_home, fix bug with replacement of home in paths
* irc: add new option irc.look.nick_color_stop_chars
* irc: add new options irc.look.display_host_join/join_local/quit and irc.color.reason_quit
* irc: add command /wallchops, fix bug with display of notice for ops (task #10021, bug #29932)
@@ -1775,15 +1830,15 @@ New features::
Bug fixes::
* core: fix bug with scroll_unread: do not scroll to a filtered line (bug #29991)
* core: fix crash with hook_process() (when timer is called on a deleted hook process)
* core: fix crash with hook_process (when timer is called on a deleted hook process)
* core: fix display bug with special chars (ascii value below 32) (bug #30602)
* core: fix display bug with attributes like underlined in bars (bug #29889)
* api: fix bug with replacement char in function string_remove_color() (bug #30296)
* api: fix bug with replacement char in function string_remove_color (bug #30296)
* irc: fix bug in parser when no argument is received after command, no callback was called, and message was silently ignored (bug #30640)
* irc: fix import of certificates created by OpenSSL >= 1.0.0 (bug #30316)
* irc: fix display of local SSL certificate when it is sent to server (patch #7218)
* irc: use empty real name by default in config, instead of reading real name in /etc/passwd (bug #30111)
* irc: fix bug with command-line option "irc://" (bug #29990), new format for port and channels
* irc: fix bug with command line option "irc://" (bug #29990), new format for port and channels
* irc: fix display of messages 330 and 333 on some servers
* irc: fix bug with nick prefix "*" (chan founder) on some IRC servers (bug #29890)
* irc: fix bug with option irc.network.lag_check when value is 0 (zero)
@@ -1802,14 +1857,14 @@ New features::
* core: add command line option "-s" (or "--no-script") to start WeeChat without loading any script
* core: improve plugins autoload (option weechat.plugin.autoload): allow to use "*" as wildcard and "!" to prevent a plugin from being autoloaded (task #6361)
* core: add option "switch_active_buffer_previous" in command /input (task #10141)
* core: add new option weechat.look.time_format to customize default format for date/time displayed (localized date by default), add function util_get_time_string() in plugin API (patch #6914)
* core: add new option weechat.look.command_chars, add functions string_is_command_char() and string_input_for_buffer() in plugin and script API
* core: add new option weechat.look.time_format to customize default format for date/time displayed (localized date by default), add function util_get_time_string in plugin API (patch #6914)
* core: add new option weechat.look.command_chars, add functions string_is_command_char and string_input_for_buffer in plugin and script API
* core: add new option weechat.look.read_marker_always_show
* api: add "version_number" for function info_get() to get WeeChat version as number
* api: add "irc_is_nick" for function info_get() to check if a string is a valid IRC nick name (patch #7133)
* api: add functions string_encode_base64() and string_decode_base64(), fix bug with base64 encoding
* api: add functions string_match(), string_has_highlight() and string_mask_to_regex() in script plugin API
* api: add description of arguments for functions hook_info() and hook_infolist()
* api: add "version_number" for function info_get to get WeeChat version as number
* api: add "irc_is_nick" for function info_get to check if a string is a valid IRC nick name (patch #7133)
* api: add functions string_encode_base64 and string_decode_base64, fix bug with base64 encoding
* api: add functions string_match, string_has_highlight and string_mask_to_regex in script plugin API
* api: add description of arguments for functions hook_info and hook_infolist
* api: add signals "day_changed", "nicklist_group_added/removed", "nicklist_nick_added/removed"
* alias: add custom completion for aliases (task #9479)
* scripts: allow script commands to reload only one script
@@ -1835,10 +1890,10 @@ Bug fixes::
* gui: fix bug with global history, reset pointer to last entry after each user input (bug #28754)
* gui: fix bug with bar background after text with background color (bug #28157)
* gui: fix bug with cursor when position is last char of terminal
* api: add missing infos in functions buffer_get_{integer|string}() and in buffer infolist
* api: fix function color() in Lua script API
* api: add missing infos in functions buffer_get_{integer|string} and in buffer infolist
* api: fix function color in Lua script API
* api: fix "inactivity" value when no key has been pressed since WeeChat started (bug #28930)
* api: return absolute path for info_get() of "weechat_dir" (bug #27936)
* api: return absolute path for info_get of "weechat_dir" (bug #27936)
* scripts: fix bug with callbacks when loading a script already loaded
* perl: fix crash when multiplicity is disabled
* perl: fix crash when callbacks are called during script initialization (bug #29018)
@@ -1906,7 +1961,7 @@ Bug fixes::
* core: fix plural form in translation files (bug #27430)
* core: fix terminal title bug: do not reset it when option weechat.look.set_title is off (bug #27399)
* core: fix buffer used by some input functions called via plugin API with buffer pointer (bug #28152)
* alias: fix bug with buffer for execution of alias, when called from plugin API with function command() (bug #27697)
* alias: fix bug with buffer for execution of alias, when called from plugin API with function command (bug #27697)
* alias: fix bug with arguments (bug #27440)
* irc: improve error management on socket error (recv/send)
* irc: fix nick color for nicks with wide chars (bug #28547)
@@ -1921,7 +1976,7 @@ Bug fixes::
* gui: fix alignment problem for buffer name when a merged buffer is closed (bug #27617)
* gui: update hotlist when a buffer is closed (bug #27470), remove buffer from hotlist when buffer is cleared (bug #27530)
* gui: fix /input history_global_next: reset input content when last command in history is reached
* api: fix function bar_set() for python/lua/ruby (patch #6912)
* api: fix function bar_set for python/lua/ruby (patch #6912)
Build::
@@ -1943,7 +1998,7 @@ New features::
* core: remove key functions, replaced by /input command
* core: add argument with buffer number/range for command "/buffer close" (task #9390, task #7239)
* core: add new command /wait (schedule a command execution in future)
* core: improve main loop: higher timeout in select(), less CPU usage
* core: improve main loop: higher timeout in select, less CPU usage
* gui: new display engine, with prefix and message for each line
* gui: add new type of buffer, with free content
* gui: add tags for lines and custom filtering by tags or regex (task #7674)
@@ -2044,7 +2099,7 @@ Bug fixes::
* fix display bug with some special chars in messages (some words were truncated on screen) (bug #20944)
* fix UTF-8 bug with color encoding/decoding
* fix crash when searching text in buffer with kbd:[Ctrl+r] (bug #20938)
* fix bug with flock() when home is on NFS filesystem (bug #20913)
* fix bug with flock when home is on NFS filesystem (bug #20913)
* fix user modes in nicklist when ban and nick mode are received in the same MODE message (bug #20870)
* fix IRC message 333: silently ignore message if error when parsing it
* fix server option "command_delay": does not freeze WeeChat any more
@@ -2169,7 +2224,7 @@ New features::
* add filename completion (task #5425)
* add "modifier" in plugins API
* improve /plugin command
* add date in plugin function get_buffer_data()
* add date in plugin function get_buffer_data
* add more values for config boolean values: y/true/t/1 and n/false/f/0
Bug fixes::
@@ -2179,7 +2234,7 @@ Bug fixes::
* fix refresh bug with private buffer title
* fix bug with nick completion in command arguments (now uses option look_nick_completion_ignore)
* fix display bug with color for first line on screen (bug #17719)
* fix bug with set_config() function in plugins API (bug #18448)
* fix bug with set_config function in plugins API (bug #18448)
* fix memory leak in keyboard input
* fix refresh bug when changing config options if window is split
* add space between chat and nicklist when position is "right" (bug #17852)
@@ -2223,7 +2278,7 @@ Bug fixes::
* fix buffer search by server/channel: now if only channel is specified, a channel of another server can be found
* fix highlight for DCC, invite and notice: when a window is displaying buffer, there's no highlight
* fix bug with CTCP VERSION sent on channels (bug #17547)
* fix bugs in get_buffer_data() which breaks the retrieval of buffer content (perl, lua)
* fix bugs in get_buffer_data which breaks the retrieval of buffer content (perl, lua)
* fix nicklist display bug when top/bottom (not enough lines) (bug #17537)
* fix bug with auto-rejoin of keyed channels (bug #17534)
* add default nick completion when line starts with "//" (bug #17535)
@@ -2274,7 +2329,7 @@ Bug fixes::
* fix crashes with DCC chat remove/purge on DCC view (bug #16775)
* fix bug with connection to bnc (bug #16760)
* command /save now writes plugins options (~/.weechat/plugins.rc)
* fix crash with register() function in plugin scripts (bug #16701)
* fix crash with register function in plugin scripts (bug #16701)
* fix random crash at exit (/quit or /upgrade) with split windows
Documentation::
@@ -2353,13 +2408,13 @@ New features::
* add keys kbd:[Alt+Home] / kbd:[Alt+End] to scroll top/bottom, kbd:[Alt+F11] / kbd:[Alt+F12] to scroll nicklist top/bottom
* add special names for plugin message handlers: weechat_pv, weechat_highlight, weechat_ctcp, weechat_dcc
* add IRC raw data buffer (new key: kbd:[Alt+j], kbd:[Alt+r])
* add new plugins functions: add_timer_handler(), remove_timer_handler(), remove_infobar()
* add new plugins functions: add_timer_handler, remove_timer_handler, remove_infobar
* plugin messages handlers now called when message is ignored (by /ignore)
* new behavior for messages ignored by a message handler: now WeeChat executes standard handler, treating message as "ignored"
* many commands allowed for aliases
* many commands allowed when connecting to server
* add Lua script plugin
* add functions in plugins API: get_server_info(), free_server_info(), get_channel_info(), free_channel_info(), get_nick_info(), free_nick_info()
* add functions in plugins API: get_server_info, free_server_info, get_channel_info, free_channel_info, get_nick_info, free_nick_info
* add option "look_nick_complete_first" (patch from Gwenn)
* add option "look_open_near_server" (patch from Gwenn)
* add new scroll keys for a few lines up/down (default: kbd:[Alt+PgUp] / kbd:[Alt+PgDn]) (patch from Pistos)
@@ -2384,7 +2439,7 @@ Bug fixes::
* fix crash when using global history (when older entry is removed)
* fix display bug with /kill command
* fix bug with /upgrade and servers buffer
* fix bug with get_dcc_info() plugin interface function
* fix bug with get_dcc_info plugin interface function
* fix bug with charset in infobar highlights
* fix bug with buffer detection in plugins/scripts commands
* fix bug with /history command
@@ -2519,7 +2574,7 @@ Bug fixes::
* errors while loading perl scripts are now displayed in server buffer (instead of current buffer)
* in python scripts, all messages written in stdin and stderr are redirected in server buffer
* fix a filename error while loading a python script manually
* fix plugins print() and prnt() functions: now OK for writing on server buffers
* fix plugins print and prnt functions: now OK for writing on server buffers
* fix color problem with new libcurses version
* fix crash when using kbd:[Alt+s] or kbd:[Alt+x] on DCC buffer (kbd:[Alt+d])
* fix startup crash when config file (~/.weechat/weechat.rc) is not found
@@ -2639,8 +2694,8 @@ New features::
* logging buffers to disk (server/channel/private according to user preferences)
* add config option "look_display_away" to announce away in channels
* DCC file receive OK (kbd:[Alt+d] for DCC view)
* add key for redrawing terminal (kbd:[Ctrl+l])
* add key for clearing hotlist (kbd:[Alt+r])
* add key kbd:[Ctrl+l] (`L`) for redrawing terminal
* add key kbd:[Alt+r] for clearing hotlist
Bug fixes::
+9 -6
View File
@@ -1,18 +1,21 @@
= WeeChat
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: en
pass:[<p align="center">] image:https://weechat.org/media/images/weechat_logo_large.png[align="center"] pass:[</p>]
image:https://img.shields.io/badge/diaspora*-follow-blue.svg["Diaspora*", link="https://diasp.eu/u/weechat"]
image:https://img.shields.io/badge/google%2B-follow-blue.svg["Google+", link="https://plus.google.com/+WeeChat"]
image:https://img.shields.io/badge/mastodon-follow-blue.svg["Mastodon", link="https://hostux.social/@weechat"]
image:https://img.shields.io/badge/twitter-follow-blue.svg["Twitter", link="https://twitter.com/WeeChatClient"]
image:https://img.shields.io/badge/devel%20blog-follow-blue.svg["Devel blog", link="https://weechat.org/blog/"]
image:https://img.shields.io/badge/slant-recommend-28acad.svg["Slant", link="https://www.slant.co/topics/1323/~best-irc-clients-for-linux"]
image:https://img.shields.io/badge/help-donate%20%E2%9D%A4-ff69b4.svg["Donate", link="https://weechat.org/donate/"]
image:https://travis-ci.org/weechat/weechat.svg?branch=master["Build Status", link="https://travis-ci.org/weechat/weechat"]
image:https://codecov.io/gh/weechat/weechat/branch/master/graph/badge.svg["Code coverage", link="https://codecov.io/gh/weechat/weechat"]
WeeChat (Wee Enhanced Environment for Chat) is a free chat client, fast and
*WeeChat* (Wee Enhanced Environment for Chat) is a free chat client, fast and
light, designed for many operating systems.
It is highly customizable and extensible with scripts.
@@ -21,7 +24,7 @@ Homepage: https://weechat.org/
== Features
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/files/doc/stable/weechat_user.en.html#plugins[plugins]. All plugins (including https://weechat.org/files/doc/stable/weechat_user.en.html#irc_plugin[IRC]) are independent and can be unloaded.
* *Multi-platform*: WeeChat runs on GNU/Linux, *BSD, GNU/Hurd, macOS and Windows (Bash/Ubuntu and Cygwin).
* *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.
@@ -30,7 +33,7 @@ Homepage: https://weechat.org/
* *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].
image::https://weechat.org/media/images/screenshots/weechat/medium/weechat_2013-04-27_phlux_shadow.png[align="center"]
pass:[<p align="center">] image:https://weechat.org/media/images/screenshots/weechat/medium/weechat_2013-04-27_phlux_shadow.png[align="center"] pass:[</p>]
On WeeChat's website you can find https://weechat.org/about/screenshots/[more screenshots].
@@ -50,7 +53,7 @@ Following packages are optional:
* for i18n: gettext
* for SSL: gnutls, ca-certificates
* for spell checking: aspell
* 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
+118 -39
View File
@@ -17,6 +17,80 @@ https://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog]
(file _ChangeLog.adoc_ in sources).
[[v2.5]]
== Version 2.5 (2019-06-06)
[[v2.5_aspell_plugin_renamed]]
=== Aspell plugin renamed to Spell
The "aspell" plugin has been renamed to "spell", a more generic term, because
it supports aspell and also enchant.
Consequently, the following things have been renamed as well:
* file _aspell.conf_ renamed to _spell.conf_; the content of the
file has not changed, so you can just rename the file to keep your changes
* options _aspell.*_ renamed to _spell.*_
* command `/aspell` renamed to `/spell`
* default key kbd:[Alt+s] changed to `/mute spell toggle`
* bar item _aspell_dict_ renamed to _spell_dict_
* bar item _aspell_suggest_ renamed to _spell_suggest_
* info _aspell_dict_ renamed to _spell_dict_
If you are upgrading from a previous release, you can copy the config file
before doing `/upgrade`, in WeeChat:
----
/save aspell
/exec -sh cp ~/.weechat/aspell.conf ~/.weechat/spell.conf
/upgrade
----
If you already upgraded WeeChat:
----
/exec -sh cp ~/.weechat/aspell.conf ~/.weechat/spell.conf
/reload spell
----
Once configuration is OK, you can delete the file _~/.weechat/aspell.conf_.
Then you can search if you are using "aspell" in values of options:
----
/fset =aspell
----
If there are options displayed, replace "aspell" by "spell" in values.
The default key kbd:[Alt+s] can be changed to the new `/spell` command:
----
/key bind meta-s /mute spell toggle
----
[[v2.5_xfer_option_speed_limit]]
=== Speed limit option for DCC files
The option _xfer.network.speed_limit_ has been renamed to
_xfer.network.speed_limit_send_.
If you changed the value of this option, you must set it again after upgrade.
A new option _xfer.network.speed_limit_recv_ has been added to limit the
speed of received files.
[[v2.5_hook_info_allocated_string]]
=== Allocated string in hook info and function info_get
The hook info callback now returns an allocated string, which must be freed
after use (in previous versions, a pointer to a static string was returned).
Consequently, the function info_get returns an allocated string, which must
be freed after use.
This affects only C code, no changes are required in scripts.
[[v2.4]]
== Version 2.4 (2019-02-17)
@@ -24,11 +98,16 @@ https://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog]
=== Nick completer
A space is not added automatically any more when you complete a nick at the
beginning of command line.
beginning of command line. +
Purpose of this change is to be more flexible: you can choose whether the space
is added or not (it was always added in previous releases).
The default value of option `weechat.completion.nick_completer` has been changed
to add the space by default, so you may have to run this command if you upgraded
from an old version and want the space to be added automatically:
to add the space by default, but the value of option is not changed automatically
on upgrade.
So you can run this command if you upgraded from an old version
and want the space still added automatically:
----
/set weechat.completion.nick_completer ": "
@@ -144,6 +223,26 @@ In version 2.1, this binary was in the package _weechat-curses_.
[[v2.1]]
== Version 2.1 (2018-03-18)
[[v2.1_option_name_completion]]
=== Completion for /set and /help commands
A new option weechat.completion.partial_completion_templates has been added to
force partial completion on some templates. By default, the option name
completed in `/set` and `/help` commands are now using partial completion.
If you prefer old behavior, you can remove the templates from the new option
with this command:
----
/set weechat.completion.partial_completion_templates ""
----
For more information about this feature, you can read help with:
----
/help weechat.completion.partial_completion_templates
----
[[v2.1_script_plugin_check_license]]
=== Option to check license of scripts loaded
@@ -165,26 +264,6 @@ List of options moved:
* _plugins.var.javascript.check_license_ (string) moved to _javascript.look.check_license_ (boolean)
* _plugins.var.php.check_license_ (string) moved to _php.look.check_license_ (boolean)
[[v2.1_option_name_completion]]
=== Completion for /set and /help commands
A new option weechat.completion.partial_completion_templates has been added to
force partial completion on some templates. By default, the option name
completed in `/set` and `/help` commands are now using partial completion.
If you prefer old behavior, you can remove the templates from the new option
with this command:
----
/set weechat.completion.partial_completion_templates ""
----
For more information about this feature, you can read help with:
----
/help weechat.completion.partial_completion_templates
----
[[v2.0.1]]
== Version 2.0.1 (2017-12-20)
@@ -292,20 +371,6 @@ No release note.
[[v1.8]]
== Version 1.8 (2017-05-13)
[[v1.8_options]]
=== Options
The option _script.scripts.url_force_https_ has been removed because now the
site weechat.org can only be used with HTTPS. +
Both HTTP and HTTPS protocols are allowed in the option _script.scripts.url_.
For http://weechat.org/ an automatic redirection to https://weechat.org/ will
occur, so you should check that the CA certificates are properly installed
on your machine.
Aspell option with color for suggestion on a misspelled word has been renamed:
* _aspell.color.suggestions_ has been renamed to _aspell.color.suggestion_
[[v1.8_buflist_plugin]]
=== Buflist plugin
@@ -337,6 +402,20 @@ prevent the plugin from loading on next startup:
/set weechat.plugin.autoload "*,!buflist"
----
[[v1.8_options]]
=== Options
The option _script.scripts.url_force_https_ has been removed because now the
site weechat.org can only be used with HTTPS. +
Both HTTP and HTTPS protocols are allowed in the option _script.scripts.url_.
For http://weechat.org/ an automatic redirection to https://weechat.org/ will
occur, so you should check that the CA certificates are properly installed
on your machine.
Aspell option with color for suggestion on a misspelled word has been renamed:
* _aspell.color.suggestions_ has been renamed to _aspell.color.suggestion_
[[v1.7.1]]
== Version 1.7.1 (2017-04-22)
@@ -742,7 +821,7 @@ behavior (never hide arguments, even with a channel key), you can do:
=== Jump to first/last buffer
The command `/input jump_last_buffer` has been replaced by `/buffer +`.
You can rebind the key kbd:[Alt+j], kbd:[Alt+l]:
You can rebind the key kbd:[Alt+j], kbd:[Alt+l] (`L`):
----
/key bind meta-jmeta-l /buffer +
@@ -799,7 +878,7 @@ obsolete plugins).
=== Bare display
A bare display mode has been added (for easy text selection and click on URLs),
the new default key is kbd:[Alt+l].
the new default key is kbd:[Alt+l] (`L`).
Use command `/key missing` to add the key or `/key listdiff` to see differences
between your current keys and WeeChat default keys.
+2 -2
View File
@@ -33,7 +33,7 @@ endif()
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
pkg_search_module(RUBY ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby-1.8)
pkg_search_module(RUBY ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby-1.8)
endif()
if(RUBY_FOUND)
@@ -41,7 +41,7 @@ if(RUBY_FOUND)
mark_as_advanced(RUBY_LIB)
else()
find_program(RUBY_EXECUTABLE
NAMES ruby2.5.0 ruby250 ruby2.5 ruby2.4.0 ruby240 ruby2.4 ruby2.3.0 ruby230 ruby2.3 ruby23 ruby2.2.3 ruby223 ruby2.2.2 ruby222 ruby2.2.1 ruby221 ruby2.2.0 ruby220 ruby2.2 ruby22 ruby2.1.7 ruby217 ruby2.1.6 ruby216 ruby2.1.5 ruby215 ruby2.1.4 ruby214 ruby2.1.3 ruby213 ruby2.1.2 ruby212 ruby2.1.1 ruby211 ruby2.1.0 ruby210 ruby2.1 ruby21 ruby2.0 ruby20 ruby1.9.3 ruby193 ruby1.9.2 ruby192 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby1.8 ruby18 ruby
NAMES ruby2.6.0 ruby260 ruby2.6 ruby2.5.0 ruby250 ruby2.5 ruby2.4.0 ruby240 ruby2.4 ruby2.3.0 ruby230 ruby2.3 ruby23 ruby2.2.3 ruby223 ruby2.2.2 ruby222 ruby2.2.1 ruby221 ruby2.2.0 ruby220 ruby2.2 ruby22 ruby2.1.7 ruby217 ruby2.1.6 ruby216 ruby2.1.5 ruby215 ruby2.1.4 ruby214 ruby2.1.3 ruby213 ruby2.1.2 ruby212 ruby2.1.1 ruby211 ruby2.1.0 ruby210 ruby2.1 ruby21 ruby2.0 ruby20 ruby1.9.3 ruby193 ruby1.9.2 ruby192 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby1.8 ruby18 ruby
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
)
if(RUBY_EXECUTABLE)
+1 -1
View File
@@ -13,7 +13,7 @@
#define PACKAGE "@PROJECT_NAME@"
#define PACKAGE_NAME "@PROJECT_NAME@"
#define PACKAGE_STRING "@PKG_STRING@"
#define WEECHAT_LIBDIR "@LIBDIR@"
#define WEECHAT_LIBDIR "@WEECHAT_LIBDIR@"
#define WEECHAT_SHAREDIR "@SHAREDIR@"
#define LOCALEDIR "@LOCALEDIR@"
#define WEECHAT_HOME "@WEECHAT_HOME@"
+85 -85
View File
@@ -108,7 +108,6 @@ AH_VERBATIM([HAVE_ASPELL_VERSION_STRING], [#undef HAVE_ASPELL_VERSION_STRING])
AH_VERBATIM([HAVE_ENCHANT_GET_VERSION], [#undef HAVE_ENCHANT_GET_VERSION])
AH_VERBATIM([HAVE_GUILE_GMP_MEMORY_FUNCTIONS], [#undef HAVE_GUILE_GMP_MEMORY_FUNCTIONS])
AH_VERBATIM([PLUGIN_ALIAS], [#undef PLUGIN_ALIAS])
AH_VERBATIM([PLUGIN_ASPELL], [#undef PLUGIN_ASPELL])
AH_VERBATIM([PLUGIN_BUFLIST], [#undef PLUGIN_BUFLIST])
AH_VERBATIM([PLUGIN_CHARSET], [#undef PLUGIN_CHARSET])
AH_VERBATIM([PLUGIN_EXEC], [#undef PLUGIN_EXEC])
@@ -126,6 +125,7 @@ AH_VERBATIM([PLUGIN_PHP], [#undef PLUGIN_PHP])
AH_VERBATIM([PLUGIN_TCL], [#undef PLUGIN_TCL])
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_XFER], [#undef PLUGIN_XFER])
AH_VERBATIM([TESTS], [#undef TESTS])
@@ -141,8 +141,6 @@ AC_ARG_ENABLE(headless, [ --disable-headless turn off headless binary
AC_ARG_ENABLE(gnutls, [ --disable-gnutls turn off gnutls support (default=compiled if found)],enable_gnutls=$enableval,enable_gnutls=yes)
AC_ARG_ENABLE(largefile, [ --disable-largefile turn off Large File Support (default=on)],enable_largefile=$enableval,enable_largefile=yes)
AC_ARG_ENABLE(alias, [ --disable-alias turn off Alias plugin (default=compiled)],enable_alias=$enableval,enable_alias=yes)
AC_ARG_ENABLE(aspell, [ --disable-aspell turn off Aspell plugin (default=compiled)],enable_aspell=$enableval,enable_aspell=yes)
AC_ARG_ENABLE(enchant, [ --enable-enchant turn on Enchant lib for Aspell plugin (default=off)],enable_enchant=$enableval,enable_enchant=no)
AC_ARG_ENABLE(buflist, [ --disable-buflist turn off Buflist plugin (default=compiled)],enable_buflist=$enableval,enable_buflist=yes)
AC_ARG_ENABLE(charset, [ --disable-charset turn off Charset plugin (default=compiled)],enable_charset=$enableval,enable_charset=yes)
AC_ARG_ENABLE(exec, [ --disable-exec turn off Exec plugin (default=compiled)],enable_exec=$enableval,enable_exec=yes)
@@ -162,6 +160,8 @@ AC_ARG_ENABLE(tcl, [ --disable-tcl turn off Tcl script plugi
AC_ARG_ENABLE(guile, [ --disable-guile turn off Guile (scheme) script plugin (default=compiled if found)],enable_guile=$enableval,enable_guile=yes)
AC_ARG_ENABLE(javascript, [ --disable-javascript turn off JavaScript script plugin (default=compiled if found)],enable_javascript=$enableval,enable_javascript=yes)
AC_ARG_ENABLE(php, [ --disable-php turn off PHP script plugin (default=compiled if found)],enable_php=$enableval,enable_php=yes)
AC_ARG_ENABLE(spell, [ --disable-spell turn off Spell checker plugin (default=compiled)],enable_spell=$enableval,enable_spell=yes)
AC_ARG_ENABLE(enchant, [ --enable-enchant turn on Enchant lib for Spell checker plugin (default=off)],enable_enchant=$enableval,enable_enchant=no)
AC_ARG_ENABLE(trigger, [ --disable-trigger turn off Trigger plugin (default=compiled)],enable_trigger=$enableval,enable_trigger=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='')
@@ -322,79 +322,6 @@ else
not_asked="$not_asked alias"
fi
# ---------------------------------- aspell ------------------------------------
if test "x$enable_aspell" = "xyes" ; then
ac_found_enchant_lib="no"
if test "x$enable_enchant" = "xyes" ; then
PKG_CHECK_MODULES(ENCHANT, [enchant], ac_found_enchant_lib="yes", ac_found_enchant_lib="no")
fi
if test "x$ac_found_enchant_lib" = "xyes" ; then
CFLAGS="$CFLAGS -DUSE_ENCHANT"
ASPELL_LIB_USED="enchant"
# check if function enchant_get_version() exists
ac_save_CFLAGS="$CFLAGS"
ac_save_LDFLAGS="$LDFLAGS"
CFLAGS="$CFLAGS $ENCHANT_CFLAGS"
LDFLAGS="$LDFLAGS $ENCHANT_LIBS"
AC_CACHE_CHECK([for enchant_get_version() support], ac_cv_have_enchant_get_version, [
AC_LINK_IFELSE([AC_LANG_PROGRAM(
[[ #include <enchant.h>]],
[[ const char *version = enchant_get_version(); ]])],
[ ac_have_enchant_get_version="yes" ],
[ ac_have_enchant_get_version="no" ])])
CFLAGS="$ac_save_CFLAGS"
LDFLAGS="$ac_save_LDFLAGS"
if test "x$ac_have_enchant_get_version" = "xyes"; then
AC_DEFINE(HAVE_ENCHANT_GET_VERSION)
fi
else
ASPELL_CFLAGS=""
ASPELL_LFLAGS=""
AC_CHECK_HEADER(aspell.h,ac_found_aspell_header="yes",ac_found_aspell_header="no")
AC_CHECK_LIB(aspell,new_aspell_speller,ac_found_aspell_lib="yes",ac_found_aspell_lib="no")
AC_MSG_CHECKING(for aspell headers and libraries)
if test "x$ac_found_aspell_header" = "xno" -o "x$ac_found_aspell_lib" = "xno" ; then
AC_MSG_RESULT(no)
AC_MSG_WARN([
*** Aspell headers and/or libraries couldn't be found on your system.
*** Try to install them with your software package manager.
*** WeeChat will be built without Aspell support.])
enable_aspell="no"
not_found="$not_found aspell"
else
AC_MSG_RESULT(yes)
ASPELL_LFLAGS="$ASPELL_LFLAGS -laspell"
ASPELL_LIB_USED="aspell"
# check if function aspell_version_string() exists
ac_save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $ASPELL_LFLAGS"
AC_CACHE_CHECK([for aspell_version_string() support], ac_cv_have_aspell_version_string, [
AC_LINK_IFELSE([AC_LANG_PROGRAM(
[[ #include <aspell.h>]],
[[ const char *version = aspell_version_string(); ]])],
[ ac_have_aspell_version_string="yes" ],
[ ac_have_aspell_version_string="no" ])])
LDFLAGS="$ac_save_LDFLAGS"
if test "x$ac_have_aspell_version_string" = "xyes"; then
AC_DEFINE(HAVE_ASPELL_VERSION_STRING)
fi
fi
fi
else
not_asked="$not_asked aspell"
fi
if test "x$enable_aspell" = "xyes" ; then
AC_SUBST(ASPELL_CFLAGS)
AC_SUBST(ASPELL_LFLAGS)
AC_DEFINE(PLUGIN_ASPELL)
fi
# --------------------------------- buflist ------------------------------------
if test "x$enable_buflist" = "xyes" ; then
@@ -624,7 +551,7 @@ RUBY_VERSION=
if test "x$enable_ruby" = "xyes" ; then
RUBY_CFLAGS=""
RUBY_LFLAGS=""
for v in "2.5" "2.4" "2.3" "2.2" "2.1" "2.0" "1.9" "1.8" ; do
for v in "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`
@@ -696,7 +623,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 "$lua_suffix" "" "52" "5.2" "51" "5.1" "50" "5.0" ; do
for l in "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`
@@ -715,7 +642,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-config lua-config52 lua-config5.2 lua-config51 lua-config5.1 lua-config50 lua-config5.0)
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)
if test "x$LUACONFIG" != "x" ; then
AC_MSG_CHECKING(for Lua headers and libraries with lua-config)
echo
@@ -733,7 +660,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 "$lua_suffix" "" "52" "5.2" "51" "5.1" "50" "5.0" ; do
for l in "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"
@@ -1053,6 +980,79 @@ if test "x$enable_php" = "xyes" ; then
AC_DEFINE(PLUGIN_PHP)
fi
# ----------------------------------- spell ------------------------------------
if test "x$enable_spell" = "xyes" ; then
ac_found_enchant_lib="no"
if test "x$enable_enchant" = "xyes" ; then
PKG_CHECK_MODULES(ENCHANT, [enchant], ac_found_enchant_lib="yes", ac_found_enchant_lib="no")
fi
if test "x$ac_found_enchant_lib" = "xyes" ; then
CFLAGS="$CFLAGS -DUSE_ENCHANT"
SPELL_LIB_USED="enchant"
# check if function enchant_get_version() exists
ac_save_CFLAGS="$CFLAGS"
ac_save_LDFLAGS="$LDFLAGS"
CFLAGS="$CFLAGS $ENCHANT_CFLAGS"
LDFLAGS="$LDFLAGS $ENCHANT_LIBS"
AC_CACHE_CHECK([for enchant_get_version() support], ac_cv_have_enchant_get_version, [
AC_LINK_IFELSE([AC_LANG_PROGRAM(
[[ #include <enchant.h>]],
[[ const char *version = enchant_get_version(); ]])],
[ ac_have_enchant_get_version="yes" ],
[ ac_have_enchant_get_version="no" ])])
CFLAGS="$ac_save_CFLAGS"
LDFLAGS="$ac_save_LDFLAGS"
if test "x$ac_have_enchant_get_version" = "xyes"; then
AC_DEFINE(HAVE_ENCHANT_GET_VERSION)
fi
else
ASPELL_CFLAGS=""
ASPELL_LFLAGS=""
AC_CHECK_HEADER(aspell.h,ac_found_aspell_header="yes",ac_found_aspell_header="no")
AC_CHECK_LIB(aspell,new_aspell_speller,ac_found_aspell_lib="yes",ac_found_aspell_lib="no")
AC_MSG_CHECKING(for aspell headers and libraries)
if test "x$ac_found_aspell_header" = "xno" -o "x$ac_found_aspell_lib" = "xno" ; then
AC_MSG_RESULT(no)
AC_MSG_WARN([
*** Aspell headers and/or libraries couldn't be found on your system.
*** Try to install them with your software package manager.
*** WeeChat will be built without Aspell support.])
enable_spell="no"
not_found="$not_found spell"
else
AC_MSG_RESULT(yes)
ASPELL_LFLAGS="$ASPELL_LFLAGS -laspell"
SPELL_LIB_USED="aspell"
# check if function aspell_version_string() exists
ac_save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $ASPELL_LFLAGS"
AC_CACHE_CHECK([for aspell_version_string() support], ac_cv_have_aspell_version_string, [
AC_LINK_IFELSE([AC_LANG_PROGRAM(
[[ #include <aspell.h>]],
[[ const char *version = aspell_version_string(); ]])],
[ ac_have_aspell_version_string="yes" ],
[ ac_have_aspell_version_string="no" ])])
LDFLAGS="$ac_save_LDFLAGS"
if test "x$ac_have_aspell_version_string" = "xyes"; then
AC_DEFINE(HAVE_ASPELL_VERSION_STRING)
fi
fi
fi
else
not_asked="$not_asked spell"
fi
if test "x$enable_spell" = "xyes" ; then
AC_SUBST(ASPELL_CFLAGS)
AC_SUBST(ASPELL_LFLAGS)
AC_DEFINE(PLUGIN_SPELL)
fi
# --------------------------------- trigger ------------------------------------
if test "x$enable_trigger" = "xyes" ; then
@@ -1390,7 +1390,6 @@ AM_CONDITIONAL(HAVE_EAT_NEWLINE_GLITCH, test "$enable_eatnewlineglitch" = "yes")
AM_CONDITIONAL(GUI_NCURSES, test "$enable_ncurses" = "yes")
AM_CONDITIONAL(HEADLESS, test "$enable_headless" = "yes")
AM_CONDITIONAL(PLUGIN_ALIAS, test "$enable_alias" = "yes")
AM_CONDITIONAL(PLUGIN_ASPELL, test "$enable_aspell" = "yes")
AM_CONDITIONAL(PLUGIN_BUFLIST, test "$enable_buflist" = "yes")
AM_CONDITIONAL(PLUGIN_CHARSET, test "$enable_charset" = "yes")
AM_CONDITIONAL(PLUGIN_EXEC, test "$enable_exec" = "yes")
@@ -1408,6 +1407,7 @@ AM_CONDITIONAL(PLUGIN_TCL, test "$enable_tcl" = "yes")
AM_CONDITIONAL(PLUGIN_GUILE, test "$enable_guile" = "yes")
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_XFER, test "$enable_xfer" = "yes")
AM_CONDITIONAL(TESTS, test "$enable_tests" = "yes")
@@ -1429,7 +1429,6 @@ AC_OUTPUT([Makefile
src/core/Makefile
src/plugins/Makefile
src/plugins/alias/Makefile
src/plugins/aspell/Makefile
src/plugins/buflist/Makefile
src/plugins/charset/Makefile
src/plugins/exec/Makefile
@@ -1447,6 +1446,7 @@ AC_OUTPUT([Makefile
src/plugins/guile/Makefile
src/plugins/javascript/Makefile
src/plugins/php/Makefile
src/plugins/spell/Makefile
src/plugins/trigger/Makefile
src/plugins/xfer/Makefile
src/gui/Makefile
@@ -1479,9 +1479,6 @@ listplugins=""
if test "x$enable_alias" = "xyes"; then
listplugins="$listplugins alias"
fi
if test "x$enable_aspell" = "xyes"; then
listplugins="$listplugins aspell($ASPELL_LIB_USED)"
fi
if test "x$enable_buflist" = "xyes"; then
listplugins="$listplugins buflist"
fi
@@ -1533,6 +1530,9 @@ fi
if test "x$enable_php" = "xyes"; then
listplugins="$listplugins php($PHP_VERSION)"
fi
if test "x$enable_spell" = "xyes"; then
listplugins="$listplugins spell($SPELL_LIB_USED)"
fi
if test "x$enable_trigger" = "xyes"; then
listplugins="$listplugins trigger"
fi
+14
View File
@@ -1,3 +1,17 @@
weechat (2.4-1) unstable; urgency=medium
* New upstream release
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 03 Mar 2019 19:29:13 +0000
weechat (2.3-1) unstable; urgency=medium
* New upstream release
* Bump Standards-Version to 4.3.0
* Switch debhelper compatibility to 12
-- Emmanuel Bouthenot <kolter@debian.org> Fri, 04 Jan 2019 16:06:44 +0000
weechat (2.2-1) unstable; urgency=medium
* New upstream release
+8 -8
View File
@@ -35,11 +35,11 @@ Files: src/core/wee-completion.c
src/core/wee-log.c
src/core/wee-utf8.c
src/core/weechat.h
src/plugins/aspell/weechat-aspell-config.c
src/plugins/aspell/weechat-aspell-config.h
src/plugins/aspell/weechat-aspell-speller.c
src/plugins/aspell/weechat-aspell-speller.h
src/plugins/aspell/weechat-aspell.h
src/plugins/spell/spell-config.c
src/plugins/spell/spell-config.h
src/plugins/spell/spell-speller.c
src/plugins/spell/spell-speller.h
src/plugins/spell/spell.h
src/plugins/irc/irc-command.c
src/plugins/irc/irc.h
Copyright: 2006, Emmanuel Bouthenot <kolter@openics.org>
@@ -51,12 +51,12 @@ Copyright: 2005-2010, Emmanuel Bouthenot <kolter@openics.org>
2012, Simon Arlott
License: GPL-3+
Files: src/plugins/aspell/weechat-aspell-bar-item.c
src/plugins/aspell/weechat-aspell-bar-item.h
Files: src/plugins/spell/spell-bar-item.c
src/plugins/spell/spell-bar-item.h
Copyright: 2012, Nils Görs <weechatter@arcor.de>
License: GPL-3+
Files: src/plugins/aspell/weechat-aspell.c
Files: src/plugins/spell/spell.c
Copyright: 2006, Emmanuel Bouthenot <kolter@openics.org>
2012, Nils Görs <weechatter@arcor.de>
License: GPL-3+
+1 -1
View File
@@ -1,6 +1,6 @@
usr/lib/*/weechat/plugins/aspell.so
usr/lib/*/weechat/plugins/exec.so
usr/lib/*/weechat/plugins/fifo.so
usr/lib/*/weechat/plugins/relay.so
usr/lib/*/weechat/plugins/script.so
usr/lib/*/weechat/plugins/spell.so
usr/lib/*/weechat/plugins/trigger.so
+2
View File
@@ -25,6 +25,7 @@ if(ENABLE_MAN)
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.cs.adoc
@@ -41,6 +42,7 @@ if(ENABLE_MAN)
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.cs.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.cs.adoc
+9 -5
View File
@@ -22,13 +22,16 @@ docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
docinfo.html \
weechat.1.cs.adoc \
weechat-headless.1.cs.adoc \
cmdline_options.cs.adoc \
cmdline_options_debug.cs.adoc \
weechat_quickstart.cs.adoc \
$(wildcard autogen/user/*.adoc) \
$(wildcard autogen/plugin_api/*.adoc)
if MAN
man_targets = weechat.1
man_targets = weechat.1 \
weechat-headless.1
man_install = install-man
man_uninstall = uninstall-man
endif
@@ -39,9 +42,11 @@ if DOC
endif
all-local: $(man_targets) $(doc_targets)
# man page
weechat.1: weechat.1.cs.adoc cmdline_options.cs.adoc
# man pages
weechat.1: weechat.1.cs.adoc cmdline_options.cs.adoc cmdline_options_debug.cs.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/cs/weechat.1.cs.adoc
weechat-headless.1: weechat-headless.1.cs.adoc cmdline_options.cs.adoc cmdline_options_debug.cs.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/cs/weechat-headless.1.cs.adoc
# quickstart
weechat_quickstart.cs.html: weechat_quickstart.cs.adoc $(abs_top_srcdir)/doc/docinfo.html
@@ -54,7 +59,6 @@ install-data-hook: $(man_install) $(doc_install)
install-man:
$(mkinstalldirs) $(DESTDIR)$(mandir)/cs/man1/
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/cs/man1/
(cd '$(DESTDIR)$(mandir)/cs/man1/' && $(RM) weechat-headless.1 && $(LN_S) weechat.1 weechat-headless.1)
install-doc:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
@@ -76,4 +80,4 @@ uninstall-doc:
# clean
clean-local:
-$(RM) weechat.1 weechat_*.html
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
+16
View File
@@ -0,0 +1,16 @@
// TRANSLATION MISSING
*--no-dlclose*::
Do not call the function dlclose after plugins are unloaded.
This is useful with tools like Valgrind to display stack for unloaded
plugins.
// TRANSLATION MISSING
*--no-gnutls*::
Do not call the init and deinit functions of GnuTLS library.
This is useful with tools like Valgrind and electric-fence, to prevent
GnuTLS memory errors.
// TRANSLATION MISSING
*--no-gcrypt*::
Do not call the init and deinit functions of Gcrypt library.
This is useful with tools like Valgrind, to prevent Gcrypt memory errors.
+3 -3
View File
@@ -10,9 +10,6 @@ $HOME/.weechat/sec.conf::
$HOME/.weechat/alias.conf::
configurační soubor pro _alias_ plugin
$HOME/.weechat/aspell.conf::
konfigurační soubor pro _aspell_ plugin
$HOME/.weechat/buflist.conf::
konfigurační soubor pro _buflist_ plugin
@@ -61,6 +58,9 @@ $HOME/.weechat/ruby.conf::
$HOME/.weechat/script.conf::
konfigurační soubor pro _script_ plugin
$HOME/.weechat/spell.conf::
konfigurační soubor pro _spell_ plugin
$HOME/.weechat/tcl.conf::
konfigurační soubor pro _tcl_ plugin
+8 -2
View File
@@ -16,7 +16,7 @@ weechat-headless - the extensible chat client (headless version)
// TRANSLATION MISSING
[verse]
*weechat-headless* [-a|--no-connect] [--daemon] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [plugin:option...]
*weechat-headless* [-a|--no-connect] [--daemon] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [debug-option...] [plugin:option...]
*weechat-headless* [-c|--colors]
*weechat-headless* [-h|--help]
*weechat-headless* [-l|--license]
@@ -32,11 +32,17 @@ v obvyklých sciptovacích jazycích.
The command *weechat-headless* runs WeeChat in a headless mode (no interface).
It can be used for tests or to daemonize WeeChat with the option "--daemon".
== VOLBY
include::cmdline_options.cs.adoc[]
// TRANSLATION MISSING
== DEBUG OPTIONS
*WARNING:* these options are for debug purposes only, *DO NOT USE IN PRODUCTION!*
include::cmdline_options_debug.cs.adoc[]
== VOLBY PLUGINŮ
include::man_plugin_options.cs.adoc[]
+8 -1
View File
@@ -15,7 +15,7 @@ weechat - the extensible chat client
// TRANSLATION MISSING
[verse]
*weechat* [-a|--no-connect] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [plugin:option...]
*weechat* [-a|--no-connect] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [debug-option...] [plugin:option...]
*weechat* [-c|--colors]
*weechat* [-h|--help]
*weechat* [-l|--license]
@@ -31,6 +31,13 @@ v obvyklých sciptovacích jazycích.
include::cmdline_options.cs.adoc[]
// TRANSLATION MISSING
== DEBUG OPTIONS
*WARNING:* these options are for debug purposes only, *DO NOT USE IN PRODUCTION!*
include::cmdline_options_debug.cs.adoc[]
== VOLBY PLUGINŮ
include::man_plugin_options.cs.adoc[]
+18 -14
View File
@@ -20,8 +20,8 @@ Spustění z Vašeho shellu:
$ weechat
----
[[help_options]]
== On-line nápověda/ volby
[[help]]
== On-line nápověda
WeeChat má nápovědů pro všechny příkazy, postě vložte:
@@ -35,15 +35,26 @@ K získání nápovědy pro specifický příkaz napište:
/help příkaz
----
// TRANSLATION MISSING
Help is available for options as well:
----
/help config.section.option
----
(kde `config` je jméno konfigurace (`weechat` pro jádro, nebo jméno pluginu),
`section` sekce této konfigurace a `option` jméno volby).
// TRANSLATION MISSING
[[options]]
== Set options
K nastavení voleb napište:
----
/set config.section.option value
----
(kde `config` je jméno konfigurace (`weechat` pro jádro, nebo jméno pluginu),
`section` sekce této konfigurace a `option` jméno volby).
WeeChat okamžitě použije novou hodnotu (*nikdy* nebudete potřebovat restart
WeeChatu po změně konfigurace).
@@ -59,13 +70,6 @@ that were not yet saved with `/save`). +
You can use the command `/set`, which checks the value and applies immediately
the changes.
// TRANSLATION MISSING
Help is available for options:
----
/help config.section.option
----
// TRANSLATION MISSING
The plugin _fset_ allows you to easily browse options and change them.
@@ -242,7 +246,7 @@ název volby):
Tento příkaz může být použit k vytvoření nového připojení k serveru bez
použití příkazu `/server` (see `/help connect`).
Ve výchozím nastavení jsou serverové bufery spojen s Weechat _core_ buferem.
Ve výchozím nastavení jsou serverové bufery spojen s WeeChat _core_ buferem.
K přepnutí mezi _core_ a server bufery můžete použít klávesu kbd:[Ctrl+x].
Je možné vypnout automatické sloučení serverových buferů a mít nezávislé
@@ -335,7 +339,7 @@ To remove the split:
[[key_bindings]]
== Předvoblby klávesových zkratek
Weechat používá ve výchozím nastavení mnoho klávesových zkratek, Všechny
WeeChat používá ve výchozím nastavení mnoho klávesových zkratek, Všechny
najdete v dokumentaci, ale je dobré znát alespoň pár těchto důležitých:
- kbd:[Alt+←] / kbd:[Alt+→] nebo kbd:[F5] / kbd:[F6]: přepnout na předchozí/další bufer
+3
View File
@@ -25,6 +25,7 @@ if(ENABLE_MAN)
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.de.adoc
@@ -41,6 +42,7 @@ if(ENABLE_MAN)
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.de.adoc
@@ -63,6 +65,7 @@ if(ENABLE_DOC)
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.de.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.de.adoc
${AUTOGEN_USER}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_user.de.html"
+10 -6
View File
@@ -23,7 +23,9 @@ docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
docinfo.html \
weechat.1.de.adoc \
weechat-headless.1.de.adoc \
cmdline_options.de.adoc \
cmdline_options_debug.de.adoc \
weechat_user.de.adoc \
weechat_scripting.de.adoc \
weechat_faq.de.adoc \
@@ -32,7 +34,8 @@ EXTRA_DIST = CMakeLists.txt \
$(wildcard autogen/user/*.adoc)
if MAN
man_targets = weechat.1
man_targets = weechat.1 \
weechat-headless.1
man_install = install-man
man_uninstall = uninstall-man
endif
@@ -47,12 +50,14 @@ if DOC
endif
all-local: $(man_targets) $(doc_targets)
# man page
weechat.1: weechat.1.de.adoc cmdline_options.de.adoc
# man pages
weechat.1: weechat.1.de.adoc cmdline_options.de.adoc cmdline_options_debug.de.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/de/weechat.1.de.adoc
weechat-headless.1: weechat-headless.1.de.adoc cmdline_options.de.adoc cmdline_options_debug.de.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/de/weechat-headless.1.de.adoc
# user's guide
weechat_user.de.html: weechat_user.de.adoc cmdline_options.de.adoc $(wildcard autogen/user/*.adoc) $(abs_top_srcdir)/doc/docinfo.html
weechat_user.de.html: weechat_user.de.adoc cmdline_options.de.adoc cmdline_options_debug.de.adoc $(wildcard autogen/user/*.adoc) $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_user.de.html $(abs_top_srcdir)/doc/de/weechat_user.de.adoc
# scripting guide
@@ -78,7 +83,6 @@ install-data-hook: $(man_install) $(doc_install)
install-man:
$(mkinstalldirs) $(DESTDIR)$(mandir)/de/man1/
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/de/man1/
(cd '$(DESTDIR)$(mandir)/de/man1/' && $(RM) weechat-headless.1 && $(LN_S) weechat.1 weechat-headless.1)
install-doc:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
@@ -100,4 +104,4 @@ uninstall-doc:
# clean
clean-local:
-$(RM) weechat.1 weechat_*.html
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
+4 -4
View File
@@ -10,10 +10,6 @@
| alias | alias_value | Wert von Alias
| aspell | aspell_dicts | Auflistung der installierten Wörterbücher
| aspell | aspell_langs | Liste aller Sprachen die durch Aspell unterstützt werden
| exec | exec_commands_ids | IDs (Nummern und Namen) von ausgeführten Befehlen
| fset | fset_options | Konfigurationsdateien, Sektionen, Optionen und Worte von Optionen
@@ -86,6 +82,10 @@
| script | script_tags | Schlagwortliste für Skripten im Repositorium
| spell | spell_dicts | Auflistung der installierten Wörterbücher
| spell | spell_langs | Liste aller Sprachen die unterstützt werden
| tcl | tcl_script | Liste der Skripten
| trigger | trigger_hook_arguments | Standardargumente für einen Hook
+2 -1
View File
@@ -243,6 +243,7 @@ _nick_first_tried_   (integer) +
_nick_alternate_number_   (integer) +
_nick_   (string) +
_nick_modes_   (string) +
_host_   (string) +
_checking_cap_ls_   (integer) +
_cap_ls_   (hashtable) +
_checking_cap_list_   (integer) +
@@ -429,7 +430,7 @@ _tags_   (string) +
_requirements_   (string) +
_min_weechat_   (string) +
_max_weechat_   (string) +
_md5sum_   (string) +
_sha512sum_   (string) +
_url_   (string) +
_popularity_   (integer) +
_date_added_   (time) +
+3 -3
View File
@@ -6,8 +6,6 @@
|===
| Erweiterung | Name | Beschreibung | Argumente
| aspell | aspell_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")
| fifo | fifo_filename | Name der FIFO-Pipe | -
| guile | guile_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
@@ -74,6 +72,8 @@
| ruby | ruby_version | Version des verwendeten Interpreters | -
| spell | spell_dict | durch Kommata getrennte Liste von Wörterbüchern, die in diesem Buffer genutzt werden sollen | Buffer-Pointer ("0x12345678") oder der vollständige Buffername ("irc.freenode.#weechat")
| tcl | tcl_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
| tcl | tcl_interpreter | Name des verwendeten Interpreters | -
@@ -116,7 +116,7 @@
| weechat | totp_validate | validiert ein Time-based One-Time Passwort (TOTP): 1 falls TOTP korrekt ist, ansonsten 0 | geheim (in base32), einmaliges Passwort, Zeitstempel (optional, standardmäßig aktuelle Zeit), Anzahl der zu testenden Passwörtern vorher/nachher (optional, standardmäßig 0)
| weechat | uptime | Laufzeit von Weechat (Format: "days:hh:mm:ss") | "days" (Anzahl der Tage) oder "seconds" (Anzahl der Sekunden) (optional)
| weechat | uptime | Laufzeit von WeeChat (Format: "days:hh:mm:ss") | "days" (Anzahl der Tage) oder "seconds" (Anzahl der Sekunden) (optional)
| weechat | version | WeeChat-Version | -
@@ -6,7 +6,7 @@
. logger (14000)
. exec (13000)
. trigger (12000)
. aspell (11000)
. spell (11000)
. alias (10000)
. buflist (9000)
. fifo (8000)
-32
View File
@@ -1,32 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_aspell_aspell]]
* `+aspell+`: Konfiguration für Aspell-Erweiterung
----
/aspell enable|disable|toggle
listdict
setdict <dict>[,<dict>...]
deldict
addword [<dict>] <word>
enable: Aspell wird aktiviert
disable: Aspell wird deaktiviert
toggle: Aspell Funktionalität umschalten
listdict: die, auf dem System, installierten Wörterbücher werden aufgelistet
setdict: Wörterbuch für den aktuellen Buffer einstellen (mehrere Wörterbücher müssen durch Kommata getrennt werden)
deldict: Wörterbuch für den aktuellen Buffer entfernen
addword: fügt ein Wort in das persönliche Wörterbuch von Aspell hinzu
Eingaben die mit '/' beginnen werden nicht überprüft, davon ausgenommen sind einige Befehle (siehe /set aspell.check.commands).
Um sich eine Liste von Vorschlägen in einer Bar anzeigen zu lassen nutzt man das Item "aspell_suggest".
Um Aspell auf alle Buffer anzuwenden sollte die Einstellung "default_dict" genutzt und Aspell aktiviert werden:
/set aspell.check.default_dict "de_DE-neu"
/aspell enable
Die Standardtastaturbelegung zum Umschalten der Aspell Funktionalität lautet alt-s.
----
+2 -2
View File
@@ -543,7 +543,7 @@
** Standardwert: `+2+`
* [[option_irc.server_default.autoconnect]] *irc.server_default.autoconnect*
** Beschreibung: pass:none[Beim Programmstart von Weechat automatisch mit dem Server verbinden]
** Beschreibung: pass:none[Beim Programmstart von WeeChat automatisch mit dem Server verbinden]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
@@ -741,7 +741,7 @@
** Standardwert: `+2048+`
* [[option_irc.server_default.ssl_fingerprint]] *irc.server_default.ssl_fingerprint*
** Beschreibung: pass:none[Fingerprint des Zertifikates welches als vertrauenswürdig eingestuft und für diesen Server akzeptiert wird; es sind nur hexadezimale Zeichen erlaubt (0-9, a-f): bei SHA-512 ist das Zertifikat 64 Zeichen lang, bei SHA-256 sind es 32 Zeichen, bei SHA-1 sind es 20 Zeichen (nicht empfohlen, da unsicher); mehrere Fingerprints können durch Kommata voneinander getrennt werden; wird diese Option genutzt, findet KEINE weitere Überprüfung der Zertifikate statt (Option "ssl_verify") (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[Fingerprint des Zertifikates welches als vertrauenswürdig eingestuft und für diesen Server akzeptiert wird; es sind nur hexadezimale Zeichen erlaubt (0-9, a-f): bei SHA-512 ist das Zertifikat 128 Zeichen lang, bei SHA-256 sind es 64 Zeichen, bei SHA-1 sind es 40 Zeichen (nicht empfohlen, da unsicher); mehrere Fingerprints können durch Kommata voneinander getrennt werden; wird diese Option genutzt, findet KEINE weitere Überprüfung der Zertifikate statt (Option "ssl_verify") (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: `+""+`
+8 -4
View File
@@ -7,7 +7,7 @@
----
/relay list|listfull|listrelay
add <name> <port>
add <name> <port>|<path>
del|start|restart|stop <name>
raw
sslcertkey
@@ -22,19 +22,21 @@
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)
raw: öffnet einen Buffer mit Relay-Rohdaten
sslcertkey: setzt SSL Zertifikat/Schlüssel mittels Pfad in Einstellung relay.network.ssl_cert_key
Aufbau des Relay-Namens: [ipv4.][ipv6.][ssl.]<Protokoll.Name>
Aufbau des Relay-Namens: [ipv4.][ipv6.][ssl.]<Protokoll.Name> oder unix.[ssl.]<Protokoll.Name>
ipv4: erzwingt die Nutzung von IPv4
ipv6: erzwingt die Nutzung von IPv6
ssl: aktiviert SSL
protocol.name: Protokoll und Name relay:
unix: nutzt UNIX Domain Socket
protocol.name: Protokoll und Name des Relay:
- Protokoll "irc": Name des Servers welcher geteilt werden soll (optional. Falls kein Name angegeben wird, muss der Client einen Namen mit dem Befehl "PASS" übermitteln, das Format ist wie folgt: "PASS Server:Passwort")
- Protokoll "weechat" (es wird kein Name verwendet)
Das "irc" Protokoll dient dazu eine Verbindung zu einem anderen IRC Client (oder zu einem zweiten WeeChat) herzustellen.
Das "weechat" Protokoll wird von einem Remote-Interface genutzt um eine Verbindung herzustellen. Siehe https://weechat.org/about/interfaces
Das "weechat" Protokoll wird von einem Remote-Interface genutzt um eine Verbindung auf dem Port herzustellen. Siehe https://weechat.org/about/interfaces
Ohne Angabe von Argumenten werden alle Relay-Clients in einem neuen Buffer dargestellt.
@@ -55,4 +57,6 @@ Beispiele:
/relay add ipv6.ssl.weechat 9001
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
----
+6
View File
@@ -181,3 +181,9 @@
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[option_relay.weechat.commands]] *relay.weechat.commands*
** Beschreibung: pass:none[durch Kommata getrennte Liste von Befehlen die erlaubt bzw. verboten sind, wenn Daten (Text oder Befehl) vom Client empfangen werden; "*" bedeutet alle Befehle sind erlaubt, beginnt ein Befehl hingegen mit "!" wird die Auswahl umgekehrt und der Befehl wird nicht ausgeführt, ein Platzhalter "*" ist bei den Befehlen erlaubt; diese Option sollte verwendet werden, falls man befürchtet, dass der relay client kompromittiert werden kann (darüber können Befehle ausgeführt werden); Beispiel: "*,!exec,!quit" es sind alle Befehle erlaubt, außer /exec und /quit]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
+1 -1
View File
@@ -42,7 +42,7 @@ Im Skript-Buffer, werden folgende Statusangaben für ein Skript angezeigt:
| | | | | obsolete (neue Version verfügbar)
| | | | Skript wird ausgeführt (geladen)
| | | gehalten
| | Skript wird beim Start, von Weechat, automatisch gestartet
| | Skript wird beim Start, von WeeChat, automatisch gestartet
| Skript ist installiert (wird aber nicht ausgeführt)
es wird empfohlen dieses Skript zu installieren
+32
View File
@@ -0,0 +1,32 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_spell_spell]]
* `+spell+`: Konfiguration für spell-Erweiterung
----
/spell enable|disable|toggle
listdict
setdict <dict>[,<dict>...]
deldict
addword [<dict>] <word>
enable: Rechtschreibprüfung wird aktiviert
disable: Rechtschreibprüfung wird deaktiviert
toggle: Funktionalität der Rechtschreibprüfung umschalten
listdict: die, auf dem System, installierten Wörterbücher werden aufgelistet
setdict: Wörterbuch für den aktuellen Buffer einstellen (mehrere Wörterbücher müssen durch Kommata getrennt werden)
deldict: Wörterbuch für den aktuellen Buffer entfernen
addword: fügt ein Wort in das persönliche Wörterbuch hinzu
Eingaben die mit '/' beginnen werden nicht überprüft, davon ausgenommen sind einige Befehle (siehe /set spell.check.commands).
Um die Rechtschreibprüfung auf allen Buffer anzuwenden sollte die Einstellung "default_dict" genutzt und die Rechtschreibprüfung aktiviert werden:
/set spell.check.default_dict "de_DE-neu"
/spell enable
Um sich eine Liste von Vorschlägen in einer Bar anzeigen zu lassen nutzt man das Item "spell_suggest".
Die Standardtastaturbelegung zum Umschalten der Rechtschreibprüfung lautet alt-s.
----
@@ -2,80 +2,80 @@
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
* [[option_aspell.check.commands]] *aspell.check.commands*
* [[option_spell.check.commands]] *spell.check.commands*
** Beschreibung: pass:none[durch Kommata getrennte Liste der Befehle, für die eine Rechtschreibprüfung gelten soll (Rechtschreibprüfung ist für andere Befehle deaktiviert)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+"ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"+`
* [[option_aspell.check.default_dict]] *aspell.check.default_dict*
** Beschreibung: pass:none[Voreingestelltes Wörterbuch (oder durch Kommata getrennte Liste der Wörterbücher) welche(s) genutzt werden soll, sofern kein Wörterbuch für einen Buffer definiert wurde. Wird kein Wörterbuch angegeben dann ist Aspell in allen Buffer deaktiviert, außer es wird für einen Buffer explizit ein Wörterbuch angegeben]
* [[option_spell.check.default_dict]] *spell.check.default_dict*
** Beschreibung: pass:none[Voreingestelltes Wörterbuch (oder durch Kommata getrennte Liste der Wörterbücher) welche(s) genutzt werden soll, sofern kein Wörterbuch für einen Buffer definiert wurde (wird kein Wörterbuch angegeben dann ist die Rechtschreibprüfung in allen Buffer deaktiviert, außer es wird für einen Buffer explizit ein Wörterbuch angegeben)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[option_aspell.check.during_search]] *aspell.check.during_search*
* [[option_spell.check.during_search]] *spell.check.during_search*
** Beschreibung: pass:none[Überprüfe Wörter während im Buffer nach einem Text gesucht wird]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_aspell.check.enabled]] *aspell.check.enabled*
** Beschreibung: pass:none[Aspell wird für die Eingabezeile aktiviert]
* [[option_spell.check.enabled]] *spell.check.enabled*
** Beschreibung: pass:none[Rechtschreibprüfung wird für die Eingabezeile aktiviert]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_aspell.check.real_time]] *aspell.check.real_time*
* [[option_spell.check.real_time]] *spell.check.real_time*
** Beschreibung: pass:none[Eine Korrektur findet während der Texteingabe statt (da dies langsamer ist, ist diese Funktion standardmäßig deaktiviert. Wörter werden erst überprüft sobald ein Leerzeichen dem vorangegangenen Wort folgt)]
** Typ: boolesch
** Werte: on, off
** Standardwert: `+off+`
* [[option_aspell.check.suggestions]] *aspell.check.suggestions*
** Beschreibung: pass:none[legt die Anzahl an Vorschlägen, für ein falsch geschriebenes Wort, fest. Die Vorschläge werden mittels der Bar-Item "aspell_suggest", für die jeweilige(n) Sprache(n), die für den Buffer augewählt wurden, angezeigt (-1 = deaktiviert die Funktion, 0 = zeigt alle verfügbaren Vorschläge, für alle ausgewählten Sprachen, an)]
* [[option_spell.check.suggestions]] *spell.check.suggestions*
** Beschreibung: pass:none[legt die Anzahl an Vorschlägen, für ein falsch geschriebenes Wort, fest. Die Vorschläge werden mittels der Bar-Item "spell_suggest", für die jeweilige(n) Sprache(n), die für den Buffer augewählt wurden, angezeigt (-1 = deaktiviert die Funktion, 0 = zeigt alle verfügbaren Vorschläge, für alle ausgewählten Sprachen, an)]
** Typ: integer
** Werte: -1 .. 2147483647
** Standardwert: `+-1+`
* [[option_aspell.check.word_min_length]] *aspell.check.word_min_length*
* [[option_spell.check.word_min_length]] *spell.check.word_min_length*
** Beschreibung: pass:none[Mindestlänge für ein Wort, welches auf Rechtschreibung überprüft werden soll (bei 0 werden alle Wörter überprüft)]
** Typ: integer
** Werte: 0 .. 2147483647
** Standardwert: `+2+`
* [[option_aspell.color.misspelled]] *aspell.color.misspelled*
* [[option_spell.color.misspelled]] *spell.color.misspelled*
** Beschreibung: pass:none[Farbe in der ein Wort mit einem Rechtschreibfehler hervorgehoben werden soll (Eingabezeile)]
** 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: `+lightred+`
* [[option_aspell.color.suggestion]] *aspell.color.suggestion*
** Beschreibung: pass:none[Textfarbe für die Vorschläge der Rechtsschreibkorrektur in der Bar-Item "aspell_suggest"]
* [[option_spell.color.suggestion]] *spell.color.suggestion*
** Beschreibung: pass:none[Textfarbe für die Vorschläge der Rechtsschreibkorrektur in der Bar-Item "spell_suggest"]
** 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_aspell.color.suggestion_delimiter_dict]] *aspell.color.suggestion_delimiter_dict*
** Beschreibung: pass:none[Textfarbe für das Trennzeichen, im Bar-Item "aspell_suggest", welches zwischen zwei Wörterbücher dargestellt wird]
* [[option_spell.color.suggestion_delimiter_dict]] *spell.color.suggestion_delimiter_dict*
** Beschreibung: pass:none[Textfarbe für das Trennzeichen welches zwischen zwei Wörterbüchern dargestellt wird, im Bar-Item "spell_suggest"]
** 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: `+cyan+`
* [[option_aspell.color.suggestion_delimiter_word]] *aspell.color.suggestion_delimiter_word*
** Beschreibung: pass:none[Textfarbe für das Trennzeichen zwischen zwei Wörtern in der Bar-Item "aspell_suggest"]
* [[option_spell.color.suggestion_delimiter_word]] *spell.color.suggestion_delimiter_word*
** Beschreibung: pass:none[Textfarbe für das Trennzeichen zwischen zwei Wörtern in der Bar-Item "spell_suggest"]
** 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: `+cyan+`
* [[option_aspell.look.suggestion_delimiter_dict]] *aspell.look.suggestion_delimiter_dict*
** Beschreibung: pass:none[Trennzeichen, im Bar-Item "aspell_suggest", welches zwischen zwei Wörterbücher dargestellt wird]
* [[option_spell.look.suggestion_delimiter_dict]] *spell.look.suggestion_delimiter_dict*
** Beschreibung: pass:none[Trennzeichen, im Bar-Item "spell_suggest", welches zwischen zwei Wörterbücher dargestellt wird]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+" / "+`
* [[option_aspell.look.suggestion_delimiter_word]] *aspell.look.suggestion_delimiter_word*
** Beschreibung: pass:none[Trennzeichen, im Bar-Item "aspell_suggest", welches zwischen zwei Wörtern dargestellt wird]
* [[option_spell.look.suggestion_delimiter_word]] *spell.look.suggestion_delimiter_word*
** Beschreibung: pass:none[Trennzeichen, im Bar-Item "spell_suggest", welches zwischen zwei Wörtern dargestellt wird]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+","+`
+6 -4
View File
@@ -25,9 +25,9 @@
listdefault: zeigt die standardmäßig genutzten Trigger an
add: fügt einen Trigger hinzu
addoff: fügt einen Trigger hinzu (deaktiviert)
addreplace: fügt oder ersetzt einen schon existierenden Trigger
addreplace: erzeugt neuen Trigger oder ersetzt einen schon existierenden Trigger
name: Name des Trigger
hook: signal, hsignal, modifier, print, command, command_run, timer, config, focus
hook: signal, hsignal, modifier, line, print, command, command_run, timer, config, focus, info, info_hashtable
arguments: Argumente für den Hook, abhängig vom genutzten Hook (getrennt durch Semikolon):
signal: Name(en) des signals (erforderlich)
hsignal: Name(en) des hsignal (erforderlich)
@@ -39,6 +39,8 @@ listdefault: zeigt die standardmäßig genutzten Trigger an
timer: Intervall (erforderlich), Anpassung an Sekunden (erforderlich), maximale Anzahl an Aufrufen
config: Name der Einstellung (erforderlich)
focus: Name(n) für sichtbaren Bereich (erforderlich) (z.B. "chat" für Chatbereich)
info: Name(n) der Information (erforderlich)
info_hashtable: Name(n) der Information (erforderlich)
conditions: evaluierte Bedingungen für den Trigger
regex: einer oder mehrere reguläre Ausdrücke um Zeichenketten in Variablen zu ersetzen
command: Befehl welcher ausgeführt werden soll (mehrere Befehle müssen durch ";" voneinander getrennt werden)
@@ -70,10 +72,10 @@ Wenn ein Trigger-Callback aufgerufen wird, dann wird folgende Befehlskette ausge
1. Überprüfung von Bedingungen; falls unwahr, beenden
2. ersetze Text mittels einem oder mehreren erweiterten regulären POSIX Ausdrücken (sofern im Trigger definiert)
3. ein oder mehrere Befehle werden ausgeführt (sofern im Trigger definiert)
4. Beendigung mit einem Rückgabewert (ausgenommen sind modifiers, line und focus)
4. Beendigung mit einem Rückgabewert (ausgenommen sind modifiers, line, focus, info und info_hashtable)
5. Aktion welche nach der Abarbeitung des Triggers ausgeführt werden soll
Beispiele (die standardmäßig, eingebauten Trigger kann man sich mit "/trigger listdefault" anzeigen lassen):
Beispiele (die standardmäßig verfügbaren Trigger kann man sich mit "/trigger listdefault" anzeigen lassen):
fügt einer Nachricht die Textattribute *fett*, _unterstrichen_ und /kursiv/ hinzu:
/trigger add effects modifier weechat_print "${tg_tag_nick}" "==\*([^ ]+)\*==*${color:bold}${re:1}${color:-bold}*== ==_([^ ]+)_==_${color:underline}${re:1}${color:-underline}_== ==/([^ ]+)/==/${color:italic}${re:1}${color:-italic}/"
verbirgt die Nicklist auf kleineren Terminals:
+38 -32
View File
@@ -351,33 +351,34 @@ Beispiele (Bedingungen):
----
/filter list
enable|disable|toggle [<name>|@]
add <name> <buffer>[,<buffer>...] <tags> <regex>
add|addreplace <name> <buffer>[,<buffer>...] <tags> <regex>
rename <name> <new_name>
del <name>|-all
list: alle Filter auflisten
enable: Filter wird aktiviert (Filter werden standardmäßig aktiviert)
disable: Filter deaktivieren
toggle: Filter umschalten
name: Name des Filters ("@" = aktiviert/deaktiviert alle Filter im aktuellen Buffer)
add: Filter hinzufügen
rename: benennt einen Filter um
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")
- "*" bedeutet, alle Buffer
- beginnt ein Name mit '!' wird für diesen Buffer kein Filter genutzt
- Platzhalter "*" kann verwendet werden
tags: durch Kommata getrennte Liste von Schlagwörtern. Zum Beispiel: "irc_join,irc_part,irc_quit"
- logisch "und": mittels "+" zwischen den Tags (zum Beispiel: "nick_toto+irc_action")
- Platzhalter "*" kann verwendet werden
- wird ein Tag mit '!' eingeleitet, dann muss dieser Tag NICHT in der Nachricht enthalten sein
regex: erweiterter regulärer POSIX Ausdruck, um in einer Zeile zu suchen
- das Präfix (z.B. Nick) wird mittels '\t' von der Nachricht getrennt. Sonderzeichen wie '|' müssen mit einer Escapesequenz : '\|' eingebunden werden)
- wird ein regulärer Ausdruck mit '!' eingeleitet dann wird das übereinstimmende Ergebnis umgekehrt (nutze '\!' um mit '!' zu beginnen)
- es werden zwei reguläre Ausdrücke erstellt: Der erste für den Präfix und der zweite für die eigentliche Nachricht
- reguläre Ausdrücke unterscheiden nicht zwischen Groß- und Kleinschreibung. Um zwischen Groß- und Kleinschreibung zu unterscheiden müssen diese mit "(?-i)" eingeleitet werden.
list: alle Filter auflisten
enable: Filter wird aktiviert (Filter werden standardmäßig aktiviert)
disable: Filter deaktivieren
toggle: Filter umschalten
name: Name des Filters ("@" = aktiviert/deaktiviert alle Filter im aktuellen Buffer)
add: Filter hinzufügen
addreplace: erzeugt neuen Filter oder ersetzt einen schon existierenden Filter
rename: benennt einen Filter um
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")
- "*" bedeutet, alle Buffer
- beginnt ein Name mit '!' wird für diesen Buffer kein Filter genutzt
- Platzhalter "*" kann verwendet werden
tags: durch Kommata getrennte Liste von Schlagwörtern. Zum Beispiel: "irc_join,irc_part,irc_quit"
- logisch "und": mittels "+" zwischen den Tags (zum Beispiel: "nick_toto+irc_action")
- Platzhalter "*" kann verwendet werden
- wird ein Tag mit '!' eingeleitet, dann muss dieser Tag NICHT in der Nachricht enthalten sein
regex: erweiterter regulärer POSIX Ausdruck, um in einer Zeile zu suchen
- das Präfix (z.B. Nick) wird mittels '\t' von der Nachricht getrennt. Sonderzeichen wie '|' müssen mit einer Escapesequenz : '\|' eingebunden werden)
- wird ein regulärer Ausdruck mit '!' eingeleitet dann wird das übereinstimmende Ergebnis umgekehrt (nutze '\!' um mit '!' zu beginnen)
- es werden zwei reguläre Ausdrücke erstellt: Der erste für den Präfix und der zweite für die eigentliche Nachricht
- reguläre Ausdrücke unterscheiden nicht zwischen Groß- und Kleinschreibung. Um zwischen Groß- und Kleinschreibung zu unterscheiden müssen diese mit "(?-i)" eingeleitet werden.
Mit der Tastenvoreinstellung alt+'=' kann die globale Filterfunktion (de-)aktiviert werden und alt+'-' (de-)aktiviert die Filterfunktion für den aktuellen Buffer.
@@ -754,13 +755,18 @@ Ohne Angabe von Argumenten werden alle Konfigurationen (WeeChat und Erweiterunge
* `+repeat+`: führt einen Befehl mehrfach aus
----
/repeat [-interval <delay>] <count> <command>
/repeat [-interval <delay>[<unit>]] <count> <command>
delay: Verzögerung zwischen dem Ausführen der Befehle (in Millisekunden)
count: Anzahl wie oft der Befehl ausgeführt werden soll
command: Befehl welcher ausgeführt werden soll (das Befehlszeichen '/' wird automatisch hinzugefügt, falls es zum Befehlsbeginn nicht gefunden werden sollte)
delay: Verzögerung zwischen dem Ausführen der Befehle
unit: mögliche Werte (optional):
ms: Millisekunden
s: Sekunden (Vorgabewert)
m: Minuten
h: Stunden
count: Anzahl, wie oft der Befehl ausgeführt werden soll
command: Befehl welcher ausgeführt werden soll (oder ein Text der an einen Buffer gesendet werden soll, sofern der Befehl nicht mit '/' beginnt)
Alle Befehle werden in dem Buffer ausgeführt, in welchem dieser Befehl genutzt wird.
Hinweis: Der Befehl wird in dem Buffer ausgeführt, in welchem der /repeat Befehl ausgeführt wurde (sollte der Buffer nicht mehr existieren, wird der Befehl nicht ausgeführt).
Beispiel:
scrolle zwei Seiten hoch:
@@ -911,7 +917,7 @@ Es ist möglich die WeeChat-Sitzung auf einem anderen Rechner wiederherzustellen
----
[[command_weechat_uptime]]
* `+uptime+`: Zeigt die Uptime von Weechat an
* `+uptime+`: Zeigt die Uptime von WeeChat an
----
/uptime [-o | -ol]
@@ -944,9 +950,9 @@ Um diesen Befehl in jedem Buffer ausführen zu können, kann der Standardkurzbef
s: Sekunden (Vorgabewert)
m: Minuten
h: Stunden
command: Befehl der ausgeführt werden soll (ohne das führende '/') oder ein Text der in dem Buffer ausgegeben werden soll
command: Befehl welcher ausgeführt werden soll (oder ein Text der an einen Buffer gesendet werden soll, sofern der Befehl nicht mit '/' beginnt)\n
Hinweis: Der Befehl der zeitverzögert gestartet werden soll wird im selben Buffer ausgeführt in dem auch der /wait Befehl aufgerufen wurde. Falls der Buffer nicht gefunden werden kann, da er in der Zwischenzeit zum Beispiel geschlossen wurde, wird der Befehl im WeeChat Core-Buffer ausgeführt.
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:
+13 -1
View File
@@ -596,6 +596,12 @@
** Werte: beliebige Zeichenkette
** Standardwert: `+"%H:%M:%S"+`
* [[option_weechat.look.buffer_time_same]] *weechat.look.buffer_time_same*
** Beschreibung: pass:none[Uhrzeit die bei einer Nachricht dargestellt werden soll, sofern die Uhrzeit der vorherigen Nachricht entspricht: bei einem Leerzeichen " " wird keine Uhrzeit angezeigt, oder man kann eine Zeichenkette anstelle der Uhrzeit anzeigen, keine Zeichenkette deaktiviert diese Funktion (Uhrzeit wird angezeigt) (Hinweis: Inhalt wird evaluiert, es kann z.B. eine Farbe mittels dem Format "${color:xxx}" angegeben werden, siehe /help eval)]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[option_weechat.look.color_basic_force_bold]] *weechat.look.color_basic_force_bold*
** Beschreibung: pass:none[erzwingt das Textattribut "fett" für helle Farben und "darkgray", um diese Farben stärker hervorzuheben (diese Einstellung ist standardmäßig deaktiviert: "fett" findet ausschließlich dann Verwendung falls das Terminal weniger als 16 Farben zur Verfügung stellt)]
** Typ: boolesch
@@ -1047,7 +1053,13 @@
** Standardwert: `+"<--"+`
* [[option_weechat.look.prefix_same_nick]] *weechat.look.prefix_same_nick*
** Beschreibung: pass:none[setzt ein Präfix welches anstelle des Nicks der Nachricht vorangestellt wird, sofern die vorherige Nachricht von dem selben Nick geschrieben wurde. Wird ein Leerzeichen (" ") genutzt, dann wird der Nachricht kein Präfix vorangestellt. Um diese Funktion zu deaktivieren und den Nick als Präfix zu nutzen darf keine Zeichenkette angegeben werden]
** Beschreibung: pass:none[setzt ein Präfix welches anstelle des Nicks der Nachricht vorangestellt wird, sofern die vorherige aber nicht die nachfolgende Nachricht von dem selben Nick geschrieben wurde. Wird ein Leerzeichen (" ") genutzt, dann wird der Nachricht kein Präfix vorangestellt. Um diese Funktion zu deaktivieren und den Nick als Präfix zu nutzen, einfach keine Zeichenkette angeben]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
* [[option_weechat.look.prefix_same_nick_middle]] *weechat.look.prefix_same_nick_middle*
** Beschreibung: pass:none[setzt ein Präfix welches anstelle des Nicks der Nachricht vorangestellt wird, sofern die vorherige und die nachfolgende Nachricht von dem selben Nick geschrieben wurde. Wird ein Leerzeichen (" ") genutzt, dann wird der Nachricht kein Präfix vorangestellt. Um diese Funktion zu deaktivieren und den Nick als Präfix zu nutzen, einfach keine Zeichenkette angeben]
** Typ: Zeichenkette
** Werte: beliebige Zeichenkette
** Standardwert: `+""+`
+7 -1
View File
@@ -164,7 +164,13 @@
** Werte: on, off
** Standardwert: `+on+`
* [[option_xfer.network.speed_limit]] *xfer.network.speed_limit*
* [[option_xfer.network.speed_limit_recv]] *xfer.network.speed_limit_recv*
** Beschreibung: pass:none[Begrenzt die Übertragungsgeschwindigkeit beim Empfang, in Kilobytes pro Sekunde (0 = keine Begrenzung)]
** Typ: integer
** Werte: 0 .. 2147483647
** Standardwert: `+0+`
* [[option_xfer.network.speed_limit_send]] *xfer.network.speed_limit_send*
** Beschreibung: pass:none[Begrenzt die Übertragungsgeschwindigkeit beim Versenden, in Kilobytes pro Sekunde (0 = keine Begrenzung)]
** Typ: integer
** Werte: 0 .. 2147483647
+13
View File
@@ -0,0 +1,13 @@
*--no-dlclose*::
die Funktion dlclose wird nicht ausgeführt, nachdem Erweiterungen beendet wurden
Dies ist sinnvoll für Tools wie Valgrind um den Stack für Erweiterungen anzuzeigen,
welche beendet wurden.
*--no-gnutls*::
Es wird die init und deinit Funktion der GnuTLS Bibliothek nicht verwendet.
Dies ist sinnvoll für Tools wie Valgrind und electric-fence, um GnuTLS
Speicherfehler zu vermeiden.
*--no-gcrypt*::
Es wird die init und deinit Funktion der Gcrypt Bibliothek nicht verwendet.
Dies ist sinnvoll für Tools wie Valgrind um Speicherfehler von Gcrypt zu vermeiden.
+3 -3
View File
@@ -10,9 +10,6 @@ $HOME/.weechat/sec.conf::
$HOME/.weechat/alias.conf::
Konfigurationsdatei für _alias_ Erweiterung
$HOME/.weechat/aspell.conf::
Konfigurationsdatei für _aspell_ Erweiterung
$HOME/.weechat/buflist.conf::
Konfigurationsdatei für _buflist_ Erweiterung
@@ -61,6 +58,9 @@ $HOME/.weechat/ruby.conf::
$HOME/.weechat/script.conf::
Konfigurationsdatei für _script_ Erweiterung
$HOME/.weechat/spell.conf::
Konfigurationsdatei für _spell_ Erweiterung
$HOME/.weechat/tcl.conf::
Konfigurationsdatei für _tcl_ Erweiterung
+8 -2
View File
@@ -13,7 +13,7 @@ weechat-headless - der erweiterbare Chat Client (headless version)
== SYNOPSIS
[verse]
*weechat-headless* [-a|--no-connect] [--daemon] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [plugin:option...]
*weechat-headless* [-a|--no-connect] [--daemon] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [debug-option...] [plugin:option...]
*weechat-headless* [-c|--colors]
*weechat-headless* [-h|--help]
*weechat-headless* [-l|--license]
@@ -33,7 +33,13 @@ zu starten. Dazu nutzt man die Option "--daemon".
include::cmdline_options.de.adoc[]
== OPTIONEN von ERWEITERUNGEN
== DEBUG-OPTIONEN
*WARNUNG:* Diese Optionen sind lediglich für Debug-Zwecke *DIESE FUNKTIONEN SOLLTE NICHT IM PRODUKTIVEM EINSATZ GENUTZT WERDEN!*
include::cmdline_options_debug.de.adoc[]
== OPTIONEN VON ERWEITERUNGEN
include::man_plugin_options.de.adoc[]
+8 -2
View File
@@ -13,7 +13,7 @@ weechat - der erweiterbare Chat Client
== SYNOPSIS
[verse]
*weechat* [-a|--no-connect] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [plugin:option...]
*weechat* [-a|--no-connect] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [debug-option...] [plugin:option...]
*weechat* [-c|--colors]
*weechat* [-h|--help]
*weechat* [-l|--license]
@@ -29,7 +29,13 @@ Durch Skripten ist das Hauptprogramm äußerst flexibel und erweiterbar.
include::cmdline_options.de.adoc[]
== OPTIONEN von ERWEITERUNGEN
== DEBUG-OPTIONEN
*WARNUNG:* Diese Optionen sind lediglich für Debug-Zwecke *DIESE FUNKTIONEN SOLLTE NICHT IM PRODUKTIVEM EINSATZ GENUTZT WERDEN!*
include::cmdline_options_debug.de.adoc[]
== OPTIONEN VON ERWEITERUNGEN
include::man_plugin_options.de.adoc[]
+20 -15
View File
@@ -125,7 +125,7 @@ das man *ALLE* Lösungsmöglichkeiten prüft:
(diese Option kann schwerwiegenden Darstellungsfehler verursachen, wenn man die Option aktiviert hat)
[NOTE]
Für Weechat wird die Nutzung von UTF-8 locale empfohlen. Nutzt Du jedoch ISO
Für WeeChat wird die Nutzung von UTF-8 locale empfohlen. Nutzt Du jedoch ISO
oder andere locale, bitte vergewissere Dich, dass *alle* Deine Einstellungen
(Terminal, screen, ...) sich auch auf ISO beziehen und *nicht* auf UTF-8.
@@ -160,7 +160,7 @@ Abhängig davon von wo WeeChat gestartet wird solltest Du folgenden Wert nutzen:
Falls nötig korrigiere den Wert Deiner Variablen TERM: `export TERM="xxx"`.
[[screen_weird_chars]]
=== Wenn ich Weechat mit screen/tmux nutze habe ich merkwürdige Zeichen, wie kann ich dies beheben?
=== Wenn ich WeeChat mit screen/tmux nutze habe ich merkwürdige Zeichen, wie kann ich dies beheben?
Dies kann durch einen falschen Wert in der TERM-Umgebungsvariable Deiner Shell hervorgerufen
werden. Bitte überprüfe die Ausgabe von `echo $TERM` in Deinem Terminal (*außerhalb von screen/tmux*). +
@@ -220,8 +220,9 @@ Um die Bar an den unteren Rand zu bewegen:
Um in der Bar zu scollen; wenn die Maus aktiviert ist (Taste: kbd:[Alt+m]), kann
mit dem Mausrad gescrollt werden.
Standardtastenbelegung zum scrollen der _buflist_ Bar: kbd:[F1], kbd:[F2], kbd:[Alt+F1]
und kbd:[Alt+F2].
Standardtastenbelegung zum scrollen der _buflist_ Bar: kbd:[F1]
(oder kbd:[Ctrl+F1]), kbd:[F2] (oder kbd:[Ctrl+F2]), kbd:[Alt+F1] und
kbd:[Alt+F2].
Beim Skript _buffers.pl_ können entsprechende Tasten definiert werden die vergleichbar
mit den vorhanden Tasten für die Nicklist sind +
@@ -330,7 +331,7 @@ werden sollte:
[[terminal_copy_paste]]
=== Wie kann ich einen Text kopieren und einfügen ohne das die Nickliste (Benutzerliste) mit kopiert wird?
Seit WeeChat ≥ 1.0 gibt es einen neuen Anzeigemodus (Standardtastenbelegung: kbd:[Alt+l]), der dazu genutzt
Seit WeeChat ≥ 1.0 gibt es einen neuen Anzeigemodus (Standardtastenbelegung: kbd:[Alt+l] (`L`)), der dazu genutzt
werden kann um den Inhalt des aktuellen Fensters ohne eine Formatierung anzeigen zu lassen.
Hierzu kannst Du ein Terminal nutzen welches Block-Auswahl erlaubt (wie z.B. rxvt-unicode,
@@ -347,7 +348,7 @@ Bildschirm zu positionieren:
[[urls]]
=== Wie kann ich eine URL aufrufen die einen Zeilenumbruch besitzt?
Ab WeeChat ≥ 1.0 kann ein einfacher Anzeigemodus genutzt werden (Standardtastenbelegung: kbd:[Alt+l]).
Ab WeeChat ≥ 1.0 kann ein einfacher Anzeigemodus genutzt werden (Standardtastenbelegung: kbd:[Alt+l] (`L`)).
Um URLs einfacher zu öffnen:
@@ -388,7 +389,7 @@ Eine weitere Möglichkeit ist, ein Skript zu nutzen:
----
[[change_locale_without_quit]]
=== Ich möchte die Meldungen von Weechat in einer anderen Sprache ausgeben lassen, ohne WeeChat zu beenden. Ist dies möglich?
=== Ich möchte die Meldungen von WeeChat in einer anderen Sprache ausgeben lassen, ohne WeeChat zu beenden. Ist dies möglich?
Ja, mit WeeChat ≥ 1.0:
@@ -870,7 +871,7 @@ Teilnehmer haben:
----
[NOTE]
Für Weechat ≤ 0.3.3, lauten die Optionen _irc.network.away_check_ und
Für WeeChat ≤ 0.3.3, lauten die Optionen _irc.network.away_check_ und
_irc.network.away_check_max_nicks_.
[[highlight_notification]]
@@ -1005,15 +1006,19 @@ $ cd ~/.weechat/script
$ curl -O https://weechat.org/files/plugins.xml.gz
----
[[aspell_dictionaries]]
[[spell_dictionaries]]
=== Ich habe aspell Wörterbücher auf mein System installiert. Wie kann ich diese nutzen, ohne WeeChat neu starten zu müssen?
Du braucht lediglich die aspell Erweiterung neu zu laden:
Du braucht lediglich die spell Erweiterung neu zu laden:
----
/plugin reload aspell
/plugin reload spell
----
[NOTE]
Bis WeeChat ≤ 2.4, hieß die "spell" Erweiterung, "aspell". Somit lautet der Befehl:
`/plugin reload aspell`.
[[settings]]
== Einstellungen
@@ -1045,9 +1050,9 @@ Damit WeeChat weniger Speicher benötigt, solltest Du folgende Tipps umsetzen:
* nutze die aktuelle Version (man kann davon ausgehen das eine aktuelle Version
weniger Speicherlecks besitzt, als eine vorherige Version)
* lade keine Erweiterungen die Du nicht benötigst. Zum Beispiel: ASpell, Buflist,
Fifo, Logger, Perl, Python, Ruby, Lua, Tcl, Guile, JavaScript, PHP, Xfer (wird für
DCC benötigst), siehe `/help weechat.plugin.autoload`.
* lade keine Erweiterungen die Du nicht benötigst. Zum Beispiel: Buflist,
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:
@@ -1067,7 +1072,7 @@ und zusätzlich diese Tipps beherzigen:
* die Sekundenanzeigen in der Statusbar sollte deaktiviert werden:
`/set weechat.look.item_time_format "%H:%M"` (dies ist die Standardeinstellung)
* die Echtzeit Rechtschreibkorrektur sollte deaktiviert werden (falls sie aktiviert wurde):
`/set aspell.check.real_time off`
`/set spell.check.real_time off`
* die Umgebungsvariable _TZ_ sollte gesetzt sein (zum Beispiel: `export TZ="Europe/Berlin"`). Dadurch wird
verhindert, dass auf die Datei _/etc/localtime_ häufig zugegriffen wird.
+14 -11
View File
@@ -28,8 +28,8 @@ Programmstart aus Deiner shell:
$ weechat
----
[[help_options]]
== Online-Hilfe / Optionen
[[help]]
== Online-Hilfe
Für jeden Befehl bietet WeeChat eine Hilfe an:
@@ -44,16 +44,25 @@ zu lassen:
/help Befehl
----
Um Optionen zu setzen benutzt man:
Für Optionen kann man ebenso eine Hilfe anfordern:
----
/set config.section.option Wert
/help config.section.option
----
(dabei ist _config_ der Konfigurationsname (_weechat_ für den Kern von weechat,
oder der Name einer Erweiterung), _section_ ein Abschnitt dieser Konfiguration und _option_
der Name der entsprechenden Option).
[[options]]
== Optionen verändern
Um Optionen zu setzen benutzt man:
----
/set config.section.option Wert
----
WeeChat verwendet umgehend einen neu eingestellten Wert (WeeChat muss also zu *keinem* Zeitpunkt
neu gestartet werden, nach dem die Konfiguration verändert wurde).
@@ -69,12 +78,6 @@ bevor man diese ggf. gesichert hat `/save`). +
Aus diesen Gründen sollte immer der `/set` Befehl genutzt werden, da
zusätzlich auch die Eingabe auf Plausibilität geprüft wird und Änderungen sofort wirksam werden.
Hilfe ist für Optionen verfügbar:
----
/help config.section.option
----
Mit der _fset_ Erweiterung kann man sehr einfach Optionen finden und diese
den eigenen Bedürfnissen anpassen.
@@ -121,7 +124,7 @@ Um eine Verbindung zu einem IRC Server herzustellen wird der
/server add freenode chat.freenode.net
----
In dieser Zeile ist `freenode` der interne Servername der von Weechat genutzt wird:
In dieser Zeile ist `freenode` der interne Servername der von WeeChat genutzt wird:
Damit ist es möglich sich mit dem Server zu verbinden `/connect freenode` und um
die Server relevanten Optionen anzupassen _irc.server.freenode.xxx_.
+29 -4
View File
@@ -45,6 +45,29 @@ Allerdings ist die API für alle Skriptsprachen nahezu identisch.
[[scripts_in_weechat]]
== Skripten in WeeChat
[[weechat_architecture]]
=== WeeChat Architektur
WeeChat ist einzelprozeßgestützt (Single-Threaded) und dies gilt ebenso für Skripten.
Der Code eines Skripts wird ausgeführt:
* wenn das Skript geladen wird: typischer Weise durch einen Aufruf von
<<register_function,Register Funktion>>
* wenn ein hook Callback von WeeChat aufgerufen wird (siehe Kapitel <<hooks,Hooks>>).
Sobald der Code eines Skripts ausgeführt wird wartet WeeChat bis zum Ende der
Ausführung, bevor fortgefahren wird. Deshalb dürfen innerhalb des Skripts *KEINE*
blockierende Operationen ausgeführt werden wie zum Beispiel Netzwerkaufrufe,
ohne die dafür vorgesehene API-Funktion zu verwenden, `hook_process`.
[IMPORTANT]
Ein Skript darf *NIEMALS* einen fork nutzen oder einen eigenen Thread erstellen,
dafür gibt es explizit eine API Funktion, andernfalls kann WeeChat abstürzen. +
Wenn etwas in einem Hintergrundprozess ausgeführt werden soll, kann die Funktion
`hook_process` genutzt werden. Siehe Beispiele im Kapitel <<hook_process,Hintergrundprozesse>>
und die Dokumentation für die Funktion `hook_process` in link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference] (Englisch).
[[languages_specificities]]
=== Besonderheiten der einzelnen Skriptsprachen
@@ -440,6 +463,7 @@ Liste der Skript API Funktionen:
ngettext +
strlen_screen +
string_match +
string_match_list +
string_has_highlight +
string_has_highlight_regex +
string_mask_to_regex +
@@ -603,7 +627,8 @@ Liste der Skript API Funktionen:
bar_remove
| Befehle |
command
command +
command_options
| Informationen |
info_get +
@@ -1012,9 +1037,9 @@ Beispiele:
[source,python]
----
skript_optionen = {
"Option1" : "Wert1",
"Option2" : "Wert2",
"Option3" : "Wert3",
"Option1": "Wert1",
"Option2": "Wert2",
"Option3": "Wert3",
}
for option, standardwert in skript_optionen.items():
if not weechat.config_is_set_plugin(option):
+338 -246
View File
@@ -104,7 +104,7 @@ zu kompilieren und welche Pakete optional genutzt werden können.
| C compiler
(gcc, clang, ...) | | *ja* | zum Erstellen der Binärdatei.
| C++ compiler | | | zum Erstellen der Binärdatei und um Test auszuführen, JavaScript Erweiterung.
| cmake | | *ja* | zum kompilieren (autotools ist möglich. cmake wird aber empfohlen).
| cmake | ≥ 3.0 | *ja* | zum kompilieren (autotools ist möglich. cmake wird aber empfohlen).
| pkg-config | | *ja* | entdeckt installierte Bibliotheken.
| libncursesw5-dev ^(2)^ | | *ja* | Ncurses Oberfläche.
| libcurl4-gnutls-dev | | *ja* | URL Transfer.
@@ -114,7 +114,7 @@ zu kompilieren und welche Pakete optional genutzt werden können.
| gettext | | | Internationalisierung (Übersetzung der Mitteilungen; Hauptsprache ist englisch).
| ca-certificates | | | Zertifikate für SSL Verbindungen.
| libaspell-dev
∥ libenchant-dev | | | Aspell Erweiterung.
∥ libenchant-dev | | | Spell Erweiterung.
| python-dev | ≥ 2.6 ^(4)^ | | Python Erweiterung.
| libperl-dev | | | Perl Erweiterung.
| ruby2.5, ruby2.5-dev | ≥ 1.8 | | Ruby Erweiterung.
@@ -137,7 +137,7 @@ Versionen und Paketnamen können für andere Distributionen abweichend sein. +
entscheidend) zu kompilieren. Eine Kompilierung kann auch mit libncurses5-dev erfolgen,
aber dies wird *NICHT* empfohlen:
Es können Darstellungsfehler mit breiten Zeichen auftreten. +
^(3)^ Gnutls ≥ 3.0.21 wird benötigt um eine IRC SASL Authentifizierung mittels
^(3)^ GnuTLS ≥ 3.0.21 wird benötigt um eine IRC SASL Authentifizierung mittels
ECDSA-NIST256P-CHALLENGE durchzuführen. +
^(4)^ Die empfohlene Version ist 2.7 (alle Skripten laufen mit der Version 2.7,
aber nicht mit Version < 2.7 oder ≥ 3.0).
@@ -194,15 +194,12 @@ Liste von häufig verwendeten Optionen:
| CA_FILE | Datei | /etc/ssl/certs/ca-certificates.crt |
Datei enthält die Zertifizierungen.
This is the default value of option
Dies ist der Standardwert für Optionen
<<option_weechat.network.gnutls_ca_file,weechat.network.gnutls_ca_file>>.
| ENABLE_ALIAS | `ON`, `OFF` | ON |
kompiliert <<alias_plugin,Alias Erweiterung>>.
| ENABLE_ASPELL | `ON`, `OFF` | ON |
kompiliert <<aspell_plugin,Aspell Erweiterung>>.
| ENABLE_BUFLIST | `ON`, `OFF` | ON |
kompiliert <<buflist_plugin,Buflist Erweiterung>>.
@@ -210,15 +207,13 @@ Liste von häufig verwendeten Optionen:
kompiliert <<charset_plugin,Charset Erweiterung>>.
| ENABLE_MAN | `ON`, `OFF` | OFF |
kompiliert man page.
erstellt die man page.
| ENABLE_DOC | `ON`, `OFF` | OFF |
kompiliert Dokumentation (dies ist sehr zeitintensiv und wird nur empfohlen falls
Binärpakete erstellt werden, die die Dokumentation beinhalten sollen, oder man die
Dokumentation nicht auf der Homepage abrufen kann).
erstellt die HTML Dokumentation.
| ENABLE_ENCHANT | `ON`, `OFF` | OFF |
kompiliert <<aspell_plugin,Aspell plugin>> mittels Enchant.
kompiliert <<spell_plugin,Spell plugin>> mittels Enchant.
| ENABLE_EXEC | `ON`, `OFF` | ON |
kompiliert <<exec_plugin,Exec Erweiterung>>.
@@ -230,7 +225,7 @@ Liste von häufig verwendeten Optionen:
kompiliert <<fset_plugin,Fset Erweiterung>>.
| ENABLE_GNUTLS | `ON`, `OFF` | ON |
kompiliert Gnutls (für SSL).
kompiliert GnuTLS (für SSL).
| ENABLE_GUILE | `ON`, `OFF` | ON |
kompiliert <<scripts_plugins,Guile Erweiterung>> (Scheme).
@@ -266,8 +261,11 @@ Liste von häufig verwendeten Optionen:
kompiliert <<scripts_plugins,Python Erweiterung>>.
| ENABLE_PYTHON3 | `ON`, `OFF` | OFF |
kompiliert <<scripts_plugins,Python Erweiterung>> mittels Python 3 (dies wird *NICHT* empfohlen,
da viele Skripten nicht kompatible mit Python 3 sind).
kompiliert <<scripts_plugins,Python plugin>> mit Python 3. +
Diese Option wird zur Zeit nicht empfohlen, da die meisten Skripten noch
nicht kompatible mit Python 3 sind. +
Den Fortschritt der Python 3 Unterstützung kann man auf dieser Seite verfolgen:
https://weechat.org/scripts/python3/
| ENABLE_RELAY | `ON`, `OFF` | ON |
kompiliert <<relay_plugin,Relay Erweiterung>>.
@@ -282,6 +280,9 @@ Liste von häufig verwendeten Optionen:
kompiliert <<scripts_plugins,Skripten-Erweiterungen>> (Python, Perl, Ruby,
Lua, Tcl, Guile, JavaScript, PHP).
| ENABLE_SPELL | `ON`, `OFF` | ON |
kompiliert <<spell_plugin,Spell Erweiterung>>.
| ENABLE_TCL | `ON`, `OFF` | ON |
kompiliert <<scripts_plugins,Tcl Erweiterung>>.
@@ -293,6 +294,10 @@ Liste von häufig verwendeten Optionen:
| ENABLE_TESTS | `ON`, `OFF` | OFF |
kompiliert Testumgebung.
| ENABLE_CODE_COVERAGE | `ON`, `OFF` | OFF |
kompilieren mit Optionen für Testabdeckung. +
Diese Option sollte nur für Testzwecke genutzt werden.
|===
Weitere Optionen können mit folgendem Befehl angezeigt werden:
@@ -508,14 +513,21 @@ Um WeeChat zu starten muss folgender Befehl ausgeführt werden:
$ weechat
----
Befehlszeile:
include::cmdline_options.de.adoc[]
Wird WeeChat das erste mal ausgeführt, wird die Standardkonfiguration und
die entsprechenden Dateien im Verzeichnis _~/.weechat_ erstellt.
(siehe <<files_and_directories,Dateien und Verzeichnisse>>).
==== Optionen für Befehlszeile
include::cmdline_options.de.adoc[]
==== zusätzliche Debug-Optionen
[WARNING]
These options are for debug purposes only, *DO NOT USE IN PRODUCTION!*
include::cmdline_options_debug.de.adoc[]
[[environment_variables]]
=== Umgebungsvariablen
@@ -535,7 +547,10 @@ Einige Umgebungsvariablen werden von WeeChat genutzt, sofern sie definiert wurde
WeeChat schreibt standardmäßig seine Konfiguration und andere
Daten in folgendes Verzeichnis: `~/.weechat`
Verzeichnisse:
[[weechat_directories]]
==== WeeChat Verzeichnisse
Es gibt folgende WeeChat Verzeichnisse:
[width="100%",cols="1m,3",options="header"]
|===
@@ -563,6 +578,9 @@ Verzeichnisse:
[NOTE]
^(1)^ Das Verzeichnis besteht meistens aus symbolischen Links welche auf das eigentliche Skript zeigen.
[[weechat_files]]
==== WeeChat Dateien
Folgende Dateien befinden sich im WeeChat-Heimatverzeichnis:
[width="100%",cols="1m,3,6",options="header"]
@@ -572,7 +590,6 @@ Folgende Dateien befinden sich im WeeChat-Heimatverzeichnis:
| sec.conf | Konfigurationsdatei mit sensiblen Daten | *Ja, hoch sensibel*: diese Datei sollte niemals weitergegeben werden.
| plugins.conf | Konfigurationsdatei für Erweiterungen | möglich, hängt von der Erweiterung/Skript ab.
| alias.conf | Konfigurationsdatei: Alias-Erweiterung | möglich, hängt von den Aliases ab.
| aspell.conf | Konfiguration für _aspell_-Erweiterung | Nein.
| buflist.conf | Konfiguration für _buflist_-Erweiterung | Nein.
| charset.conf | Konfiguration für _charset_-Erweiterung | Nein.
| exec.conf | Konfiguration für _exec_-Erweiterung | Nein.
@@ -589,6 +606,7 @@ Folgende Dateien befinden sich im WeeChat-Heimatverzeichnis:
| relay.conf | Konfiguration für _relay_-Erweiterung | Nein.
| ruby.conf | Konfiguration für _ruby_-Erweiterung | Nein.
| script.conf | Konfiguration für _script_-Erweiterung | Nein.
| spell.conf | Konfiguration für _spell_-Erweiterung | Nein.
| tcl.conf | Konfiguration für _tcl_-Erweiterung | Nein.
| trigger.conf | Konfiguration für _trigger_-Erweiterung | möglich, hängt von den Triggern ab.
| xfer.conf | Konfiguration für _xfer_-Erweiterung | Nein.
@@ -710,8 +728,8 @@ andere Items die man nutzen kann (die aber nicht standardmäßig in einer Bar ak
[width="100%",cols="^3,^4,10",options="header"]
|===
| Item | Beispiel | Beschreibung
| aspell_dict | `de,en` | zeigt an welche Wörterbücher für die Rechtschreibung im aktuellen Buffer genutzt werden.
| aspell_suggest | `Glück,Glocke,Block`| Vorschläge für ein falsch geschriebenes Wort.
| spell_dict | `de,en` | zeigt an welche Wörterbücher für die Rechtschreibung im aktuellen Buffer genutzt werden.
| spell_suggest | `Glück,Glocke,Block`| Vorschläge für ein falsch geschriebenes Wort.
| buffer_count | `10` | absolute Anzahl an geöffneten Buffern.
| buffer_short_name | `#test` | Kurzname des aktuellen Buffers.
| irc_channel | `#test` | aktueller IRC Channelname.
@@ -1205,12 +1223,12 @@ Aufzählung von Bar-Optionen:
Die Option _items_ ist ein String, mit einer Anzahl von Bar-Items. Diese werden
durch Kommata voneinander getrennt (auf dem Bildschirm wird das Komma durch ein
Leerzeichen ersetzt). Möchte man die Items ohne Leerzeichen darstellen, nutzt
man ein "+" um die Items zu trennen.
man ein `+++` um die Items zu trennen.
Eine Liste von Bar-Items kann man sich mit dem Befehl `/bar listitems` anzeigen lassen.
Vor oder nach dem Item können Zeichen eingefügt werden. Diese dürfen nicht alphanumerisch,
"-" oder "_" sein. Die Zeichen werden mit der entsprechenden Farbe, für Trennzeichen,
`+-+` oder `+_+` sein. Die Zeichen werden mit der entsprechenden Farbe, für Trennzeichen,
dargestellt (Option _color_delim_).
Beispiel einer Bar mit den Items, "[time],buffer_number+:+buffer_plugin+.+buffer_name":
@@ -1372,7 +1390,7 @@ Der vereinfachte Anzeigemodus hat folgende Funktionen:
wie in einem Terminal genutzt werden um URLs anzuklicken oder Text zu markieren
* ncurses wird nicht genutzt, deshalb werden URLs am Ende der Zeile nicht abgeschnitten.
Der Standardtastenbefehl um den vereinfachten Textmodus zu aktivieren ist kbd:[Alt+l],
Der Standardtastenbefehl um den vereinfachten Textmodus zu aktivieren ist kbd:[Alt+l] (`L`),
mit dem selben Tastenbefehl wird dieser Modus wieder beendet (dieser Modus kann auch
mit jeder beliegen Tasteneingabe beendet werden, siehe Option
<<option_weechat.look.bare_display_exit_on_input,weechat.look.bare_display_exit_on_input>>).
@@ -1568,7 +1586,7 @@ beinhalten. + Diese "tags" können mit dem Befehl `/debug tags` dargestellt werd
Um Tags als Highlights zu nutzen wird folgende Option verwendet:
<<option_weechat.look.highlight_tags,weechat.look.highlight_tags>>.
Tags werden durch Kommata getrennt und mehrere Tags können mit
"+" genutzt werden um ein logischen "und" zu erstellen.
`+++` genutzt werden um ein logischen "und" zu erstellen.
Zum Beispiel um alle Nachrichten vom Nick "FlashCode" und alle notice-Nachrichten
von Nicks die mit "toto" beginnen zu highlighten:
@@ -1652,7 +1670,7 @@ und um eine Hilfe zu erhalten wie man es nutzt: `/help buffer_autoset`.
| kbd:[Alt+d] | löscht das Wort rechts vom Cursor (die Zeichenkette wird dabei in die interne Zwischenablage kopiert). | `/input delete_next_word`
| kbd:[Alt+k] | zeigt den Tastencode, einschließlich des eingebundenen Befehls, einer Tastenkombination an und fügt diesen in die Befehlszeile ein. | `/input grab_key_command`
| kbd:[Alt+r] | komplette Eingabezeile lösche.n| `/input delete_line`
| kbd:[Alt+s] | schaltet die Aspell Funktion an/aus. | `/mute aspell toggle`
| kbd:[Alt+s] | Umschalten der Rechtschreibprüfung. | `/mute spell toggle`
|===
[[key_bindings_buffers_windows]]
@@ -1660,78 +1678,78 @@ und um eine Hilfe zu erhalten wie man es nutzt: `/help buffer_autoset`.
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Taste | Beschreibung | Befehl
| kbd:[Ctrl+l] | Fenster wird neu gezeichnet. | `/window refresh`
| Taste | Beschreibung | Befehl
| kbd:[Ctrl+l] (`L`) | Fenster wird neu gezeichnet. | `/window refresh`
| kbd:[Ctrl+s],
kbd:[Ctrl+u] | setzt für alle Buffer die Markierung für ungelesene Nachrichten. | `/input set_unread`
| kbd:[Ctrl+x] | sind mehrere Buffer zu einem Buffer zusammen gefügt wechselt man diese durch. | `/input switch_active_buffer`
| kbd:[Alt+x] | Zoom eines zusammengefügten Buffers (kbd:[Alt+x] ein zweites mal: alle zusammengefügten Buffer werden angezeigt). | `/input zoom_merged_buffer`
| kbd:[PgUp] | eine Seite im Verlaufsspeicher des Buffers nach oben blättern. | `/window page_up`
| kbd:[PgDn] | eine Seite im Verlaufsspeicher des Buffer nach unten blättern. | `/window page_down`
| kbd:[Alt+PgUp] | einige Zeilen im Verlaufsspeicher des Buffer nach oben blättern. | `/window scroll_up`
| kbd:[Alt+PgDn] | einige Zeilen im Verlaufsspeicher des Buffer nach unten blättern. | `/window scroll_down`
| kbd:[Alt+Home] | springt zur ersten Zeile des Verlaufsspeichers des aktuellen Buffer.s| `/window scroll_top`
| kbd:[Alt+End] | springt zur letzten Zeile des Verlaufsspeichers des aktuellen Buffers. | `/window scroll_bottom`
kbd:[Ctrl+u] | setzt für alle Buffer die Markierung für ungelesene Nachrichten. | `/input set_unread`
| kbd:[Ctrl+x] | sind mehrere Buffer zu einem Buffer zusammen gefügt wechselt man diese durch. | `/input switch_active_buffer`
| kbd:[Alt+x] | Zoom eines zusammengefügten Buffers (kbd:[Alt+x] ein zweites mal: alle zusammengefügten Buffer werden angezeigt). | `/input zoom_merged_buffer`
| kbd:[PgUp] | eine Seite im Verlaufsspeicher des Buffers nach oben blättern. | `/window page_up`
| kbd:[PgDn] | eine Seite im Verlaufsspeicher des Buffer nach unten blättern. | `/window page_down`
| kbd:[Alt+PgUp] | einige Zeilen im Verlaufsspeicher des Buffer nach oben blättern. | `/window scroll_up`
| kbd:[Alt+PgDn] | einige Zeilen im Verlaufsspeicher des Buffer nach unten blättern. | `/window scroll_down`
| kbd:[Alt+Home] | springt zur ersten Zeile des Verlaufsspeichers des aktuellen Buffer.s| `/window scroll_top`
| kbd:[Alt+End] | springt zur letzten Zeile des Verlaufsspeichers des aktuellen Buffers. | `/window scroll_bottom`
| kbd:[F1] +
kbd:[Ctrl+F1] | blättert eine Seite in der buflist hoch. | `/bar scroll buflist * -100%`
kbd:[Ctrl+F1] | blättert eine Seite in der buflist hoch. | `/bar scroll buflist * -100%`
| kbd:[F2] +
kbd:[Ctrl+F2] | blättert eine Seite in der buflist runter. | `/bar scroll buflist * +100%`
| kbd:[Alt+F1] | springt zum Anfang der buflist. | `/bar scroll buflist * b`
| kbd:[Alt+F2] | springt zum Ende der buflist. | `/bar scroll buflist * e`
kbd:[Ctrl+F2] | blättert eine Seite in der buflist runter. | `/bar scroll buflist * +100%`
| kbd:[Alt+F1] | springt zum Anfang der buflist. | `/bar scroll buflist * b`
| kbd:[Alt+F2] | springt zum Ende der buflist. | `/bar scroll buflist * e`
| kbd:[Alt+←] +
kbd:[Alt+↑] +
kbd:[Ctrl+p] +
kbd:[F5] | zum vorherigen Buffer springen. | `/buffer -1`
kbd:[F5] | zum vorherigen Buffer springen. | `/buffer -1`
| kbd:[Alt+→] +
kbd:[Alt+↓] +
kbd:[Ctrl+n] +
kbd:[F6] | zum nächsten Buffer springen. | `/buffer +1`
| kbd:[F7] | zum vorherigen Fenster wechseln. | `/window -1`
| kbd:[F8] | zum nächsten Fenster wechseln. | `/window +1`
| kbd:[F9] | Titel des Buffers nach links verschieben. | `+/bar scroll title * -30%+`
| kbd:[F10] | Titel des Buffers nach rechts verschieben. | `+/bar scroll title * +30%+`
kbd:[F6] | zum nächsten Buffer springen. | `/buffer +1`
| kbd:[F7] | zum vorherigen Fenster wechseln. | `/window -1`
| kbd:[F8] | zum nächsten Fenster wechseln. | `/window +1`
| kbd:[F9] | Titel des Buffers nach links verschieben. | `+/bar scroll title * -30%+`
| kbd:[F10] | Titel des Buffers nach rechts verschieben. | `+/bar scroll title * +30%+`
| kbd:[F11] +
kbd:[Ctrl+F11] | Benutzerliste um eine Seite nach oben blättern. | `/bar scroll nicklist * -100%`
kbd:[Ctrl+F11] | Benutzerliste um eine Seite nach oben blättern. | `/bar scroll nicklist * -100%`
| kbd:[F12] +
kbd:[Ctrl+F12] | Benutzerliste um eine Seite nach unten blättern. | `/bar scroll nicklist * +100%`
| kbd:[Alt+F11] | springt zum Anfang der Benutzerliste. | `/bar scroll nicklist * b`
| kbd:[Alt+F12] | springt zum Ende der Benutzerliste. | `/bar scroll nicklist * e`
| kbd:[Alt+a] | wechselt zum nächsten Buffer mit Aktivität (nach Priorität: highlight, Nachricht, ...). | `/input jump_smart`
| kbd:[Alt+h] | löscht Hotliste (Aktivitätsanzeige für die Buffer). | `/input hotlist_clear`
kbd:[Ctrl+F12] | Benutzerliste um eine Seite nach unten blättern. | `/bar scroll nicklist * +100%`
| kbd:[Alt+F11] | springt zum Anfang der Benutzerliste. | `/bar scroll nicklist * b`
| kbd:[Alt+F12] | springt zum Ende der Benutzerliste. | `/bar scroll nicklist * e`
| kbd:[Alt+a] | wechselt zum nächsten Buffer mit Aktivität (nach Priorität: highlight, Nachricht, ...). | `/input jump_smart`
| kbd:[Alt+h] | löscht Hotliste (Aktivitätsanzeige für die Buffer). | `/input hotlist_clear`
| kbd:[Alt+j],
kbd:[Alt+f] | wechselt zum ersten Buffer. | `/buffer -`
kbd:[Alt+f] | wechselt zum ersten Buffer. | `/buffer -`
| kbd:[Alt+j],
kbd:[Alt+l] | wechselt zum letzten Buffer. | `/buffer +`
kbd:[Alt+l] (`L`) | wechselt zum letzten Buffer. | `/buffer +`
| kbd:[Alt+j],
kbd:[Alt+r] | wechselt zum IRC RAW Buffer. | `/server raw`
kbd:[Alt+r] | wechselt zum IRC RAW Buffer. | `/server raw`
| kbd:[Alt+j],
kbd:[Alt+s] | wechselt zum IRC Server Buffer. | `/server jump`
| kbd:[Alt+0...9] | wechselt zum Buffer mit der Nummer (0 = 10). | `/buffer *N`
kbd:[Alt+s] | wechselt zum IRC Server Buffer. | `/server jump`
| kbd:[Alt+0...9] | wechselt zum Buffer mit der Nummer (0 = 10). | `/buffer *N`
| kbd:[Alt+j],
kbd:[01...99] | wechselt zum Buffer mit der angegeben Nummer. | `/buffer *NN`
| kbd:[Alt+l] | schaltet einfachen Anzeigemodus an/aus. | `/window bare`
| kbd:[Alt+m] | schaltet Mausfunktion ein/aus. | `/mouse toggle`
| kbd:[Alt+n] | springt zur nächsten Highlight Nachricht. | `/window scroll_next_highlight`
| kbd:[Alt+p] | springt zur vorherigen Highlight Nachricht. | `/window scroll_previous_highlight`
| kbd:[Alt+u] | springt zur ersten ungelesenen Zeile im Buffer. | `/window scroll_unread`
kbd:[01...99] | wechselt zum Buffer mit der angegeben Nummer. | `/buffer *NN`
| kbd:[Alt+l] (`L`) | schaltet einfachen Anzeigemodus an/aus. | `/window bare`
| kbd:[Alt+m] | schaltet Mausfunktion ein/aus. | `/mouse toggle`
| kbd:[Alt+n] | springt zur nächsten Highlight Nachricht. | `/window scroll_next_highlight`
| kbd:[Alt+p] | springt zur vorherigen Highlight Nachricht. | `/window scroll_previous_highlight`
| kbd:[Alt+u] | springt zur ersten ungelesenen Zeile im Buffer. | `/window scroll_unread`
| kbd:[Alt+w],
kbd:[Alt+↑] | wechselt zum oberen Fenster. | `/window up`
kbd:[Alt+↑] | wechselt zum oberen Fenster. | `/window up`
| kbd:[Alt+w],
kbd:[Alt+↓] | wechselt zum unteren Fenster. | `/window down`
kbd:[Alt+↓] | wechselt zum unteren Fenster. | `/window down`
| kbd:[Alt+w],
kbd:[Alt+←] | wechselt zum linken Fenster. | `/window left`
kbd:[Alt+←] | wechselt zum linken Fenster. | `/window left`
| kbd:[Alt+w],
kbd:[Alt+→] | wechselt zum rechten Fenster. | `/window right`
kbd:[Alt+→] | wechselt zum rechten Fenster. | `/window right`
| kbd:[Alt+w],
kbd:[Alt+b] | passt die Größe aller Fenster an. | `/window balance`
kbd:[Alt+b] | passt die Größe aller Fenster an. | `/window balance`
| kbd:[Alt+w],
kbd:[Alt+s] | Wechselt Buffer von zwei Fenstern. | `/window swap`
| kbd:[Alt+z] | Zoom für aktuelles Fenster (nochmals kbd:[Alt+z]: stellt die vorherigen Einstellungen wieder her). | `/window zoom`
| kbd:[Alt+<] | springt zum letzten besuchten Buffer. | `/input jump_previously_visited_buffer`
| kbd:[Alt+>] | springt zum nächsten besuchten Buffer. | `/input jump_next_visited_buffer`
| kbd:[Alt+/] | wechselt zum jeweils zuletzt angezeigten Buffern. | `/input jump_last_buffer_displayed`
| kbd:[Alt+=] | schaltet Filterfunktion an/aus. | `/filter toggle`
| kbd:[Alt+-] | schaltet, für den aktuellen Buffer, Filterfunktion an/aus. | `/filter toggle @`
kbd:[Alt+s] | Wechselt Buffer von zwei Fenstern. | `/window swap`
| kbd:[Alt+z] | Zoom für aktuelles Fenster (nochmals kbd:[Alt+z]: stellt die vorherigen Einstellungen wieder her). | `/window zoom`
| kbd:[Alt+<] | springt zum letzten besuchten Buffer. | `/input jump_previously_visited_buffer`
| kbd:[Alt+>] | springt zum nächsten besuchten Buffer. | `/input jump_next_visited_buffer`
| kbd:[Alt+/] | wechselt zum jeweils zuletzt angezeigten Buffern. | `/input jump_last_buffer_displayed`
| kbd:[Alt+=] | schaltet Filterfunktion an/aus. | `/filter toggle`
| kbd:[Alt+-] | schaltet, für den aktuellen Buffer, Filterfunktion an/aus. | `/filter toggle @`
|===
[[key_bindings_search_context]]
@@ -1790,43 +1808,43 @@ Diese Tasten werden im Kontext "mouse" verwendet, wenn eine Mausfunktion genutzt
[width="100%",cols="^.^3,^.^3,^.^3,.^8,.^8",options="header"]
|===
| Maustaste ^(1)^ | Mausgeste | Bereich | Beschreibung | Befehl
| ◾◽◽ | - | Chat | wechselt zum Fenster. | `/window ${_window_number}`
| ◾◽◽ | links | Chat | zum vorherigen Buffer springen. | `/window ${_window_number};/buffer +1`
| ◾◽◽ | rechts | Chat | zum nächsten Buffer springen. | `/window ${_window_number};/buffer +1`
| ◾◽◽ | links(lang) | Chat | wechselt zum ersten Buffer. | `/window ${_window_number};/buffer 1`
| ◾◽◽ | rechts(lang) | Chat | wechselt zum letzten Buffer. | `/window ${_window_number};/input jump_last_buffer`
| ◾◽◽ | - | chat (script buffer) | wählt einen Eintrag im Script-Buffer aus. | `/script go ${_chat_line_y}`
| ◽◽◾ | - | chat (script buffer) | installiert/entfernt ein Skript. | `/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}`
| | - | Chat | mehrere Zeilen im Verlaufsspeicher des Buffer nach oben blättern. | `/window scroll_up -window ${_window_number}`
| | - | Chat | mehrere Zeilen im Verlaufsspeicher des Buffer nach unten blättern. | `/window scroll_down -window ${_window_number}`
| | - | chat (script buffer) | fünf Zeilen nach oben blättern, im Script-Buffer. | `/script up 5`
| | - | chat (script buffer) | fünf Zeilen nach unten blättern, im Script-Buffer. | `/script down 5`
| kbd:[Ctrl+⇑] | - | chat | horizontal, nach links scrollen. | `/window scroll_horiz -window ${_window_number} -10%`
| kbd:[Ctrl+⇓] | - | chat | horizontal, nach rechts scrollen. | `/window scroll_horiz -window ${_window_number} +10%`
| ◾◽◽ | up / left | buflist | verschiebt Buffer in der Reihenfolge nach unten. | Signal `buflist_mouse`.
| ◾◽◽ | down / right | buflist | verschiebt Buffer in der Reihenfolge nach oben. | Signal `buflist_mouse`.
| ◾◽◽ | - | buflist | wechselt zum Buffer (oder zum vorherigen Buffer, falls der aktuell genutzte Buffer angewählt wurde). | Signal `buflist_mouse`.
| ◽◽◾ | - | buflist | wechselt zum nächsten Buffer, falls der aktuell genutzte Buffer angewählt wurde. | Signal `buflist_mouse`.
| kbd:[Ctrl+⇑] | - | buflist | wechselt zum vorherigen Buffer. | Signal `buflist_mouse`.
| kbd:[Ctrl+⇓] | - | buflist | wechselt zum nächsten Buffer. | Signal `buflist_mouse`.
| ◾◽◽ | hoch | Benutzerliste | Benutzerliste um eine Seite nach oben blättern. | `/bar scroll nicklist ${_window_number} -100%`
| ◾◽◽ | runter | Benutzerliste | Benutzerliste um eine Seite nach unten blättern. | `/bar scroll nicklist ${_window_number} +100%`
| ◾◽◽ | hoch(lang) | Benutzerliste | springt zum Anfang der Benutzerliste. | `/bar scroll nicklist ${_window_number} b`
| ◾◽◽ | runter(lang) | Benutzerliste | springt zum Ende der Benutzerliste. | `/bar scroll nicklist ${_window_number} e`
| ◾◽◽ | - | Benutzerliste | öffnet privaten Chat mit Nick. | `/window ${_window_number};/query ${nick}`
| ◽◽◾ | - | Benutzerliste | führt einen whois für Nick aus. | `/window ${_window_number};/whois ${nick}`
| ◾◽◽ | links | Benutzerliste | kickt Nick. | `/window ${_window_number};/kick ${nick}`
| ◾◽◽ | links(lang) | Benutzerliste | kickt und verbannt Nick. | `/window ${_window_number};/kickban ${nick}`
| ◽◽◾ | links | Benutzerliste | verbannt Nick. | `/window ${_window_number};/ban ${nick}`
| ◽◽◾ | - | Input | fängt ein Mausereignis und fügt dieses in die Befehlszeile ein. | `/input grab_mouse_area`
| | - | jede Bar | blättert Bar um 20% nach oben. | `/bar scroll ${_bar_name} ${_window_number} -20%`
| | - | jede Bar | blättert Bar um 20% nach unten. | `/bar scroll ${_bar_name} ${_window_number} +20%`
| ◽◾◽ | - | überall | aktiviert den Cursor-Modus an dieser Position. | `/cursor go ${_x},${_y}`
| Maustaste/Mausrad ^(1)^ | Mausgeste | Bereich | Beschreibung | Befehl
| ◾◽◽ | - | Chat | wechselt zum Fenster. | `/window ${_window_number}`
| ◾◽◽ | links | Chat | zum vorherigen Buffer springen. | `/window ${_window_number};/buffer +1`
| ◾◽◽ | rechts | Chat | zum nächsten Buffer springen. | `/window ${_window_number};/buffer +1`
| ◾◽◽ | links(lang) | Chat | wechselt zum ersten Buffer. | `/window ${_window_number};/buffer 1`
| ◾◽◽ | rechts(lang) | Chat | wechselt zum letzten Buffer. | `/window ${_window_number};/input jump_last_buffer`
| ◾◽◽ | - | chat (script buffer) | wählt einen Eintrag im Script-Buffer aus. | `/script go ${_chat_line_y}`
| ◽◽◾ | - | chat (script buffer) | installiert/entfernt ein Skript. | `/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}`
| kbd:[▲] | - | Chat | mehrere Zeilen im Verlaufsspeicher des Buffer nach oben blättern. | `/window scroll_up -window ${_window_number}`
| kbd:[▼] | - | Chat | mehrere Zeilen im Verlaufsspeicher des Buffer nach unten blättern. | `/window scroll_down -window ${_window_number}`
| kbd:[▲] | - | chat (script buffer) | fünf Zeilen nach oben blättern, im Script-Buffer. | `/script up 5`
| kbd:[▼] | - | chat (script buffer) | fünf Zeilen nach unten blättern, im Script-Buffer. | `/script down 5`
| kbd:[Ctrl+▲] | - | chat | horizontal, nach links scrollen. | `/window scroll_horiz -window ${_window_number} -10%`
| kbd:[Ctrl+▼] | - | chat | horizontal, nach rechts scrollen. | `/window scroll_horiz -window ${_window_number} +10%`
| ◾◽◽ | up / left | buflist | verschiebt Buffer in der Reihenfolge nach unten. | Signal `buflist_mouse`.
| ◾◽◽ | down / right | buflist | verschiebt Buffer in der Reihenfolge nach oben. | Signal `buflist_mouse`.
| ◾◽◽ | - | buflist | wechselt zum Buffer (oder zum vorherigen Buffer, falls der aktuell genutzte Buffer angewählt wurde). | Signal `buflist_mouse`.
| ◽◽◾ | - | buflist | wechselt zum nächsten Buffer, falls der aktuell genutzte Buffer angewählt wurde. | Signal `buflist_mouse`.
| kbd:[Ctrl+▲] | - | buflist | wechselt zum vorherigen Buffer. | Signal `buflist_mouse`.
| kbd:[Ctrl+▼] | - | buflist | wechselt zum nächsten Buffer. | Signal `buflist_mouse`.
| ◾◽◽ | hoch | Benutzerliste | Benutzerliste um eine Seite nach oben blättern. | `/bar scroll nicklist ${_window_number} -100%`
| ◾◽◽ | runter | Benutzerliste | Benutzerliste um eine Seite nach unten blättern. | `/bar scroll nicklist ${_window_number} +100%`
| ◾◽◽ | hoch(lang) | Benutzerliste | springt zum Anfang der Benutzerliste. | `/bar scroll nicklist ${_window_number} b`
| ◾◽◽ | runter(lang) | Benutzerliste | springt zum Ende der Benutzerliste. | `/bar scroll nicklist ${_window_number} e`
| ◾◽◽ | - | Benutzerliste | öffnet privaten Chat mit Nick. | `/window ${_window_number};/query ${nick}`
| ◽◽◾ | - | Benutzerliste | führt einen whois für Nick aus. | `/window ${_window_number};/whois ${nick}`
| ◾◽◽ | links | Benutzerliste | kickt Nick. | `/window ${_window_number};/kick ${nick}`
| ◾◽◽ | links(lang) | Benutzerliste | kickt und verbannt Nick. | `/window ${_window_number};/kickban ${nick}`
| ◽◽◾ | links | Benutzerliste | verbannt Nick. | `/window ${_window_number};/ban ${nick}`
| ◽◽◾ | - | Input | fängt ein Mausereignis und fügt dieses in die Befehlszeile ein. | `/input grab_mouse_area`
| kbd:[▲] | - | jede Bar | blättert Bar um 20% nach oben. | `/bar scroll ${_bar_name} ${_window_number} -20%`
| kbd:[▼] | - | jede Bar | blättert Bar um 20% nach unten. | `/bar scroll ${_bar_name} ${_window_number} +20%`
| ◽◾◽ | - | überall | aktiviert den Cursor-Modus an dieser Position. | `/cursor go ${_x},${_y}`
|===
[NOTE]
^(1)^ "⇑" und "⇓" sind Symbole für Mausrad hoch/runter.
^(1)^ kbd:[▲] und kbd:[▼] sind Symbole für Mausrad hoch/runter.
[[mouse]]
=== Mausunterstützung
@@ -1859,7 +1877,7 @@ kbd:[Alt+%] die Mausunterstützung für 10 Sekunden deaktiviert werden:
----
[IMPORTANT]
Ist die Maus in Weechat aktiviert werden alle Mausereignisse duch WeeChat gefangen.
Ist die Maus in WeeChat aktiviert werden alle Mausereignisse duch WeeChat gefangen.
Dadurch werden Aktionen wie Kopieren+Einfügen oder Klicks auf URLs nicht an das
Terminal weitergereicht. + Mittels der kbd:[Shift] Taste kann aber das Mausereignis
an das Terminal weitergeleitet werden, als ob die Maus deaktiviert wäre (bei
@@ -1880,7 +1898,7 @@ Man kann mit dem Befehl `/key` im Kontext "mouse" aber auch eigene Befehle zuwei
und löschen (für die Syntax, siehe Befehl <<command_weechat_key,/key>>).
Der Name eines Ereignisses besteht aus einem Modifier (optional), einer Maustaste/Mausrad
und der Mausgeste (optional). Die unterschiedlichen Elemente werden durch ein "-" getrennt.
und der Mausgeste (optional). Die unterschiedlichen Elemente werden durch ein `+-+` getrennt.
Liste der Modifiers:
@@ -2135,7 +2153,6 @@ Standarderweiterungen:
|===
| Erweiterung | Beschreibung
| alias | definiert Alias für Befehle.
| aspell | Rechtschreibprüfung für Befehlszeile.
| buflist | Bar-Item mit der Liste aller Buffern.
| charset | Zeichensatz (de)-kodierung in Buffern.
| exec | ausführen von externen Befehlen aus WeeChat heraus.
@@ -2153,6 +2170,7 @@ Standarderweiterungen:
| guile | Guile(scheme)-Skript API.
| javascript | JavaScript-Skript API.
| php | PHP-Skript API.
| spell | Rechtschreibprüfung für Befehlszeile.
| trigger | Veränderung von Text und Ausführen von Befehlen bei einem Ereignis, welche durch WeeChat oder eine Erweiterung ausgelöst werden.
| xfer | Datentransfer und Direktchat.
|===
@@ -2193,117 +2211,6 @@ Sektionen in Datei _alias.conf_:
/set alias.completion.* | Vervollständigung für Alias.
|===
[[aspell_plugin]]
=== Aspell
Mit der ASpell Erweiterung findet eine Rechtschreibprüfung Einzug in WeeChat.
Dabei ist es möglich mehrere Wörterbücher für einen Buffer zu nutzen.
Die Rechtschreibprüfung ist standardmäßig deaktiviert und kann mittels dem
Tastenbefehl [Alt+s] umgeschaltet werden.
[[aspell_dictionaries]]
==== Wörterbücher
Um die Rechtschreibprüfung nutzen zu können muss vorab ein Wörterbuch definiert werden,
welches genutzt werden soll. Dies kann entweder global oder per Buffer geschehen.
Verschiedene Wörterbücher können parallel verwendet werden. WeeChat gleicht dann
die Wörter mit allen Wörterbüchern ab,
Um zum Beispiel Englisch und Deutsch zu nutzen:
----
/set aspell.check.default_dict "en,de"
----
Es ist möglich ein anderes Wörterbuch für einen speziellen Buffer zu verwenden, zum
Beispiel in einem französischen Channel:
----
/aspell setdict fr
----
Um einer Gruppe von Buffern das selbe Wörterbuch zuzuordnen, zum Beispiel das
deutsche Wörterbuch für alle Channels auf dem freenode IRC Server:
----
/set aspell.dict.irc.freenode de
----
Für weitere Informationen, siehe den Befehl <<command_aspell_aspell,/aspell>>.
[[aspell_speller_options]]
==== Optionen für Rechtschreibprüfung
Optionen für die Rechtschreibprüfung können definiert werden indem man die entsprechende
Option in die Sektion "option" der Aspell-Konfiguration hinzufügt.
Den Name der Option findet man in der ASpell-Konfigurationsdatei. Eine Auflistung aller
möglichen Optionen erhält man durch:
----
$ aspell config
----
Um zum Beispiel die Option "ignore-case" einzuschalten:
----
/set aspell.option.ignore-case "true"
----
[[aspell_suggestions]]
==== Rechtschreibkorrektur
Eine Rechtschreibkorrektur wird in der Bar-Item "aspell_suggest" angezeigt.
Die Anzahl an Vorschlägen, für die Rechtschreibkorrektur, kann mit der Option
_aspell.check.suggestions_ bestimmt werden.
Um die Rechtschreibkorrektur zu aktivieren, muss für die Option _aspell.check.suggestions_
ein Wert ≥ 0 eingestellt werden und das Bar-Item "aspell_suggest" zu einer Bar, zum
Beispiel _status_, hinzufügt werden.
Beispiel der Rechtschreibkorrektur, mit einem deutschen Wörterbuch (`de`):
....
│[12:55] [6] [irc/freenode] 3:#test(+n){4} [dies,Diebs,Viehs] │
│[@Flashy] diehs █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
Beispiel der Rechtschreibkorrektur, mit zwei Wörterbüchern (`en,de`):
....
│[12:55] [6] [irc/freenode] 3:#test(+n){4} [print,prone,prune/Prinz] │
│[@Flashy] prinr █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[aspell_commands]]
==== Befehle
include::autogen/user/aspell_commands.adoc[]
[[aspell_options]]
==== Optionen
Sektionen in Datei _aspell.conf_:
[width="100%",cols="3m,6m,16",options="header"]
|===
| Sektion | Steuerbefehl | Beschreibung
| color | /set aspell.color.* | Farben.
| check | /set aspell.check.* | Optionen um Einstellungen an der Rechtschreibprüfung vorzunehmen.
| dict | <<command_aspell_aspell,/aspell setdict>> +
/set aspell.dict.* | Wörterbücher für Buffer (Optionen können in Sektion hinzugefügt/entfernt werden).
| look | /set aspell.look.* | Erscheinungsbild.
| option | /set aspell.option.* | <<aspell_speller_options,Optionen für Rechtschreibprüfung>> (Optionen können in Sektion hinzugefügt/entfernt werden).
|===
Optionen:
include::autogen/user/aspell_options.adoc[]
[[buflist_plugin]]
=== Buflist
@@ -3083,7 +2990,7 @@ Die IRC Erweiterung nutzt folgende Level:
* Level 4: Server Nachrichten join/part/quit
Setzen Sie also den Grad der Protokollierung für einen IRC Channel auf "3"
wird Weechat alle Nachrichten protokollieren, ausgenommen join/part/quit
wird WeeChat alle Nachrichten protokollieren, ausgenommen join/part/quit
Nachrichten.
weitere Beispiele:
@@ -3301,11 +3208,11 @@ Die Relay Erweiterung kann wie ein IRC Proxy genutzt werden. Dabei simuliert
die Erweiterung einen IRC Server und man kann sich mit jedem IRC Client zu WeeChat
verbinden.
Es kann für jeden IRC Server ein Port definiert werden, oder aber ein Port für
alle Server.
Es kann für jeden IRC Server ein Port definiert werden, oder aber man nutzt ein Port
für alle Server.
Wird ein Port für alle Server genutzt, dann muss der Client den internen Namen
des zu nutzenden Servers mit dem IRC Befehl "PASS" anfordern:
des zu nutzenden Servers mit dem IRC Befehl "PASS" anfordern (siehe folgendes Beispiel):
----
PASS server:meinPasswort
@@ -3327,6 +3234,14 @@ Nun kann man eine Verbindung zum Port 8000 mit jedem beliebigen IRC Client
herstellen, indem man das Server Passwort "meinPasswort" nutzt (oder
"freenode:meinPasswort" sofern kein Server angegeben wurde).
Wenn man Beispielsweise WeeChat als IRC Client über das Relay nutzen möchte
und der genutzte Server heisst "relay" und das entsprechende Passwort "geheim",
kann man das Passwort mit folgendem Befehl setzen:
----
/set irc.server.relay.password "freenode:secret"
----
[[relay_weechat_protocol]]
==== WeeChat Protokoll
@@ -3369,6 +3284,29 @@ websocket = new WebSocket("ws://server.com:9000/weechat");
Der Port (im Beispiel: 9000) ist der Port der in der Relay Erweiterung angegeben wurde.
Die URI muss immer auf "/weechat" enden (_irc_ und _weechat_ Protokoll).
[[relay_unix_socket]]
==== UNIX Domain Sockets
Wenn man die Protokolloption "unix" mit dem Befehl `/relay add` nutzt, kann
man jedes Protokoll zum Lauschen an einem UNIX Domain Socket nutzen, indem
man einen Pfad angibt. Zum Beispiel:
----
/relay add unix.weechat %h/relay_socket
----
Das erlaubt es Clients sich mittels dem weechat Protokoll mit
_~/.weechat/relay_socket_ zu verbinden. Dies ist besonders zu
empfehlen um SSH forwarding für relay Clients zu nutzen, falls
andere Ports nicht geöffnet werden können. OpenSSH nutzen:
----
$ ssh -L 9000:.weechat/relay_socket user@hostname
----
Dies leitet lokale relay Client Verbindungen von Port 9000 um, zu
einer WeeChat Instanz welche auf "hostname" hört.
[[relay_commands]]
==== Befehle
@@ -3591,6 +3529,117 @@ Optionen:
include::autogen/user/php_options.adoc[]
[[spell_plugin]]
=== Spell
Mit der Spell Erweiterung findet eine Rechtschreibprüfung Einzug in WeeChat.
Dabei ist es möglich mehrere Wörterbücher für einen Buffer zu nutzen.
Die Rechtschreibprüfung ist standardmäßig deaktiviert und kann mittels dem
Tastenbefehl [Alt+s] umgeschaltet werden.
[[spell_dictionaries]]
==== Wörterbücher
Um die Rechtschreibprüfung nutzen zu können muss vorab ein Wörterbuch definiert werden,
welches genutzt werden soll. Dies kann entweder global oder per Buffer geschehen.
Verschiedene Wörterbücher können parallel verwendet werden. WeeChat gleicht dann
die Wörter mit allen Wörterbüchern ab,
Um zum Beispiel Englisch und Deutsch zu nutzen:
----
/set spell.check.default_dict "en,de"
----
Es ist möglich ein anderes Wörterbuch für einen speziellen Buffer zu verwenden, zum
Beispiel in einem französischen Channel:
----
/spell setdict fr
----
Um einer Gruppe von Buffern das selbe Wörterbuch zuzuordnen, zum Beispiel das
deutsche Wörterbuch für alle Channels auf dem freenode IRC Server:
----
/set spell.dict.irc.freenode de
----
Für weitere Informationen, siehe den Befehl <<command_spell_spell,/spell>>.
[[spell_speller_options]]
==== Optionen für Rechtschreibprüfung
Optionen für die Rechtschreibprüfung können definiert werden indem man die entsprechende
Option in die Sektion "option" der Aspell-Konfiguration hinzufügt.
Den Name der Option findet man in der ASpell-Konfigurationsdatei. Eine Auflistung aller
möglichen Optionen erhält man durch:
----
$ aspell config
----
Um zum Beispiel die Option "ignore-case" einzuschalten:
----
/set spell.option.ignore-case "true"
----
[[spell_suggestions]]
==== Rechtschreibkorrektur
Eine Rechtschreibkorrektur wird in der Bar-Item "spell_suggest" angezeigt.
Die Anzahl an Vorschlägen, für die Rechtschreibkorrektur, kann mit der Option
_spell.check.suggestions_ bestimmt werden.
Um die Rechtschreibkorrektur zu aktivieren, muss für die Option _spell.check.suggestions_
ein Wert ≥ 0 eingestellt werden und das Bar-Item "spell_suggest" zu einer Bar, zum
Beispiel _status_, hinzufügt werden.
Beispiel der Rechtschreibkorrektur, mit einem deutschen Wörterbuch (`de`):
....
│[12:55] [6] [irc/freenode] 3:#test(+n){4} [dies,Diebs,Viehs] │
│[@Flashy] diehs █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
Beispiel der Rechtschreibkorrektur, mit zwei Wörterbüchern (`en,de`):
....
│[12:55] [6] [irc/freenode] 3:#test(+n){4} [print,prone,prune/Prinz] │
│[@Flashy] prinr █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[spell_commands]]
==== Befehle
include::autogen/user/spell_commands.adoc[]
[[spell_options]]
==== Optionen
Sektionen in Datei _spell.conf_:
[width="100%",cols="3m,6m,16",options="header"]
|===
| Sektion | Steuerbefehl | Beschreibung
| color | /set spell.color.* | Farben.
| check | /set spell.check.* | Optionen um Einstellungen an der Rechtschreibprüfung vorzunehmen.
| dict | <<command_spell_spell,/spell setdict>> +
/set spell.dict.* | Wörterbücher für Buffer (Optionen können in Sektion hinzugefügt/entfernt werden).
| look | /set spell.look.* | Erscheinungsbild.
| option | /set spell.option.* | <<spell_speller_options,Optionen für Rechtschreibprüfung>> (Optionen können in Sektion hinzugefügt/entfernt werden).
|===
Optionen:
include::autogen/user/spell_options.adoc[]
[[trigger_plugin]]
=== Trigger
@@ -3647,7 +3696,7 @@ Liste der standardmäßigen Trigger:
Ein Trigger hat folgende Optionen (Benennung ist
`trigger.trigger.<name>.<option>`):
[width="100%",cols="2m,2,10",options="header"]
[width="100%",cols="2m,3,10",options="header"]
|===
| Option | Wert | Beschreibung
@@ -3655,7 +3704,7 @@ Ein Trigger hat folgende Optionen (Benennung ist
Wenn die Option auf `off` gesetzt ist, dann ist der Trigger deaktiviert und die Ausführung ist gestoppt.
| hook | `signal`, `hsignal`, `modifier`, `line`, `print`, `command`,
`command_run`, `timer`, `config`, `focus` |
`command_run`, `timer`, `config`, `focus`, `info`, `info_hashtable` |
Der hook welcher durch Trigger genutzt werden soll. Für weitere Informationen siehe
link:weechat_plugin_api.en.html#hooks[Anleitung für API Erweiterung / Hooks] (Englisch).
@@ -3708,7 +3757,8 @@ abgearbeitet:
. Überprüfung von Bedingungen; falls unwahr, beenden
. ersetze Text mittels erweitertem regulärer POSIX Ausdruck (sofern im Trigger definiert)
. ein oder mehrere Befehle werden ausgeführt (sofern im Trigger definiert)
. Beendigung mit einem Rückgabewert (ausgenommen sind die Hooks _modifier_ und _focus_)
. Beendigung mit einem Rückgabewert (ausgenommen sind die Hooks _modifier_,
_line_, _focus_, _info_ und _info_hashtable_)
. Aktion welche nach der Abarbeitung des Triggers ausgeführt werden soll (falls der Wert abweichend von `none` sein sollte).
[[trigger_hook_arguments]]
@@ -3805,6 +3855,20 @@ ein Semikolon getrennt.
3. ... |
`+buffer_nicklist+` |
link:weechat_plugin_api.en.html#_hook_focus[hook_focus] (Englisch)
| info |
1. info name (Priorität erlaubt) (erforderlich) +
2. info name (Priorität erlaubt) +
3. ... |
`+my_info+` |
link:weechat_plugin_api.en.html#_hook_info[hook_info] (Englisch)
| info_hashtable |
1. info name (Priorität erlaubt) (erforderlich) +
2. info name (Priorität erlaubt) +
3. ... |
`+my_info+` |
link:weechat_plugin_api.en.html#_hook_info_hashtable[hook_info_hashtable] (Englisch)
|===
[[trigger_conditions]]
@@ -3841,17 +3905,19 @@ welche abhängig von dem genutzten Hook ist:
[width="100%",cols="2,3,7",options="header"]
|===
| Hook | Standard-Variable | Update allowed ^(1)^
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
| timer | tg_remaining_calls |
| config | tg_value |
| focus | |
| Hook | Standard-Variable | Update allowed ^(1)^
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
| timer | tg_remaining_calls |
| config | tg_value |
| focus | |
| info | tg_info | tg_info
| info_hashtable | | alle Variablen die in der hashtable empfangen wurden
|===
[NOTE]
@@ -3870,12 +3936,12 @@ Matching groups können in "replace" genutzt werden:
* `+${re:0}+` bis `+${re:99}+`: `+${re:0}+` um alles zu matchen, `+${re:1}+` bis
`+${re:99}+` um Gruppen zu fangen
* `+${re:+++}+`: der letzte match (mit der höchsten Nummer)
* `+${re:+}+`: der letzte match (mit der höchsten Nummer)
* `+${hide:c,${re:N}}+`: match "N" mit allen Zeichen die durch "c" ersetzt wurden
(Beispiel: `+${hide:*,${re:2}}+` ist die group #2 mit allen Zeichen die durch
`+*+` ersetzt wurden).
Beispiel: nutzte Fettschrift zwischen dem Zeichen "*":
Beispiel: nutzte Fettschrift zwischen dem Zeichen `+*+`:
----
/\*([^ ]+)\*/*${color:bold}${re:1}${color:-bold}*/
@@ -4153,6 +4219,32 @@ Der Callback von "focus" legt folgende Variablen in der Hashtable an:
Das Hashtable enthält alle Schlüssel/Werte (Typ: string/string).
[[trigger_data_info]]
===== Info
Der Callback von "info" legt folgende Variablen in der Hashtable an:
[width="100%",cols="3m,2,14",options="header"]
|===
| Variable | Typ | Beschreibung
| tg_info_name | string | Name der Information.
| tg_arguments | string | Argumente.
| tg_info | string | ein leerer String (die Information die zurückgegeben werden soll).
|===
[[trigger_data_info_hashtable]]
===== Info_hashtable
Der Callback von "info_hashtable" legt folgende Variablen in der Hashtable an:
[width="100%",cols="3m,2,14",options="header"]
|===
| Variable | Typ | Beschreibung
| tg_info_name | string | Name der Information.
|===
Das Hashtable enthält alle Schlüssel/Werte (Typ: string/string).
[[trigger_examples]]
==== Beispiele
+3 -3
View File
@@ -90,7 +90,6 @@ PLUGIN_LIST = {
'sec': 'o',
'weechat': 'co',
'alias': '',
'aspell': 'o',
'buflist': 'co',
'charset': 'o',
'exec': 'o',
@@ -108,14 +107,13 @@ PLUGIN_LIST = {
'guile': 'o',
'javascript': 'o',
'php': 'o',
'spell': 'o',
'trigger': 'o',
'xfer': 'co',
}
# options to ignore
IGNORE_OPTIONS = (
r'aspell\.dict\..*',
r'aspell\.option\..*',
r'charset\.decode\..*',
r'charset\.encode\..*',
r'irc\.msgbuffer\..*',
@@ -126,6 +124,8 @@ IGNORE_OPTIONS = (
r'logger\.level\..*',
r'logger\.mask\..*',
r'relay\.port\..*',
r'spell\.dict\..*',
r'spell\.option\..*',
r'trigger\.trigger\..*',
r'weechat\.palette\..*',
r'weechat\.proxy\..*',
+8 -3
View File
@@ -19,11 +19,16 @@ h1,h2,h3,h4,h5 {
line-height: normal;
font-size: .95em;
}
.keyseq kbd {
font-size: .7em;
kbd {
font-size: .9em;
}
.keyseq {
margin-left: .2em;
margin-right: .2em;
}
.tableblock kbd {
font-size: .7438em;
margin-top: .2em;
margin-bottom: .2em;
}
.hex {
padding: 0 .2em;
+3
View File
@@ -25,6 +25,7 @@ if(ENABLE_MAN)
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.en.adoc
@@ -41,6 +42,7 @@ if(ENABLE_MAN)
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.en.adoc
@@ -64,6 +66,7 @@ if(ENABLE_DOC)
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.en.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.en.adoc
${AUTOGEN_USER}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_user.en.html"
+10 -6
View File
@@ -23,7 +23,9 @@ docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
docinfo.html \
weechat.1.en.adoc \
weechat-headless.1.en.adoc \
cmdline_options.en.adoc \
cmdline_options_debug.en.adoc \
weechat_user.en.adoc \
weechat_plugin_api.en.adoc \
weechat_scripting.en.adoc \
@@ -36,7 +38,8 @@ EXTRA_DIST = CMakeLists.txt \
$(wildcard autogen/plugin_api/*.adoc)
if MAN
man_targets = weechat.1
man_targets = weechat.1 \
weechat-headless.1
man_install = install-man
man_uninstall = uninstall-man
endif
@@ -54,12 +57,14 @@ if DOC
endif
all-local: $(man_targets) $(doc_targets)
# man page
weechat.1: weechat.1.en.adoc cmdline_options.en.adoc
# man pages
weechat.1: weechat.1.en.adoc cmdline_options.en.adoc cmdline_options_debug.en.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/en/weechat.1.en.adoc
weechat-headless.1: weechat-headless.1.en.adoc cmdline_options.en.adoc cmdline_options_debug.en.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/en/weechat-headless.1.en.adoc
# user's guide
weechat_user.en.html: weechat_user.en.adoc cmdline_options.en.adoc $(wildcard autogen/user/*.adoc) $(abs_top_srcdir)/doc/docinfo.html
weechat_user.en.html: weechat_user.en.adoc cmdline_options.en.adoc cmdline_options_debug.en.adoc $(wildcard autogen/user/*.adoc) $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_user.en.html $(abs_top_srcdir)/doc/en/weechat_user.en.adoc
# plugin API reference
@@ -97,7 +102,6 @@ install-data-hook: $(man_install) $(doc_install)
install-man:
$(mkinstalldirs) $(DESTDIR)$(mandir)/man1/
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/man1/
(cd '$(DESTDIR)$(mandir)/man1/' && $(RM) weechat-headless.1 && $(LN_S) weechat.1 weechat-headless.1)
install-doc:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
@@ -119,4 +123,4 @@ uninstall-doc:
# clean
clean-local:
-$(RM) weechat.1 weechat_*.html
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
+4 -4
View File
@@ -10,10 +10,6 @@
| alias | alias_value | value of alias
| aspell | aspell_dicts | list of aspell installed dictionaries
| aspell | aspell_langs | list of all languages supported by aspell
| exec | exec_commands_ids | ids (numbers and names) of executed commands
| fset | fset_options | configuration files, sections, options and words of options
@@ -86,6 +82,10 @@
| script | script_tags | tags of scripts in repository
| spell | spell_dicts | list of installed dictionaries
| spell | spell_langs | list of all languages supported
| tcl | tcl_script | list of scripts
| trigger | trigger_hook_arguments | default arguments for a hook
+2 -1
View File
@@ -243,6 +243,7 @@ _nick_first_tried_   (integer) +
_nick_alternate_number_   (integer) +
_nick_   (string) +
_nick_modes_   (string) +
_host_   (string) +
_checking_cap_ls_   (integer) +
_cap_ls_   (hashtable) +
_checking_cap_list_   (integer) +
@@ -429,7 +430,7 @@ _tags_   (string) +
_requirements_   (string) +
_min_weechat_   (string) +
_max_weechat_   (string) +
_md5sum_   (string) +
_sha512sum_   (string) +
_url_   (string) +
_popularity_   (integer) +
_date_added_   (time) +
+2 -2
View File
@@ -6,8 +6,6 @@
|===
| Plugin | Name | Description | Arguments
| aspell | aspell_dict | comma-separated list of dictionaries used in buffer | buffer pointer ("0x12345678") or buffer full name ("irc.freenode.#weechat")
| fifo | fifo_filename | name of FIFO pipe | -
| guile | guile_eval | evaluation of source code | source code to execute
@@ -74,6 +72,8 @@
| 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")
| tcl | tcl_eval | evaluation of source code | source code to execute
| tcl | tcl_interpreter | name of the interpreter used | -
@@ -6,7 +6,7 @@
. logger (14000)
. exec (13000)
. trigger (12000)
. aspell (11000)
. spell (11000)
. alias (10000)
. buflist (9000)
. fifo (8000)
-32
View File
@@ -1,32 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_aspell_aspell]]
* `+aspell+`: aspell plugin configuration
----
/aspell enable|disable|toggle
listdict
setdict <dict>[,<dict>...]
deldict
addword [<dict>] <word>
enable: enable aspell
disable: disable aspell
toggle: toggle aspell
listdict: show installed dictionaries
setdict: set dictionary for current buffer (multiple dictionaries can be separated by a comma)
deldict: delete dictionary used on current buffer
addword: add a word in personal aspell dictionary
Input line beginning with a '/' is not checked, except for some commands (see /set aspell.check.commands).
To enable aspell on all buffers, use option "default_dict", then enable aspell, for example:
/set aspell.check.default_dict "en"
/aspell enable
To display a list of suggestions in a bar, use item "aspell_suggest".
Default key to toggle aspell is alt-s.
----
+1 -1
View File
@@ -399,7 +399,7 @@
** default value: `+""+`
* [[option_fset.format.option2]] *fset.format.option2*
** description: pass:none[second format of each line with an option which is not marked not the selected one (note: content is evaluated, see /help fset); an empty string uses the default format ("${marked} ${name} ${type} ${value2}"), which is without evaluation of string and then much faster; formats can be switched with key ctrl+X]
** description: pass:none[second format of each line with an option which is not marked nor the selected one (note: content is evaluated, see /help fset); an empty string uses the default format ("${marked} ${name} ${type} ${value2}"), which is without evaluation of string and then much faster; formats can be switched with key ctrl+X]
** type: string
** values: any string
** default value: `+"${marked} ${name} ${type} ${value2}${newline} ${empty_name} ${_default_value}${color:darkgray} -- ${min}..${max}${newline} ${empty_name} ${description}"+`
+1 -1
View File
@@ -741,7 +741,7 @@
** default value: `+2048+`
* [[option_irc.server_default.ssl_fingerprint]] *irc.server_default.ssl_fingerprint*
** description: pass:none[fingerprint of certificate which is trusted and accepted for the server; only hexadecimal digits are allowed (0-9, a-f): 64 chars for SHA-512, 32 chars for SHA-256, 20 chars for SHA-1 (insecure, not recommended); many fingerprints can be separated by commas; if this option is set, the other checks on certificates are NOT performed (option "ssl_verify") (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[fingerprint of certificate which is trusted and accepted for the server; only hexadecimal digits are allowed (0-9, a-f): 128 chars for SHA-512, 64 chars for SHA-256, 40 chars for SHA-1 (insecure, not recommended); many fingerprints can be separated by commas; if this option is set, the other checks on certificates are NOT performed (option "ssl_verify") (note: content is 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: `+""+`
+7 -3
View File
@@ -7,7 +7,7 @@
----
/relay list|listfull|listrelay
add <name> <port>
add <name> <port>|<path>
del|start|restart|stop <name>
raw
sslcertkey
@@ -15,20 +15,22 @@
list: list relay clients (only active relays)
listfull: list relay clients (verbose, all relays)
listrelay: list relays (name and port)
add: add a relay (listen on a port)
add: add a relay (listen on a port/path)
del: remove a relay (clients remain connected)
start: listen on port
restart: close the server socket and listen again on port (clients remain connected)
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)
raw: open buffer with raw Relay data
sslcertkey: set SSL certificate/key using path in option relay.network.ssl_cert_key
Relay name is: [ipv4.][ipv6.][ssl.]<protocol.name>
Relay name is: [ipv4.][ipv6.][ssl.]<protocol.name> or unix.[ssl.]<protocol.name>
ipv4: force use of IPv4
ipv6: force use of IPv6
ssl: enable SSL
unix: use UNIX domain socket
protocol.name: protocol and name to relay:
- protocol "irc": name is the server to share (optional, if not given, the server name must be sent by client in command "PASS", with format: "PASS server:password")
- protocol "weechat" (name is not used)
@@ -55,4 +57,6 @@ Examples:
/relay add ipv6.ssl.weechat 9001
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
----
+6
View File
@@ -181,3 +181,9 @@
** type: string
** values: any string
** default value: `+""+`
* [[option_relay.weechat.commands]] *relay.weechat.commands*
** description: pass:none[comma-separated list of commands allowed/denied when input data (text or command) is received from a client; "*" means any command, a name beginning with "!" is a negative value to prevent a command from being executed, wildcard "*" is allowed in names; this option should be set if the relay client is not safe (someone could use it to run commands); for example "*,!exec,!quit" allows any command except /exec and /quit]
** type: string
** values: any string
** default value: `+""+`
+32
View File
@@ -0,0 +1,32 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_spell_spell]]
* `+spell+`: spell plugin configuration
----
/spell enable|disable|toggle
listdict
setdict <dict>[,<dict>...]
deldict
addword [<dict>] <word>
enable: enable spell checker
disable: disable spell checker
toggle: toggle spell checker
listdict: show installed dictionaries
setdict: set dictionary for current buffer (multiple dictionaries can be separated by a comma)
deldict: delete dictionary used on current buffer
addword: add a word in personal dictionary
Input line beginning with a '/' is not checked, except for some commands (see /set spell.check.commands).
To enable spell checker on all buffers, use option "default_dict", then enable spell checker, for example:
/set spell.check.default_dict "en"
/spell enable
To display a list of suggestions in a bar, use item "spell_suggest".
Default key to toggle spell checker is alt-s.
----
@@ -2,80 +2,80 @@
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
* [[option_aspell.check.commands]] *aspell.check.commands*
* [[option_spell.check.commands]] *spell.check.commands*
** description: pass:none[comma separated list of commands for which spell checking is enabled (spell checking is disabled for all other commands)]
** type: string
** values: any string
** default value: `+"ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"+`
* [[option_aspell.check.default_dict]] *aspell.check.default_dict*
** description: pass:none[default dictionary (or comma separated list of dictionaries) to use when buffer has no dictionary defined (leave blank to disable aspell on buffers for which you didn't explicitly enabled it)]
* [[option_spell.check.default_dict]] *spell.check.default_dict*
** description: pass:none[default dictionary (or comma separated list of dictionaries) to use when buffer has no dictionary defined (leave blank to disable spell checker on buffers for which you didn't explicitly enabled it)]
** type: string
** values: any string
** default value: `+""+`
* [[option_aspell.check.during_search]] *aspell.check.during_search*
* [[option_spell.check.during_search]] *spell.check.during_search*
** description: pass:none[check words during text search in buffer]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_aspell.check.enabled]] *aspell.check.enabled*
** description: pass:none[enable aspell check for command line]
* [[option_spell.check.enabled]] *spell.check.enabled*
** description: pass:none[enable spell checker for command line]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_aspell.check.real_time]] *aspell.check.real_time*
* [[option_spell.check.real_time]] *spell.check.real_time*
** description: pass:none[real-time spell checking of words (slower, disabled by default: words are checked only if there's delimiter after)]
** type: boolean
** values: on, off
** default value: `+off+`
* [[option_aspell.check.suggestions]] *aspell.check.suggestions*
** description: pass:none[number of suggestions to display in bar item "aspell_suggest" for each dictionary set in buffer (-1 = disable suggestions, 0 = display all possible suggestions in all languages)]
* [[option_spell.check.suggestions]] *spell.check.suggestions*
** description: pass:none[number of suggestions to display in bar item "spell_suggest" for each dictionary set in buffer (-1 = disable suggestions, 0 = display all possible suggestions in all languages)]
** type: integer
** values: -1 .. 2147483647
** default value: `+-1+`
* [[option_aspell.check.word_min_length]] *aspell.check.word_min_length*
* [[option_spell.check.word_min_length]] *spell.check.word_min_length*
** description: pass:none[minimum length for a word to be spell checked (use 0 to check all words)]
** type: integer
** values: 0 .. 2147483647
** default value: `+2+`
* [[option_aspell.color.misspelled]] *aspell.color.misspelled*
* [[option_spell.color.misspelled]] *spell.color.misspelled*
** description: pass:none[text color for misspelled words (input bar)]
** 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: `+lightred+`
* [[option_aspell.color.suggestion]] *aspell.color.suggestion*
** description: pass:none[text color for suggestion on a misspelled word in bar item "aspell_suggest"]
* [[option_spell.color.suggestion]] *spell.color.suggestion*
** description: pass:none[text color for suggestion on a misspelled word in bar item "spell_suggest"]
** 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: `+default+`
* [[option_aspell.color.suggestion_delimiter_dict]] *aspell.color.suggestion_delimiter_dict*
** description: pass:none[text color for delimiters displayed between two dictionaries in bar item "aspell_suggest"]
* [[option_spell.color.suggestion_delimiter_dict]] *spell.color.suggestion_delimiter_dict*
** description: pass:none[text color for delimiters displayed between two dictionaries in bar item "spell_suggest"]
** 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: `+cyan+`
* [[option_aspell.color.suggestion_delimiter_word]] *aspell.color.suggestion_delimiter_word*
** description: pass:none[text color for delimiters displayed between two words in bar item "aspell_suggest"]
* [[option_spell.color.suggestion_delimiter_word]] *spell.color.suggestion_delimiter_word*
** description: pass:none[text color for delimiters displayed between two words in bar item "spell_suggest"]
** 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: `+cyan+`
* [[option_aspell.look.suggestion_delimiter_dict]] *aspell.look.suggestion_delimiter_dict*
** description: pass:none[delimiter displayed between two dictionaries in bar item "aspell_suggest"]
* [[option_spell.look.suggestion_delimiter_dict]] *spell.look.suggestion_delimiter_dict*
** description: pass:none[delimiter displayed between two dictionaries in bar item "spell_suggest"]
** type: string
** values: any string
** default value: `+" / "+`
* [[option_aspell.look.suggestion_delimiter_word]] *aspell.look.suggestion_delimiter_word*
** description: pass:none[delimiter displayed between two words in bar item "aspell_suggest"]
* [[option_spell.look.suggestion_delimiter_word]] *spell.look.suggestion_delimiter_word*
** description: pass:none[delimiter displayed between two words in bar item "spell_suggest"]
** type: string
** values: any string
** default value: `+","+`
+4 -2
View File
@@ -27,7 +27,7 @@ listdefault: list default triggers
addoff: add a trigger (disabled)
addreplace: add or replace an existing trigger
name: name of trigger
hook: signal, hsignal, modifier, line, print, command, command_run, timer, config, focus
hook: signal, hsignal, modifier, line, print, command, command_run, timer, config, focus, info, info_hashtable
arguments: arguments for the hook, depending on hook (separated by semicolons):
signal: name(s) of signal (required)
hsignal: name(s) of hsignal (required)
@@ -39,6 +39,8 @@ listdefault: list default triggers
timer: interval (required), align on second, max calls
config: name(s) of option (required)
focus: name(s) of area (required)
info: name(s) of info (required)
info_hashtable: name(s) of info (required)
conditions: evaluated conditions for the trigger
regex: one or more regular expressions to replace strings in variables
command: command to execute (many commands can be separated by ";")
@@ -70,7 +72,7 @@ When a trigger callback is called, following actions are performed, in this orde
1. check conditions; if false, exit
2. replace text using POSIX extended regular expression(s) (if defined in trigger)
3. execute command(s) (if defined in trigger)
4. exit with a return code (except for modifier, line and focus)
4. exit with a return code (except for modifier, line, focus, info and info_hashtable)
5. perform post action
Examples (you can also look at default triggers with /trigger listdefault):
+33 -27
View File
@@ -351,33 +351,34 @@ Examples (conditions):
----
/filter list
enable|disable|toggle [<name>|@]
add <name> <buffer>[,<buffer>...] <tags> <regex>
add|addreplace <name> <buffer>[,<buffer>...] <tags> <regex>
rename <name> <new_name>
del <name>|-all
list: list all filters
enable: enable filters (filters are enabled by default)
disable: disable filters
toggle: toggle filters
name: filter name ("@" = enable/disable all filters in current buffer)
add: add a filter
rename: rename a 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")
- "*" means all buffers
- a name starting with '!' is excluded
- wildcard "*" is allowed
list: list all filters
enable: enable filters (filters are enabled by default)
disable: disable filters
toggle: toggle filters
name: filter name ("@" = enable/disable all filters in current buffer)
add: add a filter
addreplace: add or replace an existing filter
rename: rename a 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")
- "*" means all buffers
- a name starting with '!' is excluded
- wildcard "*" is allowed
tags: comma separated list of tags, for example "irc_join,irc_part,irc_quit"
- logical "and": use "+" between tags (for example: "nick_toto+irc_action")
- wildcard "*" is allowed
- if tag starts with '!', then it is excluded and must NOT be in message
- logical "and": use "+" between tags (for example: "nick_toto+irc_action")
- wildcard "*" is allowed
- if tag starts with '!', then it is excluded and must NOT be in message
regex: POSIX extended regular expression to search in line
- use '\t' to separate prefix from message, special chars like '|' must be escaped: '\|'
- if regex starts with '!', then matching result is reversed (use '\!' to start with '!')
- two regular expressions are created: one for prefix and one for message
- regex are case insensitive, they can start by "(?-i)" to become case sensitive
- use '\t' to separate prefix from message, special chars like '|' must be escaped: '\|'
- if regex starts with '!', then matching result is reversed (use '\!' to start with '!')
- two regular expressions are created: one for prefix and one for message
- regex are case insensitive, they can start by "(?-i)" to become case sensitive
The default key alt+'=' toggles filtering on/off globally and alt+'-' toggles filtering on/off in the current buffer.
@@ -754,13 +755,18 @@ Without argument, all files (WeeChat and plugins) are reloaded.
* `+repeat+`: execute a command several times
----
/repeat [-interval <delay>] <count> <command>
/repeat [-interval <delay>[<unit>]] <count> <command>
delay: delay between execution of commands (in milliseconds)
delay: delay between execution of commands
unit: optional, values are:
ms: milliseconds
s: seconds (default)
m: minutes
h: hours
count: number of times to execute command
command: command to execute (a '/' is automatically added if not found at beginning of command)
command: command to execute (or text to send to buffer if command does not start with '/')
All commands are executed on buffer where this command was issued.
Note: the command is executed on buffer where /repeat was executed (if the buffer does not exist any more, the command is not executed).
Example:
scroll 2 pages up:
@@ -946,7 +952,7 @@ The default alias /v can be used to execute this command on all buffers (otherwi
h: hours
command: command to execute (or text to send to buffer if command does not start with '/')
Note: command is executed on buffer where /wait was executed (if buffer is not found (for example if it has been closed before execution of command), then command is executed on WeeChat core buffer).
Note: the command is executed on buffer where /wait was executed (if the buffer does not exist any more, the command is not executed).
Examples:
join channel in 10 seconds:
+13 -1
View File
@@ -596,6 +596,12 @@
** values: any string
** default value: `+"%H:%M:%S"+`
* [[option_weechat.look.buffer_time_same]] *weechat.look.buffer_time_same*
** description: pass:none[time displayed for a message with same time as previous message: use a space " " to hide time, another string to display this string instead of time, or an empty string to disable feature (display time) (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)]
** type: string
** values: any string
** default value: `+""+`
* [[option_weechat.look.color_basic_force_bold]] *weechat.look.color_basic_force_bold*
** description: pass:none[force "bold" attribute for light colors and "darkgray" in basic colors (this option is disabled by default: bold is used only if terminal has less than 16 colors)]
** type: boolean
@@ -1047,7 +1053,13 @@
** default value: `+"<--"+`
* [[option_weechat.look.prefix_same_nick]] *weechat.look.prefix_same_nick*
** description: pass:none[prefix displayed for a message with same nick as previous message: use a space " " to hide prefix, another string to display this string instead of prefix, or an empty string to disable feature (display prefix)]
** description: pass:none[prefix displayed for a message with same nick as previous but not next message: use a space " " to hide prefix, another string to display this string instead of prefix, or an empty string to disable feature (display prefix)]
** type: string
** values: any string
** default value: `+""+`
* [[option_weechat.look.prefix_same_nick_middle]] *weechat.look.prefix_same_nick_middle*
** description: pass:none[prefix displayed for a message with same nick as previous and next message: use a space " " to hide prefix, another string to display this string instead of prefix, or an empty string to disable feature (display prefix)]
** type: string
** values: any string
** default value: `+""+`
+7 -1
View File
@@ -164,7 +164,13 @@
** values: on, off
** default value: `+on+`
* [[option_xfer.network.speed_limit]] *xfer.network.speed_limit*
* [[option_xfer.network.speed_limit_recv]] *xfer.network.speed_limit_recv*
** description: pass:none[speed limit for receiving files, in kilo-bytes by second (0 means no limit)]
** type: integer
** values: 0 .. 2147483647
** default value: `+0+`
* [[option_xfer.network.speed_limit_send]] *xfer.network.speed_limit_send*
** description: pass:none[speed limit for sending files, in kilo-bytes by second (0 means no limit)]
** type: integer
** values: 0 .. 2147483647
+13
View File
@@ -0,0 +1,13 @@
*--no-dlclose*::
Do not call the function dlclose after plugins are unloaded.
This is useful with tools like Valgrind to display stack for unloaded
plugins.
*--no-gnutls*::
Do not call the init and deinit functions of GnuTLS library.
This is useful with tools like Valgrind and electric-fence, to prevent
GnuTLS memory errors.
*--no-gcrypt*::
Do not call the init and deinit functions of Gcrypt library.
This is useful with tools like Valgrind, to prevent Gcrypt memory errors.
+3 -3
View File
@@ -10,9 +10,6 @@ $HOME/.weechat/sec.conf::
$HOME/.weechat/alias.conf::
configuration file for _alias_ plugin
$HOME/.weechat/aspell.conf::
configuration file for _aspell_ plugin
$HOME/.weechat/buflist.conf::
configuration file for _buflist_ plugin
@@ -61,6 +58,9 @@ $HOME/.weechat/ruby.conf::
$HOME/.weechat/script.conf::
configuration file for _script_ plugin
$HOME/.weechat/spell.conf::
configuration file for _spell_ plugin
$HOME/.weechat/tcl.conf::
configuration file for _tcl_ plugin
+7 -1
View File
@@ -13,7 +13,7 @@ weechat-headless - the extensible chat client (headless version)
== SYNOPSIS
[verse]
*weechat-headless* [-a|--no-connect] [--daemon] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [plugin:option...]
*weechat-headless* [-a|--no-connect] [--daemon] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [debug-option...] [plugin:option...]
*weechat-headless* [-c|--colors]
*weechat-headless* [-h|--help]
*weechat-headless* [-l|--license]
@@ -32,6 +32,12 @@ It can be used for tests or to daemonize WeeChat with the option "--daemon".
include::cmdline_options.en.adoc[]
== DEBUG OPTIONS
*WARNING:* these options are for debug purposes only, *DO NOT USE IN PRODUCTION!*
include::cmdline_options_debug.en.adoc[]
== PLUGIN OPTIONS
include::man_plugin_options.en.adoc[]
+7 -1
View File
@@ -13,7 +13,7 @@ weechat - the extensible chat client
== SYNOPSIS
[verse]
*weechat* [-a|--no-connect] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [plugin:option...]
*weechat* [-a|--no-connect] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <plugins>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [debug-option...] [plugin:option...]
*weechat* [-c|--colors]
*weechat* [-h|--help]
*weechat* [-l|--license]
@@ -29,6 +29,12 @@ It is highly customizable and extensible with scripts.
include::cmdline_options.en.adoc[]
== DEBUG OPTIONS
*WARNING:* these options are for debug purposes only, *DO NOT USE IN PRODUCTION!*
include::cmdline_options_debug.en.adoc[]
== PLUGIN OPTIONS
include::man_plugin_options.en.adoc[]
+11 -10
View File
@@ -70,7 +70,6 @@ The main WeeChat directories are:
|          normal/ | Curses interface.
|    plugins/ | Plugin and scripting API.
|       alias/ | Alias plugin.
|       aspell/ | Aspell plugin.
|       buflist/ | Buflist plugin.
|       charset/ | Charset plugin.
|       exec/ | Exec plugin.
@@ -87,6 +86,7 @@ The main WeeChat directories are:
|       relay/ | Relay plugin (irc proxy + relay for remote interfaces).
|       ruby/ | Ruby scripting API.
|       script/ | Script manager.
|       spell/ | Spell plugin.
|       tcl/ | Tcl scripting API.
|       trigger/ | Trigger plugin.
|       xfer/ | Xfer plugin (IRC DCC file/chat).
@@ -223,14 +223,14 @@ WeeChat "core" is located in following directories:
|       alias-completion.c | Alias completions.
|       alias-config.c | Alias config options (file alias.conf).
|       alias-info.c | Alias info/infolists/hdata.
|    aspell/ | Aspell plugin.
|       weechat-aspell.c | Main aspell functions.
|       weechat-aspell-bar-item.c | Aspell bar items.
|       weechat-aspell-command.c | Aspell commands.
|       weechat-aspell-completion.c | Aspell completions.
|       weechat-aspell-config.c | Aspell config options (file aspell.conf).
|       weechat-aspell-info.c | Aspell info/infolists/hdata.
|       weechat-aspell-speller.c | Spellers management.
|    spell/ | Spell checker plugin.
|       spell.c | Main spell checker functions.
|       spell-bar-item.c | Spell checker bar items.
|       spell-command.c | Spell checker commands.
|       spell-completion.c | Spell checker completions.
|       spell-config.c | Spell checker config options (file spell.conf).
|       spell-info.c | Spell checker info/infolists/hdata.
|       spell-speller.c | Spellers management.
|    buflist/ | Buflist plugin.
|       buflist.c | Main buflist functions.
|       buflist-bar-item.c | Buflist bar items.
@@ -419,7 +419,8 @@ Documentation files:
|    docinfo.html | Asciidoctor style.
|    docgen.py | Python script to build files in _autogen/_ directory (see below).
|    XX/ | Documentation for language XX (languages: en, fr, de, it, ...).
|       cmdline_options.XX.adoc | Command-line options (file included in man page and user's guide).
|       cmdline_options.XX.adoc | Command-line general options (file included in man pages and user's guide).
|       cmdline_options_debug.XX.adoc | Command-line debug options (file included in man pages and user's guide).
|       weechat.1.XX.adoc | Man page (`man weechat`).
|       weechat_dev.XX.adoc | link:weechat_dev.en.html[Developer's guide] (this document).
|       weechat_faq.XX.adoc | link:weechat_faq.en.html[FAQ].
+14 -10
View File
@@ -209,8 +209,8 @@ To move bar to bottom:
To scroll the bar: if mouse is enabled (key: kbd:[Alt+m]), you can scroll the
bar with your mouse wheel.
Default keys to scroll _buflist_ bar are kbd:[F1], kbd:[F2], kbd:[Alt+F1]
and kbd:[Alt+F2].
Default keys to scroll _buflist_ bar are kbd:[F1] (or kbd:[Ctrl+F1]), kbd:[F2]
(or kbd:[Ctrl+F2]), kbd:[Alt+F1] and kbd:[Alt+F2].
For script _buffers.pl_, you can define keys, similar to the existing keys to
scroll nicklist. +
@@ -314,7 +314,7 @@ any bar:
[[terminal_copy_paste]]
=== How can I copy/paste text without pasting nicklist?
With WeeChat ≥ 1.0, you can use the bare display (default key: kbd:[Alt+l]),
With WeeChat ≥ 1.0, you can use the bare display (default key: kbd:[Alt+l] (`L`)),
which will show just the contents of the currently selected window,
without any formatting.
@@ -331,7 +331,7 @@ Another solution is to move nicklist to top or bottom, for example:
[[urls]]
=== How can I click on long URLs (more than one line)?
With WeeChat ≥ 1.0, you can use the bare display (default key: kbd:[Alt+l]).
With WeeChat ≥ 1.0, you can use the bare display (default key: kbd:[Alt+l] (`L`)).
To make opening URLs easier, you can:
@@ -960,15 +960,19 @@ $ cd ~/.weechat/script
$ curl -O https://weechat.org/files/plugins.xml.gz
----
[[aspell_dictionaries]]
[[spell_dictionaries]]
=== I installed aspell dictionaries on my system, how can I use them without restarting WeeChat?
You have to reload the aspell plugin:
You have to reload the spell plugin:
----
/plugin reload aspell
/plugin reload spell
----
[NOTE]
With WeeChat ≤ 2.4, the "spell" plugin was named "aspell", so the command is:
`/plugin reload aspell`.
[[settings]]
== Settings
@@ -998,8 +1002,8 @@ You can try following tips to consume less memory:
* Use the latest stable version (it is supposed to have less memory leaks than
older versions).
* Do not load some plugins if you don't use them, for example: aspell, buflist,
fifo, logger, perl, python, ruby, lua, tcl, guile, javascript, php,
* Do not load some plugins if you don't use them, for example: buflist,
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
@@ -1017,7 +1021,7 @@ You can follow same tips as for <<memory_usage,memory>>, and these ones:
* Remove display of seconds in status bar time:
`/set weechat.look.item_time_format "%H:%M"` (this is the default value).
* Disable real time check of misspelled words in command line (if you enabled it):
`/set aspell.check.real_time off`.
`/set spell.check.real_time off`.
* Set the _TZ_ variable (for example: `export TZ="Europe/Paris"`), to prevent
frequent access to file _/etc/localtime_.
+215 -44
View File
@@ -892,11 +892,62 @@ Script (Python):
match = weechat.string_match(string, mask, case_sensitive)
# examples
match1 = weechat.string_match("abcdef", "abc*", 0) # 1
match2 = weechat.string_match("abcdef", "*dd*", 0) # 0
match3 = weechat.string_match("abcdef", "*def", 0) # 1
match4 = weechat.string_match("abcdef", "*de*", 0) # 1
match5 = weechat.string_match("abcdef", "*b*d*", 0) # 1
match1 = weechat.string_match("abcdef", "abc*", 0) # == 1
match2 = weechat.string_match("abcdef", "*dd*", 0) # == 0
match3 = weechat.string_match("abcdef", "*def", 0) # == 1
match4 = weechat.string_match("abcdef", "*de*", 0) # == 1
match5 = weechat.string_match("abcdef", "*b*d*", 0) # == 1
----
==== string_match_list
_WeeChat ≥ 2.5._
Check if a string matches a list of masks where negative mask is allowed
with the format "!word". A negative mask has higher priority than a standard
mask.
Prototype:
[source,C]
----
int weechat_string_match_list (const char *string, const char **masks,
int case_sensitive);
----
Arguments:
* _string_: string
* _masks_: list of masks, with a NULL after the last mask in list; each mask
is compared to the string with the function <<_string_match,string_match>>
* _case_sensitive_: 1 for case sensitive comparison, otherwise 0
Return value:
* 1 if string matches list of masks (at least one mask matches and no negative
mask matches), otherwise 0
C example:
[source,C]
----
const char *masks[3] = { "*", "!abc*", NULL };
int match1 = weechat_string_match_list ("abc", masks, 0); /* == 0 */
int match2 = weechat_string_match_list ("abcdef", masks, 0); /* == 0 */
int match3 = weechat_string_match_list ("def", masks, 0); /* == 1 */
----
Script (Python):
[source,python]
----
# prototype
match = weechat.string_match_list(string, masks, case_sensitive)
# examples
match1 = weechat.string_match("abc", "*,!abc*", 0) # == 0
match2 = weechat.string_match("abcdef", "*,!abc*", 0) # == 0
match3 = weechat.string_match("def", "*,!abc*", 0) # == 1
----
==== string_expand_home
@@ -1432,6 +1483,8 @@ This function is not available in scripting API.
==== string_split
_Updated in 2.5._
Split a string according to one or more delimiter(s).
Prototype:
@@ -1439,22 +1492,38 @@ Prototype:
[source,C]
----
char **weechat_string_split (const char *string, const char *separators,
int keep_eol, int num_items_max,
int *num_items);
int flags, int num_items_max, int *num_items);
----
Arguments:
* _string_: string to split
* _separators_: delimiters used for split
* _keep_eol_:
** 0: each string will contain one word
** 1: each string will contain all string until end of line (see example below)
** 2: same as 1, but do not remove separators at end of string before split
_(WeeChat ≥ 0.3.6)_
* _flags_: combination values to change the default behavior; if the value is 0,
the default behavior is used (no strip of separators at beginning/end of string,
multiple separators are kept as-is so empty strings can be returned);
the following flags are accepted:
** WEECHAT_STRING_SPLIT_STRIP_LEFT: strip separators on the left
(beginning of string)
** WEECHAT_STRING_SPLIT_STRIP_RIGHT: strip separators on the right
(end of string)
** WEECHAT_STRING_SPLIT_COLLAPSE_SEPS: collapse multiple consecutive separators
into a single one
** WEECHAT_STRING_SPLIT_KEEP_EOL: keep end of line for each value
* _num_items_max_: maximum number of items created (0 = no limit)
* _num_items_: pointer to int which will contain number of items created
[NOTE]
With WeeChat ≤ 2.4, the _flags_ argument was called _keep_eol_ and took other
values, which must be converted like that:
[width="100%",cols="1,10",options="header"]
|===
| keep_eol | flags
| 0 | WEECHAT_STRING_SPLIT_STRIP_LEFT \| WEECHAT_STRING_SPLIT_STRIP_RIGHT \| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS
| 1 | WEECHAT_STRING_SPLIT_STRIP_LEFT \| WEECHAT_STRING_SPLIT_STRIP_RIGHT \| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS \| WEECHAT_STRING_SPLIT_KEEP_EOL
| 2 | WEECHAT_STRING_SPLIT_STRIP_LEFT \| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS \| WEECHAT_STRING_SPLIT_KEEP_EOL
|===
Return value:
* array of strings, NULL if problem (must be freed by calling
@@ -1466,7 +1535,23 @@ C example:
----
char **argv;
int argc;
argv = weechat_string_split ("abc de fghi ", " ", 0, 0, &argc);
/* result: argv[0] == "abc"
argv[1] == "de"
argv[2] == ""
argv[3] == "fghi"
argv[4] = ""
argv[5] == NULL
argc == 5
*/
weechat_string_free_split (argv);
argv = weechat_string_split ("abc de fghi ", " ",
WEECHAT_STRING_SPLIT_STRIP_LEFT
| WEECHAT_STRING_SPLIT_STRIP_RIGHT
| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS,
0, &argc);
/* result: argv[0] == "abc"
argv[1] == "de"
argv[2] == "fghi"
@@ -1475,7 +1560,12 @@ argv = weechat_string_split ("abc de fghi ", " ", 0, 0, &argc);
*/
weechat_string_free_split (argv);
argv = weechat_string_split ("abc de fghi ", " ", 1, 0, &argc);
argv = weechat_string_split ("abc de fghi ", " ",
WEECHAT_STRING_SPLIT_STRIP_LEFT
| WEECHAT_STRING_SPLIT_STRIP_RIGHT
| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS
| WEECHAT_STRING_SPLIT_KEEP_EOL,
0, &argc);
/* result: argv[0] == "abc de fghi"
argv[1] == "de fghi"
argv[2] == "fghi"
@@ -1484,7 +1574,11 @@ argv = weechat_string_split ("abc de fghi ", " ", 1, 0, &argc);
*/
weechat_string_free_split (argv);
argv = weechat_string_split ("abc de fghi ", " ", 2, 0, &argc);
argv = weechat_string_split ("abc de fghi ", " ",
WEECHAT_STRING_SPLIT_STRIP_LEFT
| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS
| WEECHAT_STRING_SPLIT_KEEP_EOL,
0, &argc);
/* result: argv[0] == "abc de fghi "
argv[1] == "de fghi "
argv[2] == "fghi "
@@ -2324,7 +2418,7 @@ expanded to last):
`+${re:0}+` +
`+${re:1}+` +
`+${re:2}+` +
`+${re:+++}+` +
`+${re:+}+` +
`+${re:#}+` |
`+test1 test2+` +
`+test1+` +
@@ -7638,20 +7732,20 @@ Arguments:
Format of color is: attributes (optional) + color name + ",background"
(optional). Possible attributes are:
* `+*+` : bold text
* `+!+` : reverse video
* `+/+` : italic
* `+_+` : underlined text
* `+|+` : keep attributes: do not reset bold/reverse/italic/underlined when
* `+*+`: bold text
* `+!+`: reverse video
* `+/+`: italic
* `+_+`: underlined text
* `+|+`: keep attributes: do not reset bold/reverse/italic/underlined when
changing color _(WeeChat ≥ 0.3.6)_
Examples:
* `+yellow+` : yellow
* `+_green+` : underlined green
* `+*214+` : bold orange
* `+yellow,red+` : yellow on red
* `+|cyan+` : cyan (and keep any attribute which was set previously)
* `+yellow+`: yellow
* `+_green+`: underlined green
* `+*214+`: bold orange
* `+yellow,red+`: yellow on red
* `+|cyan+`: cyan (and keep any attribute which was set previously)
Return value:
@@ -9570,11 +9664,6 @@ List of signals sent by WeeChat and plugins:
|===
| Plugin | Signal | Arguments | Description
| aspell | aspell_suggest +
_(WeeChat ≥ 0.4.0)_ |
Pointer: buffer. |
New suggestions for a misspelled word.
| guile | guile_script_loaded +
_(WeeChat ≥ 0.3.9)_ |
String: path to script. |
@@ -9874,6 +9963,11 @@ List of signals sent by WeeChat and plugins:
String: comma-separated list of scripts removed. |
Ruby script(s) removed.
| spell | spell_suggest +
_(WeeChat ≥ 2.4)_ |
Pointer: buffer. |
New suggestions for a misspelled word.
| tcl | tcl_script_loaded +
_(WeeChat ≥ 0.3.9)_ |
String: path to script. |
@@ -10941,7 +11035,7 @@ struct t_hook *weechat_hook_modifier (const char *modifier,
Arguments:
* _modifier_: modifier name, list of modifiers used by Weechat or plugins
* _modifier_: modifier name, list of modifiers used by WeeChat or plugins
(priority allowed, see note about <<hook_priority,priority>>)
(see table below)
* _callback_: function called when modifier is used, arguments and return value:
@@ -11173,7 +11267,7 @@ weechat.hook_modifier_exec("my_modifier", my_data, my_string)
==== hook_info
_Updated in 1.5._
_Updated in 1.5, 2.5._
Hook an information (callback takes and returns a string).
@@ -11184,10 +11278,10 @@ Prototype:
struct t_hook *weechat_hook_info (const char *info_name,
const char *description,
const char *args_description,
const char *(*callback)(const void *pointer,
void *data,
const char *info_name,
const char *arguments),
char *(*callback)(const void *pointer,
void *data,
const char *info_name,
const char *arguments),
const void *callback_pointer,
void *callback_data);
----
@@ -11213,16 +11307,20 @@ Return value:
* pointer to new hook, NULL if error occurred
[NOTE]
With WeeChat ≥ 2.5, the callback returns an allocated string
(with WeeChat ≤ 2.4, it was a pointer to a static string).
C example:
[source,C]
----
const char *
char *
my_info_cb (const void *pointer, void *data, const char *info_name,
const char *arguments)
{
/* ... */
return pointer_to_string;
return strdup ("some_info");
}
/* add info "my_info" */
@@ -14299,7 +14397,7 @@ Arguments:
* _command_: command to execute (if beginning with a "/"), or text to send to
buffer
Return value: (_WeeChat ≥ 1.1_)
Return value (_WeeChat ≥ 1.1_):
* _WEECHAT_RC_OK_ if successful
* _WEECHAT_RC_ERROR_ if error
@@ -14324,6 +14422,65 @@ weechat.command(buffer, command)
rc = weechat.command(weechat.buffer_search("irc", "freenode.#weechat"), "/whois FlashCode")
----
==== command_options
_WeeChat ≥ 2.5._
Execute a command or send text to buffer with options.
Prototype:
[source,C]
----
int weechat_command_options (struct t_gui_buffer *buffer, const char *command,
struct t_hashtable *options);
----
Arguments:
* _buffer_: buffer pointer (command is executed on this buffer, use NULL for
current buffer)
* _command_: command to execute (if beginning with a "/"), or text to send to
buffer
* _options_: a hashtable with some options (keys and values must be string)
(can be NULL):
** _commands_: a comma-separated list of commands allowed to be executed during
this call; see function <<_string_match_list,string_match_list>> for the
format
** _delay_: delay to execute command, in milliseconds
Return value:
* _WEECHAT_RC_OK_ if successful
* _WEECHAT_RC_ERROR_ if error
C example:
[source,C]
----
/* allow any command except /exec, run command in 2 seconds */
int rc;
struct t_hashtable *options = weechat_hashtable_new (8,
WEECHAT_HASHTABLE_STRING,
WEECHAT_HASHTABLE_STRING,
NULL,
NULL);
weechat_hashtable_set (options, "commands", "*,!exec");
weechat_hashtable_set (options, "delay", "2000");
rc = weechat_command_options (NULL, "/some_command arguments", options);
----
Script (Python):
[source,python]
----
# prototype
weechat.command_options(buffer, command, options)
# example: allow any command except /exec
rc = weechat.command("", "/some_command arguments", {"commands": "*,!exec"})
----
[[network]]
=== Network
@@ -14436,13 +14593,15 @@ Functions to get infos.
==== info_get
_Updated in 2.5._
Return info, as string, from WeeChat or a plugin.
Prototype:
[source,C]
----
const char *weechat_info_get (const char *info_name, const char *arguments);
char *weechat_info_get (const char *info_name, const char *arguments);
----
Arguments:
@@ -14455,6 +14614,10 @@ Return value:
* string with info asked, NULL if an error occurred
[NOTE]
With WeeChat ≥ 2.5, the value returned is an allocated string
(with WeeChat ≤ 2.4, it was a pointer to a static string).
Infos:
include::autogen/plugin_api/infos.adoc[]
@@ -14463,11 +14626,19 @@ C example:
[source,C]
----
char *version = weechat_info_get ("version", NULL);
char *date = weechat_info_get ("date", NULL);
weechat_printf (NULL, "Current WeeChat version is: %s (compiled on %s)",
weechat_info_get ("version", NULL),
weechat_info_get ("date", NULL));
weechat_printf (NULL, "WeeChat home is: %s",
weechat_info_get ("weechat_dir", NULL));
version, date);
if (version)
free (version);
if (date)
free (date);
char *weechat_dir = weechat_info_get ("weechat_dir", NULL);
weechat_printf (NULL, "WeeChat home is: %s", weechat_dir);
if (weechat_dir)
free (weechat_dir);
----
Script (Python):
+28 -25
View File
@@ -10,8 +10,8 @@
[[start]]
== Start WeeChat
A recommended terminal emulator for X (but not mandatory) is rxvt-unicode:
it has good UTF-8 support, and no problem with default keyboard bindings.
A recommended (but not mandatory) X terminal emulator for running WeeChat is rxvt-unicode.
It has good UTF-8 support and works well with WeeChat's default key bindings.
Run from your shell:
@@ -19,8 +19,8 @@ Run from your shell:
$ weechat
----
[[help_options]]
== Online help / options
[[help]]
== Online help
WeeChat has help for all commands, just issue:
@@ -34,20 +34,29 @@ To get help on a specific command, issue:
/help command
----
To set options, issue:
Help is available for options as well:
----
/set config.section.option value
/help config.section.option
----
(where `config` is configuration name (`weechat` for core, or a plugin
name), `section` the section of this configuration and `option` the
option name).
[[options]]
== Set options
To set options, issue:
----
/set config.section.option value
----
WeeChat immediately uses the new value (you *never* need to restart WeeChat
after changes to configuration).
All settings are saved when WeeChat ends (or with `/save` command to force
All settings are saved when WeeChat ends (or with the `/save` command to force
a write of the options).
[IMPORTANT]
@@ -58,12 +67,6 @@ that were not yet saved with `/save`). +
You can use the command `/set`, which checks the value and applies immediately
the changes.
Help is available for options:
----
/help config.section.option
----
The plugin _fset_ allows you to easily browse options and change them.
For example to display WeeChat options:
@@ -82,7 +85,7 @@ 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.
For more information about `/fset` command and keys, see `/help fset`.
For more information about the `/fset` command and keys, see `/help fset`.
[[core_vs_plugins]]
== Core vs plugins
@@ -99,7 +102,7 @@ other plugins in the list.
[[add_irc_server]]
== Add an IRC server
You can add an IRC server with `/server` command, for example:
You can add an IRC server with the `/server` command, for example:
----
/server add freenode chat.freenode.net
@@ -126,7 +129,7 @@ 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 freenode server with following command:
override them for the freenode server with following command:
----
/set irc.server.freenode.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
@@ -152,7 +155,7 @@ To connect with SSL:
/set irc.server.freenode.ssl on
----
If SASL is available on server, you can use it for authentication (you will be
If SASL is available on the server, you can use it for authentication (you will be
identified before you join channels):
----
@@ -185,7 +188,7 @@ Then add a secured data with your freenode password:
/secure set freenode_password xxxxxxx
----
Then you can use `+${sec.data.freenode_password}+` instead of your password in
Then you can use `+${sec.data.freenode_password}+` instead of your password in the
IRC options mentioned above, for example:
----
@@ -210,7 +213,7 @@ for example to use default nicks (irc.server_default.nicks):
/unset irc.server.freenode.nicks
----
Other options: you can setup other options with following command ("xxx" is
Other options: you can setup other options with the following command ("xxx" is
option name):
----
@@ -225,11 +228,11 @@ option name):
----
[NOTE]
This command can be used to create and connect to a new server without using
This command can be used to create and connect to a new server without using the
`/server` command (see `/help connect`).
By default, server buffers are merged with WeeChat _core_ buffer. To switch
between _core_ buffer and server buffers, you can use kbd:[Ctrl+x].
between the _core_ buffer and server buffers, you can use kbd:[Ctrl+x].
It is possible to disable auto merge of server buffers to have independent
server buffers:
@@ -247,7 +250,7 @@ Join a channel:
/join #channel
----
Part a channel (keeping buffer open):
Part a channel (keeping the buffer open):
----
/part [quit message]
@@ -292,7 +295,7 @@ A buffer is a component linked to a plugin with a number, a category,
and a name. A buffer contains the data displayed on the screen.
A window is a view on a buffer. By default there's only one window
displaying one buffer. If you split screen, you will see many windows
displaying one buffer. If you split the screen, you will see many windows
with many buffers at same time.
Commands to manage buffers and windows:
@@ -332,10 +335,10 @@ but you should know at least some vital keys:
- kbd:[Alt+a]: jump to buffer with activity (in hotlist)
According to your keyboard and/or your needs, you can rebind any key
to a command with `/key` command.
to a command with the `/key` command.
A useful key is kbd:[Alt+k] to find key codes.
For example, to bind kbd:[Alt+!] to command `/buffer close`:
For example, to bind kbd:[Alt+!] to the command `/buffer close`:
----
/key bind (press alt-k) (press alt-!) /buffer close
+29 -4
View File
@@ -39,6 +39,29 @@ other languages.
[[scripts_in_weechat]]
== Scripts in WeeChat
[[weechat_architecture]]
=== WeeChat architecture
WeeChat is single-threaded, and this applies to scripts as well.
The code of a script is executed:
* when the script is loaded: typically a call to the
<<register_function,register function>>
* when a hook callback is called by WeeChat (see the chapter <<hooks,Hooks>>).
When the code of a script is executed, WeeChat waits for the end of execution
before going on. Therefore the script must *NOT* do blocking operations like
network calls without using a dedicated API function like `hook_process`.
[IMPORTANT]
A script must *NEVER* fork or create threads without using a dedicated API
function, this can crash WeeChat. +
If something must be run in background, the function `hook_process` can be used.
See example in the chapter <<hook_process,Run a background process>>
and the documentation on the function `hook_process` in the
link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference].
[[languages_specificities]]
=== Languages specificities
@@ -427,6 +450,7 @@ List of functions in script API:
ngettext +
strlen_screen +
string_match +
string_match_list +
string_has_highlight +
string_has_highlight_regex +
string_mask_to_regex +
@@ -590,7 +614,8 @@ List of functions in script API:
bar_remove
| commands |
command
command +
command_options
| infos |
info_get +
@@ -990,9 +1015,9 @@ Example:
[source,python]
----
script_options = {
"option1" : "value1",
"option2" : "value2",
"option3" : "value3",
"option1": "value1",
"option2": "value2",
"option3": "value3",
}
for option, default_value in script_options.items():
if not weechat.config_is_set_plugin(option):
+339 -248
View File
@@ -98,7 +98,7 @@ compile WeeChat.
| C compiler
(gcc, clang, ...) | | *yes* | Build.
| C++ compiler | | | Build and run tests, JavaScript plugin.
| cmake | | *yes* | Build (autotools still possible, but cmake is recommended).
| cmake | ≥ 3.0 | *yes* | Build (autotools still possible, but cmake is recommended).
| pkg-config | | *yes* | Detect installed libraries.
| libncursesw5-dev ^(2)^ | | *yes* | Ncurses interface.
| libcurl4-gnutls-dev | | *yes* | URL transfer.
@@ -108,7 +108,7 @@ compile WeeChat.
| gettext | | | Internationalization (translation of messages; base language is English).
| ca-certificates | | | Certificates for SSL connections.
| libaspell-dev
∥ libenchant-dev | | | Aspell plugin.
∥ libenchant-dev | | | Spell plugin.
| python-dev | ≥ 2.6 ^(4)^ | | Python plugin.
| libperl-dev | | | Perl plugin.
| ruby2.5, ruby2.5-dev | ≥ 1.8 | | Ruby plugin.
@@ -130,7 +130,7 @@ names may be different in different distributions and versions. +
^(2)^ It is recommended to compile with libncurses**w**5-dev (the *w* is
important). WeeChat can compile with libncurses5-dev, but it is *NOT* recommended:
you may experience display bugs with wide chars. +
^(3)^ Gnutls ≥ 3.0.21 is required for IRC SASL authentication with mechanism
^(3)^ GnuTLS ≥ 3.0.21 is required for IRC SASL authentication with mechanism
ECDSA-NIST256P-CHALLENGE. +
^(4)^ Recommended Python version is 2.7 (all scripts run fine with version 2.7,
but not with versions < 2.7 or ≥ 3.0).
@@ -192,9 +192,6 @@ List of commonly used options:
| ENABLE_ALIAS | `ON`, `OFF` | ON |
Compile <<alias_plugin,Alias plugin>>.
| ENABLE_ASPELL | `ON`, `OFF` | ON |
Compile <<aspell_plugin,Aspell plugin>>.
| ENABLE_BUFLIST | `ON`, `OFF` | ON |
Compile <<buflist_plugin,Buflist plugin>>.
@@ -202,15 +199,13 @@ List of commonly used options:
Compile <<charset_plugin,Charset plugin>>.
| ENABLE_MAN | `ON`, `OFF` | OFF |
Compile man page.
Build man page.
| ENABLE_DOC | `ON`, `OFF` | OFF |
Compile documentation (it takes a long time, recommended only if you build
a binary package embedding documentation or if you can't browse documentation
online).
Build HTML documentation.
| ENABLE_ENCHANT | `ON`, `OFF` | OFF |
Compile <<aspell_plugin,Aspell plugin>> with Enchant.
Compile <<spell_plugin,Spell plugin>> with Enchant.
| ENABLE_EXEC | `ON`, `OFF` | ON |
Compile <<exec_plugin,Exec plugin>>.
@@ -222,7 +217,7 @@ List of commonly used options:
Compile <<fset_plugin,Fset plugin>>.
| ENABLE_GNUTLS | `ON`, `OFF` | ON |
Enable Gnutls (for SSL).
Enable GnuTLS (for SSL).
| ENABLE_GUILE | `ON`, `OFF` | ON |
Compile <<scripts_plugins,Guile plugin>> (Scheme).
@@ -258,8 +253,11 @@ List of commonly used options:
Compile <<scripts_plugins,Python plugin>>.
| ENABLE_PYTHON3 | `ON`, `OFF` | OFF |
Compile <<scripts_plugins,Python plugin>> using Python 3 (*NOT* recommended
because many scripts are not compatible with Python 3).
Compile <<scripts_plugins,Python plugin>> using Python 3. +
This option is not recommended because many scripts are not yet compatible
with Python 3. +
You can follow the progress of Python 3 transition on this page:
https://weechat.org/scripts/python3/
| ENABLE_RELAY | `ON`, `OFF` | ON |
Compile <<relay_plugin,Relay plugin>>.
@@ -274,6 +272,9 @@ List of commonly used options:
Compile <<scripts_plugins,script plugins>> (Python, Perl, Ruby, Lua, Tcl,
Guile, JavaScript, PHP).
| ENABLE_SPELL | `ON`, `OFF` | ON |
Compile <<spell_plugin,Spell plugin>>.
| ENABLE_TCL | `ON`, `OFF` | ON |
Compile <<scripts_plugins,Tcl plugin>>.
@@ -285,6 +286,10 @@ List of commonly used options:
| ENABLE_TESTS | `ON`, `OFF` | OFF |
Compile tests.
| ENABLE_CODE_COVERAGE | `ON`, `OFF` | OFF |
Compile with code coverage options. +
This option should be used only for tests, to measure test coverage.
|===
The other options can be displayed with this command:
@@ -499,14 +504,21 @@ To start WeeChat, issue this command:
$ weechat
----
Command line arguments:
include::cmdline_options.en.adoc[]
When you run WeeChat for the first time, the default configuration files are
created in _~/.weechat_ with default options and values
(see <<files_and_directories,Files and directories>>).
==== Command line options
include::cmdline_options.en.adoc[]
==== Extra debug options
[WARNING]
These options are for debug purposes only, *DO NOT USE IN PRODUCTION!*
include::cmdline_options_debug.en.adoc[]
[[environment_variables]]
=== Environment variables
@@ -526,7 +538,10 @@ Some environment variables are used by WeeChat if they are defined:
WeeChat writes configuration files and other data in directory `~/.weechat`
by default.
The directories are:
[[weechat_directories]]
==== WeeChat directories
The WeeChat directories are:
[width="100%",cols="1m,3",options="header"]
|===
@@ -552,7 +567,10 @@ The directories are:
|===
[NOTE]
^(1)^ This directory often contains only symbolic links to scripts in parent directory.
^(1)^ This directory often contains only symbolic links to scripts in the parent directory.
[[weechat_files]]
==== WeeChat files
The files in the WeeChat home directory are:
@@ -563,7 +581,6 @@ The files in the WeeChat home directory are:
| sec.conf | Configuration file with secured data | *Yes, highly sensitive*: this file must never be shared with anyone.
| plugins.conf | Plugins configuration file | Possible, depends on plugins/scripts.
| alias.conf | Configuration file for _alias_ plugin | Possible, depends on aliases.
| aspell.conf | Configuration file for _aspell_ plugin | No.
| buflist.conf | Configuration file for _buflist_ plugin | No.
| charset.conf | Configuration file for _charset_ plugin | No.
| exec.conf | Configuration file for _exec_ plugin | No.
@@ -581,6 +598,7 @@ The files in the WeeChat home directory are:
| ruby.conf | Configuration file for _ruby_ plugin | No.
| script.conf | Configuration file for _script_ plugin | No.
| tcl.conf | Configuration file for _tcl_ plugin | No.
| spell.conf | Configuration file for _spell_ plugin | No.
| trigger.conf | Configuration file for _trigger_ plugin | Possible, depends on triggers.
| xfer.conf | Configuration file for _xfer_ plugin | No.
| weechat.log | WeeChat log file | No.
@@ -630,7 +648,7 @@ Example of terminal with WeeChat:
▲ bars "status" and "input" bar "nicklist" ▲
....
Screen is composed by following areas:
The screen is divided up into the following areas:
* chat area (middle of screen) with chat lines, and for each line:
** time
@@ -704,8 +722,8 @@ Other items available (not used in bars by default):
[width="100%",cols="^3,^4,10",options="header"]
|===
| Item | Example | Description
| aspell_dict | `fr,en` | Spelling dictionaries used on current buffer.
| aspell_suggest | `print,prone,prune` | Spelling suggestions for word under cursor (if misspelled).
| spell_dict | `fr,en` | Spelling dictionaries used on current buffer.
| spell_suggest | `print,prone,prune` | Spelling suggestions for word under cursor (if misspelled).
| buffer_count | `10` | Total number of buffers opened.
| buffer_short_name | `#test` | Current buffer short name.
| irc_channel | `#test` | Current IRC channel name.
@@ -905,11 +923,11 @@ For example:
It is possible to use some attributes for colors. One or more attributes can be
added before color name or number:
* `+*+` : bold text
* `+!+` : reverse video
* `+/+` : italic
* `+_+` : underlined text
* `+|+` : keep attributes: do not reset bold/reverse/italic/underlined when
* `+*+`: bold text
* `+!+`: reverse video
* `+/+`: italic
* `+_+`: underlined text
* `+|+`: keep attributes: do not reset bold/reverse/italic/underlined when
changing color
For example if you want self nick as white underlined, do:
@@ -1187,12 +1205,12 @@ List of bar options:
==== Items
The option _items_ is a string with a list of bar items, separated by a comma
(space between items on screen) or "+" (glued items).
(space between items on screen) or `+++` (glued items).
The list of bar items is displayed with command `/bar listitems`.
Before or after item name, you can use chars (that are not alphanumeric, "-" or
"_"). They will be displayed before/after item with the delimiters color
Before or after item name, you can use chars (that are not alphanumeric, `+-+`
or `+_+`). They will be displayed before/after item with the delimiters color
defined in bar (option _color_delim_).
Example of bar with items "[time],buffer_number+:+buffer_plugin+.+buffer_name":
@@ -1321,7 +1339,7 @@ Following pointers are available:
* `+${buffer}+`: the buffer of window where condition is evaluated
Example to display nicklist bar in all buffers with a nicklist, and only if
width of window is > 100 :
width of window is > 100:
----
/set weechat.bar.nicklist.conditions "${nicklist} && ${window.win_width} > 100"
@@ -1348,8 +1366,8 @@ The bare display has following features:
mouse like you do in the terminal to click on URLs and select text.
* Ncurses is not used, therefore URLs are not cut at the end of lines.
The default key to enabled bare display is kbd:[Alt+l], and same key to exit (or
by default anything changing the input will exit the bare display, see option
The default key to enable bare display is kbd:[Alt+l] (`L`), and same key to exit
(or by default anything changing the input will exit the bare display, see option
<<option_weechat.look.bare_display_exit_on_input,weechat.look.bare_display_exit_on_input>>).
The time format can be customized with the option
@@ -1533,7 +1551,7 @@ You can display tags with the command `/debug tags` (same command to hide them).
You can add specific tags to highlight with the option
<<option_weechat.look.highlight_tags,weechat.look.highlight_tags>>.
Tags are separated by commas, and multiple tags can be separated by "+" to do
Tags are separated by commas, and multiple tags can be separated by `+++` to do
a logical "and" between them.
For example to highlight all messages from nick "FlashCode" and all notices
@@ -1617,7 +1635,7 @@ with `/script install buffer_autoset.py` and get help with `/help buffer_autoset
| kbd:[Alt+d] | Delete next word in command line (deleted string is copied to the internal clipboard). | `/input delete_next_word`
| kbd:[Alt+k] | Grab a key and insert its code (and command bound if key exists) in command line. | `/input grab_key_command`
| kbd:[Alt+r] | Delete entire command line. | `/input delete_line`
| kbd:[Alt+s] | Toggle aspell. | `/mute aspell toggle`
| kbd:[Alt+s] | Toggle spell checker. | `/mute spell toggle`
|===
[[key_bindings_buffers_windows]]
@@ -1625,78 +1643,78 @@ with `/script install buffer_autoset.py` and get help with `/help buffer_autoset
[width="100%",cols="^.^3,.^8,.^5",options="header"]
|===
| Key | Description | Command
| kbd:[Ctrl+l] | Redraw whole window. | `/window refresh`
| Key | Description | Command
| kbd:[Ctrl+l] (`L`) | Redraw whole window. | `/window refresh`
| kbd:[Ctrl+s],
kbd:[Ctrl+u] | Set unread marker on all buffers. | `/input set_unread`
| kbd:[Ctrl+x] | Switch current buffer if buffers are attached with same number. | `/input switch_active_buffer`
| kbd:[Alt+x] | Zoom on merged buffer (kbd:[Alt+x] again: display all merged buffers). | `/input zoom_merged_buffer`
| kbd:[PgUp] | Scroll up one page in buffer history. | `/window page_up`
| kbd:[PgDn] | Scroll down one page in buffer history. | `/window page_down`
| kbd:[Alt+PgUp] | Scroll up a few lines in buffer history. | `/window scroll_up`
| kbd:[Alt+PgDn] | Scroll down a few lines in buffer history. | `/window scroll_down`
| kbd:[Alt+Home] | Scroll to top of buffer. | `/window scroll_top`
| kbd:[Alt+End] | Scroll to bottom of buffer. | `/window scroll_bottom`
kbd:[Ctrl+u] | Set unread marker on all buffers. | `/input set_unread`
| kbd:[Ctrl+x] | Switch current buffer if buffers are attached with same number. | `/input switch_active_buffer`
| kbd:[Alt+x] | Zoom on merged buffer (kbd:[Alt+x] again: display all merged buffers). | `/input zoom_merged_buffer`
| kbd:[PgUp] | Scroll up one page in buffer history. | `/window page_up`
| kbd:[PgDn] | Scroll down one page in buffer history. | `/window page_down`
| kbd:[Alt+PgUp] | Scroll up a few lines in buffer history. | `/window scroll_up`
| kbd:[Alt+PgDn] | Scroll down a few lines in buffer history. | `/window scroll_down`
| kbd:[Alt+Home] | Scroll to top of buffer. | `/window scroll_top`
| kbd:[Alt+End] | Scroll to bottom of buffer. | `/window scroll_bottom`
| kbd:[F1] +
kbd:[Ctrl+F1] | Scroll up one page in buflist. | `/bar scroll buflist * -100%`
kbd:[Ctrl+F1] | Scroll up one page in buflist. | `/bar scroll buflist * -100%`
| kbd:[F2] +
kbd:[Ctrl+F2] | Scroll down one page in buflist. | `/bar scroll buflist * +100%`
| kbd:[Alt+F1] | Go to the beginning of buflist. | `/bar scroll buflist * b`
| kbd:[Alt+F2] | Go to the end of buflist. | `/bar scroll buflist * e`
kbd:[Ctrl+F2] | Scroll down one page in buflist. | `/bar scroll buflist * +100%`
| kbd:[Alt+F1] | Go to the beginning of buflist. | `/bar scroll buflist * b`
| kbd:[Alt+F2] | Go to the end of buflist. | `/bar scroll buflist * e`
| kbd:[Alt+←] +
kbd:[Alt+↑] +
kbd:[Ctrl+p] +
kbd:[F5] | Switch to previous buffer. | `/buffer -1`
kbd:[F5] | Switch to previous buffer. | `/buffer -1`
| kbd:[Alt+→] +
kbd:[Alt+↓] +
kbd:[Ctrl+n] +
kbd:[F6] | Switch to next buffer. | `/buffer +1`
| kbd:[F7] | Switch to previous window. | `/window -1`
| kbd:[F8] | Switch to next window. | `/window +1`
| kbd:[F9] | Scroll buffer's title on the left. | `+/bar scroll title * -30%+`
| kbd:[F10] | Scroll buffer's title on the right. | `+/bar scroll title * +30%+`
kbd:[F6] | Switch to next buffer. | `/buffer +1`
| kbd:[F7] | Switch to previous window. | `/window -1`
| kbd:[F8] | Switch to next window. | `/window +1`
| kbd:[F9] | Scroll buffer's title on the left. | `+/bar scroll title * -30%+`
| kbd:[F10] | Scroll buffer's title on the right. | `+/bar scroll title * +30%+`
| kbd:[F11] +
kbd:[Ctrl+F11] | Scroll up one page in nicklist. | `/bar scroll nicklist * -100%`
kbd:[Ctrl+F11] | Scroll up one page in nicklist. | `/bar scroll nicklist * -100%`
| kbd:[F12] +
kbd:[Ctrl+F12] | Scroll down one page in nicklist. | `/bar scroll nicklist * +100%`
| kbd:[Alt+F11] | Go to the beginning of nicklist. | `/bar scroll nicklist * b`
| kbd:[Alt+F12] | Go to the end of nicklist. | `/bar scroll nicklist * e`
| kbd:[Alt+a] | Switch to next buffer with activity (with priority: highlight, message, other). | `/input jump_smart`
| kbd:[Alt+h] | Clear hotlist (activity notification on other buffers). | `/input hotlist_clear`
kbd:[Ctrl+F12] | Scroll down one page in nicklist. | `/bar scroll nicklist * +100%`
| kbd:[Alt+F11] | Go to the beginning of nicklist. | `/bar scroll nicklist * b`
| kbd:[Alt+F12] | Go to the end of nicklist. | `/bar scroll nicklist * e`
| kbd:[Alt+a] | Switch to next buffer with activity (with priority: highlight, message, other). | `/input jump_smart`
| kbd:[Alt+h] | Clear hotlist (activity notification on other buffers). | `/input hotlist_clear`
| kbd:[Alt+j],
kbd:[Alt+f] | Switch to first buffer. | `/buffer -`
kbd:[Alt+f] | Switch to first buffer. | `/buffer -`
| kbd:[Alt+j],
kbd:[Alt+l] | Switch to last buffer. | `/buffer +`
kbd:[Alt+l] (`L`) | Switch to last buffer. | `/buffer +`
| kbd:[Alt+j],
kbd:[Alt+r] | Switch to IRC raw buffer. | `/server raw`
kbd:[Alt+r] | Switch to IRC raw buffer. | `/server raw`
| kbd:[Alt+j],
kbd:[Alt+s] | Switch to IRC server buffer. | `/server jump`
| kbd:[Alt+0...9] | Switch to buffer by number (0 = 10). | `/buffer *N`
kbd:[Alt+s] | Switch to IRC server buffer. | `/server jump`
| kbd:[Alt+0...9] | Switch to buffer by number (0 = 10). | `/buffer *N`
| kbd:[Alt+j],
kbd:[01...99] | Switch to buffer by number. | `/buffer *NN`
| kbd:[Alt+l] | Toggle bare display on/off. | `/window bare`
| kbd:[Alt+m] | Toggle mouse. | `/mouse toggle`
| kbd:[Alt+n] | Scroll to next highlight. | `/window scroll_next_highlight`
| kbd:[Alt+p] | Scroll to previous highlight. | `/window scroll_previous_highlight`
| kbd:[Alt+u] | Scroll to first unread line in buffer. | `/window scroll_unread`
kbd:[01...99] | Switch to buffer by number. | `/buffer *NN`
| kbd:[Alt+l] (`L`) | Toggle bare display on/off. | `/window bare`
| kbd:[Alt+m] | Toggle mouse. | `/mouse toggle`
| kbd:[Alt+n] | Scroll to next highlight. | `/window scroll_next_highlight`
| kbd:[Alt+p] | Scroll to previous highlight. | `/window scroll_previous_highlight`
| kbd:[Alt+u] | Scroll to first unread line in buffer. | `/window scroll_unread`
| kbd:[Alt+w],
kbd:[Alt+↑] | Switch to window above. | `/window up`
kbd:[Alt+↑] | Switch to window above. | `/window up`
| kbd:[Alt+w],
kbd:[Alt+↓] | Switch to window below. | `/window down`
kbd:[Alt+↓] | Switch to window below. | `/window down`
| kbd:[Alt+w],
kbd:[Alt+←] | Switch to window on the left. | `/window left`
kbd:[Alt+←] | Switch to window on the left. | `/window left`
| kbd:[Alt+w],
kbd:[Alt+→] | Switch to window on the right. | `/window right`
kbd:[Alt+→] | Switch to window on the right. | `/window right`
| kbd:[Alt+w],
kbd:[Alt+b] | Balance the sizes of all windows. | `/window balance`
kbd:[Alt+b] | Balance the sizes of all windows. | `/window balance`
| kbd:[Alt+w],
kbd:[Alt+s] | Swap buffers of two windows. | `/window swap`
| kbd:[Alt+z] | Zoom on current window (kbd:[Alt+z] again: restore initial windows state, before zoom). | `/window zoom`
| kbd:[Alt+<] | Switch to previous buffer in list of visited buffers. | `/input jump_previously_visited_buffer`
| kbd:[Alt+>] | Switch to next buffer in list of visited buffers. | `/input jump_next_visited_buffer`
| kbd:[Alt+/] | Switch to last buffer displayed (before last jump to a buffer). | `/input jump_last_buffer_displayed`
| kbd:[Alt+=] | Toggle filters on/off. | `/filter toggle`
| kbd:[Alt+-] | Toggle filters on/off in current buffer. | `/filter toggle @`
kbd:[Alt+s] | Swap buffers of two windows. | `/window swap`
| kbd:[Alt+z] | Zoom on current window (kbd:[Alt+z] again: restore initial windows state, before zoom). | `/window zoom`
| kbd:[Alt+<] | Switch to previous buffer in list of visited buffers. | `/input jump_previously_visited_buffer`
| kbd:[Alt+>] | Switch to next buffer in list of visited buffers. | `/input jump_next_visited_buffer`
| kbd:[Alt+/] | Switch to last buffer displayed (before last jump to a buffer). | `/input jump_last_buffer_displayed`
| kbd:[Alt+=] | Toggle filters on/off. | `/filter toggle`
| kbd:[Alt+-] | Toggle filters on/off in current buffer. | `/filter toggle @`
|===
[[key_bindings_search_context]]
@@ -1755,43 +1773,43 @@ These keys are used in context "mouse", namely when a mouse event occurs.
[width="100%",cols="^.^3,^.^3,^.^3,.^8,.^8",options="header"]
|===
| Button ^(1)^ | Gesture | Area | Description | Command
| ◾◽◽ | - | chat | Switch to window. | `/window ${_window_number}`
| ◾◽◽ | left | chat | Switch to previous buffer. | `/window ${_window_number};/buffer +1`
| ◾◽◽ | right | chat | Switch to next buffer. | `/window ${_window_number};/buffer +1`
| ◾◽◽ | left (long) | chat | Switch to first buffer. | `/window ${_window_number};/buffer 1`
| ◾◽◽ | right (long) | chat | Switch to last buffer. | `/window ${_window_number};/input jump_last_buffer`
| ◾◽◽ | - | chat (script buffer) | Select line in script buffer. | `/script go ${_chat_line_y}`
| ◽◽◾ | - | chat (script buffer) | Install/remove script. | `/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}`
| | - | chat | Scroll up a few lines in buffer history. | `/window scroll_up -window ${_window_number}`
| | - | chat | Scroll down a few lines in buffer history. | `/window scroll_down -window ${_window_number}`
| | - | chat (script buffer) | Move 5 lines up in script buffer. | `/script up 5`
| | - | chat (script buffer) | Move 5 lines down in script buffer. | `/script down 5`
| kbd:[Ctrl+⇑] | - | chat | Scroll horizontally to the left. | `/window scroll_horiz -window ${_window_number} -10%`
| kbd:[Ctrl+⇓] | - | chat | Scroll horizontally to the right. | `/window scroll_horiz -window ${_window_number} +10%`
| ◾◽◽ | up / left | buflist | Move buffer to a lower number. | Signal `buflist_mouse`.
| ◾◽◽ | down / right | buflist | Move buffer to a higher number. | Signal `buflist_mouse`.
| ◾◽◽ | - | buflist | Switch to buffer (previously visited buffer if the buffer is the current one). | Signal `buflist_mouse`.
| ◽◽◾ | - | buflist | Switch to next visited buffer if the buffer is the current one. | Signal `buflist_mouse`.
| kbd:[Ctrl+⇑] | - | buflist | Switch to previous buffer. | Signal `buflist_mouse`.
| kbd:[Ctrl+⇓] | - | buflist | Switch to next buffer. | Signal `buflist_mouse`.
| ◾◽◽ | up | nicklist | Scroll up one page in nicklist. | `/bar scroll nicklist ${_window_number} -100%`
| ◾◽◽ | down | nicklist | Scroll down one page in nicklist. | `/bar scroll nicklist ${_window_number} +100%`
| ◾◽◽ | up (long) | nicklist | Go to the beginning of nicklist. | `/bar scroll nicklist ${_window_number} b`
| ◾◽◽ | down (long) | nicklist | Go to the end of nicklist. | `/bar scroll nicklist ${_window_number} e`
| ◾◽◽ | - | nicklist | Open query with nick. | `/window ${_window_number};/query ${nick}`
| ◽◽◾ | - | nicklist | Do a whois on nick. | `/window ${_window_number};/whois ${nick}`
| ◾◽◽ | left | nicklist | Kick nick. | `/window ${_window_number};/kick ${nick}`
| ◾◽◽ | left (long) | nicklist | Kick and ban nick. | `/window ${_window_number};/kickban ${nick}`
| ◽◽◾ | left | nicklist | Ban nick. | `/window ${_window_number};/ban ${nick}`
| ◽◽◾ | - | input | Grab a mouse event and insert its code in command line. | `/input grab_mouse_area`
| | - | any bar | Scroll bar by -20%. | `/bar scroll ${_bar_name} ${_window_number} -20%`
| | - | any bar | Scroll bar by +20%. | `/bar scroll ${_bar_name} ${_window_number} +20%`
| ◽◾◽ | - | anywhere | Start cursor mode at this point. | `/cursor go ${_x},${_y}`
| Button/Wheel ^(1)^ | Gesture | Area | Description | Command
| ◾◽◽ | - | chat | Switch to window. | `/window ${_window_number}`
| ◾◽◽ | left | chat | Switch to previous buffer. | `/window ${_window_number};/buffer +1`
| ◾◽◽ | right | chat | Switch to next buffer. | `/window ${_window_number};/buffer +1`
| ◾◽◽ | left (long) | chat | Switch to first buffer. | `/window ${_window_number};/buffer 1`
| ◾◽◽ | right (long) | chat | Switch to last buffer. | `/window ${_window_number};/input jump_last_buffer`
| ◾◽◽ | - | chat (script buffer) | Select line in script buffer. | `/script go ${_chat_line_y}`
| ◽◽◾ | - | chat (script buffer) | Install/remove script. | `/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}`
| kbd:[▲] | - | chat | Scroll up a few lines in buffer history. | `/window scroll_up -window ${_window_number}`
| kbd:[▼] | - | chat | Scroll down a few lines in buffer history. | `/window scroll_down -window ${_window_number}`
| kbd:[▲] | - | chat (script buffer) | Move 5 lines up in script buffer. | `/script up 5`
| kbd:[▼] | - | chat (script buffer) | Move 5 lines down in script buffer. | `/script down 5`
| kbd:[Ctrl+▲] | - | chat | Scroll horizontally to the left. | `/window scroll_horiz -window ${_window_number} -10%`
| kbd:[Ctrl+▼] | - | chat | Scroll horizontally to the right. | `/window scroll_horiz -window ${_window_number} +10%`
| ◾◽◽ | up / left | buflist | Move buffer to a lower number. | Signal `buflist_mouse`.
| ◾◽◽ | down / right | buflist | Move buffer to a higher number. | Signal `buflist_mouse`.
| ◾◽◽ | - | buflist | Switch to buffer (previously visited buffer if the buffer is the current one). | Signal `buflist_mouse`.
| ◽◽◾ | - | buflist | Switch to next visited buffer if the buffer is the current one. | Signal `buflist_mouse`.
| kbd:[Ctrl+▲] | - | buflist | Switch to previous buffer. | Signal `buflist_mouse`.
| kbd:[Ctrl+▼] | - | buflist | Switch to next buffer. | Signal `buflist_mouse`.
| ◾◽◽ | up | nicklist | Scroll up one page in nicklist. | `/bar scroll nicklist ${_window_number} -100%`
| ◾◽◽ | down | nicklist | Scroll down one page in nicklist. | `/bar scroll nicklist ${_window_number} +100%`
| ◾◽◽ | up (long) | nicklist | Go to the beginning of nicklist. | `/bar scroll nicklist ${_window_number} b`
| ◾◽◽ | down (long) | nicklist | Go to the end of nicklist. | `/bar scroll nicklist ${_window_number} e`
| ◾◽◽ | - | nicklist | Open query with nick. | `/window ${_window_number};/query ${nick}`
| ◽◽◾ | - | nicklist | Do a whois on nick. | `/window ${_window_number};/whois ${nick}`
| ◾◽◽ | left | nicklist | Kick nick. | `/window ${_window_number};/kick ${nick}`
| ◾◽◽ | left (long) | nicklist | Kick and ban nick. | `/window ${_window_number};/kickban ${nick}`
| ◽◽◾ | left | nicklist | Ban nick. | `/window ${_window_number};/ban ${nick}`
| ◽◽◾ | - | input | Grab a mouse event and insert its code in command line. | `/input grab_mouse_area`
| kbd:[▲] | - | any bar | Scroll bar by -20%. | `/bar scroll ${_bar_name} ${_window_number} -20%`
| kbd:[▼] | - | any bar | Scroll bar by +20%. | `/bar scroll ${_bar_name} ${_window_number} +20%`
| ◽◾◽ | - | anywhere | Start cursor mode at this point. | `/cursor go ${_x},${_y}`
|===
[NOTE]
^(1)^ "⇑" and "⇓" are wheel up and down.
^(1)^ kbd:[▲] and kbd:[▼] are wheel up and down.
[[mouse]]
=== Mouse support
@@ -1842,7 +1860,7 @@ You can change or add bindings with the command `/key` using context "mouse"
(for syntax, see command <<command_weechat_key,/key>>).
Event name consists of a modifier (optional), a button/wheel name and a gesture
(optional). Different elements are separated by "-".
(optional). Different elements are separated by `+-+`.
List of modifiers:
@@ -2088,7 +2106,6 @@ Default plugins are:
|===
| Plugin | Description
| alias | Define alias for commands.
| aspell | Spell checking for command line.
| buflist | Bar item with list of buffers.
| charset | Charset decoding/encoding for buffers.
| exec | Execution of external commands in WeeChat.
@@ -2106,6 +2123,7 @@ Default plugins are:
| guile | Guile (scheme) scripting API.
| javascript | JavaScript scripting API.
| php | PHP scripting API.
| spell | Spell checking for command line.
| trigger | Text replacement and command execution on events triggered by WeeChat/plugins.
| xfer | File transfer and direct chat.
|===
@@ -2147,114 +2165,6 @@ Sections in file _alias.conf_:
/set alias.completion.* | Completions for aliases.
|===
[[aspell_plugin]]
=== Aspell
Aspell plugin lets you check spelling in command line. It is possible to use
many languages by buffer.
Spell checking is disabled by default and can be toggled with key kbd:[Alt+s].
[[aspell_dictionaries]]
==== Dictionaries
Before using spell checking, dictionaries must be defined, either globally or
specific to buffers.
Multiple dictionaries can be used at same time: WeeChat will check words in all
dictionaries.
For example to use English and French:
----
/set aspell.check.default_dict "en,fr"
----
It is possible to use a different dictionary on a specific buffer, for example
on a German channel:
----
/aspell setdict de
----
You can also specify a dictionary for a group of buffers, for example English
for all channels on freenode IRC server:
----
/set aspell.dict.irc.freenode en
----
For more information, see the command <<command_aspell_aspell,/aspell>>.
[[aspell_speller_options]]
==== Speller options
Speller options can be defined by adding options in section "option" of aspell
configuration.
The option name is an aspell configuration option. List of options can be found
in a shell with following command:
----
$ aspell config
----
For example, to enable option "ignore-case":
----
/set aspell.option.ignore-case "true"
----
[[aspell_suggestions]]
==== Suggestions
Suggestions are displayed in a bar item called "aspell_suggest". The number of
suggestions is set in option _aspell.check.suggestions_.
To enable suggestions you must set option _aspell.check.suggestions_ to an
integer ≥ 0 and add the bar item "aspell_suggest" to a bar, like _status_.
Example of suggestions with English dictionary (`en`):
....
│[12:55] [6] [irc/freenode] 3:#test(+n){4} [print,prone,prune] │
│[@Flashy] prinr █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
Example of suggestions with English and French dictionaries (`en,fr`):
....
│[12:55] [6] [irc/freenode] 3:#test(+n){4} [print,prone,prune/prime,primer,primé] │
│[@Flashy] prinr █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[aspell_commands]]
==== Commands
include::autogen/user/aspell_commands.adoc[]
[[aspell_options]]
==== Options
Sections in file _aspell.conf_:
[width="100%",cols="3m,6m,16",options="header"]
|===
| Section | Control command | Description
| color | /set aspell.color.* | Colors.
| check | /set aspell.check.* | Options to control spell checking.
| dict | <<command_aspell_aspell,/aspell setdict>> +
/set aspell.dict.* | Dictionaries used by buffer (options can be added/removed in section).
| look | /set aspell.look.* | Look and feel.
| option | /set aspell.option.* | <<aspell_speller_options,Speller options>> (options can be added/removed in section).
|===
Options:
include::autogen/user/aspell_options.adoc[]
[[buflist_plugin]]
=== Buflist
@@ -3229,7 +3139,7 @@ you can connect to WeeChat with any other IRC client (including WeeChat itself).
You can define one port by IRC server, or one generic port for all servers.
When using one port for all servers, the client must send the internal name of
server in the IRC "PASS" command, with this format:
server in the IRC "PASS" command, with this format (see example below):
----
PASS server:password
@@ -3250,6 +3160,14 @@ Example: IRC proxy without SSL only for server "freenode":
Now you can connect on port 8000 with any IRC client using server password
"mypassword" (or "freenode:mypassword" if no server was specified in the relay).
For example if you use WeeChat as IRC client of the relay, with a server called
"relay" and the relay password "secret", you can setup the password with this
command:
----
/set irc.server.relay.password "freenode:secret"
----
[[relay_weechat_protocol]]
==== WeeChat protocol
@@ -3290,6 +3208,27 @@ websocket = new WebSocket("ws://server.com:9000/weechat");
The port (9000 in example) is the port defined in Relay plugin.
The URI must always end with "/weechat" (for _irc_ and _weechat_ protocols).
[[relay_unix_socket]]
==== UNIX domain sockets
Using the protocol option "unix" with the `/relay add` command, you can listen
using any protocol on a UNIX domain socket at a given path. For example:
----
/relay add unix.weechat %h/relay_socket
----
This allows clients to connect using the weechat protocol to
_~/.weechat/relay_socket_. This is particularly useful to allow SSH forwarding
for relay clients, when other ports cannot be opened. Using OpenSSH:
----
$ ssh -L 9000:.weechat/relay_socket user@hostname
----
This redirects local relay clients connecting on port 9000 to the WeeChat
instance running on "hostname".
[[relay_commands]]
==== Commands
@@ -3511,6 +3450,114 @@ Options:
include::autogen/user/php_options.adoc[]
[[spell_plugin]]
=== Spell
Spell plugin lets you check spelling in command line. It is possible to use
many languages by buffer.
Spell checking is disabled by default and can be toggled with key kbd:[Alt+s].
[[spell_dictionaries]]
==== Dictionaries
Before using spell checking, dictionaries must be defined, either globally or
specific to buffers.
Multiple dictionaries can be used at same time: WeeChat will check words in all
dictionaries.
For example to use English and French:
----
/set spell.check.default_dict "en,fr"
----
It is possible to use a different dictionary on a specific buffer, for example
on a German channel:
----
/spell setdict de
----
You can also specify a dictionary for a group of buffers, for example English
for all channels on freenode IRC server:
----
/set spell.dict.irc.freenode en
----
For more information, see the command <<command_spell_spell,/spell>>.
[[spell_speller_options]]
==== Speller options
Speller options can be defined by adding options in section "option" of aspell
configuration.
The option name is an aspell configuration option. List of options can be found
in a shell with following command:
----
$ aspell config
----
For example, to enable option "ignore-case":
----
/set spell.option.ignore-case "true"
----
[[spell_suggestions]]
==== Suggestions
Suggestions are displayed in a bar item called "spell_suggest". The number of
suggestions is set in option _spell.check.suggestions_.
To enable suggestions you must set option _spell.check.suggestions_ to an
integer ≥ 0 and add the bar item "spell_suggest" to a bar, like _status_.
Example of suggestions with English dictionary (`en`):
....
│[12:55] [6] [irc/freenode] 3:#test(+n){4} [print,prone,prune] │
│[@Flashy] prinr █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
Example of suggestions with English and French dictionaries (`en,fr`):
....
│[12:55] [6] [irc/freenode] 3:#test(+n){4} [print,prone,prune/prime,primer,primé] │
│[@Flashy] prinr █ │
└─────────────────────────────────────────────────────────────────────────────────┘
....
[[spell_commands]]
==== Commands
include::autogen/user/spell_commands.adoc[]
[[spell_options]]
==== Options
Sections in file _spell.conf_:
[width="100%",cols="3m,6m,16",options="header"]
|===
| Section | Control command | Description
| color | /set spell.color.* | Colors.
| check | /set spell.check.* | Options to control spell checking.
| dict | <<command_spell_spell,/spell setdict>> +
/set spell.dict.* | Dictionaries used by buffer (options can be added/removed in section).
| look | /set spell.look.* | Look and feel.
| option | /set spell.option.* | <<spell_speller_options,Speller options>> (options can be added/removed in section).
|===
Options:
include::autogen/user/spell_options.adoc[]
[[trigger_plugin]]
=== Trigger
@@ -3566,7 +3613,7 @@ List of default triggers:
A trigger has the following options (names are
`trigger.trigger.<name>.<option>`):
[width="100%",cols="2m,2,10",options="header"]
[width="100%",cols="2m,3,10",options="header"]
|===
| Option | Values | Description
@@ -3575,7 +3622,7 @@ A trigger has the following options (names are
any more.
| hook | `signal`, `hsignal`, `modifier`, `line`, `print`, `command`,
`command_run`, `timer`, `config`, `focus` |
`command_run`, `timer`, `config`, `focus`, `info`, `info_hashtable` |
The hook used in trigger. For more information, see
link:weechat_plugin_api.en.html#hooks[WeeChat plugin API reference / Hooks].
@@ -3626,7 +3673,8 @@ order, if triggers are globally enabled and if the trigger itself is enabled:
. check trigger conditions: if false, exit
. replace text in trigger using regular expression(s)
. execute command(s)
. exit with a return code (except for hooks _modifier_ and _focus_)
. exit with a return code (except for hooks _modifier_, _line_, _focus_,
_info_ and _info_hashtable_)
. perform post action (if different from `none`).
[[trigger_hook_arguments]]
@@ -3722,6 +3770,20 @@ The arguments depend on the hook used. They are separated by semicolons.
3. ... |
`+buffer_nicklist+` |
link:weechat_plugin_api.en.html#_hook_focus[hook_focus]
| info |
1. info name (priority allowed) (required) +
2. info name (priority allowed) +
3. ... |
`+my_info+` |
link:weechat_plugin_api.en.html#_hook_info[hook_info]
| info_hashtable |
1. info name (priority allowed) (required) +
2. info name (priority allowed) +
3. ... |
`+my_info+` |
link:weechat_plugin_api.en.html#_hook_info_hashtable[hook_info_hashtable]
|===
[[trigger_conditions]]
@@ -3756,17 +3818,19 @@ type:
[width="100%",cols="2,3,7",options="header"]
|===
| Hook | Default variable | Update allowed ^(1)^
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
| timer | tg_remaining_calls |
| config | tg_value |
| focus | |
| Hook | Default variable | Update allowed ^(1)^
| signal | tg_signal_data |
| hsignal | |
| modifier | tg_string | tg_string
| line | message | buffer, buffer_name, y, date, date_printed, str_time, tags, notify_level, highlight, prefix, message
| print | tg_message |
| command | tg_argv_eol1 |
| command_run | tg_command |
| timer | tg_remaining_calls |
| config | tg_value |
| focus | |
| info | tg_info | tg_info
| info_hashtable | | all variables received in hashtable
|===
[NOTE]
@@ -3782,12 +3846,12 @@ Matching groups can be used in "replace":
* `+${re:0}+` to `+${re:99}+`: `+${re:0}+` is the whole match, `+${re:1}+` to
`+${re:99}+` are groups captured
* `+${re:+++}+`: the last match (with highest number)
* `+${re:+}+`: the last match (with highest number)
* `+${hide:c,${re:N}}+`: match "N" with all chars replaced by "c"
(example: `+${hide:*,${re:2}}+` is the group #2 with all chars replaced by
`+*+`).
Example: use bold for words between "*":
Example: use bold for words between `+*+`:
----
/\*([^ ]+)\*/*${color:bold}${re:1}${color:-bold}*/
@@ -4063,6 +4127,33 @@ The "focus" callback sets following variables in hashtable:
The hashtable contains all keys/values from hashtable received (type:
string/string).
[[trigger_data_info]]
===== Info
The "info" callback sets following variables in hashtable:
[width="100%",cols="3m,2,14",options="header"]
|===
| Variable | Type | Description
| tg_info_name | string | Name of info.
| tg_arguments | string | Arguments.
| tg_info | string | Empty string (the info to return).
|===
[[trigger_data_info_hashtable]]
===== Info_hashtable
The "info_hashtable" callback sets following variables in hashtable:
[width="100%",cols="3m,2,14",options="header"]
|===
| Variable | Type | Description
| tg_info_name | string | Name of info.
|===
The hashtable contains all keys/values from hashtable received (type:
string/string).
[[trigger_examples]]
==== Examples
+15 -11
View File
@@ -27,8 +27,8 @@ Run from your shell:
$ weechat
----
[[help_options]]
== Ayuda en linea / Opciones
[[help]]
== Ayuda en linea
WeeChat tiene ayuda para todos los comandos, solo teclee:
@@ -42,16 +42,27 @@ Para obtener ayuda específicamente de un comando, teclee:
/help comando
----
Para configurar una opción, use:
// TRANSLATION MISSING
Help is available for options as well:
----
/set config.section.option valor
/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
y `option` el nombre de la opción).
// TRANSLATION MISSING
[[options]]
== Set options
Para configurar una opción, use:
----
/set config.section.option valor
----
WeeChat usará inmediatamente el nuevo valor asignado (*no* es necesario
reiniciar WeeChat después de aplicar cambios a la configuración).
@@ -68,13 +79,6 @@ that were not yet saved with `/save`). +
You can use the command `/set`, which checks the value and applies immediately
the changes.
// TRANSLATION MISSING
Help is available for options:
----
/help config.section.option
----
// TRANSLATION MISSING
The plugin _fset_ allows you to easily browse options and change them.
+3
View File
@@ -25,6 +25,7 @@ if(ENABLE_MAN)
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat.1.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.fr.adoc
@@ -41,6 +42,7 @@ if(ENABLE_MAN)
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat-headless.1.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_plugin_options.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_files.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/man_copyright.fr.adoc
@@ -64,6 +66,7 @@ if(ENABLE_DOC)
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options.fr.adoc
${CMAKE_CURRENT_SOURCE_DIR}/cmdline_options_debug.fr.adoc
${AUTOGEN_USER}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Building weechat_user.fr.html"
+10 -6
View File
@@ -23,7 +23,9 @@ docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
docinfo.html \
weechat.1.fr.adoc \
weechat-headless.1.fr.adoc \
cmdline_options.fr.adoc \
cmdline_options_debug.fr.adoc \
weechat_user.fr.adoc \
weechat_plugin_api.fr.adoc \
weechat_scripting.fr.adoc \
@@ -36,7 +38,8 @@ EXTRA_DIST = CMakeLists.txt \
$(wildcard autogen/plugin_api/*.adoc)
if MAN
man_targets = weechat.1
man_targets = weechat.1 \
weechat-headless.1
man_install = install-man
man_uninstall = uninstall-man
endif
@@ -54,12 +57,14 @@ if DOC
endif
all-local: $(man_targets) $(doc_targets)
# man page
weechat.1: weechat.1.fr.adoc cmdline_options.fr.adoc
# man pages
weechat.1: weechat.1.fr.adoc cmdline_options.fr.adoc cmdline_options_debug.fr.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat.1 $(abs_top_srcdir)/doc/fr/weechat.1.fr.adoc
weechat-headless.1: weechat-headless.1.fr.adoc cmdline_options.fr.adoc cmdline_options_debug.fr.adoc
$(ASCIIDOCTOR) -a revision="WeeChat $(VERSION)" -b manpage -o weechat-headless.1 $(abs_top_srcdir)/doc/fr/weechat-headless.1.fr.adoc
# user's guide
weechat_user.fr.html: weechat_user.fr.adoc cmdline_options.fr.adoc $(wildcard autogen/user/*.adoc) $(abs_top_srcdir)/doc/docinfo.html
weechat_user.fr.html: weechat_user.fr.adoc cmdline_options.fr.adoc cmdline_options_debug.fr.adoc $(wildcard autogen/user/*.adoc) $(abs_top_srcdir)/doc/docinfo.html
$(ASCIIDOCTOR) -a revision="$(VERSION)" -a sectanchors -a source-highlighter=prettify -o weechat_user.fr.html $(abs_top_srcdir)/doc/fr/weechat_user.fr.adoc
# plugin API reference
@@ -97,7 +102,6 @@ install-data-hook: $(man_install) $(doc_install)
install-man:
$(mkinstalldirs) $(DESTDIR)$(mandir)/fr/man1/
$(INSTALL_DATA) *.1 $(DESTDIR)$(mandir)/fr/man1/
(cd '$(DESTDIR)$(mandir)/fr/man1/' && $(RM) weechat-headless.1 && $(LN_S) weechat.1 weechat-headless.1)
install-doc:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
@@ -119,4 +123,4 @@ uninstall-doc:
# clean
clean-local:
-$(RM) weechat.1 weechat_*.html
-$(RM) weechat.1 weechat-headless.1 weechat_*.html
+4 -4
View File
@@ -10,10 +10,6 @@
| alias | alias_value | valeur de l'alias
| aspell | aspell_dicts | liste des dictionnaires aspell installés
| aspell | aspell_langs | liste de toutes les langues supportées par aspell
| exec | exec_commands_ids | ids (nombres et noms) des commandes exécutées
| fset | fset_options | fichiers de configuration, section, options et mots des options
@@ -86,6 +82,10 @@
| script | script_tags | étiquettes des scripts dans le dépôt
| spell | spell_dicts | liste des dictionnaires installés
| spell | spell_langs | liste de toutes les langues supportées
| tcl | tcl_script | liste des scripts
| trigger | trigger_hook_arguments | paramètres par défaut pour un hook
+2 -1
View File
@@ -243,6 +243,7 @@ _nick_first_tried_   (integer) +
_nick_alternate_number_   (integer) +
_nick_   (string) +
_nick_modes_   (string) +
_host_   (string) +
_checking_cap_ls_   (integer) +
_cap_ls_   (hashtable) +
_checking_cap_list_   (integer) +
@@ -429,7 +430,7 @@ _tags_   (string) +
_requirements_   (string) +
_min_weechat_   (string) +
_max_weechat_   (string) +
_md5sum_   (string) +
_sha512sum_   (string) +
_url_   (string) +
_popularity_   (integer) +
_date_added_   (time) +
+2 -2
View File
@@ -6,8 +6,6 @@
|===
| Extension | Nom | Description | Paramètres
| aspell | aspell_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")
| fifo | fifo_filename | nom du tube FIFO | -
| guile | guile_eval | évaluation de code source | code source à exécuter
@@ -74,6 +72,8 @@
| 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")
| tcl | tcl_eval | évaluation de code source | code source à exécuter
| tcl | tcl_interpreter | nom de l'interpréteur utilisé | -
@@ -6,7 +6,7 @@
. logger (14000)
. exec (13000)
. trigger (12000)
. aspell (11000)
. spell (11000)
. alias (10000)
. buflist (9000)
. fifo (8000)
-32
View File
@@ -1,32 +0,0 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_aspell_aspell]]
* `+aspell+`: configuration de l'extension aspell
----
/aspell enable|disable|toggle
listdict
setdict <dict>[,<dict>...]
deldict
addword [<dict>] <mot>
enable : activer aspell
disable : désactiver aspell
toggle : activer/désactiver aspell
listdict : afficher les dictionnaires installés
setdict : définir le dictionnaire pour le tampon courant (plusieurs dictionnaires peuvent être séparés par une virgule)
deldict : supprimer le dictionnaire utilisé sur le tampon courant
addword : ajouter un mot dans le dictionnaire personnel aspell
Les lignes d'entrée commençant par '/' ne sont pas vérifiées, sauf pour certaines commandes (voir /set aspell.check.commands).
Pour activer aspell sur tous les tampons, utilisez l'option "default_dict", par exemple :
/set aspell.check.default_dict "en"
/aspell enable
Pour afficher une liste des suggestions dans une barre, utilisez l'objet "aspell_suggest".
La touche par défaut pour activer/désactiver aspell est alt-s.
----
+1 -1
View File
@@ -741,7 +741,7 @@
** valeur par défaut: `+2048+`
* [[option_irc.server_default.ssl_fingerprint]] *irc.server_default.ssl_fingerprint*
** description: pass:none[empreinte du certificat qui est de confiance et accepté pour le serveur ; seuls les chiffres hexadécimaux sont autorisés (0-9, a-f) : 64 caractères pour SHA-512, 32 caractères pour SHA-256, 20 caractères pour SHA-1 (non sûr, non recommandé) ; plusieurs empreintes peuvent être séparées par des virgules ; si cette option est définie, les autres vérifications sur les certificats ne sont PAS effectuées (option "ssl_verify") (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[empreinte du certificat qui est de confiance et accepté pour le serveur ; seuls les chiffres hexadécimaux sont autorisés (0-9, a-f) : 128 caractères pour SHA-512, 64 caractères pour SHA-256, 40 caractères pour SHA-1 (non sûr, non recommandé) ; plusieurs empreintes peuvent être séparées par des virgules ; si cette option est définie, les autres vérifications sur les certificats ne sont PAS effectuées (option "ssl_verify") (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)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
+6 -2
View File
@@ -7,7 +7,7 @@
----
/relay list|listfull|listrelay
add <nom> <port>
add <nom> <port>|<chemin>
del|start|restart|stop <nom>
raw
sslcertkey
@@ -22,13 +22,15 @@
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)
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
Le nom du relai est : [ipv4.][ipv6.][ssl.]<protocole.nom>
Le nom du relai est : [ipv4.][ipv6.][ssl.]<protocole.nom> ou unix[.ssl].<protocole.nom>
ipv4 : forcer l'utilisation d'IPv4
ipv6 : forcer l'utilisation d'IPv6
ssl : activer SSL
unix : utiliser un socket de domaine UNIX
protocole.nom : protocole et nom à relayer :
- protocole "irc" : le nom est le serveur à partager (optionnel, si non donné, le nom de serveur doit être envoyé par le client dans la commande "PASS", avec le format : "PASS serveur:motdepasse")
- protocole "weechat" (le nom n'est pas utilisé)
@@ -55,4 +57,6 @@ Exemples :
/relay add ipv6.ssl.weechat 9001
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
----
+6
View File
@@ -181,3 +181,9 @@
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
* [[option_relay.weechat.commands]] *relay.weechat.commands*
** description: pass:none[liste des commandes autorisées/interdites lorsque qu'une entrée de données (texte ou commande) est reçue du client (séparées par des virgules) ; "*" signifie toutes les commandes, un nom commençant par "!" est une valeur négative pour empêcher une commande d'être exécutée, le caractère joker "*" est autorisé dans les noms ; cette option devrait être définie si le client relay n'est pas sûr (quelqu'un pourrait l'utiliser pour exécuter des commandes) ; par exemple "*,!exec,!quit" autorise toute commande sauf /exec et /quit]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
+32
View File
@@ -0,0 +1,32 @@
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_spell_spell]]
* `+spell+`: configuration de l'extension spell
----
/spell enable|disable|toggle
listdict
setdict <dict>[,<dict>...]
deldict
addword [<dict>] <mot>
enable : activer le vérificateur d'orthographe
disable : désactiver le vérificateur d'orthographe
toggle : activer/désactiver le vérificateur d'orthographe
listdict : afficher les dictionnaires installés
setdict : définir le dictionnaire pour le tampon courant (plusieurs dictionnaires peuvent être séparés par une virgule)
deldict : supprimer le dictionnaire utilisé sur le tampon courant
addword : ajouter un mot dans le dictionnaire personnel
Les lignes d'entrée commençant par '/' ne sont pas vérifiées, sauf pour certaines commandes (voir /set spell.check.commands).
Pour activer le vérificateur d'orthographe sur tous les tampons, utilisez l'option "default_dict", par exemple :
/set spell.check.default_dict "en"
/spell enable
Pour afficher une liste des suggestions dans une barre, utilisez l'objet "spell_suggest".
La touche par défaut pour activer/désactiver le vérificateur d'orthographe est alt-s.
----
@@ -2,80 +2,80 @@
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
* [[option_aspell.check.commands]] *aspell.check.commands*
* [[option_spell.check.commands]] *spell.check.commands*
** description: pass:none[liste de commandes (séparées par des virgules) pour lesquelles la vérification orthographique est activée (la vérification est désactivée pour toutes les autres commandes)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+"ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"+`
* [[option_aspell.check.default_dict]] *aspell.check.default_dict*
** description: pass:none[dictionnaire par défaut (ou liste de dictionnaires séparés par une virgule) à utiliser quand le tampon courant n'a pas de dictionnaire défini (laissez blanc pour désactiver aspell sur les tampons pour lesquels vous ne l'avez pas explicitement activé)]
* [[option_spell.check.default_dict]] *spell.check.default_dict*
** description: pass:none[dictionnaire par défaut (ou liste de dictionnaires séparés par une virgule) à utiliser quand le tampon courant n'a pas de dictionnaire défini (laissez blanc pour désactiver le vérificateur d'orthographe sur les tampons pour lesquels vous ne l'avez pas explicitement activé)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
* [[option_aspell.check.during_search]] *aspell.check.during_search*
* [[option_spell.check.during_search]] *spell.check.during_search*
** description: pass:none[vérifier les mots pendant la recherche de texte dans le tampon]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_aspell.check.enabled]] *aspell.check.enabled*
** description: pass:none[activer la vérification aspell pour la ligne de commande]
* [[option_spell.check.enabled]] *spell.check.enabled*
** description: pass:none[activer le vérificateur d'orthographe pour la ligne de commande]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_aspell.check.real_time]] *aspell.check.real_time*
* [[option_spell.check.real_time]] *spell.check.real_time*
** description: pass:none[vérification orthographique des mots en temps réel (plus lent, désactivé par défaut : les mots sont vérifiés seulement s'il y a un délimiteur après)]
** type: booléen
** valeurs: on, off
** valeur par défaut: `+off+`
* [[option_aspell.check.suggestions]] *aspell.check.suggestions*
** description: pass:none[nombre de suggestions à afficher dans l'objet de barre "aspell_suggest" pour chaque dictionnaire du tampon (-1 = désactiver les suggestions, 0 = afficher toutes les suggestions possibles dans toutes les langues)]
* [[option_spell.check.suggestions]] *spell.check.suggestions*
** description: pass:none[nombre de suggestions à afficher dans l'objet de barre "spell_suggest" pour chaque dictionnaire du tampon (-1 = désactiver les suggestions, 0 = afficher toutes les suggestions possibles dans toutes les langues)]
** type: entier
** valeurs: -1 .. 2147483647
** valeur par défaut: `+-1+`
* [[option_aspell.check.word_min_length]] *aspell.check.word_min_length*
* [[option_spell.check.word_min_length]] *spell.check.word_min_length*
** description: pass:none[longueur minimum d'un mot pour que l'orthographe soit vérifiée (utilisez 0 pour vérifier tous les mots)]
** type: entier
** valeurs: 0 .. 2147483647
** valeur par défaut: `+2+`
* [[option_aspell.color.misspelled]] *aspell.color.misspelled*
* [[option_spell.color.misspelled]] *spell.color.misspelled*
** description: pass:none[couleur du texte pour les mots mal orthographiés (barre de saisie)]
** 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: `+lightred+`
* [[option_aspell.color.suggestion]] *aspell.color.suggestion*
** description: pass:none[couleur du texte pour la suggestion sur un mot mal orthographié dans l'objet de barre "aspell_suggest"]
* [[option_spell.color.suggestion]] *spell.color.suggestion*
** description: pass:none[couleur du texte pour la suggestion sur un mot mal orthographié dans l'objet de barre "spell_suggest"]
** 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: `+default+`
* [[option_aspell.color.suggestion_delimiter_dict]] *aspell.color.suggestion_delimiter_dict*
** description: pass:none[couleur du texte pour les séparateurs affichés entre deux dictionnaires dans l'objet de barre "aspell_suggest"]
* [[option_spell.color.suggestion_delimiter_dict]] *spell.color.suggestion_delimiter_dict*
** description: pass:none[couleur du texte pour les séparateurs affichés entre deux dictionnaires dans l'objet de barre "spell_suggest"]
** 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: `+cyan+`
* [[option_aspell.color.suggestion_delimiter_word]] *aspell.color.suggestion_delimiter_word*
** description: pass:none[couleur du texte pour les séparateurs affichés entre deux mots dans l'objet de barre "aspell_suggest"]
* [[option_spell.color.suggestion_delimiter_word]] *spell.color.suggestion_delimiter_word*
** description: pass:none[couleur du texte pour les séparateurs affichés entre deux mots dans l'objet de barre "spell_suggest"]
** 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: `+cyan+`
* [[option_aspell.look.suggestion_delimiter_dict]] *aspell.look.suggestion_delimiter_dict*
** description: pass:none[séparateur affiché entre deux dictionnaires dans l'objet de barre "aspell_suggest"]
* [[option_spell.look.suggestion_delimiter_dict]] *spell.look.suggestion_delimiter_dict*
** description: pass:none[séparateur affiché entre deux dictionnaires dans l'objet de barre "spell_suggest"]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+" / "+`
* [[option_aspell.look.suggestion_delimiter_word]] *aspell.look.suggestion_delimiter_word*
** description: pass:none[séparateur affiché entre deux mots dans l'objet de barre "aspell_suggest"]
* [[option_spell.look.suggestion_delimiter_word]] *spell.look.suggestion_delimiter_word*
** description: pass:none[séparateur affiché entre deux mots dans l'objet de barre "spell_suggest"]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+","+`
+4 -2
View File
@@ -27,7 +27,7 @@ listdefault : lister les triggers par défaut
addoff : ajouter un trigger (désactivé)
addreplace : ajouter ou remplacer un trigger existant
nom : nom du trigger
hook : signal, hsignal, modifier, line, print, command, command_run, timer, config, focus
hook : signal, hsignal, modifier, line, print, command, command_run, timer, config, focus, info, info_hashtable
paramètres : paramètres pour le hook, dépendant du hook (séparés par des points-virgules) :
signal : nom(s) de signal (obligatoire)
hsignal : nom(s) de signal (obligatoire)
@@ -39,6 +39,8 @@ listdefault : lister les triggers par défaut
timer : intervalle (obligatoire), alignement sur la seconde, nombre max d'appels
config : nom(s) de l'option (obligatoire)
focus : nom(s) de la zone (obligatoire)
info : nom(s) de l'info (obligatoire)
info_hashtable : nom(s) de l'info (obligatoire)
conditions : conditions évaluées pour le trigger
regex : une ou plusieurs expressions régulières pour remplacer des chaînes dans les variables
commande : commande à exécuter (plusieurs commandes peuvent être séparées par ";")
@@ -70,7 +72,7 @@ Lorsqu'une fonction de rappel de trigger est appelée, les actions suivantes son
1. vérifier les conditions ; si faux, sortir
2. remplacer le texte en utilisant une/des expression(s)s régulière(s)s POSIX étendue(s)s (si définie(s) dans le trigger)
3. exécuter le(s) commande(s) (si définie(s) dans le trigger)
4. sortir avec le code retour (sauf pour les modificateurs, line et focus)
4. sortir avec le code retour (sauf pour les modificateurs, line, focus, info et info_hashtable)
5. effectuer l'action "post"
Exemples (vous pouvez aussi regarder les triggers par défaut avec /trigger listdefault) :
+12 -6
View File
@@ -351,7 +351,7 @@ Exemples (conditions) :
----
/filter list
enable|disable|toggle [<nom>|@]
add <nom> <tampon>[,<tampon>...] <étiquettes> <regex>
add|addreplace <nom> <tampon>[,<tampon>...] <étiquettes> <regex>
rename <nom> <nouveau_nom>
del <nom>|-all
@@ -361,6 +361,7 @@ Exemples (conditions) :
toggle : activer/désactiver les filtres
nom : nom de filtre ("@" = activer/désactiver tous les filtres dans le tampon courant)
add : ajouter un filtre
addreplace : ajouter ou remplacer un filtre existant
rename : renommer un filtre
del : supprimer un filtre
-all : supprimer tous les filtres
@@ -754,13 +755,18 @@ Sans paramètre, tous les fichiers (WeeChat et extensions) sont rechargés.
* `+repeat+`: exécuter une commande plusieurs fois
----
/repeat [-interval <délai>] <nombre> <commande>
/repeat [-interval <délai>[<unité>]] <nombre> <commande>
délai : délai entre l'exécution des commandes (en millisecondes)
délai : délai entre l'exécution des commandes
unité : optionnelle, valeurs possibles :
ms : millisecondes
s : secondes (par défaut)
m : minutes
h : heures
nombre : nombre de fois que la commande sera exécutée
commande : commande à exécuter (un '/' est automatiquement ajouté s'il n'est pas trouvé au début de la commande)
commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')
Toutes les commandes sont exécutées sur le tampon où la commande a été lancée.
Note : la commande est exécutée sur le tampon où /repeat a été exécuté (si le tampon n'existe plus, la commande n'est pas exécutée).
Exemple :
faire défiler de 2 pages vers le haut :
@@ -946,7 +952,7 @@ L'alias par défaut /v peut être utilisé pour exécuter cette commande sur tou
h : heures
commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')
Note : la commande est exécutée sur le tampon où /wait a été exécuté (si le tampon n'est pas trouvé, alors la commande est exécutée sur le tampon WeeChat principal).
Note : la commande est exécutée sur le tampon où /wait a été exécuté (si le tampon n'existe plus, la commande n'est pas exécutée).
Exemples :
rejoindre le canal dans 10 secondes :
+13 -1
View File
@@ -596,6 +596,12 @@
** valeurs: toute chaîne
** valeur par défaut: `+"%H:%M:%S"+`
* [[option_weechat.look.buffer_time_same]] *weechat.look.buffer_time_same*
** description: pass:none[heure affichée pour un message avec la même heure que le message précédent ; utilisez un espace " " pour cacher l'heure, une autre chaîne pour l'afficher à la place de l'heure, ou une chaîne vide pour désactiver cette fonctionnalité (afficher l'heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
* [[option_weechat.look.color_basic_force_bold]] *weechat.look.color_basic_force_bold*
** description: pass:none[forcer l'attribut "bold" (gras) pour les couleurs claires et "darkgray" dans les couleurs de base (cette option est désactivée par défaut : le gras est utilisé seulement si le terminal a moins de 16 couleurs)]
** type: booléen
@@ -1047,7 +1053,13 @@
** valeur par défaut: `+"<--"+`
* [[option_weechat.look.prefix_same_nick]] *weechat.look.prefix_same_nick*
** description: pass:none[préfixe affiché pour un message avec le même pseudo que le précédent message : utiliser un espace " " pour cacher le préfixe, une autre chaîne pour l'afficher à la place du préfixe, ou une chaîne vide pour désactiver cette fonctionnalité (afficher le préfixe)]
** description: pass:none[préfixe affiché pour un message avec le même pseudo que le précédent message mais pas le message suivant : utiliser un espace " " pour cacher le préfixe, une autre chaîne pour l'afficher à la place du préfixe, ou une chaîne vide pour désactiver cette fonctionnalité (afficher le préfixe)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
* [[option_weechat.look.prefix_same_nick_middle]] *weechat.look.prefix_same_nick_middle*
** description: pass:none[préfixe affiché pour un message avec le même pseudo que le précédent message et le message suivant : utiliser un espace " " pour cacher le préfixe, une autre chaîne pour l'afficher à la place du préfixe, ou une chaîne vide pour désactiver cette fonctionnalité (afficher le préfixe)]
** type: chaîne
** valeurs: toute chaîne
** valeur par défaut: `+""+`
+7 -1
View File
@@ -164,7 +164,13 @@
** valeurs: on, off
** valeur par défaut: `+on+`
* [[option_xfer.network.speed_limit]] *xfer.network.speed_limit*
* [[option_xfer.network.speed_limit_recv]] *xfer.network.speed_limit_recv*
** description: pass:none[limitation de vitesse pour la réception de fichiers, en kilo-octets par seconde (0 signifie pas de limite)]
** type: entier
** valeurs: 0 .. 2147483647
** valeur par défaut: `+0+`
* [[option_xfer.network.speed_limit_send]] *xfer.network.speed_limit_send*
** description: pass:none[limitation de vitesse pour l'envoi des fichiers, en kilo-octets par seconde (0 signifie pas de limite)]
** type: entier
** valeurs: 0 .. 2147483647
+13
View File
@@ -0,0 +1,13 @@
*--no-dlclose*::
Do not call the function dlclose after plugins are unloaded.
This is useful with tools like Valgrind to display stack for unloaded
plugins.
*--no-gnutls*::
Do not call the init and deinit functions of GnuTLS library.
This is useful with tools like Valgrind and electric-fence, to prevent
GnuTLS memory errors.
*--no-gcrypt*::
Do not call the init and deinit functions of Gcrypt library.
This is useful with tools like Valgrind, to prevent Gcrypt memory errors.
+3 -3
View File
@@ -10,9 +10,6 @@ $HOME/.weechat/sec.conf::
$HOME/.weechat/alias.conf::
fichier de configuration pour l'extension _alias_
$HOME/.weechat/aspell.conf::
fichier de configuration pour l'extension _aspell_
$HOME/.weechat/buflist.conf::
fichier de configuration pour l'extension _buflist_
@@ -61,6 +58,9 @@ $HOME/.weechat/ruby.conf::
$HOME/.weechat/script.conf::
fichier de configuration pour l'extension _script_
$HOME/.weechat/spell.conf::
fichier de configuration pour l'extension _spell_
$HOME/.weechat/tcl.conf::
fichier de configuration pour l'extension _tcl_
+8 -1
View File
@@ -13,7 +13,7 @@ weechat-headless - le client de discussion extensible (version sans interface)
== SYNOPSIS
[verse]
*weechat-headless* [-a|--no-connect] [--daemon] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <extensions>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [plugin:option...]
*weechat-headless* [-a|--no-connect] [--daemon] [-d|--dir <path>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <extensions>] [-r|--run-command <command>] [-s|--no-script] [--upgrade] [option-debug...] [plugin:option...]
*weechat-headless* [-c|--colors]
*weechat-headless* [-h|--help]
*weechat-headless* [-l|--license]
@@ -33,6 +33,13 @@ avec l'option "--daemon".
include::cmdline_options.fr.adoc[]
== OPTIONS DE DEBUG
*ATTENTION :* ces options sont pour du debug seulement,
*NE PAS UTILISER EN PRODUCTION !*
include::cmdline_options_debug.fr.adoc[]
== OPTIONS D'EXTENSION
include::man_plugin_options.fr.adoc[]
+8 -1
View File
@@ -13,7 +13,7 @@ weechat - le client de discussion extensible
== SYNOPSIS
[verse]
*weechat* [-a|--no-connect] [-d|--dir <répertoire>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <extensions>] [-r|--run-command <commande>] [-s|--no-script] [--upgrade] [extension:option...]
*weechat* [-a|--no-connect] [-d|--dir <répertoire>] [-t|--temp-dir] [-p|--no-plugin] [-P|--plugins <extensions>] [-r|--run-command <commande>] [-s|--no-script] [--upgrade] [option-debug...] [extension:option...]
*weechat* [-c|--colors]
*weechat* [-h|--help]
*weechat* [-l|--license]
@@ -29,6 +29,13 @@ Il est hautement paramétrable et extensible avec des scripts.
include::cmdline_options.fr.adoc[]
== OPTIONS DE DEBUG
*ATTENTION :* ces options sont pour du debug seulement,
*NE PAS UTILISER EN PRODUCTION !*
include::cmdline_options_debug.fr.adoc[]
== OPTIONS D'EXTENSION
include::man_plugin_options.fr.adoc[]
+11 -10
View File
@@ -72,7 +72,6 @@ Les répertoires principaux de WeeChat sont :
|          normal/ | Interface Curses.
|    plugins/ | API extension/script.
|       alias/ | Extension Alias.
|       aspell/ | Extension Aspell.
|       buflist/ | Extension Buflist.
|       charset/ | Extension Charset.
|       exec/ | Extension Exec.
@@ -89,6 +88,7 @@ Les répertoires principaux de WeeChat sont :
|       relay/ | Extension Relay (proxy IRC + relai pour interfaces distantes).
|       ruby/ | API script Ruby.
|       script/ | Gestionnaire de scripts.
|       spell/ | Extension Spell.
|       tcl/ | API script Tcl.
|       trigger/ | Extension Trigger.
|       xfer/ | Extension Xfer (IRC DCC fichier/discussion).
@@ -225,14 +225,14 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|       alias-completion.c | Complétions pour Alias.
|       alias-config.c | Options de configuration des alias (fichier alias.conf).
|       alias-info.c | Info/infolists/hdata pour les alias.
|    aspell/ | Extension Aspell.
|       weechat-aspell.c | Fonctions principales pour Aspell.
|       weechat-aspell-bar-item.c | Objets de barre Aspell.
|       weechat-aspell-command.c | Commandes Aspell.
|       weechat-aspell-completion.c | Complétions pour Aspell.
|       weechat-aspell-config.c | Options de configuration pour Aspell (fichier aspell.conf).
|       weechat-aspell-info.c | Info/infolists/hdata pour Aspell.
|       weechat-aspell-speller.c | Gestion des correcteurs orthographiques.
|    spell/ | Extension Spell.
|       spell.c | Fonctions principales pour Spell.
|       spell-bar-item.c | Objets de barre Spell.
|       spell-command.c | Commandes Spell.
|       spell-completion.c | Complétions pour Spell.
|       spell-config.c | Options de configuration pour Spell (fichier spell.conf).
|       spell-info.c | Info/infolists/hdata pour Spell.
|       spell-speller.c | Gestion des correcteurs orthographiques.
|    buflist/ | Extension Buflist.
|       buflist.c | Fonctions principales de Buflist.
|       buflist-bar-item.c | Objets de barre Buflist.
@@ -420,7 +420,8 @@ Fichiers de documentation :
|    docinfo.html | Style Asciidoctor.
|    docgen.py | Script Python pour construire les fichiers dans le répertoire _autogen/_ (voir ci-dessous).
|    XX/ | Documentation pour la langue XX (langues : en, fr, de, it, ...).
|       cmdline_options.XX.adoc | Options de ligne de commande (fichier inclus dans la page de manuel et le guide utilisateur).
|       cmdline_options.XX.adoc | Options générales de ligne de commande (fichier inclus dans les pages de manuel et le guide utilisateur).
|       cmdline_options_debug.XX.adoc | Options de debug de ligne de commande (fichier inclus dans les pages de manuel et le guide utilisateur).
|       weechat.1.XX.adoc | Page de manuel (`man weechat`).
|       weechat_dev.XX.adoc | link:weechat_dev.fr.html[Guide du développeur] (ce document).
|       weechat_faq.XX.adoc | link:weechat_faq.fr.html[FAQ] (questions fréquemment posées).
+15 -11
View File
@@ -219,8 +219,8 @@ Pour déplacer la barre en bas :
Pour faire défiler la barre : si la souris est activée (touche : kbd:[Alt+m]),
vous pouvez faire défiler avec la roulette de votre souris.
Les touches par défaut pour faire défiler la barre _buflist_ sont kbd:[F1],
kbd:[F2], kbd:[Alt+F1] et kbd:[Alt+F2].
Les touches par défaut pour faire défiler la barre _buflist_ sont kbd:[F1]
(ou kbd:[Ctrl+F1]), kbd:[F2] (ou kbd:[Ctrl+F2]), kbd:[Alt+F1] et kbd:[Alt+F2].
Pour le script _buffers.pl_, vous pouvez définir des touches, comme les touches
déjà existantes pour faire défiler la liste de pseudos. +
@@ -327,8 +327,8 @@ barre, WeeChat recréera automatiquement la barre par défaut "input" si l'objet
=== Comment puis-je copier/coller du texte sans coller la liste des pseudos ?
Avec WeeChat ≥ 1.0, vous pouvez utiliser l'affichage dépouillé (touche par
défaut : kbd:[Alt+l]), qui affiche juste le contenu de la fenêtre actuellement
sélectionnée sans aucun formatage.
défaut : kbd:[Alt+l] (`L`)), qui affiche juste le contenu de la fenêtre
actuellement sélectionnée sans aucun formatage.
Vous pouvez utiliser un terminal qui propose la sélection rectangulaire (comme
rxvt-unicode, konsole, gnome-terminal, etc.). La touche est habituellement
@@ -345,7 +345,7 @@ exemple :
=== Comment puis-je cliquer sur les longs URLs (plus d'une ligne) ?
Avec WeeChat ≥ 1.0, vous pouvez utiliser l'affichage dépouillé (touche par
défaut : kbd:[Alt+l]).
défaut : kbd:[Alt+l] (`L`)).
Pour rendre le clic d'URL plus facile, vous pouvez :
@@ -1000,15 +1000,19 @@ $ cd ~/.weechat/script
$ curl -O https://weechat.org/files/plugins.xml.gz
----
[[aspell_dictionaries]]
[[spell_dictionaries]]
=== J'ai installé des dictionnaires aspell sur mon système, comment les utiliser sans redémarrer WeeChat ?
Vous devez recharger l'extension aspell :
Vous devez recharger l'extension spell :
----
/plugin reload aspell
/plugin reload spell
----
[NOTE]
Avec WeeChat ≤ 2.4, l'extension "spell" s'appelait "aspell", donc la commande est :
`/plugin reload aspell`.
[[settings]]
== Réglages
@@ -1042,8 +1046,8 @@ Vous pouvez essayer les astuces suivantes pour consommer moins de mémoire :
* Utiliser la dernière version stable (elle est supposée avoir moins de fuites
de mémoire que les versions plus anciennes).
* Ne pas charger les extensions si vous ne les utilisez pas, par exemple :
aspell, buflist, fifo, logger, perl, python, ruby, lua, tcl, guile,
javascript, php, xfer (utilisé pour les DCC).
buflist, fifo, logger, perl, python, ruby, lua, tcl, guile, javascript, php,
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
@@ -1062,7 +1066,7 @@ celles-ci :
* Supprimer l'affichage des secondes dans l'heure de la barre de statut :
`/set weechat.look.item_time_format "%H:%M"` (ceci est la valeur par défaut).
* Désactiver la vérification en temps réel des mots mal orthographiés dans la
ligne de commande (si vous l'avez activée) : `/set aspell.check.real_time off`.
ligne de commande (si vous l'avez activée) : `/set spell.check.real_time off`.
* Définir la variable _TZ_ (par exemple : `export TZ="Europe/Paris"`), pour
éviter un accès fréquent au fichier _/etc/localtime_.
+207 -36
View File
@@ -904,11 +904,63 @@ Script (Python) :
match = weechat.string_match(string, mask, case_sensitive)
# exemples
match1 = weechat.string_match("abcdef", "abc*", 0) # 1
match2 = weechat.string_match("abcdef", "*dd*", 0) # 0
match3 = weechat.string_match("abcdef", "*def", 0) # 1
match4 = weechat.string_match("abcdef", "*de*", 0) # 1
match5 = weechat.string_match("abcdef", "*b*d*", 0) # 1
match1 = weechat.string_match("abcdef", "abc*", 0) # == 1
match2 = weechat.string_match("abcdef", "*dd*", 0) # == 0
match3 = weechat.string_match("abcdef", "*def", 0) # == 1
match4 = weechat.string_match("abcdef", "*de*", 0) # == 1
match5 = weechat.string_match("abcdef", "*b*d*", 0) # == 1
----
==== string_match_list
_WeeChat ≥ 2.5._
Vérifier si une chaîne correspond à une liste de masques. Des masques négatifs
sont autorisés avec le format "!mot". Un masque négatif a une priorité plus
haute qu'un masque standard.
Prototype :
[source,C]
----
int weechat_string_match_list (const char *string, const char **masks,
int case_sensitive);
----
Paramètres :
* _string_ : chaîne
* _masks_ : liste de masques avec un NULL après le dernier masque de la liste ;
chaque masque est comparé à la chaîne avec la fonction
<<_string_match,string_match>>
* _case_sensitive_ : 1 pour une comparaison tenant compte de la casse, sinon 0
Valeur de retour :
* 1 si la chaîne correspond à la liste de masques (au moins un masque correspond
et aucun masque négatif ne correspond), sinon 0
Exemple en C :
[source,C]
----
const char *masks[3] = { "*", "!abc*", NULL };
int match1 = weechat_string_match_list ("abc", masks, 0); /* == 0 */
int match2 = weechat_string_match_list ("abcdef", masks, 0); /* == 0 */
int match3 = weechat_string_match_list ("def", masks, 0); /* == 1 */
----
Script (Python) :
[source,python]
----
# prototype
match = weechat.string_match_list(string, masks, case_sensitive)
# exemples
match1 = weechat.string_match("abc", "*,!abc*", 0) # == 0
match2 = weechat.string_match("abcdef", "*,!abc*", 0) # == 0
match3 = weechat.string_match("def", "*,!abc*", 0) # == 1
----
==== string_expand_home
@@ -1457,6 +1509,8 @@ Cette fonction n'est pas disponible dans l'API script.
==== string_split
_Mis à jour dans la 2.5._
Découper une chaîne à l'aide de délimiteur(s).
Prototype :
@@ -1464,25 +1518,40 @@ Prototype :
[source,C]
----
char **weechat_string_split (const char *string, const char *separators,
int keep_eol, int num_items_max,
int *num_items);
int flags, int num_items_max, int *num_items);
----
Paramètres :
* _string_ : chaîne à découper
* _separators_ : délimiteurs utilisés pour le découpage
* _keep_eol_ : si différent de 0, alors chaque paramètre contiendra toutes les
chaînes jusqu'à la fin de la ligne (voir exemple ci-dessous)
** 0 : chaque chaîne contiendra un mot
** 1 : chaque chaîne contiendra toute la chaîne jusqu'à la fin de la ligne (voir
exemple ci-dessous)
** 2 : comme 1, mais ne supprime pas les séparateurs en fin de chaîne avant le
coupage _(WeeChat ≥ 0.3.6)_
* _flags_ : combinaison de valeurs pour changer le comportement par défaut ;
si la valeur est 0, le comportement par défaut est utilisé (pas de suppression
des séparateurs en début/fin de chaîne, plusieurs séparateurs consécutifs
sont utilisés tels quels donc des chaînes vides peuvent être retournées) ;
les "flags" suivants sont acceptés :
** WEECHAT_STRING_SPLIT_STRIP_LEFT : supprimer les séparateurs sur la gauche
(but de la chaîne)
** WEECHAT_STRING_SPLIT_STRIP_RIGHT : supprimer les séparateurs sur la droite
(fin de la chaîne)
** WEECHAT_STRING_SPLIT_COLLAPSE_SEPS : regrouper plusieurs séparateurs
consécutifs en un seul
** WEECHAT_STRING_SPLIT_KEEP_EOL : garder la fin de la ligne pour chaque valeur
* _num_items_max_ : nombre maximum de chaînes à créer (0 = pas de limite)
* _num_items_ : pointeur vers un entier qui contiendra le nombre de chaînes
créées
[NOTE]
Avec WeeChat ≤ 2.4, le paramètre _flags_ s'appelait _keep_eol_ et prenait
d'autres valeurs, qui doivent être converties comme ceci ;
[width="100%",cols="1,10",options="header"]
|===
| keep_eol | flags
| 0 | WEECHAT_STRING_SPLIT_STRIP_LEFT \| WEECHAT_STRING_SPLIT_STRIP_RIGHT \| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS
| 1 | WEECHAT_STRING_SPLIT_STRIP_LEFT \| WEECHAT_STRING_SPLIT_STRIP_RIGHT \| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS \| WEECHAT_STRING_SPLIT_KEEP_EOL
| 2 | WEECHAT_STRING_SPLIT_STRIP_LEFT \| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS \| WEECHAT_STRING_SPLIT_KEEP_EOL
|===
Valeur de retour :
* tableau de chaînes, NULL en cas de problème (doit être supprimé par un appel à
@@ -1494,7 +1563,23 @@ Exemples en C :
----
char **argv;
int argc;
argv = weechat_string_split ("abc de fghi ", " ", 0, 0, &argc);
/* résultat : argv[0] == "abc"
argv[1] == "de"
argv[2] == ""
argv[3] == "fghi"
argv[4] == ""
argv[5] == NULL
argc == 5
*/
weechat_string_free_split (argv);
argv = weechat_string_split ("abc de fghi ", " ",
WEECHAT_STRING_SPLIT_STRIP_LEFT
| WEECHAT_STRING_SPLIT_STRIP_RIGHT
| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS,
0, &argc);
/* résultat : argv[0] == "abc"
argv[1] == "de"
argv[2] == "fghi"
@@ -1503,7 +1588,12 @@ argv = weechat_string_split ("abc de fghi ", " ", 0, 0, &argc);
*/
weechat_string_free_split (argv);
argv = weechat_string_split ("abc de fghi ", " ", 1, 0, &argc);
argv = weechat_string_split ("abc de fghi ", " ",
WEECHAT_STRING_SPLIT_STRIP_LEFT
| WEECHAT_STRING_SPLIT_STRIP_RIGHT
| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS
| WEECHAT_STRING_SPLIT_KEEP_EOL,
0, &argc);
/* résultat : argv[0] == "abc de fghi"
argv[1] == "de fghi"
argv[2] == "fghi"
@@ -1512,7 +1602,11 @@ argv = weechat_string_split ("abc de fghi ", " ", 1, 0, &argc);
*/
weechat_string_free_split (argv);
argv = weechat_string_split ("abc de fghi ", " ", 2, 0, &argc);
argv = weechat_string_split ("abc de fghi ", " ",
WEECHAT_STRING_SPLIT_STRIP_LEFT
| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS
| WEECHAT_STRING_SPLIT_KEEP_EOL,
0, &argc);
/* résultat : argv[0] == "abc de fghi "
argv[1] == "de fghi "
argv[2] == "fghi "
@@ -2369,7 +2463,7 @@ première étendue à la dernière) :
`+${re:0}+` +
`+${re:1}+` +
`+${re:2}+` +
`+${re:+++}+` +
`+${re:+}+` +
`+${re:#}+` |
`+test1 test2+` +
`+test1+` +
@@ -7887,7 +7981,7 @@ void weechat_printf_date_tags (struct t_gui_buffer *buffer, time_t date,
Paramètres :
* _buffer_ : pointeur vers le tampon, si NULL, le message est affiché sur le
tampon Weechat
tampon WeeChat
* _date_ : date pour le message (0 signifie la date/heure courante)
* _tags_ : liste d'étiquettes séparées par des virgules (NULL signifie aucune
étiquette)
@@ -9768,11 +9862,6 @@ Liste des signaux envoyés par WeeChat et les extensions :
|===
| Extension | Signal | Paramètres | Description
| aspell | aspell_suggest +
_(WeeChat ≥ 0.4.0)_ |
Pointeur : tampon. |
Nouvelles suggestions pour un mot mal orthographié.
| guile | guile_script_loaded +
_(WeeChat ≥ 0.3.9)_ |
Chaîne : chemin vers le script. |
@@ -10078,6 +10167,11 @@ Liste des signaux envoyés par WeeChat et les extensions :
Chaîne : liste de scripts supprimés (séparés par des virgules). |
Script(s) ruby supprimé(s).
| spell | spell_suggest +
_(WeeChat ≥ 2.4)_ |
Pointeur : tampon. |
Nouvelles suggestions pour un mot mal orthographié.
| tcl | tcl_script_loaded +
_(WeeChat ≥ 0.3.9)_ |
Chaîne : chemin vers le script. |
@@ -11413,7 +11507,7 @@ weechat.hook_modifier_exec("mon_modifier", mes_donnees, ma_chaine)
==== hook_info
_Mis à jour dans la 1.5._
_Mis à jour dans la 1.5, 2.5._
Accrocher une information (la fonction de rappel prend et retourne une chaîne).
@@ -11424,10 +11518,10 @@ Prototype :
struct t_hook *weechat_hook_info (const char *info_name,
const char *description,
const char *args_description,
const char *(*callback)(const void *pointer,
void *data,
const char *info_name,
const char *arguments),
char *(*callback)(const void *pointer,
void *data,
const char *info_name,
const char *arguments),
const void *callback_pointer,
void *callback_data);
----
@@ -11457,16 +11551,20 @@ Valeur de retour :
* pointeur vers le nouveau "hook", NULL en cas d'erreur
[NOTE]
Avec WeeChat ≥ 2.5, la fonction de rappel renvoie une chaîne allouée
(avec WeeChat ≤ 2.4, il s'agissait d'un pointeur vers une chaîne statique).
Exemple en C :
[source,C]
----
const char *
char *
my_info_cb (const void *pointer, void *data, const char *info_name,
const char *arguments)
{
/* ... */
return pointeur_vers_chaine;
return strdup ("some_info");
}
/* ajoute l'information "mon_info" */
@@ -14614,7 +14712,7 @@ Paramètres :
* _command_ : commande à exécuter (si elle commence par "/"), ou texte à
envoyer au tampon
Valeur de retour : (_WeeChat ≥ 1.1_)
Valeur de retour (_WeeChat ≥ 1.1_) :
* _WEECHAT_RC_OK_ si ok
* _WEECHAT_RC_ERROR_ si erreur
@@ -14639,6 +14737,65 @@ weechat.command(buffer, command)
rc = weechat.command(weechat.buffer_search("irc", "freenode.#weechat"), "/whois FlashCode")
----
==== command_options
_WeeChat ≥ 2.5._
Exécuter une commande ou envoyer du texte au tampon avec des options.
Prototype :
[source,C]
----
int weechat_command_options (struct t_gui_buffer *buffer, const char *command,
struct t_hashtable *options);
----
Paramètres :
* _buffer_ : pointeur vers le tampon (la commande est exécutée sur ce tampon,
NULL pour le tampon courant)
* _command_ : commande à exécuter (si elle commence par "/"), ou texte à
envoyer au tampon
* _options_ : table de hachage avec des options (les clés et valeurs doivent
être des chaînes) (peut être NULL) :
** _commands_ : une liste de commandes autorisées pendant l'appel, séparées par
des virgules ; voir la fonction <<_string_match_list,string_match_list>>
pour le format
** _delay_ : délai pour exécuter la commande, en millisecondes
Valeur de retour :
* _WEECHAT_RC_OK_ si ok
* _WEECHAT_RC_ERROR_ si erreur
Exemple en C :
[source,C]
----
/* autoriser toute commande sauf /exec, lancer la commande dans 2 secondes */
int rc;
struct t_hashtable *options = weechat_hashtable_new (8,
WEECHAT_HASHTABLE_STRING,
WEECHAT_HASHTABLE_STRING,
NULL,
NULL);
weechat_hashtable_set (options, "commands", "*,!exec");
weechat_hashtable_set (options, "delay", "2000");
rc = weechat_command_options (NULL, "/une_commande paramètres", options);
----
Script (Python) :
[source,python]
----
# prototype
weechat.command_options(buffer, command, options)
# exemple : autoriser toute commande sauf /exec
rc = weechat.command("", "/une_commande paramètres", {"commands": "*,!exec"})
----
[[network]]
=== Réseau
@@ -14751,13 +14908,15 @@ Fonctions pour obtenir des informations.
==== info_get
_Mis à jour dans la 2.5._
Retourner une information, sous forme de chaîne, de WeeChat ou d'une extension.
Prototype :
[source,C]
----
const char *weechat_info_get (const char *info_name, const char *arguments);
char *weechat_info_get (const char *info_name, const char *arguments);
----
Paramètres :
@@ -14770,6 +14929,10 @@ Valeur de retour :
* chaîne avec l'information demandée, NULL en cas d'erreur
[NOTE]
Avec WeeChat ≥ 2.5, la valeur retournée est une chaîne allouée
(avec WeeChat ≤ 2.4, il s'agissait d'un pointeur vers une chaîne statique).
Infos :
include::autogen/plugin_api/infos.adoc[]
@@ -14778,11 +14941,19 @@ Exemple en C :
[source,C]
----
char *version = weechat_info_get ("version", NULL);
char *date = weechat_info_get ("date", NULL);
weechat_printf (NULL, "La version de WeeChat est : %s (compilée le %s)",
weechat_info_get ("version", NULL),
weechat_info_get ("date", NULL));
weechat_printf (NULL, "Le répertoire de WeeChat est : %s",
weechat_info_get ("weechat_dir", NULL));
version, date);
if (version)
free (version);
if (date)
free (date);
weechat_dir = weechat_info_get ("weechat_dir", NULL);
weechat_printf (NULL, "Le répertoire de WeeChat est : %s", weechat_dir);
if (weechat_dir)
free (weechat_dir);
----
Script (Python) :
+14 -10
View File
@@ -21,8 +21,8 @@ Lancer depuis votre shell :
$ weechat
----
[[help_options]]
== Aide en ligne / options
[[help]]
== Aide en ligne
WeeChat dispose d'aide pour toutes les commandes, tapez simplement :
@@ -36,16 +36,26 @@ Pour avoir de l'aide sur une commande, tapez :
/help commande
----
Pour modifier des options, tapez :
L'aide est également disponible pour les options :
----
/set config.section.option valeur
/help config.section.option
----
(où `config` est le nom de la configuration (`weechat` pour le cœur, ou
un nom d'extension), `section` la section de cette configuration et
`option` le nom de l'option).
// TRANSLATION MISSING
[[options]]
== Modifier les options
Pour modifier des options, tapez :
----
/set config.section.option valeur
----
WeeChat utilise immédiatement la nouvelle valeur (vous n'avez *jamais*
besoin de redémarrer WeeChat après avoir changé la configuration).
@@ -60,12 +70,6 @@ perdre d'autres changements qui n'auraient pas été sauvés avec `/save`). +
Vous pouvez utiliser la commande `/set`, qui vérifie la valeur et applique
les changements immédiatement.
L'aide est disponible pour les options ;
----
/help config.section.option
----
L'extension _fset_ vous permet de parcourir les options facilement et de les
modifier.

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