Compare commits

..

No commits in common. "a46a0733afc81c1c23b412b8793a0df4cd46a088" and "8fe517f48aadfa55148142a1cfd1e14df907feac" have entirely different histories.

751 changed files with 15868 additions and 31665 deletions

View File

@ -1,9 +0,0 @@
root = true
[*]
insert_final_newline = true
indent_style = space
[*.py]
indent_size = 4
max_line_length = 79

1
.gitattributes vendored
View File

@ -1,3 +1,2 @@
* text=auto
sandbox export-ignore sandbox export-ignore
.git* export-ignore .git* export-ignore

View File

@ -4,59 +4,29 @@ on:
push: push:
pull_request: pull_request:
# Sources of supported versions:
# * https://github.com/actions/python-versions/blob/main/versions-manifest.json
# * https://downloads.python.org/pypy/versions.json
jobs: jobs:
build: build:
runs-on: ${{ matrix.runs-on }} runs-on: ${{ matrix.runs-on }}
timeout-minutes: 10
strategy: strategy:
matrix: matrix:
include: python-version: ["3.5", "3.6", "3.7", "3.8", "3.9", "3.10.0-beta.4", "pypy-3.6", "pypy-3.7"]
- python-version: "3.12.0-alpha.7" with-opt-deps: [false, true]
runs-on: [ubuntu-latest]
exclude:
# Some of the dependencies don't work on old Python versions
- python-version: "3.4"
with-opt-deps: true with-opt-deps: true
runs-on: ubuntu-22.04 - python-version: "3.5"
- python-version: "3.11"
with-opt-deps: true with-opt-deps: true
runs-on: ubuntu-22.04
- python-version: "3.10"
with-opt-deps: true
runs-on: ubuntu-22.04
- python-version: "3.10"
with-opt-deps: false
runs-on: ubuntu-22.04
- python-version: "3.9"
with-opt-deps: true
runs-on: ubuntu-22.04
- python-version: "pypy-3.9"
with-opt-deps: true
runs-on: ubuntu-22.04
- python-version: "3.8"
with-opt-deps: true
runs-on: ubuntu-22.04
- python-version: "3.7"
with-opt-deps: true
runs-on: ubuntu-22.04
- python-version: "3.7"
with-opt-deps: false
runs-on: ubuntu-22.04
- python-version: "pypy-3.7"
with-opt-deps: false
runs-on: ubuntu-22.04
- python-version: "3.6" - python-version: "3.6"
with-opt-deps: false with-opt-deps: true
runs-on: ubuntu-20.04
- python-version: "pypy-3.6" - python-version: "pypy-3.6"
with-opt-deps: true
include:
- python-version: "3.4"
with-opt-deps: false with-opt-deps: false
runs-on: ubuntu-20.04 runs-on: ubuntu-18.04
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
@ -84,9 +54,9 @@ jobs:
supybot-test test -v --plugins-dir=./plugins/ --no-network supybot-test test -v --plugins-dir=./plugins/ --no-network
- name: Test with irctest - name: Test with irctest
if: "${{ matrix.with-opt-deps && matrix.python-version != '3.7' && matrix.python-version != 'pypy-3.7' && matrix.python-version != 'pypy-3.9' }}" if: "${{ matrix.with-opt-deps && matrix.python-version != 'pypy-3.7' }}"
run: | run: |
git clone https://github.com/progval/irctest.git git clone https://github.com/ProgVal/irctest.git
cd irctest cd irctest
pip3 install -r requirements.txt pip3 install -r requirements.txt
make limnoria PYTEST_ARGS=-vs make limnoria

3
.gitignore vendored
View File

@ -23,9 +23,6 @@ supybot.egg-info/
test-conf/ test-conf/
test-data/ test-data/
test-logs/ test-logs/
doc-conf/
doc-data/
doc-logs/
src/version.py src/version.py
INSTALL INSTALL
README.txt README.txt

View File

@ -22,6 +22,14 @@ It is the successor of
since 2010 and provides many new features, but keeps full compatibility since 2010 and provides many new features, but keeps full compatibility
with existing configurations and plugins. with existing configurations and plugins.
# Build status
Master branch: [![Build Status (master branch)](https://travis-ci.org/ProgVal/Limnoria.png?branch=master)](https://travis-ci.org/ProgVal/Limnoria)
Testing branch: [![Build Status (testing branch)](https://travis-ci.org/ProgVal/Limnoria.png?branch=testing)](https://travis-ci.org/ProgVal/Limnoria)
Limnoria supports CPython 3.4 to 3.9, CPython nightly, and Pypy 3.
# Support # Support
## Documentation ## Documentation

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,42 +0,0 @@
.\" Process this file with
.\" groff -man -Tascii limnoria-adduser.1
.\"
.TH LIMNORIA-ADDUSER 1 "APRIL 2005"
.SH NAME
limnoria-adduser \- Adds a user to a Limnoria users.conf file
.SH SYNOPSIS
.B limnoria-adduser
.RI [ options ] " users.conf
.SH DESCRIPTION
.B limnoria-adduser
adds a user to the specified users.conf file.
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-u " NAME" "\fR,\fP \-\^\-username=" NAME
Specifies the username to use for the new user.
.TP
.BR \-p " PASSWORD" "\fR,\fP \-\^\-password=" PASSWORD
Specifies the password to use for the new user.
.TP
.BR \-c " CAPABILITY" "\fR,\fP \-\^\-capability=" CAPABILITY
Capability the user should have; this option may be given
multiple times.
.SH "SEE ALSO"
.IR python (1),
.IR limnoria (1),
.IR limnoria-test (1),
.IR limnoria-botchk (1),
.IR limnoria-wizard (1),
.IR limnoria-plugin-doc (1),
.IR limnoria-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Limnoria
license, a BSD-style license.

View File

@ -1,54 +0,0 @@
.\" Process this file with
.\" groff -man -Tascii limnoria-botchk.1
.\"
.TH LIMNORIA-BOTCHK 1 "APRIL 2005"
.SH NAME
limnoria-botchk \- A script to start Limnoria if it's not already running.
.SH SYNOPSIS
.B limnoria-botchk
.RI [ options ]
.SH DESCRIPTION
.B limnoria-botchk
is a script that will start Limnoria if it detects that one is not currently
running. This can be useful for scheduling
.IR limnoria (1)
to run via
.IR cron (8).
.SH OPTIONS
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-v ", " \-\^\-verbose
Use verbose output when running the script.
.TP
.BI \-\^\-botdir= BOTDIR
Determines which directory the bot be started in.
.TP
.BI \-\^\-pidfile= PIDFILE
Specifies the name of the pidfile to look for. This should be relative
to the given botdir.
.TP
.BI \-\^\-limnoria= LIMNORIA
Specifies the location of
.IR limnoria (1).
If this is not given, it is assumed that
.IR limnoria (1)
is in the user's $PATH.
.TP
.BI \-\^\-conffile= CONFFILE
Specifies the path to the bot's configuration file. This will be used
when (re)starting the bot.
.SH "SEE ALSO"
.IR python (1),
.IR limnoria (1),
.IR limnoria-test (1),
.IR limnoria-wizard (1),
.IR limnoria-adduser (1),
.IR limnoria-plugin-doc (1),
.IR limnoria-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Limnoria
license, a BSD-style license.

View File

@ -1,43 +0,0 @@
.\" Process this file with
.\" groff -man -Tascii limnoria-plugin-create.1
.\"
.TH LIMNORIA-PLUGIN-CREATE 1 "APRIL 2005"
.SH NAME
limnoria-plugin-create \- A wizard for creating Limnoria plugins
.SH SYNOPSIS
.B limnoria-plugin-create
.RI [ options ]
.SH DESCRIPTION
.B limnoria-plugin-create
is a wizard that creates a template python source file for a new
.IR limnoria (1)
plugin.
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BI \-n " NAME" "\fR,\fP \-\^\-name=" NAME
Sets the name for the plugin.
.TP
.BR \-t ", " \-\^\-thread
Makes the plugin threaded.
.TP
.BI \-\^\-real\-name= REALNAME
Specify what real name the copyright is assigned to.
.SH "SEE ALSO"
.IR python (1),
.IR limnoria (1),
.IR limnoria-test (1),
.IR limnoria-botchk (1),
.IR limnoria-wizard (1),
.IR limnoria-adduser (1),
.IR limnoria-plugin-doc (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Limnoria
license, a BSD-style license.

View File

@ -1,48 +0,0 @@
.\" Process this file with
.\" groff -man -Tascii limnoria-plugin-doc.1
.\"
.TH LIMNORIA-PLUGIN-DOC 1 "May 2009"
.SH NAME
limnoria-plugin-doc \- Generates the documentation for a Limnoria plugin
.SH SYNOPSIS
.B limnoria-plugin-doc
.RI [ options ]
.SH DESCRIPTION
.B limnoria-plugin-doc
is used to generate documentation (StructuredText or reStructuredText format)
for a
.IR limnoria (1)
plugin.
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-c ", " \-\^\-clean
Clean the various data/conf/log directories after generating the docs.
.TP
.BR \-o ", " \-\^\-output\-dir= \fIOUTPUTDIR
Specifies the directory in which to write the documentation for the plugin.
.TP
.BR \-f ", " \-\^\-format= \fIFORMAT
Specifies which output format to use. Choices are 'rst' or 'stx'.
.TP
.BI \-\^\-plugins\-dir= PLUGINSDIRS
Looks in the given directory for plugins and generates documentation for all of
them.
.SH "SEE ALSO"
.IR python (1),
.IR limnoria (1),
.IR limnoria-test (1),
.IR limnoria-botchk (1),
.IR limnoria-wizard (1),
.IR limnoria-adduser (1),
.IR limnoria-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Limnoria
license, a BSD-style license.

View File

@ -1,35 +0,0 @@
.\" Process this file with
.\" groff -man -Tascii limnoria-reset-password.1
.\"
.TH LIMNORIA-RESET-PASSWORD 1 "JUNE 2022"
.SH NAME
limnoria-reset-password \- Changes a user's password in a Limnoria users.conf file
.SH SYNOPSIS
.B limnoria-reset-password
.RI [ options ] " users.conf
.SH DESCRIPTION
.B limnoria-reset-password
changes a user's password in a Limnoria users.conf file
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-u " NAME" "\fR,\fP \-\^\-username=" NAME
Specifies the username to use for the new user.
.TP
.BR \-p " PASSWORD" "\fR,\fP \-\^\-password=" PASSWORD
Specifies the new password to use for the new user.
.SH "SEE ALSO"
.IR python (1),
.IR limnoria (1),
.IR limnoria-adduser (1)
.SH AUTHOR
This manual page was originally written by Valentin Lorentz
<progval plus limnoria at progval dot net>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Limnoria
license, a BSD-style license.

View File

@ -1,51 +0,0 @@
.\" Process this file with
.\" groff -man -Tascii limnoria-test.1
.\"
.TH LIMNORIA-TEST 1 "OCTOBER 2005"
.SH NAME
limnoria-test \- Runs the test suite for a Limnoria plugin
.SH SYNOPSIS
.B limnoria-test
.RI [ options ] " plugins
.SH DESCRIPTION
.B limnoria-test
Runs the test suite for a Limnoria plugin
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-c ", " \-\^\-clean
Cleans the various data/conf/logs directories before running tests.
.TP
.BR \-t " TIMEOUT" "\fR,\fP \-\^\-timeout=" TIMEOUT
Specifies the timeout for tests to return responses.
.TP
.BR \-v ", " \-\^\-verbose
Sets the verbose flag, logging extra information about each test that runs.
.TP
.BR \-\^\-no\-network
Prevents the network-based tests from being run.
.TP
.BR \-\^\-trace
Traces all calls made. Unless you're really in a pinch, you probably
shouldn't do this; it results in copious amounts of output.
.TP
.BR "\fR,\fP \-\^\-plugins\-dir=" PLUGINSDIR
Looks in the given directory for plugins and loads the tests for all of them.
.SH "SEE ALSO"
.IR python (1),
.IR limnoria (1),
.IR limnoria-botchk (1),
.IR limnoria-wizard (1),
.IR limnoria-adduser (1),
.IR limnoria-plugin-doc (1),
.IR limnoria-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Limnoria
license, a BSD-style license.

View File

@ -1,42 +0,0 @@
.\" Process this file with
.\" groff -man -Tascii limnoria-wizard.1
.\"
.TH LIMNORIA-WIZARD 1 "SEPTEMBER 2004"
.SH NAME
limnoria-wizard \- A wizard for creating Limnoria configuration files
.SH SYNOPSIS
.B limnoria-wizard
.RI [ options ]
.SH DESCRIPTION
.B limnoria-wizard
is an in-depth wizard that provides a nice user interface for creating
configuration files for
.IR limnoria (1).
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.B \-\^\-allow\-root
Determines whether the wizard will be allowed to run as root. You do not
want this. Do not do it. Even if you think you want it, you do not.
.TP
.B \-\^\-no\-network
Determines whether the wizard will be allowed to run without a network
connection.
.SH "SEE ALSO"
.IR python (1),
.IR limnoria (1),
.IR limnoria-test (1),
.IR limnoria-botchk (1),
.IR limnoria-adduser (1),
.IR limnoria-plugin-doc (1),
.IR limnoria-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Limnoria
license, a BSD-style license.

View File

@ -1,66 +0,0 @@
.\" Process this file with
.\" groff -man -Tascii limnoria.1
.\"
.TH LIMNORIA 1 "JULY 2009"
.SH NAME
limnoria - A robust and user friendly Python IRC bot
.SH SYNOPSIS
.B limnoria
.RI [ options ] " configFile
.SH DESCRIPTION
.B Limnoria
is a robust, user-friendly, and programmer-friendly Python IRC bot.
It aims to be an adequate replacement for most existing IRC bots. It
includes a very flexible and powerful ACL system for controlling access
to commands, as well as more than 50 builtin plugins providing around
400 actual commands.
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-P ", " \-\^\-profile
Enable profiling.
.TP
.BI \-n " NICK" "\fR,\fP \-\^\-nick=" NICK
Nick the bot should use.
.TP
.BI \-u " USER" "\fR,\fP \-\^\-user=" USER
Full username the bot should use.
.TP
.BI \-i " IDENT" "\fR,\fP \-\^\-ident=" IDENT
Ident the bot should use.
.TP
.BR \-d ", " \-\^\-daemon
Determines whether the bot will daemonize. This is a no-op on
non-POSIX systems.
.TP
.B \-\^\-allow\-default\-owner
Determines whether the bot will allow its defaultCapabilities not to
include "\-owner", thus giving all users the owner capability by
default. This is dumb, hence we require a command-line option to
enable it.
.TP
.B \-\^\-allow\-root
Determines whether the bot will be allowed to run as root. You do not
want this. Do not do it. Even if you think you want it, you do not.
.TP
.B \-\^\-debug
Determines whether some extra debugging stuff will be logged by this
script.
.SH "SEE ALSO"
.IR python (1),
.IR limnoria-test (1),
.IR limnoria-botchk (1),
.IR limnoria-wizard (1),
.IR limnoria-adduser (1),
.IR limnoria-plugin-doc (1),
.IR limnoria-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Limnoria
license, a BSD-style license.

View File

@ -1 +0,0 @@
limnoria-adduser.1

42
man/supybot-adduser.1 Normal file
View File

@ -0,0 +1,42 @@
.\" Process this file with
.\" groff -man -Tascii supybot-adduser.1
.\"
.TH SUPYBOT-ADDUSER 1 "APRIL 2005"
.SH NAME
supybot-adduser \- Adds a user to a Supybot users.conf file
.SH SYNOPSIS
.B supybot-adduser
.RI [ options ] " users.conf
.SH DESCRIPTION
.B supybot-adduser
adds a user to the specified users.conf file.
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-u " NAME" "\fR,\fP \-\^\-username=" NAME
Specifies the username to use for the new user.
.TP
.BR \-p " PASSWORD" "\fR,\fP \-\^\-password=" PASSWORD
Specifies the password to use for the new user.
.TP
.BR \-c " CAPABILITY" "\fR,\fP \-\^\-capability=" CAPABILITY
Capability the user should have; this option may be given
multiple times.
.SH "SEE ALSO"
.IR python (1),
.IR supybot (1),
.IR supybot-test (1),
.IR supybot-botchk (1),
.IR supybot-wizard (1),
.IR supybot-plugin-doc (1),
.IR supybot-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Supybot
license, a BSD-style license.

View File

@ -1 +0,0 @@
limnoria-botchk.1

54
man/supybot-botchk.1 Normal file
View File

@ -0,0 +1,54 @@
.\" Process this file with
.\" groff -man -Tascii supybot-botchk.1
.\"
.TH SUPYBOT-BOTCHK 1 "APRIL 2005"
.SH NAME
supybot-botchk \- A script to start Supybot if it's not already running.
.SH SYNOPSIS
.B supybot-botchk
.RI [ options ]
.SH DESCRIPTION
.B supybot-botchk
is a script that will start Supybot if it detects that one is not currently
running. This can be useful for scheduling
.IR supybot (1)
to run via
.IR cron (8).
.SH OPTIONS
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-v ", " \-\^\-verbose
Use verbose output when running the script.
.TP
.BI \-\^\-botdir= BOTDIR
Determines which directory the bot be started in.
.TP
.BI \-\^\-pidfile= PIDFILE
Specifies the name of the pidfile to look for. This should be relative
to the given botdir.
.TP
.BI \-\^\-supybot= SUPYBOT
Specifies the location of
.IR supybot (1).
If this is not given, it is assumed that
.IR supybot (1)
is in the user's $PATH.
.TP
.BI \-\^\-conffile= CONFFILE
Specifies the path to the bot's configuration file. This will be used
when (re)starting the bot.
.SH "SEE ALSO"
.IR python (1),
.IR supybot (1),
.IR supybot-test (1),
.IR supybot-wizard (1),
.IR supybot-adduser (1),
.IR supybot-plugin-doc (1),
.IR supybot-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Supybot
license, a BSD-style license.

View File

@ -1 +0,0 @@
limnoria-plugin-create.1

View File

@ -0,0 +1,43 @@
.\" Process this file with
.\" groff -man -Tascii supybot-plugin-create.1
.\"
.TH SUPYBOT-PLUGIN-CREATE 1 "APRIL 2005"
.SH NAME
supybot-plugin-create \- A wizard for creating Supybot plugins
.SH SYNOPSIS
.B supybot-plugin-create
.RI [ options ]
.SH DESCRIPTION
.B supybot-plugin-create
is a wizard that creates a template python source file for a new
.IR supybot (1)
plugin.
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BI \-n " NAME" "\fR,\fP \-\^\-name=" NAME
Sets the name for the plugin.
.TP
.BR \-t ", " \-\^\-thread
Makes the plugin threaded.
.TP
.BI \-\^\-real\-name= REALNAME
Specify what real name the copyright is assigned to.
.SH "SEE ALSO"
.IR python (1),
.IR supybot (1),
.IR supybot-test (1),
.IR supybot-botchk (1),
.IR supybot-wizard (1),
.IR supybot-adduser (1),
.IR supybot-plugin-doc (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Supybot
license, a BSD-style license.

View File

@ -1 +0,0 @@
limnoria-plugin-doc.1

48
man/supybot-plugin-doc.1 Normal file
View File

@ -0,0 +1,48 @@
.\" Process this file with
.\" groff -man -Tascii supybot-plugin-doc.1
.\"
.TH SUPYBOT-PLUGIN-DOC 1 "May 2009"
.SH NAME
supybot-plugin-doc \- Generates the documentation for a Supybot plugin
.SH SYNOPSIS
.B supybot-plugin-doc
.RI [ options ]
.SH DESCRIPTION
.B supybot-plugin-doc
is used to generate documentation (StructuredText or reStructuredText format)
for a
.IR supybot (1)
plugin.
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-c ", " \-\^\-clean
Clean the various data/conf/log directories after generating the docs.
.TP
.BR \-o ", " \-\^\-output\-dir= \fIOUTPUTDIR
Specifies the directory in which to write the documentation for the plugin.
.TP
.BR \-f ", " \-\^\-format= \fIFORMAT
Specifies which output format to use. Choices are 'rst' or 'stx'.
.TP
.BI \-\^\-plugins\-dir= PLUGINSDIRS
Looks in the given directory for plugins and generates documentation for all of
them.
.SH "SEE ALSO"
.IR python (1),
.IR supybot (1),
.IR supybot-test (1),
.IR supybot-botchk (1),
.IR supybot-wizard (1),
.IR supybot-adduser (1),
.IR supybot-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Supybot
license, a BSD-style license.

View File

@ -1 +0,0 @@
limnoria-reset-password.1

View File

@ -1 +0,0 @@
limnoria-test.1

51
man/supybot-test.1 Normal file
View File

@ -0,0 +1,51 @@
.\" Process this file with
.\" groff -man -Tascii supybot-test.1
.\"
.TH SUPYBOT-TEST 1 "OCTOBER 2005"
.SH NAME
supybot-test \- Runs the test suite for a Supybot plugin
.SH SYNOPSIS
.B supybot-test
.RI [ options ] " plugins
.SH DESCRIPTION
.B supybot-test
Runs the test suite for a Supybot plugin
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-c ", " \-\^\-clean
Cleans the various data/conf/logs directories before running tests.
.TP
.BR \-t " TIMEOUT" "\fR,\fP \-\^\-timeout=" TIMEOUT
Specifies the timeout for tests to return responses.
.TP
.BR \-v ", " \-\^\-verbose
Sets the verbose flag, logging extra information about each test that runs.
.TP
.BR \-\^\-no\-network
Prevents the network-based tests from being run.
.TP
.BR \-\^\-trace
Traces all calls made. Unless you're really in a pinch, you probably
shouldn't do this; it results in copious amounts of output.
.TP
.BR "\fR,\fP \-\^\-plugins\-dir=" PLUGINSDIR
Looks in the given directory for plugins and loads the tests for all of them.
.SH "SEE ALSO"
.IR python (1),
.IR supybot (1),
.IR supybot-botchk (1),
.IR supybot-wizard (1),
.IR supybot-adduser (1),
.IR supybot-plugin-doc (1),
.IR supybot-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Supybot
license, a BSD-style license.

View File

@ -1 +0,0 @@
limnoria-wizard.1

42
man/supybot-wizard.1 Normal file
View File

@ -0,0 +1,42 @@
.\" Process this file with
.\" groff -man -Tascii supybot-wizard.1
.\"
.TH SUPYBOT-WIZARD 1 "SEPTEMBER 2004"
.SH NAME
supybot-wizard \- A wizard for creating Supybot configuration files
.SH SYNOPSIS
.B supybot-wizard
.RI [ options ]
.SH DESCRIPTION
.B supybot-wizard
is an in-depth wizard that provides a nice user interface for creating
configuration files for
.IR supybot (1).
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.B \-\^\-allow\-root
Determines whether the wizard will be allowed to run as root. You do not
want this. Do not do it. Even if you think you want it, you do not.
.TP
.B \-\^\-no\-network
Determines whether the wizard will be allowed to run without a network
connection.
.SH "SEE ALSO"
.IR python (1),
.IR supybot (1),
.IR supybot-test (1),
.IR supybot-botchk (1),
.IR supybot-adduser (1),
.IR supybot-plugin-doc (1),
.IR supybot-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Supybot
license, a BSD-style license.

View File

@ -1 +0,0 @@
limnoria.1

66
man/supybot.1 Normal file
View File

@ -0,0 +1,66 @@
.\" Process this file with
.\" groff -man -Tascii supybot.1
.\"
.TH SUPYBOT 1 "JULY 2009"
.SH NAME
supybot - A robust and user friendly Python IRC bot
.SH SYNOPSIS
.B supybot
.RI [ options ] " configFile
.SH DESCRIPTION
.B Supybot
is a robust, user-friendly, and programmer-friendly Python IRC bot.
It aims to be an adequate replacement for most existing IRC bots. It
includes a very flexible and powerful ACL system for controlling access
to commands, as well as more than 50 builtin plugins providing around
400 actual commands.
.SH OPTIONS
.TP
.B \-\^\-version
Show version of program.
.TP
.BR \-h ", " \-\^\-help
Show summary of options.
.TP
.BR \-P ", " \-\^\-profile
Enable profiling.
.TP
.BI \-n " NICK" "\fR,\fP \-\^\-nick=" NICK
Nick the bot should use.
.TP
.BI \-u " USER" "\fR,\fP \-\^\-user=" USER
Full username the bot should use.
.TP
.BI \-i " IDENT" "\fR,\fP \-\^\-ident=" IDENT
Ident the bot should use.
.TP
.BR \-d ", " \-\^\-daemon
Determines whether the bot will daemonize. This is a no-op on
non-POSIX systems.
.TP
.B \-\^\-allow\-default\-owner
Determines whether the bot will allow its defaultCapabilities not to
include "\-owner", thus giving all users the owner capability by
default. This is dumb, hence we require a command-line option to
enable it.
.TP
.B \-\^\-allow\-root
Determines whether the bot will be allowed to run as root. You do not
want this. Do not do it. Even if you think you want it, you do not.
.TP
.B \-\^\-debug
Determines whether some extra debugging stuff will be logged by this
script.
.SH "SEE ALSO"
.IR python (1),
.IR supybot-test (1),
.IR supybot-botchk (1),
.IR supybot-wizard (1),
.IR supybot-adduser (1),
.IR supybot-plugin-doc (1),
.IR supybot-plugin-create (1)
.SH AUTHOR
This manual page was originally written by James McCoy
<vega dot james at gmail dot com>. Permission is granted to copy,
distribute and/or modify this document under the terms of the Supybot
license, a BSD-style license.

View File

@ -5,13 +5,11 @@ Documentation for the Admin plugin for Supybot
Purpose Purpose
------- -------
These are commands useful for administrating the bot; they all require their These are commands useful for administrating the bot; they all require their
caller to have the 'admin' capability. This plugin is loaded by default. caller to have the 'admin' capability. This plugin is loaded by default.
Usage Usage
----- -----
This plugin provides access to administrative commands, such as This plugin provides access to administrative commands, such as
adding capabilities, managing ignore lists, and joining channels. adding capabilities, managing ignore lists, and joining channels.
This is a core Supybot plugin that should not be removed! This is a core Supybot plugin that should not be removed!
@ -20,7 +18,6 @@ This is a core Supybot plugin that should not be removed!
Commands Commands
-------- --------
.. _command-admin-acmd: .. _command-admin-acmd:
acmd <command> [<arg> ...] acmd <command> [<arg> ...]
@ -80,7 +77,7 @@ Configuration
supybot.plugins.Admin.public supybot.plugins.Admin.public
This config variable defaults to "True", is not network-specific, and is not channel-specific. This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether this plugin is publicly visible. Determines whether this plugin is publicly visible.

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2004-2005, Jeremiah Fincher # Copyright (c) 2004-2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2004-2005, Jeremiah Fincher # Copyright (c) 2004-2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Supybot\n" "Project-Id-Version: Supybot\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-08-17 13:46+CEST\n"
"PO-Revision-Date: 2011-10-31 13:37+0100\n" "PO-Revision-Date: 2011-10-31 13:37+0100\n"
"Last-Translator: Florian Besser <fbesser@gmail.com>\n" "Last-Translator: Florian Besser <fbesser@gmail.com>\n"
"Language-Team: German <fbesser@gmail.com>\n" "Language-Team: German <fbesser@gmail.com>\n"
@ -13,38 +13,31 @@ msgstr ""
"X-Poedit-Language: German\n" "X-Poedit-Language: German\n"
"X-Poedit-Country: Germany\n" "X-Poedit-Country: Germany\n"
#: plugin.py:46 #: plugin.py:54
msgid ""
"This plugin provides access to administrative commands, such as\n"
" adding capabilities, managing ignore lists, and joining channels.\n"
" This is a core Supybot plugin that should not be removed!"
msgstr ""
#: plugin.py:57
msgid "Nick/channel temporarily unavailable." msgid "Nick/channel temporarily unavailable."
msgstr "Nick/Kanal temporär nicht verfügbar." msgstr "Nick/Kanal temporär nicht verfügbar."
#: plugin.py:85 #: plugin.py:72
msgid "Cannot join %s, it's full." msgid "Cannot join %s, it's full."
msgstr "Kann %s nicht beitreten, der Kanal ist voll." msgstr "Kann %s nicht beitreten, der Kanal ist voll."
#: plugin.py:93 #: plugin.py:80
msgid "Cannot join %s, I was not invited." msgid "Cannot join %s, I was not invited."
msgstr "Kann %s nicht beitreten, ich wurde nicht eingeladen." msgstr "Kann %s nicht beitreten, ich wurde nicht eingeladen."
#: plugin.py:101 #: plugin.py:88
msgid "Cannot join %s, I am banned." msgid "Cannot join %s, I am banned."
msgstr "Ich kann %s nicht betreten, ich bin gebannt." msgstr "Ich kann %s nicht betreten, ich bin gebannt."
#: plugin.py:109 #: plugin.py:96
msgid "Cannot join %s, my keyword was wrong." msgid "Cannot join %s, my keyword was wrong."
msgstr "Ich kann %s nicht beitreten, mein Schlüsselwort ist falsch." msgstr "Ich kann %s nicht beitreten, mein Schlüsselwort ist falsch."
#: plugin.py:117 plugin.py:126 #: plugin.py:104 plugin.py:113
msgid "Cannot join %s, I'm not identified with NickServ." msgid "Cannot join %s, I'm not identified with NickServ."
msgstr "Ich kann %s nicht betreten, ich bin nicht mit NickServ identifiziert." msgstr "Ich kann %s nicht betreten, ich bin nicht mit NickServ identifiziert."
#: plugin.py:156 #: plugin.py:143
msgid "" msgid ""
"<channel> [<key>]\n" "<channel> [<key>]\n"
"\n" "\n"
@ -58,48 +51,46 @@ msgstr ""
"Sagt dem Bot dem angegeben Kanal beizutreten. Falls <Schlüssel> angegeben " "Sagt dem Bot dem angegeben Kanal beizutreten. Falls <Schlüssel> angegeben "
"wird, wird dieser benutzt um zu versuchen den Kanal zu betreten." "wird, wird dieser benutzt um zu versuchen den Kanal zu betreten."
#: plugin.py:162 #: plugin.py:156
msgid "channel"
msgstr ""
#: plugin.py:169
msgid "I'm already too close to maximum number of channels for this network." msgid "I'm already too close to maximum number of channels for this network."
msgstr "Ich bin schon zu nah an den maximalen Kanälen für dieses Netzwerk." msgstr "Ich bin schon zu nah an den maximalen Kanälen für dieses Netzwerk."
#: plugin.py:178 #: plugin.py:165
#, fuzzy
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
" Returns the channels the bot is on.\n" " Returns the channels the bot is on. Must be given in private, in "
"order\n"
" to protect the secrecy of secret channels.\n"
" " " "
msgstr "" msgstr ""
"hat keine Argumente\n" "hat keine Argumenten\n"
"\n" "\n"
"Listet die Hostmasken auf, die der Bot ignoriert." "Gibt die Kanäle aus in denen der Bot sich befindet. Dieser Befehl muss "
"privat gegeben werden, um das Geheimnis der geheimen Kanale zu wahren."
#: plugin.py:187 #: plugin.py:175
msgid "I'm not currently in any channels." msgid "I'm not currently in any channels."
msgstr "Momentan bin ich in keinen Kanälen." msgstr "Momentan bin ich in keinen Kanälen."
#: plugin.py:193 #: plugin.py:181
msgid "My connection is restricted, I can't change nicks." msgid "My connection is restricted, I can't change nicks."
msgstr "Meine Verbindung ist begrenzt, I kann meinen Nick nicht wechseln." msgstr "Meine Verbindung ist begrenzt, I kann meinen Nick nicht wechseln."
#: plugin.py:200 #: plugin.py:188
msgid "Someone else is already using that nick." msgid "Someone else is already using that nick."
msgstr "Jemand anderes benutzt diesen Nick schon." msgstr "Jemand anderes benutzt diesen Nick schon."
#: plugin.py:207 #: plugin.py:195
#, fuzzy #, fuzzy
msgid "I can't change nick, I'm currently banned in %s." msgid "I can't change nick, I'm currently banned in %s."
msgstr "Ich kann meinen Nick nicht ändern, der Server sagte %q." msgstr "Ich kann meinen Nick nicht ändern, der Server sagte %q."
#: plugin.py:215 #: plugin.py:203
msgid "I can't change nicks, the server said %q." msgid "I can't change nicks, the server said %q."
msgstr "Ich kann meinen Nick nicht ändern, der Server sagte %q." msgstr "Ich kann meinen Nick nicht ändern, der Server sagte %q."
#: plugin.py:229 #: plugin.py:217
#, fuzzy #, fuzzy
msgid "" msgid ""
"[<nick>] [<network>]\n" "[<nick>] [<network>]\n"
@ -113,7 +104,29 @@ msgstr ""
"Ändert den Nick des Bots zu <Nick>. Falls <Nick> nicht angegeben wird, wird " "Ändert den Nick des Bots zu <Nick>. Falls <Nick> nicht angegeben wird, wird "
"der momentane Botnick zurückgegeben." "der momentane Botnick zurückgegeben."
#: plugin.py:248 #: plugin.py:234
msgid ""
"[<channel>] [<reason>]\n"
"\n"
" Tells the bot to part the list of channels you give it. <channel> "
"is\n"
" only necessary if you want the bot to part a channel other than the\n"
" current channel. If <reason> is specified, use it as the part\n"
" message.\n"
" "
msgstr ""
"[<Kanal>] [<Grund>]\n"
"\n"
"Sagt dem Bot die Liste von angebenen Kanälen zu verlassen. <Kanal> ist nur "
"notwendig, falls der Bot einen anderen Kanal als den Momentanen verlassen "
"soll. Falls <Grund> angegeben wird, wird dies als Verlassensnachricht "
"verwendet."
#: plugin.py:252
msgid "I'm not in %s."
msgstr "Ich bin nicht in %s."
#: plugin.py:264
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
"\n" "\n"
@ -127,7 +140,7 @@ msgstr ""
"Gibt dem angebenen Benutzer <Name> (oder dem auf den die <Hostmaske> " "Gibt dem angebenen Benutzer <Name> (oder dem auf den die <Hostmaske> "
"zutrifft) die angegebene Fähigkeit." "zutrifft) die angegebene Fähigkeit."
#: plugin.py:268 #: plugin.py:284
msgid "" msgid ""
"The \"owner\" capability can't be added in the bot. Use the supybot-adduser " "The \"owner\" capability can't be added in the bot. Use the supybot-adduser "
"program (or edit the users.conf file yourself) to add an owner capability." "program (or edit the users.conf file yourself) to add an owner capability."
@ -136,11 +149,11 @@ msgstr ""
"das supybot-adduser Programm (oder verändere users.conf per Hand) um die " "das supybot-adduser Programm (oder verändere users.conf per Hand) um die "
"Besitzer Fähigkeit hinzuzufügen." "Besitzer Fähigkeit hinzuzufügen."
#: plugin.py:279 #: plugin.py:295
msgid "You can't add capabilities you don't have." msgid "You can't add capabilities you don't have."
msgstr "Du kannst keine Fähigkeiten hinzufügen, die du nicht hast." msgstr "Du kannst keine Fähigkeiten hinzufügen, die du nicht hast."
#: plugin.py:284 #: plugin.py:300
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
"\n" "\n"
@ -154,15 +167,15 @@ msgstr ""
"Nimmt dem Benutzer der durch <Name> (oder dem Benutzer auf den momentan " "Nimmt dem Benutzer der durch <Name> (oder dem Benutzer auf den momentan "
"<Hostmaske> zeigt) angeben wird die angegeben Fähigkeit <Fähigkeit>." "<Hostmaske> zeigt) angeben wird die angegeben Fähigkeit <Fähigkeit>."
#: plugin.py:296 #: plugin.py:312
msgid "That user doesn't have that capability." msgid "That user doesn't have that capability."
msgstr "Der Benutzer hat diese Fähigkeit nicht." msgstr "Der Benutzer hat diese Fähigkeit nicht."
#: plugin.py:298 #: plugin.py:314
msgid "You can't remove capabilities you don't have." msgid "You can't remove capabilities you don't have."
msgstr "Du kannst keine Fähigkeiten entfernen, die du nicht hast." msgstr "Du kannst keine Fähigkeiten entfernen, die du nicht hast."
#: plugin.py:306 #: plugin.py:322
msgid "" msgid ""
"<hostmask|nick> [<expires>]\n" "<hostmask|nick> [<expires>]\n"
"\n" "\n"
@ -181,7 +194,7 @@ msgstr ""
"optional, das legt fest wann die Ignorierung abläuft;falls dies nicht " "optional, das legt fest wann die Ignorierung abläuft;falls dies nicht "
"angegeben wird, wird die Ignorierung niemals ablaufen." "angegeben wird, wird die Ignorierung niemals ablaufen."
#: plugin.py:319 #: plugin.py:335
msgid "" msgid ""
"<hostmask|nick>\n" "<hostmask|nick>\n"
"\n" "\n"
@ -194,11 +207,11 @@ msgstr ""
"Wird die beständige Ignorierung, von <Hostmaske> oder der Hostmaske die " "Wird die beständige Ignorierung, von <Hostmaske> oder der Hostmaske die "
"momentan mit dem <Nick> verbunden wird, aufheben." "momentan mit dem <Nick> verbunden wird, aufheben."
#: plugin.py:328 #: plugin.py:344
msgid "%s wasn't in the ignores database." msgid "%s wasn't in the ignores database."
msgstr "%s war nicht in der Datenbank für Ignorierungen." msgstr "%s war nicht in der Datenbank für Ignorierungen."
#: plugin.py:333 #: plugin.py:349
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -209,11 +222,11 @@ msgstr ""
"\n" "\n"
"Listet die Hostmasken auf, die der Bot ignoriert." "Listet die Hostmasken auf, die der Bot ignoriert."
#: plugin.py:341 #: plugin.py:357
msgid "I'm not currently globally ignoring anyone." msgid "I'm not currently globally ignoring anyone."
msgstr "Momentan ignoriere ich niemanden global." msgstr "Momentan ignoriere ich niemanden global."
#: plugin.py:345 #: plugin.py:361
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -224,47 +237,5 @@ msgstr ""
"\n" "\n"
"Leert die momentane Sendenwarteschlange für dieses Netzwerk." "Leert die momentane Sendenwarteschlange für dieses Netzwerk."
#: plugin.py:354
msgid ""
"<command> [<arg> ...]\n"
"\n"
" Perform <command> (with associated <arg>s on all channels on current "
"network."
msgstr ""
#~ msgid ""
#~ "takes no arguments\n"
#~ "\n"
#~ " Returns the channels the bot is on. Must be given in private, in "
#~ "order\n"
#~ " to protect the secrecy of secret channels.\n"
#~ " "
#~ msgstr ""
#~ "hat keine Argumenten\n"
#~ "\n"
#~ "Gibt die Kanäle aus in denen der Bot sich befindet. Dieser Befehl muss "
#~ "privat gegeben werden, um das Geheimnis der geheimen Kanale zu wahren."
#~ msgid ""
#~ "[<channel>] [<reason>]\n"
#~ "\n"
#~ " Tells the bot to part the list of channels you give it. "
#~ "<channel> is\n"
#~ " only necessary if you want the bot to part a channel other than "
#~ "the\n"
#~ " current channel. If <reason> is specified, use it as the part\n"
#~ " message.\n"
#~ " "
#~ msgstr ""
#~ "[<Kanal>] [<Grund>]\n"
#~ "\n"
#~ "Sagt dem Bot die Liste von angebenen Kanälen zu verlassen. <Kanal> ist "
#~ "nur notwendig, falls der Bot einen anderen Kanal als den Momentanen "
#~ "verlassen soll. Falls <Grund> angegeben wird, wird dies als "
#~ "Verlassensnachricht verwendet."
#~ msgid "I'm not in %s."
#~ msgstr "Ich bin nicht in %s."
#~ msgid "That nick is currently banned." #~ msgid "That nick is currently banned."
#~ msgstr "Dieser Nick ist momentan gebannt." #~ msgstr "Dieser Nick ist momentan gebannt."

View File

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Finnish translation of Admin plugin in Supybot\n" "Project-Id-Version: Finnish translation of Admin plugin in Supybot\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 11:59+EET\n"
"PO-Revision-Date: 2014-12-20 12:19+0200\n" "PO-Revision-Date: 2014-12-20 12:19+0200\n"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n" "Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n" "Language-Team: \n"
@ -31,27 +31,27 @@ msgstr ""
msgid "Nick/channel temporarily unavailable." msgid "Nick/channel temporarily unavailable."
msgstr "Nimimerkki/kanava on väliaikaisesti saavuttamattomissa." msgstr "Nimimerkki/kanava on väliaikaisesti saavuttamattomissa."
#: plugin.py:85 #: plugin.py:75
msgid "Cannot join %s, it's full." msgid "Cannot join %s, it's full."
msgstr "Ei voida liittyä kanavalle %s, se on täynnä." msgstr "Ei voida liittyä kanavalle %s, se on täynnä."
#: plugin.py:93 #: plugin.py:83
msgid "Cannot join %s, I was not invited." msgid "Cannot join %s, I was not invited."
msgstr "Ei voi liittyä kanavalle %s, minua ei ole kutsuttu." msgstr "Ei voi liittyä kanavalle %s, minua ei ole kutsuttu."
#: plugin.py:101 #: plugin.py:91
msgid "Cannot join %s, I am banned." msgid "Cannot join %s, I am banned."
msgstr "Ei voi liittyä kanavalle %s, se on antanut minulle porttikiellon." msgstr "Ei voi liittyä kanavalle %s, se on antanut minulle porttikiellon."
#: plugin.py:109 #: plugin.py:99
msgid "Cannot join %s, my keyword was wrong." msgid "Cannot join %s, my keyword was wrong."
msgstr "En voi liittyä kanavalle %s, minun avainsana oli väärä." msgstr "En voi liittyä kanavalle %s, minun avainsana oli väärä."
#: plugin.py:117 plugin.py:126 #: plugin.py:107 plugin.py:116
msgid "Cannot join %s, I'm not identified with NickServ." msgid "Cannot join %s, I'm not identified with NickServ."
msgstr "En voi liittyä kanavalle %s, koska en ole tunnistautunut NickServille." msgstr "En voi liittyä kanavalle %s, koska en ole tunnistautunut NickServille."
#: plugin.py:156 #: plugin.py:146
msgid "" msgid ""
"<channel> [<key>]\n" "<channel> [<key>]\n"
"\n" "\n"
@ -67,49 +67,48 @@ msgstr ""
" yrittäessä liittyä kanavalle.\n" " yrittäessä liittyä kanavalle.\n"
" " " "
#: plugin.py:162 #: plugin.py:159
msgid "channel"
msgstr ""
#: plugin.py:169
msgid "I'm already too close to maximum number of channels for this network." msgid "I'm already too close to maximum number of channels for this network."
msgstr "Minä olen jo liian lähellä kanavien maksimimäärää tässä verkossa." msgstr "Minä olen jo liian lähellä kanavien maksimimäärää tässä verkossa."
#: plugin.py:178 #: plugin.py:168
#, fuzzy
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
" Returns the channels the bot is on.\n" " Returns the channels the bot is on. Must be given in private, in "
"order\n"
" to protect the secrecy of secret channels.\n"
" " " "
msgstr "" msgstr ""
"Ei ota parametrejä\n" "Ei ota parametrejä\n"
"\n" "\n"
" Luetteloi hostmaskit jotka ovat botin huomiotta jättämis listalla.\n" " Palauttaa listan kanavista, joilla botti on. Täytyy antaa "
" " "yksityisviestillä salaistenkanavien\n"
" salaisuuden suojelemiseksi.\n"
" "
#: plugin.py:187 #: plugin.py:178
msgid "I'm not currently in any channels." msgid "I'm not currently in any channels."
msgstr "En juuri nyt ole millään kanavalla." msgstr "En juuri nyt ole millään kanavalla."
#: plugin.py:193 #: plugin.py:184
msgid "My connection is restricted, I can't change nicks." msgid "My connection is restricted, I can't change nicks."
msgstr "Minun yhteyteni on rajoitettu. En voi vaihtaa nimimerkkiä." msgstr "Minun yhteyteni on rajoitettu. En voi vaihtaa nimimerkkiä."
#: plugin.py:200 #: plugin.py:191
msgid "Someone else is already using that nick." msgid "Someone else is already using that nick."
msgstr "Joku muu käyttää jo tuota nimimerkkiä." msgstr "Joku muu käyttää jo tuota nimimerkkiä."
#: plugin.py:207 #: plugin.py:198
#, fuzzy #, fuzzy
msgid "I can't change nick, I'm currently banned in %s." msgid "I can't change nick, I'm currently banned in %s."
msgstr "Minä en voi vaihtaa nimimerkkiä, koska palvelin sanoi %q" msgstr "Minä en voi vaihtaa nimimerkkiä, koska palvelin sanoi %q"
#: plugin.py:215 #: plugin.py:206
msgid "I can't change nicks, the server said %q." msgid "I can't change nicks, the server said %q."
msgstr "Minä en voi vaihtaa nimimerkkiä, koska palvelin sanoi %q" msgstr "Minä en voi vaihtaa nimimerkkiä, koska palvelin sanoi %q"
#: plugin.py:229 #: plugin.py:220
msgid "" msgid ""
"[<nick>] [<network>]\n" "[<nick>] [<network>]\n"
"\n" "\n"
@ -124,7 +123,30 @@ msgstr ""
" nimimerkki palautetaan.\n" " nimimerkki palautetaan.\n"
" " " "
#: plugin.py:248 #: plugin.py:237
msgid ""
"[<channel>] [<reason>]\n"
"\n"
" Tells the bot to part the list of channels you give it. <channel> "
"is\n"
" only necessary if you want the bot to part a channel other than the\n"
" current channel. If <reason> is specified, use it as the part\n"
" message.\n"
" "
msgstr ""
"[<kanava>] [<syy>]\n"
"\n"
" Käskee botin poistua kanavilta, jotka annat sille. <Kanava> on\n"
" vaadittu jos haluat botin poistuvat muulta, kuin \n"
" nykyiseltä kanavalta. Jos <syy> on määritetty, sitä käytetään\n"
" poistumisviestissä.\n"
" "
#: plugin.py:255
msgid "I'm not in %s."
msgstr "Minä en ole kanavalla %s."
#: plugin.py:267
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
"\n" "\n"
@ -140,7 +162,7 @@ msgstr ""
" ilmoittaa) määritetyn valtuuden <valtuus>\n" " ilmoittaa) määritetyn valtuuden <valtuus>\n"
" " " "
#: plugin.py:268 #: plugin.py:287
msgid "" msgid ""
"The \"owner\" capability can't be added in the bot. Use the supybot-adduser " "The \"owner\" capability can't be added in the bot. Use the supybot-adduser "
"program (or edit the users.conf file yourself) to add an owner capability." "program (or edit the users.conf file yourself) to add an owner capability."
@ -148,11 +170,11 @@ msgstr ""
"\"Owner\" valtuutta ei voi lisätä botissa. Käytä supybot-adduser ohjelmaa " "\"Owner\" valtuutta ei voi lisätä botissa. Käytä supybot-adduser ohjelmaa "
"(tai muokkaa users.conf tiedostoa itse) lisätäksesi owner valtuuden." "(tai muokkaa users.conf tiedostoa itse) lisätäksesi owner valtuuden."
#: plugin.py:279 #: plugin.py:298
msgid "You can't add capabilities you don't have." msgid "You can't add capabilities you don't have."
msgstr "Et voi lisätä valtuuksia, joita sinulla ei ole." msgstr "Et voi lisätä valtuuksia, joita sinulla ei ole."
#: plugin.py:284 #: plugin.py:303
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
"\n" "\n"
@ -168,15 +190,15 @@ msgstr ""
" <hostmask> sopii) määritetyn valtuuden <valtuus>\n" " <hostmask> sopii) määritetyn valtuuden <valtuus>\n"
" " " "
#: plugin.py:296 #: plugin.py:315
msgid "That user doesn't have that capability." msgid "That user doesn't have that capability."
msgstr "Tuolla käyttäjällä ei tuota valtuutta." msgstr "Tuolla käyttäjällä ei tuota valtuutta."
#: plugin.py:298 #: plugin.py:317
msgid "You can't remove capabilities you don't have." msgid "You can't remove capabilities you don't have."
msgstr "Sinä et voi poistaa valtuuksia, joita sinulla ei ole." msgstr "Sinä et voi poistaa valtuuksia, joita sinulla ei ole."
#: plugin.py:306 #: plugin.py:325
msgid "" msgid ""
"<hostmask|nick> [<expires>]\n" "<hostmask|nick> [<expires>]\n"
"\n" "\n"
@ -200,7 +222,7 @@ msgstr ""
"automaattisesti.\n" "automaattisesti.\n"
" " " "
#: plugin.py:319 #: plugin.py:338
msgid "" msgid ""
"<hostmask|nick>\n" "<hostmask|nick>\n"
"\n" "\n"
@ -214,11 +236,11 @@ msgstr ""
" hostmaskista joka on tällä hetkellä yhdistetty <nimimerkkiin>.\n" " hostmaskista joka on tällä hetkellä yhdistetty <nimimerkkiin>.\n"
" " " "
#: plugin.py:328 #: plugin.py:347
msgid "%s wasn't in the ignores database." msgid "%s wasn't in the ignores database."
msgstr "%s ei ollut huomiotta jätettävien tietokannassa." msgstr "%s ei ollut huomiotta jätettävien tietokannassa."
#: plugin.py:333 #: plugin.py:352
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -230,11 +252,11 @@ msgstr ""
" Luetteloi hostmaskit jotka ovat botin huomiotta jättämis listalla.\n" " Luetteloi hostmaskit jotka ovat botin huomiotta jättämis listalla.\n"
" " " "
#: plugin.py:341 #: plugin.py:360
msgid "I'm not currently globally ignoring anyone." msgid "I'm not currently globally ignoring anyone."
msgstr "En tällä hetkellä jätä ketään huomioitta globaalisti." msgstr "En tällä hetkellä jätä ketään huomioitta globaalisti."
#: plugin.py:345 #: plugin.py:364
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -246,50 +268,5 @@ msgstr ""
" Tyhjentää nykyisen lähetysjonon tälle verkolle.\n" " Tyhjentää nykyisen lähetysjonon tälle verkolle.\n"
" " " "
#: plugin.py:354
msgid ""
"<command> [<arg> ...]\n"
"\n"
" Perform <command> (with associated <arg>s on all channels on current "
"network."
msgstr ""
#~ msgid ""
#~ "takes no arguments\n"
#~ "\n"
#~ " Returns the channels the bot is on. Must be given in private, in "
#~ "order\n"
#~ " to protect the secrecy of secret channels.\n"
#~ " "
#~ msgstr ""
#~ "Ei ota parametrejä\n"
#~ "\n"
#~ " Palauttaa listan kanavista, joilla botti on. Täytyy antaa "
#~ "yksityisviestillä salaistenkanavien\n"
#~ " salaisuuden suojelemiseksi.\n"
#~ " "
#~ msgid ""
#~ "[<channel>] [<reason>]\n"
#~ "\n"
#~ " Tells the bot to part the list of channels you give it. "
#~ "<channel> is\n"
#~ " only necessary if you want the bot to part a channel other than "
#~ "the\n"
#~ " current channel. If <reason> is specified, use it as the part\n"
#~ " message.\n"
#~ " "
#~ msgstr ""
#~ "[<kanava>] [<syy>]\n"
#~ "\n"
#~ " Käskee botin poistua kanavilta, jotka annat sille. <Kanava> on\n"
#~ " vaadittu jos haluat botin poistuvat muulta, kuin \n"
#~ " nykyiseltä kanavalta. Jos <syy> on määritetty, sitä käytetään\n"
#~ " poistumisviestissä.\n"
#~ " "
#~ msgid "I'm not in %s."
#~ msgstr "Minä en ole kanavalla %s."
#~ msgid "That nick is currently banned." #~ msgid "That nick is currently banned."
#~ msgstr "Tuolla nimimerkillä on tällähetkellä porttikielto." #~ msgstr "Tuolla nimimerkillä on tällähetkellä porttikielto."

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-08-17 13:46+CEST\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: ProgVal <progval@gmail.com>\n" "Language-Team: ProgVal <progval@gmail.com>\n"
@ -12,38 +12,31 @@ msgstr ""
"X-Poedit-SourceCharset: Ascii\n" "X-Poedit-SourceCharset: Ascii\n"
"X-Generator: Poedit 1.5.4\n" "X-Generator: Poedit 1.5.4\n"
#: plugin.py:46 #: plugin.py:54
msgid ""
"This plugin provides access to administrative commands, such as\n"
" adding capabilities, managing ignore lists, and joining channels.\n"
" This is a core Supybot plugin that should not be removed!"
msgstr ""
#: plugin.py:57
msgid "Nick/channel temporarily unavailable." msgid "Nick/channel temporarily unavailable."
msgstr "Nick/canal temporairement indisponible" msgstr "Nick/canal temporairement indisponible"
#: plugin.py:85 #: plugin.py:72
msgid "Cannot join %s, it's full." msgid "Cannot join %s, it's full."
msgstr "Ne peut joindre %s, il est plein." msgstr "Ne peut joindre %s, il est plein."
#: plugin.py:93 #: plugin.py:80
msgid "Cannot join %s, I was not invited." msgid "Cannot join %s, I was not invited."
msgstr "Ne peut joindre %s, pas invité." msgstr "Ne peut joindre %s, pas invité."
#: plugin.py:101 #: plugin.py:88
msgid "Cannot join %s, I am banned." msgid "Cannot join %s, I am banned."
msgstr "Ne peut joindre %s, j'y suis banni." msgstr "Ne peut joindre %s, j'y suis banni."
#: plugin.py:109 #: plugin.py:96
msgid "Cannot join %s, my keyword was wrong." msgid "Cannot join %s, my keyword was wrong."
msgstr "Ne peut joindre %s, mon mot de passe est mauvais." msgstr "Ne peut joindre %s, mon mot de passe est mauvais."
#: plugin.py:117 plugin.py:126 #: plugin.py:104 plugin.py:113
msgid "Cannot join %s, I'm not identified with NickServ." msgid "Cannot join %s, I'm not identified with NickServ."
msgstr "Ne peut joindre %s, je ne suis pas identifié auprès de NickServ." msgstr "Ne peut joindre %s, je ne suis pas identifié auprès de NickServ."
#: plugin.py:156 #: plugin.py:143
msgid "" msgid ""
"<channel> [<key>]\n" "<channel> [<key>]\n"
"\n" "\n"
@ -57,48 +50,46 @@ msgstr ""
"Dit au bot de rejoindre le canal donné. Si la <clef> est donnée, elle est " "Dit au bot de rejoindre le canal donné. Si la <clef> est donnée, elle est "
"utilisée pour rejoindre le canal." "utilisée pour rejoindre le canal."
#: plugin.py:162 #: plugin.py:156
msgid "channel"
msgstr ""
#: plugin.py:169
msgid "I'm already too close to maximum number of channels for this network." msgid "I'm already too close to maximum number of channels for this network."
msgstr "Je suis déjà sur un nombre de canaux trop grand pour ce réseau." msgstr "Je suis déjà sur un nombre de canaux trop grand pour ce réseau."
#: plugin.py:178 #: plugin.py:165
#, fuzzy
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
" Returns the channels the bot is on.\n" " Returns the channels the bot is on. Must be given in private, in "
"order\n"
" to protect the secrecy of secret channels.\n"
" " " "
msgstr "" msgstr ""
"Ne prend pas d'argument\n" "Ne prend pas d'argument \n"
"\n" "\n"
"Liste les masques d'hôte que le bot ignore." "Retourne les canaux sur lesquels le bot est. Doit être en privé, dans le but "
"d'éviter que les canaux secrets ne soient divulgués."
#: plugin.py:187 #: plugin.py:175
msgid "I'm not currently in any channels." msgid "I'm not currently in any channels."
msgstr "Je ne suis actuellement sur aucun canal." msgstr "Je ne suis actuellement sur aucun canal."
#: plugin.py:193 #: plugin.py:181
msgid "My connection is restricted, I can't change nicks." msgid "My connection is restricted, I can't change nicks."
msgstr "Ma connexion est restreinte, je ne peux changer de nick." msgstr "Ma connexion est restreinte, je ne peux changer de nick."
#: plugin.py:200 #: plugin.py:188
msgid "Someone else is already using that nick." msgid "Someone else is already using that nick."
msgstr "Quelqu'un d'autre utilise déjà ce nick." msgstr "Quelqu'un d'autre utilise déjà ce nick."
#: plugin.py:207 #: plugin.py:195
#, fuzzy #, fuzzy
msgid "I can't change nick, I'm currently banned in %s." msgid "I can't change nick, I'm currently banned in %s."
msgstr "Je ne peux changer de nick, le serveur a dit %q." msgstr "Je ne peux changer de nick, le serveur a dit %q."
#: plugin.py:215 #: plugin.py:203
msgid "I can't change nicks, the server said %q." msgid "I can't change nicks, the server said %q."
msgstr "Je ne peux changer de nick, le serveur a dit %q." msgstr "Je ne peux changer de nick, le serveur a dit %q."
#: plugin.py:229 #: plugin.py:217
msgid "" msgid ""
"[<nick>] [<network>]\n" "[<nick>] [<network>]\n"
"\n" "\n"
@ -111,7 +102,29 @@ msgstr ""
"Change le nick du bot à <nick>. Si aucun nick n'est donné, retourne le nick " "Change le nick du bot à <nick>. Si aucun nick n'est donné, retourne le nick "
"actuel du bot." "actuel du bot."
#: plugin.py:248 #: plugin.py:234
msgid ""
"[<channel>] [<reason>]\n"
"\n"
" Tells the bot to part the list of channels you give it. <channel> "
"is\n"
" only necessary if you want the bot to part a channel other than the\n"
" current channel. If <reason> is specified, use it as the part\n"
" message.\n"
" "
msgstr ""
"[<canal>] [<raison>]\n"
"\n"
"Dit au bot de partir de la liste de canaux que vous avez donnée. <canal> "
"n'est nécessaire que si vous voulez que le bot parte d'un autre canal que "
"l'actuel. Si la <raison> est spécifiée, elle est utilisée comme message de "
"départ."
#: plugin.py:252
msgid "I'm not in %s."
msgstr "Je ne suis pas sur %s."
#: plugin.py:264
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
"\n" "\n"
@ -125,7 +138,7 @@ msgstr ""
"Donne la <capacité> à l'utilisateur spécifié par <nom> (ou l'utilisateur à " "Donne la <capacité> à l'utilisateur spécifié par <nom> (ou l'utilisateur à "
"qui correspond <masque d'hôte>)." "qui correspond <masque d'hôte>)."
#: plugin.py:268 #: plugin.py:284
msgid "" msgid ""
"The \"owner\" capability can't be added in the bot. Use the supybot-adduser " "The \"owner\" capability can't be added in the bot. Use the supybot-adduser "
"program (or edit the users.conf file yourself) to add an owner capability." "program (or edit the users.conf file yourself) to add an owner capability."
@ -134,11 +147,11 @@ msgstr ""
"supybot-adduser (ou éditez le fichier users.conf vous-même) pour ajouter la " "supybot-adduser (ou éditez le fichier users.conf vous-même) pour ajouter la "
"capacité owner." "capacité owner."
#: plugin.py:279 #: plugin.py:295
msgid "You can't add capabilities you don't have." msgid "You can't add capabilities you don't have."
msgstr "Vous ne pouvez ajouter des capacités que vous n'avez pas." msgstr "Vous ne pouvez ajouter des capacités que vous n'avez pas."
#: plugin.py:284 #: plugin.py:300
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
"\n" "\n"
@ -152,15 +165,15 @@ msgstr ""
"Retire la <capacité> à l'utilisateur spécifié par le <nom> (ou celui à qui " "Retire la <capacité> à l'utilisateur spécifié par le <nom> (ou celui à qui "
"correspond le <masque d'hôte>)." "correspond le <masque d'hôte>)."
#: plugin.py:296 #: plugin.py:312
msgid "That user doesn't have that capability." msgid "That user doesn't have that capability."
msgstr "Cet utilisateur n'a pas cette capacité." msgstr "Cet utilisateur n'a pas cette capacité."
#: plugin.py:298 #: plugin.py:314
msgid "You can't remove capabilities you don't have." msgid "You can't remove capabilities you don't have."
msgstr "Vous ne pouvez retirer des capacités que vous n'avez pas." msgstr "Vous ne pouvez retirer des capacités que vous n'avez pas."
#: plugin.py:306 #: plugin.py:322
msgid "" msgid ""
"<hostmask|nick> [<expires>]\n" "<hostmask|nick> [<expires>]\n"
"\n" "\n"
@ -179,7 +192,7 @@ msgstr ""
"quand (en \"secondes à partir de maintenant\") l'ignorance expirera ; si " "quand (en \"secondes à partir de maintenant\") l'ignorance expirera ; si "
"elle n'est pas donnée, l'ignorance n'expirera jamais." "elle n'est pas donnée, l'ignorance n'expirera jamais."
#: plugin.py:319 #: plugin.py:335
msgid "" msgid ""
"<hostmask|nick>\n" "<hostmask|nick>\n"
"\n" "\n"
@ -192,11 +205,11 @@ msgstr ""
"Ceci retirera le masque d'ignorance persistant sur le <masque d'hôte>, ou " "Ceci retirera le masque d'ignorance persistant sur le <masque d'hôte>, ou "
"sur le masque d'hôte associé au <nick>." "sur le masque d'hôte associé au <nick>."
#: plugin.py:328 #: plugin.py:344
msgid "%s wasn't in the ignores database." msgid "%s wasn't in the ignores database."
msgstr "%s n'étais pas dans ma base de données d'ignorance." msgstr "%s n'étais pas dans ma base de données d'ignorance."
#: plugin.py:333 #: plugin.py:349
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -207,11 +220,11 @@ msgstr ""
"\n" "\n"
"Liste les masques d'hôte que le bot ignore." "Liste les masques d'hôte que le bot ignore."
#: plugin.py:341 #: plugin.py:357
msgid "I'm not currently globally ignoring anyone." msgid "I'm not currently globally ignoring anyone."
msgstr "Je n'ignore actuellement personne globalement." msgstr "Je n'ignore actuellement personne globalement."
#: plugin.py:345 #: plugin.py:361
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -222,47 +235,5 @@ msgstr ""
"\n" "\n"
"Vide la queue en attente pour ce réseau." "Vide la queue en attente pour ce réseau."
#: plugin.py:354
msgid ""
"<command> [<arg> ...]\n"
"\n"
" Perform <command> (with associated <arg>s on all channels on current "
"network."
msgstr ""
#~ msgid ""
#~ "takes no arguments\n"
#~ "\n"
#~ " Returns the channels the bot is on. Must be given in private, in "
#~ "order\n"
#~ " to protect the secrecy of secret channels.\n"
#~ " "
#~ msgstr ""
#~ "Ne prend pas d'argument \n"
#~ "\n"
#~ "Retourne les canaux sur lesquels le bot est. Doit être en privé, dans le "
#~ "but d'éviter que les canaux secrets ne soient divulgués."
#~ msgid ""
#~ "[<channel>] [<reason>]\n"
#~ "\n"
#~ " Tells the bot to part the list of channels you give it. "
#~ "<channel> is\n"
#~ " only necessary if you want the bot to part a channel other than "
#~ "the\n"
#~ " current channel. If <reason> is specified, use it as the part\n"
#~ " message.\n"
#~ " "
#~ msgstr ""
#~ "[<canal>] [<raison>]\n"
#~ "\n"
#~ "Dit au bot de partir de la liste de canaux que vous avez donnée. <canal> "
#~ "n'est nécessaire que si vous voulez que le bot parte d'un autre canal que "
#~ "l'actuel. Si la <raison> est spécifiée, elle est utilisée comme message "
#~ "de départ."
#~ msgid "I'm not in %s."
#~ msgstr "Je ne suis pas sur %s."
#~ msgid "That nick is currently banned." #~ msgid "That nick is currently banned."
#~ msgstr "Ce nick est banni." #~ msgstr "Ce nick est banni."

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-08-17 13:46+CEST\n"
"PO-Revision-Date: 2012-03-15 20:25+0100\n" "PO-Revision-Date: 2012-03-15 20:25+0100\n"
"Last-Translator: skizzhg <skizzhg@gmx.com>\n" "Last-Translator: skizzhg <skizzhg@gmx.com>\n"
"Language-Team: Italian <skizzhg@gmx.com>\n" "Language-Team: Italian <skizzhg@gmx.com>\n"
@ -10,38 +10,31 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: plugin.py:46 #: plugin.py:54
msgid ""
"This plugin provides access to administrative commands, such as\n"
" adding capabilities, managing ignore lists, and joining channels.\n"
" This is a core Supybot plugin that should not be removed!"
msgstr ""
#: plugin.py:57
msgid "Nick/channel temporarily unavailable." msgid "Nick/channel temporarily unavailable."
msgstr "Nick/canale temporaneamente non disponibile." msgstr "Nick/canale temporaneamente non disponibile."
#: plugin.py:85 #: plugin.py:72
msgid "Cannot join %s, it's full." msgid "Cannot join %s, it's full."
msgstr "Non posso entrare in %s, è pieno." msgstr "Non posso entrare in %s, è pieno."
#: plugin.py:93 #: plugin.py:80
msgid "Cannot join %s, I was not invited." msgid "Cannot join %s, I was not invited."
msgstr "Non posso entrare in %s, non sono stato invitato." msgstr "Non posso entrare in %s, non sono stato invitato."
#: plugin.py:101 #: plugin.py:88
msgid "Cannot join %s, I am banned." msgid "Cannot join %s, I am banned."
msgstr "Non posso entrare in %s, sono stato bannato." msgstr "Non posso entrare in %s, sono stato bannato."
#: plugin.py:109 #: plugin.py:96
msgid "Cannot join %s, my keyword was wrong." msgid "Cannot join %s, my keyword was wrong."
msgstr "Non posso entrare in %s, la password era sbagliata." msgstr "Non posso entrare in %s, la password era sbagliata."
#: plugin.py:117 plugin.py:126 #: plugin.py:104 plugin.py:113
msgid "Cannot join %s, I'm not identified with NickServ." msgid "Cannot join %s, I'm not identified with NickServ."
msgstr "Non posso entrare in %s, non sono identificato con NickServ." msgstr "Non posso entrare in %s, non sono identificato con NickServ."
#: plugin.py:156 #: plugin.py:143
msgid "" msgid ""
"<channel> [<key>]\n" "<channel> [<key>]\n"
"\n" "\n"
@ -57,49 +50,48 @@ msgstr ""
" viene usata quando si tenta di entrare nel canale.\n" " viene usata quando si tenta di entrare nel canale.\n"
" " " "
#: plugin.py:162 #: plugin.py:156
msgid "channel"
msgstr ""
#: plugin.py:169
msgid "I'm already too close to maximum number of channels for this network." msgid "I'm already too close to maximum number of channels for this network."
msgstr "Sono già troppo vicino al numero massimo di canali per questa rete." msgstr "Sono già troppo vicino al numero massimo di canali per questa rete."
#: plugin.py:178 #: plugin.py:165
#, fuzzy
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
" Returns the channels the bot is on.\n" " Returns the channels the bot is on. Must be given in private, in "
"order\n"
" to protect the secrecy of secret channels.\n"
" " " "
msgstr "" msgstr ""
"Non necessita argomenti\n" "non necessita argomenti\n"
"\n" "\n"
" Elenca le hostmask che il bot sta ignorando.\n" " Restituisce i canali dove è presente il bot. Deve essere richiesto "
" " "in\n"
" privato per preservare la segretezza dei canali privati.\n"
" "
#: plugin.py:187 #: plugin.py:175
msgid "I'm not currently in any channels." msgid "I'm not currently in any channels."
msgstr "Al momento non sono in nessun canale." msgstr "Al momento non sono in nessun canale."
#: plugin.py:193 #: plugin.py:181
msgid "My connection is restricted, I can't change nicks." msgid "My connection is restricted, I can't change nicks."
msgstr "La mia connessione è limitata, non posso cambiare nick." msgstr "La mia connessione è limitata, non posso cambiare nick."
#: plugin.py:200 #: plugin.py:188
msgid "Someone else is already using that nick." msgid "Someone else is already using that nick."
msgstr "Qualcun altro sta utilizzando questo nick." msgstr "Qualcun altro sta utilizzando questo nick."
#: plugin.py:207 #: plugin.py:195
#, fuzzy #, fuzzy
msgid "I can't change nick, I'm currently banned in %s." msgid "I can't change nick, I'm currently banned in %s."
msgstr "Non posso cambiare nick, il server ha detto %q." msgstr "Non posso cambiare nick, il server ha detto %q."
#: plugin.py:215 #: plugin.py:203
msgid "I can't change nicks, the server said %q." msgid "I can't change nicks, the server said %q."
msgstr "Non posso cambiare nick, il server ha detto %q." msgstr "Non posso cambiare nick, il server ha detto %q."
#: plugin.py:229 #: plugin.py:217
#, fuzzy #, fuzzy
msgid "" msgid ""
"[<nick>] [<network>]\n" "[<nick>] [<network>]\n"
@ -115,7 +107,32 @@ msgstr ""
" quello attuale.\n" " quello attuale.\n"
" " " "
#: plugin.py:248 #: plugin.py:234
msgid ""
"[<channel>] [<reason>]\n"
"\n"
" Tells the bot to part the list of channels you give it. <channel> "
"is\n"
" only necessary if you want the bot to part a channel other than the\n"
" current channel. If <reason> is specified, use it as the part\n"
" message.\n"
" "
msgstr ""
"[<canale>] [<motivo>]\n"
"\n"
" Fornisce al bot l'elenco dei canali da cui uscire. <canale> è "
"necessario\n"
" solo se si vuole far uscire il bot da un canale diverso da quello "
"attuale.\n"
" Se <motivo> viene specificato, verrà usato come messaggio di "
"uscita.\n"
" "
#: plugin.py:252
msgid "I'm not in %s."
msgstr "Non sono in %s."
#: plugin.py:264
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
"\n" "\n"
@ -130,7 +147,7 @@ msgstr ""
" <hostmask> attualmente) la <capacità> specificata.\n" " <hostmask> attualmente) la <capacità> specificata.\n"
" " " "
#: plugin.py:268 #: plugin.py:284
msgid "" msgid ""
"The \"owner\" capability can't be added in the bot. Use the supybot-adduser " "The \"owner\" capability can't be added in the bot. Use the supybot-adduser "
"program (or edit the users.conf file yourself) to add an owner capability." "program (or edit the users.conf file yourself) to add an owner capability."
@ -138,11 +155,11 @@ msgstr ""
"La capacità \"owner\" non può essere aggiunta al bot. Utilizzare il " "La capacità \"owner\" non può essere aggiunta al bot. Utilizzare il "
"programma supybot-adduser (o modificare il file users.conf) per aggiungerla." "programma supybot-adduser (o modificare il file users.conf) per aggiungerla."
#: plugin.py:279 #: plugin.py:295
msgid "You can't add capabilities you don't have." msgid "You can't add capabilities you don't have."
msgstr "Non puoi aggiungere capacità che non hai." msgstr "Non puoi aggiungere capacità che non hai."
#: plugin.py:284 #: plugin.py:300
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
"\n" "\n"
@ -158,15 +175,15 @@ msgstr ""
" <hostmask> attualmente) la <capacità> specificata\n" " <hostmask> attualmente) la <capacità> specificata\n"
" " " "
#: plugin.py:296 #: plugin.py:312
msgid "That user doesn't have that capability." msgid "That user doesn't have that capability."
msgstr "Questo utente non ha tale capacità." msgstr "Questo utente non ha tale capacità."
#: plugin.py:298 #: plugin.py:314
msgid "You can't remove capabilities you don't have." msgid "You can't remove capabilities you don't have."
msgstr "Non puoi rimuovere capacità che non hai." msgstr "Non puoi rimuovere capacità che non hai."
#: plugin.py:306 #: plugin.py:322
msgid "" msgid ""
"<hostmask|nick> [<expires>]\n" "<hostmask|nick> [<expires>]\n"
"\n" "\n"
@ -189,7 +206,7 @@ msgstr ""
" questo non scadrà mai.\n" " questo non scadrà mai.\n"
" " " "
#: plugin.py:319 #: plugin.py:335
msgid "" msgid ""
"<hostmask|nick>\n" "<hostmask|nick>\n"
"\n" "\n"
@ -203,11 +220,11 @@ msgstr ""
"associata a <nick>.\n" "associata a <nick>.\n"
" " " "
#: plugin.py:328 #: plugin.py:344
msgid "%s wasn't in the ignores database." msgid "%s wasn't in the ignores database."
msgstr "%s non è nel mio database degli ignorati." msgstr "%s non è nel mio database degli ignorati."
#: plugin.py:333 #: plugin.py:349
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -219,11 +236,11 @@ msgstr ""
" Elenca le hostmask che il bot sta ignorando.\n" " Elenca le hostmask che il bot sta ignorando.\n"
" " " "
#: plugin.py:341 #: plugin.py:357
msgid "I'm not currently globally ignoring anyone." msgid "I'm not currently globally ignoring anyone."
msgstr "Al momento non sto ignorando nessuno." msgstr "Al momento non sto ignorando nessuno."
#: plugin.py:345 #: plugin.py:361
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -236,52 +253,5 @@ msgstr ""
"per questa rete.\n" "per questa rete.\n"
" " " "
#: plugin.py:354
msgid ""
"<command> [<arg> ...]\n"
"\n"
" Perform <command> (with associated <arg>s on all channels on current "
"network."
msgstr ""
#~ msgid ""
#~ "takes no arguments\n"
#~ "\n"
#~ " Returns the channels the bot is on. Must be given in private, in "
#~ "order\n"
#~ " to protect the secrecy of secret channels.\n"
#~ " "
#~ msgstr ""
#~ "non necessita argomenti\n"
#~ "\n"
#~ " Restituisce i canali dove è presente il bot. Deve essere "
#~ "richiesto in\n"
#~ " privato per preservare la segretezza dei canali privati.\n"
#~ " "
#~ msgid ""
#~ "[<channel>] [<reason>]\n"
#~ "\n"
#~ " Tells the bot to part the list of channels you give it. "
#~ "<channel> is\n"
#~ " only necessary if you want the bot to part a channel other than "
#~ "the\n"
#~ " current channel. If <reason> is specified, use it as the part\n"
#~ " message.\n"
#~ " "
#~ msgstr ""
#~ "[<canale>] [<motivo>]\n"
#~ "\n"
#~ " Fornisce al bot l'elenco dei canali da cui uscire. <canale> è "
#~ "necessario\n"
#~ " solo se si vuole far uscire il bot da un canale diverso da quello "
#~ "attuale.\n"
#~ " Se <motivo> viene specificato, verrà usato come messaggio di "
#~ "uscita.\n"
#~ " "
#~ msgid "I'm not in %s."
#~ msgstr "Non sono in %s."
#~ msgid "That nick is currently banned." #~ msgid "That nick is currently banned."
#~ msgstr "Il nick è attualmente bannato." #~ msgstr "Il nick è attualmente bannato."

View File

@ -5,13 +5,13 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 11:59+EET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
@ -28,27 +28,27 @@ msgstr ""
msgid "Nick/channel temporarily unavailable." msgid "Nick/channel temporarily unavailable."
msgstr "" msgstr ""
#: plugin.py:85 #: plugin.py:75
msgid "Cannot join %s, it's full." msgid "Cannot join %s, it's full."
msgstr "" msgstr ""
#: plugin.py:93 #: plugin.py:83
msgid "Cannot join %s, I was not invited." msgid "Cannot join %s, I was not invited."
msgstr "" msgstr ""
#: plugin.py:101 #: plugin.py:91
msgid "Cannot join %s, I am banned." msgid "Cannot join %s, I am banned."
msgstr "" msgstr ""
#: plugin.py:109 #: plugin.py:99
msgid "Cannot join %s, my keyword was wrong." msgid "Cannot join %s, my keyword was wrong."
msgstr "" msgstr ""
#: plugin.py:117 plugin.py:126 #: plugin.py:107 plugin.py:116
msgid "Cannot join %s, I'm not identified with NickServ." msgid "Cannot join %s, I'm not identified with NickServ."
msgstr "" msgstr ""
#: plugin.py:156 #: plugin.py:146
#, docstring #, docstring
msgid "" msgid ""
"<channel> [<key>]\n" "<channel> [<key>]\n"
@ -58,44 +58,41 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:162 #: plugin.py:159
msgid "channel"
msgstr ""
#: plugin.py:169
msgid "I'm already too close to maximum number of channels for this network." msgid "I'm already too close to maximum number of channels for this network."
msgstr "" msgstr ""
#: plugin.py:178 #: plugin.py:168
#, docstring #, docstring
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
" Returns the channels the bot is on.\n" " Returns the channels the bot is on. Must be given in private, in order\n"
" to protect the secrecy of secret channels.\n"
" " " "
msgstr "" msgstr ""
#: plugin.py:187 #: plugin.py:178
msgid "I'm not currently in any channels." msgid "I'm not currently in any channels."
msgstr "" msgstr ""
#: plugin.py:193 #: plugin.py:184
msgid "My connection is restricted, I can't change nicks." msgid "My connection is restricted, I can't change nicks."
msgstr "" msgstr ""
#: plugin.py:200 #: plugin.py:191
msgid "Someone else is already using that nick." msgid "Someone else is already using that nick."
msgstr "" msgstr ""
#: plugin.py:207 #: plugin.py:198
msgid "I can't change nick, I'm currently banned in %s." msgid "I can't change nick, I'm currently banned in %s."
msgstr "" msgstr ""
#: plugin.py:215 #: plugin.py:206
msgid "I can't change nicks, the server said %q." msgid "I can't change nicks, the server said %q."
msgstr "" msgstr ""
#: plugin.py:229 #: plugin.py:220
#, docstring #, docstring
msgid "" msgid ""
"[<nick>] [<network>]\n" "[<nick>] [<network>]\n"
@ -105,7 +102,23 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:248 #: plugin.py:237
#, docstring
msgid ""
"[<channel>] [<reason>]\n"
"\n"
" Tells the bot to part the list of channels you give it. <channel> is\n"
" only necessary if you want the bot to part a channel other than the\n"
" current channel. If <reason> is specified, use it as the part\n"
" message.\n"
" "
msgstr ""
#: plugin.py:255
msgid "I'm not in %s."
msgstr ""
#: plugin.py:267
#, docstring #, docstring
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
@ -115,15 +128,15 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:268 #: plugin.py:287
msgid "The \"owner\" capability can't be added in the bot. Use the supybot-adduser program (or edit the users.conf file yourself) to add an owner capability." msgid "The \"owner\" capability can't be added in the bot. Use the supybot-adduser program (or edit the users.conf file yourself) to add an owner capability."
msgstr "" msgstr ""
#: plugin.py:279 #: plugin.py:298
msgid "You can't add capabilities you don't have." msgid "You can't add capabilities you don't have."
msgstr "" msgstr ""
#: plugin.py:284 #: plugin.py:303
#, docstring #, docstring
msgid "" msgid ""
"<name|hostmask> <capability>\n" "<name|hostmask> <capability>\n"
@ -133,15 +146,15 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:296 #: plugin.py:315
msgid "That user doesn't have that capability." msgid "That user doesn't have that capability."
msgstr "" msgstr ""
#: plugin.py:298 #: plugin.py:317
msgid "You can't remove capabilities you don't have." msgid "You can't remove capabilities you don't have."
msgstr "" msgstr ""
#: plugin.py:306 #: plugin.py:325
#, docstring #, docstring
msgid "" msgid ""
"<hostmask|nick> [<expires>]\n" "<hostmask|nick> [<expires>]\n"
@ -153,7 +166,7 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:319 #: plugin.py:338
#, docstring #, docstring
msgid "" msgid ""
"<hostmask|nick>\n" "<hostmask|nick>\n"
@ -163,11 +176,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:328 #: plugin.py:347
msgid "%s wasn't in the ignores database." msgid "%s wasn't in the ignores database."
msgstr "" msgstr ""
#: plugin.py:333 #: plugin.py:352
#, docstring #, docstring
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
@ -176,11 +189,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:341 #: plugin.py:360
msgid "I'm not currently globally ignoring anyone." msgid "I'm not currently globally ignoring anyone."
msgstr "" msgstr ""
#: plugin.py:345 #: plugin.py:364
#, docstring #, docstring
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
@ -189,11 +202,3 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:354
#, docstring
msgid ""
"<command> [<arg> ...]\n"
"\n"
" Perform <command> (with associated <arg>s on all channels on current network."
msgstr ""

View File

@ -1,6 +1,6 @@
### ###
# Copyright (c) 2002-2005, Jeremiah Fincher # Copyright (c) 2002-2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz # Copyright (c) 2010, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2002-2005, Jeremiah Fincher # Copyright (c) 2002-2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@ -71,7 +70,7 @@ class AdminTestCase(PluginTestCase):
ircdb.users.setUser(u) ircdb.users.setUser(u)
self.assertNotError('capability add foo bar') self.assertNotError('capability add foo bar')
self.assertError('addcapability foo baz') self.assertError('addcapability foo baz')
self.assertIn('bar', u.capabilities) self.assert_('bar' in u.capabilities)
ircdb.users.delUser(u.id) ircdb.users.delUser(u.id)
def testCapabilityRemove(self): def testCapabilityRemove(self):
@ -80,10 +79,10 @@ class AdminTestCase(PluginTestCase):
u.name = 'foo' u.name = 'foo'
ircdb.users.setUser(u) ircdb.users.setUser(u)
self.assertNotError('capability add foo bar') self.assertNotError('capability add foo bar')
self.assertIn('bar', u.capabilities) self.assert_('bar' in u.capabilities)
self.assertError('removecapability foo bar') self.assertError('removecapability foo bar')
self.assertNotError('capability remove foo bar') self.assertNotError('capability remove foo bar')
self.assertNotIn('bar', u.capabilities) self.assert_(not 'bar' in u.capabilities)
ircdb.users.delUser(u.id) ircdb.users.delUser(u.id)
def testJoin(self): def testJoin(self):

View File

@ -5,14 +5,12 @@ Documentation for the Aka plugin for Supybot
Purpose Purpose
------- -------
This plugin allows the user to create various aliases (known as "Akas", since This plugin allows the user to create various aliases (known as "Akas", since
Alias is the name of another plugin Aka is based on) to other commands or Alias is the name of another plugin Aka is based on) to other commands or
combinations of other commands (via nested commands). combinations of other commands (via nested commands).
Usage Usage
----- -----
This plugin allows users to define aliases to commands and combinations This plugin allows users to define aliases to commands and combinations
of commands (via nesting). of commands (via nesting).
@ -46,7 +44,7 @@ Now you can use Aka as you used Alias before.
Trout Trout
^^^^^ ^^^^^
Add an aka, ``trout``, which expects a word as an argument:: Add an aka, trout, which expects a word as an argument::
<jamessan> @aka add trout "reply action slaps $1 with a large trout" <jamessan> @aka add trout "reply action slaps $1 with a large trout"
<bot> jamessan: The operation succeeded. <bot> jamessan: The operation succeeded.
@ -56,25 +54,28 @@ Add an aka, ``trout``, which expects a word as an argument::
This ``trout`` aka requires the plugin ``Reply`` to be loaded since it This ``trout`` aka requires the plugin ``Reply`` to be loaded since it
provides the ``action`` command. provides the ``action`` command.
Random percentage LastFM
^^^^^^^^^^^^^^^^^ ^^^^^^
Add an aka, ``randpercent``, which returns a random percentage value:: Add an aka, ``lastfm``, which expects a last.fm username and replies with
their most recently played item::
@aka add randpercent "squish [dice 1d100]%" @aka add lastfm "rss [format concat http://ws.audioscrobbler.com/1.0/user/ [format concat [web urlquote $1] /recenttracks.rss]]"
This requires the ``Filter`` and ``Games`` plugins to be loaded. This ``lastfm`` aka requires the following plugins to be loaded: ``RSS``,
``Format`` and ``Web``.
Note that nested commands in an alias should be quoted, or they will only ``RSS`` provides ``rss``, ``Format`` provides ``concat`` and ``Web`` provides
run once when you create the alias, and not each time the alias is ``urlquote``.
called. (In this case, not quoting the nested command would mean that
``@randpercent`` always responds with the same value!) Note that if the nested commands being aliased hadn't been quoted, then
those commands would have been run immediately, and ``@lastfm`` would always
reply with the same information, the result of those commands.
.. _commands-Aka: .. _commands-Aka:
Commands Commands
-------- --------
.. _command-aka-add: .. _command-aka-add:
add [--channel <#channel>] <name> <command> add [--channel <#channel>] <name> <command>
@ -129,7 +130,7 @@ Configuration
supybot.plugins.Aka.maximumWordsInName supybot.plugins.Aka.maximumWordsInName
This config variable defaults to "5", is not network-specific, and is not channel-specific. This config variable defaults to "5", is not network-specific, and is not channel-specific.
The maximum number of words allowed in a command name. Setting this to an high value may slow down your bot on long commands. The maximum number of words allowed in a command name. Setting this to an high value may slow down your bot on long commands.
@ -137,7 +138,7 @@ supybot.plugins.Aka.maximumWordsInName
supybot.plugins.Aka.public supybot.plugins.Aka.public
This config variable defaults to "True", is not network-specific, and is not channel-specific. This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether this plugin is publicly visible. Determines whether this plugin is publicly visible.
@ -151,7 +152,7 @@ supybot.plugins.Aka.web
supybot.plugins.Aka.web.enable supybot.plugins.Aka.web.enable
This config variable defaults to "False", is not network-specific, and is not channel-specific. This config variable defaults to "False", is not network-specific, and is not channel-specific.
Determines whether the Akas will be browsable through the HTTP server. Determines whether the Akas will be browsable through the HTTP server.

View File

@ -1,5 +1,5 @@
### ###
# Copyright (c) 2013-2021, Valentin Lorentz # Copyright (c) 2013, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,5 +1,5 @@
### ###
# Copyright (c) 2013-2021, Valentin Lorentz # Copyright (c) 2013, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Aka plugin for Limnoria\n" "Project-Id-Version: Aka plugin for Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 13:30+EET\n"
"PO-Revision-Date: 2014-12-20 13:57+0200\n" "PO-Revision-Date: 2014-12-20 13:57+0200\n"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n" "Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n" "Language-Team: \n"
@ -26,124 +26,54 @@ msgstr ""
" Korkean arvon asettaminen tähän voi hidastaa bottiasi pitkien komentojen " " Korkean arvon asettaminen tähän voi hidastaa bottiasi pitkien komentojen "
"kanssa." "kanssa."
#: config.py:61 #: plugin.py:140 plugin.py:264 plugin.py:507
msgid ""
"Determines whether the Akas will be\n"
" browsable through the HTTP server."
msgstr ""
#: plugin.py:141 plugin.py:274 plugin.py:732
msgid "This Aka already exists." msgid "This Aka already exists."
msgstr "Tämä Aka on jo olemassa." msgstr "Tämä Aka on jo olemassa."
#: plugin.py:170 plugin.py:182 plugin.py:196 plugin.py:301 plugin.py:318 #: plugin.py:169 plugin.py:181 plugin.py:195 plugin.py:291 plugin.py:308
#: plugin.py:335 plugin.py:912 #: plugin.py:325
msgid "This Aka does not exist." msgid "This Aka does not exist."
msgstr "Tätä Akaa ei ole olemassa." msgstr "Tätä Akaa ei ole olemassa."
#: plugin.py:303 #: plugin.py:293
msgid "This Aka is already locked." msgid "This Aka is already locked."
msgstr "Tämä Aka on jo lukittu." msgstr "Tämä Aka on jo lukittu."
#: plugin.py:320 #: plugin.py:310
msgid "This Aka is already unlocked." msgid "This Aka is already unlocked."
msgstr "Tämä Aka on jo avattu." msgstr "Tämä Aka on jo avattu."
#: plugin.py:465 #: plugin.py:372
#, fuzzy
msgid "By %s at %s"
msgstr "Lukinnut %s aikaan %s"
#: plugin.py:501
msgid "" msgid ""
"\n" "Aka is the improved version of the Alias plugin. It stores akas outside\n"
" This plugin allows users to define aliases to commands and combinations\n" " of the bot.conf, which doesn't have risk of corrupting the bot.conf "
" of commands (via nesting).\n" "file\n"
"\n" " (this often happens when there are Unicode issues). Aka also\n"
" Importing from Alias\n" " introduces multi-worded akas."
" ^^^^^^^^^^^^^^^^^^^^\n"
"\n"
" Add an aka, Alias, which eases the transitioning to Aka from Alias.\n"
"\n"
" First we will load Alias and Aka::\n"
"\n"
" <jamessan> @load Alias\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @load Aka\n"
" <bot> jamessan: The operation succeeded.\n"
"\n"
" Then we import the Alias database to Aka in case it exists and unload\n"
" Alias::\n"
"\n"
" <jamessan> @importaliasdatabase\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @unload Alias\n"
" <bot> jamessan: The operation succeeded.\n"
"\n"
" And now we will finally add the Aka ``alias`` itself::\n"
"\n"
" <jamessan> @aka add \"alias\" \"aka $1 $*\"\n"
" <bot> jamessan: The operation succeeded.\n"
"\n"
" Now you can use Aka as you used Alias before.\n"
"\n"
" Trout\n"
" ^^^^^\n"
"\n"
" Add an aka, trout, which expects a word as an argument::\n"
"\n"
" <jamessan> @aka add trout \"reply action slaps $1 with a large trout"
"\"\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @trout me\n"
" * bot slaps me with a large trout\n"
"\n"
" This ``trout`` aka requires the plugin ``Reply`` to be loaded since it\n"
" provides the ``action`` command.\n"
"\n"
" LastFM\n"
" ^^^^^^\n"
"\n"
" Add an aka, ``lastfm``, which expects a last.fm username and replies "
"with\n"
" their most recently played item::\n"
"\n"
" @aka add lastfm \"rss [format concat http://ws.audioscrobbler."
"com/1.0/user/ [format concat [web urlquote $1] /recenttracks.rss]]\"\n"
"\n"
" This ``lastfm`` aka requires the following plugins to be loaded: "
"``RSS``,\n"
" ``Format`` and ``Web``.\n"
"\n"
" ``RSS`` provides ``rss``, ``Format`` provides ``concat`` and ``Web`` "
"provides\n"
" ``urlquote``.\n"
"\n"
" Note that if the nested commands being aliased hadn't been quoted, then\n"
" those commands would have been run immediately, and ``@lastfm`` would "
"always\n"
" reply with the same information, the result of those commands.\n"
" "
msgstr "" msgstr ""
"Aka on paranneltu versio Alias pluginista. Se tallentaa akat bot.conf-"
"tiedoston ulkopuolelle, jollla ei ole\n"
" riskiä korruptoida bot.conf tiedostoa (joka tapahtuu usein Unicode-"
"ongelmien kanssa). Aka\n"
" tukee myös useamman akan pituisia akoja."
#: plugin.py:699 #: plugin.py:481
msgid "You've attempted more nesting than is currently allowed on this bot." msgid "You've attempted more nesting than is currently allowed on this bot."
msgstr "" msgstr ""
"Olet yrittänyt sisällyttää enemmän komentoja, kuin tässä botti sallii juuri " "Olet yrittänyt sisällyttää enemmän komentoja, kuin tässä botti sallii juuri "
"nyt." "nyt."
#: plugin.py:703 #: plugin.py:485
msgid " at least" msgid " at least"
msgstr "ainakin" msgstr "ainakin"
#: plugin.py:712 #: plugin.py:494
msgid "Locked by %s at %s" msgid "Locked by %s at %s"
msgstr "Lukinnut %s aikaan %s" msgstr "Lukinnut %s aikaan %s"
#: plugin.py:717 #: plugin.py:497
#, fuzzy
msgid "" msgid ""
"<a global alias,%s %n>\n" "<an alias,%s %n>\n"
"\n" "\n"
"Alias for %q.%s" "Alias for %q.%s"
msgstr "" msgstr ""
@ -151,39 +81,32 @@ msgstr ""
"\n" "\n"
"Alias komennolle %q.%s" "Alias komennolle %q.%s"
#: plugin.py:718 plugin.py:722 #: plugin.py:498
msgid "argument" msgid "argument"
msgstr "parametri" msgstr "parametri"
#: plugin.py:721 #: plugin.py:504
#, fuzzy
msgid ""
"<an alias on %s,%s %n>\n"
"\n"
"Alias for %q.%s"
msgstr ""
"<alias,%s %n>\n"
"\n"
"Alias komennolle %q.%s"
#: plugin.py:729
msgid "You can't overwrite commands in this plugin." msgid "You can't overwrite commands in this plugin."
msgstr "Et voi ylikirjoittaa tämän lisä-osan komentoja." msgstr "Et voi ylikirjoittaa tämän lisä-osan komentoja."
#: plugin.py:734 #: plugin.py:509
msgid "This Aka has too many spaces in its name." msgid "This Aka has too many spaces in its name."
msgstr "Tämän Akan nimessä on liian monta välilyöntiä." msgstr "Tämän Akan nimessä on liian monta välilyöntiä."
#: plugin.py:739 #: plugin.py:514
msgid "Can't mix $* and optional args (@1, etc.)" msgid "Can't mix $* and optional args (@1, etc.)"
msgstr "" msgstr ""
"$*:ä ja vapaaehtoisia parametrejä (@1, jne.) ei voida sekoittaa keskenään" "$*:ä ja vapaaehtoisia parametrejä (@1, jne.) ei voida sekoittaa keskenään"
#: plugin.py:746 #: plugin.py:516
msgid "There can be only one $* in an alias."
msgstr "Aliaksessa voi olla vain yksi $*."
#: plugin.py:523
msgid "This Aka is locked." msgid "This Aka is locked."
msgstr "Tämä Aka on lukittu." msgstr "Tämä Aka on lukittu."
#: plugin.py:750 #: plugin.py:527
#, fuzzy #, fuzzy
msgid "" msgid ""
"[--channel <#channel>] <name> <command>\n" "[--channel <#channel>] <name> <command>\n"
@ -214,12 +137,12 @@ msgstr ""
"parametrit.\n" "parametrit.\n"
" " " "
#: plugin.py:764 plugin.py:796 plugin.py:827 plugin.py:859 plugin.py:882 #: plugin.py:541 plugin.py:573 plugin.py:604 plugin.py:636 plugin.py:659
#: plugin.py:905 plugin.py:951 plugin.py:994 #: plugin.py:682
msgid "%r is not a valid channel." msgid "%r is not a valid channel."
msgstr "%r ei ole kelvollinen kanava." msgstr "%r ei ole kelvollinen kanava."
#: plugin.py:782 #: plugin.py:559
#, fuzzy #, fuzzy
msgid "" msgid ""
"[--channel <#channel>] <name> <command>\n" "[--channel <#channel>] <name> <command>\n"
@ -249,7 +172,7 @@ msgstr ""
"$2 jne.\", esimerkiksi. se sisällyttää\n" "$2 jne.\", esimerkiksi. se sisällyttää\n"
" myös kaikki vapaaehtoiset parametrit." " myös kaikki vapaaehtoiset parametrit."
#: plugin.py:819 #: plugin.py:596
msgid "" msgid ""
"[--channel <#channel>] <name>\n" "[--channel <#channel>] <name>\n"
"\n" "\n"
@ -261,7 +184,7 @@ msgstr ""
" Poistaa annetun aliaksen, ellei se ole lukittu.\n" " Poistaa annetun aliaksen, ellei se ole lukittu.\n"
" " " "
#: plugin.py:841 #: plugin.py:618
msgid "" msgid ""
"Check if the user has any of the required capabilities to manage\n" "Check if the user has any of the required capabilities to manage\n"
" the regexp database." " the regexp database."
@ -269,7 +192,7 @@ msgstr ""
"Tarkistaa onko käyttäjällä vaadittu valtuus säännöllisten lausekkeiden\n" "Tarkistaa onko käyttäjällä vaadittu valtuus säännöllisten lausekkeiden\n"
" tietokannan hallintaan." " tietokannan hallintaan."
#: plugin.py:851 #: plugin.py:628
msgid "" msgid ""
"[--channel <#channel>] <alias>\n" "[--channel <#channel>] <alias>\n"
"\n" "\n"
@ -281,7 +204,7 @@ msgstr ""
" Lukitsee aliaksen estäen muita muokkaamasta sitä.\n" " Lukitsee aliaksen estäen muita muokkaamasta sitä.\n"
" " " "
#: plugin.py:874 #: plugin.py:651
msgid "" msgid ""
"[--channel <#channel>] <alias>\n" "[--channel <#channel>] <alias>\n"
"\n" "\n"
@ -293,7 +216,7 @@ msgstr ""
" Avaa aliaksen, jotta kaikki voivat määrittää uusia aliaksia sen päälle.\n" " Avaa aliaksen, jotta kaikki voivat määrittää uusia aliaksia sen päälle.\n"
" " " "
#: plugin.py:897 #: plugin.py:674
msgid "" msgid ""
"[--channel <#channel>] <alias>\n" "[--channel <#channel>] <alias>\n"
"\n" "\n"
@ -304,7 +227,7 @@ msgstr ""
"\n" "\n"
" Tämä komento näyttää Akan sisällön." " Tämä komento näyttää Akan sisällön."
#: plugin.py:917 #: plugin.py:694
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -314,60 +237,14 @@ msgstr ""
"\n" "\n"
" Tuo Aliaksen tietokannan Akaan ja tyhjentää aiemman." " Tuo Aliaksen tietokannan Akaan ja tyhjentää aiemman."
#: plugin.py:922 #: plugin.py:699
msgid "Alias plugin is not loaded." msgid "Alias plugin is not loaded."
msgstr "Alias lisä-osa ei ole ladattu." msgstr "Alias lisä-osa ei ole ladattu."
#: plugin.py:933 #: plugin.py:709
msgid "Error occured when importing the %n: %L" msgid "Error occured when importing the %n: %L"
msgstr "Virhe komennon %n tuomisessa: %L" msgstr "Virhe komennon %n tuomisessa: %L"
#: plugin.py:941
msgid ""
"[--channel <#channel>] [--keys] [--unlocked|--locked]\n"
"\n"
" Lists all Akas defined for <channel>. If <channel> is not "
"specified,\n"
" lists all global Akas. If --keys is given, lists only the Aka names\n"
" and not their commands."
msgstr ""
#: plugin.py:960
msgid "--locked and --unlocked are incompatible options."
msgstr ""
#: plugin.py:980
msgid "No Akas found."
msgstr ""
#: plugin.py:985
msgid ""
"[--channel <#channel>] <query>\n"
"\n"
" Searches Akas defined for <channel>. If <channel> is not specified,\n"
" searches all global Akas."
msgstr ""
#: plugin.py:1004
msgid "No matching Akas were found."
msgstr ""
#~ msgid ""
#~ "Aka is the improved version of the Alias plugin. It stores akas outside\n"
#~ " of the bot.conf, which doesn't have risk of corrupting the bot.conf "
#~ "file\n"
#~ " (this often happens when there are Unicode issues). Aka also\n"
#~ " introduces multi-worded akas."
#~ msgstr ""
#~ "Aka on paranneltu versio Alias pluginista. Se tallentaa akat bot.conf-"
#~ "tiedoston ulkopuolelle, jollla ei ole\n"
#~ " riskiä korruptoida bot.conf tiedostoa (joka tapahtuu usein Unicode-"
#~ "ongelmien kanssa). Aka\n"
#~ " tukee myös useamman akan pituisia akoja."
#~ msgid "There can be only one $* in an alias."
#~ msgstr "Aliaksessa voi olla vain yksi $*."
#~ msgid "" #~ msgid ""
#~ "Add the help for 'plugin help Aka' here\n" #~ "Add the help for 'plugin help Aka' here\n"
#~ " This should describe *how* to use this plugin." #~ " This should describe *how* to use this plugin."

View File

@ -5,13 +5,13 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 13:30+EET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
@ -22,147 +22,76 @@ msgid ""
" on long commands." " on long commands."
msgstr "" msgstr ""
#: config.py:61 #: plugin.py:140 plugin.py:264 plugin.py:507
msgid ""
"Determines whether the Akas will be\n"
" browsable through the HTTP server."
msgstr ""
#: plugin.py:141 plugin.py:274 plugin.py:732
msgid "This Aka already exists." msgid "This Aka already exists."
msgstr "" msgstr ""
#: plugin.py:170 plugin.py:182 plugin.py:196 plugin.py:301 plugin.py:318 #: plugin.py:169 plugin.py:181 plugin.py:195 plugin.py:291 plugin.py:308
#: plugin.py:335 plugin.py:912 #: plugin.py:325
msgid "This Aka does not exist." msgid "This Aka does not exist"
msgstr "" msgstr ""
#: plugin.py:303 #: plugin.py:293
msgid "This Aka is already locked." msgid "This Aka is already locked."
msgstr "" msgstr ""
#: plugin.py:320 #: plugin.py:310
msgid "This Aka is already unlocked." msgid "This Aka is already unlocked."
msgstr "" msgstr ""
#: plugin.py:465 #: plugin.py:372
msgid "By %s at %s"
msgstr ""
#: plugin.py:501
#, docstring #, docstring
msgid "" msgid ""
"\n" "Aka is the improved version of the Alias plugin. It stores akas outside\n"
" This plugin allows users to define aliases to commands and combinations\n" " of the bot.conf, which doesn't have risk of corrupting the bot.conf file\n"
" of commands (via nesting).\n" " (this often happens when there are Unicode issues). Aka also\n"
"\n" " introduces multi-worded akas."
" Importing from Alias\n"
" ^^^^^^^^^^^^^^^^^^^^\n"
"\n"
" Add an aka, Alias, which eases the transitioning to Aka from Alias.\n"
"\n"
" First we will load Alias and Aka::\n"
"\n"
" <jamessan> @load Alias\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @load Aka\n"
" <bot> jamessan: The operation succeeded.\n"
"\n"
" Then we import the Alias database to Aka in case it exists and unload\n"
" Alias::\n"
"\n"
" <jamessan> @importaliasdatabase\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @unload Alias\n"
" <bot> jamessan: The operation succeeded.\n"
"\n"
" And now we will finally add the Aka ``alias`` itself::\n"
"\n"
" <jamessan> @aka add \"alias\" \"aka $1 $*\"\n"
" <bot> jamessan: The operation succeeded.\n"
"\n"
" Now you can use Aka as you used Alias before.\n"
"\n"
" Trout\n"
" ^^^^^\n"
"\n"
" Add an aka, trout, which expects a word as an argument::\n"
"\n"
" <jamessan> @aka add trout \"reply action slaps $1 with a large trout\"\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @trout me\n"
" * bot slaps me with a large trout\n"
"\n"
" This ``trout`` aka requires the plugin ``Reply`` to be loaded since it\n"
" provides the ``action`` command.\n"
"\n"
" LastFM\n"
" ^^^^^^\n"
"\n"
" Add an aka, ``lastfm``, which expects a last.fm username and replies with\n"
" their most recently played item::\n"
"\n"
" @aka add lastfm \"rss [format concat http://ws.audioscrobbler.com/1.0/user/ [format concat [web urlquote $1] /recenttracks.rss]]\"\n"
"\n"
" This ``lastfm`` aka requires the following plugins to be loaded: ``RSS``,\n"
" ``Format`` and ``Web``.\n"
"\n"
" ``RSS`` provides ``rss``, ``Format`` provides ``concat`` and ``Web`` provides\n"
" ``urlquote``.\n"
"\n"
" Note that if the nested commands being aliased hadn't been quoted, then\n"
" those commands would have been run immediately, and ``@lastfm`` would always\n"
" reply with the same information, the result of those commands.\n"
" "
msgstr "" msgstr ""
#: plugin.py:699 #: plugin.py:481
msgid "You've attempted more nesting than is currently allowed on this bot." msgid "You've attempted more nesting than is currently allowed on this bot."
msgstr "" msgstr ""
#: plugin.py:703 #: plugin.py:485
msgid " at least" msgid " at least"
msgstr "" msgstr ""
#: plugin.py:712 #: plugin.py:494
msgid "Locked by %s at %s" msgid "Locked by %s at %s"
msgstr "" msgstr ""
#: plugin.py:717 #: plugin.py:497
msgid "" msgid ""
"<a global alias,%s %n>\n" "<an alias,%s %n>\n"
"\n" "\n"
"Alias for %q.%s" "Alias for %q.%s"
msgstr "" msgstr ""
#: plugin.py:718 plugin.py:722 #: plugin.py:498
msgid "argument" msgid "argument"
msgstr "" msgstr ""
#: plugin.py:721 #: plugin.py:504
msgid ""
"<an alias on %s,%s %n>\n"
"\n"
"Alias for %q.%s"
msgstr ""
#: plugin.py:729
msgid "You can't overwrite commands in this plugin." msgid "You can't overwrite commands in this plugin."
msgstr "" msgstr ""
#: plugin.py:734 #: plugin.py:509
msgid "This Aka has too many spaces in its name." msgid "This Aka has too many spaces in its name."
msgstr "" msgstr ""
#: plugin.py:739 #: plugin.py:514
msgid "Can't mix $* and optional args (@1, etc.)" msgid "Can't mix $* and optional args (@1, etc.)"
msgstr "" msgstr ""
#: plugin.py:746 #: plugin.py:516
msgid "There can be only one $* in an alias."
msgstr ""
#: plugin.py:523
msgid "This Aka is locked." msgid "This Aka is locked."
msgstr "" msgstr ""
#: plugin.py:750 #: plugin.py:527
#, docstring #, docstring
msgid "" msgid ""
"[--channel <#channel>] <name> <command>\n" "[--channel <#channel>] <name> <command>\n"
@ -177,12 +106,12 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:764 plugin.py:796 plugin.py:827 plugin.py:859 plugin.py:882 #: plugin.py:541 plugin.py:573 plugin.py:604 plugin.py:636 plugin.py:659
#: plugin.py:905 plugin.py:951 plugin.py:994 #: plugin.py:682
msgid "%r is not a valid channel." msgid "%r is not a valid channel."
msgstr "" msgstr ""
#: plugin.py:782 #: plugin.py:559
#, docstring #, docstring
msgid "" msgid ""
"[--channel <#channel>] <name> <command>\n" "[--channel <#channel>] <name> <command>\n"
@ -197,7 +126,7 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:819 #: plugin.py:596
#, docstring #, docstring
msgid "" msgid ""
"[--channel <#channel>] <name>\n" "[--channel <#channel>] <name>\n"
@ -206,14 +135,14 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:841 #: plugin.py:618
#, docstring #, docstring
msgid "" msgid ""
"Check if the user has any of the required capabilities to manage\n" "Check if the user has any of the required capabilities to manage\n"
" the regexp database." " the regexp database."
msgstr "" msgstr ""
#: plugin.py:851 #: plugin.py:628
#, docstring #, docstring
msgid "" msgid ""
"[--channel <#channel>] <alias>\n" "[--channel <#channel>] <alias>\n"
@ -222,7 +151,7 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:874 #: plugin.py:651
#, docstring #, docstring
msgid "" msgid ""
"[--channel <#channel>] <alias>\n" "[--channel <#channel>] <alias>\n"
@ -231,7 +160,7 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:897 #: plugin.py:674
#, docstring #, docstring
msgid "" msgid ""
"[--channel <#channel>] <alias>\n" "[--channel <#channel>] <alias>\n"
@ -240,7 +169,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:917 #: plugin.py:689
msgid "This Aka does not exist."
msgstr ""
#: plugin.py:694
#, docstring #, docstring
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
@ -248,42 +181,11 @@ msgid ""
" Imports the Alias database into Aka's, and clean the former." " Imports the Alias database into Aka's, and clean the former."
msgstr "" msgstr ""
#: plugin.py:922 #: plugin.py:699
msgid "Alias plugin is not loaded." msgid "Alias plugin is not loaded."
msgstr "" msgstr ""
#: plugin.py:933 #: plugin.py:709
msgid "Error occured when importing the %n: %L" msgid "Error occured when importing the %n: %L"
msgstr "" msgstr ""
#: plugin.py:941
#, docstring
msgid ""
"[--channel <#channel>] [--keys] [--unlocked|--locked]\n"
"\n"
" Lists all Akas defined for <channel>. If <channel> is not specified,\n"
" lists all global Akas. If --keys is given, lists only the Aka names\n"
" and not their commands."
msgstr ""
#: plugin.py:960
msgid "--locked and --unlocked are incompatible options."
msgstr ""
#: plugin.py:980
msgid "No Akas found."
msgstr ""
#: plugin.py:985
#, docstring
msgid ""
"[--channel <#channel>] <query>\n"
"\n"
" Searches Akas defined for <channel>. If <channel> is not specified,\n"
" searches all global Akas."
msgstr ""
#: plugin.py:1004
msgid "No matching Akas were found."
msgstr ""

View File

@ -1,5 +1,5 @@
### ###
# Copyright (c) 2013-2021, Valentin Lorentz # Copyright (c) 2013, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@ -532,7 +532,7 @@ class Aka(callbacks.Plugin):
Trout Trout
^^^^^ ^^^^^
Add an aka, ``trout``, which expects a word as an argument:: Add an aka, trout, which expects a word as an argument::
<jamessan> @aka add trout "reply action slaps $1 with a large trout" <jamessan> @aka add trout "reply action slaps $1 with a large trout"
<bot> jamessan: The operation succeeded. <bot> jamessan: The operation succeeded.
@ -542,19 +542,23 @@ class Aka(callbacks.Plugin):
This ``trout`` aka requires the plugin ``Reply`` to be loaded since it This ``trout`` aka requires the plugin ``Reply`` to be loaded since it
provides the ``action`` command. provides the ``action`` command.
Random percentage LastFM
^^^^^^^^^^^^^^^^^ ^^^^^^
Add an aka, ``randpercent``, which returns a random percentage value:: Add an aka, ``lastfm``, which expects a last.fm username and replies with
their most recently played item::
@aka add randpercent "squish [dice 1d100]%" @aka add lastfm "rss [format concat http://ws.audioscrobbler.com/1.0/user/ [format concat [web urlquote $1] /recenttracks.rss]]"
This requires the ``Filter`` and ``Games`` plugins to be loaded. This ``lastfm`` aka requires the following plugins to be loaded: ``RSS``,
``Format`` and ``Web``.
Note that nested commands in an alias should be quoted, or they will only ``RSS`` provides ``rss``, ``Format`` provides ``concat`` and ``Web`` provides
run once when you create the alias, and not each time the alias is ``urlquote``.
called. (In this case, not quoting the nested command would mean that
``@randpercent`` always responds with the same value!) Note that if the nested commands being aliased hadn't been quoted, then
those commands would have been run immediately, and ``@lastfm`` would always
reply with the same information, the result of those commands.
""" """
def __init__(self, irc): def __init__(self, irc):

View File

@ -1,7 +1,6 @@
# -*- coding: utf8 -*- # -*- coding: utf8 -*-
### ###
# Copyright (c) 2002-2004, Jeremiah Fincher # Copyright (c) 2002-2004, Jeremiah Fincher
# Copyright (c) 2013-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -5,42 +5,37 @@ Documentation for the Alias plugin for Supybot
Purpose Purpose
------- -------
Allows aliases for other commands. NOTE THAT IT'S RECOMMENDED TO USE Aka Allows aliases for other commands. NOTE THAT IT'S RECOMMENDED TO USE Aka
PLUGIN INSTEAD! PLUGIN INSTEAD!
Usage Usage
----- -----
This plugin allows users to define aliases to commands and combinations This plugin allows users to define aliases to commands and combinations
of commands (via nesting). of commands (via nesting).
This plugin is only kept for backward compatibility, you should use the This plugin is only kept for backward compatibility, you should use the
built-in Aka plugin instead (you can migrate your existing aliases using built-in Aka plugin instead (you can migrate your existing aliases using
the 'importaliasdatabase' command. the 'importaliasdatabase' command.
To add an alias, ``trout``, which expects a word as an argument:: To add an alias, `trout`, which expects a word as an argument::
<jamessan> @alias add trout "action slaps $1 with a large trout" <jamessan> @alias add trout "action slaps $1 with a large trout"
<bot> jamessan: The operation succeeded. <bot> jamessan: The operation succeeded.
<jamessan> @trout me <jamessan> @trout me
* bot slaps me with a large trout * bot slaps me with a large trout
Add an alias, ``randpercent``, which returns a random percentage value:: To add an alias, `lastfm`, which expects a last.fm user and replies with
their recently played items::
@alias add randpercent "squish [dice 1d100]%" @alias add lastfm "rss [format concat http://ws.audioscrobbler.com/1.0/user/ [format concat [urlquote $1] /recenttracks.rss]]"
This requires the ``Filter`` and ``Games`` plugins to be loaded. Note that if the nested commands being aliased hadn't been quoted, then
those commands would have been run immediately, and `@lastfm` would always
Note that nested commands in an alias should be quoted, or they will only reply with the same information, the result of those commands.
run once when you create the alias, and not each time the alias is
called. (In this case, not quoting the nested command would mean that
``@randpercent`` always responds with the same value!)
.. _commands-Alias: .. _commands-Alias:
Commands Commands
-------- --------
.. _command-alias-add: .. _command-alias-add:
add <name> <command> add <name> <command>
@ -87,7 +82,7 @@ supybot.plugins.Alias.escapedaliases
supybot.plugins.Alias.public supybot.plugins.Alias.public
This config variable defaults to "True", is not network-specific, and is not channel-specific. This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether this plugin is publicly visible. Determines whether this plugin is publicly visible.
@ -95,7 +90,7 @@ supybot.plugins.Alias.public
supybot.plugins.Alias.validName supybot.plugins.Alias.validName
This config variable defaults to "^[^\\x00-\\x20]+$", is not network-specific, and is not channel-specific. This config variable defaults to "^[^\\x00-\\x20]+$", is not network-specific, and is not channel-specific.
Regex which alias names must match in order to be valid Regex which alias names must match in order to be valid

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2005, Jeremiah Fincher # Copyright (c) 2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2005, Jeremiah Fincher # Copyright (c) 2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Supybot\n" "Project-Id-Version: Supybot\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2012-02-15 23:03+CET\n"
"PO-Revision-Date: 2012-04-27 15:36+0200\n" "PO-Revision-Date: 2012-04-27 15:36+0200\n"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n" "Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: German <fbesser@gmail.com>\n" "Language-Team: German <fbesser@gmail.com>\n"
@ -13,11 +13,7 @@ msgstr ""
"X-Poedit-Language: German\n" "X-Poedit-Language: German\n"
"X-Poedit-Country: GERMANY\n" "X-Poedit-Country: GERMANY\n"
#: config.py:48 #: plugin.py:45
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
msgid "" msgid ""
"Returns the channel the msg came over or the channel given in args.\n" "Returns the channel the msg came over or the channel given in args.\n"
"\n" "\n"
@ -25,24 +21,15 @@ msgid ""
" removed).\n" " removed).\n"
" " " "
msgstr "" msgstr ""
"Gibt den Kanal aus über den die Nachricht kam oder der Kanal der in den " "Gibt den Kanal aus über den die Nachricht kam oder der Kanal der in den Argumenten gegeben wurde.\n"
"Argumenten gegeben wurde.\n"
"\n" "\n"
"Falls der Kanal in den Argumenten angegeben wurde, werden die Argumente " "Falls der Kanal in den Argumenten angegeben wurde, werden die Argumente bearbeitet (der Kanal wird entfernt."
"bearbeitet (der Kanal wird entfernt."
#: plugin.py:110 #: plugin.py:164
msgid ""
"Encodes dots and pipes\n"
" Format: a<number of escaped chars>a(<index>(d|p))+<word without dots or "
"pipes>."
msgstr ""
#: plugin.py:226
msgid " at least" msgid " at least"
msgstr "mindestens" msgstr "mindestens"
#: plugin.py:228 plugin.py:233 #: plugin.py:165
msgid "" msgid ""
"<an alias,%s %n>\n" "<an alias,%s %n>\n"
"\n" "\n"
@ -52,42 +39,11 @@ msgstr ""
"\n" "\n"
"Alias für %q." "Alias für %q."
#: plugin.py:229 plugin.py:234 #: plugin.py:166
msgid "argument" msgid "argument"
msgstr "Argument" msgstr "Argument"
#: plugin.py:239 #: plugin.py:220
msgid ""
"\n"
" This plugin allows users to define aliases to commands and combinations\n"
" of commands (via nesting).\n"
" This plugin is only kept for backward compatibility, you should use the\n"
" built-in Aka plugin instead (you can migrate your existing aliases "
"using\n"
" the 'importaliasdatabase' command.\n"
"\n"
" To add an alias, `trout`, which expects a word as an argument::\n"
"\n"
" <jamessan> @alias add trout \"action slaps $1 with a large trout\"\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @trout me\n"
" * bot slaps me with a large trout\n"
"\n"
" To add an alias, `lastfm`, which expects a last.fm user and replies "
"with\n"
" their recently played items::\n"
"\n"
" @alias add lastfm \"rss [format concat http://ws.audioscrobbler."
"com/1.0/user/ [format concat [urlquote $1] /recenttracks.rss]]\"\n"
"\n"
" Note that if the nested commands being aliased hadn't been quoted, then\n"
" those commands would have been run immediately, and `@lastfm` would "
"always\n"
" reply with the same information, the result of those commands.\n"
" "
msgstr ""
#: plugin.py:357
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -98,11 +54,12 @@ msgstr ""
"\n" "\n"
"Versperrt ein Alias, sodass er nicht verändert werden kann." "Versperrt ein Alias, sodass er nicht verändert werden kann."
#: plugin.py:365 plugin.py:378 #: plugin.py:229
#: plugin.py:243
msgid "There is no such alias." msgid "There is no such alias."
msgstr "Es gibt keinen Alias mit diesem Namen." msgstr "Es gibt keinen Alias mit diesem Namen."
#: plugin.py:370 #: plugin.py:234
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -113,34 +70,28 @@ msgstr ""
"\n" "\n"
"Entsperrt den Alias, sodass andere Personen ihn verändern können." "Entsperrt den Alias, sodass andere Personen ihn verändern können."
#: plugin.py:386 #: plugin.py:254
msgid "That name isn't valid. Try %q instead." msgid "That name isn't valid. Try %q instead."
msgstr "Dieser Name ist nicht zulässig. Probiere anstatt %q." msgstr "Dieser Name ist nicht zulässig. Probiere anstatt %q."
#: plugin.py:426 #: plugin.py:292
#, fuzzy #, fuzzy
msgid "" msgid ""
"<name> <command>\n" "<name> <command>\n"
"\n" "\n"
" Defines an alias <name> that executes <command>. The <command>\n" " Defines an alias <name> that executes <command>. The <command>\n"
" should be in the standard \"command argument [nestedcommand " " should be in the standard \"command argument [nestedcommand argument]\"\n"
"argument]\"\n" " arguments to the alias; they'll be filled with the first, second, etc.\n"
" arguments to the alias; they'll be filled with the first, second, " " arguments. $1, $2, etc. can be used for required arguments. @1, @2,\n"
"etc.\n"
" arguments. $1, $2, etc. can be used for required arguments. @1, "
"@2,\n"
" etc. can be used for optional arguments. $* simply means \"all\n" " etc. can be used for optional arguments. $* simply means \"all\n"
" remaining arguments,\" and cannot be combined with optional " " remaining arguments,\" and cannot be combined with optional arguments.\n"
"arguments.\n"
" " " "
msgstr "" msgstr ""
"<Name> <Alias>\n" "<Name> <Alias>\n"
"\n" "\n"
"Definiert einen Alias <Name> der <Alias> ausführt. <Alias> sollte in der " "Definiert einen Alias <Name> der <Alias> ausführt. <Alias> sollte in der Standardform \"Befehl Argument [verschachtelter Befehl Argument\" angegeben werden."
"Standardform \"Befehl Argument [verschachtelter Befehl Argument\" angegeben "
"werden."
#: plugin.py:449 #: plugin.py:315
msgid "" msgid ""
"<name>\n" "<name>\n"
"\n" "\n"
@ -151,25 +102,3 @@ msgstr ""
"\n" "\n"
"Entfernt den gegeben Alias, falls er nicht gesperrt ist." "Entfernt den gegeben Alias, falls er nicht gesperrt ist."
#: plugin.py:463
msgid ""
"[--locked|--unlocked]\n"
"\n"
" Lists alias names of a particular type, defaults to all aliases if "
"no\n"
" --locked or --unlocked option is given.\n"
" "
msgstr ""
#: plugin.py:470
msgid "Cannot specify --locked and --unlocked simultaneously"
msgstr ""
#: plugin.py:486
msgid "There are no aliases of that type."
msgstr ""
#: plugin.py:488
#, fuzzy
msgid "There are no aliases."
msgstr "Es gibt keinen Alias mit diesem Namen."

View File

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Supybot Alias plugin\n" "Project-Id-Version: Supybot Alias plugin\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 13:30+EET\n"
"PO-Revision-Date: 2014-12-20 13:47+0200\n" "PO-Revision-Date: 2014-12-20 13:47+0200\n"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n" "Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: suomi <>\n" "Language-Team: suomi <>\n"
@ -16,11 +16,7 @@ msgstr ""
"Plural-Forms: \n" "Plural-Forms: \n"
"X-Generator: Poedit 1.6.10\n" "X-Generator: Poedit 1.6.10\n"
#: config.py:48 #: plugin.py:46
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
msgid "" msgid ""
"Returns the channel the msg came over or the channel given in args.\n" "Returns the channel the msg came over or the channel given in args.\n"
"\n" "\n"
@ -35,21 +31,20 @@ msgstr ""
" poistetaan).\n" " poistetaan).\n"
" " " "
#: plugin.py:110 #: plugin.py:105
#, fuzzy #, fuzzy
msgid "" msgid ""
"Encodes dots and pipes\n" "Encodes [a-z0-9.]+ into [a-z][a-z0-9].\n"
" Format: a<number of escaped chars>a(<index>(d|p))+<word without dots or " " Format: a<number of escaped chars>a(<index>d)+<word without dots>."
"pipes>."
msgstr "" msgstr ""
"Salaa [a-z0-9.]+ sisään [a-z][a-z0-9].\n" "Salaa [a-z0-9.]+ sisään [a-z][a-z0-9].\n"
" Muoto: a<ohitettujen merkkien määrä>a(<index>d)+<sana ilman pisteitä>." " Muoto: a<ohitettujen merkkien määrä>a(<index>d)+<sana ilman pisteitä>."
#: plugin.py:226 #: plugin.py:221
msgid " at least" msgid " at least"
msgstr "vähintään" msgstr "vähintään"
#: plugin.py:228 plugin.py:233 #: plugin.py:223 plugin.py:228
msgid "" msgid ""
"<an alias,%s %n>\n" "<an alias,%s %n>\n"
"\n" "\n"
@ -59,42 +54,20 @@ msgstr ""
"\n" "\n"
"Alias %q:lle." "Alias %q:lle."
#: plugin.py:229 plugin.py:234 #: plugin.py:224 plugin.py:229
msgid "argument" msgid "argument"
msgstr "parametri" msgstr "parametri"
#: plugin.py:239 #: plugin.py:234
#, fuzzy
msgid "" msgid ""
"\n" "This plugin allows users to define aliases to commands and combinations\n"
" This plugin allows users to define aliases to commands and combinations\n" " of commands (via nesting)."
" of commands (via nesting).\n"
" This plugin is only kept for backward compatibility, you should use the\n"
" built-in Aka plugin instead (you can migrate your existing aliases "
"using\n"
" the 'importaliasdatabase' command.\n"
"\n"
" To add an alias, `trout`, which expects a word as an argument::\n"
"\n"
" <jamessan> @alias add trout \"action slaps $1 with a large trout\"\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @trout me\n"
" * bot slaps me with a large trout\n"
"\n"
" To add an alias, `lastfm`, which expects a last.fm user and replies "
"with\n"
" their recently played items::\n"
"\n"
" @alias add lastfm \"rss [format concat http://ws.audioscrobbler."
"com/1.0/user/ [format concat [urlquote $1] /recenttracks.rss]]\"\n"
"\n"
" Note that if the nested commands being aliased hadn't been quoted, then\n"
" those commands would have been run immediately, and `@lastfm` would "
"always\n"
" reply with the same information, the result of those commands.\n"
" "
msgstr "" msgstr ""
"Tämä plugini sallii käyttäjien määrittää aliaksia komennoille ja komentojen "
"yhdistelmille (sisäytyksellä)."
#: plugin.py:357 #: plugin.py:299
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -106,11 +79,11 @@ msgstr ""
" Lukitsee aliaksen, niin ettei kukaan muu voi muuttaa sitä.\n" " Lukitsee aliaksen, niin ettei kukaan muu voi muuttaa sitä.\n"
" " " "
#: plugin.py:365 plugin.py:378 #: plugin.py:308 plugin.py:322
msgid "There is no such alias." msgid "There is no such alias."
msgstr "Tuollaista aliasta ei ole." msgstr "Tuollaista aliasta ei ole."
#: plugin.py:370 #: plugin.py:313
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -123,11 +96,11 @@ msgstr ""
"aliaksia sen päälle.\n" "aliaksia sen päälle.\n"
" " " "
#: plugin.py:386 #: plugin.py:334
msgid "That name isn't valid. Try %q instead." msgid "That name isn't valid. Try %q instead."
msgstr "Tuo nimi ei ole kelvollinen. Yritä sen sijaan %q:ta." msgstr "Tuo nimi ei ole kelvollinen. Yritä sen sijaan %q:ta."
#: plugin.py:426 #: plugin.py:379
msgid "" msgid ""
"<name> <command>\n" "<name> <command>\n"
"\n" "\n"
@ -156,7 +129,7 @@ msgstr ""
"parametrejä.\n" "parametrejä.\n"
" " " "
#: plugin.py:449 #: plugin.py:402
msgid "" msgid ""
"<name>\n" "<name>\n"
"\n" "\n"
@ -168,37 +141,6 @@ msgstr ""
" Poistaa annetun aliaksen jos se ei ole lukittu.\n" " Poistaa annetun aliaksen jos se ei ole lukittu.\n"
" " " "
#: plugin.py:463
msgid ""
"[--locked|--unlocked]\n"
"\n"
" Lists alias names of a particular type, defaults to all aliases if "
"no\n"
" --locked or --unlocked option is given.\n"
" "
msgstr ""
#: plugin.py:470
msgid "Cannot specify --locked and --unlocked simultaneously"
msgstr ""
#: plugin.py:486
msgid "There are no aliases of that type."
msgstr ""
#: plugin.py:488
#, fuzzy
msgid "There are no aliases."
msgstr "Tuollaista aliasta ei ole."
#, fuzzy
#~ msgid ""
#~ "This plugin allows users to define aliases to commands and combinations\n"
#~ " of commands (via nesting)."
#~ msgstr ""
#~ "Tämä plugini sallii käyttäjien määrittää aliaksia komennoille ja "
#~ "komentojen yhdistelmille (sisäytyksellä)."
#~ msgid "You've attempted more nesting than is currently allowed on this bot." #~ msgid "You've attempted more nesting than is currently allowed on this bot."
#~ msgstr "" #~ msgstr ""
#~ "Yritit sisällyttää useampia komentoja, kuin tämä botti sallii juuri nyt." #~ "Yritit sisällyttää useampia komentoja, kuin tämä botti sallii juuri nyt."

View File

@ -1,22 +1,19 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-01-22 13:38+CET\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n" "Language-Team: Limnoria <progval@gmail.com>\n"
"Language: fr\n" "Language: fr_FR\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: ASCII\n" "X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n" "X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: config.py:48 #: plugin.py:46
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
msgid "" msgid ""
"Returns the channel the msg came over or the channel given in args.\n" "Returns the channel the msg came over or the channel given in args.\n"
"\n" "\n"
@ -29,19 +26,23 @@ msgstr ""
"Si le canal était donné en argument, args est modifié (le canal est " "Si le canal était donné en argument, args est modifié (le canal est "
"supprimé)." "supprimé)."
#: plugin.py:110 #: plugin.py:108
#, fuzzy
msgid "" msgid ""
"Encodes dots and pipes\n" "Encodes [a-z0-9.]+ into [a-z][a-z0-9].\n"
" Format: a<number of escaped chars>a(<index>(d|p))+<word without dots or " " Format: a<number of escaped chars>a(<index>d)+<word without dots>."
"pipes>."
msgstr "." msgstr "."
#: plugin.py:226 #: plugin.py:219
msgid "You've attempted more nesting than is currently allowed on this bot."
msgstr ""
"Vous avez essayé dutiliser plus dimbrication que ce qui est actuellement "
"autorisé sur ce bot."
#: plugin.py:224
msgid " at least" msgid " at least"
msgstr "au moins" msgstr "au moins"
#: plugin.py:228 plugin.py:233 #: plugin.py:226 plugin.py:231
msgid "" msgid ""
"<an alias,%s %n>\n" "<an alias,%s %n>\n"
"\n" "\n"
@ -51,42 +52,11 @@ msgstr ""
"\n" "\n"
"Alias pour %q." "Alias pour %q."
#: plugin.py:229 plugin.py:234 #: plugin.py:227 plugin.py:232
msgid "argument" msgid "argument"
msgstr "argument" msgstr "argument"
#: plugin.py:239 #: plugin.py:300
msgid ""
"\n"
" This plugin allows users to define aliases to commands and combinations\n"
" of commands (via nesting).\n"
" This plugin is only kept for backward compatibility, you should use the\n"
" built-in Aka plugin instead (you can migrate your existing aliases "
"using\n"
" the 'importaliasdatabase' command.\n"
"\n"
" To add an alias, `trout`, which expects a word as an argument::\n"
"\n"
" <jamessan> @alias add trout \"action slaps $1 with a large trout\"\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @trout me\n"
" * bot slaps me with a large trout\n"
"\n"
" To add an alias, `lastfm`, which expects a last.fm user and replies "
"with\n"
" their recently played items::\n"
"\n"
" @alias add lastfm \"rss [format concat http://ws.audioscrobbler."
"com/1.0/user/ [format concat [urlquote $1] /recenttracks.rss]]\"\n"
"\n"
" Note that if the nested commands being aliased hadn't been quoted, then\n"
" those commands would have been run immediately, and `@lastfm` would "
"always\n"
" reply with the same information, the result of those commands.\n"
" "
msgstr ""
#: plugin.py:357
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -97,11 +67,11 @@ msgstr ""
"\n" "\n"
"Vérouille un alias pour que personne d'autre ne puisse le changer." "Vérouille un alias pour que personne d'autre ne puisse le changer."
#: plugin.py:365 plugin.py:378 #: plugin.py:309 plugin.py:323
msgid "There is no such alias." msgid "There is no such alias."
msgstr "Cet alias n'existe pas." msgstr "Cet alias n'existe pas."
#: plugin.py:370 #: plugin.py:314
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -112,11 +82,11 @@ msgstr ""
"\n" "\n"
"Déverrouille un alias de façon à ce que des gens puissent le redéfinir." "Déverrouille un alias de façon à ce que des gens puissent le redéfinir."
#: plugin.py:386 #: plugin.py:335
msgid "That name isn't valid. Try %q instead." msgid "That name isn't valid. Try %q instead."
msgstr "Ce nom n'est pas valide. Essayez plutôt %q." msgstr "Ce nom n'est pas valide. Essayez plutôt %q."
#: plugin.py:426 #: plugin.py:383
msgid "" msgid ""
"<name> <command>\n" "<name> <command>\n"
"\n" "\n"
@ -142,7 +112,7 @@ msgstr ""
"simplement *tous* les arguments restants, et ne peut être combiné avec des " "simplement *tous* les arguments restants, et ne peut être combiné avec des "
"arguments optionnels." "arguments optionnels."
#: plugin.py:449 #: plugin.py:406
msgid "" msgid ""
"<name>\n" "<name>\n"
"\n" "\n"
@ -152,31 +122,3 @@ msgstr ""
"<nom>\n" "<nom>\n"
"\n" "\n"
"Supprime l'alias donné, si il n'est pas verrouillé." "Supprime l'alias donné, si il n'est pas verrouillé."
#: plugin.py:463
msgid ""
"[--locked|--unlocked]\n"
"\n"
" Lists alias names of a particular type, defaults to all aliases if "
"no\n"
" --locked or --unlocked option is given.\n"
" "
msgstr ""
#: plugin.py:470
msgid "Cannot specify --locked and --unlocked simultaneously"
msgstr ""
#: plugin.py:486
msgid "There are no aliases of that type."
msgstr ""
#: plugin.py:488
#, fuzzy
msgid "There are no aliases."
msgstr "Cet alias n'existe pas."
#~ msgid "You've attempted more nesting than is currently allowed on this bot."
#~ msgstr ""
#~ "Vous avez essayé dutiliser plus dimbrication que ce qui est "
#~ "actuellement autorisé sur ce bot."

View File

@ -6,7 +6,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria Alias\n" "Project-Id-Version: Limnoria Alias\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2012-03-11 20:58+UTC\n"
"PO-Revision-Date: 2012-04-27 15:12+0200\n" "PO-Revision-Date: 2012-04-27 15:12+0200\n"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n" "Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n" "Language-Team: \n"
@ -17,11 +17,7 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n"
#: config.py:48 #: plugin.py:45
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
msgid "" msgid ""
"Returns the channel the msg came over or the channel given in args.\n" "Returns the channel the msg came over or the channel given in args.\n"
"\n" "\n"
@ -29,24 +25,15 @@ msgid ""
" removed).\n" " removed).\n"
" " " "
msgstr "" msgstr ""
"Kiírja a csatorna nevét, ahonnan az üzenet jött, vagy a paraméterként " "Kiírja a csatorna nevét, ahonnan az üzenet jött, vagy a paraméterként megadott csatornát.\n"
"megadott csatornát.\n"
"\n" "\n"
"Ha a csatorna meg volt adva paraméterként, a paraméterek módosulnak (a " "Ha a csatorna meg volt adva paraméterként, a paraméterek módosulnak (a csatorna eltávolításra kerül)."
"csatorna eltávolításra kerül)."
#: plugin.py:110 #: plugin.py:164
msgid ""
"Encodes dots and pipes\n"
" Format: a<number of escaped chars>a(<index>(d|p))+<word without dots or "
"pipes>."
msgstr ""
#: plugin.py:226
msgid " at least" msgid " at least"
msgstr " legalább" msgstr " legalább"
#: plugin.py:228 plugin.py:233 #: plugin.py:165
msgid "" msgid ""
"<an alias,%s %n>\n" "<an alias,%s %n>\n"
"\n" "\n"
@ -56,42 +43,11 @@ msgstr ""
"\n" "\n"
"Álnév %q-ra." "Álnév %q-ra."
#: plugin.py:229 plugin.py:234 #: plugin.py:166
msgid "argument" msgid "argument"
msgstr "paraméter" msgstr "paraméter"
#: plugin.py:239 #: plugin.py:220
msgid ""
"\n"
" This plugin allows users to define aliases to commands and combinations\n"
" of commands (via nesting).\n"
" This plugin is only kept for backward compatibility, you should use the\n"
" built-in Aka plugin instead (you can migrate your existing aliases "
"using\n"
" the 'importaliasdatabase' command.\n"
"\n"
" To add an alias, `trout`, which expects a word as an argument::\n"
"\n"
" <jamessan> @alias add trout \"action slaps $1 with a large trout\"\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @trout me\n"
" * bot slaps me with a large trout\n"
"\n"
" To add an alias, `lastfm`, which expects a last.fm user and replies "
"with\n"
" their recently played items::\n"
"\n"
" @alias add lastfm \"rss [format concat http://ws.audioscrobbler."
"com/1.0/user/ [format concat [urlquote $1] /recenttracks.rss]]\"\n"
"\n"
" Note that if the nested commands being aliased hadn't been quoted, then\n"
" those commands would have been run immediately, and `@lastfm` would "
"always\n"
" reply with the same information, the result of those commands.\n"
" "
msgstr ""
#: plugin.py:357
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -102,11 +58,12 @@ msgstr ""
"\n" "\n"
"Lezár egy álnevet, hogy senki más ne változtathassa meg." "Lezár egy álnevet, hogy senki más ne változtathassa meg."
#: plugin.py:365 plugin.py:378 #: plugin.py:229
#: plugin.py:243
msgid "There is no such alias." msgid "There is no such alias."
msgstr "Nincs ilyen álnév." msgstr "Nincs ilyen álnév."
#: plugin.py:370 #: plugin.py:234
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -117,37 +74,27 @@ msgstr ""
"\n" "\n"
"Feloldja egy álnév lezárását, hogy az emberek új álnevekkel írhassák felül." "Feloldja egy álnév lezárását, hogy az emberek új álnevekkel írhassák felül."
#: plugin.py:386 #: plugin.py:254
msgid "That name isn't valid. Try %q instead." msgid "That name isn't valid. Try %q instead."
msgstr "Az a név nem érvényes. Próbáld meg %q-t inkább." msgstr "Az a név nem érvényes. Próbáld meg %q-t inkább."
#: plugin.py:426 #: plugin.py:292
msgid "" msgid ""
"<name> <command>\n" "<name> <command>\n"
"\n" "\n"
" Defines an alias <name> that executes <command>. The <command>\n" " Defines an alias <name> that executes <command>. The <command>\n"
" should be in the standard \"command argument [nestedcommand " " should be in the standard \"command argument [nestedcommand argument]\"\n"
"argument]\"\n" " arguments to the alias; they'll be filled with the first, second, etc.\n"
" arguments to the alias; they'll be filled with the first, second, " " arguments. $1, $2, etc. can be used for required arguments. @1, @2,\n"
"etc.\n"
" arguments. $1, $2, etc. can be used for required arguments. @1, "
"@2,\n"
" etc. can be used for optional arguments. $* simply means \"all\n" " etc. can be used for optional arguments. $* simply means \"all\n"
" remaining arguments,\" and cannot be combined with optional " " remaining arguments,\" and cannot be combined with optional arguments.\n"
"arguments.\n"
" " " "
msgstr "" msgstr ""
"<név> <álnév>\n" "<név> <álnév>\n"
"\n" "\n"
"Meghatároz egy <név> nevű álnevet, amely futtatja <álnév> parancsot. Az " "Meghatároz egy <név> nevű álnevet, amely futtatja <álnév> parancsot. Az <álnév>-nek a szabványos \"parancs paraméter [beágyazottparancs paraméter]\" álnév paraméterei formában kell lennie; ezek ki lesznek töltve az első, második stb. paraméterekkel. $1, $2 stb. használható kötelező paraméterekhez. @1, @2 stb. használható választható paraméterekhez. $* azt jelenti, \"az összes hátralévő paraméter,\" és nem kombinálható választható paraméterekkel."
"<álnév>-nek a szabványos \"parancs paraméter [beágyazottparancs paraméter]\" "
"álnév paraméterei formában kell lennie; ezek ki lesznek töltve az első, "
"második stb. paraméterekkel. $1, $2 stb. használható kötelező "
"paraméterekhez. @1, @2 stb. használható választható paraméterekhez. $* azt "
"jelenti, \"az összes hátralévő paraméter,\" és nem kombinálható választható "
"paraméterekkel."
#: plugin.py:449 #: plugin.py:315
msgid "" msgid ""
"<name>\n" "<name>\n"
"\n" "\n"
@ -158,25 +105,3 @@ msgstr ""
"\n" "\n"
"Eltávolítja a megadott álnevet, ha nincs lezárva." "Eltávolítja a megadott álnevet, ha nincs lezárva."
#: plugin.py:463
msgid ""
"[--locked|--unlocked]\n"
"\n"
" Lists alias names of a particular type, defaults to all aliases if "
"no\n"
" --locked or --unlocked option is given.\n"
" "
msgstr ""
#: plugin.py:470
msgid "Cannot specify --locked and --unlocked simultaneously"
msgstr ""
#: plugin.py:486
msgid "There are no aliases of that type."
msgstr ""
#: plugin.py:488
#, fuzzy
msgid "There are no aliases."
msgstr "Nincs ilyen álnév."

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: 2011-06-07 08:23+0200\n" "PO-Revision-Date: 2011-06-07 08:23+0200\n"
"Last-Translator: skizzhg <skizzhg@gmx.com>\n" "Last-Translator: skizzhg <skizzhg@gmx.com>\n"
"Language-Team: Italian <skizzhg@gmx.com>\n" "Language-Team: Italian <skizzhg@gmx.com>\n"
@ -10,11 +10,9 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: config.py:48
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48 #: plugin.py:45
#, docstring
msgid "" msgid ""
"Returns the channel the msg came over or the channel given in args.\n" "Returns the channel the msg came over or the channel given in args.\n"
"\n" "\n"
@ -22,26 +20,17 @@ msgid ""
" removed).\n" " removed).\n"
" " " "
msgstr "" msgstr ""
"Restituisce il canale da dove proviene il messaggio o il canale fornito come " "Restituisce il canale da dove proviene il messaggio o il canale fornito come argomento.\n"
"argomento.\n"
"\n" "\n"
" Se il canale è stato dato come argomento, quest'ultimo viene modificato " " Se il canale è stato dato come argomento, quest'ultimo viene modificato (il canale\n"
"(il canale\n"
" viene rimosso).\n" " viene rimosso).\n"
" " " "
#: plugin.py:110 #: plugin.py:164
msgid ""
"Encodes dots and pipes\n"
" Format: a<number of escaped chars>a(<index>(d|p))+<word without dots or "
"pipes>."
msgstr ""
#: plugin.py:226
msgid " at least" msgid " at least"
msgstr " almeno" msgstr " almeno"
#: plugin.py:228 plugin.py:233 #: plugin.py:165
msgid "" msgid ""
"<an alias,%s %n>\n" "<an alias,%s %n>\n"
"\n" "\n"
@ -51,42 +40,12 @@ msgstr ""
"\n" "\n"
"Alias per %q." "Alias per %q."
#: plugin.py:229 plugin.py:234 #: plugin.py:166
msgid "argument" msgid "argument"
msgstr "argomento" msgstr "argomento"
#: plugin.py:239 #: plugin.py:220
msgid "" #, docstring
"\n"
" This plugin allows users to define aliases to commands and combinations\n"
" of commands (via nesting).\n"
" This plugin is only kept for backward compatibility, you should use the\n"
" built-in Aka plugin instead (you can migrate your existing aliases "
"using\n"
" the 'importaliasdatabase' command.\n"
"\n"
" To add an alias, `trout`, which expects a word as an argument::\n"
"\n"
" <jamessan> @alias add trout \"action slaps $1 with a large trout\"\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @trout me\n"
" * bot slaps me with a large trout\n"
"\n"
" To add an alias, `lastfm`, which expects a last.fm user and replies "
"with\n"
" their recently played items::\n"
"\n"
" @alias add lastfm \"rss [format concat http://ws.audioscrobbler."
"com/1.0/user/ [format concat [urlquote $1] /recenttracks.rss]]\"\n"
"\n"
" Note that if the nested commands being aliased hadn't been quoted, then\n"
" those commands would have been run immediately, and `@lastfm` would "
"always\n"
" reply with the same information, the result of those commands.\n"
" "
msgstr ""
#: plugin.py:357
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -98,11 +57,12 @@ msgstr ""
" Blocca un alias affinché nessun altro possa modificarlo.\n" " Blocca un alias affinché nessun altro possa modificarlo.\n"
" " " "
#: plugin.py:365 plugin.py:378 #: plugin.py:229 plugin.py:243
msgid "There is no such alias." msgid "There is no such alias."
msgstr "Non c'è nessun alias." msgstr "Non c'è nessun alias."
#: plugin.py:370 #: plugin.py:234
#, docstring
msgid "" msgid ""
"<alias>\n" "<alias>\n"
"\n" "\n"
@ -114,40 +74,35 @@ msgstr ""
" Sblocca un alias affinché chiunque possa ridefinirne di nuovi.\n" " Sblocca un alias affinché chiunque possa ridefinirne di nuovi.\n"
" " " "
#: plugin.py:386 #: plugin.py:254
msgid "That name isn't valid. Try %q instead." msgid "That name isn't valid. Try %q instead."
msgstr "Nome non valido. Prova %q invece." msgstr "Nome non valido. Prova %q invece."
#: plugin.py:426 #: plugin.py:292
#, docstring
msgid "" msgid ""
"<name> <command>\n" "<name> <command>\n"
"\n" "\n"
" Defines an alias <name> that executes <command>. The <command>\n" " Defines an alias <name> that executes <command>. The <command>\n"
" should be in the standard \"command argument [nestedcommand " " should be in the standard \"command argument [nestedcommand argument]\"\n"
"argument]\"\n" " arguments to the alias; they'll be filled with the first, second, etc.\n"
" arguments to the alias; they'll be filled with the first, second, " " arguments. $1, $2, etc. can be used for required arguments. @1, @2,\n"
"etc.\n"
" arguments. $1, $2, etc. can be used for required arguments. @1, "
"@2,\n"
" etc. can be used for optional arguments. $* simply means \"all\n" " etc. can be used for optional arguments. $* simply means \"all\n"
" remaining arguments,\" and cannot be combined with optional " " remaining arguments,\" and cannot be combined with optional arguments.\n"
"arguments.\n"
" " " "
msgstr "" msgstr ""
"<nome> <comando>\n" "<nome> <comando>\n"
"\n" "\n"
" Definisce un <nome> che esegue <comando>. <comando> deve essere " " Definisce un <nome> che esegue <comando>. <comando> deve essere nello\n"
"nello\n"
" standard \"comando argomento [comando_nidificato argomento]\"; gli\n" " standard \"comando argomento [comando_nidificato argomento]\"; gli\n"
" argomenti dati devono essere riportati in sequenza. Per gli " " argomenti dati devono essere riportati in sequenza. Per gli argomenti\n"
"argomenti\n" " richiesti è possibile utilizzare $1, $2, ecc., mentre @1, @2, ecc. per\n"
" richiesti è possibile utilizzare $1, $2, ecc., mentre @1, @2, ecc. "
"per\n"
" quelli opzionali. $* significa semplicemente \"tutti gli argomenti\n" " quelli opzionali. $* significa semplicemente \"tutti gli argomenti\n"
" rimanenti\" e non può essere combinato con quelli opzionali.\n" " rimanenti\" e non può essere combinato con quelli opzionali.\n"
" " " "
#: plugin.py:449 #: plugin.py:315
#, docstring
msgid "" msgid ""
"<name>\n" "<name>\n"
"\n" "\n"
@ -159,25 +114,3 @@ msgstr ""
" Rimuove l'alias specificato, se questo non è bloccato.\n" " Rimuove l'alias specificato, se questo non è bloccato.\n"
" " " "
#: plugin.py:463
msgid ""
"[--locked|--unlocked]\n"
"\n"
" Lists alias names of a particular type, defaults to all aliases if "
"no\n"
" --locked or --unlocked option is given.\n"
" "
msgstr ""
#: plugin.py:470
msgid "Cannot specify --locked and --unlocked simultaneously"
msgstr ""
#: plugin.py:486
msgid "There are no aliases of that type."
msgstr ""
#: plugin.py:488
#, fuzzy
msgid "There are no aliases."
msgstr "Non c'è nessun alias."

View File

@ -5,21 +5,17 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 13:30+EET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: config.py:48 #: plugin.py:46
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
#, docstring #, docstring
msgid "" msgid ""
"Returns the channel the msg came over or the channel given in args.\n" "Returns the channel the msg came over or the channel given in args.\n"
@ -29,57 +25,36 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:110 #: plugin.py:105
#, docstring #, docstring
msgid "" msgid ""
"Encodes dots and pipes\n" "Encodes [a-z0-9.]+ into [a-z][a-z0-9].\n"
" Format: a<number of escaped chars>a(<index>(d|p))+<word without dots or pipes>." " Format: a<number of escaped chars>a(<index>d)+<word without dots>."
msgstr "" msgstr ""
#: plugin.py:226 #: plugin.py:221
msgid " at least" msgid " at least"
msgstr "" msgstr ""
#: plugin.py:228 plugin.py:233 #: plugin.py:223 plugin.py:228
msgid "" msgid ""
"<an alias,%s %n>\n" "<an alias,%s %n>\n"
"\n" "\n"
"Alias for %q." "Alias for %q."
msgstr "" msgstr ""
#: plugin.py:229 plugin.py:234 #: plugin.py:224 plugin.py:229
msgid "argument" msgid "argument"
msgstr "" msgstr ""
#: plugin.py:239 #: plugin.py:234
#, docstring #, docstring
msgid "" msgid ""
"\n" "This plugin allows users to define aliases to commands and combinations\n"
" This plugin allows users to define aliases to commands and combinations\n" " of commands (via nesting)."
" of commands (via nesting).\n"
" This plugin is only kept for backward compatibility, you should use the\n"
" built-in Aka plugin instead (you can migrate your existing aliases using\n"
" the 'importaliasdatabase' command.\n"
"\n"
" To add an alias, `trout`, which expects a word as an argument::\n"
"\n"
" <jamessan> @alias add trout \"action slaps $1 with a large trout\"\n"
" <bot> jamessan: The operation succeeded.\n"
" <jamessan> @trout me\n"
" * bot slaps me with a large trout\n"
"\n"
" To add an alias, `lastfm`, which expects a last.fm user and replies with\n"
" their recently played items::\n"
"\n"
" @alias add lastfm \"rss [format concat http://ws.audioscrobbler.com/1.0/user/ [format concat [urlquote $1] /recenttracks.rss]]\"\n"
"\n"
" Note that if the nested commands being aliased hadn't been quoted, then\n"
" those commands would have been run immediately, and `@lastfm` would always\n"
" reply with the same information, the result of those commands.\n"
" "
msgstr "" msgstr ""
#: plugin.py:357 #: plugin.py:299
#, docstring #, docstring
msgid "" msgid ""
"<alias>\n" "<alias>\n"
@ -88,11 +63,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:365 plugin.py:378 #: plugin.py:308 plugin.py:322
msgid "There is no such alias." msgid "There is no such alias."
msgstr "" msgstr ""
#: plugin.py:370 #: plugin.py:313
#, docstring #, docstring
msgid "" msgid ""
"<alias>\n" "<alias>\n"
@ -101,11 +76,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:386 #: plugin.py:334
msgid "That name isn't valid. Try %q instead." msgid "That name isn't valid. Try %q instead."
msgstr "" msgstr ""
#: plugin.py:426 #: plugin.py:379
#, docstring #, docstring
msgid "" msgid ""
"<name> <command>\n" "<name> <command>\n"
@ -119,7 +94,7 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:449 #: plugin.py:402
#, docstring #, docstring
msgid "" msgid ""
"<name>\n" "<name>\n"
@ -128,25 +103,3 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:463
#, docstring
msgid ""
"[--locked|--unlocked]\n"
"\n"
" Lists alias names of a particular type, defaults to all aliases if no\n"
" --locked or --unlocked option is given.\n"
" "
msgstr ""
#: plugin.py:470
msgid "Cannot specify --locked and --unlocked simultaneously"
msgstr ""
#: plugin.py:486
msgid "There are no aliases of that type."
msgstr ""
#: plugin.py:488
msgid "There are no aliases."
msgstr ""

View File

@ -1,7 +1,6 @@
### ###
# Copyright (c) 2002-2004, Jeremiah Fincher # Copyright (c) 2002-2004, Jeremiah Fincher
# Copyright (c) 2014, James McCoy # Copyright (c) 2014, James McCoy
# Copyright (c) 2012-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@ -243,23 +242,21 @@ class Alias(callbacks.Plugin):
built-in Aka plugin instead (you can migrate your existing aliases using built-in Aka plugin instead (you can migrate your existing aliases using
the 'importaliasdatabase' command. the 'importaliasdatabase' command.
To add an alias, ``trout``, which expects a word as an argument:: To add an alias, `trout`, which expects a word as an argument::
<jamessan> @alias add trout "action slaps $1 with a large trout" <jamessan> @alias add trout "action slaps $1 with a large trout"
<bot> jamessan: The operation succeeded. <bot> jamessan: The operation succeeded.
<jamessan> @trout me <jamessan> @trout me
* bot slaps me with a large trout * bot slaps me with a large trout
Add an alias, ``randpercent``, which returns a random percentage value:: To add an alias, `lastfm`, which expects a last.fm user and replies with
their recently played items::
@alias add randpercent "squish [dice 1d100]%" @alias add lastfm "rss [format concat http://ws.audioscrobbler.com/1.0/user/ [format concat [urlquote $1] /recenttracks.rss]]"
This requires the ``Filter`` and ``Games`` plugins to be loaded. Note that if the nested commands being aliased hadn't been quoted, then
those commands would have been run immediately, and `@lastfm` would always
Note that nested commands in an alias should be quoted, or they will only reply with the same information, the result of those commands.
run once when you create the alias, and not each time the alias is
called. (In this case, not quoting the nested command would mean that
``@randpercent`` always responds with the same value!)
""" """
def __init__(self, irc): def __init__(self, irc):
self.__parent = super(Alias, self) self.__parent = super(Alias, self)

View File

@ -1,7 +1,6 @@
# -*- coding: utf8 -*- # -*- coding: utf8 -*-
### ###
# Copyright (c) 2002-2004, Jeremiah Fincher # Copyright (c) 2002-2004, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@ -111,7 +110,7 @@ class AliasTestCase(ChannelPluginTestCase):
self.assertResponse('foobar', 'sbbone') self.assertResponse('foobar', 'sbbone')
self.assertRaises(Alias.AliasError, cb.removeAlias, 'foobar') self.assertRaises(Alias.AliasError, cb.removeAlias, 'foobar')
cb.removeAlias('foobar', evenIfLocked=True) cb.removeAlias('foobar', evenIfLocked=True)
self.assertNotIn('foobar', cb.aliases) self.assertFalse('foobar' in cb.aliases)
self.assertError('foobar') self.assertError('foobar')
self.assertRegexp('alias add abc\x07 ignore', 'Error.*Invalid') self.assertRegexp('alias add abc\x07 ignore', 'Error.*Invalid')

View File

@ -5,12 +5,10 @@ Documentation for the Anonymous plugin for Supybot
Purpose Purpose
------- -------
Allows folks to talk through the bot anonymously. Allows folks to talk through the bot anonymously.
Usage Usage
----- -----
This plugin allows users to act through the bot anonymously. The 'do' This plugin allows users to act through the bot anonymously. The 'do'
command has the bot perform an anonymous action in a given channel, and command has the bot perform an anonymous action in a given channel, and
the 'say' command allows other people to speak through the bot. Since the 'say' command allows other people to speak through the bot. Since
@ -50,7 +48,6 @@ This
Commands Commands
-------- --------
.. _command-anonymous-do: .. _command-anonymous-do:
do <channel> <action> do <channel> <action>
@ -80,7 +77,7 @@ Configuration
supybot.plugins.Anonymous.allowPrivateTarget supybot.plugins.Anonymous.allowPrivateTarget
This config variable defaults to "False", is not network-specific, and is not channel-specific. This config variable defaults to "False", is not network-specific, and is not channel-specific.
Determines whether the bot will allow the "tell" command to be used. If true, the bot will allow the "tell" command to send private messages to other users. Determines whether the bot will allow the "tell" command to be used. If true, the bot will allow the "tell" command to send private messages to other users.
@ -88,7 +85,7 @@ supybot.plugins.Anonymous.allowPrivateTarget
supybot.plugins.Anonymous.public supybot.plugins.Anonymous.public
This config variable defaults to "True", is not network-specific, and is not channel-specific. This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether this plugin is publicly visible. Determines whether this plugin is publicly visible.
@ -96,7 +93,7 @@ supybot.plugins.Anonymous.public
supybot.plugins.Anonymous.requireCapability supybot.plugins.Anonymous.requireCapability
This config variable defaults to "", is network-specific, and is channel-specific. This config variable defaults to "", is network-specific, and is channel-specific.
Determines what capability (if any) the bot should require people trying to use this plugin to have. Determines what capability (if any) the bot should require people trying to use this plugin to have.
@ -104,7 +101,7 @@ supybot.plugins.Anonymous.requireCapability
supybot.plugins.Anonymous.requirePresenceInChannel supybot.plugins.Anonymous.requirePresenceInChannel
This config variable defaults to "True", is network-specific, and is channel-specific. This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether the bot should require people trying to use this plugin to be in the channel they wish to anonymously send to. Determines whether the bot should require people trying to use this plugin to be in the channel they wish to anonymously send to.
@ -112,7 +109,7 @@ supybot.plugins.Anonymous.requirePresenceInChannel
supybot.plugins.Anonymous.requireRegistration supybot.plugins.Anonymous.requireRegistration
This config variable defaults to "True", is network-specific, and is channel-specific. This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether the bot should require people trying to use this plugin to be registered. Determines whether the bot should require people trying to use this plugin to be registered.

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2005, Daniel DiPaolo # Copyright (c) 2005, Daniel DiPaolo
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2005, Daniel DiPaolo # Copyright (c) 2005, Daniel DiPaolo
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Supybot\n" "Project-Id-Version: Supybot\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2011-06-09 18:26+CEST\n"
"PO-Revision-Date: 2011-10-28 12:55+0100\n" "PO-Revision-Date: 2011-10-28 12:55+0100\n"
"Last-Translator: Florian Besser <fbesser@gmail.com>\n" "Last-Translator: Florian Besser <fbesser@gmail.com>\n"
"Language-Team: German <fbesser@gmail.com>\n" "Language-Team: German <fbesser@gmail.com>\n"
@ -12,145 +12,77 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
"X-Poedit-Language: de\n" "X-Poedit-Language: de\n"
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether\n" "Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n" " the bot should require people trying to use this plugin to be in the\n"
" channel they wish to anonymously send to." " channel they wish to anonymously send to."
msgstr "Legt fest ob Leute im Kanal sein müssen, an den anonym senden wollen." msgstr "Legt fest ob Leute im Kanal sein müssen, an den anonym senden wollen."
#: config.py:54 #: config.py:53
msgid "" msgid ""
"Determines whether the bot should require\n" "Determines whether the bot should require\n"
" people trying to use this plugin to be registered." " people trying to use this plugin to be registered."
msgstr "" msgstr "Legt fest ob Nutzer registiert sein müssen um dieses Plugin zu benutze."
"Legt fest ob Nutzer registiert sein müssen um dieses Plugin zu benutze."
#: config.py:57 #: config.py:56
msgid "" msgid ""
"Determines what capability (if any) the bot should\n" "Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have." " require people trying to use this plugin to have."
msgstr "" msgstr "Legt fest welche Fähgikeiten (falls überhaupt) der Bot verlangt von Personen die versuchen dieses Plugin zu benutzen."
"Legt fest welche Fähgikeiten (falls überhaupt) der Bot verlangt von Personen "
"die versuchen dieses Plugin zu benutzen."
#: config.py:60 #: config.py:59
#, fuzzy
msgid "" msgid ""
"Determines whether the bot will allow the\n" "Determines whether the bot will require \n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n" " targets of the \"say\" command to be public (i.e., channels). If this is\n"
" command to send private messages to other users." " True, the bot will allow people to use the \"say\" command to send private\n"
msgstr "" " messages to other users."
"Legt fest ob der Bot verlangt, dass Ziele des Befehls \"say\" öffentlich " msgstr "Legt fest ob der Bot verlangt, dass Ziele des Befehls \"say\" öffentlich sind (z.B. Kanäle). Falls das auf True gesetzt ist, wird ber Bot Nutzern erlauben den Befehl \"say\" zu nutzen um anderen Nutzern private Nachrichten zu senden."
"sind (z.B. Kanäle). Falls das auf True gesetzt ist, wird ber Bot Nutzern "
"erlauben den Befehl \"say\" zu nutzen um anderen Nutzern private Nachrichten "
"zu senden."
#: plugin.py:45 #: plugin.py:40
#, fuzzy
msgid "" msgid ""
"\n" "This plugin allows users to act through the bot anonymously. The 'do'\n"
" This plugin allows users to act through the bot anonymously. The 'do'\n"
" command has the bot perform an anonymous action in a given channel, and\n" " command has the bot perform an anonymous action in a given channel, and\n"
" the 'say' command allows other people to speak through the bot. Since\n" " the 'say' command allows other people to speak through the bot. Since\n"
" this can be fairly well abused, you might want to set\n" " this can be fairly well abused, you might want to set\n"
" supybot.plugins.Anonymous.requireCapability so only users with that\n" " supybot.plugins.Anonymous.requireCapability so only users with that\n"
" capability can use this plugin. For extra security, you can require " " capability can use this plugin. For extra security, you can require that\n"
"that\n" " the user be *in* the channel they are trying to address anonymously with\n"
" the user be *in* the channel they are trying to address anonymously "
"with\n"
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n" " supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\n" " that the user be registered by setting\n"
" supybot.plugins.Anonymous.requireRegistration.\n" " supybot.plugins.Anonymous.requireRegistration.\n"
"\n"
" Example: Proving that you are the owner\n"
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"
"\n"
" When you ask for cloak/vhost for your bot, the network operators will\n"
" often ask you to prove that you own the bot. You can do this for "
"example\n"
" with the following method::\n"
"\n"
" @load Anonymous\n"
" @config plugins.anonymous.requirecapability owner\n"
" @config plugins.anonymous.allowprivatetarget True\n"
" @anonymous say <operator nick> Hi, my owner is <your nick> :)\n"
"\n"
" This\n"
" * Loads the plugin.\n"
" * Makes the plugin require that you are the owner\n"
"\n"
" * If anyone could send private messages as the bot, they could also\n"
" access network services.\n"
"\n"
" * Allows sending private messages\n"
" * Sends message ``Hi, my owner is <your nick> :)`` to ``operator "
"nick``.\n"
"\n"
" * Note that you won't see the messages that are sent to the bot.\n"
"\n"
" " " "
msgstr "" msgstr "Das Plugin erlaubt Nutzern durch den Bot anonym zu bleiben. Der 'do' Befehl lässt den Bot eine anonyme Aktion in einem Kanal ausführen und der 'say' Befehl lässt Nutzer durch den Bot sprechen. Da das Ganze natürlich leicht missbraucht werden kann, willst du vielleicht supybot.plugins.Anonymous.requireCapability setzen, sodass nur Nutzer mit dieser Fähigkeit das Plugin benutzen können. Für etwas mehr Sicherheit kannst du mit supybot.plugins.Anonymous.requirePresenceInChannel verlangen, dass der Nutzer in dem Kanal sein muss in dem er anonym senden will oder du kannst verlangen, dass der Nutzer registriert sein muss indem du supybot.plugins.Anonymous.requireRegistration setzt."
"Das Plugin erlaubt Nutzern durch den Bot anonym zu bleiben. Der 'do' Befehl "
"lässt den Bot eine anonyme Aktion in einem Kanal ausführen und der 'say' "
"Befehl lässt Nutzer durch den Bot sprechen. Da das Ganze natürlich leicht "
"missbraucht werden kann, willst du vielleicht supybot.plugins.Anonymous."
"requireCapability setzen, sodass nur Nutzer mit dieser Fähigkeit das Plugin "
"benutzen können. Für etwas mehr Sicherheit kannst du mit supybot.plugins."
"Anonymous.requirePresenceInChannel verlangen, dass der Nutzer in dem Kanal "
"sein muss in dem er anonym senden will oder du kannst verlangen, dass der "
"Nutzer registriert sein muss indem du supybot.plugins.Anonymous."
"requireRegistration setzt."
#: plugin.py:98 #: plugin.py:64
msgid "You must be in %s to %q in there." msgid "You must be in %s to %q in there."
msgstr "Du musst in %s sein um %q dort auszuführen." msgstr "Du musst in %s sein um %q dort auszuführen."
#: plugin.py:102 #: plugin.py:68
msgid "I'm lobotomized in %s." msgid "I'm lobotomized in %s."
msgstr "Ich bin hirnamputiert in %s." msgstr "Ich bin hirnamputiert in %s."
#: plugin.py:105 #: plugin.py:71
msgid "" msgid "That channel has set its capabilities so as to disallow the use of this plugin."
"That channel has set its capabilities so as to disallow the use of this " msgstr "Für den Kanal sind die Fähigkeiten so gesetzt, dass sie das benutzen dieses Plugins nicht erlauben."
"plugin."
msgstr ""
"Für den Kanal sind die Fähigkeiten so gesetzt, dass sie das benutzen dieses "
"Plugins nicht erlauben."
#: plugin.py:108 #: plugin.py:74
msgid "" msgid "%q cannot be used to send private messages."
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is " msgstr "%q kann nicht verwendet werden um private Nachrichten zu versenden."
"False)."
msgstr ""
#: plugin.py:112 #: plugin.py:80
#, fuzzy
msgid "" msgid ""
"<channel> <text>\n" "<channel|nick> <text>\n"
"\n" "\n"
" Sends <text> to <channel>.\n" " Sends <text> to <channel|nick>. Can only send to <nick> if\n"
" "
msgstr ""
"<Kanal> <Aktion>\n"
"\n"
"Führt die <Aktion> im <Kanal> aus."
#: plugin.py:124
#, fuzzy
msgid ""
"<nick> <text>\n"
"\n"
" Sends <text> to <nick>. Can only be used if\n"
" supybot.plugins.Anonymous.allowPrivateTarget is True.\n" " supybot.plugins.Anonymous.allowPrivateTarget is True.\n"
" " " "
msgstr "" msgstr ""
"<Kanal|Nick> <text>\n" "<Kanal|Nick> <text>\n"
"\n" "\n"
"Sendet <Text> an <Kanal|Nick>. Kann nur an <Nick> senden wenn supybot." "Sendet <Text> an <Kanal|Nick>. Kann nur an <Nick> senden wenn supybot.plugins.Anonymous.allowPrivateTarget auf True gesetzt ist."
"plugins.Anonymous.allowPrivateTarget auf True gesetzt ist."
#: plugin.py:137 #: plugin.py:94
msgid "" msgid ""
"<channel> <action>\n" "<channel> <action>\n"
"\n" "\n"
@ -161,42 +93,3 @@ msgstr ""
"\n" "\n"
"Führt die <Aktion> im <Kanal> aus." "Führt die <Aktion> im <Kanal> aus."
#: plugin.py:148
msgid ""
"<channel> <reaction> <nick>\n"
"\n"
" Sends the <reaction> to <nick>'s last message.\n"
" <reaction> is typically a smiley or an emoji.\n"
"\n"
" This may not be supported on the current network, as this\n"
" command depends on IRCv3 features.\n"
" This is also not supported if\n"
" supybot.protocols.irc.experimentalExtensions disabled\n"
" (don't enable it unless you know what you are doing).\n"
" "
msgstr ""
#: plugin.py:162
msgid ""
"Unable to react, supybot.protocols.irc.experimentalExtensions is disabled."
msgstr ""
#: plugin.py:167
msgid "Unable to react, the network does not support message-tags."
msgstr ""
#: plugin.py:172
msgid ""
"Unable to react, the network does not allow draft/reply and/or draft/react."
msgstr ""
#: plugin.py:181
msgid "I couldn't find a message from %s in my history of %s messages."
msgstr ""
#: plugin.py:189
msgid "Unable to react, %s's last message does not have a message id."
msgstr ""
#~ msgid "%q cannot be used to send private messages."
#~ msgstr "%q kann nicht verwendet werden um private Nachrichten zu versenden."

View File

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Supybot Anonymous\n" "Project-Id-Version: Supybot Anonymous\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 11:59+EET\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n" "Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n" "Language-Team: \n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.6.10\n" "X-Generator: Poedit 1.6.10\n"
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether\n" "Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n" " the bot should require people trying to use this plugin to be in the\n"
@ -25,7 +25,7 @@ msgstr ""
"botti ihmisten, jotka yrittävät käyttää tätä lisäosaa, olemaan\n" "botti ihmisten, jotka yrittävät käyttää tätä lisäosaa, olemaan\n"
"kanavalla, jonne he tahtovat lähettää viestin tuntemattomasti." "kanavalla, jonne he tahtovat lähettää viestin tuntemattomasti."
#: config.py:54 #: config.py:53
msgid "" msgid ""
"Determines whether the bot should require\n" "Determines whether the bot should require\n"
" people trying to use this plugin to be registered." " people trying to use this plugin to be registered."
@ -33,7 +33,7 @@ msgstr ""
"Määrittää vaatiiko botti\n" "Määrittää vaatiiko botti\n"
"ihmisiä, jotka yrittävät käyttää tätä lisäosaa, olemaan rekisteröityneitä." "ihmisiä, jotka yrittävät käyttää tätä lisäosaa, olemaan rekisteröityneitä."
#: config.py:57 #: config.py:56
msgid "" msgid ""
"Determines what capability (if any) the bot should\n" "Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have." " require people trying to use this plugin to have."
@ -41,7 +41,7 @@ msgstr ""
"Määrittää minkä valtuuden (jos minkään) botti vaatii\n" "Määrittää minkä valtuuden (jos minkään) botti vaatii\n"
" ihmisiltä, jotka yrittävät käyttää tätä lisäosaa." " ihmisiltä, jotka yrittävät käyttää tätä lisäosaa."
#: config.py:60 #: config.py:59
#, fuzzy #, fuzzy
msgid "" msgid ""
"Determines whether the bot will allow the\n" "Determines whether the bot will allow the\n"
@ -52,11 +52,9 @@ msgstr ""
"sallii \"tell\"-komennon\n" "sallii \"tell\"-komennon\n"
" lähettävän yksityisviestejä toisille käyttäjille." " lähettävän yksityisviestejä toisille käyttäjille."
#: plugin.py:45 #: plugin.py:41
#, fuzzy
msgid "" msgid ""
"\n" "This plugin allows users to act through the bot anonymously. The 'do'\n"
" This plugin allows users to act through the bot anonymously. The 'do'\n"
" command has the bot perform an anonymous action in a given channel, and\n" " command has the bot perform an anonymous action in a given channel, and\n"
" the 'say' command allows other people to speak through the bot. Since\n" " the 'say' command allows other people to speak through the bot. Since\n"
" this can be fairly well abused, you might want to set\n" " this can be fairly well abused, you might want to set\n"
@ -68,33 +66,6 @@ msgid ""
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n" " supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\n" " that the user be registered by setting\n"
" supybot.plugins.Anonymous.requireRegistration.\n" " supybot.plugins.Anonymous.requireRegistration.\n"
"\n"
" Example: Proving that you are the owner\n"
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"
"\n"
" When you ask for cloak/vhost for your bot, the network operators will\n"
" often ask you to prove that you own the bot. You can do this for "
"example\n"
" with the following method::\n"
"\n"
" @load Anonymous\n"
" @config plugins.anonymous.requirecapability owner\n"
" @config plugins.anonymous.allowprivatetarget True\n"
" @anonymous say <operator nick> Hi, my owner is <your nick> :)\n"
"\n"
" This\n"
" * Loads the plugin.\n"
" * Makes the plugin require that you are the owner\n"
"\n"
" * If anyone could send private messages as the bot, they could also\n"
" access network services.\n"
"\n"
" * Allows sending private messages\n"
" * Sends message ``Hi, my owner is <your nick> :)`` to ``operator "
"nick``.\n"
"\n"
" * Note that you won't see the messages that are sent to the bot.\n"
"\n"
" " " "
msgstr "" msgstr ""
"Tämä lisäosa sallii käyttäjien toimia botin kautta tuntemattomasti.\n" "Tämä lisäosa sallii käyttäjien toimia botin kautta tuntemattomasti.\n"
@ -111,21 +82,21 @@ msgstr ""
" että tuo käyttäjä on rekisteröitynyt asetuksella\n" " että tuo käyttäjä on rekisteröitynyt asetuksella\n"
" supybot.plugins.Anonymous.requireRegistration" " supybot.plugins.Anonymous.requireRegistration"
#: plugin.py:98 #: plugin.py:65
msgid "You must be in %s to %q in there." msgid "You must be in %s to %q in there."
msgstr "Sinun täytyy olla kanavalla %s %q sinne." msgstr "Sinun täytyy olla kanavalla %s %q sinne."
#: plugin.py:102 #: plugin.py:69
msgid "I'm lobotomized in %s." msgid "I'm lobotomized in %s."
msgstr "Minut on lobotomoitu kanavalla %s." msgstr "Minut on lobotomoitu kanavalla %s."
#: plugin.py:105 #: plugin.py:72
msgid "" msgid ""
"That channel has set its capabilities so as to disallow the use of this " "That channel has set its capabilities so as to disallow the use of this "
"plugin." "plugin."
msgstr "Tuo kanava on asettanut valtuudet kieltämään tämän Pluginin käytön." msgstr "Tuo kanava on asettanut valtuudet kieltämään tämän Pluginin käytön."
#: plugin.py:108 #: plugin.py:75
msgid "" msgid ""
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is " "This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is "
"False)." "False)."
@ -133,7 +104,7 @@ msgstr ""
"Tämä komento on poistettu käytöstä (supybot.plugins.Anonymous." "Tämä komento on poistettu käytöstä (supybot.plugins.Anonymous."
"allowPrivateTarget on False)." "allowPrivateTarget on False)."
#: plugin.py:112 #: plugin.py:80
msgid "" msgid ""
"<channel> <text>\n" "<channel> <text>\n"
"\n" "\n"
@ -143,7 +114,7 @@ msgstr ""
"<kanava> <teksti>\n" "<kanava> <teksti>\n"
" Lähettää <tesktin> <kanavalle>." " Lähettää <tesktin> <kanavalle>."
#: plugin.py:124 #: plugin.py:92
msgid "" msgid ""
"<nick> <text>\n" "<nick> <text>\n"
"\n" "\n"
@ -158,7 +129,7 @@ msgstr ""
" ollessa True.\n" " ollessa True.\n"
" " " "
#: plugin.py:137 #: plugin.py:106
msgid "" msgid ""
"<channel> <action>\n" "<channel> <action>\n"
"\n" "\n"
@ -170,43 +141,6 @@ msgstr ""
"Suorittaa <toiminnon> <kanavalla>.\n" "Suorittaa <toiminnon> <kanavalla>.\n"
" " " "
#: plugin.py:148
msgid ""
"<channel> <reaction> <nick>\n"
"\n"
" Sends the <reaction> to <nick>'s last message.\n"
" <reaction> is typically a smiley or an emoji.\n"
"\n"
" This may not be supported on the current network, as this\n"
" command depends on IRCv3 features.\n"
" This is also not supported if\n"
" supybot.protocols.irc.experimentalExtensions disabled\n"
" (don't enable it unless you know what you are doing).\n"
" "
msgstr ""
#: plugin.py:162
msgid ""
"Unable to react, supybot.protocols.irc.experimentalExtensions is disabled."
msgstr ""
#: plugin.py:167
msgid "Unable to react, the network does not support message-tags."
msgstr ""
#: plugin.py:172
msgid ""
"Unable to react, the network does not allow draft/reply and/or draft/react."
msgstr ""
#: plugin.py:181
msgid "I couldn't find a message from %s in my history of %s messages."
msgstr ""
#: plugin.py:189
msgid "Unable to react, %s's last message does not have a message id."
msgstr ""
#~ msgid "%q cannot be used to send private messages." #~ msgid "%q cannot be used to send private messages."
#~ msgstr "%q:ta ei voi käyttää yksityisviestien lähettämiseen." #~ msgstr "%q:ta ei voi käyttää yksityisviestien lähettämiseen."

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2011-06-09 18:26+CEST\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n" "Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n" "Language-Team: Limnoria <progval@gmail.com>\n"
@ -13,137 +13,77 @@ msgstr ""
"X-Poedit-Country: France\n" "X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n" "X-Poedit-SourceCharset: ASCII\n"
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether\n" "Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n" " the bot should require people trying to use this plugin to be in the\n"
" channel they wish to anonymously send to." " channel they wish to anonymously send to."
msgstr "" msgstr "Détermine si le bot requiérera que les gens soient sur le canal pour y envoyer des messages anonymement."
"Détermine si le bot requiérera que les gens soient sur le canal pour y "
"envoyer des messages anonymement."
#: config.py:54 #: config.py:53
msgid "" msgid ""
"Determines whether the bot should require\n" "Determines whether the bot should require\n"
" people trying to use this plugin to be registered." " people trying to use this plugin to be registered."
msgstr "" msgstr "Détermine si le bot requiérera que les personnes utilisant ce plugin soient enregistrées."
"Détermine si le bot requiérera que les personnes utilisant ce plugin soient "
"enregistrées."
#: config.py:57 #: config.py:56
msgid "" msgid ""
"Determines what capability (if any) the bot should\n" "Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have." " require people trying to use this plugin to have."
msgstr "" msgstr "Détermine quelle capacité (s'il y en a une) le bot requiéra que les gens utilisant ce plugin aient."
"Détermine quelle capacité (s'il y en a une) le bot requiéra que les gens "
"utilisant ce plugin aient."
#: config.py:60 #: config.py:59
#, fuzzy
msgid "" msgid ""
"Determines whether the bot will allow the\n" "Determines whether the bot will require \n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n" " targets of the \"say\" command to be public (i.e., channels). If this is\n"
" command to send private messages to other users." " True, the bot will allow people to use the \"say\" command to send private\n"
msgstr "" " messages to other users."
"Détermine si le bot requiérera que les cibles de la commande \"say\" soient " msgstr "Détermine si le bot requiérera que les cibles de la commande \"say\" soient publiques (c'est à dire des canaux). Si c'est True, le bot autorisera les personnes à utiliser la commande \"say\" pour envoyer des messages à d'autres utilisateurs en privé."
"publiques (c'est à dire des canaux). Si c'est True, le bot autorisera les "
"personnes à utiliser la commande \"say\" pour envoyer des messages à "
"d'autres utilisateurs en privé."
#: plugin.py:45 #: plugin.py:40
msgid "" msgid ""
"\n" "This plugin allows users to act through the bot anonymously. The 'do'\n"
" This plugin allows users to act through the bot anonymously. The 'do'\n"
" command has the bot perform an anonymous action in a given channel, and\n" " command has the bot perform an anonymous action in a given channel, and\n"
" the 'say' command allows other people to speak through the bot. Since\n" " the 'say' command allows other people to speak through the bot. Since\n"
" this can be fairly well abused, you might want to set\n" " this can be fairly well abused, you might want to set\n"
" supybot.plugins.Anonymous.requireCapability so only users with that\n" " supybot.plugins.Anonymous.requireCapability so only users with that\n"
" capability can use this plugin. For extra security, you can require " " capability can use this plugin. For extra security, you can require that\n"
"that\n" " the user be *in* the channel they are trying to address anonymously with\n"
" the user be *in* the channel they are trying to address anonymously "
"with\n"
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n" " supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\n" " that the user be registered by setting\n"
" supybot.plugins.Anonymous.requireRegistration.\n" " supybot.plugins.Anonymous.requireRegistration.\n"
"\n"
" Example: Proving that you are the owner\n"
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"
"\n"
" When you ask for cloak/vhost for your bot, the network operators will\n"
" often ask you to prove that you own the bot. You can do this for "
"example\n"
" with the following method::\n"
"\n"
" @load Anonymous\n"
" @config plugins.anonymous.requirecapability owner\n"
" @config plugins.anonymous.allowprivatetarget True\n"
" @anonymous say <operator nick> Hi, my owner is <your nick> :)\n"
"\n"
" This\n"
" * Loads the plugin.\n"
" * Makes the plugin require that you are the owner\n"
"\n"
" * If anyone could send private messages as the bot, they could also\n"
" access network services.\n"
"\n"
" * Allows sending private messages\n"
" * Sends message ``Hi, my owner is <your nick> :)`` to ``operator "
"nick``.\n"
"\n"
" * Note that you won't see the messages that are sent to the bot.\n"
"\n"
" " " "
msgstr "" msgstr ""
#: plugin.py:98 #: plugin.py:64
msgid "You must be in %s to %q in there." msgid "You must be in %s to %q in there."
msgstr "Vous devez être sur %s pour y utiliser %q." msgstr "Vous devez être sur %s pour y utiliser %q."
#: plugin.py:102 #: plugin.py:68
msgid "I'm lobotomized in %s." msgid "I'm lobotomized in %s."
msgstr "Je suis lobotomisé sur %s." msgstr "Je suis lobotomisé sur %s."
#: plugin.py:105 #: plugin.py:71
msgid "" msgid "That channel has set its capabilities so as to disallow the use of this plugin."
"That channel has set its capabilities so as to disallow the use of this " msgstr "Ce canal a définit ses capacités de façon à désactiver l'utilisation de ce plugin."
"plugin."
msgstr ""
"Ce canal a définit ses capacités de façon à désactiver l'utilisation de ce "
"plugin."
#: plugin.py:108 #: plugin.py:74
msgid "" msgid "%q cannot be used to send private messages."
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is " msgstr "%q ne peut pas être utilisé pour envoyer des messages privés."
"False)."
msgstr ""
#: plugin.py:112 #: plugin.py:80
#, fuzzy
msgid "" msgid ""
"<channel> <text>\n" "<channel|nick> <text>\n"
"\n" "\n"
" Sends <text> to <channel>.\n" " Sends <text> to <channel|nick>. Can only send to <nick> if\n"
" "
msgstr ""
"<canal> <action>\n"
"\n"
"Effectue l'<action> sur le <canal>."
#: plugin.py:124
#, fuzzy
msgid ""
"<nick> <text>\n"
"\n"
" Sends <text> to <nick>. Can only be used if\n"
" supybot.plugins.Anonymous.allowPrivateTarget is True.\n" " supybot.plugins.Anonymous.allowPrivateTarget is True.\n"
" " " "
msgstr "" msgstr ""
"<canal|nick> <text>\n" "<canal|nick> <text>\n"
"\n" "\n"
"Envoie le <texte> au <canal|nick>. Vous ne pouvez envoyer à <nick> que si " "Envoie le <texte> au <canal|nick>. Vous ne pouvez envoyer à <nick> que si supybot.plugins.Anonymous.allowPrivateTarget vaut True."
"supybot.plugins.Anonymous.allowPrivateTarget vaut True."
#: plugin.py:137 #: plugin.py:94
msgid "" msgid ""
"<channel> <action>\n" "<channel> <action>\n"
"\n" "\n"
@ -154,42 +94,3 @@ msgstr ""
"\n" "\n"
"Effectue l'<action> sur le <canal>." "Effectue l'<action> sur le <canal>."
#: plugin.py:148
msgid ""
"<channel> <reaction> <nick>\n"
"\n"
" Sends the <reaction> to <nick>'s last message.\n"
" <reaction> is typically a smiley or an emoji.\n"
"\n"
" This may not be supported on the current network, as this\n"
" command depends on IRCv3 features.\n"
" This is also not supported if\n"
" supybot.protocols.irc.experimentalExtensions disabled\n"
" (don't enable it unless you know what you are doing).\n"
" "
msgstr ""
#: plugin.py:162
msgid ""
"Unable to react, supybot.protocols.irc.experimentalExtensions is disabled."
msgstr ""
#: plugin.py:167
msgid "Unable to react, the network does not support message-tags."
msgstr ""
#: plugin.py:172
msgid ""
"Unable to react, the network does not allow draft/reply and/or draft/react."
msgstr ""
#: plugin.py:181
msgid "I couldn't find a message from %s in my history of %s messages."
msgstr ""
#: plugin.py:189
msgid "Unable to react, %s's last message does not have a message id."
msgstr ""
#~ msgid "%q cannot be used to send private messages."
#~ msgstr "%q ne peut pas être utilisé pour envoyer des messages privés."

View File

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria Anonymous\n" "Project-Id-Version: Limnoria Anonymous\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2011-06-09 18:26+CEST\n"
"PO-Revision-Date: 2011-07-21 17:32+0100\n" "PO-Revision-Date: 2011-07-21 17:32+0100\n"
"Last-Translator: nyuszika7h <litemininyuszika@gmail.com>\n" "Last-Translator: nyuszika7h <litemininyuszika@gmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
@ -15,148 +15,77 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether\n" "Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n" " the bot should require people trying to use this plugin to be in the\n"
" channel they wish to anonymously send to." " channel they wish to anonymously send to."
msgstr "" msgstr "Meghatározza, hogy a bot megkövetelje-e, hogy a bővítményt használni kívánó emberek abban a csatornában legyenek, ahová névtelenül szeretnének küldeni."
"Meghatározza, hogy a bot megkövetelje-e, hogy a bővítményt használni kívánó "
"emberek abban a csatornában legyenek, ahová névtelenül szeretnének küldeni."
#: config.py:54 #: config.py:53
msgid "" msgid ""
"Determines whether the bot should require\n" "Determines whether the bot should require\n"
" people trying to use this plugin to be registered." " people trying to use this plugin to be registered."
msgstr "" msgstr "Meghatározza, hogy a bot megkövetelje-e, hogy a bővítményt használni kívánó emberek regisztrálva legyenek."
"Meghatározza, hogy a bot megkövetelje-e, hogy a bővítményt használni kívánó "
"emberek regisztrálva legyenek."
#: config.py:57 #: config.py:56
msgid "" msgid ""
"Determines what capability (if any) the bot should\n" "Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have." " require people trying to use this plugin to have."
msgstr "" msgstr "Meghatározza, hogy milyen képesség (ha van ilyen) legyen szükséges a bővítmény használatához."
"Meghatározza, hogy milyen képesség (ha van ilyen) legyen szükséges a "
"bővítmény használatához."
#: config.py:60 #: config.py:59
#, fuzzy
msgid "" msgid ""
"Determines whether the bot will allow the\n" "Determines whether the bot will require \n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n" " targets of the \"say\" command to be public (i.e., channels). If this is\n"
" command to send private messages to other users." " True, the bot will allow people to use the \"say\" command to send private\n"
msgstr "" " messages to other users."
"Meghatározza, hogy a bot megkövetelje-e, hogy a \"say\" parancs célja " msgstr "Meghatározza, hogy a bot megkövetelje-e, hogy a \"say\" parancs célja publikus legyen (pl., csatornák). Ha ez True, a bot megengedi az embereknek, hogy a \"say\" paranccsal privát üzenetet küldjenek másoknak."
"publikus legyen (pl., csatornák). Ha ez True, a bot megengedi az embereknek, "
"hogy a \"say\" paranccsal privát üzenetet küldjenek másoknak."
#: plugin.py:45 #: plugin.py:40
#, fuzzy
msgid "" msgid ""
"\n" "This plugin allows users to act through the bot anonymously. The 'do'\n"
" This plugin allows users to act through the bot anonymously. The 'do'\n"
" command has the bot perform an anonymous action in a given channel, and\n" " command has the bot perform an anonymous action in a given channel, and\n"
" the 'say' command allows other people to speak through the bot. Since\n" " the 'say' command allows other people to speak through the bot. Since\n"
" this can be fairly well abused, you might want to set\n" " this can be fairly well abused, you might want to set\n"
" supybot.plugins.Anonymous.requireCapability so only users with that\n" " supybot.plugins.Anonymous.requireCapability so only users with that\n"
" capability can use this plugin. For extra security, you can require " " capability can use this plugin. For extra security, you can require that\n"
"that\n" " the user be *in* the channel they are trying to address anonymously with\n"
" the user be *in* the channel they are trying to address anonymously "
"with\n"
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n" " supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\n" " that the user be registered by setting\n"
" supybot.plugins.Anonymous.requireRegistration.\n" " supybot.plugins.Anonymous.requireRegistration.\n"
"\n"
" Example: Proving that you are the owner\n"
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"
"\n"
" When you ask for cloak/vhost for your bot, the network operators will\n"
" often ask you to prove that you own the bot. You can do this for "
"example\n"
" with the following method::\n"
"\n"
" @load Anonymous\n"
" @config plugins.anonymous.requirecapability owner\n"
" @config plugins.anonymous.allowprivatetarget True\n"
" @anonymous say <operator nick> Hi, my owner is <your nick> :)\n"
"\n"
" This\n"
" * Loads the plugin.\n"
" * Makes the plugin require that you are the owner\n"
"\n"
" * If anyone could send private messages as the bot, they could also\n"
" access network services.\n"
"\n"
" * Allows sending private messages\n"
" * Sends message ``Hi, my owner is <your nick> :)`` to ``operator "
"nick``.\n"
"\n"
" * Note that you won't see the messages that are sent to the bot.\n"
"\n"
" " " "
msgstr "" msgstr "Ez a bővítmény megengedi a felhasználóknak, hogy névtelenül cselekedjenek a boton keresztül. A 'do' parancs hatására a bot végrehajt egy névtelen tevékenységet egy megadott csatornában, és a 'say' parancs megengedi másoknak, hogy a boton keresztül beszéljenek. Mivel ezzel elég könnyen vissza lehet élni, érdemes beállítani a supybot.plugins.Anonymous.requireCapability-t, hogy csak az adott képességgel rendelkező felhasználók használhassák ezt a bővítményt. Extra biztonságért a supybot.plugins.Anonymous.requirePresenceInChannel-lel megkövetelheted, hogy a felhasználó abban a csatornában legyen, amelyet névtelenül szeretnének megcímezni, vagy a supybot.plugins.Anonymous.requireRegistration-nel megkövetelheted, hogy a felhasználó regisztálva legyen."
"Ez a bővítmény megengedi a felhasználóknak, hogy névtelenül cselekedjenek a "
"boton keresztül. A 'do' parancs hatására a bot végrehajt egy névtelen "
"tevékenységet egy megadott csatornában, és a 'say' parancs megengedi "
"másoknak, hogy a boton keresztül beszéljenek. Mivel ezzel elég könnyen "
"vissza lehet élni, érdemes beállítani a supybot.plugins.Anonymous."
"requireCapability-t, hogy csak az adott képességgel rendelkező felhasználók "
"használhassák ezt a bővítményt. Extra biztonságért a supybot.plugins."
"Anonymous.requirePresenceInChannel-lel megkövetelheted, hogy a felhasználó "
"abban a csatornában legyen, amelyet névtelenül szeretnének megcímezni, vagy "
"a supybot.plugins.Anonymous.requireRegistration-nel megkövetelheted, hogy a "
"felhasználó regisztálva legyen."
#: plugin.py:98 #: plugin.py:64
msgid "You must be in %s to %q in there." msgid "You must be in %s to %q in there."
msgstr "%s-ban kell lenned, hogy a %q parancsot használd ott." msgstr "%s-ban kell lenned, hogy a %q parancsot használd ott."
#: plugin.py:102 #: plugin.py:68
msgid "I'm lobotomized in %s." msgid "I'm lobotomized in %s."
msgstr "Némítva vagyok %s-ban." msgstr "Némítva vagyok %s-ban."
#: plugin.py:105 #: plugin.py:71
msgid "" msgid "That channel has set its capabilities so as to disallow the use of this plugin."
"That channel has set its capabilities so as to disallow the use of this " msgstr "A megadott csatornában nem használhatod a bővítményt a csatorna képességei miatt."
"plugin."
msgstr ""
"A megadott csatornában nem használhatod a bővítményt a csatorna képességei "
"miatt."
#: plugin.py:108 #: plugin.py:74
msgid "" msgid "%q cannot be used to send private messages."
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is " msgstr "A %q parancs nem használható privát üzenetek küldésére."
"False)."
msgstr ""
#: plugin.py:112 #: plugin.py:80
#, fuzzy
msgid "" msgid ""
"<channel> <text>\n" "<channel|nick> <text>\n"
"\n" "\n"
" Sends <text> to <channel>.\n" " Sends <text> to <channel|nick>. Can only send to <nick> if\n"
" "
msgstr ""
"<csatorna> <tevékenység>\n"
"\n"
"Végrehajtja <tevékenység>-et <csatorna>-ban."
#: plugin.py:124
#, fuzzy
msgid ""
"<nick> <text>\n"
"\n"
" Sends <text> to <nick>. Can only be used if\n"
" supybot.plugins.Anonymous.allowPrivateTarget is True.\n" " supybot.plugins.Anonymous.allowPrivateTarget is True.\n"
" " " "
msgstr "" msgstr ""
"<csatorna|név> <szöveg>\n" "<csatorna|név> <szöveg>\n"
"\n" "\n"
"Elküldi <szöveg>-et <csatorna|név>-nek. Csak akkor küldhet <név>-nek, ha a " "Elküldi <szöveg>-et <csatorna|név>-nek. Csak akkor küldhet <név>-nek, ha a supybot.plugins.Anonymous.allowPrivateTarget True."
"supybot.plugins.Anonymous.allowPrivateTarget True."
#: plugin.py:137 #: plugin.py:94
msgid "" msgid ""
"<channel> <action>\n" "<channel> <action>\n"
"\n" "\n"
@ -167,42 +96,3 @@ msgstr ""
"\n" "\n"
"Végrehajtja <tevékenység>-et <csatorna>-ban." "Végrehajtja <tevékenység>-et <csatorna>-ban."
#: plugin.py:148
msgid ""
"<channel> <reaction> <nick>\n"
"\n"
" Sends the <reaction> to <nick>'s last message.\n"
" <reaction> is typically a smiley or an emoji.\n"
"\n"
" This may not be supported on the current network, as this\n"
" command depends on IRCv3 features.\n"
" This is also not supported if\n"
" supybot.protocols.irc.experimentalExtensions disabled\n"
" (don't enable it unless you know what you are doing).\n"
" "
msgstr ""
#: plugin.py:162
msgid ""
"Unable to react, supybot.protocols.irc.experimentalExtensions is disabled."
msgstr ""
#: plugin.py:167
msgid "Unable to react, the network does not support message-tags."
msgstr ""
#: plugin.py:172
msgid ""
"Unable to react, the network does not allow draft/reply and/or draft/react."
msgstr ""
#: plugin.py:181
msgid "I couldn't find a message from %s in my history of %s messages."
msgstr ""
#: plugin.py:189
msgid "Unable to react, %s's last message does not have a message id."
msgstr ""
#~ msgid "%q cannot be used to send private messages."
#~ msgstr "A %q parancs nem használható privát üzenetek küldésére."

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: 2011-08-10 00:13+0200\n" "PO-Revision-Date: 2011-08-10 00:13+0200\n"
"Last-Translator: skizzhg <skizzhg@gmx.com>\n" "Last-Translator: skizzhg <skizzhg@gmx.com>\n"
"Language-Team: Italian <skizzhg@gmx.com>\n" "Language-Team: Italian <skizzhg@gmx.com>\n"
@ -10,7 +10,8 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: config.py:50
#: config.py:49
msgid "" msgid ""
"Determines whether\n" "Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n" " the bot should require people trying to use this plugin to be in the\n"
@ -19,7 +20,7 @@ msgstr ""
"Determina se il bot richieda che gli utenti siano in canale\n" "Determina se il bot richieda che gli utenti siano in canale\n"
" per inviare messaggi in forma anonima." " per inviare messaggi in forma anonima."
#: config.py:54 #: config.py:53
msgid "" msgid ""
"Determines whether the bot should require\n" "Determines whether the bot should require\n"
" people trying to use this plugin to be registered." " people trying to use this plugin to be registered."
@ -27,7 +28,7 @@ msgstr ""
"Determina se il bot richieda che gli utenti siano registrati\n" "Determina se il bot richieda che gli utenti siano registrati\n"
" per usare il plugin." " per usare il plugin."
#: config.py:57 #: config.py:56
msgid "" msgid ""
"Determines what capability (if any) the bot should\n" "Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have." " require people trying to use this plugin to have."
@ -35,121 +36,64 @@ msgstr ""
"Determina quali capacità (eventuali) debbano\n" "Determina quali capacità (eventuali) debbano\n"
" avere gli utenti per utilizzare questo plugin." " avere gli utenti per utilizzare questo plugin."
#: config.py:60 #: config.py:59
#, fuzzy
msgid "" msgid ""
"Determines whether the bot will allow the\n" "Determines whether the bot will require \n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n" " targets of the \"say\" command to be public (i.e., channels). If this is\n"
" command to send private messages to other users." " True, the bot will allow people to use the \"say\" command to send private\n"
" messages to other users."
msgstr "" msgstr ""
"Determina se il bot richiederà che le destinazioni del comando \"say\" " "Determina se il bot richiederà che le destinazioni del comando \"say\" siano\n"
"siano\n"
" pubbliche (ovvero i canali). Se impostato a True, il bot permetterà\n" " pubbliche (ovvero i canali). Se impostato a True, il bot permetterà\n"
" di usare il comando \"say\" per inviare messaggi privati ad altri utenti." " di usare il comando \"say\" per inviare messaggi privati ad altri utenti."
#: plugin.py:45 #: plugin.py:40
#, fuzzy #, docstring
msgid "" msgid ""
"\n" "This plugin allows users to act through the bot anonymously. The 'do'\n"
" This plugin allows users to act through the bot anonymously. The 'do'\n"
" command has the bot perform an anonymous action in a given channel, and\n" " command has the bot perform an anonymous action in a given channel, and\n"
" the 'say' command allows other people to speak through the bot. Since\n" " the 'say' command allows other people to speak through the bot. Since\n"
" this can be fairly well abused, you might want to set\n" " this can be fairly well abused, you might want to set\n"
" supybot.plugins.Anonymous.requireCapability so only users with that\n" " supybot.plugins.Anonymous.requireCapability so only users with that\n"
" capability can use this plugin. For extra security, you can require " " capability can use this plugin. For extra security, you can require that\n"
"that\n" " the user be *in* the channel they are trying to address anonymously with\n"
" the user be *in* the channel they are trying to address anonymously "
"with\n"
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n" " supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\n" " that the user be registered by setting\n"
" supybot.plugins.Anonymous.requireRegistration.\n" " supybot.plugins.Anonymous.requireRegistration.\n"
"\n"
" Example: Proving that you are the owner\n"
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"
"\n"
" When you ask for cloak/vhost for your bot, the network operators will\n"
" often ask you to prove that you own the bot. You can do this for "
"example\n"
" with the following method::\n"
"\n"
" @load Anonymous\n"
" @config plugins.anonymous.requirecapability owner\n"
" @config plugins.anonymous.allowprivatetarget True\n"
" @anonymous say <operator nick> Hi, my owner is <your nick> :)\n"
"\n"
" This\n"
" * Loads the plugin.\n"
" * Makes the plugin require that you are the owner\n"
"\n"
" * If anyone could send private messages as the bot, they could also\n"
" access network services.\n"
"\n"
" * Allows sending private messages\n"
" * Sends message ``Hi, my owner is <your nick> :)`` to ``operator "
"nick``.\n"
"\n"
" * Note that you won't see the messages that are sent to the bot.\n"
"\n"
" " " "
msgstr "" msgstr ""
"Questo plugin permette agli utenti di agire attraverso il bot in modo " "Questo plugin permette agli utenti di agire attraverso il bot in modo anonimo.\n"
"anonimo.\n" " Il comando \"do\" esegue un'azione anonima in un dato canale, mentre \"say\"\n"
" Il comando \"do\" esegue un'azione anonima in un dato canale, mentre " " permette di parlare tramite il bot. Giacché si può facilmente abusarne, è\n"
"\"say\"\n" " possibile impostare supybot.plugins.Anonymous.requireCapability in modo che\n"
" permette di parlare tramite il bot. Giacché si può facilmente abusarne, " " solo gli utenti con determinate capacità possano usare il plugin. Per una\n"
"è\n" " maggiore sicurezza è ppossibile richiedere con supybot.plugins.Anonymous.requirePresenceInChannel\n"
" possibile impostare supybot.plugins.Anonymous.requireCapability in modo " " che l'utente intenzionato a parlare anonimamente sia in canale; o anche, tramite\n"
"che\n" " supybot.plugins.Anonymous.requireRegistration, che l'utente sia registrato."
" solo gli utenti con determinate capacità possano usare il plugin. Per " " "
"una\n"
" maggiore sicurezza è ppossibile richiedere con supybot.plugins.Anonymous."
"requirePresenceInChannel\n"
" che l'utente intenzionato a parlare anonimamente sia in canale; o anche, "
"tramite\n"
" supybot.plugins.Anonymous.requireRegistration, che l'utente sia "
"registrato. "
#: plugin.py:98 #: plugin.py:64
msgid "You must be in %s to %q in there." msgid "You must be in %s to %q in there."
msgstr "Devi essere in %s per %q." msgstr "Devi essere in %s per %q."
#: plugin.py:102 #: plugin.py:68
msgid "I'm lobotomized in %s." msgid "I'm lobotomized in %s."
msgstr "In %s sono lobotomizzato." msgstr "In %s sono lobotomizzato."
#: plugin.py:105 #: plugin.py:71
msgid "" msgid "That channel has set its capabilities so as to disallow the use of this plugin."
"That channel has set its capabilities so as to disallow the use of this " msgstr "Questo canale ha le capacità impostate in modo da impedire l'utilizzo di questo plugin."
"plugin."
msgstr ""
"Questo canale ha le capacità impostate in modo da impedire l'utilizzo di "
"questo plugin."
#: plugin.py:108 #: plugin.py:74
msgid "" msgid "%q cannot be used to send private messages."
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is " msgstr "%q non può essere usato per inviare messaggi privati."
"False)."
msgstr ""
#: plugin.py:112 #: plugin.py:80
#, fuzzy #, docstring
msgid "" msgid ""
"<channel> <text>\n" "<channel|nick> <text>\n"
"\n" "\n"
" Sends <text> to <channel>.\n" " Sends <text> to <channel|nick>. Can only send to <nick> if\n"
" "
msgstr ""
"<canale> <azione>\n"
"\n"
" Esegue <azione> in <canale>.\n"
" "
#: plugin.py:124
#, fuzzy
msgid ""
"<nick> <text>\n"
"\n"
" Sends <text> to <nick>. Can only be used if\n"
" supybot.plugins.Anonymous.allowPrivateTarget is True.\n" " supybot.plugins.Anonymous.allowPrivateTarget is True.\n"
" " " "
msgstr "" msgstr ""
@ -159,7 +103,8 @@ msgstr ""
" supybot.plugins.Anonymous.allowPrivateTarget è impostato a True.\n" " supybot.plugins.Anonymous.allowPrivateTarget è impostato a True.\n"
" " " "
#: plugin.py:137 #: plugin.py:94
#, docstring
msgid "" msgid ""
"<channel> <action>\n" "<channel> <action>\n"
"\n" "\n"
@ -171,42 +116,3 @@ msgstr ""
" Esegue <azione> in <canale>.\n" " Esegue <azione> in <canale>.\n"
" " " "
#: plugin.py:148
msgid ""
"<channel> <reaction> <nick>\n"
"\n"
" Sends the <reaction> to <nick>'s last message.\n"
" <reaction> is typically a smiley or an emoji.\n"
"\n"
" This may not be supported on the current network, as this\n"
" command depends on IRCv3 features.\n"
" This is also not supported if\n"
" supybot.protocols.irc.experimentalExtensions disabled\n"
" (don't enable it unless you know what you are doing).\n"
" "
msgstr ""
#: plugin.py:162
msgid ""
"Unable to react, supybot.protocols.irc.experimentalExtensions is disabled."
msgstr ""
#: plugin.py:167
msgid "Unable to react, the network does not support message-tags."
msgstr ""
#: plugin.py:172
msgid ""
"Unable to react, the network does not allow draft/reply and/or draft/react."
msgstr ""
#: plugin.py:181
msgid "I couldn't find a message from %s in my history of %s messages."
msgstr ""
#: plugin.py:189
msgid "Unable to react, %s's last message does not have a message id."
msgstr ""
#~ msgid "%q cannot be used to send private messages."
#~ msgstr "%q non può essere usato per inviare messaggi privati."

View File

@ -5,47 +5,46 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 11:59+EET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether\n" "Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n" " the bot should require people trying to use this plugin to be in the\n"
" channel they wish to anonymously send to." " channel they wish to anonymously send to."
msgstr "" msgstr ""
#: config.py:54 #: config.py:53
msgid "" msgid ""
"Determines whether the bot should require\n" "Determines whether the bot should require\n"
" people trying to use this plugin to be registered." " people trying to use this plugin to be registered."
msgstr "" msgstr ""
#: config.py:57 #: config.py:56
msgid "" msgid ""
"Determines what capability (if any) the bot should\n" "Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have." " require people trying to use this plugin to have."
msgstr "" msgstr ""
#: config.py:60 #: config.py:59
msgid "" msgid ""
"Determines whether the bot will allow the\n" "Determines whether the bot will allow the\n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n" " \"tell\" command to be used. If true, the bot will allow the \"tell\"\n"
" command to send private messages to other users." " command to send private messages to other users."
msgstr "" msgstr ""
#: plugin.py:45 #: plugin.py:41
#, docstring #, docstring
msgid "" msgid ""
"\n" "This plugin allows users to act through the bot anonymously. The 'do'\n"
" This plugin allows users to act through the bot anonymously. The 'do'\n"
" command has the bot perform an anonymous action in a given channel, and\n" " command has the bot perform an anonymous action in a given channel, and\n"
" the 'say' command allows other people to speak through the bot. Since\n" " the 'say' command allows other people to speak through the bot. Since\n"
" this can be fairly well abused, you might want to set\n" " this can be fairly well abused, you might want to set\n"
@ -55,51 +54,26 @@ msgid ""
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n" " supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\n" " that the user be registered by setting\n"
" supybot.plugins.Anonymous.requireRegistration.\n" " supybot.plugins.Anonymous.requireRegistration.\n"
"\n"
" Example: Proving that you are the owner\n"
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"
"\n"
" When you ask for cloak/vhost for your bot, the network operators will\n"
" often ask you to prove that you own the bot. You can do this for example\n"
" with the following method::\n"
"\n"
" @load Anonymous\n"
" @config plugins.anonymous.requirecapability owner\n"
" @config plugins.anonymous.allowprivatetarget True\n"
" @anonymous say <operator nick> Hi, my owner is <your nick> :)\n"
"\n"
" This\n"
" * Loads the plugin.\n"
" * Makes the plugin require that you are the owner\n"
"\n"
" * If anyone could send private messages as the bot, they could also\n"
" access network services.\n"
"\n"
" * Allows sending private messages\n"
" * Sends message ``Hi, my owner is <your nick> :)`` to ``operator nick``.\n"
"\n"
" * Note that you won't see the messages that are sent to the bot.\n"
"\n"
" " " "
msgstr "" msgstr ""
#: plugin.py:98 #: plugin.py:65
msgid "You must be in %s to %q in there." msgid "You must be in %s to %q in there."
msgstr "" msgstr ""
#: plugin.py:102 #: plugin.py:69
msgid "I'm lobotomized in %s." msgid "I'm lobotomized in %s."
msgstr "" msgstr ""
#: plugin.py:105 #: plugin.py:72
msgid "That channel has set its capabilities so as to disallow the use of this plugin." msgid "That channel has set its capabilities so as to disallow the use of this plugin."
msgstr "" msgstr ""
#: plugin.py:108 #: plugin.py:75
msgid "This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is False)." msgid "This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is False)."
msgstr "" msgstr ""
#: plugin.py:112 #: plugin.py:80
#, docstring #, docstring
msgid "" msgid ""
"<channel> <text>\n" "<channel> <text>\n"
@ -108,7 +82,7 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:124 #: plugin.py:92
#, docstring #, docstring
msgid "" msgid ""
"<nick> <text>\n" "<nick> <text>\n"
@ -118,7 +92,7 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:137 #: plugin.py:106
#, docstring #, docstring
msgid "" msgid ""
"<channel> <action>\n" "<channel> <action>\n"
@ -127,39 +101,3 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:148
#, docstring
msgid ""
"<channel> <reaction> <nick>\n"
"\n"
" Sends the <reaction> to <nick>'s last message.\n"
" <reaction> is typically a smiley or an emoji.\n"
"\n"
" This may not be supported on the current network, as this\n"
" command depends on IRCv3 features.\n"
" This is also not supported if\n"
" supybot.protocols.irc.experimentalExtensions disabled\n"
" (don't enable it unless you know what you are doing).\n"
" "
msgstr ""
#: plugin.py:162
msgid "Unable to react, supybot.protocols.irc.experimentalExtensions is disabled."
msgstr ""
#: plugin.py:167
msgid "Unable to react, the network does not support message-tags."
msgstr ""
#: plugin.py:172
msgid "Unable to react, the network does not allow draft/reply and/or draft/react."
msgstr ""
#: plugin.py:181
msgid "I couldn't find a message from %s in my history of %s messages."
msgstr ""
#: plugin.py:189
msgid "Unable to react, %s's last message does not have a message id."
msgstr ""

View File

@ -1,7 +1,7 @@
### ###
# Copyright (c) 2005, Daniel DiPaolo # Copyright (c) 2005, Daniel DiPaolo
# Copyright (c) 2014, James McCoy # Copyright (c) 2014, James McCoy
# Copyright (c) 2010-2021, Valentin Lorentz # Copyright (c) 2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,7 +1,7 @@
### ###
# Copyright (c) 2005, Daniel DiPaolo # Copyright (c) 2005, Daniel DiPaolo
# Copyright (c) 2014, James McCoy # Copyright (c) 2014, James McCoy
# Copyright (c) 2010-2021, Valentin Lorentz # Copyright (c) 2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@ -39,7 +39,7 @@ class AnonymousTestCase(ChannelPluginTestCase):
with conf.supybot.plugins.Anonymous.requireRegistration.context(False): with conf.supybot.plugins.Anonymous.requireRegistration.context(False):
m = self.assertNotError('anonymous say %s foo!' % self.channel) m = self.assertNotError('anonymous say %s foo!' % self.channel)
self.assertEqual(m.args[1], 'foo!') self.assertTrue(m.args[1] == 'foo!')
def testTell(self): def testTell(self):
self.assertError('anonymous tell %s I love you!' % self.nick) self.assertError('anonymous tell %s I love you!' % self.nick)
@ -48,7 +48,7 @@ class AnonymousTestCase(ChannelPluginTestCase):
self.assertError('anonymous tell %s foo!' % self.channel) self.assertError('anonymous tell %s foo!' % self.channel)
with conf.supybot.plugins.Anonymous.allowPrivateTarget.context(True): with conf.supybot.plugins.Anonymous.allowPrivateTarget.context(True):
m = self.assertNotError('anonymous tell %s foo!' % self.nick) m = self.assertNotError('anonymous tell %s foo!' % self.nick)
self.assertEqual(m.args[1], 'foo!') self.assertTrue(m.args[1] == 'foo!')
def testAction(self): def testAction(self):
m = self.assertError('anonymous do %s loves you!' % self.channel) m = self.assertError('anonymous do %s loves you!' % self.channel)

View File

@ -5,14 +5,12 @@ Documentation for the AutoMode plugin for Supybot
Purpose Purpose
------- -------
Automatically ops, voices, or halfops, or bans people when they join a channel, Automatically ops, voices, or halfops, or bans people when they join a channel,
according to their capabilities. If you want your bot automatically op users according to their capabilities. If you want your bot automatically op users
when they join your channel, this is the plugin to load. when they join your channel, this is the plugin to load.
Usage Usage
----- -----
This plugin, when configured, allows the bot to automatically set modes This plugin, when configured, allows the bot to automatically set modes
on users when they join. on users when they join.
@ -37,7 +35,7 @@ Configuration
supybot.plugins.AutoMode.alternativeCapabilities supybot.plugins.AutoMode.alternativeCapabilities
This config variable defaults to "True", is network-specific, and is channel-specific. This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether the bot will check for 'alternative capabilities' (ie. autoop, autohalfop, autovoice) in addition to/instead of classic ones. Determines whether the bot will check for 'alternative capabilities' (ie. autoop, autohalfop, autovoice) in addition to/instead of classic ones.
@ -45,7 +43,7 @@ supybot.plugins.AutoMode.alternativeCapabilities
supybot.plugins.AutoMode.ban supybot.plugins.AutoMode.ban
This config variable defaults to "True", is network-specific, and is channel-specific. This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether the bot will automatically ban people who join the channel and are on the banlist. Determines whether the bot will automatically ban people who join the channel and are on the banlist.
@ -53,7 +51,7 @@ supybot.plugins.AutoMode.ban
supybot.plugins.AutoMode.ban.period supybot.plugins.AutoMode.ban.period
This config variable defaults to "86400", is network-specific, and is channel-specific. This config variable defaults to "86400", is network-specific, and is channel-specific.
Determines how many seconds the bot will automatically ban a person when banning. Determines how many seconds the bot will automatically ban a person when banning.
@ -61,7 +59,7 @@ supybot.plugins.AutoMode.ban
supybot.plugins.AutoMode.delay supybot.plugins.AutoMode.delay
This config variable defaults to "0", is network-specific, and is channel-specific. This config variable defaults to "0", is network-specific, and is channel-specific.
Determines how many seconds the bot will wait before applying a mode. Has no effect on bans. Determines how many seconds the bot will wait before applying a mode. Has no effect on bans.
@ -69,7 +67,7 @@ supybot.plugins.AutoMode.delay
supybot.plugins.AutoMode.enable supybot.plugins.AutoMode.enable
This config variable defaults to "True", is network-specific, and is channel-specific. This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether this plugin is enabled. Determines whether this plugin is enabled.
@ -77,7 +75,7 @@ supybot.plugins.AutoMode.enable
supybot.plugins.AutoMode.extra supybot.plugins.AutoMode.extra
This config variable defaults to " ", is network-specific, and is channel-specific. This config variable defaults to " ", is network-specific, and is channel-specific.
Extra modes that will be applied to a user. Example syntax: user1+o-v user2+v user3-v Extra modes that will be applied to a user. Example syntax: user1+o-v user2+v user3-v
@ -85,7 +83,7 @@ supybot.plugins.AutoMode.extra
supybot.plugins.AutoMode.fallthrough supybot.plugins.AutoMode.fallthrough
This config variable defaults to "True", is network-specific, and is channel-specific. This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether the bot will "fall through" to halfop/voicing when auto-opping is turned off but auto-halfopping/voicing are turned on. Determines whether the bot will "fall through" to halfop/voicing when auto-opping is turned off but auto-halfopping/voicing are turned on.
@ -93,7 +91,7 @@ supybot.plugins.AutoMode.fallthrough
supybot.plugins.AutoMode.halfop supybot.plugins.AutoMode.halfop
This config variable defaults to "False", is network-specific, and is channel-specific. This config variable defaults to "False", is network-specific, and is channel-specific.
Determines whether the bot will automatically halfop people with the <channel>,halfop capability when they join the channel. Determines whether the bot will automatically halfop people with the <channel>,halfop capability when they join the channel.
@ -101,7 +99,7 @@ supybot.plugins.AutoMode.halfop
supybot.plugins.AutoMode.op supybot.plugins.AutoMode.op
This config variable defaults to "False", is network-specific, and is channel-specific. This config variable defaults to "False", is network-specific, and is channel-specific.
Determines whether the bot will automatically op people with the <channel>,op capability when they join the channel. Determines whether the bot will automatically op people with the <channel>,op capability when they join the channel.
@ -109,7 +107,7 @@ supybot.plugins.AutoMode.op
supybot.plugins.AutoMode.owner supybot.plugins.AutoMode.owner
This config variable defaults to "False", is not network-specific, and is not channel-specific. This config variable defaults to "False", is not network-specific, and is not channel-specific.
Determines whether this plugin will automode owners even if they don't have op/halfop/voice/whatever capability. Determines whether this plugin will automode owners even if they don't have op/halfop/voice/whatever capability.
@ -117,7 +115,7 @@ supybot.plugins.AutoMode.owner
supybot.plugins.AutoMode.public supybot.plugins.AutoMode.public
This config variable defaults to "True", is not network-specific, and is not channel-specific. This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether this plugin is publicly visible. Determines whether this plugin is publicly visible.
@ -125,7 +123,7 @@ supybot.plugins.AutoMode.public
supybot.plugins.AutoMode.voice supybot.plugins.AutoMode.voice
This config variable defaults to "False", is network-specific, and is channel-specific. This config variable defaults to "False", is network-specific, and is channel-specific.
Determines whether the bot will automatically voice people with the <channel>,voice capability when they join the channel. Determines whether the bot will automatically voice people with the <channel>,voice capability when they join the channel.

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2005, Jeremiah Fincher # Copyright (c) 2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2005, Jeremiah Fincher # Copyright (c) 2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Supybot\n" "Project-Id-Version: Supybot\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2012-04-19 21:37+CEST\n"
"PO-Revision-Date: 2012-04-27 15:38+0200\n" "PO-Revision-Date: 2012-04-27 15:38+0200\n"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n" "Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: German <fbesser@gmail.com>\n" "Language-Team: German <fbesser@gmail.com>\n"
@ -13,116 +13,63 @@ msgstr ""
"X-Poedit-Language: German\n" "X-Poedit-Language: German\n"
"X-Poedit-Country: GERMANY\n" "X-Poedit-Country: GERMANY\n"
#: config.py:47 #: config.py:46
msgid "" msgid ""
"Determines whether this plugin is enabled.\n" "Determines whether this plugin is enabled.\n"
" " " "
msgstr "Legt fest ob das Plugin aktiv ist." msgstr "Legt fest ob das Plugin aktiv ist."
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether this plugin will automode\n" "Determines whether this plugin will automode\n"
" owners even if they don't have op/halfop/voice/whatever capability." " owners even if they don't have op/halfop/voice/whatever capability."
msgstr "" msgstr "Legt fest ob das Plugin Besitzern automatisch den Modus zuweist, obwohl sie nicht die op/halfop/voice/wasauchimmer Fähigkeit besitzen."
"Legt fest ob das Plugin Besitzern automatisch den Modus zuweist, obwohl sie "
"nicht die op/halfop/voice/wasauchimmer Fähigkeit besitzen."
#: config.py:53 #: config.py:52
msgid ""
"Determines whether the bot will\n"
" check for 'alternative capabilities' (ie. autoop, autohalfop,\n"
" autovoice) in addition to/instead of classic ones."
msgstr ""
#: config.py:57
#, fuzzy #, fuzzy
msgid "" msgid ""
"Determines whether the bot will \"fall\n" "Determines whether the bot will \"fall\n"
" through\" to halfop/voicing when auto-opping is turned off but\n" " through\" to halfop/voicing when auto-opping is turned off but\n"
" auto-halfopping/voicing are turned on." " auto-halfopping/voicing are turned on."
msgstr "" msgstr "Legt fest ob der Bot \"zurückfällt\" auf Halboperator/Sprechrechte wenn automatischer Operator abgeschaltet ist, aber automatische Halboperator/Sprecherechte angeschaltet sind."
"Legt fest ob der Bot \"zurückfällt\" auf Halboperator/Sprechrechte wenn "
"automatischer Operator abgeschaltet ist, aber automatische Halboperator/"
"Sprecherechte angeschaltet sind."
#: config.py:61 #: config.py:56
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" op people with the <channel>,op capability when they join the channel.\n" " op people with the <channel>,op capability when they join the channel.\n"
" " " "
msgstr "" msgstr "Legt fest ob der Bot Personen, mit der <Kanal>,op Fähigkeit, automatisch Operatorrechte zuweisen soll, wenn sie den Kanal betreten."
"Legt fest ob der Bot Personen, mit der <Kanal>,op Fähigkeit, automatisch "
"Operatorrechte zuweisen soll, wenn sie den Kanal betreten."
#: config.py:65 #: config.py:60
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" halfop people with the <channel>,halfop capability when they join the\n" " halfop people with the <channel>,halfop capability when they join the\n"
" channel." " channel."
msgstr "" msgstr "Legt fest ob der Bot Personen, mit der <Kanal>,halfop Fähigkeit, automatisch Halboperatorrechte zuweisen soll, wenn sie den Kanal betreten."
"Legt fest ob der Bot Personen, mit der <Kanal>,halfop Fähigkeit, automatisch "
"Halboperatorrechte zuweisen soll, wenn sie den Kanal betreten."
#: config.py:69 #: config.py:64
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n" " voice people with the <channel>,voice capability when they join the\n"
" channel." " channel."
msgstr "" msgstr "Legt fest ob der Bot Personen, mit der <Kanal>,voice Fähigkeit, automatisch Sprechrechte zuweisen soll, wenn sie den Kanal betreten."
"Legt fest ob der Bot Personen, mit der <Kanal>,voice Fähigkeit, automatisch "
"Sprechrechte zuweisen soll, wenn sie den Kanal betreten."
#: config.py:73 #: config.py:68
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist." " ban people who join the channel and are on the banlist."
msgstr "" msgstr "Legt fest ob der Bot automatisch Personen bannen soll die auf der Banliste stehen."
"Legt fest ob der Bot automatisch Personen bannen soll die auf der Banliste "
"stehen."
#: config.py:76 #: config.py:71
msgid "" msgid ""
"Determines how many seconds the bot\n" "Determines how many seconds the bot\n"
" will automatically ban a person when banning." " will automatically ban a person when banning."
msgstr "Legt fest wieviele Sekunden der Bot Personen automatisch bannt." msgstr "Legt fest wieviele Sekunden der Bot Personen automatisch bannt."
#: config.py:80 #: config.py:75
#, fuzzy #, fuzzy
msgid "" msgid ""
"Determines how many seconds the bot will wait\n" "Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans." " before applying a mode. Has no effect on bans."
msgstr "Legt fest wieviele Sekunden der Bot Personen automatisch bannt." msgstr "Legt fest wieviele Sekunden der Bot Personen automatisch bannt."
#: config.py:84
msgid ""
"Extra modes that will be\n"
" applied to a user. Example syntax: user1+o-v user2+v user3-v"
msgstr ""
#: plugin.py:49
msgid ""
"\n"
" This plugin, when configured, allows the bot to automatically set modes\n"
" on users when they join.\n"
"\n"
" * if ``plugins.automode.op`` is set to ``True``, users with the\n"
" ``#channel,op`` capability are opped when they join.\n"
" * if ``plugins.automode.halfop`` is set to ``True``, users with the\n"
" ``#channel,halfop`` are halfopped when they join.\n"
" * if ``plugins.automode.voice`` is set to ``True``, users with the\n"
" ``#channel,voice`` are voiced when they join.\n"
"\n"
" This plugin also kbans people on ``@channel ban list``\n"
" (``config plugins.automode.ban``) when they join and if moding users "
"with\n"
" lower capability is enabled, that is also applied to users with higher\n"
" capability (``config plugins.automode.fallthrough``).\n"
"\n"
" "
msgstr ""
#: plugin.py:97
msgid ""
"Determines whether or not a mode has already\n"
" been applied."
msgstr ""

View File

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Supybot AutoMode\n" "Project-Id-Version: Supybot AutoMode\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 11:29+EET\n"
"PO-Revision-Date: 2014-12-20 11:38+0200\n" "PO-Revision-Date: 2014-12-20 11:38+0200\n"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n" "Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: suomi <>\n" "Language-Team: suomi <>\n"
@ -16,13 +16,13 @@ msgstr ""
"Plural-Forms: \n" "Plural-Forms: \n"
"X-Generator: Poedit 1.6.10\n" "X-Generator: Poedit 1.6.10\n"
#: config.py:47 #: config.py:46
msgid "" msgid ""
"Determines whether this plugin is enabled.\n" "Determines whether this plugin is enabled.\n"
" " " "
msgstr "Määrittää onko tämä lisäosa käytössä." msgstr "Määrittää onko tämä lisäosa käytössä."
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether this plugin will automode\n" "Determines whether this plugin will automode\n"
" owners even if they don't have op/halfop/voice/whatever capability." " owners even if they don't have op/halfop/voice/whatever capability."
@ -31,7 +31,7 @@ msgstr ""
"olisi\n" "olisi\n"
" op/halfop/voice/ihansama valtuutta." " op/halfop/voice/ihansama valtuutta."
#: config.py:53 #: config.py:52
msgid "" msgid ""
"Determines whether the bot will\n" "Determines whether the bot will\n"
" check for 'alternative capabilities' (ie. autoop, autohalfop,\n" " check for 'alternative capabilities' (ie. autoop, autohalfop,\n"
@ -41,7 +41,7 @@ msgstr ""
"autoop,\n" "autoop,\n"
" autohalfop, autovoice) klassisten lisäksi/sijaan." " autohalfop, autovoice) klassisten lisäksi/sijaan."
#: config.py:57 #: config.py:56
msgid "" msgid ""
"Determines whether the bot will \"fall\n" "Determines whether the bot will \"fall\n"
" through\" to halfop/voicing when auto-opping is turned off but\n" " through\" to halfop/voicing when auto-opping is turned off but\n"
@ -52,7 +52,7 @@ msgstr ""
" oprtaattori aseman antaminen on poistettu käytöstä, mutta automaattinen\n" " oprtaattori aseman antaminen on poistettu käytöstä, mutta automaattinen\n"
" puolioperaattori aseman/äänen antaminen on käytössä." " puolioperaattori aseman/äänen antaminen on käytössä."
#: config.py:61 #: config.py:60
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" op people with the <channel>,op capability when they join the channel.\n" " op people with the <channel>,op capability when they join the channel.\n"
@ -62,7 +62,7 @@ msgstr ""
" ihmiset, joilla on #<kanava>,op valtuus automaattisesti, kun he liittyvät " " ihmiset, joilla on #<kanava>,op valtuus automaattisesti, kun he liittyvät "
"kanavalle." "kanavalle."
#: config.py:65 #: config.py:64
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" halfop people with the <channel>,halfop capability when they join the\n" " halfop people with the <channel>,halfop capability when they join the\n"
@ -71,7 +71,7 @@ msgstr ""
"Määrittää antaako botti puolioperaattorin aseman automaattisesti, kun " "Määrittää antaako botti puolioperaattorin aseman automaattisesti, kun "
"ihmiset, joilla on #<kanava>,halfop valtuus liittyvät kanavalle." "ihmiset, joilla on #<kanava>,halfop valtuus liittyvät kanavalle."
#: config.py:69 #: config.py:68
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n" " voice people with the <channel>,voice capability when they join the\n"
@ -81,7 +81,7 @@ msgstr ""
"voice\n" "voice\n"
" valtuus heidän liittyessään kanavalle." " valtuus heidän liittyessään kanavalle."
#: config.py:73 #: config.py:72
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist." " ban people who join the channel and are on the banlist."
@ -89,7 +89,7 @@ msgstr ""
"Määrittää antaako botti porttikiellon ihmisille,\n" "Määrittää antaako botti porttikiellon ihmisille,\n"
" jotka liittyvät kanavalle ja ovat porttikieltolistalla." " jotka liittyvät kanavalle ja ovat porttikieltolistalla."
#: config.py:76 #: config.py:75
msgid "" msgid ""
"Determines how many seconds the bot\n" "Determines how many seconds the bot\n"
" will automatically ban a person when banning." " will automatically ban a person when banning."
@ -98,7 +98,7 @@ msgstr ""
"antaessaan\n" "antaessaan\n"
" porttikieltoa automaattisesti." " porttikieltoa automaattisesti."
#: config.py:80 #: config.py:79
msgid "" msgid ""
"Determines how many seconds the bot will wait\n" "Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans." " before applying a mode. Has no effect on bans."
@ -107,7 +107,7 @@ msgstr ""
"Tällä ei ole\n" "Tällä ei ole\n"
" vaikutusta porttikieltoihin." " vaikutusta porttikieltoihin."
#: config.py:84 #: config.py:83
msgid "" msgid ""
"Extra modes that will be\n" "Extra modes that will be\n"
" applied to a user. Example syntax: user1+o-v user2+v user3-v" " applied to a user. Example syntax: user1+o-v user2+v user3-v"
@ -115,38 +115,17 @@ msgstr ""
"Ylimääräiset tilat, jotka asetetaan käyttäjään.\n" "Ylimääräiset tilat, jotka asetetaan käyttäjään.\n"
" Esimerkki syntaksi: käyttäjä1+o-v käyttäjä2+v käyttäjä3-v" " Esimerkki syntaksi: käyttäjä1+o-v käyttäjä2+v käyttäjä3-v"
#: plugin.py:49 #: plugin.py:48
#, fuzzy
msgid "" msgid ""
"\n" "This plugin, when configured, allows the bot to automatically set modes\n"
" This plugin, when configured, allows the bot to automatically set modes\n" " on users when they join."
" on users when they join.\n"
"\n"
" * if ``plugins.automode.op`` is set to ``True``, users with the\n"
" ``#channel,op`` capability are opped when they join.\n"
" * if ``plugins.automode.halfop`` is set to ``True``, users with the\n"
" ``#channel,halfop`` are halfopped when they join.\n"
" * if ``plugins.automode.voice`` is set to ``True``, users with the\n"
" ``#channel,voice`` are voiced when they join.\n"
"\n"
" This plugin also kbans people on ``@channel ban list``\n"
" (``config plugins.automode.ban``) when they join and if moding users "
"with\n"
" lower capability is enabled, that is also applied to users with higher\n"
" capability (``config plugins.automode.fallthrough``).\n"
"\n"
" "
msgstr "" msgstr ""
"Määritettynä tämä plugin voi asettaa tiloja kanavalle liittyjiin "
"automaattisesti."
#: plugin.py:97 #: plugin.py:80
msgid "" msgid ""
"Determines whether or not a mode has already\n" "Determines whether or not a mode has already\n"
" been applied." " been applied."
msgstr "Määrittää asettaako botti tilan vai eikö, jos tila se on jo asetettu." msgstr "Määrittää asettaako botti tilan vai eikö, jos tila se on jo asetettu."
#, fuzzy
#~ msgid ""
#~ "This plugin, when configured, allows the bot to automatically set modes\n"
#~ " on users when they join."
#~ msgstr ""
#~ "Määritettynä tämä plugin voi asettaa tiloja kanavalle liittyjiin "
#~ "automaattisesti."

View File

@ -2,7 +2,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-01-21 19:30+CET\n"
"PO-Revision-Date: 2014-01-21 19:33+0100\n" "PO-Revision-Date: 2014-01-21 19:33+0100\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: French <kde-i18n-doc@kde.org>\n" "Language-Team: French <kde-i18n-doc@kde.org>\n"
@ -14,13 +14,13 @@ msgstr ""
"X-Generator: Poedit 1.5.4\n" "X-Generator: Poedit 1.5.4\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: config.py:47 #: config.py:46
msgid "" msgid ""
"Determines whether this plugin is enabled.\n" "Determines whether this plugin is enabled.\n"
" " " "
msgstr "Détermine si ce plugin est activé." msgstr "Détermine si ce plugin est activé."
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether this plugin will automode\n" "Determines whether this plugin will automode\n"
" owners even if they don't have op/halfop/voice/whatever capability." " owners even if they don't have op/halfop/voice/whatever capability."
@ -28,7 +28,7 @@ msgstr ""
"Détermine si ce plugin mettra des modes automatiques sur les owners, même si " "Détermine si ce plugin mettra des modes automatiques sur les owners, même si "
"ils n'ont pas la capacité op/halfop/voice/..." "ils n'ont pas la capacité op/halfop/voice/..."
#: config.py:53 #: config.py:52
msgid "" msgid ""
"Determines whether the bot will\n" "Determines whether the bot will\n"
" check for 'alternative capabilities' (ie. autoop, autohalfop,\n" " check for 'alternative capabilities' (ie. autoop, autohalfop,\n"
@ -37,7 +37,7 @@ msgstr ""
"Détermine si le bot vérifiera les « capacités alternatives » (ie. autoop, " "Détermine si le bot vérifiera les « capacités alternatives » (ie. autoop, "
"autohalfop, autovoice) en plus/à la place des capacités classiques." "autohalfop, autovoice) en plus/à la place des capacités classiques."
#: config.py:57 #: config.py:56
msgid "" msgid ""
"Determines whether the bot will \"fall\n" "Determines whether the bot will \"fall\n"
" through\" to halfop/voicing when auto-opping is turned off but\n" " through\" to halfop/voicing when auto-opping is turned off but\n"
@ -46,7 +46,7 @@ msgstr ""
"Détermine si le bot ne halfopera/voicera pas lorsque l'auto-op est " "Détermine si le bot ne halfopera/voicera pas lorsque l'auto-op est "
"désactivé, même si l'auto-halfopvoice est activé." "désactivé, même si l'auto-halfopvoice est activé."
#: config.py:61 #: config.py:60
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" op people with the <channel>,op capability when they join the channel.\n" " op people with the <channel>,op capability when they join the channel.\n"
@ -55,7 +55,7 @@ msgstr ""
"Détermine si le bot opera automatiquement les gens qui ont la capacité " "Détermine si le bot opera automatiquement les gens qui ont la capacité "
"<canal>,op lorsqu'ils rejoignent le canal." "<canal>,op lorsqu'ils rejoignent le canal."
#: config.py:65 #: config.py:64
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" halfop people with the <channel>,halfop capability when they join the\n" " halfop people with the <channel>,halfop capability when they join the\n"
@ -64,7 +64,7 @@ msgstr ""
"Détermine si le bot halfopera les gens qui ont la capacité <canal>,halfop " "Détermine si le bot halfopera les gens qui ont la capacité <canal>,halfop "
"lorsqu'ils rejoignent le canal." "lorsqu'ils rejoignent le canal."
#: config.py:69 #: config.py:68
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n" " voice people with the <channel>,voice capability when they join the\n"
@ -73,7 +73,7 @@ msgstr ""
"Détermine si le bot voicera automatiquement les gens avec la capacité " "Détermine si le bot voicera automatiquement les gens avec la capacité "
"<canal>,voice lorsqu'ils rejoingent le canal." "<canal>,voice lorsqu'ils rejoingent le canal."
#: config.py:73 #: config.py:72
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist." " ban people who join the channel and are on the banlist."
@ -81,7 +81,7 @@ msgstr ""
"Détermine si le bot bannira automatiquement les personnes qui rejoignent le " "Détermine si le bot bannira automatiquement les personnes qui rejoignent le "
"canal et qui sont sur la liste de bannissement." "canal et qui sont sur la liste de bannissement."
#: config.py:76 #: config.py:75
msgid "" msgid ""
"Determines how many seconds the bot\n" "Determines how many seconds the bot\n"
" will automatically ban a person when banning." " will automatically ban a person when banning."
@ -89,7 +89,7 @@ msgstr ""
"Détermine combien de secondes durera le bannissement que le bot posera sur " "Détermine combien de secondes durera le bannissement que le bot posera sur "
"une personne." "une personne."
#: config.py:80 #: config.py:79
msgid "" msgid ""
"Determines how many seconds the bot will wait\n" "Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans." " before applying a mode. Has no effect on bans."
@ -97,7 +97,7 @@ msgstr ""
"Détermine combien de secondes le bot attendra avant d'appliquer un mode. " "Détermine combien de secondes le bot attendra avant d'appliquer un mode. "
"Cela n'a aucun effet sur les bannissements." "Cela n'a aucun effet sur les bannissements."
#: config.py:84 #: config.py:83
msgid "" msgid ""
"Extra modes that will be\n" "Extra modes that will be\n"
" applied to a user. Example syntax: user1+o-v user2+v user3-v" " applied to a user. Example syntax: user1+o-v user2+v user3-v"
@ -105,29 +105,7 @@ msgstr ""
"Des modes supplémentaires à appliquer à un utilisateur. Par exemple : " "Des modes supplémentaires à appliquer à un utilisateur. Par exemple : "
"user1+o-v user2+v user3-v" "user1+o-v user2+v user3-v"
#: plugin.py:49 #: plugin.py:78
msgid ""
"\n"
" This plugin, when configured, allows the bot to automatically set modes\n"
" on users when they join.\n"
"\n"
" * if ``plugins.automode.op`` is set to ``True``, users with the\n"
" ``#channel,op`` capability are opped when they join.\n"
" * if ``plugins.automode.halfop`` is set to ``True``, users with the\n"
" ``#channel,halfop`` are halfopped when they join.\n"
" * if ``plugins.automode.voice`` is set to ``True``, users with the\n"
" ``#channel,voice`` are voiced when they join.\n"
"\n"
" This plugin also kbans people on ``@channel ban list``\n"
" (``config plugins.automode.ban``) when they join and if moding users "
"with\n"
" lower capability is enabled, that is also applied to users with higher\n"
" capability (``config plugins.automode.fallthrough``).\n"
"\n"
" "
msgstr ""
#: plugin.py:97
msgid "" msgid ""
"Determines whether or not a mode has already\n" "Determines whether or not a mode has already\n"
" been applied." " been applied."

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: 2012-04-23 19:29+0200\n" "PO-Revision-Date: 2012-04-23 19:29+0200\n"
"Last-Translator: skizzhg <skizzhg@gmx.com>\n" "Last-Translator: skizzhg <skizzhg@gmx.com>\n"
"Language-Team: Italian <skizzhg@gmx.com>\n" "Language-Team: Italian <skizzhg@gmx.com>\n"
@ -10,7 +10,8 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: config.py:47
#: config.py:46
msgid "" msgid ""
"Determines whether this plugin is enabled.\n" "Determines whether this plugin is enabled.\n"
" " " "
@ -18,7 +19,7 @@ msgstr ""
"Determina se il plugin è abilitato.\n" "Determina se il plugin è abilitato.\n"
" " " "
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether this plugin will automode\n" "Determines whether this plugin will automode\n"
" owners even if they don't have op/halfop/voice/whatever capability." " owners even if they don't have op/halfop/voice/whatever capability."
@ -26,14 +27,7 @@ msgstr ""
"Determina se il plugin darà automaticamente il mode ai proprietari.\n" "Determina se il plugin darà automaticamente il mode ai proprietari.\n"
" anche se non hanno la capacità op, halfop, voice, ecc..." " anche se non hanno la capacità op, halfop, voice, ecc..."
#: config.py:53 #: config.py:52
msgid ""
"Determines whether the bot will\n"
" check for 'alternative capabilities' (ie. autoop, autohalfop,\n"
" autovoice) in addition to/instead of classic ones."
msgstr ""
#: config.py:57
msgid "" msgid ""
"Determines whether the bot will \"fall\n" "Determines whether the bot will \"fall\n"
" through\" to halfop/voicing when auto-opping is turned off but\n" " through\" to halfop/voicing when auto-opping is turned off but\n"
@ -43,7 +37,7 @@ msgstr ""
" quando l'op automatico è disabilitato ma l'halfop o il voice\n" " quando l'op automatico è disabilitato ma l'halfop o il voice\n"
" automatico sono attivati." " automatico sono attivati."
#: config.py:61 #: config.py:56
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" op people with the <channel>,op capability when they join the channel.\n" " op people with the <channel>,op capability when they join the channel.\n"
@ -53,7 +47,7 @@ msgstr ""
" la capacità <canale>,op quando entrano in canale.\n" " la capacità <canale>,op quando entrano in canale.\n"
" " " "
#: config.py:65 #: config.py:60
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" halfop people with the <channel>,halfop capability when they join the\n" " halfop people with the <channel>,halfop capability when they join the\n"
@ -63,7 +57,7 @@ msgstr ""
" la capacità <canale>,halfop quando entrano in canale.\n" " la capacità <canale>,halfop quando entrano in canale.\n"
" " " "
#: config.py:69 #: config.py:64
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n" " voice people with the <channel>,voice capability when they join the\n"
@ -73,7 +67,7 @@ msgstr ""
" la capacità <canale>,voice quando entrano in canale.\n" " la capacità <canale>,voice quando entrano in canale.\n"
" " " "
#: config.py:73 #: config.py:68
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist." " ban people who join the channel and are on the banlist."
@ -82,13 +76,14 @@ msgstr ""
" entrano in canale e sono nella lista dei ban.\n" " entrano in canale e sono nella lista dei ban.\n"
" " " "
#: config.py:76 #: config.py:71
msgid "" msgid ""
"Determines how many seconds the bot\n" "Determines how many seconds the bot\n"
" will automatically ban a person when banning." " will automatically ban a person when banning."
msgstr "Determina quanti secondi durerà il ban applicato a un utente." msgstr ""
"Determina quanti secondi durerà il ban applicato a un utente."
#: config.py:80 #: config.py:75
msgid "" msgid ""
"Determines how many seconds the bot will wait\n" "Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans." " before applying a mode. Has no effect on bans."
@ -96,36 +91,3 @@ msgstr ""
"Determina quanti secondi aspetterà il bot prima di applicare un mode.\n" "Determina quanti secondi aspetterà il bot prima di applicare un mode.\n"
" Non ha effetto sui ban." " Non ha effetto sui ban."
#: config.py:84
msgid ""
"Extra modes that will be\n"
" applied to a user. Example syntax: user1+o-v user2+v user3-v"
msgstr ""
#: plugin.py:49
msgid ""
"\n"
" This plugin, when configured, allows the bot to automatically set modes\n"
" on users when they join.\n"
"\n"
" * if ``plugins.automode.op`` is set to ``True``, users with the\n"
" ``#channel,op`` capability are opped when they join.\n"
" * if ``plugins.automode.halfop`` is set to ``True``, users with the\n"
" ``#channel,halfop`` are halfopped when they join.\n"
" * if ``plugins.automode.voice`` is set to ``True``, users with the\n"
" ``#channel,voice`` are voiced when they join.\n"
"\n"
" This plugin also kbans people on ``@channel ban list``\n"
" (``config plugins.automode.ban``) when they join and if moding users "
"with\n"
" lower capability is enabled, that is also applied to users with higher\n"
" capability (``config plugins.automode.fallthrough``).\n"
"\n"
" "
msgstr ""
#: plugin.py:97
msgid ""
"Determines whether or not a mode has already\n"
" been applied."
msgstr ""

View File

@ -5,110 +5,95 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-12-20 11:29+EET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: config.py:47 #: config.py:46
msgid "" msgid ""
"Determines whether this plugin is enabled.\n" "Determines whether this plugin is enabled.\n"
" " " "
msgstr "" msgstr ""
#: config.py:50 #: config.py:49
msgid "" msgid ""
"Determines whether this plugin will automode\n" "Determines whether this plugin will automode\n"
" owners even if they don't have op/halfop/voice/whatever capability." " owners even if they don't have op/halfop/voice/whatever capability."
msgstr "" msgstr ""
#: config.py:53 #: config.py:52
msgid "" msgid ""
"Determines whether the bot will\n" "Determines whether the bot will\n"
" check for 'alternative capabilities' (ie. autoop, autohalfop,\n" " check for 'alternative capabilities' (ie. autoop, autohalfop,\n"
" autovoice) in addition to/instead of classic ones." " autovoice) in addition to/instead of classic ones."
msgstr "" msgstr ""
#: config.py:57 #: config.py:56
msgid "" msgid ""
"Determines whether the bot will \"fall\n" "Determines whether the bot will \"fall\n"
" through\" to halfop/voicing when auto-opping is turned off but\n" " through\" to halfop/voicing when auto-opping is turned off but\n"
" auto-halfopping/voicing are turned on." " auto-halfopping/voicing are turned on."
msgstr "" msgstr ""
#: config.py:61 #: config.py:60
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" op people with the <channel>,op capability when they join the channel.\n" " op people with the <channel>,op capability when they join the channel.\n"
" " " "
msgstr "" msgstr ""
#: config.py:65 #: config.py:64
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" halfop people with the <channel>,halfop capability when they join the\n" " halfop people with the <channel>,halfop capability when they join the\n"
" channel." " channel."
msgstr "" msgstr ""
#: config.py:69 #: config.py:68
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n" " voice people with the <channel>,voice capability when they join the\n"
" channel." " channel."
msgstr "" msgstr ""
#: config.py:73 #: config.py:72
msgid "" msgid ""
"Determines whether the bot will automatically\n" "Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist." " ban people who join the channel and are on the banlist."
msgstr "" msgstr ""
#: config.py:76 #: config.py:75
msgid "" msgid ""
"Determines how many seconds the bot\n" "Determines how many seconds the bot\n"
" will automatically ban a person when banning." " will automatically ban a person when banning."
msgstr "" msgstr ""
#: config.py:80 #: config.py:79
msgid "" msgid ""
"Determines how many seconds the bot will wait\n" "Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans." " before applying a mode. Has no effect on bans."
msgstr "" msgstr ""
#: config.py:84 #: config.py:83
msgid "" msgid ""
"Extra modes that will be\n" "Extra modes that will be\n"
" applied to a user. Example syntax: user1+o-v user2+v user3-v" " applied to a user. Example syntax: user1+o-v user2+v user3-v"
msgstr "" msgstr ""
#: plugin.py:49 #: plugin.py:48
#, docstring #, docstring
msgid "" msgid ""
"\n" "This plugin, when configured, allows the bot to automatically set modes\n"
" This plugin, when configured, allows the bot to automatically set modes\n" " on users when they join."
" on users when they join.\n"
"\n"
" * if ``plugins.automode.op`` is set to ``True``, users with the\n"
" ``#channel,op`` capability are opped when they join.\n"
" * if ``plugins.automode.halfop`` is set to ``True``, users with the\n"
" ``#channel,halfop`` are halfopped when they join.\n"
" * if ``plugins.automode.voice`` is set to ``True``, users with the\n"
" ``#channel,voice`` are voiced when they join.\n"
"\n"
" This plugin also kbans people on ``@channel ban list``\n"
" (``config plugins.automode.ban``) when they join and if moding users with\n"
" lower capability is enabled, that is also applied to users with higher\n"
" capability (``config plugins.automode.fallthrough``).\n"
"\n"
" "
msgstr "" msgstr ""
#: plugin.py:97 #: plugin.py:80
#, docstring #, docstring
msgid "" msgid ""
"Determines whether or not a mode has already\n" "Determines whether or not a mode has already\n"

View File

@ -1,7 +1,6 @@
### ###
# Copyright (c) 2004, Jeremiah Fincher # Copyright (c) 2004, Jeremiah Fincher
# Copyright (c) 2009, James McCoy # Copyright (c) 2009, James McCoy
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@ -144,7 +143,7 @@ class AutoMode(callbacks.Plugin):
break break
try: try:
do('op') do('op')
if 'h' in irc.state.supported.get('prefix', ''): if 'h' in irc.state.supported['prefix']:
do('halfop') do('halfop')
except Continue: except Continue:
return return

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2005, Jeremiah Fincher # Copyright (c) 2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -5,7 +5,6 @@ Documentation for the Autocomplete plugin for Supybot
Purpose Purpose
------- -------
Autocomplete: Provides command autocompletion for IRC clients that support it. Autocomplete: Provides command autocompletion for IRC clients that support it.
This plugin implements an early draft of the IRCv3 autocompletion client tags. This plugin implements an early draft of the IRCv3 autocompletion client tags.
@ -18,7 +17,6 @@ If you are interested in this feature, please contribute to
Usage Usage
----- -----
Provides command completion for IRC clients that support it. Provides command completion for IRC clients that support it.
.. _conf-Autocomplete: .. _conf-Autocomplete:
@ -30,7 +28,7 @@ Configuration
supybot.plugins.Autocomplete.enabled supybot.plugins.Autocomplete.enabled
This config variable defaults to "False", is network-specific, and is channel-specific. This config variable defaults to "False", is network-specific, and is channel-specific.
Whether the bot should reply to autocomplete requests from clients. Whether the bot should reply to autocomplete requests from clients.
@ -38,7 +36,7 @@ supybot.plugins.Autocomplete.enabled
supybot.plugins.Autocomplete.public supybot.plugins.Autocomplete.public
This config variable defaults to "True", is not network-specific, and is not channel-specific. This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether this plugin is publicly visible. Determines whether this plugin is publicly visible.

View File

@ -1,5 +1,5 @@
### ###
# Copyright (c) 2020-2021, Valentin Lorentz # Copyright (c) 2020, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@ -60,8 +60,10 @@ __url__ = ""
from . import config from . import config
from . import plugin from . import plugin
from importlib import reload if sys.version_info >= (3, 4):
from importlib import reload
else:
from imp import reload
# In case we're being reloaded. # In case we're being reloaded.
reload(config) reload(config)
reload(plugin) reload(plugin)

View File

@ -1,5 +1,5 @@
### ###
# Copyright (c) 2020-2021, Valentin Lorentz # Copyright (c) 2020, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,45 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR ORGANIZATION
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: pygettext.py 1.5\n"
#: config.py:62
msgid ""
"Whether the bot should reply to autocomplete\n"
" requests from clients."
msgstr ""
#: plugin.py:42
#, docstring
msgid "Takes a list of lists, and returns their longest common prefix."
msgstr ""
#: plugin.py:57
#, docstring
msgid ""
"Returns the value of the +draft/autocomplete-response tag for the given\n"
" +draft/autocomplete-request payload."
msgstr ""
#: plugin.py:101
#, docstring
msgid "Returns a list of commands starting with the normalized_payload."
msgstr ""
#: plugin.py:121
#, docstring
msgid "Provides command completion for IRC clients that support it."
msgstr ""

View File

@ -1,5 +1,5 @@
### ###
# Copyright (c) 2020-2021, Valentin Lorentz # Copyright (c) 2020, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,5 +1,5 @@
### ###
# Copyright (c) 2020-2021, Valentin Lorentz # Copyright (c) 2020, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -5,7 +5,6 @@ Documentation for the BadWords plugin for Supybot
Purpose Purpose
------- -------
Filters bad words on outgoing messages from the bot, so the bot can't be made Filters bad words on outgoing messages from the bot, so the bot can't be made
to say bad words. to say bad words.
As an additional capability, it can (optionally) kick users who As an additional capability, it can (optionally) kick users who
@ -13,7 +12,6 @@ use such words from channels that have that capability enabled.
Usage Usage
----- -----
Maintains a list of words that the bot is not allowed to say. Maintains a list of words that the bot is not allowed to say.
Can also be used to kick people that say these words, if the bot Can also be used to kick people that say these words, if the bot
has op. has op.
@ -22,7 +20,6 @@ has op.
Commands Commands
-------- --------
.. _command-badwords-add: .. _command-badwords-add:
add <word> [<word> ...] add <word> [<word> ...]
@ -47,7 +44,7 @@ Configuration
supybot.plugins.BadWords.kick supybot.plugins.BadWords.kick
This config variable defaults to "False", is network-specific, and is channel-specific. This config variable defaults to "False", is network-specific, and is channel-specific.
Determines whether the bot will kick people with a warning when they use bad words. Determines whether the bot will kick people with a warning when they use bad words.
@ -55,7 +52,7 @@ supybot.plugins.BadWords.kick
supybot.plugins.BadWords.kick.message supybot.plugins.BadWords.kick.message
This config variable defaults to "You have been kicked for using a word prohibited in the presence of this bot. Please use more appropriate language in the future.", is network-specific, and is channel-specific. This config variable defaults to "You have been kicked for using a word prohibited in the presence of this bot. Please use more appropriate language in the future.", is network-specific, and is channel-specific.
Determines the kick message used by the bot when kicking users for saying bad words. Determines the kick message used by the bot when kicking users for saying bad words.
@ -63,7 +60,7 @@ supybot.plugins.BadWords.kick
supybot.plugins.BadWords.nastyChars supybot.plugins.BadWords.nastyChars
This config variable defaults to "!@#&", is not network-specific, and is not channel-specific. This config variable defaults to "!@#&", is not network-specific, and is not channel-specific.
Determines what characters will replace bad words; a chunk of these characters matching the size of the replaced bad word will be used to replace the bad words you've configured. Determines what characters will replace bad words; a chunk of these characters matching the size of the replaced bad word will be used to replace the bad words you've configured.
@ -71,7 +68,7 @@ supybot.plugins.BadWords.nastyChars
supybot.plugins.BadWords.phrases supybot.plugins.BadWords.phrases
This config variable defaults to " ", is not network-specific, and is not channel-specific. This config variable defaults to " ", is not network-specific, and is not channel-specific.
Comma-separated groups of words that are considered to be 'bad'. Comma-separated groups of words that are considered to be 'bad'.
@ -79,7 +76,7 @@ supybot.plugins.BadWords.phrases
supybot.plugins.BadWords.public supybot.plugins.BadWords.public
This config variable defaults to "True", is not network-specific, and is not channel-specific. This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether this plugin is publicly visible. Determines whether this plugin is publicly visible.
@ -87,7 +84,7 @@ supybot.plugins.BadWords.public
supybot.plugins.BadWords.replaceMethod supybot.plugins.BadWords.replaceMethod
This config variable defaults to "nastyCharacters", is not network-specific, and is not channel-specific. This config variable defaults to "nastyCharacters", is not network-specific, and is not channel-specific.
Determines the manner in which bad words will be replaced. 'nastyCharacters' (the default) will replace a bad word with the same number of 'nasty characters' (like those used in comic books; configurable by supybot.plugins.BadWords.nastyChars). 'simple' will replace a bad word with a simple strings (regardless of the length of the bad word); this string is configurable via supybot.plugins.BadWords.simpleReplacement. Valid strings: simple and nastyCharacters. Determines the manner in which bad words will be replaced. 'nastyCharacters' (the default) will replace a bad word with the same number of 'nasty characters' (like those used in comic books; configurable by supybot.plugins.BadWords.nastyChars). 'simple' will replace a bad word with a simple strings (regardless of the length of the bad word); this string is configurable via supybot.plugins.BadWords.simpleReplacement. Valid strings: simple and nastyCharacters.
@ -95,23 +92,15 @@ supybot.plugins.BadWords.replaceMethod
supybot.plugins.BadWords.requireWordBoundaries supybot.plugins.BadWords.requireWordBoundaries
This config variable defaults to "False", is network-specific, and is channel-specific. This config variable defaults to "False", is network-specific, and is channel-specific.
Determines whether the bot will require bad words to be independent words, or whether it will censor them within other words. For instance, if 'darn' is a bad word, then if this is true, 'darn' will be censored, but 'darnit' will not. You probably want this to be false. After changing this setting, the BadWords regexp needs to be regenerated by adding/removing a word to the list, or reloading the plugin. Determines whether the bot will require bad words to be independent words, or whether it will censor them within other words. For instance, if 'darn' is a bad word, then if this is true, 'darn' will be censored, but 'darnit' will not. You probably want this to be false. After changing this setting, the BadWords regexp needs to be regenerated by adding/removing a word to the list, or reloading the plugin.
.. _conf-supybot.plugins.BadWords.selfCensor:
supybot.plugins.BadWords.selfCensor
This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether the bot will filter its own messages.
.. _conf-supybot.plugins.BadWords.simpleReplacement: .. _conf-supybot.plugins.BadWords.simpleReplacement:
supybot.plugins.BadWords.simpleReplacement supybot.plugins.BadWords.simpleReplacement
This config variable defaults to "[CENSORED]", is not network-specific, and is not channel-specific. This config variable defaults to "[CENSORED]", is not network-specific, and is not channel-specific.
Determines what word will replace bad words if the replacement method is 'simple'. Determines what word will replace bad words if the replacement method is 'simple'.
@ -119,7 +108,7 @@ supybot.plugins.BadWords.simpleReplacement
supybot.plugins.BadWords.stripFormatting supybot.plugins.BadWords.stripFormatting
This config variable defaults to "True", is not network-specific, and is not channel-specific. This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether the bot will strip formatting characters from messages before it checks them for bad words. If this is False, it will be relatively trivial to circumvent this plugin's filtering. If it's True, however, it will interact poorly with other plugins that do coloring or bolding of text. Determines whether the bot will strip formatting characters from messages before it checks them for bad words. If this is False, it will be relatively trivial to circumvent this plugin's filtering. If it's True, however, it will interact poorly with other plugins that do coloring or bolding of text.
@ -127,7 +116,7 @@ supybot.plugins.BadWords.stripFormatting
supybot.plugins.BadWords.words supybot.plugins.BadWords.words
This config variable defaults to " ", is not network-specific, and is not channel-specific. This config variable defaults to " ", is not network-specific, and is not channel-specific.
Determines what words are considered to be 'bad' so the bot won't say them. Determines what words are considered to be 'bad' so the bot won't say them.

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2005, Jeremiah Fincher # Copyright (c) 2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2005, Jeremiah Fincher # Copyright (c) 2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@ -85,7 +84,7 @@ class String256(registry.String):
return s * (1024//len(s)) return s * (1024//len(s))
def __str__(self): def __str__(self):
return self() return self.value
conf.registerGlobalValue(BadWords, 'nastyChars', conf.registerGlobalValue(BadWords, 'nastyChars',
String256('!@#&', _("""Determines what characters will replace bad words; a String256('!@#&', _("""Determines what characters will replace bad words; a
@ -113,9 +112,6 @@ conf.registerGlobalValue(BadWords, 'stripFormatting',
filtering. If it's True, however, it will interact poorly with other filtering. If it's True, however, it will interact poorly with other
plugins that do coloring or bolding of text."""))) plugins that do coloring or bolding of text.""")))
conf.registerChannelValue(BadWords, 'selfCensor',
registry.Boolean(True, _("""Determines whether the bot will filter its own
messages.""")))
conf.registerChannelValue(BadWords, 'kick', conf.registerChannelValue(BadWords, 'kick',
registry.Boolean(False, _("""Determines whether the bot will kick people with registry.Boolean(False, _("""Determines whether the bot will kick people with
a warning when they use bad words."""))) a warning when they use bad words.""")))

View File

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Supybot BadWords\n" "Project-Id-Version: Supybot BadWords\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n" "Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n" "Language-Team: \n"
@ -16,15 +16,15 @@ msgstr ""
"X-Poedit-Language: Finnish\n" "X-Poedit-Language: Finnish\n"
"X-Poedit-Country: FINLAND\n" "X-Poedit-Country: FINLAND\n"
#: config.py:43 #: config.py:40
msgid "Would you like to add some bad words?" msgid "Would you like to add some bad words?"
msgstr "Haluaisitko lisätä joitakin pahoja sanoja?" msgstr "Haluaisitko lisätä joitakin pahoja sanoja?"
#: config.py:44 #: config.py:41
msgid "What words? (separate individual words by spaces)" msgid "What words? (separate individual words by spaces)"
msgstr "Mitkä sanat? (Rajoita erilliset sanat käyttämällä välilyöntiä)." msgstr "Mitkä sanat? (Rajoita erilliset sanat käyttämällä välilyöntiä)."
#: config.py:68 #: config.py:53
msgid "" msgid ""
"Determines what words are\n" "Determines what words are\n"
" considered to be 'bad' so the bot won't say them." " considered to be 'bad' so the bot won't say them."
@ -32,71 +32,53 @@ msgstr ""
"Määrittää mitkä sanat ovat\n" "Määrittää mitkä sanat ovat\n"
" 'pahoja', jottei botti sano niitä." " 'pahoja', jottei botti sano niitä."
#: config.py:71 #: config.py:56
msgid "" msgid ""
"Determines whether the bot will require bad\n" "Determines whether the bot will require bad\n"
" words to be independent words, or whether it will censor them within " " words to be independent words, or whether it will censor them within other\n"
"other\n" " words. For instance, if 'darn' is a bad word, then if this is true, 'darn'\n"
" words. For instance, if 'darn' is a bad word, then if this is true, "
"'darn'\n"
" will be censored, but 'darnit' will not. You probably want this to be\n" " will be censored, but 'darnit' will not. You probably want this to be\n"
" false. After changing this setting, the BadWords regexp needs to be\n" " false. After changing this setting, the BadWords regexp needs to be\n"
" regenerated by adding/removing a word to the list, or reloading the\n" " regenerated by adding/removing a word to the list, or reloading the\n"
" plugin." " plugin."
msgstr "" msgstr ""
"Määrittää vaatiiko botti pahojen sanojen\n" "Määrittää vaatiiko botti pahojen sanojen\n"
" olevan toisistaan riippumattomia sanoja, vai sensuroiko se ne toisten " " olevan toisistaan riippumattomia sanoja, vai sensuroiko se ne toisten sanojen\n"
"sanojen\n" " sisältä. Esimerkiksi, jos 'pah' on paha sana, ja jos tämä on asetus on true, 'pah'\n"
" sisältä. Esimerkiksi, jos 'pah' on paha sana, ja jos tämä on asetus on " " sensuroidaan, mutta 'pahus' ei sensuroida. Sinä luultavasti tahdot pitää tämän\n"
"true, 'pah'\n" " false:na. Tämän asetuksen muuttamisen jälkeen, BadWords säännöllinen lauseke täytyy\n"
" sensuroidaan, mutta 'pahus' ei sensuroida. Sinä luultavasti tahdot " " luoda uudelleen lisäämällä/poistamalla sana listalta, tai lataamalla lisäosa \n"
"pitää tämän\n"
" false:na. Tämän asetuksen muuttamisen jälkeen, BadWords säännöllinen "
"lauseke täytyy\n"
" luoda uudelleen lisäämällä/poistamalla sana listalta, tai lataamalla "
"lisäosa \n"
" uudelleen." " uudelleen."
#: config.py:79 #: config.py:73
msgid ""
"Comma-separated groups\n"
" of words that are considered to be 'bad'."
msgstr ""
#: config.py:91
msgid "" msgid ""
"Determines what characters will replace bad words; a\n" "Determines what characters will replace bad words; a\n"
" chunk of these characters matching the size of the replaced bad word " " chunk of these characters matching the size of the replaced bad word will\n"
"will\n"
" be used to replace the bad words you've configured." " be used to replace the bad words you've configured."
msgstr "" msgstr ""
"Määrittä mitkä merkit korvaavat pahat sanat; \n" "Määrittä mitkä merkit korvaavat pahat sanat; \n"
" osia näistä merkeistä, jotka sopivat pahan sanan kokoon,\n" " osia näistä merkeistä, jotka sopivat pahan sanan kokoon,\n"
" käytetään määrittämiesi pahojen sanojen korvaamisessa." " käytetään määrittämiesi pahojen sanojen korvaamisessa."
#: config.py:99 #: config.py:81
msgid "" msgid ""
"Determines the manner in which\n" "Determines the manner in which\n"
" bad words will be replaced. 'nastyCharacters' (the default) will " " bad words will be replaced. 'nastyCharacters' (the default) will replace a\n"
"replace a\n"
" bad word with the same number of 'nasty characters' (like those used in\n" " bad word with the same number of 'nasty characters' (like those used in\n"
" comic books; configurable by supybot.plugins.BadWords.nastyChars).\n" " comic books; configurable by supybot.plugins.BadWords.nastyChars).\n"
" 'simple' will replace a bad word with a simple strings (regardless of " " 'simple' will replace a bad word with a simple strings (regardless of the\n"
"the\n"
" length of the bad word); this string is configurable via\n" " length of the bad word); this string is configurable via\n"
" supybot.plugins.BadWords.simpleReplacement." " supybot.plugins.BadWords.simpleReplacement."
msgstr "" msgstr ""
"Määrittää millä tavalla\n" "Määrittää millä tavalla\n"
" pahat sanat korvataan. 'nastyCharacters' (oletus) korvaa\n" " pahat sanat korvataan. 'nastyCharacters' (oletus) korvaa\n"
" pahan sanan samalla määrällä 'häijyjä merkkejä' (kuten ne jotka ovat\n" " pahan sanan samalla määrällä 'häijyjä merkkejä' (kuten ne jotka ovat\n"
" sarjakuvissa; muokattavissa supybot.plugins.BadWords.nastyChars " " sarjakuvissa; muokattavissa supybot.plugins.BadWords.nastyChars asetuksella).\n"
"asetuksella).\n" " 'simple' korvaa pahan sanan yksinkertaisella merkkiketjulla (riippumatta\n"
" 'simple' korvaa pahan sanan yksinkertaisella merkkiketjulla "
"(riippumatta\n"
" pahan sanan koosta); tämä merkkiketju on muokattavissa\n" " pahan sanan koosta); tämä merkkiketju on muokattavissa\n"
" asetuksella supybot.plugins.BadWords.simpleReplacement." " asetuksella supybot.plugins.BadWords.simpleReplacement."
#: config.py:107 #: config.py:89
msgid "" msgid ""
"Determines what word will replace bad\n" "Determines what word will replace bad\n"
" words if the replacement method is 'simple'." " words if the replacement method is 'simple'."
@ -104,24 +86,21 @@ msgstr ""
"Määrittää mikä sana korvaa pahat\n" "Määrittää mikä sana korvaa pahat\n"
" sanat jos korvausmenetelmä on 'simple'." " sanat jos korvausmenetelmä on 'simple'."
#: config.py:110 #: config.py:92
msgid "" msgid ""
"Determines whether the bot will strip\n" "Determines whether the bot will strip\n"
" formatting characters from messages before it checks them for bad " " formatting characters from messages before it checks them for bad words.\n"
"words.\n" " If this is False, it will be relatively trivial to circumvent this plugin's\n"
" If this is False, it will be relatively trivial to circumvent this "
"plugin's\n"
" filtering. If it's True, however, it will interact poorly with other\n" " filtering. If it's True, however, it will interact poorly with other\n"
" plugins that do coloring or bolding of text." " plugins that do coloring or bolding of text."
msgstr "" msgstr ""
"Määrittää riisuuko botti\n" "Määrittää riisuuko botti\n"
" muotoilun merkeistä ennen kuin se tarkistaa ne pahojen sanojen varalta.\n" " muotoilun merkeistä ennen kuin se tarkistaa ne pahojen sanojen varalta.\n"
" Jos tämä on 'False', on hyvin pinnallista kiertää tämän lisäosan\n" " Jos tämä on 'False', on hyvin pinnallista kiertää tämän lisäosan\n"
" suodatusta. Jos se kuitenkin on 'True', se on huonosti " " suodatusta. Jos se kuitenkin on 'True', se on huonosti vuorovaikutuksessa\n"
"vuorovaikutuksessa\n"
" tekstin värittämistä tai korostamista tekevien lisäosien kanssa." " tekstin värittämistä tai korostamista tekevien lisäosien kanssa."
#: config.py:117 #: config.py:99
msgid "" msgid ""
"Determines whether the bot will kick people with\n" "Determines whether the bot will kick people with\n"
" a warning when they use bad words." " a warning when they use bad words."
@ -129,7 +108,7 @@ msgstr ""
"Määrittää potkiiko botti ihmiset\n" "Määrittää potkiiko botti ihmiset\n"
" varoituksella jos he käyttävät pahoja sanoja." " varoituksella jos he käyttävät pahoja sanoja."
#: config.py:120 #: config.py:102
msgid "" msgid ""
"You have been kicked for using a word\n" "You have been kicked for using a word\n"
" prohibited in the presence of this bot. Please use more appropriate\n" " prohibited in the presence of this bot. Please use more appropriate\n"
@ -139,7 +118,7 @@ msgstr ""
" käytöstä tämän botin läsnäollessa. Ole hyvä ja käytä asianmukaisempaa\n" " käytöstä tämän botin läsnäollessa. Ole hyvä ja käytä asianmukaisempaa\n"
" kieltä tulevaisuudessa." " kieltä tulevaisuudessa."
#: config.py:122 #: config.py:104
msgid "" msgid ""
"Determines the kick message used by the\n" "Determines the kick message used by the\n"
" bot when kicking users for saying bad words." " bot when kicking users for saying bad words."
@ -154,11 +133,10 @@ msgid ""
" has op." " has op."
msgstr "" msgstr ""
"Säilyttää listaa sanoista, joita botin ei ole sallittua sanoa.\n" "Säilyttää listaa sanoista, joita botin ei ole sallittua sanoa.\n"
" Voidaan myös käyttää potkimaan ihmisiä, jotka sanovat näitä sanoja, jos " " Voidaan myös käyttää potkimaan ihmisiä, jotka sanovat näitä sanoja, jos botilla\n"
"botilla\n"
" on opit." " on opit."
#: plugin.py:127 #: plugin.py:113
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -170,11 +148,11 @@ msgstr ""
" Palauttaa listan sanoista, joita sensuroidaan.\n" " Palauttaa listan sanoista, joita sensuroidaan.\n"
" " " "
#: plugin.py:137 #: plugin.py:123
msgid "I'm not currently censoring any bad words." msgid "I'm not currently censoring any bad words."
msgstr "En ole sensuroimassa yhtään pahaa sanaa juuri nyt." msgstr "En ole sensuroimassa yhtään pahaa sanaa juuri nyt."
#: plugin.py:142 #: plugin.py:128
msgid "" msgid ""
"<word> [<word> ...]\n" "<word> [<word> ...]\n"
"\n" "\n"
@ -186,7 +164,7 @@ msgstr ""
" Lisää kaikki <sana>(t) sensuroitaviin sanoihin.\n" " Lisää kaikki <sana>(t) sensuroitaviin sanoihin.\n"
" " " "
#: plugin.py:162 #: plugin.py:140
msgid "" msgid ""
"<word> [<word> ...]\n" "<word> [<word> ...]\n"
"\n" "\n"

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n" "Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n" "Language-Team: Limnoria <progval@gmail.com>\n"
@ -13,124 +13,82 @@ msgstr ""
"X-Poedit-Country: France\n" "X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n" "X-Poedit-SourceCharset: ASCII\n"
#: config.py:43 #: config.py:40
msgid "Would you like to add some bad words?" msgid "Would you like to add some bad words?"
msgstr "Voulez-vous ajouter quelques mots interdits ?" msgstr "Voulez-vous ajouter quelques mots interdits ?"
#: config.py:44 #: config.py:41
msgid "What words? (separate individual words by spaces)" msgid "What words? (separate individual words by spaces)"
msgstr "Quels mots ? (séparez chaque mot par un espace)" msgstr "Quels mots ? (séparez chaque mot par un espace)"
#: config.py:68 #: config.py:53
msgid "" msgid ""
"Determines what words are\n" "Determines what words are\n"
" considered to be 'bad' so the bot won't say them." " considered to be 'bad' so the bot won't say them."
msgstr "" msgstr "Détermine quels mots sont considérés comme interdits, donc le bot ne les dira pas."
"Détermine quels mots sont considérés comme interdits, donc le bot ne les "
"dira pas."
#: config.py:71 #: config.py:56
msgid "" msgid ""
"Determines whether the bot will require bad\n" "Determines whether the bot will require bad\n"
" words to be independent words, or whether it will censor them within " " words to be independent words, or whether it will censor them within other\n"
"other\n" " words. For instance, if 'darn' is a bad word, then if this is true, 'darn'\n"
" words. For instance, if 'darn' is a bad word, then if this is true, "
"'darn'\n"
" will be censored, but 'darnit' will not. You probably want this to be\n" " will be censored, but 'darnit' will not. You probably want this to be\n"
" false. After changing this setting, the BadWords regexp needs to be\n" " false. After changing this setting, the BadWords regexp needs to be\n"
" regenerated by adding/removing a word to the list, or reloading the\n" " regenerated by adding/removing a word to the list, or reloading the\n"
" plugin." " plugin."
msgstr "" msgstr "Détermine si le bot requiert que les gros mots soient indépendants, ou si ils peuvent être dans d'autres mots. Par exemple, si 'merde' est censuré et que c'est True, 'merde' sera censuré, mais pas 'emmerder'. Il est probablement mieux que ceci soit False. Après avoir modifié ce paramètre, l'expression régulière de BadWords doit être regénérée en ajoutant/supprimant un mot de la liste, ou en rechargeant le plugin."
"Détermine si le bot requiert que les gros mots soient indépendants, ou si "
"ils peuvent être dans d'autres mots. Par exemple, si 'merde' est censuré et "
"que c'est True, 'merde' sera censuré, mais pas 'emmerder'. Il est "
"probablement mieux que ceci soit False. Après avoir modifié ce paramètre, "
"l'expression régulière de BadWords doit être regénérée en ajoutant/"
"supprimant un mot de la liste, ou en rechargeant le plugin."
#: config.py:79 #: config.py:73
msgid ""
"Comma-separated groups\n"
" of words that are considered to be 'bad'."
msgstr ""
#: config.py:91
msgid "" msgid ""
"Determines what characters will replace bad words; a\n" "Determines what characters will replace bad words; a\n"
" chunk of these characters matching the size of the replaced bad word " " chunk of these characters matching the size of the replaced bad word will\n"
"will\n"
" be used to replace the bad words you've configured." " be used to replace the bad words you've configured."
msgstr "" msgstr "Détermine par quels caractères seront remplacés les gros mots ; un morceau de ces caractères ayant la même taille que le mot remplacé sera utilisé pour remplacer les gros mots que vous avez configurés."
"Détermine par quels caractères seront remplacés les gros mots ; un morceau "
"de ces caractères ayant la même taille que le mot remplacé sera utilisé pour "
"remplacer les gros mots que vous avez configurés."
#: config.py:99 #: config.py:81
msgid "" msgid ""
"Determines the manner in which\n" "Determines the manner in which\n"
" bad words will be replaced. 'nastyCharacters' (the default) will " " bad words will be replaced. 'nastyCharacters' (the default) will replace a\n"
"replace a\n"
" bad word with the same number of 'nasty characters' (like those used in\n" " bad word with the same number of 'nasty characters' (like those used in\n"
" comic books; configurable by supybot.plugins.BadWords.nastyChars).\n" " comic books; configurable by supybot.plugins.BadWords.nastyChars).\n"
" 'simple' will replace a bad word with a simple strings (regardless of " " 'simple' will replace a bad word with a simple strings (regardless of the\n"
"the\n"
" length of the bad word); this string is configurable via\n" " length of the bad word); this string is configurable via\n"
" supybot.plugins.BadWords.simpleReplacement." " supybot.plugins.BadWords.simpleReplacement."
msgstr "" msgstr "Détermine la manière dont les gros mots sont remplacés. 'nastyCharacters' (par défaut) remplacera un gros mot par le même nombre de 'caractères obscènes' (comme ceux utilisés dans les bandes dessinées ; configurables dans supybot.plugins.BadWords.nastyChars). 'simple' remplacera le mot pas une simple chaîne (peu importe la taille du gros mot) ; cette chaîne est configurable dans supybot.plugins.BadWords.simpleReplacement."
"Détermine la manière dont les gros mots sont remplacés. "
"'nastyCharacters' (par défaut) remplacera un gros mot par le même nombre de "
"'caractères obscènes' (comme ceux utilisés dans les bandes dessinées ; "
"configurables dans supybot.plugins.BadWords.nastyChars). 'simple' remplacera "
"le mot pas une simple chaîne (peu importe la taille du gros mot) ; cette "
"chaîne est configurable dans supybot.plugins.BadWords.simpleReplacement."
#: config.py:107 #: config.py:89
msgid "" msgid ""
"Determines what word will replace bad\n" "Determines what word will replace bad\n"
" words if the replacement method is 'simple'." " words if the replacement method is 'simple'."
msgstr "" msgstr "Détermin quel mot remplacera les mots interdits, si la méthode de remplacement est 'simple'."
"Détermin quel mot remplacera les mots interdits, si la méthode de "
"remplacement est 'simple'."
#: config.py:110 #: config.py:92
msgid "" msgid ""
"Determines whether the bot will strip\n" "Determines whether the bot will strip\n"
" formatting characters from messages before it checks them for bad " " formatting characters from messages before it checks them for bad words.\n"
"words.\n" " If this is False, it will be relatively trivial to circumvent this plugin's\n"
" If this is False, it will be relatively trivial to circumvent this "
"plugin's\n"
" filtering. If it's True, however, it will interact poorly with other\n" " filtering. If it's True, however, it will interact poorly with other\n"
" plugins that do coloring or bolding of text." " plugins that do coloring or bolding of text."
msgstr "" msgstr "Détermine si le bot retirera les caractères de formattage avant de vérifier qu'ils contiennent des gros mots. Si ceci est False, ce sera relativement simple de contourner la protection. Si c'est True, toutefois, il fera perdre toute couleur ou formattage des autres plugins"
"Détermine si le bot retirera les caractères de formattage avant de vérifier "
"qu'ils contiennent des gros mots. Si ceci est False, ce sera relativement "
"simple de contourner la protection. Si c'est True, toutefois, il fera perdre "
"toute couleur ou formattage des autres plugins"
#: config.py:117 #: config.py:99
msgid "" msgid ""
"Determines whether the bot will kick people with\n" "Determines whether the bot will kick people with\n"
" a warning when they use bad words." " a warning when they use bad words."
msgstr "" msgstr "Détermine si le bot kickera les gens avec un avertissement lorsqu'ils utilisent des gros mots."
"Détermine si le bot kickera les gens avec un avertissement lorsqu'ils "
"utilisent des gros mots."
#: config.py:120 #: config.py:102
msgid "" msgid ""
"You have been kicked for using a word\n" "You have been kicked for using a word\n"
" prohibited in the presence of this bot. Please use more appropriate\n" " prohibited in the presence of this bot. Please use more appropriate\n"
" language in the future." " language in the future."
msgstr "" msgstr "Vous avez été kické(e) parce que vous avez utilisé un mot interdit en la présence de ce bot. Veuillez utiliser un langage plus approprié par le futur."
"Vous avez été kické(e) parce que vous avez utilisé un mot interdit en la "
"présence de ce bot. Veuillez utiliser un langage plus approprié par le futur."
#: config.py:122 #: config.py:104
msgid "" msgid ""
"Determines the kick message used by the\n" "Determines the kick message used by the\n"
" bot when kicking users for saying bad words." " bot when kicking users for saying bad words."
msgstr "" msgstr "Détermine le message de kick utilisé par le bot lorsqu'il kick des utilisateurs utilisant des gros mots."
"Détermine le message de kick utilisé par le bot lorsqu'il kick des "
"utilisateurs utilisant des gros mots."
#: plugin.py:46 #: plugin.py:46
msgid "" msgid ""
@ -139,7 +97,7 @@ msgid ""
" has op." " has op."
msgstr "" msgstr ""
#: plugin.py:127 #: plugin.py:113
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -150,11 +108,11 @@ msgstr ""
"\n" "\n"
"Retourne une liste de mots qui sont censurés." "Retourne une liste de mots qui sont censurés."
#: plugin.py:137 #: plugin.py:123
msgid "I'm not currently censoring any bad words." msgid "I'm not currently censoring any bad words."
msgstr "Je ne censure actuellement aucun mot." msgstr "Je ne censure actuellement aucun mot."
#: plugin.py:142 #: plugin.py:128
msgid "" msgid ""
"<word> [<word> ...]\n" "<word> [<word> ...]\n"
"\n" "\n"
@ -165,7 +123,7 @@ msgstr ""
"\n" "\n"
"Ajoute tous les mots à la liste des mots que le bot ne doit pas dire." "Ajoute tous les mots à la liste des mots que le bot ne doit pas dire."
#: plugin.py:162 #: plugin.py:140
msgid "" msgid ""
"<word> [<word> ...]\n" "<word> [<word> ...]\n"
"\n" "\n"
@ -175,3 +133,4 @@ msgstr ""
"<mot> [<mot> ...]\n" "<mot> [<mot> ...]\n"
"\n" "\n"
"Retire les <mot>s de la liste des mots que le bot ne doit pas dire." "Retire les <mot>s de la liste des mots que le bot ne doit pas dire."

View File

@ -1,7 +1,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Limnoria\n" "Project-Id-Version: Limnoria\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2011-02-26 09:49+CET\n"
"PO-Revision-Date: 2011-06-28 23:29+0200\n" "PO-Revision-Date: 2011-06-28 23:29+0200\n"
"Last-Translator: skizzhg <skizzhg@gmx.com>\n" "Last-Translator: skizzhg <skizzhg@gmx.com>\n"
"Language-Team: Italian <skizzhg@gmx.com>\n" "Language-Team: Italian <skizzhg@gmx.com>\n"
@ -10,121 +10,92 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: config.py:43
#: config.py:40
msgid "Would you like to add some bad words?" msgid "Would you like to add some bad words?"
msgstr "Vuoi aggiungere delle parole volgari?" msgstr "Vuoi aggiungere delle parole volgari?"
#: config.py:44 #: config.py:41
msgid "What words? (separate individual words by spaces)" msgid "What words? (separate individual words by spaces)"
msgstr "Quali parole? (separa ciascuna con uno spazio)" msgstr "Quali parole? (separa ciascuna con uno spazio)"
#: config.py:68 #: config.py:53
msgid "" msgid ""
"Determines what words are\n" "Determines what words are\n"
" considered to be 'bad' so the bot won't say them." " considered to be 'bad' so the bot won't say them."
msgstr "" msgstr ""
"Determina quali parole sono considerate \"volgari\" per cui il bot non le " "Determina quali parole sono considerate \"volgari\" per cui il bot non le pronuncerà."
"pronuncerà."
#: config.py:71 #: config.py:56
msgid "" msgid ""
"Determines whether the bot will require bad\n" "Determines whether the bot will require bad\n"
" words to be independent words, or whether it will censor them within " " words to be independent words, or whether it will censor them within other\n"
"other\n" " words. For instance, if 'darn' is a bad word, then if this is true, 'darn'\n"
" words. For instance, if 'darn' is a bad word, then if this is true, "
"'darn'\n"
" will be censored, but 'darnit' will not. You probably want this to be\n" " will be censored, but 'darnit' will not. You probably want this to be\n"
" false. After changing this setting, the BadWords regexp needs to be\n" " false. After changing this setting, the BadWords regexp needs to be\n"
" regenerated by adding/removing a word to the list, or reloading the\n" " regenerated by adding/removing a word to the list, or reloading the\n"
" plugin." " plugin."
msgstr "" msgstr ""
"Determina se il bot richieda che le parole volgari siano indipendenti o " "Determina se il bot richieda che le parole volgari siano indipendenti o all'interno\n"
"all'interno\n" " di altre parole. Ad esempio, se \"merda\" è volgare e questa opzione è impostata\n"
" di altre parole. Ad esempio, se \"merda\" è volgare e questa opzione è " " a True, verrà censurata, ma \"merdata\" non lo sarà; probabilmente si preferisce\n"
"impostata\n" " che questa sia su False. Dopo aver modificato questa impostazione, la regexp di\n"
" a True, verrà censurata, ma \"merdata\" non lo sarà; probabilmente si " " BadWords deve essere rigenerata con l'aggiunta o la rimozione di una parola\n"
"preferisce\n"
" che questa sia su False. Dopo aver modificato questa impostazione, la "
"regexp di\n"
" BadWords deve essere rigenerata con l'aggiunta o la rimozione di una "
"parola\n"
" dall'elenco o ricaricando il plugin." " dall'elenco o ricaricando il plugin."
#: config.py:79 #: config.py:73
msgid ""
"Comma-separated groups\n"
" of words that are considered to be 'bad'."
msgstr ""
#: config.py:91
msgid "" msgid ""
"Determines what characters will replace bad words; a\n" "Determines what characters will replace bad words; a\n"
" chunk of these characters matching the size of the replaced bad word " " chunk of these characters matching the size of the replaced bad word will\n"
"will\n"
" be used to replace the bad words you've configured." " be used to replace the bad words you've configured."
msgstr "" msgstr ""
"Determina quali caratteri sostituiranno le parole volgari, verranno " "Determina quali caratteri sostituiranno le parole volgari, verranno utilizzati\n"
"utilizzati\n"
" rimpiazzando la parola da censurare in tutta la sua lunghezza." " rimpiazzando la parola da censurare in tutta la sua lunghezza."
#: config.py:99 #: config.py:81
msgid "" msgid ""
"Determines the manner in which\n" "Determines the manner in which\n"
" bad words will be replaced. 'nastyCharacters' (the default) will " " bad words will be replaced. 'nastyCharacters' (the default) will replace a\n"
"replace a\n"
" bad word with the same number of 'nasty characters' (like those used in\n" " bad word with the same number of 'nasty characters' (like those used in\n"
" comic books; configurable by supybot.plugins.BadWords.nastyChars).\n" " comic books; configurable by supybot.plugins.BadWords.nastyChars).\n"
" 'simple' will replace a bad word with a simple strings (regardless of " " 'simple' will replace a bad word with a simple strings (regardless of the\n"
"the\n"
" length of the bad word); this string is configurable via\n" " length of the bad word); this string is configurable via\n"
" supybot.plugins.BadWords.simpleReplacement." " supybot.plugins.BadWords.simpleReplacement."
msgstr "" msgstr ""
"Determina come verranno sostituite le parole volgari. \"nastyCharacters" "Determina come verranno sostituite le parole volgari. \"nastyCharacters\" (predefinito)\n"
"\" (predefinito)\n" " rimpiazzerà la parola con lo stesso numero di \"brutti caratteri\" (come quelli usati\n"
" rimpiazzerà la parola con lo stesso numero di \"brutti caratteri\" (come " " nei fumetti; configurabile da supybot.plugins.BadWords.nastyChars). \"simple\" sostituirà\n"
"quelli usati\n" " una parola volgare con una stringa semplice (indipendentemente dalla lunghezza della parola);\n"
" nei fumetti; configurabile da supybot.plugins.BadWords.nastyChars). " " questa stringa è configurabile tramite supybot.plugins.BadWords.simpleReplacement."
"\"simple\" sostituirà\n"
" una parola volgare con una stringa semplice (indipendentemente dalla "
"lunghezza della parola);\n"
" questa stringa è configurabile tramite supybot.plugins.BadWords."
"simpleReplacement."
#: config.py:107 #: config.py:89
msgid "" msgid ""
"Determines what word will replace bad\n" "Determines what word will replace bad\n"
" words if the replacement method is 'simple'." " words if the replacement method is 'simple'."
msgstr "" msgstr ""
"Determina quale parola sostituirà quelle volgari se viene usato il metodo " "Determina quale parola sostituirà quelle volgari se viene usato il metodo \"simple\"."
"\"simple\"."
#: config.py:110 #: config.py:92
msgid "" msgid ""
"Determines whether the bot will strip\n" "Determines whether the bot will strip\n"
" formatting characters from messages before it checks them for bad " " formatting characters from messages before it checks them for bad words.\n"
"words.\n" " If this is False, it will be relatively trivial to circumvent this plugin's\n"
" If this is False, it will be relatively trivial to circumvent this "
"plugin's\n"
" filtering. If it's True, however, it will interact poorly with other\n" " filtering. If it's True, however, it will interact poorly with other\n"
" plugins that do coloring or bolding of text." " plugins that do coloring or bolding of text."
msgstr "" msgstr ""
"Determina se il bot rimuoverà i caratteri di formattazione prima di " "Determina se il bot rimuoverà i caratteri di formattazione prima di controllare\n"
"controllare\n" " che contengano parole volgari. Se impostato a False sarà relativamente facile\n"
" che contengano parole volgari. Se impostato a False sarà relativamente " " aggirare i filtri di questo plugin; tuttavia se impostato a True non interagirà\n"
"facile\n"
" aggirare i filtri di questo plugin; tuttavia se impostato a True non "
"interagirà\n"
" con altri plugin che colorano o rendono il testo grassetto." " con altri plugin che colorano o rendono il testo grassetto."
#: config.py:117 #: config.py:99
msgid "" msgid ""
"Determines whether the bot will kick people with\n" "Determines whether the bot will kick people with\n"
" a warning when they use bad words." " a warning when they use bad words."
msgstr "" msgstr ""
"Determina se il bot caccerà (kick) gli utenti con un avvertimento quando " "Determina se il bot caccerà (kick) gli utenti con un avvertimento quando usano volgarità."
"usano volgarità."
#: config.py:120 #: config.py:102
msgid "" msgid ""
"You have been kicked for using a word\n" "You have been kicked for using a word\n"
" prohibited in the presence of this bot. Please use more appropriate\n" " prohibited in the presence of this bot. Please use more appropriate\n"
@ -133,15 +104,15 @@ msgstr ""
"Sei stato/a cacciato/a per aver usato parole proibite in presenza del bot.\n" "Sei stato/a cacciato/a per aver usato parole proibite in presenza del bot.\n"
" In futuro utilizza un linguaggio più appropriato." " In futuro utilizza un linguaggio più appropriato."
#: config.py:122 #: config.py:104
msgid "" msgid ""
"Determines the kick message used by the\n" "Determines the kick message used by the\n"
" bot when kicking users for saying bad words." " bot when kicking users for saying bad words."
msgstr "" msgstr ""
"Determina il messaggio del kick utilizzato dal bot per espellere gli utenti " "Determina il messaggio del kick utilizzato dal bot per espellere gli utenti che scrivono volgarità."
"che scrivono volgarità."
#: plugin.py:46 #: plugin.py:46
#, docstring
msgid "" msgid ""
"Maintains a list of words that the bot is not allowed to say.\n" "Maintains a list of words that the bot is not allowed to say.\n"
" Can also be used to kick people that say these words, if the bot\n" " Can also be used to kick people that say these words, if the bot\n"
@ -151,7 +122,8 @@ msgstr ""
" Se il bot ha lo stato di operatore, può essere anche utilizzato\n" " Se il bot ha lo stato di operatore, può essere anche utilizzato\n"
" per cacciare (kick) utenti che scrivono queste parole." " per cacciare (kick) utenti che scrivono queste parole."
#: plugin.py:127 #: plugin.py:113
#, docstring
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
"\n" "\n"
@ -163,11 +135,12 @@ msgstr ""
" Riporta l'elenco delle parole censurate.\n" " Riporta l'elenco delle parole censurate.\n"
" " " "
#: plugin.py:137 #: plugin.py:123
msgid "I'm not currently censoring any bad words." msgid "I'm not currently censoring any bad words."
msgstr "Al momento non ho alcuna parola censurata." msgstr "Al momento non ho alcuna parola censurata."
#: plugin.py:142 #: plugin.py:128
#, docstring
msgid "" msgid ""
"<word> [<word> ...]\n" "<word> [<word> ...]\n"
"\n" "\n"
@ -179,7 +152,8 @@ msgstr ""
" Aggiunge <parola> all'elenco di quelle da censurare.\n" " Aggiunge <parola> all'elenco di quelle da censurare.\n"
" " " "
#: plugin.py:162 #: plugin.py:140
#, docstring
msgid "" msgid ""
"<word> [<word> ...]\n" "<word> [<word> ...]\n"
"\n" "\n"
@ -190,3 +164,4 @@ msgstr ""
"\n" "\n"
" Rimuove <parola> dall'elenco di quelle da censurare.\n" " Rimuove <parola> dall'elenco di quelle da censurare.\n"
" " " "

View File

@ -5,31 +5,31 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2022-02-06 00:12+0100\n" "POT-Creation-Date: 2014-03-22 16:34+EET\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: config.py:43 #: config.py:42
msgid "Would you like to add some bad words?" msgid "Would you like to add some bad words?"
msgstr "" msgstr ""
#: config.py:44 #: config.py:43
msgid "What words? (separate individual words by spaces)" msgid "What words? (separate individual words by spaces)"
msgstr "" msgstr ""
#: config.py:68 #: config.py:55
msgid "" msgid ""
"Determines what words are\n" "Determines what words are\n"
" considered to be 'bad' so the bot won't say them." " considered to be 'bad' so the bot won't say them."
msgstr "" msgstr ""
#: config.py:71 #: config.py:58
msgid "" msgid ""
"Determines whether the bot will require bad\n" "Determines whether the bot will require bad\n"
" words to be independent words, or whether it will censor them within other\n" " words to be independent words, or whether it will censor them within other\n"
@ -40,20 +40,14 @@ msgid ""
" plugin." " plugin."
msgstr "" msgstr ""
#: config.py:79 #: config.py:75
msgid ""
"Comma-separated groups\n"
" of words that are considered to be 'bad'."
msgstr ""
#: config.py:91
msgid "" msgid ""
"Determines what characters will replace bad words; a\n" "Determines what characters will replace bad words; a\n"
" chunk of these characters matching the size of the replaced bad word will\n" " chunk of these characters matching the size of the replaced bad word will\n"
" be used to replace the bad words you've configured." " be used to replace the bad words you've configured."
msgstr "" msgstr ""
#: config.py:99 #: config.py:83
msgid "" msgid ""
"Determines the manner in which\n" "Determines the manner in which\n"
" bad words will be replaced. 'nastyCharacters' (the default) will replace a\n" " bad words will be replaced. 'nastyCharacters' (the default) will replace a\n"
@ -64,13 +58,13 @@ msgid ""
" supybot.plugins.BadWords.simpleReplacement." " supybot.plugins.BadWords.simpleReplacement."
msgstr "" msgstr ""
#: config.py:107 #: config.py:91
msgid "" msgid ""
"Determines what word will replace bad\n" "Determines what word will replace bad\n"
" words if the replacement method is 'simple'." " words if the replacement method is 'simple'."
msgstr "" msgstr ""
#: config.py:110 #: config.py:94
msgid "" msgid ""
"Determines whether the bot will strip\n" "Determines whether the bot will strip\n"
" formatting characters from messages before it checks them for bad words.\n" " formatting characters from messages before it checks them for bad words.\n"
@ -79,26 +73,20 @@ msgid ""
" plugins that do coloring or bolding of text." " plugins that do coloring or bolding of text."
msgstr "" msgstr ""
#: config.py:117 #: config.py:101
msgid ""
"Determines whether the bot will filter its own\n"
" messages."
msgstr ""
#: config.py:120
msgid "" msgid ""
"Determines whether the bot will kick people with\n" "Determines whether the bot will kick people with\n"
" a warning when they use bad words." " a warning when they use bad words."
msgstr "" msgstr ""
#: config.py:123 #: config.py:104
msgid "" msgid ""
"You have been kicked for using a word\n" "You have been kicked for using a word\n"
" prohibited in the presence of this bot. Please use more appropriate\n" " prohibited in the presence of this bot. Please use more appropriate\n"
" language in the future." " language in the future."
msgstr "" msgstr ""
#: config.py:125 #: config.py:106
msgid "" msgid ""
"Determines the kick message used by the\n" "Determines the kick message used by the\n"
" bot when kicking users for saying bad words." " bot when kicking users for saying bad words."
@ -112,7 +100,7 @@ msgid ""
" has op." " has op."
msgstr "" msgstr ""
#: plugin.py:127 #: plugin.py:115
#, docstring #, docstring
msgid "" msgid ""
"takes no arguments\n" "takes no arguments\n"
@ -121,11 +109,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:137 #: plugin.py:125
msgid "I'm not currently censoring any bad words." msgid "I'm not currently censoring any bad words."
msgstr "" msgstr ""
#: plugin.py:142 #: plugin.py:130
#, docstring #, docstring
msgid "" msgid ""
"<word> [<word> ...]\n" "<word> [<word> ...]\n"
@ -134,7 +122,7 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: plugin.py:162 #: plugin.py:142
#, docstring #, docstring
msgid "" msgid ""
"<word> [<word> ...]\n" "<word> [<word> ...]\n"

View File

@ -1,7 +1,6 @@
### ###
# Copyright (c) 2002-2004, Jeremiah Fincher # Copyright (c) 2002-2004, Jeremiah Fincher
# Copyright (c) 2009, James McCoy # Copyright (c) 2009, James McCoy
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@ -104,10 +103,9 @@ class BadWords(callbacks.Privmsg):
self.lastModified = time.time() self.lastModified = time.time()
def outFilter(self, irc, msg): def outFilter(self, irc, msg):
channel = msg.channel
if self.filtering and msg.command == 'PRIVMSG' \ if self.filtering and msg.command == 'PRIVMSG' \
and (self.words() or self.phrases()) \ and (self.words() or self.phrases()):
and self.registryValue('selfCensor', channel, irc.network): channel = msg.channel
self.updateRegexp(channel, irc.network) self.updateRegexp(channel, irc.network)
s = msg.args[1] s = msg.args[1]
if self.registryValue('stripFormatting'): if self.registryValue('stripFormatting'):

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2002-2004, Jeremiah Fincher # Copyright (c) 2002-2004, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -5,13 +5,11 @@ Documentation for the Channel plugin for Supybot
Purpose Purpose
------- -------
Basic channel management commands. Many of these commands require their caller Basic channel management commands. Many of these commands require their caller
to have the #channel,op capability. This plugin is loaded by default. to have the #channel,op capability. This plugin is loaded by default.
Usage Usage
----- -----
This plugin provides various commands for channel management, such This plugin provides various commands for channel management, such
as setting modes and channel-wide bans/ignores/capabilities. This is as setting modes and channel-wide bans/ignores/capabilities. This is
a core Supybot plugin that should not be removed! a core Supybot plugin that should not be removed!
@ -20,7 +18,6 @@ a core Supybot plugin that should not be removed!
Commands Commands
-------- --------
.. _command-channel-alert: .. _command-channel-alert:
alert [<channel>] <text> alert [<channel>] <text>
@ -114,7 +111,7 @@ halfop [<channel>] [<nick> ...]
.. _command-channel-iban: .. _command-channel-iban:
iban [<channel>] [--{exact,nick,user,host}] <nick> [<seconds>] iban [<channel>] [--{exact,nick,user,host}] <nick> [<seconds>]
If you have the #channel,op capability, this will ban <nick> for as many seconds as you specify, otherwise (if you specify 0 seconds or don't specify a number of seconds) it will ban the person indefinitely. --exact can be used to specify an exact hostmask. You can combine the --nick, --user, and --host options as you choose. <channel> is only necessary if the message isn't sent in the channel itself. If you have the #channel,op capability, this will ban <nick> for as many seconds as you specify, otherwise (if you specify 0 seconds or don't specify a number of seconds) it will ban the person indefinitely. --exact can be used to specify an exact hostmask. You can combine the exact, nick, user, and host options as you choose. <channel> is only necessary if the message isn't sent in the channel itself.
.. _command-channel-ignore.add: .. _command-channel-ignore.add:
@ -138,8 +135,8 @@ invite [<channel>] <nick>
.. _command-channel-kban: .. _command-channel-kban:
kban [<channel>] [--{exact,nick,user,host,account}] <nick> [<seconds>] [<reason>] kban [<channel>] [--{exact,nick,user,host}] <nick> [<seconds>] [<reason>]
If you have the #channel,op capability, this will kickban <nick> for as many seconds as you specify, or else (if you specify 0 seconds or don't specify a number of seconds) it will ban the person indefinitely. --exact bans only the exact hostmask; --nick bans just the nick; --user bans just the user, and --host bans just the host You can combine the --nick, --user, and --host options as you choose. <channel> is only necessary if the message isn't sent in the channel itself. If you have the #channel,op capability, this will kickban <nick> for as many seconds as you specify, or else (if you specify 0 seconds or don't specify a number of seconds) it will ban the person indefinitely. --exact bans only the exact hostmask; --nick bans just the nick; --user bans just the user, and --host bans just the host. You can combine these options as you choose. <reason> is a reason to give for the kick. <channel> is only necessary if the message isn't sent in the channel itself.
.. _command-channel-key: .. _command-channel-key:
@ -225,7 +222,7 @@ Configuration
supybot.plugins.Channel.alwaysRejoin supybot.plugins.Channel.alwaysRejoin
This config variable defaults to "True", is network-specific, and is channel-specific. This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether the bot will always try to rejoin a channel whenever it's kicked from the channel. Determines whether the bot will always try to rejoin a channel whenever it's kicked from the channel.
@ -233,7 +230,7 @@ supybot.plugins.Channel.alwaysRejoin
supybot.plugins.Channel.nicksInPrivate supybot.plugins.Channel.nicksInPrivate
This config variable defaults to "True", is network-specific, and is channel-specific. This config variable defaults to "True", is network-specific, and is channel-specific.
Determines whether the output of 'nicks' will be sent in private. This prevents mass-highlights of a channel's users, accidental or on purpose. Determines whether the output of 'nicks' will be sent in private. This prevents mass-highlights of a channel's users, accidental or on purpose.
@ -241,7 +238,7 @@ supybot.plugins.Channel.nicksInPrivate
supybot.plugins.Channel.partMsg supybot.plugins.Channel.partMsg
This config variable defaults to "Limnoria $version", is network-specific, and is channel-specific. This config variable defaults to "Limnoria $version", is network-specific, and is channel-specific.
Determines what part message should be used by default. If the part command is called without a part message, this will be used. If this value is empty, then no part message will be used (they are optional in the IRC protocol). The standard substitutions ($version, $nick, etc.) are all handled appropriately. Determines what part message should be used by default. If the part command is called without a part message, this will be used. If this value is empty, then no part message will be used (they are optional in the IRC protocol). The standard substitutions ($version, $nick, etc.) are all handled appropriately.
@ -249,7 +246,7 @@ supybot.plugins.Channel.partMsg
supybot.plugins.Channel.public supybot.plugins.Channel.public
This config variable defaults to "True", is not network-specific, and is not channel-specific. This config variable defaults to "True", is not network-specific, and is not channel-specific.
Determines whether this plugin is publicly visible. Determines whether this plugin is publicly visible.
@ -257,7 +254,7 @@ supybot.plugins.Channel.public
supybot.plugins.Channel.rejoinDelay supybot.plugins.Channel.rejoinDelay
This config variable defaults to "0", is network-specific, and is channel-specific. This config variable defaults to "0", is network-specific, and is channel-specific.
Determines how many seconds the bot will wait before rejoining a channel if kicked and supybot.plugins.Channel.alwaysRejoin is on. Determines how many seconds the bot will wait before rejoining a channel if kicked and supybot.plugins.Channel.alwaysRejoin is on.

View File

@ -1,6 +1,5 @@
### ###
# Copyright (c) 2004-2005, Jeremiah Fincher # Copyright (c) 2004-2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@ -1,7 +1,6 @@
### ###
# Copyright (c) 2004-2005, Jeremiah Fincher # Copyright (c) 2004-2005, Jeremiah Fincher
# Copyright (c) 2009, James McCoy # Copyright (c) 2009, James McCoy
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

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