diff options
author | Sébastien Helleu <flashcode@flashtux.org> | 2022-11-21 20:45:25 +0100 |
---|---|---|
committer | Sébastien Helleu <flashcode@flashtux.org> | 2022-11-21 20:45:41 +0100 |
commit | baab9cc7c52e011a10cf5b1d97d6707e6e067597 (patch) | |
tree | a2dcce2df3099f5e26d63f7dab2ade1491efa76d | |
parent | a8639969c5d0c8ecc950332a18480b2cb499173d (diff) | |
download | weechat-baab9cc7c52e011a10cf5b1d97d6707e6e067597.zip |
core: add option `unicode` in command `/debug`
35 files changed, 1084 insertions, 104 deletions
diff --git a/ChangeLog.adoc b/ChangeLog.adoc index d97509c89..440ae7fd3 100644 --- a/ChangeLog.adoc +++ b/ChangeLog.adoc @@ -23,6 +23,7 @@ New features:: * core: allow command `/toggle` to create option before setting the value, if allowed in the section (issue #1837) * core: add signals "buffer_user_input_xxx" and "buffer_user_closing_xxx" for buffers created with `/buffer add` (issue #1848) * core: add identifier in buffer lines (issue #901) + * core: add option `unicode` in command `/debug` * trigger: add regex command "y" to translate chars, set default regex command to "s" (regex replace) (issue #1510) Bug fixes:: diff --git a/doc/de/includes/autogen_user_commands.de.adoc b/doc/de/includes/autogen_user_commands.de.adoc index ac24f14e9..7344ae2d3 100644 --- a/doc/de/includes/autogen_user_commands.de.adoc +++ b/doc/de/includes/autogen_user_commands.de.adoc @@ -1343,27 +1343,35 @@ Beispiele: mouse|cursor [verbose] hdata [free] time <command> - - list: zeigt alle Erweiterungen mit Debuglevel an - set: setzt den Level der Protokollierung für eine Erweiterung - plugin: Name der Erweiterung ("core" für den WeeChat Kern) - level: Debuglevel der Erweiterung (0 = deaktiviert Debug) - dump: Speicherabbild in die WeeChat Protokolldatei schreiben (wie bei einem Programmabsturz) - hooks: zeigt die aktiven Hooks an (bei einer Erweiterung: detaillierte Informationen über Hooks werden angezeigt, die von der Erweiterung erstellt wurden) - buffer: speichert den Bufferinhalt als hexadezimale Ausgabe in die Protokolldatei - certs: gibt die Anzahl geladener vertrauenswürdiger Zertifizierungsstellen aus - color: zeigt Informationen über die aktuellen Farbpaarungen an - cursor: schaltet den debug-Modus für den Cursor-Modus ein/aus - dirs: Verzeichnisse werden angezeigt - hdata: zeigt Informationen zu hdata an (mittels free werden alle hdata Informationen aus dem Speicher entfernt) -infolists: zeigt Information über die Infolists an - libs: zeigt an welche externen Bibliotheken verwendet werden - memory: gibt Informationen über den genutzten Speicher aus - mouse: schaltet den debug-Modus für den Maus-Modus ein/aus - tags: zeigt für jede einzelne Zeile die dazugehörigen Schlagwörter an - term: zeigt Informationen über das Terminal an - windows: zeigt die Fensterstruktur an - time: misst die Zeit um einen Befehl auszuführen oder um einen Text in den aktuellen Buffer zu senden + unicode <string> + + list: list plugins with debug levels + set: set debug level for plugin + plugin: name of plugin ("core" for WeeChat core) + level: debug level for plugin (0 = disable debug) + dump: save memory dump in WeeChat log file (same dump is written when WeeChat crashes) + hooks: display infos about hooks (with a plugin: display detailed info about hooks created by the plugin) + buffer: dump buffer content with hexadecimal values in log file + certs: display number of loaded trusted certificate authorities + color: display infos about current color pairs + cursor: toggle debug for cursor mode + dirs: display directories + hdata: display infos about hdata (with free: remove all hdata in memory) +infolists: display infos about infolists + libs: display infos about external libraries used + memory: display infos about memory usage + mouse: toggle debug for mouse + tags: display tags for lines + term: display infos about terminal + windows: display windows tree + time: measure time to execute a command or to send text to the current buffer + unicode: display information about unicode chars in string (evaluated, see /help eval) + +Examples: + /debug set irc 1 + /debug mouse verbose + /debug time /filter toggle + /debug unicode ${chars:${\u26C0}-${\u26CF}} ---- [[command_weechat_eval]] diff --git a/doc/en/includes/autogen_user_commands.en.adoc b/doc/en/includes/autogen_user_commands.en.adoc index b12fad0da..565ad5d83 100644 --- a/doc/en/includes/autogen_user_commands.en.adoc +++ b/doc/en/includes/autogen_user_commands.en.adoc @@ -1343,6 +1343,7 @@ Examples: mouse|cursor [verbose] hdata [free] time <command> + unicode <string> list: list plugins with debug levels set: set debug level for plugin @@ -1364,6 +1365,13 @@ infolists: display infos about infolists term: display infos about terminal windows: display windows tree time: measure time to execute a command or to send text to the current buffer + unicode: display information about unicode chars in string (evaluated, see /help eval) + +Examples: + /debug set irc 1 + /debug mouse verbose + /debug time /filter toggle + /debug unicode ${chars:${\u26C0}-${\u26CF}} ---- [[command_weechat_eval]] diff --git a/doc/en/weechat_dev.en.adoc b/doc/en/weechat_dev.en.adoc index a8d5c8f6c..eb5825ba6 100644 --- a/doc/en/weechat_dev.en.adoc +++ b/doc/en/weechat_dev.en.adoc @@ -405,6 +405,7 @@ WeeChat "core" is located in following directories: | core/ | Root of unit tests for core. | test-core-arraylist.cpp | Tests: arraylists. | test-core-calc.cpp | Tests: calculation of expressions. +| test-core-command.cpp | Tests: commands. | test-core-config-file.cpp | Tests: configuration files. | test-core-crypto.cpp | Tests: cryptographic functions. | test-core-dir.cpp | Tests: directory/file functions. diff --git a/doc/fr/includes/autogen_user_commands.fr.adoc b/doc/fr/includes/autogen_user_commands.fr.adoc index b120795e5..7d2c17087 100644 --- a/doc/fr/includes/autogen_user_commands.fr.adoc +++ b/doc/fr/includes/autogen_user_commands.fr.adoc @@ -1343,6 +1343,7 @@ Exemples : cursor|mouse [verbose] hdata [free] time <commande> + unicode <chaîne> list : lister les extensions avec leur niveau de debug set : définir le niveau de debug pour l'extension @@ -1364,6 +1365,13 @@ infolists : afficher des infos sur les infolists term : afficher des infos sur le terminal windows : afficher l'arbre des fenêtres time : mesurer le temps pour exécuter une commande ou pour envoyer du texte au tampon courant + unicode : afficher des informations sur les caractères unicode dans la chaîne (évaluée, voir /help eval) + +Exemples : + /debug set irc 1 + /debug mouse verbose + /debug time /filter toggle + /debug unicode ${chars:${\u26C0}-${\u26CF}} ---- [[command_weechat_eval]] diff --git a/doc/fr/weechat_dev.fr.adoc b/doc/fr/weechat_dev.fr.adoc index df3c9ac97..99cab7f7f 100644 --- a/doc/fr/weechat_dev.fr.adoc +++ b/doc/fr/weechat_dev.fr.adoc @@ -407,6 +407,7 @@ Le cœur de WeeChat est situé dans les répertoires suivants : | core/ | Racine des tests unitaires pour le cœur. | test-core-arraylist.cpp | Tests : listes avec tableau (« arraylists »). | test-core-calc.cpp | Tests : calcul d'expressions. +| test-core-command.cpp | Tests : commandes. | test-core-config-file.cpp | Tests : fichiers de configuration. | test-core-crypto.cpp | Tests : fonctions cryptographiques. | test-core-dir.cpp | Tests : répertoires/fichiers. diff --git a/doc/it/includes/autogen_user_commands.it.adoc b/doc/it/includes/autogen_user_commands.it.adoc index cee8775a3..6596f18e4 100644 --- a/doc/it/includes/autogen_user_commands.it.adoc +++ b/doc/it/includes/autogen_user_commands.it.adoc @@ -1343,6 +1343,7 @@ Examples: mouse|cursor [verbose] hdata [free] time <command> + unicode <string> list: list plugins with debug levels set: set debug level for plugin @@ -1364,6 +1365,13 @@ infolists: display infos about infolists term: display infos about terminal windows: display windows tree time: measure time to execute a command or to send text to the current buffer + unicode: display information about unicode chars in string (evaluated, see /help eval) + +Examples: + /debug set irc 1 + /debug mouse verbose + /debug time /filter toggle + /debug unicode ${chars:${\u26C0}-${\u26CF}} ---- [[command_weechat_eval]] diff --git a/doc/ja/includes/autogen_user_commands.ja.adoc b/doc/ja/includes/autogen_user_commands.ja.adoc index b5add3232..aac975406 100644 --- a/doc/ja/includes/autogen_user_commands.ja.adoc +++ b/doc/ja/includes/autogen_user_commands.ja.adoc @@ -1343,6 +1343,7 @@ Examples: mouse|cursor [verbose] hdata [free] time <command> + unicode <string> list: list plugins with debug levels set: set debug level for plugin @@ -1364,6 +1365,13 @@ infolists: display infos about infolists term: display infos about terminal windows: display windows tree time: measure time to execute a command or to send text to the current buffer + unicode: display information about unicode chars in string (evaluated, see /help eval) + +Examples: + /debug set irc 1 + /debug mouse verbose + /debug time /filter toggle + /debug unicode ${chars:${\u26C0}-${\u26CF}} ---- [[command_weechat_eval]] diff --git a/doc/ja/weechat_dev.ja.adoc b/doc/ja/weechat_dev.ja.adoc index 16e3d06e1..8b51ed256 100644 --- a/doc/ja/weechat_dev.ja.adoc +++ b/doc/ja/weechat_dev.ja.adoc @@ -429,6 +429,8 @@ WeeChat "core" は以下のディレクトリに配置されています: // TRANSLATION MISSING | test-core-calc.cpp | Tests: calculation of expressions. // TRANSLATION MISSING +| test-core-command.cpp | Tests: commands. +// TRANSLATION MISSING | test-core-config-file.cpp | Tests: configuration files. // TRANSLATION MISSING | test-core-crypto.cpp | Tests: cryptographic functions. diff --git a/doc/pl/includes/autogen_user_commands.pl.adoc b/doc/pl/includes/autogen_user_commands.pl.adoc index b3b4d8602..c9acf08e9 100644 --- a/doc/pl/includes/autogen_user_commands.pl.adoc +++ b/doc/pl/includes/autogen_user_commands.pl.adoc @@ -1336,12 +1336,13 @@ Przykłady: ---- /debug list - set <wtyczka> <poziom> - dump|hooks [<wtyczka>] + set <plugin> <level> + dump|hooks [<plugin>] buffer|certs|color|dirs|infolists|libs|memory|tags|term|windows mouse|cursor [verbose] hdata [free] - time <komenda> + time <command> + unicode <string> list: list plugins with debug levels set: set debug level for plugin @@ -1363,6 +1364,13 @@ infolists: display infos about infolists term: display infos about terminal windows: display windows tree time: measure time to execute a command or to send text to the current buffer + unicode: display information about unicode chars in string (evaluated, see /help eval) + +Examples: + /debug set irc 1 + /debug mouse verbose + /debug time /filter toggle + /debug unicode ${chars:${\u26C0}-${\u26CF}} ---- [[command_weechat_eval]] diff --git a/doc/sr/includes/autogen_user_commands.sr.adoc b/doc/sr/includes/autogen_user_commands.sr.adoc index 2bcf146d1..24dbaf982 100644 --- a/doc/sr/includes/autogen_user_commands.sr.adoc +++ b/doc/sr/includes/autogen_user_commands.sr.adoc @@ -1337,33 +1337,41 @@ stop: зауставља режим померања курсора ---- /debug list - set <додатак> <ниво> - dump|hooks [<додатак>] + set <plugin> <level> + dump|hooks [<plugin>] buffer|certs|color|dirs|infolists|libs|memory|tags|term|windows mouse|cursor [verbose] hdata [free] - time <команда> - - list: исписује додатке са дибаг нивоима - set: поставља дибаг ниво за додатак - додатак: име додатка („core” за WeeChat језгро) - ниво: дибаг ниво за додатак (0 = искључује дибаг) - dump: чува садржај меморије у WeeChat лог фајл (исти садржај се записује када се програм WeeChat сруши) - hooks: исписује инфо о кукама (са додатком: приказује детаљне информације о кукама које креира додатак) - buffer: уписује у лог фајл садржај бафера као хексадецималне вредности - certs: приказује број учитаних ауторитета сертификата којима се верује - color: приказује инфо о тренутним паровима боја - cursor: пребацује дибаг за режим померања курсора - dirs: исписује директоријуме - hdata: исписује инфо о hdata (са free: уклања све hdata из меморије) -infolists: исписује инфо о инфолистама - libs: исписује инфо о коришћеним спољним библиотекама - memory: исписује инфо о употреби меморије - mouse: пребацује дибаг за миша - tags: исписује ознаке за линије - term: исписује инфо о терминалу - windows: исписује стабло прозора - time: мери време извршавања команде или слања текста текућем баферу + time <command> + unicode <string> + + list: list plugins with debug levels + set: set debug level for plugin + plugin: name of plugin ("core" for WeeChat core) + level: debug level for plugin (0 = disable debug) + dump: save memory dump in WeeChat log file (same dump is written when WeeChat crashes) + hooks: display infos about hooks (with a plugin: display detailed info about hooks created by the plugin) + buffer: dump buffer content with hexadecimal values in log file + certs: display number of loaded trusted certificate authorities + color: display infos about current color pairs + cursor: toggle debug for cursor mode + dirs: display directories + hdata: display infos about hdata (with free: remove all hdata in memory) +infolists: display infos about infolists + libs: display infos about external libraries used + memory: display infos about memory usage + mouse: toggle debug for mouse + tags: display tags for lines + term: display infos about terminal + windows: display windows tree + time: measure time to execute a command or to send text to the current buffer + unicode: display information about unicode chars in string (evaluated, see /help eval) + +Examples: + /debug set irc 1 + /debug mouse verbose + /debug time /filter toggle + /debug unicode ${chars:${\u26C0}-${\u26CF}} ---- [[command_weechat_eval]] diff --git a/doc/sr/weechat_dev.sr.adoc b/doc/sr/weechat_dev.sr.adoc index bba04f58a..02f841f77 100644 --- a/doc/sr/weechat_dev.sr.adoc +++ b/doc/sr/weechat_dev.sr.adoc @@ -407,6 +407,8 @@ WeeChat „језгро” се налази у следећим директо | core/ | Корен unit тестова језгра. | test-core-arraylist.cpp | Тестови: arraylists. | test-core-calc.cpp | Тестови: калкулација израза. +// TRANSLATION MISSING +| test-core-command.cpp | Tests: commands. | test-core-config-file.cpp | Тестови: конфигурациони фајлови. | test-core-crypto.cpp | Тестови: криптографске функције. | test-core-dir.cpp | Тестови: функције директоријума/фајла. @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Ondřej Súkup <mimi.vx@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -1469,7 +1469,7 @@ msgstr "ladící funkce" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <plugin> <level> || dump [<plugin>] || buffer|color|memory|term|" "windows" @@ -1499,7 +1499,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: vypsat pluginy s urovněmi ladění\n" " set: nastavit úroveň logování pro plugin\n" @@ -4358,6 +4366,13 @@ msgstr "" msgid "Directories:" msgstr "Složky:" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + #, fuzzy msgid "Error: not enough memory\n" msgstr "nedostatek paměti" @@ -25,7 +25,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-08 17:57+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-11-07 13:01+0100\n" "Last-Translator: Nils Görs <weechatter@arcor.de>\n" "Language-Team: German <kde-i18n-de@kde.org>\n" @@ -1584,15 +1584,46 @@ msgstr "" msgid "debug functions" msgstr "Debug-Funktionen" +#, fuzzy +#| msgid "" +#| "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|" +#| "color|dirs|infolists|libs|memory|tags|term|windows || mouse|cursor " +#| "[verbose] || hdata [free] || time <command>" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " "hdata [free] || time <command>" +#, fuzzy +#| msgid "" +#| " list: list plugins with debug levels\n" +#| " set: set debug level for plugin\n" +#| " plugin: name of plugin (\"core\" for WeeChat core)\n" +#| " level: debug level for plugin (0 = disable debug)\n" +#| " dump: save memory dump in WeeChat log file (same dump is written " +#| "when WeeChat crashes)\n" +#| " hooks: display infos about hooks (with a plugin: display detailed " +#| "info about hooks created by the plugin)\n" +#| " buffer: dump buffer content with hexadecimal values in log file\n" +#| " certs: display number of loaded trusted certificate authorities\n" +#| " color: display infos about current color pairs\n" +#| " cursor: toggle debug for cursor mode\n" +#| " dirs: display directories\n" +#| " hdata: display infos about hdata (with free: remove all hdata in " +#| "memory)\n" +#| "infolists: display infos about infolists\n" +#| " libs: display infos about external libraries used\n" +#| " memory: display infos about memory usage\n" +#| " mouse: toggle debug for mouse\n" +#| " tags: display tags for lines\n" +#| " term: display infos about terminal\n" +#| " windows: display windows tree\n" +#| " time: measure time to execute a command or to send text to the " +#| "current buffer" msgid "" " list: list plugins with debug levels\n" " set: set debug level for plugin\n" @@ -1617,7 +1648,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: zeigt alle Erweiterungen mit Debuglevel an\n" " set: setzt den Level der Protokollierung für eine Erweiterung\n" @@ -5491,6 +5530,13 @@ msgstr "TEMPORÄR, wird beim Beenden gelöscht" msgid "Directories:" msgstr "Verzeichnisse:" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + msgid "Error: not enough memory\n" msgstr "Fehler: nicht genügend Speicher\n" @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Santiago Forero <santiago@forero.xyz>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -1552,7 +1552,7 @@ msgstr "funciones de depuración" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <plugin> <nível> || dump [<plugin>] || buffer|certs|color|dirs|" "hooks|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " @@ -1583,7 +1583,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: listar plugins con niveles de depuración.\n" " set: configura el nivel de depuración para plugin.\n" @@ -4914,6 +4922,13 @@ msgstr "" msgid "Directories:" msgstr "" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + #, fuzzy msgid "Error: not enough memory\n" msgstr "%sNo hay suficiente memoria" @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" -"PO-Revision-Date: 2022-11-06 09:12+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" +"PO-Revision-Date: 2022-11-21 20:42+0100\n" "Last-Translator: Sébastien Helleu <flashcode@flashtux.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "Language: fr\n" @@ -1557,11 +1557,11 @@ msgstr "fonctions de debug" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <extension> <niveau> || dump|hooks [<extension>] || buffer|certs|" "color|dirs|infolists|libs|memory|tags|term|windows || cursor|mouse [verbose] " -"|| hdata [free] || time <commande>" +"|| hdata [free] || time <commande> || unicode <chaîne>" msgid "" " list: list plugins with debug levels\n" @@ -1587,7 +1587,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list : lister les extensions avec leur niveau de debug\n" " set : définir le niveau de debug pour l'extension\n" @@ -1614,7 +1622,15 @@ msgstr "" " term : afficher des infos sur le terminal\n" " windows : afficher l'arbre des fenêtres\n" " time : mesurer le temps pour exécuter une commande ou pour envoyer du " -"texte au tampon courant" +"texte au tampon courant\n" +" unicode : afficher des informations sur les caractères unicode dans la " +"chaîne (évaluée, voir /help eval)\n" +"\n" +"Exemples :\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgid "evaluate expression" msgstr "évaluer une expression" @@ -5356,6 +5372,16 @@ msgstr "TEMPORAIRE, supprimé en quittant" msgid "Directories:" msgstr "Répertoires :" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" +"Unicode : \"caractère\" (point de code, point de code en hexa, séquence " +"UTF-8) : strlen %s/%s utf8_strlen, gui_chat_strlen %s/%s wcswidth, " +"utf8_strlen_screen, gui_chat_strlen_screen :" + msgid "Error: not enough memory\n" msgstr "Erreur : pas assez de mémoire\n" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -1371,7 +1371,7 @@ msgstr "" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "dump | buffer | windows" #, fuzzy @@ -1399,7 +1399,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " dump: memóriatartalom mentése a WeeChat logba (ugyanez a tartalom íródik " "a WeeChat összeomlásakor)\n" @@ -3948,6 +3956,13 @@ msgstr "" msgid "Directories:" msgstr "" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + #, fuzzy msgid "Error: not enough memory\n" msgstr "Nincs elég memória az új sorhoz\n" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Esteban I. Ruiz Moreno <exio4.com@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -1470,7 +1470,7 @@ msgstr "" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <plugin> <livello> || dump [<plugin>] || buffer|color|infolists|" "memory|tags|term|windows || mouse|cursor [verbose] || hdata [free]" @@ -1500,7 +1500,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: elenca i plugin con i livelli di debug\n" " set: imposta il livello di debug per il plugin\n" @@ -4622,6 +4630,13 @@ msgstr "" msgid "Directories:" msgstr "Directory:" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + #, fuzzy msgid "Error: not enough memory\n" msgstr "%sSpazio non sufficiente" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>\n" "Language-Team: Japanese <https://github.com/l/weechat/tree/master/" @@ -1531,7 +1531,7 @@ msgstr "デバッグ関数" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <plugin> <level> || dump [<plugin>] || buffer|color|infolists|" "memory|tags|term|windows || mouse|cursor [verbose] || hdata [free] || time " @@ -1585,7 +1585,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: デバッグレベルの設定されたプラグインをリストアップ\n" " set: プラグインのデバッグレベルを設定\n" @@ -5080,6 +5088,13 @@ msgstr "(一時的、終了時に削除されます)" msgid "Directories:" msgstr "ディレクトリ:" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + #, fuzzy msgid "Error: not enough memory\n" msgstr "メモリ不足" @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Krzysztof Korościk <soltys@soltys.info>\n" "Language-Team: Polish <kde-i18n-doc@kde.org>\n" @@ -1565,10 +1565,15 @@ msgstr "" msgid "debug functions" msgstr "funkcje debugujące" +#, fuzzy +#| msgid "" +#| "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|" +#| "color|dirs|infolists|libs|memory|tags|term|windows || mouse|cursor " +#| "[verbose] || hdata [free] || time <command>" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <wtyczka> <poziom> || dump|hooks [<wtyczka>] || buffer|certs|" "color|dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] " @@ -1599,7 +1604,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: wyświetla wtyczki z poziomem debugowania\n" " set: ustawia poziom debugowania dla wtyczki\n" @@ -5460,6 +5473,13 @@ msgstr "TYMCZASOWY, usuwany przy wyjściu" msgid "Directories:" msgstr "Katalogi:" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + msgid "Error: not enough memory\n" msgstr "Błąd: za mało pamięci\n" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Vasco Almeida <vascomalmeida@sapo.pt>\n" "Language-Team: Portuguese <>\n" @@ -1532,7 +1532,7 @@ msgstr "funções de debug" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <plugin> <nível> || dump [<plugin>] || buffer|color|infolists|" "memory|tags|term|windows || mouse|cursor [verbose] || hdata [free] || time " @@ -1586,7 +1586,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: listar plugins com nível de depuração\n" " set: definir nível de depuração do plugin\n" @@ -5115,6 +5123,13 @@ msgstr "" msgid "Directories:" msgstr "Diretórios:" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + #, fuzzy msgid "Error: not enough memory\n" msgstr "memória insuficiente" diff --git a/po/pt_BR.po b/po/pt_BR.po index aa0352025..645a2c9f2 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Érico Nogueira <ericonr@disroot.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -1531,7 +1531,7 @@ msgstr "" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <plugin> <nível> || dump [<plugin>] || buffer|color|cursor|" "infolists|memory|mouse|tags|term|windows || hdata [free]" @@ -1562,7 +1562,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: lista plugins e níveis de depuração\n" " set: configura nível de depuração para plugin\n" @@ -4613,6 +4621,13 @@ msgstr "" msgid "Directories:" msgstr "" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + #, fuzzy msgid "Error: not enough memory\n" msgstr "%sMemória insuficiente" @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Aleksey V Zapparov AKA ixti <ixti@member.fsf.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -1391,7 +1391,7 @@ msgstr "" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "dump | buffer | windows" #, fuzzy @@ -1419,7 +1419,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " dump: сохранить дамп памяти в журнал WeeChat (аналогично дампу при крахе " "WeeChat)\n" @@ -3976,6 +3984,13 @@ msgstr "" msgid "Directories:" msgstr "" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + #, fuzzy msgid "Error: not enough memory\n" msgstr "Недостаточно памяти для новой строчки\n" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Ivan Pešić <ivan.pesic@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -1536,15 +1536,46 @@ msgstr "" msgid "debug functions" msgstr "дибаг функције" +#, fuzzy +#| msgid "" +#| "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|" +#| "color|dirs|infolists|libs|memory|tags|term|windows || mouse|cursor " +#| "[verbose] || hdata [free] || time <command>" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <додатак> <ниво> || dump|hooks [<додатак>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " "hdata [free] || time <команда>" +#, fuzzy +#| msgid "" +#| " list: list plugins with debug levels\n" +#| " set: set debug level for plugin\n" +#| " plugin: name of plugin (\"core\" for WeeChat core)\n" +#| " level: debug level for plugin (0 = disable debug)\n" +#| " dump: save memory dump in WeeChat log file (same dump is written " +#| "when WeeChat crashes)\n" +#| " hooks: display infos about hooks (with a plugin: display detailed " +#| "info about hooks created by the plugin)\n" +#| " buffer: dump buffer content with hexadecimal values in log file\n" +#| " certs: display number of loaded trusted certificate authorities\n" +#| " color: display infos about current color pairs\n" +#| " cursor: toggle debug for cursor mode\n" +#| " dirs: display directories\n" +#| " hdata: display infos about hdata (with free: remove all hdata in " +#| "memory)\n" +#| "infolists: display infos about infolists\n" +#| " libs: display infos about external libraries used\n" +#| " memory: display infos about memory usage\n" +#| " mouse: toggle debug for mouse\n" +#| " tags: display tags for lines\n" +#| " term: display infos about terminal\n" +#| " windows: display windows tree\n" +#| " time: measure time to execute a command or to send text to the " +#| "current buffer" msgid "" " list: list plugins with debug levels\n" " set: set debug level for plugin\n" @@ -1569,7 +1600,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: исписује додатке са дибаг нивоима\n" " set: поставља дибаг ниво за додатак\n" @@ -5433,6 +5472,13 @@ msgstr "ПРИВРЕМЕН, брише се приликом напуштања msgid "Directories:" msgstr "Директоријуми:" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + msgid "Error: not enough memory\n" msgstr "Грешка: нема довољно слободне меморије\n" @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2022-10-15 22:51+0200\n" "Last-Translator: Emir SARI <emir_sari@icloud.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -1525,15 +1525,46 @@ msgstr "" msgid "debug functions" msgstr "hata ayıklama işlevleri" +#, fuzzy +#| msgid "" +#| "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|" +#| "color|dirs|infolists|libs|memory|tags|term|windows || mouse|cursor " +#| "[verbose] || hdata [free] || time <command>" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" "list || set <eklenti> <düzey> || dump|hooks [<eklenti>] || buffer|certs|" "color|dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] " "|| hdata [free] || time <komut>" +#, fuzzy +#| msgid "" +#| " list: list plugins with debug levels\n" +#| " set: set debug level for plugin\n" +#| " plugin: name of plugin (\"core\" for WeeChat core)\n" +#| " level: debug level for plugin (0 = disable debug)\n" +#| " dump: save memory dump in WeeChat log file (same dump is written " +#| "when WeeChat crashes)\n" +#| " hooks: display infos about hooks (with a plugin: display detailed " +#| "info about hooks created by the plugin)\n" +#| " buffer: dump buffer content with hexadecimal values in log file\n" +#| " certs: display number of loaded trusted certificate authorities\n" +#| " color: display infos about current color pairs\n" +#| " cursor: toggle debug for cursor mode\n" +#| " dirs: display directories\n" +#| " hdata: display infos about hdata (with free: remove all hdata in " +#| "memory)\n" +#| "infolists: display infos about infolists\n" +#| " libs: display infos about external libraries used\n" +#| " memory: display infos about memory usage\n" +#| " mouse: toggle debug for mouse\n" +#| " tags: display tags for lines\n" +#| " term: display infos about terminal\n" +#| " windows: display windows tree\n" +#| " time: measure time to execute a command or to send text to the " +#| "current buffer" msgid "" " list: list plugins with debug levels\n" " set: set debug level for plugin\n" @@ -1558,7 +1589,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" " list: eklentileri hata ayıklama düzeyleriyle listele\n" " set: eklenti için hata ayıklama düzeyi ayarla\n" @@ -5383,6 +5422,13 @@ msgstr "GEÇİCİ, çıkışta silinir" msgid "Directories:" msgstr "Dizinler:" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + msgid "Error: not enough memory\n" msgstr "Hata: Yetersiz bellek\n" diff --git a/po/weechat.pot b/po/weechat.pot index 4be3d5083..482720274 100644 --- a/po/weechat.pot +++ b/po/weechat.pot @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2022-11-06 09:09+0100\n" +"POT-Creation-Date: 2022-11-21 12:10+0100\n" "PO-Revision-Date: 2014-08-16 10:27+0200\n" "Last-Translator: Sébastien Helleu <flashcode@flashtux.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" @@ -1242,7 +1242,7 @@ msgstr "" msgid "" "list || set <plugin> <level> || dump|hooks [<plugin>] || buffer|certs|color|" "dirs|infolists|libs|memory|tags|term|windows || mouse|cursor [verbose] || " -"hdata [free] || time <command>" +"hdata [free] || time <command> || unicode <string>" msgstr "" msgid "" @@ -1269,7 +1269,15 @@ msgid "" " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to the current " -"buffer" +"buffer\n" +" unicode: display information about unicode chars in string (evaluated, " +"see /help eval)\n" +"\n" +"Examples:\n" +" /debug set irc 1\n" +" /debug mouse verbose\n" +" /debug time /filter toggle\n" +" /debug unicode ${chars:${\\u26C0}-${\\u26CF}}" msgstr "" msgid "evaluate expression" @@ -3596,6 +3604,13 @@ msgstr "" msgid "Directories:" msgstr "" +#, c-format +msgid "" +"Unicode: \"char\" (codepoint, hex codepoint, UTF-8 sequence): strlen %s/%s " +"utf8_strlen, gui_chat_strlen %s/%s wcswidth, utf8_strlen_screen, " +"gui_chat_strlen_screen:" +msgstr "" + msgid "Error: not enough memory\n" msgstr "" diff --git a/src/core/wee-command.c b/src/core/wee-command.c index e7e3ddf64..5fb9201bb 100644 --- a/src/core/wee-command.c +++ b/src/core/wee-command.c @@ -1833,6 +1833,7 @@ COMMAND_CALLBACK(debug) struct t_config_option *ptr_option; struct t_weechat_plugin *ptr_plugin; struct timeval time_start, time_end; + char *result; int debug; /* make C compiler happy */ @@ -2025,6 +2026,18 @@ COMMAND_CALLBACK(debug) return WEECHAT_RC_OK; } + if (string_strcasecmp (argv[1], "unicode") == 0) + { + COMMAND_MIN_ARGS(3, "unicode"); + result = eval_expression (argv_eol[2], NULL, NULL, NULL); + if (result) + { + debug_unicode_string (result); + free (result); + } + return WEECHAT_RC_OK; + } + if (string_strcasecmp (argv[1], "windows") == 0) { debug_windows_tree (); @@ -7653,7 +7666,8 @@ command_init () "term|windows" " || mouse|cursor [verbose]" " || hdata [free]" - " || time <command>"), + " || time <command>" + " || unicode <string>"), N_(" list: list plugins with debug levels\n" " set: set debug level for plugin\n" " plugin: name of plugin (\"core\" for WeeChat core)\n" @@ -7677,7 +7691,15 @@ command_init () " term: display infos about terminal\n" " windows: display windows tree\n" " time: measure time to execute a command or to send text to " - "the current buffer"), + "the current buffer\n" + " unicode: display information about unicode chars in string " + "(evaluated, see /help eval)\n" + "\n" + "Examples:\n" + " /debug set irc 1\n" + " /debug mouse verbose\n" + " /debug time /filter toggle\n" + " /debug unicode ${chars:${\\u26C0}-${\\u26CF}}"), "list" " || set %(plugins_names)|" PLUGIN_CORE " || dump %(plugins_names)|" PLUGIN_CORE @@ -7695,7 +7717,8 @@ command_init () " || tags" " || term" " || windows" - " || time %(commands:/)", + " || time %(commands:/)" + " || unicode", &command_debug, NULL, NULL); hook_command ( NULL, "eval", diff --git a/src/core/wee-debug.c b/src/core/wee-debug.c index 6a5038194..6c4145cdd 100644 --- a/src/core/wee-debug.c +++ b/src/core/wee-debug.c @@ -48,11 +48,13 @@ #include "wee-log.h" #include "wee-proxy.h" #include "wee-string.h" +#include "wee-utf8.h" #include "wee-util.h" #include "../gui/gui-bar.h" #include "../gui/gui-bar-item.h" #include "../gui/gui-buffer.h" #include "../gui/gui-chat.h" +#include "../gui/gui-color.h" #include "../gui/gui-completion.h" #include "../gui/gui-filter.h" #include "../gui/gui-hotlist.h" @@ -760,6 +762,90 @@ debug_display_time_elapsed (struct timeval *time1, struct timeval *time2, } /* + * Display information about a unicode codepoint. + */ + +void +debug_unicode_char (unsigned int codepoint) +{ + char utf8_char[5], hexa[64], *ptr_hexa; + wchar_t wstring[4+2]; + int i, size, length_wcswidth; + + utf8_int_string (codepoint, utf8_char); + size = strlen (utf8_char); + + hexa[0] = '\0'; + ptr_hexa = hexa; + for (i = 0; i < size; i++) + { + ptr_hexa[0] = '0'; + ptr_hexa[1] = 'x'; + ptr_hexa += 2; + string_base16_encode (utf8_char + i, 1, ptr_hexa); + ptr_hexa += 2; + if (i < size - 1) + { + ptr_hexa[0] = ' '; + ptr_hexa++; + } + } + ptr_hexa[0] = '\0'; + + length_wcswidth = -1; + if (mbstowcs (wstring, utf8_char, 1) != (size_t)(-1)) + length_wcswidth = wcswidth (wstring, 1); + + gui_chat_printf (NULL, + "\t \"%s\" (%u, U+%04X, %s): %d %s/%s %d, %d %s/%s %d, %d, %d", + utf8_char, + codepoint, + codepoint, + hexa, + strlen (utf8_char), + GUI_COLOR(GUI_COLOR_CHAT_DELIMITERS), + GUI_COLOR(GUI_COLOR_CHAT), + utf8_strlen (utf8_char), + gui_chat_strlen (utf8_char), + GUI_COLOR(GUI_COLOR_CHAT_DELIMITERS), + GUI_COLOR(GUI_COLOR_CHAT), + length_wcswidth, + utf8_strlen_screen (utf8_char), + gui_chat_strlen_screen (utf8_char)); +} + +/* + * Display information about all unicode chars of a string. + */ + +void +debug_unicode_string (const char *string) +{ + const char *ptr_string; + if (!string || !string[0]) + return; + + gui_chat_printf (NULL, ""); + gui_chat_printf (NULL, + _("Unicode: \"char\" " + "(codepoint, hex codepoint, UTF-8 sequence): " + "strlen %s/%s " + "utf8_strlen, gui_chat_strlen %s/%s " + "wcswidth, utf8_strlen_screen, gui_chat_strlen_screen:"), + GUI_COLOR(GUI_COLOR_CHAT_DELIMITERS), + GUI_COLOR(GUI_COLOR_CHAT), + GUI_COLOR(GUI_COLOR_CHAT_DELIMITERS), + GUI_COLOR(GUI_COLOR_CHAT)); + + ptr_string = string; + while (ptr_string && ptr_string[0]) + { + debug_unicode_char (utf8_char_int (ptr_string)); + ptr_string = utf8_next_char (ptr_string); + } +} + +/* * Initializes debug. */ diff --git a/src/core/wee-debug.h b/src/core/wee-debug.h index dbf2675a8..16351482a 100644 --- a/src/core/wee-debug.h +++ b/src/core/wee-debug.h @@ -36,6 +36,7 @@ extern void debug_display_time_elapsed (struct timeval *time1, struct timeval *time2, const char *message, int display); +extern void debug_unicode_string (const char *string); extern void debug_init (); extern void debug_end (); diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 8d1f37f89..6146b4839 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -26,6 +26,7 @@ include_directories(${CPPUTEST_INCLUDE_DIRS} ${PROJECT_BINARY_DIR} ${PROJECT_SOU set(LIB_WEECHAT_UNIT_TESTS_CORE_SRC unit/core/test-core-arraylist.cpp unit/core/test-core-calc.cpp + unit/core/test-core-command.cpp unit/core/test-core-config-file.cpp unit/core/test-core-crypto.cpp unit/core/test-core-dir.cpp diff --git a/tests/Makefile.am b/tests/Makefile.am index 56c7440fd..eb08877af 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -23,6 +23,7 @@ noinst_LIBRARIES = lib_weechat_unit_tests_core.a lib_weechat_unit_tests_core_a_SOURCES = unit/core/test-core-arraylist.cpp \ unit/core/test-core-calc.cpp \ + unit/core/test-core-command.cpp \ unit/core/test-core-config-file.cpp \ unit/core/test-core-crypto.cpp \ unit/core/test-core-dir.cpp \ diff --git a/tests/tests.cpp b/tests/tests.cpp index d74f7b536..a47437083 100644 --- a/tests/tests.cpp +++ b/tests/tests.cpp @@ -62,6 +62,7 @@ extern "C" /* core */ IMPORT_TEST_GROUP(CoreArraylist); IMPORT_TEST_GROUP(CoreCalc); +IMPORT_TEST_GROUP(CoreCommand); IMPORT_TEST_GROUP(CoreConfigFile); IMPORT_TEST_GROUP(CoreCrypto); IMPORT_TEST_GROUP(CoreDir); diff --git a/tests/tests.h b/tests/tests.h index 9940678b1..2d04eef15 100644 --- a/tests/tests.h +++ b/tests/tests.h @@ -38,6 +38,7 @@ extern void record_start (); extern void record_stop (); extern int record_search (const char *buffer, const char *message); extern void record_dump (char **msg); +extern void record_error_missing (const char *message); extern void run_cmd (const char *command); extern void run_cmd_quiet (const char *command); diff --git a/tests/unit/core/test-core-command.cpp b/tests/unit/core/test-core-command.cpp new file mode 100644 index 000000000..9732db0b3 --- /dev/null +++ b/tests/unit/core/test-core-command.cpp @@ -0,0 +1,484 @@ +/* + * test-core-command.cpp - test command functions + * + * Copyright (C) 2022 Sébastien Helleu <flashcode@flashtux.org> + * + * This file is part of WeeChat, the extensible chat client. + * + * WeeChat is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * WeeChat is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with WeeChat. If not, see <https://www.gnu.org/licenses/>. + */ + +#include "CppUTest/TestHarness.h" + +#include "tests/tests.h" + +extern "C" +{ +#ifndef HAVE_CONFIG_H +#define HAVE_CONFIG_H +#endif +#include "src/core/weechat.h" +#include "src/core/wee-command.h" +#include "src/core/wee-input.h" +#include "src/core/wee-string.h" +#include "src/gui/gui-buffer.h" +} + +#define WEE_CMD_BUFFER(__buffer_name, __command) \ + command_record (__buffer, __command); + +#define WEE_CMD_CORE(__command) \ + command_record ("core.weechat", __command); + +#define WEE_CHECK_MSG_BUFFER(__buffer_name, __message) \ + if (!record_search (__buffer_name, __message)) \ + { \ + char **msg = command_build_error ( \ + "Message not displayed on buffer " __buffer_name ": " \ + "\"" __message "\n" \ + "All messages displayed:\n"); \ + record_dump (msg); \ + FAIL(string_dyn_free (msg, 0)); \ + } + +#define WEE_CHECK_MSG_CORE(__message) \ + WEE_CHECK_MSG_BUFFER("core.weechat", __message); + + +TEST_GROUP(CoreCommand) +{ + void command_record (const char *buffer_name, const char *command) + { + struct t_gui_buffer *buffer; + + buffer = gui_buffer_search_by_full_name (buffer_name); + if (!buffer) + { + FAIL("Buffer not found"); + } + record_start (); + input_data (buffer, command, NULL); + record_stop (); + } + + char **command_build_error (const char *message) + { + char **msg; + + msg = string_dyn_alloc (1024); + string_dyn_concat (msg, message, -1); + return msg; + } +}; + +/* + * Tests functions: + * command_away + */ + +TEST(CoreCommand, Away) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_bar + */ + +TEST(CoreCommand, Bar) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_buffer + */ + +TEST(CoreCommand, Buffer) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_color + */ + +TEST(CoreCommand, Color) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_command + */ + +TEST(CoreCommand, Command) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_cursor + */ + +TEST(CoreCommand, Cursor) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_debug + */ + +TEST(CoreCommand, Debug) +{ + const char *command_debug_unicode = + "/debug unicode " + "\u00AD" /* soft hyphen */ + "\u00E9" /* é */ + "\u200B" /* zero width space */ + ""; + + /* test command "/debug list" */ + /* TODO: write tests */ + + /* test command "/debug buffer" */ + /* TODO: write tests */ + + /* test command "/debug certs" */ + /* TODO: write tests */ + + /* test command "/debug color" */ + /* TODO: write tests */ + + /* test command "/debug cursor" */ + /* TODO: write tests */ + + /* test command "/debug dirs" */ + /* TODO: write tests */ + + /* test command "/debug dump" */ + /* TODO: write tests */ + + /* test command "/debug hdata" */ + /* TODO: write tests */ + + /* test command "/debug hooks" */ + /* TODO: write tests */ + + /* test command "/debug infolists" */ + /* TODO: write tests */ + + /* test command "/debug libs" */ + /* TODO: write tests */ + + /* test command "/debug memory" */ + /* TODO: write tests */ + + /* test command "/debug mouse" */ + /* TODO: write tests */ + + /* test command "/debug set" */ + LONGS_EQUAL(0, weechat_debug_core); + WEE_CMD_CORE("/debug set core 1"); + LONGS_EQUAL(1, weechat_debug_core); + WEE_CMD_CORE("/debug set core 2"); + LONGS_EQUAL(2, weechat_debug_core); + WEE_CMD_CORE("/debug set core 0"); + LONGS_EQUAL(0, weechat_debug_core); + + /* test command "/debug tags" */ + /* TODO: write tests */ + + /* test command "/debug term" */ + /* TODO: write tests */ + + /* test command "/debug time" */ + /* TODO: write tests */ + + /* test command "/debug unicode" */ + WEE_CMD_CORE(command_debug_unicode); + WEE_CHECK_MSG_CORE(" \"\u00AD\" (173, U+00AD, 0xC2 0xAD): 2 / 1, 1 / 1, 1, 1"); + WEE_CHECK_MSG_CORE(" \"\u00E9\" (233, U+00E9, 0xC3 0xA9): 2 / 1, 1 / 1, 1, 1"); + WEE_CHECK_MSG_CORE(" \"\u200B\" (8203, U+200B, 0xE2 0x80 0x8B): 3 / 1, 1 / 0, 0, 0"); + + /* test command "/debug windows" */ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_eval + */ + +TEST(CoreCommand, Eval) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_filter + */ + +TEST(CoreCommand, Filter) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_help + */ + +TEST(CoreCommand, Help) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_history + */ + +TEST(CoreCommand, History) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_input + */ + +TEST(CoreCommand, Input) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_item + */ + +TEST(CoreCommand, Item) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_key + */ + +TEST(CoreCommand, Key) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_layout + */ + +TEST(CoreCommand, Layout) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_mouse + */ + +TEST(CoreCommand, Mouse) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_mute + */ + +TEST(CoreCommand, Mute) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_plugin + */ + +TEST(CoreCommand, Plugin) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_print + */ + +TEST(CoreCommand, Print) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_proxy + */ + +TEST(CoreCommand, Proxy) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_quit + */ + +TEST(CoreCommand, Quit) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_reload + */ + +TEST(CoreCommand, Reload) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_repeat + */ + +TEST(CoreCommand, Repeat) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_save + */ + +TEST(CoreCommand, Save) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_secure + */ + +TEST(CoreCommand, Secure) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_set + */ + +TEST(CoreCommand, Set) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_toggle + */ + +TEST(CoreCommand, Toggle) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_unset + */ + +TEST(CoreCommand, Unset) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_upgrade + */ + +TEST(CoreCommand, Upgrade) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_uptime + */ + +TEST(CoreCommand, Uptime) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_version + */ + +TEST(CoreCommand, Version) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_wait + */ + +TEST(CoreCommand, Wait) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * command_window + */ + +TEST(CoreCommand, Window) +{ + /* TODO: write tests */ +} diff --git a/tests/unit/plugins/irc/test-irc-protocol.cpp b/tests/unit/plugins/irc/test-irc-protocol.cpp index af49deb70..a561332d6 100644 --- a/tests/unit/plugins/irc/test-irc-protocol.cpp +++ b/tests/unit/plugins/irc/test-irc-protocol.cpp @@ -80,7 +80,7 @@ extern char *irc_protocol_cap_to_enable (const char *capabilities, #define CHECK_CORE(__message) \ if (!record_search ("core.weechat", __message)) \ { \ - char **msg = server_check_error ( \ + char **msg = server_build_error ( \ "Core message not displayed", \ __message, \ "All messages displayed"); \ @@ -91,7 +91,7 @@ extern char *irc_protocol_cap_to_enable (const char *capabilities, #define CHECK_SRV(__message) \ if (!record_search ("irc.server." IRC_FAKE_SERVER, __message)) \ { \ - char **msg = server_check_error ( \ + char **msg = server_build_error ( \ "Server message not displayed", \ __message, \ "All messages displayed"); \ @@ -115,7 +115,7 @@ extern char *irc_protocol_cap_to_enable (const char *capabilities, #define CHECK_CHAN(__message) \ if (!record_search ("irc." IRC_FAKE_SERVER ".#test", __message)) \ { \ - char **msg = server_check_error ( \ + char **msg = server_build_error ( \ "Channel message not displayed", \ __message, \ "All messages displayed"); \ @@ -126,7 +126,7 @@ extern char *irc_protocol_cap_to_enable (const char *capabilities, #define CHECK_PV(__nick, __message) \ if (!record_search ("irc." IRC_FAKE_SERVER "." __nick, __message)) \ { \ - char **msg = server_check_error ( \ + char **msg = server_build_error ( \ "Private message not displayed", \ __message, \ "All messages displayed"); \ @@ -137,7 +137,7 @@ extern char *irc_protocol_cap_to_enable (const char *capabilities, #define CHECK_NO_MSG \ if (arraylist_size (recorded_messages) > 0) \ { \ - char **msg = server_check_error ( \ + char **msg = server_build_error ( \ "Unexpected message(s) displayed", \ NULL, \ NULL); \ @@ -150,7 +150,7 @@ extern char *irc_protocol_cap_to_enable (const char *capabilities, && !arraylist_search (sent_messages, (void *)__message, \ NULL, NULL)) \ { \ - char **msg = server_check_error ( \ + char **msg = server_build_error ( \ "Message not sent to server", \ __message, \ "All messages sent"); \ @@ -160,7 +160,7 @@ extern char *irc_protocol_cap_to_enable (const char *capabilities, else if ((__message == NULL) \ && (arraylist_size (sent_messages) > 0)) \ { \ - char **msg = server_check_error ( \ + char **msg = server_build_error ( \ "Unexpected response(s) sent to the IRC server", \ NULL, \ NULL); \ @@ -413,7 +413,7 @@ TEST_GROUP(IrcProtocolWithServer) record_stop (); } - char **server_check_error (const char *msg1, const char *message, + char **server_build_error (const char *msg1, const char *message, const char *msg2) { char **msg; |