mirror of
https://github.com/weechat/weechat.git
synced 2026-06-13 06:34:47 +02:00
Compare commits
35 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| eb446f099d | |||
| 4edbbddf2c | |||
| 276990699a | |||
| 8dc7bb409d | |||
| 410ffb2418 | |||
| 1ba3e3530b | |||
| 36332d11c8 | |||
| 53da9df883 | |||
| 956befb655 | |||
| 03bd118854 | |||
| 57224f4cee | |||
| 39ea49b9c5 | |||
| ccc45c9284 | |||
| 639c05dd36 | |||
| f9eb31d517 | |||
| bcd3594b38 | |||
| 26da6bda4d | |||
| 1abeb71603 | |||
| 172d383fd1 | |||
| de30a87a21 | |||
| 70cd508cf0 | |||
| 0973fe0ad4 | |||
| db65071db5 | |||
| 90ba9264de | |||
| 82a425d226 | |||
| af2b48c69e | |||
| 8dfd54ae3d | |||
| aeb973fdbe | |||
| 677efe8184 | |||
| 9b30137dd4 | |||
| 230c637565 | |||
| e3c76cd7e6 | |||
| 4f45828fd6 | |||
| 25809ff592 | |||
| 1d620ce7c7 |
@@ -9,7 +9,7 @@ body:
|
||||
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.md](https://github.com/weechat/weechat/blob/master/CONTRIBUTING.md#security-reports).
|
||||
**IMPORTANT**: please do not report any security issue here, see [CONTRIBUTING.md](https://github.com/weechat/weechat/blob/main/CONTRIBUTING.md#security-reports).
|
||||
|
||||
- type: textarea
|
||||
id: bug-description
|
||||
|
||||
@@ -1,5 +1,25 @@
|
||||
# WeeChat ChangeLog
|
||||
|
||||
## Version 4.4.3 (2024-10-30)
|
||||
|
||||
### Fixed
|
||||
|
||||
- irc: fix crash on /list buffer when a filter is set ([#2197](https://github.com/weechat/weechat/issues/2197))
|
||||
- core: always send the signal "buffer_switch", even when the buffer is opening ([#2198](https://github.com/weechat/weechat/issues/2198))
|
||||
- core: fix build on Android ([#2180](https://github.com/weechat/weechat/issues/2180))
|
||||
|
||||
## Version 4.4.2 (2024-09-08)
|
||||
|
||||
### Fixed
|
||||
|
||||
- core, plugins: fix integer overflow in loops ([#2178](https://github.com/weechat/weechat/issues/2178), [CVE-2024-46613](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-46613))
|
||||
|
||||
## Version 4.4.1 (2024-08-19)
|
||||
|
||||
### Fixed
|
||||
|
||||
- lua: fix compilation on Fedora with Lua < 5.2.0 ([#2173](https://github.com/weechat/weechat/issues/2173), [#2174](https://github.com/weechat/weechat/issues/2174))
|
||||
|
||||
## Version 4.4.0 (2024-08-17)
|
||||
|
||||
### Changed
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
[](https://weechat.org/donate/)
|
||||
|
||||
[](https://github.com/weechat/weechat/actions)
|
||||
[](https://codecov.io/gh/weechat/weechat)
|
||||
[](https://codecov.io/gh/weechat/weechat)
|
||||
|
||||
**WeeChat** (Wee Enhanced Environment for Chat) is a free chat client, fast and light, designed for many operating systems.\
|
||||
It is highly customizable and extensible with scripts.
|
||||
|
||||
+1
-1
@@ -35,5 +35,5 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_search_module(LUA lua5.4 lua-5.4 lua54 lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
|
||||
pkg_search_module(LUA lua lua5.4 lua-5.4 lua54 lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50)
|
||||
endif()
|
||||
|
||||
@@ -24,7 +24,7 @@ Build-Depends:
|
||||
libzstd-dev,
|
||||
zlib1g-dev,
|
||||
libcjson-dev
|
||||
Standards-Version: 4.6.2
|
||||
Standards-Version: 4.7.0
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
|
||||
@@ -16,8 +16,5 @@ override_dh_auto_configure:
|
||||
-DCMAKE_SKIP_RPATH:BOOL=ON \
|
||||
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
|
||||
|
||||
override_dh_installchangelogs:
|
||||
dh_installchangelogs CHANGELOG.md
|
||||
|
||||
%:
|
||||
dh $@ --builddirectory=$(BUILDDIR)
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
weechat (4.4.2-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
- fix crash where exiting (Closes: #1076532)
|
||||
- fix a minor security issue (Closes: #1081942)
|
||||
* Bump Standards-Version to 4.7.0
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sun, 22 Sep 2024 13:08:28 +0000
|
||||
|
||||
weechat (4.3.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release (Closes: #1067608)
|
||||
|
||||
@@ -24,7 +24,7 @@ Build-Depends:
|
||||
libzstd-dev,
|
||||
zlib1g-dev,
|
||||
libcjson-dev
|
||||
Standards-Version: 4.6.2
|
||||
Standards-Version: 4.7.0
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
|
||||
@@ -16,8 +16,5 @@ override_dh_auto_configure:
|
||||
-DCMAKE_SKIP_RPATH:BOOL=ON \
|
||||
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
|
||||
|
||||
override_dh_installchangelogs:
|
||||
dh_installchangelogs CHANGELOG.md
|
||||
|
||||
%:
|
||||
dh $@ --builddirectory=$(BUILDDIR)
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
AUTHORS.md
|
||||
CHANGELOG.md
|
||||
CONTRIBUTING.md
|
||||
README.md
|
||||
UPGRADING.md
|
||||
|
||||
+8
-1
@@ -40,7 +40,6 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
-a reproducible
|
||||
-a "prewrap!"
|
||||
-a "webfonts!"
|
||||
-a icons=font
|
||||
-a revnumber="${VERSION}"
|
||||
-a sectanchors
|
||||
-a source-highlighter=pygments
|
||||
@@ -205,6 +204,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_user.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/attributes-${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/cmdline_options.${lang}.adoc"
|
||||
doc-autogen
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_user_commands.${lang}.adoc"
|
||||
@@ -225,6 +225,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_plugin_api.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/attributes-${lang}.adoc"
|
||||
doc-autogen
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_completions.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_api_config_priority.${lang}.adoc"
|
||||
@@ -248,6 +249,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_scripting.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/attributes-${lang}.adoc"
|
||||
doc-autogen
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_functions.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/autogen/autogen_scripting_constants.${lang}.adoc"
|
||||
@@ -265,6 +267,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_faq.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/attributes-${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_faq.${lang}.html"
|
||||
)
|
||||
@@ -279,6 +282,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_quickstart.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/attributes-${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_quickstart.${lang}.html"
|
||||
)
|
||||
@@ -293,6 +297,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_relay_api.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/attributes-${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/relay.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_relay_api.${lang}.html"
|
||||
@@ -308,6 +313,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_relay_weechat.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/attributes-${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/relay.${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_relay_weechat.${lang}.html"
|
||||
@@ -323,6 +329,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/weechat_dev.${lang}.adoc"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${lang}/includes/attributes-${lang}.adoc"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
COMMENT "Building weechat_dev.${lang}.html"
|
||||
)
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// czech translation, for reference only; matches the built-in behavior of core
|
||||
:appendix-caption: Příloha
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: Upozornění
|
||||
:chapter-signifier: Kapitola
|
||||
:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: Příklad
|
||||
:figure-caption: Obrázek
|
||||
:important-caption: Důležité
|
||||
:last-update-label: Změněno
|
||||
ifdef::listing-caption[:listing-caption: Seznam]
|
||||
ifdef::manname-title[:manname-title: Název]
|
||||
:note-caption: Poznámka
|
||||
:part-signifier: Část
|
||||
:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: Úvod]
|
||||
:section-refsig: Oddíl
|
||||
:table-caption: Tabulka
|
||||
:tip-caption: Tip
|
||||
:toc-title: Obsah
|
||||
:untitled-label: Nepojmenovaný
|
||||
:version-label: Verze
|
||||
:warning-caption: Varování
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: cs
|
||||
include::includes/attributes-cs.adoc[]
|
||||
|
||||
[[start]]
|
||||
== Spuštění WeeChatu
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// German translation, courtesy of Florian Wilhelm
|
||||
:appendix-caption: Anhang
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: Achtung
|
||||
:chapter-signifier: Kapitel
|
||||
:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: Beispiel
|
||||
:figure-caption: Abbildung
|
||||
:important-caption: Wichtig
|
||||
:last-update-label: Zuletzt aktualisiert
|
||||
ifdef::listing-caption[:listing-caption: Listing]
|
||||
ifdef::manname-title[:manname-title: Bezeichnung]
|
||||
:note-caption: Anmerkung
|
||||
:part-signifier: Teil
|
||||
:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: Vorwort]
|
||||
:section-refsig: Abschnitt
|
||||
:table-caption: Tabelle
|
||||
:tip-caption: Hinweis
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
:untitled-label: Ohne Titel
|
||||
:version-label: Version
|
||||
:warning-caption: Warnung
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
include::includes/attributes-de.adoc[]
|
||||
|
||||
Übersetzer:
|
||||
|
||||
@@ -804,7 +804,7 @@ Man sollte versuchen, eine andere Priorität zu nutzen; Im folgenden Beispiel
|
||||
muss "xxx" durch den betroffenen Servernamen ersetzt werden:
|
||||
|
||||
----
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_tls_libera]]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
include::includes/attributes-de.adoc[]
|
||||
|
||||
Übersetzer:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
include::includes/attributes-de.adoc[]
|
||||
|
||||
Übersetzer:
|
||||
|
||||
@@ -73,7 +73,7 @@ und die Dokumentation für die Funktion `+hook_process+` in link:weechat_plugin_
|
||||
WeeChat definiert ein `weechat` Module welches mittels `import weechat`
|
||||
importiert werden muss. +
|
||||
Ein Python-Stub für die WeeChat-API ist im Repository verfügbar:
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
https://raw.githubusercontent.com/weechat/weechat/main/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
|
||||
[[python_functions]]
|
||||
===== Funktionen
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
include::includes/attributes-de.adoc[]
|
||||
|
||||
Übersetzer:
|
||||
|
||||
@@ -827,7 +827,7 @@ weechat --upgrade
|
||||
==== Hinweise zum Upgrade
|
||||
|
||||
Nach einem Upgrade, wird *dringend empfohlen* das Dokukment
|
||||
https://github.com/weechat/weechat/blob/master/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
https://github.com/weechat/weechat/blob/main/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
zu lesen. Dieses Dokument enthält wichtige Informationen zu wichtigen Änderungen und
|
||||
einige manuelle Aktionen, die erforderlich sein könnten.
|
||||
|
||||
|
||||
@@ -198,6 +198,10 @@ mark {
|
||||
|
||||
/* syntax highlighting tuning */
|
||||
|
||||
pre.pygments {
|
||||
color: #ddd !important;
|
||||
}
|
||||
|
||||
pre.pygments .tok-cp {
|
||||
color: #44cfaf;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// English translation, for reference only; matches the built-in behavior of core
|
||||
:appendix-caption: Appendix
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: Caution
|
||||
:chapter-signifier: Chapter
|
||||
:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: Example
|
||||
:figure-caption: Figure
|
||||
:important-caption: Important
|
||||
:last-update-label: Last updated
|
||||
ifdef::listing-caption[:listing-caption: Listing]
|
||||
ifdef::manname-title[:manname-title: Name]
|
||||
:note-caption: Note
|
||||
:part-signifier: Part
|
||||
:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: Preface]
|
||||
:section-refsig: Section
|
||||
:table-caption: Table
|
||||
:tip-caption: Tip
|
||||
:toc-title: Table of Contents
|
||||
:untitled-label: Untitled
|
||||
:version-label: Version
|
||||
:warning-caption: Warning
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
include::includes/attributes-en.adoc[]
|
||||
|
||||
This manual documents WeeChat chat client, it is part of WeeChat.
|
||||
|
||||
@@ -1172,7 +1173,7 @@ server->hook_timer_sasl = weechat_hook_timer (timeout * 1000,
|
||||
|
||||
Git repository is on https://github.com/weechat/weechat[GitHub ^↗^^].
|
||||
|
||||
Any patch for bug or new feature must be done on master branch, preferred way
|
||||
Any patch for bug or new feature must be done on branch `main`, preferred way
|
||||
is a GitHub pull request. A patch can also be sent by e-mail
|
||||
(made with `git diff` or `git format-patch`).
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
include::includes/attributes-en.adoc[]
|
||||
|
||||
[[general]]
|
||||
== General
|
||||
@@ -758,7 +759,7 @@ should be, you can specify the fingerprint (SHA-512, SHA-256 or SHA-1):
|
||||
You can try a different priority string, replace "xxx" by your server name:
|
||||
|
||||
----
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_tls_libera]]
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
include::includes/attributes-en.adoc[]
|
||||
|
||||
This manual documents WeeChat chat client, it is part of WeeChat.
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
include::includes/attributes-en.adoc[]
|
||||
|
||||
[[start]]
|
||||
== Start WeeChat
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
include::includes/attributes-en.adoc[]
|
||||
|
||||
[[introduction]]
|
||||
== Introduction
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
include::includes/attributes-en.adoc[]
|
||||
|
||||
[[introduction]]
|
||||
== Introduction
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
include::includes/attributes-en.adoc[]
|
||||
|
||||
This manual documents WeeChat chat client, it is part of WeeChat.
|
||||
|
||||
@@ -67,7 +68,7 @@ link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference ^↗
|
||||
|
||||
WeeChat defines a `weechat` module which must be imported with `import weechat`. +
|
||||
A Python stub for WeeChat API is available in the repository:
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
https://raw.githubusercontent.com/weechat/weechat/main/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
|
||||
[[python_functions]]
|
||||
===== Functions
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
include::includes/attributes-en.adoc[]
|
||||
|
||||
This manual documents WeeChat chat client, it is part of WeeChat.
|
||||
|
||||
@@ -817,7 +818,7 @@ weechat --upgrade
|
||||
==== Upgrading notes
|
||||
|
||||
After an upgrade, it is *strongly recommended* to read the file
|
||||
https://github.com/weechat/weechat/blob/master/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
https://github.com/weechat/weechat/blob/main/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
which contains important information about breaking changes and some
|
||||
manual actions that could be required.
|
||||
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// Spanish translation, courtesy of Eddú Meléndez <eddu.melendez@gmail.com> with updates from Fede Mendez <federicomh@gmail.com>
|
||||
:appendix-caption: Apéndice
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: Precaución
|
||||
:chapter-signifier: Capítulo
|
||||
:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: Ejemplo
|
||||
:figure-caption: Figura
|
||||
:important-caption: Importante
|
||||
:last-update-label: Ultima actualización
|
||||
ifdef::listing-caption[:listing-caption: Lista]
|
||||
ifdef::manname-title[:manname-title: Nombre]
|
||||
:note-caption: Nota
|
||||
:part-signifier: Parte
|
||||
:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: Prefacio]
|
||||
:section-refsig: Sección
|
||||
:table-caption: Tabla
|
||||
:tip-caption: Sugerencia
|
||||
:toc-title: Tabla de Contenido
|
||||
:untitled-label: Sin título
|
||||
:version-label: Versión
|
||||
:warning-caption: Aviso
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: es
|
||||
:toc-title: Índice
|
||||
include::includes/attributes-es.adoc[]
|
||||
|
||||
Traductores
|
||||
|
||||
@@ -780,7 +780,7 @@ Puede intentar una cadena de prioridad diferente, reemplace "xxx" por el nombre
|
||||
de su servidor:
|
||||
|
||||
----
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_tls_libera]]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: es
|
||||
:toc-title: Índice
|
||||
include::includes/attributes-es.adoc[]
|
||||
|
||||
Traductores:
|
||||
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// French translation, courtesy of Nicolas Comet <nicolas.comet@gmail.com> with updates from Maheva Bagard Laursen <mblaursen@gbif.org>
|
||||
:appendix-caption: Annexe
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: Attention
|
||||
:chapter-signifier: Chapitre
|
||||
:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: Exemple
|
||||
:figure-caption: Figure
|
||||
:important-caption: Important
|
||||
:last-update-label: Dernière mise à jour
|
||||
ifdef::listing-caption[:listing-caption: Liste]
|
||||
ifdef::manname-title[:manname-title: Nom]
|
||||
:note-caption: Note
|
||||
:part-signifier: Partie
|
||||
:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: Préface]
|
||||
:section-refsig: Section
|
||||
:table-caption: Tableau
|
||||
:tip-caption: Astuce
|
||||
:toc-title: Table des matières
|
||||
:untitled-label: Sans titre
|
||||
:version-label: Version
|
||||
:warning-caption: Avertissement
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: fr
|
||||
:toc-title: Table des matières
|
||||
include::includes/attributes-fr.adoc[]
|
||||
|
||||
Ce manuel documente le client de messagerie instantanée WeeChat, il fait
|
||||
partie de WeeChat.
|
||||
@@ -1192,7 +1192,7 @@ server->hook_timer_sasl = weechat_hook_timer (timeout * 1000,
|
||||
Le dépôt Git est sur https://github.com/weechat/weechat[GitHub ^↗^^].
|
||||
|
||||
Tout patch pour un bug ou une nouvelle fonctionnalité doit être effectué sur la
|
||||
branche master, le format préféré étant une "pull request" sur GitHub. Un patch
|
||||
branche `main`, le format préféré étant une "pull request" sur GitHub. Un patch
|
||||
peut aussi être envoyé par e-mail (fait avec `git diff` ou `git format-patch`).
|
||||
|
||||
Le format du message de commit est le suivant (avec fermeture automatique
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: fr
|
||||
:toc-title: Table des matières
|
||||
include::includes/attributes-fr.adoc[]
|
||||
|
||||
== Général
|
||||
|
||||
@@ -785,7 +785,7 @@ Vous pouvez essayer une chaîne de priorité différente, remplacez "xxx" par
|
||||
le nom de votre serveur :
|
||||
|
||||
----
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_tls_libera]]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: fr
|
||||
:toc-title: Table des matières
|
||||
include::includes/attributes-fr.adoc[]
|
||||
|
||||
Ce manuel documente le client de messagerie instantanée WeeChat, il fait
|
||||
partie de WeeChat.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: fr
|
||||
:toc-title: Table des matières
|
||||
include::includes/attributes-fr.adoc[]
|
||||
|
||||
[[start]]
|
||||
== Démarrer WeeChat
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: fr
|
||||
:toc-title: Table des matières
|
||||
include::includes/attributes-fr.adoc[]
|
||||
|
||||
[[introduction]]
|
||||
== Introduction
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: fr
|
||||
:toc-title: Table des matières
|
||||
include::includes/attributes-fr.adoc[]
|
||||
|
||||
[[introduction]]
|
||||
== Introduction
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: fr
|
||||
:toc-title: Table des matières
|
||||
include::includes/attributes-fr.adoc[]
|
||||
|
||||
Ce manuel documente le client de messagerie instantanée WeeChat, il fait
|
||||
partie de WeeChat.
|
||||
@@ -73,7 +73,7 @@ link:weechat_plugin_api.fr.html#_hook_process[Référence API extension WeeChat
|
||||
|
||||
WeeChat définit un module `weechat` qui doit être importé avec `import weechat`. +
|
||||
Un "stub" Python pour l'API WeeChat est disponible dans le dépôt :
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
https://raw.githubusercontent.com/weechat/weechat/main/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
|
||||
[[python_functions]]
|
||||
===== Fonctions
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: fr
|
||||
:toc-title: Table des matières
|
||||
include::includes/attributes-fr.adoc[]
|
||||
|
||||
Ce manuel documente le client de messagerie instantanée WeeChat, il fait
|
||||
partie de WeeChat.
|
||||
@@ -829,7 +829,7 @@ weechat --upgrade
|
||||
==== Notes de mise à jour
|
||||
|
||||
Après une mise à jour, il est *fortement recommandé* de lire le fichier
|
||||
https://github.com/weechat/weechat/blob/master/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
https://github.com/weechat/weechat/blob/main/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
qui contient des informations importantes sur les changements majeurs et
|
||||
quelques actions manuelles qui pourraient être nécessaires.
|
||||
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// Italian translation, courtesy of Marco Ciampa <ciampix@posteo.net>
|
||||
:appendix-caption: Appendice
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: Attenzione
|
||||
:chapter-signifier: Capitolo
|
||||
:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: Esempio
|
||||
:figure-caption: Figura
|
||||
:important-caption: Importante
|
||||
:last-update-label: Ultimo aggiornamento
|
||||
ifdef::listing-caption[:listing-caption: Elenco]
|
||||
ifdef::manname-title[:manname-title: Nome]
|
||||
:note-caption: Nota
|
||||
:part-signifier: Parte
|
||||
:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: Prefazione]
|
||||
:section-refsig: Sezione
|
||||
:table-caption: Tabella
|
||||
:tip-caption: Suggerimento
|
||||
:toc-title: Indice
|
||||
:untitled-label: Senza titolo
|
||||
:version-label: Versione
|
||||
:warning-caption: Attenzione
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: it
|
||||
:toc-title: Indice
|
||||
include::includes/attributes-it.adoc[]
|
||||
|
||||
// TRANSLATION MISSING
|
||||
Translators:
|
||||
@@ -832,7 +832,7 @@ should be, you can specify the fingerprint (SHA-512, SHA-256 or SHA-1):
|
||||
Provare una stringa di priorità diversa, sostituendo "xxx" con il nome del server:
|
||||
|
||||
----
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_tls_libera]]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: it
|
||||
:toc-title: Indice
|
||||
include::includes/attributes-it.adoc[]
|
||||
|
||||
// TRANSLATION MISSING
|
||||
Translators:
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: it
|
||||
:toc-title: Indice
|
||||
include::includes/attributes-it.adoc[]
|
||||
|
||||
Traduttori:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: it
|
||||
:toc-title: Indice
|
||||
include::includes/attributes-it.adoc[]
|
||||
|
||||
// TRANSLATION MISSING
|
||||
Translators:
|
||||
@@ -77,7 +77,7 @@ link:weechat_plugin_api.it.html#_hook_process[WeeChat plugin API reference ^↗
|
||||
|
||||
WeeChat defines a `weechat` module which must be imported with `import weechat`. +
|
||||
A Python stub for WeeChat API is available in the repository:
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
https://raw.githubusercontent.com/weechat/weechat/main/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
|
||||
// TRANSLATION MISSING
|
||||
[[python_functions]]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: it
|
||||
:toc-title: Indice
|
||||
include::includes/attributes-it.adoc[]
|
||||
|
||||
// TRANSLATION MISSING
|
||||
Translators:
|
||||
@@ -899,7 +899,7 @@ weechat --upgrade
|
||||
|
||||
// TRANSLATION MISSING
|
||||
After an upgrade, it is *strongly recommended* to read the file
|
||||
https://github.com/weechat/weechat/blob/master/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
https://github.com/weechat/weechat/blob/main/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
which contains important information about breaking changes and some
|
||||
manual actions that could be required.
|
||||
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// Japanese translation, courtesy of Takayuki Konishi <seannos.takayuki@gmail.com>
|
||||
:appendix-caption: 付録
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: 注意
|
||||
//:chapter-signifier: ???
|
||||
//:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: 例
|
||||
:figure-caption: 図
|
||||
:important-caption: 重要
|
||||
:last-update-label: 最終更新
|
||||
ifdef::listing-caption[:listing-caption: リスト]
|
||||
ifdef::manname-title[:manname-title: 名前]
|
||||
:note-caption: 注記
|
||||
//:part-signifier: ???
|
||||
//:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: まえがき]
|
||||
//:section-refsig: ???
|
||||
:table-caption: 表
|
||||
:tip-caption: ヒント
|
||||
:toc-title: 目次
|
||||
:untitled-label: 無題
|
||||
:version-label: バージョン
|
||||
:warning-caption: 警告
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: ja-jp
|
||||
:toc-title: 目次
|
||||
include::includes/attributes-ja.adoc[]
|
||||
|
||||
翻訳者:
|
||||
|
||||
@@ -1309,7 +1309,7 @@ server->hook_timer_sasl = weechat_hook_timer (timeout * 1000,
|
||||
// TRANSLATION MISSING
|
||||
Git repository is on https://github.com/weechat/weechat[GitHub ^↗^^].
|
||||
|
||||
バグや新機能のパッチは必ず master ブランチに対して適用できるものを作成し、GitHub の pull
|
||||
バグや新機能のパッチは必ず `main` ブランチに対して適用できるものを作成し、GitHub の pull
|
||||
リクエストを使って提出することを推奨します。パッチは電子メールで送信することも可能です
|
||||
(`git diff` または `git format-patch` で作成してください)。
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: ja-jp
|
||||
:toc-title: 目次
|
||||
include::includes/attributes-ja.adoc[]
|
||||
|
||||
翻訳者:
|
||||
|
||||
@@ -779,7 +779,7 @@ gnutls ハンドシェイクに関するエラーの場合、Diffie-Hellman キ
|
||||
You can try a different priority string, replace "xxx" by your server name:
|
||||
|
||||
----
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_tls_libera]]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: ja-jp
|
||||
:toc-title: 目次
|
||||
include::includes/attributes-ja.adoc[]
|
||||
|
||||
翻訳者:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: ja-jp
|
||||
:toc-title: 目次
|
||||
include::includes/attributes-ja.adoc[]
|
||||
|
||||
翻訳者:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: ja-jp
|
||||
:toc-title: 目次
|
||||
include::includes/attributes-ja.adoc[]
|
||||
|
||||
翻訳者:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: ja-jp
|
||||
:toc-title: 目次
|
||||
include::includes/attributes-ja.adoc[]
|
||||
|
||||
翻訳者:
|
||||
|
||||
@@ -74,7 +74,7 @@ link:weechat_plugin_api.ja.html#_hook_process[WeeChat プラグイン API リフ
|
||||
|
||||
WeeChat defines a `weechat` module which must be imported with `import weechat`. +
|
||||
A Python stub for WeeChat API is available in the repository:
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
https://raw.githubusercontent.com/weechat/weechat/main/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
|
||||
// TRANSLATION MISSING
|
||||
[[python_functions]]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: ja-jp
|
||||
:toc-title: 目次
|
||||
include::includes/attributes-ja.adoc[]
|
||||
|
||||
翻訳者:
|
||||
|
||||
@@ -875,7 +875,7 @@ weechat --upgrade
|
||||
|
||||
// TRANSLATION MISSING
|
||||
After an upgrade, it is *strongly recommended* to read the file
|
||||
https://github.com/weechat/weechat/blob/master/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
https://github.com/weechat/weechat/blob/main/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
which contains important information about breaking changes and some
|
||||
manual actions that could be required.
|
||||
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// Polish translation, courtesy of Łukasz Dziedziul <l.dziedziul@gmail.com> with updates via Matthew Blissett <mblissett@gbif.org>
|
||||
:appendix-caption: Dodatek
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: Uwaga
|
||||
:chapter-signifier: Rozdział
|
||||
:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: Przykład
|
||||
:figure-caption: Rysunek
|
||||
:important-caption: Ważne
|
||||
:last-update-label: Ostatnio zmodyfikowany
|
||||
ifdef::listing-caption[:listing-caption: Listing]
|
||||
ifdef::manname-title[:manname-title: Nazwa]
|
||||
:note-caption: Notka
|
||||
:part-signifier: Część
|
||||
:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: Wstęp]
|
||||
:section-refsig: Sekcja
|
||||
:table-caption: Tabela
|
||||
:tip-caption: Sugestia
|
||||
:toc-title: Spis treści
|
||||
:untitled-label: Bez tytułu
|
||||
:version-label: Wersja
|
||||
:warning-caption: Ostrzeżenie
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: pl
|
||||
:toc-title: Spis treści
|
||||
include::includes/attributes-pl.adoc[]
|
||||
|
||||
Tłumaczenie:
|
||||
|
||||
@@ -761,7 +761,7 @@ możesz podać sumę kontrolną (SHA-512, SHA-256 lub SHA-1):
|
||||
Możesz spróbować innego ciągu priorytetu, zamień "xxx" nazwą serwera:
|
||||
|
||||
----
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_tls_libera]]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: pl
|
||||
:toc-title: Spis treści
|
||||
include::includes/attributes-pl.adoc[]
|
||||
|
||||
Tłumaczenie:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: pl
|
||||
:toc-title: Spis treści
|
||||
include::includes/attributes-pl.adoc[]
|
||||
|
||||
Tłumaczenie:
|
||||
|
||||
@@ -72,7 +72,7 @@ link:weechat_plugin_api.en.html#_hook_process[Opisu API wtyczek WeeChat ^↗^^]
|
||||
|
||||
WeeChat definiuje moduł `weechat`, który należy zaimportowac poprzez `import weechat`. +
|
||||
Szkielet API WeeChat dla języka Python dostępny jest w repozytorium:
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
https://raw.githubusercontent.com/weechat/weechat/main/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
|
||||
[[python_functions]]
|
||||
===== Funkcje
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: pl
|
||||
:toc-title: Spis treści
|
||||
include::includes/attributes-pl.adoc[]
|
||||
|
||||
Tłumaczenie:
|
||||
|
||||
@@ -821,7 +821,7 @@ weechat --upgrade
|
||||
==== Informacje o aktualizacji
|
||||
|
||||
Po aktualizacji *zaleca się* zapoznanie z plikiem
|
||||
https://github.com/weechat/weechat/blob/master/UPGRADING.md[UPGRADING.md ^↗^^],
|
||||
https://github.com/weechat/weechat/blob/main/UPGRADING.md[UPGRADING.md ^↗^^],
|
||||
który zawiera ważne informacje o niekompatybilnych zmianach i czynnościach,
|
||||
jakie mogą być wymagane.
|
||||
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// Russian translation, courtesy of Alexander Zobkov <alexander.zobkov@gmail.com>
|
||||
:appendix-caption: Приложение
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: Внимание
|
||||
:chapter-signifier: Глава
|
||||
:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: Пример
|
||||
:figure-caption: Рисунок
|
||||
:important-caption: Важно
|
||||
:last-update-label: Последнее обновление
|
||||
ifdef::listing-caption[:listing-caption: Листинг]
|
||||
ifdef::manname-title[:manname-title: Название]
|
||||
:note-caption: Примечание
|
||||
:part-signifier: Часть
|
||||
:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: Предисловие]
|
||||
:section-refsig: Раздел
|
||||
:table-caption: Таблица
|
||||
:tip-caption: Подсказка
|
||||
:toc-title: Содержание
|
||||
:untitled-label: Без названия
|
||||
:version-label: Версия
|
||||
:warning-caption: Предупреждение
|
||||
@@ -2,6 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: ru
|
||||
include::includes/attributes-ru.adoc[]
|
||||
|
||||
Переводчики:
|
||||
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// Serbian Cyrillic translation, courtesy of Bojan Stipic <bojan-7@live.com>
|
||||
:appendix-caption: Додатак
|
||||
:appendix-refsig: {appendix-caption}
|
||||
:caution-caption: Опрез
|
||||
:chapter-signifier: Поглавље
|
||||
:chapter-refsig: {chapter-signifier}
|
||||
:example-caption: Пример
|
||||
:figure-caption: Слика
|
||||
:important-caption: Важно
|
||||
:last-update-label: Последње ажурирано
|
||||
ifdef::listing-caption[:listing-caption: Листинг]
|
||||
ifdef::manname-title[:manname-title: Назив]
|
||||
:note-caption: Белешка
|
||||
:part-signifier: Део
|
||||
:part-refsig: {part-signifier}
|
||||
ifdef::preface-title[:preface-title: Предговор]
|
||||
:section-refsig: Секција
|
||||
:table-caption: Табела
|
||||
:tip-caption: Савет
|
||||
:toc-title: Садржај
|
||||
:untitled-label: Без назива
|
||||
:version-label: Верзија
|
||||
:warning-caption: Упозорење
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: sr
|
||||
:toc-title: Садржај
|
||||
include::includes/attributes-sr.adoc[]
|
||||
|
||||
Превод:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: sr
|
||||
:toc-title: Садржај
|
||||
include::includes/attributes-sr.adoc[]
|
||||
|
||||
Превод:
|
||||
|
||||
@@ -680,7 +680,7 @@ printf '\033[?1002l'
|
||||
Можете да покушате са другачијим стрингом приоритета, замените „xxx” са именом вашег сервера:
|
||||
|
||||
----
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
/set irc.server.xxx.tls_priorities "NORMAL:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_tls_libera]]
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: sr
|
||||
:toc-title: Садржај
|
||||
include::includes/attributes-sr.adoc[]
|
||||
|
||||
Превод:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: sr
|
||||
:toc-title: Садржај
|
||||
include::includes/attributes-sr.adoc[]
|
||||
|
||||
Превод:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: sr
|
||||
:toc-title: Садржај
|
||||
include::includes/attributes-sr.adoc[]
|
||||
|
||||
Превод:
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: sr
|
||||
:toc-title: Садржај
|
||||
include::includes/attributes-sr.adoc[]
|
||||
|
||||
Превод:
|
||||
|
||||
@@ -61,7 +61,7 @@ Almost all examples in this doc are written in Python, but API is the same for o
|
||||
===== Модул
|
||||
|
||||
Програм WeeChat дефинише `weechat` модул који мора да се увезе командом `import weechat`. +
|
||||
Python стаб за WeeChat API је соступан у репозиторијуму: https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
Python стаб за WeeChat API је соступан у репозиторијуму: https://raw.githubusercontent.com/weechat/weechat/main/src/plugins/python/weechat.pyi[weechat.pyi ^↗^^].
|
||||
|
||||
[[python_functions]]
|
||||
===== Функције
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: sr
|
||||
:toc-title: Садржај
|
||||
include::includes/attributes-sr.adoc[]
|
||||
|
||||
Превод:
|
||||
|
||||
@@ -773,7 +773,7 @@ weechat --upgrade
|
||||
==== Напомене у вези са ажурирањем
|
||||
|
||||
Након ажурирања, *снажно се препоручује* да прочитате фајл
|
||||
https://github.com/weechat/weechat/blob/master/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
https://github.com/weechat/weechat/blob/main/UPGRADING.md[UPGRADING.md ^↗^^]
|
||||
који садржи важне информације у вези са изменама које могу да покваре понашање и
|
||||
неке ручне акције које могу да буду неопходне.
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2024-08-12 21:29+0200\n"
|
||||
"PO-Revision-Date: 2024-08-12 21:35+0200\n"
|
||||
"POT-Creation-Date: 2024-08-24 11:22+0200\n"
|
||||
"PO-Revision-Date: 2024-09-02 18:47+0200\n"
|
||||
"Last-Translator: Sébastien Helleu <flashcode@flashtux.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: fr\n"
|
||||
@@ -12145,7 +12145,7 @@ msgstr ""
|
||||
"liste des pseudos (séparés par des virgules) pour lesquels les mots de passe "
|
||||
"seront masqués quand un message est envoyé, par exemple pour cacher le mot "
|
||||
"de passe dans le message affiché par \"/msg nickserv identify motdepasse\", "
|
||||
"exemple : \"nickserv|nickbot\""
|
||||
"exemple : \"nickserv,nickbot\""
|
||||
|
||||
msgid ""
|
||||
"display notices as private messages (if auto, use private buffer if found)"
|
||||
|
||||
+25
-24
@@ -334,8 +334,9 @@ char *
|
||||
calc_expression (const char *expr)
|
||||
{
|
||||
struct t_arraylist *list_values, *list_ops;
|
||||
const char *ptr_expr, *ptr_expr2;
|
||||
char str_result[64], *ptr_operator, *operator;
|
||||
int i, i2, index_op, decimals;
|
||||
int index_op, decimals;
|
||||
enum t_calc_symbol last_symbol;
|
||||
double value, factor, *ptr_value;
|
||||
|
||||
@@ -363,21 +364,21 @@ calc_expression (const char *expr)
|
||||
goto end;
|
||||
|
||||
last_symbol = CALC_SYMBOL_NONE;
|
||||
for (i = 0; expr[i]; i++)
|
||||
for (ptr_expr = expr; ptr_expr[0]; ptr_expr++)
|
||||
{
|
||||
if (expr[i] == ' ')
|
||||
if (ptr_expr[0] == ' ')
|
||||
{
|
||||
/* ignore spaces */
|
||||
continue;
|
||||
}
|
||||
else if (expr[i] == '(')
|
||||
else if (ptr_expr[0] == '(')
|
||||
{
|
||||
ptr_operator = string_strndup (expr + i, 1);
|
||||
ptr_operator = string_strndup (ptr_expr, 1);
|
||||
arraylist_add (list_ops, ptr_operator);
|
||||
last_symbol = CALC_SYMBOL_PARENTHESIS_OPEN;
|
||||
}
|
||||
else if (isdigit ((unsigned char)expr[i]) || (expr[i] == '.')
|
||||
|| ((expr[i] == '-')
|
||||
else if (isdigit ((unsigned char)ptr_expr[0]) || (ptr_expr[0] == '.')
|
||||
|| ((ptr_expr[0] == '-')
|
||||
&& ((last_symbol == CALC_SYMBOL_NONE)
|
||||
|| (last_symbol == CALC_SYMBOL_PARENTHESIS_OPEN)
|
||||
|| (last_symbol == CALC_SYMBOL_OPERATOR))))
|
||||
@@ -385,15 +386,15 @@ calc_expression (const char *expr)
|
||||
value = 0;
|
||||
decimals = 0;
|
||||
factor = 1;
|
||||
if (expr[i] == '-')
|
||||
if (ptr_expr[0] == '-')
|
||||
{
|
||||
factor = -1;
|
||||
i++;
|
||||
ptr_expr++;
|
||||
}
|
||||
while (expr[i]
|
||||
&& (isdigit ((unsigned char)expr[i]) || (expr[i] == '.')))
|
||||
while (ptr_expr[0]
|
||||
&& (isdigit ((unsigned char)ptr_expr[0]) || (ptr_expr[0] == '.')))
|
||||
{
|
||||
if (expr[i] == '.')
|
||||
if (ptr_expr[0] == '.')
|
||||
{
|
||||
if (decimals == 0)
|
||||
decimals = 10;
|
||||
@@ -402,24 +403,24 @@ calc_expression (const char *expr)
|
||||
{
|
||||
if (decimals)
|
||||
{
|
||||
value = value + (((double)(expr[i] - '0')) / decimals);
|
||||
value = value + (((double)(ptr_expr[0] - '0')) / decimals);
|
||||
decimals *= 10;
|
||||
}
|
||||
else
|
||||
{
|
||||
value = (value * 10) + (expr[i] - '0');
|
||||
value = (value * 10) + (ptr_expr[0] - '0');
|
||||
}
|
||||
}
|
||||
i++;
|
||||
ptr_expr++;
|
||||
}
|
||||
i--;
|
||||
ptr_expr--;
|
||||
value *= factor;
|
||||
ptr_value = malloc (sizeof (value));
|
||||
*ptr_value = value;
|
||||
arraylist_add (list_values, ptr_value);
|
||||
last_symbol = CALC_SYMBOL_VALUE;
|
||||
}
|
||||
else if (expr[i] == ')')
|
||||
else if (ptr_expr[0] == ')')
|
||||
{
|
||||
index_op = arraylist_size (list_ops) - 1;
|
||||
while (index_op >= 0)
|
||||
@@ -439,15 +440,15 @@ calc_expression (const char *expr)
|
||||
else
|
||||
{
|
||||
/* operator */
|
||||
i2 = i + 1;
|
||||
while (expr[i2] && (expr[i2] != ' ') && (expr[i2] != '(')
|
||||
&& (expr[i2] != ')') && (expr[i2] != '.')
|
||||
&& (expr[i2] != '-') && !isdigit ((unsigned char)expr[i2]))
|
||||
ptr_expr2 = ptr_expr + 1;
|
||||
while (ptr_expr2[0] && (ptr_expr2[0] != ' ') && (ptr_expr2[0] != '(')
|
||||
&& (ptr_expr2[0] != ')') && (ptr_expr2[0] != '.')
|
||||
&& (ptr_expr2[0] != '-') && !isdigit ((unsigned char)ptr_expr2[0]))
|
||||
{
|
||||
i2++;
|
||||
ptr_expr2++;
|
||||
}
|
||||
operator = string_strndup (expr + i, i2 - i);
|
||||
i = i2 - 1;
|
||||
operator = string_strndup (ptr_expr, ptr_expr2 - ptr_expr);
|
||||
ptr_expr = ptr_expr2 - 1;
|
||||
if (operator)
|
||||
{
|
||||
index_op = arraylist_size (list_ops) - 1;
|
||||
|
||||
+12
-12
@@ -1841,8 +1841,8 @@ COMMAND_CALLBACK(color)
|
||||
|
||||
COMMAND_CALLBACK(command)
|
||||
{
|
||||
int i, length, index_args, any_plugin;
|
||||
char *command, **commands;
|
||||
int length, index_args, any_plugin;
|
||||
char *command, **commands, **ptr_command;
|
||||
struct t_weechat_plugin *ptr_plugin;
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
|
||||
@@ -1862,10 +1862,10 @@ COMMAND_CALLBACK(command)
|
||||
commands = string_split_command (argv_eol[2], ';');
|
||||
if (commands)
|
||||
{
|
||||
for (i = 0; commands[i]; i++)
|
||||
for (ptr_command = commands; *ptr_command; ptr_command++)
|
||||
{
|
||||
(void) input_data (buffer,
|
||||
commands[i],
|
||||
*ptr_command,
|
||||
NULL,
|
||||
0, /* split_newline */
|
||||
0); /* user_data */
|
||||
@@ -2328,7 +2328,7 @@ command_eval_print_debug (const char *debug)
|
||||
COMMAND_CALLBACK(eval)
|
||||
{
|
||||
int i, rc, print_only, split_command, condition, debug, error;
|
||||
char *result, *ptr_args, **commands, str_debug[32];
|
||||
char *result, *ptr_args, **commands, **ptr_command, str_debug[32];
|
||||
const char *debug_output;
|
||||
struct t_hashtable *pointers, *options;
|
||||
|
||||
@@ -2446,9 +2446,9 @@ COMMAND_CALLBACK(eval)
|
||||
commands = string_split_command (ptr_args, ';');
|
||||
if (commands)
|
||||
{
|
||||
for (i = 0; commands[i]; i++)
|
||||
for (ptr_command = commands; *ptr_command; ptr_command++)
|
||||
{
|
||||
result = eval_expression (commands[i], pointers, NULL,
|
||||
result = eval_expression (*ptr_command, pointers, NULL,
|
||||
options);
|
||||
if (result)
|
||||
{
|
||||
@@ -5059,7 +5059,7 @@ command_plugin_list_input (struct t_gui_buffer *buffer,
|
||||
for (ptr_item = list->items; ptr_item;
|
||||
ptr_item = ptr_item->next_item)
|
||||
{
|
||||
if (*buf[0])
|
||||
if ((*buf)[0])
|
||||
{
|
||||
string_dyn_concat (buf, ", ", -1);
|
||||
}
|
||||
@@ -5074,7 +5074,7 @@ command_plugin_list_input (struct t_gui_buffer *buffer,
|
||||
string_dyn_concat (buf, ptr_item->data, -1);
|
||||
}
|
||||
|
||||
if (!*buf[0])
|
||||
if (!(*buf)[0])
|
||||
{
|
||||
string_dyn_concat (
|
||||
buf,
|
||||
@@ -6645,7 +6645,7 @@ command_set_display_option_lists (char **argv, int arg_start, int arg_end,
|
||||
|
||||
COMMAND_CALLBACK(set)
|
||||
{
|
||||
char *value;
|
||||
char *value, **ptr_environ;
|
||||
const char *ptr_string;
|
||||
int i, number_found, rc, display_only_changed, arg_option_start;
|
||||
int arg_option_end, list_size;
|
||||
@@ -6667,9 +6667,9 @@ COMMAND_CALLBACK(set)
|
||||
list = weelist_new ();
|
||||
if (!list)
|
||||
COMMAND_ERROR;
|
||||
for (i = 0; environ[i]; i++)
|
||||
for (ptr_environ = environ; *ptr_environ; ptr_environ++)
|
||||
{
|
||||
weelist_add (list, environ[i], WEECHAT_LIST_POS_SORT, NULL);
|
||||
weelist_add (list, *ptr_environ, WEECHAT_LIST_POS_SORT, NULL);
|
||||
}
|
||||
list_size = weelist_size (list);
|
||||
for (i = 0; i < list_size; i++)
|
||||
|
||||
@@ -1471,9 +1471,9 @@ completion_list_add_config_option_values_cb (const void *pointer, void *data,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
char *pos_space, *option_full_name, *pos_section, *pos_option;
|
||||
char *file, *section, *value_string;
|
||||
char *file, *section, *value_string, **ptr_value;
|
||||
const char *color_name;
|
||||
int length, i;
|
||||
int length;
|
||||
struct t_config_file *ptr_config;
|
||||
struct t_config_section *ptr_section, *section_found;
|
||||
struct t_config_option *option_found;
|
||||
@@ -1631,10 +1631,11 @@ completion_list_add_config_option_values_cb (const void *pointer, void *data,
|
||||
}
|
||||
break;
|
||||
case CONFIG_OPTION_TYPE_ENUM:
|
||||
for (i = 0; option_found->string_values[i]; i++)
|
||||
for (ptr_value = option_found->string_values;
|
||||
*ptr_value; ptr_value++)
|
||||
{
|
||||
gui_completion_list_add (completion,
|
||||
option_found->string_values[i],
|
||||
*ptr_value,
|
||||
0, WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
gui_completion_list_add (completion, "++1",
|
||||
@@ -2015,8 +2016,7 @@ completion_list_add_env_vars_cb (const void *pointer, void *data,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
int i;
|
||||
char *pos, *name;
|
||||
char *pos, *name, **ptr_environ;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) pointer;
|
||||
@@ -2024,12 +2024,12 @@ completion_list_add_env_vars_cb (const void *pointer, void *data,
|
||||
(void) completion_item;
|
||||
(void) buffer;
|
||||
|
||||
for (i = 0; environ[i]; i++)
|
||||
for (ptr_environ = environ; *ptr_environ; ptr_environ++)
|
||||
{
|
||||
pos = strchr (environ[i], '=');
|
||||
pos = strchr (*ptr_environ, '=');
|
||||
if (pos)
|
||||
{
|
||||
name = string_strndup (environ[i], pos - environ[i]);
|
||||
name = string_strndup (*ptr_environ, pos - *ptr_environ);
|
||||
if (name)
|
||||
{
|
||||
gui_completion_list_add (completion, name,
|
||||
|
||||
@@ -976,8 +976,7 @@ void
|
||||
config_change_emphasized_attributes (const void *pointer, void *data,
|
||||
struct t_config_option *option)
|
||||
{
|
||||
int i;
|
||||
const char *ptr_attr;
|
||||
const char *ptr_attributes, *ptr_attr;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) pointer;
|
||||
@@ -986,12 +985,12 @@ config_change_emphasized_attributes (const void *pointer, void *data,
|
||||
|
||||
config_emphasized_attributes = 0;
|
||||
|
||||
ptr_attr = CONFIG_STRING(config_look_emphasized_attributes);
|
||||
if (ptr_attr)
|
||||
ptr_attributes = CONFIG_STRING(config_look_emphasized_attributes);
|
||||
if (ptr_attributes)
|
||||
{
|
||||
for (i = 0; ptr_attr[i]; i++)
|
||||
for (ptr_attr = ptr_attributes; *ptr_attr; ptr_attr++)
|
||||
{
|
||||
config_emphasized_attributes |= gui_color_attr_get_flag (ptr_attr[i]);
|
||||
config_emphasized_attributes |= gui_color_attr_get_flag (*ptr_attr);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -31,6 +31,12 @@
|
||||
#include <math.h>
|
||||
#include <gcrypt.h>
|
||||
|
||||
#ifdef __ANDROID__
|
||||
/* Bring in htobe64 */
|
||||
#define _BSD_SOURCE
|
||||
#include <endian.h>
|
||||
#endif
|
||||
|
||||
#include "weechat.h"
|
||||
#include "core-crypto.h"
|
||||
#include "core-config-file.h"
|
||||
|
||||
+11
-11
@@ -506,8 +506,8 @@ char *
|
||||
eval_string_split (const char *text)
|
||||
{
|
||||
char *pos, *pos2, *pos3, *str_number, *separators, **items, *value, *error;
|
||||
char str_value[32], *str_flags, **list_flags, *strip_items;
|
||||
int i, num_items, count_items, random_item, flags;
|
||||
char str_value[32], *str_flags, **list_flags, *strip_items, **ptr_flag;
|
||||
int num_items, count_items, random_item, flags;
|
||||
long number, max_items;
|
||||
|
||||
str_number = NULL;
|
||||
@@ -564,25 +564,25 @@ eval_string_split (const char *text)
|
||||
list_flags = string_split (str_flags, "+", NULL, 0, 0, NULL);
|
||||
if (list_flags)
|
||||
{
|
||||
for (i = 0; list_flags[i]; i++)
|
||||
for (ptr_flag = list_flags; *ptr_flag; ptr_flag++)
|
||||
{
|
||||
if (strcmp (list_flags[i], "strip_left") == 0)
|
||||
if (strcmp (*ptr_flag, "strip_left") == 0)
|
||||
flags |= WEECHAT_STRING_SPLIT_STRIP_LEFT;
|
||||
else if (strcmp (list_flags[i], "strip_right") == 0)
|
||||
else if (strcmp (*ptr_flag, "strip_right") == 0)
|
||||
flags |= WEECHAT_STRING_SPLIT_STRIP_RIGHT;
|
||||
else if (strcmp (list_flags[i], "collapse_seps") == 0)
|
||||
else if (strcmp (*ptr_flag, "collapse_seps") == 0)
|
||||
flags |= WEECHAT_STRING_SPLIT_COLLAPSE_SEPS;
|
||||
else if (strcmp (list_flags[i], "keep_eol") == 0)
|
||||
else if (strcmp (*ptr_flag, "keep_eol") == 0)
|
||||
flags |= WEECHAT_STRING_SPLIT_KEEP_EOL;
|
||||
else if (strncmp (list_flags[i], "strip_items=", 12) == 0)
|
||||
else if (strncmp (*ptr_flag, "strip_items=", 12) == 0)
|
||||
{
|
||||
free (strip_items);
|
||||
strip_items = strdup (list_flags[i] + 12);
|
||||
strip_items = strdup (*ptr_flag + 12);
|
||||
}
|
||||
else if (strncmp (list_flags[i], "max_items=", 10) == 0)
|
||||
else if (strncmp (*ptr_flag, "max_items=", 10) == 0)
|
||||
{
|
||||
error = NULL;
|
||||
max_items = strtol (list_flags[i] + 10, &error, 10);
|
||||
max_items = strtol (*ptr_flag + 10, &error, 10);
|
||||
if (!error || error[0] || (max_items < 0))
|
||||
goto end;
|
||||
}
|
||||
|
||||
@@ -410,7 +410,7 @@ infolist_fields (struct t_infolist *infolist)
|
||||
|
||||
for (ptr_var = infolist->ptr_item->vars; ptr_var; ptr_var = ptr_var->next_var)
|
||||
{
|
||||
if (*fields[0])
|
||||
if ((*fields)[0])
|
||||
string_dyn_concat (fields, ",", -1);
|
||||
string_dyn_concat (fields, infolist_type_char_string[ptr_var->type], -1);
|
||||
string_dyn_concat (fields, ":", -1);
|
||||
|
||||
+29
-46
@@ -1093,20 +1093,20 @@ string_match (const char *string, const char *mask, int case_sensitive)
|
||||
int
|
||||
string_match_list (const char *string, const char **masks, int case_sensitive)
|
||||
{
|
||||
int match, i;
|
||||
const char *ptr_mask;
|
||||
int match;
|
||||
const char **ptr_mask, *ptr_mask2;
|
||||
|
||||
if (!string || !masks)
|
||||
return 0;
|
||||
|
||||
match = 0;
|
||||
|
||||
for (i = 0; masks[i]; i++)
|
||||
for (ptr_mask = masks; *ptr_mask; ptr_mask++)
|
||||
{
|
||||
ptr_mask = (masks[i][0] == '!') ? masks[i] + 1 : masks[i];
|
||||
if (string_match (string, ptr_mask, case_sensitive))
|
||||
ptr_mask2 = ((*ptr_mask)[0] == '!') ? *ptr_mask + 1 : *ptr_mask;
|
||||
if (string_match (string, ptr_mask2, case_sensitive))
|
||||
{
|
||||
if (masks[i][0] == '!')
|
||||
if ((*ptr_mask)[0] == '!')
|
||||
return 0;
|
||||
else
|
||||
match = 1;
|
||||
@@ -2849,12 +2849,12 @@ string_split_shell (const char *string, int *num_items)
|
||||
void
|
||||
string_free_split (char **split_string)
|
||||
{
|
||||
int i;
|
||||
char **ptr;
|
||||
|
||||
if (split_string)
|
||||
{
|
||||
for (i = 0; split_string[i]; i++)
|
||||
free (split_string[i]);
|
||||
for (ptr = split_string; *ptr; ptr++)
|
||||
free (*ptr);
|
||||
free (split_string);
|
||||
}
|
||||
}
|
||||
@@ -2866,12 +2866,12 @@ string_free_split (char **split_string)
|
||||
void
|
||||
string_free_split_shared (char **split_string)
|
||||
{
|
||||
int i;
|
||||
char **ptr;
|
||||
|
||||
if (split_string)
|
||||
{
|
||||
for (i = 0; split_string[i]; i++)
|
||||
string_shared_free (split_string[i]);
|
||||
for (ptr = split_string; *ptr; ptr++)
|
||||
string_shared_free (*ptr);
|
||||
free (split_string);
|
||||
}
|
||||
}
|
||||
@@ -2891,8 +2891,9 @@ string_rebuild_split_string (const char **split_string,
|
||||
const char *separator,
|
||||
int index_start, int index_end)
|
||||
{
|
||||
int i, length, length_separator;
|
||||
char *result;
|
||||
const char **ptr_string;
|
||||
char **result;
|
||||
int i;
|
||||
|
||||
if (!split_string || (index_start < 0)
|
||||
|| ((index_end >= 0) && (index_end < index_start)))
|
||||
@@ -2900,39 +2901,23 @@ string_rebuild_split_string (const char **split_string,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
length = 0;
|
||||
length_separator = (separator) ? strlen (separator) : 0;
|
||||
result = string_dyn_alloc (256);
|
||||
|
||||
for (i = 0; split_string[i]; i++)
|
||||
for (ptr_string = split_string, i = 0; *ptr_string; ptr_string++, i++)
|
||||
{
|
||||
if ((index_end >= 0) && (i > index_end))
|
||||
break;
|
||||
if (i >= index_start)
|
||||
length += strlen (split_string[i]) + length_separator;
|
||||
}
|
||||
|
||||
if (length == 0)
|
||||
return strdup ("");
|
||||
|
||||
result = malloc (length + 1);
|
||||
if (!result)
|
||||
return NULL;
|
||||
|
||||
result[0] = '\0';
|
||||
|
||||
for (i = index_start; split_string[i]; i++)
|
||||
{
|
||||
if ((index_end >= 0) && (i > index_end))
|
||||
break;
|
||||
strcat (result, split_string[i]);
|
||||
if (separator && ((index_end < 0) || (i + 1 <= index_end))
|
||||
&& split_string[i + 1])
|
||||
{
|
||||
strcat (result, separator);
|
||||
if (i > index_start)
|
||||
string_dyn_concat (result, separator, -1);
|
||||
string_dyn_concat (result, *ptr_string, -1);
|
||||
}
|
||||
if (i == INT_MAX)
|
||||
break;
|
||||
}
|
||||
|
||||
return result;
|
||||
return string_dyn_free (result, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -3033,12 +3018,12 @@ string_split_command (const char *command, char separator)
|
||||
void
|
||||
string_free_split_command (char **split_command)
|
||||
{
|
||||
int i;
|
||||
char **ptr;
|
||||
|
||||
if (split_command)
|
||||
{
|
||||
for (i = 0; split_command[i]; i++)
|
||||
free (split_command[i]);
|
||||
for (ptr = split_command; *ptr; ptr++)
|
||||
free (*ptr);
|
||||
free (split_command);
|
||||
}
|
||||
}
|
||||
@@ -3102,14 +3087,12 @@ string_split_tags (const char *tags, int *num_tags)
|
||||
void
|
||||
string_free_split_tags (char ***split_tags)
|
||||
{
|
||||
int i;
|
||||
char ***ptr;
|
||||
|
||||
if (split_tags)
|
||||
{
|
||||
for (i = 0; split_tags[i]; i++)
|
||||
{
|
||||
string_free_split_shared (split_tags[i]);
|
||||
}
|
||||
for (ptr = split_tags; *ptr; ptr++)
|
||||
string_free_split_shared (*ptr);
|
||||
free (split_tags);
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -148,7 +148,7 @@ struct t_url_constant url_auth[] =
|
||||
#if LIBCURL_VERSION_NUM >= 0x071503 /* 7.21.3 */
|
||||
URL_DEF_CONST(AUTH, ONLY),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071600 /* 7.22.0 */
|
||||
#if LIBCURL_VERSION_NUM >= 0x071600 && LIBCURL_VERSION_NUM < 0x080800 /* 7.22.0 < 8.8.0 */
|
||||
URL_DEF_CONST(AUTH, NTLM_WB),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A06 && LIBCURL_VERSION_NUM < 0x072600 /* 7.10.6 < 7.38.0 */
|
||||
|
||||
@@ -271,6 +271,7 @@ hook_line_add_to_infolist (struct t_infolist_item *item,
|
||||
void
|
||||
hook_line_print_log (struct t_hook *hook)
|
||||
{
|
||||
char **ptr_tag;
|
||||
int i, j;
|
||||
|
||||
if (!hook || !hook->hook_data)
|
||||
@@ -292,12 +293,10 @@ hook_line_print_log (struct t_hook *hook)
|
||||
{
|
||||
for (i = 0; i < HOOK_LINE(hook, tags_count); i++)
|
||||
{
|
||||
for (j = 0; HOOK_LINE(hook, tags_array)[i][j]; j++)
|
||||
for (ptr_tag = HOOK_LINE(hook, tags_array)[i], j = 0; *ptr_tag;
|
||||
ptr_tag++, j++)
|
||||
{
|
||||
log_printf (" tags_array[%03d][%03d]: '%s'",
|
||||
i,
|
||||
j,
|
||||
HOOK_LINE(hook, tags_array)[i][j]);
|
||||
log_printf (" tags_array[%03d][%03d]: '%s'", i, j, *ptr_tag);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -248,6 +248,7 @@ hook_print_add_to_infolist (struct t_infolist_item *item,
|
||||
void
|
||||
hook_print_print_log (struct t_hook *hook)
|
||||
{
|
||||
char **ptr_tag;
|
||||
int i, j;
|
||||
|
||||
if (!hook || !hook->hook_data)
|
||||
@@ -262,12 +263,10 @@ hook_print_print_log (struct t_hook *hook)
|
||||
{
|
||||
for (i = 0; i < HOOK_PRINT(hook, tags_count); i++)
|
||||
{
|
||||
for (j = 0; HOOK_PRINT(hook, tags_array)[i][j]; j++)
|
||||
for (ptr_tag = HOOK_PRINT(hook, tags_array)[i], j = 0; *ptr_tag;
|
||||
ptr_tag++, j++)
|
||||
{
|
||||
log_printf (" tags_array[%03d][%03d]: '%s'",
|
||||
i,
|
||||
j,
|
||||
HOOK_PRINT(hook, tags_array)[i][j]);
|
||||
log_printf (" tags_array[%03d][%03d]: '%s'", i, j, *ptr_tag);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -210,7 +210,7 @@ hook_process (struct t_weechat_plugin *plugin,
|
||||
void
|
||||
hook_process_child (struct t_hook *hook_process)
|
||||
{
|
||||
char **exec_args, *arg0, str_arg[64];
|
||||
char **exec_args, *arg0, str_arg[64], **ptr_exec_arg;
|
||||
const char *ptr_url, *ptr_arg;
|
||||
int rc, i, num_args;
|
||||
FILE *f;
|
||||
@@ -352,9 +352,10 @@ hook_process_child (struct t_hook *hook_process)
|
||||
{
|
||||
log_printf ("hook_process, command='%s'",
|
||||
HOOK_PROCESS(hook_process, command));
|
||||
for (i = 0; exec_args[i]; i++)
|
||||
for (ptr_exec_arg = exec_args, i = 0; *ptr_exec_arg;
|
||||
ptr_exec_arg++, i++)
|
||||
{
|
||||
log_printf (" args[%02d] == '%s'", i, exec_args[i]);
|
||||
log_printf (" args[%d] == '%s'", i, *ptr_exec_arg);
|
||||
}
|
||||
}
|
||||
execvp (exec_args[0], exec_args);
|
||||
|
||||
@@ -369,10 +369,10 @@ gui_color_get_pairs_arrays (short **foregrounds, short **backgrounds)
|
||||
*foregrounds = NULL;
|
||||
*backgrounds = NULL;
|
||||
|
||||
*foregrounds = malloc (sizeof (*foregrounds[0]) * (gui_color_num_pairs + 1));
|
||||
*foregrounds = malloc (sizeof ((*foregrounds)[0]) * (gui_color_num_pairs + 1));
|
||||
if (!*foregrounds)
|
||||
goto error;
|
||||
*backgrounds = malloc (sizeof (*backgrounds[0]) * (gui_color_num_pairs + 1));
|
||||
*backgrounds = malloc (sizeof ((*backgrounds)[0]) * (gui_color_num_pairs + 1));
|
||||
if (!*backgrounds)
|
||||
goto error;
|
||||
|
||||
@@ -609,7 +609,7 @@ gui_color_build (int number, int foreground, int background)
|
||||
/* allocate color */
|
||||
if (!gui_color[number])
|
||||
{
|
||||
gui_color[number] = malloc (sizeof (*gui_color[number]));
|
||||
gui_color[number] = malloc (sizeof ((*gui_color)[number]));
|
||||
if (!gui_color[number])
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1874,7 +1874,7 @@ gui_bar_item_buffer_nicklist_cb (const void *pointer, void *data,
|
||||
&& buffer->nicklist_display_groups
|
||||
&& ptr_group->visible))
|
||||
{
|
||||
if (*nicklist[0])
|
||||
if ((*nicklist)[0])
|
||||
string_dyn_concat (nicklist, "\n", -1);
|
||||
|
||||
if (ptr_nick)
|
||||
|
||||
@@ -702,7 +702,7 @@ gui_bar_window_content_get_with_filling (struct t_gui_bar_window *bar_window,
|
||||
char **content, str_reinit_color[32];
|
||||
char str_reinit_color_space[32], str_reinit_color_space_start_line[32];
|
||||
char str_start_item[32];
|
||||
char *item_value, *item_value2, ****split_items, **linear_items;
|
||||
char *item_value, *item_value2, ****split_items, **linear_items, **ptr_item;
|
||||
int i, j, k, sub, index;
|
||||
int at_least_one_item, first_sub_item;
|
||||
int length_reinit_color, length_reinit_color_space, length_start_item;
|
||||
@@ -856,15 +856,15 @@ gui_bar_window_content_get_with_filling (struct t_gui_bar_window *bar_window,
|
||||
| WEECHAT_STRING_SPLIT_COLLAPSE_SEPS,
|
||||
0,
|
||||
NULL);
|
||||
for (j = 0; split_items[i][sub][j]; j++)
|
||||
for (ptr_item = split_items[i][sub]; *ptr_item; ptr_item++)
|
||||
{
|
||||
total_items++;
|
||||
|
||||
length = strlen (split_items[i][sub][j]);
|
||||
length = strlen (*ptr_item);
|
||||
if (length > max_length)
|
||||
max_length = length;
|
||||
|
||||
length = gui_chat_strlen_screen (split_items[i][sub][j]);
|
||||
length = gui_chat_strlen_screen (*ptr_item);
|
||||
if (length > max_length_screen)
|
||||
max_length_screen = length;
|
||||
}
|
||||
@@ -911,9 +911,10 @@ gui_bar_window_content_get_with_filling (struct t_gui_bar_window *bar_window,
|
||||
{
|
||||
if (split_items[i][sub])
|
||||
{
|
||||
for (j = 0; split_items[i][sub][j]; j++)
|
||||
for (ptr_item = split_items[i][sub]; *ptr_item;
|
||||
ptr_item++)
|
||||
{
|
||||
linear_items[index++] = split_items[i][sub][j];
|
||||
linear_items[index++] = *ptr_item;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -976,7 +977,7 @@ gui_bar_window_content_get_with_filling (struct t_gui_bar_window *bar_window,
|
||||
break;
|
||||
}
|
||||
|
||||
if (!*content[0])
|
||||
if (!(*content)[0])
|
||||
{
|
||||
string_dyn_free (content, 1);
|
||||
return NULL;
|
||||
|
||||
@@ -184,7 +184,8 @@ gui_buffer_search_notify (const char *notify)
|
||||
}
|
||||
|
||||
/*
|
||||
* Sends a buffer signal (only if the buffer is completely opened.
|
||||
* Sends a buffer signal, only if the buffer is completely opened or if
|
||||
* the signal is "buffer_switch".
|
||||
*/
|
||||
|
||||
int
|
||||
@@ -192,8 +193,10 @@ gui_buffer_send_signal (struct t_gui_buffer *buffer,
|
||||
const char *signal,
|
||||
const char *type_data, void *signal_data)
|
||||
{
|
||||
return (buffer->opening) ?
|
||||
WEECHAT_RC_OK : hook_signal_send (signal, type_data, signal_data);
|
||||
if (buffer->opening && (string_strcmp (signal, "buffer_switch") != 0))
|
||||
return WEECHAT_RC_OK;
|
||||
|
||||
return hook_signal_send (signal, type_data, signal_data);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1940,7 +1943,7 @@ gui_buffer_set_highlight_words_list (struct t_gui_buffer *buffer,
|
||||
ptr_string = weelist_string (ptr_list_item);
|
||||
if (ptr_string)
|
||||
{
|
||||
if (*words[0])
|
||||
if ((*words)[0])
|
||||
string_dyn_concat (words, ",", -1);
|
||||
string_dyn_concat (words, ptr_string, -1);
|
||||
}
|
||||
|
||||
+1
-1
@@ -814,7 +814,7 @@ gui_chat_add_line_waiting_buffer (const char *message)
|
||||
return;
|
||||
}
|
||||
|
||||
if (*gui_chat_lines_waiting_buffer[0])
|
||||
if ((*gui_chat_lines_waiting_buffer)[0])
|
||||
string_dyn_concat (gui_chat_lines_waiting_buffer, "\n", -1);
|
||||
|
||||
string_dyn_concat (gui_chat_lines_waiting_buffer, message, -1);
|
||||
|
||||
+14
-14
@@ -436,10 +436,10 @@ gui_key_expand (const char *key, char **key_name, char **key_name_alias)
|
||||
meta2 = 0;
|
||||
shift = 0;
|
||||
|
||||
if (*str_dyn_key[0])
|
||||
if ((*str_dyn_key)[0])
|
||||
string_dyn_concat (str_dyn_key, ",", -1);
|
||||
|
||||
if (*str_dyn_key_alias[0])
|
||||
if ((*str_dyn_key_alias)[0])
|
||||
string_dyn_concat (str_dyn_key_alias, ",", -1);
|
||||
|
||||
str_raw[0] = '\0';
|
||||
@@ -2041,8 +2041,8 @@ gui_key_focus_command (const char *key, int context,
|
||||
struct t_hashtable **hashtable_focus)
|
||||
{
|
||||
struct t_gui_key *ptr_key;
|
||||
int i, matching, debug, rc;
|
||||
char *command, **commands;
|
||||
int matching, debug, rc;
|
||||
char *command, **commands, **ptr_command;
|
||||
const char *str_buffer;
|
||||
struct t_hashtable *hashtable;
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
@@ -2123,25 +2123,25 @@ gui_key_focus_command (const char *key, int context,
|
||||
commands = string_split_command (ptr_key->command, ';');
|
||||
if (commands)
|
||||
{
|
||||
for (i = 0; commands[i]; i++)
|
||||
for (ptr_command = commands; *ptr_command; ptr_command++)
|
||||
{
|
||||
if (string_strncasecmp (commands[i], "hsignal:", 8) == 0)
|
||||
if (string_strncasecmp (*ptr_command, "hsignal:", 8) == 0)
|
||||
{
|
||||
if (commands[i][8])
|
||||
if ((*ptr_command)[8])
|
||||
{
|
||||
if (debug)
|
||||
{
|
||||
gui_chat_printf (NULL,
|
||||
_("Sending hsignal: \"%s\""),
|
||||
commands[i] + 8);
|
||||
*ptr_command + 8);
|
||||
}
|
||||
(void) hook_hsignal_send (commands[i] + 8,
|
||||
(void) hook_hsignal_send (*ptr_command + 8,
|
||||
hashtable);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
command = eval_expression (commands[i], NULL,
|
||||
command = eval_expression (*ptr_command, NULL,
|
||||
hashtable, NULL);
|
||||
if (command)
|
||||
{
|
||||
@@ -2340,11 +2340,11 @@ gui_key_debug_print_key (const char *combo, const char *key_name,
|
||||
int
|
||||
gui_key_pressed (const char *key_str)
|
||||
{
|
||||
int i, insert_into_input, context, length, length_key, signal_sent;
|
||||
int insert_into_input, context, length, length_key, signal_sent;
|
||||
int rc, rc_expand, exact_match, chunks1_count, chunks2_count, event_size;
|
||||
int buffer_key;
|
||||
struct t_gui_key *ptr_key;
|
||||
char saved_char, signal_name[128], **commands;
|
||||
char saved_char, signal_name[128], **commands, **ptr_command;
|
||||
char *key_name, *key_name_alias, **chunks1, **chunks2;
|
||||
|
||||
signal_sent = 0;
|
||||
@@ -2524,11 +2524,11 @@ gui_key_pressed (const char *key_str)
|
||||
commands = string_split_command (ptr_key->command, ';');
|
||||
if (commands)
|
||||
{
|
||||
for (i = 0; commands[i]; i++)
|
||||
for (ptr_command = commands; *ptr_command; ptr_command++)
|
||||
{
|
||||
(void) input_data (
|
||||
gui_current_window->buffer,
|
||||
commands[i],
|
||||
*ptr_command,
|
||||
NULL,
|
||||
0,
|
||||
(buffer_key) ? 1 : 0);
|
||||
|
||||
+6
-5
@@ -813,8 +813,9 @@ int
|
||||
gui_line_match_tags (struct t_gui_line_data *line_data,
|
||||
int tags_count, char ***tags_array)
|
||||
{
|
||||
int i, j, k, match, tag_found, tag_negated;
|
||||
int i, j, match, tag_found, tag_negated;
|
||||
const char *ptr_tag;
|
||||
char **ptr;
|
||||
|
||||
if (!line_data)
|
||||
return 0;
|
||||
@@ -822,9 +823,9 @@ gui_line_match_tags (struct t_gui_line_data *line_data,
|
||||
for (i = 0; i < tags_count; i++)
|
||||
{
|
||||
match = 1;
|
||||
for (j = 0; tags_array[i][j]; j++)
|
||||
for (ptr = tags_array[i]; *ptr; ptr++)
|
||||
{
|
||||
ptr_tag = tags_array[i][j];
|
||||
ptr_tag = *ptr;
|
||||
tag_found = 0;
|
||||
tag_negated = 0;
|
||||
|
||||
@@ -841,9 +842,9 @@ gui_line_match_tags (struct t_gui_line_data *line_data,
|
||||
}
|
||||
else
|
||||
{
|
||||
for (k = 0; k < line_data->tags_count; k++)
|
||||
for (j = 0; j < line_data->tags_count; j++)
|
||||
{
|
||||
if (string_match (line_data->tags_array[k], ptr_tag, 0))
|
||||
if (string_match (line_data->tags_array[j], ptr_tag, 0))
|
||||
{
|
||||
tag_found = 1;
|
||||
break;
|
||||
|
||||
@@ -568,7 +568,7 @@ buflist_bar_item_buflist_cb (const void *pointer, void *data,
|
||||
str_hotlist_count);
|
||||
if (count > 0)
|
||||
{
|
||||
if (*hotlist[0])
|
||||
if ((*hotlist)[0])
|
||||
{
|
||||
weechat_string_dyn_concat (
|
||||
hotlist,
|
||||
@@ -644,7 +644,7 @@ buflist_bar_item_buflist_cb (const void *pointer, void *data,
|
||||
|
||||
/* add newline between each buffer (if needed) */
|
||||
if (weechat_config_boolean (buflist_config_look_add_newline)
|
||||
&& *buflist[0])
|
||||
&& (*buflist)[0])
|
||||
{
|
||||
if (!weechat_string_dyn_concat (buflist, "\n", -1))
|
||||
goto error;
|
||||
|
||||
@@ -122,7 +122,7 @@ weechat_guile_output_flush ()
|
||||
char *temp_buffer, *command;
|
||||
int length;
|
||||
|
||||
if (!*guile_buffer_output[0])
|
||||
if (!(*guile_buffer_output)[0])
|
||||
return;
|
||||
|
||||
/* if there's no buffer, we catch the output, so there's no flush */
|
||||
|
||||
@@ -418,7 +418,7 @@ irc_batch_process_multiline (struct t_irc_server *server,
|
||||
if (tags && tags[0])
|
||||
irc_tag_parse (tags, hash_tags, NULL);
|
||||
}
|
||||
if (*result[0])
|
||||
if ((*result)[0])
|
||||
{
|
||||
if (!hash_tags
|
||||
|| !weechat_hashtable_has_key (hash_tags,
|
||||
|
||||
@@ -1291,14 +1291,14 @@ void
|
||||
irc_channel_join_smart_filtered_unmask (struct t_irc_channel *channel,
|
||||
const char *nick)
|
||||
{
|
||||
int i, unmask_delay, length_tags, nick_found, join, account;
|
||||
int unmask_delay, length_tags, nick_found, join, account;
|
||||
int chghost, setname, nick_changed, smart_filtered, remove_smart_filter;
|
||||
time_t *ptr_time, date_min;
|
||||
struct t_hdata *hdata_line, *hdata_line_data;
|
||||
struct t_gui_line *own_lines;
|
||||
struct t_gui_line *line;
|
||||
struct t_gui_line_data *line_data;
|
||||
const char **tags, *irc_nick1, *irc_nick2;
|
||||
const char **tags, *irc_nick1, *irc_nick2, **ptr_tag;
|
||||
char *new_tags, *nick_to_search;
|
||||
struct t_hashtable *hashtable;
|
||||
|
||||
@@ -1375,30 +1375,30 @@ irc_channel_join_smart_filtered_unmask (struct t_irc_channel *channel,
|
||||
irc_nick1 = NULL;
|
||||
irc_nick2 = NULL;
|
||||
smart_filtered = 0;
|
||||
for (i = 0; tags[i]; i++)
|
||||
for (ptr_tag = tags; *ptr_tag; ptr_tag++)
|
||||
{
|
||||
if (strncmp (tags[i], "nick_", 5) == 0)
|
||||
if (strncmp (*ptr_tag, "nick_", 5) == 0)
|
||||
{
|
||||
if (strcmp (tags[i] + 5, nick_to_search) == 0)
|
||||
if (strcmp (*ptr_tag + 5, nick_to_search) == 0)
|
||||
nick_found = 1;
|
||||
}
|
||||
else if (strcmp (tags[i], "irc_join") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_join") == 0)
|
||||
join = 1;
|
||||
else if (strcmp (tags[i], "irc_account") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_account") == 0)
|
||||
account = 1;
|
||||
else if (strcmp (tags[i], "irc_chghost") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_chghost") == 0)
|
||||
chghost = 1;
|
||||
else if (strcmp (tags[i], "irc_setname") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_setname") == 0)
|
||||
setname = 1;
|
||||
else if (strcmp (tags[i], "irc_nick") == 0)
|
||||
else if (strcmp (*ptr_tag, "irc_nick") == 0)
|
||||
nick_changed = 1;
|
||||
else if (strncmp (tags[i], "irc_nick1_", 10) == 0)
|
||||
irc_nick1 = tags[i] + 10;
|
||||
else if (strncmp (tags[i], "irc_nick2_", 10) == 0)
|
||||
irc_nick2 = tags[i] + 10;
|
||||
else if (strcmp (tags[i], "irc_smart_filter") == 0)
|
||||
else if (strncmp (*ptr_tag, "irc_nick1_", 10) == 0)
|
||||
irc_nick1 = *ptr_tag + 10;
|
||||
else if (strncmp (*ptr_tag, "irc_nick2_", 10) == 0)
|
||||
irc_nick2 = *ptr_tag + 10;
|
||||
else if (strcmp (*ptr_tag, "irc_smart_filter") == 0)
|
||||
smart_filtered = 1;
|
||||
length_tags += strlen (tags[i]) + 1;
|
||||
length_tags += strlen (*ptr_tag) + 1;
|
||||
}
|
||||
|
||||
/* check if we must remove tag "irc_smart_filter" in line */
|
||||
@@ -1430,13 +1430,13 @@ irc_channel_join_smart_filtered_unmask (struct t_irc_channel *channel,
|
||||
{
|
||||
/* build a string with all tags, except "irc_smart_filter" */
|
||||
new_tags[0] = '\0';
|
||||
for (i = 0; tags[i]; i++)
|
||||
for (ptr_tag = tags; *ptr_tag; ptr_tag++)
|
||||
{
|
||||
if (strcmp (tags[i], "irc_smart_filter") != 0)
|
||||
if (strcmp (*ptr_tag, "irc_smart_filter") != 0)
|
||||
{
|
||||
if (new_tags[0])
|
||||
strcat (new_tags, ",");
|
||||
strcat (new_tags, tags[i]);
|
||||
strcat (new_tags, *ptr_tag);
|
||||
}
|
||||
}
|
||||
hashtable = weechat_hashtable_new (4,
|
||||
|
||||
@@ -265,7 +265,7 @@ irc_command_mode_masks_convert_ranges (char **argv, int arg_start)
|
||||
{
|
||||
for (j = number1; j <= number2; j++)
|
||||
{
|
||||
if (*str_masks[0])
|
||||
if ((*str_masks)[0])
|
||||
weechat_string_dyn_concat (str_masks, " ", -1);
|
||||
snprintf (str_number, sizeof (str_number),
|
||||
"%ld", j);
|
||||
@@ -278,7 +278,7 @@ irc_command_mode_masks_convert_ranges (char **argv, int arg_start)
|
||||
|
||||
if (!added)
|
||||
{
|
||||
if (*str_masks[0])
|
||||
if ((*str_masks)[0])
|
||||
weechat_string_dyn_concat (str_masks, " ", -1);
|
||||
weechat_string_dyn_concat (str_masks, argv[i], -1);
|
||||
}
|
||||
@@ -392,7 +392,7 @@ irc_command_mode_masks (struct t_irc_server *server,
|
||||
* if we reached the max number of modes allowed, send the MODE
|
||||
* command now and flush the modes/masks strings
|
||||
*/
|
||||
if (*modes[0] && (modes_added == max_modes))
|
||||
if ((*modes)[0] && (modes_added == max_modes))
|
||||
{
|
||||
irc_server_sendf (server, msg_priority, NULL,
|
||||
"MODE %s %s%s %s",
|
||||
@@ -408,7 +408,7 @@ irc_command_mode_masks (struct t_irc_server *server,
|
||||
|
||||
/* add one mode letter (after +/-) and add the mask in masks */
|
||||
weechat_string_dyn_concat (modes, mode, -1);
|
||||
if (*masks[0])
|
||||
if ((*masks)[0])
|
||||
weechat_string_dyn_concat (masks, " ", -1);
|
||||
weechat_string_dyn_concat (masks, (mask) ? mask : argv[pos_masks], -1);
|
||||
modes_added++;
|
||||
@@ -417,7 +417,7 @@ irc_command_mode_masks (struct t_irc_server *server,
|
||||
}
|
||||
|
||||
/* send a final MODE command if some masks are remaining */
|
||||
if (*modes[0] && *masks[0])
|
||||
if ((*modes)[0] && (*masks)[0])
|
||||
{
|
||||
irc_server_sendf (server, msg_priority, NULL,
|
||||
"MODE %s %s%s %s",
|
||||
|
||||
@@ -602,7 +602,7 @@ irc_ctcp_get_supported_ctcp (struct t_irc_server *server)
|
||||
(const char *)weechat_arraylist_get (list_ctcp, i));
|
||||
if (ctcp_upper)
|
||||
{
|
||||
if (*result[0])
|
||||
if ((*result)[0])
|
||||
weechat_string_dyn_concat (result, " ", -1);
|
||||
weechat_string_dyn_concat (result, ctcp_upper, -1);
|
||||
free (ctcp_upper);
|
||||
|
||||
@@ -413,18 +413,18 @@ irc_join_build_string (struct t_arraylist *arraylist)
|
||||
{
|
||||
ptr_join_chan = (struct t_irc_join_channel *)weechat_arraylist_get (
|
||||
arraylist, i);
|
||||
if (*channels[0])
|
||||
if ((*channels)[0])
|
||||
weechat_string_dyn_concat (channels, ",", -1);
|
||||
weechat_string_dyn_concat (channels, ptr_join_chan->name, -1);
|
||||
if (ptr_join_chan->key)
|
||||
{
|
||||
if (*keys[0])
|
||||
if ((*keys)[0])
|
||||
weechat_string_dyn_concat (keys, ",", -1);
|
||||
weechat_string_dyn_concat (keys, ptr_join_chan->key, -1);
|
||||
}
|
||||
}
|
||||
|
||||
if (*keys[0])
|
||||
if ((*keys)[0])
|
||||
{
|
||||
weechat_string_dyn_concat (channels, " ", -1);
|
||||
weechat_string_dyn_concat (channels, *keys, -1);
|
||||
|
||||
@@ -506,6 +506,12 @@ irc_list_display_line (struct t_irc_server *server, int line)
|
||||
ptr_channel = (struct t_irc_list_channel *)weechat_arraylist_get (
|
||||
server->list->filter_channels, line);
|
||||
|
||||
if (!ptr_channel)
|
||||
{
|
||||
weechat_printf_y (server->list->buffer, line, "");
|
||||
return;
|
||||
}
|
||||
|
||||
/* line color */
|
||||
if (line == server->list->selected_line)
|
||||
{
|
||||
|
||||
@@ -82,7 +82,7 @@ irc_message_parse_params (const char *parameters,
|
||||
*params = malloc ((alloc_params + 1) * sizeof ((*params)[0]));
|
||||
if (!*params)
|
||||
return;
|
||||
*params[0] = NULL;
|
||||
(*params)[0] = NULL;
|
||||
}
|
||||
|
||||
ptr_params = parameters;
|
||||
|
||||
@@ -181,7 +181,7 @@ irc_protocol_tags_add_cb (void *data,
|
||||
|
||||
str_tags = (char **)data;
|
||||
|
||||
if (*str_tags[0])
|
||||
if ((*str_tags)[0])
|
||||
weechat_string_dyn_concat (str_tags, ",", -1);
|
||||
|
||||
weechat_string_dyn_concat (str_tags, "irc_tag_", -1);
|
||||
@@ -274,7 +274,7 @@ irc_protocol_tags (struct t_irc_protocol_ctxt *ctxt, const char *extra_tags)
|
||||
ptr_batch = irc_batch_search (ctxt->server, ptr_tag_batch);
|
||||
if (ptr_batch)
|
||||
{
|
||||
if (*str_irc_tags[0])
|
||||
if ((*str_irc_tags)[0])
|
||||
weechat_string_dyn_concat (str_irc_tags, ",", -1);
|
||||
weechat_string_dyn_concat (str_irc_tags,
|
||||
"irc_batch_type_", -1);
|
||||
@@ -301,8 +301,8 @@ irc_protocol_tags (struct t_irc_protocol_ctxt *ctxt, const char *extra_tags)
|
||||
(ctxt->command && ctxt->command[0]) ? ctxt->command : "",
|
||||
(is_numeric) ? "," : "",
|
||||
(is_numeric) ? "irc_numeric" : "",
|
||||
(str_irc_tags && *str_irc_tags[0]) ? "," : "",
|
||||
(str_irc_tags && *str_irc_tags[0]) ? *str_irc_tags : "",
|
||||
(str_irc_tags && (*str_irc_tags)[0]) ? "," : "",
|
||||
(str_irc_tags && (*str_irc_tags)[0]) ? *str_irc_tags : "",
|
||||
(extra_tags && extra_tags[0]) ? "," : "",
|
||||
(extra_tags && extra_tags[0]) ? extra_tags : "",
|
||||
(ctxt->ignore_tag) ? ",irc_ignored" : "",
|
||||
@@ -717,7 +717,7 @@ irc_protocol_cap_print_cb (void *data,
|
||||
|
||||
str_caps = (char **)data;
|
||||
|
||||
if (*str_caps[0])
|
||||
if ((*str_caps)[0])
|
||||
weechat_string_dyn_concat (str_caps, " ", -1);
|
||||
weechat_string_dyn_concat (str_caps, key, -1);
|
||||
if (value)
|
||||
@@ -767,7 +767,7 @@ irc_protocol_cap_to_enable (const char *capabilities, int sasl_requested)
|
||||
",");
|
||||
if (supported_caps)
|
||||
{
|
||||
if (*str_caps[0])
|
||||
if ((*str_caps)[0])
|
||||
weechat_string_dyn_concat (str_caps, ",", -1);
|
||||
weechat_string_dyn_concat (str_caps, supported_caps, -1);
|
||||
free (supported_caps);
|
||||
@@ -775,7 +775,7 @@ irc_protocol_cap_to_enable (const char *capabilities, int sasl_requested)
|
||||
}
|
||||
else
|
||||
{
|
||||
if (*str_caps[0])
|
||||
if ((*str_caps)[0])
|
||||
weechat_string_dyn_concat (str_caps, ",", -1);
|
||||
weechat_string_dyn_concat (str_caps, caps[i], -1);
|
||||
}
|
||||
@@ -786,7 +786,7 @@ irc_protocol_cap_to_enable (const char *capabilities, int sasl_requested)
|
||||
|
||||
if (sasl_requested)
|
||||
{
|
||||
if (*str_caps[0])
|
||||
if ((*str_caps)[0])
|
||||
weechat_string_dyn_concat (str_caps, ",", -1);
|
||||
weechat_string_dyn_concat (str_caps, "sasl", -1);
|
||||
}
|
||||
@@ -897,7 +897,7 @@ irc_protocol_cap_sync (struct t_irc_server *server, int sasl)
|
||||
{
|
||||
if (sasl && strcmp (caps_server[i], "sasl") == 0)
|
||||
sasl_to_do = 1;
|
||||
if (*cap_req[0])
|
||||
if ((*cap_req)[0])
|
||||
weechat_string_dyn_concat (cap_req, " ", -1);
|
||||
weechat_string_dyn_concat (cap_req, caps_server[i], -1);
|
||||
}
|
||||
@@ -1165,7 +1165,7 @@ IRC_PROTOCOL_CALLBACK(cap)
|
||||
{
|
||||
if (caps_supported[j][0] == '-')
|
||||
{
|
||||
if (*str_caps_disabled[0])
|
||||
if ((*str_caps_disabled)[0])
|
||||
weechat_string_dyn_concat (str_caps_disabled, " ", -1);
|
||||
weechat_string_dyn_concat (str_caps_disabled,
|
||||
caps_supported[j] + 1,
|
||||
@@ -1177,7 +1177,7 @@ IRC_PROTOCOL_CALLBACK(cap)
|
||||
}
|
||||
else
|
||||
{
|
||||
if (*str_caps_enabled[0])
|
||||
if ((*str_caps_enabled)[0])
|
||||
weechat_string_dyn_concat (str_caps_enabled, " ", -1);
|
||||
weechat_string_dyn_concat (str_caps_enabled,
|
||||
caps_supported[j],
|
||||
@@ -1192,7 +1192,7 @@ IRC_PROTOCOL_CALLBACK(cap)
|
||||
}
|
||||
weechat_string_free_split (caps_supported);
|
||||
}
|
||||
if (*str_caps_enabled[0] && *str_caps_disabled[0])
|
||||
if ((*str_caps_enabled)[0] && (*str_caps_disabled)[0])
|
||||
{
|
||||
weechat_printf_datetime_tags (
|
||||
ctxt->server->buffer,
|
||||
@@ -1203,7 +1203,7 @@ IRC_PROTOCOL_CALLBACK(cap)
|
||||
weechat_prefix ("network"), IRC_PLUGIN_NAME,
|
||||
*str_caps_enabled, *str_caps_disabled);
|
||||
}
|
||||
else if (*str_caps_enabled[0])
|
||||
else if ((*str_caps_enabled)[0])
|
||||
{
|
||||
weechat_printf_datetime_tags (
|
||||
ctxt->server->buffer,
|
||||
@@ -1214,7 +1214,7 @@ IRC_PROTOCOL_CALLBACK(cap)
|
||||
weechat_prefix ("network"), IRC_PLUGIN_NAME,
|
||||
*str_caps_enabled);
|
||||
}
|
||||
else if (*str_caps_disabled[0])
|
||||
else if ((*str_caps_disabled)[0])
|
||||
{
|
||||
weechat_printf_datetime_tags (
|
||||
ctxt->server->buffer,
|
||||
@@ -6208,7 +6208,7 @@ IRC_PROTOCOL_CALLBACK(353)
|
||||
}
|
||||
else if (!ptr_channel && str_nicks)
|
||||
{
|
||||
if (*str_nicks[0])
|
||||
if ((*str_nicks)[0])
|
||||
{
|
||||
weechat_string_dyn_concat (str_nicks, IRC_COLOR_RESET, -1);
|
||||
weechat_string_dyn_concat (str_nicks, " ", -1);
|
||||
@@ -6473,7 +6473,7 @@ irc_protocol_get_string_channel_nicks (struct t_irc_server *server,
|
||||
if (!filter_ok)
|
||||
continue;
|
||||
|
||||
if (*str_nicks[0])
|
||||
if ((*str_nicks)[0])
|
||||
{
|
||||
weechat_string_dyn_concat (str_nicks,
|
||||
IRC_COLOR_RESET,
|
||||
@@ -6608,7 +6608,7 @@ irc_protocol_get_string_channel_nicks_count (struct t_irc_server *server,
|
||||
snprintf (str_mode_name, sizeof (str_mode_name),
|
||||
"+%c", ptr_prefix_modes[i]);
|
||||
}
|
||||
if (*str_counts[0])
|
||||
if ((*str_counts)[0])
|
||||
weechat_string_dyn_concat (str_counts, ", ", -1);
|
||||
weechat_string_dyn_concat (str_counts, str_count, -1);
|
||||
weechat_string_dyn_concat (str_counts, str_mode_name, -1);
|
||||
|
||||
@@ -422,8 +422,8 @@ char *
|
||||
irc_server_eval_fingerprint (struct t_irc_server *server)
|
||||
{
|
||||
const char *ptr_fingerprint;
|
||||
char *fingerprint_eval, **fingerprints, *str_sizes;
|
||||
int i, j, rc, algo, length;
|
||||
char *fingerprint_eval, **fingerprints, *str_sizes, **ptr;
|
||||
int i, rc, algo, length;
|
||||
|
||||
if (!server)
|
||||
return NULL;
|
||||
@@ -460,18 +460,18 @@ irc_server_eval_fingerprint (struct t_irc_server *server)
|
||||
return fingerprint_eval;
|
||||
|
||||
rc = 0;
|
||||
for (i = 0; fingerprints[i]; i++)
|
||||
for (ptr = fingerprints; *ptr; ptr++)
|
||||
{
|
||||
length = strlen (fingerprints[i]);
|
||||
length = strlen (*ptr);
|
||||
algo = irc_server_fingerprint_search_algo_with_size (length * 4);
|
||||
if (algo < 0)
|
||||
{
|
||||
rc = -1;
|
||||
break;
|
||||
}
|
||||
for (j = 0; j < length; j++)
|
||||
for (i = 0; i < length; i++)
|
||||
{
|
||||
if (!isxdigit ((unsigned char)fingerprints[i][j]))
|
||||
if (!isxdigit ((unsigned char)((*ptr)[i])))
|
||||
{
|
||||
rc = -2;
|
||||
break;
|
||||
@@ -4954,7 +4954,7 @@ irc_server_check_certificate_fingerprint (struct t_irc_server *server,
|
||||
const char *good_fingerprints)
|
||||
{
|
||||
unsigned char *fingerprint_server[IRC_FINGERPRINT_NUM_ALGOS];
|
||||
char **fingerprints;
|
||||
char **fingerprints, **ptr_fingerprint;
|
||||
int i, rc, algo;
|
||||
size_t size_bits, size_bytes;
|
||||
|
||||
@@ -4974,9 +4974,9 @@ irc_server_check_certificate_fingerprint (struct t_irc_server *server,
|
||||
|
||||
rc = 0;
|
||||
|
||||
for (i = 0; fingerprints[i]; i++)
|
||||
for (ptr_fingerprint = fingerprints; *ptr_fingerprint; ptr_fingerprint++)
|
||||
{
|
||||
size_bits = strlen (fingerprints[i]) * 4;
|
||||
size_bits = strlen (*ptr_fingerprint) * 4;
|
||||
size_bytes = size_bits / 8;
|
||||
|
||||
algo = irc_server_fingerprint_search_algo_with_size (size_bits);
|
||||
@@ -5018,7 +5018,7 @@ irc_server_check_certificate_fingerprint (struct t_irc_server *server,
|
||||
if (fingerprint_server[algo])
|
||||
{
|
||||
/* check if the fingerprint matches */
|
||||
if (irc_server_compare_fingerprints (fingerprints[i],
|
||||
if (irc_server_compare_fingerprints (*ptr_fingerprint,
|
||||
fingerprint_server[algo],
|
||||
size_bytes) == 0)
|
||||
{
|
||||
@@ -6067,19 +6067,19 @@ irc_server_build_autojoin (struct t_irc_server *server)
|
||||
if (ptr_channel->key)
|
||||
{
|
||||
/* add channel with key and the key */
|
||||
if (*channels_with_key[0])
|
||||
if ((*channels_with_key)[0])
|
||||
weechat_string_dyn_concat (channels_with_key, ",", -1);
|
||||
weechat_string_dyn_concat (channels_with_key,
|
||||
ptr_channel->name,
|
||||
-1);
|
||||
if (*keys[0])
|
||||
if ((*keys)[0])
|
||||
weechat_string_dyn_concat (keys, ",", -1);
|
||||
weechat_string_dyn_concat (keys, ptr_channel->key, -1);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* add channel without key */
|
||||
if (*channels_others[0])
|
||||
if ((*channels_others)[0])
|
||||
weechat_string_dyn_concat (channels_others, ",", -1);
|
||||
weechat_string_dyn_concat (channels_others,
|
||||
ptr_channel->name,
|
||||
@@ -6096,13 +6096,13 @@ irc_server_build_autojoin (struct t_irc_server *server)
|
||||
* concatenate channels_with_key + channels_others + keys
|
||||
* into channels_with_key
|
||||
*/
|
||||
if (*channels_others[0])
|
||||
if ((*channels_others)[0])
|
||||
{
|
||||
if (*channels_with_key[0])
|
||||
if ((*channels_with_key)[0])
|
||||
weechat_string_dyn_concat (channels_with_key, ",", -1);
|
||||
weechat_string_dyn_concat (channels_with_key, *channels_others, -1);
|
||||
}
|
||||
if (*keys[0])
|
||||
if ((*keys)[0])
|
||||
{
|
||||
weechat_string_dyn_concat (channels_with_key, " ", -1);
|
||||
weechat_string_dyn_concat (channels_with_key, *keys, -1);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user