mirror of
https://github.com/Cog-Creators/Red-DiscordBot.git
synced 2025-12-06 01:12:33 -05:00
Compare commits
230 Commits
3.3.2
...
V3/feature
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7e93803c5b | ||
|
|
9588b1fa8f | ||
|
|
bed1202f06 | ||
|
|
c6fa5620f4 | ||
|
|
5692ab3228 | ||
|
|
8f5118d257 | ||
|
|
5417d871c6 | ||
|
|
930dbda631 | ||
|
|
2e4fd67f87 | ||
|
|
7e5009345c | ||
|
|
fdf7e4d2ab | ||
|
|
ad503e3065 | ||
|
|
b49b53934d | ||
|
|
df410529b0 | ||
|
|
477186d09d | ||
|
|
81f146a2ef | ||
|
|
84d0282815 | ||
|
|
d2de3c109a | ||
|
|
aad36c7430 | ||
|
|
4c62c67fd4 | ||
|
|
144b7b36d0 | ||
|
|
802641ce6b | ||
|
|
2d63e3d6aa | ||
|
|
728252ac87 | ||
|
|
79d042ad29 | ||
|
|
dd4095b15b | ||
|
|
1cf8308d03 | ||
|
|
4e890814ff | ||
|
|
175fbebd73 | ||
|
|
879d21c528 | ||
|
|
c7202b353d | ||
|
|
3a0574eae8 | ||
|
|
70c733e146 | ||
|
|
a64c28aa44 | ||
|
|
35365a7154 | ||
|
|
9594284f6c | ||
|
|
0358473af5 | ||
|
|
8d553a3fc6 | ||
|
|
373dcded2c | ||
|
|
e59d52bae4 | ||
|
|
fa00314b77 | ||
|
|
7aad3ae3b5 | ||
|
|
6c56e47083 | ||
|
|
6c048fad01 | ||
|
|
593079dbbb | ||
|
|
2761244d2e | ||
|
|
f58f6bb6d2 | ||
|
|
da83e02749 | ||
|
|
76efb16f96 | ||
|
|
d411873503 | ||
|
|
f0a4c1c252 | ||
|
|
1f845a4119 | ||
|
|
17496ff5cf | ||
|
|
e3322af384 | ||
|
|
b1d394eac5 | ||
|
|
fd8ff7d7cf | ||
|
|
bc19b0d103 | ||
|
|
aea6f68598 | ||
|
|
332bcae24f | ||
|
|
4335b3b2d4 | ||
|
|
d6435eff85 | ||
|
|
2c313594da | ||
|
|
bc21f77976 | ||
|
|
dbcb179523 | ||
|
|
35e83855a8 | ||
|
|
6b086e3eb2 | ||
|
|
049f23071c | ||
|
|
e6c46bf4da | ||
|
|
6984dca394 | ||
|
|
7a86cc4bf3 | ||
|
|
219586d55d | ||
|
|
6a00c0ee7e | ||
|
|
873c7be99e | ||
|
|
c9cfa92b04 | ||
|
|
ff46ca546d | ||
|
|
f1ba57b78b | ||
|
|
4cf83b9ef4 | ||
|
|
3702e2e998 | ||
|
|
30c1adfe5b | ||
|
|
c75035bf6e | ||
|
|
59358e7bac | ||
|
|
19fa0b968f | ||
|
|
f2d02a6f46 | ||
|
|
05ec73266c | ||
|
|
a9acb80132 | ||
|
|
ed89f70f98 | ||
|
|
45afaa8ec8 | ||
|
|
4757c2c945 | ||
|
|
65395185c3 | ||
|
|
f2f3ac7d42 | ||
|
|
cb999bda7b | ||
|
|
cd14bccdc8 | ||
|
|
cf6966058e | ||
|
|
74b209bcc8 | ||
|
|
4a97020b78 | ||
|
|
e0d8942741 | ||
|
|
4f25e6c1ad | ||
|
|
81b4a1978b | ||
|
|
87d828a1b0 | ||
|
|
e52ff98cad | ||
|
|
7cabc876f5 | ||
|
|
8fa47cb789 | ||
|
|
ef76affd77 | ||
|
|
38a034e59b | ||
|
|
fb26ecf577 | ||
|
|
de99aac3ad | ||
|
|
4d9d224917 | ||
|
|
ac46b51d41 | ||
|
|
7aff7962f0 | ||
|
|
1a96f276f8 | ||
|
|
480c3129bd | ||
|
|
981661ea68 | ||
|
|
51f7d6cea2 | ||
|
|
7d28581915 | ||
|
|
4a0f23b0ea | ||
|
|
aaee2d9294 | ||
|
|
d5c960096e | ||
|
|
0c94ce6cc3 | ||
|
|
f280eea788 | ||
|
|
af7b0e4e1f | ||
|
|
ef35fc0c5f | ||
|
|
ca1f39a260 | ||
|
|
b92d61e154 | ||
|
|
70ff884ebb | ||
|
|
6f6c536236 | ||
|
|
a1095285e4 | ||
|
|
00d20f14b9 | ||
|
|
560e0f7334 | ||
|
|
fc2dce6882 | ||
|
|
bd3d0dd64d | ||
|
|
f824d09ed3 | ||
|
|
d7c5f86ce7 | ||
|
|
c760b43e5a | ||
|
|
b1fe807b47 | ||
|
|
0d6a7eb797 | ||
|
|
bf6390d72e | ||
|
|
e595f1859a | ||
|
|
06930ebe2c | ||
|
|
08c96a6794 | ||
|
|
61db89e89d | ||
|
|
a2c0e4ca2e | ||
|
|
b08a950c37 | ||
|
|
ad979180e5 | ||
|
|
465812b673 | ||
|
|
f59e77002b | ||
|
|
e4018ec677 | ||
|
|
df7ca65108 | ||
|
|
d12fcac9af | ||
|
|
66fc28ec1b | ||
|
|
10ad2a559a | ||
|
|
b8ac70e59a | ||
|
|
7492636818 | ||
|
|
36a0eabf4a | ||
|
|
cf4fdbbab1 | ||
|
|
f1b6b5f6f9 | ||
|
|
e06b3fceb5 | ||
|
|
4628dd07e4 | ||
|
|
55a3d9b157 | ||
|
|
c70c1d97e5 | ||
|
|
da4e4d4ad0 | ||
|
|
3d9ee3f2b4 | ||
|
|
b9331ffa55 | ||
|
|
2b0935c4aa | ||
|
|
9d7047864e | ||
|
|
20d507dbef | ||
|
|
be7d1d2cd2 | ||
|
|
587968710f | ||
|
|
a0b30bb3ae | ||
|
|
60e954634d | ||
|
|
ffecf1ed15 | ||
|
|
b7a142c21e | ||
|
|
5716cebb0f | ||
|
|
ff68538085 | ||
|
|
7c251b8017 | ||
|
|
bf5917177a | ||
|
|
dacfb931bb | ||
|
|
97d77f5c51 | ||
|
|
fce8186759 | ||
|
|
d35f6abca0 | ||
|
|
cf31c22e5d | ||
|
|
3f7c2e8842 | ||
|
|
ecdcc27749 | ||
|
|
497d244f95 | ||
|
|
a738736d6b | ||
|
|
a4ce2d01ce | ||
|
|
41c2b76d8d | ||
|
|
35ebc4899e | ||
|
|
9552d210f5 | ||
|
|
9370b5110e | ||
|
|
7009be8922 | ||
|
|
c1a96c83fb | ||
|
|
5d66e4eaf8 | ||
|
|
ed267d17f2 | ||
|
|
6e91ebeb3d | ||
|
|
d70c6e1734 | ||
|
|
4de4c32c0e | ||
|
|
637ae34839 | ||
|
|
d23144bc61 | ||
|
|
e90868072e | ||
|
|
980d2a8dc3 | ||
|
|
eef5ddb416 | ||
|
|
3d7ff7a149 | ||
|
|
287edb755d | ||
|
|
8c612a96c8 | ||
|
|
efe67e2acc | ||
|
|
2cdf3c16ab | ||
|
|
a88b2af4a9 | ||
|
|
b9f07e8684 | ||
|
|
d957e44e1e | ||
|
|
15e3437001 | ||
|
|
eebea59fe3 | ||
|
|
5074f2dbab | ||
|
|
0f364a6d13 | ||
|
|
d9db03bca3 | ||
|
|
b9e2e1098f | ||
|
|
a126da5f23 | ||
|
|
23eae27a8f | ||
|
|
3e1bb88ab7 | ||
|
|
4de7ce32dd | ||
|
|
6128d54601 | ||
|
|
4d81887bcf | ||
|
|
2e5dc82692 | ||
|
|
4afe1ff569 | ||
|
|
3ff127d514 | ||
|
|
ea3ca66303 | ||
|
|
279f0e4f6c | ||
|
|
61fc00dc08 | ||
|
|
d6f9ddc3af | ||
|
|
b52c838018 | ||
|
|
e0de25ed65 |
6
.github/CODEOWNERS
vendored
6
.github/CODEOWNERS
vendored
@@ -1,7 +1,5 @@
|
|||||||
# Default
|
|
||||||
* @Twentysix26
|
|
||||||
|
|
||||||
# Core
|
# Core
|
||||||
|
redbot/core/apis/audio/** @aikaterna @Drapersniper
|
||||||
redbot/core/bank.py @palmtree5
|
redbot/core/bank.py @palmtree5
|
||||||
redbot/core/checks.py @tekulvw
|
redbot/core/checks.py @tekulvw
|
||||||
redbot/core/cli.py @tekulvw
|
redbot/core/cli.py @tekulvw
|
||||||
@@ -30,7 +28,7 @@ redbot/core/utils/dbtools.py @mikeshardmind
|
|||||||
# Cogs
|
# Cogs
|
||||||
redbot/cogs/admin/* @tekulvw
|
redbot/cogs/admin/* @tekulvw
|
||||||
redbot/cogs/alias/* @tekulvw
|
redbot/cogs/alias/* @tekulvw
|
||||||
redbot/cogs/audio/* @aikaterna @Drapersniper
|
redbot/cogs/audio/** @aikaterna @Drapersniper
|
||||||
redbot/cogs/bank/* @tekulvw
|
redbot/cogs/bank/* @tekulvw
|
||||||
redbot/cogs/cleanup/* @palmtree5
|
redbot/cogs/cleanup/* @palmtree5
|
||||||
redbot/cogs/customcom/* @palmtree5
|
redbot/cogs/customcom/* @palmtree5
|
||||||
|
|||||||
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
blank_issues_enabled: true
|
||||||
|
contact_links:
|
||||||
|
- name: Support question
|
||||||
|
url: https://discord.gg/red
|
||||||
|
about: For any questions regarding on how to operate and run Red.
|
||||||
12
.github/workflows/publish_crowdin.yml
vendored
12
.github/workflows/publish_crowdin.yml
vendored
@@ -35,9 +35,6 @@ jobs:
|
|||||||
- name: Download translations
|
- name: Download translations
|
||||||
run: |
|
run: |
|
||||||
make download_translations
|
make download_translations
|
||||||
- name: Remove files from PR which only have a date changed
|
|
||||||
run: |
|
|
||||||
git checkout HEAD -- $(git diff HEAD --numstat | awk 'BEGIN {ORS=" "} $1 == "1" && $2 == "1" && $3 ~ /.po$/ {print $3}')
|
|
||||||
- name: Create Pull Request
|
- name: Create Pull Request
|
||||||
uses: peter-evans/create-pull-request@v2
|
uses: peter-evans/create-pull-request@v2
|
||||||
with:
|
with:
|
||||||
@@ -47,12 +44,5 @@ jobs:
|
|||||||
body: |
|
body: |
|
||||||
This is an automated PR.
|
This is an automated PR.
|
||||||
Please ensure that there are no errors or invalid files are in the PR.
|
Please ensure that there are no errors or invalid files are in the PR.
|
||||||
labels: "Automated PR, Category: i18n"
|
labels: "Automated PR, Category: i18n, Changelog Entry: Skipped"
|
||||||
branch: "automated/i18n"
|
branch: "automated/i18n"
|
||||||
- name: Repository Dispatch
|
|
||||||
uses: peter-evans/repository-dispatch@v1
|
|
||||||
with:
|
|
||||||
token: ${{ secrets.cogcreators_bot_repo_scoped }}
|
|
||||||
repository: Cog-Creators/Red-DiscordBot
|
|
||||||
event-type: dispatched_test
|
|
||||||
client-payload: '{"ref": "automated/i18n"}'
|
|
||||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -6,6 +6,7 @@
|
|||||||
!/tests/cogs/dataconverter/data/**/*.json
|
!/tests/cogs/dataconverter/data/**/*.json
|
||||||
Pipfile
|
Pipfile
|
||||||
Pipfile.lock
|
Pipfile.lock
|
||||||
|
.directory
|
||||||
|
|
||||||
### JetBrains template
|
### JetBrains template
|
||||||
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
|
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
|
||||||
|
|||||||
@@ -11,9 +11,8 @@
|
|||||||
* [4.4 Make](#44-make)
|
* [4.4 Make](#44-make)
|
||||||
* [4.5 Keeping your dependencies up to date](#45-keeping-your-dependencies-up-to-date)
|
* [4.5 Keeping your dependencies up to date](#45-keeping-your-dependencies-up-to-date)
|
||||||
* [4.6 To contribute changes](#46-to-contribute-changes)
|
* [4.6 To contribute changes](#46-to-contribute-changes)
|
||||||
* [4.7 Using towncrier](#47-using-towncrier)
|
* [4.7 How To Report A Bug](#47-how-to-report-a-bug)
|
||||||
* [4.8 How To Report A Bug](#48-how-to-report-a-bug)
|
* [4.8 How To Suggest A Feature Or Enhancement](#48-how-to-suggest-a-feature-or-enhancement)
|
||||||
* [4.9 How To Suggest A Feature Or Enhancement](#49-how-to-suggest-a-feature-or-enhancement)
|
|
||||||
* [5. Code Review Process](#5-code-review-process)
|
* [5. Code Review Process](#5-code-review-process)
|
||||||
* [5.1 Issues](#51-issues)
|
* [5.1 Issues](#51-issues)
|
||||||
* [5.2 Pull Requests](#52-pull-requests)
|
* [5.2 Pull Requests](#52-pull-requests)
|
||||||
@@ -116,39 +115,17 @@ Whenever you pull from upstream (V3/develop on the main repository) and you noti
|
|||||||
1. Create a new branch on your fork
|
1. Create a new branch on your fork
|
||||||
2. Make the changes
|
2. Make the changes
|
||||||
3. If you like the changes and think the main Red project could use it:
|
3. If you like the changes and think the main Red project could use it:
|
||||||
* Create a towncrier entry for the changes. (See next section for details)
|
|
||||||
* Run tests with `tox` to ensure your code is up to scratch
|
* Run tests with `tox` to ensure your code is up to scratch
|
||||||
* Create a Pull Request on GitHub with your changes
|
* Create a Pull Request on GitHub with your changes
|
||||||
|
- If you are contributing a behavior change, please keep in mind that behavior changes
|
||||||
|
are conditional on them being appropriate for the project's current goals.
|
||||||
|
If you would like to reduce the risk of putting in effort for something we aren't
|
||||||
|
going to use, open an issue discussing it first.
|
||||||
|
|
||||||
### 4.7 Using towncrier
|
### 4.7 How To Report A Bug
|
||||||
|
|
||||||
Red uses towncrier to create changelogs.
|
|
||||||
|
|
||||||
To create a towncrier entry for your PR, create a file in `changelog.d` for it. If the changes are for a specific cog, place the file in the related subdirectory.
|
|
||||||
|
|
||||||
The filename should be of the format `issuenumber.changetype(.count).rst`, where `(.count)` is an optional
|
|
||||||
part of the filename should multiple entries for the same issue number and type be necessary.
|
|
||||||
If there is not an issue associated with your PR,
|
|
||||||
you may use the PR number in place of the issue number.
|
|
||||||
|
|
||||||
Valid changetypes are:
|
|
||||||
|
|
||||||
* breaking : Breaking changes
|
|
||||||
* dep : Changes to dependencies
|
|
||||||
* enhance : Enhancements
|
|
||||||
* feature : New features
|
|
||||||
* bugfix : Bugfixes
|
|
||||||
* docs : documentation improvements and additions
|
|
||||||
* removal : removal of something
|
|
||||||
* misc : any changes which don't have a user facing change, and don't belong in the changelog for users
|
|
||||||
|
|
||||||
The contents of the file should be a short, human readable description of the impact of the changes made,
|
|
||||||
not the technical details of the change.
|
|
||||||
|
|
||||||
### 4.8 How To Report A Bug
|
|
||||||
Please see our **ISSUES.MD** for more information.
|
Please see our **ISSUES.MD** for more information.
|
||||||
|
|
||||||
### 4.9 How To Suggest A Feature Or Enhancement
|
### 4.8 How To Suggest A Feature Or Enhancement
|
||||||
The goal of Red is to be as useful to as many people as possible, this means that all features must be useful to anyone and any server that uses Red.
|
The goal of Red is to be as useful to as many people as possible, this means that all features must be useful to anyone and any server that uses Red.
|
||||||
|
|
||||||
If you find yourself wanting a feature that Red does not already have, you're probably not alone. There's bound to be a great number of users out there needing the same thing and a lot of the features that Red has today have been added because of the needs of our users. Open an issue on our issues list and describe the feature you would like to see, how you would use it, how it should work, and why it would be useful to the Red community as a whole.
|
If you find yourself wanting a feature that Red does not already have, you're probably not alone. There's bound to be a great number of users out there needing the same thing and a lot of the features that Red has today have been added because of the needs of our users. Open an issue on our issues list and describe the feature you would like to see, how you would use it, how it should work, and why it would be useful to the Red community as a whole.
|
||||||
5
Makefile
5
Makefile
@@ -27,8 +27,3 @@ newenv:
|
|||||||
$(MAKE) syncenv
|
$(MAKE) syncenv
|
||||||
syncenv:
|
syncenv:
|
||||||
.venv/bin/pip install -Ur ./tools/dev-requirements.txt
|
.venv/bin/pip install -Ur ./tools/dev-requirements.txt
|
||||||
|
|
||||||
# Changelog check
|
|
||||||
checkchangelog:
|
|
||||||
bash tools/check_changelog_entries.sh
|
|
||||||
$(PYTHON) -m towncrier --draft
|
|
||||||
|
|||||||
1
changelog.d/.gitignore
vendored
1
changelog.d/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
Use websockets 8.1
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
Add caching for ignored channels/guilds.
|
|
||||||
Add caching for white/blacklist.
|
|
||||||
Add consume-rest for white/blacklist commands.
|
|
||||||
Allow ignoring channel categories.
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
Show DeprecationWarning's
|
|
||||||
1
changelog.d/admin/.gitignore
vendored
1
changelog.d/admin/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/alias/.gitignore
vendored
1
changelog.d/alias/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/audio/.gitignore
vendored
1
changelog.d/audio/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
``[p]remove`` command now accepts an URL or Index, if an URL is used it will remove all tracks in the queue with that URL.
|
|
||||||
1
changelog.d/bank/.gitignore
vendored
1
changelog.d/bank/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/cleanup/.gitignore
vendored
1
changelog.d/cleanup/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/customcom/.gitignore
vendored
1
changelog.d/customcom/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/downloader/.gitignore
vendored
1
changelog.d/downloader/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/economy/.gitignore
vendored
1
changelog.d/economy/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
Changes next_payday to last_payday. last_payday stores the latest time the command runned successfully, allows the command to dynamicly change with the PAYDAY_TIME variable, by checking if last_payday + PAYDAY_TIME >= current time.
|
|
||||||
1
changelog.d/filter/.gitignore
vendored
1
changelog.d/filter/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/general/.gitignore
vendored
1
changelog.d/general/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/image/.gitignore
vendored
1
changelog.d/image/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/mod/.gitignore
vendored
1
changelog.d/mod/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
Move ignore commands and checks into core.
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
Allow mentions in hackban and ban commands.
|
|
||||||
Have the correct lower bound on length of a snowflake for the converter.
|
|
||||||
1
changelog.d/modlog/.gitignore
vendored
1
changelog.d/modlog/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/mutes/.gitignore
vendored
1
changelog.d/mutes/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/permissions/.gitignore
vendored
1
changelog.d/permissions/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/reports/.gitignore
vendored
1
changelog.d/reports/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/streams/.gitignore
vendored
1
changelog.d/streams/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
Added ``[p]streamset timer`` command, which can be used to control how often the cog checks for livestreams.
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
Changed the YouTube streams logic to use an RSS instead of the search endpoint, significantly reducing quota usage.
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
Use new Twitch API and Bearer tokens. Escape markdown and mass mentions for "streamer_name is live!" messages, and use humanize_number for every numbers.
|
|
||||||
1
changelog.d/trivia/.gitignore
vendored
1
changelog.d/trivia/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
1
changelog.d/warnings/.gitignore
vendored
1
changelog.d/warnings/.gitignore
vendored
@@ -1 +0,0 @@
|
|||||||
!.gitignore
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
Don't use `inspect.getsource` to check for ``is_owner`` check.
|
|
||||||
@@ -1,5 +1,492 @@
|
|||||||
.. 3.3.x Changelogs
|
.. 3.3.x Changelogs
|
||||||
|
|
||||||
|
Redbot 3.3.9 (2020-06-12)
|
||||||
|
=========================
|
||||||
|
|
||||||
|
| Thanks to all these amazing people that contributed to this release:
|
||||||
|
| :ghuser:`aikaterna`, :ghuser:`Dav-Git`, :ghuser:`Drapersniper`, :ghuser:`Flame442`, :ghuser:`mikeshardmind`, :ghuser:`NeuroAssassin`, :ghuser:`Predeactor`, :ghuser:`Vexed01`
|
||||||
|
|
|
||||||
|
| **Read before updating**:
|
||||||
|
| 1. Bot owners can no longer restrict access to some commands in Permissions cog using global permissions rules. Look at `Permissions changelog <important-339-2>` for full details.
|
||||||
|
| 2. There's been a change in behavior of warning messages. Look at `Warnings changelog <important-339-1>` for full details.
|
||||||
|
|
||||||
|
|
||||||
|
End-user changelog
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Security
|
||||||
|
********
|
||||||
|
|
||||||
|
**NOTE**: If you can't update immediately, we recommend disabling the affected command until you can.
|
||||||
|
|
||||||
|
- **Mod** - ``[p]tempban`` now properly respects Discord's hierarchy rules (:issue:`3957`)
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- ``[p]info`` command can now be used when bot doesn't have Embed Links permission (:issue:`3907`, :issue:`3102`)
|
||||||
|
- Fixed ungraceful error that happened in ``[p]set custominfo`` when provided text was too long (:issue:`3923`)
|
||||||
|
- Red's start up message now shows storage type (:issue:`3935`)
|
||||||
|
|
||||||
|
Audio
|
||||||
|
*****
|
||||||
|
|
||||||
|
- Audio now properly ignores streams when max length is enabled (:issue:`3878`, :issue:`3877`)
|
||||||
|
- Commands that should work in DMs no longer error (:issue:`3880`)
|
||||||
|
|
||||||
|
Filter
|
||||||
|
******
|
||||||
|
|
||||||
|
- Fixed behavior of detecting quotes in commands for adding/removing filtered words (:issue:`3925`)
|
||||||
|
|
||||||
|
.. _important-339-2:
|
||||||
|
|
||||||
|
Permissions
|
||||||
|
***********
|
||||||
|
|
||||||
|
- **Both global and server rules** can no longer prevent guild owners from accessing commands for changing server rules. Bot owners can still use ``[p]command disable`` if they wish to completely disable any command in Permissions cog (:issue:`3955`, :issue:`3107`)
|
||||||
|
|
||||||
|
Full list of affected commands:
|
||||||
|
|
||||||
|
- ``[p]permissions acl getserver``
|
||||||
|
- ``[p]permissions acl setserver``
|
||||||
|
- ``[p]permissions acl updateserver``
|
||||||
|
- ``[p]permissions addserverrule``
|
||||||
|
- ``[p]permissions removeserverrule``
|
||||||
|
- ``[p]permissions setdefaultserverrule``
|
||||||
|
- ``[p]permissions clearserverrules``
|
||||||
|
- ``[p]permissions canrun``
|
||||||
|
- ``[p]permissions explain``
|
||||||
|
|
||||||
|
.. _important-339-1:
|
||||||
|
|
||||||
|
Warnings
|
||||||
|
********
|
||||||
|
|
||||||
|
- Warnings sent to users don't show the moderator who warned the user by default now. Newly added ``[p]warningset showmoderators`` command can be used to switch this behaviour (:issue:`3781`)
|
||||||
|
- Warn channel functionality has been fixed (:issue:`3781`)
|
||||||
|
|
||||||
|
|
||||||
|
Developer changelog
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- Added `bot.set_prefixes() <RedBase.set_prefixes()>` method that allows developers to set global/server prefixes (:issue:`3890`)
|
||||||
|
|
||||||
|
|
||||||
|
Documentation changes
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
- Added Oracle Cloud to free hosting section in :ref:`host-list` (:issue:`3916`)
|
||||||
|
|
||||||
|
Miscellaneous
|
||||||
|
-------------
|
||||||
|
|
||||||
|
- Added missing help message for Downloader, Reports and Streams cogs (:issue:`3892`)
|
||||||
|
- **Core Bot** - cooldown in ``[p]contact`` no longer applies when it's used without any arguments (:issue:`3942`)
|
||||||
|
- **Core Bot** - improved instructions on obtaining user ID in help of ``[p]dm`` command (:issue:`3946`)
|
||||||
|
- **Alias** - ``[p]alias global`` group, ``[p]alias help``, and ``[p]alias show`` commands can now be used in DMs (:issue:`3941`, :issue:`3940`)
|
||||||
|
- **Audio** - Typo fix (:issue:`3889`, :issue:`3900`)
|
||||||
|
- **Audio** - Fixed ``[p]audioset autoplay`` being available in DMs (:issue:`3899`)
|
||||||
|
- **Bank** - ``[p]bankset`` now displays bank's scope (:issue:`3954`)
|
||||||
|
- **Mod** - Preemptive fix for d.py 1.4 (:issue:`3891`)
|
||||||
|
|
||||||
|
|
||||||
|
Redbot 3.3.8 (2020-05-29)
|
||||||
|
==================================
|
||||||
|
|
||||||
|
| Thanks to all these amazing people that contributed to this release:
|
||||||
|
| :ghuser:`aikaterna`, :ghuser:`Bakersbakebread`, :ghuser:`DariusStClair`, :ghuser:`Dav-Git`, :ghuser:`Drapersniper`, :ghuser:`Flame442`, :ghuser:`jack1142`, :ghuser:`mikeshardmind`, :ghuser:`NeuroAssassin`, :ghuser:`PredaaA`, :ghuser:`Predeactor`, :ghuser:`qaisjp`, :ghuser:`Tobotimus`
|
||||||
|
|
||||||
|
End-user changelog
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- Important fixes to how PostgreSQL data backend saves data in bulks (:issue:`3829`)
|
||||||
|
- Fixed ``[p]localwhitelist`` and ``[p]localblacklist`` commands (:issue:`3857`)
|
||||||
|
- Red now includes information on how to update when sending information about being out of date (:issue:`3744`)
|
||||||
|
- Using backslashes in bot's username/nickname no longer causes issues (:issue:`3826`, :issue:`3825`)
|
||||||
|
|
||||||
|
Admin
|
||||||
|
*****
|
||||||
|
|
||||||
|
- Fixed server lock (:issue:`3815`, :issue:`3814`)
|
||||||
|
|
||||||
|
Alias
|
||||||
|
*****
|
||||||
|
|
||||||
|
- Added pagination to ``[p]alias list`` and ``[p]alias global list`` to avoid errors for users with a lot of aliases (:issue:`3844`, :issue:`3834`)
|
||||||
|
- ``[p]alias help`` should now work more reliably (:issue:`3864`)
|
||||||
|
|
||||||
|
Audio
|
||||||
|
*****
|
||||||
|
|
||||||
|
- Twitch playback is functional once again (:issue:`3873`)
|
||||||
|
- Recent errors with YouTube playback should be resolved (:issue:`3873`)
|
||||||
|
- Added new option (settable with ``[p]audioset lyrics``) that makes Audio cog prefer (prioritize) tracks with lyrics (:issue:`3519`)
|
||||||
|
- Added global daily (historical) queues (:issue:`3518`)
|
||||||
|
- Added ``[p]audioset countrycode`` that allows to set the country code for spotify searches (:issue:`3528`)
|
||||||
|
- Fixed ``[p]local search`` (:issue:`3528`, :issue:`3501`)
|
||||||
|
- Local folders with special characters should work properly now (:issue:`3528`, :issue:`3467`)
|
||||||
|
- Audio no longer fails to take the last spot in the voice channel with user limit (:issue:`3528`)
|
||||||
|
- ``[p]local play`` no longer enqueues tracks from nested folders (:issue:`3528`)
|
||||||
|
- Fixed ``[p]playlist dedupe`` not removing tracks (:issue:`3518`)
|
||||||
|
- ``[p]disconnect`` now allows to disconnect if both DJ mode and voteskip aren't enabled (:issue:`3502`, :issue:`3485`)
|
||||||
|
- Many UX improvements and fixes, including, among other things:
|
||||||
|
|
||||||
|
- Creating playlists without explicitly passing ``-scope`` no longer causes errors (:issue:`3500`)
|
||||||
|
- ``[p]playlist list`` now shows all accessible playlists if ``--scope`` flag isn't used (:issue:`3518`)
|
||||||
|
- ``[p]remove`` now also accepts a track URL in addition to queue index (:issue:`3201`)
|
||||||
|
- ``[p]playlist upload`` now accepts a playlist file uploaded in the message with a command (:issue:`3251`)
|
||||||
|
- Commands now send friendly error messages for common errors like lost Lavalink connection or bot not connected to voice channel (:issue:`3503`, :issue:`3528`, :issue:`3353`, :issue:`3712`)
|
||||||
|
|
||||||
|
CustomCommands
|
||||||
|
**************
|
||||||
|
|
||||||
|
- ``[p]customcom create`` no longer allows spaces in custom command names (:issue:`3816`)
|
||||||
|
|
||||||
|
Mod
|
||||||
|
***
|
||||||
|
|
||||||
|
- ``[p]userinfo`` now shows default avatar when no avatar is set (:issue:`3819`)
|
||||||
|
|
||||||
|
Modlog
|
||||||
|
******
|
||||||
|
|
||||||
|
- Fixed (again) ``AttributeError`` for cases whose moderator doesn't share the server with the bot (:issue:`3805`, :issue:`3784`, :issue:`3778`)
|
||||||
|
|
||||||
|
Permissions
|
||||||
|
***********
|
||||||
|
|
||||||
|
- Commands for settings ACL using yaml files now properly works on PostgreSQL data backend (:issue:`3829`, :issue:`3796`)
|
||||||
|
|
||||||
|
Warnings
|
||||||
|
********
|
||||||
|
|
||||||
|
- Warnings cog no longer allows to warn bot users (:issue:`3855`, :issue:`3854`)
|
||||||
|
|
||||||
|
|
||||||
|
Developer changelog
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
| **Important:**
|
||||||
|
| If you're using RPC, please see the full annoucement about current state of RPC in main Red server
|
||||||
|
`by clicking here <https://discord.com/channels/133049272517001216/411381123101491200/714560168465137694>`_.
|
||||||
|
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- Red now inherits from `discord.ext.commands.AutoShardedBot` for better compatibility with code expecting d.py bot (:issue:`3822`)
|
||||||
|
- Libraries using ``pkg_resources`` (like ``humanize`` or ``google-api-python-client``) that were installed through Downloader should now work properly (:issue:`3843`)
|
||||||
|
- All bot owner IDs can now be found under ``bot.owner_ids`` attribute (:issue:`3793`)
|
||||||
|
|
||||||
|
- Note: If you want to use this on bot startup (e.g. in cog's initialisation), you need to await ``bot.wait_until_red_ready()`` first
|
||||||
|
|
||||||
|
|
||||||
|
Documentation changes
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
- Added information about provisional status of RPC (:issue:`3862`)
|
||||||
|
- Revised install instructions (:issue:`3847`)
|
||||||
|
- Improved navigation in `document about updating Red <update_red>` (:issue:`3856`, :issue:`3849`)
|
||||||
|
|
||||||
|
|
||||||
|
Miscellaneous
|
||||||
|
-------------
|
||||||
|
|
||||||
|
- Few clarifications and typo fixes in few command help docstrings (:issue:`3817`, :issue:`3823`, :issue:`3837`, :issue:`3851`, :issue:`3861`)
|
||||||
|
- **Downloader** - Downloader no longer removes the repo when it fails to load it (:issue:`3867`)
|
||||||
|
|
||||||
|
|
||||||
|
Redbot 3.3.7 (2020-04-28)
|
||||||
|
=========================
|
||||||
|
|
||||||
|
This is a hotfix release fixing issue with generating messages for new cases in Modlog.
|
||||||
|
|
||||||
|
|
||||||
|
Redbot 3.3.6 (2020-04-27)
|
||||||
|
=========================
|
||||||
|
|
||||||
|
| Thanks to all these amazing people that contributed to this release:
|
||||||
|
| :ghuser:`aikaterna`, :ghuser:`Drapersniper`, :ghuser:`jack1142`, :ghuser:`Kowlin`, :ghuser:`MiniJennJenn`, :ghuser:`NeuroAssassin`, :ghuser:`PredaaA`, :ghuser:`TrustyJAID`, :ghuser:`yamikaitou`
|
||||||
|
|
||||||
|
End-user changelog
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- Converting from and to Postgres driver with ``redbot-setup convert`` have been fixed (:issue:`3714`, :issue:`3115`)
|
||||||
|
- Fixed big delays in commands that happened when the bot was owner-less (or if it only used co-owners feature) and command caller wasn't the owner (:issue:`3782`)
|
||||||
|
- Various optimizations
|
||||||
|
|
||||||
|
- Reduced calls to data backend when loading bot's commands (:issue:`3764`)
|
||||||
|
- Reduced calls to data backend when showing help for cogs/commands (:issue:`3766`)
|
||||||
|
- Improved performance for bots with big amount of guilds (:issue:`3767`)
|
||||||
|
- Mod cog no longer fetches guild's bans every 60 seconds when handling unbanning for tempbans (:issue:`3783`)
|
||||||
|
- Reduced the bot load for messages starting with a prefix when fuzzy search is disabled (:issue:`3718`)
|
||||||
|
- Aliases in Alias cog are now cached for better performance (:issue:`3788`)
|
||||||
|
|
||||||
|
Core Commands
|
||||||
|
*************
|
||||||
|
|
||||||
|
- ``[p]set avatar`` now supports setting avatar using attachment (:issue:`3747`)
|
||||||
|
- Added ``[p]set avatar remove`` subcommand for removing bot's avatar (:issue:`3757`)
|
||||||
|
- Fixed list of ignored channels that is shown in ``[p]ignore``/``[p]unignore`` (:issue:`3746`)
|
||||||
|
|
||||||
|
Audio
|
||||||
|
*****
|
||||||
|
|
||||||
|
- Age-restricted tracks, live streams, and mix playlists from YouTube should work in Audio again (:issue:`3791`)
|
||||||
|
- Soundcloud's sets and playlists with more than 50 tracks should work in Audio again (:issue:`3791`)
|
||||||
|
|
||||||
|
CustomCommands
|
||||||
|
**************
|
||||||
|
|
||||||
|
- Added ``[p]cc raw`` command that gives you the raw response of a custom command for ease of copy pasting (:issue:`3795`)
|
||||||
|
|
||||||
|
Modlog
|
||||||
|
******
|
||||||
|
|
||||||
|
- Fixed ``AttributeError`` for cases whose moderator doesn't share the server with the bot (:issue:`3784`, :issue:`3778`)
|
||||||
|
|
||||||
|
Streams
|
||||||
|
*******
|
||||||
|
|
||||||
|
- Fixed incorrect stream URLs for Twitch channels that have localised display name (:issue:`3773`, :issue:`3772`)
|
||||||
|
|
||||||
|
Trivia
|
||||||
|
******
|
||||||
|
|
||||||
|
- Fixed the error in ``[p]trivia stop`` that happened when there was no ongoing trivia session in the channel (:issue:`3774`)
|
||||||
|
|
||||||
|
Trivia Lists
|
||||||
|
************
|
||||||
|
|
||||||
|
- Updated ``leagueoflegends`` list with new changes to League of Legends (`b8ac70e <https://github.com/Cog-Creators/Red-DiscordBot/commit/b8ac70e59aa1328f246784f14f992d6ffe00d778>`_)
|
||||||
|
|
||||||
|
|
||||||
|
Developer changelog
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Utility Functions
|
||||||
|
*****************
|
||||||
|
|
||||||
|
- Added `redbot.core.utils.AsyncIter` utility class which allows you to wrap regular iterable into async iterator yielding items and sleeping for ``delay`` seconds every ``steps`` items (:issue:`3767`, :issue:`3776`)
|
||||||
|
- `bold()`, `italics()`, `strikethrough()`, and `underline()` now accept ``escape_formatting`` argument that can be used to disable escaping of markdown formatting in passed text (:issue:`3742`)
|
||||||
|
|
||||||
|
|
||||||
|
Documentation changes
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
- Added `document about updating Red <update_red>` (:issue:`3790`)
|
||||||
|
- ``pyenv`` instructions will now update ``pyenv`` if it's already installed (:issue:`3740`)
|
||||||
|
- Updated Python version in ``pyenv`` instructions (:issue:`3740`)
|
||||||
|
- Updated install docs to include Ubuntu 20.04 (:issue:`3792`)
|
||||||
|
|
||||||
|
|
||||||
|
Miscellaneous
|
||||||
|
-------------
|
||||||
|
|
||||||
|
- **Config** - JSON driver will now properly have only one lock per cog name (:issue:`3780`)
|
||||||
|
- **Core Commands** - ``[p]debuginfo`` now shows used storage type (:issue:`3794`)
|
||||||
|
- **Trivia** - Corrected spelling of Compact Disc in ``games`` list (:issue:`3759`, :issue:`3758`)
|
||||||
|
|
||||||
|
|
||||||
|
Redbot 3.3.5 (2020-04-09)
|
||||||
|
=========================
|
||||||
|
|
||||||
|
| Thanks to all these amazing people that contributed to this release:
|
||||||
|
| :ghuser:`jack1142`, :ghuser:`Kowlin`
|
||||||
|
|
||||||
|
End-user changelog
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- "Outdated" field no longer shows in ``[p]info`` when Red is up-to-date (:issue:`3730`)
|
||||||
|
|
||||||
|
Alias
|
||||||
|
*****
|
||||||
|
|
||||||
|
- Fixed regression in ``[p]alias add`` that caused it to reject commands containing arguments (:issue:`3734`)
|
||||||
|
|
||||||
|
|
||||||
|
Redbot 3.3.4 (2020-04-05)
|
||||||
|
=========================
|
||||||
|
|
||||||
|
| Thanks to all these amazing people that contributed to this release:
|
||||||
|
| :ghuser:`jack1142`, :ghuser:`kennnyshiwa`
|
||||||
|
|
||||||
|
End-user changelog
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- Fixed checks related to bank's global state that were used in commands in Bank, Economy and Trivia cogs (:issue:`3707`)
|
||||||
|
|
||||||
|
Alias
|
||||||
|
*****
|
||||||
|
|
||||||
|
- ``[p]alias add`` now sends an error when command user tries to alias doesn't exist (:issue:`3710`, :issue:`3545`)
|
||||||
|
|
||||||
|
Developer changelog
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- Bump dependencies, including update to discord.py 1.3.3 (:issue:`3723`)
|
||||||
|
|
||||||
|
Utility Functions
|
||||||
|
*****************
|
||||||
|
|
||||||
|
- `redbot.core.utils.common_filters.filter_invites` now filters ``discord.io/discord.li`` invites links (:issue:`3717`)
|
||||||
|
- Fixed false-positives in `redbot.core.utils.common_filters.filter_invites` (:issue:`3717`)
|
||||||
|
|
||||||
|
Documentation changes
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
- Versions of pre-requirements are now included in Windows install guide (:issue:`3708`)
|
||||||
|
|
||||||
|
|
||||||
|
Redbot 3.3.3 (2020-03-28)
|
||||||
|
=========================
|
||||||
|
|
||||||
|
| Thanks to all these amazing people that contributed to this release:
|
||||||
|
| :ghuser:`AnonGuy`, :ghuser:`Dav-Git`, :ghuser:`FancyJesse`, :ghuser:`Ianardo-DiCaprio`, :ghuser:`jack1142`, :ghuser:`kennnyshiwa`, :ghuser:`Kowlin`, :ghuser:`NeuroAssassin`, :ghuser:`PredaaA`, :ghuser:`Stonedestroyer`, :ghuser:`TrustyJAID`
|
||||||
|
|
||||||
|
End-user changelog
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- Delete delay for command messages has been moved from Mod cog to Core (:issue:`3638`, :issue:`3636`)
|
||||||
|
- Fixed various bugs with blacklist and whitelist (:issue:`3643`, :issue:`3642`)
|
||||||
|
- Added ``[p]set regionalformat`` command that allows users to set regional formatting that is different from bot's locale (:issue:`3677`, :issue:`3588`)
|
||||||
|
- ``[p]set locale`` allows any valid locale now, not just locales for which Red has translations (:issue:`3676`, :issue:`3596`)
|
||||||
|
- Permissions for commands in Bank, Economy and Trivia cogs can now be overriden by Permissions cog (:issue:`3672`, :issue:`3233`)
|
||||||
|
- Outages of ``pypi.org`` no longer prevent the bot from starting (:issue:`3663`)
|
||||||
|
- Fixed formatting of help strings in fuzzy search results (:issue:`3673`, :issue:`3507`)
|
||||||
|
- Fixed few deprecation warnings related to menus and uvloop (:issue:`3644`, :issue:`3700`)
|
||||||
|
|
||||||
|
Core Commands
|
||||||
|
*************
|
||||||
|
|
||||||
|
- ``[p]set game`` no longer errors when trying to clear the status (:issue:`3630`, :issue:`3628`)
|
||||||
|
- All owner notifcations in Core now use proper prefixes in messages (:issue:`3632`)
|
||||||
|
- Added ``[p]set playing`` and ``[p]set streaming`` aliases for respectively ``[p]set game`` and ``[p]set stream`` (:issue:`3646`, :issue:`3590`)
|
||||||
|
|
||||||
|
ModLog
|
||||||
|
******
|
||||||
|
|
||||||
|
- Modlog's cases now keep last known username to prevent losing that information from case's message on edit (:issue:`3674`, :issue:`3443`)
|
||||||
|
|
||||||
|
CustomCom
|
||||||
|
*********
|
||||||
|
|
||||||
|
- Added ``[p]cc search`` command that allows users to search through created custom commands (:issue:`2573`)
|
||||||
|
|
||||||
|
Cleanup
|
||||||
|
*******
|
||||||
|
|
||||||
|
- Added ``[p]cleanup spam`` command that deletes duplicate messages from the last X messages and keeps only one copy (:issue:`3688`)
|
||||||
|
- Removed regex support in ``[p]cleanup self`` (:issue:`3704`)
|
||||||
|
|
||||||
|
Downloader
|
||||||
|
**********
|
||||||
|
|
||||||
|
- ``[p]cog checkforupdates`` now includes information about cogs that can't be installed due to Red/Python version requirements (:issue:`3678`, :issue:`3448`)
|
||||||
|
|
||||||
|
General
|
||||||
|
*******
|
||||||
|
|
||||||
|
- Added more detailed mode to ``[p]serverinfo`` command that can be accessed with ``[p]serverinfo 1`` (:issue:`2382`, :issue:`3659`)
|
||||||
|
|
||||||
|
Image
|
||||||
|
*****
|
||||||
|
|
||||||
|
- Users can now specify how many images should be returned in ``[p]imgur search`` and ``[p]imgur subreddit`` using ``[count]`` argument (:issue:`3667`, :issue:`3044`)
|
||||||
|
- ``[p]imgur search`` and ``[p]imgur subreddit`` now return one image by default (:issue:`3667`, :issue:`3044`)
|
||||||
|
|
||||||
|
Mod
|
||||||
|
***
|
||||||
|
|
||||||
|
- ``[p]userinfo`` now shows user's activities (:issue:`3669`)
|
||||||
|
- ``[p]userinfo`` now shows status icon near the username (:issue:`3669`)
|
||||||
|
- Muting no longer fails if user leaves while applying overwrite (:issue:`3627`)
|
||||||
|
- Fixed error that happened when Mod cog was loaded for the first time during bot startup (:issue:`3632`, :issue:`3626`)
|
||||||
|
|
||||||
|
Permissions
|
||||||
|
***********
|
||||||
|
|
||||||
|
- Commands for setting default rules now error when user tries to deny access to command designated as being always available (:issue:`3504`, :issue:`3465`)
|
||||||
|
|
||||||
|
Streams
|
||||||
|
*******
|
||||||
|
|
||||||
|
- Fixed an error that happened when no game was set on Twitch stream (:issue:`3631`)
|
||||||
|
- Preview picture for YouTube stream alerts is now bigger (:issue:`3689`, :issue:`3685`)
|
||||||
|
- YouTube channels with a livestream that doesn't have any current viewer are now properly showing as streaming (:issue:`3690`)
|
||||||
|
- Failures in Twitch API authentication are now logged (:issue:`3657`)
|
||||||
|
|
||||||
|
Trivia
|
||||||
|
******
|
||||||
|
|
||||||
|
- Added ``[p]triviaset custom upload/delete/list`` commands for managing custom trivia lists from Discord (:issue:`3420`, :issue:`3307`)
|
||||||
|
- Trivia sessions no longer error on payout when winner's balance would exceed max balance (:issue:`3666`, :issue:`3584`)
|
||||||
|
|
||||||
|
Warnings
|
||||||
|
********
|
||||||
|
|
||||||
|
- Sending warnings to warned user can now be disabled with ``[p]warnset toggledm`` command (:issue:`2929`, :issue:`2800`)
|
||||||
|
- Added ``[p]warnset warnchannel`` command that allows to set a channel where warnings should be sent to instead of the channel command was called in (:issue:`2929`, :issue:`2800`)
|
||||||
|
- Added ``[p]warnset togglechannel`` command that allows to disable sending warn message in guild channel (:issue:`2929`, :issue:`2800`)
|
||||||
|
- ``[p]warn`` now tells the moderator when bot wasn't able to send the warning to the user (:issue:`3653`, :issue:`3633`)
|
||||||
|
|
||||||
|
|
||||||
|
Developer changelog
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Core Bot
|
||||||
|
********
|
||||||
|
|
||||||
|
- Deprecation warnings issued by Red now use correct stack level so that the cog developers can find the cause of them (:issue:`3644`)
|
||||||
|
|
||||||
|
Dev Cog
|
||||||
|
*******
|
||||||
|
|
||||||
|
- Add ``__name__`` to environment's globals (:issue:`3649`, :issue:`3648`)
|
||||||
|
|
||||||
|
|
||||||
|
Documentation changes
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
- Fixed install instructions for Mac in `install_linux_mac` (:issue:`3675`, :issue:`3436`)
|
||||||
|
- Windows install instructions now use ``choco upgrade`` commands instead of ``choco install`` to ensure up-to-date packages (:issue:`3684`)
|
||||||
|
|
||||||
|
|
||||||
|
Miscellaneous
|
||||||
|
-------------
|
||||||
|
|
||||||
|
- **Core Bot** - Command errors (i.e. command on cooldown, dm-only and guild-only commands, etc) can now be translated (:issue:`3665`, :issue:`2988`)
|
||||||
|
- **Core Bot** - ``redbot-setup`` now prints link to Getting started guide at the end of the setup (:issue:`3027`)
|
||||||
|
- **Core Bot** - Whitelist and blacklist commands now properly require passing at least one user (or role in case of local whitelist/blacklist) (:issue:`3652`, :issue:`3645`)
|
||||||
|
- **Downloader** - Fix misleading error appearing when repo name is already taken in ``[p]repo add`` (:issue:`3695`)
|
||||||
|
- **Downloader** - Improved error messages for unexpected errors in ``[p]repo add`` (:issue:`3656`)
|
||||||
|
- **Downloader** - Prevent encoding errors from crashing ``[p]cog update`` (:issue:`3639`, :issue:`3637`)
|
||||||
|
- **Trivia** - Non-finite numbers can no longer be passed to ``[p]triviaset timelimit``, ``[p]triviaset stopafter`` and ``[p]triviaset payout`` (:issue:`3668`, :issue:`3583`)
|
||||||
|
- **Utility Functions** - `redbot.core.utils.menus.menu()` now checks permissions *before* trying to clear reactions (:issue:`3589`, :issue:`3145`)
|
||||||
|
|
||||||
|
|
||||||
Redbot 3.3.2 (2020-02-28)
|
Redbot 3.3.2 (2020-02-28)
|
||||||
=========================
|
=========================
|
||||||
|
|
||||||
|
|||||||
@@ -217,6 +217,7 @@ intersphinx_mapping = {
|
|||||||
"python": ("https://docs.python.org/3", None),
|
"python": ("https://docs.python.org/3", None),
|
||||||
"dpy": (f"https://discordpy.readthedocs.io/en/v{dpy_version}/", None),
|
"dpy": (f"https://discordpy.readthedocs.io/en/v{dpy_version}/", None),
|
||||||
"motor": ("https://motor.readthedocs.io/en/stable/", None),
|
"motor": ("https://motor.readthedocs.io/en/stable/", None),
|
||||||
|
"babel": ("http://babel.pocoo.org/en/stable/", None),
|
||||||
}
|
}
|
||||||
|
|
||||||
# Extlinks
|
# Extlinks
|
||||||
|
|||||||
@@ -34,3 +34,5 @@ extend functionalities used throughout the bot, as outlined below.
|
|||||||
:members:
|
:members:
|
||||||
:exclude-members: convert
|
:exclude-members: convert
|
||||||
:no-undoc-members:
|
:no-undoc-members:
|
||||||
|
|
||||||
|
.. autoclass:: APIToken
|
||||||
|
|||||||
@@ -202,15 +202,15 @@ the built-in Economy credits::
|
|||||||
|
|
||||||
class Pets:
|
class Pets:
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.conf = Config.get_conf(self, 1234567890)
|
self.config = Config.get_conf(self, 1234567890)
|
||||||
|
|
||||||
# Here we'll assign some default costs for the pets
|
# Here we'll assign some default costs for the pets
|
||||||
self.conf.register_global(
|
self.config.register_global(
|
||||||
dog=100,
|
dog=100,
|
||||||
cat=100,
|
cat=100,
|
||||||
bird=50
|
bird=50
|
||||||
)
|
)
|
||||||
self.conf.register_user(
|
self.config.register_user(
|
||||||
pets={}
|
pets={}
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -229,7 +229,7 @@ And now that the cog is set up we'll need to create some commands that allow use
|
|||||||
|
|
||||||
# We will need to use "get_raw"
|
# We will need to use "get_raw"
|
||||||
try:
|
try:
|
||||||
cost = await self.conf.get_raw(pet_type)
|
cost = await self.config.get_raw(pet_type)
|
||||||
except KeyError:
|
except KeyError:
|
||||||
# KeyError is thrown whenever the data you try to access does not
|
# KeyError is thrown whenever the data you try to access does not
|
||||||
# exist in the registered defaults or in the saved data.
|
# exist in the registered defaults or in the saved data.
|
||||||
@@ -241,15 +241,15 @@ assign a new pet to the user. This is very easily done using the V3 bank API and
|
|||||||
|
|
||||||
# continued
|
# continued
|
||||||
if await bank.can_spend(ctx.author, cost):
|
if await bank.can_spend(ctx.author, cost):
|
||||||
await self.conf.user(ctx.author).pets.set_raw(
|
await self.config.user(ctx.author).pets.set_raw(
|
||||||
pet_name, value={'cost': cost, 'hunger': 0}
|
pet_name, value={'cost': cost, 'hunger': 0}
|
||||||
)
|
)
|
||||||
|
|
||||||
# this is equivalent to doing the following
|
# this is equivalent to doing the following
|
||||||
|
|
||||||
pets = await self.conf.user(ctx.author).pets()
|
pets = await self.config.user(ctx.author).pets()
|
||||||
pets[pet_name] = {'cost': cost, 'hunger': 0}
|
pets[pet_name] = {'cost': cost, 'hunger': 0}
|
||||||
await self.conf.user(ctx.author).pets.set(pets)
|
await self.config.user(ctx.author).pets.set(pets)
|
||||||
|
|
||||||
Since the pets can get hungry we're gonna need a command that let's pet owners check how hungry their pets are::
|
Since the pets can get hungry we're gonna need a command that let's pet owners check how hungry their pets are::
|
||||||
|
|
||||||
@@ -257,7 +257,7 @@ Since the pets can get hungry we're gonna need a command that let's pet owners c
|
|||||||
@commands.command()
|
@commands.command()
|
||||||
async def hunger(self, ctx, pet_name: str):
|
async def hunger(self, ctx, pet_name: str):
|
||||||
try:
|
try:
|
||||||
hunger = await self.conf.user(ctx.author).pets.get_raw(pet_name, 'hunger')
|
hunger = await self.config.user(ctx.author).pets.get_raw(pet_name, 'hunger')
|
||||||
except KeyError:
|
except KeyError:
|
||||||
# Remember, this is thrown if something in the provided identifiers
|
# Remember, this is thrown if something in the provided identifiers
|
||||||
# is not found in the saved data or the defaults.
|
# is not found in the saved data or the defaults.
|
||||||
@@ -274,7 +274,7 @@ We're responsible pet owners here, so we've also got to have a way to feed our p
|
|||||||
# This is a bit more complicated because we need to check if the pet is
|
# This is a bit more complicated because we need to check if the pet is
|
||||||
# owned first.
|
# owned first.
|
||||||
try:
|
try:
|
||||||
pet = await self.conf.user(ctx.author).pets.get_raw(pet_name)
|
pet = await self.config.user(ctx.author).pets.get_raw(pet_name)
|
||||||
except KeyError:
|
except KeyError:
|
||||||
# If the given pet name doesn't exist in our data
|
# If the given pet name doesn't exist in our data
|
||||||
await ctx.send("You don't own that pet!")
|
await ctx.send("You don't own that pet!")
|
||||||
@@ -285,12 +285,12 @@ We're responsible pet owners here, so we've also got to have a way to feed our p
|
|||||||
# Determine the new hunger and make sure it doesn't go negative
|
# Determine the new hunger and make sure it doesn't go negative
|
||||||
new_hunger = max(hunger - food, 0)
|
new_hunger = max(hunger - food, 0)
|
||||||
|
|
||||||
await self.conf.user(ctx.author).pets.set_raw(
|
await self.config.user(ctx.author).pets.set_raw(
|
||||||
pet_name, 'hunger', value=new_hunger
|
pet_name, 'hunger', value=new_hunger
|
||||||
)
|
)
|
||||||
|
|
||||||
# We could accomplish the same thing a slightly different way
|
# We could accomplish the same thing a slightly different way
|
||||||
await self.conf.user(ctx.author).pets.get_attr(pet_name).hunger.set(new_hunger)
|
await self.config.user(ctx.author).pets.get_attr(pet_name).hunger.set(new_hunger)
|
||||||
|
|
||||||
await ctx.send("Your pet is now at {}/100 hunger!".format(new_hunger)
|
await ctx.send("Your pet is now at {}/100 hunger!".format(new_hunger)
|
||||||
|
|
||||||
@@ -300,7 +300,7 @@ Of course, if we're less than responsible pet owners, there are consequences::
|
|||||||
@commands.command()
|
@commands.command()
|
||||||
async def adopt(self, ctx, pet_name: str, *, member: discord.Member):
|
async def adopt(self, ctx, pet_name: str, *, member: discord.Member):
|
||||||
try:
|
try:
|
||||||
pet = await self.conf.user(member).pets.get_raw(pet_name)
|
pet = await self.config.user(member).pets.get_raw(pet_name)
|
||||||
except KeyError:
|
except KeyError:
|
||||||
await ctx.send("That person doesn't own that pet!")
|
await ctx.send("That person doesn't own that pet!")
|
||||||
return
|
return
|
||||||
@@ -310,15 +310,15 @@ Of course, if we're less than responsible pet owners, there are consequences::
|
|||||||
await ctx.send("That pet is too well taken care of to be adopted.")
|
await ctx.send("That pet is too well taken care of to be adopted.")
|
||||||
return
|
return
|
||||||
|
|
||||||
await self.conf.user(member).pets.clear_raw(pet_name)
|
await self.config.user(member).pets.clear_raw(pet_name)
|
||||||
|
|
||||||
# this is equivalent to doing the following
|
# this is equivalent to doing the following
|
||||||
|
|
||||||
pets = await self.conf.user(member).pets()
|
pets = await self.config.user(member).pets()
|
||||||
del pets[pet_name]
|
del pets[pet_name]
|
||||||
await self.conf.user(member).pets.set(pets)
|
await self.config.user(member).pets.set(pets)
|
||||||
|
|
||||||
await self.conf.user(ctx.author).pets.set_raw(pet_name, value=pet)
|
await self.config.user(ctx.author).pets.set_raw(pet_name, value=pet)
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
"Your request to adopt this pet has been granted due to "
|
"Your request to adopt this pet has been granted due to "
|
||||||
"how poorly it was taken care of."
|
"how poorly it was taken care of."
|
||||||
@@ -351,15 +351,15 @@ much the same way they would in V2. The following examples will demonstrate how
|
|||||||
|
|
||||||
class ExampleCog:
|
class ExampleCog:
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.conf = Config.get_conf(self, 1234567890)
|
self.config = Config.get_conf(self, 1234567890)
|
||||||
|
|
||||||
self.data = {}
|
self.data = {}
|
||||||
|
|
||||||
async def load_data(self):
|
async def load_data(self):
|
||||||
self.data = await self.conf.custom("V2", "V2").all()
|
self.data = await self.config.custom("V2", "V2").all()
|
||||||
|
|
||||||
async def save_data(self):
|
async def save_data(self):
|
||||||
await self.conf.custom("V2", "V2").set(self.data)
|
await self.config.custom("V2", "V2").set(self.data)
|
||||||
|
|
||||||
|
|
||||||
async def setup(bot):
|
async def setup(bot):
|
||||||
@@ -407,13 +407,13 @@ API Reference
|
|||||||
includes keys within a `dict` when one is being set, as well as keys in nested dictionaries
|
includes keys within a `dict` when one is being set, as well as keys in nested dictionaries
|
||||||
within that `dict`. For example::
|
within that `dict`. For example::
|
||||||
|
|
||||||
>>> conf = Config.get_conf(self, identifier=999)
|
>>> config = Config.get_conf(self, identifier=999)
|
||||||
>>> conf.register_global(foo={})
|
>>> config.register_global(foo={})
|
||||||
>>> await conf.foo.set_raw(123, value=True)
|
>>> await config.foo.set_raw(123, value=True)
|
||||||
>>> await conf.foo()
|
>>> await config.foo()
|
||||||
{'123': True}
|
{'123': True}
|
||||||
>>> await conf.foo.set({123: True, 456: {789: False}}
|
>>> await config.foo.set({123: True, 456: {789: False}}
|
||||||
>>> await conf.foo()
|
>>> await config.foo()
|
||||||
{'123': True, '456': {'789': False}}
|
{'123': True, '456': {'789': False}}
|
||||||
|
|
||||||
.. automodule:: redbot.core.config
|
.. automodule:: redbot.core.config
|
||||||
|
|||||||
@@ -4,6 +4,10 @@
|
|||||||
RPC
|
RPC
|
||||||
===
|
===
|
||||||
|
|
||||||
|
.. important::
|
||||||
|
|
||||||
|
RPC support is included in Red on a provisional basis. Backwards incompatible changes (up to and including removal of the RPC) may occur if deemed necessary.
|
||||||
|
|
||||||
V3 comes default with an internal RPC server that may be used to remotely control the bot in various ways.
|
V3 comes default with an internal RPC server that may be used to remotely control the bot in various ways.
|
||||||
Cogs must register functions to be exposed to RPC clients.
|
Cogs must register functions to be exposed to RPC clients.
|
||||||
Each of those functions must only take JSON serializable parameters and must return JSON serializable objects.
|
Each of those functions must only take JSON serializable parameters and must return JSON serializable objects.
|
||||||
|
|||||||
@@ -10,6 +10,18 @@ General Utility
|
|||||||
.. automodule:: redbot.core.utils
|
.. automodule:: redbot.core.utils
|
||||||
:members: deduplicate_iterables, bounded_gather, bounded_gather_iter
|
:members: deduplicate_iterables, bounded_gather, bounded_gather_iter
|
||||||
|
|
||||||
|
.. autoclass:: AsyncIter
|
||||||
|
:members:
|
||||||
|
:special-members: __await__
|
||||||
|
:exclude-members: enumerate, filter
|
||||||
|
|
||||||
|
.. automethod:: enumerate
|
||||||
|
:async-for:
|
||||||
|
|
||||||
|
.. automethod:: filter
|
||||||
|
:async-for:
|
||||||
|
|
||||||
|
|
||||||
Chat Formatting
|
Chat Formatting
|
||||||
===============
|
===============
|
||||||
|
|
||||||
|
|||||||
@@ -270,7 +270,7 @@ If you want to do it, follow these steps.
|
|||||||
2. **Install Linux**
|
2. **Install Linux**
|
||||||
|
|
||||||
Most of the VPS providers have tools for installing Linux automatically. If
|
Most of the VPS providers have tools for installing Linux automatically. If
|
||||||
you're a beginner, we recommend **Ubuntu 18**.
|
you're a beginner, we recommend **Ubuntu 20.04 LTS**.
|
||||||
|
|
||||||
For Raspberry Pi users, just install `Raspbian
|
For Raspberry Pi users, just install `Raspbian
|
||||||
<https://www.raspberrypi.org/downloads/raspbian/>`_ on a micro-SD card.
|
<https://www.raspberrypi.org/downloads/raspbian/>`_ on a micro-SD card.
|
||||||
|
|||||||
@@ -35,8 +35,8 @@ Open a terminal or command prompt and type one of the following
|
|||||||
intended for normal users.** We will not support anyone using the development version in any
|
intended for normal users.** We will not support anyone using the development version in any
|
||||||
support channels. Using the development version may break third party cogs and not all core
|
support channels. Using the development version may break third party cogs and not all core
|
||||||
commands may work. Downgrading to stable after installing the development version may cause
|
commands may work. Downgrading to stable after installing the development version may cause
|
||||||
data loss, crashes or worse. Please keep this in mind when using the Development version
|
data loss, crashes or worse. Please keep this in mind when using the development version
|
||||||
While working on cog creation.
|
while working on cog creation.
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
|
|||||||
@@ -59,6 +59,9 @@ Others
|
|||||||
|`Microsoft Azure |Same as AWS, but it's Microsoft. |
|
|`Microsoft Azure |Same as AWS, but it's Microsoft. |
|
||||||
|<https://azure.microsoft.com>`_ | |
|
|<https://azure.microsoft.com>`_ | |
|
||||||
+-------------------------------------+-----------------------------------------------------+
|
+-------------------------------------+-----------------------------------------------------+
|
||||||
|
|`Oracle Cloud |Same as AWS, but it's Oracle. |
|
||||||
|
|<https://oracle.com/cloud/>`_ | |
|
||||||
|
+-------------------------------------+-----------------------------------------------------+
|
||||||
|`LowEndBox <http://lowendbox.com/>`_ |A curator for lower specced servers. |
|
|`LowEndBox <http://lowendbox.com/>`_ |A curator for lower specced servers. |
|
||||||
+-------------------------------------+-----------------------------------------------------+
|
+-------------------------------------+-----------------------------------------------------+
|
||||||
|
|
||||||
@@ -76,7 +79,10 @@ server. Any modern hardware should work 100% fine.
|
|||||||
Free hosting
|
Free hosting
|
||||||
------------
|
------------
|
||||||
|
|
||||||
Google Cloud and AWS both have free tier VPS suitable for small bots.
|
`Google Cloud Compute Free Tier <https://cloud.google.com/free/docs/gcp-free-tier>`_,
|
||||||
|
`Oracle Cloud Compute Always Free <https://oracle.com/cloud/free/#always-free>`_ and
|
||||||
|
`AWS EC2 Free Tier <https://aws.amazon.com/free/>`_ have free tier VPSes suitable for small bots.
|
||||||
|
AWS EC2 is not *always* free—it's a 12 month free trial.
|
||||||
Additionally, new Google Cloud customers get a $300 credit which is valid
|
Additionally, new Google Cloud customers get a $300 credit which is valid
|
||||||
for 12 months.
|
for 12 months.
|
||||||
|
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ Welcome to Red - Discord Bot's documentation!
|
|||||||
|
|
||||||
install_windows
|
install_windows
|
||||||
install_linux_mac
|
install_linux_mac
|
||||||
|
update_red
|
||||||
about_venv
|
about_venv
|
||||||
autostart_systemd
|
autostart_systemd
|
||||||
autostart_pm2
|
autostart_pm2
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ The pre-requirements are:
|
|||||||
- Python 3.8.1 or greater
|
- Python 3.8.1 or greater
|
||||||
- Pip 18.1 or greater
|
- Pip 18.1 or greater
|
||||||
- Git 2.11+
|
- Git 2.11+
|
||||||
- Java Runtime Environment 11 or later (for audio support)
|
- Java Runtime Environment 11 (for audio support)
|
||||||
|
|
||||||
We also recommend installing some basic compiler tools, in case our dependencies don't provide
|
We also recommend installing some basic compiler tools, in case our dependencies don't provide
|
||||||
pre-built "wheels" for your architecture.
|
pre-built "wheels" for your architecture.
|
||||||
@@ -43,14 +43,14 @@ Arch Linux
|
|||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
sudo pacman -Syu python python-pip git jre-openjdk-headless base-devel
|
sudo pacman -Syu python python-pip git jre11-openjdk-headless base-devel
|
||||||
|
|
||||||
Continue by `creating-venv-linux`.
|
Continue by `creating-venv-linux`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
.. _install-centos:
|
.. _install-centos7:
|
||||||
.. _install-rhel:
|
.. _install-rhel7:
|
||||||
|
|
||||||
~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~
|
||||||
CentOS and RHEL 7
|
CentOS and RHEL 7
|
||||||
@@ -58,17 +58,27 @@ CentOS and RHEL 7
|
|||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
yum -y groupinstall development
|
sudo yum -y groupinstall development
|
||||||
yum -y install https://centos7.iuscommunity.org/ius-release.rpm
|
|
||||||
sudo yum -y install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel \
|
sudo yum -y install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel \
|
||||||
openssl-devel xz xz-devel libffi-devel findutils git2u java-11-openjdk
|
openssl-devel xz xz-devel tk-devel libffi-devel findutils java-11-openjdk-headless
|
||||||
|
sudo yum -y install centos-release-scl
|
||||||
|
sudo yum -y install devtoolset-8-gcc devtoolset-8-gcc-c++
|
||||||
|
echo "source scl_source enable devtoolset-8" >> ~/.bashrc
|
||||||
|
source ~/.bashrc
|
||||||
|
|
||||||
|
In order to install Git 2.11 or greater, we recommend adding the IUS repository:
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
sudo yum -y install https://repo.ius.io/ius-release-el7.rpm
|
||||||
|
sudo yum -y swap git git224
|
||||||
|
|
||||||
Complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
Complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
.. _install-centos8:
|
.. _install-centos:
|
||||||
.. _install-rhel8:
|
.. _install-rhel:
|
||||||
|
|
||||||
~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~
|
||||||
CentOS and RHEL 8
|
CentOS and RHEL 8
|
||||||
@@ -76,11 +86,11 @@ CentOS and RHEL 8
|
|||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
yum -y install epel-release
|
sudo yum -y install epel-release
|
||||||
yum update -y
|
sudo yum -y update
|
||||||
yum -y groupinstall development
|
sudo yum -y groupinstall development
|
||||||
yum -y install git zlib-devel bzip2 bzip2-devel readline-devel sqlite \
|
sudo yum -y install git zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel \
|
||||||
sqlite-devel openssl-devel xz xz-devel libffi-devel findutils java-11-openjdk
|
openssl-devel xz xz-devel tk-devel libffi-devel findutils java-11-openjdk-headless
|
||||||
|
|
||||||
Complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
Complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
||||||
|
|
||||||
@@ -105,8 +115,8 @@ Debian Stretch. This guide will tell you how. First, run the following commands:
|
|||||||
sudo echo "deb http://deb.debian.org/debian stretch-backports main" >> /etc/apt/sources.list.d/red-sources.list
|
sudo echo "deb http://deb.debian.org/debian stretch-backports main" >> /etc/apt/sources.list.d/red-sources.list
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt -y install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev \
|
sudo apt -y install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev \
|
||||||
libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev \
|
libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev \
|
||||||
libxmlsec1-dev libffi-dev liblzma-dev libgdbm-dev uuid-dev python3-openssl git openjdk-11-jre
|
libffi-dev liblzma-dev libgdbm-dev uuid-dev python3-openssl git openjdk-11-jre-headless
|
||||||
CXX=/usr/bin/g++
|
CXX=/usr/bin/g++
|
||||||
|
|
||||||
Complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
Complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
||||||
@@ -127,8 +137,8 @@ Debian/Raspbian Buster. This guide will tell you how. First, run the following c
|
|||||||
|
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt -y install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev \
|
sudo apt -y install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev \
|
||||||
libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev \
|
libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev \
|
||||||
libxmlsec1-dev libffi-dev liblzma-dev libgdbm-dev uuid-dev python3-openssl git openjdk-11-jre
|
libffi-dev liblzma-dev libgdbm-dev uuid-dev python3-openssl git openjdk-11-jre-headless
|
||||||
CXX=/usr/bin/g++
|
CXX=/usr/bin/g++
|
||||||
|
|
||||||
Complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
Complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
||||||
@@ -146,7 +156,7 @@ them with dnf:
|
|||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
sudo dnf -y install python38 git java-latest-openjdk-headless @development-tools
|
sudo dnf -y install python38 git java-11-openjdk-headless @development-tools
|
||||||
|
|
||||||
Continue by `creating-venv-linux`.
|
Continue by `creating-venv-linux`.
|
||||||
|
|
||||||
@@ -163,20 +173,18 @@ following, then press Enter:
|
|||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
|
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
|
||||||
|
|
||||||
After the installation, install the required packages by pasting the commands and pressing enter,
|
After the installation, install the required packages by pasting the commands and pressing enter,
|
||||||
one-by-one:
|
one-by-one:
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
brew install python --with-brewed-openssl
|
brew install python@3.8
|
||||||
|
echo 'export PATH="/usr/local/opt/python@3.8/bin:$PATH"' >> ~/.profile
|
||||||
|
source ~/.profile
|
||||||
brew install git
|
brew install git
|
||||||
brew tap caskroom/versions
|
brew cask install adoptopenjdk/openjdk/adoptopenjdk11
|
||||||
brew cask install homebrew/cask-versions/adoptopenjdk11
|
|
||||||
|
|
||||||
It's possible you will have network issues. If so, go in your Applications folder, inside it, go in
|
|
||||||
the Python 3.8 folder then double click ``Install certificates.command``.
|
|
||||||
|
|
||||||
Continue by `creating-venv-linux`.
|
Continue by `creating-venv-linux`.
|
||||||
|
|
||||||
@@ -199,14 +207,17 @@ First, add the Opt-Python community repository:
|
|||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
source /etc/os-release
|
source /etc/os-release
|
||||||
sudo zypper ar -f https://download.opensuse.org/repositories/home:/Rotkraut:/Opt-Python/openSUSE_Leap_${VERSION_ID}/ Opt-Python
|
sudo zypper -n ar -f \
|
||||||
|
https://download.opensuse.org/repositories/home:/Rotkraut:/Opt-Python/openSUSE_Leap_${VERSION_ID}/ \
|
||||||
|
Opt-Python
|
||||||
|
sudo zypper -n --gpg-auto-import-keys ref
|
||||||
|
|
||||||
Now install the pre-requirements with zypper:
|
Now install the pre-requirements with zypper:
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
sudo zypper install opt-python38 opt-python38-setuptools git-core java-11-openjdk-headless
|
sudo zypper -n install opt-python38 opt-python38-setuptools git-core java-11-openjdk-headless
|
||||||
sudo zypper install -t pattern devel_basis
|
sudo zypper -n install -t pattern devel_basis
|
||||||
|
|
||||||
Since Python is now installed to ``/opt/python``, we should add it to PATH. You can add a file in
|
Since Python is now installed to ``/opt/python``, we should add it to PATH. You can add a file in
|
||||||
``/etc/profile.d/`` to do this:
|
``/etc/profile.d/`` to do this:
|
||||||
@@ -232,25 +243,31 @@ with zypper:
|
|||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
sudo zypper install python3-base python3-pip git-core java-12-openjdk-headless
|
sudo zypper -n install python3-base python3-pip git-core java-11-openjdk-headless
|
||||||
sudo zypper install -t pattern devel_basis
|
sudo zypper -n install -t pattern devel_basis
|
||||||
|
|
||||||
Continue by `creating-venv-linux`.
|
Continue by `creating-venv-linux`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
.. _install-ubuntu:
|
.. _install-ubuntu-1604:
|
||||||
|
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~
|
||||||
Ubuntu LTS versions (18.04 and 16.04)
|
Ubuntu 16.04 LTS
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
We recommend adding the ``git-core`` ppa to install Git 2.11 or greater:
|
We recommend adding the ``openjdk-r`` ppa to install Java 11:
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt -y install software-properties-common
|
sudo apt -y install software-properties-common
|
||||||
|
sudo add-apt-repository -yu ppa:openjdk-r/ppa
|
||||||
|
|
||||||
|
We recommend adding the ``git-core`` ppa to install Git 2.11 or greater:
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
sudo add-apt-repository -yu ppa:git-core/ppa
|
sudo add-apt-repository -yu ppa:git-core/ppa
|
||||||
|
|
||||||
We recommend adding the ``deadsnakes`` ppa to install Python 3.8.1 or greater:
|
We recommend adding the ``deadsnakes`` ppa to install Python 3.8.1 or greater:
|
||||||
@@ -263,7 +280,63 @@ Now install the pre-requirements with apt:
|
|||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
sudo apt -y install python3.8 python3.8-dev python3.8-venv python3-pip git default-jre-headless \
|
sudo apt -y install python3.8 python3.8-dev python3.8-venv python3-pip git openjdk-11-jre-headless \
|
||||||
|
build-essential
|
||||||
|
|
||||||
|
Continue by `creating-venv-linux`.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
.. _install-ubuntu-1804:
|
||||||
|
|
||||||
|
~~~~~~~~~~~~~~~~
|
||||||
|
Ubuntu 18.04 LTS
|
||||||
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
We recommend adding the ``git-core`` ppa to install Git 2.11 or greater:
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
sudo apt update
|
||||||
|
sudo apt -y install software-properties-common
|
||||||
|
sudo add-apt-repository -y ppa:git-core/ppa
|
||||||
|
|
||||||
|
We recommend adding the ``deadsnakes`` ppa to install Python 3.8.1 or greater:
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
sudo add-apt-repository -y ppa:deadsnakes/ppa
|
||||||
|
|
||||||
|
Now install the pre-requirements with apt:
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
sudo apt -y install python3.8 python3.8-dev python3.8-venv python3-pip git openjdk-11-jre-headless \
|
||||||
|
build-essential
|
||||||
|
|
||||||
|
Continue by `creating-venv-linux`.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
.. _install-ubuntu:
|
||||||
|
|
||||||
|
~~~~~~~~~~~~~~~~
|
||||||
|
Ubuntu 20.04 LTS
|
||||||
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
We recommend adding the ``git-core`` ppa to install Git 2.11 or greater:
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
sudo apt update
|
||||||
|
sudo apt -y install software-properties-common
|
||||||
|
sudo add-apt-repository -y ppa:git-core/ppa
|
||||||
|
|
||||||
|
Now install the pre-requirements with apt:
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
sudo apt -y install python3.8 python3.8-dev python3.8-venv python3-pip git openjdk-11-jre-headless \
|
||||||
build-essential
|
build-essential
|
||||||
|
|
||||||
Continue by `creating-venv-linux`.
|
Continue by `creating-venv-linux`.
|
||||||
@@ -291,7 +364,7 @@ installing pyenv. To do this, first run the following commands:
|
|||||||
|
|
||||||
sudo apt -y install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev \
|
sudo apt -y install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev \
|
||||||
libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev \
|
libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev \
|
||||||
libxmlsec1-dev libffi-dev liblzma-dev libgdbm-dev uuid-dev python3-openssl git openjdk-11-jre
|
libxmlsec1-dev libffi-dev liblzma-dev libgdbm-dev uuid-dev python3-openssl git openjdk-11-jre-headless
|
||||||
CXX=/usr/bin/g++
|
CXX=/usr/bin/g++
|
||||||
|
|
||||||
And then complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
And then complete the rest of the installation by `installing Python 3.8 with pyenv <install-python-pyenv>`.
|
||||||
@@ -315,16 +388,16 @@ virtual environment.
|
|||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
|
command -v pyenv && pyenv update || curl https://pyenv.run | bash
|
||||||
|
|
||||||
After this command, you may see a warning about 'pyenv' not being in the load path. Follow the
|
**After this command, you may see a warning about 'pyenv' not being in the load path. Follow the
|
||||||
instructions given to fix that, then close and reopen your shell.
|
instructions given to fix that, then close and reopen your shell.**
|
||||||
|
|
||||||
Then run the following command:
|
Then run the following command:
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
CONFIGURE_OPTS=--enable-optimizations pyenv install 3.8.1 -v
|
CONFIGURE_OPTS=--enable-optimizations pyenv install 3.8.3 -v
|
||||||
|
|
||||||
This may take a long time to complete, depending on your hardware. For some machines (such as
|
This may take a long time to complete, depending on your hardware. For some machines (such as
|
||||||
Raspberry Pis and micro-tier VPSes), it may take over an hour; in this case, you may wish to remove
|
Raspberry Pis and micro-tier VPSes), it may take over an hour; in this case, you may wish to remove
|
||||||
@@ -336,7 +409,7 @@ After that is finished, run:
|
|||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
pyenv global 3.8.1
|
pyenv global 3.8.3
|
||||||
|
|
||||||
Pyenv is now installed and your system should be configured to run Python 3.8.
|
Pyenv is now installed and your system should be configured to run Python 3.8.
|
||||||
|
|
||||||
|
|||||||
@@ -4,18 +4,29 @@
|
|||||||
Installing Red on Windows
|
Installing Red on Windows
|
||||||
=========================
|
=========================
|
||||||
|
|
||||||
---------------
|
-------------------------------
|
||||||
Needed Software
|
Installing the pre-requirements
|
||||||
---------------
|
-------------------------------
|
||||||
|
|
||||||
The following software dependencies can all be installed quickly and easily through PowerShell,
|
Please install the pre-requirements by following instructions from one of the following subsections.
|
||||||
using a trusted package manager for Windows called `Chocolatey <https://chocolatey.org>`_
|
|
||||||
|
|
||||||
We also provide instructions for manually installing all of the dependencies.
|
The pre-requirements are:
|
||||||
|
- Python 3.8.1 or greater
|
||||||
|
- Pip 18.1 or greater
|
||||||
|
- Git 2.11+
|
||||||
|
- Java Runtime Environment 11 (for audio support)
|
||||||
|
|
||||||
******************************************
|
We also recommend installing some basic compiler tools, in case our dependencies don't provide
|
||||||
Installing using powershell and chocolatey
|
pre-built "wheels" for your architecture.
|
||||||
******************************************
|
|
||||||
|
.. contents:: Choose a method of installing pre-requirements:
|
||||||
|
:local:
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
*********************************************
|
||||||
|
Using PowerShell and Chocolatey (recommended)
|
||||||
|
*********************************************
|
||||||
|
|
||||||
To install via PowerShell, search "powershell" in the Windows start menu,
|
To install via PowerShell, search "powershell" in the Windows start menu,
|
||||||
right-click on it and then click "Run as administrator"
|
right-click on it and then click "Run as administrator"
|
||||||
@@ -26,19 +37,21 @@ Then run each of the following commands:
|
|||||||
|
|
||||||
Set-ExecutionPolicy Bypass -Scope Process -Force
|
Set-ExecutionPolicy Bypass -Scope Process -Force
|
||||||
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
|
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
|
||||||
choco install git --params "/GitOnlyOnPath /WindowsTerminal" -y
|
choco upgrade git --params "/GitOnlyOnPath /WindowsTerminal" -y
|
||||||
choco install visualstudio2019-workload-vctools -y
|
choco upgrade visualstudio2019-workload-vctools -y
|
||||||
choco install python3 -y
|
choco upgrade python3 -y
|
||||||
|
|
||||||
For Audio support, you should also run the following command before exiting:
|
For Audio support, you should also run the following command before exiting:
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
choco install adoptopenjdk11jre -y
|
choco upgrade adoptopenjdk11jre -y
|
||||||
|
|
||||||
|
|
||||||
From here, exit the prompt then continue onto `creating-venv-windows`.
|
From here, exit the prompt then continue onto `creating-venv-windows`.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
********************************
|
********************************
|
||||||
Manually installing dependencies
|
Manually installing dependencies
|
||||||
********************************
|
********************************
|
||||||
@@ -50,17 +63,20 @@ Manually installing dependencies
|
|||||||
|
|
||||||
* `MSVC Build tools <https://www.visualstudio.com/downloads/#build-tools-for-visual-studio-2019>`_
|
* `MSVC Build tools <https://www.visualstudio.com/downloads/#build-tools-for-visual-studio-2019>`_
|
||||||
|
|
||||||
* `Python <https://www.python.org/downloads/>`_ - Red needs Python 3.8.1 or greater
|
* `Python 3.8.1 <https://www.python.org/downloads/>`_ - Red needs Python 3.8.1 or greater
|
||||||
|
|
||||||
.. attention:: Please make sure that the box to add Python to PATH is CHECKED, otherwise
|
.. attention:: Please make sure that the box to add Python to PATH is CHECKED, otherwise
|
||||||
you may run into issues when trying to run Red.
|
you may run into issues when trying to run Red.
|
||||||
|
|
||||||
* `Git <https://git-scm.com/download/win>`_
|
* `Git 2.11+ <https://git-scm.com/download/win>`_
|
||||||
|
|
||||||
.. attention:: Please choose the option to "Git from the command line and also from 3rd-party software" in Git's setup.
|
.. attention:: Please choose the option to "Git from the command line and also from 3rd-party software" in Git's setup.
|
||||||
|
|
||||||
* `Java <https://adoptopenjdk.net/?variant=openjdk11&jvmVariant=hotspot>`_ - needed for Audio
|
* `Java 11 <https://adoptopenjdk.net/?variant=openjdk11&jvmVariant=hotspot>`_ - needed for Audio
|
||||||
|
|
||||||
|
From here, continue onto `creating-venv-windows`.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
.. _creating-venv-windows:
|
.. _creating-venv-windows:
|
||||||
|
|
||||||
@@ -85,11 +101,15 @@ Start with opening a command prompt (open Start, search for "command prompt", th
|
|||||||
|
|
||||||
These commands will not work in PowerShell - you have to use command prompt as said above.
|
These commands will not work in PowerShell - you have to use command prompt as said above.
|
||||||
|
|
||||||
Then create your virtual environment with the following command::
|
Then create your virtual environment with the following command
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
py -3.8 -m venv "%userprofile%\redenv"
|
py -3.8 -m venv "%userprofile%\redenv"
|
||||||
|
|
||||||
And activate it with the following command::
|
And activate it with the following command
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
"%userprofile%\redenv\Scripts\activate.bat"
|
"%userprofile%\redenv\Scripts\activate.bat"
|
||||||
|
|
||||||
|
|||||||
135
docs/update_red.rst
Normal file
135
docs/update_red.rst
Normal file
@@ -0,0 +1,135 @@
|
|||||||
|
============
|
||||||
|
Updating Red
|
||||||
|
============
|
||||||
|
|
||||||
|
Updating to the latest version of Red has several benefits:
|
||||||
|
|
||||||
|
- New features and improvements are added.
|
||||||
|
- Bugs are fixed.
|
||||||
|
- Your bot is safe from security vulnerabilities that have been found.
|
||||||
|
|
||||||
|
Here are some things to consider to help make your upgrade as smooth as possible.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
If you're developing for Red, you should also look for "Breaking changes" sections in release notes for each minor (X.Y.0) version that's been released since you last updated Red.
|
||||||
|
|
||||||
|
Updating differs depending on the version you currently have. Next sections will explain how to upgrade to latest version of Red (|version|) from the version that is in the header of the section.
|
||||||
|
|
||||||
|
.. contents:: Choose the version you're currently on from the list below:
|
||||||
|
:local:
|
||||||
|
:depth: 1
|
||||||
|
|
||||||
|
|
||||||
|
Red 3.2.0 or newer
|
||||||
|
******************
|
||||||
|
|
||||||
|
Windows
|
||||||
|
-------
|
||||||
|
|
||||||
|
If you have Red 3.2.0 or newer, you can upgrade by following these 4 easy steps:
|
||||||
|
|
||||||
|
1. Shut your bot down.
|
||||||
|
|
||||||
|
2. Activate your venv with the following command:
|
||||||
|
|
||||||
|
.. code:: none
|
||||||
|
|
||||||
|
"%userprofile%\redenv\Scripts\activate.bat"
|
||||||
|
|
||||||
|
3. Update Red with this command:
|
||||||
|
|
||||||
|
.. code:: none
|
||||||
|
|
||||||
|
python -m pip install -U Red-DiscordBot
|
||||||
|
|
||||||
|
.. attention::
|
||||||
|
|
||||||
|
If you're using PostgreSQL data backend, replace ``Red-DiscordBot`` in the second command with ``Red-DiscordBot[postgres]``
|
||||||
|
|
||||||
|
4. Start your bot.
|
||||||
|
|
||||||
|
Linux & Mac
|
||||||
|
-----------
|
||||||
|
|
||||||
|
If you have Red 3.2.0 or newer, you can upgrade by following these 4 easy steps:
|
||||||
|
|
||||||
|
1. Shut your bot down.
|
||||||
|
|
||||||
|
2. Activate your virtual environment.
|
||||||
|
|
||||||
|
If you used ``venv`` for your virtual environment, use:
|
||||||
|
|
||||||
|
.. code:: none
|
||||||
|
|
||||||
|
source ~/redenv/bin/activate
|
||||||
|
|
||||||
|
If you used ``pyenv`` for your virtual environment, use:
|
||||||
|
|
||||||
|
.. code:: none
|
||||||
|
|
||||||
|
pyenv shell <name>
|
||||||
|
|
||||||
|
3. Update Red with this command:
|
||||||
|
|
||||||
|
.. code:: none
|
||||||
|
|
||||||
|
python -m pip install -U Red-DiscordBot
|
||||||
|
|
||||||
|
.. attention::
|
||||||
|
|
||||||
|
If you're using PostgreSQL data backend, replace ``Red-DiscordBot`` in the second command with ``Red-DiscordBot[postgres]``
|
||||||
|
|
||||||
|
4. Start your bot.
|
||||||
|
|
||||||
|
Red 3.1.X
|
||||||
|
*********
|
||||||
|
|
||||||
|
If you have Red 3.1.X, you will need to follow the install instructions for your operating system. Make sure that you turn your bot off first.
|
||||||
|
|
||||||
|
- `Windows <install_windows>`
|
||||||
|
- `Linux & Mac <install_linux_mac>`
|
||||||
|
|
||||||
|
Follow every step to ensure you have all dependencies up-to-date and only skip ``redbot-setup`` step as you already have a bot instance.
|
||||||
|
|
||||||
|
**If you already have Red installed in a virtual environment, you will need to delete it before starting this process.**
|
||||||
|
|
||||||
|
.. attention::
|
||||||
|
|
||||||
|
Red 3.2 dropped support for the MongoDB driver
|
||||||
|
|
||||||
|
- If you were not using the MongoDB driver, this does not affect you.
|
||||||
|
- If you were using a 3rd party cog which required MongoDB, it probably still does.
|
||||||
|
- If you were using the MongoDB driver, **prior to launching your instance after update**,
|
||||||
|
you will need to run the following commands to convert:
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
|
||||||
|
python -m pip install dnspython~=1.16.0 motor~=2.0.0 pymongo~=3.8.0
|
||||||
|
redbot-setup convert [instancename] json
|
||||||
|
|
||||||
|
|
||||||
|
Red 3.0.2 and older
|
||||||
|
*******************
|
||||||
|
|
||||||
|
.. important::
|
||||||
|
|
||||||
|
Red 3.2 dropped support for the MongoDB driver
|
||||||
|
|
||||||
|
- If you were not using the MongoDB driver, this does not affect you.
|
||||||
|
- If you were using a 3rd party cog which required MongoDB, it probably still does.
|
||||||
|
- If you were using the MongoDB driver, **prior to updating**, you will need to convert your data to JSON backend,
|
||||||
|
using following command:
|
||||||
|
|
||||||
|
.. code::
|
||||||
|
|
||||||
|
redbot-setup --edit
|
||||||
|
|
||||||
|
If you have Red 3.0.2 or older, you will need to follow the install instructions for your operating system. Make sure that you turn your bot off first.
|
||||||
|
|
||||||
|
- `Windows <install_windows>`
|
||||||
|
- `Linux & Mac <install_linux_mac>`
|
||||||
|
|
||||||
|
Follow every step to ensure you have all dependencies up-to-date and only skip ``redbot-setup`` step as you already have a bot instance.
|
||||||
|
|
||||||
|
**If you already have Red installed in a virtual environment, you will need to delete it before starting this process.**
|
||||||
@@ -20,6 +20,8 @@ which is not private (even if not documented) should not break without notice.
|
|||||||
Anything in the ``redbot.cogs`` module or any of it's submodules is specifically
|
Anything in the ``redbot.cogs`` module or any of it's submodules is specifically
|
||||||
excluded from being guaranteed.
|
excluded from being guaranteed.
|
||||||
|
|
||||||
|
Any RPC method exposed by Red may break without notice.
|
||||||
|
|
||||||
If you would like something in here to be guaranteed,
|
If you would like something in here to be guaranteed,
|
||||||
open an issue making a case for it to be moved.
|
open an issue making a case for it to be moved.
|
||||||
|
|
||||||
|
|||||||
6
make.bat
6
make.bat
@@ -34,12 +34,6 @@ goto syncenv
|
|||||||
.\.venv\Scripts\python -m pip install -Ur .\tools\dev-requirements.txt
|
.\.venv\Scripts\python -m pip install -Ur .\tools\dev-requirements.txt
|
||||||
exit /B %ERRORLEVEL%
|
exit /B %ERRORLEVEL%
|
||||||
|
|
||||||
:checkchangelog
|
|
||||||
REM This should be written for windows at some point I guess.
|
|
||||||
REM If we can swith to powershell, it can make this much easier.
|
|
||||||
echo This doesn^'t do anything on windows ^(yet^)
|
|
||||||
exit /b 0
|
|
||||||
|
|
||||||
:help
|
:help
|
||||||
echo Usage:
|
echo Usage:
|
||||||
echo make ^<command^>
|
echo make ^<command^>
|
||||||
|
|||||||
126
pyproject.toml
126
pyproject.toml
@@ -16,129 +16,3 @@
|
|||||||
| dist
|
| dist
|
||||||
)/
|
)/
|
||||||
'''
|
'''
|
||||||
|
|
||||||
[tool.towncrier]
|
|
||||||
package = "redbot"
|
|
||||||
filename = "CHANGELOG.rst"
|
|
||||||
directory = "changelog.d"
|
|
||||||
issue_format = "`#{issue} <https://github.com/Cog-Creators/Red-DiscordBot/issues/{issue}>`_"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = ""
|
|
||||||
name = "Core Bot Changes"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "admin"
|
|
||||||
name = "Admin"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "alias"
|
|
||||||
name = "Alias"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "audio"
|
|
||||||
name = "Audio"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "bank"
|
|
||||||
name = "Bank"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "cleanup"
|
|
||||||
name = "Cleanup"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "customcom"
|
|
||||||
name = "CustomCom"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "downloader"
|
|
||||||
name = "Downloader"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "economy"
|
|
||||||
name = "Economy"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "filter"
|
|
||||||
name = "Filter"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "general"
|
|
||||||
name = "General"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "image"
|
|
||||||
name = "Image"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "mod"
|
|
||||||
name = "Mod"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "modlog"
|
|
||||||
name = "ModLog"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "mutes"
|
|
||||||
name = "Mutes"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "permissions"
|
|
||||||
name = "Permissions"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "reports"
|
|
||||||
name = "Reports"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "streams"
|
|
||||||
name = "Streams"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "trivia"
|
|
||||||
name = "Trivia"
|
|
||||||
|
|
||||||
[[tool.towncrier.section]]
|
|
||||||
path = "warnings"
|
|
||||||
name = "Warnings"
|
|
||||||
|
|
||||||
[[tool.towncrier.type]]
|
|
||||||
directory = "breaking"
|
|
||||||
name = "Breaking Changes"
|
|
||||||
showcontent = true
|
|
||||||
|
|
||||||
[[tool.towncrier.type]]
|
|
||||||
directory = "bugfix"
|
|
||||||
name = "Bug Fixes"
|
|
||||||
showcontent = true
|
|
||||||
|
|
||||||
[[tool.towncrier.type]]
|
|
||||||
directory = "enhance"
|
|
||||||
name = "Enhancements"
|
|
||||||
showcontent = true
|
|
||||||
|
|
||||||
[[tool.towncrier.type]]
|
|
||||||
directory = "feature"
|
|
||||||
name = "New Feature"
|
|
||||||
showcontent = true
|
|
||||||
|
|
||||||
[[tool.towncrier.type]]
|
|
||||||
directory = "removal"
|
|
||||||
name = "Removals"
|
|
||||||
showcontent = true
|
|
||||||
|
|
||||||
[[tool.towncrier.type]]
|
|
||||||
directory = "misc"
|
|
||||||
name = "Miscellaneous changes"
|
|
||||||
showcontent = false
|
|
||||||
|
|
||||||
[[tool.towncrier.type]]
|
|
||||||
directory = "dep"
|
|
||||||
name = "Changes to dependencies"
|
|
||||||
showcontent = true
|
|
||||||
|
|
||||||
[[tool.towncrier.type]]
|
|
||||||
directory = "docs"
|
|
||||||
name = "Documentation Changes"
|
|
||||||
showcontent = true
|
|
||||||
|
|||||||
@@ -191,7 +191,7 @@ def _update_event_loop_policy():
|
|||||||
_asyncio.set_event_loop_policy(_uvloop.EventLoopPolicy())
|
_asyncio.set_event_loop_policy(_uvloop.EventLoopPolicy())
|
||||||
|
|
||||||
|
|
||||||
__version__ = "3.3.2"
|
__version__ = "3.3.10.dev1"
|
||||||
version_info = VersionInfo.from_str(__version__)
|
version_info = VersionInfo.from_str(__version__)
|
||||||
|
|
||||||
# Filter fuzzywuzzy slow sequence matcher warning
|
# Filter fuzzywuzzy slow sequence matcher warning
|
||||||
@@ -215,9 +215,11 @@ if "--debug" not in _sys.argv:
|
|||||||
_warnings.filterwarnings("ignore", category=DeprecationWarning, module="aiohttp", lineno=21)
|
_warnings.filterwarnings("ignore", category=DeprecationWarning, module="aiohttp", lineno=21)
|
||||||
# DeprecationWarning: rename klass to create_protocol
|
# DeprecationWarning: rename klass to create_protocol
|
||||||
# warnings.warn("rename klass to create_protocol", DeprecationWarning)
|
# warnings.warn("rename klass to create_protocol", DeprecationWarning)
|
||||||
#
|
|
||||||
# discord.py is using deprecated kwarg name when making websockets connection
|
|
||||||
# https://github.com/Rapptz/discord.py/issues/2574
|
|
||||||
_warnings.filterwarnings(
|
_warnings.filterwarnings(
|
||||||
"ignore", category=DeprecationWarning, module="websockets", lineno=407
|
"ignore", category=DeprecationWarning, module="websockets", lineno=407
|
||||||
)
|
)
|
||||||
|
# DeprecationWarning: The loop argument is deprecated since Python 3.8, and scheduled for removal in Python 3.10.
|
||||||
|
# transport, protocol = await self._create_connection()
|
||||||
|
_warnings.filterwarnings(
|
||||||
|
"ignore", category=DeprecationWarning, module="websockets", lineno=535
|
||||||
|
)
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import json
|
|||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import pip
|
import pip
|
||||||
|
import pkg_resources
|
||||||
import platform
|
import platform
|
||||||
import shutil
|
import shutil
|
||||||
import signal
|
import signal
|
||||||
@@ -346,6 +347,14 @@ async def run_bot(red: Red, cli_flags: Namespace) -> None:
|
|||||||
LIB_PATH.mkdir(parents=True, exist_ok=True)
|
LIB_PATH.mkdir(parents=True, exist_ok=True)
|
||||||
if str(LIB_PATH) not in sys.path:
|
if str(LIB_PATH) not in sys.path:
|
||||||
sys.path.append(str(LIB_PATH))
|
sys.path.append(str(LIB_PATH))
|
||||||
|
|
||||||
|
# "It's important to note that the global `working_set` object is initialized from
|
||||||
|
# `sys.path` when `pkg_resources` is first imported, but is only updated if you do
|
||||||
|
# all future `sys.path` manipulation via `pkg_resources` APIs. If you manually modify
|
||||||
|
# `sys.path`, you must invoke the appropriate methods on the `working_set` instance
|
||||||
|
# to keep it in sync."
|
||||||
|
# Source: https://setuptools.readthedocs.io/en/latest/pkg_resources.html#workingset-objects
|
||||||
|
pkg_resources.working_set.add_entry(str(LIB_PATH))
|
||||||
sys.meta_path.insert(0, SharedLibImportWarner())
|
sys.meta_path.insert(0, SharedLibImportWarner())
|
||||||
|
|
||||||
if cli_flags.token:
|
if cli_flags.token:
|
||||||
|
|||||||
@@ -70,11 +70,11 @@ class Admin(commands.Cog):
|
|||||||
"""A collection of server administration utilities."""
|
"""A collection of server administration utilities."""
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.conf = Config.get_conf(self, 8237492837454039, force_registration=True)
|
self.config = Config.get_conf(self, 8237492837454039, force_registration=True)
|
||||||
|
|
||||||
self.conf.register_global(serverlocked=False)
|
self.config.register_global(serverlocked=False)
|
||||||
|
|
||||||
self.conf.register_guild(
|
self.config.register_guild(
|
||||||
announce_ignore=False,
|
announce_ignore=False,
|
||||||
announce_channel=None, # Integer ID
|
announce_channel=None, # Integer ID
|
||||||
selfroles=[], # List of integer ID's
|
selfroles=[], # List of integer ID's
|
||||||
@@ -290,7 +290,7 @@ class Admin(commands.Cog):
|
|||||||
async def announce(self, ctx: commands.Context, *, message: str):
|
async def announce(self, ctx: commands.Context, *, message: str):
|
||||||
"""Announce a message to all servers the bot is in."""
|
"""Announce a message to all servers the bot is in."""
|
||||||
if not self.is_announcing():
|
if not self.is_announcing():
|
||||||
announcer = Announcer(ctx, message, config=self.conf)
|
announcer = Announcer(ctx, message, config=self.config)
|
||||||
announcer.start()
|
announcer.start()
|
||||||
|
|
||||||
self.__current_announcer = announcer
|
self.__current_announcer = announcer
|
||||||
@@ -325,7 +325,7 @@ class Admin(commands.Cog):
|
|||||||
"""
|
"""
|
||||||
if channel is None:
|
if channel is None:
|
||||||
channel = ctx.channel
|
channel = ctx.channel
|
||||||
await self.conf.guild(ctx.guild).announce_channel.set(channel.id)
|
await self.config.guild(ctx.guild).announce_channel.set(channel.id)
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
_("The announcement channel has been set to {channel.mention}").format(channel=channel)
|
_("The announcement channel has been set to {channel.mention}").format(channel=channel)
|
||||||
)
|
)
|
||||||
@@ -333,8 +333,8 @@ class Admin(commands.Cog):
|
|||||||
@announceset.command(name="ignore")
|
@announceset.command(name="ignore")
|
||||||
async def announceset_ignore(self, ctx):
|
async def announceset_ignore(self, ctx):
|
||||||
"""Toggle announcements being enabled this server."""
|
"""Toggle announcements being enabled this server."""
|
||||||
ignored = await self.conf.guild(ctx.guild).announce_ignore()
|
ignored = await self.config.guild(ctx.guild).announce_ignore()
|
||||||
await self.conf.guild(ctx.guild).announce_ignore.set(not ignored)
|
await self.config.guild(ctx.guild).announce_ignore.set(not ignored)
|
||||||
if ignored:
|
if ignored:
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
_("The server {guild.name} will receive announcements.").format(guild=ctx.guild)
|
_("The server {guild.name} will receive announcements.").format(guild=ctx.guild)
|
||||||
@@ -352,14 +352,14 @@ class Admin(commands.Cog):
|
|||||||
:param guild:
|
:param guild:
|
||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
selfrole_ids = set(await self.conf.guild(guild).selfroles())
|
selfrole_ids = set(await self.config.guild(guild).selfroles())
|
||||||
guild_roles = guild.roles
|
guild_roles = guild.roles
|
||||||
|
|
||||||
valid_roles = tuple(r for r in guild_roles if r.id in selfrole_ids)
|
valid_roles = tuple(r for r in guild_roles if r.id in selfrole_ids)
|
||||||
valid_role_ids = set(r.id for r in valid_roles)
|
valid_role_ids = set(r.id for r in valid_roles)
|
||||||
|
|
||||||
if selfrole_ids != valid_role_ids:
|
if selfrole_ids != valid_role_ids:
|
||||||
await self.conf.guild(guild).selfroles.set(list(valid_role_ids))
|
await self.config.guild(guild).selfroles.set(list(valid_role_ids))
|
||||||
|
|
||||||
# noinspection PyTypeChecker
|
# noinspection PyTypeChecker
|
||||||
return valid_roles
|
return valid_roles
|
||||||
@@ -427,7 +427,7 @@ class Admin(commands.Cog):
|
|||||||
).format(role=role)
|
).format(role=role)
|
||||||
)
|
)
|
||||||
return
|
return
|
||||||
async with self.conf.guild(ctx.guild).selfroles() as curr_selfroles:
|
async with self.config.guild(ctx.guild).selfroles() as curr_selfroles:
|
||||||
if role.id not in curr_selfroles:
|
if role.id not in curr_selfroles:
|
||||||
curr_selfroles.append(role.id)
|
curr_selfroles.append(role.id)
|
||||||
await ctx.send(_("Added."))
|
await ctx.send(_("Added."))
|
||||||
@@ -449,7 +449,7 @@ class Admin(commands.Cog):
|
|||||||
).format(role=role)
|
).format(role=role)
|
||||||
)
|
)
|
||||||
return
|
return
|
||||||
async with self.conf.guild(ctx.guild).selfroles() as curr_selfroles:
|
async with self.config.guild(ctx.guild).selfroles() as curr_selfroles:
|
||||||
curr_selfroles.remove(role.id)
|
curr_selfroles.remove(role.id)
|
||||||
|
|
||||||
await ctx.send(_("Removed."))
|
await ctx.send(_("Removed."))
|
||||||
@@ -458,8 +458,8 @@ class Admin(commands.Cog):
|
|||||||
@checks.is_owner()
|
@checks.is_owner()
|
||||||
async def serverlock(self, ctx: commands.Context):
|
async def serverlock(self, ctx: commands.Context):
|
||||||
"""Lock a bot to its current servers only."""
|
"""Lock a bot to its current servers only."""
|
||||||
serverlocked = await self.conf.serverlocked()
|
serverlocked = await self.config.serverlocked()
|
||||||
await self.conf.serverlocked.set(not serverlocked)
|
await self.config.serverlocked.set(not serverlocked)
|
||||||
|
|
||||||
if serverlocked:
|
if serverlocked:
|
||||||
await ctx.send(_("The bot is no longer serverlocked."))
|
await ctx.send(_("The bot is no longer serverlocked."))
|
||||||
@@ -467,8 +467,9 @@ class Admin(commands.Cog):
|
|||||||
await ctx.send(_("The bot is now serverlocked."))
|
await ctx.send(_("The bot is now serverlocked."))
|
||||||
|
|
||||||
# region Event Handlers
|
# region Event Handlers
|
||||||
|
@commands.Cog.listener()
|
||||||
async def on_guild_join(self, guild: discord.Guild):
|
async def on_guild_join(self, guild: discord.Guild):
|
||||||
if await self.conf.serverlocked():
|
if await self.config.serverlocked():
|
||||||
await guild.leave()
|
await guild.leave()
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import asyncio
|
|||||||
import discord
|
import discord
|
||||||
from redbot.core import commands
|
from redbot.core import commands
|
||||||
from redbot.core.i18n import Translator
|
from redbot.core.i18n import Translator
|
||||||
|
from redbot.core.utils import AsyncIter
|
||||||
from redbot.core.utils.chat_formatting import humanize_list, inline
|
from redbot.core.utils.chat_formatting import humanize_list, inline
|
||||||
|
|
||||||
_ = Translator("Announcer", __file__)
|
_ = Translator("Announcer", __file__)
|
||||||
@@ -55,7 +56,7 @@ class Announcer:
|
|||||||
async def announcer(self):
|
async def announcer(self):
|
||||||
guild_list = self.ctx.bot.guilds
|
guild_list = self.ctx.bot.guilds
|
||||||
failed = []
|
failed = []
|
||||||
for g in guild_list:
|
async for g in AsyncIter(guild_list, delay=0.5):
|
||||||
if not self.active:
|
if not self.active:
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -68,7 +69,6 @@ class Announcer:
|
|||||||
await channel.send(self.message)
|
await channel.send(self.message)
|
||||||
except discord.Forbidden:
|
except discord.Forbidden:
|
||||||
failed.append(str(g.id))
|
failed.append(str(g.id))
|
||||||
await asyncio.sleep(0.5)
|
|
||||||
|
|
||||||
if failed:
|
if failed:
|
||||||
msg = (
|
msg = (
|
||||||
|
|||||||
@@ -14,8 +14,7 @@ class SelfRole(commands.Converter):
|
|||||||
role_converter = commands.RoleConverter()
|
role_converter = commands.RoleConverter()
|
||||||
role = await role_converter.convert(ctx, arg)
|
role = await role_converter.convert(ctx, arg)
|
||||||
|
|
||||||
conf = admin.conf
|
selfroles = await admin.config.guild(ctx.guild).selfroles()
|
||||||
selfroles = await conf.guild(ctx.guild).selfroles()
|
|
||||||
|
|
||||||
if role.id not in selfroles:
|
if role.id not in selfroles:
|
||||||
raise commands.BadArgument(_("The provided role is not a valid selfrole."))
|
raise commands.BadArgument(_("The provided role is not a valid selfrole."))
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:11\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Afrikaans\n"
|
"Language-Team: Afrikaans\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: af\n"
|
"X-Crowdin-Language: af\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: af_ZA\n"
|
"Language: af_ZA\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:11\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Arabic\n"
|
"Language-Team: Arabic\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"
|
"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: ar\n"
|
"X-Crowdin-Language: ar\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: ar_SA\n"
|
"Language: ar_SA\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "لم يتم تحميل وحدة الأدمن cog."
|
msgstr "لم يتم تحميل وحدة الأدمن cog."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "الرتبة المذكورة ليست على قائمة الرتب الذاتية."
|
msgstr "الرتبة المذكورة ليست على قائمة الرتب الذاتية."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:11\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Bulgarian\n"
|
"Language-Team: Bulgarian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: bg\n"
|
"X-Crowdin-Language: bg\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: bg_BG\n"
|
"Language: bg_BG\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:11\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Catalan\n"
|
"Language-Team: Catalan\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: ca\n"
|
"X-Crowdin-Language: ca\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: ca_ES\n"
|
"Language: ca_ES\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:12\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Czech\n"
|
"Language-Team: Czech\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
|
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: cs\n"
|
"X-Crowdin-Language: cs\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: cs_CZ\n"
|
"Language: cs_CZ\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -21,31 +21,31 @@ msgstr "Pokusil jsem se udělat něco, co mi Discord odepřel. Tvůj příkaz se
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:22
|
#: redbot/cogs/admin/admin.py:22
|
||||||
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Nemohu dát {role.name} uživateli {member.display_name}, protože tato role je vyšší nebo rovna mé nejvyšší roli v Discord hierarchii."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:28
|
#: redbot/cogs/admin/admin.py:28
|
||||||
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Nemohu odebrat {role.name} uživateli {member.display_name}, protože tato role je vyšší nebo rovna mé nejvyšší roli v Discord hierarchii."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:34
|
#: redbot/cogs/admin/admin.py:34
|
||||||
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Nemohu upravit {role.name}, protože tato role je vyšší, než moje nebo stejná jako nejvyšší role v Discord hierarchii."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:40
|
#: redbot/cogs/admin/admin.py:40
|
||||||
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Nemohu ti dovolit dát {role.name} uživateli {member.display_name}, protože tato role je vyšší nebo rovna tvé nejvyšší roli v Discord hierarchii."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:46
|
#: redbot/cogs/admin/admin.py:46
|
||||||
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Nemohu ti dovolit odebrat {role.name} uživateli {member.display_name}, protože tato role je vyšší nebo rovna tvé nejvyšší roli v Discord hierarchii."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:52
|
#: redbot/cogs/admin/admin.py:52
|
||||||
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Nemohu ti dovolit upravit {role.name}, protože tato role je vyšší nebo rovna tvé nejvyšší roli v Discord hierarchii."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:58
|
#: redbot/cogs/admin/admin.py:58
|
||||||
msgid "I need manage roles permission to do that."
|
msgid "I need manage roles permission to do that."
|
||||||
msgstr ""
|
msgstr "K tomu potřebuji oprávnění spravovat role."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:60
|
#: redbot/cogs/admin/admin.py:60
|
||||||
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
||||||
@@ -58,7 +58,7 @@ msgstr "Kolekce nástrojů pro správu serveru."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:126
|
#: redbot/cogs/admin/admin.py:126
|
||||||
msgid "{member.display_name} already has the role {role.name}."
|
msgid "{member.display_name} already has the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} již má roli {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:146
|
#: redbot/cogs/admin/admin.py:146
|
||||||
msgid "I successfully added {role.name} to {member.display_name}"
|
msgid "I successfully added {role.name} to {member.display_name}"
|
||||||
@@ -66,7 +66,7 @@ msgstr "Úspěšně jsem přidal {role.name} k {member.display_name}"
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:156
|
#: redbot/cogs/admin/admin.py:156
|
||||||
msgid "{member.display_name} does not have the role {role.name}."
|
msgid "{member.display_name} does not have the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} již má roli {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:176
|
#: redbot/cogs/admin/admin.py:176
|
||||||
msgid "I successfully removed {role.name} from {member.display_name}"
|
msgid "I successfully removed {role.name} from {member.display_name}"
|
||||||
@@ -75,12 +75,12 @@ msgstr "Úspěšně jsem odstranil {role.name} od {member.display_name}"
|
|||||||
#: redbot/cogs/admin/admin.py:187
|
#: redbot/cogs/admin/admin.py:187
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Přidá roli uživateli.\\n\\n Pokud role obsahuje mezery, použijte dvojí uvozovky.\\n Ponecháte-li uživatel prázdný, výchozí hodnota autorovi příkazu.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:203
|
#: redbot/cogs/admin/admin.py:203
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Odebrat roli uživateli.\\n\\n Pokud role obsahuje mezery, použijte dvojí uvozovky.\\n Ponecháte-li uživatel prázdný, výchozí hodnota autorovi příkazu.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:217
|
#: redbot/cogs/admin/admin.py:217
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -90,7 +90,7 @@ msgstr "Upraví nastavení role."
|
|||||||
#: redbot/cogs/admin/admin.py:224
|
#: redbot/cogs/admin/admin.py:224
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Upravit barvu role.\\n\\n Pokud role obsahuje mezery, použij dvojité uvozovky.\\n Barva musí být v hexadecimálním formátu.\\n [Výběr barev online](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Příklady:\\n `[p]editrole colour \\\"Spravce\\\" #ff0000`\\n `[p]editrole colour Spravce #ff9900`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
||||||
msgid "Done."
|
msgid "Done."
|
||||||
@@ -99,12 +99,12 @@ msgstr "Hotovo."
|
|||||||
#: redbot/cogs/admin/admin.py:257
|
#: redbot/cogs/admin/admin.py:257
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Upraví název role\\n\\n Použijte dvojité uvozovky, pokud role nebo název obsahuje mezery.\\n\\n Příklady:\\n `[p]editrole name \\\"Spravce\\\" Admin`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:291
|
#: redbot/cogs/admin/admin.py:291
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Announce a message to all servers the bot is in."
|
msgid "Announce a message to all servers the bot is in."
|
||||||
msgstr ""
|
msgstr "Oznámit zprávu na všechny servery ve kterých je bot."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:298
|
#: redbot/cogs/admin/admin.py:298
|
||||||
msgid "The announcement has begun."
|
msgid "The announcement has begun."
|
||||||
@@ -117,7 +117,7 @@ msgstr "Zrušit běžící oznámení."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:307
|
#: redbot/cogs/admin/admin.py:307
|
||||||
msgid "There is no currently running announcement."
|
msgid "There is no currently running announcement."
|
||||||
msgstr ""
|
msgstr "V současné době neexistuje žádné spuštěné oznámení."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:310
|
#: redbot/cogs/admin/admin.py:310
|
||||||
msgid "The current announcement has been cancelled."
|
msgid "The current announcement has been cancelled."
|
||||||
@@ -126,12 +126,12 @@ msgstr "Momentální oznámení bylo zrušeno."
|
|||||||
#: redbot/cogs/admin/admin.py:316
|
#: redbot/cogs/admin/admin.py:316
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Change how announcements are sent in this guild."
|
msgid "Change how announcements are sent in this guild."
|
||||||
msgstr ""
|
msgstr "Změňte způsob odesílání oznámení v tomto klanu."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:321
|
#: redbot/cogs/admin/admin.py:321
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Změňte kanál, kde bude bot odesílat oznámení.\\n \\n Pokud je kanál ponechán prázdný, výchozí je aktuální kanál.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:330
|
#: redbot/cogs/admin/admin.py:330
|
||||||
msgid "The announcement channel has been set to {channel.mention}"
|
msgid "The announcement channel has been set to {channel.mention}"
|
||||||
@@ -140,35 +140,35 @@ msgstr "Kanál pro oznámení byl nastaven na {channel.mention}"
|
|||||||
#: redbot/cogs/admin/admin.py:335
|
#: redbot/cogs/admin/admin.py:335
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Toggle announcements being enabled this server."
|
msgid "Toggle announcements being enabled this server."
|
||||||
msgstr ""
|
msgstr "Zapne oznamování na tomto serveru."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:340
|
#: redbot/cogs/admin/admin.py:340
|
||||||
msgid "The server {guild.name} will receive announcements."
|
msgid "The server {guild.name} will receive announcements."
|
||||||
msgstr ""
|
msgstr "Server {guild.name} obdrží oznámení."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:344
|
#: redbot/cogs/admin/admin.py:344
|
||||||
msgid "The server {guild.name} will not receive announcements."
|
msgid "The server {guild.name} will not receive announcements."
|
||||||
msgstr ""
|
msgstr "Server {guild.name} nebude dostávat oznámení."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:370
|
#: redbot/cogs/admin/admin.py:370
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Apply selfroles."
|
msgid "Apply selfroles."
|
||||||
msgstr ""
|
msgstr "Aplikovat self-role."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:375
|
#: redbot/cogs/admin/admin.py:375
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Přidá vám self-roli.\\n\\n Administrátoři serveru musí mít nastavenou roli podle nastaveného uživatele.\\n POZNÁMKA: Role je citlivá na malá a velká písmena!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:386
|
#: redbot/cogs/admin/admin.py:386
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Odstraní vámself-roli.\\n\\n Administrátoři serveru musí mít nastavenou roli podle nastaveného uživatele.\\n POZNÁMKA: Role je citlivá na malá a velká písmena!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:397
|
#: redbot/cogs/admin/admin.py:397
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Lists all available selfroles.\\n "
|
msgid "\\n Lists all available selfroles.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Seznam všech dostupných self-rolí.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:407
|
#: redbot/cogs/admin/admin.py:407
|
||||||
msgid "Available Selfroles:\\n{selfroles}"
|
msgid "Available Selfroles:\\n{selfroles}"
|
||||||
@@ -177,37 +177,37 @@ msgstr "Dostupné vlastní role:\\n{selfroles}"
|
|||||||
#: redbot/cogs/admin/admin.py:413
|
#: redbot/cogs/admin/admin.py:413
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage selfroles."
|
msgid "Manage selfroles."
|
||||||
msgstr ""
|
msgstr "Spravovat self-role."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:418
|
#: redbot/cogs/admin/admin.py:418
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Přidá roli do seznamu dostupných self-rolí.\\n\\n POZNÁMKA: Role je citlivá na malá a velká písmena!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:425
|
#: redbot/cogs/admin/admin.py:425
|
||||||
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Nemohu ti dovolit odebrat {role.name} jako self-roli uživateli, protože tato role je vyšší nebo rovna tvé nejvyšší roli v Discord hierarchii."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:433
|
#: redbot/cogs/admin/admin.py:433
|
||||||
msgid "Added."
|
msgid "Added."
|
||||||
msgstr ""
|
msgstr "Přidáno."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:436
|
#: redbot/cogs/admin/admin.py:436
|
||||||
msgid "That role is already a selfrole."
|
msgid "That role is already a selfrole."
|
||||||
msgstr ""
|
msgstr "Tato role je již self-rolí."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:440
|
#: redbot/cogs/admin/admin.py:440
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Odstraní roli ze seznamu dostupných self-rolí.\\n\\n POZNÁMKA: Role je citlivá na malá a velká písmena!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:447
|
#: redbot/cogs/admin/admin.py:447
|
||||||
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Nemohu ti dovolit odebrat {role.name} uživateli, protože tato role je vyšší nebo rovna tvé nejvyšší roli v Discord hierarchii."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:455
|
#: redbot/cogs/admin/admin.py:455
|
||||||
msgid "Removed."
|
msgid "Removed."
|
||||||
msgstr ""
|
msgstr "Odstraněno."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:460
|
#: redbot/cogs/admin/admin.py:460
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -224,17 +224,17 @@ msgstr "Bot je nyní serverem uzamčen."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:75
|
#: redbot/cogs/admin/announcer.py:75
|
||||||
msgid "I could not announce to the following server: "
|
msgid "I could not announce to the following server: "
|
||||||
msgstr ""
|
msgstr "Nemohu oznámit následujícímu serveru: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:77
|
#: redbot/cogs/admin/announcer.py:77
|
||||||
msgid "I could not announce to the following servers: "
|
msgid "I could not announce to the following servers: "
|
||||||
msgstr ""
|
msgstr "Nemohu oznámit následujícím serverům: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:12
|
#: redbot/cogs/admin/converters.py:12
|
||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "Admin cog není načten."
|
msgstr "Admin cog není načten."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr "Daná role není platná self-role."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:12\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Danish\n"
|
"Language-Team: Danish\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: da\n"
|
"X-Crowdin-Language: da\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: da_DK\n"
|
"Language: da_DK\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-20 12:12\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: German\n"
|
"Language-Team: German\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,41 +10,42 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: de\n"
|
"X-Crowdin-Language: de\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: de_DE\n"
|
"Language: de_DE\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
|
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
|
||||||
msgstr "Ich habe versucht etwas zu tun, für das mir Discord die Befugnis verweigerte. Dein Befehl konnte nicht erfolgreich ausgeführt werden."
|
msgstr "Ich habe versucht, etwas zu tun, wofür mir Discord die Erlaubnis verweigert hat. Dein Befehl wurde nicht erfolgreich ausgeführt."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:22
|
#: redbot/cogs/admin/admin.py:22
|
||||||
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr "Ich kann {role.name} nicht an {member.display_name} vergeben, da diese Rolle gleich oder höher meiner höchsten Rolle in der Discord-Hierarchie ist."
|
msgstr "Ich kann die Rolle „{role.name}“ nicht an {member.display_name} vergeben, weil diese Rolle höher oder gleich meiner höchsten Rolle in der Discord Rollen-Hierarchie ist."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:28
|
#: redbot/cogs/admin/admin.py:28
|
||||||
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr "Ich kann {member.display_name} die Rolle {role.name} nicht entziehen, da diese gleich oder höher meiner höchsten Rolle in der Discord-Hierarchie ist."
|
msgstr "Ich kann {member.display_name} nicht die Rolle „{role.name}“ entziehen, weil diese Rolle höher oder gleich meiner höchsten Rolle in der Discord Rollen-Hierarchie ist."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:34
|
#: redbot/cogs/admin/admin.py:34
|
||||||
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
||||||
msgstr "Ich kann die Rolle \"{role.name}\" nicht bearbeiten, da diese höher oder gleich meiner höchsten Rolle in der Discord-Hierarchie ist."
|
msgstr "Ich kann die Rolle „{role.name}“ nicht bearbeiten, weil diese Rolle höher oder gleich meiner höchsten Rolle in der Discord Rollen-Hierarchie ist."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:40
|
#: redbot/cogs/admin/admin.py:40
|
||||||
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr "Ich kann dir nicht erlauben, die Rolle {role.name} an {member.display_name} zu vergeben, da diese Rolle höher oder gleich deiner höchsten Rolle in der Discord-Hierarchie ist."
|
msgstr "Du darfst, die Rolle „{role.name}“ nicht an {member.display_name} vergeben, weil diese Rolle höher oder gleich deiner höchsten Rolle in der Discord Rollen-Hierarchie ist."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:46
|
#: redbot/cogs/admin/admin.py:46
|
||||||
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr "Du kannst {member.display_name} die Rolle \"{role.name}\" entziehen, da diese gleich oder über deiner höchsten Rolle in der Discord-Hierarchie ist."
|
msgstr "Du darfst {member.display_name} nicht die Rolle „{role.name}“ entziehen, weil diese Rolle höher oder gleich deiner höchsten Rolle in der Discord Rollen-Hierarchie ist."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:52
|
#: redbot/cogs/admin/admin.py:52
|
||||||
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr "Ich kann dir nicht erlauben, die Rolle {role.name} zu bearbeiten, da diese Rolle höher oder gleich deiner höchsten Rolle in der Discord-Hierarchie ist."
|
msgstr "Du darfst nicht die Rolle „{role.name}“ bearbeiten, weil diese Rolle höher oder gleich deiner höchsten Rolle in der Discord Rollen-Hierarchie ist."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:58
|
#: redbot/cogs/admin/admin.py:58
|
||||||
msgid "I need manage roles permission to do that."
|
msgid "I need manage roles permission to do that."
|
||||||
msgstr "Ich benötige die Berechtigung \"Rollen verwalten\" um das zu tun."
|
msgstr "Ich braucht dafür die Bereichtigung „Rollen verwalten“."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:60
|
#: redbot/cogs/admin/admin.py:60
|
||||||
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
||||||
@@ -54,43 +54,43 @@ msgstr "Ich kündige bereits etwas an. Wenn du eine andere Ankündigung machen w
|
|||||||
#: redbot/cogs/admin/admin.py:70
|
#: redbot/cogs/admin/admin.py:70
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "A collection of server administration utilities."
|
msgid "A collection of server administration utilities."
|
||||||
msgstr "Eine Sammlung von administrativen Server-Verwaltungsprogramme."
|
msgstr "Eine Sammlung von administrativen Server-Verwaltungsprogrammen."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:126
|
#: redbot/cogs/admin/admin.py:126
|
||||||
msgid "{member.display_name} already has the role {role.name}."
|
msgid "{member.display_name} already has the role {role.name}."
|
||||||
msgstr "{member.display_name} hat die Rolle {role.name} bereits."
|
msgstr "{member.display_name} hat die Rolle „{role.name}“ bereits."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:146
|
#: redbot/cogs/admin/admin.py:146
|
||||||
msgid "I successfully added {role.name} to {member.display_name}"
|
msgid "I successfully added {role.name} to {member.display_name}"
|
||||||
msgstr "Ich habe erfolgreich {role.name} zu {member.display_name} hinzugefügt"
|
msgstr "Ich habe {member.display_name} erfolgreich die Rolle „{role.name}“ gegeben."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:156
|
#: redbot/cogs/admin/admin.py:156
|
||||||
msgid "{member.display_name} does not have the role {role.name}."
|
msgid "{member.display_name} does not have the role {role.name}."
|
||||||
msgstr "{member.display_name} hat nicht die Rolle {role.name}."
|
msgstr "{member.display_name} hat nicht die Rolle „{role.name}“."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:176
|
#: redbot/cogs/admin/admin.py:176
|
||||||
msgid "I successfully removed {role.name} from {member.display_name}"
|
msgid "I successfully removed {role.name} from {member.display_name}"
|
||||||
msgstr "Ich habe erfolgreich {role.name} von {member.display_name} entfernt"
|
msgstr "Ich habe die Rolle „{role.name}“ erfolgreich von {member.display_name} entfernt."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:187
|
#: redbot/cogs/admin/admin.py:187
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr "\\n Füge einem Nutzer eine Rolle hinzu.\\n\\n Benutze Anführungszeichen, wenn im Namen Leerzeichen entahlten sind.\\n Wenn kein Benutzer definiert ist, wird die Rolle dem Autor hinzugefügt.\\n "
|
msgstr "\\n Füge einem Mitglied eine Rolle hinzu.\\n\\n Benutze (amerikanische) Anführungszeichen, wenn im Namen Leerzeichen enthalten sind.\\n Wenn keine Person definiert wurde, wird die Rolle dem Ausführer des Befehls gegeben.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:203
|
#: redbot/cogs/admin/admin.py:203
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr "\\n Entferne eine Rolle von einem Nutzer.\\n\\n Benutze Anführungszeichen, wenn im Namen Leerzeichen entahlten sind.\\n Wenn kein Benutzer definiert ist, wird die Rolle vom Autor entfernt.\\n "
|
msgstr "\\n Füge einem Mitglied eine Rolle hinzu.\\n\\n Benutze (amerikanische) Anführungszeichen, wenn im Namen Leerzeichen enthalten sind.\\n Wenn keine Person definiert wurde, wird die Rolle von dem Ausführer des Befehls entfernt.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:217
|
#: redbot/cogs/admin/admin.py:217
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Edit role settings."
|
msgid "Edit role settings."
|
||||||
msgstr "Bearbeiten der Rollen Einstellungen."
|
msgstr "Rolleneinstellungen bearbeiten."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:224
|
#: redbot/cogs/admin/admin.py:224
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
msgstr "\\n Bearbeite die Farbe einer Rolle.\\n\\n Verwende Anführungszeichen, wenn die Rolle Leerzeichen enthält.\\n Die Farbe muss im Hexadezimalformat angegeben werden.\\n [Online Farbwähler](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Beispiele:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
msgstr "\\n Bearbeite die Farbe einer Rolle.\\n\\n Verwende (amerikanische) Anführungszeichen, wenn die Rolle Leerzeichen enthält.\\n Die Farbe muss im Hexadezimalformat angegeben werden.\\n [Online Farbwähler](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Beispiele:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
||||||
msgid "Done."
|
msgid "Done."
|
||||||
@@ -99,7 +99,7 @@ msgstr "Erledigt."
|
|||||||
#: redbot/cogs/admin/admin.py:257
|
#: redbot/cogs/admin/admin.py:257
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
msgstr "\\n Bearbeite den Namen einer Rolle.\\n\\n Verwende Anführungszeichen, wenn die Rolle Leerzeichen enthält.\\n\\n Beispiel:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
msgstr "\\n Bearbeite den Namen einer Rolle.\\n\\n Verwende (amerikanische) Anführungszeichen, wenn die Rolle Leerzeichen enthält.\\n\\n Beispiel:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:291
|
#: redbot/cogs/admin/admin.py:291
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -117,7 +117,7 @@ msgstr "Breche eine laufende Ankündigung ab."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:307
|
#: redbot/cogs/admin/admin.py:307
|
||||||
msgid "There is no currently running announcement."
|
msgid "There is no currently running announcement."
|
||||||
msgstr "Es gibt keine laufende Ankündigung."
|
msgstr "Es gibt keine derzeit laufende Ankündigung."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:310
|
#: redbot/cogs/admin/admin.py:310
|
||||||
msgid "The current announcement has been cancelled."
|
msgid "The current announcement has been cancelled."
|
||||||
@@ -131,11 +131,11 @@ msgstr "Ändere, wie Ankündigungen in diesem Server gesendet werden."
|
|||||||
#: redbot/cogs/admin/admin.py:321
|
#: redbot/cogs/admin/admin.py:321
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
||||||
msgstr "\\n Ändert den Kanal, in den der Bot Ankündigungen sendet.\\n \\n Wenn kein Kanal angegeben wird, wird er standardmäßig auf den aktuellen Kanal gesetzt.\\n "
|
msgstr "\\n Ändert den Kanal, in dem der Bot Ankündigungen senden wird.\\n \\n Wenn kein Kanal angegeben wird, wird standardmäßig der aktuelle Kanal gewählt.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:330
|
#: redbot/cogs/admin/admin.py:330
|
||||||
msgid "The announcement channel has been set to {channel.mention}"
|
msgid "The announcement channel has been set to {channel.mention}"
|
||||||
msgstr "Der für Ankündigungen gewählte Kanal wurde festgelegt auf {channel.mention}"
|
msgstr "{channel.mention} wurde nun als Ankündigungskanal festgelegt."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:335
|
#: redbot/cogs/admin/admin.py:335
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -153,17 +153,17 @@ msgstr "Der Server {guild.name} wird keine Ankündigunen erhalten."
|
|||||||
#: redbot/cogs/admin/admin.py:370
|
#: redbot/cogs/admin/admin.py:370
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Apply selfroles."
|
msgid "Apply selfroles."
|
||||||
msgstr "Selbst-hinzufügbare Rollen anwenden."
|
msgstr "Selbst hinzufügbare Rollen anwenden."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:375
|
#: redbot/cogs/admin/admin.py:375
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr "\\n Gib dir selbst eine Rolle.\\n\\n Server Admins müssen die Rolle für Nutzer freigeben.\\n\\n HINWEIS: Beachte Groß- und Kleinschreibung!\\n "
|
msgstr "\\n Gib dir selbst eine Rolle.\\n\\n Server Admins müssen die Rolle für Mitglieder freigeben.\\n\\n HINWEIS: Beachte Groß- und Kleinschreibung!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:386
|
#: redbot/cogs/admin/admin.py:386
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr "\\n Entferne eine Rolle von dir selbst.\\n\\n Server Admins müssen die Rolle für Nutzer freigeben.\\n\\n HINWEIS: Beachte Groß- und Kleinschreibung!\\n "
|
msgstr "\\n Entferne eine Rolle von dir selbst.\\n\\n Server Admins müssen die Rolle für Mitglieder freigeben.\\n\\n HINWEIS: Beachte Groß- und Kleinschreibung!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:397
|
#: redbot/cogs/admin/admin.py:397
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -172,21 +172,21 @@ msgstr "\\nGibt eine Liste verfügbarer selbst auswählbarer Rollen aus.\\n
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:407
|
#: redbot/cogs/admin/admin.py:407
|
||||||
msgid "Available Selfroles:\\n{selfroles}"
|
msgid "Available Selfroles:\\n{selfroles}"
|
||||||
msgstr "Verfügbare, selbst auswählbare Rollen:\\n{selfroles}"
|
msgstr "Verfügbare selbst auswählbare Rollen:\\n{selfroles}"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:413
|
#: redbot/cogs/admin/admin.py:413
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage selfroles."
|
msgid "Manage selfroles."
|
||||||
msgstr "Selbst-hinzufügbare Rollen verwalten."
|
msgstr "Selbst hinzufügbare Rollen verwalten."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:418
|
#: redbot/cogs/admin/admin.py:418
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr "\\n Füge eine Rolle zur Liste der selbst-hinzufügbaren Rollen hinzu.\\n\\n HINWEIS: Beachte Groß- und Kleinschreibung!\\n "
|
msgstr "\\n Füge eine Rolle zur Liste der selbst hinzufügbaren Rollen hinzu.\\n\\n HINWEIS: Beachte Groß- und Kleinschreibung!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:425
|
#: redbot/cogs/admin/admin.py:425
|
||||||
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr "Du kannst dir nicht die Rolle {role.name} zuweisen, da diese gleich oder über deiner höchsten Rolle in der Discord-Hierarchie ist."
|
msgstr "Du kannst dir nicht die Rolle „{role.name}“ zuweisen, weil diese Rolle höher oder gleich deiner höchsten Rolle in der Discord Rollen-Hierarchie ist."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:433
|
#: redbot/cogs/admin/admin.py:433
|
||||||
msgid "Added."
|
msgid "Added."
|
||||||
@@ -194,16 +194,16 @@ msgstr "Hinzugefügt."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:436
|
#: redbot/cogs/admin/admin.py:436
|
||||||
msgid "That role is already a selfrole."
|
msgid "That role is already a selfrole."
|
||||||
msgstr "Diese Rolle ist bereits selbst-hinzufügbar."
|
msgstr "Diese Rolle ist bereits selbst hinzufügbar."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:440
|
#: redbot/cogs/admin/admin.py:440
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr "\\n Entferne eine Rolle von der Liste der selbst-hinzufügbaren Rollen.\\n\\n HINWEIS: Beachte Groß- und Kleinschreibung!\\n "
|
msgstr "\\n Entferne eine Rolle von der Liste der selbst hinzufügbaren Rollen.\\n\\n HINWEIS: Beachte Groß- und Kleinschreibung!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:447
|
#: redbot/cogs/admin/admin.py:447
|
||||||
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr "Ich kann dir nicht erlauben, {role.name} von der Liste der selbst-hinzufügbaren Rollen zu entfernen, weil diese Rolle höher oder gleich deiner höchsten Rolle in der Discord-Hierarchie ist."
|
msgstr "Du darfst nicht die Rolle „{role.name}“ von der Liste der selbst hinzufügbaren Rollen entfernen, weil diese Rolle höher oder gleich deiner höchsten Rolle in der Discord Rollen-Hierarchie ist."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:455
|
#: redbot/cogs/admin/admin.py:455
|
||||||
msgid "Removed."
|
msgid "Removed."
|
||||||
@@ -212,11 +212,11 @@ msgstr "Entfernt."
|
|||||||
#: redbot/cogs/admin/admin.py:460
|
#: redbot/cogs/admin/admin.py:460
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Lock a bot to its current servers only."
|
msgid "Lock a bot to its current servers only."
|
||||||
msgstr "Sperrt den Bot neuen Servern beizutreten."
|
msgstr "Der Bot kann keinem neuen Server beitreten."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:465
|
#: redbot/cogs/admin/admin.py:465
|
||||||
msgid "The bot is no longer serverlocked."
|
msgid "The bot is no longer serverlocked."
|
||||||
msgstr "Der Bot ist nicht länger gesperrt neuen Servern beizutreten."
|
msgstr "Der Bot kann nun anderen Servern beitreten."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:467
|
#: redbot/cogs/admin/admin.py:467
|
||||||
msgid "The bot is now serverlocked."
|
msgid "The bot is now serverlocked."
|
||||||
@@ -224,17 +224,17 @@ msgstr "Der Bot ist jetzt gesperrt neuen Servern beizutreten."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:75
|
#: redbot/cogs/admin/announcer.py:75
|
||||||
msgid "I could not announce to the following server: "
|
msgid "I could not announce to the following server: "
|
||||||
msgstr "Ich konnte nicht in den folgenden Servern ankündigen: "
|
msgstr "Ich konnte die Ankündigung auf diesem Server nicht ausführen: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:77
|
#: redbot/cogs/admin/announcer.py:77
|
||||||
msgid "I could not announce to the following servers: "
|
msgid "I could not announce to the following servers: "
|
||||||
msgstr "Ich konnte nicht in den folgenden Servern ankündigen: "
|
msgstr "Ich konnte die Ankündigung auf diesen Servern nicht ausführen: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:12
|
#: redbot/cogs/admin/converters.py:12
|
||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "Das Admin-Cog ist nicht geladen."
|
msgstr "Das Admin-Cog ist nicht geladen."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "Die vorausgesetzte Rolle ist keine berechtigte selbst auswählbare Rolle."
|
msgstr "Die angegebene Rolle ist keine gültige selbst auswählbare Rolle."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:13\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Greek\n"
|
"Language-Team: Greek\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: el\n"
|
"X-Crowdin-Language: el\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: el_GR\n"
|
"Language: el_GR\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:16\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Spanish\n"
|
"Language-Team: Spanish\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: es-ES\n"
|
"X-Crowdin-Language: es-ES\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: es_ES\n"
|
"Language: es_ES\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -21,31 +21,31 @@ msgstr "Intenté hacer algo que Discord me ha negado el permiso. Su comando no s
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:22
|
#: redbot/cogs/admin/admin.py:22
|
||||||
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "No puedo dar el rol{role.name} a {member.display_name} porque ese rol es mayor o igual a mi rol más alto en la jerarquía de Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:28
|
#: redbot/cogs/admin/admin.py:28
|
||||||
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "No puedo eliminar el rol {role.name} de {member.display_name} porque ese rol es mayor o igual que mi rol más alto en la jerarquía de Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:34
|
#: redbot/cogs/admin/admin.py:34
|
||||||
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "No puedo editar el rol {role.name} porque ese rol es mayor que el mío o igual al rol más alto en la jerarquía de Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:40
|
#: redbot/cogs/admin/admin.py:40
|
||||||
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "No puedo dejar que le des el rol {role.name} a {member.display_name} porque ese rol es mayor o igual a tu rol más alto en la jerarquía de Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:46
|
#: redbot/cogs/admin/admin.py:46
|
||||||
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "No puedo dejar que elimines el rol {role.name} de {member.display_name} porque ese rol es mayor o igual a tu rol más alto en la jerarquía de Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:52
|
#: redbot/cogs/admin/admin.py:52
|
||||||
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "No puedo permitir que edites el rol{role.name} porque ese rol es mayor o igual a tu rol más alto en la jerarquía de Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:58
|
#: redbot/cogs/admin/admin.py:58
|
||||||
msgid "I need manage roles permission to do that."
|
msgid "I need manage roles permission to do that."
|
||||||
msgstr ""
|
msgstr "Necesito el permiso gestionar roles para hacerlo."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:60
|
#: redbot/cogs/admin/admin.py:60
|
||||||
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
||||||
@@ -58,7 +58,7 @@ msgstr "Una colección de utilidades de administración de servidores."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:126
|
#: redbot/cogs/admin/admin.py:126
|
||||||
msgid "{member.display_name} already has the role {role.name}."
|
msgid "{member.display_name} already has the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} ya tiene el rol {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:146
|
#: redbot/cogs/admin/admin.py:146
|
||||||
msgid "I successfully added {role.name} to {member.display_name}"
|
msgid "I successfully added {role.name} to {member.display_name}"
|
||||||
@@ -66,7 +66,7 @@ msgstr "He añadido con éxito {role.name} a {member.display_name}"
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:156
|
#: redbot/cogs/admin/admin.py:156
|
||||||
msgid "{member.display_name} does not have the role {role.name}."
|
msgid "{member.display_name} does not have the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} no tiene el rol {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:176
|
#: redbot/cogs/admin/admin.py:176
|
||||||
msgid "I successfully removed {role.name} from {member.display_name}"
|
msgid "I successfully removed {role.name} from {member.display_name}"
|
||||||
@@ -75,12 +75,12 @@ msgstr "He retirado con éxito {role.name} de {member.display_name}"
|
|||||||
#: redbot/cogs/admin/admin.py:187
|
#: redbot/cogs/admin/admin.py:187
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Añadir un rol a un usuario.\\n\\n Usar comillas dobles si el rol contiene espacios.\\n Si el usuario se deja en blanco el valor por defecto es el autor del comando.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:203
|
#: redbot/cogs/admin/admin.py:203
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Elimina un rol de un usuario.\\n\\n Usar comillas dobles si el rol contiene espacios.\\n Si el usuario se deja en blanco el valor por defecto es el autor del comando.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:217
|
#: redbot/cogs/admin/admin.py:217
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -90,7 +90,7 @@ msgstr "Editar configuración de rol."
|
|||||||
#: redbot/cogs/admin/admin.py:224
|
#: redbot/cogs/admin/admin.py:224
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Edita el color de un rol.\\n\\n Usar comillas dobles si el rol contiene espacios.\\n El color debe estar en formato hexadecimal.\\n [Selector de color en línea](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Ejemplos:\\n `[p]color editrole \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
||||||
msgid "Done."
|
msgid "Done."
|
||||||
@@ -99,7 +99,7 @@ msgstr "Listo."
|
|||||||
#: redbot/cogs/admin/admin.py:257
|
#: redbot/cogs/admin/admin.py:257
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Edita el nombre de un rol.\\n\\n Utilice comillas dobles si el rol o el nombre contiene espacios.\\n\\n Ejemplo:\\n `[p]nombre editrole \\\"The Transistor\\\" Test`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:291
|
#: redbot/cogs/admin/admin.py:291
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -108,115 +108,115 @@ msgstr "Anunciar un mensaje a todos los servidores en que el bot está."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:298
|
#: redbot/cogs/admin/admin.py:298
|
||||||
msgid "The announcement has begun."
|
msgid "The announcement has begun."
|
||||||
msgstr ""
|
msgstr "El anuncio ha comenzado."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:305
|
#: redbot/cogs/admin/admin.py:305
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Cancel a running announce."
|
msgid "Cancel a running announce."
|
||||||
msgstr ""
|
msgstr "Cancela un anuncio en ejecución."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:307
|
#: redbot/cogs/admin/admin.py:307
|
||||||
msgid "There is no currently running announcement."
|
msgid "There is no currently running announcement."
|
||||||
msgstr ""
|
msgstr "No hay ningún anuncio en ejecución."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:310
|
#: redbot/cogs/admin/admin.py:310
|
||||||
msgid "The current announcement has been cancelled."
|
msgid "The current announcement has been cancelled."
|
||||||
msgstr ""
|
msgstr "El anuncio actual ha sido cancelado."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:316
|
#: redbot/cogs/admin/admin.py:316
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Change how announcements are sent in this guild."
|
msgid "Change how announcements are sent in this guild."
|
||||||
msgstr ""
|
msgstr "Cambia cómo son enviados los anuncios en este servidor."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:321
|
#: redbot/cogs/admin/admin.py:321
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Cambia el canal donde el bot enviará anuncios.\\n \\n Si se deja en blanco el canal por defecto es el canal actual.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:330
|
#: redbot/cogs/admin/admin.py:330
|
||||||
msgid "The announcement channel has been set to {channel.mention}"
|
msgid "The announcement channel has been set to {channel.mention}"
|
||||||
msgstr ""
|
msgstr "El canal de anuncios se ha establecido en {channel.mention}"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:335
|
#: redbot/cogs/admin/admin.py:335
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Toggle announcements being enabled this server."
|
msgid "Toggle announcements being enabled this server."
|
||||||
msgstr ""
|
msgstr "Alternar la activación de los anuncios en este servidor."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:340
|
#: redbot/cogs/admin/admin.py:340
|
||||||
msgid "The server {guild.name} will receive announcements."
|
msgid "The server {guild.name} will receive announcements."
|
||||||
msgstr ""
|
msgstr "El servidor {guild.name} recibirá anuncios."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:344
|
#: redbot/cogs/admin/admin.py:344
|
||||||
msgid "The server {guild.name} will not receive announcements."
|
msgid "The server {guild.name} will not receive announcements."
|
||||||
msgstr ""
|
msgstr "El servidor {guild.name} no recibirá anuncios."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:370
|
#: redbot/cogs/admin/admin.py:370
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Apply selfroles."
|
msgid "Apply selfroles."
|
||||||
msgstr ""
|
msgstr "Aplicar selfroles."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:375
|
#: redbot/cogs/admin/admin.py:375
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Añade un rol a ti mismo.\\n\\n Los administradores del servidor deben haber configurado el rol como usuario configurable.\\n NOTA: El rol es sensible a mayúsculas!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:386
|
#: redbot/cogs/admin/admin.py:386
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Elimina un rol de ti mismo.\\n\\n Los administradores del servidor deben haber configurado el rol como usuario configurable.\\n NOTA: El rol es sensible a mayúsculas!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:397
|
#: redbot/cogs/admin/admin.py:397
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Lists all available selfroles.\\n "
|
msgid "\\n Lists all available selfroles.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Lista de todos los selfroles disponibles.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:407
|
#: redbot/cogs/admin/admin.py:407
|
||||||
msgid "Available Selfroles:\\n{selfroles}"
|
msgid "Available Selfroles:\\n{selfroles}"
|
||||||
msgstr ""
|
msgstr "Selfroles disponibles:\\n{selfroles}"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:413
|
#: redbot/cogs/admin/admin.py:413
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage selfroles."
|
msgid "Manage selfroles."
|
||||||
msgstr ""
|
msgstr "Gestionar selfroles."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:418
|
#: redbot/cogs/admin/admin.py:418
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Añade un rol a la lista de selfroles disponibles.\\n\\n NOTA: ¡El rol es sensible a mayúsculas\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:425
|
#: redbot/cogs/admin/admin.py:425
|
||||||
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "No puedo permitir que añadas {role.name} como selfrole porque ese rol es mayor o igual a tu rol más alto en la jerarquía de Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:433
|
#: redbot/cogs/admin/admin.py:433
|
||||||
msgid "Added."
|
msgid "Added."
|
||||||
msgstr ""
|
msgstr "Añadido."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:436
|
#: redbot/cogs/admin/admin.py:436
|
||||||
msgid "That role is already a selfrole."
|
msgid "That role is already a selfrole."
|
||||||
msgstr ""
|
msgstr "Ese rol ya es un selfrole."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:440
|
#: redbot/cogs/admin/admin.py:440
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Quita un rol de la lista de selfroles disponibles.\\n\\n NOTA: El rol es sensible a mayúsculas\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:447
|
#: redbot/cogs/admin/admin.py:447
|
||||||
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "No puedo permitir que elimines a {role.name} de ser un selfrole porque ese rol es mayor o igual a tu rol más alto en la jerarquía de Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:455
|
#: redbot/cogs/admin/admin.py:455
|
||||||
msgid "Removed."
|
msgid "Removed."
|
||||||
msgstr ""
|
msgstr "Eliminado."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:460
|
#: redbot/cogs/admin/admin.py:460
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Lock a bot to its current servers only."
|
msgid "Lock a bot to its current servers only."
|
||||||
msgstr ""
|
msgstr "Bloquea el bot sólo a sus servidores actuales."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:465
|
#: redbot/cogs/admin/admin.py:465
|
||||||
msgid "The bot is no longer serverlocked."
|
msgid "The bot is no longer serverlocked."
|
||||||
msgstr ""
|
msgstr "El bot ya no está bloqueado por el servidor."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:467
|
#: redbot/cogs/admin/admin.py:467
|
||||||
msgid "The bot is now serverlocked."
|
msgid "The bot is now serverlocked."
|
||||||
@@ -224,17 +224,17 @@ msgstr "El bot está bloqueado por el servidor."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:75
|
#: redbot/cogs/admin/announcer.py:75
|
||||||
msgid "I could not announce to the following server: "
|
msgid "I could not announce to the following server: "
|
||||||
msgstr ""
|
msgstr "No pude anunciar en el siguiente servidor: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:77
|
#: redbot/cogs/admin/announcer.py:77
|
||||||
msgid "I could not announce to the following servers: "
|
msgid "I could not announce to the following servers: "
|
||||||
msgstr ""
|
msgstr "No pude anunciar en los siguientes servidores: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:12
|
#: redbot/cogs/admin/converters.py:12
|
||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "El cog Admin no está cargado."
|
msgstr "El cog Admin no está cargado."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "El rol proporcionado no es un selfrole válido."
|
msgstr "El rol proporcionado no es un selfrole válido."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:13\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Finnish\n"
|
"Language-Team: Finnish\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: fi\n"
|
"X-Crowdin-Language: fi\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: fi_FI\n"
|
"Language: fi_FI\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-27 12:12\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: French\n"
|
"Language-Team: French\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: fr\n"
|
"X-Crowdin-Language: fr\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: fr_FR\n"
|
"Language: fr_FR\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -21,31 +21,31 @@ msgstr "J'ai tenté de faire quelque chose que pour lequel Discord m'a refusé l
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:22
|
#: redbot/cogs/admin/admin.py:22
|
||||||
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Je ne peux pas donner {role.name} à {member.display_name} car ce rôle est supérieur ou égal à mon rôle le plus élevé dans la hiérarchie Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:28
|
#: redbot/cogs/admin/admin.py:28
|
||||||
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Je ne peux pas supprimer {role.name} de {member.display_name} car ce rôle est supérieur ou égal à mon rôle le plus élevé dans la hiérarchie Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:34
|
#: redbot/cogs/admin/admin.py:34
|
||||||
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Je ne peux pas modifier {role.name} parce que ce rôle est supérieur ou égal à mon rôle le plus élevé dans la hiérarchie Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:40
|
#: redbot/cogs/admin/admin.py:40
|
||||||
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Je ne peux pas vous laisser donner {role.name} à {member.display_name} car ce rôle est supérieur ou égal à votre rôle le plus haut dans la hiérarchie Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:46
|
#: redbot/cogs/admin/admin.py:46
|
||||||
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Je ne peux pas vous permettre de supprimer {role.name} de {member.display_name} car ce rôle est supérieur ou égal à votre rôle le plus élevé dans la hiérarchie Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:52
|
#: redbot/cogs/admin/admin.py:52
|
||||||
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Je ne peux pas vous permettre de modifier {role.name} car ce rôle est supérieur ou égal à votre rôle le plus élevé dans la hiérarchie Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:58
|
#: redbot/cogs/admin/admin.py:58
|
||||||
msgid "I need manage roles permission to do that."
|
msgid "I need manage roles permission to do that."
|
||||||
msgstr ""
|
msgstr "J’ai besoin de la permission de gérer les rôles pour faire cela."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:60
|
#: redbot/cogs/admin/admin.py:60
|
||||||
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
||||||
@@ -58,7 +58,7 @@ msgstr "Un ensemble d'utilitaires d'administration du serveur."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:126
|
#: redbot/cogs/admin/admin.py:126
|
||||||
msgid "{member.display_name} already has the role {role.name}."
|
msgid "{member.display_name} already has the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} a déjà le rôle {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:146
|
#: redbot/cogs/admin/admin.py:146
|
||||||
msgid "I successfully added {role.name} to {member.display_name}"
|
msgid "I successfully added {role.name} to {member.display_name}"
|
||||||
@@ -66,7 +66,7 @@ msgstr "J'ai bien ajouté le rôle {role.name} à {member.display_name}"
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:156
|
#: redbot/cogs/admin/admin.py:156
|
||||||
msgid "{member.display_name} does not have the role {role.name}."
|
msgid "{member.display_name} does not have the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} n'a pas le rôle {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:176
|
#: redbot/cogs/admin/admin.py:176
|
||||||
msgid "I successfully removed {role.name} from {member.display_name}"
|
msgid "I successfully removed {role.name} from {member.display_name}"
|
||||||
@@ -75,12 +75,12 @@ msgstr "J'ai bien retiré le rôle {role.name} de {member.display_name}"
|
|||||||
#: redbot/cogs/admin/admin.py:187
|
#: redbot/cogs/admin/admin.py:187
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Ajouter un rôle à un utilisateur.\\n\\n Utilisez des guillemets si le rôle contient des espaces.\\n Si l'utilisateur est laissé vide, c'est par défaut l'auteur de la commande.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:203
|
#: redbot/cogs/admin/admin.py:203
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Retirer un rôle d'un utilisateur.\\n\\n Utilisez des guillemets doubles si le rôle contient des espaces.\\n Si l'utilisateur est laissé vide, c'est par défaut l'auteur de la commande.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:217
|
#: redbot/cogs/admin/admin.py:217
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -90,7 +90,7 @@ msgstr "Modifier les paramètres d'un rôle."
|
|||||||
#: redbot/cogs/admin/admin.py:224
|
#: redbot/cogs/admin/admin.py:224
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Modifiez la couleur d'un rôle.\\n\\n Utilisez des guillemets doubles si le rôle contient des espaces.\\n La couleur doit être au format hexadécimal.\\n [Sélecteur de couleurs en ligne](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Exemples:\\n `[p]editrole color \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
||||||
msgid "Done."
|
msgid "Done."
|
||||||
@@ -99,7 +99,7 @@ msgstr "Fait."
|
|||||||
#: redbot/cogs/admin/admin.py:257
|
#: redbot/cogs/admin/admin.py:257
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Modifier le nom d'un rôle.\\n\\n Utiliser des guillemets si le rôle ou le nom contient des espaces.\\n\\n Exemple:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:291
|
#: redbot/cogs/admin/admin.py:291
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -117,7 +117,7 @@ msgstr "Interrompre une annonce en cours."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:307
|
#: redbot/cogs/admin/admin.py:307
|
||||||
msgid "There is no currently running announcement."
|
msgid "There is no currently running announcement."
|
||||||
msgstr ""
|
msgstr "Il n'y a aucune annonce en cours d'exécution."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:310
|
#: redbot/cogs/admin/admin.py:310
|
||||||
msgid "The current announcement has been cancelled."
|
msgid "The current announcement has been cancelled."
|
||||||
@@ -126,12 +126,12 @@ msgstr "L'annonce actuelle a été interrompue."
|
|||||||
#: redbot/cogs/admin/admin.py:316
|
#: redbot/cogs/admin/admin.py:316
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Change how announcements are sent in this guild."
|
msgid "Change how announcements are sent in this guild."
|
||||||
msgstr ""
|
msgstr "Change la façon dont les annonces sont envoyées dans ce serveur."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:321
|
#: redbot/cogs/admin/admin.py:321
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Changer le salon où le bot enverra des annonces.\\n \\n Si le salon est laissé vide, il est par défaut sur le salon actuel.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:330
|
#: redbot/cogs/admin/admin.py:330
|
||||||
msgid "The announcement channel has been set to {channel.mention}"
|
msgid "The announcement channel has been set to {channel.mention}"
|
||||||
@@ -153,17 +153,17 @@ msgstr "Le serveur {guild.name} ne recevra plus les annonces."
|
|||||||
#: redbot/cogs/admin/admin.py:370
|
#: redbot/cogs/admin/admin.py:370
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Apply selfroles."
|
msgid "Apply selfroles."
|
||||||
msgstr ""
|
msgstr "Appliquer auto-rôles."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:375
|
#: redbot/cogs/admin/admin.py:375
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Ajouter un auto-rôle à vous-même.\\n\\n Les administrateurs du serveur doivent avoir configuré le rôle en tant qu'utilisable par les utilisateurs.\\n NOTE : Le rôle est sensible aux majuscules et minuscules !\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:386
|
#: redbot/cogs/admin/admin.py:386
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Supprimez un auto-rôle de vous-même.\\n\\n Les administrateurs du serveur doivent avoir configuré le rôle en tant qu'utilisable par les utilisateurs.\\n NOTE : Le rôle est sensible aux majuscules et minuscules !\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:397
|
#: redbot/cogs/admin/admin.py:397
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -182,7 +182,7 @@ msgstr "Gérer les auto-roles."
|
|||||||
#: redbot/cogs/admin/admin.py:418
|
#: redbot/cogs/admin/admin.py:418
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\nAjouter un rôle à la liste des auto-rôles disponibles.\\n\\n NOTE : Le nom du rôle est sensible aux majuscules et minuscules !\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:425
|
#: redbot/cogs/admin/admin.py:425
|
||||||
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
@@ -234,7 +234,7 @@ msgstr "Je n'ai pas pu annoncer aux serveurs suivants : "
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "Le cog Admin n'est pas chargé."
|
msgstr "Le cog Admin n'est pas chargé."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "Le rôle fourni n'est pas un auto-rôle valide."
|
msgstr "Le rôle fourni n'est pas un auto-rôle valide."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:13\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Hebrew\n"
|
"Language-Team: Hebrew\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n"
|
"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: he\n"
|
"X-Crowdin-Language: he\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: he_IL\n"
|
"Language: he_IL\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:13\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Hungarian\n"
|
"Language-Team: Hungarian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: hu\n"
|
"X-Crowdin-Language: hu\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: hu_HU\n"
|
"Language: hu_HU\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:14\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Indonesian\n"
|
"Language-Team: Indonesian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: id\n"
|
"X-Crowdin-Language: id\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: id_ID\n"
|
"Language: id_ID\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:14\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Italian\n"
|
"Language-Team: Italian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: it\n"
|
"X-Crowdin-Language: it\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: it_IT\n"
|
"Language: it_IT\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "Il cog Admin non è caricato."
|
msgstr "Il cog Admin non è caricato."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "Il ruolo fornito non è un ruolo autoassegnabile valido."
|
msgstr "Il ruolo fornito non è un ruolo autoassegnabile valido."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:14\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Japanese\n"
|
"Language-Team: Japanese\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: ja\n"
|
"X-Crowdin-Language: ja\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: ja_JP\n"
|
"Language: ja_JP\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:14\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Korean\n"
|
"Language-Team: Korean\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: ko\n"
|
"X-Crowdin-Language: ko\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: ko_KR\n"
|
"Language: ko_KR\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -85,7 +85,7 @@ msgstr ""
|
|||||||
#: redbot/cogs/admin/admin.py:217
|
#: redbot/cogs/admin/admin.py:217
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Edit role settings."
|
msgid "Edit role settings."
|
||||||
msgstr ""
|
msgstr "역할 설정을 변경했어요."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:224
|
#: redbot/cogs/admin/admin.py:224
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -113,7 +113,7 @@ msgstr ""
|
|||||||
#: redbot/cogs/admin/admin.py:305
|
#: redbot/cogs/admin/admin.py:305
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Cancel a running announce."
|
msgid "Cancel a running announce."
|
||||||
msgstr ""
|
msgstr "실행 중인 공지사항을 취소했어요."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:307
|
#: redbot/cogs/admin/admin.py:307
|
||||||
msgid "There is no currently running announcement."
|
msgid "There is no currently running announcement."
|
||||||
@@ -190,7 +190,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:433
|
#: redbot/cogs/admin/admin.py:433
|
||||||
msgid "Added."
|
msgid "Added."
|
||||||
msgstr ""
|
msgstr "추가됐어요."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:436
|
#: redbot/cogs/admin/admin.py:436
|
||||||
msgid "That role is already a selfrole."
|
msgid "That role is already a selfrole."
|
||||||
@@ -207,7 +207,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:455
|
#: redbot/cogs/admin/admin.py:455
|
||||||
msgid "Removed."
|
msgid "Removed."
|
||||||
msgstr ""
|
msgstr "제거됐어요."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:460
|
#: redbot/cogs/admin/admin.py:460
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -228,13 +228,13 @@ msgstr ""
|
|||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:77
|
#: redbot/cogs/admin/announcer.py:77
|
||||||
msgid "I could not announce to the following servers: "
|
msgid "I could not announce to the following servers: "
|
||||||
msgstr ""
|
msgstr "다음과 같은 서버에 알릴 수 없어요. : "
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:12
|
#: redbot/cogs/admin/converters.py:12
|
||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr "관리자 cog가 로드되지 않았어요."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:12\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Dutch\n"
|
"Language-Team: Dutch\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: nl\n"
|
"X-Crowdin-Language: nl\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: nl_NL\n"
|
"Language: nl_NL\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr "Ik kon de volgende servers niet aankondigen: "
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "De admin cog is niet geladen."
|
msgstr "De admin cog is niet geladen."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "De ingevulde rol is geen beschikbare selfrole."
|
msgstr "De ingevulde rol is geen beschikbare selfrole."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:14\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Norwegian\n"
|
"Language-Team: Norwegian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: no\n"
|
"X-Crowdin-Language: no\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: no_NO\n"
|
"Language: no_NO\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:14\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Polish\n"
|
"Language-Team: Polish\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
|
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: pl\n"
|
"X-Crowdin-Language: pl\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: pl_PL\n"
|
"Language: pl_PL\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "Moduł Admin nie jest załadowany."
|
msgstr "Moduł Admin nie jest załadowany."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:15\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Portuguese, Brazilian\n"
|
"Language-Team: Portuguese, Brazilian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: pt-BR\n"
|
"X-Crowdin-Language: pt-BR\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: pt_BR\n"
|
"Language: pt_BR\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -21,31 +21,31 @@ msgstr "Eu tentei fazer algo que o Discord me negou as permissões. Seu comando
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:22
|
#: redbot/cogs/admin/admin.py:22
|
||||||
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Não posso atribuir o cargo {role.name} para {member.display_name} porque este cargo é mais alto ou igual que o meu cargo mais alto na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:28
|
#: redbot/cogs/admin/admin.py:28
|
||||||
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Não posso remover o cargo {role.name} de {member.display_name} porque este cargo é mais alto ou igual que o meu cargo mais alto na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:34
|
#: redbot/cogs/admin/admin.py:34
|
||||||
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Não posso alterar o cargo {role.name} porque este cargo é mais alto ou igual que o meu cargo mais alto na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:40
|
#: redbot/cogs/admin/admin.py:40
|
||||||
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Não posso deixar você atribuir o cargo {role.name} para {member.display_name} porque este cargo é mais alto ou igual que o meu cargo mais alto na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:46
|
#: redbot/cogs/admin/admin.py:46
|
||||||
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Não posso deixar você rmover o cargo {role.name} de {member.display_name} porque este cargo é mais alto ou igual que o meu cargo mais alto na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:52
|
#: redbot/cogs/admin/admin.py:52
|
||||||
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Não posso deixar você alterar o cargo {role.name} porque este cargo é mais alto ou igual que o meu cargo mais alto na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:58
|
#: redbot/cogs/admin/admin.py:58
|
||||||
msgid "I need manage roles permission to do that."
|
msgid "I need manage roles permission to do that."
|
||||||
msgstr ""
|
msgstr "Preciso da permissão para alterar os cargos para fazer isto."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:60
|
#: redbot/cogs/admin/admin.py:60
|
||||||
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
||||||
@@ -54,11 +54,11 @@ msgstr "Eu já estou anunciando algo. Se quer fazer um anúncio diferente, por f
|
|||||||
#: redbot/cogs/admin/admin.py:70
|
#: redbot/cogs/admin/admin.py:70
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "A collection of server administration utilities."
|
msgid "A collection of server administration utilities."
|
||||||
msgstr "Uma coleção de ferramentas de administração para o servidor."
|
msgstr "Um conjunto de ferramentas para a administração do servidor."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:126
|
#: redbot/cogs/admin/admin.py:126
|
||||||
msgid "{member.display_name} already has the role {role.name}."
|
msgid "{member.display_name} already has the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} já tem o cargo {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:146
|
#: redbot/cogs/admin/admin.py:146
|
||||||
msgid "I successfully added {role.name} to {member.display_name}"
|
msgid "I successfully added {role.name} to {member.display_name}"
|
||||||
@@ -66,31 +66,31 @@ msgstr "Eu adicionei com sucesso {role.name} de {member.display_name}"
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:156
|
#: redbot/cogs/admin/admin.py:156
|
||||||
msgid "{member.display_name} does not have the role {role.name}."
|
msgid "{member.display_name} does not have the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} não tem o cargo {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:176
|
#: redbot/cogs/admin/admin.py:176
|
||||||
msgid "I successfully removed {role.name} from {member.display_name}"
|
msgid "I successfully removed {role.name} from {member.display_name}"
|
||||||
msgstr "Eu removi com sucesso {role.name} de {member.display_name}"
|
msgstr "Eu removi {role.name} de {member.display_name} com sucesso"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:187
|
#: redbot/cogs/admin/admin.py:187
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Concede um cargo a um(a) usuário(a).\\n\\n Use aspas duplas se o nome do cargo contiver espaços.\\n Se o usuário for deixado em branco, por padrão será usado a(o) autor(a) do comando.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:203
|
#: redbot/cogs/admin/admin.py:203
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Remove um cargo de um(a) usuário(a).\\n\\n Use aspas duplas se o nome do cargo contiver espaços.\\n Se o usuário for deixado em branco, por padrão será usado a(o) autor(a) do comando.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:217
|
#: redbot/cogs/admin/admin.py:217
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Edit role settings."
|
msgid "Edit role settings."
|
||||||
msgstr "Edite as configurações de cargo."
|
msgstr "Altera as configurações de cargo."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:224
|
#: redbot/cogs/admin/admin.py:224
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Edita a cor de um cargo.\\n\\n Use aspas duplas se o cargo contiver espaços.\\n A cor precisa estar em formato hexadecimal.\\n [Seletor de cores online](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Exemplos:\\n `[p]editrole colour \\\"O Transistor\\\" #ff0000`\\n `[p]editrole colour Teste #ff9900`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
||||||
msgid "Done."
|
msgid "Done."
|
||||||
@@ -99,142 +99,142 @@ msgstr "Concluído."
|
|||||||
#: redbot/cogs/admin/admin.py:257
|
#: redbot/cogs/admin/admin.py:257
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Alterar o nome de um cargo.\\n\\n Use aspas duplas se o cargo ou o nome contiverem espaços.\\n\\n Exemplo:\\n `[p]editrole name \\\"O Transistor\\\" Teste`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:291
|
#: redbot/cogs/admin/admin.py:291
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Announce a message to all servers the bot is in."
|
msgid "Announce a message to all servers the bot is in."
|
||||||
msgstr ""
|
msgstr "Anuncia uma mensagem para todos os servidores onde o bot está."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:298
|
#: redbot/cogs/admin/admin.py:298
|
||||||
msgid "The announcement has begun."
|
msgid "The announcement has begun."
|
||||||
msgstr ""
|
msgstr "O anúncio começou."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:305
|
#: redbot/cogs/admin/admin.py:305
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Cancel a running announce."
|
msgid "Cancel a running announce."
|
||||||
msgstr ""
|
msgstr "Cancela um anúncio em andamento."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:307
|
#: redbot/cogs/admin/admin.py:307
|
||||||
msgid "There is no currently running announcement."
|
msgid "There is no currently running announcement."
|
||||||
msgstr ""
|
msgstr "Não existe nenhum anúncio em andamento."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:310
|
#: redbot/cogs/admin/admin.py:310
|
||||||
msgid "The current announcement has been cancelled."
|
msgid "The current announcement has been cancelled."
|
||||||
msgstr ""
|
msgstr "O anúncio atual foi cancelado."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:316
|
#: redbot/cogs/admin/admin.py:316
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Change how announcements are sent in this guild."
|
msgid "Change how announcements are sent in this guild."
|
||||||
msgstr ""
|
msgstr "Altera como os anúncios são enviados nessa guilda."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:321
|
#: redbot/cogs/admin/admin.py:321
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Altera o canal para onde o bot enviará os anúncios.\\n \\n Se o canal for deixado em branco, por padrão será usado o canal atual.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:330
|
#: redbot/cogs/admin/admin.py:330
|
||||||
msgid "The announcement channel has been set to {channel.mention}"
|
msgid "The announcement channel has been set to {channel.mention}"
|
||||||
msgstr ""
|
msgstr "O canal de anúncios foi definido como {channel.mention}"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:335
|
#: redbot/cogs/admin/admin.py:335
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Toggle announcements being enabled this server."
|
msgid "Toggle announcements being enabled this server."
|
||||||
msgstr ""
|
msgstr "Alterna se os anúncios estão habilitados nesse servidor."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:340
|
#: redbot/cogs/admin/admin.py:340
|
||||||
msgid "The server {guild.name} will receive announcements."
|
msgid "The server {guild.name} will receive announcements."
|
||||||
msgstr ""
|
msgstr "O servidor {guild.name} receberá anúncios."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:344
|
#: redbot/cogs/admin/admin.py:344
|
||||||
msgid "The server {guild.name} will not receive announcements."
|
msgid "The server {guild.name} will not receive announcements."
|
||||||
msgstr ""
|
msgstr "O servidor {guild.name} não receberá anúncios."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:370
|
#: redbot/cogs/admin/admin.py:370
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Apply selfroles."
|
msgid "Apply selfroles."
|
||||||
msgstr ""
|
msgstr "Concede cargos autoatribuíveis a si."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:375
|
#: redbot/cogs/admin/admin.py:375
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Concede um cargo autoatribuível a si.\\n\\n Os administradores do servidor precisarão configurar o cargo como autoatribuível.\\n NOTA: o nome do cargo diferencia entre maiúsculas e minúsculas!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:386
|
#: redbot/cogs/admin/admin.py:386
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Remove um cargo autoatribuível de si.\\n\\n Os administradores do servidor precisarão configurar o cargo como autoatribuível.\\n NOTA: o nome do cargo diferencia entre maiúsculas e minúsculas!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:397
|
#: redbot/cogs/admin/admin.py:397
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Lists all available selfroles.\\n "
|
msgid "\\n Lists all available selfroles.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Lista todos os cargos autoatribuíveis.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:407
|
#: redbot/cogs/admin/admin.py:407
|
||||||
msgid "Available Selfroles:\\n{selfroles}"
|
msgid "Available Selfroles:\\n{selfroles}"
|
||||||
msgstr ""
|
msgstr "Cargos autoatribuíveis disponíveis:\\n{selfroles}"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:413
|
#: redbot/cogs/admin/admin.py:413
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage selfroles."
|
msgid "Manage selfroles."
|
||||||
msgstr ""
|
msgstr "Gerenciar cargos autoatribuíveis."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:418
|
#: redbot/cogs/admin/admin.py:418
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Adiciona um cargo à lista de cargos autoatribuíveis.\\n\\n NOTA: o nome do cargo diferencia entre maiúsculas e minúsculas!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:425
|
#: redbot/cogs/admin/admin.py:425
|
||||||
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Não posso deixar você atribuir {role.name} como um cargo autoatribuível porque este cargo é mais alto ou igual ao seu mais alto cargo na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:433
|
#: redbot/cogs/admin/admin.py:433
|
||||||
msgid "Added."
|
msgid "Added."
|
||||||
msgstr ""
|
msgstr "Adicionado."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:436
|
#: redbot/cogs/admin/admin.py:436
|
||||||
msgid "That role is already a selfrole."
|
msgid "That role is already a selfrole."
|
||||||
msgstr ""
|
msgstr "Este cargo já é autoatribuível."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:440
|
#: redbot/cogs/admin/admin.py:440
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Remove um cargo da lista de cargos autoatribuíveis.\\n\\n NOTA: o nome do cargo diferencia entre maiúsculas e minúsculas!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:447
|
#: redbot/cogs/admin/admin.py:447
|
||||||
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Não posso deixar você remover o cargo {role.name} da lista de cargos autoatribuíveis porque este cargo é mais alto ou igual ao seu mais alto cargo na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:455
|
#: redbot/cogs/admin/admin.py:455
|
||||||
msgid "Removed."
|
msgid "Removed."
|
||||||
msgstr ""
|
msgstr "Removido."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:460
|
#: redbot/cogs/admin/admin.py:460
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Lock a bot to its current servers only."
|
msgid "Lock a bot to its current servers only."
|
||||||
msgstr ""
|
msgstr "Restringe o bot somente aos servidores atuais."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:465
|
#: redbot/cogs/admin/admin.py:465
|
||||||
msgid "The bot is no longer serverlocked."
|
msgid "The bot is no longer serverlocked."
|
||||||
msgstr ""
|
msgstr "O bot não está mais restrito aos servidores atuais."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:467
|
#: redbot/cogs/admin/admin.py:467
|
||||||
msgid "The bot is now serverlocked."
|
msgid "The bot is now serverlocked."
|
||||||
msgstr ""
|
msgstr "O está restrito aos servidores atuais."
|
||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:75
|
#: redbot/cogs/admin/announcer.py:75
|
||||||
msgid "I could not announce to the following server: "
|
msgid "I could not announce to the following server: "
|
||||||
msgstr ""
|
msgstr "Não pude anunciar no seguinte servidor: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:77
|
#: redbot/cogs/admin/announcer.py:77
|
||||||
msgid "I could not announce to the following servers: "
|
msgid "I could not announce to the following servers: "
|
||||||
msgstr ""
|
msgstr "Não pude anunciar nos seguintes servidores: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:12
|
#: redbot/cogs/admin/converters.py:12
|
||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr "O cog 'Admin' não está carregado."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr "O cargo fornecido não é um cargo autoatribuível válido."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:15\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Portuguese\n"
|
"Language-Team: Portuguese\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: pt-PT\n"
|
"X-Crowdin-Language: pt-PT\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: pt_PT\n"
|
"Language: pt_PT\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -21,11 +21,11 @@ msgstr "Tentei fazer uma coisa que o Discord negou permissão para fazer. O coma
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:22
|
#: redbot/cogs/admin/admin.py:22
|
||||||
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Eu não posso dar {role.name} a {member.display_name} porque esse cargo é igual ou maior a meu cargo na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:28
|
#: redbot/cogs/admin/admin.py:28
|
||||||
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Não posso remover {role.name} de {member.display_name} porque esse cargo é igual ou maior a meu cargo na hierarquia do Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:34
|
#: redbot/cogs/admin/admin.py:34
|
||||||
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "O cog 'Admin' não está carregado."
|
msgstr "O cog 'Admin' não está carregado."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "O cargo indicado não é um cargo definível válido."
|
msgstr "O cargo indicado não é um cargo definível válido."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:15\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Romanian\n"
|
"Language-Team: Romanian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n"
|
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: ro\n"
|
"X-Crowdin-Language: ro\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: ro_RO\n"
|
"Language: ro_RO\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:15\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Russian\n"
|
"Language-Team: Russian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n"
|
"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: ru\n"
|
"X-Crowdin-Language: ru\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: ru_RU\n"
|
"Language: ru_RU\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -21,27 +21,27 @@ msgstr "Я попыталась сделать что-то, в чем Discord о
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:22
|
#: redbot/cogs/admin/admin.py:22
|
||||||
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Я не могу дать {role.name} для {member.display_name}, потому что эта роль выше или равна моей самой высокой роли в иерархии Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:28
|
#: redbot/cogs/admin/admin.py:28
|
||||||
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Я не могу убрать {role.name} у {member.display_name}, потому что эта роль выше или равна моей самой высокой роли в иерархии Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:34
|
#: redbot/cogs/admin/admin.py:34
|
||||||
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Я не могу редактировать {role.name}, потому что эта роль выше моей или равна самой высокой роли в иерархии Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:40
|
#: redbot/cogs/admin/admin.py:40
|
||||||
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Я не могу вам дать {role.name}, {member.display_name}, поскольку эта роль выше или равна вашей самой высокой роли в иерархии Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:46
|
#: redbot/cogs/admin/admin.py:46
|
||||||
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Я не могу позволить вам удалить {role.name} у {member.display_name}, потому что эта роль выше или равна вашей самой высокой роли в иерархии Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:52
|
#: redbot/cogs/admin/admin.py:52
|
||||||
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Я не могу позволить вам редактировать {role.name}, потому что эта роль больше или равна вашей самой высокой роли в иерархии Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:58
|
#: redbot/cogs/admin/admin.py:58
|
||||||
msgid "I need manage roles permission to do that."
|
msgid "I need manage roles permission to do that."
|
||||||
@@ -58,7 +58,7 @@ msgstr "Набор утилит администрирования сервер
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:126
|
#: redbot/cogs/admin/admin.py:126
|
||||||
msgid "{member.display_name} already has the role {role.name}."
|
msgid "{member.display_name} already has the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} уже имеет роль {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:146
|
#: redbot/cogs/admin/admin.py:146
|
||||||
msgid "I successfully added {role.name} to {member.display_name}"
|
msgid "I successfully added {role.name} to {member.display_name}"
|
||||||
@@ -66,7 +66,7 @@ msgstr "Я успешно добавила роль {role.name} пользова
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:156
|
#: redbot/cogs/admin/admin.py:156
|
||||||
msgid "{member.display_name} does not have the role {role.name}."
|
msgid "{member.display_name} does not have the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} не имеет роли {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:176
|
#: redbot/cogs/admin/admin.py:176
|
||||||
msgid "I successfully removed {role.name} from {member.display_name}"
|
msgid "I successfully removed {role.name} from {member.display_name}"
|
||||||
@@ -75,12 +75,12 @@ msgstr "Я успешно забрала роль {role.name} у пользов
|
|||||||
#: redbot/cogs/admin/admin.py:187
|
#: redbot/cogs/admin/admin.py:187
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Добавить роль пользователю.\\n\\n Используйте двойные кавычки, если роль содержит пробелы.\\n Если пользователь не указан, по умолчанию используется автор команды.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:203
|
#: redbot/cogs/admin/admin.py:203
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Удалить роль у пользователя.\\n\\n Используйте двойные кавычки, если роль содержит пробелы.\\n Если пользователь не указан, по умолчанию используется автор команды.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:217
|
#: redbot/cogs/admin/admin.py:217
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -90,7 +90,7 @@ msgstr "Изменение параметров роли."
|
|||||||
#: redbot/cogs/admin/admin.py:224
|
#: redbot/cogs/admin/admin.py:224
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Изменить цвет роли.\\n\\n Используйте двойные кавычки, если роль содержит пробелы.\\n Цвет должен быть в шестнадцатеричном формате.\\n [Онлайн-палитра цветов](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Примеры:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
||||||
msgid "Done."
|
msgid "Done."
|
||||||
@@ -99,7 +99,7 @@ msgstr "Готово."
|
|||||||
#: redbot/cogs/admin/admin.py:257
|
#: redbot/cogs/admin/admin.py:257
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
msgstr ""
|
msgstr "\\n Изменить название роли.\\n\\n Используйте двойные кавычки, если роль или имя содержат пробелы.\\n\\n Примеры:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:291
|
#: redbot/cogs/admin/admin.py:291
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -117,7 +117,7 @@ msgstr "Отменить текущее объявление."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:307
|
#: redbot/cogs/admin/admin.py:307
|
||||||
msgid "There is no currently running announcement."
|
msgid "There is no currently running announcement."
|
||||||
msgstr ""
|
msgstr "В данный момент нет запущенных объявлений."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:310
|
#: redbot/cogs/admin/admin.py:310
|
||||||
msgid "The current announcement has been cancelled."
|
msgid "The current announcement has been cancelled."
|
||||||
@@ -126,12 +126,12 @@ msgstr "Текущее объявление было отменено."
|
|||||||
#: redbot/cogs/admin/admin.py:316
|
#: redbot/cogs/admin/admin.py:316
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Change how announcements are sent in this guild."
|
msgid "Change how announcements are sent in this guild."
|
||||||
msgstr ""
|
msgstr "Изменить способ отправки объявлений на этом сервере."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:321
|
#: redbot/cogs/admin/admin.py:321
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Изменить канал, в котором бот будет отправлять объявления.\\n \\n Если канал не указан, по умолчанию используется текущий канал.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:330
|
#: redbot/cogs/admin/admin.py:330
|
||||||
msgid "The announcement channel has been set to {channel.mention}"
|
msgid "The announcement channel has been set to {channel.mention}"
|
||||||
@@ -153,17 +153,17 @@ msgstr "Сервер {guild.name} не будет получать объявл
|
|||||||
#: redbot/cogs/admin/admin.py:370
|
#: redbot/cogs/admin/admin.py:370
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Apply selfroles."
|
msgid "Apply selfroles."
|
||||||
msgstr ""
|
msgstr "Применить свои роли."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:375
|
#: redbot/cogs/admin/admin.py:375
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Добавить собственную роль себе.\\n\\n Администраторы сервера должны настроить роль как устанавливаемую пользователем.\\n ПРИМЕЧАНИЕ: Роль чувствительна к регистру!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:386
|
#: redbot/cogs/admin/admin.py:386
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Удалить собственную роль у себя.\\n\\n Администраторы сервера должны настроить роль как устанавливаемую пользователем.\\n ПРИМЕЧАНИЕ: Роль чувствительна к регистру!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:397
|
#: redbot/cogs/admin/admin.py:397
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -177,37 +177,37 @@ msgstr "Доступные Собственные роли:\\n{selfroles}"
|
|||||||
#: redbot/cogs/admin/admin.py:413
|
#: redbot/cogs/admin/admin.py:413
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage selfroles."
|
msgid "Manage selfroles."
|
||||||
msgstr ""
|
msgstr "Управление своими ролями."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:418
|
#: redbot/cogs/admin/admin.py:418
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Добавить роль в список доступных своих ролей.\\n\\n ПРИМЕЧАНИЕ: Роль чувствительна к регистру!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:425
|
#: redbot/cogs/admin/admin.py:425
|
||||||
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Я не могу позволить вам добавить {role.name} в качестве собственной роли, потому что эта роль выше или равна вашей самой высокой роли в иерархии Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:433
|
#: redbot/cogs/admin/admin.py:433
|
||||||
msgid "Added."
|
msgid "Added."
|
||||||
msgstr ""
|
msgstr "Добавлено."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:436
|
#: redbot/cogs/admin/admin.py:436
|
||||||
msgid "That role is already a selfrole."
|
msgid "That role is already a selfrole."
|
||||||
msgstr ""
|
msgstr "Эта роль уже является собственной ролью."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:440
|
#: redbot/cogs/admin/admin.py:440
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Удалить роль из списка доступных собственных ролей.\\n\\n ПРИМЕЧАНИЕ: Роль чувствительна к регистру!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:447
|
#: redbot/cogs/admin/admin.py:447
|
||||||
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Я не могу позволить вам сделать {role.name} не собственной ролью, потому что эта роль выше или равна вашей самой высокой роли в иерархии Discord."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:455
|
#: redbot/cogs/admin/admin.py:455
|
||||||
msgid "Removed."
|
msgid "Removed."
|
||||||
msgstr ""
|
msgstr "Удалено."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:460
|
#: redbot/cogs/admin/admin.py:460
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -224,17 +224,17 @@ msgstr "Бот теперь зафиксирован на сервере."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:75
|
#: redbot/cogs/admin/announcer.py:75
|
||||||
msgid "I could not announce to the following server: "
|
msgid "I could not announce to the following server: "
|
||||||
msgstr ""
|
msgstr "Я не могу сделать объявление на следующем сервере: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:77
|
#: redbot/cogs/admin/announcer.py:77
|
||||||
msgid "I could not announce to the following servers: "
|
msgid "I could not announce to the following servers: "
|
||||||
msgstr ""
|
msgstr "Я не могу сделать объявление на следующих серверах: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:12
|
#: redbot/cogs/admin/converters.py:12
|
||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "Модуль Admin не загружен."
|
msgstr "Модуль Admin не загружен."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "Предоставленная роль не является допустимой ролью."
|
msgstr "Предоставленная роль не является допустимой ролью."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:16\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Slovak\n"
|
"Language-Team: Slovak\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,17 +10,18 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
|
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: sk\n"
|
"X-Crowdin-Language: sk\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: sk_SK\n"
|
"Language: sk_SK\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
|
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
|
||||||
msgstr ""
|
msgstr "Pokúsil som sa urobiť niečo, pre čo mi Discord odoprel povolenie. Váš príkaz sa nepodarilo úspešne dokončiť."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:22
|
#: redbot/cogs/admin/admin.py:22
|
||||||
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "Nemôžem dať {role.name} na {member.display_name} pretože táto rola je vyššia alebo rovná mojej najvyššej rolí v Discord hierarchií."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:28
|
#: redbot/cogs/admin/admin.py:28
|
||||||
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
@@ -49,20 +49,22 @@ msgstr ""
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:60
|
#: redbot/cogs/admin/admin.py:60
|
||||||
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
||||||
msgstr ""
|
msgstr "Už niečo oznamujem. Ak by ste chceli urobiť iné oznámenie, prosím, najskôr použite `{prefix} oznámiť zrušenie`."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:70
|
#: redbot/cogs/admin/admin.py:70
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "A collection of server administration utilities."
|
msgid "A collection of server administration utilities."
|
||||||
msgstr ""
|
msgstr "\n"
|
||||||
|
"Zbierka obslužných programov pre správu servera."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:126
|
#: redbot/cogs/admin/admin.py:126
|
||||||
msgid "{member.display_name} already has the role {role.name}."
|
msgid "{member.display_name} already has the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} už má rolu {role.name}."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:146
|
#: redbot/cogs/admin/admin.py:146
|
||||||
msgid "I successfully added {role.name} to {member.display_name}"
|
msgid "I successfully added {role.name} to {member.display_name}"
|
||||||
msgstr ""
|
msgstr "\n"
|
||||||
|
"Úspešne som pridal {role.name} do {member.display_name}"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:156
|
#: redbot/cogs/admin/admin.py:156
|
||||||
msgid "{member.display_name} does not have the role {role.name}."
|
msgid "{member.display_name} does not have the role {role.name}."
|
||||||
@@ -234,7 +236,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:15\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Serbian (Cyrillic)\n"
|
"Language-Team: Serbian (Cyrillic)\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: sr\n"
|
"X-Crowdin-Language: sr\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: sr_SP\n"
|
"Language: sr_SP\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:16\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Swedish\n"
|
"Language-Team: Swedish\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: sv-SE\n"
|
"X-Crowdin-Language: sv-SE\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: sv_SE\n"
|
"Language: sv_SE\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "Admin cog är inte laddad."
|
msgstr "Admin cog är inte laddad."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "Den angivna rollen är inte en giltig självroll."
|
msgstr "Den angivna rollen är inte en giltig självroll."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:16\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Turkish\n"
|
"Language-Team: Turkish\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: tr\n"
|
"X-Crowdin-Language: tr\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: tr_TR\n"
|
"Language: tr_TR\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -21,31 +21,31 @@ msgstr "Bir şey denemeye çalıştım ancak Discord izinlerim yeterli olmadı.
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:22
|
#: redbot/cogs/admin/admin.py:22
|
||||||
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not give {role.name} to {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "{member.display_name} kullanıcısına {role.name} veremiyorum çünkü bu rol kendi rolümden daha yüksek bir pozisyonda."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:28
|
#: redbot/cogs/admin/admin.py:28
|
||||||
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
msgid "I can not remove {role.name} from {member.display_name} because that role is higher than or equal to my highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "{member.display_name} kullanıcısından {role.name} rolünü kaldıramıyorum çünkü bu rolümden daha yüksek pozisyonda."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:34
|
#: redbot/cogs/admin/admin.py:34
|
||||||
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
msgid "I can not edit {role.name} because that role is higher than my or equal to highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "{role.name} kullanıcısının rolünü düzenleyemiyorum, çünkü bu rolümden daha yüksek pozisyonda."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:40
|
#: redbot/cogs/admin/admin.py:40
|
||||||
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you give {role.name} to {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "{member.display_name} kullanıcısına {role.name} rolünü vermene müsaade edemem çünkü bu rol senin mevcut rolünden daha yüksek durumda."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:46
|
#: redbot/cogs/admin/admin.py:46
|
||||||
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you remove {role.name} from {member.display_name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "{member.display_name} kullanıcısının {role.name} rolünü silmene müsaade edemem çünkü bu rol mevcut rolünden daha yüksek durumda."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:52
|
#: redbot/cogs/admin/admin.py:52
|
||||||
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I can not let you edit {role.name} because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "{role.name} rolünü düzenlemene müsaade edemem çünkü bu rol mevcut rolünden daha yüksek durumda."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:58
|
#: redbot/cogs/admin/admin.py:58
|
||||||
msgid "I need manage roles permission to do that."
|
msgid "I need manage roles permission to do that."
|
||||||
msgstr ""
|
msgstr "Bunu yapabilmem için \"rolleri yönet\" iznine ihtiyacım var."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:60
|
#: redbot/cogs/admin/admin.py:60
|
||||||
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
|
||||||
@@ -54,52 +54,52 @@ msgstr "Zaten şuan da bir duyuru yapmaktayım. Başka bir duyuru yapmak istiyor
|
|||||||
#: redbot/cogs/admin/admin.py:70
|
#: redbot/cogs/admin/admin.py:70
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "A collection of server administration utilities."
|
msgid "A collection of server administration utilities."
|
||||||
msgstr "Sunucu yönetimiyle ilgili ayarlar"
|
msgstr "Sunucu yönetimiyle ilgili ayarlar."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:126
|
#: redbot/cogs/admin/admin.py:126
|
||||||
msgid "{member.display_name} already has the role {role.name}."
|
msgid "{member.display_name} already has the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} kullanıcısı {role.name} rolüne zaten sahip."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:146
|
#: redbot/cogs/admin/admin.py:146
|
||||||
msgid "I successfully added {role.name} to {member.display_name}"
|
msgid "I successfully added {role.name} to {member.display_name}"
|
||||||
msgstr "{role.name} rolünü {member.display_name} kişisine başarılı bir şekilde ekledim"
|
msgstr "{role.name} rolünü {member.display_name} kullanıcısına başarılı bir şekilde ekledim."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:156
|
#: redbot/cogs/admin/admin.py:156
|
||||||
msgid "{member.display_name} does not have the role {role.name}."
|
msgid "{member.display_name} does not have the role {role.name}."
|
||||||
msgstr ""
|
msgstr "{member.display_name} kullanıcısı {role.name} rolüne sahip değil."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:176
|
#: redbot/cogs/admin/admin.py:176
|
||||||
msgid "I successfully removed {role.name} from {member.display_name}"
|
msgid "I successfully removed {role.name} from {member.display_name}"
|
||||||
msgstr "{role.name} rolünü {member.display_name} kişisine başarılı bir şekilde kaldırdım."
|
msgstr "{role.name} rolünü {member.display_name} kullanıcısından başarılı bir şekilde kaldırdım"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:187
|
#: redbot/cogs/admin/admin.py:187
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Add a role to a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Kullanıcıya rol ekle.\\n\\n Rol boşluk içeriyorsa çift tırnak işareti kullanın.\\n Kullanıcı boş bırakılırsa, varsayılan olarak komutun yazarıdır.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:203
|
#: redbot/cogs/admin/admin.py:203
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
msgid "\\n Remove a role from a user.\\n\\n Use double quotes if the role contains spaces.\\n If user is left blank it defaults to the author of the command.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Kullanıcıdan rol sil.\\n\\n Rol boşluk içeriyorsa çift tırnak işareti kullanın.\\n Kullanıcı boş bırakılırsa, varsayılan olarak komutun yazarıdır.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:217
|
#: redbot/cogs/admin/admin.py:217
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Edit role settings."
|
msgid "Edit role settings."
|
||||||
msgstr "Rol ayarlarını düzenle"
|
msgstr "Rol ayarlarını düzenle."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:224
|
#: redbot/cogs/admin/admin.py:224
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
msgid "\\n Edit a role's colour.\\n\\n Use double quotes if the role contains spaces.\\n Colour must be in hexadecimal format.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Examples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
msgstr ""
|
msgstr "Rol rengini düzenler.\\n\\n Rol boşluk içeriyorsa çift tırnak kulanın.\\n Renk hexadecimal formatında olmalıdır.\\n [Online colour picker](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Örneğin:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
#: redbot/cogs/admin/admin.py:253 redbot/cogs/admin/admin.py:286
|
||||||
msgid "Done."
|
msgid "Done."
|
||||||
msgstr "Tamamdır."
|
msgstr "Tamamlandı."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:257
|
#: redbot/cogs/admin/admin.py:257
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
msgid "\\n Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Example:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
msgstr ""
|
msgstr "Rolün ismini düzenler.\\n\\n Rol boşluk içeriyorsa çift tırnak kulanın.\\n\\n Örneğin:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:291
|
#: redbot/cogs/admin/admin.py:291
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -117,7 +117,7 @@ msgstr "Şuan yapılan duyuruyu iptal eder."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:307
|
#: redbot/cogs/admin/admin.py:307
|
||||||
msgid "There is no currently running announcement."
|
msgid "There is no currently running announcement."
|
||||||
msgstr ""
|
msgstr "Şu anda yapılan bir duyuru mevcut değil."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:310
|
#: redbot/cogs/admin/admin.py:310
|
||||||
msgid "The current announcement has been cancelled."
|
msgid "The current announcement has been cancelled."
|
||||||
@@ -126,12 +126,12 @@ msgstr "Şuan yapılan duyuru iptal edildi."
|
|||||||
#: redbot/cogs/admin/admin.py:316
|
#: redbot/cogs/admin/admin.py:316
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Change how announcements are sent in this guild."
|
msgid "Change how announcements are sent in this guild."
|
||||||
msgstr ""
|
msgstr "Anonsların sunucuya nasıl gönderileceğini belirleyin."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:321
|
#: redbot/cogs/admin/admin.py:321
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
msgid "\\n Change the channel where the bot will send announcements.\\n \\n If channel is left blank it defaults to the current channel.\\n "
|
||||||
msgstr ""
|
msgstr "\\n Botun anonsları hangi kanalda yapacağını belirleyin.\\n \\n Boş bırakırsanız bot anonsları mevcut kanala yapacaktır.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:330
|
#: redbot/cogs/admin/admin.py:330
|
||||||
msgid "The announcement channel has been set to {channel.mention}"
|
msgid "The announcement channel has been set to {channel.mention}"
|
||||||
@@ -144,70 +144,70 @@ msgstr "Duyuru sistemi bu sunucu için aktif edildi."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:340
|
#: redbot/cogs/admin/admin.py:340
|
||||||
msgid "The server {guild.name} will receive announcements."
|
msgid "The server {guild.name} will receive announcements."
|
||||||
msgstr "{guild.name} sunucusu duyuruları alacak."
|
msgstr "{guild.name} sunucusu artık duyuruları alacak."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:344
|
#: redbot/cogs/admin/admin.py:344
|
||||||
msgid "The server {guild.name} will not receive announcements."
|
msgid "The server {guild.name} will not receive announcements."
|
||||||
msgstr "{guild.name} sunucusu duyuruları almayacak."
|
msgstr "{guild.name} sunucusu artık duyuruları almayacak."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:370
|
#: redbot/cogs/admin/admin.py:370
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Apply selfroles."
|
msgid "Apply selfroles."
|
||||||
msgstr ""
|
msgstr "Kişisel rol ekle."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:375
|
#: redbot/cogs/admin/admin.py:375
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a selfrole to yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "Kişisel rol ekler.\\n\\n Sunucu yöneticileri kullanıcının kullanabileceği şekilde ayarlamalıdır.\\n\\n NOT: Rol büyük küçük harf duyarlıdır!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:386
|
#: redbot/cogs/admin/admin.py:386
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a selfrole from yourself.\\n\\n Server admins must have configured the role as user settable.\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "Kişisel rol siler.\\n\\n Sunucu yöneticileri kullanıcının kullanabileceği şekilde ayarlamalıdır.\\n\\n NOT: Rol büyük küçük harf duyarlıdır!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:397
|
#: redbot/cogs/admin/admin.py:397
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Lists all available selfroles.\\n "
|
msgid "\\n Lists all available selfroles.\\n "
|
||||||
msgstr "\\n Kullanılabilir selfrol'leri listeler.\\n "
|
msgstr "\\n Kullanılabilir kişisel rolleri listeler.\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:407
|
#: redbot/cogs/admin/admin.py:407
|
||||||
msgid "Available Selfroles:\\n{selfroles}"
|
msgid "Available Selfroles:\\n{selfroles}"
|
||||||
msgstr "Kullanılabilir Selfrol'ler:\\n{selfroles}"
|
msgstr "Kullanılabilir kişisel roller:\\n{selfroles}"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:413
|
#: redbot/cogs/admin/admin.py:413
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage selfroles."
|
msgid "Manage selfroles."
|
||||||
msgstr ""
|
msgstr "Kişisel rolleri düzenle."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:418
|
#: redbot/cogs/admin/admin.py:418
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Kullanılabilir kişisel roller listesine rol ekler.\\n\\n NOT: Rol büyük küçük harf duyarlıdır!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:425
|
#: redbot/cogs/admin/admin.py:425
|
||||||
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you add {role.name} as a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "{role.name} kullanıcısına belirttiğin rolü vermene müsaade edemem çünkü bu rol mevcut rolünden daha yüksek."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:433
|
#: redbot/cogs/admin/admin.py:433
|
||||||
msgid "Added."
|
msgid "Added."
|
||||||
msgstr ""
|
msgstr "Eklendi."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:436
|
#: redbot/cogs/admin/admin.py:436
|
||||||
msgid "That role is already a selfrole."
|
msgid "That role is already a selfrole."
|
||||||
msgstr ""
|
msgstr "Bu rol zaten bir kişisel rol."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:440
|
#: redbot/cogs/admin/admin.py:440
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
msgid "\\n Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
|
||||||
msgstr ""
|
msgstr "\\n Kullanılabilir kişisel roller listesinden rol siler.\\n\\n NOT: Rol büyük küçük harf duyarlıdır!\\n "
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:447
|
#: redbot/cogs/admin/admin.py:447
|
||||||
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
msgid "I cannot let you remove {role.name} from being a selfrole because that role is higher than or equal to your highest role in the Discord hierarchy."
|
||||||
msgstr ""
|
msgstr "{role.name} kullanıcısından belirttiğin rolü silmene müsaade edemem çünkü bu rol mevcut rolünden daha yüksek."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:455
|
#: redbot/cogs/admin/admin.py:455
|
||||||
msgid "Removed."
|
msgid "Removed."
|
||||||
msgstr ""
|
msgstr "Kaldırıldı."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:460
|
#: redbot/cogs/admin/admin.py:460
|
||||||
#, docstring
|
#, docstring
|
||||||
@@ -216,25 +216,25 @@ msgstr "Botu şuan bulunduğu sunucularda kilitler."
|
|||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:465
|
#: redbot/cogs/admin/admin.py:465
|
||||||
msgid "The bot is no longer serverlocked."
|
msgid "The bot is no longer serverlocked."
|
||||||
msgstr "Bot artık sunucular da kilitli değil"
|
msgstr "Botun sunucu kilidi aktif değil."
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:467
|
#: redbot/cogs/admin/admin.py:467
|
||||||
msgid "The bot is now serverlocked."
|
msgid "The bot is now serverlocked."
|
||||||
msgstr "Bot şuan sunucularda kilitli."
|
msgstr "Botun sunucu kilidi aktif."
|
||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:75
|
#: redbot/cogs/admin/announcer.py:75
|
||||||
msgid "I could not announce to the following server: "
|
msgid "I could not announce to the following server: "
|
||||||
msgstr ""
|
msgstr "Bu sunucuya duyuru yapamıyorum: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/announcer.py:77
|
#: redbot/cogs/admin/announcer.py:77
|
||||||
msgid "I could not announce to the following servers: "
|
msgid "I could not announce to the following servers: "
|
||||||
msgstr ""
|
msgstr "Bu sunuculara duyuru yapamıyorum: "
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:12
|
#: redbot/cogs/admin/converters.py:12
|
||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr "The Admin eklentisi yüklenmedi."
|
msgstr "The Admin eklentisi yüklenmedi."
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr "Girilen selfrol geçerli değil."
|
msgstr "Girilen kişisel rol geçerli bir kişisel rol değil."
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:16\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Ukrainian\n"
|
"Language-Team: Ukrainian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n"
|
"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: uk\n"
|
"X-Crowdin-Language: uk\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: uk_UA\n"
|
"Language: uk_UA\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:16\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Vietnamese\n"
|
"Language-Team: Vietnamese\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: vi\n"
|
"X-Crowdin-Language: vi\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: vi_VN\n"
|
"Language: vi_VN\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:11\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Chinese Simplified\n"
|
"Language-Team: Chinese Simplified\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: zh-CN\n"
|
"X-Crowdin-Language: zh-CN\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: zh_CN\n"
|
"Language: zh_CN\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:12\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Chinese Traditional, Hong Kong\n"
|
"Language-Team: Chinese Traditional, Hong Kong\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: zh-HK\n"
|
"X-Crowdin-Language: zh-HK\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: zh_HK\n"
|
"Language: zh_HK\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-08 18:08+0000\n"
|
"POT-Creation-Date: 2020-04-23 12:07+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-13 12:12\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Chinese Traditional\n"
|
"Language-Team: Chinese Traditional\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,8 +10,9 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: zh-TW\n"
|
"X-Crowdin-Language: zh-TW\n"
|
||||||
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 42\n"
|
||||||
"Language: zh_TW\n"
|
"Language: zh_TW\n"
|
||||||
|
|
||||||
#: redbot/cogs/admin/admin.py:17
|
#: redbot/cogs/admin/admin.py:17
|
||||||
@@ -234,7 +234,7 @@ msgstr ""
|
|||||||
msgid "The Admin cog is not loaded."
|
msgid "The Admin cog is not loaded."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/admin/converters.py:21
|
#: redbot/cogs/admin/converters.py:20
|
||||||
msgid "The provided role is not a valid selfrole."
|
msgid "The provided role is not a valid selfrole."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -2,5 +2,7 @@ from .alias import Alias
|
|||||||
from redbot.core.bot import Red
|
from redbot.core.bot import Red
|
||||||
|
|
||||||
|
|
||||||
def setup(bot: Red):
|
async def setup(bot: Red):
|
||||||
bot.add_cog(Alias(bot))
|
cog = Alias(bot)
|
||||||
|
await cog.initialize()
|
||||||
|
bot.add_cog(cog)
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
from copy import copy
|
from copy import copy
|
||||||
from re import findall, search
|
from re import search
|
||||||
from string import Formatter
|
from string import Formatter
|
||||||
from typing import Generator, Tuple, Iterable, Optional
|
from typing import Dict, List
|
||||||
|
|
||||||
import discord
|
import discord
|
||||||
from discord.ext.commands.view import StringView
|
|
||||||
from redbot.core import Config, commands, checks
|
from redbot.core import Config, commands, checks
|
||||||
from redbot.core.i18n import Translator, cog_i18n
|
from redbot.core.i18n import Translator, cog_i18n
|
||||||
from redbot.core.utils.chat_formatting import box
|
from redbot.core.utils.chat_formatting import box, pagify
|
||||||
|
from redbot.core.utils.menus import menu, DEFAULT_CONTROLS
|
||||||
|
|
||||||
from redbot.core.bot import Red
|
from redbot.core.bot import Red
|
||||||
from .alias_entry import AliasEntry
|
from .alias_entry import AliasEntry, AliasCache, ArgParseError
|
||||||
|
|
||||||
_ = Translator("Alias", __file__)
|
_ = Translator("Alias", __file__)
|
||||||
|
|
||||||
@@ -26,10 +26,6 @@ class _TrackingFormatter(Formatter):
|
|||||||
return super().get_value(key, args, kwargs)
|
return super().get_value(key, args, kwargs)
|
||||||
|
|
||||||
|
|
||||||
class ArgParseError(Exception):
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
@cog_i18n(_)
|
@cog_i18n(_)
|
||||||
class Alias(commands.Cog):
|
class Alias(commands.Cog):
|
||||||
"""Create aliases for commands.
|
"""Create aliases for commands.
|
||||||
@@ -42,51 +38,23 @@ class Alias(commands.Cog):
|
|||||||
and append them to the stored alias.
|
and append them to the stored alias.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
default_global_settings = {"entries": []}
|
default_global_settings: Dict[str, list] = {"entries": []}
|
||||||
|
|
||||||
default_guild_settings = {"enabled": False, "entries": []} # Going to be a list of dicts
|
default_guild_settings: Dict[str, list] = {"entries": []} # Going to be a list of dicts
|
||||||
|
|
||||||
def __init__(self, bot: Red):
|
def __init__(self, bot: Red):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
self.bot = bot
|
self.bot = bot
|
||||||
self._aliases = Config.get_conf(self, 8927348724)
|
self.config = Config.get_conf(self, 8927348724)
|
||||||
|
|
||||||
self._aliases.register_global(**self.default_global_settings)
|
self.config.register_global(**self.default_global_settings)
|
||||||
self._aliases.register_guild(**self.default_guild_settings)
|
self.config.register_guild(**self.default_guild_settings)
|
||||||
|
self._aliases: AliasCache = AliasCache(config=self.config, cache_enabled=True)
|
||||||
|
|
||||||
async def unloaded_aliases(self, guild: discord.Guild) -> Generator[AliasEntry, None, None]:
|
async def initialize(self):
|
||||||
return (AliasEntry.from_json(d) for d in (await self._aliases.guild(guild).entries()))
|
# This can be where we set the cache_enabled attribute later
|
||||||
|
if not self._aliases._loaded:
|
||||||
async def unloaded_global_aliases(self) -> Generator[AliasEntry, None, None]:
|
await self._aliases.load_aliases()
|
||||||
return (AliasEntry.from_json(d) for d in (await self._aliases.entries()))
|
|
||||||
|
|
||||||
async def loaded_aliases(self, guild: discord.Guild) -> Generator[AliasEntry, None, None]:
|
|
||||||
return (
|
|
||||||
AliasEntry.from_json(d, bot=self.bot)
|
|
||||||
for d in (await self._aliases.guild(guild).entries())
|
|
||||||
)
|
|
||||||
|
|
||||||
async def loaded_global_aliases(self) -> Generator[AliasEntry, None, None]:
|
|
||||||
return (AliasEntry.from_json(d, bot=self.bot) for d in (await self._aliases.entries()))
|
|
||||||
|
|
||||||
async def is_alias(
|
|
||||||
self,
|
|
||||||
guild: Optional[discord.Guild],
|
|
||||||
alias_name: str,
|
|
||||||
server_aliases: Iterable[AliasEntry] = (),
|
|
||||||
) -> Tuple[bool, Optional[AliasEntry]]:
|
|
||||||
|
|
||||||
if not server_aliases and guild is not None:
|
|
||||||
server_aliases = await self.unloaded_aliases(guild)
|
|
||||||
|
|
||||||
global_aliases = await self.unloaded_global_aliases()
|
|
||||||
|
|
||||||
for aliases in (server_aliases, global_aliases):
|
|
||||||
for alias in aliases:
|
|
||||||
if alias.name == alias_name:
|
|
||||||
return True, alias
|
|
||||||
|
|
||||||
return False, None
|
|
||||||
|
|
||||||
def is_command(self, alias_name: str) -> bool:
|
def is_command(self, alias_name: str) -> bool:
|
||||||
"""
|
"""
|
||||||
@@ -100,56 +68,6 @@ class Alias(commands.Cog):
|
|||||||
def is_valid_alias_name(alias_name: str) -> bool:
|
def is_valid_alias_name(alias_name: str) -> bool:
|
||||||
return not bool(search(r"\s", alias_name)) and alias_name.isprintable()
|
return not bool(search(r"\s", alias_name)) and alias_name.isprintable()
|
||||||
|
|
||||||
async def add_alias(
|
|
||||||
self, ctx: commands.Context, alias_name: str, command: str, global_: bool = False
|
|
||||||
) -> AliasEntry:
|
|
||||||
indices = findall(r"{(\d*)}", command)
|
|
||||||
if indices:
|
|
||||||
try:
|
|
||||||
indices = [int(a[0]) for a in indices]
|
|
||||||
except IndexError:
|
|
||||||
raise ArgParseError(_("Arguments must be specified with a number."))
|
|
||||||
low = min(indices)
|
|
||||||
indices = [a - low for a in indices]
|
|
||||||
high = max(indices)
|
|
||||||
gaps = set(indices).symmetric_difference(range(high + 1))
|
|
||||||
if gaps:
|
|
||||||
raise ArgParseError(
|
|
||||||
_("Arguments must be sequential. Missing arguments: ")
|
|
||||||
+ ", ".join(str(i + low) for i in gaps)
|
|
||||||
)
|
|
||||||
command = command.format(*(f"{{{i}}}" for i in range(-low, high + low + 1)))
|
|
||||||
|
|
||||||
alias = AliasEntry(alias_name, command, ctx.author, global_=global_)
|
|
||||||
|
|
||||||
if global_:
|
|
||||||
settings = self._aliases
|
|
||||||
else:
|
|
||||||
settings = self._aliases.guild(ctx.guild)
|
|
||||||
await settings.enabled.set(True)
|
|
||||||
|
|
||||||
async with settings.entries() as curr_aliases:
|
|
||||||
curr_aliases.append(alias.to_json())
|
|
||||||
|
|
||||||
return alias
|
|
||||||
|
|
||||||
async def delete_alias(
|
|
||||||
self, ctx: commands.Context, alias_name: str, global_: bool = False
|
|
||||||
) -> bool:
|
|
||||||
if global_:
|
|
||||||
settings = self._aliases
|
|
||||||
else:
|
|
||||||
settings = self._aliases.guild(ctx.guild)
|
|
||||||
|
|
||||||
async with settings.entries() as aliases:
|
|
||||||
for alias in aliases:
|
|
||||||
alias_obj = AliasEntry.from_json(alias)
|
|
||||||
if alias_obj.name == alias_name:
|
|
||||||
aliases.remove(alias)
|
|
||||||
return True
|
|
||||||
|
|
||||||
return False
|
|
||||||
|
|
||||||
async def get_prefix(self, message: discord.Message) -> str:
|
async def get_prefix(self, message: discord.Message) -> str:
|
||||||
"""
|
"""
|
||||||
Tries to determine what prefix is used in a message object.
|
Tries to determine what prefix is used in a message object.
|
||||||
@@ -167,57 +85,11 @@ class Alias(commands.Cog):
|
|||||||
return p
|
return p
|
||||||
raise ValueError(_("No prefix found."))
|
raise ValueError(_("No prefix found."))
|
||||||
|
|
||||||
def get_extra_args_from_alias(
|
|
||||||
self, message: discord.Message, prefix: str, alias: AliasEntry
|
|
||||||
) -> str:
|
|
||||||
"""
|
|
||||||
When an alias is executed by a user in chat this function tries
|
|
||||||
to get any extra arguments passed in with the call.
|
|
||||||
Whitespace will be trimmed from both ends.
|
|
||||||
:param message:
|
|
||||||
:param prefix:
|
|
||||||
:param alias:
|
|
||||||
:return:
|
|
||||||
"""
|
|
||||||
known_content_length = len(prefix) + len(alias.name)
|
|
||||||
extra = message.content[known_content_length:]
|
|
||||||
view = StringView(extra)
|
|
||||||
view.skip_ws()
|
|
||||||
extra = []
|
|
||||||
while not view.eof:
|
|
||||||
prev = view.index
|
|
||||||
word = view.get_quoted_word()
|
|
||||||
if len(word) < view.index - prev:
|
|
||||||
word = "".join((view.buffer[prev], word, view.buffer[view.index - 1]))
|
|
||||||
extra.append(word)
|
|
||||||
view.skip_ws()
|
|
||||||
return extra
|
|
||||||
|
|
||||||
async def maybe_call_alias(
|
|
||||||
self, message: discord.Message, aliases: Iterable[AliasEntry] = None
|
|
||||||
):
|
|
||||||
try:
|
|
||||||
prefix = await self.get_prefix(message)
|
|
||||||
except ValueError:
|
|
||||||
return
|
|
||||||
|
|
||||||
try:
|
|
||||||
potential_alias = message.content[len(prefix) :].split(" ")[0]
|
|
||||||
except IndexError:
|
|
||||||
return False
|
|
||||||
|
|
||||||
is_alias, alias = await self.is_alias(
|
|
||||||
message.guild, potential_alias, server_aliases=aliases
|
|
||||||
)
|
|
||||||
|
|
||||||
if is_alias:
|
|
||||||
await self.call_alias(message, prefix, alias)
|
|
||||||
|
|
||||||
async def call_alias(self, message: discord.Message, prefix: str, alias: AliasEntry):
|
async def call_alias(self, message: discord.Message, prefix: str, alias: AliasEntry):
|
||||||
new_message = copy(message)
|
new_message = copy(message)
|
||||||
try:
|
try:
|
||||||
args = self.get_extra_args_from_alias(message, prefix, alias)
|
args = alias.get_extra_args_from_alias(message, prefix)
|
||||||
except commands.BadArgument as bae:
|
except commands.BadArgument:
|
||||||
return
|
return
|
||||||
|
|
||||||
trackform = _TrackingFormatter()
|
trackform = _TrackingFormatter()
|
||||||
@@ -229,8 +101,29 @@ class Alias(commands.Cog):
|
|||||||
)
|
)
|
||||||
await self.bot.process_commands(new_message)
|
await self.bot.process_commands(new_message)
|
||||||
|
|
||||||
|
async def paginate_alias_list(
|
||||||
|
self, ctx: commands.Context, alias_list: List[AliasEntry]
|
||||||
|
) -> None:
|
||||||
|
names = sorted(["+ " + a.name for a in alias_list])
|
||||||
|
message = "\n".join(names)
|
||||||
|
temp = list(pagify(message, delims=["\n"], page_length=1850))
|
||||||
|
alias_list = []
|
||||||
|
count = 0
|
||||||
|
for page in temp:
|
||||||
|
count += 1
|
||||||
|
page = page.lstrip("\n")
|
||||||
|
page = (
|
||||||
|
_("Aliases:\n")
|
||||||
|
+ page
|
||||||
|
+ _("\n\nPage {page}/{total}").format(page=count, total=len(temp))
|
||||||
|
)
|
||||||
|
alias_list.append(box("".join(page), "diff"))
|
||||||
|
if len(alias_list) == 1:
|
||||||
|
await ctx.send(alias_list[0])
|
||||||
|
return
|
||||||
|
await menu(ctx, alias_list, DEFAULT_CONTROLS)
|
||||||
|
|
||||||
@commands.group()
|
@commands.group()
|
||||||
@commands.guild_only()
|
|
||||||
async def alias(self, ctx: commands.Context):
|
async def alias(self, ctx: commands.Context):
|
||||||
"""Manage command aliases."""
|
"""Manage command aliases."""
|
||||||
pass
|
pass
|
||||||
@@ -257,13 +150,13 @@ class Alias(commands.Cog):
|
|||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
is_alias, something_useless = await self.is_alias(ctx.guild, alias_name)
|
alias = await self._aliases.get_alias(ctx.guild, alias_name)
|
||||||
if is_alias:
|
if alias:
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
_(
|
_(
|
||||||
"You attempted to create a new alias"
|
"You attempted to create a new alias"
|
||||||
" with the name {name} but that"
|
" with the name {name} but that"
|
||||||
" alias already exists on this server."
|
" alias already exists."
|
||||||
).format(name=alias_name)
|
).format(name=alias_name)
|
||||||
)
|
)
|
||||||
return
|
return
|
||||||
@@ -279,13 +172,20 @@ class Alias(commands.Cog):
|
|||||||
).format(name=alias_name)
|
).format(name=alias_name)
|
||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
given_command_exists = self.bot.get_command(command.split(maxsplit=1)[0]) is not None
|
||||||
|
if not given_command_exists:
|
||||||
|
await ctx.send(
|
||||||
|
_("You attempted to create a new alias for a command that doesn't exist.")
|
||||||
|
)
|
||||||
|
return
|
||||||
# endregion
|
# endregion
|
||||||
|
|
||||||
# At this point we know we need to make a new alias
|
# At this point we know we need to make a new alias
|
||||||
# and that the alias name is valid.
|
# and that the alias name is valid.
|
||||||
|
|
||||||
try:
|
try:
|
||||||
await self.add_alias(ctx, alias_name, command)
|
await self._aliases.add_alias(ctx, alias_name, command)
|
||||||
except ArgParseError as e:
|
except ArgParseError as e:
|
||||||
return await ctx.send(" ".join(e.args))
|
return await ctx.send(" ".join(e.args))
|
||||||
|
|
||||||
@@ -309,13 +209,13 @@ class Alias(commands.Cog):
|
|||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
is_alias, something_useless = await self.is_alias(ctx.guild, alias_name)
|
alias = await self._aliases.get_alias(None, alias_name)
|
||||||
if is_alias:
|
if alias:
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
_(
|
_(
|
||||||
"You attempted to create a new global alias"
|
"You attempted to create a new global alias"
|
||||||
" with the name {name} but that"
|
" with the name {name} but that"
|
||||||
" alias already exists on this server."
|
" alias already exists."
|
||||||
).format(name=alias_name)
|
).format(name=alias_name)
|
||||||
)
|
)
|
||||||
return
|
return
|
||||||
@@ -331,10 +231,17 @@ class Alias(commands.Cog):
|
|||||||
).format(name=alias_name)
|
).format(name=alias_name)
|
||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
given_command_exists = self.bot.get_command(command.split(maxsplit=1)[0]) is not None
|
||||||
|
if not given_command_exists:
|
||||||
|
await ctx.send(
|
||||||
|
_("You attempted to create a new alias for a command that doesn't exist.")
|
||||||
|
)
|
||||||
|
return
|
||||||
# endregion
|
# endregion
|
||||||
|
|
||||||
try:
|
try:
|
||||||
await self.add_alias(ctx, alias_name, command, global_=True)
|
await self._aliases.add_alias(ctx, alias_name, command, global_=True)
|
||||||
except ArgParseError as e:
|
except ArgParseError as e:
|
||||||
return await ctx.send(" ".join(e.args))
|
return await ctx.send(" ".join(e.args))
|
||||||
|
|
||||||
@@ -345,29 +252,20 @@ class Alias(commands.Cog):
|
|||||||
)
|
)
|
||||||
|
|
||||||
@alias.command(name="help")
|
@alias.command(name="help")
|
||||||
@commands.guild_only()
|
|
||||||
async def _help_alias(self, ctx: commands.Context, alias_name: str):
|
async def _help_alias(self, ctx: commands.Context, alias_name: str):
|
||||||
"""Try to execute help for the base command of the alias."""
|
"""Try to execute help for the base command of the alias."""
|
||||||
is_alias, alias = await self.is_alias(ctx.guild, alias_name=alias_name)
|
alias = await self._aliases.get_alias(ctx.guild, alias_name=alias_name)
|
||||||
if is_alias:
|
if alias:
|
||||||
if self.is_command(alias.command):
|
await self.bot.send_help_for(ctx, alias.command)
|
||||||
base_cmd = alias.command
|
|
||||||
else:
|
|
||||||
base_cmd = alias.command.rsplit(" ", 1)[0]
|
|
||||||
|
|
||||||
new_msg = copy(ctx.message)
|
|
||||||
new_msg.content = f"{ctx.prefix}help {base_cmd}"
|
|
||||||
await self.bot.process_commands(new_msg)
|
|
||||||
else:
|
else:
|
||||||
await ctx.send(_("No such alias exists."))
|
await ctx.send(_("No such alias exists."))
|
||||||
|
|
||||||
@alias.command(name="show")
|
@alias.command(name="show")
|
||||||
@commands.guild_only()
|
|
||||||
async def _show_alias(self, ctx: commands.Context, alias_name: str):
|
async def _show_alias(self, ctx: commands.Context, alias_name: str):
|
||||||
"""Show what command the alias executes."""
|
"""Show what command the alias executes."""
|
||||||
is_alias, alias = await self.is_alias(ctx.guild, alias_name)
|
alias = await self._aliases.get_alias(ctx.guild, alias_name)
|
||||||
|
|
||||||
if is_alias:
|
if alias:
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
_("The `{alias_name}` alias will execute the command `{command}`").format(
|
_("The `{alias_name}` alias will execute the command `{command}`").format(
|
||||||
alias_name=alias_name, command=alias.command
|
alias_name=alias_name, command=alias.command
|
||||||
@@ -381,14 +279,11 @@ class Alias(commands.Cog):
|
|||||||
@commands.guild_only()
|
@commands.guild_only()
|
||||||
async def _del_alias(self, ctx: commands.Context, alias_name: str):
|
async def _del_alias(self, ctx: commands.Context, alias_name: str):
|
||||||
"""Delete an existing alias on this server."""
|
"""Delete an existing alias on this server."""
|
||||||
aliases = await self.unloaded_aliases(ctx.guild)
|
if not await self._aliases.get_guild_aliases(ctx.guild):
|
||||||
try:
|
|
||||||
next(aliases)
|
|
||||||
except StopIteration:
|
|
||||||
await ctx.send(_("There are no aliases on this server."))
|
await ctx.send(_("There are no aliases on this server."))
|
||||||
return
|
return
|
||||||
|
|
||||||
if await self.delete_alias(ctx, alias_name):
|
if await self._aliases.delete_alias(ctx, alias_name):
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
_("Alias with the name `{name}` was successfully deleted.").format(name=alias_name)
|
_("Alias with the name `{name}` was successfully deleted.").format(name=alias_name)
|
||||||
)
|
)
|
||||||
@@ -399,14 +294,11 @@ class Alias(commands.Cog):
|
|||||||
@global_.command(name="delete", aliases=["del", "remove"])
|
@global_.command(name="delete", aliases=["del", "remove"])
|
||||||
async def _del_global_alias(self, ctx: commands.Context, alias_name: str):
|
async def _del_global_alias(self, ctx: commands.Context, alias_name: str):
|
||||||
"""Delete an existing global alias."""
|
"""Delete an existing global alias."""
|
||||||
aliases = await self.unloaded_global_aliases()
|
if not await self._aliases.get_global_aliases():
|
||||||
try:
|
await ctx.send(_("There are no global aliases on this bot."))
|
||||||
next(aliases)
|
|
||||||
except StopIteration:
|
|
||||||
await ctx.send(_("There are no aliases on this bot."))
|
|
||||||
return
|
return
|
||||||
|
|
||||||
if await self.delete_alias(ctx, alias_name, global_=True):
|
if await self._aliases.delete_alias(ctx, alias_name, global_=True):
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
_("Alias with the name `{name}` was successfully deleted.").format(name=alias_name)
|
_("Alias with the name `{name}` was successfully deleted.").format(name=alias_name)
|
||||||
)
|
)
|
||||||
@@ -415,34 +307,36 @@ class Alias(commands.Cog):
|
|||||||
|
|
||||||
@alias.command(name="list")
|
@alias.command(name="list")
|
||||||
@commands.guild_only()
|
@commands.guild_only()
|
||||||
|
@checks.bot_has_permissions(add_reactions=True)
|
||||||
async def _list_alias(self, ctx: commands.Context):
|
async def _list_alias(self, ctx: commands.Context):
|
||||||
"""List the available aliases on this server."""
|
"""List the available aliases on this server."""
|
||||||
names = [_("Aliases:")] + sorted(
|
guild_aliases = await self._aliases.get_guild_aliases(ctx.guild)
|
||||||
["+ " + a.name for a in (await self.unloaded_aliases(ctx.guild))]
|
if not guild_aliases:
|
||||||
)
|
return await ctx.send(_("There are no aliases on this server."))
|
||||||
if len(names) == 0:
|
await self.paginate_alias_list(ctx, guild_aliases)
|
||||||
await ctx.send(_("There are no aliases on this server."))
|
|
||||||
else:
|
|
||||||
await ctx.send(box("\n".join(names), "diff"))
|
|
||||||
|
|
||||||
@global_.command(name="list")
|
@global_.command(name="list")
|
||||||
|
@checks.bot_has_permissions(add_reactions=True)
|
||||||
async def _list_global_alias(self, ctx: commands.Context):
|
async def _list_global_alias(self, ctx: commands.Context):
|
||||||
"""List the available global aliases on this bot."""
|
"""List the available global aliases on this bot."""
|
||||||
names = [_("Aliases:")] + sorted(
|
global_aliases = await self._aliases.get_global_aliases()
|
||||||
["+ " + a.name for a in await self.unloaded_global_aliases()]
|
if not global_aliases:
|
||||||
)
|
return await ctx.send(_("There are no global aliases."))
|
||||||
if len(names) == 0:
|
await self.paginate_alias_list(ctx, global_aliases)
|
||||||
await ctx.send(_("There are no aliases on this server."))
|
|
||||||
else:
|
|
||||||
await ctx.send(box("\n".join(names), "diff"))
|
|
||||||
|
|
||||||
@commands.Cog.listener()
|
@commands.Cog.listener()
|
||||||
async def on_message(self, message: discord.Message):
|
async def on_message_without_command(self, message: discord.Message):
|
||||||
aliases = list(await self.unloaded_global_aliases())
|
try:
|
||||||
if message.guild is not None:
|
prefix = await self.get_prefix(message)
|
||||||
aliases = aliases + list(await self.unloaded_aliases(message.guild))
|
except ValueError:
|
||||||
|
|
||||||
if len(aliases) == 0:
|
|
||||||
return
|
return
|
||||||
|
|
||||||
await self.maybe_call_alias(message, aliases=aliases)
|
try:
|
||||||
|
potential_alias = message.content[len(prefix) :].split(" ")[0]
|
||||||
|
except IndexError:
|
||||||
|
return
|
||||||
|
|
||||||
|
alias = await self._aliases.get_alias(message.guild, potential_alias)
|
||||||
|
|
||||||
|
if alias:
|
||||||
|
await self.call_alias(message, prefix, alias)
|
||||||
|
|||||||
@@ -1,25 +1,37 @@
|
|||||||
from typing import Tuple
|
from typing import Tuple, Dict, Optional, List, Union
|
||||||
|
from re import findall
|
||||||
|
|
||||||
import discord
|
import discord
|
||||||
from redbot.core import commands
|
from discord.ext.commands.view import StringView
|
||||||
|
from redbot.core import commands, Config
|
||||||
|
from redbot.core.i18n import Translator
|
||||||
|
from redbot.core.utils import AsyncIter
|
||||||
|
|
||||||
|
_ = Translator("Alias", __file__)
|
||||||
|
|
||||||
|
|
||||||
|
class ArgParseError(Exception):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
class AliasEntry:
|
class AliasEntry:
|
||||||
|
"""An object containing all required information about an alias"""
|
||||||
|
|
||||||
|
name: str
|
||||||
|
command: Union[Tuple[str], str]
|
||||||
|
creator: int
|
||||||
|
guild: Optional[int]
|
||||||
|
uses: int
|
||||||
|
|
||||||
def __init__(
|
def __init__(
|
||||||
self, name: str, command: Tuple[str], creator: discord.Member, global_: bool = False
|
self, name: str, command: Union[Tuple[str], str], creator: int, guild: Optional[int],
|
||||||
):
|
):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
self.has_real_data = False
|
|
||||||
self.name = name
|
self.name = name
|
||||||
self.command = command
|
self.command = command
|
||||||
self.creator = creator
|
self.creator = creator
|
||||||
|
|
||||||
self.global_ = global_
|
self.guild = guild
|
||||||
|
|
||||||
self.guild = None
|
|
||||||
if hasattr(creator, "guild"):
|
|
||||||
self.guild = creator.guild
|
|
||||||
|
|
||||||
self.uses = 0
|
self.uses = 0
|
||||||
|
|
||||||
def inc(self):
|
def inc(self):
|
||||||
@@ -30,34 +42,182 @@ class AliasEntry:
|
|||||||
self.uses += 1
|
self.uses += 1
|
||||||
return self.uses
|
return self.uses
|
||||||
|
|
||||||
|
def get_extra_args_from_alias(self, message: discord.Message, prefix: str) -> str:
|
||||||
|
"""
|
||||||
|
When an alias is executed by a user in chat this function tries
|
||||||
|
to get any extra arguments passed in with the call.
|
||||||
|
Whitespace will be trimmed from both ends.
|
||||||
|
:param message:
|
||||||
|
:param prefix:
|
||||||
|
:param alias:
|
||||||
|
:return:
|
||||||
|
"""
|
||||||
|
known_content_length = len(prefix) + len(self.name)
|
||||||
|
extra = message.content[known_content_length:]
|
||||||
|
view = StringView(extra)
|
||||||
|
view.skip_ws()
|
||||||
|
extra = []
|
||||||
|
while not view.eof:
|
||||||
|
prev = view.index
|
||||||
|
word = view.get_quoted_word()
|
||||||
|
if len(word) < view.index - prev:
|
||||||
|
word = "".join((view.buffer[prev], word, view.buffer[view.index - 1]))
|
||||||
|
extra.append(word)
|
||||||
|
view.skip_ws()
|
||||||
|
return extra
|
||||||
|
|
||||||
def to_json(self) -> dict:
|
def to_json(self) -> dict:
|
||||||
try:
|
|
||||||
creator = str(self.creator.id)
|
|
||||||
guild = str(self.guild.id)
|
|
||||||
except AttributeError:
|
|
||||||
creator = self.creator
|
|
||||||
guild = self.guild
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"name": self.name,
|
"name": self.name,
|
||||||
"command": self.command,
|
"command": self.command,
|
||||||
"creator": creator,
|
"creator": self.creator,
|
||||||
"guild": guild,
|
"guild": self.guild,
|
||||||
"global": self.global_,
|
|
||||||
"uses": self.uses,
|
"uses": self.uses,
|
||||||
}
|
}
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def from_json(cls, data: dict, bot: commands.Bot = None):
|
def from_json(cls, data: dict):
|
||||||
ret = cls(data["name"], data["command"], data["creator"], global_=data["global"])
|
ret = cls(data["name"], data["command"], data["creator"], data["guild"])
|
||||||
|
|
||||||
if bot:
|
|
||||||
ret.has_real_data = True
|
|
||||||
ret.creator = bot.get_user(int(data["creator"]))
|
|
||||||
guild = bot.get_guild(int(data["guild"]))
|
|
||||||
ret.guild = guild
|
|
||||||
else:
|
|
||||||
ret.guild = data["guild"]
|
|
||||||
|
|
||||||
ret.uses = data.get("uses", 0)
|
ret.uses = data.get("uses", 0)
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
|
|
||||||
|
class AliasCache:
|
||||||
|
def __init__(self, config: Config, cache_enabled: bool = True):
|
||||||
|
self.config = config
|
||||||
|
self._cache_enabled = cache_enabled
|
||||||
|
self._loaded = False
|
||||||
|
self._aliases: Dict[Optional[int], Dict[str, AliasEntry]] = {None: {}}
|
||||||
|
|
||||||
|
async def load_aliases(self):
|
||||||
|
if not self._cache_enabled:
|
||||||
|
self._loaded = True
|
||||||
|
return
|
||||||
|
for alias in await self.config.entries():
|
||||||
|
self._aliases[None][alias["name"]] = AliasEntry.from_json(alias)
|
||||||
|
|
||||||
|
all_guilds = await self.config.all_guilds()
|
||||||
|
async for guild_id, guild_data in AsyncIter(all_guilds.items(), steps=100):
|
||||||
|
if guild_id not in self._aliases:
|
||||||
|
self._aliases[guild_id] = {}
|
||||||
|
for alias in guild_data["entries"]:
|
||||||
|
self._aliases[guild_id][alias["name"]] = AliasEntry.from_json(alias)
|
||||||
|
self._loaded = True
|
||||||
|
|
||||||
|
async def get_aliases(self, ctx: commands.Context) -> List[AliasEntry]:
|
||||||
|
"""Returns all possible aliases with the given context"""
|
||||||
|
global_aliases: List[AliasEntry] = []
|
||||||
|
server_aliases: List[AliasEntry] = []
|
||||||
|
global_aliases = await self.get_global_aliases()
|
||||||
|
if ctx.guild and ctx.guild.id in self._aliases:
|
||||||
|
server_aliases = await self.get_guild_aliases(ctx.guild)
|
||||||
|
return global_aliases + server_aliases
|
||||||
|
|
||||||
|
async def get_guild_aliases(self, guild: discord.Guild) -> List[AliasEntry]:
|
||||||
|
"""Returns all guild specific aliases"""
|
||||||
|
aliases: List[AliasEntry] = []
|
||||||
|
|
||||||
|
if self._cache_enabled:
|
||||||
|
if guild.id in self._aliases:
|
||||||
|
for _, alias in self._aliases[guild.id].items():
|
||||||
|
aliases.append(alias)
|
||||||
|
else:
|
||||||
|
aliases = [AliasEntry.from_json(d) for d in await self.config.guild(guild).entries()]
|
||||||
|
return aliases
|
||||||
|
|
||||||
|
async def get_global_aliases(self) -> List[AliasEntry]:
|
||||||
|
"""Returns all global specific aliases"""
|
||||||
|
aliases: List[AliasEntry] = []
|
||||||
|
if self._cache_enabled:
|
||||||
|
for _, alias in self._aliases[None].items():
|
||||||
|
aliases.append(alias)
|
||||||
|
else:
|
||||||
|
aliases = [AliasEntry.from_json(d) for d in await self.config.entries()]
|
||||||
|
return aliases
|
||||||
|
|
||||||
|
async def get_alias(
|
||||||
|
self, guild: Optional[discord.Guild], alias_name: str,
|
||||||
|
) -> Optional[AliasEntry]:
|
||||||
|
"""Returns an AliasEntry object if the provided alias_name is a registered alias"""
|
||||||
|
server_aliases: List[AliasEntry] = []
|
||||||
|
|
||||||
|
if self._cache_enabled:
|
||||||
|
if alias_name in self._aliases[None]:
|
||||||
|
return self._aliases[None][alias_name]
|
||||||
|
if guild is not None:
|
||||||
|
if guild.id in self._aliases:
|
||||||
|
if alias_name in self._aliases[guild.id]:
|
||||||
|
return self._aliases[guild.id][alias_name]
|
||||||
|
else:
|
||||||
|
if guild:
|
||||||
|
server_aliases = [
|
||||||
|
AliasEntry.from_json(d) for d in await self.config.guild(guild.id).entries()
|
||||||
|
]
|
||||||
|
global_aliases = [AliasEntry.from_json(d) for d in await self.config.entries()]
|
||||||
|
all_aliases = global_aliases + server_aliases
|
||||||
|
|
||||||
|
for alias in all_aliases:
|
||||||
|
if alias.name == alias_name:
|
||||||
|
return alias
|
||||||
|
|
||||||
|
return None
|
||||||
|
|
||||||
|
async def add_alias(
|
||||||
|
self, ctx: commands.Context, alias_name: str, command: str, global_: bool = False
|
||||||
|
) -> AliasEntry:
|
||||||
|
indices = findall(r"{(\d*)}", command)
|
||||||
|
if indices:
|
||||||
|
try:
|
||||||
|
indices = [int(a[0]) for a in indices]
|
||||||
|
except IndexError:
|
||||||
|
raise ArgParseError(_("Arguments must be specified with a number."))
|
||||||
|
low = min(indices)
|
||||||
|
indices = [a - low for a in indices]
|
||||||
|
high = max(indices)
|
||||||
|
gaps = set(indices).symmetric_difference(range(high + 1))
|
||||||
|
if gaps:
|
||||||
|
raise ArgParseError(
|
||||||
|
_("Arguments must be sequential. Missing arguments: ")
|
||||||
|
+ ", ".join(str(i + low) for i in gaps)
|
||||||
|
)
|
||||||
|
command = command.format(*(f"{{{i}}}" for i in range(-low, high + low + 1)))
|
||||||
|
|
||||||
|
if global_:
|
||||||
|
alias = AliasEntry(alias_name, command, ctx.author.id, None)
|
||||||
|
settings = self.config
|
||||||
|
if self._cache_enabled:
|
||||||
|
self._aliases[None][alias.name] = alias
|
||||||
|
else:
|
||||||
|
alias = AliasEntry(alias_name, command, ctx.author.id, ctx.guild.id)
|
||||||
|
settings = self.config.guild(ctx.guild)
|
||||||
|
if self._cache_enabled:
|
||||||
|
if ctx.guild.id not in self._aliases:
|
||||||
|
self._aliases[ctx.guild.id] = {}
|
||||||
|
self._aliases[ctx.guild.id][alias.name] = alias
|
||||||
|
|
||||||
|
async with settings.entries() as curr_aliases:
|
||||||
|
curr_aliases.append(alias.to_json())
|
||||||
|
|
||||||
|
return alias
|
||||||
|
|
||||||
|
async def delete_alias(
|
||||||
|
self, ctx: commands.Context, alias_name: str, global_: bool = False
|
||||||
|
) -> bool:
|
||||||
|
if global_:
|
||||||
|
settings = self.config
|
||||||
|
else:
|
||||||
|
settings = self.config.guild(ctx.guild)
|
||||||
|
|
||||||
|
async with settings.entries() as aliases:
|
||||||
|
for alias in aliases:
|
||||||
|
if alias["name"] == alias_name:
|
||||||
|
aliases.remove(alias)
|
||||||
|
if self._cache_enabled:
|
||||||
|
if global_:
|
||||||
|
del self._aliases[None][alias_name]
|
||||||
|
else:
|
||||||
|
del self._aliases[ctx.guild.id][alias_name]
|
||||||
|
return True
|
||||||
|
|
||||||
|
return False
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-20 12:09+0000\n"
|
"POT-Creation-Date: 2020-06-18 12:13+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-20 12:10\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Afrikaans\n"
|
"Language-Team: Afrikaans\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,139 +10,151 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: af\n"
|
"X-Crowdin-Language: af\n"
|
||||||
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 8\n"
|
||||||
"Language: af_ZA\n"
|
"Language: af_ZA\n"
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:35
|
#: redbot/cogs/alias/alias.py:31
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:111
|
#: redbot/cogs/alias/alias.py:86
|
||||||
msgid "Arguments must be specified with a number."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:118
|
|
||||||
msgid "Arguments must be sequential. Missing arguments: "
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:168
|
|
||||||
msgid "No prefix found."
|
msgid "No prefix found."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:235
|
#: redbot/cogs/alias/alias.py:116
|
||||||
|
msgid "Aliases:\\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:118
|
||||||
|
msgid "\\n\\nPage {page}/{total}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:128
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage command aliases."
|
msgid "Manage command aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:240
|
#: redbot/cogs/alias/alias.py:133
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage global aliases."
|
msgid "Manage global aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:247
|
#: redbot/cogs/alias/alias.py:140
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add an alias for a command."
|
msgid "Add an alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:252
|
#: redbot/cogs/alias/alias.py:145
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:263
|
#: redbot/cogs/alias/alias.py:156
|
||||||
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:274
|
#: redbot/cogs/alias/alias.py:167
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:293
|
#: redbot/cogs/alias/alias.py:179 redbot/cogs/alias/alias.py:238
|
||||||
|
msgid "You attempted to create a new alias for a command that doesn't exist."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:193
|
||||||
msgid "A new alias with the trigger `{name}` has been created."
|
msgid "A new alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:299
|
#: redbot/cogs/alias/alias.py:199
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add a global alias for a command."
|
msgid "Add a global alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:304
|
#: redbot/cogs/alias/alias.py:204
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:315
|
#: redbot/cogs/alias/alias.py:215
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new global alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:326
|
#: redbot/cogs/alias/alias.py:226
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:342
|
#: redbot/cogs/alias/alias.py:249
|
||||||
msgid "A new global alias with the trigger `{name}` has been created."
|
msgid "A new global alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:350
|
#: redbot/cogs/alias/alias.py:256
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Try to execute help for the base command of the alias."
|
msgid "Try to execute help for the base command of the alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:362
|
#: redbot/cogs/alias/alias.py:261
|
||||||
msgid "No such alias exists."
|
msgid "No such alias exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:367
|
#: redbot/cogs/alias/alias.py:265
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Show what command the alias executes."
|
msgid "Show what command the alias executes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:372
|
#: redbot/cogs/alias/alias.py:270
|
||||||
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:377
|
#: redbot/cogs/alias/alias.py:275
|
||||||
msgid "There is no alias with the name `{name}`"
|
msgid "There is no alias with the name `{name}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:383
|
#: redbot/cogs/alias/alias.py:281
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing alias on this server."
|
msgid "Delete an existing alias on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:388 redbot/cogs/alias/alias.py:424
|
#: redbot/cogs/alias/alias.py:283 redbot/cogs/alias/alias.py:315
|
||||||
#: redbot/cogs/alias/alias.py:435
|
|
||||||
msgid "There are no aliases on this server."
|
msgid "There are no aliases on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:393 redbot/cogs/alias/alias.py:411
|
#: redbot/cogs/alias/alias.py:288 redbot/cogs/alias/alias.py:303
|
||||||
msgid "Alias with the name `{name}` was successfully deleted."
|
msgid "Alias with the name `{name}` was successfully deleted."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:396 redbot/cogs/alias/alias.py:414
|
#: redbot/cogs/alias/alias.py:291 redbot/cogs/alias/alias.py:306
|
||||||
msgid "Alias with name `{name}` was not found."
|
msgid "Alias with name `{name}` was not found."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:401
|
#: redbot/cogs/alias/alias.py:296
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing global alias."
|
msgid "Delete an existing global alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:406
|
#: redbot/cogs/alias/alias.py:298
|
||||||
msgid "There are no aliases on this bot."
|
msgid "There are no global aliases on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:419
|
#: redbot/cogs/alias/alias.py:312
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available aliases on this server."
|
msgid "List the available aliases on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:420 redbot/cogs/alias/alias.py:431
|
#: redbot/cogs/alias/alias.py:321
|
||||||
msgid "Aliases:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:430
|
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available global aliases on this bot."
|
msgid "List the available global aliases on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:324
|
||||||
|
msgid "There are no global aliases."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:174
|
||||||
|
msgid "Arguments must be specified with a number."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:181
|
||||||
|
msgid "Arguments must be sequential. Missing arguments: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-20 12:09+0000\n"
|
"POT-Creation-Date: 2020-06-18 12:13+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-20 12:10\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Arabic\n"
|
"Language-Team: Arabic\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,139 +10,151 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"
|
"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: ar\n"
|
"X-Crowdin-Language: ar\n"
|
||||||
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 8\n"
|
||||||
"Language: ar_SA\n"
|
"Language: ar_SA\n"
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:35
|
#: redbot/cogs/alias/alias.py:31
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:111
|
#: redbot/cogs/alias/alias.py:86
|
||||||
msgid "Arguments must be specified with a number."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:118
|
|
||||||
msgid "Arguments must be sequential. Missing arguments: "
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:168
|
|
||||||
msgid "No prefix found."
|
msgid "No prefix found."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:235
|
#: redbot/cogs/alias/alias.py:116
|
||||||
|
msgid "Aliases:\\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:118
|
||||||
|
msgid "\\n\\nPage {page}/{total}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:128
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage command aliases."
|
msgid "Manage command aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:240
|
#: redbot/cogs/alias/alias.py:133
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage global aliases."
|
msgid "Manage global aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:247
|
#: redbot/cogs/alias/alias.py:140
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add an alias for a command."
|
msgid "Add an alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:252
|
#: redbot/cogs/alias/alias.py:145
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:263
|
#: redbot/cogs/alias/alias.py:156
|
||||||
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:274
|
#: redbot/cogs/alias/alias.py:167
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:293
|
#: redbot/cogs/alias/alias.py:179 redbot/cogs/alias/alias.py:238
|
||||||
|
msgid "You attempted to create a new alias for a command that doesn't exist."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:193
|
||||||
msgid "A new alias with the trigger `{name}` has been created."
|
msgid "A new alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:299
|
#: redbot/cogs/alias/alias.py:199
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add a global alias for a command."
|
msgid "Add a global alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:304
|
#: redbot/cogs/alias/alias.py:204
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:315
|
#: redbot/cogs/alias/alias.py:215
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new global alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:326
|
#: redbot/cogs/alias/alias.py:226
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:342
|
#: redbot/cogs/alias/alias.py:249
|
||||||
msgid "A new global alias with the trigger `{name}` has been created."
|
msgid "A new global alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:350
|
#: redbot/cogs/alias/alias.py:256
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Try to execute help for the base command of the alias."
|
msgid "Try to execute help for the base command of the alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:362
|
#: redbot/cogs/alias/alias.py:261
|
||||||
msgid "No such alias exists."
|
msgid "No such alias exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:367
|
#: redbot/cogs/alias/alias.py:265
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Show what command the alias executes."
|
msgid "Show what command the alias executes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:372
|
#: redbot/cogs/alias/alias.py:270
|
||||||
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:377
|
#: redbot/cogs/alias/alias.py:275
|
||||||
msgid "There is no alias with the name `{name}`"
|
msgid "There is no alias with the name `{name}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:383
|
#: redbot/cogs/alias/alias.py:281
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing alias on this server."
|
msgid "Delete an existing alias on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:388 redbot/cogs/alias/alias.py:424
|
#: redbot/cogs/alias/alias.py:283 redbot/cogs/alias/alias.py:315
|
||||||
#: redbot/cogs/alias/alias.py:435
|
|
||||||
msgid "There are no aliases on this server."
|
msgid "There are no aliases on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:393 redbot/cogs/alias/alias.py:411
|
#: redbot/cogs/alias/alias.py:288 redbot/cogs/alias/alias.py:303
|
||||||
msgid "Alias with the name `{name}` was successfully deleted."
|
msgid "Alias with the name `{name}` was successfully deleted."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:396 redbot/cogs/alias/alias.py:414
|
#: redbot/cogs/alias/alias.py:291 redbot/cogs/alias/alias.py:306
|
||||||
msgid "Alias with name `{name}` was not found."
|
msgid "Alias with name `{name}` was not found."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:401
|
#: redbot/cogs/alias/alias.py:296
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing global alias."
|
msgid "Delete an existing global alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:406
|
#: redbot/cogs/alias/alias.py:298
|
||||||
msgid "There are no aliases on this bot."
|
msgid "There are no global aliases on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:419
|
#: redbot/cogs/alias/alias.py:312
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available aliases on this server."
|
msgid "List the available aliases on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:420 redbot/cogs/alias/alias.py:431
|
#: redbot/cogs/alias/alias.py:321
|
||||||
msgid "Aliases:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:430
|
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available global aliases on this bot."
|
msgid "List the available global aliases on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:324
|
||||||
|
msgid "There are no global aliases."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:174
|
||||||
|
msgid "Arguments must be specified with a number."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:181
|
||||||
|
msgid "Arguments must be sequential. Missing arguments: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-20 12:09+0000\n"
|
"POT-Creation-Date: 2020-06-18 12:13+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-20 12:10\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Bulgarian\n"
|
"Language-Team: Bulgarian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,139 +10,151 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: bg\n"
|
"X-Crowdin-Language: bg\n"
|
||||||
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 8\n"
|
||||||
"Language: bg_BG\n"
|
"Language: bg_BG\n"
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:35
|
#: redbot/cogs/alias/alias.py:31
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:111
|
#: redbot/cogs/alias/alias.py:86
|
||||||
msgid "Arguments must be specified with a number."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:118
|
|
||||||
msgid "Arguments must be sequential. Missing arguments: "
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:168
|
|
||||||
msgid "No prefix found."
|
msgid "No prefix found."
|
||||||
msgstr "Няма намерен префикс."
|
msgstr "Няма намерен префикс."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:235
|
#: redbot/cogs/alias/alias.py:116
|
||||||
|
msgid "Aliases:\\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:118
|
||||||
|
msgid "\\n\\nPage {page}/{total}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:128
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage command aliases."
|
msgid "Manage command aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:240
|
#: redbot/cogs/alias/alias.py:133
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage global aliases."
|
msgid "Manage global aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:247
|
#: redbot/cogs/alias/alias.py:140
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add an alias for a command."
|
msgid "Add an alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:252
|
#: redbot/cogs/alias/alias.py:145
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:263
|
#: redbot/cogs/alias/alias.py:156
|
||||||
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:274
|
#: redbot/cogs/alias/alias.py:167
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:293
|
#: redbot/cogs/alias/alias.py:179 redbot/cogs/alias/alias.py:238
|
||||||
|
msgid "You attempted to create a new alias for a command that doesn't exist."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:193
|
||||||
msgid "A new alias with the trigger `{name}` has been created."
|
msgid "A new alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:299
|
#: redbot/cogs/alias/alias.py:199
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add a global alias for a command."
|
msgid "Add a global alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:304
|
#: redbot/cogs/alias/alias.py:204
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:315
|
#: redbot/cogs/alias/alias.py:215
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new global alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:326
|
#: redbot/cogs/alias/alias.py:226
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:342
|
#: redbot/cogs/alias/alias.py:249
|
||||||
msgid "A new global alias with the trigger `{name}` has been created."
|
msgid "A new global alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:350
|
#: redbot/cogs/alias/alias.py:256
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Try to execute help for the base command of the alias."
|
msgid "Try to execute help for the base command of the alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:362
|
#: redbot/cogs/alias/alias.py:261
|
||||||
msgid "No such alias exists."
|
msgid "No such alias exists."
|
||||||
msgstr "Този псевдоним не съществува."
|
msgstr "Този псевдоним не съществува."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:367
|
#: redbot/cogs/alias/alias.py:265
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Show what command the alias executes."
|
msgid "Show what command the alias executes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:372
|
#: redbot/cogs/alias/alias.py:270
|
||||||
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:377
|
#: redbot/cogs/alias/alias.py:275
|
||||||
msgid "There is no alias with the name `{name}`"
|
msgid "There is no alias with the name `{name}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:383
|
#: redbot/cogs/alias/alias.py:281
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing alias on this server."
|
msgid "Delete an existing alias on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:388 redbot/cogs/alias/alias.py:424
|
#: redbot/cogs/alias/alias.py:283 redbot/cogs/alias/alias.py:315
|
||||||
#: redbot/cogs/alias/alias.py:435
|
|
||||||
msgid "There are no aliases on this server."
|
msgid "There are no aliases on this server."
|
||||||
msgstr "Няма използвани псевдоними на този сървър."
|
msgstr "Няма използвани псевдоними на този сървър."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:393 redbot/cogs/alias/alias.py:411
|
#: redbot/cogs/alias/alias.py:288 redbot/cogs/alias/alias.py:303
|
||||||
msgid "Alias with the name `{name}` was successfully deleted."
|
msgid "Alias with the name `{name}` was successfully deleted."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:396 redbot/cogs/alias/alias.py:414
|
#: redbot/cogs/alias/alias.py:291 redbot/cogs/alias/alias.py:306
|
||||||
msgid "Alias with name `{name}` was not found."
|
msgid "Alias with name `{name}` was not found."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:401
|
#: redbot/cogs/alias/alias.py:296
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing global alias."
|
msgid "Delete an existing global alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:406
|
#: redbot/cogs/alias/alias.py:298
|
||||||
msgid "There are no aliases on this bot."
|
msgid "There are no global aliases on this bot."
|
||||||
msgstr "Няма псевдоними положени към този бот."
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:419
|
#: redbot/cogs/alias/alias.py:312
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available aliases on this server."
|
msgid "List the available aliases on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:420 redbot/cogs/alias/alias.py:431
|
#: redbot/cogs/alias/alias.py:321
|
||||||
msgid "Aliases:"
|
|
||||||
msgstr "Псевдоними:"
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:430
|
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available global aliases on this bot."
|
msgid "List the available global aliases on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:324
|
||||||
|
msgid "There are no global aliases."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:174
|
||||||
|
msgid "Arguments must be specified with a number."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:181
|
||||||
|
msgid "Arguments must be sequential. Missing arguments: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-20 12:09+0000\n"
|
"POT-Creation-Date: 2020-06-18 12:13+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-20 12:10\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Catalan\n"
|
"Language-Team: Catalan\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,139 +10,151 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: ca\n"
|
"X-Crowdin-Language: ca\n"
|
||||||
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 8\n"
|
||||||
"Language: ca_ES\n"
|
"Language: ca_ES\n"
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:35
|
#: redbot/cogs/alias/alias.py:31
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:111
|
#: redbot/cogs/alias/alias.py:86
|
||||||
msgid "Arguments must be specified with a number."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:118
|
|
||||||
msgid "Arguments must be sequential. Missing arguments: "
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:168
|
|
||||||
msgid "No prefix found."
|
msgid "No prefix found."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:235
|
#: redbot/cogs/alias/alias.py:116
|
||||||
|
msgid "Aliases:\\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:118
|
||||||
|
msgid "\\n\\nPage {page}/{total}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:128
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage command aliases."
|
msgid "Manage command aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:240
|
#: redbot/cogs/alias/alias.py:133
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage global aliases."
|
msgid "Manage global aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:247
|
#: redbot/cogs/alias/alias.py:140
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add an alias for a command."
|
msgid "Add an alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:252
|
#: redbot/cogs/alias/alias.py:145
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:263
|
#: redbot/cogs/alias/alias.py:156
|
||||||
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:274
|
#: redbot/cogs/alias/alias.py:167
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:293
|
#: redbot/cogs/alias/alias.py:179 redbot/cogs/alias/alias.py:238
|
||||||
|
msgid "You attempted to create a new alias for a command that doesn't exist."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:193
|
||||||
msgid "A new alias with the trigger `{name}` has been created."
|
msgid "A new alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:299
|
#: redbot/cogs/alias/alias.py:199
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add a global alias for a command."
|
msgid "Add a global alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:304
|
#: redbot/cogs/alias/alias.py:204
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:315
|
#: redbot/cogs/alias/alias.py:215
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new global alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:326
|
#: redbot/cogs/alias/alias.py:226
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:342
|
#: redbot/cogs/alias/alias.py:249
|
||||||
msgid "A new global alias with the trigger `{name}` has been created."
|
msgid "A new global alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:350
|
#: redbot/cogs/alias/alias.py:256
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Try to execute help for the base command of the alias."
|
msgid "Try to execute help for the base command of the alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:362
|
#: redbot/cogs/alias/alias.py:261
|
||||||
msgid "No such alias exists."
|
msgid "No such alias exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:367
|
#: redbot/cogs/alias/alias.py:265
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Show what command the alias executes."
|
msgid "Show what command the alias executes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:372
|
#: redbot/cogs/alias/alias.py:270
|
||||||
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:377
|
#: redbot/cogs/alias/alias.py:275
|
||||||
msgid "There is no alias with the name `{name}`"
|
msgid "There is no alias with the name `{name}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:383
|
#: redbot/cogs/alias/alias.py:281
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing alias on this server."
|
msgid "Delete an existing alias on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:388 redbot/cogs/alias/alias.py:424
|
#: redbot/cogs/alias/alias.py:283 redbot/cogs/alias/alias.py:315
|
||||||
#: redbot/cogs/alias/alias.py:435
|
|
||||||
msgid "There are no aliases on this server."
|
msgid "There are no aliases on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:393 redbot/cogs/alias/alias.py:411
|
#: redbot/cogs/alias/alias.py:288 redbot/cogs/alias/alias.py:303
|
||||||
msgid "Alias with the name `{name}` was successfully deleted."
|
msgid "Alias with the name `{name}` was successfully deleted."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:396 redbot/cogs/alias/alias.py:414
|
#: redbot/cogs/alias/alias.py:291 redbot/cogs/alias/alias.py:306
|
||||||
msgid "Alias with name `{name}` was not found."
|
msgid "Alias with name `{name}` was not found."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:401
|
#: redbot/cogs/alias/alias.py:296
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing global alias."
|
msgid "Delete an existing global alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:406
|
#: redbot/cogs/alias/alias.py:298
|
||||||
msgid "There are no aliases on this bot."
|
msgid "There are no global aliases on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:419
|
#: redbot/cogs/alias/alias.py:312
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available aliases on this server."
|
msgid "List the available aliases on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:420 redbot/cogs/alias/alias.py:431
|
#: redbot/cogs/alias/alias.py:321
|
||||||
msgid "Aliases:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:430
|
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available global aliases on this bot."
|
msgid "List the available global aliases on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:324
|
||||||
|
msgid "There are no global aliases."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:174
|
||||||
|
msgid "Arguments must be specified with a number."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:181
|
||||||
|
msgid "Arguments must be sequential. Missing arguments: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-20 12:09+0000\n"
|
"POT-Creation-Date: 2020-06-18 12:13+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-20 12:11\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Czech\n"
|
"Language-Team: Czech\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,139 +10,151 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
|
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: cs\n"
|
"X-Crowdin-Language: cs\n"
|
||||||
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 8\n"
|
||||||
"Language: cs_CZ\n"
|
"Language: cs_CZ\n"
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:35
|
#: redbot/cogs/alias/alias.py:31
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
||||||
msgstr "Vytvořit aliasy pro příkazy n n Aliasy jsou alternativní zkratky pro příkazy. Mohou působit jako lambda (ukládání argumentů pro opakované použití) n nebo jednoduše jako zkratka pro vyslovení \"xyz\" n n Při spuštění budou aliasy přijímat další argumenty a připojovat je k uložený alias. \\ t "
|
msgstr "Vytvořit aliasy pro příkazy n n Aliasy jsou alternativní zkratky pro příkazy. Mohou působit jako lambda (ukládání argumentů pro opakované použití) n nebo jednoduše jako zkratka pro vyslovení \"xyz\" n n Při spuštění budou aliasy přijímat další argumenty a připojovat je k uložený alias. \\ t "
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:111
|
#: redbot/cogs/alias/alias.py:86
|
||||||
msgid "Arguments must be specified with a number."
|
|
||||||
msgstr "Argumenty musí být zadány s číslem."
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:118
|
|
||||||
msgid "Arguments must be sequential. Missing arguments: "
|
|
||||||
msgstr "Argumenty musí být sekvenční. Chybějící argumenty: "
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:168
|
|
||||||
msgid "No prefix found."
|
msgid "No prefix found."
|
||||||
msgstr "Nebyl nalezen žádný prefix."
|
msgstr "Nebyl nalezen žádný prefix."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:235
|
#: redbot/cogs/alias/alias.py:116
|
||||||
|
msgid "Aliases:\\n"
|
||||||
|
msgstr "Aliasy:\\n"
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:118
|
||||||
|
msgid "\\n\\nPage {page}/{total}"
|
||||||
|
msgstr "\\n\\nStrana {page}/{total}"
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:128
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage command aliases."
|
msgid "Manage command aliases."
|
||||||
msgstr "Spravovat aliasy příkazů."
|
msgstr "Spravovat aliasy příkazů."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:240
|
#: redbot/cogs/alias/alias.py:133
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage global aliases."
|
msgid "Manage global aliases."
|
||||||
msgstr "Správa globálních aliasů."
|
msgstr "Správa globálních aliasů."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:247
|
#: redbot/cogs/alias/alias.py:140
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add an alias for a command."
|
msgid "Add an alias for a command."
|
||||||
msgstr "Přidat alias pro příkaz."
|
msgstr "Přidat alias pro příkaz."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:252
|
#: redbot/cogs/alias/alias.py:145
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
||||||
|
msgstr "Pokusili jste se vytvořit nový globální alias s názvem {name}, ale toto jméno je již příkazem tohoto bota."
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:156
|
||||||
|
msgid "You attempted to create a new alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:263
|
#: redbot/cogs/alias/alias.py:167
|
||||||
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:274
|
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr "Pokusili jste se vytvořit nový alias s názvem {name}, ale toto jméno je neplatným názvem aliasu. Jména aliasů nesmí obsahovat mezery."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:293
|
#: redbot/cogs/alias/alias.py:179 redbot/cogs/alias/alias.py:238
|
||||||
|
msgid "You attempted to create a new alias for a command that doesn't exist."
|
||||||
|
msgstr "Pokusili jste se vytvořit nový alias pro příkaz, který neexistuje."
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:193
|
||||||
msgid "A new alias with the trigger `{name}` has been created."
|
msgid "A new alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr "Byl vytvořen nový alias se spouštěcím mechanismem `{name}."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:299
|
#: redbot/cogs/alias/alias.py:199
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add a global alias for a command."
|
msgid "Add a global alias for a command."
|
||||||
msgstr "Přidat globální alias pro příkaz."
|
msgstr "Přidat globální alias pro příkaz."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:304
|
#: redbot/cogs/alias/alias.py:204
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr "Pokusili jste se vytvořit nový globální alias s názvem {name}, ale toto jméno je již příkazem tohoto bota."
|
msgstr "Pokusili jste se vytvořit nový globální alias s názvem {name}, ale toto jméno je již příkazem tohoto bota."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:315
|
#: redbot/cogs/alias/alias.py:215
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new global alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:326
|
#: redbot/cogs/alias/alias.py:226
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr "Pokusili jste se vytvořit nový globální alias s názvem {name}, ale toto jméno je neplatným názvem aliasu. Jména aliasů nesmí obsahovat mezery."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:342
|
#: redbot/cogs/alias/alias.py:249
|
||||||
msgid "A new global alias with the trigger `{name}` has been created."
|
msgid "A new global alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr "Byl vytvořen nový globální alias se spouštěcím mechanismem `{name}."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:350
|
#: redbot/cogs/alias/alias.py:256
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Try to execute help for the base command of the alias."
|
msgid "Try to execute help for the base command of the alias."
|
||||||
msgstr ""
|
msgstr "Zkuste spustit nápovědu pro základní příkaz aliasů."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:362
|
#: redbot/cogs/alias/alias.py:261
|
||||||
msgid "No such alias exists."
|
msgid "No such alias exists."
|
||||||
msgstr "Žádný takový alias neexistuje."
|
msgstr "Žádný takový alias neexistuje."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:367
|
#: redbot/cogs/alias/alias.py:265
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Show what command the alias executes."
|
msgid "Show what command the alias executes."
|
||||||
msgstr "Zobrazit příkaz ke spustitelnému aliasu."
|
msgstr "Zobrazit příkaz ke spustitelnému aliasu."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:372
|
#: redbot/cogs/alias/alias.py:270
|
||||||
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
||||||
msgstr "Alias `{alias_name} provede příkaz `{command}"
|
msgstr "Alias `{alias_name} provede příkaz `{command}"
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:377
|
#: redbot/cogs/alias/alias.py:275
|
||||||
msgid "There is no alias with the name `{name}`"
|
msgid "There is no alias with the name `{name}`"
|
||||||
msgstr "Neexistuje žádný alias s názvem `{name}`"
|
msgstr "Neexistuje žádný alias s názvem `{name}`"
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:383
|
#: redbot/cogs/alias/alias.py:281
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing alias on this server."
|
msgid "Delete an existing alias on this server."
|
||||||
msgstr "Odstraní existující alias na tomto serveru."
|
msgstr "Odstraní existující alias na tomto serveru."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:388 redbot/cogs/alias/alias.py:424
|
#: redbot/cogs/alias/alias.py:283 redbot/cogs/alias/alias.py:315
|
||||||
#: redbot/cogs/alias/alias.py:435
|
|
||||||
msgid "There are no aliases on this server."
|
msgid "There are no aliases on this server."
|
||||||
msgstr "Na tomto serveru nejsou žádné aliasy."
|
msgstr "Na tomto serveru nejsou žádné aliasy."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:393 redbot/cogs/alias/alias.py:411
|
#: redbot/cogs/alias/alias.py:288 redbot/cogs/alias/alias.py:303
|
||||||
msgid "Alias with the name `{name}` was successfully deleted."
|
msgid "Alias with the name `{name}` was successfully deleted."
|
||||||
msgstr "Alias s názvem{name}` byl úspěšně smazán."
|
msgstr "Alias s názvem{name}` byl úspěšně smazán."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:396 redbot/cogs/alias/alias.py:414
|
#: redbot/cogs/alias/alias.py:291 redbot/cogs/alias/alias.py:306
|
||||||
msgid "Alias with name `{name}` was not found."
|
msgid "Alias with name `{name}` was not found."
|
||||||
msgstr ""
|
msgstr "Alias s názvem `{name}` nebyl nalezen."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:401
|
#: redbot/cogs/alias/alias.py:296
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing global alias."
|
msgid "Delete an existing global alias."
|
||||||
msgstr "Odstranit existující globální alias."
|
msgstr "Odstranit existující globální alias."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:406
|
#: redbot/cogs/alias/alias.py:298
|
||||||
msgid "There are no aliases on this bot."
|
msgid "There are no global aliases on this bot."
|
||||||
msgstr ""
|
msgstr "Pro tohoto bota neexistují žádné globální aliasy."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:419
|
#: redbot/cogs/alias/alias.py:312
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available aliases on this server."
|
msgid "List the available aliases on this server."
|
||||||
msgstr "Seznam dostupných aliasů na tomto serveru."
|
msgstr "Seznam dostupných aliasů na tomto serveru."
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:420 redbot/cogs/alias/alias.py:431
|
#: redbot/cogs/alias/alias.py:321
|
||||||
msgid "Aliases:"
|
|
||||||
msgstr "Aliasy:"
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:430
|
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available global aliases on this bot."
|
msgid "List the available global aliases on this bot."
|
||||||
msgstr ""
|
msgstr "Seznam dostupných globálních aliasů pro tohoto bota."
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:324
|
||||||
|
msgid "There are no global aliases."
|
||||||
|
msgstr "Neexistují žádné globální aliasy."
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:174
|
||||||
|
msgid "Arguments must be specified with a number."
|
||||||
|
msgstr "Argumenty musí být zadány s číslem."
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:181
|
||||||
|
msgid "Arguments must be sequential. Missing arguments: "
|
||||||
|
msgstr "Argumenty musí být sekvenční. Chybějící argumenty: "
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: red-discordbot\n"
|
"Project-Id-Version: red-discordbot\n"
|
||||||
"POT-Creation-Date: 2020-02-20 12:09+0000\n"
|
"POT-Creation-Date: 2020-06-18 12:13+0000\n"
|
||||||
"PO-Revision-Date: 2020-02-20 12:11\n"
|
"Last-Translator: \n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: Danish\n"
|
"Language-Team: Danish\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -11,139 +10,151 @@ msgstr ""
|
|||||||
"Generated-By: redgettext 3.1\n"
|
"Generated-By: redgettext 3.1\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
"X-Crowdin-Project: red-discordbot\n"
|
"X-Crowdin-Project: red-discordbot\n"
|
||||||
|
"X-Crowdin-Project-ID: 289505\n"
|
||||||
"X-Crowdin-Language: da\n"
|
"X-Crowdin-Language: da\n"
|
||||||
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
|
"X-Crowdin-File-ID: 8\n"
|
||||||
"Language: da_DK\n"
|
"Language: da_DK\n"
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:35
|
#: redbot/cogs/alias/alias.py:31
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
msgid "Create aliases for commands.\\n\\n Aliases are alternative names shortcuts for commands. They\\n can act as both a lambda (storing arguments for repeated use)\\n or as simply a shortcut to saying \\\"x y z\\\".\\n\\n When run, aliases will accept any additional arguments\\n and append them to the stored alias.\\n "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:111
|
#: redbot/cogs/alias/alias.py:86
|
||||||
msgid "Arguments must be specified with a number."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:118
|
|
||||||
msgid "Arguments must be sequential. Missing arguments: "
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:168
|
|
||||||
msgid "No prefix found."
|
msgid "No prefix found."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:235
|
#: redbot/cogs/alias/alias.py:116
|
||||||
|
msgid "Aliases:\\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:118
|
||||||
|
msgid "\\n\\nPage {page}/{total}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:128
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage command aliases."
|
msgid "Manage command aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:240
|
#: redbot/cogs/alias/alias.py:133
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Manage global aliases."
|
msgid "Manage global aliases."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:247
|
#: redbot/cogs/alias/alias.py:140
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add an alias for a command."
|
msgid "Add an alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:252
|
#: redbot/cogs/alias/alias.py:145
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:263
|
#: redbot/cogs/alias/alias.py:156
|
||||||
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:274
|
#: redbot/cogs/alias/alias.py:167
|
||||||
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:293
|
#: redbot/cogs/alias/alias.py:179 redbot/cogs/alias/alias.py:238
|
||||||
|
msgid "You attempted to create a new alias for a command that doesn't exist."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:193
|
||||||
msgid "A new alias with the trigger `{name}` has been created."
|
msgid "A new alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:299
|
#: redbot/cogs/alias/alias.py:199
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Add a global alias for a command."
|
msgid "Add a global alias for a command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:304
|
#: redbot/cogs/alias/alias.py:204
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:315
|
#: redbot/cogs/alias/alias.py:215
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
|
msgid "You attempted to create a new global alias with the name {name} but that alias already exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:326
|
#: redbot/cogs/alias/alias.py:226
|
||||||
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
msgid "You attempted to create a new global alias with the name {name} but that name is an invalid alias name. Alias names may not contain spaces."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:342
|
#: redbot/cogs/alias/alias.py:249
|
||||||
msgid "A new global alias with the trigger `{name}` has been created."
|
msgid "A new global alias with the trigger `{name}` has been created."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:350
|
#: redbot/cogs/alias/alias.py:256
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Try to execute help for the base command of the alias."
|
msgid "Try to execute help for the base command of the alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:362
|
#: redbot/cogs/alias/alias.py:261
|
||||||
msgid "No such alias exists."
|
msgid "No such alias exists."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:367
|
#: redbot/cogs/alias/alias.py:265
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Show what command the alias executes."
|
msgid "Show what command the alias executes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:372
|
#: redbot/cogs/alias/alias.py:270
|
||||||
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
msgid "The `{alias_name}` alias will execute the command `{command}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:377
|
#: redbot/cogs/alias/alias.py:275
|
||||||
msgid "There is no alias with the name `{name}`"
|
msgid "There is no alias with the name `{name}`"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:383
|
#: redbot/cogs/alias/alias.py:281
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing alias on this server."
|
msgid "Delete an existing alias on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:388 redbot/cogs/alias/alias.py:424
|
#: redbot/cogs/alias/alias.py:283 redbot/cogs/alias/alias.py:315
|
||||||
#: redbot/cogs/alias/alias.py:435
|
|
||||||
msgid "There are no aliases on this server."
|
msgid "There are no aliases on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:393 redbot/cogs/alias/alias.py:411
|
#: redbot/cogs/alias/alias.py:288 redbot/cogs/alias/alias.py:303
|
||||||
msgid "Alias with the name `{name}` was successfully deleted."
|
msgid "Alias with the name `{name}` was successfully deleted."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:396 redbot/cogs/alias/alias.py:414
|
#: redbot/cogs/alias/alias.py:291 redbot/cogs/alias/alias.py:306
|
||||||
msgid "Alias with name `{name}` was not found."
|
msgid "Alias with name `{name}` was not found."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:401
|
#: redbot/cogs/alias/alias.py:296
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "Delete an existing global alias."
|
msgid "Delete an existing global alias."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:406
|
#: redbot/cogs/alias/alias.py:298
|
||||||
msgid "There are no aliases on this bot."
|
msgid "There are no global aliases on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:419
|
#: redbot/cogs/alias/alias.py:312
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available aliases on this server."
|
msgid "List the available aliases on this server."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:420 redbot/cogs/alias/alias.py:431
|
#: redbot/cogs/alias/alias.py:321
|
||||||
msgid "Aliases:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: redbot/cogs/alias/alias.py:430
|
|
||||||
#, docstring
|
#, docstring
|
||||||
msgid "List the available global aliases on this bot."
|
msgid "List the available global aliases on this bot."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias.py:324
|
||||||
|
msgid "There are no global aliases."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:174
|
||||||
|
msgid "Arguments must be specified with a number."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: redbot/cogs/alias/alias_entry.py:181
|
||||||
|
msgid "Arguments must be sequential. Missing arguments: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user