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

Compare commits

..

50 Commits

Author SHA1 Message Date
Sébastien Helleu dc692fd04a core, relay: fix include directory of libzstd 2024-05-26 23:54:34 +02:00
Sébastien Helleu 61e9fcb36b irc: fix crash in split of IRC message containing a newline if the server is not given 2024-05-25 19:54:53 +02:00
Sébastien Helleu 720a7e5a99 python: fix truncation of unsigned long long integer returned by function string_parse_size 2024-02-25 17:10:32 +01:00
Sébastien Helleu 33a6c852b7 tcl: fix truncation of long integer returned by function hdata_long 2024-02-25 16:16:02 +01:00
Sébastien Helleu 53fdd3458b core: add missing mouse events "alt-ctrl-button2" and "alt-ctrl-button3" 2024-02-25 13:46:24 +01:00
Sébastien Helleu 32c66a10a5 script: always display list of scripts when searching scripts with /script search (issue #2077) 2024-02-21 21:39:03 +01:00
Sébastien Helleu 134b639782 script: fix default mouse keys (issue #2076)
Some parameters of command `/script` were renamed in commit
85b5bacfe3 but the default mouse keys were not
changed and still using the old parameters names.
2024-02-21 21:16:25 +01:00
Sébastien Helleu 3ac74b94db trigger: fix memory leak when adding a new trigger with /trigger command 2024-02-10 17:58:24 +01:00
Faisal N Jawdat 769b64fb5b ruby: add detection of Ruby 3.3 2024-02-04 14:14:34 +01:00
Sébastien Helleu 870ae139a8 ci: remove tests on macOS 11 2024-02-04 14:07:08 +01:00
Sébastien Helleu 1eeb76a9ad Version 4.1.4-dev 2024-02-04 14:06:50 +01:00
Sébastien Helleu ad4529dc39 Version 4.1.3 2024-01-20 09:18:02 +01:00
Sébastien Helleu aff7a19339 core: add release notes for next version 2024-01-20 09:12:35 +01:00
Sébastien Helleu 1eed2d0e50 core: add version 4.0.8 in ChangeLog and release notes 2024-01-20 09:11:53 +01:00
Sébastien Helleu 5cb0f201f5 irc: check if arguments are not NULL in some infos
Affected infos:

- irc_server_isupport
- irc_server_isupport_value
- irc_server_cap
- irc_server_cap_value
2024-01-12 18:02:54 +01:00
Sébastien Helleu 4cd22e470c irc: fix info "irc_is_message_ignored" (issue #2059) 2024-01-12 18:02:31 +01:00
Sébastien Helleu 97b9d4b26e irc: fix display of self messages in case of message split failure
When the message sends inconsistent max lengths in message 005, the split of
self message fails and causes a display issue: the channel name is displayed
with the message:

  nick | #channel :this is a test

instead of:

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

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