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

Compare commits

..

117 Commits

Author SHA1 Message Date
Sébastien Helleu f9c3d0ae0a Version 4.0.7 2023-12-03 19:05:52 +01:00
Sébastien Helleu 83749f491c irc: remove trailing "\r\n" in signals "irc_out" and "irc_outtags" when messages are queued 2023-11-26 18:56:33 +01:00
Sébastien Helleu d79342dafd tests: add tests on IRC message 337 2023-11-07 21:59:52 +01:00
Sébastien Helleu 999ba00ac6 irc: fix target buffer of IRC message 337 (whois reply: "is hiding their idle time") 2023-11-07 21:51:55 +01:00
Sébastien Helleu df7a428454 core: fix value of buffer variable "num_history" when the value defined in option weechat.history.max_commands is reached 2023-11-04 17:02:23 +01:00
Sébastien Helleu 1d6eb273c6 relay: close properly connection with the IRC client in case of server disconnection (issue #2038) 2023-11-04 09:07:24 +01:00
Sébastien Helleu ae93fa1fef core: remove incorrect warning when binding keys F10 to F20 (issue #2039) 2023-11-04 08:38:37 +01:00
Sébastien Helleu 7fabd8068f core, plugins: set error to NULL before calling strtol()
This is not strictly necessary, just in case the function strtol() doesn't
update the pointer.
2023-11-01 14:22:32 +01:00
Sébastien Helleu a48dd9d481 core: fix memory leak when config version is invalid or not supported 2023-10-30 23:23:58 +01:00
Sébastien Helleu 2ee71c7699 core: check that buffer is not NULL in function gui_chat_printf_date_tags_internal 2023-10-30 23:23:58 +01:00
Sébastien Helleu c7cf41c357 core: fix use NULL pointer when a config file has no options 2023-10-30 23:23:57 +01:00
Sébastien Helleu 7c21c6b993 logger: remove dead assignment 2023-10-30 23:23:57 +01:00
Sébastien Helleu 563654901c core: fix crash when "config_version" is present in a configuration file without a value 2023-10-30 23:23:57 +01:00
Sébastien Helleu 517c04ae65 core: display an error on startup if environment variable "HOME" is not set 2023-10-30 23:23:57 +01:00
Sébastien Helleu a317d0823a tests: check that environment variable "HOME" is set before using it 2023-10-30 23:07:41 +01:00
Sébastien Helleu a399d3f68c ruby: fix use of NULL variable when displaying exception 2023-10-30 23:07:20 +01:00
Sébastien Helleu b0e4e20205 Version 4.0.7-dev 2023-10-30 23:05:02 +01:00
Sébastien Helleu 5df21f38f3 ci: uninstall php8.1-imagick before build (issue #2009)
When php imagick is installed and when WeeChat is compiled with gcc, there's a
crash when the php plugin is loaded.  Newer versions of gcc should fix the
issue, but as in CI we can't easily use them, uninstalling imagick avoids the
crash.
2023-10-28 09:20:08 +02:00
Sébastien Helleu 90e7857e62 Version 4.0.6 2023-10-26 21:01:46 +02:00
Sébastien Helleu 480d603eb5 core: fix crash when a custom bar item name is already used by a default bar item (issue #2034) 2023-10-23 13:11:02 +02:00
Sébastien Helleu 3184bb92e6 core: make libintl.h required if CMake option ENABLE_NLS is enabled (issue #2031) 2023-10-15 14:58:26 +02:00
Sébastien Helleu 753a2adffc irc: move value -all at the end of completions for command /ignore del 2023-10-09 20:07:39 +02:00
Sébastien Helleu 020c8145b6 irc: fix memory leak when joining channels with keys 2023-10-07 20:34:41 +02:00
Sébastien Helleu a33f0d2132 core: fix build error if CMake option ENABLE_NLS is turned to off or if required dependencies are not found (issue #2026) 2023-10-05 19:05:02 +02:00
Sébastien Helleu 7a3ae654be core: use larger buffer for errors when creating a filter 2023-10-05 19:02:38 +02:00
LuK1337 64403cefc1 core: fix TOTP moving factor on big-endian systems 2023-09-25 13:52:00 +02:00
LuK1337 9621c4381b tests: use correct data type method in hdata tests 2023-09-25 13:51:05 +02:00
LuK1337 0ff08971aa tests: cast infolist time variable value to the correct data type 2023-09-25 13:50:58 +02:00
Sébastien Helleu 19bb049325 Version 4.0.6-dev 2023-09-24 09:34:52 +02:00
Sébastien Helleu e33da6292d Version 4.0.5 2023-09-24 09:30:58 +02:00
Sébastien Helleu be6b27c8f9 core: fix style in ChangeLog 2023-09-24 09:12:21 +02:00
Sébastien Helleu 2d9b133c77 script: only check if return value of plugin_script_search_path is NULL (issue #2019) 2023-09-22 22:59:21 +02:00
Sébastien Helleu 6c36836182 script: fix removal of script in system directory while trying to install a script (issue #2019) 2023-09-22 22:53:29 +02:00
Sébastien Helleu 15214f9538 script: fix autoload of multiple scripts at once with /script autoload (issue #2018) 2023-09-20 20:07:01 +02:00
Sébastien Helleu 7f13bdb51a irc: add option irc.look.open_pv_buffer_echo_msg (issue #2016) 2023-09-14 20:22:43 +02:00
Sébastien Helleu 49bbc53d7c irc: update title in query buffer when remote nick is myself (issue #2016) 2023-09-14 16:16:39 +02:00
Sébastien Helleu eb17fa24ee irc: fix title of query buffer for own messages received (issue #2016) 2023-09-14 15:30:10 +02:00
Sébastien Helleu c7d03668f1 irc: open a query buffer on PRIVMSG received from self nick when capability echo-message is NOT enabled (issue #2016) 2023-09-14 14:54:21 +02:00
Sébastien Helleu 8575546aa2 irc: don't open a new private buffer on /msg command when capability echo-message is enabled (issue #2016) 2023-09-14 11:21:25 +02:00
Sébastien Helleu 2c716e8154 core: move ChangeLog entry to the appropriate version 2023-09-14 11:12:16 +02:00
Sébastien Helleu 49b1cb06b5 irc: fix title of private buffers wrongly set to own address when capability echo-message is enabled (issue #2016) 2023-09-14 08:09:34 +02:00
Sébastien Helleu 75a0755107 core: translate error messages (issue #2013) 2023-09-12 15:12:15 +02:00
Sébastien Helleu 79b03d0680 core: automatically backup config file read if it has an unsupported version (issue #2013) 2023-09-12 15:03:18 +02:00
Sébastien Helleu f43ed913f5 xfer: fix memory leak on plugin unload 2023-09-12 15:03:18 +02:00
Sébastien Helleu 1fcbdb3bd9 doc/api: fix return values for callback_read in config_new_section 2023-09-12 15:03:18 +02:00
Sébastien Helleu 1aab82f20b core: add path in message displayed when a config file is updated to a newer version 2023-09-11 22:50:11 +02:00
Sébastien Helleu 58141bde79 irc: fix autojoin of channels when private buffers are opened (issue #2012) 2023-09-11 21:43:35 +02:00
Sébastien Helleu 7f6e626122 core: display a message when a configuration file is updated to a newer version 2023-09-11 09:33:39 +02:00
Sébastien Helleu 15860532f3 core: fix style for keys in ChangeLog 2023-08-29 12:32:59 +02:00
Sébastien Helleu 8b7513e883 script: fix crash when a /script command triggers another /script command (issue #923) 2023-08-27 17:22:09 +02:00
Sébastien Helleu 2566fca78c irc: use str_nicks only if not NULL in callback of message 353 2023-08-27 17:20:32 +02:00
Trygve Aaberge a82bfa0e7e Add compatibility with Python < 3.10 in weechat.pyi
The | syntax for unions is only supported in Python 3.10 and later.
Since Python 3.8 and 3.9 are still supported upstream for a while and we
had a user reporting on IRC that they couldn't use the stub file since
they are using 3.8, change to the old syntax for unions to support this.

There aren't really any drawbacks of this. It's just a bit more verbose,
and a typing import is necessary, but neither of those really matters in
a generated stub file.
2023-08-24 19:12:53 +02:00
Sébastien Helleu 48d33521dc irc: add tests on server functions 2023-08-24 09:23:30 +02:00
Sébastien Helleu e3f6dab366 irc: fix string comparison when CASEMAPPING is set to "ascii" 2023-08-24 09:23:30 +02:00
Sébastien Helleu 1a05f89586 irc: check that server is not NULL in function irc_server_eval_fingerprint 2023-08-24 09:23:30 +02:00
Sébastien Helleu c811072bdf Version 4.0.5-dev 2023-08-22 11:48:41 +02:00
Sébastien Helleu 4ae396825c Version 4.0.4 2023-08-22 11:43:34 +02:00
Sébastien Helleu 87e47894e6 script: adjust scroll after command /script go N 2023-08-22 11:29:37 +02:00
Sébastien Helleu ad75786e15 core: fix gcc warning on uninitialized variable pos_end
The variable `pos_end` is never used when not initialized anyway, thanks to the
`break` done before.
2023-08-22 10:31:47 +02:00
Sébastien Helleu 39fdb1b564 logger: remove trailing empty line in display of backlog (issue #2002) 2023-08-21 16:02:37 +02:00
Sébastien Helleu c5eb982424 perl: fix display of non-ASCII chars after load of a script with Perl >= 5.38 (issue #1996) 2023-08-21 13:11:58 +02:00
Sébastien Helleu e7bf09f4e8 irc: fix wrong time displayed for CTCP messages received from self nick (issue #2000) 2023-08-18 23:59:42 +02:00
Sébastien Helleu 27972b9c5d scripts: fix tests of functions print_date_tag, print_y_date_tags and hook_timer on 32-bit systems (issue #1999) 2023-08-18 16:45:30 +02:00
Sébastien Helleu ab7b51db72 scripts: fix function string_parse_size on 32-bit systems (python and ruby) (issue #1999) 2023-08-18 16:45:21 +02:00
Sébastien Helleu 647d7033cf xfer: fix conversion of string to IPv4 on 32-bit systems (issue #1999) 2023-08-18 16:44:36 +02:00
Sébastien Helleu 4fe1ba7016 tests: fix tests on function irc_join_compare_join_channel (issue #1997) 2023-08-18 07:55:55 +02:00
Sébastien Helleu 29db9b95ee tests: fix typo in test name 2023-08-18 07:52:36 +02:00
Sébastien Helleu 270d64cfa1 core: fix increment/decrement of options weechat.notify.* 2023-08-18 07:52:13 +02:00
Sébastien Helleu 4eabcdf840 core: fix integer overflow when setting integer option with ++N or --N 2023-08-18 07:49:19 +02:00
Sébastien Helleu 77911680bb irc: fix redirection of command /list when the reply doesn't start with message 321 (start of /list) 2023-08-18 07:40:32 +02:00
Sébastien Helleu bc5b287622 irc: add missing tags on multiline messages (issue #1987) 2023-08-09 14:55:50 +02:00
Sébastien Helleu 7c0b16df81 Version 4.0.4-dev 2023-08-08 21:19:12 +02:00
Sébastien Helleu f3bc66b255 Version 4.0.3 2023-08-08 20:51:54 +02:00
Sébastien Helleu a23d8f2198 relay: fix display of IRC CTCP messages received from client (issue #1986) 2023-08-08 09:42:34 +02:00
Sébastien Helleu f4c6caabb3 tests: add test on IRC notice sent to another nick with channel name at beginning (issue #1991) 2023-08-01 22:49:45 +02:00
Sébastien Helleu f416688e84 irc: fix display of outgoing notice with channel when capability "echo-message" is enabled (issue #1991) 2023-08-01 22:37:10 +02:00
Sébastien Helleu 1dc7ae6b68 core: remove CMake option "ENABLE_DOC_WARN_LOCALE" from release notes (issue #1985) 2023-08-01 08:32:16 +02:00
Sébastien Helleu b06e09d00b core: remove CMake option "ENABLE_DOC_WARN_LOCALE" (issue #1985) 2023-07-31 22:02:18 +02:00
Sébastien Helleu 89090b10e8 core: fix typo 2023-07-31 21:51:19 +02:00
Sébastien Helleu fad7231f90 doc: stop build of docs if a locale is missing, add CMake option "ENABLE_DOC_WARN_LOCALE" (issue #1985) 2023-07-31 21:31:53 +02:00
Sébastien Helleu cf1e073446 core: add missing trailing newline char in doc generation error messages 2023-07-31 08:07:33 +02:00
Sébastien Helleu b4fc345a13 core: add version 4.0.3 in release notes 2023-07-31 08:10:37 +02:00
Sébastien Helleu b2cd9d002b irc: fix switch to channel manually joined (issue #1982)
This happens when server option autojoin_dynamic is on and option
irc.look.buffer_switch_autojoin is off.

Regression was introduced in version 4.0.0 by commit
1c3b871204.
2023-07-31 08:05:26 +02:00
Sébastien Helleu 9312211d49 core: fix input length and crash after delete of line (issue #1989) 2023-07-28 07:19:07 +02:00
Sébastien Helleu 2ad27b41a5 irc: fix memory leak in IRC message parser
Bug was introduced in WeeChat 3.4 by commit
c4b4d80936.
2023-07-20 08:57:50 +02:00
Sébastien Helleu ef68312393 irc: fix display of self CTCP message containing bold attribute (issue #1981) 2023-07-18 18:54:02 +02:00
Sébastien Helleu 7aa490e360 core: add version 4.0.2 in release notes 2023-07-12 22:11:54 +02:00
Sébastien Helleu 36ea983d04 Version 4.0.3-dev 2023-07-12 20:47:52 +02:00
Sébastien Helleu a4e7e18c14 Version 4.0.2 2023-07-12 20:42:04 +02:00
Sébastien Helleu ea934864d4 core: fix renaming of options with command /item rename (issue #1978)
The options `weechat.custom_bar_item.xxx.*` are now properly renamed to the new
item name.

This fixes a save issue (item saved with old name in config) and a crash if a
new item is created with the old name.
2023-07-10 07:34:41 +02:00
Sébastien Helleu 6e7fe96046 core: add quotes around key names in /help key 2023-07-05 21:25:58 +02:00
Sébastien Helleu 82daed8076 core: check that ptr_value is not NULL 2023-07-04 19:15:36 +02:00
Sébastien Helleu bcc061292d core: keep keys ctrl-H and ctrl-? (in lower case) if they were manually bound to custom commands in a previous version 2023-07-04 19:10:51 +02:00
Sébastien Helleu 3b26d6750e core: add key ctrl-backspace in /help key (closes #1975) 2023-07-04 18:41:31 +02:00
Sébastien Helleu 71f8c2ba17 doc: fix anchor links in auto-generated files 2023-07-04 18:31:30 +02:00
Sébastien Helleu 2d91845d53 core: update ChangeLog 2023-07-03 23:01:12 +02:00
Sébastien Helleu ed67f4bf0a core: fix styles 2023-07-03 22:59:37 +02:00
Trygve Aaberge e311564387 core: don't send key_pressed signal again for the same key press
If you press an incomplete key sequence, previously WeeChat would send
the key_pressed signal again for the same keys on the next key.

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

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

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

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

This is intentional, as getting key_combo_default for escape presses
doesn't make sense since it's not a finished combo, and the behavior of
3.8 where you got it after three or more key presses was most likely
unintentional as it just happened because it didn't match any key
bindings anymore (there are key bindings starting with one or two escape
characters, but not more).
2023-07-03 22:57:10 +02:00
Sébastien Helleu 6c9ff45e5c tests: fix hdata tests failure on Alpine 3.18 2023-07-01 09:55:13 +02:00
Sébastien Helleu 3203ee8f05 tests/relay: fix crash in tests on Alpine 3.18 2023-07-01 09:55:01 +02:00
Sébastien Helleu b71af61581 build: fix detection of PHP 8.2 on Alpine 3.18 2023-07-01 09:54:52 +02:00
Sébastien Helleu 2304029d61 Version 4.0.2-dev 2023-07-01 09:53:53 +02:00
Sébastien Helleu b06edae3e3 Version 4.0.1 2023-06-30 21:18:01 +02:00
Sébastien Helleu 7d78be3a1b guile: fix crash on quit with Guile < 3 (closes #1965) 2023-06-27 21:44:54 +02:00
Sébastien Helleu 1107205059 core: update ChangeLog 2023-06-27 21:28:46 +02:00
Trygve Aaberge bd9978e467 core: check for newline characters in string_is_whitespace_char
This fixes a bug where if you had multiple lines in the input and
pressed ctrl-w when the cursor was after the first word of any line but
the first, it would delete both the word before the cursor and the last
word on the preceding line.
2023-06-27 21:26:47 +02:00
Sébastien Helleu b4d999010a api: do not convert option name to lower case in API functions config_set_plugin and config_set_desc_plugin 2023-06-27 12:58:51 +02:00
Sébastien Helleu 9939f939aa irc: sent "QUIT" message to servers connected with TLS on /upgrade 2023-06-26 22:08:22 +02:00
Sébastien Helleu 929d6fd452 core: fix level of section title in release notes 2023-06-26 21:23:25 +02:00
Sébastien Helleu db117f34dd core: display actual key name and command with key Alt+k
Key Alt+K (upper K) is removed as well as commands `/input grab_raw_key` and
`/input grab_raw_key_command`.
2023-06-26 20:40:11 +02:00
Sébastien Helleu f546796b49 irc: reply to a CTCP request sent to self nick (closes #1966) 2023-06-25 22:06:52 +02:00
Sébastien Helleu dd3277adbb core: add missing space in French translation 2023-06-25 19:14:48 +02:00
Sébastien Helleu cb7647a3ea core: force key "return" to command "/input return" when migrating legacy keys 2023-06-25 19:14:15 +02:00
Sébastien Helleu 21292f7464 core: fix format in Czech translation 2023-06-25 16:12:35 +02:00
Sébastien Helleu 3c433b5106 core: add option weechat.color.status_name_insecure in ChangeLog and release notes 2023-06-25 15:17:40 +02:00
Sébastien Helleu b578a0a4b9 Version 4.0.1-dev 2023-06-25 15:12:34 +02:00
730 changed files with 83141 additions and 155083 deletions
+43
View File
@@ -0,0 +1,43 @@
---
name: Bug report
about: Create a bug report (please do not report security issues here)
labels: bug
---
<!-- Please do not report any security issue here, see file Contributing.adoc -->
## Bug summary
## Steps to reproduce
1. 
2. 
3. 
## Current behavior
## Expected behavior
## Suggested solutions
## Additional information
---
<!-- MANDATORY INFO: -->
- WeeChat version: 
- OS, distribution and version: 
- Terminal: 
- Terminal multiplexer (screen/tmux/…/none): 
-110
View File
@@ -1,110 +0,0 @@
name: Bug report
description: Create a bug report
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Before submitting a bug, please check that it has not already been reported by searching in [open and closed bugs](https://github.com/weechat/weechat/issues?q=is%3Aissue+label%3Abug).
If you don't use the latest version, please try if possible with the latest stable release to be sure the issue is still present and report the issue on this version.
**IMPORTANT**: please do not report any security issue here, see [Contributing.adoc](https://github.com/weechat/weechat/blob/master/Contributing.adoc#security-reports).
- type: textarea
id: bug-description
attributes:
label: Describe the bug
description: A clear and concise description of what the bug is.
validations:
required: true
- type: textarea
id: steps-to-reproduce
attributes:
label: Steps to reproduce
description: |
Steps to reproduce the issue.
If possible, please try to reproduce with a default configuration and no scripts loaded (`weechat -t`). If the issue is related to a script, please mention the list of all scripts loaded.
placeholder: |
1.
2.
3.
validations:
required: true
- type: textarea
id: current-behavior
attributes:
label: Current behavior
description: |
What currently happens.
validations:
required: true
- type: textarea
id: expected-behavior
attributes:
label: Expected behavior
description: What is actually supposed to happen.
validations:
required: true
- type: textarea
id: suggested-solutions
attributes:
label: Suggested solutions
description: How you think this issue can be resolved.
validations:
required: false
- type: textarea
id: additional-information
attributes:
label: Additional information
description: |
For a crash, please include a backtrace from gdb, see the [User's guide](https://weechat.org/doc/weechat/user/#report_crashes).
For a display issue, please add a screenshot if it makes sense.
Please mention if other versions are affected as well and if some versions are not affected (regression?).
And any additional information you deem relevant.
validations:
required: false
- type: input
id: weechat-version
attributes:
label: WeeChat version
description: |
For a stable release: output of `weechat --version`.
For the development version: output of command `/v` in WeeChat.
placeholder: "4.1.1"
validations:
required: true
- type: input
id: os-version
attributes:
label: What OS are you using?
description: Name of the operating system and its version.
placeholder: Debian 12, Ubuntu 23.10, MacOS 14, ...
validations:
required: true
- type: input
id: terminal
attributes:
label: On which terminal are you running WeeChat?
description: The name of terminal if you think it can be related to the issue (mainly for display issues).
placeholder: Terminator, Xterm, GNOME Terminal, Urxvt, ...
validations:
required: false
- type: input
id: terminal-multiplexer
attributes:
label: Which terminal multiplexer are you using?
description: The name of the terminal multiplexer if you think it can be related to the issue (mainly for display issues).
placeholder: none, tmux, screen, ...
validations:
required: false
@@ -0,0 +1,8 @@
---
name: Feature request
about: Request a new feature / enhancement
labels: feature
---
## Feature description
@@ -1,17 +0,0 @@
name: Feature request
description: Request a new feature / enhancement
labels: ["feature"]
body:
- type: markdown
attributes:
value: |
Before submitting a feature request, please check that it has not already been reported by searching in [open and closed feature requests](https://github.com/weechat/weechat/issues?q=is%3Aissue+label%3Afeature).
- type: textarea
id: feature
attributes:
label: Feature description
description: A description of the feature you would like.
validations:
required: true
+19
View File
@@ -0,0 +1,19 @@
---
name: Question
about: >
Ask a question (please read first FAQ and docs and ask on #weechat channel
before opening any question issue)
labels: question
---
<!-- Please read first FAQ/docs and ask on #weechat channel before opening any question issue -->
## Question
---
- WeeChat version: 
- OS, distribution and version: 
-19
View File
@@ -1,19 +0,0 @@
name: Question
description: Ask a question
labels: ["question"]
body:
- type: markdown
attributes:
value: |
Before opening an issue with a question:
- please read the [FAQ](https://weechat.org/doc/weechat/faq) and [documentation](https://weechat.org/doc/weechat/)
- please ask on #weechat channel (on server irc.libera.chat).
- type: textarea
id: question
attributes:
label: Question
description: Your question.
validations:
required: true
+7 -100
View File
@@ -1,47 +1,11 @@
name: CI
on:
push:
pull_request:
schedule:
- cron: '22 9 * * 2'
- push
- pull_request
env:
WEECHAT_DEPENDENCIES: >-
asciidoctor
cmake
curl
devscripts
equivs
flake8
gem2deb
guile-3.0-dev
lcov
libargon2-dev
libaspell-dev
libcjson-dev
libcpputest-dev
libcurl4-gnutls-dev
libgcrypt20-dev
libgnutls28-dev
liblua5.3-dev
libncurses-dev
libperl-dev
libphp-embed
libsodium-dev
libv8-dev
libzstd-dev
ninja-build
php-dev
pkg-config
pylint
python3-bandit
python3-dev
python3-pip
ruby-pygments.rb
shellcheck
tcl8.6-dev
zlib1g-dev
WEECHAT_DEPENDENCIES: devscripts equivs python3-pip cmake ninja-build lcov pkg-config libncursesw5-dev gem2deb libperl-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-3.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev libzstd-dev zlib1g-dev curl libcpputest-dev php-dev libphp-embed libargon2-dev libsodium-dev flake8 pylint python3-bandit asciidoctor ruby-pygments.rb shellcheck
jobs:
@@ -55,8 +19,6 @@ jobs:
- { name: "gcc", cc: "gcc", cxx: "g++", buildargs: "" }
- { name: "gcc_ninja", cc: "gcc", cxx: "g++", buildargs: "-G Ninja" }
- { name: "gcc_no_nls", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_NLS=OFF -DENABLE_DOC=OFF" }
- { name: "gcc_no_zstd", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_ZSTD=OFF -DENABLE_DOC=OFF" }
- { name: "gcc_no_cjson", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_CJSON=OFF -DENABLE_DOC=OFF" }
- { name: "gcc_coverage", cc: "gcc", cxx: "g++", buildargs: "-DENABLE_CODE_COVERAGE=ON" }
- { name: "clang", cc: "clang", cxx: "clang++", buildargs: "" }
@@ -82,7 +44,7 @@ jobs:
run: ./tools/check_scripts.sh
- name: Check Python stub file
run: ./tools/generate_python_stub.py | diff src/plugins/python/weechat.pyi -
run: ./doc/python_stub.py | diff src/plugins/python/weechat.pyi -
- name: Check Curl symbols
run: curl --silent --show-error --fail --retry 10 https://raw.githubusercontent.com/curl/curl/master/docs/libcurl/symbols-in-versions | ./tools/check_curl_symbols.py
@@ -105,22 +67,6 @@ jobs:
weechat --version
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
- name: Test Relay OpenAPI
if: ${{ matrix.config.name == 'gcc' }}
env:
RELAY_PASSWORD: test
run: |
sudo -H pip3 install --ignore-installed schemathesis
weechat-headless \
--dir /tmp/weechat-test-api \
--run-command '/set relay.network.password "${{ env.RELAY_PASSWORD }}"' \
--run-command '/relay add api 9000' \
--daemon \
;
sleep 5
./tools/test_relay_api.sh http://localhost:9000
echo '*/quit' >/tmp/weechat-test-api/weechat_fifo_*
- name: Code coverage
if: ${{ matrix.config.name == 'gcc_coverage' }}
env:
@@ -138,6 +84,7 @@ jobs:
matrix:
os:
- macos-12
- macos-11
config:
- { name: "gcc", cc: "gcc", cxx: "g++" }
- { name: "clang", cc: "clang", cxx: "clang++" }
@@ -147,9 +94,7 @@ jobs:
steps:
- name: Setup Homebrew
id: setup-homebrew
uses: Homebrew/actions/setup-homebrew@master
- uses: actions/checkout@v2
- name: Install dependencies
run: |
@@ -167,9 +112,7 @@ jobs:
/usr/local/bin/python3.11 \
/usr/local/bin/python3.11-config \
;
brew install asciidoctor cjson guile lua pkg-config ruby
- uses: actions/checkout@v2
brew install asciidoctor guile lua pkg-config ruby
- name: Build
env:
@@ -228,39 +171,3 @@ jobs:
weechat-curses --help
weechat --version
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
codeql-analysis:
name: CodeQL
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt-get update -qq
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
# uninstall php imagick as is causes a crash when loading php plugin (see #2009)
sudo apt-get --yes purge php8.1-imagick
sudo -H pip3 install --ignore-installed msgcheck
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: cpp
- name: Autobuild
uses: github/codeql-action/autobuild@v3
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:cpp"
-3
View File
@@ -67,7 +67,6 @@ Alphabetically:
* Jiri Golembiovsky (GolemJ)
* Joey Pabalinas (alyptik)
* Johan Rylander
* Johannes Kuhn
* Joram Schrijver
* Jos Ahrens
* Joseph Kichline
@@ -82,12 +81,10 @@ Alphabetically:
* Lázaro A.
* Leonid Evdokimov
* Linus Heckemann
* LuK1337
* Maarten de Vries
* Mantas Mikulėnas (grawity)
* Marco Paolone
* Marco Sirabella
* Mario Campos
* Mateusz Poszwa
* Matt Robinson
* Matthew Horan
+6 -21
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2007-2008 Julien Louis <ptitlouis@sysif.net>
# Copyright (C) 2008-2009 Emmanuel Bouthenot <kolter@openics.org>
#
@@ -19,7 +19,7 @@
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
cmake_minimum_required(VERSION 3.5)
cmake_minimum_required(VERSION 3.0)
project(weechat C)
@@ -29,7 +29,7 @@ set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}")
set(CMAKE_SKIP_RPATH ON)
# compiler options
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra -Werror-implicit-function-declaration -Wformat -Werror=format-security")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra -Werror-implicit-function-declaration")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra")
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
# extra options specific to gcc/g++
@@ -99,8 +99,6 @@ option(ENABLE_NCURSES "Compile the Ncurses interface" ON)
option(ENABLE_HEADLESS "Compile the headless binary" ON)
option(ENABLE_NLS "Enable Native Language Support" ON)
option(ENABLE_LARGEFILE "Enable Large File Support" ON)
option(ENABLE_ZSTD "Enable Zstandard compression" ON)
option(ENABLE_CJSON "Enable cJSON support" ON)
option(ENABLE_ALIAS "Enable Alias plugin" ON)
option(ENABLE_BUFLIST "Enable Buflist plugin" ON)
option(ENABLE_CHARSET "Enable Charset plugin" ON)
@@ -192,9 +190,6 @@ include(CheckSymbolExists)
check_include_files("langinfo.h" HAVE_LANGINFO_CODESET)
check_include_files("sys/resource.h" HAVE_SYS_RESOURCE_H)
check_include_files("malloc.h" HAVE_MALLOC_H)
check_symbol_exists("malloc_trim" "malloc.h" HAVE_MALLOC_TRIM)
check_function_exists(mallinfo HAVE_MALLINFO)
check_function_exists(mallinfo2 HAVE_MALLINFO2)
@@ -206,10 +201,9 @@ if(ENABLE_LARGEFILE)
endif()
# Check for libgcrypt
pkg_check_modules(LIBGCRYPT REQUIRED libgcrypt)
find_package(GCRYPT REQUIRED)
add_definitions(-DHAVE_GCRYPT)
include_directories(${LIBGCRYPT_INCLUDE_DIRS})
list(APPEND EXTRA_LIBS ${LIBGCRYPT_LDFLAGS})
list(APPEND EXTRA_LIBS ${GCRYPT_LDFLAGS})
# Check for GnuTLS
find_package(GnuTLS REQUIRED)
@@ -222,16 +216,7 @@ list(APPEND EXTRA_LIBS gnutls)
find_package(ZLIB REQUIRED)
# Check for zstd
if(ENABLE_ZSTD)
pkg_check_modules(LIBZSTD REQUIRED libzstd)
add_definitions(-DHAVE_ZSTD)
endif()
# Check for cJSON
if(ENABLE_CJSON)
pkg_check_modules(LIBCJSON REQUIRED libcjson)
add_definitions(-DHAVE_CJSON)
endif()
pkg_check_modules(LIBZSTD REQUIRED libzstd)
# Check for iconv
find_package(Iconv)
+7 -498
View File
@@ -5,401 +5,10 @@
:toc: left
:docinfo1:
:see-release-notes: If you are upgrading: please see release notes.
:breaking: pass:quotes[*[breaking]*]
[[v4.3.6]]
== Version 4.3.6 (2024-08-15)
This document lists all the changes for each version. +
For a list of important changes that require manual actions, please look at release notes.
[[v4.3.6_fixed]]
=== Fixed
* core: fix generation of TOTP on FreeBSD (issue #2171)
* relay/api: fix crash when sending data to a remote buffer when the remote has been deleted (issue #2157)
* relay/api: fix timezone of dates sent to clients (issue #2151)
[[v4.3.5]]
== Version 4.3.5 (2024-07-16)
[[v4.3.5_fixed]]
=== Fixed
* ruby: fix crash in plugin initialization (issue #2163)
[[v4.3.4]]
== Version 4.3.4 (2024-07-03)
[[v4.3.4_fixed]]
=== Fixed
* python: fix crash on quit with Python 3.12 (issue #2046, issue #2126)
* core: fix crash when deleting a bar that has no items (issue #2138)
* ruby: fix builtin functions not available (issue #2109)
* relay/api: fix "body_type" returned when lines or nicks of a buffer are requested
[[v4.3.3]]
== Version 4.3.3 (2024-06-22)
[[v4.3.3_fixed]]
=== Fixed
* core, plugins: return "0x0" instead of "(nil)" for pointers formatted in strings
[[v4.3.2]]
== Version 4.3.2 (2024-06-06)
[[v4.3.2_changed]]
=== Changed
* relay: enable websocket extension "permessage-deflate" with "api" relay only (issue #1549)
[[v4.3.2_added]]
=== Added
* relay: add option relay.look.raw_messages_max_length (issue #2122)
[[v4.3.2_fixed]]
=== Fixed
* irc, xfer: fix display of input prompt in IRC private buffers and DCC chat buffers (issue #2128)
* irc: don't return pointer to irc server if the channel or nick is not found in info "irc_buffer"
* relay: fix websocket permessage-deflate extension when the client doesn't send the max window bits parameters (issue #1549)
* relay: fix allocation and reinit of field "client_context_takeover" in websocket deflate structure (issue #1549)
[[v4.3.1]]
== Version 4.3.1 (2024-05-31)
[[v4.3.1_fixed]]
=== Fixed
* irc: close /list buffer when the server buffer is closed (issue #2121)
* xfer: fix send of data on the DCC chat buffer after `/upgrade` if the buffer was opened before the upgrade (issue #2092)
* php: fix return value of function hdata_longlong
* tcl: fix return value of function hdata_longlong (issue #2119)
* core: fix detection of libgcrypt ≥ 1.11 (debian #1071960)
* core, relay: fix include directory of libcjson and libzstd
* tests: fix relay tests on s390x (issue #2118)
* tests: fix check of php plugin (issue #2117)
* tests: fix compilation of tests on Fedora 40 (issue #2116)
* tests: fix compilation of tests on Rocky 9.4
[[v4.3.0]]
== Version 4.3.0 (2024-05-26)
{see-release-notes}
[[v4.3.0_changed]]
=== Changed
* {breaking} irc: add server option "autojoin_delay" (delay before autojoin), use option "command_delay" before execution of the command (issue #862)
* {breaking} irc: rename option irc.color.item_channel_modes to weechat.color.status_modes
* {breaking} irc: add option `-all` in command `/allchan`, do not execute command on parted channels by default (issue #2085)
* {breaking} relay: rename option relay.weechat.commands to relay.network.commands and change default to `*,!quit` (issue #2066)
* {breaking} relay: change option type relay.look.auto_open_buffer to string (issue #2066)
* {breaking} core: add buffer properties "input_prompt" and "modes", used to display bar items (issue #2066)
* {breaking} core: add bar item "lag" to display lag on relay remote buffers (issue #2066)
* {breaking} core: send signal "buffer_line_added" on buffers with free content
* {breaking} core: convert option weechat.look.hotlist_sort to a list of fields (issue #2097)
* {breaking} core: rename variables with creation time in hdata "hotlist": "creation_time.tv_sec" to "time" and "creation_time.tv_usec" to "time_usec"
* {breaking} api: return `-1` or `1` if one input string is NULL and not the other in string comparison functions
* {breaking} api: use whole replacement string instead of first char in function string_remove_color
* core: use nick offline color for nick in action message (issue #446)
* core: display a specific message when the value of option is unchanged after `/set` command
* core: add variable `${highlight}` in option weechat.look.buffer_time_format (issue #2079)
* core: reintroduce help on the variables and operators in `/help eval` (issue #2005)
* core: allow case insensitive search of partial buffer name with `(?i)name` in command `/buffer`
* core: use function util_strftimeval in evaluation of expression `date:xxx`
* fset: allow filename starting with "~" in command `/fset -export`
* irc: store lag in channel and private buffers (local variable "lag"), in addition to the server buffer
* irc: allow range in commands `/unban` and `/unquiet` (issue #2113)
* tcl: add support of Tcl 9.0 (issue #2075)
[[v4.3.0_added]]
=== Added
* relay: add "api" protocol (HTTP REST API), add options relay.look.display_clients, relay.api.remote_get_lines and relay.network.time_window (issue #2066)
* relay: add command `/remote` to connect to remote WeeChat relay servers (issue #2066)
* relay: add support of websocket extension "permessage-deflate" (issue #1549)
* core, api: add unique identifier "id" in buffer and nicklist (group and nick), add function "hdata_longlong", allow search by buffer id in function buffer_search, allow search by group and nick id in functions nicklist_search_group and nicklist_search_nick (issue #2081)
* core: add support of XDG "state" directory (issue #2106, issue #1747)
* core: add support of SGR mouse events (issue #2082)
* fset: add option `-import` in command `/fset`
* core: add option `-s` in command `/command` to execute multiple commands separated by semicolons
* core: add option `malloc_trim` in command `/sys`
* core: add option weechat.look.config_permissions (issue #2057)
* core: add option weechat.look.highlight_prefix (issue #2079)
* core: add option weechat.completion.case_sensitive
* api: add functions config_option_get_{string|pointer} and config_{boolean|integer|string|color|enum}_inherited in scripting API
* api: add modifier "color_decode" to decode WeeChat colors with a replacement string
* api: add support of base64url in encode/decode functions
* api: add support of specifier `%!` for timestamp in function util_strftimeval
* api: add info "plugin_loaded"
* script: add option `enable` in command `/script`
* script: add info "script_loaded"
[[v4.3.0_fixed]]
=== Fixed
* core: fix conversion of WeeChat colors to ANSI colors: "default", "bar_fg", "bar_bg", "bar_delim"
* core: fix recursive search of group in nicklist
* core: use nick offline highlight color for prefix of action message when the nick is offline with a highlight
* core: add missing hdata name "buffer" in hdata "hotlist"
* core: fix reset to initial scroll position after search of text in buffer (issue #2093)
* core: add missing mouse events "alt-ctrl-button2" and "alt-ctrl-button3"
* core: remove trailing directory separators in home directories (issue #2070)
* exec: remove trailing space on buffers with free content when line numbers are not displayed
* exec: add missing exec tags in lines of buffers with free content (issue #2086)
* irc: fix crash in split of IRC message containing a newline if the server is not given
* irc: fix display of reply for CTCP request received on a channel when capability echo-message is enabled
* irc: display CTCP reply to a nick in server buffer instead of channel
* irc: add missing tags on self action messages when capability echo-message is enabled (issue #2074)
* irc: don't strip monospace color code 0x11 from incoming messages (issue #2073)
* irc: fix random date displayed when a received message contains tags but no "time" (issue #2064)
* lua: fix freeze on call to "debug.debug" (issue #1906, issue #1907)
* python: fix truncation of unsigned long long integer returned by function string_parse_size
* relay: set the last IRC client disconnection time only after a successful connection (issue #2103)
* script: always display list of scripts when searching scripts with `/script search` (issue #2077)
* script: fix default mouse keys (issue #2076)
* scripts: fix crash on script unload when a hook is created in a buffer close callback (issue #2067)
* tcl: fix truncation of long integer returned by function hdata_long
* trigger: fix memory leak when adding a new trigger with `/trigger` command
[[v4.2.3]]
== Version 4.2.3 (2024-05-31)
Bug fixes::
* xfer: fix send of data on the DCC chat buffer after `/upgrade` if the buffer was opened before the upgrade (issue #2092)
* irc: fix crash in split of IRC message containing a newline if the server is not given
* core, relay: fix include directory of libzstd
[[v4.2.2]]
== Version 4.2.2 (2024-04-07)
{see-release-notes}
Bug fixes::
* core: fix reset to initial scroll position after search of text in buffer (issue #2093)
* core: add missing mouse events "alt-ctrl-button2" and "alt-ctrl-button3"
* exec: remove trailing space on buffers with free content when line numbers are not displayed
* exec: add missing exec tags in lines of buffers with free content (issue #2086)
* irc: add missing tags on self action messages when capability echo-message is enabled (issue #2074)
* python: fix truncation of unsigned long long integer returned by function string_parse_size
* relay: set the last IRC client disconnection time only after a successful connection (issue #2103)
* script: always display list of scripts when searching scripts with `/script search` (issue #2077)
* script: fix default mouse keys (issue #2076)
* scripts: fix crash on script unload when a hook is created in a buffer close callback (issue #2067)
* tcl: fix truncation of long integer returned by function hdata_long
* trigger: fix memory leak when adding a new trigger with `/trigger` command
Tests::
* core: fix tests on function strftimeval on Alpine
[[v4.2.1]]
== Version 4.2.1 (2024-01-22)
Bug fixes::
* irc: fix random date displayed when a received message contains tags but no "time" (issue #2064)
[[v4.2.0]]
== Version 4.2.0 (2024-01-21)
{see-release-notes}
New features::
* core: add variable "opening" in buffer, do not send buffer signals when the buffer is opening
* core: store microseconds in buffer lines (issue #649)
* core: evaluate expressions even when the suffix is missing ("}" by default) (issue #2042, issue #1714)
* core: add syntax highlighting in evaluation of expressions with `raw_hl:string` and `hl:string`, add option weechat.color.eval_syntax_colors (issue #2042)
* core: add option `search_history` in command `/input`, add key kbd:[Ctrl+r] to search in commands history, add key context "histsearch" (issue #2040)
* core: add option weechat.look.buffer_search_history (issue #2040)
* core: add key kbd:[Ctrl+o] to send command found and insert next one in input (issue #2040)
* core: add buffer variables "text_search_direction", "text_search_history" and "text_search_ptr_history" (issue #2040)
* core: move key kbd:[Ctrl+r] to kbd:[Ctrl+s] (issue #2040)
* core: move key kbd:[Ctrl+s], kbd:[Ctrl+u] to kbd:[Alt+Shift+U] (issue #2040)
* core: display only version with command `/version`, add options `-o` and `-ol` in command `/upgrade`
* core: add number of processes in command `/sys waitpid`
* core, alias, trigger: allow wildcard in commands `/bar`, `/filter`, `/item`, `/proxy`, `/alias` and `/trigger` (issue #1956)
* api: add support of format/translation of command arguments description line by line (issue #2005)
* api: add function string_concat (issue #2005)
* api: add functions util_strftimeval, util_parse_time, printf_datetime_tags, printf_y_datetime_tags (issue #649)
* api: add argument "date_usec" in hook_print callback (issue #649)
* api: add property "type" in function buffer_get_string
* api: add info "mouse"
* buflist: jump to previous/next buffer displayed in buflist item with ctrl+wheel up/down on a buflist item (issue #1473)
* irc: add option irc.look.display_host_wallops
* irc: add server option "anti_flood" (now in milliseconds), remove server options "anti_flood_prio_{high|low}" (issue #1039)
* irc: add option irc.look.list_buffer
* irc: change default value of server option "tls_priorities" to `NORMAL`
* irc: add support of RGB colors in messages, add option irc.color.term_remap (issue #2025)
* irc: add tags "nick_xxx" and "host_xxx" in all messages, including self and server messages
* irc: add option irc.look.ignore_tag_messages (issue #989)
* relay: change default value of option relay.network.tls_priorities to `NORMAL`
* trigger: change format of variables `${tg_date}` from "%Y-%m-%d %H:%M:%S" to "%FT%T.%f" (issue #649)
* trigger: rename local variable "trigger_filter" to "filter" on monitor buffer (issue #2037)
Bug fixes::
* core: fix crash on plugin reload when using musl libc (issue #2052)
* core: fix infinite loop in display when the chat area is too small (issue #2053)
* core: fix value of buffer variable "num_history" when the value defined in option weechat.history.max_commands is reached
* core: remove incorrect warning when binding keys kbd:[F10] to kbd:[F20] (issue #2039)
* core: call hook config when options are removed
* core: display an error with command `/history N` when N is not a valid integer
* core: fix memory leak when config version is invalid or not supported
* core: fix crash when "config_version" is present in a configuration file without a value
* core: display an error on startup if environment variable "HOME" is not set
* core: fix crash when a custom bar item name is already used by a default bar item (issue #2034)
* core: fix random timeouts when a lot of concurrent processes are launched with hook_process (issue #2033)
* api: return NULL instead of empty infolist "key" when context is not found
* irc: check if arguments are not NULL in some infos
* irc: fix info "irc_is_message_ignored" (issue #2059)
* irc: fix display of self messages when the message split fails due to inconsistent max lengths sent by the server in message 005
* irc: display messages 730/731 (monitored nicks online/offline) even if command `/notify` was not used (issue #2049)
* irc: remove trailing "\r\n" in signals "irc_out" and "irc_outtags" when messages are queued
* irc: fix target buffer of IRC message 337 (whois reply: "is hiding their idle time")
* irc: revert compute of nick colors to case sensitive way, deprecate again infos "irc_nick_color" and "irc_nick_color_name" (issue #194, issue #2032)
* relay: close properly connection with the IRC client in case of server disconnection (issue #2038)
* ruby: fix use of NULL variable when displaying exception
Tests::
* core: add tests on plugin config and plugin API info functions
* irc: add tests on info functions
Build::
* core: make libintl.h required if CMake option ENABLE_NLS is enabled (issue #2031)
* ruby: add detection of Ruby 3.3
[[v4.1.3]]
== Version 4.1.3 (2024-01-20)
Bug fixes::
* core: fix crash on plugin reload when using musl libc (issue #2052)
* core: fix infinite loop in display when the chat area is too small (issue #2053)
* irc: check if arguments are not NULL in some infos
* irc: fix info "irc_is_message_ignored" (issue #2059)
* irc: fix display of self messages when the message split fails due to inconsistent max lengths sent by the server in message 005
[[v4.1.2]]
== Version 4.1.2 (2023-12-03)
Bug fixes::
* core: fix value of buffer variable "num_history" when the value defined in option weechat.history.max_commands is reached
* core: remove incorrect warning when binding keys kbd:[F10] to kbd:[F20] (issue #2039)
* core: fix memory leak when config version is invalid or not supported
* core: fix crash when "config_version" is present in a configuration file without a value
* core: display an error on startup if environment variable "HOME" is not set
* irc: remove trailing "\r\n" in signals "irc_out" and "irc_outtags" when messages are queued
* irc: fix target buffer of IRC message 337 (whois reply: "is hiding their idle time")
* relay: close properly connection with the IRC client in case of server disconnection (issue #2038)
* ruby: fix use of NULL variable when displaying exception
[[v4.1.1]]
== Version 4.1.1 (2023-10-26)
{see-release-notes}
Bug fixes::
* core: fix crash when a custom bar item name is already used by a default bar item (issue #2034)
* core: fix random timeouts when a lot of concurrent processes are launched with hook_process (issue #2033)
* irc: revert compute of nick colors to case sensitive way, deprecate again infos "irc_nick_color" and "irc_nick_color_name" (issue #194, issue #2032)
Build::
* core: make libintl.h required if CMake option ENABLE_NLS is enabled (issue #2031)
[[v4.1.0]]
== Version 4.1.0 (2023-10-15)
{see-release-notes}
New features::
* core: add completion "eval_variables", used in completion of `/eval`
* core: add command `/sys` to show resource limits/usage and suspend WeeChat process, add key kbd:[Ctrl+z] to suspend WeeChat (issue #985)
* core: ignore key bindings with empty command
* core: add support of quotes in commands `/key bind` and `/key bindctxt`
* core: evaluate command given to `/repeat` with contextual variables (issue #2007)
* core: add option `callbacks` in command `/debug`
* core: add option type "enum" (issue #1973)
* core: add options weechat.buffer.* to save buffer properties set by user, add option `setauto` in command `/buffer` (issue #352)
* core: add parameters and key bindings to move to edges of current area with commands `/cursor go` and `/cursor move` (issue #1282)
* core: add variables "_chat_focused_line_bol" and "_chat_focused_line_eol" in focus data (issue #1955)
* api: add function hook_url, add option `url` in command `/debug` (issue #1723)
* api: add support of path to variable and hashtable comparison in function hdata_compare (issue #1066)
* api: add infos "nick_color_ignore_case" and "nick_color_name_ignore_case" (issue #194)
* api: add info "buffer" (issue #1962)
* buflist: add support of item names in command `/buflist refresh`, add completions "buflist_items" and "buflist_items_used"
* buflist: increase max number of buflist items from 3 to 5 (issue #1703)
* fset: add variable `allowed_values` in options, add options fset.color.allowed_values and fset.color.allowed_values_selected
* fset: allow long type name in type filter
* irc: add count for all nick modes in output of `/names` (issue #97, issue #2020)
* irc: add count and mode filter in command `/names` (issue #98)
* irc: compute color in case insensitive way, reintroduce infos "irc_nick_color" and "irc_nick_color_name", add support of server name (issue #194)
* irc: add buffer for /list reply, add options irc.color.list_buffer_line_selected, irc.color.list_buffer_line_selected_bg, irc.look.list_buffer_sort, irc.look.list_buffer_scroll_horizontal, irc.look.new_list_position, irc.look.list_buffer_topic_strip_colors (issue #1972)
* irc: display commands 716/717 in private buffer (if present) (issue #146)
* irc: create default options irc.ctcp.* when file irc.conf is created (issue #1974)
* irc: evaluate options irc.ctcp.* (issue #1974)
* irc: build dynamically the list of CTCPs supported in reply to "CTCP CLIENTINFO" (issue #1974)
* irc: remove Git revision and compilation date from CTCP VERSION reply (issue #1974)
* irc: remove default CTCP replies FINGER and USERINFO (issue #1974)
* irc, xfer: add support of passive DCC (issue #2004, issue #487)
* script: rename parameters up/down/go to -up/-down/-go in command `/script`
* script: allow jump to the last script with command `/script -go end`
* script: allow commands `/script autoload`, `/script noautoload`, `/script toggleautoload` with scripts not present in the repository (issue #1980)
* trigger: add options `-o`, `-ol`, `-i` and `-il` in command `/trigger list` (issue #1953)
Bug fixes::
* core: fix zombie processes after fork (hook process or connect) (issue #1994)
* core: fix generation of TOTP on Big Endian systems (issue #2021)
* core: fix cursor position after `/plugin list -i` or `/plugin list -il`
* core: display focus hashtable for debug even if no key is matching
* fset: add local key bindings during the buffer creation
* fset: remove extra spaces between min and max values when second format is used
* fset: fix mouse actions when second format is used
* fset: apply option fset.color.help_description (issue #1988)
* irc: move value `-all` at the end of completions for command `/ignore del`
* irc: fix memory leak when joining channels with keys
* irc: fix unexpected message sent to server when part of the second line of an IRC command (issue #1992)
* irc: fix display of country code in message 344 received as whois geo info (issue #1736)
* irc: add missing "account-tag" in list of supported capabilities
* irc: add channel in "autojoin" server option only when the channel is actually joined (issue #1990)
* relay: synchronize nick modes with IRC client upon connection (issue #1984)
* script: add local key bindings during the buffer creation
* script: add parameters up/down/go in `/help script` and command completion
* script: fix cursor position after `/script list -i` or `/script list -il`
* script: fix buffer used by command `/script list -i|-il|-o|-ol`
* xfer: display an error message when opening file for read or write fails (issue #2010)
Tests::
* core: add tests on GUI buffer functions
Build::
* core: fix build error if CMake option ENABLE_NLS is turned to off or if required dependencies are not found (issue #2026)
* core, logger, relay: make zstd dependency optional (issue #2024)
[[v4.0.8]]
== Version 4.0.8 (2024-01-20)
Bug fixes::
* core: fix crash on plugin reload when using musl libc (issue #2052)
* core: fix infinite loop in display when the chat area is too small (issue #2053)
* irc: check if arguments are not NULL in some infos
* irc: fix info "irc_is_message_ignored" (issue #2059)
* irc: fix display of self messages when the message split fails due to inconsistent max lengths sent by the server in message 005
[[v4.0.7]]
== Version 4.0.7 (2023-12-03)
@@ -419,8 +28,6 @@ Bug fixes::
[[v4.0.6]]
== Version 4.0.6 (2023-10-26)
{see-release-notes}
Bug fixes::
* core: fix crash when a custom bar item name is already used by a default bar item (issue #2034)
@@ -516,8 +123,6 @@ Build::
[[v4.0.1]]
== Version 4.0.1 (2023-06-30)
{see-release-notes}
Bug fixes::
* core: force key "return" to command "/input return" when migrating legacy keys
@@ -531,8 +136,6 @@ Bug fixes::
[[v4.0.0]]
== Version 4.0.0 (2023-06-24)
{see-release-notes}
New features::
* core: use human readable key bindings, separate keys with comma in combos, remove modifier "meta2-", add option `legacy` in command `/key` (issue #1238, task #10317)
@@ -552,7 +155,7 @@ New features::
* core: add relative move of read marker with `/buffer set unread [+/-]N` (issue #1895)
* core: add access to hashtable properties in evaluation of expressions (issue #1888)
* core: display similar command names when a command is unknown (issue #1877)
* core: rename option weechat.color.status_name_ssl to weechat.color.status_name_tls (issue #1903)
* core: rename option weechat.color.status_name_ssl to weechat.color.status_name_tls
* core: add option weechat.color.status_name_insecure to display buffer name with a specific color when not connected with TLS to the server
* core, plugins: make many identifiers case sensitive (issue #1872, issue #398, bug #32213)
* core: add item "mouse_status" in default status bar, change default color to lightgreen
@@ -567,7 +170,7 @@ New features::
* alias: add options `missing` and `rename` in command `/alias`
* fifo: add support of escaped chars in text or commands sent (issue #1950)
* fset: add options fset.color.color_name and fset.color.color_name_selected (issue #1920)
* irc: rename "ssl" options to "tls", connect with TLS and port 6697 by default (issue #1903)
* irc: rename "ssl" options to "tls", connect with TLS and port 6697 by default
* irc: add support of capabilities "batch" and "draft/multiline" (issue #1292, issue #1923)
* irc: add support of capability "echo-message" (issue #139)
* irc: display CTCP ACTION to channel on the channel buffer (issue #207)
@@ -588,7 +191,7 @@ New features::
* irc: add tag "new_host_xxx" in message displayed for command CHGHOST (issue #1808)
* logger: add option logger.file.log_conditions (issue #1942)
* logger: add info "logger_log_file"
* relay: rename "ssl" options and protocol to "tls" (issue #1903)
* relay: rename "ssl" options and protocol to "tls"
* relay: make TLS certificate/key loading error handling more verbose (issue #1558)
* relay: add modifiers "relay_client_irc_in", "relay_client_irc_out1" and "relay_client_irc_out" in irc protocol
* relay: add support of capability "echo-message" in irc protocol (issue #1949)
@@ -661,13 +264,11 @@ Build::
* core: remove obsolete cpack config
* core: add "stable-number" and "devel-number" in script version.sh
* core: add quotes around paths in CMake files (issue #29)
* doc: convert docgen.py to C, remove autogen files from repository, add parameter `--doc-gen` to `weechat-headless` binary, add CMake option "ENABLE_DOC_INCOMPLETE"
* doc: convert docgen.py to C, remove autogen files from repository, add parameter `--doc-gen` to `weechat-headless` binary, add CMake option `ENABLE_DOC_INCOMPLETE`
[[v3.8]]
== Version 3.8 (2023-01-08)
{see-release-notes}
New features::
* core: add option weechat.look.chat_space_right (issue #1862)
@@ -733,8 +334,6 @@ Bug fixes::
[[v3.7]]
== Version 3.7 (2022-10-09)
{see-release-notes}
New features::
* core: add option `-save` in command `/upgrade` (issue #1630)
@@ -800,8 +399,6 @@ Tests::
[[v3.6]]
== Version 3.6 (2022-07-10)
{see-release-notes}
New features::
* core: add command `/item` to create custom bar items (issue #808)
@@ -829,8 +426,6 @@ Bug fixes::
[[v3.5]]
== Version 3.5 (2022-03-27)
{see-release-notes}
New features::
* core: search in message tags when tags are displayed with `/debug tags`
@@ -883,8 +478,6 @@ Bug fixes::
[[v3.4]]
== Version 3.4 (2021-12-18)
{see-release-notes}
New features::
* core: add support of static arrays in hdata
@@ -928,8 +521,6 @@ Build::
[[v3.3]]
== Version 3.3 (2021-09-19)
{see-release-notes}
New features::
* core: change key kbd:[Alt+h] to kbd:[Alt+h], kbd:[Alt+c] (clear hotlist)
@@ -992,8 +583,6 @@ Bug fixes::
[[v3.2]]
== Version 3.2 (2021-06-13)
{see-release-notes}
New features::
* core: use XDG directories by default (config, data, cache, runtime) (issue #1285)
@@ -1049,8 +638,6 @@ Build::
[[v3.1]]
== Version 3.1 (2021-03-07)
{see-release-notes}
New features::
* core: add options weechat.look.hotlist_update_on_buffer_switch and weechat.look.read_marker_update_on_buffer_switch (issue #992, issue #993)
@@ -1093,8 +680,6 @@ Bug fixes::
[[v3.0]]
== Version 3.0 (2020-11-11)
{see-release-notes}
New features::
* api: add optional list of colors in infos "nick_color" and "nick_color_name" (issue #1565)
@@ -1132,8 +717,6 @@ Build::
[[v2.9]]
== Version 2.9 (2020-07-18)
{see-release-notes}
New features::
* core: add bar option "color_bg_inactive": color for window bars in inactive window (issue #732)
@@ -1220,8 +803,6 @@ Build::
[[v2.8]]
== Version 2.8 (2020-03-29)
{see-release-notes}
New features::
* core: add variable "old_full_name" in buffer, set during buffer renaming (issue #1428)
@@ -1278,8 +859,6 @@ Bug fixes::
[[v2.7]]
== Version 2.7 (2019-12-08)
{see-release-notes}
New features::
* core: add option weechat.look.nick_color_hash_salt to shuffle nick colors (issue #635)
@@ -1337,8 +916,6 @@ Build::
[[v2.6]]
== Version 2.6 (2019-09-08)
{see-release-notes}
New features::
* core: add support of 32767 color pairs (issue #1343, issue #1345)
@@ -1387,8 +964,6 @@ Build::
[[v2.5]]
== Version 2.5 (2019-06-06)
{see-release-notes}
New features::
* core: use getopt to parse command line arguments
@@ -1444,8 +1019,6 @@ Build::
[[v2.4]]
== Version 2.4 (2019-02-17)
{see-release-notes}
New features::
* core: do not automatically add a space when completing "nick:" at the beginning of command line (the space can be added in option weechat.completion.nick_completer)
@@ -1523,8 +1096,6 @@ Build::
[[v2.2]]
== Version 2.2 (2018-07-14)
{see-release-notes}
New features::
* core: change default value of option weechat.look.hotlist_add_conditions to check connected relay clients via weechat protocol (issue #1206)
@@ -1593,8 +1164,6 @@ Build::
[[v2.1]]
== Version 2.1 (2018-03-18)
{see-release-notes}
New features::
* core: add binary weechat-headless to run WeeChat without interface, with optional daemon mode (command line option `--daemon`) (issue #1120)
@@ -1634,8 +1203,6 @@ Bug fixes::
[[v2.0]]
== Version 2.0 (2017-12-03)
{see-release-notes}
New features::
* core: add flag "input_get_empty" in buffer
@@ -1723,8 +1290,6 @@ Bug fixes::
[[v1.8]]
== Version 1.8 (2017-05-13)
{see-release-notes}
New features::
* core: add option weechat.completion.nick_case_sensitive (issue #981)
@@ -1775,8 +1340,6 @@ Bug fixes::
[[v1.7]]
== Version 1.7 (2017-01-15)
{see-release-notes}
New features::
* core: add option weechat.look.align_multiline_words (issue #411, issue #802)
@@ -1821,8 +1384,6 @@ Build::
[[v1.6]]
== Version 1.6 (2016-10-02)
{see-release-notes}
New features::
* core: add optional argument `lowest`, `highest` or level mask in command `/input hotlist_clear`
@@ -1859,8 +1420,6 @@ Build::
[[v1.5]]
== Version 1.5 (2016-05-01)
{see-release-notes}
New features::
* core: evaluate content of option "weechat.look.item_time_format" (issue #791)
@@ -1903,8 +1462,6 @@ Build::
[[v1.4]]
== Version 1.4 (2016-01-10)
{see-release-notes}
New features::
* core: add a parent name in options, display inherited values if null in `/set` output, add option weechat.color.chat_value_null (issue #629)
@@ -1962,8 +1519,6 @@ Build::
[[v1.3]]
== Version 1.3 (2015-08-16)
{see-release-notes}
New features::
* core: add completion "colors" (issue #481)
@@ -2019,8 +1574,6 @@ Build::
[[v1.2]]
== Version 1.2 (2015-05-10)
{see-release-notes}
New features::
* core: add signals "signal_sigterm" and "signal_sigquit" (issue #114)
@@ -2095,8 +1648,6 @@ Build::
[[v1.1]]
== Version 1.1 (2015-01-11)
{see-release-notes}
New features::
* core: add option weechat.completion.command_inline (task #12491)
@@ -2194,8 +1745,6 @@ Build::
[[v1.0]]
== Version 1.0 (2014-08-15)
{see-release-notes}
New features::
* core: display a warning on startup if $TERM does not start with "screen" under Screen/Tmux
@@ -2357,8 +1906,6 @@ Tests::
[[v0.4.3]]
== Version 0.4.3 (2014-02-09)
{see-release-notes}
New features::
* core: add signals "signal_sighup" and "signal_sigwinch" (terminal resized)
@@ -2462,8 +2009,6 @@ Build::
[[v0.4.2]]
== Version 0.4.2 (2013-10-06)
{see-release-notes}
New features::
* core: display day change message dynamically (do not store it as a line in buffer), split option weechat.look.day_change_time_format into two options weechat.look.day_change_message_{1date|2dates}, new option weechat.color.chat_day_change (task #12775)
@@ -2540,14 +2085,12 @@ Documentation::
Build::
* core: add CA_FILE option in CMake and configure to setup default value of option weechat.network.gnutls_ca_file (default is "/etc/ssl/certs/ca-certificates.crt") (task #12725)
* core: disable build of doc by default, add CMake option "ENABLE_MAN" to compile man page (off by default)
* core: disable build of doc by default, add CMake option ENABLE_MAN to compile man page (off by default)
* xfer: fix compilation on OpenBSD (bug #39071)
[[v0.4.1]]
== Version 0.4.1 (2013-05-20)
{see-release-notes}
New features::
* core: make nick prefix/suffix dynamic (not stored in the line): move options irc.look.nick_{prefix|suffix} to weechat.look.nick_{prefix|suffix} and options irc.color.nick_{prefix|suffix} to weechat.color.chat_nick_{prefix|suffix}, add new options weechat.look.prefix_align_more_after, weechat.look.prefix_buffer_align_more_after, logger.file.nick_{prefix|suffix} (bug #37531)
@@ -2632,8 +2175,6 @@ Build::
[[v0.4.0]]
== Version 0.4.0 (2013-01-20)
{see-release-notes}
New features::
* core: add buffer pointer in arguments for signals "input_search", "input_text_changed" and "input_text_cursor_moved"
@@ -2735,8 +2276,6 @@ Bug fixes::
[[v0.3.9]]
== Version 0.3.9 (2012-09-29)
{see-release-notes}
New features::
* core: add signals for plugins loaded/unloaded
@@ -2825,8 +2364,6 @@ Build::
[[v0.3.8]]
== Version 0.3.8 (2012-06-03)
{see-release-notes}
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)
@@ -2894,8 +2431,6 @@ Build::
[[v0.3.7]]
== Version 0.3.7 (2012-02-26)
{see-release-notes}
New features::
* core: add support of flags in regular expressions and highlight options
@@ -2980,8 +2515,6 @@ Build::
[[v0.3.6]]
== Version 0.3.6 (2011-10-22)
{see-release-notes}
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)
@@ -3074,8 +2607,6 @@ Build::
[[v0.3.5]]
== Version 0.3.5 (2011-05-15)
{see-release-notes}
New features::
* core: add buffer to hotlist if away is set on buffer (even if buffer is displayed), new option weechat.look.hotlist_add_buffer_if_away (task #10948)
@@ -3154,8 +2685,6 @@ Build::
[[v0.3.4]]
== Version 0.3.4 (2011-01-16)
{see-release-notes}
New features::
* core: add 256 colors support, new command `/color`, new section "palette" in weechat.conf (task #6834)
@@ -3224,8 +2753,6 @@ Build::
[[v0.3.3]]
== Version 0.3.3 (2010-08-07)
{see-release-notes}
New features::
* core: use "!" to reverse a regex in a filter (to keep lines matching regex and hide other lines) (task #10032)
@@ -3269,8 +2796,6 @@ Bug fixes::
[[v0.3.2]]
== Version 0.3.2 (2010-04-18)
{see-release-notes}
New features::
* core: add new options for command `/key`: `listdefault`, `listdiff` and `reset`
@@ -3351,8 +2876,6 @@ Build::
[[v0.3.1]]
== Version 0.3.1 (2010-01-23)
{see-release-notes}
New features::
* core: add option "grab_key_command" in command `/input` (bound by default to kbd:[Alt+k])
@@ -3409,8 +2932,6 @@ Build::
[[v0.3.0]]
== Version 0.3.0 (2009-09-06)
{see-release-notes}
New features::
* core: add group support in nicklist
@@ -3637,8 +3158,6 @@ Build::
[[v0.2.2]]
== Version 0.2.2 (2007-01-06)
{see-release-notes}
New features::
* add anti-flood option (irc_anti_flood) (task #5442)
@@ -3715,8 +3234,6 @@ Bug fixes::
[[v0.2.0]]
== Version 0.2.0 (2006-08-19)
{see-release-notes}
New features::
* add "C"lear option on IRC raw buffer
@@ -3772,8 +3289,6 @@ Build::
[[v0.1.9]]
== Version 0.1.9 (2006-05-25)
{see-release-notes}
New features::
* add backtrace when WeeChat crashes, log file automatically renamed
@@ -3831,8 +3346,6 @@ Build::
[[v0.1.8]]
== Version 0.1.8 (2006-03-18)
{see-release-notes}
New features::
* improve alias completion (now uses target command for completion)
@@ -3880,8 +3393,6 @@ Bug fixes::
[[v0.1.7]]
== Version 0.1.7 (2006-01-14)
{see-release-notes}
New features::
* remove "irc_default_msg_away" setting, for RFC 2812 conformity (`/away` command without argument only removes away status), new values for "irc_display_away" (off, local, channel)
@@ -3914,8 +3425,6 @@ Build::
[[v0.1.6]]
== Version 0.1.6 (2005-11-11)
{see-release-notes}
New features::
* new color management system, IRC colors are now correctly displayed and can be removed by new options irc_colors_receive and irc_colors_send
+3 -3
View File
@@ -5,9 +5,9 @@
pass:[<p align="center">] image:https://weechat.org/media/images/weechat_logo_large.png[align="center"] pass:[</p>]
image:https://img.shields.io/badge/mastodon-follow-blue.svg["Mastodon", link="https://hostux.social/@weechat"]
image:https://img.shields.io/badge/diaspora*-follow-blue.svg["Diaspora*", link="https://diasp.eu/u/weechat"]
image:https://img.shields.io/badge/x-follow-blue.svg["Twitter", link="https://x.com/WeeChatClient"]
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://blog.weechat.org/"]
image:https://img.shields.io/badge/slant-recommend-28acad.svg["Slant", link="https://www.slant.co/topics/1323/~best-irc-clients-for-linux"]
image:https://img.shields.io/badge/help-donate%20%E2%9D%A4-ff69b4.svg["Donate", link="https://weechat.org/donate/"]
@@ -49,7 +49,7 @@ WeeChat is following a "practical" semantic versioning, see file link:Contributi
== Copyright
Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
This file is part of WeeChat, the extensible chat client.
+9 -353
View File
@@ -11,353 +11,6 @@ It is recommended to read it when upgrading to a new stable version. +
For a complete list of changes, please look at ChangeLog.
[[v4.3.6]]
== Version 4.3.6 (2024-08-15)
No release notes.
[[v4.3.5]]
== Version 4.3.5 (2024-07-16)
No release notes.
[[v4.3.4]]
== Version 4.3.4 (2024-07-03)
No release notes.
[[v4.3.3]]
== Version 4.3.3 (2024-06-22)
No release notes.
[[v4.3.2]]
== Version 4.3.2 (2024-06-06)
No release notes.
[[v4.3.1]]
== Version 4.3.1 (2024-05-31)
[[v4.3.1_libgcrypt]]
=== Detection of libgcrypt
The detection of libgcrypt has been fixed to properly detect libgcrypt >= 1.11. +
As a consequence, the detection of an old version of libgcrypt is failing if the
file `libgcrypt.pc` is not found. +
This affects old distributions like Debian Buster and Ubuntu Bionic.
[[v4.3.0]]
== Version 4.3.0 (2024-05-26)
[[v4.3.0_relay_options]]
=== Relay options
The following relay options have been renamed:
* relay.color.status_waiting_auth -> relay.color.status_authenticating
* relay.weechat.commands -> relay.network.commands (new default value: `*,!quit`)
[[v4.3.0_lag_in_buflist]]
=== Lag in buflist
The lag is now stored in all IRC buffers: server (like it always has been),
channels and private buffers.
Consequently, if you use `${format_lag}` in buflist options, this lag will be
displayed on server and all channels and private buffers.
If you want to display the lag only on server buffer in buflist, you can use
such format:
----
${if:${type}==server?${format_lag}}
----
[[v4.3.0_irc_color_channel_modes]]
=== Color of IRC channel modes
The option `irc.color.item_channel_modes` has been moved to core and renamed to
`weechat.color.status_modes`.
[[v4.3.0_signal_buffer_line_added]]
=== Signal "buffer_line_added"
The signal "buffer_line_added" is now sent for every line added or modified
on a buffer with free content.
[[v4.3.0_script_keys]]
=== Script keys
Some arguments to the `/script` command were renamed in version 4.1.0, but the
keys using these arguments were not changed at same time.
They're now using the new arguments by default, but you must reset manually
the keys with the following commands:
----
/reset weechat.key_mouse.@chat(script.scripts):button1
/reset weechat.key_mouse.@chat(script.scripts):button2
/reset weechat.key_mouse.@chat(script.scripts):wheeldown
/reset weechat.key_mouse.@chat(script.scripts):wheelup
----
[[v4.2.3]]
== Version 4.2.3 (2024-05-31)
No release notes.
[[v4.2.2]]
== Version 4.2.2 (2024-04-07)
[[v4.2.2_script_keys]]
=== Script keys
Some arguments to the `/script` command were renamed in version 4.1.0, but the
keys using these arguments were not changed at same time.
They're now using the new arguments by default, but you must reset manually
the keys with the following commands:
----
/reset weechat.key_mouse.@chat(script.scripts):button1
/reset weechat.key_mouse.@chat(script.scripts):button2
/reset weechat.key_mouse.@chat(script.scripts):wheeldown
/reset weechat.key_mouse.@chat(script.scripts):wheelup
----
[[v4.2.1]]
== Version 4.2.1 (2024-01-22)
No release notes.
[[v4.2.0]]
== Version 4.2.0 (2024-01-21)
[[v4.2.0_lines_microseconds]]
=== Microseconds in buffer lines
Microseconds have been added in buffer lines (for both date and printed date).
Here are the changes that could affect plugins and scripts:
* hook_print: the C callback receives a new argument "date_usec" (microseconds
of date), after the argument "date" (scripting API is unchanged: the
microseconds are not available)
* trigger of types "print" and "timer": the format of variable `${tg_date}` is
changed from `%Y-%m-%d %H:%M:%S` to `%FT%T.%f` (where `%f` is the number of
microseconds on 6 digits)
[[v4.2.0_irc_anti_flood]]
=== IRC anti-flood
The anti-flood mechanism in IRC plugin has been improved and is now configured
in milliseconds instead of seconds. +
It is done with a single option `irc.server_default.anti_flood` (and same option
in servers), which replaces both options `anti_flood_prio_high` and
`anti_flood_prio_low`.
The default value is 2000 (2 seconds), and for example if you want to set
a delay of 0.5 seconds between your messages sent:
----
/set irc.server_default.anti_flood 500
----
When upgrading from an old WeeChat version, you'll see such messages, which are
perfectly normal (they're displayed to warn you about unknown options, and then
you have to set the new option if needed):
----
=!= | Warning: /home/user/.config/weechat/irc.conf, line 131: ignoring unknown option for section "server_default": anti_flood_prio_high = 2
=!= | Warning: /home/user/.config/weechat/irc.conf, line 132: ignoring unknown option for section "server_default": anti_flood_prio_low = 2
=!= | Warning: /home/user/.config/weechat/irc.conf, line 212: ignoring invalid value for option in section "server": libera.anti_flood_prio_high
=!= | Warning: //home/user/.config/weechat/irc.conf, line 213: ignoring invalid value for option in section "server": libera.anti_flood_prio_low
----
[[v4.2.0_search_commands_history]]
=== Search in commands history
Search in commands history has been added with new keys and a new key context
called "histsearch".
Some existing keys have been moved as well.
New keys can be changed and added with the following commands after upgrade
from an old WeeChat version:
----
/key missing
/key unbind ctrl-s,ctrl-u
/key bind meta-U /allbuf /buffer set unread
/key bind ctrl-r /input search_history
/key bindctxt search ctrl-r /input search_previous
----
[[v4.2.0_irc_rgb_colors]]
=== RGB colors in IRC messages
Support for RGB colors in IRC messages has been added and a new key
kbd:[Ctrl+c], kbd:[d] is available to insert this color code in command line.
You can add this key with this command:
----
/key missing
----
[[v4.2.0_custom_bar_items]]
=== Custom bar items
Custom bar items must now have a different name than default bar items
(for example the custom bar item name `time` is now forbidden). +
If you have such names in your config, WeeChat will now fail to load them
(this should not happen anyway, since such bar items can not be properly used
or can cause a crash of WeeChat).
[[v4.2.0_nick_color_infos]]
=== Nick color infos
The infos irc_nick_color and irc_nick_color_name are deprecated again, and the
algorithm to compute IRC nick colors has been reverted to case sensitive. +
The server name has been removed from arguments.
[[v4.1.3]]
== Version 4.1.3 (2024-01-20)
No release notes.
[[v4.1.2]]
== Version 4.1.2 (2023-12-03)
No release notes.
[[v4.1.1]]
== Version 4.1.1 (2023-10-26)
[[v4.1.1_custom_bar_items]]
=== Custom bar items
Custom bar items must now have a different name than default bar items
(for example the custom bar item name `time` is now forbidden). +
If you have such names in your config, WeeChat will now fail to load them
(this should not happen anyway, since such bar items can not be properly used
or can cause a crash of WeeChat).
[[v4.1.0]]
== Version 4.1.0 (2023-10-15)
[[v4.1.0_cursor_mode_keys]]
=== New keys to move in cursor mode
New keys have been added to move in cursor mode, and existing keys to move to
another area have been changed: modifier is now kbd:[Alt+Shift] instead of
kbd:[Alt].
You can change existing keys and add new ones with these commands:
----
/key bindctxt cursor meta-up /cursor move edge_top
/key bindctxt cursor meta-down /cursor move edge_bottom
/key bindctxt cursor meta-left /cursor move edge_left
/key bindctxt cursor meta-right /cursor move edge_right
/key bindctxt cursor meta-end /cursor move bottom_right
/key bindctxt cursor meta-home /cursor move top_left
/key bindctxt cursor meta-shift-up /cursor move area_up
/key bindctxt cursor meta-shift-down /cursor move area_down
/key bindctxt cursor meta-shift-left /cursor move area_left
/key bindctxt cursor meta-shift-right /cursor move area_right
----
[[v4.1.0_irc_ctcp_replies]]
=== IRC CTCP replies
IRC CTCP replies are now evaluated, with the same variables available, so now
the syntax is for example `${version}` instead of `$version`. +
The existing options `irc.ctcp.*` are automatically converted on upgrade.
In addition, for privacy reasons, these default CTCP replies have been removed:
- FINGER
- USERINFO
If ever you want that WeeChat replies to these CTCP requests, you can add them
back with the two following commands:
----
/set irc.ctcp.finger "WeeChat ${version}"
/set irc.ctcp.userinfo "${username} (${realname})"
----
They will then be advertised in reply to "CTCP CLIENTINFO", which is now built
dynamically with these options.
[[v4.1.0_nick_color_infos]]
=== Nick color infos
Two infos to get nick colors have been added: nick_color_ignore_case and
nick_color_name_ignore_case. +
They are similar to nick_color and nick_color_name, except they take as second
argument a range of chars to apply on the nick: the nick is converted to lower
case using this range of chars.
The infos irc_nick_color and irc_nick_color_name, that were deprecated since
version 1.5 are now used again, with a change in parameter: the server is now
optional before the nick: "server,nick". +
The nick is first converted to lower case, following the value of CASEMAPPING
on the server, then hashed to compute the color. +
That means the color for a nick is now case insensitive (in the way IRC servers
are case insensitive, so with a limited range of chars only).
If a script was using this info with a comma in nickname (which should not happen
anyway), this is now interpreted as the server name, and the script must be
modified. +
Anyway, it is recommended to always give the server name to respect the
CASEMAPPING of the server and prevent any issue with a comma in the nickname.
For example nick color of "alice" and "ALICE" is now always guaranteed to be the
same:
----
# with server name (recommended)
weechat.info_get("irc_nick_color", "libera,alice") == weechat.info_get("irc_nick_color", "libera,ALICE")
weechat.info_get("irc_nick_color_name", "libera,alice") == weechat.info_get("irc_nick_color_name", "libera,ALICE")
# without server name (allowed but not recommended, kept for compatibility)
weechat.info_get("irc_nick_color", "alice") == weechat.info_get("irc_nick_color", "ALICE")
weechat.info_get("irc_nick_color_name", "alice") == weechat.info_get("irc_nick_color_name", "ALICE")
----
[[v4.1.0_fset_allowed_values]]
=== Allowed values for options on fset buffer
A new variable `allowed_values` has been added in fset options.
The default value for the second format has changed. +
You can reset it with this command:
----
/reset fset.format.option2
----
[[v4.1.0_fset_mouse]]
=== Mouse actions on fset buffer
Mouse actions on fset buffer has been fixed when option `fset.look.format_number`
is set to 2.
The key for button 1 on fset buffer has been fixed. +
You can reset it with this command:
----
/reset weechat.key_mouse.@chat(fset.fset):button1
----
[[v4.0.8]]
== Version 4.0.8 (2024-01-20)
No release notes.
[[v4.0.7]]
== Version 4.0.7 (2023-12-03)
@@ -3072,12 +2725,13 @@ disable IPv6 in relay if you don't plan to use it at all:
[[v0.3.9.2]]
== Version 0.3.9.2 (2012-11-18)
No release notes.
This version fixes a security vulnerability when a plugin/script gives
untrusted command to API function link:https://weechat.org/doc/weechat/plugin/#_hook_process[hook_process].
[[v0.3.9.1]]
== Version 0.3.9.1 (2012-11-09)
No release notes.
This version fixes crash when decoding IRC colors in strings.
[[v0.3.9]]
== Version 0.3.9 (2012-09-29)
@@ -3385,17 +3039,17 @@ Major differences:
[[v0.2.6.3]]
== Version 0.2.6.3 (2009-06-13)
No release notes.
This version fixes gnutls detection.
[[v0.2.6.2]]
== Version 0.2.6.2 (2009-04-18)
No release notes.
This version fixes a bug with charset decoding (like "iso2022jp").
[[v0.2.6.1]]
== Version 0.2.6.1 (2009-03-14)
No release notes.
This version fixes a major bug: crash with some special chars in IRC messages.
[[v0.2.6]]
== Version 0.2.6 (2007-09-06)
@@ -3415,7 +3069,9 @@ No release notes.
[[v0.2.3]]
== Version 0.2.3 (2007-01-10)
No release notes.
This version fixes several major bugs of version 0.2.2.
All users of version 0.2.2 should upgrade to this version.
[[v0.2.2]]
== Version 0.2.2 (2007-01-06)
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2014-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2014-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+53
View File
@@ -0,0 +1,53 @@
#
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
# WeeChat is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# WeeChat is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
#
# - Find Gcrypt
# This module finds if libgcrypt is installed and determines where
# the include files and libraries are.
#
# This code sets the following variables:
#
# GCRYPT_CFLAGS = cflags to use to compile
# GCRYPT_LDFLAGS = ldflags to use to compile
#
find_program(LIBGCRYPT_CONFIG_EXECUTABLE NAMES libgcrypt-config)
set(GCRYPT_LDFLAGS)
set(GCRYPT_CFLAGS)
if(LIBGCRYPT_CONFIG_EXECUTABLE)
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --libs RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --cflags RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
if(NOT DEFINED ${GCRYPT_CFLAGS})
set(GCRYPT_CFLAGS " ")
endif()
endif()
# handle the QUIETLY and REQUIRED arguments and set GCRYPT_FOUND to TRUE if
# all listed variables are TRUE
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(GCRYPT REQUIRED_VARS GCRYPT_LDFLAGS GCRYPT_CFLAGS)
if(GCRYPT_FOUND)
mark_as_advanced(GCRYPT_CFLAGS GCRYPT_LDFLAGS)
endif()
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2007 Julien Louis <ptitlouis@sysif.net>
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
#
# This file is part of WeeChat, the extensible chat client.
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2011-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2011-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,6 +1,6 @@
#
# Copyright (C) 2017 Adam Saponara <as@php.net>
# Copyright (C) 2017-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2017-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2009 Julien Louis <ptitlouis@sysif.net>
#
# This file is part of WeeChat, the extensible chat client.
+2 -2
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
@@ -37,7 +37,7 @@ if(PKG_CONFIG_FOUND)
# set specific search path for macOS
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:/usr/local/opt/ruby/lib/pkgconfig")
endif()
pkg_search_module(RUBY ruby-3.3 ruby-3.2 ruby-3.1 ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
pkg_search_module(RUBY ruby-3.2 ruby-3.1 ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
if(RUBY_FOUND AND ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
# FIXME: weird hack: hardcoding the Ruby lib location on macOS
set(RUBY_LDFLAGS "${RUBY_LDFLAGS} -L/usr/local/opt/ruby/lib")
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2015-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2015-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
-2
View File
@@ -5,8 +5,6 @@
#cmakedefine ICONV_2ARG_IS_CONST 1
#cmakedefine HAVE_MALLINFO
#cmakedefine HAVE_MALLINFO2
#cmakedefine HAVE_MALLOC_H
#cmakedefine HAVE_MALLOC_TRIM
#cmakedefine HAVE_EAT_NEWLINE_GLITCH
#cmakedefine HAVE_ASPELL_VERSION_STRING
#cmakedefine HAVE_ENCHANT_GET_VERSION
+3 -4
View File
@@ -7,7 +7,7 @@ Build-Depends:
ruby-pygments.rb,
debhelper (>= 12),
cmake, pkg-config,
libncurses-dev,
libncursesw5-dev,
gem2deb,
libperl-dev,
python3-dev,
@@ -21,9 +21,8 @@ Build-Depends:
libgcrypt20-dev,
libgnutls28-dev,
libzstd-dev,
zlib1g-dev,
libcjson-dev
Standards-Version: 4.6.2
zlib1g-dev
Standards-Version: 4.6.0.1
Homepage: https://weechat.org/
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
Vcs-Browser: https://salsa.debian.org/kolter/weechat
-3
View File
@@ -1,3 +0,0 @@
tar-ignore = ".git"
tar-ignore = "build"
tar-ignore = "release"
+41
View File
@@ -0,0 +1,41 @@
weechat (2.1-1) unstable; urgency=medium
This release introduces a new headless client and a new PHP plugin for
scripting (respectively weechat-headless and weechat-php binary
packages).
To avoid at least unnecessary dependencies, each plugin has its own
separate binary package:
weechat-{perl,python,ruby,lua,guile,javascript,php}
Depending on your needs about scripting with weechat you should consider
to install the missing packages.
-- Emmanuel Bouthenot <kolter@debian.org> Wed, 21 Mar 2018 07:53:40 +0100
weechat (1.1.1-1) unstable; urgency=medium
Since version 1.1, there is a new format for regexp replacement in
triggers. This format is incompatible with version 1.0. The existing
triggers will not be automatically updated.
See https://weechat.org/files/releasenotes/ReleaseNotes-1.1.html
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 25 Jan 2015 20:41:50 +0100
weechat (0.3.1-1) unstable; urgency=low
This release introduces important changes with the usage of SSL. There
are stronger checks while connecting with SSL. By default, if a connection
is not fully trusted it will fail.
You can find more information on how to handle this new behaviour here:
https://blog.weechat.org/post/2009/12/01/SSL-certificates
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 25 Jan 2010 12:35:11 +0100
weechat (0.3.0-1) unstable; urgency=low
This release introduces major changes. Large part of code was
rewritten without keeping compatibility with older versions.
Please refer to the file /usr/share/doc/weechat-core/UPGRADE_0.3
for more information on upgrade from a version 0.2.x to 0.3.x.
-- Emmanuel Bouthenot <kolter@openics.org> Tue, 15 Sep 2009 20:59:42 +0000
-38
View File
@@ -1,41 +1,3 @@
weechat (4.3.1-1) unstable; urgency=medium
* New upstream release (Closes: #1067608)
- fix FTBFS against libgcrypt 1.11 (Closes: #1071960)
* Add build dependency on libcjson-dev
* Replace pkg-config build dependency by pkgconf
* Minor updates in debian/copyright
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 01 Jun 2024 14:21:02 +0000
weechat (4.1.1-1) unstable; urgency=medium
* New upstream release (Closes: #1055278)
-- Emmanuel Bouthenot <kolter@debian.org> Fri, 03 Nov 2023 20:23:37 +0000
weechat (4.0.5-1) unstable; urgency=medium
* New upstream release
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 24 Sep 2023 07:49:41 +0000
weechat (4.0.2-1) unstable; urgency=medium
* New upstream release (Closes: #1040248)
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 22 Jul 2023 05:48:35 +0000
weechat (4.0.1-1) unstable; urgency=medium
* New upstream release
* Remove NEWS file, no longer required
* Update build dependency from libncursesw5-dev to libncurses-dev
* Bump Standards-Version to 4.6.2
* Remove all patches (no longer required)
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 04 Jul 2023 19:02:41 +0000
weechat (3.8-1) unstable; urgency=medium
* New upstream release
+3 -4
View File
@@ -7,7 +7,7 @@ Build-Depends:
ruby-pygments.rb,
debhelper (>= 12),
cmake, pkg-config,
libncurses-dev,
libncursesw5-dev,
gem2deb,
libperl-dev,
python3-dev,
@@ -21,9 +21,8 @@ Build-Depends:
libgcrypt20-dev,
libgnutls28-dev,
libzstd-dev,
zlib1g-dev,
libcjson-dev
Standards-Version: 4.6.2
zlib1g-dev
Standards-Version: 4.6.1.0
Homepage: https://weechat.org/
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
Vcs-Browser: https://salsa.debian.org/kolter/weechat
+13 -13
View File
@@ -4,26 +4,26 @@ Upstream-Contact: Sébastien Helleu <flashcode@flashtux.org>
Source: https://weechat.org/
Files: *
Copyright: 2003-2024, Sébastien Helleu <flashcode@flashtux.org>
Copyright: 2003-2023, Sébastien Helleu <flashcode@flashtux.org>
License: GPL-3+
Files: src/core/core-command.c
src/core/core-command.h
Files: src/core/wee-command.c
src/core/wee-command.h
Copyright: 2005-2006, Emmanuel Bouthenot <kolter@openics.org>
License: GPL-3+
Files: src/core/core-config-file.c
src/core/core-config-file.h
src/core/core-config.c
src/core/core-config.h
Files: src/core/wee-config-file.c
src/core/wee-config-file.h
src/core/wee-config.c
src/core/wee-config.h
Copyright: 2005-2006, Emmanuel Bouthenot <kolter@openics.org>
License: GPL-3+
Files: src/core/hook/hook-connect.c
Files: src/core/hook/wee-hook-connect.c
Copyright: 2012, Simon Arlott
License: GPL-3+
Files: src/core/hook/hook-connect.h
Files: src/core/hook/wee-hook-connect.h
Copyright: 2012, Simon Arlott
License: GPL-3+
@@ -31,9 +31,9 @@ Files: src/gui/gui-history.c
Copyright: 2005, Emmanuel Bouthenot <kolter@openics.org>
License: GPL-3+
Files: src/core/core-completion.c
src/core/core-log.c
src/core/core-utf8.c
Files: src/core/wee-completion.c
src/core/wee-log.c
src/core/wee-utf8.c
src/core/weechat.h
src/plugins/spell/spell-config.c
src/plugins/spell/spell-config.h
@@ -45,7 +45,7 @@ Files: src/core/core-completion.c
Copyright: 2006, Emmanuel Bouthenot <kolter@openics.org>
License: GPL-3+
Files: src/core/core-network.c
Files: src/core/wee-network.c
Copyright: 2005-2010, Emmanuel Bouthenot <kolter@openics.org>
2010, Gu1ll4um3r0m41n <aeroxteam@gmail.com>
2012, Simon Arlott
-3
View File
@@ -1,3 +0,0 @@
tar-ignore = ".git"
tar-ignore = "build"
tar-ignore = "release"
+1 -7
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
#
# This file is part of WeeChat, the extensible chat client.
@@ -177,9 +177,6 @@ if(ENABLE_MAN OR ENABLE_DOC)
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_default_aliases.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_irc_colors.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_options.${lang}.adoc"
# scripting duide
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_functions.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_constants.${lang}.adoc"
)
endforeach()
add_custom_target(doc-autogen ALL
@@ -286,9 +283,6 @@ if(ENABLE_MAN OR ENABLE_DOC)
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_scripting.${lang}.adoc"
doc-autogen
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_functions.${lang}.adoc"
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_constants.${lang}.adoc"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Building weechat_scripting.${lang}.html"
)
+1 -1
View File
@@ -99,7 +99,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat je napsán Sébastienem Helleu a přispěvovateli (kompletní seznam je v
souboru AUTHORS.adoc).
Copyright (C) 2003-2024 {author}
Copyright (C) 2003-2023 {author}
WeeChat is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
+1 -1
View File
@@ -100,7 +100,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat wird programmiert von Sébastien Helleu und weiteren Beteiligten (eine vollständige Auflistung
findet man in der AUTHORS.adoc Datei).
Copyright (C) 2003-2024 {author}
Copyright (C) 2003-2023 {author}
WeeChat is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
+28 -74
View File
@@ -613,30 +613,6 @@ Sollte die macOS Terminal Applikation genutzt werden, empfiehlt es sich,
die Option "Use option as meta key" in den Menü-Einstellungen zu aktivieren.
Dadurch kann man die kbd:[Option] Taste als Meta-Taste verwenden.
[[enter_key]]
=== Einige Tasten, einschließlich Enter, funktionieren nicht. Weshalb?
Wenn eine WeeChat Version < 4.0.0 mit Konfigurationsdateien ausgeführt wird,
die von einer Weechat Version ≥ 4.0.0 erstellt wurde, sind die Tastennamen ungültig und viele Tasten funktionieren überhaupt nicht mehr. +
Um dies zu reparieren, muss WeeChat beendet und alle Einträge aus dem Abschnitt `[key*]` innerhalb der weechat.conf entfernt werden.
Wenn WeeChat erneut gestartet wird, wird die Standardtastenbelegung neu erstellt.
[[key_f11]]
=== Die Taste F11 maximiert das Terminalfenster. Wie kann ich aber in der Nicklist nach oben scrollen?
Die kbd:[F11] Taste wird häufig von Terminals verwendet, um das Fenster zu maximieren. Aber
kbd:[F11]/kbd:[F12] sind ebenso die Standardtasten, in WeeChat, um in der Nickliste zu scrollen.
Man kann andere Tasten nutzen, zum Beispiel kbd:[Shift+F11] und kbd:[Shift+F12],
mit WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Eine andere Möglichkeit besteht darin, die Maus zu aktivieren (Taste: kbd:[Alt+m]) und mit dem Mausrad zu scrollen (siehe auch Fragen zu <<mouse,mouse>>).
[[customize_key_bindings]]
=== Wie kann ich die Tastaturbelegung anpassen?
@@ -667,12 +643,6 @@ werden um dann z.B. mit einem Kurzbefehl `/123` zum Buffer #123 zu springen:
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
Um einfach von einem Buffer zu einem anderen zu springen, kann man das _go.py_ Skript installieren:
----
/script install go.py
----
[[global_history]]
=== Wie kann ich den globalen Verlaufsspeicher (anstelle des Buffer eigenen) mit den Up-/Down-Tasten nutzen?
@@ -1017,19 +987,35 @@ die Buffer-Eigenschaft genutzt werden, um das maximale Hotlist-Level für einige
oder pro Gruppe von Buffern (wie IRC-Server).
Um nun Highlights (Hervorhebungen) für bestimmte Nicks zu deaktivieren, muss
man die entsprechende Eigenschaft auf 2 setzen.
Für den aktuellen Buffer:
----
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
----
Für alle Kanäle auf dem Server "libera":
man die entsprechende Eigenschaft auf 2 setzen:
----
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----
Diese Buffereigenschaft wird aber nicht permanent in der Konfiguration
gespeichert. Um diese Eigenschaften permanent zu verwenden, muss man
das Skript _buffer_autoset.py_ nutzen:
----
/script install buffer_autoset.py
----
Um zum Beispiel Highlights (Hervorhebungen) von Nick "mike" im Kanal
#weechat auf dem IRC Server libera zu deaktivieren:
----
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
Um dies auf den kompletten libera Server anzuwenden:
----
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
Für weitere Beispiele, siehe `+/help buffer_autoset+`.
[[irc_target_buffer]]
=== Wie kann ich bei zusammengefügten Buffern den Zielbuffer ändern (z.B. bei einem Server-Buffer)?
@@ -1162,8 +1148,7 @@ Damit WeeChat weniger Speicher benötigt, solltest Du folgende Tipps umsetzen:
Man sollte sich die Tipps zum <<memory_usage,Speicherverbrauch>> ansehen
und zusätzlich diese Tipps beherzigen:
* "nicklist"-Bar sollte versteckt werden: `/bar hide nicklist` (Taste: kbd:[Alt+Shift+N]).
* deaktiviere "buflist": `/buflist disable` (Taste: kbd:[Alt+Shift+B]).
* "nicklist"-Bar sollte versteckt werden: `/bar hide nicklist`
* 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):
@@ -1185,19 +1170,14 @@ Deaktiviere die automatische Antwort für alle CTCP Anfragen:
----
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
----
Mit WeeChat < 4.1.0 wurden andere CTCP-Anfragen standardmäßig beantwortet und müssen ebenfalls deaktiviert werden:
----
/set irc.ctcp.finger ""
/set irc.ctcp.userinfo ""
----
Entferne und deaktiviere das automatische Ausführen der "xfer"-Erweiterung, die beispielsweise für "IRC DCC" verantwortlich ist:
----
@@ -1233,32 +1213,6 @@ Kennwörter (sofern sie nicht mit dem Befehl `/secure` in _sec.conf_ gesichert w
Siehe link:weechat_user.de.html#files_and_directories[Benutzerhandbuch / Dateien und Verzeichnisse ^↗^^]
für weitere Informationen über Konfigurationsdateien.
[[move_to_another_device]]
=== Ich möchte mein WeeChat auf ein anderes Gerät verschieben und meine Konfiguration behalten. Was muss ich kopieren?
Überprüfen Sie zunächst die von WeeChat verwendeten Verzeichnisse mit diesem Befehl: `/debug dirs`. +
Die Verzeichnisse home/config und home/data müssen kopiert werden (alle Dateien und Unterverzeichnisse).
Falls beispielsweise XDG-Verzeichnisse verwendet werden (Standard bei WeeChat ≥ 3.2), sollten die
Verzeichnisse `$HOME/.config/weechat` und `$HOME/.local/share/weechat` lauten. +
Sollte ein einzelnes Verzeichnis verwenden werden (Standard bei WeeChat < 3.2), sollte das Verzeichnis
`$HOME/.weechat` lauuten.
[IMPORTANT]
Die WeeChat-Version auf dem Zielgerät muss größer oder gleich der Version sein des Ausganggerätes. +
Ein Downgrade der WeeChat-Konfiguration wird *NICHT UNTERSTÜTZT* und kann zu Schäden führen und ein
unbrauchbares WeeChat verursachen.
Schritte:
. Weechat beenden: `/quit` (oder `/upgrade -quit`, falls eine Sitzung fortgesetzt werden soll,
einschließlich des Inhalts aller Buffer).
. Kopieren Sie alle Verzeichnisse, Unterverzeichnisse und Dateien auf das neue Gerät und behalten Sie die
Namen und Berechtigungen bei.
. Optional: Kopieren Sie alle Dateien außerhalb dieser Verzeichnisse, die auf Ihre Konfiguration verweisen
(es wird nicht empfohlen, Dateien außerhalb von WeeChat-Verzeichnissen zu verwenden).
. WeeChat auf dem neuen Gerät starten: `weechat` (oder `weechat --upgrade`, falls die Sitzung gesichert wurde).
[[development]]
== Entwicklung
+303 -2
View File
@@ -564,14 +564,315 @@ lesen Sie bitte link:weechat_plugin_api.en.html[WeeChat Plugin API Reference ^
Liste der Skript API Funktionen:
include::{autogendir}/autogen_scripting_functions.de.adoc[tag=functions]
[width="100%",cols="1,5",options="header"]
|===
| Kategorie | Funktionen
| Allgemein
| register
| Erweiterungen
| plugin_get_name
| Strings
| charset_set +
iconv_to_internal +
iconv_from_internal +
gettext +
ngettext +
strlen_screen +
string_match +
string_match_list +
string_has_highlight +
string_has_highlight_regex +
string_mask_to_regex +
string_format_size +
string_parse_size +
string_color_code_size +
string_remove_color +
string_is_command_char +
string_input_for_buffer +
string_eval_expression +
string_eval_path_home
| Verzeichnisse
| mkdir_home +
mkdir +
mkdir_parents
| sortierte Listen
| list_new +
list_add +
list_search +
list_search_pos +
list_casesearch +
list_casesearch_pos +
list_get +
list_set +
list_next +
list_prev +
list_string +
list_size +
list_remove +
list_remove_all +
list_free
| Konfigurationsdatei
| config_new +
config_new_section +
config_search_section +
config_new_option +
config_search_option +
config_string_to_boolean +
config_option_reset +
config_option_set +
config_option_set_null +
config_option_unset +
config_option_rename +
config_option_is_null +
config_option_default_is_null +
config_boolean +
config_boolean_default +
config_integer +
config_integer_default +
config_string +
config_string_default +
config_color +
config_color_default +
config_write_option +
config_write_line +
config_write +
config_read +
config_reload +
config_option_free +
config_section_free_options +
config_section_free +
config_free +
config_get +
config_get_plugin +
config_is_set_plugin +
config_set_plugin +
config_set_desc_plugin +
config_unset_plugin
| Tastenbelegung
| key_bind +
key_unbind
| Ausgabe
| prefix +
color +
print (für Python: prnt) +
print_date_tags (für Python: prnt_date_tags) +
print_y (für Python: prnt_y) +
print_y_date_tags (für Python: prnt_y_date_tags) +
log_print
| Hooks
| hook_command +
hook_command_run +
hook_timer +
hook_fd +
hook_process +
hook_process_hashtable +
hook_connect +
hook_line +
hook_print +
hook_signal +
hook_signal_send +
hook_hsignal +
hook_hsignal_send +
hook_config +
hook_completion +
hook_modifier +
hook_modifier_exec +
hook_info +
hook_info_hashtable +
hook_infolist +
hook_focus +
hook_set +
unhook +
unhook_all
| Buffer
| buffer_new +
buffer_new_props +
current_buffer +
buffer_search +
buffer_search_main +
buffer_clear +
buffer_close +
buffer_merge +
buffer_unmerge +
buffer_get_integer +
buffer_get_string +
buffer_get_pointer +
buffer_set +
buffer_string_replace_local_var +
buffer_match_list
| Fenster
| current_window +
window_search_with_buffer +
window_get_integer +
window_get_string +
window_get_pointer +
window_set_title
| Nickliste
| nicklist_add_group +
nicklist_search_group +
nicklist_add_nick +
nicklist_search_nick +
nicklist_remove_group +
nicklist_remove_nick +
nicklist_remove_all +
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
| Bars
| bar_item_search +
bar_item_new +
bar_item_update +
bar_item_remove +
bar_search +
bar_new +
bar_set +
bar_update +
bar_remove
| Befehle
| command +
command_options
| Vervollständigung
| completion_new +
completion_search +
completion_get_string +
completion_list_add +
completion_free
| Informationen
| info_get +
info_get_hashtable
| Infolisten
| infolist_new +
infolist_new_item +
infolist_new_var_integer +
infolist_new_var_string +
infolist_new_var_pointer +
infolist_new_var_time +
infolist_get +
infolist_next +
infolist_prev +
infolist_reset_item_cursor +
infolist_search_var +
infolist_fields +
infolist_integer +
infolist_string +
infolist_pointer +
infolist_time +
infolist_free
| hdata
| hdata_get +
hdata_get_var_offset +
hdata_get_var_type_string +
hdata_get_var_array_size +
hdata_get_var_array_size_string +
hdata_get_var_hdata +
hdata_get_list +
hdata_check_pointer +
hdata_move +
hdata_search +
hdata_char +
hdata_integer +
hdata_long +
hdata_string +
hdata_pointer +
hdata_time +
hdata_hashtable +
hdata_compare +
hdata_update +
hdata_get_string
| Upgrade
| upgrade_new +
upgrade_write_object +
upgrade_read +
upgrade_close
|===
[[script_api_constants]]
=== Konstanten
Liste der Konstanten in Skript API:
include::{autogendir}/autogen_scripting_constants.de.adoc[tag=constants]
[width="100%",cols="1,5",options="header"]
|===
| Kategorie | Konstanten
| return codes
| `WEECHAT_RC_OK` (integer) +
`WEECHAT_RC_OK_EAT` (integer) +
`WEECHAT_RC_ERROR` (integer)
| Konfigurationsdatei
| `WEECHAT_CONFIG_READ_OK` (integer) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_WRITE_OK` (integer) +
`WEECHAT_CONFIG_WRITE_ERROR` (integer) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (integer) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
| sortierte Listen
| `WEECHAT_LIST_POS_SORT` (string) +
`WEECHAT_LIST_POS_BEGINNING` (string) +
`WEECHAT_LIST_POS_END` (string)
| Hotlist
| `WEECHAT_HOTLIST_LOW` (string) +
`WEECHAT_HOTLIST_MESSAGE` (string) +
`WEECHAT_HOTLIST_PRIVATE` (string) +
`WEECHAT_HOTLIST_HIGHLIGHT` (string)
| hook Prozesse
| `WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
`WEECHAT_HOOK_PROCESS_ERROR` (integer)
| hook Connect
| `WEECHAT_HOOK_CONNECT_OK` (integer) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (integer) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
| hook Signal
| `WEECHAT_HOOK_SIGNAL_STRING` (string) +
`WEECHAT_HOOK_SIGNAL_INT` (string) +
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|===
[[common_tasks]]
== Gemeinschaftsaufgabe
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
<!--
Custom styles for Asciidoctor
Copyright (C) 2016-2024 Sébastien Helleu <flashcode@flashtux.org>
Copyright (C) 2016-2023 Sébastien Helleu <flashcode@flashtux.org>
-->
<style>
+1 -1
View File
@@ -100,7 +100,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat is written by Sébastien Helleu and contributors (complete list is in
the AUTHORS.adoc file).
Copyright (C) 2003-2024 {author}
Copyright (C) 2003-2023 {author}
WeeChat is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
+343 -393
View File
@@ -112,97 +112,95 @@ WeeChat "core" is located in following directories:
[width="100%",cols="2m,3",options="header"]
|===
| Path/file | Description
| core/ | Core functions: entry point, internal structures.
|    core-arraylist.c | Array lists.
|    core-backtrace.c | Display a backtrace after a crash.
|    core-calc.c | Calculate result of expressions.
|    core-command.c | WeeChat core commands.
|    core-completion.c | Default completions.
|    core-config-file.c | Configuration file management.
|    core-config.c | Configuration options for WeeChat core (file weechat.conf).
|    core-crypto.c | Cryptographic functions.
|    core-debug.c | Some debug functions.
|    core-doc.c | Build of files for documentation.
|    core-dir.c | Directory/file functions.
|    core-eval.c | Evaluation of expressions with references to internal vars.
|    core-hashtable.c | Hashtables.
|    core-hdata.c | Hdata (direct access to data using hashtables).
|    core-hook.c | Hooks.
|    core-infolist.c | Infolists (lists with objects data).
|    core-input.c | Input of commands/text.
|    core-list.c | Sorted lists.
|    core-log.c | Write to WeeChat log file (weechat.log).
|    core-network.c | Network functions (connection to servers/proxies).
|    core-proxy.c | Proxy management.
|    core-secure.c | Secured data functions.
|    core-secure-buffer.c | Secured data buffer.
|    core-secure-config.c | Secured data options (file sec.conf).
|    core-signal.c | Signal functions.
|    core-string.c | Functions on strings.
|    core-sys.c | System functions.
|    core-upgrade-file.c | Internal upgrade system.
|    core-upgrade.c | Upgrade for WeeChat core (buffers, lines, history, ...).
|    core-url.c | URL transfer (using libcurl).
|    core-utf8.c | UTF-8 functions.
|    core-util.c | Some other functions.
|    core-version.c | Functions for WeeChat version.
|    weechat.c | Main functions: command line options, startup.
|    hook/ | Hook functions.
|       hook-command-run.c | Hook "command_run".
|       hook-command.c | Hook "command".
|       hook-completion.c | Hook "completion".
|       hook-config.c | Hook "config".
|       hook-connect.c | Hook "connect".
|       hook-fd.c | Hook "fd".
|       hook-focus.c | Hook "focus".
|       hook-hdata.c | Hook "hdata".
|       hook-hsignal.c | Hook "hsignal".
|       hook-info-hashtable.c | Hook "info_hashtable".
|       hook-info.c | Hook "info".
|       hook-infolist.c | Hook "infolist".
|       hook-line.c | Hook "line".
|       hook-modifier.c | Hook "modifier".
|       hook-print.c | Hook "print".
|       hook-process.c | Hook "process".
|       hook-signal.c | Hook "signal".
|       hook-timer.c | Hook "timer".
|       hook-url.c | Hook "url".
| gui/ | Functions for buffers, windows, ... (used by all interfaces).
|    gui-bar-item.c | Bar items.
|    gui-bar-window.c | Bar windows.
|    gui-bar.c | Bars.
|    gui-buffer.c | Buffers.
|    gui-chat.c | Chat functions (display message, ...).
|    gui-color.c | Color functions.
|    gui-completion.c | Completion on command line.
|    gui-cursor.c | Cursor mode (free movement of cursor).
|    gui-filter.c | Filters.
|    gui-focus.c | Functions about focus (for cursor mode and mouse).
|    gui-history.c | Commands/text saved in buffers.
|    gui-hotlist.c | Hotlist management (list of buffers with activity).
|    gui-input.c | Input functions (input bar).
|    gui-key.c | Keyboard functions.
|    gui-layout.c | Layout.
|    gui-line.c | Lines in buffers.
|    gui-mouse.c | Mouse.
|    gui-nick.c | Nick functions.
|    gui-nicklist.c | Nicklist in buffers.
|    gui-window.c | Windows.
|    curses/ | Curses interface.
|       gui-curses-bar-window.c | Display in bar windows.
|       gui-curses-chat.c | Display in chat area (messages).
|       gui-curses-color.c | Color functions.
|       gui-curses-key.c | Keyboard functions (default keys, read of input).
|       gui-curses-main.c | WeeChat main loop (waiting for keyboard/network events).
|       gui-curses-mouse.c | Mouse.
|       gui-curses-term.c | Functions about terminal.
|       gui-curses-window.c | Windows.
|       headless/ | Headless mode (no interface).
|          main.c | Entry point for headless mode.
|          ncurses-fake.c | Fake ncurses library.
|       normal/ | Curses interface.
|          main.c | Entry point for Curses interface.
| Path/file | Description
| core/ | Core functions: entry point, internal structures.
|    wee-arraylist.c | Array lists.
|    wee-backtrace.c | Display a backtrace after a crash.
|    wee-calc.c | Calculate result of expressions.
|    wee-command.c | WeeChat core commands.
|    wee-completion.c | Default completions.
|    wee-config-file.c | Configuration file management.
|    wee-config.c | Configuration options for WeeChat core (file weechat.conf).
|    wee-crypto.c | Cryptographic functions.
|    wee-debug.c | Some debug functions.
|    wee-doc.c | Build of files for documentation.
|    wee-dir.c | Directory/file functions.
|    wee-eval.c | Evaluation of expressions with references to internal vars.
|    wee-hashtable.c | Hashtables.
|    wee-hdata.c | Hdata (direct access to data using hashtables).
|    wee-hook.c | Hooks.
|    wee-infolist.c | Infolists (lists with objects data).
|    wee-input.c | Input of commands/text.
|    wee-list.c | Sorted lists.
|    wee-log.c | Write to WeeChat log file (weechat.log).
|    wee-network.c | Network functions (connection to servers/proxies).
|    wee-proxy.c | Proxy management.
|    wee-secure.c | Secured data functions.
|    wee-secure-buffer.c | Secured data buffer.
|    wee-secure-config.c | Secured data options (file sec.conf).
|    wee-signal.c | Signal functions.
|    wee-string.c | Functions on strings.
|    wee-upgrade-file.c | Internal upgrade system.
|    wee-upgrade.c | Upgrade for WeeChat core (buffers, lines, history, ...).
|    wee-url.c | URL transfer (using libcurl).
|    wee-utf8.c | UTF-8 functions.
|    wee-util.c | Some other functions.
|    wee-version.c | Functions for WeeChat version.
|    weechat.c | Main functions: command line options, startup.
|    hook/ | Hook functions.
|       wee-hook-command-run.c | Hook "command_run".
|       wee-hook-command.c | Hook "command".
|       wee-hook-completion.c | Hook "completion".
|       wee-hook-config.c | Hook "config".
|       wee-hook-connect.c | Hook "connect".
|       wee-hook-fd.c | Hook "fd".
|       wee-hook-focus.c | Hook "focus".
|       wee-hook-hdata.c | Hook "hdata".
|       wee-hook-hsignal.c | Hook "hsignal".
|       wee-hook-info-hashtable.c | Hook "info_hashtable".
|       wee-hook-info.c | Hook "info".
|       wee-hook-infolist.c | Hook "infolist".
|       wee-hook-line.c | Hook "line".
|       wee-hook-modifier.c | Hook "modifier".
|       wee-hook-print.c | Hook "print".
|       wee-hook-process.c | Hook "process".
|       wee-hook-signal.c | Hook "signal".
|       wee-hook-timer.c | Hook "timer".
| gui/ | Functions for buffers, windows, ... (used by all interfaces).
|    gui-bar-item.c | Bar items.
|    gui-bar-window.c | Bar windows.
|    gui-bar.c | Bars.
|    gui-buffer.c | Buffers.
|    gui-chat.c | Chat functions (display message, ...).
|    gui-color.c | Color functions.
|    gui-completion.c | Completion on command line.
|    gui-cursor.c | Cursor mode (free movement of cursor).
|    gui-filter.c | Filters.
|    gui-focus.c | Functions about focus (for cursor mode and mouse).
|    gui-history.c | Commands/text saved in buffers.
|    gui-hotlist.c | Hotlist management (list of buffers with activity).
|    gui-input.c | Input functions (input bar).
|    gui-key.c | Keyboard functions.
|    gui-layout.c | Layout.
|    gui-line.c | Lines in buffers.
|    gui-mouse.c | Mouse.
|    gui-nick.c | Nick functions.
|    gui-nicklist.c | Nicklist in buffers.
|    gui-window.c | Windows.
|    curses/ | Curses interface.
|       gui-curses-bar-window.c | Display in bar windows.
|       gui-curses-chat.c | Display in chat area (messages).
|       gui-curses-color.c | Color functions.
|       gui-curses-key.c | Keyboard functions (default keys, read of input).
|       gui-curses-main.c | WeeChat main loop (waiting for keyboard/network events).
|       gui-curses-mouse.c | Mouse.
|       gui-curses-term.c | Functions about terminal.
|       gui-curses-window.c | Windows.
|       headless/ | Headless mode (no interface).
|          main.c | Entry point for headless mode.
|          ncurses-fake.c | Fake ncurses library.
|       normal/ | Curses interface.
|          main.c | Entry point for Curses interface.
|===
[[sources_plugins]]
@@ -210,189 +208,178 @@ WeeChat "core" is located in following directories:
[width="100%",cols="2m,3",options="header"]
|===
| Path/file | Description
| plugins/ | Root of plugins.
|    plugin.c | Plugins management (load/unload dynamic C libraries).
|    plugin-api.c | Extra functions for plugin API (wrapper around WeeChat core functions).
|    plugin-api-info.c | Extra info/infolist functions for plugin API.
|    plugin-config.c | Plugin configuration options (file plugins.conf).
|    plugin-script.c | Common functions used by script plugins.
|    plugin-script-api.c | Script API functions: wrappers around some plugin API functions.
|    plugin-script-config.c | Script plugin configuration options (files python.conf, perl.conf, ...).
|    weechat-plugin.h | Header designed to be distributed with WeeChat plugins, in order to compile them.
|    alias/ | Alias plugin.
|       alias.c | Main alias functions.
|       alias-command.c | Alias commands.
|       alias-completion.c | Alias completions.
|       alias-config.c | Alias config options (file alias.conf).
|       alias-info.c | Alias info/infolists/hdata.
|    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.
|       buflist-command.c | Buflist commands.
|       buflist-completion.c | Buflist completions.
|       buflist-config.c | Buflist config options (file buflist.conf).
|       buflist-info.c | Buflist info/infolists/hdata.
|       buflist-mouse.c | Buflist mouse actions.
|    charset/ | Charset plugin.
|       charset.c | Charset functions.
|    exec/ | Exec plugin.
|       exec.c | Main exec functions.
|       exec-buffer.c | Exec buffer.
|       exec-command.c | Exec commands.
|       exec-completion.c | Exec completions.
|       exec-config.c | Exec config options (file exec.conf).
|    fifo/ | Fifo plugin.
|       fifo.c | Main fifo functions.
|       fifo-command.c | Fifo commands.
|       fifo-config.c | Fifo config options (file fifo.conf).
|       fifo-info.c | Fifo info/infolists/hdata.
|    fset/ | Fset plugin.
|       fset.c | Main fset functions.
|       fset-bar-item.c | Fset bar items.
|       fset-buffer.c | Fset buffer.
|       fset-command.c | Fset commands.
|       fset-completion.c | Fset completions.
|       fset-config.c | Fset config options (file fset.conf).
|       fset-info.c | Fset info/infolists/hdata.
|       fset-mouse.c | Fset mouse actions.
|       fset-option.c | Fset options management.
|    guile/ | Guile (scheme) plugin.
|       weechat-guile.c | Main guile functions (load/unload scripts, execute guile code).
|       weechat-guile-api.c | Guile scripting API functions.
|    irc/ | IRC (Internet Relay Chat) plugin.
|       irc.c | Main IRC functions.
|       irc-bar-item.c | IRC bar items.
|       irc-batch.c | IRC batched events.
|       irc-buffer.c | IRC buffers.
|       irc-channel.c | IRC channels.
|       irc-color.c | IRC colors.
|       irc-command.c | IRC commands.
|       irc-completion.c | IRC completions.
|       irc-config.c | IRC config options (file irc.conf).
|       irc-ctcp.c | IRC CTCP.
|       irc-debug.c | IRC debug functions.
|       irc-ignore.c | IRC Ignore.
|       irc-info.c | IRC info/infolists/hdata.
|       irc-input.c | Input of commands/text.
|       irc-join.c | Functions for list of channels to join.
|       irc-list.c | Buffer for reply to /list command.
|       irc-message.c | Functions to manipulate IRC messages.
|       irc-mode.c | Functions about channel/nick modes.
|       irc-modelist.c | IRC channel mode lists (+b, +e, +I, ...).
|       irc-msgbuffer.c | Target buffer for IRC messages.
|       irc-nick.c | IRC nicks.
|       irc-notify.c | IRC notify lists.
|       irc-protocol.c | IRC protocol (RFCs 1459/2810/2811/2812/2813/7194).
|       irc-raw.c | IRC raw buffer.
|       irc-redirect.c | Redirection of IRC command output.
|       irc-sasl.c | SASL authentication with IRC server.
|       irc-server.c | I/O communication with IRC server.
|       irc-tag.c | Functions to manipulate IRC message tags.
|       irc-typing.c | Typing status.
|       irc-upgrade.c | Save/restore of IRC data when upgrading WeeChat.
|    javascript/ | JavaScript plugin.
|       weechat-js.cpp | Main JavaScript functions (load/unload scripts, execute JavaScript code).
|       weechat-js-api.cpp | JavaScript scripting API functions.
|       weechat-js-v8.cpp | JavaScript v8 functions.
|    logger/ | Logger plugin.
|       logger.c | Main logger functions.
|       logger-backlog.c | Logger backlog functions.
|       logger-buffer.c | Logger buffer list management.
|       logger-command.c | Logger commands.
|       logger-config.c | Logger config options (file logger.conf).
|       logger-info.c | Logger info/infolists/hdata.
|       logger-tail.c | Functions to get last lines of a file.
|    lua/ | Lua plugin.
|       weechat-lua.c | Main lua functions (load/unload scripts, execute lua code).
|       weechat-lua-api.c | Lua scripting API functions.
|    perl/ | Perl plugin.
|       weechat-perl.c | Main perl functions (load/unload scripts, execute perl code).
|       weechat-perl-api.c | Perl scripting API functions.
|    php/ | PHP plugin.
|       weechat-php.c | Main PHP functions (load/unload scripts, execute PHP code).
|       weechat-php-api.c | PHP scripting API functions.
|    python/ | Python plugin.
|       weechat-python.c | Main python functions (load/unload scripts, execute python code).
|       weechat-python-api.c | Python scripting API functions.
|    relay/ | Relay plugin (IRC proxy and relay for remote interfaces).
|       relay.c | Main relay functions.
|       relay-auth.c | Clients authentication.
|       relay-buffer.c | Relay buffer.
|       relay-client.c | Clients of relay.
|       relay-command.c | Relay commands.
|       relay-completion.c | Relay completions.
|       relay-config.c | Relay config options (file relay.conf).
|       relay-http.c | HTTP functions.
|       relay-info.c | Relay info/infolists/hdata.
|       relay-network.c | Network functions for relay.
|       relay-raw.c | Relay raw buffer.
|       relay-remote.c | Relay remote.
|       relay-server.c | Relay server.
|       relay-upgrade.c | Save/restore of relay data when upgrading WeeChat.
|       relay-websocket.c | WebSocket server functions (RFC 6455).
|       api/ | Relay for remote interfaces (using HTTP REST API).
|          relay-api.c | Main API functions for HTTP REST API.
|          relay-api-msg.c | Send JSON messages to clients.
|          relay-api-protocol.c | HTTP REST API protocol.
|          remote/ | Relay remote functions, specific to API.
|             relay-remote-event.c | Process events received from relay remote.
|             relay-remote-network.c | Network functions for relay remote.
|       irc/ | IRC proxy.
|          relay-irc.c | Main IRC proxy functions.
|       weechat/ | Relay for remote interfaces (using "weechat" binary protocol).
|          relay-weechat.c | Relay for remote interfaces (main functions).
|          relay-weechat-msg.c | Send binary messages to clients.
|          relay-weechat-nicklist.c | Nicklist functions.
|          relay-weechat-protocol.c | Read commands from clients.
|    ruby/ | Ruby plugin.
|       weechat-ruby.c | Main ruby functions (load/unload scripts, execute ruby code).
|       weechat-ruby-api.c | Ruby scripting API functions.
|    script/ | Script manager.
|       script.c | Main functions for script manager.
|       script-action.c | Actions on scripts (load/unload, install/remove, ...).
|       script-buffer.c | Buffer for script manager.
|       script-command.c | Commands for script manager.
|       script-completion.c | Completions for script manager.
|       script-config.c | Config options for script manager (file script.conf).
|       script-info.c | Script manager info/infolists/hdata.
|       script-mouse.c | Script mouse actions.
|       script-repo.c | Download and read repository file.
|    tcl/ | Tcl plugin.
|       weechat-tcl.c | Main tcl functions (load/unload scripts, execute tcl code).
|       weechat-tcl-api.c | Tcl scripting API functions.
|    trigger/ | Trigger plugin.
|       trigger.c | Main trigger functions.
|       trigger-buffer.c | Trigger buffer.
|       trigger-callback.c | Trigger callbacks.
|       trigger-command.c | Trigger commands.
|       trigger-completion.c | Trigger completions.
|       trigger-config.c | Trigger config options (file trigger.conf).
|    typing/ | Typing plugin.
|       typing.c | Main typing functions.
|       typing-bar-item.c | Typing bar items.
|       typing-config.c | Typing config options (file typing.conf).
|       typing-status.c | Messages typing status on buffers.
|    xfer/ | Xfer plugin (IRC DCC file/chat).
|       xfer.c | Main xfer functions.
|       xfer-buffer.c | Xfer buffer.
|       xfer-chat.c | DCC chat.
|       xfer-command.c | Xfer commands.
|       xfer-completion.c | Xfer completions.
|       xfer-config.c | Xfer config options (file xfer.conf).
|       xfer-dcc.c | DCC file transfer.
|       xfer-file.c | File functions for xfer.
|       xfer-info.c | Xfer info/infolists/hdata.
|       xfer-network.c | Network functions for xfer.
|       xfer-upgrade.c | Save/restore of xfer data when upgrading WeeChat.
| Path/file | Description
| plugins/ | Root of plugins.
|    plugin.c | Plugins management (load/unload dynamic C libraries).
|    plugin-api.c | Extra functions for plugin API (wrapper around WeeChat core functions).
|    plugin-api-info.c | Extra info/infolist functions for plugin API.
|    plugin-config.c | Plugin configuration options (file plugins.conf).
|    plugin-script.c | Common functions used by script plugins.
|    plugin-script-api.c | Script API functions: wrappers around some plugin API functions.
|    plugin-script-config.c | Script plugin configuration options (files python.conf, perl.conf, ...).
|    weechat-plugin.h | Header designed to be distributed with WeeChat plugins, in order to compile them.
|    alias/ | Alias plugin.
|       alias.c | Main alias functions.
|       alias-command.c | Alias commands.
|       alias-completion.c | Alias completions.
|       alias-config.c | Alias config options (file alias.conf).
|       alias-info.c | Alias info/infolists/hdata.
|    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.
|       buflist-command.c | Buflist commands.
|       buflist-config.c | Buflist config options (file buflist.conf).
|       buflist-info.c | Buflist info/infolists/hdata.
|       buflist-mouse.c | Buflist mouse actions.
|    charset/ | Charset plugin.
|       charset.c | Charset functions.
|    exec/ | Exec plugin.
|       exec.c | Main exec functions.
|       exec-buffer.c | Exec buffer.
|       exec-command.c | Exec commands.
|       exec-completion.c | Exec completions.
|       exec-config.c | Exec config options (file exec.conf).
|    fifo/ | Fifo plugin.
|       fifo.c | Main fifo functions.
|       fifo-command.c | Fifo commands.
|       fifo-config.c | Fifo config options (file fifo.conf).
|       fifo-info.c | Fifo info/infolists/hdata.
|    fset/ | Fset plugin.
|       fset.c | Main fset functions.
|       fset-bar-item.c | Fset bar items.
|       fset-buffer.c | Fset buffer.
|       fset-command.c | Fset commands.
|       fset-completion.c | Fset completions.
|       fset-config.c | Fset config options (file fset.conf).
|       fset-info.c | Fset info/infolists/hdata.
|       fset-mouse.c | Fset mouse actions.
|       fset-option.c | Fset options management.
|    guile/ | Guile (scheme) plugin.
|       weechat-guile.c | Main guile functions (load/unload scripts, execute guile code).
|       weechat-guile-api.c | Guile scripting API functions.
|    irc/ | IRC (Internet Relay Chat) plugin.
|       irc.c | Main IRC functions.
|       irc-bar-item.c | IRC bar items.
|       irc-batch.c | IRC batched events.
|       irc-buffer.c | IRC buffers.
|       irc-channel.c | IRC channels.
|       irc-color.c | IRC colors.
|       irc-command.c | IRC commands.
|       irc-completion.c | IRC completions.
|       irc-config.c | IRC config options (file irc.conf).
|       irc-ctcp.c | IRC CTCP.
|       irc-debug.c | IRC debug functions.
|       irc-ignore.c | IRC Ignore.
|       irc-info.c | IRC info/infolists/hdata.
|       irc-input.c | Input of commands/text.
|       irc-join.c | Functions for list of channels to join.
|       irc-message.c | Functions to manipulate IRC messages.
|       irc-mode.c | Functions about channel/nick modes.
|       irc-modelist.c | IRC channel mode lists (+b, +e, +I, ...).
|       irc-msgbuffer.c | Target buffer for IRC messages.
|       irc-nick.c | IRC nicks.
|       irc-notify.c | IRC notify lists.
|       irc-protocol.c | IRC protocol (RFCs 1459/2810/2811/2812/2813/7194).
|       irc-raw.c | IRC raw buffer.
|       irc-redirect.c | Redirection of IRC command output.
|       irc-sasl.c | SASL authentication with IRC server.
|       irc-server.c | I/O communication with IRC server.
|       irc-tag.c | Functions to manipulate IRC message tags.
|       irc-typing.c | Typing status.
|       irc-upgrade.c | Save/restore of IRC data when upgrading WeeChat.
|    javascript/ | JavaScript plugin.
|       weechat-js.cpp | Main JavaScript functions (load/unload scripts, execute JavaScript code).
|       weechat-js-api.cpp | JavaScript scripting API functions.
|       weechat-js-v8.cpp | JavaScript v8 functions.
|    logger/ | Logger plugin.
|       logger.c | Main logger functions.
|       logger-backlog.c | Logger backlog functions.
|       logger-buffer.c | Logger buffer list management.
|       logger-command.c | Logger commands.
|       logger-config.c | Logger config options (file logger.conf).
|       logger-info.c | Logger info/infolists/hdata.
|       logger-tail.c | Functions to get last lines of a file.
|    lua/ | Lua plugin.
|       weechat-lua.c | Main lua functions (load/unload scripts, execute lua code).
|       weechat-lua-api.c | Lua scripting API functions.
|    perl/ | Perl plugin.
|       weechat-perl.c | Main perl functions (load/unload scripts, execute perl code).
|       weechat-perl-api.c | Perl scripting API functions.
|    php/ | PHP plugin.
|       weechat-php.c | Main PHP functions (load/unload scripts, execute PHP code).
|       weechat-php-api.c | PHP scripting API functions.
|    python/ | Python plugin.
|       weechat-python.c | Main python functions (load/unload scripts, execute python code).
|       weechat-python-api.c | Python scripting API functions.
|    relay/ | Relay plugin (IRC proxy and relay for remote interfaces).
|       relay.c | Main relay functions.
|       relay-auth.c | Clients authentication.
|       relay-buffer.c | Relay buffer.
|       relay-client.c | Clients of relay.
|       relay-command.c | Relay commands.
|       relay-completion.c | Relay completions.
|       relay-config.c | Relay config options (file relay.conf).
|       relay-info.c | Relay info/infolists/hdata.
|       relay-network.c | Network functions for relay.
|       relay-raw.c | Relay raw buffer.
|       relay-server.c | Relay server.
|       relay-upgrade.c | Save/restore of relay data when upgrading WeeChat.
|       relay-websocket.c | WebSocket server functions (RFC 6455).
|       irc/ | IRC proxy.
|          relay-irc.c | Main IRC proxy functions.
|       weechat/ | Relay for remote interfaces.
|          relay-weechat.c | Relay for remote interfaces (main functions).
|          relay-weechat-msg.c | Send binary messages to clients.
|          relay-weechat-nicklist.c | Nicklist functions.
|          relay-weechat-protocol.c | Read commands from clients.
|    ruby/ | Ruby plugin.
|       weechat-ruby.c | Main ruby functions (load/unload scripts, execute ruby code).
|       weechat-ruby-api.c | Ruby scripting API functions.
|    script/ | Script manager.
|       script.c | Main functions for script manager.
|       script-action.c | Actions on scripts (load/unload, install/remove, ...).
|       script-buffer.c | Buffer for script manager.
|       script-command.c | Commands for script manager.
|       script-completion.c | Completions for script manager.
|       script-config.c | Config options for script manager (file script.conf).
|       script-info.c | Script manager info/infolists/hdata.
|       script-mouse.c | Script mouse actions.
|       script-repo.c | Download and read repository file.
|    tcl/ | Tcl plugin.
|       weechat-tcl.c | Main tcl functions (load/unload scripts, execute tcl code).
|       weechat-tcl-api.c | Tcl scripting API functions.
|    trigger/ | Trigger plugin.
|       trigger.c | Main trigger functions.
|       trigger-buffer.c | Trigger buffer.
|       trigger-callback.c | Trigger callbacks.
|       trigger-command.c | Trigger commands.
|       trigger-completion.c | Trigger completions.
|       trigger-config.c | Trigger config options (file trigger.conf).
|    typing/ | Typing plugin.
|       typing.c | Main typing functions.
|       typing-bar-item.c | Typing bar items.
|       typing-config.c | Typing config options (file typing.conf).
|       typing-status.c | Messages typing status on buffers.
|    xfer/ | Xfer plugin (IRC DCC file/chat).
|       xfer.c | Main xfer functions.
|       xfer-buffer.c | Xfer buffer.
|       xfer-chat.c | DCC chat.
|       xfer-command.c | Xfer commands.
|       xfer-completion.c | Xfer completions.
|       xfer-config.c | Xfer config options (file xfer.conf).
|       xfer-dcc.c | DCC file transfer.
|       xfer-file.c | File functions for xfer.
|       xfer-info.c | Xfer info/infolists/hdata.
|       xfer-network.c | Network functions for xfer.
|       xfer-upgrade.c | Save/restore of xfer data when upgrading WeeChat.
|===
[[sources_tests]]
@@ -400,119 +387,81 @@ WeeChat "core" is located in following directories:
[width="100%",cols="2m,3",options="header"]
|===
| Path/file | Description
| tests/ | Root of tests.
|    tests.cpp | Program used to run all tests.
|    tests-record.cpp | Record and search in messages displayed.
|    scripts/ | Root of scripting API tests.
|       test-scripts.cpp | Program used to run the scripting API tests.
|       python/ | Python scripts to generate and run the scripting API tests.
|          testapigen.py | Python script generating scripts in all languages to test the scripting API.
|          testapi.py | Python script with scripting API tests, used by script testapigen.py.
|          unparse.py | Convert Python code to other languages, used by script testapigen.py.
|    unit/ | Root of unit tests.
|       test-plugins.cpp | Tests: plugins.
|       test-plugin-api-info.cpp | Tests: plugin API info functions.
|       test-plugin-config.cpp | Tests: plugin config functions.
|       core/ | Root of unit tests for core.
|          test-core-arraylist.cpp | Tests: arraylists.
|          test-core-calc.cpp | Tests: calculation of expressions.
|          test-core-command.cpp | Tests: commands.
|          test-core-config-file.cpp | Tests: configuration files.
|          test-core-crypto.cpp | Tests: cryptographic functions.
|          test-core-dir.cpp | Tests: directory/file functions.
|          test-core-eval.cpp | Tests: evaluation of expressions.
|          test-core-hashtble.cpp | Tests: hashtables.
|          test-core-hdata.cpp | Tests: hdata.
|          test-core-hook.cpp | Tests: hooks.
|          test-core-infolist.cpp | Tests: infolists.
|          test-core-list.cpp | Tests: lists.
|          test-core-network.cpp | Tests: network functions.
|          test-core-secure.cpp | Tests: secured data.
|          test-core-signal.cpp | Tests: signals.
|          test-core-string.cpp | Tests: strings.
|          test-core-url.cpp | Tests: URLs.
|          test-core-utf8.cpp | Tests: UTF-8.
|          test-core-util.cpp | Tests: utility functions.
|          test-core-sys.cpp | Tests: system functions.
|          hook/ | Root of unit tests for hooks.
|             test-hook-command.cpp | Tests: hooks "command".
|             test-hook-command-run.cpp | Tests: hooks "command_run".
|             test-hook-completion.cpp | Tests: hooks "completion".
|             test-hook-config.cpp | Tests: hooks "config".
|             test-hook-connect.cpp | Tests: hooks "connect".
|             test-hook-fd.cpp | Tests: hooks "fd".
|             test-hook-focus.cpp | Tests: hooks "focus".
|             test-hook-hdata.cpp | Tests: hooks "hdata".
|             test-hook-hsignal.cpp | Tests: hooks "hsignal".
|             test-hook-info-hashtable.cpp | Tests: hooks "info_hashtable".
|             test-hook-info.cpp | Tests: hooks "info".
|             test-hook-infolist.cpp | Tests: hooks "infolist".
|             test-hook-line.cpp | Tests: hooks "line".
|             test-hook-modifier.cpp | Tests: hooks "modifier".
|             test-hook-print.cpp | Tests: hooks "print".
|             test-hook-process.cpp | Tests: hooks "process".
|             test-hook-signal.cpp | Tests: hooks "signal".
|             test-hook-timer.cpp | Tests: hooks "timer".
|             test-hook-url.cpp | Tests: hooks "url".
|       gui/ | Root of unit tests for interfaces.
|          test-gui-bar-window.cpp | Tests: bar window functions.
|          test-gui-buffer.cpp | Tests: buffer functions.
|          test-gui-chat.cpp | Tests: chat functions.
|          test-gui-color.cpp | Tests: colors.
|          test-gui-filter.cpp | Tests: filters.
|          test-gui-hotlist.cpp | Tests: hotlist functions.
|          test-gui-input.cpp | Tests: input functions.
|          test-gui-key.cpp | Tests: keys.
|          test-gui-line.cpp | Tests: lines.
|          test-gui-nick.cpp | Tests: nicks.
|          test-gui-nicklist.cpp | Tests: nicklist functions.
|          curses/ | Root of unit tests for Curses interface.
|             test-gui-curses-mouse.cpp | Tests: mouse (Curses interface).
|       plugins/ | Root of unit tests for plugins.
|          irc/ | Root of unit tests for IRC plugin.
|             test-irc-batch.cpp | Tests: IRC batched events.
|             test-irc-buffer.cpp | Tests: IRC buffers.
|             test-irc-channel.cpp | Tests: IRC channels.
|             test-irc-color.cpp | Tests: IRC colors.
|             test-irc-command.cpp | Tests: IRC commands.
|             test-irc-config.cpp | Tests: IRC configuration.
|             test-irc-ctcp.cpp | Tests: IRC CTCP.
|             test-irc-ignore.cpp | Tests: IRC ignores.
|             test-irc-info.cpp | Tests: IRC info.
|             test-irc-join.cpp | Tests: IRC join functions.
|             test-irc-list.cpp | Tests: IRC buffer for reply to /list command.
|             test-irc-message.cpp | Tests: IRC messages.
|             test-irc-mode.cpp | Tests: IRC modes.
|             test-irc-nick.cpp | Tests: IRC nicks.
|             test-irc-protocol.cpp | Tests: IRC protocol.
|             test-irc-sasl.cpp | Tests: SASL authentication with IRC protocol.
|             test-irc-server.cpp | Tests: IRC server.
|             test-irc-tag.cpp | Tests: IRC message tags.
|          logger/ | Root of unit tests for logger plugin.
|             test-logger.cpp | Tests: logger.
|             test-logger-backlog.cpp | Tests: logger backlog.
|             test-logger-tail.cpp | Tests: logger tail functions.
|          trigger/ | Root of unit tests for trigger plugin.
|             test-trigger.cpp | Tests: triggers.
|             test-trigger-config.cpp | Tests: trigger configuration.
|          typing/ | Root of unit tests for typing plugin.
|             test-typing.cpp | Tests: typing.
|             test-typing-status.cpp | Tests: typing status.
|          relay/ | Root of unit tests for Relay plugin.
|             test-relay-auth.cpp | Tests: clients authentication.
|             test-relay-http.cpp | Tests: HTTP functions for Relay plugin.
|             test-relay-remote.cpp | Tests: remote functions for Relay plugin.
|             test-relay-websocket.cpp | Tests: websocket functions for Relay plugin.
|             api/ | Root of unit tests for Relay "api" protocol.
|                test-relay-api.cpp | Tests: Relay "api" protocol: general functions.
|                test-relay-api-msg.cpp | Tests: Relay "api" protocol: messages.
|                test-relay-api-protocol.cpp | Tests: Relay "api" protocol: protocol.
|             irc/ | Root of unit tests for Relay "irc" protocol.
|                test-relay-irc.cpp | Tests: Relay "irc" protocol.
|          xfer/ | Root of unit tests for Xfer plugin.
|             test-xfer-file.cpp | Tests: file functions.
|             test-xfer-network.cpp | Tests: network functions.
| Path/file | Description
| tests/ | Root of tests.
|    tests.cpp | Program used to run all tests.
|    tests-record.cpp | Record and search in messages displayed.
|    scripts/ | Root of scripting API tests.
|       test-scripts.cpp | Program used to run the scripting API tests.
|       python/ | Python scripts to generate and run the scripting API tests.
|          testapigen.py | Python script generating scripts in all languages to test the scripting API.
|          testapi.py | Python script with scripting API tests, used by script testapigen.py.
|          unparse.py | Convert Python code to other languages, used by script testapigen.py.
|    unit/ | Root of unit tests.
|       test-plugins.cpp | Tests: plugins.
|       core/ | Root of unit tests for core.
|          test-core-arraylist.cpp | Tests: arraylists.
|          test-core-calc.cpp | Tests: calculation of expressions.
|          test-core-command.cpp | Tests: commands.
|          test-core-config-file.cpp | Tests: configuration files.
|          test-core-crypto.cpp | Tests: cryptographic functions.
|          test-core-dir.cpp | Tests: directory/file functions.
|          test-core-eval.cpp | Tests: evaluation of expressions.
|          test-core-hashtble.cpp | Tests: hashtables.
|          test-core-hdata.cpp | Tests: hdata.
|          test-core-hook.cpp | Tests: hooks.
|          test-core-infolist.cpp | Tests: infolists.
|          test-core-list.cpp | Tests: lists.
|          test-core-network.cpp | Tests: network functions.
|          test-core-secure.cpp | Tests: secured data.
|          test-core-signal.cpp | Tests: signals.
|          test-core-string.cpp | Tests: strings.
|          test-core-url.cpp | Tests: URLs.
|          test-core-utf8.cpp | Tests: UTF-8.
|          test-core-util.cpp | Tests: utility functions.
|       gui/ | Root of unit tests for interfaces.
|          test-gui-bar-window.cpp | Tests: bar window functions.
|          test-gui-buffer.cpp | Tests: buffer functions.
|          test-gui-chat.cpp | Tests: chat functions.
|          test-gui-color.cpp | Tests: colors.
|          test-gui-filter.cpp | Tests: filters.
|          test-gui-input.cpp | Tests: input functions.
|          test-gui-key.cpp | Tests: keys.
|          test-gui-line.cpp | Tests: lines.
|          test-gui-nick.cpp | Tests: nicks.
|       plugins/ | Root of unit tests for plugins.
|          irc/ | Root of unit tests for IRC plugin.
|             test-irc-batch.cpp | Tests: IRC batched events.
|             test-irc-buffer.cpp | Tests: IRC buffers.
|             test-irc-channel.cpp | Tests: IRC channels.
|             test-irc-color.cpp | Tests: IRC colors.
|             test-irc-config.cpp | Tests: IRC configuration.
|             test-irc-ignore.cpp | Tests: IRC ignores.
|             test-irc-join.cpp | Tests: IRC join functions.
|             test-irc-message.cpp | Tests: IRC messages.
|             test-irc-mode.cpp | Tests: IRC modes.
|             test-irc-nick.cpp | Tests: IRC nicks.
|             test-irc-protocol.cpp | Tests: IRC protocol.
|             test-irc-sasl.cpp | Tests: SASL authentication with IRC protocol.
|             test-irc-server.cpp | Tests: IRC server.
|             test-irc-tag.cpp | Tests: IRC message tags.
|          logger/ | Root of unit tests for logger plugin.
|             test-logger.cpp | Tests: logger.
|             test-logger-backlog.cpp | Tests: logger backlog.
|             test-logger-tail.cpp | Tests: logger tail functions.
|          trigger/ | Root of unit tests for trigger plugin.
|             test-trigger.cpp | Tests: triggers.
|             test-trigger-config.cpp | Tests: trigger configuration.
|          typing/ | Root of unit tests for typing plugin.
|             test-typing.cpp | Tests: typing.
|             test-typing-status.cpp | Tests: typing status.
|          relay/ | Root of unit tests for Relay plugin.
|             test-relay-auth.cpp | Tests: clients authentication.
|             irc/ | Root of unit tests for Relay "irc" protocol.
|                test-relay-irc.cpp | Tests: Relay "irc" protocol.
|          xfer/ | Root of unit tests for Xfer plugin.
|             test-xfer-file.cpp | Tests: file functions.
|             test-xfer-network.cpp | Tests: network functions.
|===
[[documentation_translations]]
@@ -572,7 +521,7 @@ Example in C:
/*
* weechat.c - core functions for WeeChat
*
* Copyright (C) 2024 Your Name <your@email.com>
* Copyright (C) 2023 Your Name <your@email.com>
*
* This file is part of WeeChat, the extensible chat client.
*
@@ -596,8 +545,9 @@ Example in C:
Some basic rules you *must* follow when you write C code:
* Use 4 spaces for indentation (no tabs).
* Try to not exceed 80 chars by line, except if this is needed to increase readability.
* Use 4 spaces for indentation. Don't use tabs, they are evil.
* Try to not exceed 80 chars by line, except if this is needed to increase
readability.
* Use comments `+/* comment */+` (not C99-style comments like `+// comment+`).
* Add a comment before any function, to explain what it does (always use a
multi-line comment, even if description is very short).
@@ -809,7 +759,7 @@ Examples:
[width="100%",cols="2m,3",options="header"]
|===
| Directory | Files
| src/core/ | weechat.c, core-backtrace.c, core-command.c, ...
| src/core/ | weechat.c, wee-backtrace.c, wee-command.c, ...
| src/gui/ | gui-bar.c, gui-bar-item.c, gui-bar-window.c, ...
| src/gui/curses/ | gui-curses-bar.c, gui-curses-bar-window.c, gui-curses-chat.c, ...
| src/plugins/ | plugin.c, plugin-api.c, plugin-api-info.c, plugin-config.c, plugin-script.c, ...
@@ -817,8 +767,8 @@ Examples:
| src/plugins/python/ | weechat-python.c, weechat-python-api.c, ...
|===
The headers of C files have same name as file, for example _core-command.h_ for
file _core-command.c_.
The headers of C files have same name as file, for example _wee-command.h_ for
file _wee-command.c_.
[[naming_convention_structures]]
==== Structures
+24 -75
View File
@@ -583,31 +583,6 @@ If you are using the macOS Terminal app, enable the option
"Use option as meta key" in menu Settings/Keyboard after which you can use the
kbd:[Option] key as meta key.
[[enter_key]]
=== Some keys including Enter are not working, why?
If you run a WeeChat < 4.0.0 with configuration files created by any
version ≥ 4.0.0, the keys names become invalid and many keys won't work at all. +
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
[[key_f11]]
=== Key F11 maximizes the terminal window, how can I scroll up the nicklist?
The key kbd:[F11] is commonly used by terminals to maximize the window, and
kbd:[F11]/kbd:[F12] are the default keys in WeeChat to scroll the nicklist.
You can bind other keys, for example kbd:[Shift+F11] and kbd:[Shift+F12],
with WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Other solution is to enable mouse (key: kbd:[Alt+m]) and scroll with the mouse
wheel (see also questions about <<mouse,mouse>>).
[[customize_key_bindings]]
=== How can I customize key bindings?
@@ -637,12 +612,6 @@ commands like `/123` to jump to buffer #123:
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
For an easy jump to buffers, you can also install the _go.py_ script:
----
/script install go.py
----
[[global_history]]
=== How to use global history (instead of buffer history) with up and down keys?
@@ -950,20 +919,35 @@ link:weechat_user.en.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^
buffer property to set the max hotlist level for some nicks, per buffer,
or per group of buffers (like IRC servers).
To only disable highlights, you'd have to set it to 2.
For the current buffer:
To only disable highlights, you'd have to set it to 2:
----
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----
For all channels on server "libera":
This buffer property isn't stored in the configuration though.
To automatically reapply these buffer properties, you would need the
_buffer_autoset.py_ script:
----
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
/script install buffer_autoset.py
----
For example, to permanently disable highlights from "mike" on #weechat
on the IRC server libera:
----
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
To apply it to the entire libera server instead:
----
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
For more examples, see `+/help buffer_autoset+`.
[[irc_target_buffer]]
=== How can I change target buffer for commands on merged buffers (like buffer with servers)?
@@ -1090,8 +1074,7 @@ You can try following tips to consume less memory:
You can follow same tips as for <<memory_usage,memory>>, and these ones:
* Hide "nicklist" bar: `/bar hide nicklist` (key: kbd:[Alt+Shift+N]).
* Disable "buflist": `/buflist disable` (key: kbd:[Alt+Shift+B]).
* Hide "nicklist" bar: `/bar hide nicklist`.
* 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):
@@ -1113,20 +1096,14 @@ Disable answers to all CTCP queries:
----
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
----
With WeeChat < 4.1.0, other CTCP queries were replied by default and must be
disabled as well:
----
/set irc.ctcp.finger ""
/set irc.ctcp.userinfo ""
----
Unload and disable auto-loading of "xfer" plugin (used for IRC DCC):
----
@@ -1161,34 +1138,6 @@ stored in _sec.conf_ with the `/secure` command).
See the link:weechat_user.en.html#files_and_directories[User's guide / Files and directories ^↗^^]
for more information about configuration files.
[[move_to_another_device]]
=== I want to move my WeeChat to another device and keep my config, what should I copy?
First check directories used by WeeChat with this command: `/debug dirs`. +
Directories home/config and home/data must be copied (all files and sub-directories).
For example if you're using XDG directories (default with WeeChat ≥ 3.2),
the directories should be `$HOME/.config/weechat` and `$HOME/.local/share/weechat`. +
If you're using a single directory (default with WeeChat < 3.2), the directory
should be `$HOME/.weechat`.
[IMPORTANT]
The WeeChat version on the new device must be greater than or equal to the version
on the initial device. +
Downgrading WeeChat configuration is *NOT SUPPORTED* and can break it,
leading to unusable WeeChat.
Steps:
. Quit Weechat: `/quit` (or `/upgrade -quit` if you want to resume the session,
which includes content of all buffers).
. Copy all directories, sub-directories and files to the new device, keeping
same names and permissions.
. Optional: copy any file outside these directories that you refer to in your
configuration (it's not recommended to use files outside WeeChat directories).
. Start WeeChat on the new device: `weechat` (or `weechat --upgrade` if you
saved the session).
[[development]]
== Development
File diff suppressed because it is too large Load Diff
+10 -26
View File
@@ -488,9 +488,7 @@ hda:
'buffer': 'ptr',
'y': 'int',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'str_time': 'str',
'tags_count': 'int',
'tags_array': 'arr',
@@ -508,9 +506,7 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404926
date_usec: 118712
date_printed: 1588404926
date_usec_printed: 118712
str_time: 'F@0025209F@0024535F@0024026'
tags_count: 0
tags_array: []
@@ -526,9 +522,7 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404930
date_usec: 25
date_printed: 1588404930
date_usec_printed: 25
str_time: 'F@0025209F@0024535F@0024030'
tags_count: 0
tags_array: []
@@ -707,7 +701,6 @@ inl:
nicklist_visible_count: 0
title: 'WeeChat 2.9-dev (C) 2003-2020 - https://weechat.org/'
input: 1
input_get_any_user_data: 0
input_get_unknown_commands: 0
input_get_empty: 0
input_multiline: 0
@@ -719,14 +712,11 @@ inl:
input_buffer_1st_display: 0
num_history: 0
text_search: 0
text_search_direction: 0
text_search_exact: 0
text_search_regex: 0
text_search_regex_compiled: '0x0'
text_search_where: 0
text_search_history: 0
text_search_found: 0
text_search_ptr_history: '0x0'
text_search_input: None
highlight_words: None
highlight_disable_regex: None
@@ -2057,18 +2047,16 @@ Data sent as hdata:
[width="100%",cols="3m,2,10",options="header"]
|===
| Name | Type | Description
| buffer | pointer | Buffer pointer.
| date | time | Date of message.
| date_usec | integer | Microseconds of date.
| date_printed | time | Date when WeeChat displayed message.
| date_usec_printed | integer | Microseconds of date when WeeChat displayed message.
| displayed | char | 1 if message is displayed, 0 if message is filtered (hidden).
| notify_level | char | Notify level: -1 = notify disabled, 0 = low, 1 = message, 2 = private, 3 = highlight.
| highlight | char | 1 if line has a highlight, otherwise 0.
| tags_array | array of strings | List of tags for line.
| prefix | string | Prefix.
| message | string | Message.
| Name | Type | Description
| buffer | pointer | Buffer pointer.
| date | time | Date of message.
| date_printed | time | Date when WeeChat displayed message.
| displayed | char | 1 if message is displayed, 0 if message is filtered (hidden).
| notify_level | char | Notify level: -1 = notify disabled, 0 = low, 1 = message, 2 = private, 3 = highlight.
| highlight | char | 1 if line has a highlight, otherwise 0.
| tags_array | array of strings | List of tags for line.
| prefix | string | Prefix.
| message | string | Message.
|===
Example: new message _hello!_ from nick _FlashCode_ on buffer _irc.libera.#weechat_:
@@ -2080,9 +2068,7 @@ hda:
keys: {
'buffer': 'ptr',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'displayed': 'chr',
'notify_level': 'chr',
'highlight': 'chr',
@@ -2095,9 +2081,7 @@ hda:
__path: ['0x4a49600']
buffer: '0x4a715d0'
date: 1362728993
date_usec: 902765
date_printed: 1362728993
date_usec_printed: 902765
displayed: 1
notify_level: 1
highlight: 0
+303 -2
View File
@@ -549,14 +549,315 @@ link:weechat_plugin_api.en.html[WeeChat plugin API reference ^↗^^].
List of functions in script API:
include::{autogendir}/autogen_scripting_functions.en.adoc[tag=functions]
[width="100%",cols="1,5",options="header"]
|===
| Category | Functions
| general
| register
| plugins
| plugin_get_name
| strings
| charset_set +
iconv_to_internal +
iconv_from_internal +
gettext +
ngettext +
strlen_screen +
string_match +
string_match_list +
string_has_highlight +
string_has_highlight_regex +
string_mask_to_regex +
string_format_size +
string_parse_size +
string_color_code_size +
string_remove_color +
string_is_command_char +
string_input_for_buffer +
string_eval_expression +
string_eval_path_home
| directories
| mkdir_home +
mkdir +
mkdir_parents
| sorted lists
| list_new +
list_add +
list_search +
list_search_pos +
list_casesearch +
list_casesearch_pos +
list_get +
list_set +
list_next +
list_prev +
list_string +
list_size +
list_remove +
list_remove_all +
list_free
| configuration files
| config_new +
config_new_section +
config_search_section +
config_new_option +
config_search_option +
config_string_to_boolean +
config_option_reset +
config_option_set +
config_option_set_null +
config_option_unset +
config_option_rename +
config_option_is_null +
config_option_default_is_null +
config_boolean +
config_boolean_default +
config_integer +
config_integer_default +
config_string +
config_string_default +
config_color +
config_color_default +
config_write_option +
config_write_line +
config_write +
config_read +
config_reload +
config_option_free +
config_section_free_options +
config_section_free +
config_free +
config_get +
config_get_plugin +
config_is_set_plugin +
config_set_plugin +
config_set_desc_plugin +
config_unset_plugin
| key bindings
| key_bind +
key_unbind
| display
| prefix +
color +
print (for python: prnt) +
print_date_tags (for python: prnt_date_tags) +
print_y (for python: prnt_y) +
print_y_date_tags (for python: prnt_y_date_tags) +
log_print
| hooks
| hook_command +
hook_command_run +
hook_timer +
hook_fd +
hook_process +
hook_process_hashtable +
hook_connect +
hook_line +
hook_print +
hook_signal +
hook_signal_send +
hook_hsignal +
hook_hsignal_send +
hook_config +
hook_completion +
hook_modifier +
hook_modifier_exec +
hook_info +
hook_info_hashtable +
hook_infolist +
hook_focus +
hook_set +
unhook +
unhook_all
| buffers
| buffer_new +
buffer_new_props +
current_buffer +
buffer_search +
buffer_search_main +
buffer_clear +
buffer_close +
buffer_merge +
buffer_unmerge +
buffer_get_integer +
buffer_get_string +
buffer_get_pointer +
buffer_set +
buffer_string_replace_local_var +
buffer_match_list
| windows
| current_window +
window_search_with_buffer +
window_get_integer +
window_get_string +
window_get_pointer +
window_set_title
| nicklist
| nicklist_add_group +
nicklist_search_group +
nicklist_add_nick +
nicklist_search_nick +
nicklist_remove_group +
nicklist_remove_nick +
nicklist_remove_all +
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
| bars
| bar_item_search +
bar_item_new +
bar_item_update +
bar_item_remove +
bar_search +
bar_new +
bar_set +
bar_update +
bar_remove
| commands
| command +
command_options
| completion
| completion_new +
completion_search +
completion_get_string +
completion_list_add +
completion_free
| infos
| info_get +
info_get_hashtable
| infolists
| infolist_new +
infolist_new_item +
infolist_new_var_integer +
infolist_new_var_string +
infolist_new_var_pointer +
infolist_new_var_time +
infolist_get +
infolist_next +
infolist_prev +
infolist_reset_item_cursor +
infolist_search_var +
infolist_fields +
infolist_integer +
infolist_string +
infolist_pointer +
infolist_time +
infolist_free
| hdata
| hdata_get +
hdata_get_var_offset +
hdata_get_var_type_string +
hdata_get_var_array_size +
hdata_get_var_array_size_string +
hdata_get_var_hdata +
hdata_get_list +
hdata_check_pointer +
hdata_move +
hdata_search +
hdata_char +
hdata_integer +
hdata_long +
hdata_string +
hdata_pointer +
hdata_time +
hdata_hashtable +
hdata_compare +
hdata_update +
hdata_get_string
| upgrade
| upgrade_new +
upgrade_write_object +
upgrade_read +
upgrade_close
|===
[[script_api_constants]]
=== Constants
List of constants in script API:
include::{autogendir}/autogen_scripting_constants.en.adoc[tag=constants]
[width="100%",cols="1,5",options="header"]
|===
| Category | Constants
| return codes
| `WEECHAT_RC_OK` (integer) +
`WEECHAT_RC_OK_EAT` (integer) +
`WEECHAT_RC_ERROR` (integer)
| configuration files
| `WEECHAT_CONFIG_READ_OK` (integer) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_WRITE_OK` (integer) +
`WEECHAT_CONFIG_WRITE_ERROR` (integer) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (integer) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
| sorted lists
| `WEECHAT_LIST_POS_SORT` (string) +
`WEECHAT_LIST_POS_BEGINNING` (string) +
`WEECHAT_LIST_POS_END` (string)
| hotlist
| `WEECHAT_HOTLIST_LOW` (string) +
`WEECHAT_HOTLIST_MESSAGE` (string) +
`WEECHAT_HOTLIST_PRIVATE` (string) +
`WEECHAT_HOTLIST_HIGHLIGHT` (string)
| hook process
| `WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
`WEECHAT_HOOK_PROCESS_ERROR` (integer)
| hook connect
| `WEECHAT_HOOK_CONNECT_OK` (integer) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (integer) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
| hook signal
| `WEECHAT_HOOK_SIGNAL_STRING` (string) +
`WEECHAT_HOOK_SIGNAL_INT` (string) +
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|===
[[common_tasks]]
== Common tasks
File diff suppressed because it is too large Load Diff
+24 -84
View File
@@ -598,33 +598,6 @@ Si está utilizando aplicación Terminal de macOS, habilite la opción
"Use option as meta key" en el menú Settings/Keyboard después de la cual puede utilizar la tecla
kbd:[Option] como tecla meta.
// TRANSLATION MISSING
[[enter_key]]
=== Some keys including Enter are not working, why?
If you run a WeeChat < 4.0.0 with configuration files created by any
version ≥ 4.0.0, the keys names become invalid and many keys won't work at all. +
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
// TRANSLATION MISSING
[[key_f11]]
=== Key F11 maximizes the terminal window, how can I scroll up the nicklist?
The key kbd:[F11] is commonly used by terminals to maximize the window, and
kbd:[F11]/kbd:[F12] are the default keys in WeeChat to scroll the nicklist.
You can bind other keys, for example kbd:[Shift+F11] and kbd:[Shift+F12],
with WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Other solution is to enable mouse (key: kbd:[Alt+m]) and scroll with the mouse
wheel (see also questions about <<mouse,mouse>>).
[[customize_key_bindings]]
=== ¿Cómo puedo personalizar los atajos de teclado?
@@ -654,13 +627,6 @@ comandos como `/123` para saltar al buffer #123:
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
// TRANSLATION MISSING
For an easy jump to buffers, you can also install the _go.py_ script:
----
/script install go.py
----
[[global_history]]
=== ¿Cómo utilizar el historial global (en vez del historial del buffer) con las teclas de las flechas arriba y abajo?
@@ -981,22 +947,35 @@ link:weechat_user.en.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^
buffer property to set the max hotlist level for some nicks, per buffer,
or per group of buffers (like IRC servers).
Para únicamente inhabilitar las notificaciones, debería establecerlo a 2.
// TRANSLATION MISSING
For the current buffer:
Para únicamente inhabilitar las notificaciones, debería establecerlo a 2:
----
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----
// TRANSLATION MISSING
For all channels on server "libera":
Esta propiedad del buffer no es almacenada en la configuración.
Para volver a aplicar automáticamente estas propiedades del buffer, necesitaría el script
_buffer_autoset.py_:
----
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
/script install buffer_autoset.py
----
Por ejemplo, para inhabilitar automáticamente las menciones de "mike" en #weechat
en el servidor IRC de libera:
----
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
Para aplicarlo al servidor completo de libera:
----
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
Para más ejemplos, vea `+/help buffer_autoset+`.
[[irc_target_buffer]]
=== ¿Cómo puedo cambiar el objetivo del buffer para comandos en buffers unidos (como en un buffer con servidores)?
@@ -1126,10 +1105,7 @@ Puede intentar estos trucos para consumir menos memoria:
Puede seguir los mismos consejo que para la <<memory_usage,memoria>> y estos otros:
// TRANSLATION MISSING
* Oculte la barra de la lista de apodos: `/bar hide nicklist` (key: kbd:[Alt+Shift+N]).
// TRANSLATION MISSING
* Disable "buflist": `/buflist disable` (key: kbd:[Alt+Shift+B]).
* Oculte la barra de la lista de apodos: `/bar hide nicklist`.
* Elimine que se muestren los segundos en la hora de la barra de estado:
`+/set weechat.look.item_time_format "%H:%M"+` (este es el valor predeterminado).
* Inhabilite la comprobación en tiempo real de palabras erróneas en la línea de comandos (si lo había habilitado previamente):
@@ -1151,21 +1127,14 @@ Inhabilite las respuestas a todas las peticiones CTCP:
----
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
----
// TRANSLATION MISSING
With WeeChat < 4.1.0, other CTCP queries were replied by default and must be
disabled as well:
----
/set irc.ctcp.finger ""
/set irc.ctcp.userinfo ""
----
Elimine de la memoria e inhabilite la carga automática del complemento "xfer" (utilizdo para IRC DCC):
----
@@ -1200,35 +1169,6 @@ almacenadas en _sec.conf_ con el comando `/secure`).
Vea la link:weechat_user.en.html#files_and_directories[Guía del usuario / Archivos y directorios ^↗^^]
para más información relacionada con los archivos de configuración.
// TRANSLATION MISSING
[[move_to_another_device]]
=== I want to move my WeeChat to another device and keep my config, what should I copy?
First check directories used by WeeChat with this command: `/debug dirs`. +
Directories home/config and home/data must be copied (all files and sub-directories).
For example if you're using XDG directories (default with WeeChat ≥ 3.2),
the directories should be `$HOME/.config/weechat` and `$HOME/.local/share/weechat`. +
If you're using a single directory (default with WeeChat < 3.2), the directory
should be `$HOME/.weechat`.
[IMPORTANT]
The WeeChat version on the new device must be greater than or equal to the version
on the initial device. +
Downgrading WeeChat configuration is *NOT SUPPORTED* and can break it,
leading to unusable WeeChat.
Steps:
. Quit Weechat: `/quit` (or `/upgrade -quit` if you want to resume the session,
which includes content of all buffers).
. Copy all directories, sub-directories and files to the new device, keeping
same names and permissions.
. Optional: copy any file outside these directories that you refer to in your
configuration (it's not recommended to use files outside WeeChat directories).
. Start WeeChat on the new device: `weechat` (or `weechat --upgrade` if you
saved the session).
[[development]]
== Desarrollo
+1 -1
View File
@@ -102,7 +102,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat est écrit par Sébastien Helleu et des contributeurs (la liste complète
est dans le fichier AUTHORS.adoc).
Copyright (C) 2003-2024 {author}
Copyright (C) 2003-2023 {author}
WeeChat est un logiciel libre ; vous pouvez le redistribuer et/ou le modifier
sous les termes de la GNU General Public License telle que publiée par la
+341 -391
View File
@@ -114,97 +114,95 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
[width="100%",cols="2m,3",options="header"]
|===
| Chemin/fichier | Description
| core/ | Fonctions du cœur : point d'entrée, structures internes.
|    core-arraylist.c | Listes avec tableau (« arraylists »).
|    core-backtrace.c | Afficher une trace après un plantage.
|    core-calc.c | Calcul du résultat d'expressions.
|    core-command.c | Commandes du cœur de WeeChat.
|    core-completion.c | Complétions par défaut.
|    core-config-file.c | Gestion des fichiers de configuration.
|    core-config.c | Options de configuration du cœur de WeeChat (fichier weechat.conf).
|    core-crypto.c | Fonctions de cryptographie.
|    core-debug.c | Quelques fonctions de debug.
|    core-dir.c | Fonctions sur les répertoires/fichiers.
|    core-doc.c | Génération de fichiers pour la documentation.
|    core-eval.c | Évaluation d'expressions avec des références à des variables internes.
|    core-hashtable.c | Tables de hachage.
|    core-hdata.c | Hdata (accès direct aux données en utilisant des tables de hachage).
|    core-hook.c | Crochets ("hooks").
|    core-infolist.c | Infolists (listes avec les données des objets).
|    core-input.c | Entrée de commandes/texte.
|    core-list.c | Listes triées.
|    core-log.c | Écriture dans le fichier de log WeeChat (weechat.log).
|    core-network.c | Fonctions réseau (connexion aux serveurs/proxies).
|    core-proxy.c | Gestion des proxies.
|    core-secure.c | Fonctions pour les données sécurisées.
|    core-secure-buffer.c | Tampon pour les données sécurisées.
|    core-secure-config.c | Options des données sécurisées (fichier sec.conf).
|    core-signal.c | Fonctions sur les signaux.
|    core-string.c | Fonctions sur les chaînes de caractères.
|    core-sys.c | Fonctions système.
|    core-upgrade-file.c | Système de mise à jour interne.
|    core-upgrade.c | Mise à jour du cœur de WeeChat (tampons, lignes, historique, ...).
|    core-url.c | Transfert d'URL (en utilisant libcurl).
|    core-utf8.c | Fonctions UTF-8.
|    core-util.c | Quelques autres fonctions utilitaires.
|    core-version.c | Fonctions pour la version de WeeChat.
|    weechat.c | Fonctions principales : options de ligne de commande, démarrage.
|    hook/ | Fonctions "hook".
|       hook-command-run.c | Hook "command_run".
|       hook-command.c | Hook "command".
|       hook-completion.c | Hook "completion".
|       hook-config.c | Hook "config".
|       hook-connect.c | Hook "connect".
|       hook-fd.c | Hook "fd".
|       hook-focus.c | Hook "focus".
|       hook-hdata.c | Hook "hdata".
|       hook-hsignal.c | Hook "hsignal".
|       hook-info-hashtable.c | Hook "info".
|       hook-info.c | Hook "info".
|       hook-infolist.c | Hook "infolist".
|       hook-line.c | Hook "line".
|       hook-modifier.c | Hook "modifier".
|       hook-print.c | Hook "print".
|       hook-process.c | Hook "process".
|       hook-signal.c | Hook "signal".
|       hook-timer.c | Hook "timer".
|       hook-url.c | Hook "url".
| gui/ | Fonctions pour les tampons, fenêtres, ... (utilisées par toutes les interfaces).
|    gui-bar-item.c | Objets de barre.
|    gui-bar-window.c | Fenêtres de barre.
|    gui-bar.c | Barres.
|    gui-buffer.c | Tampons.
|    gui-chat.c | Fonctions pour la discussion (afficher un message, ...).
|    gui-color.c | Fonctions de couleur.
|    gui-completion.c | Complétion sur la ligne de commande.
|    gui-cursor.c | Mode curseur (mouvement libre du curseur).
|    gui-filter.c | Filtres.
|    gui-focus.c | Fonctions concernant le focus (pour les modes curseur et souris).
|    gui-history.c | Commandes/texte sauvés dans les tampons.
|    gui-hotlist.c | Gestion de la "hotlist" (liste des tampons avec activité).
|    gui-input.c | Fonctions d'entrée (barre "input").
|    gui-key.c | Fonctions pour le clavier.
|    gui-layout.c | Dispositions ("layouts").
|    gui-line.c | Lignes dans les tampons.
|    gui-mouse.c | Souris.
|    gui-nick.c | Fonctions pour les pseudos.
|    gui-nicklist.c | Liste de pseudos dans les tampons.
|    gui-window.c | Fenêtres.
|    curses/ | Interface Curses.
|       gui-curses-bar-window.c | Affichage dans les fenêtres de barre.
|       gui-curses-chat.c | Affichage dans la zone de discussion (messages).
|       gui-curses-color.c | Fonctions pour les couleurs.
|       gui-curses-key.c | Fonctions pour le clavier (touches par défaut, lecture du clavier).
|       gui-curses-main.c | Boucle principale de WeeChat (attente des évènements clavier/réseau).
|       gui-curses-mouse.c | Souris.
|       gui-curses-term.c | Fonctions pour le terminal.
|       gui-curses-window.c | Fenêtres.
|       headless/ | Mode sans interface (« headless »).
|          main.c | Point d'entrée pour le mode sans interface.
|          ncurses-fake.c | Fausse bibliothèque ncurses.
|       normal/ | Interface Curses.
|          main.c | Point d'entrée pour l'interface Curses.
| Chemin/fichier | Description
| core/ | Fonctions du cœur : point d'entrée, structures internes.
|    wee-arraylist.c | Listes avec tableau (« arraylists »).
|    wee-backtrace.c | Afficher une trace après un plantage.
|    wee-calc.c | Calcul du résultat d'expressions.
|    wee-command.c | Commandes du cœur de WeeChat.
|    wee-completion.c | Complétions par défaut.
|    wee-config-file.c | Gestion des fichiers de configuration.
|    wee-config.c | Options de configuration du cœur de WeeChat (fichier weechat.conf).
|    wee-crypto.c | Fonctions de cryptographie.
|    wee-debug.c | Quelques fonctions de debug.
|    wee-dir.c | Fonctions sur les répertoires/fichiers.
|    wee-doc.c | Génération de fichiers pour la documentation.
|    wee-eval.c | Évaluation d'expressions avec des références à des variables internes.
|    wee-hashtable.c | Tables de hachage.
|    wee-hdata.c | Hdata (accès direct aux données en utilisant des tables de hachage).
|    wee-hook.c | Crochets ("hooks").
|    wee-infolist.c | Infolists (listes avec les données des objets).
|    wee-input.c | Entrée de commandes/texte.
|    wee-list.c | Listes triées.
|    wee-log.c | Écriture dans le fichier de log WeeChat (weechat.log).
|    wee-network.c | Fonctions réseau (connexion aux serveurs/proxies).
|    wee-proxy.c | Gestion des proxies.
|    wee-secure.c | Fonctions pour les données sécurisées.
|    wee-secure-buffer.c | Tampon pour les données sécurisées.
|    wee-secure-config.c | Options des données sécurisées (fichier sec.conf).
|    wee-signal.c | Fonctions sur les signaux.
|    wee-string.c | Fonctions sur les chaînes de caractères.
|    wee-upgrade-file.c | Système de mise à jour interne.
|    wee-upgrade.c | Mise à jour du cœur de WeeChat (tampons, lignes, historique, ...).
|    wee-url.c | Transfert d'URL (en utilisant libcurl).
|    wee-utf8.c | Fonctions UTF-8.
|    wee-util.c | Quelques autres fonctions utilitaires.
|    wee-version.c | Fonctions pour la version de WeeChat.
|    weechat.c | Fonctions principales : options de ligne de commande, démarrage.
|    hook/ | Hook functions.
|       wee-hook-command-run.c | Hook "command_run".
|       wee-hook-command.c | Hook "command".
|       wee-hook-completion.c | Hook "completion".
|       wee-hook-config.c | Hook "config".
|       wee-hook-connect.c | Hook "connect".
|       wee-hook-fd.c | Hook "fd".
|       wee-hook-focus.c | Hook "focus".
|       wee-hook-hdata.c | Hook "hdata".
|       wee-hook-hsignal.c | Hook "hsignal".
|       wee-hook-info-hashtable.c | Hook "info".
|       wee-hook-info.c | Hook "info".
|       wee-hook-infolist.c | Hook "infolist".
|       wee-hook-line.c | Hook "line".
|       wee-hook-modifier.c | Hook "modifier".
|       wee-hook-print.c | Hook "print".
|       wee-hook-process.c | Hook "process".
|       wee-hook-signal.c | Hook "signal".
|       wee-hook-timer.c | Hook "timer".
| gui/ | Fonctions pour les tampons, fenêtres, ... (utilisées par toutes les interfaces).
|    gui-bar-item.c | Objets de barre.
|    gui-bar-window.c | Fenêtres de barre.
|    gui-bar.c | Barres.
|    gui-buffer.c | Tampons.
|    gui-chat.c | Fonctions pour la discussion (afficher un message, ...).
|    gui-color.c | Fonctions de couleur.
|    gui-completion.c | Complétion sur la ligne de commande.
|    gui-cursor.c | Mode curseur (mouvement libre du curseur).
|    gui-filter.c | Filtres.
|    gui-focus.c | Fonctions concernant le focus (pour les modes curseur et souris).
|    gui-history.c | Commandes/texte sauvés dans les tampons.
|    gui-hotlist.c | Gestion de la "hotlist" (liste des tampons avec activité).
|    gui-input.c | Fonctions d'entrée (barre "input").
|    gui-key.c | Fonctions pour le clavier.
|    gui-layout.c | Dispositions ("layouts").
|    gui-line.c | Lignes dans les tampons.
|    gui-mouse.c | Souris.
|    gui-nick.c | Fonctions pour les pseudos.
|    gui-nicklist.c | Liste de pseudos dans les tampons.
|    gui-window.c | Fenêtres.
|    curses/ | Interface Curses.
|       gui-curses-bar-window.c | Affichage dans les fenêtres de barre.
|       gui-curses-chat.c | Affichage dans la zone de discussion (messages).
|       gui-curses-color.c | Fonctions pour les couleurs.
|       gui-curses-key.c | Fonctions pour le clavier (touches par défaut, lecture du clavier).
|       gui-curses-main.c | Boucle principale de WeeChat (attente des évènements clavier/réseau).
|       gui-curses-mouse.c | Souris.
|       gui-curses-term.c | Fonctions pour le terminal.
|       gui-curses-window.c | Fenêtres.
|       headless/ | Mode sans interface (« headless »).
|          main.c | Point d'entrée pour le mode sans interface.
|          ncurses-fake.c | Fausse bibliothèque ncurses.
|       normal/ | Interface Curses.
|          main.c | Point d'entrée pour l'interface Curses.
|===
[[sources_plugins]]
@@ -212,189 +210,178 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
[width="100%",cols="2m,3",options="header"]
|===
| Chemin/fichier | Description
| plugins/ | Racine des extensions.
|    plugin.c | Gestion des extensions (chargement/déchargement des bibliothèques C dynamiques).
|    plugin-api.c | Fonctions supplémentaires pour l'API extension (enveloppes autour des fonctions du cœur de WeeChat).
|    plugin-api-info.c | Fonctions supplémentaires info/infolist pour l'API extension.
|    plugin-config.c | Options de configuration des extensions (fichier plugins.conf).
|    plugin-script.c | Fonctions communes utilisés par les extensions pour les scripts.
|    plugin-script-api.c | Fonctions pour l'API script : enveloppes autour de quelques fonctions de l'API extension.
|    plugin-script-config.c | Options de configuration des extensions pour les scripts (fichiers python.conf, perl.conf, ...).
|    weechat-plugin.h | En-tête destiné à être distribué avec les extensions WeeChat, pour les compiler.
|    alias/ | Extension Alias.
|       alias.c | Fonctions principales pour les alias.
|       alias-command.c | Commandes Alias.
|       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.
|    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.
|       buflist-command.c | Commandes pour Buflist.
|       buflist-completion.c | Complétions pour Buflist.
|       buflist-config.c | Options de configuration pour Buflist (fichier buflist.conf).
|       buflist-info.c | Info/infolists/hdata pour Buflist.
|       buflist-mouse.c | Actions souris pour Buflist.
|    charset/ | Extension Charset.
|       charset.c | Fonctions pour Charset.
|    exec/ | Extension Exec.
|       exec.c | Fonctions principales de Exec.
|       exec-buffer.c | Tampon Exec.
|       exec-command.c | Commandes pour Exec.
|       exec-completion.c | Complétions pour Exec.
|       exec-config.c | Options de configuration pour Exec (fichier exec.conf).
|    fifo/ | Extension Fifo.
|       fifo.c | Fonctions principales de Fifo.
|       fifo-command.c | Commandes pour Fifo.
|       fifo-config.c | Options de configuration pour Fifo (fichier fifo.conf).
|       fifo-info.c | Info/infolists/hdata pour Fifo.
|    fset/ | Extension Fset.
|       fset.c | Fonctions principales de Fset.
|       fset-bar-item.c | Objets de barre Fset.
|       fset-buffer.c | Tampon Fset.
|       fset-command.c | Commandes pour Fset.
|       fset-completion.c | Complétions pour Fset.
|       fset-config.c | Options de configuration pour Fset (fichier fset.conf).
|       fset-info.c | Info/infolists/hdata pour Fset.
|       fset-mouse.c | Actions souris pour Fset.
|       fset-option.c | Gestion des options Fset.
|    guile/ | Extension Guile (scheme).
|       weechat-guile.c | Fonctions principales pour Guile (chargement/déchargement des scripts, exécution de code Guile).
|       weechat-guile-api.c | Fonctions de l'API script Guile.
|    irc/ | Extension IRC (Internet Relay Chat).
|       irc.c | Fonctions principales IRC.
|       irc-bar-item.c | Objets de barre IRC.
|       irc-batch.c | Évènements batch IRC.
|       irc-buffer.c | Tampons IRC.
|       irc-channel.c | Canaux IRC.
|       irc-color.c | Couleurs IRC.
|       irc-command.c | Commandes IRC.
|       irc-completion.c | Complétions IRC.
|       irc-config.c | Options de configuration IRC (fichier irc.conf).
|       irc-ctcp.c | CTCP IRC.
|       irc-debug.c | Fonctions de debug IRC.
|       irc-ignore.c | Ignore IRC.
|       irc-info.c | Info/infolists/hdata pour IRC.
|       irc-input.c | Entrée de commandes/texte.
|       irc-join.c | Fonctions pour les listes de canaux à rejoindre.
|       irc-list.c | Tampon pour la réponse à la commande /list.
|       irc-message.c | Fonctions pour manipuler les messages IRC.
|       irc-mode.c | Fonctions pour les modes de canal/pseudo.
|       irc-modelist.c | Listes de modes de canaux IRC (+b, +e, +I, ...).
|       irc-msgbuffer.c | Tampon cible pour les messages IRC.
|       irc-nick.c | Pseudos IRC.
|       irc-notify.c | Listes de notification IRC.
|       irc-protocol.c | Protocole IRC (RFCs 1459/2810/2811/2812/2813/7194).
|       irc-raw.c | Tampon des données brutes IRC.
|       irc-redirect.c | Redirection de la sortie des commandes IRC.
|       irc-sasl.c | Authentification SASL avec le serveur IRC.
|       irc-server.c | Communication avec le serveur IRC.
|       irc-tag.c | Fonctions pour manipuler les étiquettes de message IRC.
|       irc-typing.c | Statut d'écriture.
|       irc-upgrade.c | Sauvegarde/restauration des données IRC lors de la mise à jour de WeeChat.
|    javascript/ | Extension JavaScript.
|       weechat-js.cpp | Fonctions principales pour JavaScript (chargement/déchargement des scripts, exécution de code JavaScript).
|       weechat-js-api.cpp | Fonctions de l'API script JavaScript.
|       weechat-js-v8.cpp | Fonctions JavaScript v8.
|    logger/ | Extension Logger.
|       logger.c | Fonctions principales pour Logger.
|       logger-backlog.c | Fonctions de backlog pour Logger.
|       logger-buffer.c | Gestion des listes de tampons pour Logger.
|       logger-command.c | Commandes de Logger.
|       logger-config.c | Options de configuration pour Logger (fichier logger.conf).
|       logger-info.c | Info/infolists/hdata pour Logger.
|       logger-tail.c | Fonctions pour obtenir les dernières lignes d'un fichier.
|    lua/ | Extension Lua.
|       weechat-lua.c | Fonctions principales pour Lua (chargement/déchargement des scripts, exécution de code Lua).
|       weechat-lua-api.c | Fonctions de l'API script Lua.
|    perl/ | Extension Perl.
|       weechat-perl.c | Fonctions principales pour Perl (chargement/déchargement des scripts, exécution de code Perl).
|       weechat-perl-api.c | Fonctions de l'API script Perl.
|    php/ | Extension PHP.
|       weechat-php.c | Fonctions principales pour PHP (chargement/déchargement des scripts, exécution de code PHP).
|       weechat-php-api.c | Fonctions de l'API script PHP.
|    python/ | Extension Python.
|       weechat-python.c | Fonctions principales pour Python (chargement/déchargement des scripts, exécution de code Python).
|       weechat-python-api.c | Fonctions de l'API script Python.
|    relay/ | Extension Relay (proxy IRC et relai pour des interfaces distantes).
|       relay.c | Fonctions principales de Relay.
|       relay-auth.c | Authentification des clients.
|       relay-buffer.c | Tampon Relay.
|       relay-client.c | Clients du relai.
|       relay-command.c | Commandes de Relay.
|       relay-completion.c | Complétions de Relay.
|       relay-config.c | Options de configuration pour Relay (fichier relay.conf).
|       relay-http.c | Fonctions HTTP.
|       relay-info.c | Info/infolists/hdata pour Relay.
|       relay-network.c | Fonctions de réseau pour Relay.
|       relay-raw.c | Tampon des données brutes de Relay.
|       relay-remote.c | Relai distant.
|       relay-server.c | Serveur Relay.
|       relay-upgrade.c | Sauvegarde/restauration des données Relay lors de la mise à jour de WeeChat.
|       relay-websocket.c | Fonctions pour le serveur WebSocket (RFC 6455).
|       api/ | Relai pour les interfaces distantes (en utilisant une API REST HTTP).
|          relay-api.c | Fonctions principales pour l'API REST HTTP.
|          relay-api-msg.c | Envoi de messages JSON aux clients.
|          relay-api-protocol.c | Protocole HTTP REST API.
|          remote/ | Relai distant.
|             relay-remote-event.c | Traitement des évènements reçus du relai distant.
|             relay-remote-network.c | Fonctions réseau pour le relai distant.
|       irc/ | Proxy IRC.
|          relay-irc.c | Fonctions principales pour le proxy IRC.
|       weechat/ | Relai pour les interfaces distantes (en utilisant le protocole binaire "weechat").
|          relay-weechat.c | Relai pour les interfaces distantes (fonctions principales).
|          relay-weechat-msg.c | Envoi de messages binaires aux clients.
|          relay-weechat-nicklist.c | Fonctions pour la liste de pseudos.
|          relay-weechat-protocol.c | Lecture des commandes des clients.
|    ruby/ | Extension Ruby.
|       weechat-ruby.c | Fonctions principales pour Ruby (chargement/déchargement des scripts, exécution de code Ruby).
|       weechat-ruby-api.c | Fonctions de l'API script Ruby.
|    script/ | Gestionnaire de scripts.
|       script.c | Fonctions principales du gestionnaire de scripts.
|       script-action.c | Actions sur les scripts (chargement/déchargement, installation/suppression, ...).
|       script-buffer.c | Tampon pour le gestionnaire de scripts.
|       script-command.c | Commandes pour le gestionnaire de scripts.
|       script-completion.c | Complétions pour le gestionnaire de scripts.
|       script-config.c | Options de configuration pour le gestionnaire de scripts (fichier script.conf).
|       script-info.c | Info/infolists/hdata pour le gestionnaire de scripts.
|       script-mouse.c | Actions souris pour le gestionnaire de scripts.
|       script-repo.c | Téléchargement et lecture du dépôt de scripts.
|    tcl/ | Extension Tcl.
|       weechat-tcl.c | Fonctions principales pour Tcl (chargement/déchargement des scripts, exécution de code Tcl).
|       weechat-tcl-api.c | Fonctions de l'API script Tcl.
|    trigger/ | Extension Trigger.
|       trigger.c | Fonctions principales de Trigger.
|       trigger-buffer.c | Tampon Trigger.
|       trigger-callback.c | Fonctions de rappel de Trigger.
|       trigger-command.c | Commandes pour Trigger.
|       trigger-completion.c | Complétions pour Trigger.
|       trigger-config.c | Options de configuration pour Trigger (fichier trigger.conf).
|    typing/ | Extension Typing.
|       typing.c | Fonctions principales de Typing.
|       typing-bar-item.c | Objets de barre Typing.
|       typing-config.c | Options de configuration pour Typing (fichier typing.conf).
|       typing-status.c | Statut d'écriture de messages sur les tampons.
|    xfer/ | Extension Xfer (IRC DCC fichier/discussion).
|       xfer.c | Fonctions principales de Xfer.
|       xfer-buffer.c | Tampon Xfer.
|       xfer-chat.c | Discussion DCC.
|       xfer-command.c | Commandes pour Xfer.
|       xfer-completion.c | Complétions pour Xfer.
|       xfer-config.c | Options de configuration pour Xfer (fichier xfer.conf).
|       xfer-dcc.c | Transfert de fichier par DCC.
|       xfer-file.c | Fonctions pour les fichiers dans Xfer.
|       xfer-info.c | Info/infolists/hdata pour Xfer.
|       xfer-network.c | Fonctions réseau pour Xfer.
|       xfer-upgrade.c | Sauvegarde/restauration des données Xfer lors de la mise à jour de WeeChat.
| Chemin/fichier | Description
| plugins/ | Racine des extensions.
|    plugin.c | Gestion des extensions (chargement/déchargement des bibliothèques C dynamiques).
|    plugin-api.c | Fonctions supplémentaires pour l'API extension (enveloppes autour des fonctions du cœur de WeeChat).
|    plugin-api-info.c | Fonctions supplémentaires info/infolist pour l'API extension.
|    plugin-config.c | Options de configuration des extensions (fichier plugins.conf).
|    plugin-script.c | Fonctions communes utilisés par les extensions pour les scripts.
|    plugin-script-api.c | Fonctions pour l'API script : enveloppes autour de quelques fonctions de l'API extension.
|    plugin-script-config.c | Options de configuration des extensions pour les scripts (fichiers python.conf, perl.conf, ...).
|    weechat-plugin.h | En-tête destiné à être distribué avec les extensions WeeChat, pour les compiler.
|    alias/ | Extension Alias.
|       alias.c | Fonctions principales pour les alias.
|       alias-command.c | Commandes Alias.
|       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.
|    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.
|       buflist-command.c | Commandes pour Buflist.
|       buflist-config.c | Options de configuration pour Buflist (fichier buflist.conf).
|       buflist-info.c | Info/infolists/hdata pour Buflist.
|       buflist-mouse.c | Actions souris pour Buflist.
|    charset/ | Extension Charset.
|       charset.c | Fonctions pour Charset.
|    exec/ | Extension Exec.
|       exec.c | Fonctions principales de Exec.
|       exec-buffer.c | Tampon Exec.
|       exec-command.c | Commandes pour Exec.
|       exec-completion.c | Complétions pour Exec.
|       exec-config.c | Options de configuration pour Exec (fichier exec.conf).
|    fifo/ | Extension Fifo.
|       fifo.c | Fonctions principales de Fifo.
|       fifo-command.c | Commandes pour Fifo.
|       fifo-config.c | Options de configuration pour Fifo (fichier fifo.conf).
|       fifo-info.c | Info/infolists/hdata pour Fifo.
|    fset/ | Extension Fset.
|       fset.c | Fonctions principales de Fset.
|       fset-bar-item.c | Objets de barre Fset.
|       fset-buffer.c | Tampon Fset.
|       fset-command.c | Commandes pour Fset.
|       fset-completion.c | Complétions pour Fset.
|       fset-config.c | Options de configuration pour Fset (fichier fset.conf).
|       fset-info.c | Info/infolists/hdata pour Fset.
|       fset-mouse.c | Actions souris pour Fset.
|       fset-option.c | Gestion des options Fset.
|    guile/ | Extension Guile (scheme).
|       weechat-guile.c | Fonctions principales pour Guile (chargement/déchargement des scripts, exécution de code Guile).
|       weechat-guile-api.c | Fonctions de l'API script Guile.
|    irc/ | Extension IRC (Internet Relay Chat).
|       irc.c | Fonctions principales IRC.
|       irc-bar-item.c | Objets de barre IRC.
|       irc-batch.c | Évènements batch IRC.
|       irc-buffer.c | Tampons IRC.
|       irc-channel.c | Canaux IRC.
|       irc-color.c | Couleurs IRC.
|       irc-command.c | Commandes IRC.
|       irc-completion.c | Complétions IRC.
|       irc-config.c | Options de configuration IRC (fichier irc.conf).
|       irc-ctcp.c | CTCP IRC.
|       irc-debug.c | Fonctions de debug IRC.
|       irc-ignore.c | Ignore IRC.
|       irc-info.c | Info/infolists/hdata pour IRC.
|       irc-input.c | Entrée de commandes/texte.
|       irc-join.c | Fonctions pour les listes de canaux à rejoindre.
|       irc-message.c | Fonctions pour manipuler les messages IRC.
|       irc-mode.c | Fonctions pour les modes de canal/pseudo.
|       irc-modelist.c | Listes de modes de canaux IRC (+b, +e, +I, ...).
|       irc-msgbuffer.c | Tampon cible pour les messages IRC.
|       irc-nick.c | Pseudos IRC.
|       irc-notify.c | Listes de notification IRC.
|       irc-protocol.c | Protocole IRC (RFCs 1459/2810/2811/2812/2813/7194).
|       irc-raw.c | Tampon des données brutes IRC.
|       irc-redirect.c | Redirection de la sortie des commandes IRC.
|       irc-sasl.c | Authentification SASL avec le serveur IRC.
|       irc-server.c | Communication avec le serveur IRC.
|       irc-tag.c | Fonctions pour manipuler les étiquettes de message IRC.
|       irc-typing.c | Statut d'écriture.
|       irc-upgrade.c | Sauvegarde/restauration des données IRC lors de la mise à jour de WeeChat.
|    javascript/ | Extension JavaScript.
|       weechat-js.cpp | Fonctions principales pour JavaScript (chargement/déchargement des scripts, exécution de code JavaScript).
|       weechat-js-api.cpp | Fonctions de l'API script JavaScript.
|       weechat-js-v8.cpp | Fonctions JavaScript v8.
|    logger/ | Extension Logger.
|       logger.c | Fonctions principales pour Logger.
|       logger-backlog.c | Fonctions de backlog pour Logger.
|       logger-buffer.c | Gestion des listes de tampons pour Logger.
|       logger-command.c | Commandes de Logger.
|       logger-config.c | Options de configuration pour Logger (fichier logger.conf).
|       logger-info.c | Info/infolists/hdata pour Logger.
|       logger-tail.c | Fonctions pour obtenir les dernières lignes d'un fichier.
|    lua/ | Extension Lua.
|       weechat-lua.c | Fonctions principales pour Lua (chargement/déchargement des scripts, exécution de code Lua).
|       weechat-lua-api.c | Fonctions de l'API script Lua.
|    perl/ | Extension Perl.
|       weechat-perl.c | Fonctions principales pour Perl (chargement/déchargement des scripts, exécution de code Perl).
|       weechat-perl-api.c | Fonctions de l'API script Perl.
|    php/ | Extension PHP.
|       weechat-php.c | Fonctions principales pour PHP (chargement/déchargement des scripts, exécution de code PHP).
|       weechat-php-api.c | Fonctions de l'API script PHP.
|    python/ | Extension Python.
|       weechat-python.c | Fonctions principales pour Python (chargement/déchargement des scripts, exécution de code Python).
|       weechat-python-api.c | Fonctions de l'API script Python.
|    relay/ | Extension Relay (proxy IRC et relai pour des interfaces distantes).
|       relay.c | Fonctions principales de Relay.
|       relay-auth.c | Authentification des clients.
|       relay-buffer.c | Tampon Relay.
|       relay-client.c | Clients du relai.
|       relay-command.c | Commandes de Relay.
|       relay-completion.c | Complétions de Relay.
|       relay-config.c | Options de configuration pour Relay (fichier relay.conf).
|       relay-info.c | Info/infolists/hdata pour Relay.
|       relay-network.c | Fonctions de réseau pour Relay.
|       relay-raw.c | Tampon des données brutes de Relay.
|       relay-server.c | Serveur Relay.
|       relay-upgrade.c | Sauvegarde/restauration des données Relay lors de la mise à jour de WeeChat.
|       relay-websocket.c | Fonctions pour le serveur WebSocket (RFC 6455).
|       irc/ | Proxy IRC.
|          relay-irc.c | Fonctions principales pour le proxy IRC.
|       weechat/ | Relai pour les interfaces distantes.
|          relay-weechat.c | Relai pour les interfaces distantes (fonctions principales).
|          relay-weechat-msg.c | Envoi de messages binaires aux clients.
|          relay-weechat-nicklist.c | Fonctions pour la liste de pseudos.
|          relay-weechat-protocol.c | Lecture des commandes des clients.
|    ruby/ | Extension Ruby.
|       weechat-ruby.c | Fonctions principales pour Ruby (chargement/déchargement des scripts, exécution de code Ruby).
|       weechat-ruby-api.c | Fonctions de l'API script Ruby.
|    script/ | Gestionnaire de scripts.
|       script.c | Fonctions principales du gestionnaire de scripts.
|       script-action.c | Actions sur les scripts (chargement/déchargement, installation/suppression, ...).
|       script-buffer.c | Tampon pour le gestionnaire de scripts.
|       script-command.c | Commandes pour le gestionnaire de scripts.
|       script-completion.c | Complétions pour le gestionnaire de scripts.
|       script-config.c | Options de configuration pour le gestionnaire de scripts (fichier script.conf).
|       script-info.c | Info/infolists/hdata pour le gestionnaire de scripts.
|       script-mouse.c | Actions souris pour le gestionnaire de scripts.
|       script-repo.c | Téléchargement et lecture du dépôt de scripts.
|    tcl/ | Extension Tcl.
|       weechat-tcl.c | Fonctions principales pour Tcl (chargement/déchargement des scripts, exécution de code Tcl).
|       weechat-tcl-api.c | Fonctions de l'API script Tcl.
|    trigger/ | Extension Trigger.
|       trigger.c | Fonctions principales de Trigger.
|       trigger-buffer.c | Tampon Trigger.
|       trigger-callback.c | Fonctions de rappel de Trigger.
|       trigger-command.c | Commandes pour Trigger.
|       trigger-completion.c | Complétions pour Trigger.
|       trigger-config.c | Options de configuration pour Trigger (fichier trigger.conf).
|    typing/ | Extension Typing.
|       typing.c | Fonctions principales de Typing.
|       typing-bar-item.c | Objets de barre Typing.
|       typing-config.c | Options de configuration pour Typing (fichier typing.conf).
|       typing-status.c | Statut d'écriture de messages sur les tampons.
|    xfer/ | Extension Xfer (IRC DCC fichier/discussion).
|       xfer.c | Fonctions principales de Xfer.
|       xfer-buffer.c | Tampon Xfer.
|       xfer-chat.c | Discussion DCC.
|       xfer-command.c | Commandes pour Xfer.
|       xfer-completion.c | Complétions pour Xfer.
|       xfer-config.c | Options de configuration pour Xfer (fichier xfer.conf).
|       xfer-dcc.c | Transfert de fichier par DCC.
|       xfer-file.c | Fonctions pour les fichiers dans Xfer.
|       xfer-info.c | Info/infolists/hdata pour Xfer.
|       xfer-network.c | Fonctions réseau pour Xfer.
|       xfer-upgrade.c | Sauvegarde/restauration des données Xfer lors de la mise à jour de WeeChat.
|===
[[sources_tests]]
@@ -402,119 +389,81 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
[width="100%",cols="2m,3",options="header"]
|===
| Chemin/fichier | Description
| tests/ | Racine des tests.
|    tests.cpp | Programme utilisé pour lancer tous les tests.
|    tests-record.cpp | Enregistrement et recherche dans les messages affichés.
|    scripts/ | Racine des tests de l'API script.
|       test-scripts.cpp | Programme utilisé pour lancer les tests de l'API script.
|       python/ | Scripts Python pour générer et lancer les tests de l'API script.
|          testapigen.py | Script Python générant des scripts dans tous les languages pour tester l'API script.
|          testapi.py | Script Python avec les tests API, utilisé par le script testapigen.py.
|          unparse.py | Conversion de code Python vers d'autres langages, utilisé par le script testapigen.py.
|    unit/ | Racine des tests unitaires.
|       test-plugins.cpp | Tests : extensions.
|       test-plugin-api-info.cpp | Tests : fonctions info de l'API extension.
|       test-plugin-config.cpp | Tests : fonctions config de l'extension.
|       core/ | Racine des tests unitaires pour le cœur.
|          test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »).
|          test-core-calc.cpp | Tests : calcul d'expressions.
|          test-core-command.cpp | Tests : commandes.
|          test-core-config-file.cpp | Tests : fichiers de configuration.
|          test-core-crypto.cpp | Tests : fonctions cryptographiques.
|          test-core-dir.cpp | Tests : répertoires/fichiers.
|          test-core-eval.cpp | Tests : évaluation d'expressions.
|          test-core-hashtble.cpp | Tests : tables de hachage.
|          test-core-hdata.cpp | Tests : hdata.
|          test-core-hook.cpp | Tests : hooks.
|          test-core-infolist.cpp | Tests : infolists.
|          test-core-list.cpp | Tests : listes.
|          test-core-network.cpp | Tests : fonctions réseau.
|          test-core-secure.cpp | Tests : données sécurisées.
|          test-core-signal.cpp | Tests : signaux.
|          test-core-string.cpp | Tests : chaînes.
|          test-core-url.cpp | Tests : URLs.
|          test-core-utf8.cpp | Tests : UTF-8.
|          test-core-util.cpp | Tests : fonctions utiles.
|          test-core-sys.cpp | Tests : fonctions système.
|          hook/ | Racine des tests pour les hooks.
|             test-hook-command.cpp | Tests : hooks "command".
|             test-hook-command-run.cpp | Tests: hooks "command_run".
|             test-hook-completion.cpp | Tests: hooks "completion".
|             test-hook-config.cpp | Tests: hooks "config".
|             test-hook-connect.cpp | Tests: hooks "connect".
|             test-hook-fd.cpp | Tests: hooks "fd".
|             test-hook-focus.cpp | Tests: hooks "focus".
|             test-hook-hdata.cpp | Tests: hooks "hdata".
|             test-hook-hsignal.cpp | Tests: hooks "hsignal".
|             test-hook-info-hashtable.cpp | Tests: hooks "info_hashtable".
|             test-hook-info.cpp | Tests: hooks "info".
|             test-hook-infolist.cpp | Tests: hooks "infolist".
|             test-hook-line.cpp | Tests: hooks "line".
|             test-hook-modifier.cpp | Tests : hooks "modifier".
|             test-hook-print.cpp | Tests: hooks "print".
|             test-hook-process.cpp | Tests: hooks "process".
|             test-hook-signal.cpp | Tests: hooks "signal".
|             test-hook-timer.cpp | Tests: hooks "timer".
|             test-hook-url.cpp | Tests: hooks "url".
|       gui/ | Racine des tests unitaires pour les interfaces.
|          test-gui-bar-window.cpp | Tests : fonctions de fenêtres de barre.
|          test-gui-buffer.cpp | Tests : fonctions de tampons.
|          test-gui-chat.cpp | Tests : fonctions de discussion.
|          test-gui-color.cpp | Tests : couleurs.
|          test-gui-filter.cpp | Tests : filtres.
|          test-gui-hotlist.cpp | Tests : fonctions hotlist.
|          test-gui-input.cpp | Tests : fonctions d'entrée.
|          test-gui-key.cpp | Tests : touches.
|          test-gui-line.cpp | Tests : lignes.
|          test-gui-nick.cpp | Tests : pseudos.
|          test-gui-nicklist.cpp | Tests : fonctions de liste de pseudos.
|          curses/ | Racine des tests unitaires pour l'interface Curses.
|             test-gui-curses-mouse.cpp | Tests : souris (interface Curses).
|       plugins/ | Racine des tests unitaires pour les extensions.
|          irc/ | Racine des tests unitaires pour l'extension IRC.
|             test-irc-batch.cpp | Tests : évènements batch IRC.
|             test-irc-buffer.cpp | Tests : tampons IRC.
|             test-irc-channel.cpp | Tests : canaux IRC.
|             test-irc-color.cpp | Tests : couleurs IRC.
|             test-irc-command.cpp | Tests : commandes IRC.
|             test-irc-config.cpp | Tests : configuration IRC.
|             test-irc-ctcp.cpp | Tests : CTCP IRC.
|             test-irc-ignore.cpp | Tests : ignores IRC.
|             test-irc-info.cpp | Tests : infos IRC.
|             test-irc-join.cpp | Tests : fonctions de join IRC.
|             test-irc-list.cpp | Tests : tampon IRC pour la réponse à la commande /list.
|             test-irc-message.cpp | Tests : messages IRC.
|             test-irc-mode.cpp | Tests : modes IRC.
|             test-irc-nick.cpp | Tests : pseudos IRC.
|             test-irc-protocol.cpp | Tests : protocole IRC.
|             test-irc-sasl.cpp | Tests : authentification SASL avec le protocole IRC.
|             test-irc-server.cpp | Tests : serveur IRC.
|             test-irc-tag.cpp | Tests : étiquettes des messages IRC.
|          logger/ | Racine des tests unitaires pour l'extension logger.
|             test-logger.cpp | Tests : logger.
|             test-logger-backlog.cpp | Tests : backlog logger.
|             test-logger-tail.cpp | Tests : fonctions "tail".
|          trigger/ | Racine des tests unitaires pour l'extension trigger.
|             test-trigger.cpp | Tests : triggers.
|             test-trigger-config.cpp | Tests : configuration trigger.
|          typing/ | Racine des tests unitaires pour l'extension typing.
|             test-typing.cpp | Tests : typing.
|             test-typing-status.cpp | Tests : statut d'écriture.
|          relay/ | Racine des tests unitaires pour l'extension Relay.
|             test-relay-auth.cpp | Tests : authentification des clients.
|             test-relay-http.cpp | Tests : fonctions HTTP pour l'extension Relay.
|             test-relay-remote.cpp | Tests : fonctions remote pour l'extension Relay.
|             test-relay-websocket.cpp | Tests : fonctions websocket pour l'extension Relay.
|             api/ | Racine des tests unitaires pour le protocole relay "api".
|                test-relay-api.cpp | Tests : protocole relay "api" : fonctions générales.
|                test-relay-api-msg.cpp | Tests : protocole relay "api" : messages.
|                test-relay-api-protocol.cpp | Tests : protocole relay "api" : protocole.
|             irc/ | Racine des tests unitaires pour le protocole relay "irc".
|                test-relay-irc.cpp | Tests : protocole relay "irc".
|          xfer/ | Racine des tests unitaires pour l'extension Xfer.
|             test-xfer-file.cpp | Tests : fonctions sur les fichiers.
|             test-xfer-network.cpp | Tests : fonctions réseau.
| Chemin/fichier | Description
| tests/ | Racine des tests.
|    tests.cpp | Programme utilisé pour lancer tous les tests.
|    tests-record.cpp | Enregistrement et recherche dans les messages affichés.
|    scripts/ | Racine des tests de l'API script.
|       test-scripts.cpp | Programme utilisé pour lancer les tests de l'API script.
|       python/ | Scripts Python pour générer et lancer les tests de l'API script.
|          testapigen.py | Script Python générant des scripts dans tous les languages pour tester l'API script.
|          testapi.py | Script Python avec les tests API, utilisé par le script testapigen.py.
|          unparse.py | Conversion de code Python vers d'autres langages, utilisé par le script testapigen.py.
|    unit/ | Racine des tests unitaires.
|       test-plugins.cpp | Tests : extensions.
|       core/ | Racine des tests unitaires pour le cœur.
|          test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »).
|          test-core-calc.cpp | Tests : calcul d'expressions.
|          test-core-command.cpp | Tests : commandes.
|          test-core-config-file.cpp | Tests : fichiers de configuration.
|          test-core-crypto.cpp | Tests : fonctions cryptographiques.
|          test-core-dir.cpp | Tests : répertoires/fichiers.
|          test-core-eval.cpp | Tests : évaluation d'expressions.
|          test-core-hashtble.cpp | Tests : tables de hachage.
|          test-core-hdata.cpp | Tests : hdata.
|          test-core-hook.cpp | Tests : hooks.
|          test-core-infolist.cpp | Tests : infolists.
|          test-core-list.cpp | Tests : listes.
|          test-core-network.cpp | Tests : fonctions réseau.
|          test-core-secure.cpp | Tests : données sécurisées.
|          test-core-signal.cpp | Tests : signaux.
|          test-core-string.cpp | Tests : chaînes.
|          test-core-url.cpp | Tests : URLs.
|          test-core-utf8.cpp | Tests : UTF-8.
|          test-core-util.cpp | Tests : fonctions utiles.
|       gui/ | Racine des tests unitaires pour les interfaces.
|          test-gui-bar-window.cpp | Tests : fonctions de fenêtres de barre.
|          test-gui-buffer.cpp | Tests : fonctions de tampons.
|          test-gui-chat.cpp | Tests : fonctions de discussion.
|          test-gui-color.cpp | Tests : couleurs.
|          test-gui-filter.cpp | Tests : filtres.
|          test-gui-input.cpp | Tests : fonctions d'entrée.
|          test-gui-key.cpp | Tests : touches.
|          test-gui-line.cpp | Tests : lignes.
|          test-gui-nick.cpp | Tests : pseudos.
|       plugins/ | Racine des tests unitaires pour les extensions.
|          irc/ | Racine des tests unitaires pour l'extension IRC.
|             test-irc-batch.cpp | Tests : évènements batch IRC.
|             test-irc-buffer.cpp | Tests : tampons IRC.
|             test-irc-channel.cpp | Tests : canaux IRC.
|             test-irc-color.cpp | Tests : couleurs IRC.
|             test-irc-config.cpp | Tests : configuration IRC.
|             test-irc-ignore.cpp | Tests : ignores IRC.
|             test-irc-join.cpp | Tests : fonctions de join IRC.
|             test-irc-message.cpp | Tests : messages IRC.
|             test-irc-mode.cpp | Tests : modes IRC.
|             test-irc-nick.cpp | Tests : pseudos IRC.
|             test-irc-protocol.cpp | Tests : protocole IRC.
|             test-irc-sasl.cpp | Tests : authentification SASL avec le protocole IRC.
|             test-irc-server.cpp | Tests : serveur IRC.
|             test-irc-tag.cpp | Tests : étiquettes des messages IRC.
|          logger/ | Racine des tests unitaires pour l'extension logger.
|             test-logger.cpp | Tests : logger.
|             test-logger-backlog.cpp | Tests : backlog logger.
|             test-logger-tail.cpp | Tests : fonctions "tail".
|          trigger/ | Racine des tests unitaires pour l'extension trigger.
|             test-trigger.cpp | Tests : triggers.
|             test-trigger-config.cpp | Tests : configuration trigger.
|          typing/ | Racine des tests unitaires pour l'extension typing.
|             test-typing.cpp | Tests : typing.
|             test-typing-status.cpp | Tests : statut d'écriture.
|          relay/ | Racine des tests unitaires pour l'extension Relay.
|             test-relay-auth.cpp | Tests : authentification des clients.
|             irc/ | Racine des tests unitaires pour le protocole relay "irc".
|                test-relay-irc.cpp | Tests : Protocole relay "irc".
|          xfer/ | Racine des tests unitaires pour l'extension Xfer.
|             test-xfer-file.cpp | Tests : fonctions sur les fichiers.
|             test-xfer-network.cpp | Tests : fonctions réseau.
|===
[[documentation_translations]]
@@ -574,7 +523,7 @@ Exemple en C :
/*
* weechat.c - core functions for WeeChat
*
* Copyright (C) 2024 Your Name <your@email.com>
* Copyright (C) 2023 Your Name <your@email.com>
*
* This file is part of WeeChat, the extensible chat client.
*
@@ -598,7 +547,8 @@ Exemple en C :
Quelques règles basiques que vous *devez* suivre quand vous écrivez du code C :
* Utilisez 4 espaces pour l'indentation (pas de tabulations).
* Utilisez 4 espaces pour l'indentation. N'utilisez pas de tabulations, c'est le
mal.
* Essayez de ne pas dépasser 80 caractères par ligne, sauf si cela est
nécessaire pour améliorer la lisibilité.
* Utilisez les commentaires `+/* comment */+` (pas de style C99 comme
@@ -820,7 +770,7 @@ Exemples :
[width="100%",cols="2m,3",options="header"]
|===
| Répertoire | Fichiers
| src/core/ | weechat.c, core-backtrace.c, core-command.c, ...
| src/core/ | weechat.c, wee-backtrace.c, wee-command.c, ...
| src/gui/ | gui-bar.c, gui-bar-item.c, gui-bar-window.c, ...
| src/gui/curses/ | gui-curses-bar.c, gui-curses-bar-window.c, gui-curses-chat.c, ...
| src/plugins/ | plugin.c, plugin-api.c, plugin-api-info.c, plugin-config.c, plugin-script.c, ...
@@ -829,7 +779,7 @@ Exemples :
|===
Les en-têtes des fichiers C doivent avoir le même nom que le fichier, par
exemple _core-command.h_ pour le fichier _core-command.c_.
exemple _wee-command.h_ pour le fichier _wee-command.c_.
[[naming_convention_structures]]
==== Structures
+24 -81
View File
@@ -601,34 +601,6 @@ Si vous utilisez l'application Terminal sous macOS, activez l'option
"Use option as meta key" dans le menu Réglages/Clavier. Vous pouvez alors
utiliser la touche kbd:[Option] comme touche meta.
[[enter_key]]
=== Quelques touches comme Entrée ne fonctionnent pas, pourquoi ?
Si vous lancez WeeChat < 4.0.0 avec des fichiers de configuration créés par toute
version ≥ 4.0.0, les noms des touches sont invalides et de nombreuses touches
ne fonctionneront plus. +
Pour les réparer, quittez WeeChat, supprimez toutes les sections `[key*]` de
weechat.conf et démarrez WeeChat à nouveau : toutes les touches par défaut
seront recréées.
[[key_f11]]
=== La touche F11 maximise la fenêtre du terminal, comment puis-je faire défiler la liste de pseudos vers le haut ?
La touche kbd:[F11] est fréquemment utilisée par les terminaux pour maximiser
la fenêtre, et kbd:[F11]/kbd:[F12] sont les touches par défaut dans WeeChat
pour faire défiler la liste des pseudos.
Vous pouvez associer d'autres touches, par exemple kbd:[Shift+F11] et kbd:[Shift+F12],
avec WeeChat ≥ 4.0.0 :
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Une autre solution est d'activer la souris (touche : kbd:[Alt+m]) et faire défiler
avec la roulette de la souris (voir aussi les questions sur la <<mouse,souris>>).
[[customize_key_bindings]]
=== Comment puis-je configurer les raccourcis clavier ?
@@ -659,12 +631,6 @@ et utiliser les commandes comme `/123` pour sauter au tampon n°123 :
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
Pour un saut facile vers les tampons, vous pouvez aussi installer le script _go.py_ :
----
/script install go.py
----
[[global_history]]
=== Comment utiliser l'historique global (au lieu de l'historique du tampon) avec les touches haut et bas ?
@@ -983,20 +949,35 @@ link:weechat_user.fr.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^
pour définir le niveau maximum de hotlist pour certains pseudos, par tampon,
ou groupe de tampons (comme des serveurs IRC).
Pour désactiver seulement les highlights, vous pouvez positionner la valeur à 2.
Pour le tampon courant :
Pour désactiver seulement les highlights, vous pouvez positionner la valeur à 2 :
----
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----
Pour tous les canaux sur le serveur "libera":
Cependant, cette propriété de tampon n'est pas sauvegardée dans la configuration.
Pour automatiquement réappliquer ces propriétés de tampons, vous aurez besoin
du script _buffer_autoset.py_ :
----
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
/script install buffer_autoset.py
----
Par exemple, pour désactiver de manière permanente les highlights de "mike" sur
#weechat sur le serveur IRC libera :
----
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
Pour l'appliquer à l'ensemble du serveur libera :
----
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
Pour plus d'exemples, voir `+/help buffer_autoset+`.
[[irc_target_buffer]]
=== Comment puis-je changer le serveur cible pour les commandes avec des tampons mélangés (comme le tampon avec les serveurs) ?
@@ -1133,8 +1114,7 @@ Vous pouvez essayer les astuces suivantes pour consommer moins de mémoire :
Vous pouvez suivre les mêmes astuces que pour la <<memory_usage,mémoire>>, et
celles-ci :
* Cacher la barre "nicklist" : `/bar hide nicklist` (touche : kbd:[Alt+Shift+N]).
* Désactiver "buflist" : `/buflist disable` (touche : kbd:[Alt+Shift+B]).
* Cacher la barre "nicklist" : `/bar hide nicklist`.
* 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
@@ -1156,20 +1136,14 @@ Désactivez les réponses à toutes les demandes CTCP :
----
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
----
Avec WeeChat < 4.1.0, d'autres demandes CTCP étaient répondues par défaut et
doivent être désactivées également :
----
/set irc.ctcp.finger ""
/set irc.ctcp.userinfo ""
----
Déchargez et désactivez le chargement automatique de l'extension "xfer"
(utilisée pour le DCC IRC) :
@@ -1208,37 +1182,6 @@ des mots de passes (s'ils ne sont pas stockés dans _sec.conf_ avec la commande
Voir le link:weechat_user.fr.html#files_and_directories[Guide utilisateur / Fichiers et répertoires ^↗^^]
pour plus d'informations sur les fichiers de configuration.
[[move_to_another_device]]
=== Je souhaite déplacer mon WeeChat vers une autre machine et garder ma configuration, que dois-je copier ?
Premièrement, vérifiez les répertoires utilisés par WeeChat avec cette commande :
`/debug dirs`. +
Les répertoires home/config et home/data doivent être copiés (tous les fichiers
et sous-répertoires).
Par exemple si vous utilisez les répertoires XDG (par défaut avec WeeChat ≥ 3.2),
les répertoires devraient être `$HOME/.config/weechat` et `$HOME/.local/share/weechat`. +
Si vous utilisez un répertoire unique (par défaut avec WeeChat < 3.2), le répertoire
devrait être `$HOME/.weechat`.
[IMPORTANT]
La version de WeeChat sur la nouvelle machine doit être supérieure ou égale
à celle de la machine initiale. +
La rétrogradation de la configuration n'est *PAS SUPPORTÉE* et pourrait la casser,
rendant WeeChat inutilisable.
Étapes :
. Quitter Weechat : `/quit` (ou `/upgrade -quit` si vous souhaitez restaurer
la session, qui inclut le contenu de tous les tampons).
. Copier tous les répertoires, fichiers et sous-répertoires vers la nouvelle machine
au même endroit, en préservant les noms et les permissions.
. Facultatif : copier tout fichier en dehors de ces répertoires que vous référencez
dans votre configuration (il n'est pas recommandé d'utiliser des fichiers en
dehors des répertoires WeeChat).
. Démarrer WeeChat sur la nouvelle machine : `weechat` (ou `weechat --upgrade`
si vous avez sauvé la session).
[[development]]
== Développement
File diff suppressed because it is too large Load Diff
+10 -26
View File
@@ -503,9 +503,7 @@ hda:
'buffer': 'ptr',
'y': 'int',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'str_time': 'str',
'tags_count': 'int',
'tags_array': 'arr',
@@ -523,9 +521,7 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404926
date_usec: 118712
date_printed: 1588404926
date_usec_printed: 118712
str_time: 'F@0025209F@0024535F@0024026'
tags_count: 0
tags_array: []
@@ -541,9 +537,7 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404930
date_usec: 25
date_printed: 1588404930
date_usec_printed: 25
str_time: 'F@0025209F@0024535F@0024030'
tags_count: 0
tags_array: []
@@ -723,7 +717,6 @@ inl:
nicklist_visible_count: 0
title: 'WeeChat 2.9-dev (C) 2003-2020 - https://weechat.org/'
input: 1
input_get_any_user_data: 0
input_get_unknown_commands: 0
input_get_empty: 0
input_multiline: 0
@@ -735,14 +728,11 @@ inl:
input_buffer_1st_display: 0
num_history: 0
text_search: 0
text_search_direction: 0
text_search_exact: 0
text_search_regex: 0
text_search_regex_compiled: '0x0'
text_search_where: 0
text_search_history: 0
text_search_found: 0
text_search_ptr_history: '0x0'
text_search_input: None
highlight_words: None
highlight_disable_regex: None
@@ -2085,18 +2075,16 @@ Données envoyées dans le hdata :
[width="100%",cols="3m,2,10",options="header"]
|===
| Nom | Type | Description
| buffer | pointeur | Pointeur vers le tampon.
| date | date/heure | Date du message.
| date_usec | entier | Microsecondes de la date.
| date_printed | date/heure | Date d'affichage du message.
| date_usec_printed | entier | Microsecondes de la date d'affichage du message.
| displayed | caractère | 1 si le message est affiché, 0 si le message est filtré (caché).
| notify_level | caractère | Niveau de notification : -1 = notification désactivée, 0 = bas, 1 = message, 2 = privé, 3 = highlight.
| highlight | caractère | 1 si la ligne a un highlight, sinon 0.
| tags_array | tableau de chaînes | Liste des étiquettes de la ligne.
| prefix | chaîne | Préfixe.
| message | chaîne | Message.
| Nom | Type | Description
| buffer | pointeur | Pointeur vers le tampon.
| date | date/heure | Date du message.
| date_printed | date/heure | Date d'affichage du message.
| displayed | caractère | 1 si le message est affiché, 0 si le message est filtré (caché).
| notify_level | caractère | Niveau de notification : -1 = notification désactivée, 0 = bas, 1 = message, 2 = privé, 3 = highlight.
| highlight | caractère | 1 si la ligne a un highlight, sinon 0.
| tags_array | tableau de chaînes | Liste des étiquettes de la ligne.
| prefix | chaîne | Préfixe.
| message | chaîne | Message.
|===
Exemple : nouveau message _hello!_ du pseudo _FlashCode_ sur le tampon
@@ -2109,9 +2097,7 @@ hda:
keys: {
'buffer': 'ptr',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'displayed': 'chr',
'notify_level': 'chr',
'highlight': 'chr',
@@ -2124,9 +2110,7 @@ hda:
__path: ['0x4a49600']
buffer: '0x4a715d0'
date: 1362728993
date_usec: 902765
date_printed: 1362728993
date_usec_printed: 902765
displayed: 1
notify_level: 1
highlight: 0
+304 -2
View File
@@ -570,14 +570,316 @@ link:weechat_plugin_api.fr.html[Référence API extension WeeChat ^↗^^].
Liste des fonctions de l'API script :
include::{autogendir}/autogen_scripting_functions.fr.adoc[tag=functions]
[width="100%",cols="1,5",options="header"]
|===
| Catégorie | Fonctions
| général
| register
| extensions
| plugin_get_name
| chaînes
| charset_set +
iconv_to_internal +
iconv_from_internal +
gettext +
ngettext +
strlen_screen +
string_match +
string_match_list +
string_has_highlight +
string_has_highlight_regex +
string_mask_to_regex +
string_format_size +
string_parse_size +
string_color_code_size +
string_remove_color +
string_is_command_char +
string_input_for_buffer +
string_eval_expression +
string_eval_path_home
| répertoires
| mkdir_home +
mkdir +
mkdir_parents
| listes triées
| list_new +
list_add +
list_search +
list_search_pos +
list_casesearch +
list_casesearch_pos +
list_get +
list_set +
list_next +
list_prev +
list_string +
list_size +
list_remove +
list_remove_all +
list_free
| fichiers de configuration
| config_new +
config_new_section +
config_search_section +
config_new_option +
config_search_option +
config_string_to_boolean +
config_option_reset +
config_option_set +
config_option_set_null +
config_option_unset +
config_option_rename +
config_option_is_null +
config_option_default_is_null +
config_boolean +
config_boolean_default +
config_integer +
config_integer_default +
config_string +
config_string_default +
config_color +
config_color_default +
config_write_option +
config_write_line +
config_write +
config_read +
config_reload +
config_option_free +
config_section_free_options +
config_section_free +
config_free +
config_get +
config_get_plugin +
config_is_set_plugin +
config_set_plugin +
config_set_desc_plugin +
config_unset_plugin
| associations de touches
| key_bind +
key_unbind
| affichage
| prefix +
color +
print (pour python : prnt) +
print_date_tags (pour python : prnt_date_tags) +
print_y (pour python : prnt_y) +
print_y_date_tags (pour python : prnt_y_date_tags) +
log_print
| hooks
| hook_command +
hook_command_run +
hook_timer +
hook_fd +
hook_process +
hook_process_hashtable +
hook_connect +
hook_line +
hook_print +
hook_signal +
hook_signal_send +
hook_hsignal +
hook_hsignal_send +
hook_config +
hook_completion +
hook_modifier +
hook_modifier_exec +
hook_info +
hook_info_hashtable +
hook_infolist +
hook_focus +
hook_set +
unhook +
unhook_all
| tampons
| buffer_new +
buffer_new_props +
current_buffer +
buffer_search +
buffer_search_main +
buffer_clear +
buffer_close +
buffer_merge +
buffer_unmerge +
buffer_get_integer +
buffer_get_string +
buffer_get_pointer +
buffer_set +
buffer_string_replace_local_var +
buffer_match_list
| fenêtres
| current_window +
window_search_with_buffer +
window_get_integer +
window_get_string +
window_get_pointer +
window_set_title
| liste des pseudos
| nicklist_add_group +
nicklist_search_group +
nicklist_add_nick +
nicklist_search_nick +
nicklist_remove_group +
nicklist_remove_nick +
nicklist_remove_all +
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
| barres
| bar_item_search +
bar_item_new +
bar_item_update +
bar_item_remove +
bar_search +
bar_new +
bar_set +
bar_update +
bar_remove
| commandes
| command +
command_options
| complétion
| completion_new +
completion_search +
completion_get_string +
completion_list_add +
completion_free
| infos
| info_get +
info_get_hashtable
| infolists
| infolist_new +
infolist_new_item +
infolist_new_var_integer +
infolist_new_var_string +
infolist_new_var_pointer +
infolist_new_var_time +
infolist_get +
infolist_next +
infolist_prev +
infolist_reset_item_cursor +
infolist_search_var +
infolist_fields +
infolist_integer +
infolist_string +
infolist_pointer +
infolist_time +
infolist_free
| hdata
| hdata_get +
hdata_get_var_offset +
hdata_get_var_type_string +
hdata_get_var_array_size +
hdata_get_var_array_size_string +
hdata_get_var_hdata +
hdata_get_list +
hdata_check_pointer +
hdata_move +
hdata_search +
hdata_char +
hdata_integer +
hdata_long +
hdata_string +
hdata_pointer +
hdata_time +
hdata_hashtable +
hdata_compare +
hdata_update +
hdata_get_string
| mise à jour
| upgrade_new +
upgrade_write_object +
upgrade_read +
upgrade_close
|===
[[script_api_constants]]
=== Constantes
Liste des constantes de l'API script :
include::{autogendir}/autogen_scripting_constants.fr.adoc[tag=constants]
[width="100%",cols="1,5",options="header"]
|===
| Catégorie | Constantes
| codes retour
| `WEECHAT_RC_OK` (entier) +
`WEECHAT_RC_OK_EAT` (entier) +
`WEECHAT_RC_ERROR` (entier)
| fichiers de configuration
| `WEECHAT_CONFIG_READ_OK` (entier) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (entier) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (entier) +
`WEECHAT_CONFIG_WRITE_OK` (entier) +
`WEECHAT_CONFIG_WRITE_ERROR` (entier) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (entier) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (entier) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (entier) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (entier) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (entier) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (entier) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (entier) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (entier) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (entier)
| listes triées
| `WEECHAT_LIST_POS_SORT` (chaîne) +
`WEECHAT_LIST_POS_BEGINNING` (chaîne) +
`WEECHAT_LIST_POS_END` (chaîne)
| hotlist
| `WEECHAT_HOTLIST_LOW` (chaîne) +
`WEECHAT_HOTLIST_MESSAGE` (chaîne) +
`WEECHAT_HOTLIST_PRIVATE` (chaîne) +
`WEECHAT_HOTLIST_HIGHLIGHT` (chaîne)
| hook process
| `WEECHAT_HOOK_PROCESS_RUNNING` (entier) +
`WEECHAT_HOOK_PROCESS_ERROR` (entier)
| hook connect
| `WEECHAT_HOOK_CONNECT_OK` (entier) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (entier) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (entier) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (entier) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (entier) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (entier) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (entier)
| hook signal
| `WEECHAT_HOOK_SIGNAL_STRING` (chaîne) +
`WEECHAT_HOOK_SIGNAL_INT` (chaîne) +
`WEECHAT_HOOK_SIGNAL_POINTER` (chaîne)
|===
[[common_tasks]]
== Tâches courantes
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -103,7 +103,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat is written by Sébastien Helleu and contributors (complete list is in
the AUTHORS.adoc file).
Copyright (C) 2003-2024 {author}
Copyright (C) 2003-2023 {author}
WeeChat is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
+25 -82
View File
@@ -644,33 +644,6 @@ If you are using the macOS Terminal app, enable the option
"Use option as meta key" in menu Settings/Keyboard. And then you can use the
kbd:[Option] key as meta key.
// TRANSLATION MISSING
[[enter_key]]
=== Some keys including Enter are not working, why?
If you run a WeeChat < 4.0.0 with configuration files created by any
version ≥ 4.0.0, the keys names become invalid and many keys won't work at all. +
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
// TRANSLATION MISSING
[[key_f11]]
=== Key F11 maximizes the terminal window, how can I scroll up the nicklist?
The key kbd:[F11] is commonly used by terminals to maximize the window, and
kbd:[F11]/kbd:[F12] are the default keys in WeeChat to scroll the nicklist.
You can bind other keys, for example kbd:[Shift+F11] and kbd:[Shift+F12],
with WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Other solution is to enable mouse (key: kbd:[Alt+m]) and scroll with the mouse
wheel (see also questions about <<mouse,mouse>>).
[[customize_key_bindings]]
=== Come posso personalizzare le associazioni dei tasti?
@@ -703,13 +676,6 @@ commands like `/123` to jump to buffer #123:
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
// TRANSLATION MISSING
For an easy jump to buffers, you can also install the _go.py_ script:
----
/script install go.py
----
[[global_history]]
=== Come si può usare la cronologia globale (invece di quella del buffer) con i tasti su e giù?
@@ -1039,25 +1005,41 @@ Altri script correlati:
[[disable_highlights_for_specific_nicks]]
=== How can I disable highlights for specific nicks?
// TRANSLATION MISSING
You can use the
link:weechat_user.it.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^↗^^]
buffer property to set the max hotlist level for some nicks, per buffer,
or per group of buffers (like IRC servers).
To only disable highlights, you'd have to set it to 2.
For the current buffer:
To only disable highlights, you'd have to set it to 2:
----
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----
For all channels on server "libera":
This buffer property isn't stored in the configuration though.
To automatically reapply these buffer properties, you would need the
_buffer_autoset.py_ script:
----
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
/script install buffer_autoset.py
----
For example, to permanently disable highlights from "mike" on #weechat
on the IRC server libera:
----
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
To apply it to the entire libera server instead:
----
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
For more examples, see `+/help buffer_autoset+`.
[[irc_target_buffer]]
=== Come si può modificare il buffer destinazione per i comandi sui buffer uniti (come i buffer con i server)?
@@ -1197,10 +1179,7 @@ Esistono diversi trucchi per ottimizzare l'uso della memoria:
// TRANSLATION MISSING
You can follow same tips as for <<memory_usage,memory>>, and these ones:
// TRANSLATION MISSING
* hide "nicklist" bar: `/bar hide nicklist` (key: kbd:[Alt+Shift+N]).
// TRANSLATION MISSING
* Disable "buflist": `/buflist disable` (key: kbd:[Alt+Shift+B]).
* hide "nicklist" bar: `/bar hide nicklist`
* remove display of seconds in status bar time:
`+/set weechat.look.item_time_format "%H:%M"+` (this is the default value)
// TRANSLATION MISSING
@@ -1226,21 +1205,14 @@ Disable answers to all CTCP queries:
----
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
----
// TRANSLATION MISSING
With WeeChat < 4.1.0, other CTCP queries were replied by default and must be
disabled as well:
----
/set irc.ctcp.finger ""
/set irc.ctcp.userinfo ""
----
// TRANSLATION MISSING
Unload and disable auto-loading of "xfer" plugin (used for IRC DCC):
@@ -1278,35 +1250,6 @@ stored in _sec.conf_ with the `/secure` command).
See the link:weechat_user.it.html#files_and_directories[User's guide / Files and directories ^↗^^]
for more information about configuration files.
// TRANSLATION MISSING
[[move_to_another_device]]
=== I want to move my WeeChat to another device and keep my config, what should I copy?
First check directories used by WeeChat with this command: `/debug dirs`. +
Directories home/config and home/data must be copied (all files and sub-directories).
For example if you're using XDG directories (default with WeeChat ≥ 3.2),
the directories should be `$HOME/.config/weechat` and `$HOME/.local/share/weechat`. +
If you're using a single directory (default with WeeChat < 3.2), the directory
should be `$HOME/.weechat`.
[IMPORTANT]
The WeeChat version on the new device must be greater than or equal to the version
on the initial device. +
Downgrading WeeChat configuration is *NOT SUPPORTED* and can break it,
leading to unusable WeeChat.
Steps:
. Quit Weechat: `/quit` (or `/upgrade -quit` if you want to resume the session,
which includes content of all buffers).
. Copy all directories, sub-directories and files to the new device, keeping
same names and permissions.
. Optional: copy any file outside these directories that you refer to in your
configuration (it's not recommended to use files outside WeeChat directories).
. Start WeeChat on the new device: `weechat` (or `weechat --upgrade` if you
saved the session).
[[development]]
== Sviluppo
File diff suppressed because it is too large Load Diff
+315 -2
View File
@@ -579,14 +579,327 @@ link:weechat_plugin_api.it.html[WeeChat plugin API reference ^↗^^].
Elenco di funzioni nelle API per gli script:
include::{autogendir}/autogen_scripting_functions.it.adoc[tag=functions]
[width="100%",cols="1,5",options="header"]
|===
| Categoria | Funzioni
| generale
| register
| plugin
| plugin_get_name
| stringhe
| charset_set +
iconv_to_internal +
iconv_from_internal +
gettext +
ngettext +
strlen_screen +
string_match +
string_match_list +
string_has_highlight +
string_has_highlight_regex +
string_mask_to_regex +
string_format_size +
string_parse_size +
string_color_code_size +
string_remove_color +
string_is_command_char +
string_input_for_buffer +
string_eval_expression +
string_eval_path_home
| directory
| mkdir_home +
mkdir +
mkdir_parents
| liste ordinate
| list_new +
list_add +
list_search +
list_search_pos +
list_casesearch +
list_casesearch_pos +
list_get +
list_set +
list_next +
list_prev +
list_string +
list_size +
list_remove +
list_remove_all +
list_free
| file di configurazione
| config_new +
config_new_section +
config_search_section +
config_new_option +
config_search_option +
config_string_to_boolean +
config_option_reset +
config_option_set +
config_option_set_null +
config_option_unset +
config_option_rename +
config_option_is_null +
config_option_default_is_null +
config_boolean +
config_boolean_default +
config_integer +
config_integer_default +
config_string +
config_string_default +
config_color +
config_color_default +
config_write_option +
config_write_line +
config_write +
config_read +
config_reload +
config_option_free +
config_section_free_options +
config_section_free +
config_free +
config_get +
config_get_plugin +
config_is_set_plugin +
config_set_plugin +
config_set_desc_plugin +
config_unset_plugin
| combinazione tasti
| key_bind +
key_unbind
| visualizzazione
| prefix +
color +
// TRANSLATION MISSING
print (for python: prnt) +
// TRANSLATION MISSING
print_date_tags (for python: prnt_date_tags) +
// TRANSLATION MISSING
print_y (for python: prnt_y) +
// TRANSLATION MISSING
print_y_date_tags (for python: prnt_y_date_tags) +
log_print
| hook
| hook_command +
hook_command_run +
hook_timer +
hook_fd +
hook_process +
hook_process_hashtable +
hook_connect +
hook_line +
hook_print +
hook_signal +
hook_signal_send +
hook_hsignal +
hook_hsignal_send +
hook_config +
hook_completion +
hook_modifier +
hook_modifier_exec +
hook_info +
hook_info_hashtable +
hook_infolist +
hook_focus +
hook_set +
unhook +
unhook_all
| buffer
| buffer_new +
buffer_new_props +
current_buffer +
buffer_search +
buffer_search_main +
buffer_clear +
buffer_close +
buffer_merge +
buffer_unmerge +
buffer_get_integer +
buffer_get_string +
buffer_get_pointer +
buffer_set +
buffer_string_replace_local_var +
buffer_match_list
| finestre
| current_window +
window_search_with_buffer +
window_get_integer +
window_get_string +
window_get_pointer +
window_set_title
| lista nick
| nicklist_add_group +
nicklist_search_group +
nicklist_add_nick +
nicklist_search_nick +
nicklist_remove_group +
nicklist_remove_nick +
nicklist_remove_all +
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
| barre
| bar_item_search +
bar_item_new +
bar_item_update +
bar_item_remove +
bar_search +
bar_new +
bar_set +
bar_update +
bar_remove
| comandi
| command +
command_options
// TRANSLATION MISSING
| completion
| completion_new +
completion_search +
completion_get_string +
completion_list_add +
completion_free
| info
| info_get +
info_get_hashtable
| liste info
| infolist_new +
infolist_new_item +
infolist_new_var_integer +
infolist_new_var_string +
infolist_new_var_pointer +
infolist_new_var_time +
infolist_get +
infolist_next +
infolist_prev +
infolist_reset_item_cursor +
infolist_search_var +
infolist_fields +
infolist_integer +
infolist_string +
infolist_pointer +
infolist_time +
infolist_free
| hdata
| hdata_get +
hdata_get_var_offset +
hdata_get_var_type_string +
hdata_get_var_array_size +
hdata_get_var_array_size_string +
hdata_get_var_hdata +
hdata_get_list +
hdata_check_pointer +
hdata_move +
hdata_search +
hdata_char +
hdata_integer +
hdata_long +
hdata_string +
hdata_pointer +
hdata_time +
hdata_hashtable +
hdata_compare +
hdata_update +
hdata_get_string
| aggiornamento
| upgrade_new +
upgrade_write_object +
upgrade_read +
upgrade_close
|===
[[script_api_constants]]
=== Costanti
Elenco di costanti nelle API per gli script:
include::{autogendir}/autogen_scripting_constants.it.adoc[tag=constants]
[width="100%",cols="1,5",options="header"]
|===
| Categoria | Costanti
// TRANSLATION MISSING
| codici restituiti
| `WEECHAT_RC_OK` (integer) +
`WEECHAT_RC_OK_EAT` (integer) +
`WEECHAT_RC_ERROR` (integer)
// TRANSLATION MISSING
| file di configurazione
| `WEECHAT_CONFIG_READ_OK` (integer) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_WRITE_OK` (integer) +
`WEECHAT_CONFIG_WRITE_ERROR` (integer) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (integer) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
// TRANSLATION MISSING
| liste ordinate
| `WEECHAT_LIST_POS_SORT` (string) +
`WEECHAT_LIST_POS_BEGINNING` (string) +
`WEECHAT_LIST_POS_END` (string)
// TRANSLATION MISSING
| hotlist
| `WEECHAT_HOTLIST_LOW` (string) +
`WEECHAT_HOTLIST_MESSAGE` (string) +
`WEECHAT_HOTLIST_PRIVATE` (string) +
`WEECHAT_HOTLIST_HIGHLIGHT` (string)
// TRANSLATION MISSING
| hook su processo
| `WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
`WEECHAT_HOOK_PROCESS_ERROR` (integer)
// TRANSLATION MISSING
| hook su connessione
| `WEECHAT_HOOK_CONNECT_OK` (integer) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (integer) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
// TRANSLATION MISSING
| hook su segnale
| `WEECHAT_HOOK_SIGNAL_STRING` (string) +
`WEECHAT_HOOK_SIGNAL_INT` (string) +
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|===
[[common_tasks]]
== Compiti comuni
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -100,7 +100,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat は Sébastien Helleu さんと貢献者によって作成されています
(完全なリストは AUTHORS.adoc ファイルを参照してください)。
著作権 (C) 2003-2024 {author}
著作権 (C) 2003-2023 {author}
WeeChat はフリーソフトウェアです。あなたはこれを、フリーソフトウェア財団によって発行された
GNU 一般公衆利用許諾契約書 (バージョン 2 か、希望によってはそれ以降のバージョンのうちどれか)
+340 -445
View File
@@ -119,103 +119,100 @@ WeeChat "core" は以下のディレクトリに配置されています:
[width="100%",cols="2m,3",options="header"]
|===
| パス/ファイル名 | 説明
| core/ | コア関数: エントリポイント、内部構造体
|    core-arraylist.c | 配列リスト
|    core-backtrace.c | クラッシュした際にバックトレースを表示
| パス/ファイル名 | 説明
| core/ | コア関数: エントリポイント、内部構造体
|    wee-arraylist.c | 配列リスト
|    wee-backtrace.c | クラッシュした際にバックトレースを表示
// TRANSLATION MISSING
|    core-calc.c | Calculate result of expressions.
|    core-command.c | WeeChat コアコマンド
|    core-completion.c | デフォルト補完
|    core-config-file.c | 設定ファイル管理
|    core-config.c | WeeChat コアの設定オプション (weechat.conf ファイル)
|    wee-calc.c | Calculate result of expressions.
|    wee-command.c | WeeChat コアコマンド
|    wee-completion.c | デフォルト補完
|    wee-config-file.c | 設定ファイル管理
|    wee-config.c | WeeChat コアの設定オプション (weechat.conf ファイル)
// TRANSLATION MISSING
|    core-crypto.c | Cryptographic functions.
|    core-debug.c | デバッグ用関数
|    wee-crypto.c | Cryptographic functions.
|    wee-debug.c | デバッグ用関数
// TRANSLATION MISSING
|    core-dir.c | Directory/file functions.
|    wee-dir.c | Directory/file functions.
// TRANSLATION MISSING
|    core-doc.c | Build of files for documentation.
|    core-eval.c | 内部変数へのリファレンスを含む式を評価
|    core-hashtable.c | ハッシュテーブル
|    core-hdata.c | hdata (ハッシュテーブルを用いて直接データを読む)
|    core-hook.c | フック
|    core-infolist.c | インフォリスト (オブジェクトに関するデータを含むリスト)
|    core-input.c | コマンドおよびテキストの入力
|    core-list.c | ソート済みリスト
|    core-log.c | WeeChat ログファイル (weechat.log) に書き込む
|    core-network.c | ネットワーク関数 (サーバやプロキシへの接続)
|    core-proxy.c | プロキシ管理
|    core-secure.c | データ保護用の関数
|    core-secure-buffer.c | データ保護用のバッファ
|    core-secure-config.c | 安全なデータオプション (sec.conf ファイル)
|    wee-doc.c | Build of files for documentation.
|    wee-eval.c | 内部変数へのリファレンスを含む式を評価
|    wee-hashtable.c | ハッシュテーブル
|    wee-hdata.c | hdata (ハッシュテーブルを用いて直接データを読む)
|    wee-hook.c | フック
|    wee-infolist.c | インフォリスト (オブジェクトに関するデータを含むリスト)
|    wee-input.c | コマンドおよびテキストの入力
|    wee-list.c | ソート済みリスト
|    wee-log.c | WeeChat ログファイル (weechat.log) に書き込む
|    wee-network.c | ネットワーク関数 (サーバやプロキシへの接続)
|    wee-proxy.c | プロキシ管理
|    wee-secure.c | データ保護用の関数
|    wee-secure-buffer.c | データ保護用のバッファ
|    wee-secure-config.c | 安全なデータオプション (sec.conf ファイル)
// TRANSLATION MISSING
|    core-signal.c | Signal functions.
|    core-string.c | 文字列関数
// TRANSLATION MISSING
|    core-sys.c | System functions.
|    core-upgrade-file.c | 内部アップグレードシステム
|    core-upgrade.c | WeeChat コアのアップグレード (バッファ、行、履歴、...)
|    core-url.c | URL 転送 (libcurl を使う)
|    core-utf8.c | UTF-8 関数
|    core-util.c | その他の関数
|    core-version.c | WeeChat バージョンについての関数
|    weechat.c | 主要関数: コマンドラインオプション、起動
|    hook/ | フック関数
|       hook-command-run.c | "command_run" フック
|       hook-command.c | "command" フック
|       hook-completion.c | "completion" フック
|       hook-config.c | "config" フック
|       hook-connect.c | "connect" フック
|       hook-fd.c | "fd" フック
|       hook-focus.c | "focus" フック
|       hook-hdata.c | "hdata" フック
|       hook-hsignal.c | "hsignal" フック
|       hook-info-hashtable.c | "info_hashtable" フック
|       hook-info.c | "info" フック
|       hook-infolist.c | "infolist" フック
|       hook-line.c | "line" フック
|       hook-modifier.c | "modifier" フック
|       hook-print.c | "print" フック
|       hook-process.c | "process" フック
|       hook-signal.c | "signal" フック
|       hook-timer.c | "timer" フック
|       hook-url.c | "url" フック
| gui/ | バッファ、ウィンドウなどの関数 (全てのインターフェースで利用)
|    gui-bar-item.c | バー要素
|    gui-bar-window.c | バーウィンドウ
|    gui-bar.c | バー
|    gui-buffer.c | バッファ
|    gui-chat.c | チャット関数 (メッセージの表示、...)
|    gui-color.c | 色関数
|    gui-completion.c | コマンドラインの補完
|    gui-cursor.c | カーソルモード (カーソルを自由に移動)
|    gui-filter.c | フィルタ
|    gui-focus.c | フォーカスについての関数 (カーソルモードとマウス用)
|    gui-history.c | コマンドおよびバッファに保存されたテキスト
|    gui-hotlist.c | ホットリスト管理 (活発なバッファのリスト)
|    gui-input.c | 入力関数 (入力バー)
|    gui-key.c | キーボード関数
|    gui-layout.c | レイアウト
|    gui-line.c | バッファ中の行
|    gui-mouse.c | マウス
|    gui-nick.c | ニックネーム関数
|    gui-nicklist.c | バッファのニックネームリスト
|    gui-window.c | ウィンドウ
|    curses/ | curses インターフェース
|       gui-curses-bar-window.c | バーウィンドウへの表示
|       gui-curses-chat.c | チャットエリアへの表示 (メッセージ)
|       gui-curses-color.c | 色関数
|       gui-curses-key.c | キーボード関数 (デフォルトキー、入力の読み取り)
|       gui-curses-main.c | WeeChat メインループ (キーボードやネットワークイベントの待ち受け)
|       gui-curses-mouse.c | マウス
|       gui-curses-term.c | 端末についての関数
|       gui-curses-window.c | ウィンドウ
|       headless/ | ヘッドレスモード (インターフェースなし)
|          main.c | ヘッドレスモード用のエントリポイント
|          ncurses-fake.c | ダミーの ncurses ライブラリ
|       normal/ | curses インターフェース
|          main.c | curses インターフェース用のエントリポイント
|    wee-signal.c | Signal functions.
|    wee-string.c | 文字列関数
|    wee-upgrade-file.c | 内部アップグレードシステム
|    wee-upgrade.c | WeeChat コアのアップグレード (バッファ、行、履歴、...)
|    wee-url.c | URL 転送 (libcurl を使う)
|    wee-utf8.c | UTF-8 関数
|    wee-util.c | その他の関数
|    wee-version.c | WeeChat バージョンについての関数
|    weechat.c | 主要関数: コマンドラインオプション、起動
|    hook/ | フック関数
|       wee-hook-command-run.c | "command_run" フック
|       wee-hook-command.c | "command" フック
|       wee-hook-completion.c | "completion" フック
|       wee-hook-config.c | "config" フック
|       wee-hook-connect.c | "connect" フック
|       wee-hook-fd.c | "fd" フック
|       wee-hook-focus.c | "focus" フック
|       wee-hook-hdata.c | "hdata" フック
|       wee-hook-hsignal.c | "hsignal" フック
|       wee-hook-info-hashtable.c | "info_hashtable" フック
|       wee-hook-info.c | "info" フック
|       wee-hook-infolist.c | "infolist" フック
|       wee-hook-line.c | "line" フック
|       wee-hook-modifier.c | "modifier" フック
|       wee-hook-print.c | "print" フック
|       wee-hook-process.c | "process" フック
|       wee-hook-signal.c | "signal" フック
|       wee-hook-timer.c | "timer" フック
| gui/ | バッファ、ウィンドウなどの関数 (全てのインターフェースで利用)
|    gui-bar-item.c | バー要素
|    gui-bar-window.c | バーウィンドウ
|    gui-bar.c | バ
|    gui-buffer.c | バッファ
|    gui-chat.c | チャット関数 (メッセージの表示、...)
|    gui-color.c | 色関数
|    gui-completion.c | コマンドラインの補完
|    gui-cursor.c | カーソルモード (カーソルを自由に移動)
|    gui-filter.c | フィルタ
|    gui-focus.c | フォーカスについての関数 (カーソルモードとマウス用)
|    gui-history.c | コマンドおよびバッファに保存されたテキスト
|    gui-hotlist.c | ホットリスト管理 (活発なバッファのリスト)
|    gui-input.c | 入力関数 (入力バー)
|    gui-key.c | キーボード関数
|    gui-layout.c | レイアウト
|    gui-line.c | バッファ中の行
|    gui-mouse.c | マウス
|    gui-nick.c | ニックネーム関数
|    gui-nicklist.c | バッファのニックネームリスト
|    gui-window.c | ウィンドウ
|    curses/ | curses インターフェース
|       gui-curses-bar-window.c | バーウィンドウへの表示
|       gui-curses-chat.c | チャットエリアへの表示 (メッセージ)
|       gui-curses-color.c | 色関数
|       gui-curses-key.c | キーボード関数 (デフォルトキー、入力の読み取り)
|       gui-curses-main.c | WeeChat メインループ (キーボードやネットワークイベントの待ち受け)
|       gui-curses-mouse.c | マウス
|       gui-curses-term.c | 端末についての関数
|       gui-curses-window.c | ウィンドウ
|       headless/ | ヘッドレスモード (インターフェースなし)
|          main.c | ヘッドレスモード用のエントリポイント
|          ncurses-fake.c | ダミーの ncurses ライブラリ
|       normal/ | curses インターフェース
|          main.c | curses インターフェース用のエントリポイント
|===
[[sources_plugins]]
@@ -223,213 +220,189 @@ WeeChat "core" は以下のディレクトリに配置されています:
[width="100%",cols="2m,3",options="header"]
|===
| パス/ファイル名 | 説明
| plugins/ | プラグインのルートディレクトリ
|    plugin.c | プラグイン管理 (動的 C 言語ライブラリのロード/アンロード)
|    plugin-api.c | プラグイン API の追加関数 (WeeChat コア関数のラッパー)
|    plugin-api-info.c | プラグイン API 用のインフォ/インフォリストに関する追加関数
|    plugin-config.c | プラグイン設定オプション (plugins.conf ファイル)
|    plugin-script.c | スクリプトプラグインの共用関数
|    plugin-script-api.c | スクリプト API 関数: 一部のプラグイン API 関数のラッパー
|    plugin-script-config.c | スクリプトプラグインの設定オプション (python.conf、perl.conf 等のファイル)
|    weechat-plugin.h | WeeChat プラグインと一緒に配布されるヘッダファイル、プラグインのコンパイルに必要
|    alias/ | alias プラグイン
|       alias.c | alias の主要関数
|       alias-command.c | alias コマンド
|       alias-completion.c | alias 補完
|       alias-config.c | alias 設定オプション (alias.conf ファイル)
|       alias-info.c | alias の情報/インフォリスト/hdata
|    spell/ | spell プラグイン
|       spell.c | spell の主関数
|       spell-bar-item.c | spell バー要素
|       spell-command.c | spell コマンド
|       spell-completion.c | spell 補完
|       spell-config.c | spell 設定オプション (spell.conf ファイル)
|       spell-info.c | spell の情報/インフォリスト/hdata
|       spell-speller.c | spell のスペラー管理
|    buflist/ | buflist プラグイン
|       buflist.c | buflist の主要関数
|       buflist-bar-item.c | buflist バー要素
|       buflist-command.c | buflist コマンド
| パス/ファイル名 | 説明
| plugins/ | プラグインのルートディレクトリ
|    plugin.c | プラグイン管理 (動的 C 言語ライブラリのロード/アンロード)
|    plugin-api.c | プラグイン API の追加関数 (WeeChat コア関数のラッパー)
|    plugin-api-info.c | プラグイン API 用のインフォ/インフォリストに関する追加関数
|    plugin-config.c | プラグイン設定オプション (plugins.conf ファイル)
|    plugin-script.c | スクリプトプラグインの共用関数
|    plugin-script-api.c | スクリプト API 関数: 一部のプラグイン API 関数のラッパー
|    plugin-script-config.c | スクリプトプラグインの設定オプション (python.conf、perl.conf 等のファイル)
|    weechat-plugin.h | WeeChat プラグインと一緒に配布されるヘッダファイル、プラグインのコンパイルに必要
|    alias/ | alias プラグイン
|       alias.c | alias の主要関数
|       alias-command.c | alias コマンド
|       alias-completion.c | alias 補完
|       alias-config.c | alias 設定オプション (alias.conf ファイル)
|       alias-info.c | alias の情報/インフォリスト/hdata
|    spell/ | spell プラグイン
|       spell.c | spell の主関数
|       spell-bar-item.c | spell バー要素
|       spell-command.c | spell コマンド
|       spell-completion.c | spell 補完
|       spell-config.c | spell 設定オプション (spell.conf ファイル)
|       spell-info.c | spell の情報/インフォリスト/hdata
|       spell-speller.c | spell のスペラー管理
|    buflist/ | buflist プラグイン
|       buflist.c | buflist の主要関数
|       buflist-bar-item.c | buflist バー要素
|       buflist-command.c | buflist コマンド
|       buflist-config.c | buflist 設定オプション (buflist.conf ファイル)
|       buflist-info.c | buflist の情報/インフォリスト/hdata
|       buflist-mouse.c | buflist マウス動作
|    charset/ | charset プラグイン
|       charset.c | charset 関数
|    exec/ | exec プラグイン
|       exec.c | exec の主要関数
|       exec-buffer.c | exec バッファ
|       exec-command.c | exec コマンド
|       exec-completion.c | exec 補完
|       exec-config.c | exec 設定オプション (exec.conf ファイル)
|    fifo/ | fifo プラグイン
|       fifo.c | fifo の主要関数
|       fifo-command.c | fifo コマンド
|       fifo-config.c | fifo 設定オプション (fifo.conf ファイル)
|       fifo-info.c | fifo の情報/インフォリスト/hdata
|    fset/ | fset プラグイン
|       fset.c | fset の主要関数
|       fset-bar-item.c | fset バー要素
|       fset-buffer.c | fset バッファ
|       fset-command.c | fset コマンド
|       fset-completion.c | fset 補完
|       fset-config.c | fset 設定オプション (fset.conf ファイル)
|       fset-info.c | fset の情報/インフォリスト/hdata
|       fset-mouse.c | fset マウス動作
|       fset-option.c | fset オプション管理
|    guile/ | guile (scheme) プラグイン
|       weechat-guile.c | guile の主要関数 (スクリプトのロード/アンロード、guile コードの実行)
|       weechat-guile-api.c | guile スクリプト作成 API 関数
|    irc/ | IRC (Internet Relay Chat) プラグイン
|       irc.c | IRC の主要関数
|       irc-bar-item.c | IRC バー要素
// TRANSLATION MISSING
|       buflist-completion.c | Buflist completions.
|       buflist-config.c | buflist 設定オプション (buflist.conf ファイル)
|       buflist-info.c | buflist の情報/インフォリスト/hdata
|       buflist-mouse.c | buflist マウス動作
|    charset/ | charset プラグイン
|       charset.c | charset 関数
|    exec/ | exec プラグイン
|       exec.c | exec の主要関数
|       exec-buffer.c | exec バッファ
|       exec-command.c | exec コマンド
|       exec-completion.c | exec 補完
|       exec-config.c | exec 設定オプション (exec.conf ファイル)
|    fifo/ | fifo プラグイン
|       fifo.c | fifo の主要関数
|       fifo-command.c | fifo コマンド
|       fifo-config.c | fifo 設定オプション (fifo.conf ファイル)
|       fifo-info.c | fifo の情報/インフォリスト/hdata
|    fset/ | fset プラグイン
|       fset.c | fset の主要関数
|       fset-bar-item.c | fset バー要素
|       fset-buffer.c | fset バッファ
|       fset-command.c | fset コマンド
|       fset-completion.c | fset 補完
|       fset-config.c | fset 設定オプション (fset.conf ファイル)
|       fset-info.c | fset の情報/インフォリスト/hdata
|       fset-mouse.c | fset マウス動作
|       fset-option.c | fset オプション管理
|    guile/ | guile (scheme) プラグイン
|       weechat-guile.c | guile の主要関数 (スクリプトのロード/アンロード、guile コードの実行)
|       weechat-guile-api.c | guile スクリプト作成 API 関数
|    irc/ | IRC (Internet Relay Chat) プラグイン
|       irc.c | IRC の主要関数
|       irc-bar-item.c | IRC バー要素
|       irc-batch.c | IRC batched events.
|       irc-buffer.c | IRC バッファ
|       irc-channel.c | IRC チャンネル
|       irc-color.c | IRC 色
|       irc-command.c | IRC コマンド
|       irc-completion.c | IRC 補完
|       irc-config.c | IRC 設定オプション (irc.conf ファイル)
|       irc-ctcp.c | IRC CTCP
|       irc-debug.c | IRC デバッグ関数
|       irc-ignore.c | IRC 無視
|       irc-info.c | IRC の情報/インフォリスト/hdata
|       irc-input.c | コマンドおよびテキストの入力
// TRANSLATION MISSING
|       irc-batch.c | IRC batched events.
|       irc-buffer.c | IRC バッファ
|       irc-channel.c | IRC チャンネル
|       irc-color.c | IRC
|       irc-command.c | IRC コマンド
|       irc-completion.c | IRC 補完
|       irc-config.c | IRC 設定オプション (irc.conf ファイル)
|       irc-ctcp.c | IRC CTCP
|       irc-debug.c | IRC バッグ関数
|       irc-ignore.c | IRC 無視
|       irc-info.c | IRC の情報/インフォリスト/hdata
|       irc-input.c | コマンドおよびテキストの入力
|       irc-join.c | Functions for list of channels to join.
|       irc-message.c | IRC メッセージを操作する関数
|       irc-mode.c | チャンネルおよびニックネームのモードを操作する関数
|       irc-modelist.c | IRC チャンネルモードリスト (+b、+e、+I、...).
|       irc-msgbuffer.c | IRC メッセージを送るバッファ
|       irc-nick.c | IRC ニックネーム
|       irc-notify.c | IRC 通知リスト
|       irc-protocol.c | IRC プロトコル (RFC 1459/2810/2811/2812/2813/7194)
|       irc-raw.c | IRC バッファ
|       irc-redirect.c | IRC コマンド出力のリダイレクト
|       irc-sasl.c | IRC サーバに対する SASL 認証
|       irc-server.c | IRC サーバとの入出力通信
// TRANSLATION MISSING
|       irc-join.c | Functions for list of channels to join.
|       irc-tag.c | Functions to manipulate IRC message tags.
// TRANSLATION MISSING
|       irc-list.c | Buffer for reply to /list command.
|       irc-message.c | IRC メッセージを操作する関数
|       irc-mode.c | チャンネルおよびニックネームのモードを操作する関数
|       irc-modelist.c | IRC チャンネルモードリスト (+b、+e、+I、...).
|       irc-msgbuffer.c | IRC メッセージを送るバッファ
|       irc-nick.c | IRC ニックネーム
|       irc-notify.c | IRC 通知リスト
|       irc-protocol.c | IRC プロトコル (RFC 1459/2810/2811/2812/2813/7194)
|       irc-raw.c | IRC 生バッファ
|       irc-redirect.c | IRC コマンド出力のリダイレクト
|       irc-sasl.c | IRC サーバに対する SASL 認証
|       irc-server.c | IRC サーバとの入出力通信
|       irc-typing.c | Typing status.
|       irc-upgrade.c | WeeChat をアップグレードする際の IRC データの保存およびロード
|    javascript/ | JavaScript プラグイン
|       weechat-js.cpp | JavaScript の主要関数 (スクリプトのロード/アンロード、JavaScript コードの実行)
|       weechat-js-api.cpp | JavaScript スクリプト作成 API 関数
|       weechat-js-v8.cpp | JavaScript v8 関数
|    logger/ | logger プラグイン
|       logger.c | logger の主要関数
// TRANSLATION MISSING
|       irc-tag.c | Functions to manipulate IRC message tags.
|       logger-backlog.c | Logger backlog functions.
|       logger-buffer.c | logger バッファリスト管理
|       logger-command.c | logger コマンド
|       logger-config.c | logger 設定オプション (logger.conf ファイル)
|       logger-info.c | logger の情報/インフォリスト/hdata
|       logger-tail.c | ファイル末尾の行を返す
|    lua/ | lua プラグイン
|       weechat-lua.c | lua の主要関数 (スクリプトのロード/アンロード、lua コードの実行)
|       weechat-lua-api.c | lua スクリプト作成 API 関数
|    perl/ | perl プラグイン
|       weechat-perl.c | perl の主要関数 (スクリプトのロード/アンロード、perl コードの実行)
|       weechat-perl-api.c | perl スクリプト作成 API 関数
|    php/ | php プラグイン
|       weechat-php.c | php の主要関数 (スクリプトのロード/アンロード、php コードの実行)
|       weechat-php-api.c | php スクリプト作成 API 関数
|    python/ | python プラグイン
|       weechat-python.c | python の主要関数 (スクリプトのロード/アンロード、python コードの実行)
|       weechat-python-api.c | python スクリプト作成 API 関数
|    relay/ | relay プラグイン (IRC プロキシとリモートインターフェースへの中継)
|       relay.c | relay の主要関数
// TRANSLATION MISSING
|       irc-typing.c | Typing status.
|       irc-upgrade.c | WeeChat をアップグレードする際の IRC データの保存およびロード
|    javascript/ | JavaScript プラグイン
|       weechat-js.cpp | JavaScript の主要関数 (スクリプトのロード/アンロード、JavaScript コードの実行)
|       weechat-js-api.cpp | JavaScript スクリプト作成 API 関数
|       weechat-js-v8.cpp | JavaScript v8 関数
|    logger/ | logger プラグイン
|       logger.c | logger の主要関数
|       relay-auth.c | Clients authentification.
|       relay-buffer.c | relay バッファ
|       relay-client.c | relay クライアント
|       relay-command.c | relay コマンド
|       relay-completion.c | relay 補完
|       relay-config.c | relay 設定オプション (relay.conf ファイル)
|       relay-info.c | relay の情報/インフォリスト/hdata
|       relay-network.c | relay 用のネットワーク関数
|       relay-raw.c | relay 生バッファ
|       relay-server.c | relay サーバ
|       relay-upgrade.c | WeeChat をアップグレードする際にデータを保存/回復
|       relay-websocket.c | リレー用の websocket サーバ関数 (RFC 6455)
|       irc/ | IRC プロキシ
|          relay-irc.c | IRC プロキシの主要関数
|       weechat/ | リモートインターフェースへの中継
|          relay-weechat.c | リモートインターフェースへの中継 (主要関数)
|          relay-weechat-msg.c | クライアントにバイナリメッセージを送信
|          relay-weechat-nicklist.c | ニックネームリスト関数
|          relay-weechat-protocol.c | クライアントからのコマンドを読み取る
|    ruby/ | ruby プラグイン
|       weechat-ruby.c | ruby の主要関数 (スクリプトのロード/アンロード、ruby コードの実行)
|       weechat-ruby-api.c | ruby スクリプト作成 API 関数
|    script/ | スクリプトマネージャ
|       script.c | スクリプトマネージャの主要関数
|       script-action.c | スクリプトに対する操作 (ロード/アンロード、インストール/削除、...)
|       script-buffer.c | スクリプトマネージャ用のバッファ
|       script-command.c | スクリプトマネージャ用のコマンド
|       script-completion.c | スクリプトマネージャ用の補完
|       script-config.c | スクリプトマネージャ用の設定オプション (script.conf ファイル)
|       script-info.c | スクリプトマネージャの情報/インフォリスト/hdata
|       script-mouse.c | スクリプトマネージャのマウス動作
|       script-repo.c | リポジトリファイルのダウンロードとロード
|    tcl/ | tcl プラグイン
|       weechat-tcl.c | tcl の主要関数 (スクリプトのロード/アンロード、tcl コードの実行)
|       weechat-tcl-api.c | tcl スクリプト作成 API 関数
|    trigger/ | trigger プラグイン
|       trigger.c | trigger の主要関数
|       trigger-buffer.c | trigger バッファ
|       trigger-callback.c | trigger コールバック
|       trigger-command.c | trigger コマンド
|       trigger-completion.c | trigger 補完
|       trigger-config.c | trigger 設定オプション (trigger.conf ファイル)
// TRANSLATION MISSING
|       logger-backlog.c | Logger backlog functions.
|       logger-buffer.c | logger バッファリスト管理
|       logger-command.c | logger コマンド
|       logger-config.c | logger 設定オプション (logger.conf ファイル)
|       logger-info.c | logger の情報/インフォリスト/hdata
|       logger-tail.c | ファイル末尾の行を返す
|    lua/ | lua プラグイン
|       weechat-lua.c | lua の主要関数 (スクリプトのロード/アンロード、lua コードの実行)
|       weechat-lua-api.c | lua スクリプト作成 API 関数
|    perl/ | perl プラグイン
|       weechat-perl.c | perl の主要関数 (スクリプトのロード/アンロード、perl コードの実行)
|       weechat-perl-api.c | perl スクリプト作成 API 関数
|    php/ | php プラグイン
|       weechat-php.c | php の主要関数 (スクリプトのロード/アンロード、php コードの実行)
|       weechat-php-api.c | php スクリプト作成 API 関数
|    python/ | python プラグイン
|       weechat-python.c | python の主要関数 (スクリプトのロード/アンロード、python コードの実行)
|       weechat-python-api.c | python スクリプト作成 API 関数
|    relay/ | relay プラグイン (IRC プロキシとリモートインターフェースへの中継)
|       relay.c | relay の主要関数
|    typing/ | Typing plugin.
// TRANSLATION MISSING
|       relay-auth.c | Clients authentification.
|       relay-buffer.c | relay バッファ
|       relay-client.c | relay クライアント
|       relay-command.c | relay コマンド
|       relay-completion.c | relay 補完
|       relay-config.c | relay 設定オプション (relay.conf ファイル)
|       typing.c | Main typing functions.
// TRANSLATION MISSING
|       relay-http.c | HTTP functions.
|       relay-info.c | relay の情報/インフォリスト/hdata
|       relay-network.c | relay 用のネットワーク関数
|       relay-raw.c | relay 生バッファ
|       typing-bar-item.c | Typing bar items.
// TRANSLATION MISSING
|       relay-remote.c | Relay remote.
|       relay-server.c | relay サーバ
|       relay-upgrade.c | WeeChat をアップグレードする際にデータを保存/回復
|       relay-websocket.c | リレー用の websocket サーバ関数 (RFC 6455)
|       typing-config.c | Typing config options (file typing.conf).
// TRANSLATION MISSING
|       api/ | Relay for remote interfaces (using HTTP REST API).
// TRANSLATION MISSING
|          relay-api.c | Main API functions for HTTP REST API.
// TRANSLATION MISSING
|          relay-api-msg.c | Send JSON messages to clients.
// TRANSLATION MISSING
|          relay-api-protocol.c | HTTP REST API protocol.
// TRANSLATION MISSING
// TRANSLATION MISSING
|          remote/ | Relay remote functions, specific to API.
// TRANSLATION MISSING
|             relay-remote-event.c | Process events received from relay remote.
// TRANSLATION MISSING
|             relay-remote-network.c | Network functions for relay remote.
|       irc/ | IRC プロキシ
|          relay-irc.c | IRC プロキシの主要関数
// TRANSLATION MISSING
|       weechat/ | Relay for remote interfaces (using "weechat" binary protocol).
|          relay-weechat.c | リモートインターフェースへの中継 (主要関数)
|          relay-weechat-msg.c | クライアントにバイナリメッセージを送信
|          relay-weechat-nicklist.c | ニックネームリスト関数
|          relay-weechat-protocol.c | クライアントからのコマンドを読み取る
|    ruby/ | ruby プラグイン
|       weechat-ruby.c | ruby の主要関数 (スクリプトのロード/アンロード、ruby コードの実行)
|       weechat-ruby-api.c | ruby スクリプト作成 API 関数
|    script/ | スクリプトマネージャ
|       script.c | スクリプトマネージャの主要関数
|       script-action.c | スクリプトに対する操作 (ロード/アンロード、インストール/削除、...)
|       script-buffer.c | スクリプトマネージャ用のバッファ
|       script-command.c | スクリプトマネージャ用のコマンド
|       script-completion.c | スクリプトマネージャ用の補完
|       script-config.c | スクリプトマネージャ用の設定オプション (script.conf ファイル)
|       script-info.c | スクリプトマネージャの情報/インフォリスト/hdata
|       script-mouse.c | スクリプトマネージャのマウス動作
|       script-repo.c | リポジトリファイルのダウンロードとロード
|    tcl/ | tcl プラグイン
|       weechat-tcl.c | tcl の主要関数 (スクリプトのロード/アンロード、tcl コードの実行)
|       weechat-tcl-api.c | tcl スクリプト作成 API 関数
|    trigger/ | trigger プラグイン
|       trigger.c | trigger の主要関数
|       trigger-buffer.c | trigger バッファ
|       trigger-callback.c | trigger コールバック
|       trigger-command.c | trigger コマンド
|       trigger-completion.c | trigger 補完
|       trigger-config.c | trigger 設定オプション (trigger.conf ファイル)
// TRANSLATION MISSING
|    typing/ | Typing plugin.
// TRANSLATION MISSING
|       typing.c | Main typing functions.
// TRANSLATION MISSING
|       typing-bar-item.c | Typing bar items.
// TRANSLATION MISSING
|       typing-config.c | Typing config options (file typing.conf).
// TRANSLATION MISSING
|       typing-status.c | Messages typing status on buffers.
|    xfer/ | xfer プラグイン (IRC DCC ファイル/チャット)
|       xfer.c | xfer の主要関数
|       xfer-buffer.c | xfer バッファ
|       xfer-chat.c | xfer DCC チャット
|       xfer-command.c | xfer コマンド
|       xfer-completion.c | xfer 補完
|       xfer-config.c | xfer 設定オプション (xfer.conf ファイル)
|       xfer-dcc.c | DCC ファイル転送
|       xfer-file.c | xfer のファイル関数
|       xfer-info.c | xfer の情報/インフォリスト/hdata
|       xfer-network.c | xfer のネットワーク関数
|       xfer-upgrade.c | WeeChat をアップグレードする際の xfer データの保存および回復
|       typing-status.c | Messages typing status on buffers.
|    xfer/ | xfer プラグイン (IRC DCC ファイル/チャット)
|       xfer.c | xfer の主要関数
|       xfer-buffer.c | xfer バッファ
|       xfer-chat.c | xfer DCC チャット
|       xfer-command.c | xfer コマンド
|       xfer-completion.c | xfer 補完
|       xfer-config.c | xfer 設定オプション (xfer.conf ファイル)
|       xfer-dcc.c | DCC ファイル転送
|       xfer-file.c | xfer のファイル関数
|       xfer-info.c | xfer の情報/インフォリスト/hdata
|       xfer-network.c | xfer のネットワーク関数
|       xfer-upgrade.c | WeeChat をアップグレードする際の xfer データの保存および回復
|===
[[sources_tests]]
@@ -437,202 +410,125 @@ WeeChat "core" は以下のディレクトリに配置されています:
[width="100%",cols="2m,3",options="header"]
|===
| パス/ファイル名 | 説明
| tests/ | テスト用のルートディレクトリ
|    tests.cpp | 全テストの実行時に使われるプログラム
| パス/ファイル名 | 説明
| tests/ | テスト用のルートディレクトリ
|    tests.cpp | 全テストの実行時に使われるプログラム
// TRANSLATION MISSING
|    tests-record.cpp | Record and search in messages displayed.
|    scripts/ | スクリプト API テスト用のルートディレクトリ
|       test-scripts.cpp | スクリプト API テストの実行時に使われるプログラム
|       python/ | スクリプト API テストを生成、実行する Python スクリプト
|          testapigen.py | スクリプト API のテスト時にすべての言語に関するスクリプトを生成する Python スクリプト
|          testapi.py | スクリプト API テスト時に使われる Python スクリプト (スクリプト testapigen.py から使われます)
|          unparse.py | Python コードを別の言語に変換 (スクリプト testapigen.py から使われます)
|    unit/ | 単体テスト用のルートディレクトリ
|       test-plugins.cpp | テスト: プラグイン
|    tests-record.cpp | Record and search in messages displayed.
|    scripts/ | スクリプト API テスト用のルートディレクトリ
|       test-scripts.cpp | スクリプト API テストの実行時に使われるプログラム
|       python/ | スクリプト API テストを生成、実行する Python スクリプト
|          testapigen.py | スクリプト API のテスト時にすべての言語に関するスクリプトを生成する Python スクリプト
|          testapi.py | スクリプト API テスト時に使われる Python スクリプト (スクリプト testapigen.py から使われます)
|          unparse.py | Python コードを別の言語に変換 (スクリプト testapigen.py から使われます)
|    unit/ | 単体テスト用のルートディレクトリ
|       test-plugins.cpp | テスト: プラグイン
|       core/ | core 向け単体テスト用のルートディレクトリ
|          test-core-arraylist.cpp | テスト: 配列リスト
// TRANSLATION MISSING
|       test-plugin-api-info.cpp | Tests: plugin API info functions.
|          test-core-calc.cpp | Tests: calculation of expressions.
// TRANSLATION MISSING
|       test-plugin-config.cpp | Tests: plugin config functions.
|       core/ | core 向け単体テスト用のルートディレクトリ
|          test-core-arraylist.cpp | テスト: 配列リスト
|          test-core-command.cpp | Tests: commands.
// TRANSLATION MISSING
|          test-core-calc.cpp | Tests: calculation of expressions.
|          test-core-config-file.cpp | Tests: configuration files.
// TRANSLATION MISSING
|          test-core-command.cpp | Tests: commands.
|          test-core-crypto.cpp | Tests: cryptographic functions.
// TRANSLATION MISSING
|          test-core-config-file.cpp | Tests: configuration files.
|          test-core-dir.cpp | Tests: directory/file functions.
|          test-core-eval.cpp | テスト: 式の評価
|          test-core-hashtble.cpp | テスト: ハッシュテーブル
|          test-core-hdata.cpp | テスト: hdata
|          test-core-hook.cpp | テスト: フック
|          test-core-infolist.cpp | テスト: インフォリスト
|          test-core-list.cpp | テスト: リスト
// TRANSLATION MISSING
|          test-core-crypto.cpp | Tests: cryptographic functions.
|          test-core-network.cpp | Tests: network functions.
|          test-core-secure.cpp | テスト: データ保護
// TRANSLATION MISSING
|          test-core-dir.cpp | Tests: directory/file functions.
|          test-core-eval.cpp | テスト: 式の評価
|          test-core-hashtble.cpp | テスト: ハッシュテーブル
|          test-core-hdata.cpp | テスト: hdata
|          test-core-hook.cpp | テスト: フック
|          test-core-infolist.cpp | テスト: インフォリスト
|          test-core-list.cpp | テスト: リスト
|          test-core-signal.cpp | テスト: signals.
|          test-core-string.cpp | テスト: 文字列
|          test-core-url.cpp | テスト: URL
|          test-core-utf8.cpp | テスト: UTF-8
|          test-core-util.cpp | テスト: ユーティリティ関数
|       gui/ | インターフェースの単体テストを収める最上位ディレクトリ
// TRANSLATION MISSING
|          test-core-network.cpp | Tests: network functions.
|          test-core-secure.cpp | テスト: データ保護
|          test-gui-bar-window.cpp | Tests: bar window functions.
// TRANSLATION MISSING
|          test-core-signal.cpp | テスト: signals.
|          test-core-string.cpp | テスト: 文字列
|          test-core-url.cpp | テスト: URL
|          test-core-utf8.cpp | テスト: UTF-8
|          test-core-util.cpp | テスト: ユーティリティ関数
|          test-gui-buffer.cpp | Tests: buffer functions.
// TRANSLATION MISSING
|          test-core-sys.cpp | Tests: system functions.
|          test-gui-chat.cpp | Tests: chat functions.
// TRANSLATION MISSING
|          hook/ | Root of unit tests for hooks.
|          test-gui-color.cpp | Tests: colors.
// TRANSLATION MISSING
|             test-hook-command.cpp | Tests: hooks "command".
|          test-gui-filter.cpp | Tests: filters.
// TRANSLATION MISSING
|             test-hook-command-run.cpp | Tests: hooks "command_run".
|          test-gui-input.cpp | Tests: input functions.
// TRANSLATION MISSING
|             test-hook-completion.cpp | Tests: hooks "completion".
|          test-gui-key.cpp | Tests: keys.
|          test-gui-line.cpp | テスト: 行
// TRANSLATION MISSING
|             test-hook-config.cpp | Tests: hooks "config".
|          test-gui-nick.cpp | テスト: nicks
|       plugins/ | プラグインの単体テストを収める最上位ディレクトリ
|          irc/ | IRC プラグインの単体テストを収める最上位ディレクトリ
// TRANSLATION MISSING
|             test-hook-connect.cpp | Tests: hooks "connect".
|             test-irc-batch.cpp | Tests: IRC batched events.
// TRANSLATION MISSING
|             test-hook-fd.cpp | Tests: hooks "fd".
|             test-irc-buffer.cpp | Tests: IRC buffers.
// TRANSLATION MISSING
|             test-hook-focus.cpp | Tests: hooks "focus".
|             test-irc-channel.cpp | Tests: IRC channels.
|             test-irc-color.cpp | Tests: IRC colors.
|             test-irc-config.cpp | テスト: IRC 設定
// TRANSLATION MISSING
|             test-hook-hdata.cpp | Tests: hooks "hdata".
|             test-irc-ignore.cpp | Tests: IRC ignores.
// TRANSLATION MISSING
|             test-hook-hsignal.cpp | Tests: hooks "hsignal".
|             test-irc-join.cpp | Tests: IRC join functions.
// TRANSLATION MISSING
|             test-hook-info-hashtable.cpp | Tests: hooks "info_hashtable".
|             test-irc-message.cpp | Tests: IRC messages.
// TRANSLATION MISSING
|             test-hook-info.cpp | Tests: hooks "info".
|             test-irc-mode.cpp | Tests: IRC modes.
// TRANSLATION MISSING
|             test-hook-infolist.cpp | Tests: hooks "infolist".
|             test-irc-nick.cpp | Tests: IRC nicks.
|             test-irc-protocol.cpp | テスト: IRC プロトコル
// TRANSLATION MISSING
|             test-hook-line.cpp | Tests: hooks "line".
|             test-irc-sasl.cpp | Tests: SASL authentication with IRC protocol.
// TRANSLATION MISSING
|             test-hook-modifier.cpp | Tests: hooks "modifier".
|             test-irc-server.cpp | Tests: IRC server.
// TRANSLATION MISSING
|             test-hook-print.cpp | Tests: hooks "print".
|             test-irc-tag.cpp | Tests: IRC message tags.
// TRANSLATION MISSING
|             test-hook-process.cpp | Tests: hooks "process".
|          logger/ | Root of unit tests for logger plugin.
// TRANSLATION MISSING
|             test-hook-signal.cpp | Tests: hooks "signal".
|             test-logger.cpp | Tests: logger.
// TRANSLATION MISSING
|             test-hook-timer.cpp | Tests: hooks "timer".
|             test-logger-backlog.cpp | Tests: logger backlog.
// TRANSLATION MISSING
|             test-hook-url.cpp | Tests: hooks "url".
|       gui/ | インターフェースの単体テストを収める最上位ディレクトリ
|             test-logger-tail.cpp | Tests: logger tail functions.
// TRANSLATION MISSING
|          test-gui-bar-window.cpp | Tests: bar window functions.
|          trigger/ | Root of unit tests for trigger plugin.
// TRANSLATION MISSING
|          test-gui-buffer.cpp | Tests: buffer functions.
|             test-trigger.cpp | Tests: triggers.
// TRANSLATION MISSING
|          test-gui-chat.cpp | Tests: chat functions.
|             test-trigger-config.cpp | Tests: trigger configuration.
// TRANSLATION MISSING
|          test-gui-color.cpp | Tests: colors.
|          typing/ | Root of unit tests for typing plugin.
// TRANSLATION MISSING
|          test-gui-filter.cpp | Tests: filters.
|             test-typing.cpp | Tests: typing.
// TRANSLATION MISSING
|          test-gui-hotlist.cpp | Tests: hotlist functions.
|             test-typing-status.cpp | Tests: typing status.
// TRANSLATION MISSING
|          test-gui-input.cpp | Tests: input functions.
|          relay/ | Root of unit tests for Relay plugin.
// TRANSLATION MISSING
|          test-gui-key.cpp | Tests: keys.
|          test-gui-line.cpp | テスト: 行
|             test-relay-auth.cpp | Tests: clients authentication.
// TRANSLATION MISSING
|          test-gui-nick.cpp | テスト: nicks
|             irc/ | Root of unit tests for Relay "irc" protocol.
// TRANSLATION MISSING
|          test-gui-nicklist.cpp | Tests: nicklist functions.
|                test-relay-irc.cpp | Tests: Relay "irc" protocol.
// TRANSLATION MISSING
|          curses/ | Root of unit tests for Curses interface.
|          xfer/ | Root of unit tests for Xfer plugin.
// TRANSLATION MISSING
|             test-gui-curses-mouse.cpp | Tests: mouse (Curses interface).
|       plugins/ | プラグインの単体テストを収める最上位ディレクトリ
|          irc/ | IRC プラグインの単体テストを収める最上位ディレクトリ
|             test-xfer-file.cpp | Tests: file functions.
// TRANSLATION MISSING
|             test-irc-batch.cpp | Tests: IRC batched events.
// TRANSLATION MISSING
|             test-irc-buffer.cpp | Tests: IRC buffers.
// TRANSLATION MISSING
|             test-irc-channel.cpp | Tests: IRC channels.
|             test-irc-color.cpp | Tests: IRC colors.
// TRANSLATION MISSING
|             test-irc-command.cpp | Tests: IRC commands.
|             test-irc-config.cpp | テスト: IRC 設定
// TRANSLATION MISSING
|             test-irc-ctcp.cpp | Tests: IRC CTCP.
// TRANSLATION MISSING
|             test-irc-ignore.cpp | Tests: IRC ignores.
// TRANSLATION MISSING
|             test-irc-info.cpp | Tests: IRC info.
// TRANSLATION MISSING
|             test-irc-join.cpp | Tests: IRC join functions.
// TRANSLATION MISSING
|             test-irc-list.cpp | Tests: IRC buffer for reply to /list command.
// TRANSLATION MISSING
|             test-irc-message.cpp | Tests: IRC messages.
// TRANSLATION MISSING
|             test-irc-mode.cpp | Tests: IRC modes.
// TRANSLATION MISSING
|             test-irc-nick.cpp | Tests: IRC nicks.
|             test-irc-protocol.cpp | テスト: IRC プロトコル
// TRANSLATION MISSING
|             test-irc-sasl.cpp | Tests: SASL authentication with IRC protocol.
// TRANSLATION MISSING
|             test-irc-server.cpp | Tests: IRC server.
// TRANSLATION MISSING
|             test-irc-tag.cpp | Tests: IRC message tags.
// TRANSLATION MISSING
|          logger/ | Root of unit tests for logger plugin.
// TRANSLATION MISSING
|             test-logger.cpp | Tests: logger.
// TRANSLATION MISSING
|             test-logger-backlog.cpp | Tests: logger backlog.
// TRANSLATION MISSING
|             test-logger-tail.cpp | Tests: logger tail functions.
// TRANSLATION MISSING
|          trigger/ | Root of unit tests for trigger plugin.
// TRANSLATION MISSING
|             test-trigger.cpp | Tests: triggers.
// TRANSLATION MISSING
|             test-trigger-config.cpp | Tests: trigger configuration.
// TRANSLATION MISSING
|          typing/ | Root of unit tests for typing plugin.
// TRANSLATION MISSING
|             test-typing.cpp | Tests: typing.
// TRANSLATION MISSING
|             test-typing-status.cpp | Tests: typing status.
// TRANSLATION MISSING
|          relay/ | Root of unit tests for Relay plugin.
// TRANSLATION MISSING
|             test-relay-auth.cpp | Tests: clients authentication.
// TRANSLATION MISSING
|             test-relay-http.cpp | Tests: HTTP functions for Relay plugin.
// TRANSLATION MISSING
|             test-relay-remote.cpp | Tests: remote functions for Relay plugin.
// TRANSLATION MISSING
|             test-relay-websocket.cpp | Tests: websocket functions for Relay plugin.
// TRANSLATION MISSING
|             api/ | Root of unit tests for Relay "api" protocol.
// TRANSLATION MISSING
|                test-relay-api.cpp | Tests: Relay "api" protocol: general functions.
// TRANSLATION MISSING
|                test-relay-api-msg.cpp | Tests: Relay "api" protocol: messages.
// TRANSLATION MISSING
|                test-relay-api-protocol.cpp | Tests: Relay "api" protocol: protocol.
// TRANSLATION MISSING
|             irc/ | Root of unit tests for Relay "irc" protocol.
// TRANSLATION MISSING
|                test-relay-irc.cpp | Tests: Relay "irc" protocol.
// TRANSLATION MISSING
|          xfer/ | Root of unit tests for Xfer plugin.
// TRANSLATION MISSING
|             test-xfer-file.cpp | Tests: file functions.
// TRANSLATION MISSING
|             test-xfer-network.cpp | Tests: network functions.
|             test-xfer-network.cpp | Tests: network functions.
|===
[[documentation_translations]]
@@ -692,7 +588,7 @@ WeeChat とプラグインの翻訳は gettext で行います、ファイルは
/*
* weechat.c - core functions for WeeChat
*
* Copyright (C) 2024 Your Name <your@email.com>
* Copyright (C) 2023 Your Name <your@email.com>
*
* This file is part of WeeChat, the extensible chat client.
*
@@ -716,8 +612,7 @@ WeeChat とプラグインの翻訳は gettext で行います、ファイルは
C 言語のコードを書く際には以下の基本的なルールを *必ず* 守ってください。:
// TRANSLATION MISSING
* Use 4 spaces for indentation (no tabs).
* インデントは空白文字を 4 個使ってください。タブ文字を使わないでください、タブ文字は良くありません。
* 読みやすくする必要がある場合を除いて、1
行は 80 文字以内に収めてください。
* コメントは `+/* comment */+` のようにしてください (`+// comment+` のような C99 スタイルのコメントは使わないでください)。
@@ -930,7 +825,7 @@ irc プラグインの _irc.c_ など。
[width="100%",cols="2m,3",options="header"]
|===
| ディレクトリ | ファイル
| src/core/ | weechat.c、core-backtrace.c、core-command.c、...
| src/core/ | weechat.c、wee-backtrace.c、wee-command.c、...
| src/gui/ | gui-bar.c、gui-bar-item.c、gui-bar-window.c、...
| src/gui/curses/ | gui-curses-bar.c、gui-curses-bar-window.c、gui-curses-chat.c、...
| src/plugins/ | plugin.c、plugin-api.c、plugin-api-info.c、plugin-config.c、plugin-script.c、...
@@ -939,7 +834,7 @@ irc プラグインの _irc.c_ など。
|===
C 言語ファイルのヘッダはファイルと同じ名前です、例えばファイル
_core-command.c_ のヘッダファイルは _core-command.h_ です
_wee-command.c_ のヘッダファイルは _wee-command.h_ です
[[naming_convention_structures]]
==== 構造体
+23 -84
View File
@@ -598,33 +598,6 @@ macOS のターミナル.app を使っている場合、設定メニューのキ
キーを使用」を有効化してください。こうすることで、kbd:[Option]
キーをメタキーとして使うことが可能です。
// TRANSLATION MISSING
[[enter_key]]
=== Some keys including Enter are not working, why?
If you run a WeeChat < 4.0.0 with configuration files created by any
version ≥ 4.0.0, the keys names become invalid and many keys won't work at all. +
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf
and start WeeChat again: all default keys will be created.
// TRANSLATION MISSING
[[key_f11]]
=== Key F11 maximizes the terminal window, how can I scroll up the nicklist?
The key kbd:[F11] is commonly used by terminals to maximize the window, and
kbd:[F11]/kbd:[F12] are the default keys in WeeChat to scroll the nicklist.
You can bind other keys, for example kbd:[Shift+F11] and kbd:[Shift+F12],
with WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Other solution is to enable mouse (key: kbd:[Alt+m]) and scroll with the mouse
wheel (see also questions about <<mouse,mouse>>).
[[customize_key_bindings]]
=== どうすればキー割り当てをカスタマイズできますか。
@@ -653,13 +626,6 @@ wheel (see also questions about <<mouse,mouse>>).
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
// TRANSLATION MISSING
For an easy jump to buffers, you can also install the _go.py_ script:
----
/script install go.py
----
[[global_history]]
=== どうすればグローバルヒストリを (バッファヒストリの代わりに) 上下矢印キーで使えますか。
@@ -980,22 +946,34 @@ link:weechat_user.ja.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^
buffer property to set the max hotlist level for some nicks, per buffer,
or per group of buffers (like IRC servers).
ハイライトを無効化するだけなら、このプロパティを 2 に設定してください.
// TRANSLATION MISSING
For the current buffer:
ハイライトを無効化するだけなら、このプロパティを 2 に設定してください:
----
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----
// TRANSLATION MISSING
For all channels on server "libera":
このバッファプロパティは設定に保存されません。このバッファプロパティを自動的に適用するには、_buffer_autoset.py_
スクリプトが必要です:
----
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
/script install buffer_autoset.py
----
例えば、IRC サーバ libera のチャンネル #weechat に参加している "mike"
の発言に対してハイライトを永久的に無効化するには以下のように設定します:
----
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
この設定をすべての libera サーバのバッファに対して適用するには以下のように設定します:
----
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
これ以外の例は `+/help buffer_autoset+` を参照してください。
[[irc_target_buffer]]
=== どうすればマージされたバッファ内であるコマンドを発行するターゲットバッファを変更できますか。
@@ -1126,10 +1104,7 @@ spell プラグインをリロードしてください:
以下に挙げる <<memory_usage,memory>> に関するヒントに従ってください:
// TRANSLATION MISSING
* "nicklist" バーを非表示にする: `/bar hide nicklist` (key: kbd:[Alt+Shift+N]).
// TRANSLATION MISSING
* Disable "buflist": `/buflist disable` (key: kbd:[Alt+Shift+B]).
* "nicklist" バーを非表示にする: `/bar hide nicklist`
* ステータスバー時間に秒の表示を止める:
`+/set weechat.look.item_time_format "%H:%M"+` (これはデフォルト値です)
* コマンドライン内の単語スペルミスのリアルタイムチェックを無効にする (有効にしていた場合):
@@ -1151,21 +1126,14 @@ IRC の退出および終了メッセージを無効化します:
----
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
----
// TRANSLATION MISSING
With WeeChat < 4.1.0, other CTCP queries were replied by default and must be
disabled as well:
----
/set irc.ctcp.finger ""
/set irc.ctcp.userinfo ""
----
"xfer" プラグイン (これは IRC DCC 機能を使うためのものです) をアンロードして自動ロードを無効化します:
----
@@ -1201,35 +1169,6 @@ stored in _sec.conf_ with the `/secure` command).
設定ファイルに関する詳しい情報はlink:weechat_user.ja.html#files_and_directories[ユーザーズガイド / ファイルとディレクトリ ^↗^^]を参照してください。
// TRANSLATION MISSING
[[move_to_another_device]]
=== I want to move my WeeChat to another device and keep my config, what should I copy?
First check directories used by WeeChat with this command: `/debug dirs`. +
Directories home/config and home/data must be copied (all files and sub-directories).
For example if you're using XDG directories (default with WeeChat ≥ 3.2),
the directories should be `$HOME/.config/weechat` and `$HOME/.local/share/weechat`. +
If you're using a single directory (default with WeeChat < 3.2), the directory
should be `$HOME/.weechat`.
[IMPORTANT]
The WeeChat version on the new device must be greater than or equal to the version
on the initial device. +
Downgrading WeeChat configuration is *NOT SUPPORTED* and can break it,
leading to unusable WeeChat.
Steps:
. Quit Weechat: `/quit` (or `/upgrade -quit` if you want to resume the session,
which includes content of all buffers).
. Copy all directories, sub-directories and files to the new device, keeping
same names and permissions.
. Optional: copy any file outside these directories that you refer to in your
configuration (it's not recommended to use files outside WeeChat directories).
. Start WeeChat on the new device: `weechat` (or `weechat --upgrade` if you
saved the session).
[[development]]
== 開発
File diff suppressed because it is too large Load Diff
+10 -28
View File
@@ -507,9 +507,7 @@ hda:
'buffer': 'ptr',
'y': 'int',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed', 'int',
'str_time': 'str',
'tags_count': 'int',
'tags_array': 'arr',
@@ -527,9 +525,7 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404926
date_usec: 118712
date_printed: 1588404926
date_usec_printed: 118712
str_time: 'F@0025209F@0024535F@0024026'
tags_count: 0
tags_array: []
@@ -545,9 +541,7 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404930
date_usec: 25
date_printed: 1588404930
date_usec_printed: 25
str_time: 'F@0025209F@0024535F@0024030'
tags_count: 0
tags_array: []
@@ -728,7 +722,6 @@ inl:
nicklist_visible_count: 0
title: 'WeeChat 2.9-dev (C) 2003-2020 - https://weechat.org/'
input: 1
input_get_any_user_data: 0
input_get_unknown_commands: 0
input_get_empty: 0
input_multiline: 0
@@ -740,14 +733,11 @@ inl:
input_buffer_1st_display: 0
num_history: 0
text_search: 0
text_search_direction: 0
text_search_exact: 0
text_search_regex: 0
text_search_regex_compiled: '0x0'
text_search_where: 0
text_search_history: 0
text_search_found: 0
text_search_ptr_history: '0x0'
text_search_input: None
highlight_words: None
highlight_disable_regex: None
@@ -2092,21 +2082,17 @@ hdata として送られるデータ:
[width="100%",cols="3m,2,10",options="header"]
|===
| 名前 | 型 | 説明
| buffer | pointer | バッファへのポインタ
| date | time | メッセージの日付
| 名前 | 型 | 説明
| buffer | pointer | バッファへのポインタ
| date | time | メッセージの日付
| date_printed | time | WeeChat メッセージを表示した日付
| displayed | char | メッセージが表示される場合は 1、メッセージがフィルタされる (隠される) 場合は 0
// TRANSLATION MISSING
| date_usec | integer | Microseconds of date.
| date_printed | time | WeeChat メッセージを表示した日付
// TRANSLATION MISSING
| date_usec_printed | integer | Microseconds of date when WeeChat displayed message.
| displayed | char | メッセージが表示される場合は 1、メッセージがフィルタされる (隠される) 場合は 0
// TRANSLATION MISSING
| notify_level | char | Notify level: -1 = notify disabled, 0 = low, 1 = message, 2 = private, 3 = highlight.
| highlight | char | 行がハイライト部分を含む場合は 1、それ以外は 0
| tags_array | string の配列 | 行に対するタグのリスト
| prefix | string | プレフィックス
| message | string | メッセージ
| notify_level | char | Notify level: -1 = notify disabled, 0 = low, 1 = message, 2 = private, 3 = highlight.
| highlight | char | 行がハイライト部分を含む場合は 1、それ以外は 0
| tags_array | string の配列 | 行に対するタグのリスト
| prefix | string | プレフィックス
| message | string | メッセージ
|===
例: バッファ _irc.libera.#weechat_ でニックネーム _FlashCode_ からの新しいメッセージ _hello!_:
@@ -2118,9 +2104,7 @@ hda:
keys: {
'buffer': 'ptr',
'date': 'tim',
'date_used': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'displayed': 'chr',
'notify_level': 'chr',
'highlight': 'chr',
@@ -2133,9 +2117,7 @@ hda:
__path: ['0x4a49600']
buffer: '0x4a715d0'
date: 1362728993
date_usec: 902765
date_printed: 1362728993
date_usec_printed: 902765
displayed: 1
notify_level: 1
highlight: 0
+311 -2
View File
@@ -571,14 +571,323 @@ link:weechat_plugin_api.ja.html[WeeChat プラグイン API リファレンス 
スクリプト API に含まれる関数のリスト:
include::{autogendir}/autogen_scripting_functions.ja.adoc[tag=functions]
[width="100%",cols="1,5",options="header"]
|===
| カテゴリ | 関数
| 一般
| register
| プラグイン
| plugin_get_name
| 設定
| charset_set +
iconv_to_internal +
iconv_from_internal +
gettext +
ngettext +
strlen_screen +
string_match +
string_match_list +
string_has_highlight +
string_has_highlight_regex +
string_mask_to_regex +
string_format_size +
string_parse_size +
string_color_code_size +
string_remove_color +
string_is_command_char +
string_input_for_buffer +
string_eval_expression +
string_eval_path_home
| ディレクトリ操作
| mkdir_home +
mkdir +
mkdir_parents
| ソート済みリスト
| list_new +
list_add +
list_search +
list_search_pos +
list_casesearch +
list_casesearch_pos +
list_get +
list_set +
list_next +
list_prev +
list_string +
list_size +
list_remove +
list_remove_all +
list_free
| 設定ファイル
| config_new +
config_new_section +
config_search_section +
config_new_option +
config_search_option +
config_string_to_boolean +
config_option_reset +
config_option_set +
config_option_set_null +
config_option_unset +
config_option_rename +
config_option_is_null +
config_option_default_is_null +
config_boolean +
config_boolean_default +
config_integer +
config_integer_default +
config_string +
config_string_default +
config_color +
config_color_default +
config_write_option +
config_write_line +
config_write +
config_read +
config_reload +
config_option_free +
config_section_free_options +
config_section_free +
config_free +
config_get +
config_get_plugin +
config_is_set_plugin +
config_set_plugin +
config_set_desc_plugin +
config_unset_plugin
| キー割り当て
| key_bind +
key_unbind
| 表示
| prefix +
color +
print (python では prnt) +
print_date_tags (python では prnt_date_tags) +
print_y (python では prnt_y) +
print_y_date_tags (python では prnt_y_date_tags) +
log_print
| フック
| hook_command +
hook_command_run +
hook_timer +
hook_fd +
hook_process +
hook_process_hashtable +
hook_connect +
hook_line +
hook_print +
hook_signal +
hook_signal_send +
hook_hsignal +
hook_hsignal_send +
hook_config +
hook_completion +
hook_modifier +
hook_modifier_exec +
hook_info +
hook_info_hashtable +
hook_infolist +
hook_focus +
hook_set +
unhook +
unhook_all
| バッファ
| buffer_new +
buffer_new_props +
current_buffer +
buffer_search +
buffer_search_main +
buffer_clear +
buffer_close +
buffer_merge +
buffer_unmerge +
buffer_get_integer +
buffer_get_string +
buffer_get_pointer +
buffer_set +
buffer_string_replace_local_var +
buffer_match_list
| ウィンドウ
| current_window +
window_search_with_buffer +
window_get_integer +
window_get_string +
window_get_pointer +
window_set_title
| ニックネームリスト
| nicklist_add_group +
nicklist_search_group +
nicklist_add_nick +
nicklist_search_nick +
nicklist_remove_group +
nicklist_remove_nick +
nicklist_remove_all +
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
| バー
| bar_item_search +
bar_item_new +
bar_item_update +
bar_item_remove +
bar_search +
bar_new +
bar_set +
bar_update +
bar_remove
| コマンド
| command +
command_options
// TRANSLATION MISSING
| completion
| completion_new +
completion_search +
completion_get_string +
completion_list_add +
completion_free
| インフォ
| info_get +
info_get_hashtable
| インフォリスト
| infolist_new +
infolist_new_item +
infolist_new_var_integer +
infolist_new_var_string +
infolist_new_var_pointer +
infolist_new_var_time +
infolist_get +
infolist_next +
infolist_prev +
infolist_reset_item_cursor +
infolist_search_var +
infolist_fields +
infolist_integer +
infolist_string +
infolist_pointer +
infolist_time +
infolist_free
| hdata
| hdata_get +
hdata_get_var_offset +
hdata_get_var_type_string +
hdata_get_var_array_size +
hdata_get_var_array_size_string +
hdata_get_var_hdata +
hdata_get_list +
hdata_check_pointer +
hdata_move +
hdata_search +
hdata_char +
hdata_integer +
hdata_long +
hdata_string +
hdata_pointer +
hdata_time +
hdata_hashtable +
hdata_compare +
hdata_update +
hdata_get_string
| アップグレード
| upgrade_new +
upgrade_write_object +
upgrade_read +
upgrade_close
|===
[[script_api_constants]]
=== 定数
スクリプト API に含まれる定数のリスト:
include::{autogendir}/autogen_scripting_constants.ja.adoc[tag=constants]
[width="100%",cols="1,5",options="header"]
|===
| カテゴリ | 定数
// TRANSLATION MISSING
| リターンコード
| `WEECHAT_RC_OK` (integer) +
`WEECHAT_RC_OK_EAT` (integer) +
`WEECHAT_RC_ERROR` (integer)
// TRANSLATION MISSING
| 設定ファイル
| `WEECHAT_CONFIG_READ_OK` (integer) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_WRITE_OK` (integer) +
`WEECHAT_CONFIG_WRITE_ERROR` (integer) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (integer) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (integer) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
// TRANSLATION MISSING
| ソート済みリスト
| `WEECHAT_LIST_POS_SORT` (string) +
`WEECHAT_LIST_POS_BEGINNING` (string) +
`WEECHAT_LIST_POS_END` (string)
// TRANSLATION MISSING
| ホットリスト
| `WEECHAT_HOTLIST_LOW` (string) +
`WEECHAT_HOTLIST_MESSAGE` (string) +
`WEECHAT_HOTLIST_PRIVATE` (string) +
`WEECHAT_HOTLIST_HIGHLIGHT` (string)
// TRANSLATION MISSING
| プロセスのフック
| `WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
`WEECHAT_HOOK_PROCESS_ERROR` (integer)
// TRANSLATION MISSING
| 接続のフック
| `WEECHAT_HOOK_CONNECT_OK` (integer) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (integer) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (integer) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (integer) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
// TRANSLATION MISSING
| シグナルのフック
| `WEECHAT_HOOK_SIGNAL_STRING` (string) +
`WEECHAT_HOOK_SIGNAL_INT` (string) +
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|===
[[common_tasks]]
== 良くあるタスク
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -101,7 +101,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat jest tworzony przez Sébastien Helleu i społeczność (pełna lista dostępna
jest w pliku AUTHORS.adoc).
Copyright (C) 2003-2024 {author}
Copyright (C) 2003-2023 {author}
WeeChat is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
+37 -83
View File
@@ -6,7 +6,7 @@
Tłumaczenie:
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2024
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2022
[[general]]
== Ogólne
@@ -39,12 +39,15 @@ https://weechat.org/about/interfaces/[zdalnym interfejsom ^↗^^].
[[compile_git]]
=== Nie mogę skompilować WeeChat po sklonowaniu repozytorium git, dlaczego?
WeeChat musi być kompilowany przy użyciu CMake.
// TRANSLATION MISSING
WeeChat must be compiled with CMake.
Postępuj zgodnie z link:weechat_user.en.html#source_package[instrukcjami kompilacji ^↗^^]
w celu upewnienia się, że wszystkie wymagane zależności są zainstalowane.
// TRANSLATION MISSING
Please follow link:weechat_user.en.html#source_package[build instructions ^↗^^]
and ensure all required dependencies are installed.
Jeśli nadal występują jakieś problemy zgłoś je do developerów.
// TRANSLATION MISSING
If you still have issues, please report them to the developers.
[[compile_macos]]
=== Jak zainstalować WeeChat na macOS?
@@ -582,31 +585,6 @@ Jeśli używasz aplikacji Terminal na macOS włącz opcję
"Use option as meta key" w menu Settings/Keyboard. Następnie możesz używać klawisza
kbd:[Option] jako klawisza meta.
[[enter_key]]
=== Niektóre przyciski w tym Enter nie działają, dlatego?
Jeśli używasz WeeChat < 4.0.0 z plikami konfiguracyjnymi stworzonymi przez dowolną
wersję ≥ 4.0.0, nazwy przycisków stały się nieprawidłowe i wiele z nich nie będzie działać. +
Żeby to naprawić zamknij WeeChat, usuń wszystkie sekcje `[key*]` z pliku weechat.conf
i uruchom WeeChat ponownie: przywróci to domyślną konfigurację skrótów klawiszowych.
[[key_f11]]
=== F11 maksymalizuje okno terminala, jak mogę przewijać listę nicków?
Klawisz kbd:[F11] jest często używany przez terminale do maksymalizacji okna, oraz
kbd:[F11]/kbd:[F12] są domyślnie używane przez WeeChat do przewijania listy nicków.
Możesz przypisać inne klawisze, na przykład kbd:[Shift+F11] i kbd:[Shift+F12],
w WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Innym rozwiązaniem jest włączenie obsługi myszy (kbd:[Alt+m]) i przewijanie listy za
pomocą kółka myszy (zobacz pytania na temat <<mouse,obsługi myszy>>).
[[customize_key_bindings]]
=== Jak mogę zmienić przypisania klawiszy?
@@ -637,12 +615,6 @@ komendy w stylu `/123` żeby przejść do bufora #123:
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
Dla łatwego przechodzenia między buforami możesz również zainstalować skrypt _go.py_:
----
/script install go.py
----
[[global_history]]
=== Jak używać globalnej historii (zamiast historii buforu) za pomocą strzałek góra/dół?
@@ -656,8 +628,9 @@ Przykład:
/key bind down /input history_global_next
----
Dla wersji WeeChat ≤ 3.8, należy podać kody klawiszy (naciśnij kbd:[Alt+k] następnie kombinacje
klawiszy, aby zobaczyć ich kod):
// TRANSLATION MISSING
With WeeChat ≤ 3.8, you must use the raw key code (press kbd:[Alt+k] then key
to display its code):
----
/key bind meta2-A /input history_global_previous
@@ -850,10 +823,11 @@ regularnych dla przedrostków i zawartości linii.
Filtrowane linie są tylko ukrywane, nie usuwane, można je zobaczyć wyłączając
filtry (domyślnie kbd:[Alt+=] zmienia stan filtrów).
// TRANSLATION MISSING
[[filter_irc_join_part_quit]]
=== Jak odfiltrować informację o join/part/quit i inne uciążliwe wiadomości na kanałach IRC?
=== How can I filter join/part/quit and other annoying messages on IRC channels?
Zobacz link:weechat_user.pl.html#irc_smart_filter[Poradnik użytkownika / Inteligentny filtr ^↗^^].
See link:weechat_user.pl.html#irc_smart_filter[User's guide / IRC smart filter ^↗^^].
[[filter_irc_join_channel_messages]]
=== Jak mogę filtrować wyświetlane wiadomości podczas wejścia na kanał IRC?
@@ -951,20 +925,34 @@ link:weechat_user.pl.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^
do ustawienia maksymalnego poziomu hotlisty dla niektórych nicków, dla buforów
lub grup buforów (jak serwery IRC).
W celu wyłączenia tylko podświetleń wystarczy ustawić ja na 2.
Dla obecnego bufora:
W celu wyłączenia tylko podświetleń wystarczy ustawić ja na 2:
----
/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----
Dla wszystkich kanałów na serwerze "libera":
To utawienie nie jest zapisywane jednak w konfiguracji.
W celu automatycznego ustawiania tej właściwości należy użyć skryptu _buffer_autoset.py_:
----
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2
/script install buffer_autoset.py
----
Na przykład w celu wyłączenia powiadomień od "mike" na #weechat w sieci libera:
on the IRC server libera:
----
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
Dla całego serwera libera:
----
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
Więcej przykładów można znaleźć wykonując komende `+/help buffer_autoset+`.
[[irc_target_buffer]]
=== Jak mogę zmienić docelowy bufor dla komendy w połączonym buforze (jak bufor z serwerami)?
@@ -1093,8 +1081,7 @@ W celu zmniejszenia używanej pamięci możesz zastosować się do poniższych r
Możesz skorzystać z tych samych porad jak dla <<memory_usage,memory>>, oraz tych:
* schowaj pasek "nicklist": `/bar hide nicklist` (kbd:[Alt+Shift+N]).
* wyłącz "buflist": `/buflist disable` (kbd:[Alt+Shift+B]).
* schowaj pasek "nicklist": `/bar hide nicklist`
* usuń wyświetlanie sekund w czasie na pasku statusu:
`+/set weechat.look.item_time_format "%H:%M"+` (domyślna wartość)
* wyłącz automatyczne sprawdzanie poprawności wpisywanych słów w linii poleceń (o ile je włączyłeś):
@@ -1116,20 +1103,14 @@ Wyłącz odpowiedzi na wszystkie zapytania CTCP:
----
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
----
Dla WeeChat < 4.1.0, automatyczne odpowiedzi są również domyślnie wysyłane dla innch zapytań CTCP i muszą zostać
również wyłączone:
----
/set irc.ctcp.finger ""
/set irc.ctcp.userinfo ""
----
Wyładuj i wyłącz automatyczne ładowanie wtyczki "xfer" (używanej przez IRC DCC):
----
/plugin unload xfer
@@ -1164,33 +1145,6 @@ w _sec.conf_ za pomocą komendy `/secure`).
Przejrzyj link:weechat_user.pl.html#files_and_directories[Poradnik użytkownika / Pliki i foldery ^↗^^],
gdzie znajdziesz więcej informacji o plikach konfiguracyjnych.
[[move_to_another_device]]
=== Chcę przenieść WeeChat na inne urządzenie i zachować swoją konfigurację, co powinienem skompilować?
Najpierw sprawdź katalogi używane przez WeeChat za pomocą polecenia: `/debug dirs`. +
Katalogi home/config i home/data muszą zostać skopiowane (wszystkie pliki i podkatalogi).
Na przykład jeśli używasz katalogów XDG (domyślnie dla WeeChat ≥ 3.2), katalogi te to
`$HOME/.config/weechat` i `$HOME/.local/share/weechat`. +
Jeśli używasz pojedynczego katalogu (domyślne dla WeeChat < 3.2) jest to katalog
`$HOME/.weechat`.
[IMPORTANT]
Wersja WeeChat na nowym urządzeniu musi być wyższa lub taka sama jak na obecnym. +
Przenoszenie konfiguracji do starszej wersji WeeChat *NIE JEST WSPIERANE* i może ją zepsuć,
prowadząć do niestabilnego działania WeeChat.
Kroki:
. Zamknij Weechat: `/quit` (lub `/upgrade -quit` jeśli chcesz przywrócić sesję,
co zawiera zawartość wszystkich buforów).
. Skopiuj wszystkie katalogi, podkatalogi i pliki na nowe urządzenie, zachowując ich
nazwy i uprawnienia.
. Opcjonalne: skopiuj dowolne pliki z poza tych katalogów, do których odnosisz się w swojej
konfiguracji (nie zaleca się używania plików z poza katalogów WeeChat).
. Uruchom WeeChat na nowym urządzeniu: `weechat` (lub `weechat --upgrade` jeśli zapisywałeś
sesje).
[[development]]
== Rozwój
+1 -1
View File
@@ -6,7 +6,7 @@
Tłumaczenie:
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2024
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2022
[[start]]
== Uruchamianie WeeChat
+304 -3
View File
@@ -6,7 +6,7 @@
Tłumaczenie:
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2024
* Krzysztof Korościk <soltys1@gmail.com>, 2009-2022
Ten dokument opisuje klienta rozmów WeeChat, który jest częścią WeeChat.
@@ -557,14 +557,315 @@ link:weechat_plugin_api.en.html[Opisu API wtyczek WeeChat ^↗^^] (Angielski).
Lista funkcji w API skryptów:
include::{autogendir}/autogen_scripting_functions.pl.adoc[tag=functions]
[width="100%",cols="1,5",options="header"]
|===
| Kategoria | Funkcje
| ogólne
| register
| wtyczki
| plugin_get_name
| ciągi
| charset_set +
iconv_to_internal +
iconv_from_internal +
gettext +
ngettext +
strlen_screen +
string_match +
string_match_list +
string_has_highlight +
string_has_highlight_regex +
string_mask_to_regex +
string_format_size +
string_parse_size +
string_color_code_size +
string_remove_color +
string_is_command_char +
string_input_for_buffer +
string_eval_expression +
string_eval_path_home
| katalogi
| mkdir_home +
mkdir +
mkdir_parents
| przechowywane listy
| list_new +
list_add +
list_search +
list_search_pos +
list_casesearch +
list_casesearch_pos +
list_get +
list_set +
list_next +
list_prev +
list_string +
list_size +
list_remove +
list_remove_all +
list_free
| pliki konfiguracyjne
| config_new +
config_new_section +
config_search_section +
config_new_option +
config_search_option +
config_string_to_boolean +
config_option_reset +
config_option_set +
config_option_set_null +
config_option_unset +
config_option_rename +
config_option_is_null +
config_option_default_is_null +
config_boolean +
config_boolean_default +
config_integer +
config_integer_default +
config_string +
config_string_default +
config_color +
config_color_default +
config_write_option +
config_write_line +
config_write +
config_read +
config_reload +
config_option_free +
config_section_free_options +
config_section_free +
config_free +
config_get +
config_get_plugin +
config_is_set_plugin +
config_set_plugin +
config_set_desc_plugin +
config_unset_plugin
| przypisania klawiszy
| key_bind +
key_unbind
| wyświetlanie
| prefix +
color +
print (dla pythona: prnt) +
print_date_tags (dla pythona: prnt_date_tags) +
print_y (dla pythona: prnt_y) +
print_y_date_tags (dla pythona: prnt_y_date_tags) +
log_print
| hooks
| hook_command +
hook_command_run +
hook_timer +
hook_fd +
hook_process +
hook_process_hashtable +
hook_connect +
hook_line +
hook_print +
hook_signal +
hook_signal_send +
hook_hsignal +
hook_hsignal_send +
hook_config +
hook_completion +
hook_modifier +
hook_modifier_exec +
hook_info +
hook_info_hashtable +
hook_infolist +
hook_focus +
hook_set +
unhook +
unhook_all
| bufory
| buffer_new +
buffer_new_props +
current_buffer +
buffer_search +
buffer_search_main +
buffer_clear +
buffer_close +
buffer_merge +
buffer_unmerge +
buffer_get_integer +
buffer_get_string +
buffer_get_pointer +
buffer_set +
buffer_string_replace_local_var +
buffer_match_list
| okna
| current_window +
window_search_with_buffer +
window_get_integer +
window_get_string +
window_get_pointer +
window_set_title
| lista nicków
| nicklist_add_group +
nicklist_search_group +
nicklist_add_nick +
nicklist_search_nick +
nicklist_remove_group +
nicklist_remove_nick +
nicklist_remove_all +
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
| paski
| bar_item_search +
bar_item_new +
bar_item_update +
bar_item_remove +
bar_search +
bar_new +
bar_set +
bar_update +
bar_remove
| komendy
| command +
command_options
| dopełnienia
| completion_new +
completion_search +
completion_get_string +
completion_list_add +
completion_free
| informacje
| info_get +
info_get_hashtable
| infolisty
| infolist_new +
infolist_new_item +
infolist_new_var_integer +
infolist_new_var_string +
infolist_new_var_pointer +
infolist_new_var_time +
infolist_get +
infolist_next +
infolist_prev +
infolist_reset_item_cursor +
infolist_search_var +
infolist_fields +
infolist_integer +
infolist_string +
infolist_pointer +
infolist_time +
infolist_free
| hdata
| hdata_get +
hdata_get_var_offset +
hdata_get_var_type_string +
hdata_get_var_array_size +
hdata_get_var_array_size_string +
hdata_get_var_hdata +
hdata_get_list +
hdata_check_pointer +
hdata_move +
hdata_search +
hdata_char +
hdata_integer +
hdata_long +
hdata_string +
hdata_pointer +
hdata_time +
hdata_hashtable +
hdata_compare +
hdata_update +
hdata_get_string
| uaktualnienie
| upgrade_new +
upgrade_write_object +
upgrade_read +
upgrade_close
|===
[[script_api_constants]]
=== Stałe
Lista stałych w API skryptów:
include::{autogendir}/autogen_scripting_constants.pl.adoc[tag=constants]
[width="100%",cols="1,5",options="header"]
|===
| Kategoria | Stałe
| zwracane kody
| `WEECHAT_RC_OK` (liczba całkowita) +
`WEECHAT_RC_OK_EAT` (liczba całkowita) +
`WEECHAT_RC_ERROR` (liczba całkowita)
| pliki konfiguracyjne
| `WEECHAT_CONFIG_READ_OK` (liczba całkowita) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (liczba całkowita) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (liczba całkowita) +
`WEECHAT_CONFIG_WRITE_OK` (liczba całkowita) +
`WEECHAT_CONFIG_WRITE_ERROR` (liczba całkowita) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (liczba całkowita) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (liczba całkowita) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (liczba całkowita) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (liczba całkowita) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (liczba całkowita) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (liczba całkowita) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (liczba całkowita) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (liczba całkowita) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (liczba całkowita)
| posortowane listy
| `WEECHAT_LIST_POS_SORT` (ciąg) +
`WEECHAT_LIST_POS_BEGINNING` (ciąg) +
`WEECHAT_LIST_POS_END` (ciąg)
| hotlisty
| `WEECHAT_HOTLIST_LOW` (ciąg) +
`WEECHAT_HOTLIST_MESSAGE` (ciąg) +
`WEECHAT_HOTLIST_PRIVATE` (ciąg) +
`WEECHAT_HOTLIST_HIGHLIGHT` (ciąg)
| hook process
| `WEECHAT_HOOK_PROCESS_RUNNING` (liczba całkowita) +
`WEECHAT_HOOK_PROCESS_ERROR` (liczba całkowita)
| hook connect
| `WEECHAT_HOOK_CONNECT_OK` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (liczba całkowita) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (liczba całkowita)
| hook signal
| `WEECHAT_HOOK_SIGNAL_STRING` (ciąg) +
`WEECHAT_HOOK_SIGNAL_INT` (ciąg) +
`WEECHAT_HOOK_SIGNAL_POINTER` (ciąg)
|===
[[common_tasks]]
== Częste zadania
File diff suppressed because it is too large Load Diff
@@ -1,7 +1,7 @@
#!/usr/bin/env python3
#
# Copyright (C) 2019 Simmo Saan <simmo.saan@gmail.com>
# Copyright (C) 2021-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2021-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -28,12 +28,12 @@ from textwrap import indent
import re
DOC_DIR = Path(__file__).resolve().parent.parent / "doc" / "en"
DOC_DIR = Path(__file__).resolve().parent / "en"
SRC_DIR = Path(__file__).resolve().parent.parent / "src"
STUB_HEADER = """\
#
# WeeChat Python stub file, auto-generated by generate_python_stub.py.
# WeeChat Python stub file, auto-generated by python_stub.py.
# DO NOT EDIT BY HAND!
#
@@ -41,7 +41,8 @@ from typing import Dict, Union
"""
CONSTANT_RE = (
r"WEECHAT_SCRIPT_CONST_(?P<type>(INT|STR))\((?P<constant>WEECHAT_[A-Z0-9_]+)\)"
r"( |\|) `(?P<constant>WEECHAT_[A-Z0-9_]+)` "
r"\((?P<type>(string|integer))\)(?: \+)?"
)
FUNCTION_RE = r"""\[source,python\]
@@ -52,20 +53,25 @@ def (?P<function>\w+)(?P<args>[^)]*)(?P<return>\) -> [^:]+:) \.\.\.(?P<example>.
def print_stub_constants() -> None:
"""Print constants, extracted from the plugin-script.c."""
"""Print constants, extracted from the Scripting guide."""
types = {
"integer": "int",
"string": "str",
}
constant_pattern = re.compile(CONSTANT_RE)
with open(
SRC_DIR / "plugins" / "plugin-script.c", encoding="utf-8"
) as plugin_script_file, open(
DOC_DIR / "weechat_scripting.en.adoc", encoding="utf-8"
) as scripting_file, open(
SRC_DIR / "plugins" / "weechat-plugin.h", encoding="utf-8"
) as plugin_public_header_file:
plugin_script = plugin_script_file.read()
plugin_public_header = plugin_public_header_file.read()
for match in constant_pattern.finditer(plugin_script):
) as plugin_header_file:
scripting = scripting_file.read()
plugin_header = plugin_header_file.read()
for match in constant_pattern.finditer(scripting):
value_re = rf'^#define {match["constant"]} +(?P<value>[\w"-]+)$'
value_match = re.search(value_re, plugin_public_header, re.MULTILINE)
value_match = re.search(value_re, plugin_header, re.MULTILINE)
value = f' = {value_match["value"]}' if value_match else ""
print(f'{match["constant"]}: {match["type"].lower()}{value}')
print(f'{match["constant"]}: {types[match["type"]]}{value}')
def print_stub_functions() -> None:
+1 -1
View File
@@ -99,7 +99,7 @@ $HOME/.local/share/weechat/weechat.log::
WeeChat написан Sébastien Helleu и другими участниками (полный список находится
в файле AUTHORS.adoc).
Copyright (C) 2003-2024 {author}
Copyright (C) 2003-2023 {author}
WeeChat is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
+1 -1
View File
@@ -97,7 +97,7 @@ $HOME/.config/weechat/weechat.log::
// tag::copyright[]
Програм WeeChat је написао Себастијен Елеу и људи који су дали свој допринос (комплетна листа се налази у фајлу AUTHORS.adoc).
Ауторска права (C) 2003-2024 {author}
Ауторска права (C) 2003-2023 {author}
WeeChat је слободни софтвер; можете га редистрибуирати и/или изменити под условима ГНУ Опште Јавне Лиценце коју је објавила Free Software Foundation; или верзије 3 Лиценце, или (по вашој жељи) било којој каснијој верзији.
+341 -390
View File
@@ -115,96 +115,94 @@ WeeChat „језгро” се налази у следећим директо
[width="100%", cols="2m,3", options="header"]
|===
| Путања/фајл | Опис
| core/ | Функције језгра: тачка улаза, интерне структуре.
|    core-arraylist.c | Листе низова.
|    core-backtrace.c | Испис трага након краха.
|    core-calc.c | Израчунавање резултата израза.
|    core-command.c | WeeChat команде језгра.
|    core-completion.c | Подразумевана довршавања.
|    core-config-file.c | Управљање конфигурационим фајловима.
|    core-config.c | Конфигурационе опције за WeeChat језгро (фајл weechat.conf).
|    core-crypto.c | Криптографске функције.
|    core-debug.c | Неке дибаг функције.
|    core-dir.c | Функције директоријума/фајла.
|    core-doc.c | Изградња фајлова за документацију.
|    core-eval.c | Израчунавање израза са референцама на интерне променљиве.
|    core-hashtable.c | Хеш табеле.
|    core-hdata.c | Hdata (директни приступ подацима употребом хеш табела).
|    core-hook.c | Куке.
|    core-infolist.c | Инфолисте (листе са подацима објеката).
|    core-input.c | Унос команди/текста.
|    core-list.c | Сортиране листе.
|    core-log.c | Упис у WeeChat лог фајл (weechat.log).
|    core-network.c | Мрежне функције (повезивање са серверима/проксијима).
|    core-proxy.c | Управљање проксијима.
|    core-secure.c | Функције обезбеђених података.
|    core-secure-buffer.c | Бафер обезбеђених података.
|    core-secure-config.c | Опције обезбеђених података (фајл sec.conf).
|    core-string.c | Функције над стринговима.
|    core-sys.c | Системске функције.
|    core-upgrade-file.c | Интерни систем ажурирања.
|    core-upgrade.c | Ажурирање за WeeChat језгро (бафери, линије, историја, ...).
|    core-url.c | URL трансфер (помоћу libcurl).
|    core-utf8.c | UTF-8 функције.
|    core-util.c | Неке друге функције.
|    core-version.c | Функције за WeeChat верзију.
|    weechat.c | Основне функције: опције командне линије, покретање.
|    hook/ | Функције кука.
|       hook-command-run.c | Кука "command_run".
|       hook-command.c | Кука "command".
|       hook-completion.c | Кука "completion".
|       hook-config.c | Кука "config".
|       hook-connect.c | Кука "connect".
|       hook-fd.c | Кука "fd".
|       hook-focus.c | Кука "focus".
|       hook-hdata.c | Кука "hdata".
|       hook-hsignal.c | Кука "hsignal".
|       hook-info-hashtable.c | Кука "info_hashtable".
|       hook-info.c | Кука "info".
|       hook-infolist.c | Кука "infolist".
|       hook-line.c | Кука "line".
|       hook-modifier.c | Кука "modifier".
|       hook-print.c | Кука "print".
|       hook-process.c | Кука "process".
|       hook-signal.c | Кука "signal".
|       hook-timer.c | Кука "timer".
|       hook-url.c | Кука "url".
| gui/ | Функције за бафере, прозоре, ... (користе их сви интерфејси).
|    gui-bar-item.c | Ставке трака.
|    gui-bar-window.c | Прозори трака.
|    gui-bar.c | Траке.
|    gui-buffer.c | Бафери.
|    gui-chat.c | Функције разговора (призаз поруке, ...).
|    gui-color.c | Функције боја.
|    gui-completion.c | Довршавање у командној линији.
|    gui-cursor.c | Курсорски режим (слободно померање курсора).
|    gui-filter.c | Филтери.
|    gui-focus.c | Функције у вези фокуса (за курсорски режими миша).
|    gui-history.c | Команде/текст сачуван у баферима.
|    gui-hotlist.c | Управљање врућом листом (листа бафера у којима има активности).
|    gui-input.c | Функције уноса (трака уноса).
|    gui-key.c | Функције тастатуре.
|    gui-layout.c | Распоред.
|    gui-line.c | Линије у баферу.
|    gui-mouse.c | Миш.
|    gui-nick.c | Функције надимака.
|    gui-nicklist.c | Листа надимака у баферима.
|    gui-window.c | Прозори.
|    curses/ | Curses интерфејс.
|       gui-curses-bar-window.c | Приказ у прозорима трака.
|       gui-curses-chat.c | Приказ у простору разговора (поруке).
|       gui-curses-color.c | Функције боја.
|       gui-curses-key.c | Функције тастатуре (подраз. тастери, читање уноса).
|       gui-curses-main.c | WeeChat главна петља (чекање на догађаје тастатуре/мреже).
|       gui-curses-mouse.c | Миш.
|       gui-curses-term.c | Функције у вези терминала.
|       gui-curses-window.c | Прозори.
|       headless/ | Режим без интерфејса.
|          main.c | Тачка улаза за режим без интерфејса.
|          ncurses-fake.c | Лажна ncurses библиотека.
|       normal/ | Curses интерфејс.
|          main.c | Тачка улаза за Curses интерфејс.
| Путања/фајл | Опис
| core/ | Функције језгра: тачка улаза, интерне структуре.
|    wee-arraylist.c | Листе низова.
|    wee-backtrace.c | Испис трага након краха.
|    wee-calc.c | Израчунавање резултата израза.
|    wee-command.c | WeeChat команде језгра.
|    wee-completion.c | Подразумевана довршавања.
|    wee-config-file.c | Управљање конфигурационим фајловима.
|    wee-config.c | Конфигурационе опције за WeeChat језгро (фајл weechat.conf).
|    wee-crypto.c | Криптографске функције.
|    wee-debug.c | Неке дибаг функције.
|    wee-dir.c | Функције директоријума/фајла.
|    wee-doc.c | Изградња фајлова за документацију.
|    wee-eval.c | Израчунавање израза са референцама на интерне променљиве.
|    wee-hashtable.c | Хеш табеле.
|    wee-hdata.c | Hdata (директни приступ подацима употребом хеш табела).
|    wee-hook.c | Куке.
|    wee-infolist.c | Инфолисте (листе са подацима објеката).
|    wee-input.c | Унос команди/текста.
|    wee-list.c | Сортиране листе.
|    wee-log.c | Упис у WeeChat лог фајл (weechat.log).
|    wee-network.c | Мрежне функције (повезивање са серверима/проксијима).
|    wee-proxy.c | Управљање проксијима.
|    wee-secure.c | Функције обезбеђених података.
|    wee-secure-buffer.c | Бафер обезбеђених података.
|    wee-secure-config.c | Опције обезбеђених података (фајл sec.conf).
|    wee-string.c | Функције над стринговима.
|    wee-upgrade-file.c | Интерни систем ажурирања.
|    wee-upgrade.c | Ажурирање за WeeChat језгро (бафери, линије, историја, ...).
|    wee-url.c | URL трансфер (помоћу libcurl).
|    wee-utf8.c | UTF-8 фунцкије.
|    wee-util.c | Неке друге функције.
|    wee-version.c | Функције за WeeChat верзију.
|    weechat.c | Основне функције: опције командне линије, покретање.
|    hook/ | Функције кука.
|       wee-hook-command-run.c | Кука "command_run".
|       wee-hook-command.c | Кука "command".
|       wee-hook-completion.c | Кука "completion".
|       wee-hook-config.c | Кука "config".
|       wee-hook-connect.c | Кука "connect".
|       wee-hook-fd.c | Кука "fd".
|       wee-hook-focus.c | Кука "focus".
|       wee-hook-hdata.c | Кука "hdata".
|       wee-hook-hsignal.c | Кука "hsignal".
|       wee-hook-info-hashtable.c | Кука "info_hashtable".
|       wee-hook-info.c | Кука "info".
|       wee-hook-infolist.c | Кука "infolist".
|       wee-hook-line.c | Кука "line".
|       wee-hook-modifier.c | Кука "modifier".
|       wee-hook-print.c | Кука "print".
|       wee-hook-process.c | Кука "process".
|       wee-hook-signal.c | Кука "signal".
|       wee-hook-timer.c | Кука "timer".
| gui/ | Функције за бафере, прозоре, ... (користе их сви интерфејси).
|    gui-bar-item.c | Ставке трака.
|    gui-bar-window.c | Прозори трака.
|    gui-bar.c | Траке.
|    gui-buffer.c | Бафери.
|    gui-chat.c | Функције разговора (призаз поруке, ...).
|    gui-color.c | Функције боја.
|    gui-completion.c | Довршавање у комадној линији.
|    gui-cursor.c | Курсорски режим (слобосно померање курсора).
|    gui-filter.c | Филтери.
|    gui-focus.c | Функције у вези фокуса (за курсорски режими миша).
|    gui-history.c | Команде/текст сачуван у баферима.
|    gui-hotlist.c | Управљање врућом листом (листа бафера у којима има активности).
|    gui-input.c | Функције уноса (трака уноса).
|    gui-key.c | Функције тастатуре.
|    gui-layout.c | Распоред.
|    gui-line.c | Линије у баферуLines in buffers.
|    gui-mouse.c | Миш.
|    gui-nick.c | Функције надимака.
|    gui-nicklist.c | Листа надимака у баферима.
|    gui-window.c | Прозори.
|    curses/ | Curses интерфејс.
|       gui-curses-bar-window.c | Приказ у прозорима трака.
|       gui-curses-chat.c | Приказ у простору разговора (поруке).
|       gui-curses-color.c | Функције боја.
|       gui-curses-key.c | Функције тастатуре (подраз. тастери, читање уноса).
|       gui-curses-main.c | WeeChat главна петља (чекање на догађаје тастатуре/мреже).
|       gui-curses-mouse.c | Миш.
|       gui-curses-term.c | Функције у вези терминала.
|       gui-curses-window.c | Прозори.
|       headless/ | Режим без интерфејса.
|          main.c | Тачка улаза за режим без интерфејса.
|          ncurses-fake.c | Лажна ncurses библиотека.
|       normal/ | Curses интерфејс.
|          main.c | Тачка улаза за Curses интерфејс.
|===
[[sources_plugins]]
@@ -212,189 +210,178 @@ WeeChat „језгро” се налази у следећим директо
[width="100%", cols="2m,3", options="header"]
|===
| Путања/фајл | Опис
| plugins/ | Корен додатака.
|    plugin.c | Управљање додацима (учитавање/уклањање динамичких C библиотека).
|    plugin-api.c | Додатне функције за API додатака (омотач око WeeChat функција језгра).
|    plugin-api-info.c | Додатне info/infolist функције за API додатака.
|    plugin-config.c | Опције конфигурације додатака (фајл plugins.conf).
|    plugin-script.c | Опште функције које користе скрипт додаци.
|    plugin-script-api.c | Скрипт API функције: омотачи око неких функција API додатака.
|    plugin-script-config.c | Опције конфигурације скрипт додатака (фајлови python.conf, perl.conf, ...).
|    weechat-plugin.h | Заглавље које треба да се дистрибуира уз WeeChat додатке, како би могли да се компајлирају.
|    alias/ | Alias додатак.
|       alias.c | Главне алијас функције.
|       alias-command.c | Алијас команде.
|       alias-completion.c | Алијас довршавање.
|       alias-config.c | Алијас опције конфигурације (фајл alias.conf).
|       alias-info.c | Алијас info/infolists/hdata.
|    spell/ | Додатак за проверу правописа.
|       spell.c | Главне функције провере правописа.
|       spell-bar-item.c | Провера правописа ставке траке.
|       spell-command.c | Провера правописа команде.
|       spell-completion.c | Провера правописа довршавања.
|       spell-config.c | Провера правописа опције конфиг (фајл spell.conf).
|       spell-info.c | Провера правописа info/infolists/hdata.
|       spell-speller.c | Управљање библиотекама за проверу правописа.
|    buflist/ | Buflist додатак.
|       buflist.c | Главне buflist функције.
|       buflist-bar-item.c | Buflist ставке траке.
|       buflist-command.c | Buflist команде.
|       buflist-completion.c | Buflist довршавања.
|       buflist-config.c | Buflist опције конфиг (фајл buflist.conf).
|       buflist-info.c | Buflist info/infolists/hdata.
|       buflist-mouse.c | Buflist акције мишем.
|    charset/ | Charset додатак.
|       charset.c | Charset функције.
|    exec/ | Exec додатак.
|       exec.c | Главне exec функције.
|       exec-buffer.c | Exec бафер.
|       exec-command.c | Exec команде.
|       exec-completion.c | Exec довршавања.
|       exec-config.c | Exec опције конфиг (фајл exec.conf).
|    fifo/ | Fifo додатак.
|       fifo.c | Главне fifo функције.
|       fifo-command.c | Fifo команде.
|       fifo-config.c | Fifo опције конфиг (фајл fifo.conf).
|       fifo-info.c | Fifo info/infolists/hdata.
|    fset/ | Fset додатак.
|       fset.c | Главне fset функције.
|       fset-bar-item.c | Fset ставке траке.
|       fset-buffer.c | Fset бафер.
|       fset-command.c | Fset команде.
|       fset-completion.c | Fset довршавања.
|       fset-config.c | Fset опције конфиг (фајл fset.conf).
|       fset-info.c | Fset info/infolists/hdata.
|       fset-mouse.c | Fset акције мишем.
|       fset-option.c | Fset управљање опцијама.
|    guile/ | Guile (scheme) додатак.
|       weechat-guile.c | Главне guile функције (учитавање/уклањање скрипти, извршавање guile кода).
|       weechat-guile-api.c | API функције guile скриптовања.
|    irc/ | IRC (Internet Relay Chat) додатак.
|       irc.c | Основне IRC функције.
|       irc-bar-item.c | IRC ставке траке.
|       irc-batch.c | IRC пакетни догађаји.
|       irc-buffer.c | IRC бафери.
|       irc-channel.c | IRC канали.
|       irc-color.c | IRC боје.
|       irc-command.c | IRC команде.
|       irc-completion.c | IRC довршавања.
|       irc-config.c | IRC опције конфиг (фајл irc.conf).
|       irc-ctcp.c | IRC CTCP.
|       irc-debug.c | IRC дибаг функције.
|       irc-ignore.c | IRC Ignore.
|       irc-info.c | IRC info/infolists/hdata.
|       irc-input.c | Унос команди/текста.
|       irc-join.c | Функције за листе канала којима се приступа.
|       irc-list.c | Бафер за одговор на /list команду.
|       irc-message.c | Функције за манипулисање IRC порукама.
|       irc-mode.c | Функције у вези режима канала/надимка.
|       irc-modelist.c | Листе режима IRC канала (+b, +e, +I, ...).
|       irc-msgbuffer.c | Циљни бафер за IRC поруке.
|       irc-nick.c | IRC надимци.
|       irc-notify.c | IRC листе за обавештавање.
|       irc-protocol.c | IRC протокол (RFCs 1459/2810/2811/2812/2813/7194).
|       irc-raw.c | IRC сирови бафер.
|       irc-redirect.c | Преусмеравање излаза IRC команде.
|       irc-sasl.c | SASL аутентификација са IRC сервером.
|       irc-server.c | У/И комуникација са IRC сервером.
|       irc-tag.c | Функције за манипулацију ознакама IRC порука.
|       irc-typing.c | Статус куцања.
|       irc-upgrade.c | Чување/обнављање IRC података када се ажурира програм WeeChat.
|    javascript/ | JavaScript додатак.
|       weechat-js.cpp | Главне JavaScript функције (учитавање/уклањање скрипти, извршавање JavaScript кода).
|       weechat-js-api.cpp | API функције JavaScript скриптовања.
|       weechat-js-v8.cpp | JavaScript v8 функције.
|    logger/ | Logger додатак.
|       logger.c | Главне logger функције.
|       logger-backlog.c | Logger backlog функције.
|       logger-buffer.c | Logger управљање листом бафера.
|       logger-command.c | Logger команде.
|       logger-config.c | Logger опције конфиг (фајл logger.conf).
|       logger-info.c | Logger info/infolists/hdata.
|       logger-tail.c | Функције за враћање последњих линија фајла.
|    lua/ | Lua додатак.
|       weechat-lua.c | Главне lua функције (учитавање/уклањање скрипти, извршавање lua кода).
|       weechat-lua-api.c | API функције Lua скриптовања.
|    perl/ | Perl додатак.
|       weechat-perl.c | Главне perl функције (учитавање/уклањање скрипти, извршавање perl кода).
|       weechat-perl-api.c | API функције Perl скриптовања.
|    php/ | PHP додатак.
|       weechat-php.c | Главне PHP функције (учитавање/уклањање скрипти, извршавање PHP кода).
|       weechat-php-api.c | API функције PHP скриптовања.
|    python/ | Python додатак.
|       weechat-python.c | Главне python функције (учитавање/уклањање скрипти,извршавање python кода).
|       weechat-python-api.c | API функције Python скриптовања.
|    relay/ | Релеј додатак (IRC прокси и релеј за удаљене интерфејсе).
|       relay.c | Главне релеј функције.
|       relay-auth.c | Аутентификација клијената.
|       relay-buffer.c | Релеј бафер.
|       relay-client.c | Клијенти релеја.
|       relay-command.c | Релеј команде.
|       relay-completion.c | Релеј довршавања.
|       relay-config.c | Релеј опције конфиг (фајл relay.conf).
|       relay-http.c | HTTP функције.
|       relay-info.c | Релеј info/infolists/hdata.
|       relay-network.c | Мрежне функције за релеј.
|       relay-raw.c | Релеј сирови бафер.
|       relay-remote.c | Релеј удаљених.
|       relay-server.c | Релеј сервер.
|       relay-upgrade.c | Чување/обнављање података релеја када се ажурира WeeChat.
|       relay-websocket.c | WebSocket сервер функције (RFC 6455).
|       api/ | Релеј за удаљене интерфејсе (користећи HTTP REST API).
|          relay-api.c | Главне API функције за HTTP REST API.
|          relay-api-msg.c | Слање JSON порука клијентима.
|          relay-api-protocol.c | HTTP REST API протокол.
|          remote/ | Функције прослеђивања удаљених, специфичне за API.
|             relay-remote-event.c | Обрада догађаја који се приме од релеја удаљених.
|             relay-remote-network.c | Мрежне функције за релеј удаљених.
|       irc/ | IRC прокси.
|          relay-irc.c | Главне IRC прокси функције.
|       weechat/ | Релеј за удаљене интерфејсе (користећи „weechat” бинарни протокол).
|          relay-weechat.c | Релеј за удаљене интерфејсе (главне функције).
|          relay-weechat-msg.c | Слање бинарних порука клијентима.
|          relay-weechat-nicklist.c | Функције листе надимака.
|          relay-weechat-protocol.c | Читање команди од клијената.
|    ruby/ | Ruby додатак.
|       weechat-ruby.c | Главне ruby функције (учитавање/уклањање скрипти, извршавање ruby кода).
|       weechat-ruby-api.c | API функције Ruby скриптовања.
|    script/ | Управљач скриптама.
|       script.c | Главне функције за управљача скриптама.
|       script-action.c | Акције над скриптама (учитавање/уклањање, инсталација/деинсталација, ...).
|       script-buffer.c | Бафер за управљача скриптама.
|       script-command.c | Команде за управљача скриптама.
|       script-completion.c | Довршавања за управљача скриптама.
|       script-config.c | Опције конфигурације за управљача скриптама (фајл script.conf).
|       script-info.c | Управљач скриптама info/infolists/hdata.
|       script-mouse.c | Скрипт акције мишем.
|       script-repo.c | Преузимање и читање фајла репозиторијума.
|    tcl/ | Tcl додатак.
|       weechat-tcl.c | Главне tcl функције (учитавање/уклањање скрипти, извршавање tcl кода).
|       weechat-tcl-api.c | API функције Tcl скриптовања.
|    trigger/ | Окидач додатак.
|       trigger.c | Главне функције окидача.
|       trigger-buffer.c | Окидач бафер.
|       trigger-callback.c | Окидач функције повратног позива.
|       trigger-command.c | Окидач команде.
|       trigger-completion.c | Окидач довршавања.
|       trigger-config.c | Окидач опције конфиг (фајл trigger.conf).
|    typing/ | Typing додатак.
|       typing.c | Главне typing функције.
|       typing-bar-item.c | Typing ставке траке.
|       typing-config.c | Typing конфигурационе опције (фајл typing.conf).
|       typing-status.c | Статус куцања порука на баферима.
|    xfer/ | Xfer додатак (IRC DCC фајл/разговор).
|       xfer.c | Главне xfer функције.
|       xfer-buffer.c | Xfer бафер.
|       xfer-chat.c | DCC разговор.
|       xfer-command.c | Xfer команде.
|       xfer-completion.c | Xfer довршавања.
|       xfer-config.c | Xfer опције конфиг (фајлxfer.conf).
|       xfer-dcc.c | DCC пренос фајла.
|       xfer-file.c | Фајл функције за xfer.
|       xfer-info.c | Xfer info/infolists/hdata.
|       xfer-network.c | Мрежне функције за xfer.
|       xfer-upgrade.c | Чување/обнављање xfer података када се програм WeeChat ажурира.
| Путања/фајл | Опис
| plugins/ | Корен додатака.
|    plugin.c | Управљање додацима (учитавање/уклањање динамичких C библиотека).
|    plugin-api.c | Додатне функције за API додатака (омотач око WeeChat функција језгра).
|    plugin-api-info.c | Додатне info/infolist фунцкије за API додатака.
|    plugin-config.c | Опције конфигурације додатака (фајл plugins.conf).
|    plugin-script.c | Опште функције које користе скрипт додаци.
|    plugin-script-api.c | Скрипт API функције: омотачи око неких функција API додатака.
|    plugin-script-config.c | Опције конфигурације скрипт додатака (фајлови python.conf, perl.conf, ...).
|    weechat-plugin.h | Заглавље које треба да се дистрибуира уз WeeChat додатке, како би могли да се компајлирају.
|    alias/ | Alias додатак.
|       alias.c | Главне алијас функције.
|       alias-command.c | Алијас команде.
|       alias-completion.c | Алијас довршавање.
|       alias-config.c | Алијас опције конфигурације (фајл alias.conf).
|       alias-info.c | Алијас info/infolists/hdata.
|    spell/ | Додатак за проверу правописа.
|       spell.c | Главне функције провере правописа.
|       spell-bar-item.c | Провера правописа ставке траке.
|       spell-command.c | Провера правописа команде.
|       spell-completion.c | Провера правописа довршавања.
|       spell-config.c | Провера правописа опције конфиг (фајл spell.conf).
|       spell-info.c | Провера правописа info/infolists/hdata.
|       spell-speller.c | Управљање библиотекама за проверу правописа.
|    buflist/ | Buflist додатак.
|       buflist.c | Главне buflist функције.
|       buflist-bar-item.c | Buflist ставке траке.
|       buflist-command.c | Buflist команде.
|       buflist-config.c | Buflist опције кофиг (фајл buflist.conf).
|       buflist-info.c | Buflist info/infolists/hdata.
|       buflist-mouse.c | Buflist акције мишем.
|    charset/ | Charset додатак.
|       charset.c | Charset функције.
|    exec/ | Exec додатак.
|       exec.c | Флавне exec функције.
|       exec-buffer.c | Exec бафер.
|       exec-command.c | Exec команде.
|       exec-completion.c | Exec довршавања.
|       exec-config.c | Exec опције конфиг (фајл exec.conf).
|    fifo/ | Fifo додатак.
|       fifo.c | Главне fifo функције.
|       fifo-command.c | Fifo команде.
|       fifo-config.c | Fifo опције конфиг (фајл fifo.conf).
|       fifo-info.c | Fifo info/infolists/hdata.
|    fset/ | Fset додатак.
|       fset.c | Главне fset функције.
|       fset-bar-item.c | Fset ставке траке.
|       fset-buffer.c | Fset бафер.
|       fset-command.c | Fset команде.
|       fset-completion.c | Fset довршавања.
|       fset-config.c | Fset опције конфиг (фајл fset.conf).
|       fset-info.c | Fset info/infolists/hdata.
|       fset-mouse.c | Fset акције мишем.
|       fset-option.c | Fset управљање опцијама.
|    guile/ | Guile (scheme) додатак.
|       weechat-guile.c | Главне guile функције (учитавањ/уклањање скрипти, извршавање guile кода).
|       weechat-guile-api.c | API функције guile скриптовања.
|    irc/ | IRC (Internet Relay Chat) додатак.
|       irc.c | Основне IRC функције.
|       irc-bar-item.c | IRC ставке траке.
|       irc-batch.c | IRC пакетни догађаји.
|       irc-buffer.c | IRC бафери.
|       irc-channel.c | IRC канали.
|       irc-color.c | IRC боје.
|       irc-command.c | IRC команде.
|       irc-completion.c | IRC довршавања.
|       irc-config.c | IRC опције конфиг (фајл irc.conf).
|       irc-ctcp.c | IRC CTCP.
|       irc-debug.c | IRC дибаг функције.
|       irc-ignore.c | IRC Ignore.
|       irc-info.c | IRC info/infolists/hdata.
|       irc-input.c | Унос команди/текста.
|       irc-join.c | Функције за листе канала којима се приступа.
|       irc-message.c | Функције за манипулисање IRC порукама.
|       irc-mode.c | Функције у вези режима канала/надимка.
|       irc-modelist.c | Листе режима IRC канала (+b, +e, +I, ...).
|       irc-msgbuffer.c | Циљни бафер за IRC поруке.
|       irc-nick.c | IRC надимци.
|       irc-notify.c | IRC листе за обавештавање.
|       irc-protocol.c | IRC протокол (RFCs 1459/2810/2811/2812/2813/7194).
|       irc-raw.c | IRC сирови бафер.
|       irc-redirect.c | Преусмеравање излаза IRC команде.
|       irc-sasl.c | SASL аутентификација са IRC сервером.
|       irc-server.c | У/И комуникација са IRC сервером.
|       irc-tag.c | Функције за манипулацију ознакама IRC порука.
|       irc-typing.c | Статус куцања.
|       irc-upgrade.c | Чување/обнављање IRC података када се ажурира програм WeeChat.
|    javascript/ | JavaScript додатак.
|       weechat-js.cpp | Главне JavaScript функције (учитавање/уклањање скрипти, извршавање JavaScript кода).
|       weechat-js-api.cpp | API функције JavaScript скриптовања.
|       weechat-js-v8.cpp | JavaScript v8 функције.
|    logger/ | Logger додатак.
|       logger.c | Главне logger функције.
|       logger-backlog.c | Logger backlog функције.
|       logger-buffer.c | Logger управљање листом бафера.
|       logger-command.c | Logger команде.
|       logger-config.c | Logger опције конфиг (фајл logger.conf).
|       logger-info.c | Logger info/infolists/hdata.
|       logger-tail.c | Функције за враћање последњих линија фајла.
|    lua/ | Lua додатак.
|       weechat-lua.c | Главне lua функције (учитавање/уклањање скрипти, извршавање lua кода).
|       weechat-lua-api.c | API функције Lua скриптовања.
|    perl/ | Perl додатак.
|       weechat-perl.c | Главне perl функције (учитавање/уклањање скрипти, извршавање perl кода).
|       weechat-perl-api.c | API функције Perl скриптовања.
|    php/ | PHP додатак.
|       weechat-php.c | Главне PHP функције (учитавање/уклањање скрипти, извршавање PHP кода).
|       weechat-php-api.c | API функције PHP скриптовања.
|    python/ | Python додатак.
|       weechat-python.c | Главне python функције (учитавање/уклањање скрипти,извршавање python кода).
|       weechat-python-api.c | API функције Python скриптовања.
|    relay/ | Релеј додатак (IRC прокси и релеј за удаљене интерфејсе).
|       relay.c | Главне релеј функције.
|       relay-auth.c | Аутентификација клијената.
|       relay-buffer.c | Релеј бафер.
|       relay-client.c | Клијенти релеја.
|       relay-command.c | Релеј команде.
|       relay-completion.c | Релеј довршавања.
|       relay-config.c | Релеј опције конфиг (фајл relay.conf).
|       relay-info.c | Релеј info/infolists/hdata.
|       relay-network.c | Мрежне функције за релеј.
|       relay-raw.c | Релеј сирови бафер.
|       relay-server.c | Релеј сервер.
|       relay-upgrade.c | Save/restore of relay data when upgrading WeeChat.
|       relay-websocket.c | WebSocket сервер функције (RFC 6455).
|       irc/ | IRC прокси.
|          relay-irc.c | Главне IRC прокси функције.
|       weechat/ | Релеј за удаљене интерфејсе.
|          relay-weechat.c | Релеј за удаљене интерфејсе (главне функције).
|          relay-weechat-msg.c | Слање бинарних порука клијентима.
|          relay-weechat-nicklist.c | Функције листе надимака.
|          relay-weechat-protocol.c | Читање команди од клијената.
|    ruby/ | Ruby додатак.
|       weechat-ruby.c | Главне ruby функције (учитавање/уклањање скрипти, извршавање ruby кода).
|       weechat-ruby-api.c | API функције Ruby скриптовања.
|    script/ | Управљач скриптама.
|       script.c | Главне функције за управљача скриптама.
|       script-action.c | Акције над скриптама (учитавање/уклањање, инсталација/деинсталација, ...).
|       script-buffer.c | Бафер за управљача скриптама.
|       script-command.c | Команде за управљача скриптама.
|       script-completion.c | Довршавања за управљача скриптама.
|       script-config.c | Опције конфигурације за управљача скриптама (фајл script.conf).
|       script-info.c | Управљач скриптама info/infolists/hdata.
|       script-mouse.c | Скрипт акције мишем.
|       script-repo.c | Преузимање и читање фајла репозиторијума.
|    tcl/ | Tcl додатак.
|       weechat-tcl.c | Главне tcl функције (учитавање/уклањање скрипти, извршавање tcl кода).
|       weechat-tcl-api.c | API функције Tcl скриптовања.
|    trigger/ | Окидач додатак.
|       trigger.c | Главне функције окидача.
|       trigger-buffer.c | Окидач бафер.
|       trigger-callback.c | Окидач функције повратног позива.
|       trigger-command.c | Окидач команде.
|       trigger-completion.c | Окидач довршавања.
|       trigger-config.c | Окидач опције конфиг (фајл trigger.conf).
|    typing/ | Typing додатак.
|       typing.c | Главне typing функције.
|       typing-bar-item.c | Typing ставке траке.
|       typing-config.c | Typing конфигурационе опције (фајл typing.conf).
|       typing-status.c | Статус куцања порука на баферима.
|    xfer/ | Xfer додатак (IRC DCC фајл/разговор).
|       xfer.c | Главне xfer функције.
|       xfer-buffer.c | Xfer бафер.
|       xfer-chat.c | DCC разговор.
|       xfer-command.c | Xfer команде.
|       xfer-completion.c | Xfer довршавања.
|       xfer-config.c | Xfer опције конфиг (фајлxfer.conf).
|       xfer-dcc.c | DCC пренос фајла.
|       xfer-file.c | Фајл функције за xfer.
|       xfer-info.c | Xfer info/infolists/hdata.
|       xfer-network.c | Мрежне функције за xfer.
|       xfer-upgrade.c | Чување/обнављање xfer података када се програм WeeChat ажурира.
|===
[[sources_tests]]
@@ -402,120 +389,84 @@ WeeChat „језгро” се налази у следећим директо
[width="100%", cols="2m,3", options="header"]
|===
| Путања/фајл | Опис
| tests/ | Корен тестова.
|    tests.cpp | Програм који се користи за извршавање свих тестова.
|    tests-record.cpp | Бележење и претрага у приказаним порукама.
|    scripts/ | Корен тестова за API скриптовања.
|       test-scripts.cpp | Програм који се користи за извршавање тестова API скриптовања.
|       python/ | Python скрипте које генеришу и покрећу тестове API скриптовања.
|          testapigen.py | Python скрипта која генерише скрипте на свим језицима за тестирање API скриптовања.
|          testapi.py | Python скрипта са тестовима API скриптовања, користи је скрипта testapigen.py.
|          unparse.py | Конверзија Python кода у остале језике, користи је скрипта testapigen.py.
|    unit/ | Корен unit тестова.
|       test-plugins.cpp | Тестови: plugins.
|       test-plugin-api-info.cpp | Тестови: инфо функције API додатака.
|       test-plugin-config.cpp | Тестови: функције конфигурације додатка.
|       core/ | Корен unit тестова језгра.
|          test-core-arraylist.cpp | Тестови: arraylists.
|          test-core-calc.cpp | Тестови: калкулација израза.
|          test-core-command.cpp | Тестови: команде.
|          test-core-config-file.cpp | Тестови: конфигурациони фајлови.
|          test-core-crypto.cpp | Тестови: криптографске функције.
|          test-core-dir.cpp | Тестови: функције директоријума/фајла.
|          test-core-eval.cpp | Тестови: израчунавање израза.
|          test-core-hashtble.cpp | Тестови: hashtables.
|          test-core-hdata.cpp | Тестови: hdata.
|          test-core-hook.cpp | Тестови: куке.
|          test-core-infolist.cpp | Тестови: infolists.
|          test-core-list.cpp | Тестови: листе.
|          test-core-network.cpp | Тестови: мрежне функције.
|          test-core-secure.cpp | Тестови: обезбеђени подаци.
|          test-core-signal.cpp | Тестови: сигнали.
|          test-core-string.cpp | Тестови: стрингови.
|          test-core-url.cpp | Тестови: URL адресе.
|          test-core-utf8.cpp | Тестови: UTF-8.
|          test-core-util.cpp | Тестови: помоћне функције.
|          test-core-sys.cpp | Тестови: системске функције.
|          hook/ | Корен unit тестова за куке.
|             test-hook-command.cpp | Тестови: куке „command”.
|             test-hook-command-run.cpp | Тестови: куке „command_run”.
|             test-hook-completion.cpp | Тестови: куке „completion”.
|             test-hook-config.cpp | Тестови: куке „config”.
|             test-hook-connect.cpp | Тестови: куке „connect”.
|             test-hook-fd.cpp | Тестови: куке „fd”.
|             test-hook-focus.cpp | Тестови: куке „focus”.
|             test-hook-hdata.cpp | Тестови: куке „hdata”.
|             test-hook-hsignal.cpp | Тестови: куке „hsignal”.
|             test-hook-info-hashtable.cpp | Тестови: куке „info_hashtable”.
|             test-hook-info.cpp | Тестови: куке „info”.
|             test-hook-infolist.cpp | Тестови: куке „infolist”.
|             test-hook-line.cpp | Тестови: куке „line”.
|             test-hook-modifier.cpp | Тестови: куке „modifier”.
|             test-hook-print.cpp | Тестови: куке „print”.
|             test-hook-process.cpp | Тестови: куке „process”.
|             test-hook-signal.cpp | Тестови: куке „signal”.
|             test-hook-timer.cpp | Тестови: куке „timer”.
|             test-hook-url.cpp | Тестови: куке „url”.
|       gui/ | Корен unit тестова интерфејса.
|          test-gui-bar-window.cpp | Тестови: функције прозора траке.
|          test-gui-buffer.cpp | Тестови: бафер функције.
|          test-gui-chat.cpp | Тестови: чет функције.
|          test-gui-color.cpp | Тестови: боје.
|          test-gui-filter.cpp | Тестови: филтери.
|          test-gui-hotlist.cpp | Тестови: функције врућих листи.
|          test-gui-input.cpp | Тестови: улазне функције.
|          test-gui-key.cpp | Тестови: тастери.
|          test-gui-line.cpp | Тестови: линије.
|          test-gui-nick.cpp | Тестови: надимци.
|          test-gui-nicklist.cpp | Тестови: функције листе надимака.
|          curses/ | Корен unit тестова за Curses интерфејс.
|             test-gui-curses-mouse.cpp | Тестови: миш (Curses интерфејс).
|       plugins/ | Корен unit тестова додатака.
|          irc/ | Корен unit тестова IRC додатка.
|             test-irc-batch.cpp | Тестови: IRC пакетни догађаји.
|             test-irc-buffer.cpp | Тестови: IRC бафери.
|             test-irc-channel.cpp | Тестови: IRC канали.
|             test-irc-color.cpp | Тестови: IRC боје.
| Путања/фајл | Опис
| tests/ | Корен тестова.
|    tests.cpp | Програм који се користи за извршавање свих тестова.
|    tests-record.cpp | Бележење и претрага у приказаним порукама.
|    scripts/ | Корен тестова за API скриптовања.
|       test-scripts.cpp | Програм који се користи за извршавање тестова API скриптовања.
|       python/ | Python скрипте које генеришу и покрећу тестове API скриптовања.
|          testapigen.py | Python скрипта која генерише скрипте на свим језицима за тестирање API скриптовања.
|          testapi.py | Python скрипта са тестовима API скриптовања, користи је скрипта testapigen.py.
|          unparse.py | Конверзија Python кода у остале језике, користи је скрипта testapigen.py.
|    unit/ | Корен unit тестова.
|       test-plugins.cpp | Тестови: plugins.
|       core/ | Корен unit тестова језгра.
|          test-core-arraylist.cpp | Тестови: arraylists.
|          test-core-calc.cpp | Тестови: калкулација израза.
|          test-core-command.cpp | Тестови: команде.
|          test-core-config-file.cpp | Тестови: конфигурациони фајлови.
|          test-core-crypto.cpp | Тестови: криптографске функције.
|          test-core-dir.cpp | Тестови: функције директоријума/фајла.
|          test-core-eval.cpp | Тестови: израчунавање израза.
|          test-core-hashtble.cpp | Тестови: hashtables.
|          test-core-hdata.cpp | Тестови: hdata.
|          test-core-hook.cpp | Тестови: куке.
|          test-core-infolist.cpp | Тестови: infolists.
|          test-core-list.cpp | Тестови: листе.
|          test-core-network.cpp | Тестови: мрежне функције.
|          test-core-secure.cpp | Тестови: обезбеђени подаци.
|          test-core-signal.cpp | Тестови: сигнали.
|          test-core-string.cpp | Тестови: стрингови.
|          test-core-url.cpp | Тестови: URL адресе.
|          test-core-utf8.cpp | Тестови: UTF-8.
|          test-core-util.cpp | Тестови: помоћне функције.
|       gui/ | Корен unit тестова интерфејса.
|          test-gui-bar-window.cpp | Тестови: функције прозора траке.
|          test-gui-buffer.cpp | Тестови: бафер функције.
|          test-gui-chat.cpp | Тестови: чет функције.
|          test-gui-color.cpp | Тестови: боје.
|          test-gui-filter.cpp | Тестови: филтери.
|          test-gui-input.cpp | Тестови: улазне функкције.
|          test-gui-key.cpp | Тестови: тастери.
|          test-gui-line.cpp | Тестови: линије.
|          test-gui-nick.cpp | Тестови: надимци.
|       plugins/ | Корен unit тестова додатака.
|          irc/ | Корен unit тестова IRC додатка.
|             test-irc-batch.cpp | Тестови: IRC пакетни догађаји.
|             test-irc-buffer.cpp | Тестови: IRC бафери.
|             test-irc-channel.cpp | Тестови: IRC канали.
|             test-irc-color.cpp | Тестови: IRC боје.
|             test-irc-config.cpp | Тестови: IRC конфигурација.
|             test-irc-ignore.cpp | Тестови: IRC игнорисања.
|             test-irc-join.cpp | Тестови: IRC функције приступања.
|             test-irc-message.cpp | Тестови: IRC поруке.
|             test-irc-mode.cpp | Тестови: IRC режими.
|             test-irc-nick.cpp | Тестови: IRC надимци.
|             test-irc-protocol.cpp | Тестови: IRC протокол.
|             test-irc-sasl.cpp | Тестови: SASL аутентификација са IRC протоколом.
|             test-irc-server.cpp | Тестови: IRC сервер.
|             test-irc-tag.cpp | Тестови: IRC ознаке порука.
|          logger/ | Корен unit тестива за logger додатак.
|             test-logger.cpp | Тестови: logger.
|             test-logger-backlog.cpp | Тестови: logger заостатак.
// TRANSLATION MISSING
|             test-irc-command.cpp | Tests: IRC commands.
|             test-irc-config.cpp | Тестови: IRC конфигурација.
|             test-irc-ctcp.cpp | Тестови: IRC CTCP.
|             test-irc-ignore.cpp | Тестови: IRC игнорисања.
|             test-irc-info.cpp | Тестови: IRC информације.
|             test-irc-join.cpp | Тестови: IRC функције приступања.
|             test-irc-list.cpp | Тестови: IRC бафер за одговор на /list команду.
|             test-irc-message.cpp | Тестови: IRC поруке.
|             test-irc-mode.cpp | Тестови: IRC режими.
|             test-irc-nick.cpp | Тестови: IRC надимци.
|             test-irc-protocol.cpp | Тестови: IRC протокол.
|             test-irc-sasl.cpp | Тестови: SASL аутентификација са IRC протоколом.
|             test-irc-server.cpp | Тестови: IRC сервер.
|             test-irc-tag.cpp | Тестови: IRC ознаке порука.
|          logger/ | Корен unit тестова за logger додатак.
|             test-logger.cpp | Тестови: logger.
|             test-logger-backlog.cpp | Тестови: logger заостатак.
|             test-logger-tail.cpp | Тестови: logger tail функције.
|          trigger/ | Корен unit тестова за окидач додатак.
|             test-trigger.cpp | Тестови: окидачи.
|             test-trigger-config.cpp | Тестови: конфигурација окидача.
|          typing/ | Корен unit тестова за typing додатак.
|             test-typing.cpp | Тестови: typing.
|             test-typing-status.cpp | Тестови: typing статус.
|          relay/ | Корен unit тестова за Релеј додатак.
|             test-relay-auth.cpp | Тестови: аутентификација клијената.
|             test-relay-http.cpp | Тестови: HTTP функције за Релеј додатак.
|             test-relay-remote.cpp | Тестови: удаљене функције за Релеј додатак.
|             test-relay-websocket.cpp | Тестови: websocket функције за Релеј додатак.
|             api/ | Корен unit тестова за Релеј „api” протокол.
|                test-relay-api.cpp | Тестови: Релеј „api” протокол: опште функције.
|                test-relay-api-msg.cpp | Тестови: Релеј „api” протокол: поруке.
|                test-relay-api-protocol.cpp | Тестови: Релеј „api” протокол: протокол.
|             irc/ | Корен unit тестова за Релеј „irc” протокол.
|                test-relay-irc.cpp | Тестови: Релеј „irc” протокол.
|          xfer/ | Корен unit тестова за Xfer додатак.
|             test-xfer-file.cpp | Тестови: фајл функције.
|             test-xfer-network.cpp | Тестови: мрежне функције.
|             test-logger-tail.cpp | Tests: logger tail functions.
|          trigger/ | Корен unit тестова за окидач додатак.
|             test-trigger.cpp | Тестови: окидачи.
|             test-trigger-config.cpp | Тестови: конфигурација окидача.
|          typing/ | Корен unit тестова за typing додатак.
|             test-typing.cpp | Тестови: typing.
|             test-typing-status.cpp | Тестови: typing статус.
|          relay/ | Корен unit тестова за Релеј додатак.
|             test-relay-auth.cpp | Тестови: аутентификација клијената.
// TRANSLATION MISSING
|             irc/ | Root of unit tests for Relay "irc" protocol.
// TRANSLATION MISSING
|                test-relay-irc.cpp | Tests: Relay "irc" protocol.
|          xfer/ | Корен unit тестова за Xfer додатак.
|             test-xfer-file.cpp | Тестови: фајл функције.
|             test-xfer-network.cpp | Тестови: мрежне функције.
|===
[[documentation_translations]]
@@ -573,7 +524,7 @@ WeeChat „језгро” се налази у следећим директо
/*
* weechat.c - core functions for WeeChat
*
* Copyright (C) 2024 Your Name <your@email.com>
* Copyright (C) 2023 Your Name <your@email.com>
*
* This file is part of WeeChat, the extensible chat client.
*
@@ -597,7 +548,7 @@ WeeChat „језгро” се налази у следећим директо
Када пишете C кôд, *морате* да се придржавате неких основних правила:
* За увлачење користите 4 размака (без табулатора).
* Користите 4 размака за увлачење редова. Не употребљавајте табове, они су зло.
* Покушајте да не прекорачите 80 карактера по линији, осим ако је то неопходно за читљивост.
* Користите коментаре `+/* коментар */+` (а не коментаре у C99 стилу као што је `+// коментар+`).
* Испред сваке функције додајте коментар који објашњава шта она ради (увек користите вишелинијски коментар, чак и ако је опис кратак).
@@ -800,7 +751,7 @@ new_hook_fd = malloc (sizeof (*new_hook_fd));
[width="100%", cols="2m,3", options="header"]
|===
| Директоријум | Фајлови
| src/core/ | weechat.c, core-backtrace.c, core-command.c, ...
| src/core/ | weechat.c, wee-backtrace.c, wee-command.c, ...
| src/gui/ | gui-bar.c, gui-bar-item.c, gui-bar-window.c, ...
| src/gui/curses/ | gui-curses-bar.c, gui-curses-bar-window.c, gui-curses-chat.c, ...
| src/plugins/ | plugin.c, plugin-api.c, plugin-api-info.c, plugin-config.c, plugin-script.c, ...
@@ -808,7 +759,7 @@ new_hook_fd = malloc (sizeof (*new_hook_fd));
| src/plugins/python/ | weechat-python.c, weechat-python-api.c, ...
|===
Заглавља C фајлова имају сито име као и фајл, на пример _core-command.h_ за фајл _core-command.c_.
Заглавља C фајлова имају сито име као и фајл, на пример _wee-command.h_ за фајл _wee-command.c_.
[[naming_convention_structures]]
==== Структуре
+21 -75
View File
@@ -517,31 +517,6 @@ UXTerm*metaSendsEscape: true
Ако користите macOS Terminal апликацију, укључите опцију „Use option as meta key” у менију Settings/Keyboard након чега можете користити тастер kbd:[Option] као meta тастер.
[[enter_key]]
=== Зашто неки тастери, укључујући Ентер, не функционишу?
Ако извршавате WeeChat < 4.0.0 са конфигурационим фајловима које је креирала било
која верзија ≥ 4.0.0, имена тастера постану неисправна и многи тастери уопште неће радити. +
Да бисте их поправили, напустите WeeChat, уклоните из weechat.conf све одељке `[key*]`
и поново покрените WeeChat: креираће се сви подразумевани тастери.
[[key_f11]]
=== Тастер F11 максимизира прозор терминала, како могу да скролујем навише листу надимака?
Терминало обично користе тастер kbd:[F11] да максимизују прозор, а у програму WeeChat
тастери kbd:[F11]/kbd:[F12] су подразумевани тастери за скроловање листе надимака.
Можете да вежете остале тастере, на пример kbd:[Shift+F11] и kbd:[Shift+F12],
у WeeChat ≥ 4.0.0:
----
/key bind shift-f11 /bar scroll nicklist * -100%
/key bind shift-f12 /bar scroll nicklist * +100%
----
Још једно решење је да укључите миша (тастер: kbd:[Alt+m]) и да скролујете точкићем
миша (погледајте такође питање у вези са <<mouse,мишем>>).
[[customize_key_bindings]]
=== Како могу да прилагодим тастерске пречице?
@@ -568,12 +543,6 @@ UXTerm*metaSendsEscape: true
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
За једноставно скакање на бафере, можете такође да инсталирате и _go.py_ скрипту:
----
/script install go.py
----
[[global_history]]
=== Како да се тастерима горе и доле користи глобална историја (уместо историје бафера)?
@@ -846,20 +815,32 @@ link:weechat_user.sr.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^
можете користити да за неке надимке подесите максимални ниво вруће листе, по баферу, или по
групи бафера (као на пример IRC сервери).
Ако само желите да искључите истицања, треба да је поставите на 2.
За текући бафер:
Ако само желите да искључите истицања, треба да је поставите на 2:
----
/buffer setauto hotlist_max_level_nicks_add пера:2,мика:2
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----
За све канале на серверу „libera”:
Међутим, ова особина бафера се не чува у конфигурацији. Ако желите да се ове особине бафера аутоматски поново примене, биће вам потребна скрипта _buffer_autoset.py_:
----
/set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add пера:2,мика:2
/script install buffer_autoset.py
----
На пример, ако за стално желите да искључите истицања од надимка „mike” са #weechat на IRC серверу libera:
----
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----
Ако уместо овога желите да се примени на комплетан libera сервер:
----
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----
За још примера, погледајте `+/help buffer_autoset+`.
[[irc_target_buffer]]
=== Како могу да променим циљни бафер за команде над спојеним баферима (као што је бафер са серверима)?
@@ -976,8 +957,7 @@ export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
Можете да следите исте савете као за <<memory_usage,меморију>>, као и следеће:
* Сакријте „nicklist” траку: `/bar hide nicklist` (тастер: kbd:[Alt+Shift+N]).
* Искључите „buflist”: `/buflist disable` (тастер: kbd:[Alt+Shift+B]).
* Сакријте „nicklist” траку: `/bar hide nicklist`.
* Уклоните приказ секунди из времена у статусној траци: `+/set weechat.look.item_time_format "%H:%M"+` (ово је и подразумевана вредност).
* Искључите проверу неисправно написаних речи у командној линији у реалном времену (ако сте је укључили): `+/set spell.check.real_time off+`.
* Поставите променљиву _TZ_ (на пример: `export TZ="Europe/Paris"`), тиме спречавате чест приступ фајлу _/etc/localtime_.
@@ -996,20 +976,14 @@ export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
----
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
----
Са WeeChat < 4.1.0, на остале CTCP упите се подразумевано одговарало и такође морају
да се искључе:
----
/set irc.ctcp.finger ""
/set irc.ctcp.userinfo ""
----
Уклоните из меморије и искључите ауто учитавање „xfer” додатка (користи се за IRC DCC):
----
@@ -1038,34 +1012,6 @@ export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
Погледајте link:weechat_user.sr.html#files_and_directories[Корисничко упутство / Фајлови и директоријуми ^↗^^] за више информација о конфигурационим фајловима.
[[move_to_another_device]]
=== Желим да преместим свој WeeChat на други уређај и да задржим текућу конфигурацију, шта би требало да копирам?
Следећом командом најпре проверите које директоријуме користи WeeChat: `/debug dirs`. +
Морају да се копирају директоријуми home/config и home/data (сви фајлови и поддиректоријуми).
На пример, ако користите XDG директоријуме (подразумевано са WeeChat ≥ 3.2),
директоријуми би требало да буду `$HOME/.config/weechat` и `$HOME/.local/share/weechat`. +
Ако користите један директоријум (подразумевано са WeeChat < 3.2), директоријум би
требало да буде `$HOME/.weechat`.
[IMPORTANT]
WeeChat верзија на новом уређају мора да буде већа или једнака од верзије на почетном
уређају. +
Враћање WeeChat конфигурације уназад *НИЈЕ ПОДРЖАНО* и може да је поквари,
па на тај начин WeeChat постаје неупотребљив.
Кораци:
. Напустите Weechat: `/quit` (или `/upgrade -quit` ако желите могућност да наставите сесију,
што укључује садржај свих бафера).
. Копирајте све директоријуме, поддиректоријуме и фајлове на нови уређај, задржавајући
иста имена и дозволе.
. Није обавезно: копирајте све фајлове ван ових директоријума на које указује ваша
конфигурација (не препоручује се употреба фајлова ван WeeChat директоријума).
. Покрените WeeChat на новом уређају: `weechat` (или `weechat --upgrade` у случају да сте
сачували сесију).
[[development]]
== Развој
File diff suppressed because it is too large Load Diff
+23 -35
View File
@@ -92,7 +92,8 @@ _клијенти_ су повезани са _релејем_ као што ј
[[command_handshake]]
=== handshake
_WeeChat ≥ 2.9, ажурирано у верзијама 3.5, 4.0.0._
// TRANSLATION MISSING
_WeeChat ≥ 2.9, updated in versions 3.5, 4.0.0._
Извршава руковање између клијента и програма WeeChat: ово је у већини случајева неопходно како би се сазнале поставке сесије и припремила аутентификација командом _init_.
@@ -122,10 +123,11 @@ _WeeChat ≥ 2.9, ажурирано у верзијама 3.5, 4.0.0._
*** _zstd_: компресија са https://facebook.github.io/zstd/[Zstandard ^↗^^]: боља
компресија, као и много бржа компресија и декомпресија у односу на _zlib_
_(WeeChat ≥ 3.5)_
** _escape_commands_: команде које клијент шаље релеју морају да се означе:
све обрнуте косе црте се интерпретирају и једна обрнута коса црта мора да се означи (`\\`);
на овај начин клијент, на пример, може да шаље вишелинијске поруке (карактери `\n` се
претварају у преломе редова, погледајте <<command_input,input команду>>)
// TRANSLATION MISSING
** _escape_commands_: commands sent by the client to relay must be escaped:
all backslashes are interpreted and a single backslash must be escaped (`\\`);
this allows for example the client to send multiline messages (chars `\n` are
converted to newlines, see <<command_input,input command>>)
_(WeeChat ≥ 4.0.0)_
Напомене у вези опције _password_hash_algo_:
@@ -156,9 +158,10 @@ _WeeChat ≥ 2.9, ажурирано у верзијама 3.5, 4.0.0._
** _off_: поруке се не компресују
** _zlib_: поруке су компресоване са https://zlib.net/[zlib ^↗^^]
** _zstd_: поруке су компресоване са https://facebook.github.io/zstd/[Zstandard ^↗^^]
// TRANSLATION MISSING
* _escape_commands_:
** _on_: све обрнуте косе црте у порукама клијента се интерпретирају
** _off_: обрнуте косе црте у порукама клијента се *НЕ* интерпретирају и користе се онакве какве су
** _on_: all backslashes are interpreted in the client messages
** _off_: backslashes are *NOT* interpreted in the client messages and used as-is
[TIP]
У програму WeeChat верзије ≤ 2.8, команда _handshake_ није имплементирана, програм WeeChat једноставно игнорише ову команду, чак и ако се пошаље пре _init_ команде. +
@@ -439,9 +442,7 @@ hda:
'buffer': 'ptr',
'y': 'int',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'str_time': 'str',
'tags_count': 'int',
'tags_array': 'arr',
@@ -459,9 +460,7 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404926
date_usec: 118712
date_printed: 1588404926
date_usec_printed: 118712
str_time: 'F@0025209F@0024535F@0024026'
tags_count: 0
tags_array: []
@@ -477,9 +476,7 @@ hda:
buffer: '0x558d61ea3e60'
y: -1
date: 1588404930
date_usec: 25
date_printed: 1588404930
date_usec_printed: 25
str_time: 'F@0025209F@0024535F@0024030'
tags_count: 0
tags_array: []
@@ -656,7 +653,6 @@ inl:
nicklist_visible_count: 0
title: 'WeeChat 2.9-dev (C) 2003-2020 - https://weechat.org/'
input: 1
input_get_any_user_data: 0
input_get_unknown_commands: 0
input_get_empty: 0
input_multiline: 0
@@ -668,14 +664,11 @@ inl:
input_buffer_1st_display: 0
num_history: 0
text_search: 0
text_search_direction: 0
text_search_exact: 0
text_search_regex: 0
text_search_regex_compiled: '0x0'
text_search_where: 0
text_search_history: 0
text_search_found: 0
text_search_ptr_history: '0x0'
text_search_input: None
highlight_words: None
highlight_disable_regex: None
@@ -954,8 +947,9 @@ input core.weechat /help filter
input irc.libera.#weechat здраво!
----
* Шаље вишелинијску поруку на #test канал (опција _escape_commands_ мора да буде
укључена у <<command_handshake,handshake команди>> и потребан је
// TRANSLATION MISSING
* Send multiline message to #test channel (option _escape_commands_ must have
been enabled in <<command_handshake,handshake command>> and requires
WeeChat ≥ 4.0.0):
----
@@ -1953,18 +1947,16 @@ hda:
[width="100%", cols="3m,2,10", options="header"]
|===
| Име | Тип | Опис
| buffer | показивач | Показивач на бафер.
| date | време | Датум поруке.
| date_usec | цео број | Микросекунде датума.
| date_printed | време | Датум када је програм WeeChat приказао поруку.
| date_usec_printed | цео број | Микросекунде датума када је WeeChat приказао поруку.
| displayed | карактер | 1 ако је порука приказана, 0 ако је порука филтрирана (скривена).
| notify_level | карактер | Ниво обавештења: -1 = обавештење искључено, 0 = ниски, 1 = порука, 2 = приватно, 3 = истицање.
| highlight | карактер | 1 ако се у линији налази истицање, у супротном 0.
| tags_array | низ стрингова | Листа ознака за линију.
| prefix | стринг | Префикс.
| message | стринг | Порука.
| Име | Тип | Опис
| buffer | показивач | Показивач на бафер.
| date | време | Датум поруке.
| date_printed | време | Датум када је програм WeeChat приказао поруку.
| displayed | карактер | 1 ако је порука приказана, 0 ако је порука филтрирана (скривена).
| notify_level | карактер | Ниво обавештења: -1 = обавештење искључено, 0 = ниски, 1 = порука, 2 = приватно, 3 = истицање.
| highlight | карактер | 1 ако се у линији налази истицање, у супротном 0.
| tags_array | низ стрингова | Листа ознака за линију.
| prefix | стринг | Префикс.
| message | стринг | Порука.
|===
Пример: нова порука _здраво!_ од надимка _FlashCode_ у баферу _irc.libera.#weechat_:
@@ -1976,9 +1968,7 @@ hda:
keys: {
'buffer': 'ptr',
'date': 'tim',
'date_usec': 'int',
'date_printed': 'tim',
'date_usec_printed': 'int',
'displayed': 'chr',
'notify_level': 'chr',
'highlight': 'chr',
@@ -1991,9 +1981,7 @@ hda:
__path: ['0x4a49600']
buffer: '0x4a715d0'
date: 1362728993
date_usec: 902765
date_printed: 1362728993
date_usec_printed: 902765
displayed: 1
notify_level: 1
highlight: 0
+303 -2
View File
@@ -510,14 +510,315 @@ weechat_hook_timer(1000, 0, 1, $timer_cb, 'test');
Листа функција у API скриптовања:
include::{autogendir}/autogen_scripting_functions.sr.adoc[tag=functions]
[width="100%", cols="1,5", options="header"]
|===
| Категорија | Функције
| опште
| register
| додаци
| plugin_get_name
| стрингови
| charset_set +
iconv_to_internal +
iconv_from_internal +
gettext +
ngettext +
strlen_screen +
string_match +
string_match_list +
string_has_highlight +
string_has_highlight_regex +
string_mask_to_regex +
string_format_size +
string_parse_size +
string_color_code_size +
string_remove_color +
string_is_command_char +
string_input_for_buffer +
string_eval_expression +
string_eval_path_home
| директоријуми
| mkdir_home +
mkdir +
mkdir_parents
| сортиране листе
| list_new +
list_add +
list_search +
list_search_pos +
list_casesearch +
list_casesearch_pos +
list_get +
list_set +
list_next +
list_prev +
list_string +
list_size +
list_remove +
list_remove_all +
list_free
| кофнигурациони фајлови
| config_new +
config_new_section +
config_search_section +
config_new_option +
config_search_option +
config_string_to_boolean +
config_option_reset +
config_option_set +
config_option_set_null +
config_option_unset +
config_option_rename +
config_option_is_null +
config_option_default_is_null +
config_boolean +
config_boolean_default +
config_integer +
config_integer_default +
config_string +
config_string_default +
config_color +
config_color_default +
config_write_option +
config_write_line +
config_write +
config_read +
config_reload +
config_option_free +
config_section_free_options +
config_section_free +
config_free +
config_get +
config_get_plugin +
config_is_set_plugin +
config_set_plugin +
config_set_desc_plugin +
config_unset_plugin
| тастерске пречице
| key_bind +
key_unbind
| приказ
| prefix +
color +
print (за python: prnt) +
print_date_tags (за python: prnt_date_tags) +
print_y (за python: prnt_y) +
print_y_date_tags (за python: prnt_y_date_tags) +
log_print
| куке
| hook_command +
hook_command_run +
hook_timer +
hook_fd +
hook_process +
hook_process_hashtable +
hook_connect +
hook_line +
hook_print +
hook_signal +
hook_signal_send +
hook_hsignal +
hook_hsignal_send +
hook_config +
hook_completion +
hook_modifier +
hook_modifier_exec +
hook_info +
hook_info_hashtable +
hook_infolist +
hook_focus +
hook_set +
unhook +
unhook_all
| бафери
| buffer_new +
buffer_new_props +
current_buffer +
buffer_search +
buffer_search_main +
buffer_clear +
buffer_close +
buffer_merge +
buffer_unmerge +
buffer_get_integer +
buffer_get_string +
buffer_get_pointer +
buffer_set +
buffer_string_replace_local_var +
buffer_match_list
| прозори
| current_window +
window_search_with_buffer +
window_get_integer +
window_get_string +
window_get_pointer +
window_set_title
| листа надимака
| nicklist_add_group +
nicklist_search_group +
nicklist_add_nick +
nicklist_search_nick +
nicklist_remove_group +
nicklist_remove_nick +
nicklist_remove_all +
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
| траке
| bar_item_search +
bar_item_new +
bar_item_update +
bar_item_remove +
bar_search +
bar_new +
bar_set +
bar_update +
bar_remove
| команде
| command +
command_options
| довршавање
| completion_new +
completion_search +
completion_get_string +
completion_list_add +
completion_free
| infos
| info_get +
info_get_hashtable
| infolists
| infolist_new +
infolist_new_item +
infolist_new_var_integer +
infolist_new_var_string +
infolist_new_var_pointer +
infolist_new_var_time +
infolist_get +
infolist_next +
infolist_prev +
infolist_reset_item_cursor +
infolist_search_var +
infolist_fields +
infolist_integer +
infolist_string +
infolist_pointer +
infolist_time +
infolist_free
| hdata
| hdata_get +
hdata_get_var_offset +
hdata_get_var_type_string +
hdata_get_var_array_size +
hdata_get_var_array_size_string +
hdata_get_var_hdata +
hdata_get_list +
hdata_check_pointer +
hdata_move +
hdata_search +
hdata_char +
hdata_integer +
hdata_long +
hdata_string +
hdata_pointer +
hdata_time +
hdata_hashtable +
hdata_compare +
hdata_update +
hdata_get_string
| ажурирање
| upgrade_new +
upgrade_write_object +
upgrade_read +
upgrade_close
|===
[[script_api_constants]]
=== Константе
Листа константи у API скриптовања:
include::{autogendir}/autogen_scripting_constants.sr.adoc[tag=constants]
[width="100%", cols="1,5", options="header"]
|===
| Категорија | Константе
| повратни кодови
| `WEECHAT_RC_OK` (цео број) +
`WEECHAT_RC_OK_EAT` (цео број) +
`WEECHAT_RC_ERROR` (цео број)
| конфигурациони фајлови
| `WEECHAT_CONFIG_READ_OK` (цео број) +
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (цео број) +
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (цео број) +
`WEECHAT_CONFIG_WRITE_OK` (цео број) +
`WEECHAT_CONFIG_WRITE_ERROR` (цео број) +
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (цео број) +
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (цео број) +
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (цео број) +
`WEECHAT_CONFIG_OPTION_SET_ERROR` (цео број) +
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (цео број) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (цео број) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (цео број) +
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (цео број) +
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (цео број)
| сортиране листе
| `WEECHAT_LIST_POS_SORT` (стринг) +
`WEECHAT_LIST_POS_BEGINNING` (стринг) +
`WEECHAT_LIST_POS_END` (стринг)
| врућа листа
| `WEECHAT_HOTLIST_LOW` (стринг) +
`WEECHAT_HOTLIST_MESSAGE` (стринг) +
`WEECHAT_HOTLIST_PRIVATE` (стринг) +
`WEECHAT_HOTLIST_HIGHLIGHT` (стринг)
| кука process
| `WEECHAT_HOOK_PROCESS_RUNNING` (цео број) +
`WEECHAT_HOOK_PROCESS_ERROR` (цео број)
| кука connect
| `WEECHAT_HOOK_CONNECT_OK` (цео број) +
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (цео број) +
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (цео број) +
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (цео број) +
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (цео број) +
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (цео број) +
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (цео број) +
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (цео број) +
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (цео број) +
`WEECHAT_HOOK_CONNECT_TIMEOUT` (цео број) +
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (цео број)
| кука signal
| `WEECHAT_HOOK_SIGNAL_STRING` (стринг) +
`WEECHAT_HOOK_SIGNAL_INT` (стринг) +
`WEECHAT_HOOK_SIGNAL_POINTER` (стринг)
|===
[[common_tasks]]
== Уобичајени задаци
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+1 -1
View File
@@ -1,5 +1,5 @@
#
# Copyright (C) 2003-2024 Sébastien Helleu <flashcode@flashtux.org>
# Copyright (C) 2003-2023 Sébastien Helleu <flashcode@flashtux.org>
#
# This file is part of WeeChat, the extensible chat client.
#
+3118 -5768
View File
File diff suppressed because it is too large Load Diff
+5075 -6554
View File
File diff suppressed because it is too large Load Diff
+3522 -5810
View File
File diff suppressed because it is too large Load Diff
+4909 -6364
View File
File diff suppressed because it is too large Load Diff
+2651 -5334
View File
File diff suppressed because it is too large Load Diff
+3257 -5837
View File
File diff suppressed because it is too large Load Diff
+4515 -6149
View File
File diff suppressed because it is too large Load Diff
+6038 -6394
View File
File diff suppressed because it is too large Load Diff
+4225 -6022
View File
File diff suppressed because it is too large Load Diff
+3066 -5663
View File
File diff suppressed because it is too large Load Diff
+2652 -5351
View File
File diff suppressed because it is too large Load Diff
+4972 -6231
View File
File diff suppressed because it is too large Load Diff
+100 -122
View File
@@ -1,110 +1,106 @@
SET(WEECHAT_SOURCES
./src/core/hook/hook-command.c
./src/core/hook/hook-command.h
./src/core/hook/hook-command-run.c
./src/core/hook/hook-command-run.h
./src/core/hook/hook-completion.c
./src/core/hook/hook-completion.h
./src/core/hook/hook-config.c
./src/core/hook/hook-config.h
./src/core/hook/hook-connect.c
./src/core/hook/hook-connect.h
./src/core/hook/hook-fd.c
./src/core/hook/hook-fd.h
./src/core/hook/hook-focus.c
./src/core/hook/hook-focus.h
./src/core/hook/hook-hdata.c
./src/core/hook/hook-hdata.h
./src/core/hook/hook-hsignal.c
./src/core/hook/hook-hsignal.h
./src/core/hook/hook-info.c
./src/core/hook/hook-info.h
./src/core/hook/hook-info-hashtable.c
./src/core/hook/hook-info-hashtable.h
./src/core/hook/hook-infolist.c
./src/core/hook/hook-infolist.h
./src/core/hook/hook-line.c
./src/core/hook/hook-line.h
./src/core/hook/hook-modifier.c
./src/core/hook/hook-modifier.h
./src/core/hook/hook-print.c
./src/core/hook/hook-print.h
./src/core/hook/hook-process.c
./src/core/hook/hook-process.h
./src/core/hook/hook-signal.c
./src/core/hook/hook-signal.h
./src/core/hook/hook-timer.c
./src/core/hook/hook-timer.h
./src/core/hook/hook-url.c
./src/core/hook/hook-url.h
./src/core/core-arraylist.c
./src/core/core-arraylist.h
./src/core/core-backtrace.c
./src/core/core-backtrace.h
./src/core/core-calc.c
./src/core/core-calc.h
./src/core/hook/wee-hook-command.c
./src/core/hook/wee-hook-command.h
./src/core/hook/wee-hook-command-run.c
./src/core/hook/wee-hook-command-run.h
./src/core/hook/wee-hook-completion.c
./src/core/hook/wee-hook-completion.h
./src/core/hook/wee-hook-config.c
./src/core/hook/wee-hook-config.h
./src/core/hook/wee-hook-connect.c
./src/core/hook/wee-hook-connect.h
./src/core/hook/wee-hook-fd.c
./src/core/hook/wee-hook-fd.h
./src/core/hook/wee-hook-focus.c
./src/core/hook/wee-hook-focus.h
./src/core/hook/wee-hook-hdata.c
./src/core/hook/wee-hook-hdata.h
./src/core/hook/wee-hook-hsignal.c
./src/core/hook/wee-hook-hsignal.h
./src/core/hook/wee-hook-info.c
./src/core/hook/wee-hook-info.h
./src/core/hook/wee-hook-info-hashtable.c
./src/core/hook/wee-hook-info-hashtable.h
./src/core/hook/wee-hook-infolist.c
./src/core/hook/wee-hook-infolist.h
./src/core/hook/wee-hook-line.c
./src/core/hook/wee-hook-line.h
./src/core/hook/wee-hook-modifier.c
./src/core/hook/wee-hook-modifier.h
./src/core/hook/wee-hook-print.c
./src/core/hook/wee-hook-print.h
./src/core/hook/wee-hook-process.c
./src/core/hook/wee-hook-process.h
./src/core/hook/wee-hook-signal.c
./src/core/hook/wee-hook-signal.h
./src/core/hook/wee-hook-timer.c
./src/core/hook/wee-hook-timer.h
./src/core/wee-arraylist.c
./src/core/wee-arraylist.h
./src/core/wee-backtrace.c
./src/core/wee-backtrace.h
./src/core/wee-calc.c
./src/core/wee-calc.h
./src/core/weechat.c
./src/core/weechat.h
./src/core/core-command.c
./src/core/core-command.h
./src/core/core-completion.c
./src/core/core-completion.h
./src/core/core-config.c
./src/core/core-config-file.c
./src/core/core-config-file.h
./src/core/core-config.h
./src/core/core-crypto.c
./src/core/core-crypto.h
./src/core/core-debug.c
./src/core/core-debug.h
./src/core/core-dir.c
./src/core/core-dir.h
./src/core/core-doc.c
./src/core/core-doc.h
./src/core/core-eval.c
./src/core/core-eval.h
./src/core/core-hashtable.c
./src/core/core-hashtable.h
./src/core/core-hdata.c
./src/core/core-hdata.h
./src/core/core-hook.c
./src/core/core-hook.h
./src/core/core-infolist.c
./src/core/core-infolist.h
./src/core/core-input.c
./src/core/core-input.h
./src/core/core-list.c
./src/core/core-list.h
./src/core/core-log.c
./src/core/core-log.h
./src/core/core-network.c
./src/core/core-network.h
./src/core/core-proxy.c
./src/core/core-proxy.h
./src/core/core-secure-buffer.c
./src/core/core-secure-buffer.h
./src/core/core-secure.c
./src/core/core-secure-config.c
./src/core/core-secure-config.h
./src/core/core-secure.h
./src/core/core-signal.c
./src/core/core-signal.h
./src/core/core-string.c
./src/core/core-string.h
./src/core/core-sys.c
./src/core/core-sys.h
./src/core/core-upgrade.c
./src/core/core-upgrade-file.c
./src/core/core-upgrade-file.h
./src/core/core-upgrade.h
./src/core/core-url.c
./src/core/core-url.h
./src/core/core-utf8.c
./src/core/core-utf8.h
./src/core/core-util.c
./src/core/core-util.h
./src/core/core-version.c
./src/core/core-version.h
./src/core/wee-command.c
./src/core/wee-command.h
./src/core/wee-completion.c
./src/core/wee-completion.h
./src/core/wee-config.c
./src/core/wee-config-file.c
./src/core/wee-config-file.h
./src/core/wee-config.h
./src/core/wee-crypto.c
./src/core/wee-crypto.h
./src/core/wee-debug.c
./src/core/wee-debug.h
./src/core/wee-dir.c
./src/core/wee-dir.h
./src/core/wee-doc.c
./src/core/wee-doc.h
./src/core/wee-eval.c
./src/core/wee-eval.h
./src/core/wee-hashtable.c
./src/core/wee-hashtable.h
./src/core/wee-hdata.c
./src/core/wee-hdata.h
./src/core/wee-hook.c
./src/core/wee-hook.h
./src/core/wee-infolist.c
./src/core/wee-infolist.h
./src/core/wee-input.c
./src/core/wee-input.h
./src/core/wee-list.c
./src/core/wee-list.h
./src/core/wee-log.c
./src/core/wee-log.h
./src/core/wee-network.c
./src/core/wee-network.h
./src/core/wee-proxy.c
./src/core/wee-proxy.h
./src/core/wee-secure-buffer.c
./src/core/wee-secure-buffer.h
./src/core/wee-secure.c
./src/core/wee-secure-config.c
./src/core/wee-secure-config.h
./src/core/wee-secure.h
./src/core/wee-signal.c
./src/core/wee-signal.h
./src/core/wee-string.c
./src/core/wee-string.h
./src/core/wee-upgrade.c
./src/core/wee-upgrade-file.c
./src/core/wee-upgrade-file.h
./src/core/wee-upgrade.h
./src/core/wee-url.c
./src/core/wee-url.h
./src/core/wee-utf8.c
./src/core/wee-utf8.h
./src/core/wee-util.c
./src/core/wee-util.h
./src/core/wee-version.c
./src/core/wee-version.h
./src/gui/curses/gui-curses-bar-window.c
./src/gui/curses/gui-curses-bar-window.h
./src/gui/curses/gui-curses-chat.c
@@ -183,8 +179,6 @@ SET(WEECHAT_SOURCES
./src/plugins/buflist/buflist.c
./src/plugins/buflist/buflist-command.c
./src/plugins/buflist/buflist-command.h
./src/plugins/buflist/buflist-completion.c
./src/plugins/buflist/buflist-completion.h
./src/plugins/buflist/buflist-config.c
./src/plugins/buflist/buflist-config.h
./src/plugins/buflist/buflist.h
@@ -264,8 +258,6 @@ SET(WEECHAT_SOURCES
./src/plugins/irc/irc-input.h
./src/plugins/irc/irc-join.c
./src/plugins/irc/irc-join.h
./src/plugins/irc/irc-list.c
./src/plugins/irc/irc-list.h
./src/plugins/irc/irc-message.c
./src/plugins/irc/irc-message.h
./src/plugins/irc/irc-mode.c
@@ -344,16 +336,6 @@ SET(WEECHAT_SOURCES
./src/plugins/python/weechat-python-api.h
./src/plugins/python/weechat-python.c
./src/plugins/python/weechat-python.h
./src/plugins/relay/api/relay-api.c
./src/plugins/relay/api/relay-api.h
./src/plugins/relay/api/relay-api-msg.c
./src/plugins/relay/api/relay-api-msg.h
./src/plugins/relay/api/relay-api-protocol.c
./src/plugins/relay/api/relay-api-protocol.h
./src/plugins/relay/api/remote/relay-remote-event.c
./src/plugins/relay/api/remote/relay-remote-event.h
./src/plugins/relay/api/remote/relay-remote-network.c
./src/plugins/relay/api/remote/relay-remote-network.h
./src/plugins/relay/irc/relay-irc.c
./src/plugins/relay/irc/relay-irc.h
./src/plugins/relay/relay-auth.c
@@ -370,16 +352,12 @@ SET(WEECHAT_SOURCES
./src/plugins/relay/relay-config.c
./src/plugins/relay/relay-config.h
./src/plugins/relay/relay.h
./src/plugins/relay/relay-http.c
./src/plugins/relay/relay-http.h
./src/plugins/relay/relay-info.c
./src/plugins/relay/relay-info.h
./src/plugins/relay/relay-network.c
./src/plugins/relay/relay-network.h
./src/plugins/relay/relay-raw.c
./src/plugins/relay/relay-raw.h
./src/plugins/relay/relay-remote.c
./src/plugins/relay/relay-remote.h
./src/plugins/relay/relay-server.c
./src/plugins/relay/relay-server.h
./src/plugins/relay/relay-upgrade.c
+5065 -6294
View File
File diff suppressed because it is too large Load Diff

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