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
.git* export-ignore

View File

@ -4,59 +4,29 @@ on:
push:
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:
build:
runs-on: ${{ matrix.runs-on }}
timeout-minutes: 10
strategy:
matrix:
include:
- python-version: "3.12.0-alpha.7"
python-version: ["3.5", "3.6", "3.7", "3.8", "3.9", "3.10.0-beta.4", "pypy-3.6", "pypy-3.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
runs-on: ubuntu-22.04
- python-version: "3.11"
- python-version: "3.5"
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"
with-opt-deps: false
runs-on: ubuntu-20.04
with-opt-deps: true
- python-version: "pypy-3.6"
with-opt-deps: true
include:
- python-version: "3.4"
with-opt-deps: false
runs-on: ubuntu-20.04
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
@ -84,9 +54,9 @@ jobs:
supybot-test test -v --plugins-dir=./plugins/ --no-network
- 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: |
git clone https://github.com/progval/irctest.git
git clone https://github.com/ProgVal/irctest.git
cd irctest
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-data/
test-logs/
doc-conf/
doc-data/
doc-logs/
src/version.py
INSTALL
README.txt

View File

@ -22,6 +22,14 @@ It is the successor of
since 2010 and provides many new features, but keeps full compatibility
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
## 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
-------
These are commands useful for administrating the bot; they all require their
caller to have the 'admin' capability. This plugin is loaded by default.
Usage
-----
This plugin provides access to administrative commands, such as
adding capabilities, managing ignore lists, and joining channels.
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
--------
.. _command-admin-acmd:
acmd <command> [<arg> ...]
@ -80,7 +77,7 @@ Configuration
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.

View File

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

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: Florian Besser <fbesser@gmail.com>\n"
"Language-Team: German <fbesser@gmail.com>\n"
@ -13,38 +13,31 @@ msgstr ""
"X-Poedit-Language: German\n"
"X-Poedit-Country: Germany\n"
#: plugin.py:46
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
#: plugin.py:54
msgid "Nick/channel temporarily unavailable."
msgstr "Nick/Kanal temporär nicht verfügbar."
#: plugin.py:85
#: plugin.py:72
msgid "Cannot join %s, it's full."
msgstr "Kann %s nicht beitreten, der Kanal ist voll."
#: plugin.py:93
#: plugin.py:80
msgid "Cannot join %s, I was not invited."
msgstr "Kann %s nicht beitreten, ich wurde nicht eingeladen."
#: plugin.py:101
#: plugin.py:88
msgid "Cannot join %s, I am banned."
msgstr "Ich kann %s nicht betreten, ich bin gebannt."
#: plugin.py:109
#: plugin.py:96
msgid "Cannot join %s, my keyword was wrong."
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."
msgstr "Ich kann %s nicht betreten, ich bin nicht mit NickServ identifiziert."
#: plugin.py:156
#: plugin.py:143
msgid ""
"<channel> [<key>]\n"
"\n"
@ -58,48 +51,46 @@ msgstr ""
"Sagt dem Bot dem angegeben Kanal beizutreten. Falls <Schlüssel> angegeben "
"wird, wird dieser benutzt um zu versuchen den Kanal zu betreten."
#: plugin.py:162
msgid "channel"
msgstr ""
#: plugin.py:169
#: plugin.py:156
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."
#: plugin.py:178
#, fuzzy
#: plugin.py:165
msgid ""
"takes no arguments\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 ""
"hat keine Argumente\n"
"hat keine Argumenten\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."
msgstr "Momentan bin ich in keinen Kanälen."
#: plugin.py:193
#: plugin.py:181
msgid "My connection is restricted, I can't change nicks."
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."
msgstr "Jemand anderes benutzt diesen Nick schon."
#: plugin.py:207
#: plugin.py:195
#, fuzzy
msgid "I can't change nick, I'm currently banned in %s."
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."
msgstr "Ich kann meinen Nick nicht ändern, der Server sagte %q."
#: plugin.py:229
#: plugin.py:217
#, fuzzy
msgid ""
"[<nick>] [<network>]\n"
@ -113,7 +104,29 @@ msgstr ""
"Ändert den Nick des Bots zu <Nick>. Falls <Nick> nicht angegeben wird, wird "
"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 ""
"<name|hostmask> <capability>\n"
"\n"
@ -127,7 +140,7 @@ msgstr ""
"Gibt dem angebenen Benutzer <Name> (oder dem auf den die <Hostmaske> "
"zutrifft) die angegebene Fähigkeit."
#: plugin.py:268
#: plugin.py:284
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."
@ -136,11 +149,11 @@ msgstr ""
"das supybot-adduser Programm (oder verändere users.conf per Hand) um die "
"Besitzer Fähigkeit hinzuzufügen."
#: plugin.py:279
#: plugin.py:295
msgid "You can't add capabilities you don't have."
msgstr "Du kannst keine Fähigkeiten hinzufügen, die du nicht hast."
#: plugin.py:284
#: plugin.py:300
msgid ""
"<name|hostmask> <capability>\n"
"\n"
@ -154,15 +167,15 @@ msgstr ""
"Nimmt dem Benutzer der durch <Name> (oder dem Benutzer auf den momentan "
"<Hostmaske> zeigt) angeben wird die angegeben Fähigkeit <Fähigkeit>."
#: plugin.py:296
#: plugin.py:312
msgid "That user doesn't have that capability."
msgstr "Der Benutzer hat diese Fähigkeit nicht."
#: plugin.py:298
#: plugin.py:314
msgid "You can't remove capabilities you don't have."
msgstr "Du kannst keine Fähigkeiten entfernen, die du nicht hast."
#: plugin.py:306
#: plugin.py:322
msgid ""
"<hostmask|nick> [<expires>]\n"
"\n"
@ -181,7 +194,7 @@ msgstr ""
"optional, das legt fest wann die Ignorierung abläuft;falls dies nicht "
"angegeben wird, wird die Ignorierung niemals ablaufen."
#: plugin.py:319
#: plugin.py:335
msgid ""
"<hostmask|nick>\n"
"\n"
@ -194,11 +207,11 @@ msgstr ""
"Wird die beständige Ignorierung, von <Hostmaske> oder der Hostmaske die "
"momentan mit dem <Nick> verbunden wird, aufheben."
#: plugin.py:328
#: plugin.py:344
msgid "%s wasn't in the ignores database."
msgstr "%s war nicht in der Datenbank für Ignorierungen."
#: plugin.py:333
#: plugin.py:349
msgid ""
"takes no arguments\n"
"\n"
@ -209,11 +222,11 @@ msgstr ""
"\n"
"Listet die Hostmasken auf, die der Bot ignoriert."
#: plugin.py:341
#: plugin.py:357
msgid "I'm not currently globally ignoring anyone."
msgstr "Momentan ignoriere ich niemanden global."
#: plugin.py:345
#: plugin.py:361
msgid ""
"takes no arguments\n"
"\n"
@ -224,47 +237,5 @@ msgstr ""
"\n"
"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."
#~ msgstr "Dieser Nick ist momentan gebannt."

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n"
@ -31,27 +31,27 @@ msgstr ""
msgid "Nick/channel temporarily unavailable."
msgstr "Nimimerkki/kanava on väliaikaisesti saavuttamattomissa."
#: plugin.py:85
#: plugin.py:75
msgid "Cannot join %s, it's full."
msgstr "Ei voida liittyä kanavalle %s, se on täynnä."
#: plugin.py:93
#: plugin.py:83
msgid "Cannot join %s, I was not invited."
msgstr "Ei voi liittyä kanavalle %s, minua ei ole kutsuttu."
#: plugin.py:101
#: plugin.py:91
msgid "Cannot join %s, I am banned."
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."
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."
msgstr "En voi liittyä kanavalle %s, koska en ole tunnistautunut NickServille."
#: plugin.py:156
#: plugin.py:146
msgid ""
"<channel> [<key>]\n"
"\n"
@ -67,49 +67,48 @@ msgstr ""
" yrittäessä liittyä kanavalle.\n"
" "
#: plugin.py:162
msgid "channel"
msgstr ""
#: plugin.py:169
#: plugin.py:159
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."
#: plugin.py:178
#, fuzzy
#: plugin.py:168
msgid ""
"takes no arguments\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 ""
"Ei ota parametrejä\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."
msgstr "En juuri nyt ole millään kanavalla."
#: plugin.py:193
#: plugin.py:184
msgid "My connection is restricted, I can't change nicks."
msgstr "Minun yhteyteni on rajoitettu. En voi vaihtaa nimimerkkiä."
#: plugin.py:200
#: plugin.py:191
msgid "Someone else is already using that nick."
msgstr "Joku muu käyttää jo tuota nimimerkkiä."
#: plugin.py:207
#: plugin.py:198
#, fuzzy
msgid "I can't change nick, I'm currently banned in %s."
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."
msgstr "Minä en voi vaihtaa nimimerkkiä, koska palvelin sanoi %q"
#: plugin.py:229
#: plugin.py:220
msgid ""
"[<nick>] [<network>]\n"
"\n"
@ -124,7 +123,30 @@ msgstr ""
" 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 ""
"<name|hostmask> <capability>\n"
"\n"
@ -140,7 +162,7 @@ msgstr ""
" ilmoittaa) määritetyn valtuuden <valtuus>\n"
" "
#: 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."
@ -148,11 +170,11 @@ msgstr ""
"\"Owner\" valtuutta ei voi lisätä botissa. Käytä supybot-adduser ohjelmaa "
"(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."
msgstr "Et voi lisätä valtuuksia, joita sinulla ei ole."
#: plugin.py:284
#: plugin.py:303
msgid ""
"<name|hostmask> <capability>\n"
"\n"
@ -168,15 +190,15 @@ msgstr ""
" <hostmask> sopii) määritetyn valtuuden <valtuus>\n"
" "
#: plugin.py:296
#: plugin.py:315
msgid "That user doesn't have that capability."
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."
msgstr "Sinä et voi poistaa valtuuksia, joita sinulla ei ole."
#: plugin.py:306
#: plugin.py:325
msgid ""
"<hostmask|nick> [<expires>]\n"
"\n"
@ -200,7 +222,7 @@ msgstr ""
"automaattisesti.\n"
" "
#: plugin.py:319
#: plugin.py:338
msgid ""
"<hostmask|nick>\n"
"\n"
@ -214,11 +236,11 @@ msgstr ""
" hostmaskista joka on tällä hetkellä yhdistetty <nimimerkkiin>.\n"
" "
#: plugin.py:328
#: plugin.py:347
msgid "%s wasn't in the ignores database."
msgstr "%s ei ollut huomiotta jätettävien tietokannassa."
#: plugin.py:333
#: plugin.py:352
msgid ""
"takes no arguments\n"
"\n"
@ -230,11 +252,11 @@ msgstr ""
" 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."
msgstr "En tällä hetkellä jätä ketään huomioitta globaalisti."
#: plugin.py:345
#: plugin.py:364
msgid ""
"takes no arguments\n"
"\n"
@ -246,50 +268,5 @@ msgstr ""
" 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."
#~ msgstr "Tuolla nimimerkillä on tällähetkellä porttikielto."

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: \n"
"Language-Team: ProgVal <progval@gmail.com>\n"
@ -12,38 +12,31 @@ msgstr ""
"X-Poedit-SourceCharset: Ascii\n"
"X-Generator: Poedit 1.5.4\n"
#: plugin.py:46
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
#: plugin.py:54
msgid "Nick/channel temporarily unavailable."
msgstr "Nick/canal temporairement indisponible"
#: plugin.py:85
#: plugin.py:72
msgid "Cannot join %s, it's full."
msgstr "Ne peut joindre %s, il est plein."
#: plugin.py:93
#: plugin.py:80
msgid "Cannot join %s, I was not invited."
msgstr "Ne peut joindre %s, pas invité."
#: plugin.py:101
#: plugin.py:88
msgid "Cannot join %s, I am banned."
msgstr "Ne peut joindre %s, j'y suis banni."
#: plugin.py:109
#: plugin.py:96
msgid "Cannot join %s, my keyword was wrong."
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."
msgstr "Ne peut joindre %s, je ne suis pas identifié auprès de NickServ."
#: plugin.py:156
#: plugin.py:143
msgid ""
"<channel> [<key>]\n"
"\n"
@ -57,48 +50,46 @@ msgstr ""
"Dit au bot de rejoindre le canal donné. Si la <clef> est donnée, elle est "
"utilisée pour rejoindre le canal."
#: plugin.py:162
msgid "channel"
msgstr ""
#: plugin.py:169
#: plugin.py:156
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."
#: plugin.py:178
#, fuzzy
#: plugin.py:165
msgid ""
"takes no arguments\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 ""
"Ne prend pas d'argument\n"
"Ne prend pas d'argument \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."
msgstr "Je ne suis actuellement sur aucun canal."
#: plugin.py:193
#: plugin.py:181
msgid "My connection is restricted, I can't change nicks."
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."
msgstr "Quelqu'un d'autre utilise déjà ce nick."
#: plugin.py:207
#: plugin.py:195
#, fuzzy
msgid "I can't change nick, I'm currently banned in %s."
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."
msgstr "Je ne peux changer de nick, le serveur a dit %q."
#: plugin.py:229
#: plugin.py:217
msgid ""
"[<nick>] [<network>]\n"
"\n"
@ -111,7 +102,29 @@ msgstr ""
"Change le nick du bot à <nick>. Si aucun nick n'est donné, retourne le nick "
"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 ""
"<name|hostmask> <capability>\n"
"\n"
@ -125,7 +138,7 @@ msgstr ""
"Donne la <capacité> à l'utilisateur spécifié par <nom> (ou l'utilisateur à "
"qui correspond <masque d'hôte>)."
#: plugin.py:268
#: plugin.py:284
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."
@ -134,11 +147,11 @@ msgstr ""
"supybot-adduser (ou éditez le fichier users.conf vous-même) pour ajouter la "
"capacité owner."
#: plugin.py:279
#: plugin.py:295
msgid "You can't add capabilities you don't have."
msgstr "Vous ne pouvez ajouter des capacités que vous n'avez pas."
#: plugin.py:284
#: plugin.py:300
msgid ""
"<name|hostmask> <capability>\n"
"\n"
@ -152,15 +165,15 @@ msgstr ""
"Retire la <capacité> à l'utilisateur spécifié par le <nom> (ou celui à qui "
"correspond le <masque d'hôte>)."
#: plugin.py:296
#: plugin.py:312
msgid "That user doesn't have that capability."
msgstr "Cet utilisateur n'a pas cette capacité."
#: plugin.py:298
#: plugin.py:314
msgid "You can't remove capabilities you don't have."
msgstr "Vous ne pouvez retirer des capacités que vous n'avez pas."
#: plugin.py:306
#: plugin.py:322
msgid ""
"<hostmask|nick> [<expires>]\n"
"\n"
@ -179,7 +192,7 @@ msgstr ""
"quand (en \"secondes à partir de maintenant\") l'ignorance expirera ; si "
"elle n'est pas donnée, l'ignorance n'expirera jamais."
#: plugin.py:319
#: plugin.py:335
msgid ""
"<hostmask|nick>\n"
"\n"
@ -192,11 +205,11 @@ msgstr ""
"Ceci retirera le masque d'ignorance persistant sur le <masque d'hôte>, ou "
"sur le masque d'hôte associé au <nick>."
#: plugin.py:328
#: plugin.py:344
msgid "%s wasn't in the ignores database."
msgstr "%s n'étais pas dans ma base de données d'ignorance."
#: plugin.py:333
#: plugin.py:349
msgid ""
"takes no arguments\n"
"\n"
@ -207,11 +220,11 @@ msgstr ""
"\n"
"Liste les masques d'hôte que le bot ignore."
#: plugin.py:341
#: plugin.py:357
msgid "I'm not currently globally ignoring anyone."
msgstr "Je n'ignore actuellement personne globalement."
#: plugin.py:345
#: plugin.py:361
msgid ""
"takes no arguments\n"
"\n"
@ -222,47 +235,5 @@ msgstr ""
"\n"
"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."
#~ msgstr "Ce nick est banni."

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: skizzhg <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-Transfer-Encoding: 8bit\n"
#: plugin.py:46
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
#: plugin.py:54
msgid "Nick/channel temporarily unavailable."
msgstr "Nick/canale temporaneamente non disponibile."
#: plugin.py:85
#: plugin.py:72
msgid "Cannot join %s, it's full."
msgstr "Non posso entrare in %s, è pieno."
#: plugin.py:93
#: plugin.py:80
msgid "Cannot join %s, I was not invited."
msgstr "Non posso entrare in %s, non sono stato invitato."
#: plugin.py:101
#: plugin.py:88
msgid "Cannot join %s, I am banned."
msgstr "Non posso entrare in %s, sono stato bannato."
#: plugin.py:109
#: plugin.py:96
msgid "Cannot join %s, my keyword was wrong."
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."
msgstr "Non posso entrare in %s, non sono identificato con NickServ."
#: plugin.py:156
#: plugin.py:143
msgid ""
"<channel> [<key>]\n"
"\n"
@ -57,49 +50,48 @@ msgstr ""
" viene usata quando si tenta di entrare nel canale.\n"
" "
#: plugin.py:162
msgid "channel"
msgstr ""
#: plugin.py:169
#: plugin.py:156
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."
#: plugin.py:178
#, fuzzy
#: plugin.py:165
msgid ""
"takes no arguments\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 ""
"Non necessita argomenti\n"
"non necessita argomenti\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."
msgstr "Al momento non sono in nessun canale."
#: plugin.py:193
#: plugin.py:181
msgid "My connection is restricted, I can't change nicks."
msgstr "La mia connessione è limitata, non posso cambiare nick."
#: plugin.py:200
#: plugin.py:188
msgid "Someone else is already using that nick."
msgstr "Qualcun altro sta utilizzando questo nick."
#: plugin.py:207
#: plugin.py:195
#, fuzzy
msgid "I can't change nick, I'm currently banned in %s."
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."
msgstr "Non posso cambiare nick, il server ha detto %q."
#: plugin.py:229
#: plugin.py:217
#, fuzzy
msgid ""
"[<nick>] [<network>]\n"
@ -115,7 +107,32 @@ msgstr ""
" 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 ""
"<name|hostmask> <capability>\n"
"\n"
@ -130,7 +147,7 @@ msgstr ""
" <hostmask> attualmente) la <capacità> specificata.\n"
" "
#: plugin.py:268
#: plugin.py:284
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."
@ -138,11 +155,11 @@ msgstr ""
"La capacità \"owner\" non può essere aggiunta al bot. Utilizzare il "
"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."
msgstr "Non puoi aggiungere capacità che non hai."
#: plugin.py:284
#: plugin.py:300
msgid ""
"<name|hostmask> <capability>\n"
"\n"
@ -158,15 +175,15 @@ msgstr ""
" <hostmask> attualmente) la <capacità> specificata\n"
" "
#: plugin.py:296
#: plugin.py:312
msgid "That user doesn't have that capability."
msgstr "Questo utente non ha tale capacità."
#: plugin.py:298
#: plugin.py:314
msgid "You can't remove capabilities you don't have."
msgstr "Non puoi rimuovere capacità che non hai."
#: plugin.py:306
#: plugin.py:322
msgid ""
"<hostmask|nick> [<expires>]\n"
"\n"
@ -189,7 +206,7 @@ msgstr ""
" questo non scadrà mai.\n"
" "
#: plugin.py:319
#: plugin.py:335
msgid ""
"<hostmask|nick>\n"
"\n"
@ -203,11 +220,11 @@ msgstr ""
"associata a <nick>.\n"
" "
#: plugin.py:328
#: plugin.py:344
msgid "%s wasn't in the ignores database."
msgstr "%s non è nel mio database degli ignorati."
#: plugin.py:333
#: plugin.py:349
msgid ""
"takes no arguments\n"
"\n"
@ -219,11 +236,11 @@ msgstr ""
" Elenca le hostmask che il bot sta ignorando.\n"
" "
#: plugin.py:341
#: plugin.py:357
msgid "I'm not currently globally ignoring anyone."
msgstr "Al momento non sto ignorando nessuno."
#: plugin.py:345
#: plugin.py:361
msgid ""
"takes no arguments\n"
"\n"
@ -236,52 +253,5 @@ msgstr ""
"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."
#~ msgstr "Il nick è attualmente bannato."

View File

@ -5,13 +5,13 @@
msgid ""
msgstr ""
"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"
"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"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
@ -28,27 +28,27 @@ msgstr ""
msgid "Nick/channel temporarily unavailable."
msgstr ""
#: plugin.py:85
#: plugin.py:75
msgid "Cannot join %s, it's full."
msgstr ""
#: plugin.py:93
#: plugin.py:83
msgid "Cannot join %s, I was not invited."
msgstr ""
#: plugin.py:101
#: plugin.py:91
msgid "Cannot join %s, I am banned."
msgstr ""
#: plugin.py:109
#: plugin.py:99
msgid "Cannot join %s, my keyword was wrong."
msgstr ""
#: plugin.py:117 plugin.py:126
#: plugin.py:107 plugin.py:116
msgid "Cannot join %s, I'm not identified with NickServ."
msgstr ""
#: plugin.py:156
#: plugin.py:146
#, docstring
msgid ""
"<channel> [<key>]\n"
@ -58,44 +58,41 @@ msgid ""
" "
msgstr ""
#: plugin.py:162
msgid "channel"
msgstr ""
#: plugin.py:169
#: plugin.py:159
msgid "I'm already too close to maximum number of channels for this network."
msgstr ""
#: plugin.py:178
#: plugin.py:168
#, docstring
msgid ""
"takes no arguments\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 ""
#: plugin.py:187
#: plugin.py:178
msgid "I'm not currently in any channels."
msgstr ""
#: plugin.py:193
#: plugin.py:184
msgid "My connection is restricted, I can't change nicks."
msgstr ""
#: plugin.py:200
#: plugin.py:191
msgid "Someone else is already using that nick."
msgstr ""
#: plugin.py:207
#: plugin.py:198
msgid "I can't change nick, I'm currently banned in %s."
msgstr ""
#: plugin.py:215
#: plugin.py:206
msgid "I can't change nicks, the server said %q."
msgstr ""
#: plugin.py:229
#: plugin.py:220
#, docstring
msgid ""
"[<nick>] [<network>]\n"
@ -105,7 +102,23 @@ msgid ""
" "
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
msgid ""
"<name|hostmask> <capability>\n"
@ -115,15 +128,15 @@ msgid ""
" "
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."
msgstr ""
#: plugin.py:279
#: plugin.py:298
msgid "You can't add capabilities you don't have."
msgstr ""
#: plugin.py:284
#: plugin.py:303
#, docstring
msgid ""
"<name|hostmask> <capability>\n"
@ -133,15 +146,15 @@ msgid ""
" "
msgstr ""
#: plugin.py:296
#: plugin.py:315
msgid "That user doesn't have that capability."
msgstr ""
#: plugin.py:298
#: plugin.py:317
msgid "You can't remove capabilities you don't have."
msgstr ""
#: plugin.py:306
#: plugin.py:325
#, docstring
msgid ""
"<hostmask|nick> [<expires>]\n"
@ -153,7 +166,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:319
#: plugin.py:338
#, docstring
msgid ""
"<hostmask|nick>\n"
@ -163,11 +176,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:328
#: plugin.py:347
msgid "%s wasn't in the ignores database."
msgstr ""
#: plugin.py:333
#: plugin.py:352
#, docstring
msgid ""
"takes no arguments\n"
@ -176,11 +189,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:341
#: plugin.py:360
msgid "I'm not currently globally ignoring anyone."
msgstr ""
#: plugin.py:345
#: plugin.py:364
#, docstring
msgid ""
"takes no arguments\n"
@ -189,11 +202,3 @@ msgid ""
" "
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) 2010-2021, Valentin Lorentz
# Copyright (c) 2010, Valentin Lorentz
# All rights reserved.
#
# 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) 2010-2021, Valentin Lorentz
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@ -71,7 +70,7 @@ class AdminTestCase(PluginTestCase):
ircdb.users.setUser(u)
self.assertNotError('capability add foo bar')
self.assertError('addcapability foo baz')
self.assertIn('bar', u.capabilities)
self.assert_('bar' in u.capabilities)
ircdb.users.delUser(u.id)
def testCapabilityRemove(self):
@ -80,10 +79,10 @@ class AdminTestCase(PluginTestCase):
u.name = 'foo'
ircdb.users.setUser(u)
self.assertNotError('capability add foo bar')
self.assertIn('bar', u.capabilities)
self.assert_('bar' in u.capabilities)
self.assertError('removecapability 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)
def testJoin(self):

View File

@ -5,14 +5,12 @@ Documentation for the Aka plugin for Supybot
Purpose
-------
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
combinations of other commands (via nested commands).
Usage
-----
This plugin allows users to define aliases to commands and combinations
of commands (via nesting).
@ -46,7 +44,7 @@ Now you can use Aka as you used Alias before.
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"
<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
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
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!)
``RSS`` provides ``rss``, ``Format`` provides ``concat`` and ``Web`` provides
``urlquote``.
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
--------
.. _command-aka-add:
add [--channel <#channel>] <name> <command>
@ -129,7 +130,7 @@ Configuration
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.
@ -137,7 +138,7 @@ supybot.plugins.Aka.maximumWordsInName
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.
@ -151,7 +152,7 @@ supybot.plugins.Aka.web
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.

View File

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

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n"
@ -26,124 +26,54 @@ msgstr ""
" Korkean arvon asettaminen tähän voi hidastaa bottiasi pitkien komentojen "
"kanssa."
#: config.py:61
msgid ""
"Determines whether the Akas will be\n"
" browsable through the HTTP server."
msgstr ""
#: plugin.py:141 plugin.py:274 plugin.py:732
#: plugin.py:140 plugin.py:264 plugin.py:507
msgid "This Aka already exists."
msgstr "Tämä Aka on jo olemassa."
#: plugin.py:170 plugin.py:182 plugin.py:196 plugin.py:301 plugin.py:318
#: plugin.py:335 plugin.py:912
#: plugin.py:169 plugin.py:181 plugin.py:195 plugin.py:291 plugin.py:308
#: plugin.py:325
msgid "This Aka does not exist."
msgstr "Tätä Akaa ei ole olemassa."
#: plugin.py:303
#: plugin.py:293
msgid "This Aka is already locked."
msgstr "Tämä Aka on jo lukittu."
#: plugin.py:320
#: plugin.py:310
msgid "This Aka is already unlocked."
msgstr "Tämä Aka on jo avattu."
#: plugin.py:465
#, fuzzy
msgid "By %s at %s"
msgstr "Lukinnut %s aikaan %s"
#: plugin.py:501
#: plugin.py:372
msgid ""
"\n"
" This plugin allows users to define aliases to commands and combinations\n"
" of commands (via nesting).\n"
"\n"
" 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"
" "
"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."
#: plugin.py:699
#: plugin.py:481
msgid "You've attempted more nesting than is currently allowed on this bot."
msgstr ""
"Olet yrittänyt sisällyttää enemmän komentoja, kuin tässä botti sallii juuri "
"nyt."
#: plugin.py:703
#: plugin.py:485
msgid " at least"
msgstr "ainakin"
#: plugin.py:712
#: plugin.py:494
msgid "Locked by %s at %s"
msgstr "Lukinnut %s aikaan %s"
#: plugin.py:717
#, fuzzy
#: plugin.py:497
msgid ""
"<a global alias,%s %n>\n"
"<an alias,%s %n>\n"
"\n"
"Alias for %q.%s"
msgstr ""
@ -151,39 +81,32 @@ msgstr ""
"\n"
"Alias komennolle %q.%s"
#: plugin.py:718 plugin.py:722
#: plugin.py:498
msgid "argument"
msgstr "parametri"
#: plugin.py:721
#, 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
#: plugin.py:504
msgid "You can't overwrite commands in this plugin."
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."
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.)"
msgstr ""
"$*:ä 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."
msgstr "Tämä Aka on lukittu."
#: plugin.py:750
#: plugin.py:527
#, fuzzy
msgid ""
"[--channel <#channel>] <name> <command>\n"
@ -214,12 +137,12 @@ msgstr ""
"parametrit.\n"
" "
#: plugin.py:764 plugin.py:796 plugin.py:827 plugin.py:859 plugin.py:882
#: plugin.py:905 plugin.py:951 plugin.py:994
#: plugin.py:541 plugin.py:573 plugin.py:604 plugin.py:636 plugin.py:659
#: plugin.py:682
msgid "%r is not a valid channel."
msgstr "%r ei ole kelvollinen kanava."
#: plugin.py:782
#: plugin.py:559
#, fuzzy
msgid ""
"[--channel <#channel>] <name> <command>\n"
@ -249,7 +172,7 @@ msgstr ""
"$2 jne.\", esimerkiksi. se sisällyttää\n"
" myös kaikki vapaaehtoiset parametrit."
#: plugin.py:819
#: plugin.py:596
msgid ""
"[--channel <#channel>] <name>\n"
"\n"
@ -261,7 +184,7 @@ msgstr ""
" Poistaa annetun aliaksen, ellei se ole lukittu.\n"
" "
#: plugin.py:841
#: plugin.py:618
msgid ""
"Check if the user has any of the required capabilities to manage\n"
" the regexp database."
@ -269,7 +192,7 @@ msgstr ""
"Tarkistaa onko käyttäjällä vaadittu valtuus säännöllisten lausekkeiden\n"
" tietokannan hallintaan."
#: plugin.py:851
#: plugin.py:628
msgid ""
"[--channel <#channel>] <alias>\n"
"\n"
@ -281,7 +204,7 @@ msgstr ""
" Lukitsee aliaksen estäen muita muokkaamasta sitä.\n"
" "
#: plugin.py:874
#: plugin.py:651
msgid ""
"[--channel <#channel>] <alias>\n"
"\n"
@ -293,7 +216,7 @@ msgstr ""
" Avaa aliaksen, jotta kaikki voivat määrittää uusia aliaksia sen päälle.\n"
" "
#: plugin.py:897
#: plugin.py:674
msgid ""
"[--channel <#channel>] <alias>\n"
"\n"
@ -304,7 +227,7 @@ msgstr ""
"\n"
" Tämä komento näyttää Akan sisällön."
#: plugin.py:917
#: plugin.py:694
msgid ""
"takes no arguments\n"
"\n"
@ -314,60 +237,14 @@ msgstr ""
"\n"
" Tuo Aliaksen tietokannan Akaan ja tyhjentää aiemman."
#: plugin.py:922
#: plugin.py:699
msgid "Alias plugin is not loaded."
msgstr "Alias lisä-osa ei ole ladattu."
#: plugin.py:933
#: plugin.py:709
msgid "Error occured when importing the %n: %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 ""
#~ "Add the help for 'plugin help Aka' here\n"
#~ " This should describe *how* to use this plugin."

View File

@ -5,13 +5,13 @@
msgid ""
msgstr ""
"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"
"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"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
@ -22,147 +22,76 @@ msgid ""
" on long commands."
msgstr ""
#: config.py:61
msgid ""
"Determines whether the Akas will be\n"
" browsable through the HTTP server."
msgstr ""
#: plugin.py:141 plugin.py:274 plugin.py:732
#: plugin.py:140 plugin.py:264 plugin.py:507
msgid "This Aka already exists."
msgstr ""
#: plugin.py:170 plugin.py:182 plugin.py:196 plugin.py:301 plugin.py:318
#: plugin.py:335 plugin.py:912
msgid "This Aka does not exist."
#: plugin.py:169 plugin.py:181 plugin.py:195 plugin.py:291 plugin.py:308
#: plugin.py:325
msgid "This Aka does not exist"
msgstr ""
#: plugin.py:303
#: plugin.py:293
msgid "This Aka is already locked."
msgstr ""
#: plugin.py:320
#: plugin.py:310
msgid "This Aka is already unlocked."
msgstr ""
#: plugin.py:465
msgid "By %s at %s"
msgstr ""
#: plugin.py:501
#: plugin.py:372
#, docstring
msgid ""
"\n"
" This plugin allows users to define aliases to commands and combinations\n"
" of commands (via nesting).\n"
"\n"
" 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"
" "
"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 ""
#: plugin.py:699
#: plugin.py:481
msgid "You've attempted more nesting than is currently allowed on this bot."
msgstr ""
#: plugin.py:703
#: plugin.py:485
msgid " at least"
msgstr ""
#: plugin.py:712
#: plugin.py:494
msgid "Locked by %s at %s"
msgstr ""
#: plugin.py:717
#: plugin.py:497
msgid ""
"<a global alias,%s %n>\n"
"<an alias,%s %n>\n"
"\n"
"Alias for %q.%s"
msgstr ""
#: plugin.py:718 plugin.py:722
#: plugin.py:498
msgid "argument"
msgstr ""
#: plugin.py:721
msgid ""
"<an alias on %s,%s %n>\n"
"\n"
"Alias for %q.%s"
msgstr ""
#: plugin.py:729
#: plugin.py:504
msgid "You can't overwrite commands in this plugin."
msgstr ""
#: plugin.py:734
#: plugin.py:509
msgid "This Aka has too many spaces in its name."
msgstr ""
#: plugin.py:739
#: plugin.py:514
msgid "Can't mix $* and optional args (@1, etc.)"
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."
msgstr ""
#: plugin.py:750
#: plugin.py:527
#, docstring
msgid ""
"[--channel <#channel>] <name> <command>\n"
@ -177,12 +106,12 @@ msgid ""
" "
msgstr ""
#: plugin.py:764 plugin.py:796 plugin.py:827 plugin.py:859 plugin.py:882
#: plugin.py:905 plugin.py:951 plugin.py:994
#: plugin.py:541 plugin.py:573 plugin.py:604 plugin.py:636 plugin.py:659
#: plugin.py:682
msgid "%r is not a valid channel."
msgstr ""
#: plugin.py:782
#: plugin.py:559
#, docstring
msgid ""
"[--channel <#channel>] <name> <command>\n"
@ -197,7 +126,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:819
#: plugin.py:596
#, docstring
msgid ""
"[--channel <#channel>] <name>\n"
@ -206,14 +135,14 @@ msgid ""
" "
msgstr ""
#: plugin.py:841
#: plugin.py:618
#, docstring
msgid ""
"Check if the user has any of the required capabilities to manage\n"
" the regexp database."
msgstr ""
#: plugin.py:851
#: plugin.py:628
#, docstring
msgid ""
"[--channel <#channel>] <alias>\n"
@ -222,7 +151,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:874
#: plugin.py:651
#, docstring
msgid ""
"[--channel <#channel>] <alias>\n"
@ -231,7 +160,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:897
#: plugin.py:674
#, docstring
msgid ""
"[--channel <#channel>] <alias>\n"
@ -240,7 +169,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:917
#: plugin.py:689
msgid "This Aka does not exist."
msgstr ""
#: plugin.py:694
#, docstring
msgid ""
"takes no arguments\n"
@ -248,42 +181,11 @@ msgid ""
" Imports the Alias database into Aka's, and clean the former."
msgstr ""
#: plugin.py:922
#: plugin.py:699
msgid "Alias plugin is not loaded."
msgstr ""
#: plugin.py:933
#: plugin.py:709
msgid "Error occured when importing the %n: %L"
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.
#
# Redistribution and use in source and binary forms, with or without
@ -532,7 +532,7 @@ class Aka(callbacks.Plugin):
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"
<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
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
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!)
``RSS`` provides ``rss``, ``Format`` provides ``concat`` and ``Web`` provides
``urlquote``.
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):

View File

@ -1,7 +1,6 @@
# -*- coding: utf8 -*-
###
# Copyright (c) 2002-2004, Jeremiah Fincher
# Copyright (c) 2013-2021, Valentin Lorentz
# All rights reserved.
#
# 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
-------
Allows aliases for other commands. NOTE THAT IT'S RECOMMENDED TO USE Aka
PLUGIN INSTEAD!
Usage
-----
This plugin allows users to define aliases to commands and combinations
of commands (via nesting).
This plugin is only kept for backward compatibility, you should use the
built-in Aka plugin instead (you can migrate your existing aliases using
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"
<bot> jamessan: The operation succeeded.
<jamessan> @trout me
* 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 nested commands in an alias should be quoted, or they will only
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!)
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-Alias:
Commands
--------
.. _command-alias-add:
add <name> <command>
@ -87,7 +82,7 @@ supybot.plugins.Alias.escapedaliases
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.
@ -95,7 +90,7 @@ supybot.plugins.Alias.public
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

View File

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

View File

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

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: German <fbesser@gmail.com>\n"
@ -13,11 +13,7 @@ msgstr ""
"X-Poedit-Language: German\n"
"X-Poedit-Country: GERMANY\n"
#: config.py:48
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
#: plugin.py:45
msgid ""
"Returns the channel the msg came over or the channel given in args.\n"
"\n"
@ -25,24 +21,15 @@ msgid ""
" removed).\n"
" "
msgstr ""
"Gibt den Kanal aus über den die Nachricht kam oder der Kanal der in den "
"Argumenten gegeben wurde.\n"
"Gibt den Kanal aus über den die Nachricht kam oder der Kanal der in den Argumenten gegeben wurde.\n"
"\n"
"Falls der Kanal in den Argumenten angegeben wurde, werden die Argumente "
"bearbeitet (der Kanal wird entfernt."
"Falls der Kanal in den Argumenten angegeben wurde, werden die Argumente bearbeitet (der Kanal wird entfernt."
#: plugin.py:110
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
#: plugin.py:164
msgid " at least"
msgstr "mindestens"
#: plugin.py:228 plugin.py:233
#: plugin.py:165
msgid ""
"<an alias,%s %n>\n"
"\n"
@ -52,42 +39,11 @@ msgstr ""
"\n"
"Alias für %q."
#: plugin.py:229 plugin.py:234
#: plugin.py:166
msgid "argument"
msgstr "Argument"
#: plugin.py:239
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
#: plugin.py:220
msgid ""
"<alias>\n"
"\n"
@ -98,11 +54,12 @@ msgstr ""
"\n"
"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."
msgstr "Es gibt keinen Alias mit diesem Namen."
#: plugin.py:370
#: plugin.py:234
msgid ""
"<alias>\n"
"\n"
@ -113,34 +70,28 @@ msgstr ""
"\n"
"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."
msgstr "Dieser Name ist nicht zulässig. Probiere anstatt %q."
#: plugin.py:426
#: plugin.py:292
#, fuzzy
msgid ""
"<name> <command>\n"
"\n"
" Defines an alias <name> that executes <command>. The <command>\n"
" should be in the standard \"command argument [nestedcommand "
"argument]\"\n"
" arguments to the alias; they'll be filled with the first, second, "
"etc.\n"
" arguments. $1, $2, etc. can be used for required arguments. @1, "
"@2,\n"
" should be in the standard \"command argument [nestedcommand argument]\"\n"
" arguments to the alias; they'll be filled with the first, second, 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"
" remaining arguments,\" and cannot be combined with optional "
"arguments.\n"
" remaining arguments,\" and cannot be combined with optional arguments.\n"
" "
msgstr ""
"<Name> <Alias>\n"
"\n"
"Definiert einen Alias <Name> der <Alias> ausführt. <Alias> sollte in der "
"Standardform \"Befehl Argument [verschachtelter Befehl Argument\" angegeben "
"werden."
"Definiert einen Alias <Name> der <Alias> ausführt. <Alias> sollte in der Standardform \"Befehl Argument [verschachtelter Befehl Argument\" angegeben werden."
#: plugin.py:449
#: plugin.py:315
msgid ""
"<name>\n"
"\n"
@ -151,25 +102,3 @@ msgstr ""
"\n"
"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 ""
msgstr ""
"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"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: suomi <>\n"
@ -16,11 +16,7 @@ msgstr ""
"Plural-Forms: \n"
"X-Generator: Poedit 1.6.10\n"
#: config.py:48
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
#: plugin.py:46
msgid ""
"Returns the channel the msg came over or the channel given in args.\n"
"\n"
@ -35,21 +31,20 @@ msgstr ""
" poistetaan).\n"
" "
#: plugin.py:110
#: plugin.py:105
#, fuzzy
msgid ""
"Encodes dots and pipes\n"
" Format: a<number of escaped chars>a(<index>(d|p))+<word without dots or "
"pipes>."
"Encodes [a-z0-9.]+ into [a-z][a-z0-9].\n"
" Format: a<number of escaped chars>a(<index>d)+<word without dots>."
msgstr ""
"Salaa [a-z0-9.]+ sisään [a-z][a-z0-9].\n"
" Muoto: a<ohitettujen merkkien määrä>a(<index>d)+<sana ilman pisteitä>."
#: plugin.py:226
#: plugin.py:221
msgid " at least"
msgstr "vähintään"
#: plugin.py:228 plugin.py:233
#: plugin.py:223 plugin.py:228
msgid ""
"<an alias,%s %n>\n"
"\n"
@ -59,42 +54,20 @@ msgstr ""
"\n"
"Alias %q:lle."
#: plugin.py:229 plugin.py:234
#: plugin.py:224 plugin.py:229
msgid "argument"
msgstr "parametri"
#: plugin.py:239
#: plugin.py:234
#, fuzzy
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"
" "
"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ä)."
#: plugin.py:357
#: plugin.py:299
msgid ""
"<alias>\n"
"\n"
@ -106,11 +79,11 @@ msgstr ""
" 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."
msgstr "Tuollaista aliasta ei ole."
#: plugin.py:370
#: plugin.py:313
msgid ""
"<alias>\n"
"\n"
@ -123,11 +96,11 @@ msgstr ""
"aliaksia sen päälle.\n"
" "
#: plugin.py:386
#: plugin.py:334
msgid "That name isn't valid. Try %q instead."
msgstr "Tuo nimi ei ole kelvollinen. Yritä sen sijaan %q:ta."
#: plugin.py:426
#: plugin.py:379
msgid ""
"<name> <command>\n"
"\n"
@ -156,7 +129,7 @@ msgstr ""
"parametrejä.\n"
" "
#: plugin.py:449
#: plugin.py:402
msgid ""
"<name>\n"
"\n"
@ -168,37 +141,6 @@ msgstr ""
" 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."
#~ msgstr ""
#~ "Yritit sisällyttää useampia komentoja, kuin tämä botti sallii juuri nyt."

View File

@ -1,22 +1,19 @@
msgid ""
msgstr ""
"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"
"Last-Translator: \n"
"Language-Team: Limnoria <progval@gmail.com>\n"
"Language: fr\n"
"Language: fr_FR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: ASCII\n"
"X-Generator: Poedit 1.5.4\n"
"Language: fr\n"
#: config.py:48
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
#: plugin.py:46
msgid ""
"Returns the channel the msg came over or the channel given in args.\n"
"\n"
@ -29,19 +26,23 @@ msgstr ""
"Si le canal était donné en argument, args est modifié (le canal est "
"supprimé)."
#: plugin.py:110
#, fuzzy
#: plugin.py:108
msgid ""
"Encodes dots and pipes\n"
" Format: a<number of escaped chars>a(<index>(d|p))+<word without dots or "
"pipes>."
"Encodes [a-z0-9.]+ into [a-z][a-z0-9].\n"
" Format: a<number of escaped chars>a(<index>d)+<word without dots>."
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"
msgstr "au moins"
#: plugin.py:228 plugin.py:233
#: plugin.py:226 plugin.py:231
msgid ""
"<an alias,%s %n>\n"
"\n"
@ -51,42 +52,11 @@ msgstr ""
"\n"
"Alias pour %q."
#: plugin.py:229 plugin.py:234
#: plugin.py:227 plugin.py:232
msgid "argument"
msgstr "argument"
#: plugin.py:239
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
#: plugin.py:300
msgid ""
"<alias>\n"
"\n"
@ -97,11 +67,11 @@ msgstr ""
"\n"
"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."
msgstr "Cet alias n'existe pas."
#: plugin.py:370
#: plugin.py:314
msgid ""
"<alias>\n"
"\n"
@ -112,11 +82,11 @@ msgstr ""
"\n"
"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."
msgstr "Ce nom n'est pas valide. Essayez plutôt %q."
#: plugin.py:426
#: plugin.py:383
msgid ""
"<name> <command>\n"
"\n"
@ -142,7 +112,7 @@ msgstr ""
"simplement *tous* les arguments restants, et ne peut être combiné avec des "
"arguments optionnels."
#: plugin.py:449
#: plugin.py:406
msgid ""
"<name>\n"
"\n"
@ -152,31 +122,3 @@ msgstr ""
"<nom>\n"
"\n"
"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 ""
msgstr ""
"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"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n"
@ -17,11 +17,7 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
#: config.py:48
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
#: plugin.py:45
msgid ""
"Returns the channel the msg came over or the channel given in args.\n"
"\n"
@ -29,24 +25,15 @@ msgid ""
" removed).\n"
" "
msgstr ""
"Kiírja a csatorna nevét, ahonnan az üzenet jött, vagy a paraméterként "
"megadott csatornát.\n"
"Kiírja a csatorna nevét, ahonnan az üzenet jött, vagy a paraméterként megadott csatornát.\n"
"\n"
"Ha a csatorna meg volt adva paraméterként, a paraméterek módosulnak (a "
"csatorna eltávolításra kerül)."
"Ha a csatorna meg volt adva paraméterként, a paraméterek módosulnak (a csatorna eltávolításra kerül)."
#: plugin.py:110
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
#: plugin.py:164
msgid " at least"
msgstr " legalább"
#: plugin.py:228 plugin.py:233
#: plugin.py:165
msgid ""
"<an alias,%s %n>\n"
"\n"
@ -56,42 +43,11 @@ msgstr ""
"\n"
"Álnév %q-ra."
#: plugin.py:229 plugin.py:234
#: plugin.py:166
msgid "argument"
msgstr "paraméter"
#: plugin.py:239
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
#: plugin.py:220
msgid ""
"<alias>\n"
"\n"
@ -102,11 +58,12 @@ msgstr ""
"\n"
"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."
msgstr "Nincs ilyen álnév."
#: plugin.py:370
#: plugin.py:234
msgid ""
"<alias>\n"
"\n"
@ -117,37 +74,27 @@ msgstr ""
"\n"
"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."
msgstr "Az a név nem érvényes. Próbáld meg %q-t inkább."
#: plugin.py:426
#: plugin.py:292
msgid ""
"<name> <command>\n"
"\n"
" Defines an alias <name> that executes <command>. The <command>\n"
" should be in the standard \"command argument [nestedcommand "
"argument]\"\n"
" arguments to the alias; they'll be filled with the first, second, "
"etc.\n"
" arguments. $1, $2, etc. can be used for required arguments. @1, "
"@2,\n"
" should be in the standard \"command argument [nestedcommand argument]\"\n"
" arguments to the alias; they'll be filled with the first, second, 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"
" remaining arguments,\" and cannot be combined with optional "
"arguments.\n"
" remaining arguments,\" and cannot be combined with optional arguments.\n"
" "
msgstr ""
"<név> <álnév>\n"
"\n"
"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."
"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."
#: plugin.py:449
#: plugin.py:315
msgid ""
"<name>\n"
"\n"
@ -158,25 +105,3 @@ msgstr ""
"\n"
"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 ""
msgstr ""
"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"
"Last-Translator: skizzhg <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-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 ""
"Returns the channel the msg came over or the channel given in args.\n"
"\n"
@ -22,26 +20,17 @@ msgid ""
" removed).\n"
" "
msgstr ""
"Restituisce il canale da dove proviene il messaggio o il canale fornito come "
"argomento.\n"
"Restituisce il canale da dove proviene il messaggio o il canale fornito come argomento.\n"
"\n"
" Se il canale è stato dato come argomento, quest'ultimo viene modificato "
"(il canale\n"
" Se il canale è stato dato come argomento, quest'ultimo viene modificato (il canale\n"
" viene rimosso).\n"
" "
#: plugin.py:110
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
#: plugin.py:164
msgid " at least"
msgstr " almeno"
#: plugin.py:228 plugin.py:233
#: plugin.py:165
msgid ""
"<an alias,%s %n>\n"
"\n"
@ -51,42 +40,12 @@ msgstr ""
"\n"
"Alias per %q."
#: plugin.py:229 plugin.py:234
#: plugin.py:166
msgid "argument"
msgstr "argomento"
#: plugin.py:239
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
#: plugin.py:220
#, docstring
msgid ""
"<alias>\n"
"\n"
@ -98,11 +57,12 @@ msgstr ""
" 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."
msgstr "Non c'è nessun alias."
#: plugin.py:370
#: plugin.py:234
#, docstring
msgid ""
"<alias>\n"
"\n"
@ -114,40 +74,35 @@ msgstr ""
" 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."
msgstr "Nome non valido. Prova %q invece."
#: plugin.py:426
#: plugin.py:292
#, docstring
msgid ""
"<name> <command>\n"
"\n"
" Defines an alias <name> that executes <command>. The <command>\n"
" should be in the standard \"command argument [nestedcommand "
"argument]\"\n"
" arguments to the alias; they'll be filled with the first, second, "
"etc.\n"
" arguments. $1, $2, etc. can be used for required arguments. @1, "
"@2,\n"
" should be in the standard \"command argument [nestedcommand argument]\"\n"
" arguments to the alias; they'll be filled with the first, second, 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"
" remaining arguments,\" and cannot be combined with optional "
"arguments.\n"
" remaining arguments,\" and cannot be combined with optional arguments.\n"
" "
msgstr ""
"<nome> <comando>\n"
"\n"
" Definisce un <nome> che esegue <comando>. <comando> deve essere "
"nello\n"
" Definisce un <nome> che esegue <comando>. <comando> deve essere nello\n"
" standard \"comando argomento [comando_nidificato argomento]\"; gli\n"
" argomenti dati devono essere riportati in sequenza. Per gli "
"argomenti\n"
" richiesti è possibile utilizzare $1, $2, ecc., mentre @1, @2, ecc. "
"per\n"
" argomenti dati devono essere riportati in sequenza. Per gli argomenti\n"
" richiesti è possibile utilizzare $1, $2, ecc., mentre @1, @2, ecc. per\n"
" quelli opzionali. $* significa semplicemente \"tutti gli argomenti\n"
" rimanenti\" e non può essere combinato con quelli opzionali.\n"
" "
#: plugin.py:449
#: plugin.py:315
#, docstring
msgid ""
"<name>\n"
"\n"
@ -159,25 +114,3 @@ msgstr ""
" 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 ""
msgstr ""
"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"
"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"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
#: config.py:48
msgid "Regex which alias names must match in order to be valid"
msgstr ""
#: plugin.py:48
#: plugin.py:46
#, docstring
msgid ""
"Returns the channel the msg came over or the channel given in args.\n"
@ -29,57 +25,36 @@ msgid ""
" "
msgstr ""
#: plugin.py:110
#: plugin.py:105
#, docstring
msgid ""
"Encodes dots and pipes\n"
" Format: a<number of escaped chars>a(<index>(d|p))+<word without dots or pipes>."
"Encodes [a-z0-9.]+ into [a-z][a-z0-9].\n"
" Format: a<number of escaped chars>a(<index>d)+<word without dots>."
msgstr ""
#: plugin.py:226
#: plugin.py:221
msgid " at least"
msgstr ""
#: plugin.py:228 plugin.py:233
#: plugin.py:223 plugin.py:228
msgid ""
"<an alias,%s %n>\n"
"\n"
"Alias for %q."
msgstr ""
#: plugin.py:229 plugin.py:234
#: plugin.py:224 plugin.py:229
msgid "argument"
msgstr ""
#: plugin.py:239
#: plugin.py:234
#, docstring
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"
" "
"This plugin allows users to define aliases to commands and combinations\n"
" of commands (via nesting)."
msgstr ""
#: plugin.py:357
#: plugin.py:299
#, docstring
msgid ""
"<alias>\n"
@ -88,11 +63,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:365 plugin.py:378
#: plugin.py:308 plugin.py:322
msgid "There is no such alias."
msgstr ""
#: plugin.py:370
#: plugin.py:313
#, docstring
msgid ""
"<alias>\n"
@ -101,11 +76,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:386
#: plugin.py:334
msgid "That name isn't valid. Try %q instead."
msgstr ""
#: plugin.py:426
#: plugin.py:379
#, docstring
msgid ""
"<name> <command>\n"
@ -119,7 +94,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:449
#: plugin.py:402
#, docstring
msgid ""
"<name>\n"
@ -128,25 +103,3 @@ msgid ""
" "
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) 2014, James McCoy
# Copyright (c) 2012-2021, Valentin Lorentz
# All rights reserved.
#
# 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
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"
<bot> jamessan: The operation succeeded.
<jamessan> @trout me
* 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 nested commands in an alias should be quoted, or they will only
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!)
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):
self.__parent = super(Alias, self)

View File

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

View File

@ -5,12 +5,10 @@ Documentation for the Anonymous plugin for Supybot
Purpose
-------
Allows folks to talk through the bot anonymously.
Usage
-----
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
the 'say' command allows other people to speak through the bot. Since
@ -50,7 +48,6 @@ This
Commands
--------
.. _command-anonymous-do:
do <channel> <action>
@ -80,7 +77,7 @@ Configuration
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.
@ -88,7 +85,7 @@ supybot.plugins.Anonymous.allowPrivateTarget
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.
@ -96,7 +93,7 @@ supybot.plugins.Anonymous.public
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.
@ -104,7 +101,7 @@ supybot.plugins.Anonymous.requireCapability
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.
@ -112,7 +109,7 @@ supybot.plugins.Anonymous.requirePresenceInChannel
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.

View File

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

View File

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

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: Florian Besser <fbesser@gmail.com>\n"
"Language-Team: German <fbesser@gmail.com>\n"
@ -12,145 +12,77 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n"
"X-Poedit-Language: de\n"
#: config.py:50
#: config.py:49
msgid ""
"Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n"
" channel they wish to anonymously send to."
msgstr "Legt fest ob Leute im Kanal sein müssen, an den anonym senden wollen."
#: config.py:54
#: config.py:53
msgid ""
"Determines whether the bot should require\n"
" people trying to use this plugin to be registered."
msgstr ""
"Legt fest ob Nutzer registiert sein müssen um dieses Plugin zu benutze."
msgstr "Legt fest ob Nutzer registiert sein müssen um dieses Plugin zu benutze."
#: config.py:57
#: config.py:56
msgid ""
"Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have."
msgstr ""
"Legt fest welche Fähgikeiten (falls überhaupt) der Bot verlangt von Personen "
"die versuchen dieses Plugin zu benutzen."
msgstr "Legt fest welche Fähgikeiten (falls überhaupt) der Bot verlangt von Personen die versuchen dieses Plugin zu benutzen."
#: config.py:60
#, fuzzy
#: config.py:59
msgid ""
"Determines whether the bot will allow the\n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n"
" command to send private messages to other users."
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."
"Determines whether the bot will require \n"
" targets of the \"say\" command to be public (i.e., channels). If this is\n"
" True, the bot will allow people to use the \"say\" command to send private\n"
" messages to other users."
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."
#: plugin.py:45
#, fuzzy
#: plugin.py:40
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"
" 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"
" supybot.plugins.Anonymous.requireCapability so only users with that\n"
" capability can use this plugin. For extra security, you can require "
"that\n"
" the user be *in* the channel they are trying to address anonymously "
"with\n"
" capability can use this plugin. For extra security, you can require that\n"
" the user be *in* the channel they are trying to address anonymously with\n"
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\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 ""
"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."
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."
#: plugin.py:98
#: plugin.py:64
msgid "You must be in %s to %q in there."
msgstr "Du musst in %s sein um %q dort auszuführen."
#: plugin.py:102
#: plugin.py:68
msgid "I'm lobotomized in %s."
msgstr "Ich bin hirnamputiert in %s."
#: plugin.py:105
msgid ""
"That channel has set its capabilities so as to disallow the use of this "
"plugin."
msgstr ""
"Für den Kanal sind die Fähigkeiten so gesetzt, dass sie das benutzen dieses "
"Plugins nicht erlauben."
#: plugin.py:71
msgid "That channel has set its capabilities so as to disallow the use of this plugin."
msgstr "Für den Kanal sind die Fähigkeiten so gesetzt, dass sie das benutzen dieses Plugins nicht erlauben."
#: plugin.py:108
msgid ""
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is "
"False)."
msgstr ""
#: plugin.py:74
msgid "%q cannot be used to send private messages."
msgstr "%q kann nicht verwendet werden um private Nachrichten zu versenden."
#: plugin.py:112
#, fuzzy
#: plugin.py:80
msgid ""
"<channel> <text>\n"
"<channel|nick> <text>\n"
"\n"
" Sends <text> to <channel>.\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"
" Sends <text> to <channel|nick>. Can only send to <nick> if\n"
" supybot.plugins.Anonymous.allowPrivateTarget is True.\n"
" "
msgstr ""
"<Kanal|Nick> <text>\n"
"\n"
"Sendet <Text> an <Kanal|Nick>. Kann nur an <Nick> senden wenn supybot."
"plugins.Anonymous.allowPrivateTarget auf True gesetzt ist."
"Sendet <Text> an <Kanal|Nick>. Kann nur an <Nick> senden wenn supybot.plugins.Anonymous.allowPrivateTarget auf True gesetzt ist."
#: plugin.py:137
#: plugin.py:94
msgid ""
"<channel> <action>\n"
"\n"
@ -161,42 +93,3 @@ msgstr ""
"\n"
"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 ""
msgstr ""
"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"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.6.10\n"
#: config.py:50
#: config.py:49
msgid ""
"Determines whether\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"
"kanavalla, jonne he tahtovat lähettää viestin tuntemattomasti."
#: config.py:54
#: config.py:53
msgid ""
"Determines whether the bot should require\n"
" people trying to use this plugin to be registered."
@ -33,7 +33,7 @@ msgstr ""
"Määrittää vaatiiko botti\n"
"ihmisiä, jotka yrittävät käyttää tätä lisäosaa, olemaan rekisteröityneitä."
#: config.py:57
#: config.py:56
msgid ""
"Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have."
@ -41,7 +41,7 @@ msgstr ""
"Määrittää minkä valtuuden (jos minkään) botti vaatii\n"
" ihmisiltä, jotka yrittävät käyttää tätä lisäosaa."
#: config.py:60
#: config.py:59
#, fuzzy
msgid ""
"Determines whether the bot will allow the\n"
@ -52,11 +52,9 @@ msgstr ""
"sallii \"tell\"-komennon\n"
" lähettävän yksityisviestejä toisille käyttäjille."
#: plugin.py:45
#, fuzzy
#: plugin.py:41
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"
" 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"
@ -68,33 +66,6 @@ msgid ""
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\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 ""
"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"
" supybot.plugins.Anonymous.requireRegistration"
#: plugin.py:98
#: plugin.py:65
msgid "You must be in %s to %q in there."
msgstr "Sinun täytyy olla kanavalla %s %q sinne."
#: plugin.py:102
#: plugin.py:69
msgid "I'm lobotomized in %s."
msgstr "Minut on lobotomoitu kanavalla %s."
#: plugin.py:105
#: plugin.py:72
msgid ""
"That channel has set its capabilities so as to disallow the use of this "
"plugin."
msgstr "Tuo kanava on asettanut valtuudet kieltämään tämän Pluginin käytön."
#: plugin.py:108
#: plugin.py:75
msgid ""
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is "
"False)."
@ -133,7 +104,7 @@ msgstr ""
"Tämä komento on poistettu käytöstä (supybot.plugins.Anonymous."
"allowPrivateTarget on False)."
#: plugin.py:112
#: plugin.py:80
msgid ""
"<channel> <text>\n"
"\n"
@ -143,7 +114,7 @@ msgstr ""
"<kanava> <teksti>\n"
" Lähettää <tesktin> <kanavalle>."
#: plugin.py:124
#: plugin.py:92
msgid ""
"<nick> <text>\n"
"\n"
@ -158,7 +129,7 @@ msgstr ""
" ollessa True.\n"
" "
#: plugin.py:137
#: plugin.py:106
msgid ""
"<channel> <action>\n"
"\n"
@ -170,43 +141,6 @@ msgstr ""
"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."
#~ msgstr "%q:ta ei voi käyttää yksityisviestien lähettämiseen."

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
@ -13,137 +13,77 @@ msgstr ""
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
#: config.py:50
#: config.py:49
msgid ""
"Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n"
" channel they wish to anonymously send to."
msgstr ""
"Détermine si le bot requiérera que les gens soient sur le canal pour y "
"envoyer des messages anonymement."
msgstr "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 ""
"Determines whether the bot should require\n"
" people trying to use this plugin to be registered."
msgstr ""
"Détermine si le bot requiérera que les personnes utilisant ce plugin soient "
"enregistrées."
msgstr "Détermine si le bot requiérera que les personnes utilisant ce plugin soient enregistrées."
#: config.py:57
#: config.py:56
msgid ""
"Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have."
msgstr ""
"Détermine quelle capacité (s'il y en a une) le bot requiéra que les gens "
"utilisant ce plugin aient."
msgstr "Détermine quelle capacité (s'il y en a une) le bot requiéra que les gens utilisant ce plugin aient."
#: config.py:60
#, fuzzy
#: config.py:59
msgid ""
"Determines whether the bot will allow the\n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n"
" command to send private messages to other users."
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é."
"Determines whether the bot will require \n"
" targets of the \"say\" command to be public (i.e., channels). If this is\n"
" True, the bot will allow people to use the \"say\" command to send private\n"
" messages to other users."
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é."
#: plugin.py:45
#: plugin.py:40
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"
" 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"
" supybot.plugins.Anonymous.requireCapability so only users with that\n"
" capability can use this plugin. For extra security, you can require "
"that\n"
" the user be *in* the channel they are trying to address anonymously "
"with\n"
" capability can use this plugin. For extra security, you can require that\n"
" the user be *in* the channel they are trying to address anonymously with\n"
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\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 ""
#: plugin.py:98
#: plugin.py:64
msgid "You must be in %s to %q in there."
msgstr "Vous devez être sur %s pour y utiliser %q."
#: plugin.py:102
#: plugin.py:68
msgid "I'm lobotomized in %s."
msgstr "Je suis lobotomisé sur %s."
#: plugin.py:105
msgid ""
"That channel has set its capabilities so as to disallow the use of this "
"plugin."
msgstr ""
"Ce canal a définit ses capacités de façon à désactiver l'utilisation de ce "
"plugin."
#: plugin.py:71
msgid "That channel has set its capabilities so as to disallow the use of this plugin."
msgstr "Ce canal a définit ses capacités de façon à désactiver l'utilisation de ce plugin."
#: plugin.py:108
msgid ""
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is "
"False)."
msgstr ""
#: plugin.py:74
msgid "%q cannot be used to send private messages."
msgstr "%q ne peut pas être utilisé pour envoyer des messages privés."
#: plugin.py:112
#, fuzzy
#: plugin.py:80
msgid ""
"<channel> <text>\n"
"<channel|nick> <text>\n"
"\n"
" Sends <text> to <channel>.\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"
" Sends <text> to <channel|nick>. Can only send to <nick> if\n"
" supybot.plugins.Anonymous.allowPrivateTarget is True.\n"
" "
msgstr ""
"<canal|nick> <text>\n"
"\n"
"Envoie le <texte> au <canal|nick>. Vous ne pouvez envoyer à <nick> que si "
"supybot.plugins.Anonymous.allowPrivateTarget vaut True."
"Envoie le <texte> au <canal|nick>. Vous ne pouvez envoyer à <nick> que si supybot.plugins.Anonymous.allowPrivateTarget vaut True."
#: plugin.py:137
#: plugin.py:94
msgid ""
"<channel> <action>\n"
"\n"
@ -154,42 +94,3 @@ msgstr ""
"\n"
"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 ""
msgstr ""
"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"
"Last-Translator: nyuszika7h <litemininyuszika@gmail.com>\n"
"Language-Team: \n"
@ -15,148 +15,77 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: pygettext.py 1.5\n"
#: config.py:50
#: config.py:49
msgid ""
"Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n"
" channel they wish to anonymously send to."
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."
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."
#: config.py:54
#: config.py:53
msgid ""
"Determines whether the bot should require\n"
" people trying to use this plugin to be registered."
msgstr ""
"Meghatározza, hogy a bot megkövetelje-e, hogy a bővítményt használni kívánó "
"emberek regisztrálva legyenek."
msgstr "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 ""
"Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have."
msgstr ""
"Meghatározza, hogy milyen képesség (ha van ilyen) legyen szükséges a "
"bővítmény használatához."
msgstr "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
#, fuzzy
#: config.py:59
msgid ""
"Determines whether the bot will allow the\n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n"
" command to send private messages to other users."
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."
"Determines whether the bot will require \n"
" targets of the \"say\" command to be public (i.e., channels). If this is\n"
" True, the bot will allow people to use the \"say\" command to send private\n"
" messages to other users."
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."
#: plugin.py:45
#, fuzzy
#: plugin.py:40
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"
" 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"
" supybot.plugins.Anonymous.requireCapability so only users with that\n"
" capability can use this plugin. For extra security, you can require "
"that\n"
" the user be *in* the channel they are trying to address anonymously "
"with\n"
" capability can use this plugin. For extra security, you can require that\n"
" the user be *in* the channel they are trying to address anonymously with\n"
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\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 ""
"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."
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."
#: plugin.py:98
#: plugin.py:64
msgid "You must be in %s to %q in there."
msgstr "%s-ban kell lenned, hogy a %q parancsot használd ott."
#: plugin.py:102
#: plugin.py:68
msgid "I'm lobotomized in %s."
msgstr "Némítva vagyok %s-ban."
#: plugin.py:105
msgid ""
"That channel has set its capabilities so as to disallow the use of this "
"plugin."
msgstr ""
"A megadott csatornában nem használhatod a bővítményt a csatorna képességei "
"miatt."
#: plugin.py:71
msgid "That channel has set its capabilities so as to disallow the use of this plugin."
msgstr "A megadott csatornában nem használhatod a bővítményt a csatorna képességei miatt."
#: plugin.py:108
msgid ""
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is "
"False)."
msgstr ""
#: plugin.py:74
msgid "%q cannot be used to send private messages."
msgstr "A %q parancs nem használható privát üzenetek küldésére."
#: plugin.py:112
#, fuzzy
#: plugin.py:80
msgid ""
"<channel> <text>\n"
"<channel|nick> <text>\n"
"\n"
" Sends <text> to <channel>.\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"
" Sends <text> to <channel|nick>. Can only send to <nick> if\n"
" supybot.plugins.Anonymous.allowPrivateTarget is True.\n"
" "
msgstr ""
"<csatorna|név> <szöveg>\n"
"\n"
"Elküldi <szöveg>-et <csatorna|név>-nek. Csak akkor küldhet <név>-nek, ha a "
"supybot.plugins.Anonymous.allowPrivateTarget True."
"Elküldi <szöveg>-et <csatorna|név>-nek. Csak akkor küldhet <név>-nek, ha a supybot.plugins.Anonymous.allowPrivateTarget True."
#: plugin.py:137
#: plugin.py:94
msgid ""
"<channel> <action>\n"
"\n"
@ -167,42 +96,3 @@ msgstr ""
"\n"
"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 ""
msgstr ""
"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"
"Last-Translator: skizzhg <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-Transfer-Encoding: 8bit\n"
#: config.py:50
#: config.py:49
msgid ""
"Determines whether\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"
" per inviare messaggi in forma anonima."
#: config.py:54
#: config.py:53
msgid ""
"Determines whether the bot should require\n"
" 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"
" per usare il plugin."
#: config.py:57
#: config.py:56
msgid ""
"Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have."
@ -35,121 +36,64 @@ msgstr ""
"Determina quali capacità (eventuali) debbano\n"
" avere gli utenti per utilizzare questo plugin."
#: config.py:60
#, fuzzy
#: config.py:59
msgid ""
"Determines whether the bot will allow the\n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n"
" command to send private messages to other users."
"Determines whether the bot will require \n"
" targets of the \"say\" command to be public (i.e., channels). If this is\n"
" True, the bot will allow people to use the \"say\" command to send private\n"
" messages to other users."
msgstr ""
"Determina se il bot richiederà che le destinazioni del comando \"say\" "
"siano\n"
"Determina se il bot richiederà che le destinazioni del comando \"say\" siano\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."
#: plugin.py:45
#, fuzzy
#: plugin.py:40
#, docstring
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"
" 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"
" supybot.plugins.Anonymous.requireCapability so only users with that\n"
" capability can use this plugin. For extra security, you can require "
"that\n"
" the user be *in* the channel they are trying to address anonymously "
"with\n"
" capability can use this plugin. For extra security, you can require that\n"
" the user be *in* the channel they are trying to address anonymously with\n"
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\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 ""
"Questo plugin permette agli utenti di agire attraverso il bot in modo "
"anonimo.\n"
" Il comando \"do\" esegue un'azione anonima in un dato canale, mentre "
"\"say\"\n"
" permette di parlare tramite il bot. Giacché si può facilmente abusarne, "
"è\n"
" possibile impostare supybot.plugins.Anonymous.requireCapability in modo "
"che\n"
" 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. "
"Questo plugin permette agli utenti di agire attraverso il bot in modo anonimo.\n"
" Il comando \"do\" esegue un'azione anonima in un dato canale, mentre \"say\"\n"
" permette di parlare tramite il bot. Giacché si può facilmente abusarne, è\n"
" possibile impostare supybot.plugins.Anonymous.requireCapability in modo che\n"
" 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."
msgstr "Devi essere in %s per %q."
#: plugin.py:102
#: plugin.py:68
msgid "I'm lobotomized in %s."
msgstr "In %s sono lobotomizzato."
#: plugin.py:105
msgid ""
"That channel has set its capabilities so as to disallow the use of this "
"plugin."
msgstr ""
"Questo canale ha le capacità impostate in modo da impedire l'utilizzo di "
"questo plugin."
#: plugin.py:71
msgid "That channel has set its capabilities so as to disallow the use of this plugin."
msgstr "Questo canale ha le capacità impostate in modo da impedire l'utilizzo di questo plugin."
#: plugin.py:108
msgid ""
"This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is "
"False)."
msgstr ""
#: plugin.py:74
msgid "%q cannot be used to send private messages."
msgstr "%q non può essere usato per inviare messaggi privati."
#: plugin.py:112
#, fuzzy
#: plugin.py:80
#, docstring
msgid ""
"<channel> <text>\n"
"<channel|nick> <text>\n"
"\n"
" Sends <text> to <channel>.\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"
" Sends <text> to <channel|nick>. Can only send to <nick> if\n"
" supybot.plugins.Anonymous.allowPrivateTarget is True.\n"
" "
msgstr ""
@ -159,7 +103,8 @@ msgstr ""
" supybot.plugins.Anonymous.allowPrivateTarget è impostato a True.\n"
" "
#: plugin.py:137
#: plugin.py:94
#, docstring
msgid ""
"<channel> <action>\n"
"\n"
@ -171,42 +116,3 @@ msgstr ""
" 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 ""
msgstr ""
"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"
"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"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
#: config.py:50
#: config.py:49
msgid ""
"Determines whether\n"
" the bot should require people trying to use this plugin to be in the\n"
" channel they wish to anonymously send to."
msgstr ""
#: config.py:54
#: config.py:53
msgid ""
"Determines whether the bot should require\n"
" people trying to use this plugin to be registered."
msgstr ""
#: config.py:57
#: config.py:56
msgid ""
"Determines what capability (if any) the bot should\n"
" require people trying to use this plugin to have."
msgstr ""
#: config.py:60
#: config.py:59
msgid ""
"Determines whether the bot will allow the\n"
" \"tell\" command to be used. If true, the bot will allow the \"tell\"\n"
" command to send private messages to other users."
msgstr ""
#: plugin.py:45
#: plugin.py:41
#, docstring
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"
" 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"
@ -55,51 +54,26 @@ msgid ""
" supybot.plugins.Anonymous.requirePresenceInChannel, or you can require\n"
" that the user be registered by setting\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 ""
#: plugin.py:98
#: plugin.py:65
msgid "You must be in %s to %q in there."
msgstr ""
#: plugin.py:102
#: plugin.py:69
msgid "I'm lobotomized in %s."
msgstr ""
#: plugin.py:105
#: plugin.py:72
msgid "That channel has set its capabilities so as to disallow the use of this plugin."
msgstr ""
#: plugin.py:108
#: plugin.py:75
msgid "This command is disabled (supybot.plugins.Anonymous.allowPrivateTarget is False)."
msgstr ""
#: plugin.py:112
#: plugin.py:80
#, docstring
msgid ""
"<channel> <text>\n"
@ -108,7 +82,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:124
#: plugin.py:92
#, docstring
msgid ""
"<nick> <text>\n"
@ -118,7 +92,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:137
#: plugin.py:106
#, docstring
msgid ""
"<channel> <action>\n"
@ -127,39 +101,3 @@ msgid ""
" "
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) 2014, James McCoy
# Copyright (c) 2010-2021, Valentin Lorentz
# Copyright (c) 2021, Valentin Lorentz
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without

View File

@ -1,7 +1,7 @@
###
# Copyright (c) 2005, Daniel DiPaolo
# Copyright (c) 2014, James McCoy
# Copyright (c) 2010-2021, Valentin Lorentz
# Copyright (c) 2021, Valentin Lorentz
# All rights reserved.
#
# 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):
m = self.assertNotError('anonymous say %s foo!' % self.channel)
self.assertEqual(m.args[1], 'foo!')
self.assertTrue(m.args[1] == 'foo!')
def testTell(self):
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)
with conf.supybot.plugins.Anonymous.allowPrivateTarget.context(True):
m = self.assertNotError('anonymous tell %s foo!' % self.nick)
self.assertEqual(m.args[1], 'foo!')
self.assertTrue(m.args[1] == 'foo!')
def testAction(self):
m = self.assertError('anonymous do %s loves you!' % self.channel)

View File

@ -5,14 +5,12 @@ Documentation for the AutoMode plugin for Supybot
Purpose
-------
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
when they join your channel, this is the plugin to load.
Usage
-----
This plugin, when configured, allows the bot to automatically set modes
on users when they join.
@ -37,7 +35,7 @@ Configuration
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.
@ -45,7 +43,7 @@ supybot.plugins.AutoMode.alternativeCapabilities
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.
@ -53,7 +51,7 @@ supybot.plugins.AutoMode.ban
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.
@ -61,7 +59,7 @@ supybot.plugins.AutoMode.ban
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.
@ -69,7 +67,7 @@ supybot.plugins.AutoMode.delay
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.
@ -77,7 +75,7 @@ supybot.plugins.AutoMode.enable
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
@ -85,7 +83,7 @@ supybot.plugins.AutoMode.extra
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.
@ -93,7 +91,7 @@ supybot.plugins.AutoMode.fallthrough
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.
@ -101,7 +99,7 @@ supybot.plugins.AutoMode.halfop
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.
@ -109,7 +107,7 @@ supybot.plugins.AutoMode.op
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.
@ -117,7 +115,7 @@ supybot.plugins.AutoMode.owner
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.
@ -125,7 +123,7 @@ supybot.plugins.AutoMode.public
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.

View File

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

View File

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

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: German <fbesser@gmail.com>\n"
@ -13,116 +13,63 @@ msgstr ""
"X-Poedit-Language: German\n"
"X-Poedit-Country: GERMANY\n"
#: config.py:47
#: config.py:46
msgid ""
"Determines whether this plugin is enabled.\n"
" "
msgstr "Legt fest ob das Plugin aktiv ist."
#: config.py:50
#: config.py:49
msgid ""
"Determines whether this plugin will automode\n"
" owners even if they don't have op/halfop/voice/whatever capability."
msgstr ""
"Legt fest ob das Plugin Besitzern automatisch den Modus zuweist, obwohl sie "
"nicht die op/halfop/voice/wasauchimmer Fähigkeit besitzen."
msgstr "Legt fest ob das Plugin Besitzern automatisch den Modus zuweist, obwohl sie nicht die op/halfop/voice/wasauchimmer Fähigkeit besitzen."
#: config.py:53
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
#: config.py:52
#, fuzzy
msgid ""
"Determines whether the bot will \"fall\n"
" through\" to halfop/voicing when auto-opping is turned off but\n"
" auto-halfopping/voicing are turned on."
msgstr ""
"Legt fest ob der Bot \"zurückfällt\" auf Halboperator/Sprechrechte wenn "
"automatischer Operator abgeschaltet ist, aber automatische Halboperator/"
"Sprecherechte angeschaltet sind."
msgstr "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 ""
"Determines whether the bot will automatically\n"
" op people with the <channel>,op capability when they join the channel.\n"
" "
msgstr ""
"Legt fest ob der Bot Personen, mit der <Kanal>,op Fähigkeit, automatisch "
"Operatorrechte zuweisen soll, wenn sie den Kanal betreten."
msgstr "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 ""
"Determines whether the bot will automatically\n"
" halfop people with the <channel>,halfop capability when they join the\n"
" channel."
msgstr ""
"Legt fest ob der Bot Personen, mit der <Kanal>,halfop Fähigkeit, automatisch "
"Halboperatorrechte zuweisen soll, wenn sie den Kanal betreten."
msgstr "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 ""
"Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n"
" channel."
msgstr ""
"Legt fest ob der Bot Personen, mit der <Kanal>,voice Fähigkeit, automatisch "
"Sprechrechte zuweisen soll, wenn sie den Kanal betreten."
msgstr "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 ""
"Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist."
msgstr ""
"Legt fest ob der Bot automatisch Personen bannen soll die auf der Banliste "
"stehen."
msgstr "Legt fest ob der Bot automatisch Personen bannen soll die auf der Banliste stehen."
#: config.py:76
#: config.py:71
msgid ""
"Determines how many seconds the bot\n"
" will automatically ban a person when banning."
msgstr "Legt fest wieviele Sekunden der Bot Personen automatisch bannt."
#: config.py:80
#: config.py:75
#, fuzzy
msgid ""
"Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans."
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 ""
msgstr ""
"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"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: suomi <>\n"
@ -16,13 +16,13 @@ msgstr ""
"Plural-Forms: \n"
"X-Generator: Poedit 1.6.10\n"
#: config.py:47
#: config.py:46
msgid ""
"Determines whether this plugin is enabled.\n"
" "
msgstr "Määrittää onko tämä lisäosa käytössä."
#: config.py:50
#: config.py:49
msgid ""
"Determines whether this plugin will automode\n"
" owners even if they don't have op/halfop/voice/whatever capability."
@ -31,7 +31,7 @@ msgstr ""
"olisi\n"
" op/halfop/voice/ihansama valtuutta."
#: config.py:53
#: config.py:52
msgid ""
"Determines whether the bot will\n"
" check for 'alternative capabilities' (ie. autoop, autohalfop,\n"
@ -41,7 +41,7 @@ msgstr ""
"autoop,\n"
" autohalfop, autovoice) klassisten lisäksi/sijaan."
#: config.py:57
#: config.py:56
msgid ""
"Determines whether the bot will \"fall\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"
" puolioperaattori aseman/äänen antaminen on käytössä."
#: config.py:61
#: config.py:60
msgid ""
"Determines whether the bot will automatically\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 "
"kanavalle."
#: config.py:65
#: config.py:64
msgid ""
"Determines whether the bot will automatically\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 "
"ihmiset, joilla on #<kanava>,halfop valtuus liittyvät kanavalle."
#: config.py:69
#: config.py:68
msgid ""
"Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n"
@ -81,7 +81,7 @@ msgstr ""
"voice\n"
" valtuus heidän liittyessään kanavalle."
#: config.py:73
#: config.py:72
msgid ""
"Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist."
@ -89,7 +89,7 @@ msgstr ""
"Määrittää antaako botti porttikiellon ihmisille,\n"
" jotka liittyvät kanavalle ja ovat porttikieltolistalla."
#: config.py:76
#: config.py:75
msgid ""
"Determines how many seconds the bot\n"
" will automatically ban a person when banning."
@ -98,7 +98,7 @@ msgstr ""
"antaessaan\n"
" porttikieltoa automaattisesti."
#: config.py:80
#: config.py:79
msgid ""
"Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans."
@ -107,7 +107,7 @@ msgstr ""
"Tällä ei ole\n"
" vaikutusta porttikieltoihin."
#: config.py:84
#: config.py:83
msgid ""
"Extra modes that will be\n"
" 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"
" 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 ""
"\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"
" "
"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."
#: plugin.py:97
#: plugin.py:80
msgid ""
"Determines whether or not a mode has already\n"
" been applied."
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 ""
msgstr ""
"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"
"Last-Translator: \n"
"Language-Team: French <kde-i18n-doc@kde.org>\n"
@ -14,13 +14,13 @@ msgstr ""
"X-Generator: Poedit 1.5.4\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: config.py:47
#: config.py:46
msgid ""
"Determines whether this plugin is enabled.\n"
" "
msgstr "Détermine si ce plugin est activé."
#: config.py:50
#: config.py:49
msgid ""
"Determines whether this plugin will automode\n"
" 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 "
"ils n'ont pas la capacité op/halfop/voice/..."
#: config.py:53
#: config.py:52
msgid ""
"Determines whether the bot will\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, "
"autohalfop, autovoice) en plus/à la place des capacités classiques."
#: config.py:57
#: config.py:56
msgid ""
"Determines whether the bot will \"fall\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ésactivé, même si l'auto-halfopvoice est activé."
#: config.py:61
#: config.py:60
msgid ""
"Determines whether the bot will automatically\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é "
"<canal>,op lorsqu'ils rejoignent le canal."
#: config.py:65
#: config.py:64
msgid ""
"Determines whether the bot will automatically\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 "
"lorsqu'ils rejoignent le canal."
#: config.py:69
#: config.py:68
msgid ""
"Determines whether the bot will automatically\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é "
"<canal>,voice lorsqu'ils rejoingent le canal."
#: config.py:73
#: config.py:72
msgid ""
"Determines whether the bot will automatically\n"
" 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 "
"canal et qui sont sur la liste de bannissement."
#: config.py:76
#: config.py:75
msgid ""
"Determines how many seconds the bot\n"
" 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 "
"une personne."
#: config.py:80
#: config.py:79
msgid ""
"Determines how many seconds the bot will wait\n"
" 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. "
"Cela n'a aucun effet sur les bannissements."
#: config.py:84
#: config.py:83
msgid ""
"Extra modes that will be\n"
" 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 : "
"user1+o-v user2+v user3-v"
#: 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
#: plugin.py:78
msgid ""
"Determines whether or not a mode has already\n"
" been applied."

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: skizzhg <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-Transfer-Encoding: 8bit\n"
#: config.py:47
#: config.py:46
msgid ""
"Determines whether this plugin is enabled.\n"
" "
@ -18,7 +19,7 @@ msgstr ""
"Determina se il plugin è abilitato.\n"
" "
#: config.py:50
#: config.py:49
msgid ""
"Determines whether this plugin will automode\n"
" 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"
" anche se non hanno la capacità op, halfop, voice, ecc..."
#: config.py:53
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
#: config.py:52
msgid ""
"Determines whether the bot will \"fall\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"
" automatico sono attivati."
#: config.py:61
#: config.py:56
msgid ""
"Determines whether the bot will automatically\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"
" "
#: config.py:65
#: config.py:60
msgid ""
"Determines whether the bot will automatically\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"
" "
#: config.py:69
#: config.py:64
msgid ""
"Determines whether the bot will automatically\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"
" "
#: config.py:73
#: config.py:68
msgid ""
"Determines whether the bot will automatically\n"
" 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"
" "
#: config.py:76
#: config.py:71
msgid ""
"Determines how many seconds the bot\n"
" 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 ""
"Determines how many seconds the bot will wait\n"
" 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"
" 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 ""
msgstr ""
"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"
"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"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
#: config.py:47
#: config.py:46
msgid ""
"Determines whether this plugin is enabled.\n"
" "
msgstr ""
#: config.py:50
#: config.py:49
msgid ""
"Determines whether this plugin will automode\n"
" owners even if they don't have op/halfop/voice/whatever capability."
msgstr ""
#: 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
#: config.py:56
msgid ""
"Determines whether the bot will \"fall\n"
" through\" to halfop/voicing when auto-opping is turned off but\n"
" auto-halfopping/voicing are turned on."
msgstr ""
#: config.py:61
#: config.py:60
msgid ""
"Determines whether the bot will automatically\n"
" op people with the <channel>,op capability when they join the channel.\n"
" "
msgstr ""
#: config.py:65
#: config.py:64
msgid ""
"Determines whether the bot will automatically\n"
" halfop people with the <channel>,halfop capability when they join the\n"
" channel."
msgstr ""
#: config.py:69
#: config.py:68
msgid ""
"Determines whether the bot will automatically\n"
" voice people with the <channel>,voice capability when they join the\n"
" channel."
msgstr ""
#: config.py:73
#: config.py:72
msgid ""
"Determines whether the bot will automatically\n"
" ban people who join the channel and are on the banlist."
msgstr ""
#: config.py:76
#: config.py:75
msgid ""
"Determines how many seconds the bot\n"
" will automatically ban a person when banning."
msgstr ""
#: config.py:80
#: config.py:79
msgid ""
"Determines how many seconds the bot will wait\n"
" before applying a mode. Has no effect on bans."
msgstr ""
#: config.py:84
#: config.py:83
msgid ""
"Extra modes that will be\n"
" applied to a user. Example syntax: user1+o-v user2+v user3-v"
msgstr ""
#: plugin.py:49
#: plugin.py:48
#, docstring
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"
" "
"This plugin, when configured, allows the bot to automatically set modes\n"
" on users when they join."
msgstr ""
#: plugin.py:97
#: plugin.py:80
#, docstring
msgid ""
"Determines whether or not a mode has already\n"

View File

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

View File

@ -1,6 +1,5 @@
###
# Copyright (c) 2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved.
#
# 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
-------
Autocomplete: Provides command autocompletion for IRC clients that support it.
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
-----
Provides command completion for IRC clients that support it.
.. _conf-Autocomplete:
@ -30,7 +28,7 @@ Configuration
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.
@ -38,7 +36,7 @@ supybot.plugins.Autocomplete.enabled
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.

View File

@ -1,5 +1,5 @@
###
# Copyright (c) 2020-2021, Valentin Lorentz
# Copyright (c) 2020, Valentin Lorentz
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@ -60,8 +60,10 @@ __url__ = ""
from . import config
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.
reload(config)
reload(plugin)

View File

@ -1,5 +1,5 @@
###
# Copyright (c) 2020-2021, Valentin Lorentz
# Copyright (c) 2020, Valentin Lorentz
# All rights reserved.
#
# 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.
#
# 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.
#
# 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
-------
Filters bad words on outgoing messages from the bot, so the bot can't be made
to say bad words.
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
-----
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
has op.
@ -22,7 +20,6 @@ has op.
Commands
--------
.. _command-badwords-add:
add <word> [<word> ...]
@ -47,7 +44,7 @@ Configuration
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.
@ -55,7 +52,7 @@ supybot.plugins.BadWords.kick
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.
@ -63,7 +60,7 @@ supybot.plugins.BadWords.kick
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.
@ -71,7 +68,7 @@ supybot.plugins.BadWords.nastyChars
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'.
@ -79,7 +76,7 @@ supybot.plugins.BadWords.phrases
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.
@ -87,7 +84,7 @@ supybot.plugins.BadWords.public
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.
@ -95,23 +92,15 @@ supybot.plugins.BadWords.replaceMethod
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.
.. _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:
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'.
@ -119,7 +108,7 @@ supybot.plugins.BadWords.simpleReplacement
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.
@ -127,7 +116,7 @@ supybot.plugins.BadWords.stripFormatting
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.

View File

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

View File

@ -1,6 +1,5 @@
###
# Copyright (c) 2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@ -85,7 +84,7 @@ class String256(registry.String):
return s * (1024//len(s))
def __str__(self):
return self()
return self.value
conf.registerGlobalValue(BadWords, 'nastyChars',
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
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',
registry.Boolean(False, _("""Determines whether the bot will kick people with
a warning when they use bad words.""")))

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: Mikaela Suomalainen <mikaela.suomalainen@outlook.com>\n"
"Language-Team: \n"
@ -16,15 +16,15 @@ msgstr ""
"X-Poedit-Language: Finnish\n"
"X-Poedit-Country: FINLAND\n"
#: config.py:43
#: config.py:40
msgid "Would you like to add some bad words?"
msgstr "Haluaisitko lisätä joitakin pahoja sanoja?"
#: config.py:44
#: config.py:41
msgid "What words? (separate individual words by spaces)"
msgstr "Mitkä sanat? (Rajoita erilliset sanat käyttämällä välilyöntiä)."
#: config.py:68
#: config.py:53
msgid ""
"Determines what words are\n"
" considered to be 'bad' so the bot won't say them."
@ -32,71 +32,53 @@ msgstr ""
"Määrittää mitkä sanat ovat\n"
" 'pahoja', jottei botti sano niitä."
#: config.py:71
#: config.py:56
msgid ""
"Determines whether the bot will require bad\n"
" words to be independent words, or whether it will censor them within "
"other\n"
" words. For instance, if 'darn' is a bad word, then if this is true, "
"'darn'\n"
" words to be independent words, or whether it will censor them within other\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"
" 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"
" plugin."
msgstr ""
"Määrittää vaatiiko botti pahojen sanojen\n"
" olevan toisistaan riippumattomia sanoja, vai sensuroiko se ne toisten "
"sanojen\n"
" sisältä. Esimerkiksi, jos 'pah' on paha sana, ja jos tämä on asetus on "
"true, 'pah'\n"
" sensuroidaan, mutta 'pahus' ei sensuroida. Sinä luultavasti tahdot "
"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"
" olevan toisistaan riippumattomia sanoja, vai sensuroiko se ne toisten sanojen\n"
" sisältä. Esimerkiksi, jos 'pah' on paha sana, ja jos tämä on asetus on true, 'pah'\n"
" sensuroidaan, mutta 'pahus' ei sensuroida. Sinä luultavasti tahdot 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."
#: config.py:79
msgid ""
"Comma-separated groups\n"
" of words that are considered to be 'bad'."
msgstr ""
#: config.py:91
#: config.py:73
msgid ""
"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."
msgstr ""
"Määrittä mitkä merkit korvaavat pahat sanat; \n"
" osia näistä merkeistä, jotka sopivat pahan sanan kokoon,\n"
" käytetään määrittämiesi pahojen sanojen korvaamisessa."
#: config.py:99
#: config.py:81
msgid ""
"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"
" bad word with the same number of 'nasty characters' (like those used in\n"
" comic books; configurable by supybot.plugins.BadWords.nastyChars).\n"
" 'simple' will replace a bad word with a simple strings (regardless of "
"the\n"
" 'simple' will replace a bad word with a simple strings (regardless of the\n"
" length of the bad word); this string is configurable via\n"
" supybot.plugins.BadWords.simpleReplacement."
msgstr ""
"Määrittää millä tavalla\n"
" pahat sanat korvataan. 'nastyCharacters' (oletus) korvaa\n"
" pahan sanan samalla määrällä 'häijyjä merkkejä' (kuten ne jotka ovat\n"
" sarjakuvissa; muokattavissa supybot.plugins.BadWords.nastyChars "
"asetuksella).\n"
" 'simple' korvaa pahan sanan yksinkertaisella merkkiketjulla "
"(riippumatta\n"
" sarjakuvissa; muokattavissa supybot.plugins.BadWords.nastyChars asetuksella).\n"
" 'simple' korvaa pahan sanan yksinkertaisella merkkiketjulla (riippumatta\n"
" pahan sanan koosta); tämä merkkiketju on muokattavissa\n"
" asetuksella supybot.plugins.BadWords.simpleReplacement."
#: config.py:107
#: config.py:89
msgid ""
"Determines what word will replace bad\n"
" words if the replacement method is 'simple'."
@ -104,24 +86,21 @@ msgstr ""
"Määrittää mikä sana korvaa pahat\n"
" sanat jos korvausmenetelmä on 'simple'."
#: config.py:110
#: config.py:92
msgid ""
"Determines whether the bot will strip\n"
" formatting characters from messages before it checks them for bad "
"words.\n"
" If this is False, it will be relatively trivial to circumvent this "
"plugin's\n"
" formatting characters from messages before it checks them for bad words.\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"
" plugins that do coloring or bolding of text."
msgstr ""
"Määrittää riisuuko botti\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"
" suodatusta. Jos se kuitenkin on 'True', se on huonosti "
"vuorovaikutuksessa\n"
" suodatusta. Jos se kuitenkin on 'True', se on huonosti vuorovaikutuksessa\n"
" tekstin värittämistä tai korostamista tekevien lisäosien kanssa."
#: config.py:117
#: config.py:99
msgid ""
"Determines whether the bot will kick people with\n"
" a warning when they use bad words."
@ -129,7 +108,7 @@ msgstr ""
"Määrittää potkiiko botti ihmiset\n"
" varoituksella jos he käyttävät pahoja sanoja."
#: config.py:120
#: config.py:102
msgid ""
"You have been kicked for using a word\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"
" kieltä tulevaisuudessa."
#: config.py:122
#: config.py:104
msgid ""
"Determines the kick message used by the\n"
" bot when kicking users for saying bad words."
@ -154,11 +133,10 @@ msgid ""
" has op."
msgstr ""
"Säilyttää listaa sanoista, joita botin ei ole sallittua sanoa.\n"
" Voidaan myös käyttää potkimaan ihmisiä, jotka sanovat näitä sanoja, jos "
"botilla\n"
" Voidaan myös käyttää potkimaan ihmisiä, jotka sanovat näitä sanoja, jos botilla\n"
" on opit."
#: plugin.py:127
#: plugin.py:113
msgid ""
"takes no arguments\n"
"\n"
@ -170,11 +148,11 @@ msgstr ""
" Palauttaa listan sanoista, joita sensuroidaan.\n"
" "
#: plugin.py:137
#: plugin.py:123
msgid "I'm not currently censoring any bad words."
msgstr "En ole sensuroimassa yhtään pahaa sanaa juuri nyt."
#: plugin.py:142
#: plugin.py:128
msgid ""
"<word> [<word> ...]\n"
"\n"
@ -186,7 +164,7 @@ msgstr ""
" Lisää kaikki <sana>(t) sensuroitaviin sanoihin.\n"
" "
#: plugin.py:162
#: plugin.py:140
msgid ""
"<word> [<word> ...]\n"
"\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: Valentin Lorentz <progval@gmail.com>\n"
"Language-Team: Limnoria <progval@gmail.com>\n"
@ -13,124 +13,82 @@ msgstr ""
"X-Poedit-Country: France\n"
"X-Poedit-SourceCharset: ASCII\n"
#: config.py:43
#: config.py:40
msgid "Would you like to add some bad words?"
msgstr "Voulez-vous ajouter quelques mots interdits ?"
#: config.py:44
#: config.py:41
msgid "What words? (separate individual words by spaces)"
msgstr "Quels mots ? (séparez chaque mot par un espace)"
#: config.py:68
#: config.py:53
msgid ""
"Determines what words are\n"
" considered to be 'bad' so the bot won't say them."
msgstr ""
"Détermine quels mots sont considérés comme interdits, donc le bot ne les "
"dira pas."
msgstr "Détermine quels mots sont considérés comme interdits, donc le bot ne les dira pas."
#: config.py:71
#: config.py:56
msgid ""
"Determines whether the bot will require bad\n"
" words to be independent words, or whether it will censor them within "
"other\n"
" words. For instance, if 'darn' is a bad word, then if this is true, "
"'darn'\n"
" words to be independent words, or whether it will censor them within other\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"
" 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"
" plugin."
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."
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."
#: config.py:79
msgid ""
"Comma-separated groups\n"
" of words that are considered to be 'bad'."
msgstr ""
#: config.py:91
#: config.py:73
msgid ""
"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."
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."
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."
#: config.py:99
#: config.py:81
msgid ""
"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"
" bad word with the same number of 'nasty characters' (like those used in\n"
" comic books; configurable by supybot.plugins.BadWords.nastyChars).\n"
" 'simple' will replace a bad word with a simple strings (regardless of "
"the\n"
" 'simple' will replace a bad word with a simple strings (regardless of the\n"
" length of the bad word); this string is configurable via\n"
" supybot.plugins.BadWords.simpleReplacement."
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."
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."
#: config.py:107
#: config.py:89
msgid ""
"Determines what word will replace bad\n"
" words if the replacement method is 'simple'."
msgstr ""
"Détermin quel mot remplacera les mots interdits, si la méthode de "
"remplacement est 'simple'."
msgstr "Détermin quel mot remplacera les mots interdits, si la méthode de remplacement est 'simple'."
#: config.py:110
#: config.py:92
msgid ""
"Determines whether the bot will strip\n"
" formatting characters from messages before it checks them for bad "
"words.\n"
" If this is False, it will be relatively trivial to circumvent this "
"plugin's\n"
" formatting characters from messages before it checks them for bad words.\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"
" plugins that do coloring or bolding of text."
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"
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"
#: config.py:117
#: config.py:99
msgid ""
"Determines whether the bot will kick people with\n"
" a warning when they use bad words."
msgstr ""
"Détermine si le bot kickera les gens avec un avertissement lorsqu'ils "
"utilisent des gros mots."
msgstr "Détermine si le bot kickera les gens avec un avertissement lorsqu'ils utilisent des gros mots."
#: config.py:120
#: config.py:102
msgid ""
"You have been kicked for using a word\n"
" prohibited in the presence of this bot. Please use more appropriate\n"
" language in the future."
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."
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."
#: config.py:122
#: config.py:104
msgid ""
"Determines the kick message used by the\n"
" bot when kicking users for saying bad words."
msgstr ""
"Détermine le message de kick utilisé par le bot lorsqu'il kick des "
"utilisateurs utilisant des gros mots."
msgstr "Détermine le message de kick utilisé par le bot lorsqu'il kick des utilisateurs utilisant des gros mots."
#: plugin.py:46
msgid ""
@ -139,7 +97,7 @@ msgid ""
" has op."
msgstr ""
#: plugin.py:127
#: plugin.py:113
msgid ""
"takes no arguments\n"
"\n"
@ -150,11 +108,11 @@ msgstr ""
"\n"
"Retourne une liste de mots qui sont censurés."
#: plugin.py:137
#: plugin.py:123
msgid "I'm not currently censoring any bad words."
msgstr "Je ne censure actuellement aucun mot."
#: plugin.py:142
#: plugin.py:128
msgid ""
"<word> [<word> ...]\n"
"\n"
@ -165,7 +123,7 @@ msgstr ""
"\n"
"Ajoute tous les mots à la liste des mots que le bot ne doit pas dire."
#: plugin.py:162
#: plugin.py:140
msgid ""
"<word> [<word> ...]\n"
"\n"
@ -175,3 +133,4 @@ msgstr ""
"<mot> [<mot> ...]\n"
"\n"
"Retire les <mot>s de la liste des mots que le bot ne doit pas dire."

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"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"
"Last-Translator: skizzhg <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-Transfer-Encoding: 8bit\n"
#: config.py:43
#: config.py:40
msgid "Would you like to add some bad words?"
msgstr "Vuoi aggiungere delle parole volgari?"
#: config.py:44
#: config.py:41
msgid "What words? (separate individual words by spaces)"
msgstr "Quali parole? (separa ciascuna con uno spazio)"
#: config.py:68
#: config.py:53
msgid ""
"Determines what words are\n"
" considered to be 'bad' so the bot won't say them."
msgstr ""
"Determina quali parole sono considerate \"volgari\" per cui il bot non le "
"pronuncerà."
"Determina quali parole sono considerate \"volgari\" per cui il bot non le pronuncerà."
#: config.py:71
#: config.py:56
msgid ""
"Determines whether the bot will require bad\n"
" words to be independent words, or whether it will censor them within "
"other\n"
" words. For instance, if 'darn' is a bad word, then if this is true, "
"'darn'\n"
" words to be independent words, or whether it will censor them within other\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"
" 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"
" plugin."
msgstr ""
"Determina se il bot richieda che le parole volgari siano indipendenti o "
"all'interno\n"
" di altre parole. Ad esempio, se \"merda\" è volgare e questa opzione è "
"impostata\n"
" a True, verrà censurata, ma \"merdata\" non lo sarà; probabilmente si "
"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"
"Determina se il bot richieda che le parole volgari siano indipendenti o all'interno\n"
" di altre parole. Ad esempio, se \"merda\" è volgare e questa opzione è impostata\n"
" a True, verrà censurata, ma \"merdata\" non lo sarà; probabilmente si 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."
#: config.py:79
msgid ""
"Comma-separated groups\n"
" of words that are considered to be 'bad'."
msgstr ""
#: config.py:91
#: config.py:73
msgid ""
"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."
msgstr ""
"Determina quali caratteri sostituiranno le parole volgari, verranno "
"utilizzati\n"
"Determina quali caratteri sostituiranno le parole volgari, verranno utilizzati\n"
" rimpiazzando la parola da censurare in tutta la sua lunghezza."
#: config.py:99
#: config.py:81
msgid ""
"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"
" bad word with the same number of 'nasty characters' (like those used in\n"
" comic books; configurable by supybot.plugins.BadWords.nastyChars).\n"
" 'simple' will replace a bad word with a simple strings (regardless of "
"the\n"
" 'simple' will replace a bad word with a simple strings (regardless of the\n"
" length of the bad word); this string is configurable via\n"
" supybot.plugins.BadWords.simpleReplacement."
msgstr ""
"Determina come verranno sostituite le parole volgari. \"nastyCharacters"
"\" (predefinito)\n"
" rimpiazzerà la parola con lo stesso numero di \"brutti caratteri\" (come "
"quelli usati\n"
" nei fumetti; configurabile da supybot.plugins.BadWords.nastyChars). "
"\"simple\" sostituirà\n"
" una parola volgare con una stringa semplice (indipendentemente dalla "
"lunghezza della parola);\n"
" questa stringa è configurabile tramite supybot.plugins.BadWords."
"simpleReplacement."
"Determina come verranno sostituite le parole volgari. \"nastyCharacters\" (predefinito)\n"
" rimpiazzerà la parola con lo stesso numero di \"brutti caratteri\" (come quelli usati\n"
" nei fumetti; configurabile da supybot.plugins.BadWords.nastyChars). \"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 ""
"Determines what word will replace bad\n"
" words if the replacement method is 'simple'."
msgstr ""
"Determina quale parola sostituirà quelle volgari se viene usato il metodo "
"\"simple\"."
"Determina quale parola sostituirà quelle volgari se viene usato il metodo \"simple\"."
#: config.py:110
#: config.py:92
msgid ""
"Determines whether the bot will strip\n"
" formatting characters from messages before it checks them for bad "
"words.\n"
" If this is False, it will be relatively trivial to circumvent this "
"plugin's\n"
" formatting characters from messages before it checks them for bad words.\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"
" plugins that do coloring or bolding of text."
msgstr ""
"Determina se il bot rimuoverà i caratteri di formattazione prima di "
"controllare\n"
" che contengano parole volgari. Se impostato a False sarà relativamente "
"facile\n"
" aggirare i filtri di questo plugin; tuttavia se impostato a True non "
"interagirà\n"
"Determina se il bot rimuoverà i caratteri di formattazione prima di controllare\n"
" che contengano parole volgari. Se impostato a False sarà relativamente 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."
#: config.py:117
#: config.py:99
msgid ""
"Determines whether the bot will kick people with\n"
" a warning when they use bad words."
msgstr ""
"Determina se il bot caccerà (kick) gli utenti con un avvertimento quando "
"usano volgarità."
"Determina se il bot caccerà (kick) gli utenti con un avvertimento quando usano volgarità."
#: config.py:120
#: config.py:102
msgid ""
"You have been kicked for using a word\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"
" In futuro utilizza un linguaggio più appropriato."
#: config.py:122
#: config.py:104
msgid ""
"Determines the kick message used by the\n"
" bot when kicking users for saying bad words."
msgstr ""
"Determina il messaggio del kick utilizzato dal bot per espellere gli utenti "
"che scrivono volgarità."
"Determina il messaggio del kick utilizzato dal bot per espellere gli utenti che scrivono volgarità."
#: plugin.py:46
#, docstring
msgid ""
"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"
@ -151,7 +122,8 @@ msgstr ""
" Se il bot ha lo stato di operatore, può essere anche utilizzato\n"
" per cacciare (kick) utenti che scrivono queste parole."
#: plugin.py:127
#: plugin.py:113
#, docstring
msgid ""
"takes no arguments\n"
"\n"
@ -163,11 +135,12 @@ msgstr ""
" Riporta l'elenco delle parole censurate.\n"
" "
#: plugin.py:137
#: plugin.py:123
msgid "I'm not currently censoring any bad words."
msgstr "Al momento non ho alcuna parola censurata."
#: plugin.py:142
#: plugin.py:128
#, docstring
msgid ""
"<word> [<word> ...]\n"
"\n"
@ -179,7 +152,8 @@ msgstr ""
" Aggiunge <parola> all'elenco di quelle da censurare.\n"
" "
#: plugin.py:162
#: plugin.py:140
#, docstring
msgid ""
"<word> [<word> ...]\n"
"\n"
@ -190,3 +164,4 @@ msgstr ""
"\n"
" Rimuove <parola> dall'elenco di quelle da censurare.\n"
" "

View File

@ -5,31 +5,31 @@
msgid ""
msgstr ""
"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"
"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"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
#: config.py:43
#: config.py:42
msgid "Would you like to add some bad words?"
msgstr ""
#: config.py:44
#: config.py:43
msgid "What words? (separate individual words by spaces)"
msgstr ""
#: config.py:68
#: config.py:55
msgid ""
"Determines what words are\n"
" considered to be 'bad' so the bot won't say them."
msgstr ""
#: config.py:71
#: config.py:58
msgid ""
"Determines whether the bot will require bad\n"
" words to be independent words, or whether it will censor them within other\n"
@ -40,20 +40,14 @@ msgid ""
" plugin."
msgstr ""
#: config.py:79
msgid ""
"Comma-separated groups\n"
" of words that are considered to be 'bad'."
msgstr ""
#: config.py:91
#: config.py:75
msgid ""
"Determines what characters will replace bad words; a\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."
msgstr ""
#: config.py:99
#: config.py:83
msgid ""
"Determines the manner in which\n"
" bad words will be replaced. 'nastyCharacters' (the default) will replace a\n"
@ -64,13 +58,13 @@ msgid ""
" supybot.plugins.BadWords.simpleReplacement."
msgstr ""
#: config.py:107
#: config.py:91
msgid ""
"Determines what word will replace bad\n"
" words if the replacement method is 'simple'."
msgstr ""
#: config.py:110
#: config.py:94
msgid ""
"Determines whether the bot will strip\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."
msgstr ""
#: config.py:117
msgid ""
"Determines whether the bot will filter its own\n"
" messages."
msgstr ""
#: config.py:120
#: config.py:101
msgid ""
"Determines whether the bot will kick people with\n"
" a warning when they use bad words."
msgstr ""
#: config.py:123
#: config.py:104
msgid ""
"You have been kicked for using a word\n"
" prohibited in the presence of this bot. Please use more appropriate\n"
" language in the future."
msgstr ""
#: config.py:125
#: config.py:106
msgid ""
"Determines the kick message used by the\n"
" bot when kicking users for saying bad words."
@ -112,7 +100,7 @@ msgid ""
" has op."
msgstr ""
#: plugin.py:127
#: plugin.py:115
#, docstring
msgid ""
"takes no arguments\n"
@ -121,11 +109,11 @@ msgid ""
" "
msgstr ""
#: plugin.py:137
#: plugin.py:125
msgid "I'm not currently censoring any bad words."
msgstr ""
#: plugin.py:142
#: plugin.py:130
#, docstring
msgid ""
"<word> [<word> ...]\n"
@ -134,7 +122,7 @@ msgid ""
" "
msgstr ""
#: plugin.py:162
#: plugin.py:142
#, docstring
msgid ""
"<word> [<word> ...]\n"

View File

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

View File

@ -1,6 +1,5 @@
###
# Copyright (c) 2002-2004, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved.
#
# 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
-------
Basic channel management commands. Many of these commands require their caller
to have the #channel,op capability. This plugin is loaded by default.
Usage
-----
This plugin provides various commands for channel management, such
as setting modes and channel-wide bans/ignores/capabilities. This is
a core Supybot plugin that should not be removed!
@ -20,7 +18,6 @@ a core Supybot plugin that should not be removed!
Commands
--------
.. _command-channel-alert:
alert [<channel>] <text>
@ -114,7 +111,7 @@ halfop [<channel>] [<nick> ...]
.. _command-channel-iban:
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:
@ -138,8 +135,8 @@ invite [<channel>] <nick>
.. _command-channel-kban:
kban [<channel>] [--{exact,nick,user,host,account}] <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.
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 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:
@ -225,7 +222,7 @@ Configuration
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.
@ -233,7 +230,7 @@ supybot.plugins.Channel.alwaysRejoin
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.
@ -241,7 +238,7 @@ supybot.plugins.Channel.nicksInPrivate
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.
@ -249,7 +246,7 @@ supybot.plugins.Channel.partMsg
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.
@ -257,7 +254,7 @@ supybot.plugins.Channel.public
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.

View File

@ -1,6 +1,5 @@
###
# Copyright (c) 2004-2005, Jeremiah Fincher
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved.
#
# 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) 2009, James McCoy
# Copyright (c) 2010-2021, Valentin Lorentz
# All rights reserved.
#
# 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