rmodifier: remove plugin (replaced by trigger)
This commit is contained in:
parent
d3281b7812
commit
3c398bd61d
@ -75,7 +75,6 @@ OPTION(ENABLE_FIFO "Enable FIFO plugin" ON)
|
||||
OPTION(ENABLE_IRC "Enable IRC plugin" ON)
|
||||
OPTION(ENABLE_LOGGER "Enable Logger plugin" ON)
|
||||
OPTION(ENABLE_RELAY "Enable Relay plugin" ON)
|
||||
OPTION(ENABLE_RMODIFIER "Enable Rmodifier plugin" ON)
|
||||
OPTION(ENABLE_SCRIPT "Enable Script plugin (scripts manager)" ON)
|
||||
OPTION(ENABLE_SCRIPTS "Enable script plugins (perl, python, ...)" ON)
|
||||
OPTION(ENABLE_PERL "Enable Perl scripting language" ON)
|
||||
|
@ -57,6 +57,7 @@ http://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
|
||||
* relay: add option relay.network.clients_purge_delay
|
||||
* relay: fix freeze after /upgrade when many disconnected clients still exist
|
||||
* relay: fix NULL pointer when reading buffer lines for irc backlog
|
||||
* rmodifier: remove plugin (replaced by trigger)
|
||||
* scripts: fix crash when a signal is received with type "int" and NULL pointer
|
||||
in signal_data
|
||||
* trigger: add trigger plugin: new command /trigger and file trigger.conf
|
||||
|
11
NEWS
11
NEWS
@ -15,6 +15,17 @@ http://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog]
|
||||
|
||||
== Version 0.4.4 (under dev)
|
||||
|
||||
=== Rmodifier replaced by Trigger plugin
|
||||
|
||||
The trigger plugin replaces the rmodifier plugin, which has been removed
|
||||
(and trigger has much more features than rmodifier).
|
||||
|
||||
Default triggers have same features as default rmodifiers (to hide passwords
|
||||
in commands and output).
|
||||
|
||||
If you added some custom rmodifiers, you must create similar triggers, see
|
||||
`/help trigger` and the complete trigger doc in the 'WeeChat User's guide'.
|
||||
|
||||
=== Bare display
|
||||
|
||||
A bare display mode has been added (for easy text selection and click on URLs),
|
||||
|
15
configure.ac
15
configure.ac
@ -108,7 +108,6 @@ AH_VERBATIM([PLUGIN_FIFO], [#undef PLUGIN_FIFO])
|
||||
AH_VERBATIM([PLUGIN_IRC], [#undef PLUGIN_IRC])
|
||||
AH_VERBATIM([PLUGIN_LOGGER], [#undef PLUGIN_LOGGER])
|
||||
AH_VERBATIM([PLUGIN_RELAY], [#undef PLUGIN_RELAY])
|
||||
AH_VERBATIM([PLUGIN_RMODIFIER], [#undef PLUGIN_RMODIFIER])
|
||||
AH_VERBATIM([PLUGIN_SCRIPT], [#undef PLUGIN_SCRIPT])
|
||||
AH_VERBATIM([PLUGIN_PERL], [#undef PLUGIN_PERL])
|
||||
AH_VERBATIM([PLUGIN_PYTHON], [#undef PLUGIN_PYTHON])
|
||||
@ -136,7 +135,6 @@ AC_ARG_ENABLE(fifo, [ --disable-fifo turn off Fifo plugin (def
|
||||
AC_ARG_ENABLE(irc, [ --disable-irc turn off IRC plugin (default=compiled)],enable_irc=$enableval,enable_irc=yes)
|
||||
AC_ARG_ENABLE(logger, [ --disable-logger turn off Logger plugin (default=compiled)],enable_logger=$enableval,enable_logger=yes)
|
||||
AC_ARG_ENABLE(relay, [ --disable-relay turn off Relay plugin (default=compiled)],enable_relay=$enableval,enable_relay=yes)
|
||||
AC_ARG_ENABLE(rmodifier, [ --disable-rmodifier turn off Rmodifier plugin (default=compiled)],enable_rmodifier=$enableval,enable_rmodifier=yes)
|
||||
AC_ARG_ENABLE(script, [ --disable-script turn off Script plugin (default=compiled)],enable_script=$enableval,enable_script=yes)
|
||||
AC_ARG_ENABLE(scripts, [ --disable-scripts turn off script plugins (perl, python, ...) (default=compiled if found)],enable_scripts=$enableval,enable_scripts=yes)
|
||||
AC_ARG_ENABLE(perl, [ --disable-perl turn off Perl script plugin (default=compiled if found)],enable_perl=$enableval,enable_perl=yes)
|
||||
@ -404,14 +402,6 @@ else
|
||||
not_asked="$not_asked relay"
|
||||
fi
|
||||
|
||||
# ------------------------------- rmodifier ------------------------------------
|
||||
|
||||
if test "x$enable_rmodifier" = "xyes" ; then
|
||||
AC_DEFINE(PLUGIN_RMODIFIER)
|
||||
else
|
||||
not_asked="$not_asked rmodifier"
|
||||
fi
|
||||
|
||||
# --------------------------------- script -------------------------------------
|
||||
|
||||
if test "x$enable_script" = "xyes" ; then
|
||||
@ -1131,7 +1121,6 @@ AM_CONDITIONAL(PLUGIN_FIFO, test "$enable_fifo" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_IRC, test "$enable_irc" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_LOGGER, test "$enable_logger" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_RELAY, test "$enable_relay" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_RMODIFIER, test "$enable_rmodifier" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_SCRIPT, test "$enable_script" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_PERL, test "$enable_perl" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_PYTHON, test "$enable_python" = "yes")
|
||||
@ -1164,7 +1153,6 @@ AC_OUTPUT([Makefile
|
||||
src/plugins/irc/Makefile
|
||||
src/plugins/logger/Makefile
|
||||
src/plugins/relay/Makefile
|
||||
src/plugins/rmodifier/Makefile
|
||||
src/plugins/script/Makefile
|
||||
src/plugins/perl/Makefile
|
||||
src/plugins/python/Makefile
|
||||
@ -1216,9 +1204,6 @@ fi
|
||||
if test "x$enable_relay" = "xyes"; then
|
||||
listplugins="$listplugins relay"
|
||||
fi
|
||||
if test "x$enable_rmodifier" = "xyes"; then
|
||||
listplugins="$listplugins rmodifier"
|
||||
fi
|
||||
if test "x$enable_script" = "xyes"; then
|
||||
listplugins="$listplugins script"
|
||||
fi
|
||||
|
1
debian/weechat-plugins.install
vendored
1
debian/weechat-plugins.install
vendored
@ -8,5 +8,4 @@ usr/lib/weechat/plugins/lua.so
|
||||
usr/lib/weechat/plugins/tcl.so
|
||||
usr/lib/weechat/plugins/script.so
|
||||
usr/lib/weechat/plugins/relay.so
|
||||
usr/lib/weechat/plugins/rmodifier.so
|
||||
usr/lib/weechat/plugins/trigger.so
|
||||
|
@ -56,8 +56,6 @@
|
||||
|
||||
| relay | relay_relays | Protokoll.Name des aktuellen Relays von der Relay-Erweiterung
|
||||
|
||||
| rmodifier | rmodifier | Liste der rmodifier
|
||||
|
||||
| ruby | ruby_script | Liste der Skripten
|
||||
|
||||
| script | script_files | Dateien die sich in den Skript-Verzeichnissen befinden
|
||||
|
@ -26,8 +26,6 @@
|
||||
|
||||
| relay | relay | Liste der Relay-Clients | Relay Pointer (optional) | -
|
||||
|
||||
| rmodifier | rmodifier | Liste der rmodifier | rmodifier Pointer (optional) | rmodifier Name (darf mit einem "*" als Platzhalter beginnen oder enden) (optional)
|
||||
|
||||
| ruby | ruby_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (darf mit einem "*" als Platzhalter beginnen oder enden) (optional)
|
||||
|
||||
| script | script_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes, mit Dateierweiterung (darf mit einem "*" als Platzhalter beginnen oder enden) (optional)
|
||||
|
@ -1,31 +0,0 @@
|
||||
[[command_rmodifier_rmodifier]]
|
||||
[command]*`rmodifier`* wandelt Schlüsselwörter mit regulären Ausdrücken (regelt die Darstellung von Texten in WeeChat)::
|
||||
|
||||
----
|
||||
/rmodifier list|listdefault
|
||||
add <name> <modifiers> <groups> <regex>
|
||||
del <name>|-all [<name>...]
|
||||
missing
|
||||
default -yes
|
||||
|
||||
list: zeigt alle rmodifier an
|
||||
listdefault: zeigt die Standardeinstellung für rmodifier an
|
||||
add: einen rmodifier hinzufügen
|
||||
name: Name des rmodifier
|
||||
modifiers: durch Kommata getrennte Liste der modifier
|
||||
groups: Aktion auf Gruppen (groups) anwenden, die durch reguläre Ausdrücke abgefragt werden (innerhalb der runden Klammern): durch Kommata getrennte Liste der Gruppen (von 1 bis 9). Optional kann nach der Nummer für die Gruppe ein "*" gesetzt werden um diese Gruppe auszublenden
|
||||
regex: erweiterter regulärer POSIX Ausdruck (zwischen Groß- und Kleinschreibung wird nicht unterschieden. Um zwischen Groß- und Kleinschreibung zu unterscheiden muss zu Beginn "(?-i)" genutzt werden)
|
||||
del: löscht einen rmodifier Eintrag
|
||||
-all: löscht alle rmodifiers Einträge
|
||||
missing: fügt fehlende rmodifiers hinzu
|
||||
default: setzt die rmodifier auf seine Standardwerte zurück
|
||||
|
||||
Beispiele:
|
||||
verbirgt die Eingabe nach dem Befehl /passwort:
|
||||
/rmodifier add passwort input_text_display 1,2* ^(/passwort +)(.*)
|
||||
lösche rmodifier "passwort":
|
||||
/rmodifier del passwort
|
||||
lösche alle rmodifiers:
|
||||
/rmodifier del -all
|
||||
----
|
||||
|
@ -1,5 +0,0 @@
|
||||
* [[option_rmodifier.look.hide_char]] *rmodifier.look.hide_char*
|
||||
** Beschreibung: `Zeichen, das anstelle der eigentlichen Eingabe angezeigt wird`
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette (Standardwert: `"*"`)
|
||||
|
@ -71,9 +71,6 @@ $HOME/.weechat/logger.conf::
|
||||
$HOME/.weechat/relay.conf::
|
||||
Konfigurationsdatei für 'relay' Erweiterung
|
||||
|
||||
$HOME/.weechat/rmodifier.conf::
|
||||
Konfigurationsdatei für 'rmodifier' Erweiterung
|
||||
|
||||
$HOME/.weechat/script.conf::
|
||||
Konfigurationsdatei für 'script' Erweiterung
|
||||
|
||||
|
@ -219,9 +219,6 @@ Liste von häufig verwendeten Optionen:
|
||||
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
||||
kompiliert <<relay_plugin,Relay Erweiterung>>.
|
||||
|
||||
| ENABLE_RMODIFIER | `ON`, `OFF` | ON |
|
||||
kompiliert <<rmodifier_plugin,Rmodifier Erweiterung>>.
|
||||
|
||||
| ENABLE_RUBY | `ON`, `OFF` | ON |
|
||||
kompiliert <<scripts_plugins,Ruby Erweiterung>>.
|
||||
|
||||
@ -1751,7 +1748,6 @@ Standarderweiterungen:
|
||||
| irc | IRC Chat-Protokoll
|
||||
| logger | erstellt Protokolldateien von Buffern
|
||||
| relay | Daten via Netzwerk übermitteln
|
||||
| rmodifier | wandelt Schlüsselwörter mit regulären Ausdrücken
|
||||
| script | Skripten-Manager
|
||||
| python | Python-Skript API
|
||||
| perl | Perl-Skript API
|
||||
@ -2779,75 +2775,6 @@ websocket = new WebSocket("ws://server.com:9000/weechat");
|
||||
Der Port (im Beispiel: 9000) ist der Port der in der Relay Erweiterung angegeben wurde.
|
||||
Die URI muss immer auf "/weechat" enden ('irc' und 'weechat' Protokoll).
|
||||
|
||||
[[rmodifier_plugin]]
|
||||
=== Rmodifier Erweiterung
|
||||
|
||||
Mittels der Rmodifer Erweiterung kann man Schlüsselwörter mittels regulären Ausdrücken
|
||||
wandeln. Ein typischer Anwendungsfall ist das Passwörter bei der Eingabe verborgen werden,
|
||||
oder das WeeChat diese verbirgt wenn sie im Befehlsverlauf gesichert werden.
|
||||
Ein einfaches Anwendungsbeispiel. Es ist möglich jedes einzelne Zeichen eines Passwortes
|
||||
durch das Zeichen `*` zu ersetzen.
|
||||
|
||||
[[rmodifier_options]]
|
||||
==== Optionen (rmodifier.conf)
|
||||
|
||||
Sektionen:
|
||||
|
||||
[width="100%",cols="3m,6m,16",options="header"]
|
||||
|===
|
||||
| Section | Control command | Beschreibung
|
||||
| look | /set rmodifier.look.* | Erscheinungsbild
|
||||
| modifier | <<command_rmodifier_rmodifier,/rmodifier add>> +
|
||||
/set rmodifier.modifier.* | Rmodifiers
|
||||
|===
|
||||
|
||||
Optionen:
|
||||
|
||||
include::autogen/user/rmodifier_options.txt[]
|
||||
|
||||
[[rmodifier_commands]]
|
||||
==== Befehle
|
||||
|
||||
include::autogen/user/rmodifier_commands.txt[]
|
||||
|
||||
[[rmodifier_creation]]
|
||||
==== Erstellen eines rmodifier
|
||||
|
||||
Ein rmodifier besteht aus drei Elementen:
|
||||
|
||||
. ein oder mehrere "modifiers"
|
||||
. ein regulärer Ausdruck um "Gruppen" zu erkennen
|
||||
. eine Zeichenkette die als Textausgabe von "Gruppen" erkannt werden soll
|
||||
|
||||
Um eine Auflistung der modifiers zu erhalten die von WeeChat oder einer
|
||||
Erweiterung genutzt werden siehe ''WeeChat Plugin API Reference', Funktion 'weechat_hook_modifier'.
|
||||
|
||||
Für jede erkannte Gruppe sind folgende Aktionen möglich:
|
||||
|
||||
* Gruppe wird in der vorliegenden Form beibehalten (wenn man die Gruppennummer nutzt)
|
||||
* alle Zeichen der Gruppe werden ersetzt um deren Inhalt zu verbergen (Gruppennummer + `*`)
|
||||
* Gruppe wird entfernt (falls Gruppe nicht in Zeichenkette genutzt wird)
|
||||
|
||||
Beispiel der rmodifier-Standardeinstellung für den Befehl `/oper`:
|
||||
|
||||
* modifiers: `history_add,input_text_display`
|
||||
** `history_add`: wird aufgerufen sobald WeeChat einen Befehl im Befehlsverlauf sichert
|
||||
** `input_text_display`: wird aufgerufen sobald sich die Eingabezeile ändert
|
||||
(dies hat nur Einfluss auf die Darstellung aber nicht auf den Inhalt der Befehlszeile)
|
||||
* regulärer Ausdruck: `^(/oper +\S+ +)(.*)`
|
||||
* Gruppen: `1,2*`
|
||||
|
||||
Bei jedem Aufruf von "history_add" oder "input_text_display" durch modifier wird der
|
||||
reguläre Ausdruck überprüft. Stimmen die Zeichenketten überein wird die Zeichenkette
|
||||
durch das definierte Zeichen ersetzt.
|
||||
|
||||
In obigem Beispiel wird die Ausgabe für Gruppe 1 beibehalten und für die Gruppe 2
|
||||
werden alle Zeichen ersetzt. Das Zeichen welches zum Ersetzten genutzt werden soll
|
||||
kann in der Konfiguration bestimmt werden (Option: 'rmodifier.look.hide_char').
|
||||
|
||||
Lautet die Befehlszeile `/oper nick password` wird diese in der Befehlszeile als
|
||||
`/oper nick ********` dargestellt.
|
||||
|
||||
[[scripts_plugins]]
|
||||
=== Erweiterungen für Skripten
|
||||
|
||||
|
@ -92,7 +92,6 @@ plugin_list = {
|
||||
'irc': 'co',
|
||||
'logger': 'o',
|
||||
'relay': 'o',
|
||||
'rmodifier': 'o',
|
||||
'script': 'o',
|
||||
'perl': '',
|
||||
'python': '',
|
||||
@ -118,7 +117,6 @@ ignore_options = (
|
||||
'logger\.level\..*',
|
||||
'logger\.mask\..*',
|
||||
'relay\.port\..*',
|
||||
'rmodifier\.modifier\..*',
|
||||
'trigger\.trigger\..*',
|
||||
'weechat\.palette\..*',
|
||||
'weechat\.proxy\..*',
|
||||
|
@ -56,8 +56,6 @@
|
||||
|
||||
| relay | relay_relays | protocol.name of current relays for relay plugin
|
||||
|
||||
| rmodifier | rmodifier | list of rmodifiers
|
||||
|
||||
| ruby | ruby_script | list of scripts
|
||||
|
||||
| script | script_files | files in script directories
|
||||
|
@ -26,8 +26,6 @@
|
||||
|
||||
| relay | relay | list of relay clients | relay pointer (optional) | -
|
||||
|
||||
| rmodifier | rmodifier | list of rmodifiers | rmodifier pointer (optional) | rmodifier name (can start or end with "*" as joker) (optional)
|
||||
|
||||
| ruby | ruby_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as wildcard) (optional)
|
||||
|
||||
| script | script_script | list of scripts | script pointer (optional) | script name with extension (can start or end with "*" as wildcard) (optional)
|
||||
|
@ -1,31 +0,0 @@
|
||||
[[command_rmodifier_rmodifier]]
|
||||
[command]*`rmodifier`* alter modifier strings with regular expressions::
|
||||
|
||||
----
|
||||
/rmodifier list|listdefault
|
||||
add <name> <modifiers> <groups> <regex>
|
||||
del <name>|-all [<name>...]
|
||||
missing
|
||||
default -yes
|
||||
|
||||
list: list all rmodifiers
|
||||
listdefault: list default rmodifiers
|
||||
add: add a rmodifier
|
||||
name: name of rmodifier
|
||||
modifiers: comma separated list of modifiers
|
||||
groups: action on groups captured in regular expression (inside parentheses): comma separated list of groups (from 1 to 9) with optional "*" after number to hide the group
|
||||
regex: POSIX extended regular expression (case insensitive, can start by "(?-i)" to become case sensitive)
|
||||
del: delete a rmodifier
|
||||
-all: delete all rmodifiers
|
||||
missing: add missing rmodifiers
|
||||
default: restore default rmodifiers
|
||||
|
||||
Examples:
|
||||
hide everything typed after a command /password:
|
||||
/rmodifier add password input_text_display 1,2* ^(/password +)(.*)
|
||||
delete rmodifier "password":
|
||||
/rmodifier del password
|
||||
delete all rmodifiers:
|
||||
/rmodifier del -all
|
||||
----
|
||||
|
@ -1,5 +0,0 @@
|
||||
* [[option_rmodifier.look.hide_char]] *rmodifier.look.hide_char*
|
||||
** description: `char used to hide part of a string`
|
||||
** type: string
|
||||
** values: any string (default value: `"*"`)
|
||||
|
@ -70,9 +70,6 @@ $HOME/.weechat/logger.conf::
|
||||
$HOME/.weechat/relay.conf::
|
||||
configuration file for 'relay' plugin
|
||||
|
||||
$HOME/.weechat/rmodifier.conf::
|
||||
configuration file for 'rmodifier' plugin
|
||||
|
||||
$HOME/.weechat/script.conf::
|
||||
configuration file for 'script' plugin
|
||||
|
||||
|
@ -45,33 +45,32 @@ The main WeeChat directories are:
|
||||
|
||||
[width="100%",cols="1v,5",options="header"]
|
||||
|===
|
||||
| Directory | Description
|
||||
| src/ | Root of sources
|
||||
| core/ | Core functions: entry point, internal structures
|
||||
| gui/ | Functions for buffers, windows, ... (used by all interfaces)
|
||||
| curses/ | Curses interface
|
||||
| plugins/ | Plugin and scripting API
|
||||
| alias/ | Alias plugin
|
||||
| aspell/ | Aspell plugin
|
||||
| charset/ | Charset plugin
|
||||
| fifo/ | Fifo plugin (FIFO pipe used to remotely send commands to WeeChat)
|
||||
| irc/ | IRC (Internet Relay Chat) plugin
|
||||
| logger/ | Logger plugin (write messages displayed to files)
|
||||
| relay/ | Relay plugin (irc proxy + relay for remote interfaces)
|
||||
| rmodifier/ | Rmodifier plugin (alter modifier strings with regular expressions)
|
||||
| script/ | Scripts manager
|
||||
| python/ | Python scripting API
|
||||
| perl/ | Perl scripting API
|
||||
| ruby/ | Ruby scripting API
|
||||
| lua/ | Lua scripting API
|
||||
| tcl/ | Tcl scripting API
|
||||
| guile/ | Guile (scheme) scripting API
|
||||
| trigger/ | Trigger plugin
|
||||
| xfer/ | Xfer plugin (IRC DCC file/chat)
|
||||
| doc/ | Documentation
|
||||
| po/ | Translations files (gettext)
|
||||
| test/ | Tools/files to test WeeChat (like Weercd, an IRC server)
|
||||
| debian/ | Debian packaging
|
||||
| Directory | Description
|
||||
| src/ | Root of sources
|
||||
| core/ | Core functions: entry point, internal structures
|
||||
| gui/ | Functions for buffers, windows, ... (used by all interfaces)
|
||||
| curses/ | Curses interface
|
||||
| plugins/ | Plugin and scripting API
|
||||
| alias/ | Alias plugin
|
||||
| aspell/ | Aspell plugin
|
||||
| charset/ | Charset plugin
|
||||
| fifo/ | Fifo plugin (FIFO pipe used to remotely send commands to WeeChat)
|
||||
| irc/ | IRC (Internet Relay Chat) plugin
|
||||
| logger/ | Logger plugin (write messages displayed to files)
|
||||
| relay/ | Relay plugin (irc proxy + relay for remote interfaces)
|
||||
| script/ | Scripts manager
|
||||
| python/ | Python scripting API
|
||||
| perl/ | Perl scripting API
|
||||
| ruby/ | Ruby scripting API
|
||||
| lua/ | Lua scripting API
|
||||
| tcl/ | Tcl scripting API
|
||||
| guile/ | Guile (scheme) scripting API
|
||||
| trigger/ | Trigger plugin
|
||||
| xfer/ | Xfer plugin (IRC DCC file/chat)
|
||||
| doc/ | Documentation
|
||||
| po/ | Translations files (gettext)
|
||||
| test/ | Tools/files to test WeeChat (like Weercd, an IRC server)
|
||||
| debian/ | Debian packaging
|
||||
|===
|
||||
|
||||
[[sources]]
|
||||
@ -239,13 +238,6 @@ WeeChat "core" is located in following directories:
|
||||
| relay-weechat-msg.c | Send binary messages to clients
|
||||
| relay-weechat-nicklist.c | Nicklist functions
|
||||
| relay-weechat-protocol.c | Read commands from clients
|
||||
| rmodifier/ | Rmodifier plugin
|
||||
| rmodifier.c | Main rmodifier functions
|
||||
| rmodifier-command.c | Rmodifier commands
|
||||
| rmodifier-completion.c | Rmodifier completions
|
||||
| rmodifier-config.c | Rmodifier config options (file rmodifier.conf)
|
||||
| rmodifier-debug.c | Rmodifier debug functions
|
||||
| rmodifier-info.c | Rmodifier info/infolists/hdata
|
||||
| ruby/ | Ruby plugin
|
||||
| weechat-ruby.c | Main ruby functions (load/unload scripts, execute ruby code)
|
||||
| weechat-ruby-api.c | Ruby scripting API functions
|
||||
|
@ -218,9 +218,6 @@ List of commonly used options:
|
||||
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
||||
Compile <<relay_plugin,Relay plugin>>.
|
||||
|
||||
| ENABLE_RMODIFIER | `ON`, `OFF` | ON |
|
||||
Compile <<rmodifier_plugin,Rmodifier plugin>>.
|
||||
|
||||
| ENABLE_RUBY | `ON`, `OFF` | ON |
|
||||
Compile <<scripts_plugins,Ruby plugin>>.
|
||||
|
||||
@ -1715,23 +1712,22 @@ Default plugins are:
|
||||
|
||||
[width="50%",cols="^1,5",options="header"]
|
||||
|===
|
||||
| Plugin | Description
|
||||
| alias | Define alias for commands
|
||||
| aspell | Spell checking for command line
|
||||
| charset | Charset decoding/encoding for buffers
|
||||
| fifo | FIFO pipe used to remotely send commands to WeeChat
|
||||
| irc | IRC chat protocol
|
||||
| logger | Log buffers to files
|
||||
| relay | Relay data via network
|
||||
| rmodifier | Alter modifier strings with regular expressions
|
||||
| script | Scripts manager
|
||||
| python | Python scripting API
|
||||
| perl | Perl scripting API
|
||||
| ruby | Ruby scripting API
|
||||
| lua | Lua scripting API
|
||||
| tcl | Tcl scripting API
|
||||
| guile | Guile (scheme) scripting API
|
||||
| xfer | File transfer and direct chat
|
||||
| Plugin | Description
|
||||
| alias | Define alias for commands
|
||||
| aspell | Spell checking for command line
|
||||
| charset | Charset decoding/encoding for buffers
|
||||
| fifo | FIFO pipe used to remotely send commands to WeeChat
|
||||
| irc | IRC chat protocol
|
||||
| logger | Log buffers to files
|
||||
| relay | Relay data via network
|
||||
| script | Scripts manager
|
||||
| python | Python scripting API
|
||||
| perl | Perl scripting API
|
||||
| ruby | Ruby scripting API
|
||||
| lua | Lua scripting API
|
||||
| tcl | Tcl scripting API
|
||||
| guile | Guile (scheme) scripting API
|
||||
| xfer | File transfer and direct chat
|
||||
|===
|
||||
|
||||
To learn more about plugin or script development (through API), please read
|
||||
@ -2723,74 +2719,6 @@ websocket = new WebSocket("ws://server.com:9000/weechat");
|
||||
The port (9000 in example) is the port defined in Relay plugin.
|
||||
The URI must always end with "/weechat" (for 'irc' and 'weechat' protocols).
|
||||
|
||||
[[rmodifier_plugin]]
|
||||
=== Rmodifier plugin
|
||||
|
||||
The Rmodifier plugin lets you alter modifier strings using regular expressions.
|
||||
Typical use is to hide password when you type them, or when WeeChat saves
|
||||
them in command history. For example, it is possible to replace each char in
|
||||
these passwords by `*`.
|
||||
|
||||
[[rmodifier_options]]
|
||||
==== Options (rmodifier.conf)
|
||||
|
||||
Sections:
|
||||
|
||||
[width="100%",cols="3m,6m,16",options="header"]
|
||||
|===
|
||||
| Section | Control command | Description
|
||||
| look | /set rmodifier.look.* | Look and feel
|
||||
| modifier | <<command_rmodifier_rmodifier,/rmodifier add>> +
|
||||
/set rmodifier.modifier.* | Rmodifiers
|
||||
|===
|
||||
|
||||
Options:
|
||||
|
||||
include::autogen/user/rmodifier_options.txt[]
|
||||
|
||||
[[rmodifier_commands]]
|
||||
==== Commands
|
||||
|
||||
include::autogen/user/rmodifier_commands.txt[]
|
||||
|
||||
[[rmodifier_creation]]
|
||||
==== Rmodifier creation
|
||||
|
||||
A rmodifier consists of three elements:
|
||||
|
||||
. one or more "modifiers"
|
||||
. a regular expression, to capture "groups"
|
||||
. a string that describes output using number of "groups" captured in regular
|
||||
expression
|
||||
|
||||
For list of modifiers used by WeeChat or plugins, see
|
||||
'WeeChat Plugin API Reference', function 'weechat_hook_modifier'.
|
||||
|
||||
For each captured group, following actions are possible:
|
||||
|
||||
* keep group as-is (by using group number)
|
||||
* replace all chars in group to hide content (group number + `*`)
|
||||
* remove group (if group is not used in string)
|
||||
|
||||
Example of default rmodifier for command `/oper`:
|
||||
|
||||
* modifiers: `history_add,input_text_display`
|
||||
** `history_add`: called when WeeChat stores command in history
|
||||
** `input_text_display`: called when command line has changed
|
||||
(applies only on display, not content of command line)
|
||||
* regular expression: `^(/oper +\S+ +)(.*)`
|
||||
* groups: `1,2*`
|
||||
|
||||
Each time modifiers "history_add" or "input_text_display" are called, regular
|
||||
expression is checked. If string matches, then it is replaced by captured groups,
|
||||
as defined in string with groups.
|
||||
|
||||
In this example, we keep number 1 as-is, and we replace all chars of group 2 by
|
||||
replacement char defined in configuration (option 'rmodifier.look.hide_char').
|
||||
|
||||
If command line contains: `/oper nick password` then display becomes:
|
||||
`/oper nick ********`.
|
||||
|
||||
[[scripts_plugins]]
|
||||
=== Scripts plugins
|
||||
|
||||
|
@ -56,8 +56,6 @@
|
||||
|
||||
| relay | relay_relays | protocole.nom des relais courants pour l'extension relay
|
||||
|
||||
| rmodifier | rmodifier | liste des rmodifiers
|
||||
|
||||
| ruby | ruby_script | liste des scripts
|
||||
|
||||
| script | script_files | fichiers dans les répertoires de script
|
||||
|
@ -26,8 +26,6 @@
|
||||
|
||||
| relay | relay | liste des clients pour le relai | pointeur vers le relay (optionnel) | -
|
||||
|
||||
| rmodifier | rmodifier | liste des rmodifiers | pointeur vers le rmodifier (optionnel) | nom du rmodifier (peut démarrer ou se terminer par "*" comme caractère joker) (optionnel)
|
||||
|
||||
| ruby | ruby_script | liste des scripts | pointeur vers le script (optionnel) | nom de script (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
||||
| script | script_script | liste des scripts | pointeur vers le script (optionnel) | nom du script avec extension (peut démarrer ou se terminer par "*" comme joker) (optionnel)
|
||||
|
@ -1,31 +0,0 @@
|
||||
[[command_rmodifier_rmodifier]]
|
||||
[command]*`rmodifier`* modifier des chaînes de "modifier" avec des expressions régulières::
|
||||
|
||||
----
|
||||
/rmodifier list|listdefault
|
||||
add <nom> <modifiers> <groupes> <regex>
|
||||
del <nom>|-all [<nom>...]
|
||||
missing
|
||||
default -yes
|
||||
|
||||
list: lister les rmodifiers
|
||||
listdefault: lister les rmodifiers par défaut
|
||||
add: ajouter un rmodifier
|
||||
name: nom du rmodifier
|
||||
modifiers: liste de modifiers (séparés par une virgule)
|
||||
groupes: action sur les groupes capturés dans l'expression régulière (entre parenthèses): liste de groupes (séparés par une virgule) (de 1 à 9) avec en option "*" après le nombre pour cacher le groupe
|
||||
regex: expression régulière POSIX étendue (insensible à la casse, peut commencer par "(?-i)" pour devenir sensible à la casse)
|
||||
del: supprimer un rmodifier
|
||||
-all: supprimer tous les rmodifiers
|
||||
missing: ajouter les rmodifiers manquants
|
||||
default: restaurer les rmodifiers par défaut
|
||||
|
||||
Exemples:
|
||||
cacher tout ce qui est tapé après la commande /password:
|
||||
/rmodifier add password input_text_display 1,2* ^(/password +)(.*)
|
||||
supprimer le rmodifier "password":
|
||||
/rmodifier del password
|
||||
supprimer tous les rmodifiers:
|
||||
/rmodifier del -all
|
||||
----
|
||||
|
@ -1,5 +0,0 @@
|
||||
* [[option_rmodifier.look.hide_char]] *rmodifier.look.hide_char*
|
||||
** description: `caractère utilisé pour cacher une partie de la chaîne`
|
||||
** type: chaîne
|
||||
** valeurs: toute chaîne (valeur par défaut: `"*"`)
|
||||
|
@ -72,9 +72,6 @@ $HOME/.weechat/logger.conf::
|
||||
$HOME/.weechat/relay.conf::
|
||||
fichier de configuration pour l'extension 'relay'
|
||||
|
||||
$HOME/.weechat/rmodifier.conf::
|
||||
fichier de configuration pour l'extension 'rmodifier'
|
||||
|
||||
$HOME/.weechat/script.conf::
|
||||
fichier de configuration pour l'extension 'script'
|
||||
|
||||
|
@ -46,33 +46,32 @@ Les répertoires principaux de WeeChat sont :
|
||||
|
||||
[width="100%",cols="1v,5",options="header"]
|
||||
|===
|
||||
| Répertoire | Description
|
||||
| src/ | Racine des sources
|
||||
| core/ | Fonctions du cœur : point d'entrée, structures internes
|
||||
| gui/ | Fonctions pour les tampons, fenêtres, ... (utilisées par toutes les interfaces)
|
||||
| curses/ | Interface Curses
|
||||
| plugins/ | API extension/script
|
||||
| alias/ | Extension Alias
|
||||
| aspell/ | Extension Aspell
|
||||
| charset/ | Extension Charset
|
||||
| fifo/ | Extension Fifo (tube FIFO utilisé pour envoyer des commandes à WeeChat)
|
||||
| irc/ | Extension IRC (Internet Relay Chat)
|
||||
| logger/ | Extension Logger (enregistrer les messages affichés dans des fichiers)
|
||||
| relay/ | Extension Relay (proxy IRC + relai pour interfaces distantes)
|
||||
| rmodifier/ | Extension Rmodifier (modifier des chaînes de modificateur avec des expressions régulières)
|
||||
| script/ | Gestionnaire de scripts
|
||||
| python/ | API script Python
|
||||
| perl/ | API script Perl
|
||||
| ruby/ | API script Ruby
|
||||
| lua/ | API script Lua
|
||||
| tcl/ | API script Tcl
|
||||
| guile/ | API script Guile (scheme)
|
||||
| trigger/ | Extension Trigger
|
||||
| xfer/ | Extension Xfer (IRC DCC fichier/discussion)
|
||||
| doc/ | Documentation
|
||||
| po/ | Fichiers de traductions (gettext)
|
||||
| test/ | Outils/fichiers pour tester WeeChat (comme Weercd, un serveur IRC)
|
||||
| debian/ | Empaquetage Debian
|
||||
| Répertoire | Description
|
||||
| src/ | Racine des sources
|
||||
| core/ | Fonctions du cœur : point d'entrée, structures internes
|
||||
| gui/ | Fonctions pour les tampons, fenêtres, ... (utilisées par toutes les interfaces)
|
||||
| curses/ | Interface Curses
|
||||
| plugins/ | API extension/script
|
||||
| alias/ | Extension Alias
|
||||
| aspell/ | Extension Aspell
|
||||
| charset/ | Extension Charset
|
||||
| fifo/ | Extension Fifo (tube FIFO utilisé pour envoyer des commandes à WeeChat)
|
||||
| irc/ | Extension IRC (Internet Relay Chat)
|
||||
| logger/ | Extension Logger (enregistrer les messages affichés dans des fichiers)
|
||||
| relay/ | Extension Relay (proxy IRC + relai pour interfaces distantes)
|
||||
| script/ | Gestionnaire de scripts
|
||||
| python/ | API script Python
|
||||
| perl/ | API script Perl
|
||||
| ruby/ | API script Ruby
|
||||
| lua/ | API script Lua
|
||||
| tcl/ | API script Tcl
|
||||
| guile/ | API script Guile (scheme)
|
||||
| trigger/ | Extension Trigger
|
||||
| xfer/ | Extension Xfer (IRC DCC fichier/discussion)
|
||||
| doc/ | Documentation
|
||||
| po/ | Fichiers de traductions (gettext)
|
||||
| test/ | Outils/fichiers pour tester WeeChat (comme Weercd, un serveur IRC)
|
||||
| debian/ | Empaquetage Debian
|
||||
|===
|
||||
|
||||
[[sources]]
|
||||
@ -240,13 +239,6 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
|
||||
| relay-weechat-msg.c | Envoi de messages binaires aux clients
|
||||
| relay-weechat-nicklist.c | Fonctions pour la liste de pseudos
|
||||
| relay-weechat-protocol.c | Lecture des commandes des clients
|
||||
| rmodifier/ | Extension Rmodifier
|
||||
| rmodifier.c | Fonctions principales de Rmodifier
|
||||
| rmodifier-command.c | Commandes de Rmodifier
|
||||
| rmodifier-completion.c | Complétions de Rmodifier
|
||||
| rmodifier-config.c | Options de configuration pour Rmodifier (fichier rmodifier.conf)
|
||||
| rmodifier-debug.c | Fonctions de debug pour Rmodifier
|
||||
| rmodifier-info.c | Info/infolists/hdata pour Rmodifier
|
||||
| ruby/ | Extension Ruby
|
||||
| weechat-ruby.c | Fonctions principales pour Ruby (chargement/déchargement des scripts, exécution de code Ruby)
|
||||
| weechat-ruby-api.c | Fonctions de l'API script Ruby
|
||||
|
@ -220,9 +220,6 @@ Liste des options couramment utilisées :
|
||||
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
||||
Compiler <<relay_plugin,l'extension Relay>>.
|
||||
|
||||
| ENABLE_RMODIFIER | `ON`, `OFF` | ON |
|
||||
Compiler <<rmodifier_plugin,l'extension Rmodifier>>.
|
||||
|
||||
| ENABLE_RUBY | `ON`, `OFF` | ON |
|
||||
Compiler <<scripts_plugins,l'extension Ruby>>.
|
||||
|
||||
@ -1777,7 +1774,6 @@ Les extensions par défaut sont :
|
||||
| irc | Discussion avec le protocole IRC
|
||||
| logger | Enregistrement des tampons dans des fichiers
|
||||
| relay | Relai de données via le réseau
|
||||
| rmodifier | Modification des chaînes de modificateur avec des expressions régulières
|
||||
| script | Gestionnaire de scripts
|
||||
| python | Interface (API) pour scripts Python
|
||||
| perl | Interface (API) pour scripts Perl
|
||||
@ -2815,79 +2811,6 @@ Le port (9000 dans l'exemple) est le port défini dans l'extension Relay.
|
||||
L'URI doit toujours se terminer par "/weechat" (pour les protocoles 'irc' et
|
||||
'weechat').
|
||||
|
||||
[[rmodifier_plugin]]
|
||||
=== Extension Rmodifier
|
||||
|
||||
L'extension Rmodifier vous permet de modifier les chaînes de modificateur avec
|
||||
des expressions régulières.
|
||||
|
||||
L'utilisation typique est pour cacher les mots de passe lorsque vous les tapez,
|
||||
ou lorsque WeeChat les sauvegarde dans l'historique des commandes. Il est
|
||||
possible par exemple de remplacer chaque lettre de ces mots de passe par `*`.
|
||||
|
||||
[[rmodifier_options]]
|
||||
==== Options (rmodifier.conf)
|
||||
|
||||
Sections :
|
||||
|
||||
[width="100%",cols="3m,6m,16",options="header"]
|
||||
|===
|
||||
| Section | Commande de contrôle | Description
|
||||
| look | /set rmodifier.look.* | Aspect/présentation
|
||||
| modifier | <<command_rmodifier_rmodifier,/rmodifier add>> +
|
||||
/set rmodifier.modifier.* | Rmodifiers
|
||||
|===
|
||||
|
||||
Options :
|
||||
|
||||
include::autogen/user/rmodifier_options.txt[]
|
||||
|
||||
[[rmodifier_commands]]
|
||||
==== Commandes
|
||||
|
||||
include::autogen/user/rmodifier_commands.txt[]
|
||||
|
||||
[[rmodifier_creation]]
|
||||
==== Création d'un rmodifier
|
||||
|
||||
Un rmodifier se compose de trois éléments :
|
||||
|
||||
. un ou plusieurs modificateurs
|
||||
. une expression régulière, permettant de capturer des "groupes"
|
||||
. une chaîne décrivant la sortie en utilisant les numéros de "groupes" capturés
|
||||
dans l'expression régulière
|
||||
|
||||
Pour la liste des modificateurs utilisés par WeeChat ou des extensions, voir la
|
||||
'Référence API Extension WeeChat', fonction 'weechat_hook_modifier'.
|
||||
|
||||
Pour chaque groupe capturé, les actions suivantes sont possibles :
|
||||
|
||||
* garder le groupe tel quel (en utilisant son numéro)
|
||||
* remplacer tous les caractères du groupe pour cacher le contenu
|
||||
(numéro du groupe + `*`)
|
||||
* supprimer le groupe (si le groupe n'est pas utilisé dans la chaîne)
|
||||
|
||||
Exemple du rmodifier par défaut pour la commande `/oper` :
|
||||
|
||||
* modificateurs : `history_add,input_text_display`
|
||||
** `history_add` : appelé lorsque WeeChat stocke la commande dans l'historique
|
||||
** `input_text_display` : appelé lorsque la ligne de commande a changé
|
||||
(agit uniquement sur l'affichage, pas le contenu de la ligne de commande)
|
||||
* expression régulière : `^(/oper +\S+ +)(.*)`
|
||||
* groupes : `1,2*`
|
||||
|
||||
À chaque fois que les modificateurs "history_add" ou "input_text_display" sont
|
||||
appelés, l'expression régulière est vérifiée. Si la chaîne correspond, alors
|
||||
elle est remplacée par les groupes capturés, tels que définis dans la chaîne
|
||||
des groupes.
|
||||
|
||||
Dans cet exemple, on garde le groupe numéro 1 tel quel, et on remplace tous les
|
||||
caractères du groupe 2 par le caractère de remplacement défini dans la
|
||||
configuration (option 'rmodifier.look.hide_char').
|
||||
|
||||
Si la ligne de commande contient : `/oper nick password` alors l'affichage
|
||||
sera : `/oper nick ********`.
|
||||
|
||||
[[scripts_plugins]]
|
||||
=== Extensions Scripts
|
||||
|
||||
|
@ -56,8 +56,6 @@
|
||||
|
||||
| relay | relay_relays | protocollo.nome dei relay correnti per il plugin relay
|
||||
|
||||
| rmodifier | rmodifier | elenco di rmodifier
|
||||
|
||||
| ruby | ruby_script | elenco degli script
|
||||
|
||||
| script | script_files | file nella directory degli script
|
||||
|
@ -26,8 +26,6 @@
|
||||
|
||||
| relay | relay | elenco di client relay | puntatore al relay (opzionale) | -
|
||||
|
||||
| rmodifier | rmodifier | elenco di rmodifier | puntatore a rmodifier (opzionale) | nome rmodifier (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| ruby | ruby_script | elenco degli script | puntatore allo script (opzionale) | nome script (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
||||
| script | script_script | elenco degli script | puntatore allo script (opzionale) | nome script con l'estensione (può iniziare o terminare con "*" come carattere jolly) (opzionale)
|
||||
|
@ -1,31 +0,0 @@
|
||||
[[command_rmodifier_rmodifier]]
|
||||
[command]*`rmodifier`* sostituisce le stringhe del modificatore con le espressioni regolari::
|
||||
|
||||
----
|
||||
/rmodifier list|listdefault
|
||||
add <name> <modifiers> <groups> <regex>
|
||||
del <name>|-all [<name>...]
|
||||
missing
|
||||
default -yes
|
||||
|
||||
list: list all rmodifiers
|
||||
listdefault: list default rmodifiers
|
||||
add: add a rmodifier
|
||||
name: name of rmodifier
|
||||
modifiers: comma separated list of modifiers
|
||||
groups: action on groups captured in regular expression (inside parentheses): comma separated list of groups (from 1 to 9) with optional "*" after number to hide the group
|
||||
regex: POSIX extended regular expression (case insensitive, can start by "(?-i)" to become case sensitive)
|
||||
del: delete a rmodifier
|
||||
-all: delete all rmodifiers
|
||||
missing: add missing rmodifiers
|
||||
default: restore default rmodifiers
|
||||
|
||||
Examples:
|
||||
hide everything typed after a command /password:
|
||||
/rmodifier add password input_text_display 1,2* ^(/password +)(.*)
|
||||
delete rmodifier "password":
|
||||
/rmodifier del password
|
||||
delete all rmodifiers:
|
||||
/rmodifier del -all
|
||||
----
|
||||
|
@ -1,5 +0,0 @@
|
||||
* [[option_rmodifier.look.hide_char]] *rmodifier.look.hide_char*
|
||||
** descrizione: `carattere usato per nascondere parte di una stringa`
|
||||
** tipo: stringa
|
||||
** valori: qualsiasi stringa (valore predefinito: `"*"`)
|
||||
|
@ -71,9 +71,6 @@ $HOME/.weechat/logger.conf::
|
||||
$HOME/.weechat/relay.conf::
|
||||
configuration file for 'relay' plugin
|
||||
|
||||
$HOME/.weechat/rmodifier.conf::
|
||||
configuration file for 'rmodifier' plugin
|
||||
|
||||
$HOME/.weechat/script.conf::
|
||||
configuration file for 'script' plugin
|
||||
|
||||
|
@ -231,9 +231,6 @@ List of commonly used options:
|
||||
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
||||
Compile <<relay_plugin,Relay plugin>>.
|
||||
|
||||
| ENABLE_RMODIFIER | `ON`, `OFF` | ON |
|
||||
Compile <<rmodifier_plugin,Rmodifier plugin>>.
|
||||
|
||||
| ENABLE_RUBY | `ON`, `OFF` | ON |
|
||||
Compile <<scripts_plugins,Ruby plugin>>.
|
||||
|
||||
@ -1779,23 +1776,22 @@ I plugin predefiniti sono:
|
||||
|
||||
[width="50%",cols="^1,5",options="header"]
|
||||
|===
|
||||
| Plugin | Descrizione
|
||||
| alias | Definisce gli alias per i comandi
|
||||
| aspell | Controllo ortografico per la riga di comando
|
||||
| charset | Set di caratteri per la codifica/decodifica nei buffer
|
||||
| fifo | pipe FIFO utilizzata per inviare comandi da remoto su WeeChat
|
||||
| irc | protocollo chat per IRC
|
||||
| logger | Registra i buffer su file
|
||||
| relay | Relay dei dati via rete
|
||||
| rmodifier | Cambia le stringhe del modificatore con espressioni regolari
|
||||
| script | Gestore script
|
||||
| python | API per lo scripting in Python
|
||||
| perl | API per lo scripting in Perl
|
||||
| ruby | API per lo scripting in Ruby
|
||||
| lua | API per lo scripting in Lua
|
||||
| tcl | API per lo scripting in TCL
|
||||
| guile | API per lo scripting in Guile (scheme)
|
||||
| xfer | Trasferimento file e chat diretta
|
||||
| Plugin | Descrizione
|
||||
| alias | Definisce gli alias per i comandi
|
||||
| aspell | Controllo ortografico per la riga di comando
|
||||
| charset | Set di caratteri per la codifica/decodifica nei buffer
|
||||
| fifo | pipe FIFO utilizzata per inviare comandi da remoto su WeeChat
|
||||
| irc | protocollo chat per IRC
|
||||
| logger | Registra i buffer su file
|
||||
| relay | Relay dei dati via rete
|
||||
| script | Gestore script
|
||||
| python | API per lo scripting in Python
|
||||
| perl | API per lo scripting in Perl
|
||||
| ruby | API per lo scripting in Ruby
|
||||
| lua | API per lo scripting in Lua
|
||||
| tcl | API per lo scripting in TCL
|
||||
| guile | API per lo scripting in Guile (scheme)
|
||||
| xfer | Trasferimento file e chat diretta
|
||||
|===
|
||||
|
||||
Per saperne di più riguardo lo sviluppo di plugin o script (tramite le API), per
|
||||
@ -2843,80 +2839,6 @@ websocket = new WebSocket("ws://server.com:9000/weechat");
|
||||
The port (9000 in example) is the port defined in Relay plugin.
|
||||
The URI must always end with "/weechat" (for 'irc' and 'weechat' protocols).
|
||||
|
||||
[[rmodifier_plugin]]
|
||||
=== Plugin Rmodifier
|
||||
|
||||
Il plugin Rmodifier consente di cambiare le stringhe del modificatore
|
||||
utilizzando le espressioni regolari. Si usa tipicamente per nascondere la
|
||||
password quando viene digitata, o quando WeeChat la salva nella cronologia dei
|
||||
comandi. Ad esempio, è possibile sostituire ogni carattere in questa password
|
||||
con `*`.
|
||||
|
||||
[[rmodifier_options]]
|
||||
==== Opzioni (rmodifier.conf)
|
||||
|
||||
// TRANSLATION MISSING
|
||||
Sections:
|
||||
|
||||
// TRANSLATION MISSING
|
||||
[width="100%",cols="3m,6m,16",options="header"]
|
||||
|===
|
||||
| Section | Control command | Description
|
||||
| look | /set rmodifier.look.* | Look and feel
|
||||
| modifier | <<command_rmodifier_rmodifier,/rmodifier add>> +
|
||||
/set rmodifier.modifier.* | Rmodifiers
|
||||
|===
|
||||
|
||||
// TRANSLATION MISSING
|
||||
Options:
|
||||
|
||||
include::autogen/user/rmodifier_options.txt[]
|
||||
|
||||
[[rmodifier_commands]]
|
||||
==== Comandi
|
||||
|
||||
include::autogen/user/rmodifier_commands.txt[]
|
||||
|
||||
[[rmodifier_creation]]
|
||||
==== Creazione di Rmodifier
|
||||
|
||||
Un rmodifier è costituito da tre elementi:
|
||||
|
||||
. uno o più "modificatori"
|
||||
. un'espressione regolare per catturare i "gruppi"
|
||||
. una stringa che descriva l'output facendo uso di "gruppi" catturati nelle
|
||||
espressioni regolari
|
||||
|
||||
Per un elenco di modificatori usati da WeeChat o dai plugin, consultare
|
||||
'WeeChat Plugin API Reference', function 'weechat_hook_modifier'.
|
||||
|
||||
Per ogni gruppo catturato, sono consentite le seguenti azioni:
|
||||
|
||||
* mantenere il gruppo così com'è (usando un numero per gruppo)
|
||||
* sostituire tutti i caratteri nel gruppo per nascondere il contenuto (numero
|
||||
del gruppo + `*`)
|
||||
* rimuovere il gruppo (se il gruppo non viene utilizzato nella stringa)
|
||||
|
||||
Esempio di rmodifier predefinito per il comando `/oper`:
|
||||
|
||||
* modifier: `history_add,input_text_display`
|
||||
** `history_add`: chiamato quando WeeChat conserva il comando nella cronologia
|
||||
** `input_text_display`: chiamato quando la riga di comando è cambiata
|
||||
(valida solo a video, non per il contenuto della riga di comando)
|
||||
* espressione regolare: `^(/oper +\S+ +)(.*)`
|
||||
* gruppi: `1,2*`
|
||||
|
||||
Ad ogni chiamata dei modificatori "history_add" o "input_text_display", viene
|
||||
verificata l'espressione regolare. Se la stringa coincide, viene sostituita
|
||||
dai gruppi catturati, come definito nella stringa con i gruppi.
|
||||
|
||||
In questo esempio, il numero 1 resta così com'è, e sostituiamo tutti i
|
||||
caratteri del gruppo 2 con il carattere di sostituzione definito nella
|
||||
configurazione (opzione 'rmodifier.look.hide_char').
|
||||
|
||||
Se la riga di comando contiene: `/oper nick password` allora sullo schermo diventa:
|
||||
`/oper nick ********`.
|
||||
|
||||
[[scripts_plugins]]
|
||||
=== Plugin per gli script
|
||||
|
||||
|
@ -56,8 +56,6 @@
|
||||
|
||||
| relay | relay_relays | リレープラグインにおける現在のリレーの protocol.name
|
||||
|
||||
| rmodifier | rmodifier | rmodifier のリスト
|
||||
|
||||
| ruby | ruby_script | スクリプトのリスト
|
||||
|
||||
| script | script_files | スクリプトディレクトリ内のファイル
|
||||
|
@ -26,8 +26,6 @@
|
||||
|
||||
| relay | relay | リレークライアントのリスト | リレーポインタ (任意) | -
|
||||
|
||||
| rmodifier | rmodifier | rmodifier のリスト | rmodifier ポインタ (任意) | rmodifier 名 (ジョーカーとして "*" で始めるか終われる) (任意)
|
||||
|
||||
| ruby | ruby_script | スクリプトのリスト | スクリプトポインタ (任意) | スクリプト名 (ワイルドカードとして "*" で始めるか終われる) (任意)
|
||||
|
||||
| script | script_script | スクリプトのリスト | スクリプトポインタ (任意) | 拡張子を含めたスクリプト名 (ワイルドカードとして "*" で始めるか終われる) (任意)
|
||||
|
@ -1,31 +0,0 @@
|
||||
[[command_rmodifier_rmodifier]]
|
||||
[command]*`rmodifier`* 正規表現で modifier 文字列を変更::
|
||||
|
||||
----
|
||||
/rmodifier list|listdefault
|
||||
add <name> <modifiers> <groups> <regex>
|
||||
del <name>|-all [<name>...]
|
||||
missing
|
||||
default -yes
|
||||
|
||||
list: 全ての rmodifier をリストアップ
|
||||
listdefault: デフォルトの rmodifier をリストアップ
|
||||
add: rmodifier を追加
|
||||
name: rmodifier の名前
|
||||
modifiers: rmodifier のコンマ区切りリスト
|
||||
groups: 正規表現にマッチするグループに対するアクション (括弧内): グループ (1 から 9) のコンマ区切りリスト、グループを隠すには番号の後ろに任意で "*" をつける
|
||||
regex: POSIX 拡張正規表現 (大文字小文字の区別無し、"(?-i)" で始めれば区別有り)
|
||||
del: rmodifier を削除
|
||||
-all: 全ての rmodifier を削除
|
||||
missing: 見つからない rmodifier を追加
|
||||
default: デフォルトの rmodifier に戻す
|
||||
|
||||
例:
|
||||
コマンド /password に続く入力は全て隠す:
|
||||
/rmodifier add password input_text_display 1,2* ^(/password +)(.*)
|
||||
rmodifier "password" を削除:
|
||||
/rmodifier del password
|
||||
全ての rmodifiers を削除:
|
||||
/rmodifier del -all
|
||||
----
|
||||
|
@ -1,5 +0,0 @@
|
||||
* [[option_rmodifier.look.hide_char]] *rmodifier.look.hide_char*
|
||||
** 説明: `文字列の一部を隠すための文字`
|
||||
** タイプ: 文字列
|
||||
** 値: 未制約文字列 (デフォルト値: `"*"`)
|
||||
|
@ -69,9 +69,6 @@ $HOME/.weechat/logger.conf::
|
||||
$HOME/.weechat/relay.conf::
|
||||
'relay' プラグイン用の設定ファイル
|
||||
|
||||
$HOME/.weechat/rmodifier.conf::
|
||||
'rmodifier' プラグイン用の設定ファイル
|
||||
|
||||
$HOME/.weechat/script.conf::
|
||||
'script' プラグイン用の設定ファイル
|
||||
|
||||
|
@ -45,34 +45,33 @@ WeeChat の主要なリポジトリは 2 つあります:
|
||||
|
||||
[width="100%",cols="1v,5",options="header"]
|
||||
|===
|
||||
| ディレクトリ | 説明
|
||||
| src/ | ソースコードのルートディレクトリ
|
||||
| core/ | コア関数: エントリポイント、内部構造体
|
||||
| gui/ | バッファ、ウィンドウ、... を操作する関数 (全てのインターフェイスで使う)
|
||||
| curses/ | curses インターフェイス
|
||||
| plugins/ | プラグインとスクリプト向け API
|
||||
| alias/ | alias プラグイン
|
||||
| aspell/ | aspell プラグイン
|
||||
| charset/ | charset プラグイン
|
||||
| fifo/ | fifo プラグイン (WeeChat にコマンドを送信する FIFO パイプ)
|
||||
| irc/ | IRC (Internet Relay Chat) プラグイン
|
||||
| logger/ | logger プラグイン (表示されたメッセージをファイルに書き込む)
|
||||
| relay/ | relay プラグイン (irc プロキシ + リモートインターフェイス用の中継)
|
||||
| rmodifier/ | rmodifier プラグイン (正規表現を含む修飾子文字列)
|
||||
| script/ | スクリプトマネージャ
|
||||
| python/ | python スクリプト用 API
|
||||
| perl/ | perl スクリプト用 API
|
||||
| ruby/ | ruby スクリプト用 API
|
||||
| lua/ | lua スクリプト用 API
|
||||
| tcl/ | tcl スクリプト用 API
|
||||
| guile/ | guile (scheme) スクリプト用 API
|
||||
| ディレクトリ | 説明
|
||||
| src/ | ソースコードのルートディレクトリ
|
||||
| core/ | コア関数: エントリポイント、内部構造体
|
||||
| gui/ | バッファ、ウィンドウ、... を操作する関数 (全てのインターフェイスで使う)
|
||||
| curses/ | curses インターフェイス
|
||||
| plugins/ | プラグインとスクリプト向け API
|
||||
| alias/ | alias プラグイン
|
||||
| aspell/ | aspell プラグイン
|
||||
| charset/ | charset プラグイン
|
||||
| fifo/ | fifo プラグイン (WeeChat にコマンドを送信する FIFO パイプ)
|
||||
| irc/ | IRC (Internet Relay Chat) プラグイン
|
||||
| logger/ | logger プラグイン (表示されたメッセージをファイルに書き込む)
|
||||
| relay/ | relay プラグイン (irc プロキシ + リモートインターフェイス用の中継)
|
||||
| script/ | スクリプトマネージャ
|
||||
| python/ | python スクリプト用 API
|
||||
| perl/ | perl スクリプト用 API
|
||||
| ruby/ | ruby スクリプト用 API
|
||||
| lua/ | lua スクリプト用 API
|
||||
| tcl/ | tcl スクリプト用 API
|
||||
| guile/ | guile (scheme) スクリプト用 API
|
||||
// TRANSLATION MISSING
|
||||
| trigger/ | Trigger plugin
|
||||
| xfer/ | xfer (IRC DCC ファイル/チャット)
|
||||
| doc/ | 文書
|
||||
| po/ | 翻訳ファイル (gettext)
|
||||
| test/ | WeeChat をテストするためのツールおよびファイル (Weercd IRC サーバなど)
|
||||
| debian/ | Debian パッケージ用
|
||||
| trigger/ | Trigger plugin
|
||||
| xfer/ | xfer (IRC DCC ファイル/チャット)
|
||||
| doc/ | 文書
|
||||
| po/ | 翻訳ファイル (gettext)
|
||||
| test/ | WeeChat をテストするためのツールおよびファイル (Weercd IRC サーバなど)
|
||||
| debian/ | Debian パッケージ用
|
||||
|===
|
||||
|
||||
[[sources]]
|
||||
@ -240,13 +239,6 @@ WeeChat "core" は以下のディレクトリに配置されています:
|
||||
| relay-weechat-msg.c | クライアントにバイナリメッセージを送信
|
||||
| relay-weechat-nicklist.c | ニックネームリスト関数
|
||||
| relay-weechat-protocol.c | クライアントからのコマンドを読み取る
|
||||
| rmodifier/ | rmodifier プラグイン
|
||||
| rmodifier.c | rmodifier の主要関数
|
||||
| rmodifier-command.c | rmodifier コマンド
|
||||
| rmodifier-completion.c | rmodifier 補完
|
||||
| rmodifier-config.c | rmodifier 設定オプション (rmodifier.conf ファイル)
|
||||
| rmodifier-debug.c | rmodifier デバッグ関数
|
||||
| rmodifier-info.c | rmodifier の情報/インフォリスト/hdata
|
||||
| ruby/ | ruby プラグイン
|
||||
| weechat-ruby.c | ruby の主要関数 (スクリプトのロード/アンロード、ruby コードの実行)
|
||||
| weechat-ruby-api.c | ruby スクリプト作成 API 関数
|
||||
|
@ -217,9 +217,6 @@ cmake に対するオプションを指定するには、以下のフォーマ
|
||||
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
||||
<<relay_plugin,リレープラグイン>>のコンパイル
|
||||
|
||||
| ENABLE_RMODIFIER | `ON`, `OFF` | ON |
|
||||
<<rmodifier_plugin,Rmodifier プラグイン>>のコンパイル
|
||||
|
||||
| ENABLE_RUBY | `ON`, `OFF` | ON |
|
||||
<<scripts_plugins,Ruby プラグイン>>のコンパイル
|
||||
|
||||
@ -1719,22 +1716,21 @@ GNU/Linux の場合、プラグインファイルは ".so" という拡張子を
|
||||
[width="50%",cols="^1,5",options="header"]
|
||||
|===
|
||||
| プラグイン | 説明
|
||||
| alias | コマンドの別名を定義
|
||||
| aspell | コマンドラインのスペルチェック
|
||||
| charset | バッファの文字コードに従ってデコード/エンコード
|
||||
| fifo | 外部から WeeChat にコマンドを送信するための FIFO パイプ
|
||||
| irc | IRC チャットプロトコル
|
||||
| logger | バッファの内容をファイルに保存
|
||||
| relay | ネットワーク経由でデータを中継
|
||||
| rmodifier | 正規表現を用いた文字列の置換
|
||||
| script | スクリプトマネージャ
|
||||
| python | Python スクリプト API
|
||||
| perl | Perl スクリプト API
|
||||
| ruby | Ruby スクリプト API
|
||||
| lua | Lua スクリプト API
|
||||
| tcl | Tcl スクリプト API
|
||||
| guile | Guile (scheme) スクリプト API
|
||||
| xfer | ファイル転送とダイレクトチャット
|
||||
| alias | コマンドの別名を定義
|
||||
| aspell | コマンドラインのスペルチェック
|
||||
| charset | バッファの文字コードに従ってデコード/エンコード
|
||||
| fifo | 外部から WeeChat にコマンドを送信するための FIFO パイプ
|
||||
| irc | IRC チャットプロトコル
|
||||
| logger | バッファの内容をファイルに保存
|
||||
| relay | ネットワーク経由でデータを中継
|
||||
| script | スクリプトマネージャ
|
||||
| python | Python スクリプト API
|
||||
| perl | Perl スクリプト API
|
||||
| ruby | Ruby スクリプト API
|
||||
| lua | Lua スクリプト API
|
||||
| tcl | Tcl スクリプト API
|
||||
| guile | Guile (scheme) スクリプト API
|
||||
| xfer | ファイル転送とダイレクトチャット
|
||||
|===
|
||||
|
||||
API を使ったプラグインやスクリプトの開発についてより詳しく学ぶには、'WeeChat
|
||||
@ -2726,74 +2722,6 @@ websocket = new WebSocket("ws://server.com:9000/weechat");
|
||||
ポート番号 (例では 9000 番) は Relay プラグインで定義したものです。URI
|
||||
の最後には必ず "/weechat" をつけます ('irc' と 'weechat' プロトコルの場合)。
|
||||
|
||||
[[rmodifier_plugin]]
|
||||
=== Rmodifier プラグイン
|
||||
|
||||
Rmodifier プラグインは正規表現を使って文字列を置換します。
|
||||
パスワードの入力時やに入力文字列を隠すことや WeeChat
|
||||
がパスワードを保存しないようにすることが典型的な利用ケースです。
|
||||
例えば、パスワード文字列を `*` で置き換えることができます。
|
||||
|
||||
[[rmodifier_options]]
|
||||
==== オプション (rmodifier.conf)
|
||||
|
||||
セクション:
|
||||
|
||||
[width="100%",cols="3m,6m,16",options="header"]
|
||||
|===
|
||||
| セクション | 操作コマンド | 説明
|
||||
| look | /set rmodifier.look.* | 外観
|
||||
| modifier | <<command_rmodifier_rmodifier,/rmodifier add>> +
|
||||
/set rmodifier.modifier.* | rmodifier
|
||||
|===
|
||||
|
||||
オプション:
|
||||
|
||||
include::autogen/user/rmodifier_options.txt[]
|
||||
|
||||
[[rmodifier_commands]]
|
||||
==== コマンド
|
||||
|
||||
include::autogen/user/rmodifier_commands.txt[]
|
||||
|
||||
[[rmodifier_creation]]
|
||||
==== Rmodifier の作成
|
||||
|
||||
rmodifier は 3 つの要素からなります:
|
||||
|
||||
. 1 つ以上の "修飾子"
|
||||
. 文字列のマッチングと "グループ" 分けを行う正規表現
|
||||
. "グループ"
|
||||
化された文字列に対するアクションを指定する文字列
|
||||
|
||||
WeeChat またはプラグインが利用する修飾子の完全なリストは 'WeeChat プラグイン
|
||||
API リファレンス' の 'weechat_hook_modifier' 関数を参照してください。
|
||||
|
||||
グループ化されたそれぞれの文字列に対して、以下のアクションが可能です:
|
||||
|
||||
* 文字列に変更を加えない (グループ番号を指定)
|
||||
* 文字列を隠すために全ての文字を置換する (グループ番号 + `*` で指定)
|
||||
* 文字列を削除 (グループ番号を指定しない場合)
|
||||
|
||||
`/oper` コマンドに対するデフォルト rmodifier の例:
|
||||
|
||||
* 修飾子: `history_add,input_text_display`
|
||||
** `history_add`: WeeChat がコマンドを履歴に保存する際に呼び出される
|
||||
** `input_text_display`: コマンドラインを変更する際に呼び出される
|
||||
(入力テキストが表示されたときにのみ適用、コマンドラインの内容には適用されない)
|
||||
* 正規表現: `^(/oper +\S+ +)(.*)`
|
||||
* グループに対するアクション: `1,2*`
|
||||
|
||||
修飾子 "history_add" や "input_text_display" が呼び出されるたびに、
|
||||
正規表現が確認されます。文字列にマッチした場合、
|
||||
文字列はグループに対して定義されたアクションを使って置換されます。
|
||||
|
||||
この例では、グループ番号 1 はそのまま、グループ番号 2 に含まれる全ての文字を設定済みの文字
|
||||
(オプション 'rmodifier.look.hide_char') で置換します。
|
||||
|
||||
コマンドラインに `/oper nick password` のような文字列が含まれる場合、
|
||||
`/oper nick ********` のように表示されます。
|
||||
|
||||
[[scripts_plugins]]
|
||||
=== スクリプトプラグイン
|
||||
|
||||
|
@ -56,8 +56,6 @@
|
||||
|
||||
| relay | relay_relays | protokół.nazwa dla obecnych relayów dla wtyczki relay
|
||||
|
||||
| rmodifier | rmodifier | lista rmodifierów
|
||||
|
||||
| ruby | ruby_script | lista skryptów
|
||||
|
||||
| script | script_files | pliki w katalogach skryptów
|
||||
|
@ -26,8 +26,6 @@
|
||||
|
||||
| relay | relay | lista zdalnych klientów | wskaźnik relay (opcjonalny) | -
|
||||
|
||||
| rmodifier | rmodifier | lista rmodifierów | wskaźnik rmodifier (opcjonalny) | nazwa rmodifier (może się zaczynać lub kończyć "*") (opcjonalne)
|
||||
|
||||
| ruby | ruby_script | lista skryptów | wskaźnik skryptu (opcjonalne) | nazwa skryptu (może się zaczynać lub kończyć "*") (opcjonalne)
|
||||
|
||||
| script | script_script | lista skryptów | wskaźnik skryptu (opcjonalne) | nazwa skryptu z rozszerzeniem (może się zaczynać lub kończyć "*") (opcjonalne)
|
||||
|
@ -1,31 +0,0 @@
|
||||
[[command_rmodifier_rmodifier]]
|
||||
[command]*`rmodifier`* zmiany ciągów modyfikujących przez wyrażenia regularne::
|
||||
|
||||
----
|
||||
/rmodifier list|listdefault
|
||||
add <nazwa> <modyfikatory> <grupy> <regex>
|
||||
del <nazwa>|-all [<nazwa>...]
|
||||
missing
|
||||
default -yes
|
||||
|
||||
list: lista wszystkich rmodifierów
|
||||
listdefault: lista domyślnych rmodifierów
|
||||
add: dodaje rmodifier
|
||||
nazwa: nazwa rmodifiera
|
||||
modyfikatory: oddzielona przecinkiem lista modyfikatorów
|
||||
grupy: akcja na grupach przechwyconych w wyrażeniu regularnym (wewnątrz nawiasów): oddzielona przecinkami lista grup (od 1 do 9) z opcjonalnym znakiem "*" po numerze, aby ukryć grupę
|
||||
regex: rozszerzone wyrażenia regularne POSIX (wielkość znaków nie ma znaczenia, jeśli poprzedzone "(?-i)" wielkość znaków ma znaczenie)
|
||||
del: usuwa rmodifier
|
||||
-all: usuwa wszystkie rmodifiery
|
||||
missing: dodaje brakujące rmodifiery
|
||||
default: przywraca domyślne rmodifiery
|
||||
|
||||
Przykłady:
|
||||
ukrywa wszystko wpisane za komendą /password:
|
||||
/rmodifier add password input_text_display 1,2* ^(/password +)(.*)
|
||||
usuwa rmodifier "hasło":
|
||||
/rmodifier del hasło
|
||||
kasuje wszystkie rmodifiery:
|
||||
/rmodifier del -all
|
||||
----
|
||||
|
@ -1,5 +0,0 @@
|
||||
* [[option_rmodifier.look.hide_char]] *rmodifier.look.hide_char*
|
||||
** opis: `znak używany do ukrycia części ciągu`
|
||||
** typ: ciąg
|
||||
** wartości: dowolny ciąg (domyślna wartość: `"*"`)
|
||||
|
@ -70,9 +70,6 @@ $HOME/.weechat/logger.conf::
|
||||
$HOME/.weechat/relay.conf::
|
||||
plik konfiguracyjny wtyczki 'relay'
|
||||
|
||||
$HOME/.weechat/rmodifier.conf::
|
||||
plik konfiguracyjny wtyczki 'rmodifier'
|
||||
|
||||
$HOME/.weechat/script.conf::
|
||||
plik konfiguracyjny wtyczki 'script'
|
||||
|
||||
|
@ -218,9 +218,6 @@ Lista popularnych opcji:
|
||||
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
||||
Kompilacja <<relay_plugin,wtyczki relay>>.
|
||||
|
||||
| ENABLE_RMODIFIER | `ON`, `OFF` | ON |
|
||||
Kompilacja <<rmodifier_plugin,wtyczki rmodifier>>.
|
||||
|
||||
| ENABLE_RUBY | `ON`, `OFF` | ON |
|
||||
Kompilacja <<scripts_plugins,wtyczki ruby>>.
|
||||
|
||||
@ -1727,23 +1724,22 @@ Domyślne wtyczki:
|
||||
|
||||
[width="50%",cols="^1,5",options="header"]
|
||||
|===
|
||||
| Wtyczka | Opis
|
||||
| alias | Definiuje aliasy dla komend
|
||||
| aspell | Sprawdzanie pisowni w linii poleceń
|
||||
| charset | Ustawianie kodowania dla buforów
|
||||
| fifo | Kolejka FIFO używana do zdalnego wysyłania poleceń dla WeeChat
|
||||
| irc | Protokół IRC
|
||||
| logger | Logowanie zawartości buforów do plików
|
||||
| relay | Przekazuje dane przez sieć
|
||||
| rmodifier | Zamienia ciągi pasujące do wyrażeń regularnych
|
||||
| script | Zarządzanie skryptami
|
||||
| python | Wsparcie dla skryptów napisanych w Pythonie
|
||||
| perl | Wsparcie dla skryptów napisanych w Perlu
|
||||
| ruby | Wsparcie dla skryptów napisanych w Ruby
|
||||
| lua | Wsparcie dla skryptów napisanych w Lua
|
||||
| tcl | Wsparcie dla skryptów napisanych w Tcl
|
||||
| guile | Wsparcie dla skryptów napisanych w Guile (scheme)
|
||||
| xfer | Przesyłanie plików i bezpośredni chat
|
||||
| Wtyczka | Opis
|
||||
| alias | Definiuje aliasy dla komend
|
||||
| aspell | Sprawdzanie pisowni w linii poleceń
|
||||
| charset | Ustawianie kodowania dla buforów
|
||||
| fifo | Kolejka FIFO używana do zdalnego wysyłania poleceń dla WeeChat
|
||||
| irc | Protokół IRC
|
||||
| logger | Logowanie zawartości buforów do plików
|
||||
| relay | Przekazuje dane przez sieć
|
||||
| script | Zarządzanie skryptami
|
||||
| python | Wsparcie dla skryptów napisanych w Pythonie
|
||||
| perl | Wsparcie dla skryptów napisanych w Perlu
|
||||
| ruby | Wsparcie dla skryptów napisanych w Ruby
|
||||
| lua | Wsparcie dla skryptów napisanych w Lua
|
||||
| tcl | Wsparcie dla skryptów napisanych w Tcl
|
||||
| guile | Wsparcie dla skryptów napisanych w Guile (scheme)
|
||||
| xfer | Przesyłanie plików i bezpośredni chat
|
||||
|===
|
||||
|
||||
Więcej informacji o wtyczkach i tworzeniu skryptów (przez API), można znaleźć w
|
||||
@ -2747,73 +2743,6 @@ websocket = new WebSocket("ws://server.com:9000/weechat");
|
||||
Port (9000 w przykładzie) to port zdefiniowany we wtyczce relay.
|
||||
Adres URL musi się zawsze kończyć "/weechat" (dla protokołów 'irc' i 'weechat').
|
||||
|
||||
[[rmodifier_plugin]]
|
||||
=== Wtyczka rmodifier
|
||||
|
||||
Wtyczka rmodifier pozwala na modyfikowanie ciągów za pomocą wyrażeń regularnych.
|
||||
Najczęściej używana się jej do ukrywania haseł podczas wprowadzania lub, kiedy
|
||||
WeeChat zapisuje je w historii poleceń. Na przykład możliwe jest zastąpienie
|
||||
każdego znaku w haśle przez `*`.
|
||||
|
||||
[[rmodifier_options]]
|
||||
==== Opcje (rmodifier.conf)
|
||||
|
||||
Sekcje:
|
||||
|
||||
[width="100%",cols="3m,6m,16",options="header"]
|
||||
|===
|
||||
| Sekcja | Komenda | Opis
|
||||
| look | /set rmodifier.look.* | Wygląd
|
||||
| modifier | <<command_rmodifier_rmodifier,/rmodifier add>> +
|
||||
/set rmodifier.modifier.* | Rmodifiers
|
||||
|===
|
||||
|
||||
Opcje:
|
||||
|
||||
include::autogen/user/rmodifier_options.txt[]
|
||||
|
||||
[[rmodifier_commands]]
|
||||
==== Komendy
|
||||
|
||||
include::autogen/user/rmodifier_commands.txt[]
|
||||
|
||||
[[rmodifier_creation]]
|
||||
==== Tworzenie rmodifier
|
||||
|
||||
Rmodifier składa się z trzech elementów:
|
||||
|
||||
. jednego lub większej ilości "modfikatorów"
|
||||
. wyrażenia regularnego do przechwytywania "grup"
|
||||
. ciągu opisującego wyjście używając numeru "grup" przechwyconych przez wyrażenie
|
||||
|
||||
Listę modyfikatorów używanych przez WeeChat lub wtyczki można znaleźć w
|
||||
'Opisie API wtyczek', funkcja 'weechat_hook_modifier'.
|
||||
|
||||
Dla każdej z przechwyconych grup możliwe są następujące akcje:
|
||||
|
||||
* nie zmieniaj nic (poprzez podanie numeru grupy)
|
||||
* zastąp wszystkie znaki w grupie, żeby ukryć jej zawartość (numer grupy + `*`)
|
||||
* usuń grupę (jeśli grupa nie jest użyta w ciągu)
|
||||
|
||||
Przykład domyślnego rmodifiera dla komendy `/oper`:
|
||||
|
||||
* modyfikatory: `history_add,input_text_display`
|
||||
** `history_add`: wywoływane, kiedy WeeChat zachowuje komendy w historii
|
||||
** `input_text_display`: wywoływane podczas zmian w linii poleceń
|
||||
(dotyczy tylko wyświetlania, a nie zawartości)
|
||||
* wyrażenie regularne: `^(/oper +\S+ +)(.*)`
|
||||
* grupy: `1,2*`
|
||||
|
||||
Za każdym razem, kiedy modyfikator "history_add" lub "input_text_display" jest
|
||||
wywoływany sprawdzane jest wyrażenie regularne. Jeśli ciąg pasuje jest on
|
||||
zastępowany przez przechwycone grupy, zgodnie z definicją grup.
|
||||
|
||||
W tym przykładzie, grupa numer 1 jest zachowywana bez zmian, a znaki w grupie 2
|
||||
zastępowane są przez znak zdefiniowany w konfiguracji (opcja 'rmodifier.look.hide_char').
|
||||
|
||||
Jeśli linia komend zawiera: `/oper nick hasło`, to wyświetlone będzie:
|
||||
`/oper nick *****`.
|
||||
|
||||
[[scripts_plugins]]
|
||||
=== Wtyczki skryptowe
|
||||
|
||||
|
@ -235,18 +235,6 @@
|
||||
./src/plugins/relay/weechat/relay-weechat-nicklist.h
|
||||
./src/plugins/relay/weechat/relay-weechat-protocol.c
|
||||
./src/plugins/relay/weechat/relay-weechat-protocol.h
|
||||
./src/plugins/rmodifier/rmodifier.c
|
||||
./src/plugins/rmodifier/rmodifier-command.c
|
||||
./src/plugins/rmodifier/rmodifier-command.h
|
||||
./src/plugins/rmodifier/rmodifier-completion.c
|
||||
./src/plugins/rmodifier/rmodifier-completion.h
|
||||
./src/plugins/rmodifier/rmodifier-config.c
|
||||
./src/plugins/rmodifier/rmodifier-config.h
|
||||
./src/plugins/rmodifier/rmodifier-debug.c
|
||||
./src/plugins/rmodifier/rmodifier-debug.h
|
||||
./src/plugins/rmodifier/rmodifier.h
|
||||
./src/plugins/rmodifier/rmodifier-info.c
|
||||
./src/plugins/rmodifier/rmodifier-info.h
|
||||
./src/plugins/ruby/weechat-ruby-api.c
|
||||
./src/plugins/ruby/weechat-ruby-api.h
|
||||
./src/plugins/ruby/weechat-ruby.c
|
||||
|
139
po/cs.po
139
po/cs.po
@ -20,8 +20,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-02-20 12:24+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:20+0100\n"
|
||||
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: cs\n"
|
||||
@ -9007,135 +9007,6 @@ msgstr ""
|
||||
"%s%s: přijato příliš málo argumentů od IRC serveru pro příkaz \"%s"
|
||||
"\" (obdrženo: %d argumentů, očekáváno: alespoň %d)"
|
||||
|
||||
#, fuzzy
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "změnit řetězce modifikátorů pomocí regulárních výrazů"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s%s: chyba při zpracování regulárního výrazu \"%s\""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "Žádné rmodifikátory nejsou definovány"
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "seznam rmodifikátory:"
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "Výchozí rmodifikátory:"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s%s: chyba při vytváření rmodifikátoru \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "Rmodifikátor \"%s\" vytvořen"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr "%d rmodifikátorů odebráno"
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "Rmodifikátor \"%s\" odebrán"
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%sRmodifikátor \"%s\" nenalezen"
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "Výchozí rmodifikátory obnoveny:"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%sChyba: \"-yes\" argument je požadován pro obnovení výchozích rmodifikátorů "
|
||||
"(bezpečnostní opatření)"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] "%d rmodifikátorů odebráno"
|
||||
msgstr[1] "%d rmodifikátorů odebráno"
|
||||
msgstr[2] "%d rmodifikátorů odebráno"
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr "změnit řetězce modifikátorů pomocí regulárních výrazů"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || default -yes"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
" list: vypíše všechny rmodifikátory\n"
|
||||
"listdefault: vypíše výchozí rmodifikátory\n"
|
||||
" add: přidá rmodifikátor\n"
|
||||
" name: jméno rmodifikátoru\n"
|
||||
" modifiers: čárkou oddělený seznam modifikátorů\n"
|
||||
" groups: akce na nalezených skupinách: čárkou oddělený seznam skupin (od "
|
||||
"1 do 9) s možností \"*\" za číslem pro schování skupiny\n"
|
||||
" regex: regulární výraz\n"
|
||||
" del: smaže rmodifikátor\n"
|
||||
" -all: smaže všechny rmodifikátory\n"
|
||||
" default: obnoví výchozí rmodifikátory\n"
|
||||
"\n"
|
||||
"Příklady:\n"
|
||||
" schová vše napsané za příkazem /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" smaže rmodifikátor \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" smaže všechny rmodifikátory:\n"
|
||||
" /rmodifier del -all"
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "seznam rmodifikátorů"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s%s: chyba vytváření rmodifikátoru \"%s\" => \"%s\""
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr "znak použitý pro schování části řetězce"
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "ukazatel rmodifikátoru (volitelné)"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
"jméno rmodifikátoru (může začínat nebo končit \"*\" jako zástupným znakem) "
|
||||
"(volitelné)"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "seznam skriptů"
|
||||
@ -10464,9 +10335,3 @@ msgstr "%s%s: nemohu nastavit \"neblokovaci\" volbu na soket"
|
||||
#, c-format
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s%s: vypršel časový limit \"%s\" pro %s"
|
||||
|
||||
#~ msgid "user name to use on server"
|
||||
#~ msgstr "uživatelské jméno použité na serveru"
|
||||
|
||||
#~ msgid "real name to use on server"
|
||||
#~ msgstr "skutečné jméno použité na serveru"
|
||||
|
136
po/de.po
136
po/de.po
@ -22,8 +22,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 09:23+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:21+0100\n"
|
||||
"Last-Translator: Nils Görs <weechatter@arcor.de>\n"
|
||||
"Language-Team: German <weechatter@arcor.de>\n"
|
||||
"Language: de_DE\n"
|
||||
@ -10044,138 +10044,6 @@ msgstr ""
|
||||
"%s%s: Zu wenige Argumente von Client %s%s%s für den Befehl \"%s\" erhalten "
|
||||
"(Empfangen: %d Argumente, mindestens Erwartet: %d)"
|
||||
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "Zeichenketten werden mittels regulären Ausdrücken verändert"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s%s: Fehler bei der Kompilierung des regulären Ausdruckes \"%s\""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "Kein rmodifier definiert"
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "Liste der rmodifier:"
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "Standard rmodifier:"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s%s: Fehler bei der Erstellung von rmodifier \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "rmodifier \"%s\" erstellt"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr "%d rmodifiers entfernt"
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "rmodifier \"%s\" entfernt"
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%srmodifier \"%s\" nicht gefunden"
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "Standard rmodifier wiederhergestellt:"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%sFehler: Um rmodifier auf Standardeinstellungen zurücksetzen ist es aus "
|
||||
"Sicherheitsgründen erforderlich, das Argument \"-yes\" zu nutzen"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] "%d rmodifier hinzugefügt"
|
||||
msgstr[1] "%d rmodifiers hinzugefügt"
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr ""
|
||||
"wandelt Schlüsselwörter mit regulären Ausdrücken (regelt die Darstellung von "
|
||||
"Texten in WeeChat)"
|
||||
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
" list: zeigt alle rmodifier an\n"
|
||||
"listdefault: zeigt die Standardeinstellung für rmodifier an\n"
|
||||
" add: einen rmodifier hinzufügen\n"
|
||||
" name: Name des rmodifier\n"
|
||||
" modifiers: durch Kommata getrennte Liste der modifier\n"
|
||||
" groups: Aktion auf Gruppen (groups) anwenden, die durch reguläre "
|
||||
"Ausdrücke abgefragt werden (innerhalb der runden Klammern): durch Kommata "
|
||||
"getrennte Liste der Gruppen (von 1 bis 9). Optional kann nach der Nummer für "
|
||||
"die Gruppe ein \"*\" gesetzt werden um diese Gruppe auszublenden\n"
|
||||
" regex: erweiterter regulärer POSIX Ausdruck (zwischen Groß- und "
|
||||
"Kleinschreibung wird nicht unterschieden. Um zwischen Groß- und "
|
||||
"Kleinschreibung zu unterscheiden muss zu Beginn \"(?-i)\" genutzt werden)\n"
|
||||
" del: löscht einen rmodifier Eintrag\n"
|
||||
" -all: löscht alle rmodifiers Einträge\n"
|
||||
" missing: fügt fehlende rmodifiers hinzu\n"
|
||||
" default: setzt die rmodifier auf seine Standardwerte zurück\n"
|
||||
"\n"
|
||||
"Beispiele:\n"
|
||||
" verbirgt die Eingabe nach dem Befehl /passwort:\n"
|
||||
" /rmodifier add passwort input_text_display 1,2* ^(/passwort +)(.*)\n"
|
||||
" lösche rmodifier \"passwort\":\n"
|
||||
" /rmodifier del passwort\n"
|
||||
" lösche alle rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "Liste der rmodifier"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s%s: Fehler beim Erstellen des rmodifier \"%s\" => \"%s\""
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr "Zeichen, das anstelle der eigentlichen Eingabe angezeigt wird"
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "rmodifier Pointer (optional)"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
"rmodifier Name (darf mit einem \"*\" als Platzhalter beginnen oder enden) "
|
||||
"(optional)"
|
||||
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "Unterstützung von Ruby-Skripten"
|
||||
|
||||
|
139
po/es.po
139
po/es.po
@ -22,8 +22,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-02-20 12:25+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:21+0100\n"
|
||||
"Last-Translator: Elián Hanisch <lambdae2@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: es\n"
|
||||
@ -9295,135 +9295,6 @@ msgstr ""
|
||||
"%s%s: muy pocos argumentos recibidos del cliente %s%s%s para el comando \"%s"
|
||||
"\" (recibidos: %d argumentos, esperado: al menos %d)"
|
||||
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "Modificador de cadena con expresiones regulares"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s%s: error al compilar la expresión regular \"%s\""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "Ningún modificador regular definido"
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "Lista de modificadores regulares:"
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "Modificadores regulares predeterminados:"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s%s: error al crear el modificador regular \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "Modificador regular \"%s\" creado"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr "%d modificadores regulares removidos"
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "Modificador regular \"%s\" removido"
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%sModificador regular \"%s\" no encontrado"
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "Modificadores regulares predeterminados restaurados:"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%sError: por seguridad, se requiere el argumento \"-yes\" para restaurar los "
|
||||
"modificadores regulares"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] "%d modificadores regulares removidos"
|
||||
msgstr[1] "%d modificadores regulares removidos"
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr "alterar cadenas en modificadores con expresiones regulares"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
"list|listdefault || add <nombre> <modificadores> <grupos> <regex> || del "
|
||||
"<nombre>|-all [<nombre>...] || default -yes"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
" list: lista todos los modificadores regulares\n"
|
||||
" listdefault: lista los modificadores regulares predeterminados\n"
|
||||
" add: agrega un modificador regular\n"
|
||||
" nombre: nombre del modificador regular\n"
|
||||
"modificadores: lista separada por comas de modificadores\n"
|
||||
" grupos: acciones para los grupos encontrados: lista separada por "
|
||||
"comas de grupos (desde 1 a 9)con opcional \"*\" después del número para "
|
||||
"ocultar el grupo\n"
|
||||
" regex: expresión regular (insensible a las mayúsculas, puede empezar "
|
||||
"con \"(?-i)\" para serlo)\n"
|
||||
" del: borra modificador regular\n"
|
||||
" -all: borra todos los modificadores regulares\n"
|
||||
" default: restaurar los modificadores regulares predeterminados\n"
|
||||
"\n"
|
||||
"Ejemplos:\n"
|
||||
" oculta todo lo tipeado después del comando /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" borra el modificador regular \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" borra todos los modificadores regulares:\n"
|
||||
" /rmodifier del -all"
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "lista de modificadores regulares"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s%s: error al crear el modificador regular \"%s\" => \"%s\""
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr "carácter usado para ocultar parte de un texto"
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "puntero del modificador regular (opcional)"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
"nombre del modificador regular (puede empezar o terminar con \"*\" como "
|
||||
"comodín) (opcional)"
|
||||
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "Soporte para scripts en ruby"
|
||||
|
||||
@ -10736,9 +10607,3 @@ msgstr "%s%s: no es posible configurar la opción \"nonblock\" para el socket"
|
||||
#, c-format
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s%s: tiempo de espera máximo para \"%s\" con %s"
|
||||
|
||||
#~ msgid "user name to use on server"
|
||||
#~ msgstr "nombre de usuario para usar en el servidor"
|
||||
|
||||
#~ msgid "real name to use on server"
|
||||
#~ msgstr "nombre real para usar en el servidor"
|
||||
|
138
po/fr.po
138
po/fr.po
@ -21,8 +21,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-03-02 08:36+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:21+0100\n"
|
||||
"Last-Translator: Sébastien Helleu <flashcode@flashtux.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: fr\n"
|
||||
@ -9795,134 +9795,6 @@ msgstr ""
|
||||
"%s%s: trop peu de paramètres reçus du client %s%s%s pour la commande \"%s"
|
||||
"\" (reçu: %d paramètres, attendu: au moins %d)"
|
||||
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "Modificateur de chaîne avec expressions régulières"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s%s: erreur de compilation de l'expression régulière \"%s\""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "Pas de rmodifier défini"
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "Liste des rmodifiers:"
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "Rmodifiers par défaut:"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s%s: erreur de création du rmodifier \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "Rmodifier \"%s\" créé"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr "%d rmodifiers supprimés"
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "Rmodifier \"%s\" supprimé"
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%sRmodifier \"%s\" non trouvé"
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "Rmodifiers par défaut restaurés:"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%sErreur: le paramètre \"-yes\" est requis pour la restauration des "
|
||||
"rmodifiers par défaut (raison de sécurité)"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] "%d rmodifier ajouté"
|
||||
msgstr[1] "%d rmodifiers ajoutés"
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr "modifier des chaînes de \"modifier\" avec des expressions régulières"
|
||||
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
"list|listdefault || add <nom> <modifiers> <groupes> <regex> || del <nom>|-"
|
||||
"all [<nom>...] || missing || default -yes"
|
||||
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
" list: lister les rmodifiers\n"
|
||||
"listdefault: lister les rmodifiers par défaut\n"
|
||||
" add: ajouter un rmodifier\n"
|
||||
" name: nom du rmodifier\n"
|
||||
" modifiers: liste de modifiers (séparés par une virgule)\n"
|
||||
" groupes: action sur les groupes capturés dans l'expression régulière "
|
||||
"(entre parenthèses): liste de groupes (séparés par une virgule) (de 1 à 9) "
|
||||
"avec en option \"*\" après le nombre pour cacher le groupe\n"
|
||||
" regex: expression régulière POSIX étendue (insensible à la casse, peut "
|
||||
"commencer par \"(?-i)\" pour devenir sensible à la casse)\n"
|
||||
" del: supprimer un rmodifier\n"
|
||||
" -all: supprimer tous les rmodifiers\n"
|
||||
" missing: ajouter les rmodifiers manquants\n"
|
||||
" default: restaurer les rmodifiers par défaut\n"
|
||||
"\n"
|
||||
"Exemples:\n"
|
||||
" cacher tout ce qui est tapé après la commande /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" supprimer le rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" supprimer tous les rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "liste des rmodifiers"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s%s: erreur de création du rmodifier \"%s\" => \"%s\""
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr "caractère utilisé pour cacher une partie de la chaîne"
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "pointeur vers le rmodifier (optionnel)"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
"nom du rmodifier (peut démarrer ou se terminer par \"*\" comme caractère "
|
||||
"joker) (optionnel)"
|
||||
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "Support des scripts ruby"
|
||||
|
||||
@ -11455,9 +11327,3 @@ msgstr ""
|
||||
#, c-format
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s%s: délai d'attente dépassé pour \"%s\" avec %s"
|
||||
|
||||
#~ msgid "user name to use on server"
|
||||
#~ msgstr "nom d'utilisateur pour le serveur"
|
||||
|
||||
#~ msgid "real name to use on server"
|
||||
#~ msgstr "nom réel pour le serveur"
|
||||
|
122
po/hu.po
122
po/hu.po
@ -20,8 +20,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-02-20 12:25+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:21+0100\n"
|
||||
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: hu\n"
|
||||
@ -8428,116 +8428,6 @@ msgid ""
|
||||
"\" (received: %d arguments, expected: at least %d)"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "%s nincs elég memória az információs pult üzenethez\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s nincs elég memória az információs pult üzenethez\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "Nincs aliasz definiálva.\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "Aliaszok listája:\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "Alapértelmezett billentyűparancsok visszaállítva\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s nincs elég memória az információs pult üzenethez\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "A \"%s\" => \"%s\" aliasz elkészült\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr " időkezelők:\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "A \"%s\" aliasz eltávolítva\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%s a \"%s\" modul nem található\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "Alapértelmezett billentyűparancsok visszaállítva\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%s \"-yes\" paraméter megadása kötelező a billentyűparancsok "
|
||||
"visszaállításához (biztonsági okokból)\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] " időkezelők:\n"
|
||||
msgstr[1] " időkezelők:\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr "%s nincs elég memória az információs pult üzenethez\n"
|
||||
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "Aliaszok listája:\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s nincs elég memória az információs pult üzenethez\n"
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "Beállítások mentése a lemezre\n"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "Aliaszok listája:\n"
|
||||
@ -9875,11 +9765,3 @@ msgstr "%s DCC: nem sikerült 'nonblock' opciót beállítani a csatornán\n"
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "user name to use on server"
|
||||
#~ msgstr "használni kívánt felhasználónév az IRC szerveren"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "real name to use on server"
|
||||
#~ msgstr "az IRC szerveren használt valódi név"
|
||||
|
139
po/it.po
139
po/it.po
@ -20,8 +20,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-02-20 12:25+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:21+0100\n"
|
||||
"Last-Translator: Esteban I. Ruiz Moreno <exio4.com@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: it\n"
|
||||
@ -9450,135 +9450,6 @@ msgstr ""
|
||||
"%s%s: argomenti non sufficienti ricevuti dal client %s%s%s per il comando "
|
||||
"\"%s\" (ricevuti: %d argomenti, attesi: %d almeno)"
|
||||
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "Stringa del modificatore con espressioni regolari"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s%s: errore nella compilazione dell'espressione regolare \"%s\""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "Nessun rmodifier definito"
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "Elenco di rmodifier:"
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "Rmodifier predefiniti:"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s%s: errore nella creazione del rmodifier \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "Rmodifier \"%s\" creato"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr "%d rmodifier eliminati"
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "Rmodifier \"%s\" eliminato"
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%sRmodifier \"%s\" non trovato"
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "Rmodifier predefiniti ripristinati:"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%sErrore: l'argomento \"-yes\" è richiesto per ripristinare gli rmodifier "
|
||||
"predefiniti (motivi di sicurezza)"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] "%d rmodifier aggiunto"
|
||||
msgstr[1] "%d rmodifier aggiunti"
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr "sostituisce le stringhe del modificatore con le espressioni regolari"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
"list|listdefault || add <nome> <modifier> <gruppi> <regex> || del <nome>|-"
|
||||
"all [<nome>...] || default -yes"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
" list: elenca tutti gli rmodifier\n"
|
||||
"listdefault: elenca gli rmodifier predefiniti\n"
|
||||
" add: aggiunge un rmodifier\n"
|
||||
" nome: nome rmodifier\n"
|
||||
" modifier: elenco separato da virgole di modificatori\n"
|
||||
" gruppi: azione sui gruppi catturati nell'espressione regolare (tra "
|
||||
"parentesi): elenco separato da virgole di gruppi (da 1 a 9) con \"*\" "
|
||||
"opzionale dopo il numero per nascondere il gruppo\n"
|
||||
" regex: espressione regolare (non sensibile alle maiuscole, può "
|
||||
"iniziare con \"(?-i)\" per diventare sensibile alle maiuscole\n"
|
||||
" del: elimina rmodifier\n"
|
||||
" -all: elimina tutti gli rmodifier\n"
|
||||
" default: ripristina gli rmodifier predefiniti\n"
|
||||
"\n"
|
||||
"Esempi:\n"
|
||||
" nasconde ciò che viene digitato dopo il comando /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" elimina rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" elimina tutti gli rmodifier:\n"
|
||||
" /rmodifier del -all"
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "elenco di rmodifier"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s%s: errore nella creazione del rmodifier \"%s\" => \"%s\""
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr "carattere usato per nascondere parte di una stringa"
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "puntatore a rmodifier (opzionale)"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
"nome rmodifier (può iniziare o terminare con \"*\" come carattere jolly) "
|
||||
"(opzionale)"
|
||||
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "Supporto agli script ruby"
|
||||
|
||||
@ -10895,9 +10766,3 @@ msgstr ""
|
||||
#, c-format
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s%s: timeout per \"%s\" con %s"
|
||||
|
||||
#~ msgid "user name to use on server"
|
||||
#~ msgstr "nome utente da usare sul server"
|
||||
|
||||
#~ msgid "real name to use on server"
|
||||
#~ msgstr "nome reale da usare sul server"
|
||||
|
135
po/ja.po
135
po/ja.po
@ -20,8 +20,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-02-20 12:25+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:21+0100\n"
|
||||
"Last-Translator: AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>\n"
|
||||
"Language-Team: Japanese <https://github.com/l/WeeChat>\n"
|
||||
"Language: ja\n"
|
||||
@ -9443,131 +9443,6 @@ msgstr ""
|
||||
"%s%s: クライアント %s%s%s から受け付けたコマンド \"%s\" に対する引数が足りま"
|
||||
"せん (受信: %d 個の引数、必要数: 少なくとも %d 個)"
|
||||
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "正規表現を用いた文字列置換"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s%s: 正規表現のコンパイル中にエラー \"%s\""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "rmodifier は定義されていません"
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "rmodifier のリスト:"
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "デフォルトの rmodifier:"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s%s: rmodifier の作成中にエラー \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "Rmodifier \"%s\" を作成"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr "%d 個の rmodifier を削除"
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "Rmodifier \"%s\" を削除"
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%sRmodifier \"%s\" が見つかりません"
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "デフォルトに戻す場合の rmodifier:"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%sエラー: デフォルト rmodifiers に戻すためには \"-yes\" 引数が必要 (セキュリ"
|
||||
"ティ上の問題)"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] "%d 個の rmodifier を追加"
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr "正規表現で modifier 文字列を変更"
|
||||
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
" list: 全ての rmodifier をリストアップ\n"
|
||||
"listdefault: デフォルトの rmodifier をリストアップ\n"
|
||||
" add: rmodifier を追加\n"
|
||||
" name: rmodifier の名前\n"
|
||||
" modifiers: rmodifier のコンマ区切りリスト\n"
|
||||
" groups: 正規表現にマッチするグループに対するアクション (括弧内): グルー"
|
||||
"プ (1 から 9) のコンマ区切りリスト、グループを隠すには番号の後ろに任意で \"*"
|
||||
"\" をつける\n"
|
||||
" regex: POSIX 拡張正規表現 (大文字小文字の区別無し、\"(?-i)\" で始めれば"
|
||||
"区別有り)\n"
|
||||
" del: rmodifier を削除\n"
|
||||
" -all: 全ての rmodifier を削除\n"
|
||||
" missing: 見つからない rmodifier を追加\n"
|
||||
" default: デフォルトの rmodifier に戻す\n"
|
||||
"\n"
|
||||
"例:\n"
|
||||
" コマンド /password に続く入力は全て隠す:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" rmodifier \"password\" を削除:\n"
|
||||
" /rmodifier del password\n"
|
||||
" 全ての rmodifiers を削除:\n"
|
||||
" /rmodifier del -all"
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "rmodifier のリスト"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s%s: rmodifier \"%s\" => \"%s\" の作成中にエラー"
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr "文字列の一部を隠すための文字"
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "rmodifier ポインタ (任意)"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr "rmodifier 名 (ジョーカーとして \"*\" で始めるか終われる) (任意)"
|
||||
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "ruby スクリプトサポート"
|
||||
|
||||
@ -10964,9 +10839,3 @@ msgstr "%s%s: ソケットにオプション \"nonblock\" を設定できませ
|
||||
#, c-format
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s%s: \"%s\" のタイムアウト %s"
|
||||
|
||||
#~ msgid "user name to use on server"
|
||||
#~ msgstr "サーバで使用するユーザ名"
|
||||
|
||||
#~ msgid "real name to use on server"
|
||||
#~ msgstr "サーバで使用するリアルネーム"
|
||||
|
137
po/pl.po
137
po/pl.po
@ -21,8 +21,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-02-20 12:25+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:21+0100\n"
|
||||
"Last-Translator: Krzysztof Korościk <soltys@szluug.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: pl\n"
|
||||
@ -9619,133 +9619,6 @@ msgstr ""
|
||||
"%s%s: otrzymano za mało argumentów od klienta %s%s%s dla komendy \"%s"
|
||||
"\" (otrzymano: %d argumentów, spodziewano się: przynajmniej %d)"
|
||||
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "Modyfikator ciągów z obsługą wyrażeń regularnych"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s%s: błąd podczas kompilowania wyrażenia regularnego \"%s\""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "Nie zdefiniowano rmodifiera"
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "Lista rmodifierów:"
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "Domyślne rmodifiery:"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s%s: błąd podczas tworzenia rmodifiera \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "Utworzono rmodifier \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr "%d rmodifierów usunięto"
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "Rmodifier \"%s\" został usunięty"
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%sNie znaleziono rmodifiera \"%s\""
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "Przywrócono domyślne rmofifiery:"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%sBłąd: argument \"-yes\" wymagany do przywrócenia domyślnych rmodifierów "
|
||||
"(względy bezpieczeństwa)"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] "dodano %d rmodiffer"
|
||||
msgstr[1] "dodano %d rmodifery"
|
||||
msgstr[2] "dodano %d rmodiferów"
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr "zmiany ciągów modyfikujących przez wyrażenia regularne"
|
||||
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
"list|listdefault || add <nazwa> <modyfikatory> <grupy> <regex> || del "
|
||||
"<nazwa>|-all [<nazwa>...] || missing || default -yes"
|
||||
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
" list: lista wszystkich rmodifierów\n"
|
||||
"listdefault: lista domyślnych rmodifierów\n"
|
||||
" add: dodaje rmodifier\n"
|
||||
" nazwa: nazwa rmodifiera\n"
|
||||
" modyfikatory: oddzielona przecinkiem lista modyfikatorów\n"
|
||||
" grupy: akcja na grupach przechwyconych w wyrażeniu regularnym (wewnątrz "
|
||||
"nawiasów): oddzielona przecinkami lista grup (od 1 do 9) z opcjonalnym "
|
||||
"znakiem \"*\" po numerze, aby ukryć grupę\n"
|
||||
" regex: rozszerzone wyrażenia regularne POSIX (wielkość znaków nie ma "
|
||||
"znaczenia, jeśli poprzedzone \"(?-i)\" wielkość znaków ma znaczenie)\n"
|
||||
" del: usuwa rmodifier\n"
|
||||
" -all: usuwa wszystkie rmodifiery\n"
|
||||
" missing: dodaje brakujące rmodifiery\n"
|
||||
" default: przywraca domyślne rmodifiery\n"
|
||||
"\n"
|
||||
"Przykłady:\n"
|
||||
" ukrywa wszystko wpisane za komendą /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" usuwa rmodifier \"hasło\":\n"
|
||||
" /rmodifier del hasło\n"
|
||||
" kasuje wszystkie rmodifiery:\n"
|
||||
" /rmodifier del -all"
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "lista rmodifierów"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s%s: błąd podczas tworzenia rmodifier \"%s\" => \"%s\""
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr "znak używany do ukrycia części ciągu"
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "wskaźnik rmodifier (opcjonalny)"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr "nazwa rmodifier (może się zaczynać lub kończyć \"*\") (opcjonalne)"
|
||||
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "Wsparcie dla skryptów ruby"
|
||||
|
||||
@ -11152,9 +11025,3 @@ msgstr "%s%s: nie można ustawić opcji \"nonblock\" dla gniazda: błąd %d %s"
|
||||
#, c-format
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s%s: przekroczono czas na \"%s\" z %s"
|
||||
|
||||
#~ msgid "user name to use on server"
|
||||
#~ msgstr "nazwa użytkownika używana na serwerze"
|
||||
|
||||
#~ msgid "real name to use on server"
|
||||
#~ msgstr "prawdziwa nazwa używana na serwerze"
|
||||
|
118
po/pt_BR.po
118
po/pt_BR.po
@ -21,8 +21,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-02-20 12:25+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:21+0100\n"
|
||||
"Last-Translator: Sergio Durigan Junior <sergiosdj@gmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: pt_BR\n"
|
||||
@ -8661,114 +8661,6 @@ msgstr ""
|
||||
"%s%s: argumentos insuficientes recebidos do cliente %d para o comando \"%s"
|
||||
"\" (recebidos: %d argumentos, esperados: ao menos %d)"
|
||||
|
||||
#, fuzzy
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "alterar string modifier com expressões regulares"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s%s: erro ao compilar expressão regular \"%s\""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "Nenhuma rmodifier definido"
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "Lista de rmodifiers:"
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "Rmodifiers padrões:"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s%s: erro ao criar rmodifier \"%s\""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "Rmodifier \"%s\" criado"
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr "%d rmodifiers removidos"
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "Rmodifier \"%s\" removido"
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%sRmodifier \"%s\" não encontrado"
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "Rmodifiers padrões restaurados:"
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%sErro: argumento \"-yes\" é necessário para restaurar rmodifiers padrões "
|
||||
"(motivo de segurança)"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] "%d rmodifiers removidos"
|
||||
msgstr[1] "%d rmodifiers removidos"
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr "alterar string modifier com expressões regulares"
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
"list|listdefault || add <nome> <modificadores> <grupos> <expressão_regular> "
|
||||
"|| del <nome>|-all [<nome>...] || default -yes"
|
||||
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "lista de rmodifiers"
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s%s: erro ao criar rmodifier \"%s\" => \"%s\""
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr "caractere usado para esconder parte de uma string"
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "ponteiro rmodifier (opcional)"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
"nome do rmodifier (pode começar ou terminar com \"*\" como um coringa) "
|
||||
"(opcional)"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "list de scripts"
|
||||
@ -10100,9 +9992,3 @@ msgstr "%s%s: não foi possível setar opção \"nonblock\" para o socket"
|
||||
#, c-format
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s%s: tempo esgotado para \"%s\" com %s"
|
||||
|
||||
#~ msgid "user name to use on server"
|
||||
#~ msgstr "nome de usuário para utilizar no servidor"
|
||||
|
||||
#~ msgid "real name to use on server"
|
||||
#~ msgstr "nome real para utilizar no servidor"
|
||||
|
122
po/ru.po
122
po/ru.po
@ -21,8 +21,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"PO-Revision-Date: 2014-02-20 12:25+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-03-04 11:21+0100\n"
|
||||
"Last-Translator: Aleksey V Zapparov AKA ixti <ixti@member.fsf.org>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
"Language: ru\n"
|
||||
@ -8453,116 +8453,6 @@ msgid ""
|
||||
"\" (received: %d arguments, expected: at least %d)"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr "%s недостаточно памяти для сообщения в строке информации\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr "%s недостаточно памяти для сообщения в строке информации\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "No rmodifier defined"
|
||||
msgstr "Сокращения не заданы.\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr "Список сокращений:\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr "Комбинации клавиш по умолчанию восстановлены\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr "%s недостаточно памяти для сообщения в строке информации\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr "Сокращение \"%s\" => \"%s\" создано\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr " обработчики таймера:\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr "Сокращение \"%s\" удалено\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr "%s plugin \"%s\" не найден\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr "Комбинации клавиш по умолчанию восстановлены\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
"%s аргумент \"-yes\" необходим для сброса ключей (в целях безопасности)\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] " обработчики таймера:\n"
|
||||
msgstr[1] " обработчики таймера:\n"
|
||||
msgstr[2] " обработчики таймера:\n"
|
||||
|
||||
#, fuzzy
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr "%s недостаточно памяти для сообщения в строке информации\n"
|
||||
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "list of rmodifiers"
|
||||
msgstr "Список сокращений:\n"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr "%s недостаточно памяти для сообщения в строке информации\n"
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr "Сохраняю конфигурацию\n"
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "Список сокращений:\n"
|
||||
@ -9896,11 +9786,3 @@ msgstr "%s DCC: не могу установить неблокирующий р
|
||||
#, fuzzy, c-format
|
||||
msgid "%s%s: timeout for \"%s\" with %s"
|
||||
msgstr "%s нет аргумента для параметра \"%s\"\n"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "user name to use on server"
|
||||
#~ msgstr "имя пользователя, используемое на IRC сервере"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "real name to use on server"
|
||||
#~ msgstr "настоящее имя, используемое на IRC сервере"
|
||||
|
@ -236,18 +236,6 @@ SET(WEECHAT_SOURCES
|
||||
./src/plugins/relay/weechat/relay-weechat-nicklist.h
|
||||
./src/plugins/relay/weechat/relay-weechat-protocol.c
|
||||
./src/plugins/relay/weechat/relay-weechat-protocol.h
|
||||
./src/plugins/rmodifier/rmodifier.c
|
||||
./src/plugins/rmodifier/rmodifier-command.c
|
||||
./src/plugins/rmodifier/rmodifier-command.h
|
||||
./src/plugins/rmodifier/rmodifier-completion.c
|
||||
./src/plugins/rmodifier/rmodifier-completion.h
|
||||
./src/plugins/rmodifier/rmodifier-config.c
|
||||
./src/plugins/rmodifier/rmodifier-config.h
|
||||
./src/plugins/rmodifier/rmodifier-debug.c
|
||||
./src/plugins/rmodifier/rmodifier-debug.h
|
||||
./src/plugins/rmodifier/rmodifier.h
|
||||
./src/plugins/rmodifier/rmodifier-info.c
|
||||
./src/plugins/rmodifier/rmodifier-info.h
|
||||
./src/plugins/ruby/weechat-ruby-api.c
|
||||
./src/plugins/ruby/weechat-ruby-api.h
|
||||
./src/plugins/ruby/weechat-ruby.c
|
||||
|
101
po/tr.po
101
po/tr.po
@ -20,7 +20,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2014-02-16 11:21+0100\n"
|
||||
"Last-Translator: Hasan Kiran <sunder67@hotmail.com>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@ -7552,105 +7552,6 @@ msgid ""
|
||||
"\" (received: %d arguments, expected: at least %d)"
|
||||
msgstr ""
|
||||
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr ""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr ""
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr ""
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] ""
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr ""
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr ""
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr ""
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr "Ruby betik desteği"
|
||||
|
||||
|
102
po/weechat.pot
102
po/weechat.pot
@ -21,7 +21,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: WeeChat 0.4.1-dev\n"
|
||||
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
|
||||
"POT-Creation-Date: 2014-03-02 08:35+0100\n"
|
||||
"POT-Creation-Date: 2014-03-04 11:15+0100\n"
|
||||
"PO-Revision-Date: 2013-02-14 18:20+0100\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
|
||||
@ -7512,106 +7512,6 @@ msgid ""
|
||||
"\" (received: %d arguments, expected: at least %d)"
|
||||
msgstr ""
|
||||
|
||||
msgid "String modifier with regular expressions"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error compiling regular expression \"%s\""
|
||||
msgstr ""
|
||||
|
||||
msgid "No rmodifier defined"
|
||||
msgstr ""
|
||||
|
||||
msgid "List of rmodifiers:"
|
||||
msgstr ""
|
||||
|
||||
msgid "Default rmodifiers:"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" created"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifiers removed"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "Rmodifier \"%s\" removed"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%sRmodifier \"%s\" not found"
|
||||
msgstr ""
|
||||
|
||||
msgid "Default rmodifiers restored:"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%sError: \"-yes\" argument is required for restoring default rmodifiers "
|
||||
"(security reason)"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%d rmodifier added"
|
||||
msgid_plural "%d rmodifiers added"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
msgid "alter modifier strings with regular expressions"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"list|listdefault || add <name> <modifiers> <groups> <regex> || del <name>|-"
|
||||
"all [<name>...] || missing || default -yes"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression (inside "
|
||||
"parentheses): comma separated list of groups (from 1 to 9) with optional \"*"
|
||||
"\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, can start "
|
||||
"by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"
|
||||
msgstr ""
|
||||
|
||||
msgid "list of rmodifiers"
|
||||
msgstr ""
|
||||
|
||||
#, c-format
|
||||
msgid "%s%s: error creating rmodifier \"%s\" => \"%s\""
|
||||
msgstr ""
|
||||
|
||||
msgid "char used to hide part of a string"
|
||||
msgstr ""
|
||||
|
||||
msgid "rmodifier pointer (optional)"
|
||||
msgstr ""
|
||||
|
||||
msgid "rmodifier name (can start or end with \"*\" as joker) (optional)"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support of ruby scripts"
|
||||
msgstr ""
|
||||
|
||||
|
@ -88,10 +88,6 @@ IF(ENABLE_RELAY)
|
||||
ADD_SUBDIRECTORY( relay )
|
||||
ENDIF(ENABLE_RELAY)
|
||||
|
||||
IF(ENABLE_RMODIFIER)
|
||||
ADD_SUBDIRECTORY( rmodifier )
|
||||
ENDIF(ENABLE_RMODIFIER)
|
||||
|
||||
IF(ENABLE_SCRIPT)
|
||||
ADD_SUBDIRECTORY( script )
|
||||
ENDIF(ENABLE_SCRIPT)
|
||||
|
@ -67,10 +67,6 @@ if PLUGIN_RELAY
|
||||
relay_dir = relay
|
||||
endif
|
||||
|
||||
if PLUGIN_RMODIFIER
|
||||
rmodifier_dir = rmodifier
|
||||
endif
|
||||
|
||||
if PLUGIN_SCRIPT
|
||||
script_dir = script
|
||||
endif
|
||||
@ -108,9 +104,9 @@ xfer_dir = xfer
|
||||
endif
|
||||
|
||||
SUBDIRS = . $(alias_dir) $(aspell_dir) $(charset_dir) $(fifo_dir) $(irc_dir) \
|
||||
$(logger_dir) $(relay_dir) $(rmodifier_dir) $(script_dir) \
|
||||
$(perl_dir) $(python_dir) $(ruby_dir) $(lua_dir) $(tcl_dir) \
|
||||
$(guile_dir) $(trigger_dir) $(xfer_dir)
|
||||
$(logger_dir) $(relay_dir) $(script_dir) $(perl_dir) $(python_dir) \
|
||||
$(ruby_dir) $(lua_dir) $(tcl_dir) $(guile_dir) $(trigger_dir) \
|
||||
$(xfer_dir)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt
|
||||
|
||||
|
@ -1,31 +0,0 @@
|
||||
#
|
||||
# Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
ADD_LIBRARY(rmodifier MODULE
|
||||
rmodifier.c rmodifier.h
|
||||
rmodifier-command.c rmodifier-command.h
|
||||
rmodifier-completion.c rmodifier-completion.h
|
||||
rmodifier-config.c rmodifier-config.h
|
||||
rmodifier-debug.c rmodifier-debug.h
|
||||
rmodifier-info.c rmodifier-info.h)
|
||||
SET_TARGET_PROPERTIES(rmodifier PROPERTIES PREFIX "")
|
||||
|
||||
TARGET_LINK_LIBRARIES(rmodifier)
|
||||
|
||||
INSTALL(TARGETS rmodifier LIBRARY DESTINATION ${LIBDIR}/plugins)
|
@ -1,41 +0,0 @@
|
||||
#
|
||||
# Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
AM_CPPFLAGS = -DLOCALEDIR=\"$(datadir)/locale\" $(RMODIFIER_CFLAGS)
|
||||
|
||||
libdir = ${weechat_libdir}/plugins
|
||||
|
||||
lib_LTLIBRARIES = rmodifier.la
|
||||
|
||||
rmodifier_la_SOURCES = rmodifier.c \
|
||||
rmodifier.h \
|
||||
rmodifier-command.c \
|
||||
rmodifier-command.h \
|
||||
rmodifier-completion.c \
|
||||
rmodifier-completion.h \
|
||||
rmodifier-config.c \
|
||||
rmodifier-config.h \
|
||||
rmodifier-debug.c \
|
||||
rmodifier-debug.h \
|
||||
rmodifier-info.c \
|
||||
rmodifier-info.h
|
||||
rmodifier_la_LDFLAGS = -module -no-undefined
|
||||
rmodifier_la_LIBADD = $(RMODIFIER_LFLAGS)
|
||||
|
||||
EXTRA_DIST = CMakeLists.txt
|
@ -1,268 +0,0 @@
|
||||
/*
|
||||
* rmodifier-command.c - rmodifier command
|
||||
*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "rmodifier.h"
|
||||
#include "rmodifier-command.h"
|
||||
#include "rmodifier-config.h"
|
||||
|
||||
|
||||
/*
|
||||
* Displays a rmodifier.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_command_print (const char *name, const char *modifiers,
|
||||
const char *str_regex, const char *groups)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
" %s[%s%s%s]%s %s%s: \"%s%s%s\" [%s%s%s]",
|
||||
weechat_color ("chat_delimiters"),
|
||||
weechat_color ("chat"),
|
||||
name,
|
||||
weechat_color ("chat_delimiters"),
|
||||
weechat_color ("chat"),
|
||||
modifiers,
|
||||
weechat_color ("chat_delimiters"),
|
||||
weechat_color ("chat_host"),
|
||||
str_regex,
|
||||
weechat_color ("chat_delimiters"),
|
||||
weechat_color ("chat"),
|
||||
groups,
|
||||
weechat_color ("chat_delimiters"));
|
||||
}
|
||||
|
||||
/*
|
||||
* Displays list of rmodifiers.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_command_list (const char *message)
|
||||
{
|
||||
struct t_rmodifier *ptr_rmodifier;
|
||||
|
||||
if (rmodifier_list)
|
||||
{
|
||||
weechat_printf (NULL, "");
|
||||
weechat_printf (NULL, message);
|
||||
for (ptr_rmodifier = rmodifier_list; ptr_rmodifier;
|
||||
ptr_rmodifier = ptr_rmodifier->next_rmodifier)
|
||||
{
|
||||
rmodifier_command_print (ptr_rmodifier->name,
|
||||
ptr_rmodifier->modifiers,
|
||||
ptr_rmodifier->str_regex,
|
||||
ptr_rmodifier->groups);
|
||||
}
|
||||
}
|
||||
else
|
||||
weechat_printf (NULL, _("No rmodifier defined"));
|
||||
}
|
||||
|
||||
/*
|
||||
* Callback for command "/rmodifier": manages rmodifiers.
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_command_cb (void *data, struct t_gui_buffer *buffer, int argc,
|
||||
char **argv, char **argv_eol)
|
||||
{
|
||||
struct t_rmodifier *ptr_rmodifier;
|
||||
struct t_config_option *ptr_option;
|
||||
int i, count;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) buffer;
|
||||
|
||||
/* list all rmodifiers */
|
||||
if ((argc == 1)
|
||||
|| ((argc == 2) && (weechat_strcasecmp (argv[1], "list") == 0)))
|
||||
{
|
||||
rmodifier_command_list (_("List of rmodifiers:"));
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/* list default rmodifiers */
|
||||
if (weechat_strcasecmp (argv[1], "listdefault") == 0)
|
||||
{
|
||||
weechat_printf (NULL, "");
|
||||
weechat_printf (NULL, _("Default rmodifiers:"));
|
||||
for (i = 0; rmodifier_config_default_list[i][0]; i++)
|
||||
{
|
||||
rmodifier_command_print (rmodifier_config_default_list[i][0],
|
||||
rmodifier_config_default_list[i][1],
|
||||
rmodifier_config_default_list[i][2],
|
||||
rmodifier_config_default_list[i][3]);
|
||||
}
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/* add a rmodifier */
|
||||
if (weechat_strcasecmp (argv[1], "add") == 0)
|
||||
{
|
||||
if (argc < 6)
|
||||
return WEECHAT_RC_ERROR;
|
||||
ptr_rmodifier = rmodifier_new (argv[2], argv[3], argv_eol[5], argv[4]);
|
||||
if (!ptr_rmodifier)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: error creating rmodifier \"%s\""),
|
||||
weechat_prefix ("error"), RMODIFIER_PLUGIN_NAME,
|
||||
argv[2]);
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
/* create configuration option */
|
||||
ptr_option = weechat_config_search_option (rmodifier_config_file,
|
||||
rmodifier_config_section_modifier,
|
||||
argv[2]);
|
||||
if (ptr_option)
|
||||
weechat_config_option_free (ptr_option);
|
||||
rmodifier_config_modifier_new_option (ptr_rmodifier->name,
|
||||
ptr_rmodifier->modifiers,
|
||||
ptr_rmodifier->str_regex,
|
||||
ptr_rmodifier->groups);
|
||||
|
||||
/* display message */
|
||||
weechat_printf (NULL, _("Rmodifier \"%s\" created"),
|
||||
ptr_rmodifier->name);
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/* delete a rmodifier */
|
||||
if (weechat_strcasecmp (argv[1], "del") == 0)
|
||||
{
|
||||
if (argc < 3)
|
||||
return WEECHAT_RC_ERROR;
|
||||
if (weechat_strcasecmp (argv[2], "-all") == 0)
|
||||
{
|
||||
count = rmodifier_count;
|
||||
rmodifier_free_all ();
|
||||
weechat_config_section_free_options (rmodifier_config_section_modifier);
|
||||
if (count > 0)
|
||||
weechat_printf (NULL, _("%d rmodifiers removed"), count);
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 2; i < argc; i++)
|
||||
{
|
||||
ptr_rmodifier = rmodifier_search (argv[i]);
|
||||
if (ptr_rmodifier)
|
||||
{
|
||||
ptr_option = weechat_config_search_option (rmodifier_config_file,
|
||||
rmodifier_config_section_modifier,
|
||||
argv[i]);
|
||||
if (ptr_option)
|
||||
weechat_config_option_free (ptr_option);
|
||||
rmodifier_free (ptr_rmodifier);
|
||||
weechat_printf (NULL, _("Rmodifier \"%s\" removed"),
|
||||
argv[i]);
|
||||
}
|
||||
else
|
||||
{
|
||||
weechat_printf (NULL, _("%sRmodifier \"%s\" not found"),
|
||||
weechat_prefix ("error"), argv[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/* restore default rmodifiers (only with "-yes", for security reason) */
|
||||
if (weechat_strcasecmp (argv[1], "default") == 0)
|
||||
{
|
||||
if ((argc >= 3) && (weechat_strcasecmp (argv[2], "-yes") == 0))
|
||||
{
|
||||
rmodifier_free_all ();
|
||||
weechat_config_section_free_options (rmodifier_config_section_modifier);
|
||||
rmodifier_create_default ();
|
||||
rmodifier_command_list (_("Default rmodifiers restored:"));
|
||||
}
|
||||
else
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%sError: \"-yes\" argument is required for "
|
||||
"restoring default rmodifiers (security reason)"),
|
||||
weechat_prefix ("error"));
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/* add missing rmodifiers */
|
||||
if (weechat_strcasecmp (argv[1], "missing") == 0)
|
||||
{
|
||||
count = rmodifier_add_missing ();
|
||||
weechat_printf (NULL,
|
||||
NG_("%d rmodifier added", "%d rmodifiers added", count),
|
||||
count);
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
return WEECHAT_RC_ERROR;
|
||||
}
|
||||
|
||||
/*
|
||||
* Hooks command.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_command_init ()
|
||||
{
|
||||
weechat_hook_command (
|
||||
"rmodifier",
|
||||
N_("alter modifier strings with regular expressions"),
|
||||
N_("list|listdefault"
|
||||
" || add <name> <modifiers> <groups> <regex>"
|
||||
" || del <name>|-all [<name>...]"
|
||||
" || missing"
|
||||
" || default -yes"),
|
||||
N_(" list: list all rmodifiers\n"
|
||||
"listdefault: list default rmodifiers\n"
|
||||
" add: add a rmodifier\n"
|
||||
" name: name of rmodifier\n"
|
||||
" modifiers: comma separated list of modifiers\n"
|
||||
" groups: action on groups captured in regular expression "
|
||||
"(inside parentheses): comma separated list of groups (from 1 to 9) "
|
||||
"with optional \"*\" after number to hide the group\n"
|
||||
" regex: POSIX extended regular expression (case insensitive, "
|
||||
"can start by \"(?-i)\" to become case sensitive)\n"
|
||||
" del: delete a rmodifier\n"
|
||||
" -all: delete all rmodifiers\n"
|
||||
" missing: add missing rmodifiers\n"
|
||||
" default: restore default rmodifiers\n"
|
||||
"\n"
|
||||
"Examples:\n"
|
||||
" hide everything typed after a command /password:\n"
|
||||
" /rmodifier add password input_text_display 1,2* ^(/password +)(.*)\n"
|
||||
" delete rmodifier \"password\":\n"
|
||||
" /rmodifier del password\n"
|
||||
" delete all rmodifiers:\n"
|
||||
" /rmodifier del -all"),
|
||||
"list"
|
||||
" || listdefault"
|
||||
" || add %(rmodifier)"
|
||||
" || del %(rmodifier)|-all %(rmodifier)|%*"
|
||||
" || missing"
|
||||
" || default",
|
||||
&rmodifier_command_cb, NULL);
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef __WEECHAT_RMODIFIER_COMMAND_H
|
||||
#define __WEECHAT_RMODIFIER_COMMAND_H 1
|
||||
|
||||
extern void rmodifier_command_init ();
|
||||
|
||||
#endif /* __WEECHAT_RMODIFIER_COMMAND_H */
|
@ -1,64 +0,0 @@
|
||||
/*
|
||||
* rmodifier-completion.c - completion for rmodifier command
|
||||
*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "rmodifier.h"
|
||||
#include "rmodifier-completion.h"
|
||||
|
||||
|
||||
/*
|
||||
* Adds list of rmodifiers to completion list.
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_completion_cb (void *data, const char *completion_item,
|
||||
struct t_gui_buffer *buffer,
|
||||
struct t_gui_completion *completion)
|
||||
{
|
||||
struct t_rmodifier *ptr_rmodifier;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) completion_item;
|
||||
(void) buffer;
|
||||
|
||||
for (ptr_rmodifier = rmodifier_list; ptr_rmodifier;
|
||||
ptr_rmodifier = ptr_rmodifier->next_rmodifier)
|
||||
{
|
||||
weechat_hook_completion_list_add (completion, ptr_rmodifier->name,
|
||||
0, WEECHAT_LIST_POS_SORT);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Hooks completion.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_completion_init ()
|
||||
{
|
||||
weechat_hook_completion ("rmodifier", N_("list of rmodifiers"),
|
||||
&rmodifier_completion_cb, NULL);
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef __WEECHAT_RMODIFIER_COMPLETION_H
|
||||
#define __WEECHAT_RMODIFIER_COMPLETION_H 1
|
||||
|
||||
extern void rmodifier_completion_init ();
|
||||
|
||||
#endif /* __WEECHAT_RMODIFIER_COMPLETION_H */
|
@ -1,298 +0,0 @@
|
||||
/*
|
||||
* rmodifier-config.c - rmodifier configuration options (file rmodifier.conf)
|
||||
*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <strings.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "rmodifier.h"
|
||||
#include "rmodifier-config.h"
|
||||
|
||||
|
||||
struct t_config_file *rmodifier_config_file = NULL;
|
||||
struct t_config_section *rmodifier_config_section_modifier = NULL;
|
||||
|
||||
struct t_config_option *rmodifier_config_look_hide_char;
|
||||
|
||||
char *rmodifier_config_default_list[][4] =
|
||||
{
|
||||
{ "command_auth", "history_add,input_text_display,irc_command_auth",
|
||||
"^(/(msg|quote) +nickserv +(id|identify|register|ghost \\S+|release \\S+) +)(.*)", "1,4*"
|
||||
},
|
||||
{ "message_auth", "irc_message_auth",
|
||||
"^(.*(id|identify|register|ghost \\S+|release \\S+) +)(.*)", "1,3*"
|
||||
},
|
||||
{ "server", "history_add,input_text_display",
|
||||
"^(/(server|connect) .*-(sasl_)?password=)(\\S+)(.*)", "1,4*,5"
|
||||
},
|
||||
{ "oper", "history_add,input_text_display",
|
||||
"^(/oper +\\S+ +)(.*)", "1,2*"
|
||||
},
|
||||
{ "quote_pass", "history_add,input_text_display",
|
||||
"^(/quote pass +)(.*)", "1,2*"
|
||||
},
|
||||
{ "set_pass", "history_add",
|
||||
"^(/set +\\S*password\\S* +)(.*)", "1,2*"
|
||||
},
|
||||
{ "secure", "history_add,input_text_display",
|
||||
"^(/secure +(passphrase|decrypt|set \\S+) +)(.*)", "1,3*"
|
||||
},
|
||||
{ NULL, NULL, NULL, NULL },
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* Reloads rmodifier configuration file.
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_config_reload (void *data, struct t_config_file *config_file)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
|
||||
rmodifier_free_all ();
|
||||
weechat_config_section_free_options (rmodifier_config_section_modifier);
|
||||
|
||||
return weechat_config_reload (config_file);
|
||||
}
|
||||
|
||||
/*
|
||||
* Callback for changes on options in section "modifier".
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_config_modifier_change_cb (void *data, struct t_config_option *option)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
|
||||
rmodifier_new_with_string (weechat_config_option_get_pointer (option, "name"),
|
||||
weechat_config_option_get_pointer (option, "value"));
|
||||
}
|
||||
|
||||
/*
|
||||
* Callback called when a rmodifier option is deleted in section "modifier".
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_config_modifier_delete_cb (void *data, struct t_config_option *option)
|
||||
{
|
||||
struct t_rmodifier *ptr_rmodifier;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
|
||||
ptr_rmodifier = rmodifier_search (weechat_config_option_get_pointer (option,
|
||||
"name"));
|
||||
if (ptr_rmodifier)
|
||||
rmodifier_free (ptr_rmodifier);
|
||||
}
|
||||
|
||||
/*
|
||||
* Writes default rmodifiers in in section "modifier".
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_config_modifier_write_default_cb (void *data,
|
||||
struct t_config_file *config_file,
|
||||
const char *section_name)
|
||||
{
|
||||
int i;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
|
||||
if (!weechat_config_write_line (config_file, section_name, NULL))
|
||||
return WEECHAT_CONFIG_WRITE_ERROR;
|
||||
|
||||
for (i = 0; rmodifier_config_default_list[i][0]; i++)
|
||||
{
|
||||
if (!weechat_config_write_line (config_file,
|
||||
rmodifier_config_default_list[i][0],
|
||||
"\"%s;%s;%s\"",
|
||||
rmodifier_config_default_list[i][1],
|
||||
rmodifier_config_default_list[i][2],
|
||||
rmodifier_config_default_list[i][3]))
|
||||
return WEECHAT_CONFIG_WRITE_ERROR;
|
||||
}
|
||||
|
||||
return WEECHAT_CONFIG_WRITE_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Creates a new option in section "modifier".
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_config_modifier_new_option (const char *name, const char *modifiers,
|
||||
const char *regex, const char *groups)
|
||||
{
|
||||
int length;
|
||||
char *value;
|
||||
|
||||
length = strlen (modifiers) + 1 + strlen (regex) + 1 +
|
||||
((groups) ? strlen (groups) : 0) + 1;
|
||||
value = malloc (length);
|
||||
if (value)
|
||||
{
|
||||
snprintf (value, length, "%s;%s;%s",
|
||||
modifiers, regex,
|
||||
(groups) ? groups : "");
|
||||
weechat_config_new_option (rmodifier_config_file,
|
||||
rmodifier_config_section_modifier,
|
||||
name, "string", NULL,
|
||||
NULL, 0, 0, "", value, 0,
|
||||
NULL, NULL,
|
||||
&rmodifier_config_modifier_change_cb, NULL,
|
||||
&rmodifier_config_modifier_delete_cb, NULL);
|
||||
free (value);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Callback called when an option is created in section "modifier".
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_config_modifier_create_option_cb (void *data,
|
||||
struct t_config_file *config_file,
|
||||
struct t_config_section *section,
|
||||
const char *option_name,
|
||||
const char *value)
|
||||
{
|
||||
struct t_rmodifier *ptr_rmodifier;
|
||||
int rc;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) config_file;
|
||||
(void) section;
|
||||
|
||||
/* create rmodifier */
|
||||
ptr_rmodifier = rmodifier_search (option_name);
|
||||
if (ptr_rmodifier)
|
||||
rmodifier_free (ptr_rmodifier);
|
||||
if (value && value[0])
|
||||
{
|
||||
ptr_rmodifier = rmodifier_new_with_string (option_name, value);
|
||||
if (ptr_rmodifier)
|
||||
{
|
||||
rc = WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE;
|
||||
/* create option */
|
||||
rmodifier_config_modifier_new_option (ptr_rmodifier->name,
|
||||
ptr_rmodifier->modifiers,
|
||||
ptr_rmodifier->str_regex,
|
||||
ptr_rmodifier->groups);
|
||||
}
|
||||
else
|
||||
rc = WEECHAT_CONFIG_OPTION_SET_ERROR;
|
||||
}
|
||||
else
|
||||
rc = WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE;
|
||||
|
||||
if (rc == WEECHAT_CONFIG_OPTION_SET_ERROR)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: error creating rmodifier "
|
||||
"\"%s\" => \"%s\""),
|
||||
weechat_prefix ("error"), RMODIFIER_PLUGIN_NAME,
|
||||
option_name, value);
|
||||
}
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initializes rmodifier configuration file.
|
||||
*
|
||||
* Returns:
|
||||
* 1: OK
|
||||
* 0: error
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_config_init ()
|
||||
{
|
||||
struct t_config_section *ptr_section;
|
||||
|
||||
rmodifier_config_file = weechat_config_new (RMODIFIER_CONFIG_NAME,
|
||||
&rmodifier_config_reload, NULL);
|
||||
if (!rmodifier_config_file)
|
||||
return 0;
|
||||
|
||||
/* look */
|
||||
ptr_section = weechat_config_new_section (rmodifier_config_file, "look",
|
||||
0, 0,
|
||||
NULL, NULL, NULL, NULL,
|
||||
NULL, NULL, NULL, NULL,
|
||||
NULL, NULL);
|
||||
if (!ptr_section)
|
||||
{
|
||||
weechat_config_free (rmodifier_config_file);
|
||||
return 0;
|
||||
}
|
||||
|
||||
rmodifier_config_look_hide_char = weechat_config_new_option (
|
||||
rmodifier_config_file, ptr_section,
|
||||
"hide_char", "string",
|
||||
N_("char used to hide part of a string"),
|
||||
NULL, 0, 0, "*", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
|
||||
/* modifier */
|
||||
ptr_section = weechat_config_new_section (rmodifier_config_file, "modifier",
|
||||
0, 0,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
&rmodifier_config_modifier_write_default_cb, NULL,
|
||||
&rmodifier_config_modifier_create_option_cb, NULL,
|
||||
NULL, NULL);
|
||||
if (!ptr_section)
|
||||
{
|
||||
weechat_config_free (rmodifier_config_file);
|
||||
return 0;
|
||||
}
|
||||
rmodifier_config_section_modifier = ptr_section;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Reads rmodifier configuration file.
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_config_read ()
|
||||
{
|
||||
return weechat_config_read (rmodifier_config_file);
|
||||
}
|
||||
|
||||
/*
|
||||
* Writes rmodifier configuration file.
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_config_write ()
|
||||
{
|
||||
return weechat_config_write (rmodifier_config_file);
|
||||
}
|
@ -1,40 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef __WEECHAT_RMODIFIER_CONFIG_H
|
||||
#define __WEECHAT_RMODIFIER_CONFIG_H 1
|
||||
|
||||
#define RMODIFIER_CONFIG_NAME "rmodifier"
|
||||
|
||||
extern struct t_config_file *rmodifier_config_file;
|
||||
extern struct t_config_section *rmodifier_config_section_modifier;
|
||||
|
||||
extern struct t_config_option *rmodifier_config_look_hide_char;
|
||||
|
||||
extern char *rmodifier_config_default_list[][4];
|
||||
|
||||
extern void rmodifier_config_modifier_new_option (const char *name,
|
||||
const char *modifiers,
|
||||
const char *regex,
|
||||
const char *groups);
|
||||
extern int rmodifier_config_init ();
|
||||
extern int rmodifier_config_read ();
|
||||
extern int rmodifier_config_write ();
|
||||
|
||||
#endif /* __WEECHAT_RMODIFIER_CONFIG_H */
|
@ -1,69 +0,0 @@
|
||||
/*
|
||||
* rmodifier-debug.c - debug functions for rmodifier plugin
|
||||
*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "rmodifier.h"
|
||||
#include "rmodifier-debug.h"
|
||||
|
||||
|
||||
/*
|
||||
* Dumps rmodifier data in WeeChat log file.
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_debug_signal_debug_dump_cb (void *data, const char *signal,
|
||||
const char *type_data, void *signal_data)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) signal;
|
||||
(void) type_data;
|
||||
|
||||
if (!signal_data
|
||||
|| (weechat_strcasecmp ((char *)signal_data, RMODIFIER_PLUGIN_NAME) == 0))
|
||||
{
|
||||
weechat_log_printf ("");
|
||||
weechat_log_printf ("***** \"%s\" plugin dump *****",
|
||||
weechat_plugin->name);
|
||||
|
||||
rmodifier_print_log ();
|
||||
|
||||
weechat_log_printf ("");
|
||||
weechat_log_printf ("***** End of \"%s\" plugin dump *****",
|
||||
weechat_plugin->name);
|
||||
}
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initializes debug for rmodifier plugin.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_debug_init ()
|
||||
{
|
||||
weechat_hook_signal ("debug_dump",
|
||||
&rmodifier_debug_signal_debug_dump_cb, NULL);
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef __WEECHAT_RMODIFIER_DEBUG_H
|
||||
#define __WEECHAT_RMODIFIER_DEBUG_H 1
|
||||
|
||||
extern void rmodifier_debug_init ();
|
||||
|
||||
#endif /* __WEECHAT_RMODIFIER_DEBUG_H */
|
@ -1,101 +0,0 @@
|
||||
/*
|
||||
* rmodifier-info.c - info and infolist hooks for rmodifier plugin
|
||||
*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "rmodifier.h"
|
||||
#include "rmodifier-info.h"
|
||||
|
||||
|
||||
/*
|
||||
* Returns infolist with rmodifier info.
|
||||
*/
|
||||
|
||||
struct t_infolist *
|
||||
rmodifier_info_get_infolist_cb (void *data, const char *infolist_name,
|
||||
void *pointer, const char *arguments)
|
||||
{
|
||||
struct t_infolist *ptr_infolist;
|
||||
struct t_rmodifier *ptr_rmodifier;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) data;
|
||||
(void) arguments;
|
||||
|
||||
if (!infolist_name || !infolist_name[0])
|
||||
return NULL;
|
||||
|
||||
if (weechat_strcasecmp (infolist_name, RMODIFIER_PLUGIN_NAME) == 0)
|
||||
{
|
||||
if (pointer && !rmodifier_valid (pointer))
|
||||
return NULL;
|
||||
|
||||
ptr_infolist = weechat_infolist_new ();
|
||||
if (ptr_infolist)
|
||||
{
|
||||
if (pointer)
|
||||
{
|
||||
/* build list with only one rmodifier */
|
||||
if (!rmodifier_add_to_infolist (ptr_infolist, pointer))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* build list with all rmodifiers matching arguments */
|
||||
for (ptr_rmodifier = rmodifier_list; ptr_rmodifier;
|
||||
ptr_rmodifier = ptr_rmodifier->next_rmodifier)
|
||||
{
|
||||
if (!arguments || !arguments[0]
|
||||
|| weechat_string_match (ptr_rmodifier->name, arguments, 0))
|
||||
{
|
||||
if (!rmodifier_add_to_infolist (ptr_infolist, ptr_rmodifier))
|
||||
{
|
||||
weechat_infolist_free (ptr_infolist);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
return ptr_infolist;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* Hooks infolist.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_info_init ()
|
||||
{
|
||||
weechat_hook_infolist ("rmodifier", N_("list of rmodifiers"),
|
||||
N_("rmodifier pointer (optional)"),
|
||||
N_("rmodifier name (can start or end with \"*\" as "
|
||||
"joker) (optional)"),
|
||||
&rmodifier_info_get_infolist_cb, NULL);
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef __WEECHAT_RMODIFIER_INFO_H
|
||||
#define __WEECHAT_RMODIFIER_INFO_H 1
|
||||
|
||||
extern void rmodifier_info_init ();
|
||||
|
||||
#endif /* __WEECHAT_RMODIFIER_INFO_H */
|
@ -1,610 +0,0 @@
|
||||
/*
|
||||
* rmodifier.c - alter modifier strings with regular expressions
|
||||
*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../weechat-plugin.h"
|
||||
#include "rmodifier.h"
|
||||
#include "rmodifier-command.h"
|
||||
#include "rmodifier-completion.h"
|
||||
#include "rmodifier-config.h"
|
||||
#include "rmodifier-debug.h"
|
||||
#include "rmodifier-info.h"
|
||||
|
||||
|
||||
WEECHAT_PLUGIN_NAME(RMODIFIER_PLUGIN_NAME);
|
||||
WEECHAT_PLUGIN_DESCRIPTION(N_("String modifier with regular expressions"));
|
||||
WEECHAT_PLUGIN_AUTHOR("Sébastien Helleu <flashcode@flashtux.org>");
|
||||
WEECHAT_PLUGIN_VERSION(WEECHAT_VERSION);
|
||||
WEECHAT_PLUGIN_LICENSE(WEECHAT_LICENSE);
|
||||
|
||||
struct t_weechat_plugin *weechat_rmodifier_plugin = NULL;
|
||||
|
||||
struct t_rmodifier *rmodifier_list = NULL;
|
||||
struct t_rmodifier *last_rmodifier = NULL;
|
||||
int rmodifier_count = 0;
|
||||
struct t_weelist *rmodifier_hook_list = NULL;
|
||||
|
||||
|
||||
/*
|
||||
* Checks if a rmodifier pointer is valid.
|
||||
*
|
||||
* Returns:
|
||||
* 1: rmodifier exists
|
||||
* 0: rmodifier does not exist
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_valid (struct t_rmodifier *rmodifier)
|
||||
{
|
||||
struct t_rmodifier *ptr_rmodifier;
|
||||
|
||||
if (!rmodifier)
|
||||
return 0;
|
||||
|
||||
for (ptr_rmodifier = rmodifier_list; ptr_rmodifier;
|
||||
ptr_rmodifier = ptr_rmodifier->next_rmodifier)
|
||||
{
|
||||
if (ptr_rmodifier == rmodifier)
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* rmodifier not found */
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Searches for a rmodifier by name.
|
||||
*
|
||||
* Returns pointer to rmodifier found, NULL if not found.
|
||||
*/
|
||||
|
||||
struct t_rmodifier *
|
||||
rmodifier_search (const char *name)
|
||||
{
|
||||
struct t_rmodifier *ptr_rmodifier;
|
||||
|
||||
for (ptr_rmodifier = rmodifier_list; ptr_rmodifier;
|
||||
ptr_rmodifier = ptr_rmodifier->next_rmodifier)
|
||||
{
|
||||
if (strcmp (name, ptr_rmodifier->name) == 0)
|
||||
return ptr_rmodifier;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* Hides a string (using char defined in option "rmodifier.look.hide_char").
|
||||
*
|
||||
* Note: result must be freed after use.
|
||||
*/
|
||||
|
||||
char *
|
||||
rmodifier_hide_string (const char *string)
|
||||
{
|
||||
int length, i;
|
||||
char *result;
|
||||
|
||||
if (!string || !string[0])
|
||||
return NULL;
|
||||
|
||||
length = weechat_utf8_strlen (string);
|
||||
result = malloc ((length * strlen (weechat_config_string (rmodifier_config_look_hide_char))) + 1);
|
||||
if (!result)
|
||||
return NULL;
|
||||
|
||||
result[0] = '\0';
|
||||
for (i = 0; i < length; i++)
|
||||
{
|
||||
strcat (result, weechat_config_string (rmodifier_config_look_hide_char));
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/*
|
||||
* Replaces groups in a string, using regex_match found by call to regexec().
|
||||
*/
|
||||
|
||||
char *
|
||||
rmodifier_replace_groups (const char *string, regmatch_t regex_match[],
|
||||
const char *groups)
|
||||
{
|
||||
char *result, *result2, *str_group, *string_to_add;
|
||||
const char *ptr_groups;
|
||||
int length, num_group;
|
||||
|
||||
length = 1;
|
||||
result = malloc (length);
|
||||
if (!result)
|
||||
return NULL;
|
||||
|
||||
result[0] = '\0';
|
||||
ptr_groups = groups;
|
||||
while (ptr_groups && ptr_groups[0])
|
||||
{
|
||||
if ((ptr_groups[0] >= '1') && (ptr_groups[0] <= '9'))
|
||||
{
|
||||
num_group = ptr_groups[0] - '0';
|
||||
if (regex_match[num_group].rm_so >= 0)
|
||||
{
|
||||
str_group = weechat_strndup (string + regex_match[num_group].rm_so,
|
||||
regex_match[num_group].rm_eo -regex_match[num_group].rm_so);
|
||||
if (str_group)
|
||||
{
|
||||
string_to_add = NULL;
|
||||
if (ptr_groups[1] == '*')
|
||||
string_to_add = rmodifier_hide_string (str_group);
|
||||
else
|
||||
string_to_add = strdup (str_group);
|
||||
|
||||
if (string_to_add)
|
||||
{
|
||||
length += strlen (string_to_add);
|
||||
result2 = realloc (result, length);
|
||||
if (!result2)
|
||||
{
|
||||
if (result)
|
||||
free (result);
|
||||
return NULL;
|
||||
}
|
||||
result = result2;
|
||||
strcat (result, string_to_add);
|
||||
free (string_to_add);
|
||||
}
|
||||
free (str_group);
|
||||
}
|
||||
}
|
||||
}
|
||||
ptr_groups = weechat_utf8_next_char (ptr_groups);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/*
|
||||
* Callback for a modifier.
|
||||
*/
|
||||
|
||||
char *
|
||||
rmodifier_modifier_cb (void *data, const char *modifier,
|
||||
const char *modifier_data, const char *string)
|
||||
{
|
||||
struct t_rmodifier *rmodifier;
|
||||
regmatch_t regex_match[9];
|
||||
int i;
|
||||
|
||||
/* make C compiler happy */
|
||||
(void) modifier;
|
||||
(void) modifier_data;
|
||||
|
||||
rmodifier = (struct t_rmodifier *)data;
|
||||
|
||||
/* reset matching groups */
|
||||
for (i = 0; i < 9; i++)
|
||||
{
|
||||
regex_match[i].rm_so = -1;
|
||||
}
|
||||
|
||||
/* execute regex and return modified string if matching */
|
||||
if (regexec (rmodifier->regex, string, 9, regex_match, 0) == 0)
|
||||
{
|
||||
return rmodifier_replace_groups (string, regex_match,
|
||||
rmodifier->groups);
|
||||
}
|
||||
|
||||
/* regex not matching */
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* Hooks modifiers for a rmodifier.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_hook_modifiers (struct t_rmodifier *rmodifier)
|
||||
{
|
||||
char **argv, str_modifier[128];
|
||||
int argc, i;
|
||||
|
||||
argv = weechat_string_split (rmodifier->modifiers, ",", 0, 0, &argc);
|
||||
|
||||
if (argv)
|
||||
{
|
||||
rmodifier->hooks = malloc (sizeof (*rmodifier->hooks) * argc);
|
||||
if (rmodifier->hooks)
|
||||
{
|
||||
for (i = 0; i < argc; i++)
|
||||
{
|
||||
/*
|
||||
* we use a high priority here, so that other modifiers
|
||||
* (from other plugins) will be called after this one
|
||||
*/
|
||||
snprintf (str_modifier, sizeof (str_modifier),
|
||||
"5000|%s", argv[i]);
|
||||
rmodifier->hooks[i] = weechat_hook_modifier (str_modifier,
|
||||
&rmodifier_modifier_cb,
|
||||
rmodifier);
|
||||
}
|
||||
rmodifier->hooks_count = argc;
|
||||
}
|
||||
weechat_string_free_split (argv);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Creates a new rmodifier and adds it to rmodifier list.
|
||||
*
|
||||
* Returns pointer to new rmodifier, NULL if error.
|
||||
*/
|
||||
|
||||
struct t_rmodifier *
|
||||
rmodifier_new (const char *name, const char *modifiers, const char *str_regex,
|
||||
const char *groups)
|
||||
{
|
||||
struct t_rmodifier *new_rmodifier, *ptr_rmodifier;
|
||||
regex_t *regex;
|
||||
|
||||
if (!name || !name[0] || !modifiers || !modifiers[0]
|
||||
|| !str_regex || !str_regex[0])
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
regex = malloc (sizeof (*regex));
|
||||
if (!regex)
|
||||
return NULL;
|
||||
|
||||
if (weechat_string_regcomp (regex, str_regex,
|
||||
REG_EXTENDED | REG_ICASE) != 0)
|
||||
{
|
||||
weechat_printf (NULL,
|
||||
_("%s%s: error compiling regular expression \"%s\""),
|
||||
weechat_prefix ("error"), RMODIFIER_PLUGIN_NAME,
|
||||
str_regex);
|
||||
free (regex);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
ptr_rmodifier = rmodifier_search (name);
|
||||
if (ptr_rmodifier)
|
||||
rmodifier_free (ptr_rmodifier);
|
||||
|
||||
new_rmodifier = malloc (sizeof (*new_rmodifier));
|
||||
if (new_rmodifier)
|
||||
{
|
||||
new_rmodifier->name = strdup (name);
|
||||
new_rmodifier->hooks = NULL;
|
||||
new_rmodifier->modifiers = strdup (modifiers);
|
||||
new_rmodifier->str_regex = strdup (str_regex);
|
||||
new_rmodifier->regex = regex;
|
||||
new_rmodifier->groups = strdup ((groups) ? groups : "");
|
||||
|
||||
/* create modifiers */
|
||||
rmodifier_hook_modifiers (new_rmodifier);
|
||||
|
||||
if (rmodifier_list)
|
||||
{
|
||||
/* add rmodifier to end of list */
|
||||
new_rmodifier->prev_rmodifier = last_rmodifier;
|
||||
new_rmodifier->next_rmodifier = NULL;
|
||||
last_rmodifier->next_rmodifier = new_rmodifier;
|
||||
last_rmodifier = new_rmodifier;
|
||||
}
|
||||
else
|
||||
{
|
||||
new_rmodifier->prev_rmodifier = NULL;
|
||||
new_rmodifier->next_rmodifier = NULL;
|
||||
rmodifier_list = new_rmodifier;
|
||||
last_rmodifier = new_rmodifier;
|
||||
}
|
||||
|
||||
rmodifier_count++;
|
||||
}
|
||||
|
||||
return new_rmodifier;
|
||||
}
|
||||
|
||||
/*
|
||||
* Creates a rmodifier with a single string, which contains:
|
||||
* "modifiers;regex;groups".
|
||||
*
|
||||
* Returns pointer to new rmodifier, NULL if error.
|
||||
*/
|
||||
|
||||
struct t_rmodifier *
|
||||
rmodifier_new_with_string (const char *name, const char *value)
|
||||
{
|
||||
struct t_rmodifier *new_rmodifier;
|
||||
char *pos1, *pos2, *modifiers, *str_regex;
|
||||
|
||||
new_rmodifier = NULL;
|
||||
|
||||
pos1 = strchr (value, ';');
|
||||
pos2 = strrchr (value, ';');
|
||||
if (pos1 && pos2 && (pos2 > pos1))
|
||||
{
|
||||
modifiers = weechat_strndup (value, pos1 - value);
|
||||
str_regex = weechat_strndup (pos1 + 1, pos2 - (pos1 + 1));
|
||||
if (modifiers && str_regex)
|
||||
{
|
||||
new_rmodifier = rmodifier_new (name,
|
||||
modifiers, str_regex, pos2 + 1);
|
||||
}
|
||||
if (modifiers)
|
||||
free (modifiers);
|
||||
if (str_regex)
|
||||
free (str_regex);
|
||||
}
|
||||
|
||||
return new_rmodifier;
|
||||
}
|
||||
|
||||
/*
|
||||
* Creates default rmodifiers.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_create_default ()
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; rmodifier_config_default_list[i][0]; i++)
|
||||
{
|
||||
if (rmodifier_new (rmodifier_config_default_list[i][0],
|
||||
rmodifier_config_default_list[i][1],
|
||||
rmodifier_config_default_list[i][2],
|
||||
rmodifier_config_default_list[i][3]))
|
||||
{
|
||||
rmodifier_config_modifier_new_option (rmodifier_config_default_list[i][0],
|
||||
rmodifier_config_default_list[i][1],
|
||||
rmodifier_config_default_list[i][2],
|
||||
rmodifier_config_default_list[i][3]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Adds missing rmodifiers.
|
||||
*
|
||||
* Returns the number of rmodifiers added.
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_add_missing ()
|
||||
{
|
||||
int i, count;
|
||||
|
||||
count = 0;
|
||||
|
||||
for (i = 0; rmodifier_config_default_list[i][0]; i++)
|
||||
{
|
||||
if (!rmodifier_search (rmodifier_config_default_list[i][0]))
|
||||
{
|
||||
if (rmodifier_new (rmodifier_config_default_list[i][0],
|
||||
rmodifier_config_default_list[i][1],
|
||||
rmodifier_config_default_list[i][2],
|
||||
rmodifier_config_default_list[i][3]))
|
||||
{
|
||||
rmodifier_config_modifier_new_option (rmodifier_config_default_list[i][0],
|
||||
rmodifier_config_default_list[i][1],
|
||||
rmodifier_config_default_list[i][2],
|
||||
rmodifier_config_default_list[i][3]);
|
||||
count++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
/*
|
||||
* Frees a rmodifier and removes it from list.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_free (struct t_rmodifier *rmodifier)
|
||||
{
|
||||
struct t_rmodifier *new_rmodifier_list;
|
||||
int i;
|
||||
|
||||
/* remove rmodifier from list */
|
||||
if (last_rmodifier == rmodifier)
|
||||
last_rmodifier = rmodifier->prev_rmodifier;
|
||||
if (rmodifier->prev_rmodifier)
|
||||
{
|
||||
(rmodifier->prev_rmodifier)->next_rmodifier = rmodifier->next_rmodifier;
|
||||
new_rmodifier_list = rmodifier_list;
|
||||
}
|
||||
else
|
||||
new_rmodifier_list = rmodifier->next_rmodifier;
|
||||
if (rmodifier->next_rmodifier)
|
||||
(rmodifier->next_rmodifier)->prev_rmodifier = rmodifier->prev_rmodifier;
|
||||
|
||||
/* free data */
|
||||
if (rmodifier->name)
|
||||
free (rmodifier->name);
|
||||
if (rmodifier->modifiers)
|
||||
free (rmodifier->modifiers);
|
||||
if (rmodifier->hooks)
|
||||
{
|
||||
for (i = 0; i < rmodifier->hooks_count; i++)
|
||||
{
|
||||
weechat_unhook (rmodifier->hooks[i]);
|
||||
}
|
||||
free (rmodifier->hooks);
|
||||
}
|
||||
if (rmodifier->str_regex)
|
||||
free (rmodifier->str_regex);
|
||||
if (rmodifier->regex)
|
||||
{
|
||||
regfree (rmodifier->regex);
|
||||
free (rmodifier->regex);
|
||||
}
|
||||
if (rmodifier->groups)
|
||||
free (rmodifier->groups);
|
||||
free (rmodifier);
|
||||
|
||||
rmodifier_count--;
|
||||
|
||||
rmodifier_list = new_rmodifier_list;
|
||||
}
|
||||
|
||||
/*
|
||||
* Frees all rmodifiers.
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_free_all ()
|
||||
{
|
||||
while (rmodifier_list)
|
||||
{
|
||||
rmodifier_free (rmodifier_list);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Adds a rmodifier in an infolist.
|
||||
*
|
||||
* Returns:
|
||||
* 1: OK
|
||||
* 0: error
|
||||
*/
|
||||
|
||||
int
|
||||
rmodifier_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_rmodifier *rmodifier)
|
||||
{
|
||||
struct t_infolist_item *ptr_item;
|
||||
char option_name[64];
|
||||
int i;
|
||||
|
||||
if (!infolist || !rmodifier)
|
||||
return 0;
|
||||
|
||||
ptr_item = weechat_infolist_new_item (infolist);
|
||||
if (!ptr_item)
|
||||
return 0;
|
||||
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "name", rmodifier->name))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "modifiers", rmodifier->modifiers))
|
||||
return 0;
|
||||
for (i = 0; i < rmodifier->hooks_count; i++)
|
||||
{
|
||||
snprintf (option_name, sizeof (option_name), "hook_%05d", i + 1);
|
||||
if (!weechat_infolist_new_var_pointer (ptr_item, option_name,
|
||||
rmodifier->hooks[i]))
|
||||
return 0;
|
||||
}
|
||||
if (!weechat_infolist_new_var_integer (ptr_item, "hooks_count", rmodifier->hooks_count))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "str_regex", rmodifier->str_regex))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_pointer (ptr_item, "regex", rmodifier->regex))
|
||||
return 0;
|
||||
if (!weechat_infolist_new_var_string (ptr_item, "groups", rmodifier->groups))
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Prints rmodifiers in WeeChat log file (usually for crash dump).
|
||||
*/
|
||||
|
||||
void
|
||||
rmodifier_print_log ()
|
||||
{
|
||||
struct t_rmodifier *ptr_rmodifier;
|
||||
int i;
|
||||
|
||||
for (ptr_rmodifier = rmodifier_list; ptr_rmodifier;
|
||||
ptr_rmodifier = ptr_rmodifier->next_rmodifier)
|
||||
{
|
||||
weechat_log_printf ("");
|
||||
weechat_log_printf ("[rmodifier %s (addr:0x%lx)]", ptr_rmodifier->name, ptr_rmodifier);
|
||||
weechat_log_printf (" modifiers. . . . . . : '%s'", ptr_rmodifier->modifiers);
|
||||
weechat_log_printf (" hooks. . . . . . . . : 0x%lx", ptr_rmodifier->hooks);
|
||||
for (i = 0; i < ptr_rmodifier->hooks_count; i++)
|
||||
{
|
||||
weechat_log_printf (" hooks[%03d] . . . . : 0x%lx", i, ptr_rmodifier->hooks[i]);
|
||||
}
|
||||
weechat_log_printf (" hooks_count. . . . . : %d", ptr_rmodifier->hooks_count);
|
||||
weechat_log_printf (" str_regex. . . . . . : '%s'", ptr_rmodifier->str_regex);
|
||||
weechat_log_printf (" regex. . . . . . . . : 0x%lx", ptr_rmodifier->regex);
|
||||
weechat_log_printf (" groups . . . . . . . : '%s'", ptr_rmodifier->groups);
|
||||
weechat_log_printf (" prev_rmodifier . . . : 0x%lx", ptr_rmodifier->prev_rmodifier);
|
||||
weechat_log_printf (" next_rmodifier . . . : 0x%lx", ptr_rmodifier->next_rmodifier);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Initializes rmodifier plugin.
|
||||
*/
|
||||
|
||||
int
|
||||
weechat_plugin_init (struct t_weechat_plugin *plugin, int argc, char *argv[])
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) argc;
|
||||
(void) argv;
|
||||
|
||||
weechat_plugin = plugin;
|
||||
|
||||
rmodifier_count = 0;
|
||||
|
||||
rmodifier_hook_list = weechat_list_new ();
|
||||
|
||||
if (!rmodifier_config_init ())
|
||||
return WEECHAT_RC_ERROR;
|
||||
|
||||
rmodifier_config_read ();
|
||||
|
||||
rmodifier_command_init ();
|
||||
rmodifier_completion_init ();
|
||||
|
||||
rmodifier_info_init ();
|
||||
|
||||
rmodifier_debug_init ();
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Ends rmodifier plugin.
|
||||
*/
|
||||
|
||||
int
|
||||
weechat_plugin_end (struct t_weechat_plugin *plugin)
|
||||
{
|
||||
/* make C compiler happy */
|
||||
(void) plugin;
|
||||
|
||||
rmodifier_config_write ();
|
||||
rmodifier_free_all ();
|
||||
weechat_list_free (rmodifier_hook_list);
|
||||
weechat_config_free (rmodifier_config_file);
|
||||
|
||||
return WEECHAT_RC_OK;
|
||||
}
|
@ -1,63 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2010-2014 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef __WEECHAT_RMODIFIER_H
|
||||
#define __WEECHAT_RMODIFIER_H 1
|
||||
|
||||
#include <regex.h>
|
||||
|
||||
#define weechat_plugin weechat_rmodifier_plugin
|
||||
#define RMODIFIER_PLUGIN_NAME "rmodifier"
|
||||
|
||||
struct t_rmodifier
|
||||
{
|
||||
char *name; /* name of rmodifier */
|
||||
char *modifiers; /* modifiers */
|
||||
struct t_hook **hooks; /* hooks for modifiers */
|
||||
int hooks_count; /* number of hooks */
|
||||
char *str_regex; /* string with regex */
|
||||
regex_t *regex; /* regex */
|
||||
char *groups; /* actions on groups in regex */
|
||||
/* (keep, delete, hide) */
|
||||
struct t_rmodifier *prev_rmodifier; /* link to previous rmodifier */
|
||||
struct t_rmodifier *next_rmodifier; /* link to next rmodifier */
|
||||
};
|
||||
|
||||
extern struct t_rmodifier *rmodifier_list;
|
||||
extern int rmodifier_count;
|
||||
|
||||
extern struct t_weechat_plugin *weechat_rmodifier_plugin;
|
||||
|
||||
extern int rmodifier_valid (struct t_rmodifier *rmodifier);
|
||||
extern struct t_rmodifier *rmodifier_search (const char *name);
|
||||
struct t_rmodifier *rmodifier_new (const char *name,
|
||||
const char *modifiers,
|
||||
const char *str_regex,
|
||||
const char *groups);
|
||||
extern struct t_rmodifier *rmodifier_new_with_string (const char *name,
|
||||
const char *value);
|
||||
extern void rmodifier_create_default ();
|
||||
extern int rmodifier_add_missing ();
|
||||
extern void rmodifier_free (struct t_rmodifier *rmodifier);
|
||||
extern void rmodifier_free_all ();
|
||||
extern int rmodifier_add_to_infolist (struct t_infolist *infolist,
|
||||
struct t_rmodifier *rmodifier);
|
||||
extern void rmodifier_print_log ();
|
||||
|
||||
#endif /* __WEECHAT_RMODIFIER_H */
|
@ -57,7 +57,7 @@ struct timeval;
|
||||
* please change the date with current one; for a second change at same
|
||||
* date, increment the 01, otherwise please keep 01.
|
||||
*/
|
||||
#define WEECHAT_PLUGIN_API_VERSION "20140221-01"
|
||||
#define WEECHAT_PLUGIN_API_VERSION "20140304-01"
|
||||
|
||||
/* macros for defining plugin infos */
|
||||
#define WEECHAT_PLUGIN_NAME(__name) \
|
||||
|
@ -91,7 +91,6 @@ weechat_CONTENTS="
|
||||
usr/lib/weechat/plugins/irc.dll
|
||||
usr/lib/weechat/plugins/logger.dll
|
||||
usr/lib/weechat/plugins/relay.dll
|
||||
usr/lib/weechat/plugins/rmodifier.dll
|
||||
usr/lib/weechat/plugins/script.dll
|
||||
usr/lib/weechat/plugins/trigger.dll
|
||||
usr/lib/weechat/plugins/xfer.dll
|
||||
|
Loading…
x
Reference in New Issue
Block a user