mirror of
https://github.com/weechat/weechat.git
synced 2026-06-13 14:44:46 +02:00
Compare commits
20 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| dc692fd04a | |||
| 61e9fcb36b | |||
| 720a7e5a99 | |||
| 33a6c852b7 | |||
| 53fdd3458b | |||
| 32c66a10a5 | |||
| 134b639782 | |||
| 3ac74b94db | |||
| 769b64fb5b | |||
| 870ae139a8 | |||
| 1eeb76a9ad | |||
| ad4529dc39 | |||
| aff7a19339 | |||
| 1eed2d0e50 | |||
| 5cb0f201f5 | |||
| 4cd22e470c | |||
| 97b9d4b26e | |||
| f0394bf486 | |||
| 94616b4294 | |||
| 1ade7c54a2 |
@@ -85,7 +85,6 @@ jobs:
|
||||
matrix:
|
||||
os:
|
||||
- macos-12
|
||||
- macos-11
|
||||
config:
|
||||
- { name: "gcc", cc: "gcc", cxx: "g++" }
|
||||
- { name: "clang", cc: "clang", cxx: "clang++" }
|
||||
|
||||
@@ -10,6 +10,35 @@ 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.1.4]]
|
||||
== Version 4.1.4 (under dev)
|
||||
|
||||
Bug fixes::
|
||||
|
||||
* core, relay: fix include directory of libzstd
|
||||
* core: add missing mouse events "alt-ctrl-button2" and "alt-ctrl-button3"
|
||||
* 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
|
||||
* script: always display list of scripts when searching scripts with `/script search` (issue #2077)
|
||||
* script: fix default mouse keys (issue #2076)
|
||||
* tcl: fix truncation of long integer returned by function hdata_long
|
||||
* trigger: fix memory leak when adding a new trigger with `/trigger` command
|
||||
|
||||
Build::
|
||||
|
||||
* ruby: add detection of Ruby 3.3
|
||||
|
||||
[[v4.1.3]]
|
||||
== Version 4.1.3 (2024-01-20)
|
||||
|
||||
Bug fixes::
|
||||
|
||||
* core: fix crash on plugin reload when using musl libc (issue #2052)
|
||||
* core: fix infinite loop in display when the chat area is too small (issue #2053)
|
||||
* irc: check if arguments are not NULL in some infos
|
||||
* irc: fix info "irc_is_message_ignored" (issue #2059)
|
||||
* irc: fix display of self messages when the message split fails due to inconsistent max lengths sent by the server in message 005
|
||||
|
||||
[[v4.1.2]]
|
||||
== Version 4.1.2 (2023-12-03)
|
||||
|
||||
@@ -109,6 +138,17 @@ Build::
|
||||
* core: fix build error if CMake option ENABLE_NLS is turned to off or if required dependencies are not found (issue #2026)
|
||||
* core, logger, relay: make zstd dependency optional (issue #2024)
|
||||
|
||||
[[v4.0.8]]
|
||||
== Version 4.0.8 (2024-01-20)
|
||||
|
||||
Bug fixes::
|
||||
|
||||
* core: fix crash on plugin reload when using musl libc (issue #2052)
|
||||
* core: fix infinite loop in display when the chat area is too small (issue #2053)
|
||||
* irc: check if arguments are not NULL in some infos
|
||||
* irc: fix info "irc_is_message_ignored" (issue #2059)
|
||||
* irc: fix display of self messages when the message split fails due to inconsistent max lengths sent by the server in message 005
|
||||
|
||||
[[v4.0.7]]
|
||||
== Version 4.0.7 (2023-12-03)
|
||||
|
||||
|
||||
@@ -11,6 +11,30 @@ It is recommended to read it when upgrading to a new stable version. +
|
||||
For a complete list of changes, please look at ChangeLog.
|
||||
|
||||
|
||||
[[v4.1.4]]
|
||||
== Version 4.1.4 (under dev)
|
||||
|
||||
[[v4.1.4_script_keys]]
|
||||
=== Script keys
|
||||
|
||||
Some arguments to the `/script` command were renamed in version 4.1.0, but the
|
||||
keys using these arguments were not changed at same time.
|
||||
|
||||
They're now using the new arguments by default, but you must reset manually
|
||||
the keys with the following commands:
|
||||
|
||||
----
|
||||
/reset weechat.key_mouse.@chat(script.scripts):button1
|
||||
/reset weechat.key_mouse.@chat(script.scripts):button2
|
||||
/reset weechat.key_mouse.@chat(script.scripts):wheeldown
|
||||
/reset weechat.key_mouse.@chat(script.scripts):wheelup
|
||||
----
|
||||
|
||||
[[v4.1.3]]
|
||||
== Version 4.1.3 (2024-01-20)
|
||||
|
||||
No release notes.
|
||||
|
||||
[[v4.1.2]]
|
||||
== Version 4.1.2 (2023-12-03)
|
||||
|
||||
@@ -145,6 +169,11 @@ You can reset it with this command:
|
||||
/reset weechat.key_mouse.@chat(fset.fset):button1
|
||||
----
|
||||
|
||||
[[v4.0.8]]
|
||||
== Version 4.0.8 (2024-01-20)
|
||||
|
||||
No release notes.
|
||||
|
||||
[[v4.0.7]]
|
||||
== Version 4.0.7 (2023-12-03)
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ if(PKG_CONFIG_FOUND)
|
||||
# set specific search path for macOS
|
||||
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:/usr/local/opt/ruby/lib/pkgconfig")
|
||||
endif()
|
||||
pkg_search_module(RUBY ruby-3.2 ruby-3.1 ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
|
||||
pkg_search_module(RUBY ruby-3.3 ruby-3.2 ruby-3.1 ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
|
||||
if(RUBY_FOUND AND ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# FIXME: weird hack: hardcoding the Ruby lib location on macOS
|
||||
set(RUBY_LDFLAGS "${RUBY_LDFLAGS} -L/usr/local/opt/ruby/lib")
|
||||
|
||||
@@ -1806,10 +1806,10 @@ wurde (Befehl: `+/mouse toggle+`).
|
||||
| kbd:[▼] | - | chat: /list buffer | gehe fünf Zeilen im /list-Buffer nach unten. | `+/list -down 5+`
|
||||
| kbd:[■ □ □] | - | chat: /list buffer | Zeile im /list-Buffer auswählen. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | chat: /list buffer | tritt dem IRC-Kanal, in der ausgewählten Zeile, bei. | `+hsignal:irc_list_mouse+`
|
||||
| kbd:[▲] | - | chat: script buffer | fünf Zeilen nach oben blättern, im Script-Buffer. | `+/script up 5+`
|
||||
| kbd:[▼] | - | chat: script buffer | fünf Zeilen nach unten blättern, im Script-Buffer. | `+/script down 5+`
|
||||
| kbd:[■ □ □] | - | chat: script buffer | wählt einen Eintrag im Script-Buffer aus. | `+/script go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | chat: script buffer | installiert/entfernt ein Skript. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[▲] | - | chat: script buffer | fünf Zeilen nach oben blättern, im Script-Buffer. | `+/script -up 5+`
|
||||
| kbd:[▼] | - | chat: script buffer | fünf Zeilen nach unten blättern, im Script-Buffer. | `+/script -down 5+`
|
||||
| kbd:[■ □ □] | - | chat: script buffer | wählt einen Eintrag im Script-Buffer aus. | `+/script -go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | chat: script buffer | installiert/entfernt ein Skript. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[■ □ □] | up / left | buflist | verschiebt Buffer in der Reihenfolge nach unten. | Signal `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | down / right | buflist | verschiebt Buffer in der Reihenfolge nach oben. | Signal `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | - | buflist | wechselt zum Buffer (oder zum vorherigen Buffer, falls der aktuell genutzte Buffer angewählt wurde). | Signal `+buflist_mouse+`.
|
||||
@@ -1927,8 +1927,8 @@ Diese Tasten und Aktionen werden im fset-Buffer verwendet (siehe <<script_manage
|
||||
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|
||||
|===
|
||||
| Taste | Action ^(1)^ | Beschreibung | Befehl
|
||||
| kbd:[↑] | | eine Zeile nach oben. | `+/script up+`
|
||||
| kbd:[↓] | | eine Zeile nach unten. | `+/script down+`
|
||||
| kbd:[↑] | | eine Zeile nach oben. | `+/script -up+`
|
||||
| kbd:[↓] | | eine Zeile nach unten. | `+/script -down+`
|
||||
| kbd:[PgUp] | | eine Seite hoch blättern. | `+/window page_up+`
|
||||
| kbd:[PgDn] | | eine Seite nach unten blättern. | `+/window page_down+`
|
||||
| kbd:[Alt+i] | `i` | Skript installieren. | `+/script install+`
|
||||
|
||||
@@ -1793,10 +1793,10 @@ These mouse actions are possible only if mouse is enabled with key kbd:[Alt+m]
|
||||
| kbd:[▼] | - | chat: /list buffer | Move five lines down in /list buffer. | `+/list -down 5+`
|
||||
| kbd:[■ □ □] | - | chat: /list buffer | Select line in /list buffer. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | chat: /list buffer | Join IRC channel on selected line. | `+hsignal:irc_list_mouse+`
|
||||
| kbd:[▲] | - | chat: script buffer | Move five lines up in script buffer. | `+/script up 5+`
|
||||
| kbd:[▼] | - | chat: script buffer | Move five lines down in script buffer. | `+/script down 5+`
|
||||
| kbd:[■ □ □] | - | chat: script buffer | Select line in script buffer. | `+/script go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | chat: script buffer | Install/remove script. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[▲] | - | chat: script buffer | Move five lines up in script buffer. | `+/script -up 5+`
|
||||
| kbd:[▼] | - | chat: script buffer | Move five lines down in script buffer. | `+/script -down 5+`
|
||||
| kbd:[■ □ □] | - | chat: script buffer | Select line in script buffer. | `+/script -go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | chat: script buffer | Install/remove script. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[■ □ □] | up / left | buflist | Move buffer to a lower number. | Signal `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | down / right | buflist | Move buffer to a higher number. | Signal `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | - | buflist | Switch to buffer (previously visited buffer if the buffer is the current one). | Signal `+buflist_mouse+`.
|
||||
@@ -1914,8 +1914,8 @@ These keys and actions are used on the script buffer (see <<script_manager,scrip
|
||||
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|
||||
|===
|
||||
| Key | Action ^(1)^ | Description | Command
|
||||
| kbd:[↑] | | Move one line up. | `+/script up+`
|
||||
| kbd:[↓] | | Move one line down. | `+/script down+`
|
||||
| kbd:[↑] | | Move one line up. | `+/script -up+`
|
||||
| kbd:[↓] | | Move one line down. | `+/script -down+`
|
||||
| kbd:[PgUp] | | Move one page up. | `+/window page_up+`
|
||||
| kbd:[PgDn] | | Move one page down. | `+/window page_down+`
|
||||
| kbd:[Alt+i] | `i` | Install script. | `+/script install+`
|
||||
|
||||
@@ -1828,10 +1828,10 @@ avec la touche kbd:[Alt+m] (commande : `+/mouse toggle+`).
|
||||
| kbd:[▼] | - | chat : tampon /list | Descendre de cinq lignes dans le tampon /list. | `+/list -down 5+`
|
||||
| kbd:[■ □ □] | - | chat : tampon /list | Sélectionner la ligne dans le tampon /list. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | chat : tampon /list | Rejoindre le canal IRC sur la ligne sélectionnée. | `+hsignal:irc_list_mouse+`
|
||||
| kbd:[▲] | - | chat : tampon script | Monter de 5 lignes dans le tampon script. | `+/script up 5+`
|
||||
| kbd:[▼] | - | chat : tampon script | Descendre de 5 lignes dans le tampon script. | `+/script down 5+`
|
||||
| kbd:[■ □ □] | - | chat : tampon script | Sélectionner la ligne dans le tampon script. | `+/script go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | chat : tampon script | Installer/supprimer un script. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[▲] | - | chat : tampon script | Monter de 5 lignes dans le tampon script. | `+/script -up 5+`
|
||||
| kbd:[▼] | - | chat : tampon script | Descendre de 5 lignes dans le tampon script. | `+/script -down 5+`
|
||||
| kbd:[■ □ □] | - | chat : tampon script | Sélectionner la ligne dans le tampon script. | `+/script -go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | chat : tampon script | Installer/supprimer un script. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[■ □ □] | haut / gauche | buflist | Déplacer le tampon vers un numéro inférieur. | Signal `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | bas / droit | buflist | Déplacer le tampon vers un numéro supérieur. | Signal `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | - | buflist | Aller au tampon (tampon précédent dans la liste des tampons visités si le tampon est le courant). | Signal `+buflist_mouse+`.
|
||||
@@ -1952,8 +1952,8 @@ Ces touches et actions sont utilisées sur le tampon script
|
||||
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|
||||
|===
|
||||
| Touche | Action ^(1)^ | Description | Commande
|
||||
| kbd:[↑] | | Monter d'une ligne. | `+/script up+`
|
||||
| kbd:[↓] | | Descendre d'une ligne. | `+/script down+`
|
||||
| kbd:[↑] | | Monter d'une ligne. | `+/script -up+`
|
||||
| kbd:[↓] | | Descendre d'une ligne. | `+/script -down+`
|
||||
| kbd:[PgUp] | | Monter d'une page. | `+/window page_up+`
|
||||
| kbd:[PgDn] | | Descendre d'une page. | `+/window page_down+`
|
||||
| kbd:[Alt+i] | `i` | Installer le script. | `+/script install+`
|
||||
|
||||
@@ -1990,13 +1990,13 @@ These mouse actions are possible only if mouse is enabled with key kbd:[Alt+m]
|
||||
// TRANSLATION MISSING
|
||||
| kbd:[□ □ ■] | - | chat: /list buffer | Join IRC channel on selected line. | `+hsignal:irc_list_mouse+`
|
||||
// TRANSLATION MISSING
|
||||
| kbd:[▲] | - | chat: script buffer | Move 5 lines up in script buffer. | `+/script up 5+`
|
||||
| kbd:[▲] | - | chat: script buffer | Move 5 lines up in script buffer. | `+/script -up 5+`
|
||||
// TRANSLATION MISSING
|
||||
| kbd:[▼] | - | chat: script buffer | Move 5 lines down in script buffer. | `+/script down 5+`
|
||||
| kbd:[▼] | - | chat: script buffer | Move 5 lines down in script buffer. | `+/script -down 5+`
|
||||
// TRANSLATION MISSING
|
||||
| kbd:[■ □ □] | - | chat: script buffer | Select line in script buffer. | `+/script go ${_chat_line_y}+`
|
||||
| kbd:[■ □ □] | - | chat: script buffer | Select line in script buffer. | `+/script -go ${_chat_line_y}+`
|
||||
// TRANSLATION MISSING
|
||||
| kbd:[□ □ ■] | - | chat: script buffer | Install/remove script. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[□ □ ■] | - | chat: script buffer | Install/remove script. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
// TRANSLATION MISSING
|
||||
| kbd:[■ □ □] | up / left | buflist | Move buffer to a lower number. | Signal `+buflist_mouse+`.
|
||||
// TRANSLATION MISSING
|
||||
@@ -2129,8 +2129,8 @@ These keys and actions are used on the script buffer (see <<script_manager,scrip
|
||||
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|
||||
|===
|
||||
| Key | Action ^(1)^ | Description | Command
|
||||
| kbd:[↑] | | Move one line up. | `+/script up+`
|
||||
| kbd:[↓] | | Move one line down. | `+/script down+`
|
||||
| kbd:[↑] | | Move one line up. | `+/script -up+`
|
||||
| kbd:[↓] | | Move one line down. | `+/script -down+`
|
||||
| kbd:[PgUp] | | Move one page up. | `+/window page_up+`
|
||||
| kbd:[PgDn] | | Move one page down. | `+/window page_down+`
|
||||
| kbd:[Alt+i] | `i` | Install script. | `+/script install+`
|
||||
|
||||
@@ -1938,10 +1938,10 @@ These mouse actions are possible only if mouse is enabled with key kbd:[Alt+m]
|
||||
| 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:[▲] | - | チャット: スクリプトバッファ | スクリプトバッファを 5 行上方向にスクロール | `+/script up 5+`
|
||||
| kbd:[▼] | - | チャット: スクリプトバッファ | スクリプトバッファで 5 行下方向にスクロール | `+/script down 5+`
|
||||
| kbd:[■ □ □] | - | チャット: スクリプトバッファ | スクリプトバッファで行選択 | `+/script go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | チャット: スクリプトバッファ | スクリプトのインストール `+/ 削除 | /script go ${_chat_line_y};/script installremove ${script_name_with_extension}+`
|
||||
| kbd:[▲] | - | チャット: スクリプトバッファ | スクリプトバッファを 5 行上方向にスクロール | `+/script -up 5+`
|
||||
| kbd:[▼] | - | チャット: スクリプトバッファ | スクリプトバッファで 5 行下方向にスクロール | `+/script -down 5+`
|
||||
| kbd:[■ □ □] | - | チャット: スクリプトバッファ | スクリプトバッファで行選択 | `+/script -go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | チャット: スクリプトバッファ | スクリプトのインストール `+/ 削除 | /script -go ${_chat_line_y};/script installremove ${script_name_with_extension}+`
|
||||
| kbd:[■ □ □] | 上 / 左 | バッファリスト | 指定したバッファを下の番号に移動 | `+buflist_mouse+` シグナル
|
||||
| kbd:[■ □ □] | 下 / 右 | バッファリスト | 指定したバッファを上の番号に移動 | `+buflist_mouse+` シグナル
|
||||
| kbd:[■ □ □] | - | バッファリスト | 指定したバッファに切り替える (現在のバッファを指定した場合、バッファ切り替え履歴で前のバッファに切り替える) | `+buflist_mouse+` シグナル
|
||||
@@ -2068,8 +2068,8 @@ These keys and actions are used on the script buffer (see <<script_manager,scrip
|
||||
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|
||||
|===
|
||||
| Key | Action ^(1)^ | Description | Command
|
||||
| kbd:[↑] | | Move one line up. | `+/script up+`
|
||||
| kbd:[↓] | | Move one line down. | `+/script down+`
|
||||
| kbd:[↑] | | Move one line up. | `+/script -up+`
|
||||
| kbd:[↓] | | Move one line down. | `+/script -down+`
|
||||
| kbd:[PgUp] | | Move one page up. | `+/window page_up+`
|
||||
| kbd:[PgDn] | | Move one page down. | `+/window page_down+`
|
||||
| kbd:[Alt+i] | `i` | Install script. | `+/script install+`
|
||||
|
||||
@@ -1823,10 +1823,10 @@ za pomocą skrótu kbd:[Alt+m] (komenda: `+/mouse toggle+`).
|
||||
| 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}+`
|
||||
| kbd:[□ □ ■] | - | chat: bufor skryptów | Zainstaluj/usuń skrypt. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| 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}+`
|
||||
| kbd:[□ □ ■] | - | chat: bufor skryptów | Zainstaluj/usuń skrypt. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[■ □ □] | góra / lewo | buflist | Przenieś bufor na niższy numer. | Sygnał `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | dół / prawo | buflist | Przenieś bufor na wyższy numer. | Sygnał `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | - | buflist | Przełącz na bufor (poprzednio odwiedzony bufor, jeśli jest to obecny bufor). | Sygnał `+buflist_mouse+`.
|
||||
@@ -1948,8 +1948,8 @@ Te skróty klawiszowe i akcje mogą zostać użyte w buforze skryptów (zobacz <
|
||||
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"]
|
||||
|===
|
||||
| Skrót | Akcja ^(1)^ | Opis | Komenda
|
||||
| kbd:[↑] | | Przejdź linię wyżej. | `+/script up+`
|
||||
| kbd:[↓] | | Przejdź linię niżej. | `+/script down+`
|
||||
| kbd:[↑] | | Przejdź linię wyżej. | `+/script -up+`
|
||||
| kbd:[↓] | | Przejdź linię niżej. | `+/script -down+`
|
||||
| kbd:[PgUp] | | Przewiń stronę do góry. | `+/window page_up+`
|
||||
| kbd:[PgDn] | | Przewiń stronę w dół. | `+/window page_down+`
|
||||
| kbd:[Alt+i] | `i` | Zainstaluj skrypt. | `+/script install+`
|
||||
|
||||
@@ -1713,10 +1713,10 @@ WeeChat нуди доста подразумеваних тастерских п
|
||||
| kbd:[▼] | - | чет: /list бафер | Помера за пет линија наниже у /list баферу. | `+/list -down 5+`
|
||||
| kbd:[■ □ □] | - | чет: /list бафер | Бира линију у /list баферу. | `+/window ${_window_number};/list -go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | чет: /list бафер | Приступа IRC каналу на изабраној линији. | `+hsignal:irc_list_mouse+`
|
||||
| kbd:[▲] | - | чет: script бафер | Помера за пет линија навише у script баферу. | `+/script up 5+`
|
||||
| kbd:[▼] | - | чет: script бафер | Помера за пет линија наниже у script баферу. | `+/script down 5+`
|
||||
| kbd:[■ □ □] | - | чет: script бафер | Бира линију у script баферу. | `+/script go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | чет: script бафер | Инсталира/уклања скрипту. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[▲] | - | чет: script бафер | Помера за пет линија навише у script баферу. | `+/script -up 5+`
|
||||
| kbd:[▼] | - | чет: script бафер | Помера за пет линија наниже у script баферу. | `+/script -down 5+`
|
||||
| kbd:[■ □ □] | - | чет: script бафер | Бира линију у script баферу. | `+/script -go ${_chat_line_y}+`
|
||||
| kbd:[□ □ ■] | - | чет: script бафер | Инсталира/уклања скрипту. | `+/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+`
|
||||
| kbd:[■ □ □] | горе / лево | листа бафера | Помера бафер на нижи број. | Signal `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | доле / десно | листа бафера | Помера бафер на виши број. | Signal `+buflist_mouse+`.
|
||||
| kbd:[■ □ □] | - | листа бафера | Пребацивање на бафер (претходно посећени багер ако је бафер текући). | Signal `+buflist_mouse+`.
|
||||
@@ -1834,8 +1834,8 @@ kbd:[▼]: точкић доле
|
||||
[width="100%", cols="^.^3,^.^2,.^8,.^5", options="header"]
|
||||
|===
|
||||
| Тастер | Акција ^(1)^ | Опис | Команда
|
||||
| kbd:[↑] | | Помера једну линију навише. | `+/script up+`
|
||||
| kbd:[↓] | | Помера једну линију наниже. | `+/script down+`
|
||||
| kbd:[↑] | | Помера једну линију навише. | `+/script -up+`
|
||||
| kbd:[↓] | | Помера једну линију наниже. | `+/script -down+`
|
||||
| kbd:[PgUp] | | Помера једну страну навише. | `+/window page_up+`
|
||||
| kbd:[PgDn] | | Помера једну страну наниже. | `+/window page_down+`
|
||||
| kbd:[Alt+i] | `i` | Инсталира скрипту. | `+/script install+`
|
||||
|
||||
@@ -92,7 +92,7 @@ include_directories(${GNUTLS_INCLUDE_PATH})
|
||||
include_directories(${CURL_INCLUDE_DIRS})
|
||||
|
||||
if(ENABLE_ZSTD)
|
||||
include_directories(${ZSTD_INCLUDE_DIRS})
|
||||
include_directories(${LIBZSTD_INCLUDE_DIRS})
|
||||
endif()
|
||||
|
||||
include_directories("${CMAKE_BINARY_DIR}")
|
||||
|
||||
@@ -643,6 +643,8 @@ gui_chat_display_word (struct t_gui_window *window,
|
||||
nick_offline);
|
||||
}
|
||||
ptr_data[pos_saved_char] = saved_char;
|
||||
if (pos_saved_char == 0)
|
||||
break;
|
||||
ptr_data += pos_saved_char;
|
||||
}
|
||||
else
|
||||
@@ -664,6 +666,8 @@ gui_chat_display_word (struct t_gui_window *window,
|
||||
apply_style_inactive,
|
||||
nick_offline);
|
||||
}
|
||||
if (!ptr_data[0])
|
||||
break;
|
||||
ptr_data += strlen (ptr_data);
|
||||
}
|
||||
|
||||
|
||||
@@ -74,6 +74,8 @@ char *gui_mouse_button_codes[][2] =
|
||||
{ "*", "alt-button2" },
|
||||
{ ")", "alt-button3" },
|
||||
{ "8", "alt-ctrl-button1" },
|
||||
{ ":", "alt-ctrl-button2" },
|
||||
{ "9", "alt-ctrl-button3" },
|
||||
{ NULL, NULL } };
|
||||
|
||||
|
||||
|
||||
@@ -765,6 +765,7 @@ buflist_bar_item_end ()
|
||||
for (i = 0; i < BUFLIST_BAR_NUM_ITEMS; i++)
|
||||
{
|
||||
weechat_bar_item_remove (buflist_bar_item_buflist[i]);
|
||||
buflist_bar_item_buflist[i] = NULL;
|
||||
}
|
||||
|
||||
weechat_hashtable_free (buflist_hashtable_pointers);
|
||||
|
||||
@@ -844,6 +844,7 @@ buflist_config_free ()
|
||||
int i;
|
||||
|
||||
weechat_config_free (buflist_config_file);
|
||||
buflist_config_file = NULL;
|
||||
|
||||
if (buflist_config_signals_refresh)
|
||||
buflist_config_free_signals_refresh ();
|
||||
@@ -859,9 +860,18 @@ buflist_config_free ()
|
||||
}
|
||||
|
||||
if (buflist_config_format_buffer_eval)
|
||||
{
|
||||
free (buflist_config_format_buffer_eval);
|
||||
buflist_config_format_buffer_eval = NULL;
|
||||
}
|
||||
if (buflist_config_format_buffer_current_eval)
|
||||
{
|
||||
free (buflist_config_format_buffer_current_eval);
|
||||
buflist_config_format_buffer_current_eval = NULL;
|
||||
}
|
||||
if (buflist_config_format_hotlist_eval)
|
||||
{
|
||||
free (buflist_config_format_hotlist_eval);
|
||||
buflist_config_format_hotlist_eval = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -534,5 +534,12 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
buflist_config_write ();
|
||||
buflist_config_free ();
|
||||
|
||||
buflist_hdata_window = NULL;
|
||||
buflist_hdata_buffer = NULL;
|
||||
buflist_hdata_hotlist = NULL;
|
||||
buflist_hdata_bar = NULL;
|
||||
buflist_hdata_bar_item = NULL;
|
||||
buflist_hdata_bar_window = NULL;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -638,11 +638,18 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
charset_config_write ();
|
||||
|
||||
weechat_config_free (charset_config_file);
|
||||
charset_config_file = NULL;
|
||||
|
||||
if (charset_terminal)
|
||||
{
|
||||
free (charset_terminal);
|
||||
charset_terminal = NULL;
|
||||
}
|
||||
if (charset_internal)
|
||||
{
|
||||
free (charset_internal);
|
||||
charset_internal = NULL;
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -206,6 +206,7 @@ void
|
||||
exec_config_free ()
|
||||
{
|
||||
weechat_config_free (exec_config_file);
|
||||
exec_config_file = NULL;
|
||||
|
||||
if (exec_config_cmd_options)
|
||||
{
|
||||
|
||||
@@ -157,4 +157,5 @@ void
|
||||
fifo_config_free ()
|
||||
{
|
||||
weechat_config_free (fifo_config_file);
|
||||
fifo_config_file = NULL;
|
||||
}
|
||||
|
||||
@@ -367,6 +367,9 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_plugin = plugin;
|
||||
|
||||
fifo_quiet = 0;
|
||||
fifo_fd = -1;
|
||||
|
||||
if (!fifo_config_init ())
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
|
||||
@@ -248,4 +248,5 @@ void
|
||||
fset_bar_item_end ()
|
||||
{
|
||||
weechat_bar_item_remove (fset_bar_item_fset);
|
||||
fset_bar_item_fset = NULL;
|
||||
}
|
||||
|
||||
@@ -1654,9 +1654,21 @@ fset_buffer_init ()
|
||||
void
|
||||
fset_buffer_end ()
|
||||
{
|
||||
weechat_hashtable_free (fset_buffer_hashtable_pointers);
|
||||
fset_buffer_hashtable_pointers = NULL;
|
||||
if (fset_buffer)
|
||||
{
|
||||
weechat_buffer_close (fset_buffer);
|
||||
fset_buffer = NULL;
|
||||
}
|
||||
|
||||
weechat_hashtable_free (fset_buffer_hashtable_extra_vars);
|
||||
fset_buffer_hashtable_extra_vars = NULL;
|
||||
if (fset_buffer_hashtable_pointers)
|
||||
{
|
||||
weechat_hashtable_free (fset_buffer_hashtable_pointers);
|
||||
fset_buffer_hashtable_pointers = NULL;
|
||||
}
|
||||
|
||||
if (fset_buffer_hashtable_extra_vars)
|
||||
{
|
||||
weechat_hashtable_free (fset_buffer_hashtable_extra_vars);
|
||||
fset_buffer_hashtable_extra_vars = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1186,6 +1186,7 @@ void
|
||||
fset_config_free ()
|
||||
{
|
||||
weechat_config_free (fset_config_file);
|
||||
fset_config_file = NULL;
|
||||
|
||||
if (fset_config_auto_refresh)
|
||||
{
|
||||
|
||||
@@ -1934,4 +1934,9 @@ fset_option_end ()
|
||||
weechat_hashtable_free (fset_option_timer_options_changed);
|
||||
fset_option_timer_options_changed = NULL;
|
||||
}
|
||||
if (fset_option_timer_hook)
|
||||
{
|
||||
weechat_unhook (fset_option_timer_hook);
|
||||
fset_option_timer_hook = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1258,6 +1258,11 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_guile_plugin = plugin;
|
||||
|
||||
guile_quiet = 0;
|
||||
guile_eval_mode = 0;
|
||||
guile_eval_send_input = 0;
|
||||
guile_eval_exec_commands = 0;
|
||||
|
||||
/* set interpreter name and version */
|
||||
weechat_hashtable_set (plugin->variables, "interpreter_name",
|
||||
plugin->name);
|
||||
@@ -1354,12 +1359,22 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
|
||||
/* free some data */
|
||||
if (guile_action_install_list)
|
||||
{
|
||||
free (guile_action_install_list);
|
||||
guile_action_install_list = NULL;
|
||||
}
|
||||
if (guile_action_remove_list)
|
||||
{
|
||||
free (guile_action_remove_list);
|
||||
guile_action_remove_list = NULL;
|
||||
}
|
||||
if (guile_action_autoload_list)
|
||||
{
|
||||
free (guile_action_autoload_list);
|
||||
guile_action_autoload_list = NULL;
|
||||
}
|
||||
weechat_string_dyn_free (guile_buffer_output, 1);
|
||||
guile_buffer_output = NULL;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -4007,6 +4007,7 @@ void
|
||||
irc_config_free ()
|
||||
{
|
||||
weechat_config_free (irc_config_file);
|
||||
irc_config_file = NULL;
|
||||
|
||||
if (irc_config_hook_config_nick_color_options)
|
||||
{
|
||||
|
||||
@@ -344,6 +344,9 @@ irc_info_info_irc_server_isupport_cb (const void *pointer, void *data,
|
||||
(void) data;
|
||||
(void) info_name;
|
||||
|
||||
if (!arguments || !arguments[0])
|
||||
return NULL;
|
||||
|
||||
isupport_value = NULL;
|
||||
pos_comma = strchr (arguments, ',');
|
||||
if (pos_comma)
|
||||
@@ -382,6 +385,9 @@ irc_info_info_irc_server_isupport_value_cb (const void *pointer, void *data,
|
||||
(void) data;
|
||||
(void) info_name;
|
||||
|
||||
if (!arguments || !arguments[0])
|
||||
return NULL;
|
||||
|
||||
isupport_value = NULL;
|
||||
pos_comma = strchr (arguments, ',');
|
||||
if (pos_comma)
|
||||
@@ -420,6 +426,9 @@ irc_info_info_irc_server_cap_cb (const void *pointer, void *data,
|
||||
(void) data;
|
||||
(void) info_name;
|
||||
|
||||
if (!arguments || !arguments[0])
|
||||
return NULL;
|
||||
|
||||
has_cap = 0;
|
||||
pos_comma = strchr (arguments, ',');
|
||||
if (pos_comma)
|
||||
@@ -458,6 +467,9 @@ irc_info_info_irc_server_cap_value_cb (const void *pointer, void *data,
|
||||
(void) data;
|
||||
(void) info_name;
|
||||
|
||||
if (!arguments || !arguments[0])
|
||||
return NULL;
|
||||
|
||||
cap_value = NULL;
|
||||
pos_comma = strchr (arguments, ',');
|
||||
if (pos_comma)
|
||||
@@ -1262,7 +1274,7 @@ irc_info_init ()
|
||||
"irc_is_message_ignored",
|
||||
N_("1 if the nick is ignored (message is not displayed)"),
|
||||
N_("server,message (message is the raw IRC message)"),
|
||||
&irc_info_info_irc_is_channel_cb, NULL, NULL);
|
||||
&irc_info_info_irc_is_message_ignored_cb, NULL, NULL);
|
||||
|
||||
/* info_hashtable hooks */
|
||||
weechat_hook_info_hashtable (
|
||||
|
||||
@@ -1340,4 +1340,5 @@ irc_list_end ()
|
||||
weechat_hashtable_free (irc_list_filter_hashtable_options);
|
||||
irc_list_filter_hashtable_options = NULL;
|
||||
}
|
||||
irc_list_hdata_list_channel = NULL;
|
||||
}
|
||||
|
||||
@@ -1055,9 +1055,6 @@ irc_message_split_string (struct t_irc_message_split_context *context,
|
||||
if (suffix)
|
||||
max_length -= strlen (suffix);
|
||||
|
||||
if (max_length < 2)
|
||||
return 0;
|
||||
|
||||
/* debug message */
|
||||
if (weechat_irc_plugin->debug >= 2)
|
||||
{
|
||||
@@ -1069,17 +1066,23 @@ irc_message_split_string (struct t_irc_message_split_context *context,
|
||||
max_length);
|
||||
}
|
||||
|
||||
if (!arguments || !arguments[0])
|
||||
if ((max_length < 2) || !arguments || !arguments[0])
|
||||
{
|
||||
snprintf (message, sizeof (message), "%s%s%s %s%s%s%s",
|
||||
/*
|
||||
* max length is not known (server probably sent values that are not
|
||||
* consistent), or no arguments => in this case, we just return message
|
||||
* as-is (no split)
|
||||
*/
|
||||
snprintf (message, sizeof (message), "%s%s%s %s%s%s%s%s",
|
||||
(host) ? host : "",
|
||||
(host) ? " " : "",
|
||||
command,
|
||||
(target) ? target : "",
|
||||
(target && target[0]) ? " " : "",
|
||||
(prefix) ? prefix : "",
|
||||
(arguments) ? arguments : "",
|
||||
(suffix) ? suffix : "");
|
||||
irc_message_split_add (context, tags, message, "");
|
||||
irc_message_split_add (context, tags, message, (arguments) ? arguments : "");
|
||||
(context->number)++;
|
||||
return 1;
|
||||
}
|
||||
@@ -1680,8 +1683,9 @@ irc_message_split (struct t_irc_server *server, const char *message)
|
||||
}
|
||||
|
||||
multiline = (
|
||||
((weechat_strcasecmp (command, "privmsg") == 0)
|
||||
|| (weechat_strcasecmp (command, "notice") == 0))
|
||||
server
|
||||
&& ((weechat_strcasecmp (command, "privmsg") == 0)
|
||||
|| (weechat_strcasecmp (command, "notice") == 0))
|
||||
&& message
|
||||
&& strchr (message, '\n')
|
||||
&& (index_args + 1 <= argc - 1)
|
||||
|
||||
@@ -1288,9 +1288,18 @@ void
|
||||
irc_notify_end ()
|
||||
{
|
||||
if (irc_notify_timer_ison)
|
||||
{
|
||||
weechat_unhook (irc_notify_timer_ison);
|
||||
irc_notify_timer_ison = NULL;
|
||||
}
|
||||
if (irc_notify_timer_whois)
|
||||
{
|
||||
weechat_unhook (irc_notify_timer_whois);
|
||||
irc_notify_timer_whois = NULL;
|
||||
}
|
||||
if (irc_notify_hsignal)
|
||||
{
|
||||
weechat_unhook (irc_notify_hsignal);
|
||||
irc_notify_hsignal = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -673,6 +673,11 @@ irc_raw_end ()
|
||||
{
|
||||
irc_raw_message_free_all ();
|
||||
|
||||
if (irc_raw_buffer)
|
||||
{
|
||||
weechat_buffer_close (irc_raw_buffer);
|
||||
irc_raw_buffer = NULL;
|
||||
}
|
||||
if (irc_raw_filter)
|
||||
{
|
||||
free (irc_raw_filter);
|
||||
|
||||
@@ -193,6 +193,9 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_plugin = plugin;
|
||||
|
||||
irc_signal_quit_received = 0;
|
||||
irc_signal_upgrade_received = 0;
|
||||
|
||||
if (!irc_config_init ())
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
@@ -314,7 +317,10 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
(void) plugin;
|
||||
|
||||
if (irc_hook_timer)
|
||||
{
|
||||
weechat_unhook (irc_hook_timer);
|
||||
irc_hook_timer = NULL;
|
||||
}
|
||||
|
||||
if (irc_signal_upgrade_received)
|
||||
{
|
||||
|
||||
@@ -930,6 +930,11 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_js_plugin = plugin;
|
||||
|
||||
js_quiet = 0;
|
||||
js_eval_mode = 0;
|
||||
js_eval_send_input = 0;
|
||||
js_eval_exec_commands = 0;
|
||||
|
||||
/* set interpreter name and version */
|
||||
snprintf (str_interpreter, sizeof (str_interpreter),
|
||||
"%s (v8)", plugin->name);
|
||||
@@ -980,11 +985,20 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
|
||||
/* free some data */
|
||||
if (js_action_install_list)
|
||||
{
|
||||
free (js_action_install_list);
|
||||
js_action_install_list = NULL;
|
||||
}
|
||||
if (js_action_remove_list)
|
||||
{
|
||||
free (js_action_remove_list);
|
||||
js_action_remove_list = NULL;
|
||||
}
|
||||
if (js_action_autoload_list)
|
||||
{
|
||||
free (js_action_autoload_list);
|
||||
js_action_autoload_list = NULL;
|
||||
}
|
||||
/* weechat_string_dyn_free (js_buffer_output, 1); */
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
|
||||
@@ -780,4 +780,5 @@ void
|
||||
logger_config_free ()
|
||||
{
|
||||
weechat_config_free (logger_config_file);
|
||||
logger_config_file = NULL;
|
||||
}
|
||||
|
||||
@@ -1243,6 +1243,11 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_lua_plugin = plugin;
|
||||
|
||||
lua_quiet = 0;
|
||||
lua_eval_mode = 0;
|
||||
lua_eval_send_input = 0;
|
||||
lua_eval_exec_commands = 0;
|
||||
|
||||
/* set interpreter name and version */
|
||||
weechat_hashtable_set (plugin->variables, "interpreter_name",
|
||||
plugin->name);
|
||||
@@ -1304,12 +1309,22 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
|
||||
/* free some data */
|
||||
if (lua_action_install_list)
|
||||
{
|
||||
free (lua_action_install_list);
|
||||
lua_action_install_list = NULL;
|
||||
}
|
||||
if (lua_action_remove_list)
|
||||
{
|
||||
free (lua_action_remove_list);
|
||||
lua_action_remove_list = NULL;
|
||||
}
|
||||
if (lua_action_autoload_list)
|
||||
{
|
||||
free (lua_action_autoload_list);
|
||||
lua_action_autoload_list = NULL;
|
||||
}
|
||||
weechat_string_dyn_free (lua_buffer_output, 1);
|
||||
lua_buffer_output = NULL;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -1264,6 +1264,11 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_perl_plugin = plugin;
|
||||
|
||||
perl_quiet = 0;
|
||||
perl_eval_mode = 0;
|
||||
perl_eval_send_input = 0;
|
||||
perl_eval_exec_commands = 0;
|
||||
|
||||
/* set interpreter name and version */
|
||||
weechat_hashtable_set (plugin->variables, "interpreter_name",
|
||||
plugin->name);
|
||||
@@ -1368,12 +1373,22 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
|
||||
/* free some data */
|
||||
if (perl_action_install_list)
|
||||
{
|
||||
free (perl_action_install_list);
|
||||
perl_action_install_list = NULL;
|
||||
}
|
||||
if (perl_action_remove_list)
|
||||
{
|
||||
free (perl_action_remove_list);
|
||||
perl_action_remove_list = NULL;
|
||||
}
|
||||
if (perl_action_autoload_list)
|
||||
{
|
||||
free (perl_action_autoload_list);
|
||||
perl_action_autoload_list = NULL;
|
||||
}
|
||||
weechat_string_dyn_free (perl_buffer_output, 1);
|
||||
perl_buffer_output = NULL;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -1311,6 +1311,11 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_php_plugin = plugin;
|
||||
|
||||
php_quiet = 0;
|
||||
php_eval_mode = 0;
|
||||
php_eval_send_input = 0;
|
||||
php_eval_exec_commands = 0;
|
||||
|
||||
/* set interpreter name and version */
|
||||
weechat_hashtable_set (plugin->variables, "interpreter_name",
|
||||
plugin->name);
|
||||
@@ -1385,11 +1390,20 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
php_embed_shutdown ();
|
||||
|
||||
if (php_action_install_list)
|
||||
{
|
||||
free (php_action_install_list);
|
||||
php_action_install_list = NULL;
|
||||
}
|
||||
if (php_action_remove_list)
|
||||
{
|
||||
free (php_action_remove_list);
|
||||
php_action_remove_list = NULL;
|
||||
}
|
||||
if (php_action_autoload_list)
|
||||
{
|
||||
free (php_action_autoload_list);
|
||||
php_action_autoload_list = NULL;
|
||||
}
|
||||
/* weechat_string_dyn_free (php_buffer_output, 1); */
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
|
||||
@@ -1796,6 +1796,7 @@ plugin_script_end (struct t_weechat_plugin *weechat_plugin,
|
||||
/* write config file (file: "<language>.conf") */
|
||||
weechat_config_write (*(plugin_data->config_file));
|
||||
weechat_config_free (*(plugin_data->config_file));
|
||||
*(plugin_data->config_file) = NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@@ -80,8 +80,8 @@
|
||||
return PyLong_FromLong((long)__int)
|
||||
#define API_RETURN_LONG(__long) \
|
||||
return PyLong_FromLong(__long)
|
||||
#define API_RETURN_LONGLONG(__longlong) \
|
||||
return PyLong_FromLongLong(__longlong)
|
||||
#define API_RETURN_ULONGLONG(__ulonglong) \
|
||||
return PyLong_FromUnsignedLongLong(__ulonglong)
|
||||
|
||||
|
||||
/*
|
||||
@@ -376,14 +376,14 @@ API_FUNC(string_parse_size)
|
||||
char *size;
|
||||
unsigned long long value;
|
||||
|
||||
API_INIT_FUNC(1, "string_parse_size", API_RETURN_LONGLONG(0));
|
||||
API_INIT_FUNC(1, "string_parse_size", API_RETURN_ULONGLONG(0));
|
||||
size = NULL;
|
||||
if (!PyArg_ParseTuple (args, "s", &size))
|
||||
API_WRONG_ARGS(API_RETURN_LONGLONG(0));
|
||||
API_WRONG_ARGS(API_RETURN_ULONGLONG(0));
|
||||
|
||||
value = weechat_string_parse_size (size);
|
||||
|
||||
API_RETURN_LONGLONG(value);
|
||||
API_RETURN_ULONGLONG(value);
|
||||
}
|
||||
|
||||
API_FUNC(string_color_code_size)
|
||||
|
||||
@@ -1471,6 +1471,11 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_python_plugin = plugin;
|
||||
|
||||
python_quiet = 0;
|
||||
python_eval_mode = 0;
|
||||
python_eval_send_input = 0;
|
||||
python_eval_exec_commands = 0;
|
||||
|
||||
/* set interpreter name and version */
|
||||
weechat_hashtable_set (plugin->variables, "interpreter_name",
|
||||
plugin->name);
|
||||
@@ -1582,12 +1587,22 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
|
||||
/* free some data */
|
||||
if (python_action_install_list)
|
||||
{
|
||||
free (python_action_install_list);
|
||||
python_action_install_list = NULL;
|
||||
}
|
||||
if (python_action_remove_list)
|
||||
{
|
||||
free (python_action_remove_list);
|
||||
python_action_remove_list = NULL;
|
||||
}
|
||||
if (python_action_autoload_list)
|
||||
{
|
||||
free (python_action_autoload_list);
|
||||
python_action_autoload_list = NULL;
|
||||
}
|
||||
weechat_string_dyn_free (python_buffer_output, 1);
|
||||
python_buffer_output = NULL;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ list(APPEND LINK_LIBS ${GCRYPT_LDFLAGS})
|
||||
list(APPEND LINK_LIBS ${ZLIB_LIBRARY})
|
||||
|
||||
if(ENABLE_ZSTD)
|
||||
include_directories(${ZSTD_INCLUDE_DIRS})
|
||||
include_directories(${LIBZSTD_INCLUDE_DIRS})
|
||||
list(APPEND LINK_LIBS ${LIBZSTD_LDFLAGS})
|
||||
endif()
|
||||
|
||||
|
||||
@@ -1460,6 +1460,7 @@ void
|
||||
relay_config_free ()
|
||||
{
|
||||
weechat_config_free (relay_config_file);
|
||||
relay_config_file = NULL;
|
||||
|
||||
if (relay_config_regex_allowed_ips)
|
||||
{
|
||||
|
||||
@@ -162,6 +162,9 @@ relay_network_set_priority ()
|
||||
void
|
||||
relay_network_init ()
|
||||
{
|
||||
relay_network_init_ok = 0;
|
||||
relay_network_init_tls_cert_key_ok = 0;
|
||||
|
||||
/* credentials */
|
||||
gnutls_certificate_allocate_credentials (&relay_gnutls_x509_cred);
|
||||
relay_network_set_tls_cert_key (0);
|
||||
|
||||
@@ -203,6 +203,8 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_plugin = plugin;
|
||||
|
||||
relay_signal_upgrade_received = 0;
|
||||
|
||||
if (!relay_config_init ())
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
@@ -240,7 +242,10 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
(void) plugin;
|
||||
|
||||
if (relay_hook_timer)
|
||||
{
|
||||
weechat_unhook (relay_hook_timer);
|
||||
relay_hook_timer = NULL;
|
||||
}
|
||||
|
||||
relay_config_write ();
|
||||
|
||||
@@ -254,7 +259,11 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
relay_server_free_all ();
|
||||
|
||||
if (relay_buffer)
|
||||
{
|
||||
weechat_buffer_close (relay_buffer);
|
||||
relay_buffer = NULL;
|
||||
}
|
||||
relay_buffer_selected_line = 0;
|
||||
|
||||
relay_client_free_all ();
|
||||
|
||||
|
||||
@@ -1336,6 +1336,11 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_ruby_plugin = plugin;
|
||||
|
||||
ruby_quiet = 0;
|
||||
ruby_eval_mode = 0;
|
||||
ruby_eval_send_input = 0;
|
||||
ruby_eval_exec_commands = 0;
|
||||
|
||||
/* set interpreter name and version */
|
||||
weechat_hashtable_set (plugin->variables, "interpreter_name",
|
||||
plugin->name);
|
||||
@@ -1439,12 +1444,22 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
|
||||
/* free some data */
|
||||
if (ruby_action_install_list)
|
||||
{
|
||||
free (ruby_action_install_list);
|
||||
ruby_action_install_list = NULL;
|
||||
}
|
||||
if (ruby_action_remove_list)
|
||||
{
|
||||
free (ruby_action_remove_list);
|
||||
ruby_action_remove_list = NULL;
|
||||
}
|
||||
if (ruby_action_autoload_list)
|
||||
{
|
||||
free (ruby_action_autoload_list);
|
||||
ruby_action_autoload_list = NULL;
|
||||
}
|
||||
weechat_string_dyn_free (ruby_buffer_output, 1);
|
||||
ruby_buffer_output = NULL;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -1371,6 +1371,11 @@ script_action_run_all ()
|
||||
script_buffer_open ();
|
||||
script_buffer_refresh (1);
|
||||
}
|
||||
if (script_buffer_detail_script)
|
||||
{
|
||||
/* back to list of scripts */
|
||||
script_buffer_show_detail_script (NULL);
|
||||
}
|
||||
weechat_buffer_set (script_buffer, "display", "1");
|
||||
}
|
||||
else if (weechat_strcmp (argv[0], "list") == 0)
|
||||
|
||||
@@ -840,4 +840,5 @@ void
|
||||
script_config_free ()
|
||||
{
|
||||
weechat_config_free (script_config_file);
|
||||
script_config_file = NULL;
|
||||
}
|
||||
|
||||
@@ -135,21 +135,21 @@ script_mouse_init ()
|
||||
weechat_hashtable_set (
|
||||
keys,
|
||||
"@chat(" SCRIPT_PLUGIN_NAME "." SCRIPT_BUFFER_NAME "):button1",
|
||||
"/window ${_window_number};/script go ${_chat_line_y}");
|
||||
"/window ${_window_number};/script -go ${_chat_line_y}");
|
||||
weechat_hashtable_set (
|
||||
keys,
|
||||
"@chat(" SCRIPT_PLUGIN_NAME "." SCRIPT_BUFFER_NAME "):button2",
|
||||
"/window ${_window_number};"
|
||||
"/script go ${_chat_line_y};"
|
||||
"/script -go ${_chat_line_y};"
|
||||
"/script installremove -q ${script_name_with_extension}");
|
||||
weechat_hashtable_set (
|
||||
keys,
|
||||
"@chat(" SCRIPT_PLUGIN_NAME "." SCRIPT_BUFFER_NAME "):wheelup",
|
||||
"/script up 5");
|
||||
"/script -up 5");
|
||||
weechat_hashtable_set (
|
||||
keys,
|
||||
"@chat(" SCRIPT_PLUGIN_NAME "." SCRIPT_BUFFER_NAME "):wheeldown",
|
||||
"/script down 5");
|
||||
"/script -down 5");
|
||||
weechat_hashtable_set (keys, "__quiet", "1");
|
||||
weechat_key_bind ("mouse", keys);
|
||||
|
||||
|
||||
@@ -386,6 +386,27 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
/* make C compiler happy */
|
||||
(void) plugin;
|
||||
|
||||
if (script_loaded)
|
||||
{
|
||||
weechat_hashtable_free (script_loaded);
|
||||
script_loaded = NULL;
|
||||
}
|
||||
if (script_timer_refresh)
|
||||
{
|
||||
weechat_unhook (script_timer_refresh);
|
||||
script_timer_refresh = NULL;
|
||||
}
|
||||
|
||||
if (script_buffer)
|
||||
{
|
||||
weechat_buffer_close (script_buffer);
|
||||
script_buffer = NULL;
|
||||
}
|
||||
script_buffer_selected_line = 0;
|
||||
script_buffer_detail_script = NULL;
|
||||
script_buffer_detail_script_last_line = 0;
|
||||
script_buffer_detail_script_line_diff = -1;
|
||||
|
||||
script_mouse_end ();
|
||||
|
||||
script_config_write ();
|
||||
@@ -393,10 +414,16 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
script_repo_remove_all ();
|
||||
|
||||
if (script_repo_filter)
|
||||
{
|
||||
free (script_repo_filter);
|
||||
script_repo_filter = NULL;
|
||||
}
|
||||
|
||||
if (script_loaded)
|
||||
{
|
||||
weechat_hashtable_free (script_loaded);
|
||||
script_loaded = NULL;
|
||||
}
|
||||
|
||||
script_config_free ();
|
||||
|
||||
|
||||
@@ -654,9 +654,16 @@ void
|
||||
spell_config_free ()
|
||||
{
|
||||
weechat_config_free (spell_config_file);
|
||||
spell_config_file = NULL;
|
||||
|
||||
if (spell_commands_to_check)
|
||||
{
|
||||
weechat_string_free_split (spell_commands_to_check);
|
||||
spell_commands_to_check = NULL;
|
||||
}
|
||||
if (spell_length_commands_to_check)
|
||||
{
|
||||
free (spell_length_commands_to_check);
|
||||
spell_length_commands_to_check = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -501,5 +501,8 @@ void
|
||||
spell_speller_end ()
|
||||
{
|
||||
weechat_hashtable_free (spell_spellers);
|
||||
spell_spellers = NULL;
|
||||
|
||||
weechat_hashtable_free (spell_speller_buffer);
|
||||
spell_speller_buffer = NULL;
|
||||
}
|
||||
|
||||
@@ -1188,6 +1188,8 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_plugin = plugin;
|
||||
|
||||
spell_enabled = 0;
|
||||
|
||||
spell_warning_aspell_config ();
|
||||
|
||||
#ifdef USE_ENCHANT
|
||||
@@ -1260,10 +1262,15 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
#ifdef USE_ENCHANT
|
||||
/* release enchant broker */
|
||||
enchant_broker_free (broker);
|
||||
broker = NULL;
|
||||
#endif /* USE_ENCHANT */
|
||||
|
||||
if (spell_nick_completer)
|
||||
{
|
||||
free (spell_nick_completer);
|
||||
spell_nick_completer = NULL;
|
||||
}
|
||||
spell_len_nick_completer = 0;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -5617,7 +5617,8 @@ API_FUNC(hdata_long)
|
||||
{
|
||||
Tcl_Obj *objp;
|
||||
char *hdata, *pointer, *name;
|
||||
int result, i;
|
||||
long result;
|
||||
int i;
|
||||
|
||||
API_INIT_FUNC(1, "hdata_long", API_RETURN_LONG(0));
|
||||
if (objc < 4)
|
||||
|
||||
@@ -56,7 +56,6 @@ struct t_plugin_script *tcl_script_eval = NULL;
|
||||
int tcl_eval_mode = 0;
|
||||
int tcl_eval_send_input = 0;
|
||||
int tcl_eval_exec_commands = 0;
|
||||
struct t_gui_buffer *tcl_eval_buffer = NULL;
|
||||
|
||||
struct t_plugin_script *tcl_scripts = NULL;
|
||||
struct t_plugin_script *last_tcl_script = NULL;
|
||||
@@ -928,6 +927,11 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_tcl_plugin = plugin;
|
||||
|
||||
tcl_quiet = 0;
|
||||
tcl_eval_mode = 0;
|
||||
tcl_eval_send_input = 0;
|
||||
tcl_eval_exec_commands = 0;
|
||||
|
||||
/* set interpreter name and version */
|
||||
weechat_hashtable_set (plugin->variables, "interpreter_name",
|
||||
plugin->name);
|
||||
@@ -984,11 +988,20 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
|
||||
/* free some data */
|
||||
if (tcl_action_install_list)
|
||||
{
|
||||
free (tcl_action_install_list);
|
||||
tcl_action_install_list = NULL;
|
||||
}
|
||||
if (tcl_action_remove_list)
|
||||
{
|
||||
free (tcl_action_remove_list);
|
||||
tcl_action_remove_list = NULL;
|
||||
}
|
||||
if (tcl_action_autoload_list)
|
||||
{
|
||||
free (tcl_action_autoload_list);
|
||||
tcl_action_autoload_list = NULL;
|
||||
}
|
||||
/* weechat_string_dyn_free (tcl_buffer_output, 1); */
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
|
||||
@@ -394,6 +394,12 @@ trigger_buffer_display_trigger (struct t_trigger *trigger,
|
||||
void
|
||||
trigger_buffer_end ()
|
||||
{
|
||||
if (trigger_buffer)
|
||||
{
|
||||
weechat_buffer_close (trigger_buffer);
|
||||
trigger_buffer = NULL;
|
||||
}
|
||||
|
||||
if (trigger_buffer_filters)
|
||||
{
|
||||
weechat_string_free_split (trigger_buffer_filters);
|
||||
|
||||
@@ -1534,5 +1534,8 @@ void
|
||||
trigger_callback_end ()
|
||||
{
|
||||
if (trigger_callback_hashtable_options_conditions)
|
||||
{
|
||||
weechat_hashtable_free (trigger_callback_hashtable_options_conditions);
|
||||
trigger_callback_hashtable_options_conditions = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -105,6 +105,8 @@ struct t_trigger_context
|
||||
} \
|
||||
return __rc;
|
||||
|
||||
extern unsigned long trigger_context_id;
|
||||
|
||||
extern int trigger_callback_signal_cb (const void *pointer, void *data,
|
||||
const char *signal,
|
||||
const char *type_data,
|
||||
|
||||
@@ -773,16 +773,6 @@ trigger_command_trigger (const void *pointer, void *data,
|
||||
goto end;
|
||||
}
|
||||
}
|
||||
ptr_trigger = trigger_alloc (sargv[0]);
|
||||
if (!ptr_trigger)
|
||||
{
|
||||
weechat_printf_date_tags (
|
||||
NULL, 0, "no_trigger",
|
||||
_("%s%s: failed to create trigger \"%s\""),
|
||||
weechat_prefix ("error"), TRIGGER_PLUGIN_NAME,
|
||||
sargv[0]);
|
||||
goto end;
|
||||
}
|
||||
ptr_trigger = trigger_new (
|
||||
sargv[0], /* name */
|
||||
(weechat_strcmp (argv[1], "addoff") == 0) ? "off" : "on",
|
||||
|
||||
@@ -831,4 +831,5 @@ void
|
||||
trigger_config_free ()
|
||||
{
|
||||
weechat_config_free (trigger_config_file);
|
||||
trigger_config_file = NULL;
|
||||
}
|
||||
|
||||
@@ -1391,6 +1391,8 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_plugin = plugin;
|
||||
|
||||
trigger_enabled = 1;
|
||||
|
||||
trigger_callback_init ();
|
||||
|
||||
trigger_command_init ();
|
||||
@@ -1427,6 +1429,7 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
trigger_free_all ();
|
||||
trigger_config_free ();
|
||||
trigger_callback_end ();
|
||||
trigger_context_id = 0;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -218,4 +218,5 @@ void
|
||||
typing_config_free ()
|
||||
{
|
||||
weechat_config_free (typing_config_file);
|
||||
typing_config_file = NULL;
|
||||
}
|
||||
|
||||
@@ -580,6 +580,45 @@ typing_setup_hooks ()
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Removes all hooks.
|
||||
*/
|
||||
|
||||
void
|
||||
typing_remove_hooks ()
|
||||
{
|
||||
if (typing_signal_buffer_closing)
|
||||
{
|
||||
weechat_unhook (typing_signal_buffer_closing);
|
||||
typing_signal_buffer_closing = NULL;
|
||||
}
|
||||
if (typing_signal_input_text_changed)
|
||||
{
|
||||
weechat_unhook (typing_signal_input_text_changed);
|
||||
typing_signal_input_text_changed = NULL;
|
||||
}
|
||||
if (typing_modifier_input_text_for_buffer)
|
||||
{
|
||||
weechat_unhook (typing_modifier_input_text_for_buffer);
|
||||
typing_modifier_input_text_for_buffer = NULL;
|
||||
}
|
||||
if (typing_timer)
|
||||
{
|
||||
weechat_unhook (typing_timer);
|
||||
typing_timer = NULL;
|
||||
}
|
||||
if (typing_signal_typing_set_nick)
|
||||
{
|
||||
weechat_unhook (typing_signal_typing_set_nick);
|
||||
typing_signal_typing_set_nick = NULL;
|
||||
}
|
||||
if (typing_signal_typing_reset_buffer)
|
||||
{
|
||||
weechat_unhook (typing_signal_typing_reset_buffer);
|
||||
typing_signal_typing_reset_buffer = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Initializes typing plugin.
|
||||
*/
|
||||
@@ -615,6 +654,8 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
/* make C compiler happy */
|
||||
(void) plugin;
|
||||
|
||||
typing_remove_hooks ();
|
||||
|
||||
typing_config_write ();
|
||||
typing_config_free ();
|
||||
|
||||
|
||||
@@ -1838,6 +1838,8 @@ weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
|
||||
weechat_plugin = plugin;
|
||||
|
||||
xfer_signal_upgrade_received = 0;
|
||||
|
||||
if (!xfer_config_init ())
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
@@ -1880,6 +1882,13 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
/* make C compiler happy */
|
||||
(void) plugin;
|
||||
|
||||
if (xfer_buffer)
|
||||
{
|
||||
weechat_buffer_close (xfer_buffer);
|
||||
xfer_buffer = NULL;
|
||||
}
|
||||
xfer_buffer_selected_line = 0;
|
||||
|
||||
xfer_config_write ();
|
||||
|
||||
if (xfer_signal_upgrade_received)
|
||||
@@ -1890,6 +1899,7 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
xfer_free_all ();
|
||||
|
||||
weechat_config_free (xfer_config_file);
|
||||
xfer_config_file = NULL;
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
@@ -1137,6 +1137,7 @@ TEST(IrcMessage, Split)
|
||||
struct t_hashtable *hashtable;
|
||||
const char *ptr_msg, *pos1, *pos2;
|
||||
char batch_ref[512], msg[4096];
|
||||
int old_nick_max_length;
|
||||
|
||||
server = irc_server_alloc ("test_split_msg");
|
||||
CHECK(server);
|
||||
@@ -1552,6 +1553,21 @@ TEST(IrcMessage, Split)
|
||||
(const char *)hashtable_get (hashtable, "args1"));
|
||||
hashtable_free (hashtable);
|
||||
|
||||
/* PRIVMSG with small content but inconsistent max length: no split */
|
||||
old_nick_max_length = server->nick_max_length;
|
||||
server->nick_max_length = 4096;
|
||||
hashtable = irc_message_split (server, "PRIVMSG #channel :test");
|
||||
CHECK(hashtable);
|
||||
LONGS_EQUAL(3, hashtable->items_count);
|
||||
STRCMP_EQUAL("1",
|
||||
(const char *)hashtable_get (hashtable, "count"));
|
||||
STRCMP_EQUAL("PRIVMSG #channel :test",
|
||||
(const char *)hashtable_get (hashtable, "msg1"));
|
||||
STRCMP_EQUAL("test",
|
||||
(const char *)hashtable_get (hashtable, "args1"));
|
||||
hashtable_free (hashtable);
|
||||
server->nick_max_length = old_nick_max_length;
|
||||
|
||||
/* PRIVMSG with 512 bytes of content: 1 split */
|
||||
hashtable = irc_message_split (server,
|
||||
"PRIVMSG #channel :" LOREM_IPSUM_512);
|
||||
@@ -1981,6 +1997,21 @@ TEST(IrcMessage, Split)
|
||||
hashtable_remove (server->cap_list, "batch");
|
||||
hashtable_remove (server->cap_list, "draft/multiline");
|
||||
|
||||
/* PRIVMSG with newlines but no server: BATCH is not used */
|
||||
hashtable = irc_message_split (NULL, "PRIVMSG #channel :test\n\nline 3");
|
||||
CHECK(hashtable);
|
||||
LONGS_EQUAL(7, hashtable->items_count);
|
||||
STRCMP_EQUAL("3", (const char *)hashtable_get (hashtable, "count"));
|
||||
STRCMP_EQUAL("PRIVMSG #channel :test",
|
||||
(const char *)hashtable_get (hashtable, "msg1"));
|
||||
STRCMP_EQUAL("test", (const char *)hashtable_get (hashtable, "args1"));
|
||||
STRCMP_EQUAL("PRIVMSG #channel :",
|
||||
(const char *)hashtable_get (hashtable, "msg2"));
|
||||
STRCMP_EQUAL("", (const char *)hashtable_get (hashtable, "args2"));
|
||||
STRCMP_EQUAL("PRIVMSG #channel :line 3",
|
||||
(const char *)hashtable_get (hashtable, "msg3"));
|
||||
STRCMP_EQUAL("line 3", (const char *)hashtable_get (hashtable, "args3"));
|
||||
|
||||
/* 005: no split */
|
||||
hashtable = irc_message_split (server, "005 nick " MSG_005);
|
||||
CHECK(hashtable);
|
||||
|
||||
+2
-2
@@ -39,8 +39,8 @@
|
||||
# devel-number the devel version as hex number ("0x04010000" for "4.1.0-dev")
|
||||
#
|
||||
|
||||
weechat_stable="4.1.2"
|
||||
weechat_devel="4.1.2"
|
||||
weechat_stable="4.1.3"
|
||||
weechat_devel="4.1.4-dev"
|
||||
|
||||
stable_major=$(echo "${weechat_stable}" | cut -d"." -f1)
|
||||
stable_minor=$(echo "${weechat_stable}" | cut -d"." -f2)
|
||||
|
||||
Reference in New Issue
Block a user