Compare commits

..

325 Commits

Author SHA1 Message Date
Toby Harradine
f0f274e1e1 Bump version to 3.1.4
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-16 11:26:25 +10:00
Toby Harradine
e9f014df07 Revert "Update Crowdin configuration file" (#2878)
This reverts commit 03e59ea9.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-16 10:44:49 +10:00
Toby Harradine
778eadd418 [ModLog] Fix get_case() and get_casetype() (#2877)
This fixes `[p]reason` and `[p]case` with cases that were created after 3.1.3.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-15 20:18:21 +10:00
Toby Harradine
3de9d15410 [CustomCom] Set Requires.ready_event before invoking CC (#2876)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-15 20:13:06 +10:00
Michael H
3b0567d261 bump (#2864) 2019-07-14 00:17:44 -04:00
Michael H
49a75b5f19 command translator quick fix (#2870)
* command translator quick fix

* command translator quick fix
2019-07-14 13:55:47 +10:00
Toby Harradine
8676dd3ce3 [i18n] Update translation catalogs (#2867)
* [i18n] Update translation catalogs

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Install redgettext 3.1 in travis crowdin deployment

Last time the catalog templates were updated, redgettext 3.0 was used. I'd rather Travis didn't upload them after extracting with an older version.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-13 23:52:18 -04:00
Toby Harradine
d5c412e3df [Permissions] Fix Requires.ready_event.set() on subcommands (#2868)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-13 23:05:07 -04:00
Toby Harradine
1d2980f8fa [Permissions] Send help on missing argument (#2865)
* [Permissions] Send help on missing argument

Resolves #2851.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* [Permissions] Use varargs instead of Greedy converter

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-13 21:52:28 -04:00
jack1142
3e80edcdfd [Docs] Add awaits and missing imports in usage examples (#2860)
Well, the modlog examples had to be changed a lot, because `await` obviously won't work in regular method.
2019-07-14 11:30:10 +10:00
aikaterna
be184b57dd [Audio] Update equalizer permissions (#2813)
* [Audio] Update equalizer permissions

* Reformat header on eq list for i18n

* Style
2019-07-13 20:48:13 -04:00
Toby Harradine
f83f378528 [Core] Make Requires.verify() wait until rules are loaded (#2857)
* Make Requires.verify() wait until rules are loaded

Also ensures `Requires` objects are reset when unloaded, particularly in case a `Command` object manages to stay in memory between cog unload and load, and its permissions rules change between those events.

Also, this PR re-ordered some of the event loop policy stuff, because it was required that the event loop policy be set before creating any `Requires` objects. This may or may not have an effect on other `get_event_loop()` calls elsewhere (either in our code, a dependency's, or asyncio's). Either way, these effects would be a *correction*, and any bugs that arise from it are likely to have been occurring silently beforehand.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Remove calls to `remove_listener()` in permissions

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Fix adding rules for permissions cog/commands itself

Also addresses feedback

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Clean up indentation when setting uvloop policy

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Use `set(walk_commands())` to traverse `Group` subcommands

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-13 20:47:40 -04:00
Michael H
21a6384ebf [Modlog] Fix get_case for missing cases (#2858)
Due to the modlog redesign, the detection for a missing case changed. This fixes `get_case` for this.

This resolves #2844.
2019-07-14 10:47:16 +10:00
Toby Harradine
03e0683dd7 [ModLog] Actually prevent duplicate kwarg error
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-13 14:39:50 +10:00
Michael H
ac2813012a [Core] Cog load fixes (#2854)
* split out some fixes from red#2853

* address feedback

* feedback
2019-07-12 22:11:06 -04:00
Toby Harradine
e34eca557b [ModLog] Prevent duplicate kwarg error (#2848)
* [ModLog] Prevent duplicate kwarg error

The `name` key used to be set in the Config for casetypes.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Don't mutate `data` argument

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-12 20:17:00 -04:00
Flame442
687b88ca6f Added some periods to some strings (#2852) 2019-07-12 18:29:27 -04:00
DevilXD
776c75ba86 Fixed [p] not being replaced in code blocks (#2846) 2019-07-09 03:22:52 -04:00
aikaterna
55ff9bedb7 [Audio] Check for player when not connected (#2842) 2019-07-08 13:17:50 +10:00
Toby Harradine
2bdc3ac10c [General] Fix KeyError in [p]urban
Resolves #2841.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-07 18:51:36 +10:00
Toby Harradine
f2039300c2 [Mongo] Use escaped identifiers to extract inner value (#2832)
This was causing a KeyError to be raised whenever a key containing $ or . was part of the identifiers path, even if the value was actually in the dict.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-07-05 18:02:18 -04:00
Cog-Creators Bot
03e59ea9d3 Update Crowdin configuration file 2019-07-05 20:21:25 +02:00
Draper
a89a156f8e [Context] Adds react_quietly method to context (#2834)
* [Context] Adds react_quietly method to context

This allows developers to emojis to command messages
This is a modified version of tick()

It accepts True/False for Tick/Cross emoji and in addition to that any other emoji the bot can see

* Removed True/False support from react quietly

* Stopped catching InvalidArgument on react_quietly so that is propagated to devs
2019-07-03 15:26:22 -04:00
Michael H
0eb22c84ff [Bank API] Add cost decorator (#2761) 2019-07-03 10:07:19 +10:00
aikaterna
d1593b8069 [Audio] Catch unhandled internal folder types (#2824)
The `folder:` and `localfolder:` prefixes are used internally with some localtracks strings to define what to do with the item when it's cycled through the search function. Users theoretically should have never seen this issue as [p]search is used on the user side for YouTube and Soundcloud searching and not local searching, but this handles the issue where a folder is being passed to these functions that doesn't exist.
2019-07-02 13:15:34 +10:00
aikaterna
93391d028c [Audio] _enqueue_tracks clarification/fix (#2822)
Resolves #2820.

Added some comments to clear up a little of the mystery in a couple places.
2019-07-02 13:11:44 +10:00
Flame442
142fb0ad08 [Trivia] Car list fixes (#2825) 2019-07-02 12:03:12 +10:00
jack1142
942dca43d3 [Downloader]: RepoManager: don't load repos in __init__ (#2829)
Loading repos is already done in initialize() method.
This could actually turn out badly
if both
of git processes would touch the same repo at the same time.

This also fixes create_backup in
setup.py - now it properly generates repos.json
2019-07-02 11:57:30 +10:00
jack1142
081bf663a4 test(core): ignore pylint's ImportErrors for distro package (#2830) 2019-07-01 21:54:56 -04:00
Toby Harradine
55e309125e Add uvloop as Posix+CPython dependency and tweak new Make recipes (#2819)
- uvloop is now a dependency on non-Windows CPython systems
- `make setupenv` renamed to `make newenv`
- `make syncenv` added to sync local venv to current dependencies
- `dev-requirements.txt` moved into `tools` directory
2019-07-02 11:53:38 +10:00
Flame442
7323e8eb67 [Trivia] Beethoven corrections for entertainment list (#2823) 2019-07-01 09:29:26 +10:00
Michael H
098540b9e5 [Core] Fix user output on cog load/reload (#2767)
* [Core] Fix user output on cog load/reload

  - Properly fixes the load/reload exception handling
  - Fixes some i18n use here to not make assumptions about other
  languages pluralization rules.

* Fix some typos

* Address Flame's Feedback

* It's important to save before committing ...

* formatting

* Fix some formats...
2019-06-29 12:16:28 -04:00
Elizabeth Sherrock
10412c4f51 Fix broken link in set color docstring (#2803) 2019-06-30 01:35:47 +10:00
PredaaA
2f8b1a21c7 [Audio] Fix config set in shuffle and repeat commands (#2812)
Resolves #2811 and also the same thing in repeat command.
2019-06-30 01:28:29 +10:00
PredaaA
03fe3ee720 [i18n] Fix some missing i18n strings in the whole bot (#2633) 2019-06-30 01:13:53 +10:00
Michael H
8a72840de0 [Utils] Modify chmod use in safe_delete (#2701)
- Takes a pessmisitc approach that it's possible chmod succeeds, but
 deletion fails and does not make the entire dir world writeable
2019-06-30 00:45:44 +10:00
Ryan
8bf86f33a3 [Readme] Update RTD and d.py URLs (#2771) 2019-06-30 00:33:41 +10:00
Michael H
8637f8a852 [Filter] Fix cache invalidation (#2810) 2019-06-30 00:30:09 +10:00
Toby Harradine
bff7e214ab Kill JsonIO and fix JSON driver caching issues (#2796)
* Kill JsonIO and fix JSON driver caching issues

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Ensure lock covers critical region in set()

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Make tests pass

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Use pickle over deepcopy in Config

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Fix temp instance creation

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Serialise value before doing anything in set()

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-27 14:49:45 -04:00
Toby Harradine
f3bbfdc64d Fix duplicate commands in fuzzy help (#2798)
* Fix duplicate commands in fuzzy help

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Use help command's filter for all fuzzy

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-27 13:31:44 -04:00
Toby Harradine
461f56bca1 Kill Pipfile, update dependencies, and add dep bumping tools (#2806)
### Replacement for pipenv's environment setup
First of all, there's a new Make recipe for all devs and contributors on both Windows and Posix, `make setupenv`, which is kind of a replacement for `pipenv install --dev`. It creates a virtual environment in `.venv` using the inbuilt `venv` module, clearing out any existing virtual environment if needed first. Then it installs all dev dependencies using our new `dev-requirements.txt` file. `CONTRIBUTING.md` has been updated to reflect all of this.

### Dependency version bumping tool
Secondly, I've added a python script, `tools/bumpdeps.py` to help with bumping dependency versions. It has its own Make recipe too, `make bumpdeps`. This script won't work on Windows (yet). It reads the `tools/primary_deps.ini` file, which contains the primary requirements of Red and its extras with loose version specifiers, and outputs all pinned dependencies, in `setup.cfg` format. It's not a foolproof dependency resolver, it's quite simple, but it's bound to help out a lot. It'll try to give warnings if there might be a version conflict, but updating `setup.cfg` with its output and then doing `pip install -r dev-requirements.txt` will allow pip to issue warnings if something is conflicting.

So to add a new dependency, add it to `tools/primary_deps.ini` in the appropriate place, and either use `make bumpdeps` to completely update all dependencies, or simply add it to `setup.cfg` manually with its sub-dependencies, and all versions pinned.

### Sphinx 2.1.2 (docs changes)
The sphinx update brought along the ability to disable type annotations being rendered in function and method signatures, and I have gladly gone and done that. Type annotations should already be specified under the "Parameters" section, and the way sphinx renders them in function signatures makes them much harder to read.

Also, documented classes will now display what classes they inherit from.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-28 00:16:14 +10:00
aikaterna
d1d4ec3e38 [Audio] No capitalization needed (#2801) 2019-06-27 08:13:01 -04:00
aikaterna
a0f34bbbd9 [Audio] Move DJ role check in [p]summon (#2799) 2019-06-27 10:48:06 +10:00
Toby Harradine
49819a2eeb [ModLog] Fix get_all_casetypes() (#2807)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-26 20:39:22 +10:00
Toby Harradine
f91d8610ae [ModLog] Use custom scopes for ModLog Config (#2766)
Modlog was the biggest culprit for seriously large documents in the MongoDB backend, since it stored all cases as nested dicts in the guild scope. So, for example, on the Fortnite server, the guild document for Kowlin's bot had exceeded 8MB. 

This commit gives each case its own document. It also does the same for casetypes. Not only does it remove the possibility of the document exceeding the maximum size in MongoDB, it's also just more efficient for all backends.

Other misc changes: Fixed a bunch of type-hints, and also added more support for when an object related to a case (user, moderator, channel etc.) can't be found (because it was deleted or something rather)

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-26 00:52:33 +10:00
kennnyshiwa
52f5d5cd6a [Mod] add role mentions to userinfo and reverse role sorting (#2759)
* add role mentions to userinfo and reverse role sorting

This small PR adds the role mentions to userinfo and reverses the sorting so that the top most role of a user is at the left of the embed

* Remove sorting as it's handled by d.py
2019-06-24 02:39:03 -04:00
aikaterna
870b615364 [Audio] Queue & misc cleanup (#2784)
* [Audio] Queue & misc cleanup
2019-06-24 01:09:04 -04:00
aikaterna
25ccc11dc4 [Audio] Add [p]summon (#2786) 2019-06-24 01:05:01 -04:00
aikaterna
f2b7ce9546 [Audio] Add equalizer (#2787)
* [Audio] Add equalizer

* [Audio] Add equalizer
2019-06-24 00:58:20 -04:00
DiscordLiz
6bdc9606f6 [Core] Multiple mod admin roles (#2783)
* Adds Schema versioning
  - Adds Migration tool
  - Adds tool to migrate to allow multiple admin and mod roles
  - Supports Multiple mod and admin roles

* Ensures migration is run prior to cog load and connection to discord

* Updates to not rely on singular mod/admin role id

* Update requires logic for multiple mod/admin roles

* Add new commands for managing mod/admin roles

* Feedback

Update strings
Update docstrings
Add aliases

* Use snowflakelist

* paginate

* Change variable name

* Fix mistake

* handle settings view fix

* Fix name error

* I'm bad at Ux

* style fix
2019-06-23 23:36:00 -04:00
Toby Harradine
71d0bd0d07 Various Config and Mongo Driver fixes (#2795)
- Fixes defaults being mixed into custom groups above the document level when doing `Group.all()`
- Fixes `Config.clear_all()` with Mongo driver
- Fixes `Group.set()` with Mongo driver on custom groups above the document level
- Fixes `IdentifierData.custom_group_data` being set to the wrong thing in `BaseDriver.import/export_data` (although this was an inconsequential bug)

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-24 12:55:49 +10:00
Michael H
6ae3040aac [Filter] Make name filtering behavior consistent (#2794)
- Uses the updated filter check
  - This is also a performance gain on large servers with filter names
  enabled.
2019-06-23 16:39:24 +10:00
aikaterna
065396abab [Audio] Change Lavalink.jar version checking (#2785) 2019-06-23 14:10:31 +10:00
Toby Harradine
1804314f45 [Audio] Improve Lavalink download/connection exception handling (#2764)
- More errors will be logged to the console with clearer messages when something goes wrong
- Downloading the Lavalink Jar will abort after 5 failed attempts. The connect task will also abort if an unhandled exception occurs whilst downloading or connecting to Lavalink. After this occurs, instead of responding "Connection to Lavalink has not yet been established" to commands, the bot will respond "Connection to Lavalink has failed". This has no effect on other commands which don't involve connecting to Lavalink (e.g. settings commands).
- Logs this message when Lavalink jar is successfully downloaded: `Successfully downloaded Lavalink.jar (<x> bytes written)`
- Uses [`tqdm`](https://github.com/tqdm/tqdm/) to display a progress bar whilst downloading Lavalink.jar.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-23 14:09:59 +10:00
DevilXD
ff894ecbe7 [Docs] Add warning about PATH on Windows (#2791) 2019-06-23 13:55:48 +10:00
jack1142
0bf54fae52 [Admin] Convert set to list because set is not JSON serializable (#2792) 2019-06-23 13:33:27 +10:00
MeatyChunks
3c66c602f6 [Help] Prevent spamming when a user blocks the bot (#2790)
Currently the bot sends an error message for each page of help, this should make it only send once.
2019-06-22 01:41:11 -04:00
aikaterna
e854716236 [Audio] Fix for escape character prefixes (#2789) 2019-06-21 22:19:57 -04:00
jack1142
beb16b81a9 docs(config): wrong code example in Value.__call__ (#2780)
fix #2775
2019-06-21 21:24:23 -04:00
jack1142
57d5c0870a style(modlog): Phrase information about reason command better (#2777) 2019-06-19 08:40:25 -04:00
Neuro Assassin
9d008d587a [V3 Core] Add checks to [p]command (#2770)
* Add checks to [p]command

* Change to privilege level
2019-06-18 21:35:56 -04:00
DiscordLiz
804d6eecea [Core] Fix DictConverterer error handling format (#2776) 2019-06-18 21:25:49 -04:00
Toby Harradine
cc927248f0 Revert custom Bot.process_commands behaviour (#2768)
This still preserves the new event, which was a welcome change. However, context still needs to be invoked when a command isn't found, so `on_command_error` can still catch `commands.CommandNotFound`.

Fixes broken fuzzy help.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-12 18:27:47 -04:00
Toby Harradine
d133598d80 [Audio] Fix OSErrors on mixed-filesystem environments (#2765)
Resolves the issue outlined [here](https://github.com/Cog-Creators/Red-DiscordBot/issues/2682#issuecomment-500185495).

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-06-09 16:04:13 +10:00
Michael H
682ee1a459 [Docs] Fixes the docs for commands.Command.error (#2760)
* docfix

* inline code for sphinx, not a ref
2019-06-04 20:21:30 +02:00
El Laggron
61b5730c48 [V3 Core] More features for the bot invite URL (#1847)
* Add inviteset group command

* Fix errors

* Fix line break

* Remove user bot support

* Fix docstrings line breaks

* Remove embed specific formatting

* Remove invite redirect

* Add self argument to _can_get_invite_url

* Remove unused import

* fix errors related to classes + double help

* Removed self bot support
2019-06-03 11:46:13 -04:00
DevilXD
463d8d6306 [Commands] Added optional default_unit to the TimedeltaConverter (#2753)
* Added default_unit to the TimedeltaConverter

* Fixed a possible converter crash

* Updated get_timedelta_converter to incorporate the new kwarg
2019-06-03 07:46:55 -04:00
aikaterna
da40511306 [Audio] Remove blacklisted architectures (#2755) 2019-06-02 18:56:41 -04:00
aikaterna
c2195ec576 [Audio] Add bot permission checks (#2756) 2019-06-02 18:55:44 -04:00
Michael H
16443c8cc0 [CI] Improve automated checks (#2702)
* same stuff, but with some more spurious error supression

* fix issue in permissions found in this

* fix a few more spurious errors

* fix another issue

* semi-spurious error fixes

* .

* formatting

* move this to properly log

* distutils import + virtualenv

* more fixes
2019-06-02 19:42:57 +02:00
Bakersbakebread
9116cd02e6 [Core] Pass exceptions on Cog Load to user. (#2754) 2019-06-02 11:57:43 -04:00
Flame442
652d9fe950 Update version number to 3.1.2 🎉 (#2751) 2019-05-31 17:58:04 -04:00
Ryan
e956e6e320 [Streams] Ignore lack of rerun info where not available (#2748) 2019-05-31 16:41:23 -04:00
aikaterna
2e58922d01 [Audio] Lavalink jar bump (#2750) 2019-05-31 16:26:20 -04:00
Michael H
33b7652b62 [Help] Detatch menu usage into a task (#2725)
* [Help] Detatch menu usage into a task

  - This resolves #2712
  - This is a minor API change. Conceptually, the difference is minor in
  nature `bot.send_help_for` returns when help has been sent, however
  this can now be prior to when the help menu (if one is in use) is
  closed.

  - This should not be considered breaking as there is and has been a
  a warning about this file's APIs being still up for unannounced modifications
  No developers should be currently relying on this behavior.

* operator precendence
2019-05-31 21:41:04 +02:00
Michael H
0e9086ca1f [Core] Fix error handling in loading extensions. (#2688)
* fixes 2687

* raise the right exception
2019-05-31 21:38:44 +02:00
Michael H
3ca2a9af28 [Help] Fix long cog helps (#2730)
* [Help] Fix long cog helps

  - Why do people thing a category help of over 250 characters is more
  useful than putting the help in relevent commands?!

* toss an MD fix in here too I guess
2019-05-31 21:37:50 +02:00
DiscordLiz
e7b615d921 [Commands] Adds support for non interactive use (#2746)
Adds assume_yes to context
Changes cleanup's 100+ check
Changes cog update.
2019-05-31 05:54:27 -04:00
Matan Kushner
2cb6e98092 [Readme] Anilist → AniList (#2747) 2019-05-31 05:39:14 -04:00
DiscordLiz
1ccc441aab [Core] Make contact use configured destinations (#2743)
* Make contact use configured destinations
2019-05-31 05:32:26 -04:00
DiscordLiz
8ddc5aa63e [Core] Add commands to manage owner notification destinations. (#2745) 2019-05-31 05:13:36 -04:00
DevilXD
f894b62bfe [CustomCom] Fixed KeyError on specific message edge-case (#2739)
fixes #2679
2019-05-29 22:36:32 -04:00
DevilXD
aac9369f3f [Mod] Add [p]slowmode (#2734)
Makes use of new timedelta converter
2019-05-29 10:01:27 +10:00
DiscordLiz
1581604f71 Add a timedelta converter (#2736)
* Add a timedelta converter

This reuses a lot of logic from @mikeshardmind 's scheduler cog with permission

It adds a timedelta converter
It keeps it generalized as requested
It keeps the function available for non converter use as requested

* Handle feedback

* style fix
2019-05-28 12:43:55 -04:00
DiscordLiz
56161c0a88 Send to owners (#2738)
* Add bot.send_to_owner

resolves #2665

Adds some basic methods and config entries.

Does not add commands for modifying this yet.

* Use send_to_owners in events

* handle feedback
2019-05-28 12:37:02 -04:00
DiscordLiz
242df83785 [Image] Fix some issues in strings (#2737) 2019-05-28 02:47:44 -04:00
Stonedestroyer
2338ad8223 [Image] Fix giphy api (#2653)
* Remove hardcoded Giphy key.

Allows you to set your own Giphy API key.

* Run black

* Fix Giphy name

On their website it's spelled GIPHY.
2019-05-27 21:04:15 -04:00
PredaaA
b4f4e080af [core_commands] Using humanize_timedelta for [p]uptime command (#2735)
* Update core_commands.py
2019-05-27 20:39:36 -04:00
Flame442
132545e057 [Audio] Clarity changes for the API info commands (#2733)
* Clarity changes for the API info commands

* Remove unnecessary f-string
2019-05-27 20:27:56 -04:00
Michael H
68590dfdb8 [Core] Improve API token converter (#2692)
* improve api converter

* make usage more clear
2019-05-25 23:58:14 +02:00
Neuro Assassin
2e271d695b Add respectable aliases for consistency (#2731)
* Add respectable aliases for consistency

* General command name for alias.py

* Forgot one for alias

* General command for filter

* General command for warnings

* Whoops

Resolves #1749
2019-05-24 18:22:17 -04:00
Stonedestroyer
cd745d35c2 [Core] Add debug info command (#2728)
Shows useful debug information for debugging.
2019-05-24 17:55:48 -04:00
Flame442
6928e2aca2 Fixes some issues with API help commands (#2729)
* Fixes some issues with `[p]streamset youtubekey/twitchtoken`

Lots of general formatting bugs and clarity issues.

* General formatting bugs and clarity issues
2019-05-24 17:52:43 -04:00
Kowlin
49e86614c5 Adding support for GitHub Funding (#2732)
(I'm lazy, I know I should use a fork... sorry <3)
2019-05-24 20:10:55 +02:00
jack1142
51dcf65fd7 [Downloader] Fix problem with copying directory tree. (#2690)
* fix(downloader): clear paths in `distutils.dir_util._path_created` before copying tree

fix #2685

* style(downloader): add comment about PR
2019-05-23 03:08:14 -04:00
Michael H
c6c0165214 [Help] Special case fixing for empty docstring (#2722)
Resolves #2415
2019-05-22 18:22:31 +10:00
PredaaA
342935de49 [Trivia] Remove bold on a box (#2716) 2019-05-21 17:50:51 -04:00
jack1142
ced5bb4631 docs(install): remove information about voice extra (#2717) 2019-05-21 17:49:25 -04:00
DiscordLiz
0a832cee9c [Utils] Allow functools.partial use with menu (#2720) 2019-05-21 16:52:44 -04:00
Brenden Campbell
1cfce8b72c Fix minor typo (#2713) 2019-05-20 13:24:05 -04:00
jack1142
cdcde26dfc [Setup] Fix: wrong var used for instance data in remove_instance (#2709) 2019-05-19 10:13:01 -04:00
Fixator10
1ffb79f852 [events] send help on BadUnionArgument exception (#2707)
* [events] send help on BadUnionArgument exception

* Update redbot/core/events.py

Co-Authored-By: Michael H <michael@michaelhall.tech>
2019-05-19 06:14:12 -04:00
Michael H
644aaf0c0e [Help] Continuing work and bug-fixes (#2676)
* [Help] Add settings for various things

  - Fixes a small issue in a previously not-exposed logic path
  - Fixes an issue with denied commands help invocation
  - Adds some global usage settings

* remove outdated comment

* improve intent of strings

* added punctuation

* Add DM forbidden handling

* use a slightly different method for shortening embed width specifically
2019-05-18 06:54:02 -04:00
Michael H
cdea03792d [Streams] Fix NameError (#2699)
- fixes #2696
 - My fault for just looking at the github diff and seeing the logic fix
 on this one, without verifying the name validity in surrounding
 context. (see my review in #2679)
2019-05-18 00:59:26 -08:00
Flame442
b190e7417e [Downloader] Adds ctx.typing() to [p]pipinstall (#2700) 2019-05-17 21:40:42 -04:00
zephyrkul
7dd3ff7c8d [Core] Strip commas in user input for load, reload, unload (#2693)
rstrip commas, closes #2695
2019-05-16 23:54:17 -04:00
palmtree5
21a253103e [V3 Streams] fix an issue with stream commands not dealing with reruns (#2679) 2019-05-16 22:28:26 -04:00
El Laggron
db3fb29b30 [docs] Fix typo (#2691) 2019-05-16 17:03:09 -04:00
Neuro Assassin
c5d2ae5831 Mention voice channel in [p]userinfo (#2680)
* Mention voice channels, due to new discord update

* Add ID part back in, as Discord doesn't have copy ID for it yet
2019-05-16 15:12:09 +02:00
jack1142
9d0ca00f89 [General]: shorten descriptions properly with disabled embeds in urban (#2684)
fix #2683
2019-05-16 02:06:46 -04:00
DevilXD
79e5d2c9d7 Fixed command doc formatting in code blocks (#2678) 2019-05-15 20:01:02 -04:00
Fixator10
3a62d392b4 [Mod] [p]names utilize consume-rest (#2675)
Currently, `[p]names` requires quotes, if "user" arg contains spaces
2019-05-15 10:33:10 -04:00
Michael H
f2858ea48c [Core] Fix update notification (#2677)
removes a problematic await
2019-05-15 16:31:00 +02:00
Michael H
3c78fb420b [Help] Fixes some issues with fuzzy help (#2674)
* Fixes some issues with fuzzy help

 - also cleans up some name shadowing which wasn't causing issues
 (curently)

* ver

* style
2019-05-14 23:52:06 -07:00
Michael H
2d22ee7ccc 🎉 (#2673) 2019-05-14 21:30:52 -08:00
Michael H
9a243a1454 [Utils] Tools for marking things unsafe for general use (#2326)
* Tools for marking things unsafe for general use

* I'm facepalming so much...

Actually, make the two do something different 
instead of getting distracted writing different docs for both based on intended usage.

* local scopes mmkay + tests

* Move file to adress feedback

* typo fix

* Update __init__.py

* Fix issue with exported names in __init__

* changelog
2019-05-14 20:56:41 -07:00
Will
165e40c0db [Mongo] Unescape dict keys when rebuild (#2671)
* Unescape dict keys when rebuilding

* update pipfile

* Really update pipfile now
2019-05-14 23:50:51 -04:00
Michael H
7f1c2b475b [Core] Help Redesign (#2628)
* [Bot] Support new design

* [Context] use the new help in `ctx.send_help`

* [Commands] Update Cog and Group for help compat

- Removes a trap with all_commands, this isn't a good way to check this
- Adds a help property
- Fixes command parsing in invoke

* Redesigns red's help

* handle fuzzy help

* style

* handle a specific ugly hidden interaction

* fix bot-wide help grouping

* changelog

* remove no longer needed -
2019-05-14 20:49:51 -07:00
palmtree5
a5f38fa6e6 Add my 3.1 contributions (#2670) 2019-05-14 19:38:18 -08:00
Michael H
598968bf74 [Audio] Lavalink jar bump (#2669) 2019-05-14 20:35:09 -07:00
Will
ee661b0a9f [Docs] Add release notes for major functionality changes and instructions (#2668)
* Add release notes for major functionality changes and instructions

* Update docs/changelog_3_1_0.rst

Co-Authored-By: Michael H <michael@michaelhall.tech>
2019-05-14 20:30:17 -07:00
Michael H
7d7b3413bc Add contributions to changelog (#2666)
* Put some stuff in the changelog

* explicit note on d.py ver
2019-05-14 23:07:22 -04:00
Flame442
7400008384 Adds [p]datapath to print the bot's data path (#2652)
* Add `[p]datapath` to print the bot's datapath

* Adds 2652
2019-05-14 01:05:52 -04:00
TrustyJAID
4e564e8ce4 [V3 Economy] lookup users from the guild instead of using stored names (#2637)
* [V3 Economy] lookup users from the guild instead of using stored names

* Make user ID only appear when owner calls the leaderboard and the user is not in the guild also black formatting

* Slight optimizations in formatting and fix error when no banks exist
2019-05-14 00:52:08 -04:00
aikaterna
8691fdc533 [Docs] Update Mac install instructions for Java (#2663) 2019-05-14 06:46:30 +02:00
Flame442
7d103f1d32 [Docs] Typo fix (#2658) 2019-05-14 00:34:19 -04:00
Kowlin
3de1a265ea [Core] Added co-owners to outdated message warnings (#2664)
* Added co-owners to potentially DMd users

* Fetch the cached of every guild, see comments of #2664

* Ensure owners can be DM'd.

* Refactoring try block.
2019-05-14 00:33:05 -04:00
entchen66
3b6d4d9df6 [Cleanup] Fix for 3.1 (#2661)
cleanup before use get_message wich isn't possible anymore in dp 1.0.1. so I changed it to fetch_message
2019-05-13 05:39:28 -04:00
Michael H
e96e5374b4 Update intershpinx refs (#2660) 2019-05-13 12:02:57 +10:00
Toby Harradine
5c91709ac8 Remove vendoring note in README 2019-05-10 10:34:17 +10:00
NIXC
96a91b9d0e [Audio] Add ability to skip to a specified track by number (#2584)
* add skip to track functionality

* formatting

* Change some strings

* missing return, variable naming

* add variable names for translations

* change handling of skipping 1 track

* minor semantic adjustments

skiptotrack -> skip_to_track
2019-05-08 01:34:37 -04:00
aikaterna
65b88c09fb [Audio] Update for Red-Lavalink 0.3.x (#2547)
* [Audio] Update for Red-Lavalink #55

* Update setup.cfg

* Catch all the exceptions

* Update version range on Red-Lavalink

* Catch excepts on Spotify tracks/playlist upload

* No prefix needed
2019-05-08 00:56:40 -04:00
Flame442
80ff07f53d [Core] Fix two typos in API Token Converter (#2650) 2019-05-07 16:12:08 -04:00
Flame442
4f6485d1f9 [i18n] Changes default locale value from en to en-US (#2642)
* Changes default locale value to `en-US`

* Added this PR

Also fixed slight inconsistency in what is in a code block (if this is merged)
2019-05-06 12:19:57 -04:00
Flame442
d1c903f36f Fix grammar mistake by changing "to large" to "too large" (#2646) 2019-05-06 12:18:57 -04:00
Kowlin
516ebcfa2b Fixed missing imports. (#2643)
* Added changelog

* Fixed missing imports.
2019-05-03 10:22:06 -04:00
Kowlin
9414de24d4 [Mod] Added voice kicking. (#2639)
* Added voice kicking.

* Reversed exceptions.

* Lets use a check that works for this task 👀

* Update abc.py

* Black formatting
2019-05-03 10:08:25 -04:00
Michael H
16990071cb [V3 core] on_message_without_command dispatch (#2338)
* conveinience and performance addition with new dispatch

* I promise, I read the specs first.

* Really, I read the fucking specs.
2019-05-02 16:25:35 -04:00
James
52433d253f String format failure when set invoked without subcommand (#2638) 2019-05-02 15:44:33 -04:00
Will
bb6327d969 [Audio] Fix architecture blacklisting (#2634) 2019-04-30 12:32:16 -04:00
Toby Harradine
476f441c9b [Audio] Refactor internal Lavalink server management (#2495)
* Refactor internal Lavalink server management

Killing many birds with one stone here.
- Made server manager into class-based API with two public methods: `start()` and `shutdown()`. Must be re-instantiated each time it is restarted.
- Using V3 universal Lavalink.jar hosted on Cog-Creators/Lavalink-Jars repository.
- Uses output of `java -jar Lavalink.jar --version` to check if a new jar needs to be downloaded.
- `ServerManager.start()` won't return until server is ready, i.e. when "Started Launcher in X seconds" message is printed to STDOUT.
- `shlex.quote()` is used so spaces in path to Lavalink.jar don't cause issues.
- Enabling external Lavalink will cause internal server to be terminated.
- Disabling internal Lavalink will no longer reset settings in config - instead, hard-coded values will be used when connecting to an internal server.
- Internal server will now run both WS and REST servers on port 2333, meaning one less port will need to be taken up.
- Now using `asyncio.subprocess` module so waiting on and reading from subprocesses can be done asynchronously.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Don't use shlex.quote on Windows

Signed-off-by: Toby <tobyharradine@gmail.com>

* Don't use shlex.quote at all

I misread a note in the python docs and assumed it was best to use it. Turns out the note only applies to `asyncio.create_subprocess_shell`.

Signed-off-by: Toby <tobyharradine@gmail.com>

* Missed the port on the rebase

* Ignore invalid architectures and inform users when commands are used.

* Style fix
2019-04-29 21:31:28 -04:00
Neuro Assassin
c79b5e6179 [Core Commands] Add patch for invalid path with [p]backup (#2626)
* Add patch
2019-04-29 19:38:36 -04:00
aikaterna
c1bee3fee5 [V3 Audio] Add settable path for external Lavalink (#2480) 2019-04-29 18:34:09 -04:00
aikaterna
d786103d8d [Audio] Set cwd for localtracks on playlist start (#2534) 2019-04-29 18:28:44 -04:00
Neuro Assassin
b3850f6bb7 [Cleanup] Add [p]cleanup between (#2617)
* Add `[p]cleanup between`

At the moment, only deletes the messages in between, does not delete the messages specified when running the command.

* Create converter for message IDs; remove f-strings; use converters in a few extra commands

* Sacrifice to the style gods
2019-04-29 15:55:23 -04:00
PredaaA
e3db3c0341 [Core_commands] Fix some missing i18n strings (#2631)
* Update core_commands.py

* Update core_commands.py
2019-04-29 15:21:58 -04:00
jack1142
1ce3bc2870 [Downloader] Suppress commands.ExtensionNotLoaded for bot.unload_extension() call (#2625)
fix(downloader): suppress `commands.ExtensionNotLoaded` for `bot.unload_extension()` call (#2625)
2019-04-29 12:42:36 -04:00
jack1142
24ac111782 [V3 Downloader] Allow to specify minimum and maximum bot version in info.json (#2605)
* feat(downloader): add `min_bot_version` and `max_bot_version`

Adds actually working way of specifying minimum and maximum bot version and removes not working
`bot_version`

BREAKING CHANGE: - removal of `bot_version` attribute in `Installable`

* test(downloader): `Installable` tests fix for new bot version attributes

* docs(changelog): added changelog entries for this PR
2019-04-29 12:33:49 -04:00
Flame442
07f127ffe4 [Docs] Changelog entries for contributions by Flame (#2627) 2019-04-29 12:06:02 -04:00
Will
c58f566047 [CustomCom] Update command generator to work with dpy update (#2616)
* I think this works?

* Let's do it

Co-Authored-By: tekulvw <tekulvw@users.noreply.github.com>
2019-04-25 12:31:58 -04:00
Tyler Adam
f28d6dff32 [Streams] Add ability to exclude rerun streams from alerts (#2620)
* [Streams] Add ability to exclude rerun streams from alerts

* [Docs] Changelog entries for contributions by EgonSpengler

* Changelog entry for #2620 [Streams] Ignore Reruns In Alerts
2019-04-25 11:58:58 -04:00
Neuro Assassin
7e49ce9a7b [Mod] Remove error when unbanning an unknown user (#2619)
Fix for #2542
2019-04-25 11:57:26 -04:00
Will
59115cd1c7 [Commands] Fix built in check decorator order affecting permissions (#2621)
OOOoooooOOOoOOOooOoOOOOoooo
2019-04-25 11:51:02 -04:00
PredaaA
1d93fe4cf9 Update changelog_3_1_0.rst (#2615) 2019-04-25 05:44:34 +02:00
aikaterna
3f1f7640cb [Docs] Changelog entries for contributions by aikaterna (#2614) 2019-04-24 20:55:32 -04:00
TrustyJAID
83ee7c5e92 [V3 Dev] Fix repl command sanitize api keys (#2613) 2019-04-24 20:54:50 -04:00
jack1142
b95ddf18ba [Docs] Changelog entries for contributions by jack1142 (#2612)
* docs(changelog): [Mod] Allow admin to choose amount of repeats for "deleterepeats" #2437

* docs(changelog): Spelling correction of method name in Tunnel #2496

* docs(changelog): Tunnel fix - When tunnel closes, message should be sent to other end #2507

* docs(changelog): [V3 Downloader] Tell user how to load the cog after [p]cog install #2523

* docs(changelog): [V3 Audio] If bot has move members perm, it can join to user-limited channels #2525

* docs(changelog): [Trivia] Fix of dead image link (world flags) #2540

* docs(changelog): [V3 Test] Make sure that trivia test will use utf-8 encoding #2565

* docs(changelog): [V3 Core] Print actual version, when `--version` flag is used #2567

* docs(changelog): [V3 Downloader] Stop including subpackages in cog list #2590

* docs(changelog): [V3 Downloader] Uninstall multiple cogs #2592

* docs(changelog): [V3 Downloader] Always remove cog from installed in `[p]cog uninstall` #2595
2019-04-24 20:06:51 -04:00
Will
61d255726c [Docs] Add initial changelog document (#2611)
* Add initial changelog document

* add initial links

* oops
2019-04-24 17:08:55 -04:00
Will
05e2851c67 [Config] Migrate UUID for JSON backend (#2604)
* Migrate UUID for JSON backend

* Interesting...

* black

* Simplify UUID creation
2019-04-24 16:03:27 -04:00
Will
f20a174038 Fix the check to raise the correct message (#2603) 2019-04-24 21:24:31 +02:00
Michael H
ec108e7c02 [Alias] cleanup issues missed with #2587 (#2610) 2019-04-24 11:43:47 -04:00
Michael H
ad114295e7 Discord.py dep update 3.1 (#2587)
* Dependency update

discord.py==1.0.1
websockets<7

[style]
black==19.3b0

[Docs]
jinja==2.10.1
urllib3==1.24.2

Changes related to breaking changes from discord.py have also been made
to match

As of this commit, help formatter is back to discord.py's default
2019-04-23 21:40:38 -04:00
aikaterna
0ff7259bc3 [Audio] DJ role should ask for a role (#2606) 2019-04-23 18:41:46 -04:00
TrustyJAID
49af94334e Add Central API Key Documentation (#2574) 2019-04-23 23:51:37 +02:00
Flame442
22c318fda3 [Core] Adds a check to [p]set locale (#2553)
* Adds a check to [p]set locale

Fixes #2552
I would like a little bit of feedback on this change.
- Right now, `locale_name` is case sensitive. Should that remain case sensitive or should I allow it to accept it case insensitively?
- I made the invalid locale string an i18n string, however I don't know the process for how those are supposed to be made or if that will break anything. Should that remain an i18n string or should I make it a normal string?

* Case insensitivity and explicit en-US

-`[p]set locale` is now case insensitive
-`en-US` added to `[p]listlocales` instead of only existing in `[p]set locale`'s help text

* Remove spacing
2019-04-23 17:43:50 -04:00
jack1142
da5fd7699e [V3 Downloader] Always remove cog from installed when using cog uninstall (#2595) 2019-04-23 14:26:16 -04:00
Michael H
3d498a74ba [Docs] Update docs for redbot.core.humanize_list (#2598)
closes #2546
2019-04-23 14:16:15 -04:00
jack1142
460b4bb3f2 [Mod] Allow admins to choose amount of repeats for "deleterepeats" (#2437)
* feat(mod): configurable amount of repeats for "deleterepeats"

resolves #2267

* fix(mod): check user input instead of changing it if it's invalid

* fix(mod): only purge cache when argument is valid

* perf(mod): fetch repeats from config only when guild not in cache
2019-04-23 10:01:20 -04:00
Tyler Adam
47723cee33 [Mod] make [p]ban days parameter optional as per the doc (#2602) 2019-04-23 09:45:28 -04:00
Tyler Adam
a1b03be27e Add support for custom stream alert messages per guild (#2600) 2019-04-23 02:57:46 -08:00
Michael H
012d99c05c [Utils] Better error handling for humanize_list (#2597) 2019-04-22 22:34:38 -04:00
jack1142
2c8a425f87 [V3 Downloader] Uninstall multiple cogs (#2592)
* feat(downloader): Uninstall multiple cogs

* refactor(downloader): Put everything in one message
2019-04-22 20:17:30 -04:00
Flame442
8555f8c28c [Downloader] Pretties up the output when libraries fail to install (#2576)
* Pretties up the output when libraries fail to install

* Stupid double quote bullshit

* Added jack1142's suggestion

* I will never satisfy the eldritch being named black
2019-04-22 20:15:26 -04:00
jack1142
46413c2c52 [V3 Downloader] Stop including subpackages in cog list (#2590)
Before this change, `Repo.available_modules` would also contain subpackages, which is unintended
2019-04-22 20:07:52 -04:00
TrustyJAID
eaeaf9dd69 [V3 Streams] Change twitch and youtube top level commands (#2479) 2019-04-22 20:06:50 -04:00
zephyrkul
ee11d7da63 [V3 Audio] Cancel emptydisconnect when no longer alone (#2519)
* [audio] cancel disconnect when no longer alone

* [audio] fix modifying while iterating
2019-04-22 20:05:37 -04:00
NIXC
0ac93aacd5 [V3 Economy] Add default cooldown to slots (#2561)
* Add default cooldown to slots

To prevent abuse

* slight boost in time

1 second actually doesn't help, needs a bit more.
2019-04-22 19:44:05 -04:00
TrustyJAID
691d8af26d [V3 Warnings] Utilize modlog cases (#2471)
* [V3 Warnings] Utilize modlog cases

This update utilizes modlog cases for warnings and slightly improves usage of custom warnings if enabled.

* remove BadArgument error response

* Utilize Optional and consume-rest for points and reason

* black format

* Remove unnecessary imports, cleanup error handling, and improve docstrings
2019-04-22 19:34:36 -04:00
TrustyJAID
87c66b2423 [V3 Admin] Fix errors when hierarchy issues are raised (#2498)
* Fix addrole mentioning who we're trying to add the role to

* More things are broken, huh

* formatting...
2019-04-22 19:25:44 -04:00
aikaterna
005123a371 [Audio] Fix for playlist queue when not playing (#2586) 2019-04-22 19:17:44 -04:00
aikaterna
bb8ce43cc0 [Audio] Track search and append fixes (#2591)
* [Audio] Track search and append fixes

* Appeasing the style gods
2019-04-22 19:17:17 -04:00
palmtree5
13611e34d2 Fix extras in launcher (#2588)
Now non-existent voice extra was still hanging around in the launcher while the style extra was never added in
2019-04-22 14:46:07 -08:00
Neuro Assassin
b8190c44a8 [Dev] Sanitize API tokens in debug and eval (#2585)
* Sanitize API tokens in debug and eval

* Not sure what happened there
2019-04-22 18:43:02 -04:00
Will
95d5ec5f0e [Setup] Fix the mongo name to create instances using new driver (#2594)
* oops

* damn you
2019-04-22 18:33:52 -04:00
zephyrkul
874204bf18 [mongo setup] utilize getpass (#2593) 2019-04-21 07:04:08 -08:00
Will
6c296a9a17 [V3 Setup] Overhaul backend conversion process through setup scripts (#2579)
* swap to click for setup

* Initial changes

* expose some stuff to allow for per-driver optimizations

* overwrite base config

* add red log

* add one print juuuust in case

* fix this

* thanks kowlin

* damn

* oops

* fix thing

* partial commit

* Working mongo -> json conversion, it sucks tho

* remove unused line

* Wrote initial optimized json importer

* optimized json importer

* remove useless line

* update mongo to json converter

* lets try writing the correct entry

* oops

* style fix

* add some garbage data filters going from old mongo to json

* ignore garbage data in mongov2 conversions

* simplify code a bit and add a completion message

* missed one

* Update pipfile lock

* Lock click version
2019-04-20 20:10:44 -04:00
PredaaA
ad06b0e723 [Audio] Fix issue on audiostats command when more than 20 servers to display (#2533)
* Update audio.py

* Fix of pages counter.
2019-04-18 12:12:16 -04:00
Will
0652dd344b [V3 Mongo] Correct dictionary rebuilding process for global all case (#2581) 2019-04-13 15:51:49 -04:00
Will
8b3c3e89e9 [V3 Mongo] Fix all behavior (#2580) 2019-04-13 15:24:50 -04:00
Will
c82ac5ae68 Add some errors for backend conversions and only allow MongoV2 creation (#2570)
* Add some errors for conversions and only allow mongoV2 creation

* Add another message

* Fixed message to be more clear
2019-04-10 20:42:28 -04:00
jack1142
2776db0cf9 [V3 Core] Print actual version, when version flag is used (#2567) 2019-04-10 19:32:20 -04:00
Will
ba19179e4f [V3 Config] Record custom group information using cog_add event (#2550)
* Do things differently

* Uncomment critical lines

* Reduce, reuse, recycle

* Check groups on all new config objects after a cog loads

* I don't know why this is failing now or why we need the global keyword

* gotta fix this too
2019-04-09 22:02:50 -04:00
jack1142
e347ffa336 Bot can join voice channel with user limit if it has move members perm (#2525) 2019-04-09 20:33:19 -04:00
kennnyshiwa
c85af62401 Fix message when user hits max credits (#2563)
* Fix message when user hits max credits

Fixes the error message when a users issues the payday command when having max credits

* Update economy.py

Changed message when user hits max payday and bank is global to match message when bank is per server

* Update economy.py

made statements match
2019-04-09 18:54:44 -04:00
aikaterna
39b64b7570 [Audio] Fix for localtrack playing (#2557) 2019-04-09 17:13:57 -04:00
aikaterna
56b220b92e [Audio] Fix for prev command display (#2556) 2019-04-09 17:10:25 -04:00
jack1142
972fbecc94 [V3 Trivia] Make sure that test will use utf-8 encoding (#2565) 2019-04-09 17:03:34 -04:00
Michael H
136e781c7f Kill DataConverter (#2554)
* Kill DataConverter

* remove the tests
2019-04-09 17:01:04 -04:00
Will
0852d1be9f [V3 Config] Require custom group initialization before usage (#2545)
* Require custom group initialization before usage and write that data to disk

* Style

* add tests

* remove custom info update method from drivers

* clean up remnant

* Turn config objects into a singleton to deal with custom group identifiers

* Fix dumbassery

* Stupid stupid stupid
2019-04-04 21:47:08 -04:00
Will
fb722c79be [V3 ModLog] Change register_casetypes behavior (#2551)
* Ignore runtime error in register_casetypes

* Fix documentation
2019-04-04 18:59:14 -04:00
jack1142
c63d069f69 [Trivia] Fix of dead image link (world flags) (#2540)
* New image link for Sao Tome and Principe

Current link is dead

* Someone didn't pay attention on geography lessons
2019-04-03 11:40:20 -04:00
Will
1cd7e41f33 [V3 Config] Update Mongo document organization to bypass doc size restriction (#2536)
* modify config to use identifier data class and update json driver

* move identifier data attributes into read only properties

* Update mongo get and set methods

* Update get/set to use UUID separately, make clear work

* Remove not implemented and fix get_raw

* Update remaining untouched get/set/clear

* Fix get_raw

* Finally fix get_raw and set_raw

* style

* This is better

* Sorry guys

* Update get behavior to handle "all" calls as expected

* style again

* Why do you do this to me

* style once more

* Update mongo schema
2019-04-03 09:04:47 -04:00
zephyrkul
d6d6d14977 [V3 Alias] Customize Parameters (#2455)
* [alias] custom parameters

Signed-off-by: zephyrkul <zephyrkul@users.noreply.github.com>

* [alias] quoted words remain quoted

Signed-off-by: zephyrkul <zephyrkul@users.noreply.github.com>

* [alias] fix no-parameter aliases

Signed-off-by: zephyrkul <zephyrkul@users.noreply.github.com>

* [alias] remove unneeded error dispatch

it was expensive and did nothing anyway from my own testing
2019-04-02 23:08:28 -04:00
PredaaA
82cda4b57a Delete cooldown messages when expired (#2469) 2019-04-02 23:06:30 -04:00
Toby Harradine
301c800319 Logging enhancements and cleanup (#2502)
* Logging enhancements and cleanup

- Removed debug log messages every time `Config.get_conf` is used or a JSON file is read/saved. The basic configuration is now logged once with DEBUG when the bot starts up instead.
- Changed logging output format to reverse date order, include seconds, and use the logger's name instead of the module, function and line number.
- Log files are now kept in the `DATAPATH/core/logs` directory. Each time Red is restarted, a new log is created, and the old ones renamed in a rotating fashion. There can be a maximum of 9 logs in total.
- Each log file now has a smaller max size of 500KB before it will be split into multiple parts. There are also a maximum of 9 parts of each log.
- Discord.py logger now uses the same output formatter as red's loggers
- Moved logging setup code into `redbot.logging` module.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Reformat

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Implement discussed changes

- We maintain a red.log over multiple runtimes, alongside a latest.log and previous.log for individual runtimes.
- Naming convention changed a bit. E.g. when latest.log is just one part, it will be named latest.log. When it becomes two parts, they will both be named latest-part1.log and latest-part2.log.
- Rotation direction is reversed. This means as the files end up being named in chronological order.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-04-02 22:58:34 -04:00
DiscordLiz
30af83aa6a [Permissions] Allow for multiple IDs in permissions rule commands. (#2448)
Use `commands.Greedy` to apply multiple rules at once.

closes #2214
2019-04-02 22:53:07 -04:00
jack1142
0f9501f93a Tunnel - Send message after close (#2507) 2019-04-02 22:50:01 -04:00
Michael H
466b2b82d0 Fix localwhitelist/localblacklist add/remove (#2531) 2019-04-02 22:46:12 -04:00
Michael H
8ab39512d9 [Filter] Performance increases. (#2509)
* [Filter] Performance increases.

The filter was already using re to split words, this just does the entire search in re instead.

A further improvement to this would cache patterns used and update them if the wordlist changes.

* Add a pattern cache

* exit on no-words

* formatting pass

* keep the return type consistent, even though this doesnt break core since this is available to cogs

* ...

* Quit being an idiot

* Slight further improvements, a fix, and restructure

Moved actual set creation out of the inner portion.
Reduced config lookups in case of no filter.
Fixed channel wordlist fetching.

* I really should go back to using a pre-commit hook for the style stuff
2019-04-02 22:42:13 -04:00
jack1142
e08e95c04e [V3 Downloader] Tell user how to load the cog after [p]cog install (#2523)
* tell user how to load the cog after install

* use code block
2019-04-02 22:35:21 -04:00
FixedThink
e7b1fa5ab5 [V3 Trivia] Update "World" trivias to reflect legislative changes (#2526)
* Update worldmap.yaml

* Update worldflags.yaml

* Update worldcapitals.yaml
2019-04-02 22:33:40 -04:00
Flame442
14a2f98418 [Docs] Adds self recommendation to cog_data_path (#2539)
This change adds the help text of "If calling from a command or method of your cog, this should be self." from `bundled_data_path` to `cog_data_path`. This bit of text can help people who are unsure of what a "cog instance" is to understand how to use `cog_data_path`.
2019-04-02 22:24:20 -04:00
aikaterna
de7d08ee75 [Audio] Match v2 behavior for channel change (#2521)
* [Audio] Match v2 behavior for channel change

* Use move_to instead of connect
2019-04-02 22:22:57 -04:00
aikaterna
2a486cad66 [V3 Audio] Playlist info improvements (#2274)
* [V3 Audio] Playlist info improvements

* Add pagify import, reformat for Black

* Change from code block to embed with links
2019-04-02 21:48:21 -04:00
aikaterna
80fc639480 [V3 Audio] Queue clean and queue clear addition (#2476)
* [V3 Audio] Queue clean and queue clear addition

* Use DJ role and existing checks inst. of mod/admin

* Remove unneeded .format()
2019-04-02 21:12:55 -04:00
Michael H
c7608aeb17 [V3 Mod] Use a composite class for mod (#2501)
* [V3 Mod] Use a composite class for mod

This turns mod.py into acomposite class

I've split things in this up based on purpose, including `movetocore`

`movetocore` is a set of things which likely belong in the core bot and
not relying on mod being loaded.

This is part of #2500

Per discussion in discord, this should be the first thing in #2500
merged

* Move this back,
mod was importable,
and this was intended as non-breaking

* Prevent fix from being lost if merged before this.

see Cog-Creators/Red-DiscordBot#2510

* Move case creation to before sending

see #2515

* fix failed merge done in web
2019-04-01 03:34:27 -08:00
aikaterna
050300040c [V3 Audio] Add Spotify support (#2328)
* [V3 Audio] Add Spotify support

* [V3 Audio] Update LICENSE

* Appeasing the style gods

* Extra word removal on LICENSE

* Update for #2389

Thanks to TrustyJAID for the help.

* Playlist command support for Spotify URLs or codes

* Add exception for dc while loading Spotify tracks

* Allow Spotify urls by default in audioset restrict

Matches the behavior of Spotify codes already being allowed by default.

* Update audio.py

* .format() moving

* Added a character to try to make Travis behave
2019-03-28 13:41:17 -04:00
aikaterna
94c3a2fedd [Audio] Seek command can now seek to position (#2470)
- Seek can now seek to a specific position, formatted like 00:00:00 or 00:00. Using negative or positive ints still functions the same as previously and will seek ahead or behind by that value instead.
- This PR requires the `_time_convert` func added in #2465 and should be merged after that one.
2019-03-10 18:27:23 +11:00
aikaterna
421043d923 [Audio] Fix for audioset status (#2481)
Revert player.is_playing check added to the playing players list for audioset status in #2473. This addition would cause no status to be shown when a local track was played and skip was used.
2019-03-08 09:09:22 +11:00
aikaterna
1c22b212c2 [Audio] Add songs when search-queuing (#2513)
Searching for a song and pressing the reaction to queue a song would not add the song to the queue if `[p]audioset maxlength` was off. This was an omission from #2465.
2019-03-07 14:12:15 +11:00
Flame442
d52b3eaf21 Proper capitalization of [p]blacklist help text (#2511) 2019-03-07 08:57:06 +11:00
Flame442
30ca226e39 [Trivia] Fix typo in warcraft trivia (#2508)
teh -> the
2019-03-06 20:04:11 +11:00
aikaterna
15037013e7 [Audio] Add option for dc at queue end (#2472)
This addition adds a toggle for having the bot instantly disconnect when the queue ends. It takes precedence over the `[p]audioset emptydisconnect` setting as it disconnects immediately when the queue or single song is finished.
2019-03-04 14:16:26 +11:00
jack1142
30fa9303e8 Spelling correction of method name in Tunnel (#2496)
`Tunnel.files_from_attatch` was misspelled.

Kept old name as an alias for backwards compatibility.
2019-03-04 12:19:40 +11:00
Toby Harradine
b4753a02de Fix translations of multiline strings (#2504)
* Fix translations of multiline strings

Resolves #2408.

Also did a few little optimisations here and there, we're no longer just using copied code from another project.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>

* Reformat

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-03-04 00:45:15 +01:00
Toby Harradine
628073cbe1 Update Translations (#2486)
Also included a Makefile recipe which makes use of the Crowdin CLI's `crowdin download` command. This requires whoever is using it to provide the project's API key in an environment variable, but we may automate this at some point.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-03-04 08:55:01 +11:00
aikaterna
2755592175 [Audio] Playlist download addition (#2482)
Bot owners can use `[p]playlist download playlistname` to download a playlist file that is compatible with the playlist upload command. Songs can also be exported for v2 use by using `[p]playlist download playlistname True`, which strips out tracks besides YouTube or Soundcloud URLs.
2019-03-03 14:29:42 +11:00
entchen66
6051ccb23c [Filter] Dispatch event on_filter_message_delete (#2483) 2019-02-27 16:27:10 +11:00
El Laggron
46f9cae0ef [Audio] Sort local files (#2358) 2019-02-27 16:22:10 +11:00
Seputaes
16614168a7 [Downloader] Install SHARED_LIBRARY requirements (#2384)
SHARED_LIBRARY Installable types did not have the requirements as
defined in info.json automatically installed. This change updates the
installation of libraries to also install their requirements.

Resolves #2381
2019-02-27 16:07:05 +11:00
El Laggron
5a15939f08 Bump aiohttp-json-rpc to version 0.12.1 (#2489) 2019-02-27 09:55:20 +11:00
Toby Harradine
bb5aab16c9 [Permissions] Exclude @everyone role when retrieving rules (#2484)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-25 10:19:00 +11:00
Toby Harradine
b38ac1d025 Bump version to 3.0.2
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-25 08:54:50 +11:00
Toby Harradine
22cf8e940c [Permissions] Fix typo in cog_add event 2019-02-25 08:27:49 +11:00
aikaterna
b0ab6bd7e2 [Audio] Add track length restriction (#2465)
* Added `[p]audioset maxlength`, which takes seconds or 00:00-style of formatted input for restricting the player to songs that have a length under that threshold.
2019-02-24 11:44:58 +11:00
aikaterna
7b9d85c1b5 [Audio] Emptydisconnect and status refactor (#2473)
- Refactored disconnect_timer, the function behind audioset emptydisconnect, to be more appropriately responsive (thanks to TrustyJAID)
- Refactored status clearing/status changing when emptydisconnect or other Lavalink player statuses would have a TRACK_END event but no QUEUE_END event. This should clear or modify the bot's status event appropriately when [p]audioset status is on and the bot disconnects due to emptydisconnect and ideally play a little nicer with other cogs that set statuses.
2019-02-23 08:45:01 +11:00
DiscordLiz
3637804929 Fix Command.error decorator (#2478)
This shouldn't be a coroutine.
2019-02-23 07:13:22 +11:00
DiscordLiz
c70a44e0fe Make on_command_error recognise custom error handlers (#2458)
Adds detection of custom error handlers to the global error handler.

Adds documentation of the updated behaviour.

Closes #2276.
2019-02-22 20:12:00 +11:00
Toby Harradine
cf18b601e2 [Mod] Use consume-rest in [p]casesfor 2019-02-22 17:52:30 +11:00
Lionir
139cc07bda Resolve network issue due to certificate failure (#2442)
There seems to have been a recurring problem with certificates on Macs, this is how you solve it *apparently*. 😎
2019-02-22 06:24:39 +01:00
DiscordLiz
619c3f28f7 fix case generation for cases which were not logged to modlog channel (#2477)
Add documentation for failure cases
Prevent an expected failure case.
2019-02-22 03:33:45 +01:00
DiscordLiz
9966668307 adds function to modlg API to get cases by member (#2453)
adds command using this to view all of a member's cases demonstrating this

closes #2266
2019-02-22 03:31:37 +01:00
palmtree5
77a0a67029 [Streams] Remove communities support (#2223)
See [this blog post](https://blog.twitch.tv/introducing-tags-and-new-categories-33744ef7b04f), communities on Twitch have been discontinued.
2019-02-21 17:37:28 +11:00
ZeLarpMaster
b65466cebd [Trivia] Fix typo in cars.yaml (#2475) 2019-02-21 09:49:43 +11:00
Toby Harradine
f1873e32d6 [Docs] Use correct perms cmd for setting default rules 2019-02-20 16:08:25 +11:00
Michael H
b7b4e65d2d [Permissions] Remove p alias (#2467)
People can re-add it with the alias cog, but core red should not monopolize short aliases.

What about those servers that want `[p]play` even shorter?
2019-02-19 10:43:02 +11:00
aikaterna
16bb334fba [Audio] Add playlist copy (#2205)
Bot owners can now copy playlists from one server to another using server IDs.
2019-02-19 10:36:20 +11:00
TrustyJAID
3f1d416526 Allow central storage of API keys (#2389)
This creates a central location to store external API tokens that can be used between cogs without requiring each cog to be loaded for it to work.

A new set option for `[p]set api` is created to assist in forming bot readable API token locations.

This also updates the Streams cog to utilize the central database.

Tokens are moved from the old data locations in core cogs on load.
2019-02-19 10:22:44 +11:00
Michael H
722aaa225b Improve Cooldown UX (#2412)
This improves the feedback given on `command_on_cool_down`, as well as automatically handling cooldowns under 1 second for the user.
2019-02-19 10:19:49 +11:00
aikaterna
7e2e37ab3f [Audio] Play local folders via text command (#2457)
`[p]local folder` will now accept folder names in the command instead of having to navigate through the reaction menu. Also added an alias of `[p]local start` to help users coming from v2 audio.
2019-02-19 10:16:41 +11:00
aikaterna
83411d0fa4 [Audio] Change pause to a toggle (#2461) 2019-02-19 10:10:11 +11:00
aikaterna
d608dd953b [Audio] Remove aliases (#2462) 2019-02-19 10:08:59 +11:00
Flame442
e5e0a024f9 Remove unnecessary "or" from Config doc (#2464) 2019-02-17 14:14:40 -09:00
Caleb Johnson
8e6db0829c [Audio] Connect to lavalink in the background (#2460)
Also:
- restart and reconnect if connection settings change
  - shutdown and restart if not configured to use external
- show a message in [p]play et al. when the connection hasn't been made
- move the JAR download to manager so audio.py can access it
- only start if no process exists
- bump red-lavalink to 0.2.3

Resolves #2306
2019-02-17 09:22:55 +11:00
Toby Harradine
5359fec195 Bump version to 3.0.1
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-16 12:21:25 +11:00
Toby Harradine
f2daf0be9a Revert "[Audio] Connect to lavalink in the background (#2335)" (#2459)
This reverts commit b633a33137.
2019-02-16 11:52:03 +11:00
Caleb Johnson
b633a33137 [Audio] Connect to lavalink in the background (#2335)
Also:
- restart and reconnect if connection settings change
  - shutdown and restart if not configured to use external
- show a message in [p]play et al. when the connection hasn't been made
- move the JAR download to manager so audio.py can access it
- only start if no process exists

Resolves #2306
2019-02-16 11:35:21 +11:00
Michael H
d13bf37845 [Utils] Add filters for spoiler markdown (#2401)
This also wraps some fields of the modlog with the same sanitization, as well as the `[p]names` command.
2019-02-16 11:34:38 +11:00
Michael H
4b831a634a [Audio] Remove players which no longer have a guild. (#2414)
Cleanup players when the bot has one for a guild it leaves.

Bumps Red-Lavalink to v0.2.2
2019-02-16 11:15:33 +11:00
DiscordLiz
f91e0a6546 Prevent error when ctx.send_interactive prompt is deleted (#2447)
Supress excpetions which may occur when attempting to delete a prompt.

fixes #2380
2019-02-16 07:46:36 +11:00
ZeLarpMaster
2e2d669fdf [Trivia] Fix typo in cars.yaml (#2456) 2019-02-16 07:39:49 +11:00
Toby Harradine
7ecdf7a7be Remove asyncio.Event creation from module level in Audio (#2454)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-15 14:27:01 +11:00
Twentysix
9b940de854 [Downloader] [p]pipinstall: Handle no args 2019-02-14 23:39:38 +01:00
zephyrkul
82807ffe69 [Downloader] Use shlex for subprocesses (#2421) 2019-02-14 23:32:11 +01:00
Toby Harradine
b1066ad58f Guard module-level creation of Config objects (#2449)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-14 15:36:48 +11:00
Caleb Johnson
ac8b1fc108 [Filter] Filter based on words for non-phrases (#2262)
Filters based strictly on words (ignoring punctuation) if filter entry isn't a phrase.
2019-02-13 14:14:12 +11:00
zephyrkul
820be2a0ae [Core] Utilize consume rest, Union (#2407) 2019-02-13 14:11:22 +11:00
Toby Harradine
9869f95bd6 Update dependencies and copyright year (#2436)
- aiohttp 3.5
- websockets 7
- Rapptz/discord.py@700dbb5
- A few others

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-13 10:49:11 +11:00
zephyrkul
c87286d3c6 [README] Update support channel (#2445) 2019-02-12 21:24:14 +01:00
Twentysix
7028ca9df3 [Docs] Link bot account guide (#2440) 2019-02-11 20:17:39 +01:00
Toby Harradine
435fc141ae Default rules for subcommands precede supercommands (#2422)
This incorporates default rules into the same resolution techniques used by concrete rules.

Resolves #2313.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-11 14:14:29 +11:00
Twentysix
889fa63aff Sentry removal (#2439)
Resolves #2430.
2019-02-11 11:19:02 +11:00
Toby Harradine
dae75521d3 [Audio] Enable logging on Lavalink V3 (#2438)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-10 18:36:02 +11:00
Toby Harradine
b9d440f2f7 Utilise setup.cfg, move version info to redbot package (#2411)
* Utilise setup.cfg, move version info to redbot package

- `redbot.__init__` now is safe to import without installing dependencies.
- Now deploying binary wheel distribution from travis
- Include locale files in sub-packages of cog packages
- python_requires now has no upper limit

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-09 12:08:22 +11:00
Toby Harradine
ec4c325efd Guard parsing of CLI args in launcher, setup scripts (#2432)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-08 18:08:10 +11:00
Twentysix
b350ac38dc Allow [p]info customization (#2417)
* Allow [p]info customization

* Style

* Naming
2019-02-08 02:38:26 +01:00
PredaaA
e88c82e7e0 Update help_formatter.py (#2431) 2019-02-08 02:24:59 +01:00
Twentysix
99ad01ae0d [p]userinfo: Handle target w/ 'None' Member.joined_at (#2426) 2019-02-07 22:40:40 +01:00
Toby Harradine
8f8c52d8c4 [Docs] Add note about pyenv optimisation flag (#2428)
Signed-off-by: Toby <tobyharradine@gmail.com>
2019-02-07 21:54:14 +11:00
Toby Harradine
c56fa5a320 Minor changes to install docs (#2427)
- When creating a venv, use `python3.7` instead of `python3`
- Remove unnecessary dependency from pyenv pre-requirements on Debian
- Use curl over wget for get-pip on Xenial

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-07 10:51:17 +11:00
Toby Harradine
7d5bae5a50 Use V2 of RTD's configuration file (#2418)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-07 10:30:01 +11:00
bobloy
7c404082f8 [Help] Group Fields respect page_char_limit (#2281)
It would groups the cogs until it is **greater** than the set `page_char_limit` in helpset. This leads to inconsistent page sizes when a large cog was appended to something barely under the limit.

I think this commit will reign in the weirdness by adjusting the secondary grouping to aim for **less than** `page_char_limit` grouping.
2019-02-06 18:59:54 +11:00
Toby Harradine
dc8e61cbe5 Always tick Voice requirements on startup screen (#2413)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-02-04 22:33:48 +11:00
zephyrkul
f2ebf52f6e Send help on empty [p]load/unload/reload (#2410)
Rather than attempting to load / reload / unload nothing, send command help on bare `[p]load`, etc. commands.
2019-02-04 17:39:03 +11:00
Redjumpman
fa223e22ed [Utils] Fix for MessagePredicate.lower_contained_in (#2399)
Added a missing str.lower() method when checking to see if the content is in the list.
2019-02-04 10:22:01 +11:00
PredaaA
6d22c8faa5 [Core cmds] [p]servers: handle message deletion (#2400) 2019-02-03 23:32:45 +01:00
Michael H
01ebf2835b Improve usability of warnings/unwarn\n resolves #2403 (#2404) 2019-02-03 02:37:01 -09:00
Michael H
3ef693a259 prevent traceback (#2406)
* prevent traceback related to  Rapptz/discord.py#1638

* formatting
2019-02-02 11:20:17 +01:00
Caleb Johnson
3a4d932d2b Use find_namespace_packages in setup.py (#2402) 2019-02-01 16:10:10 +11:00
Kowlin
571332ae18 Fixed our missing templates (#2398) 2019-01-31 10:36:14 +11:00
Toby Harradine
0607f5552a Use python-Levenshtein-wheels (#2393)
This removes the compiler detection logic in setup.py. python-Levenshtein-wheels includes pre-built wheels for virtually all operating systems and architectures we support.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-01-30 16:52:36 +11:00
Toby Harradine
016a6d3aa6 Bump minimum python version to 3.7.0 (#2394)
This is in anticipation of #2246, although I've written that PR to not break on 3.6, the feature itself is not usable on 3.6. So I think the best way forward is to simply require python 3.7. This also allows devs and cog creators to utilise all of the new features in 3.7, and it also updates the docs so all operating systems will have 3.7 installed.

Signed-off-by: Toby <tobyharradine@gmail.com>
2019-01-30 14:07:53 +11:00
Toby Harradine
c7d98f88e8 Update Travis badge in README to travis-ci.com (#2395)
Signed-off-by: Toby <tobyharradine@gmail.com>
2019-01-29 01:46:37 -09:00
Toby Harradine
b82756087a Merge V3/release/3.0.0 into V3/develop 2019-01-28 15:30:30 +11:00
Toby Harradine
91258fea78 Bump version to 3.0.0
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-01-28 14:52:14 +11:00
Toby Harradine
5c1c6e1f03 Remove version from help message
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-01-28 14:49:55 +11:00
Toby Harradine
6d5762d711 Move Red-Lavalink to main requirements
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-01-28 14:38:43 +11:00
Toby Harradine
05bef917ae Vendor discord.py (#2387)
Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-01-28 14:14:36 +11:00
Caleb Johnson
348277bcbd [Audio] Lavalink 3.0/3.1 compatibility updates (#2272)
- Update to red-lavalink v0.2.0 (blocked by Cog-Creators/Red-Lavalink#41)
- Force lavalink to use TLSv1.2 on java 11+ (blocked by #2270)

I would add equalizer support, but there's no way to know the full
Lavalink version and thus whether it's supported ahead of time.
2019-01-28 12:43:21 +11:00
El Laggron
3b62572c89 Graceful shutdown when SIGTERM is received (#2286)
Only works on Unix.
2019-01-23 10:28:30 +11:00
Iangit1
158c4f741b Grammar in ask_sentry and interactive_config (#2383) 2019-01-21 09:07:55 +11:00
bobloy
abcf179042 [CogManager] Fix return type-hint (#2319) 2019-01-19 11:47:58 +11:00
Michael H
3dba09d19d [Docs] Chocolately/PowerShell install instructions for Windows (#2364) 2019-01-19 11:45:22 +11:00
Michael H
1c4193cce2 [Permissions] Quick extra comment of importance (#2379) 2019-01-18 14:48:00 +11:00
Michael H
849ade6e58 Reconcile permission hooks with ctx.permission_state (#2375)
Resolves #2374.

See mod.py's voice mute for an example of why this may be necessary.
2019-01-18 14:45:34 +11:00
Toby Harradine
0d4e6a0865 Fix MongoDB to JSON migration and warn about Mongo driver (#2373)
Resolves #2372.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2019-01-18 11:26:33 +11:00
Toby Harradine
e07408161a Merge branch 'V3/release/3.0.0' into V3/develop
# Conflicts:
#	redbot/cogs/mod/mod.py
2019-01-11 16:42:42 +11:00
Twentysix
937d2fe0f6 [Mod] Enhanced [p]hackban (#2164) 2019-01-05 03:29:05 +01:00
palmtree5
bcc50557a9 [V3 Readme] Update cog list links (#2347) 2018-12-23 00:17:20 -09:00
Toby Harradine
bdcb69ad37 Merge branch 'V3/release/3.0.0' into V3/develop
# Conflicts:
#	redbot/cogs/audio/audio.py
2018-12-21 13:37:32 +11:00
aikaterna
3b50ed8192 [V3 Audio] Restrict toggle for commercial sites (#2245)
* [V3 Audio] Restrict toggle for commercial sites

* Different url parsing

* Allow local tracks

* No self needed

* Change Twitch url
2018-12-13 18:31:24 +01:00
Michael H
30c3a4c7c1 [Docs] CentOS correct git version (#2309)
Resolves #2260.
2018-11-24 10:06:59 +11:00
FixedThink
6470bc1cda [Mod] [p]userinfo: Get avatar format with proper method (#2291) 2018-11-14 22:46:01 +01:00
Michael H
221b636f3f Prevent locking out owner from commands (#2257) 2018-11-06 11:32:40 +11:00
FixedThink
f7e41063bf [Trivia] Change Swaziland to its new name, eSwatini (#2275) 2018-11-06 09:52:25 +11:00
bobloy
d6cd959a2b [Docs] Update example cog to include base cog class (#2256) 2018-11-06 08:41:34 +11:00
aikaterna
57f078925e [V3] Update CODEOWNERS for audio (#2277) 2018-10-30 18:19:16 +01:00
Toby Harradine
8b4e12da81 Merge branch 'V3/release/3.0.0' into V3/develop
# Conflicts:
#	redbot/cogs/customcom/customcom.py
#	redbot/core/errors.py
2018-10-16 09:42:38 +11:00
Toby Harradine
5ed8be9998 Merge V3/release/3.0.0 into V3/develop 2018-10-12 08:59:14 +11:00
Michael H
4357fe1ba9 [Core] Fixes reload, and prompted reload on cog update (#2226)
Fix something missed when QAing #2207
2018-10-12 07:23:04 +11:00
El Laggron
a64db76b4d [Core] Specify an error message on package loading (#2207)
Allows cog creators to explain clearly why a cog cannot load by raising  `redbot.core.errors.CogLoadError`. Instead of having to check in the console what's wrong, the message will directly be sent in the context channel.
2018-10-11 11:57:11 +11:00
Twentysix
c464f5e7dc [CustomCommands] Add [p]cc show (#2204) 2018-10-10 10:27:25 +11:00
Toby Harradine
00bc3c86b1 Merge V3/release/3.0.0 into V3/develop (#2209) 2018-10-09 09:10:05 +11:00
Toby Harradine
ba605495ac [Dev] Use isawaitable over iscoroutine for [p]debug (#2202)
Allows for non-coroutine awaitables (such as config's `_ValueCtxManager`) to be awaited from debug.

Signed-off-by: Toby Harradine <tobyharradine@gmail.com>
2018-10-07 19:36:35 +11:00
Toby Harradine
748847d5bf Merge changes for RC1 into V3/develop 2018-10-07 12:06:28 +11:00
770 changed files with 173899 additions and 27400 deletions

6
.github/CODEOWNERS vendored
View File

@@ -9,16 +9,15 @@ redbot/core/config.py @tekulvw
redbot/core/cog_manager.py @tekulvw
redbot/core/core_commands.py @tekulvw
redbot/core/context.py @Tobotimus
redbot/core/commands/* @mikeshardmind
redbot/core/data_manager.py @tekulvw
redbot/core/dev_commands.py @tekulvw
redbot/core/drivers/* @tekulvw
redbot/core/events.py @tekulvw
redbot/core/global_checks.py @tekulvw
redbot/core/i18n.py @tekulvw
redbot/core/json_io.py @tekulvw
redbot/core/modlog.py @palmtree5
redbot/core/rpc.py @tekulvw
redbot/core/sentry_setup.py @Kowlin @tekulvw
redbot/core/utils/chat_formatting.py @tekulvw
redbot/core/utils/mod.py @palmtree5
redbot/core/utils/data_converter.py @mikeshardmind
@@ -30,7 +29,7 @@ redbot/core/utils/common_filters.py @mikeshardmind
# Cogs
redbot/cogs/admin/* @tekulvw
redbot/cogs/alias/* @tekulvw
redbot/cogs/audio/* @aikaterna @atiwiex
redbot/cogs/audio/* @aikaterna
redbot/cogs/bank/* @tekulvw
redbot/cogs/cleanup/* @palmtree5
redbot/cogs/customcom/* @palmtree5
@@ -43,7 +42,6 @@ redbot/cogs/mod/* @palmtree5
redbot/cogs/modlog/* @palmtree5
redbot/cogs/streams/* @Twentysix26 @palmtree5
redbot/cogs/trivia/* @Tobotimus
redbot/cogs/dataconverter/* @mikeshardmind
redbot/cogs/reports/* @mikeshardmind
redbot/cogs/permissions/* @mikeshardmind
redbot/cogs/warnings/* @palmtree5

View File

@@ -31,7 +31,7 @@ We love receiving contributions from our community. Any assistance you can provi
# 2. Ground Rules
We've made a point to use [ZenHub](https://www.zenhub.com/) (a plugin for GitHub) as our main source of collaboration and coordination. Your experience contributing to Red will be greatly improved if you go get that plugin.
1. Ensure cross compatibility for Windows, Mac OS and Linux.
2. Ensure all Python features used in contributions exist and work in Python 3.6 and above.
2. Ensure all Python features used in contributions exist and work in Python 3.7 and above.
3. Create new tests for code you add or bugs you fix. It helps us help you by making sure we don't accidentally break anything :grinning:
4. Create any issues for new features you'd like to implement and explain why this feature is useful to everyone and not just you personally.
5. Don't add new cogs unless specifically given approval in an issue discussing said cog idea.
@@ -53,33 +53,36 @@ Red's repository is configured to follow a particular development workflow, usin
### 4.1 Setting up your development environment
The following requirements must be installed prior to setting up:
- Python 3.6.2 or greater (3.6.6 or greater on Windows)
- Python 3.7.0 or greater
- git
- pip
- pipenv
If you're not on Windows, you can optionally install [pyenv](https://github.com/pyenv/pyenv), which will help you run tests for different python versions.
If you're not on Windows, you should also have GNU make installed, and you can optionally install [pyenv](https://github.com/pyenv/pyenv), which can help you run tests for different python versions.
1. Fork and clone the repository to a directory on your local machine.
2. Open a command line in that directory and execute the following commands:
2. Open a command line in that directory and execute the following command:
```bash
pip install pipenv
pipenv install --dev
make newenv
```
Red, its dependencies, and all required development tools, are now installed to a virtual environment. Red is installed in editable mode, meaning that edits you make to the source code in the repository will be reflected when you run Red.
3. Activate the new virtual environment with the command:
```bash
pipenv shell
```
From here onwards, we will assume you are executing commands from within this shell. Each time you open a new command line, you should execute this command first.
Red, its dependencies, and all required development tools, are now installed to a virtual environment located in the `.venv` subdirectory. Red is installed in editable mode, meaning that edits you make to the source code in the repository will be reflected when you run Red.
3. Activate the new virtual environment with one of the following commands:
- Posix:
```bash
source .venv/bin/activate
```
- Windows:
```powershell
.venv\Scripts\activate
```
Each time you open a new command line, you should execute this command first. From here onwards, we will assume you are executing commands from within this activated virtual environment.
Note: If you haven't used `pipenv` before but are comfortable with virtualenvs, just run `pip install pipenv` in the virtualenv you're already using and invoke the command above from the cloned Red repo. It will do the correct thing.
**Note:** If you're comfortable with setting up virtual environments yourself and would rather do it manually, just run `pip install -Ur tools/dev-requirements.txt` after setting it up.
### 4.2 Testing
We've recently started using [tox](https://github.com/tox-dev/tox) to run all of our tests. It's extremely simple to use, and if you followed the previous section correctly, it is already installed to your virtual environment.
Currently, tox does the following, creating its own virtual environments for each stage:
- Runs all of our unit tests with [pytest](https://github.com/pytest-dev/pytest) on python 3.6 and 3.7 (test environments `py36` and `py37`)
- Runs all of our unit tests with [pytest](https://github.com/pytest-dev/pytest) on python 3.7 (test environment `py37`)
- Ensures documentation builds without warnings, and all hyperlinks have a valid destination (test environment `docs`)
- Ensures that the code meets our style guide with [black](https://github.com/ambv/black) (test environment `style`)
@@ -95,12 +98,14 @@ Our style checker of choice, [black](https://github.com/ambv/black), actually ha
Use the command `black --help` to see how to use this tool. The full style guide is explained in detail on [black's GitHub repository](https://github.com/ambv/black). **There is one exception to this**, however, which is that we set the line length to 99, instead of black's default 88. When using `black` on the command line, simply use it like so: `black -l 99 -N <src>`.
### 4.4 Make
You may have noticed we have a `Makefile` and a `make.bat` in the top-level directory. For now, you can do two things with them:
You may have noticed we have a `Makefile` and a `make.bat` in the top-level directory. For now, you can do three things with them:
1. `make reformat`: Reformat all python files in the project with Black
2. `make stylecheck`: Check if any `.py` files in the project need reformatting
3. `make newenv`: Set up a new virtual environment in the `.venv` subdirectory, and install Red and its dependencies. If one already exists, it is cleared out and replaced.
4. `make syncenv`: Sync your environment with Red's latest dependencies.
### 4.5 Keeping your dependencies up to date
Whenever you pull from upstream (V3/develop on the main repository) and you notice the file `Pipfile.lock` has been changed, it usually means one of the package dependencies have been updated, added or removed. To make sure you're testing and formatting with the most up-to-date versions of our dependencies, run `pipenv install --dev` again.
Whenever you pull from upstream (V3/develop on the main repository) and you notice either of the files `setup.cfg` or `tools/dev-requirements.txt` have been changed, it can often mean some package dependencies have been updated, added or removed. To make sure you're testing and formatting with the most up-to-date versions of our dependencies, run `make syncenv`. You could also simply do `make newenv` to install them to a clean new virtual environment.
### 4.6 To contribute changes

3
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,3 @@
# These are supported funding model platforms
patreon: Red_Devs

5
.github/ISSUE_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,5 @@
<!--
Please be sure to use the correct template,
if your report doesn't have the correct template please open an issue describing your issue in detail
For support regarding the bot itself please visit the discord server over at https://discord.gg/red
-->

View File

@@ -1,3 +1,9 @@
---
name: Bug reports for commands
about: For bugs that involve commands found within Red
---
# Command bugs
<!--

View File

@@ -1,3 +1,9 @@
---
name: Feature request
about: For feature requests regarding Red itself.
---
# Feature request
<!-- This template is for feature requests. Please fill out the following: -->

View File

@@ -1,3 +1,9 @@
---
name: Bug report
about: For bugs that don't involve a command.
---
# Other bugs
<!--
@@ -18,4 +24,4 @@ Did you find a bug with something other than a command? Fill out the following:
#### How can we reproduce this issue?
<!-- Replace with numbered steps to reproduce the issue -->
<!-- Replace with numbered steps to reproduce the issue -->

7
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,7 @@
### Type
- [ ] Bugfix
- [ ] Enhancement
- [ ] New feature
### Description of the changes

View File

@@ -1,6 +1,7 @@
# Bugfix request
<!--
THIS TEMPLATE IS CURRENTLY UNUSED DUE TO GITHUB LIMITATIONS!
To be used for pull requests that fix a bug
-->

View File

@@ -1,6 +1,7 @@
# Enhancement request
<!--
THIS TEMPLATE IS CURRENTLY UNUSED DUE TO GITHUB LIMITATIONS!
To be used for PRs which enhance existing features
-->
@@ -17,4 +18,4 @@ If adding commands, describe any restrictions on their usage.
<!-- To check a box, replace the space between the [] with a x -->
- [ ] Yes
- [ ] No
- [ ] No

View File

@@ -1,6 +1,7 @@
# New feature addition
<!--
THIS TEMPLATE IS CURRENTLY UNUSED DUE TO GITHUB LIMITATIONS!
To be used for PRs which add a new feature
Examples of this include new APIs, new core cogs, etc.
-->
@@ -18,4 +19,4 @@ Examples of this include new APIs, new core cogs, etc.
<!--
If you are adding a cog, describe its commands in detail (functionality, usage restrictions, etc).
If the new feature introduces new requirements, please try to explain why they are necessary.
-->
-->

View File

@@ -1,6 +1,7 @@
# New release
<!--
THIS TEMPLATE IS CURRENTLY UNUSED DUE TO GITHUB LIMITATIONS!
To be used by collaborators for doing releases.
Most contributors will not need to use this.
-->
@@ -13,4 +14,3 @@ Most contributors will not need to use this.
- [ ] Yes
- [ ] No

View File

@@ -1,5 +1,6 @@
# Translations update
<!--
THIS TEMPLATE IS CURRENTLY UNUSED DUE TO GITHUB LIMITATIONS!
Used for PRs updating translations from Crowdin
-->
-->

2
.gitignore vendored
View File

@@ -4,6 +4,8 @@
*.pot
.data
!/tests/cogs/dataconverter/data/**/*.json
Pipfile
Pipfile.lock
### JetBrains template
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm

148
.pylintrc Normal file
View File

@@ -0,0 +1,148 @@
[MASTER]
# Specify a configuration file.
#rcfile=
# Add files or directories to the blacklist. They should be base names, not
# paths.
ignore=pytest
# Pickle collected data for later comparisons.
persistent=no
# List of plugins (as comma separated values of python modules names) to load,
# usually to register additional checkers.
load-plugins=
# DO NOT CHANGE THIS VALUE # Use multiple processes to speed up Pylint.
jobs=1
# Allow loading of arbitrary C extensions. Extensions are imported into the
# active Python interpreter and may run arbitrary code.
unsafe-load-any-extension=no
# A comma-separated list of package or module names from where C extensions may
# be loaded. Extensions are loading into the active Python interpreter and may
# run arbitrary code
extension-pkg-whitelist=
# Allow optimization of some AST trees. This will activate a peephole AST
# optimizer, which will apply various small optimizations. For instance, it can
# be used to obtain the result of joining multiple strings with the addition
# operator. Joining a lot of strings can lead to a maximum recursion error in
# Pylint and this flag can prevent that. It has one side effect, the resulting
# AST will be different than the one from reality.
optimize-ast=no
[MESSAGES CONTROL]
# Only show warnings with the listed confidence levels. Leave empty to show
# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED
confidence=
# Enable the message, report, category or checker with the given id(s). You can
# either give multiple identifier separated by comma (,) or put this option
# multiple time. See also the "--disable" option for examples.
enable=all
disable=C, # black is enforcing this for us already, incompatibly
W, # unbroaden this to the below specifics later on.
W0107, # uneccessary pass is stylisitc in most places
W0212, # Should likely refactor around protected access warnings later
W1203, # fstrings are too fast to care about enforcing this.
W0612, # unused vars can sometimes indicate an issue, but ...
W1401, # Should probably fix the reason this is disabled (start up screen)
W0511, # Nope, todos are fine for future people to see things to do.
W0613, # Too many places where we need to take unused args do to d.py ... also menus
W0221, # Overriden converters.
W0223, # abstractmethod not defined in mixins is expected
I, # ...
R # While some of these have merit, It's too large a burden to enable this right now.
[REPORTS]
output-format=parseable
files-output=no
reports=no
[LOGGING]
# Logging modules to check that the string format arguments are in logging
# function parameter format
logging-modules=logging
[TYPECHECK]
# Tells whether missing members accessed in mixin class should be ignored. A
# mixin class is detected if its name ends with "mixin" (case insensitive).
ignore-mixin-members=yes
# TODO: Write a plyint plugin to allow this with these mixin classes
# To use the abstractmethod we know will be defined in the final class.
ignored-classes=redbot.cogs.mod.movetocore.MoveToCore,
redbot.cogs.mod.kickban.KickBanMixin,
redbot.cogs.mod.mutes.MuteMixin,
redbot.cogs.mod.names.ModInfo,
redbot.cogs.mod.settings.ModSettings,
redbot.cogs.mod.events.Events
ignored-modules=distutils # https://github.com/PyCQA/pylint/issues/73
[VARIABLES]
# Tells whether we should check for unused import in __init__ files.
init-import=no
# A regular expression matching the name of dummy variables (i.e. expectedly
# not used).
dummy-variables-rgx=_$|dummy
[SIMILARITIES]
# Minimum lines number of a similarity.
min-similarity-lines=4
# Ignore comments when computing similarities.
ignore-comments=yes
# Ignore docstrings when computing similarities.
ignore-docstrings=yes
# Ignore imports when computing similarities.
ignore-imports=no
[MISCELLANEOUS]
# List of note tags to take in consideration, separated by a comma.
notes=FIXME,XXX,TODO
[CLASSES]
# List of method names used to declare (i.e. assign) instance attributes.
defining-attr-methods=__init__,__new__,__call__
# List of valid names for the first argument in a class method.
valid-classmethod-first-arg=cls
# List of valid names for the first argument in a metaclass class method.
valid-metaclass-classmethod-first-arg=mcs
# List of member names, which should be excluded from the protected access
# warning.
exclude-protected=
[EXCEPTIONS]
# Exceptions that will emit a warning when being caught. Defaults to
# "Exception"
overgeneral-exceptions=Exception,discord.DiscordException

View File

@@ -1,14 +1,17 @@
version: 2
formats:
- pdf
build:
image: latest
requirements_file: dependency_links.txt
python:
version: 3.6
pip_install: true
extra_requirements:
- docs
- mongo
version: 3.7
install:
- requirements: docs/requirements.txt
- method: pip
path: .
extra_requirements:
- docs
- mongo

View File

@@ -3,16 +3,16 @@ language: python
cache: pip
notifications:
email: false
sudo: true
python:
- 3.6.6
- 3.7
- 3.7.2
env:
global:
PIPENV_IGNORE_VIRTUALENVS=1
- PIPENV_IGNORE_VIRTUALENVS=1
matrix:
TOXENV=py
- TOXENV=py
- TOXENV=docs
- TOXENV=style
install:
- pip install --upgrade pip tox
@@ -22,32 +22,26 @@ script:
jobs:
include:
- python: 3.6.6
env: TOXENV=docs
- python: 3.6.6
env: TOXENV=style
# These jobs only occur on tag creation if the prior ones succeed
- stage: PyPi Deployment
if: tag IS present
python: 3.6.6
python: 3.7.2
env:
- DEPLOYING=true
- TOXENV=py36
deploy:
- provider: pypi
distributions: sdist bdist_wheel
user: Red-DiscordBot
password:
secure: Ty9vYnd/wCuQkVC/OsS4E2jT9LVDVfzsFrQc4U2hMYcTJnYbl/3omyObdCWCOBC40vUDkVHAQU8ULHzoCA+2KX9Ds/7/P5zCumAA0uJRR9Smw7OlRzSMxJI+/lGq4CwXKzxDZKuo5rsxXEbW5qmYjtO8Mk6KuLkvieb1vyr2DcqWEFzg/7TZNDfD1oP8et8ITQ26lLP1dtQx/jlAiIBzgK9wziuwj1Divb9A///VsGz43N8maZ+jfsDjYqrfUVWTy3ar7JPUplletenYCR1PmQ5C46XfV0kitKd1aITJ48YPAKyYgKy8AIT+Uz1JArTnqdzLSFRNELS57qS00lzgllbteCyWQ8Uzy0Zpxb/5DDH8/mL1n0MyJrF8qjZd2hLNAXg3z/k9bGXeiMLGwoxRlGXkL2XpiVgI93UKKyVyooGNMgPTc/QdSc7krjAWcOtX/HgLR34jxeLPFEdzJNAFIimfDD8N+XTFcNBw6EvOYm/n5MXkckNoX/G+ThNobHZ7VKSASltZ9zBRAJ2dDh35G3CYmVEk33U77RKbL9le/Za9QVBcAO8i6rqVGYkdO7thHHKHc/1CB1jNnjsFSDt0bURtNfAqfwKCurQC8487zbEzT+2fog3Wygv7g3cklaRg4guY8UjZuFWStYGqbroTsOCd9ATNqeO5B13pNhllSzU=
skip_cleanup: true
on:
repo: Cog-Creators/Red-DiscordBot
python: 3.6.6
tags: true
- stage: Crowdin Deployment
if: tag IS present
python: 3.6.6
python: 3.7.2
env:
- DEPLOYING=true
- TOXENV=py36
@@ -56,12 +50,11 @@ jobs:
- echo "deb https://artifacts.crowdin.com/repo/deb/ /" | sudo tee -a /etc/apt/sources.list
- sudo apt-get update -qq
- sudo apt-get install -y crowdin
- pip install redgettext==2.2
- pip install redgettext==3.1
deploy:
- provider: script
script: make gettext
script: make upload_translations
skip_cleanup: true
on:
repo: Cog-Creators/Red-DiscordBot
python: 3.6.6
tags: true

32
LICENSE
View File

@@ -632,7 +632,7 @@ state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
Red - A fully customizable Discord bot
Copyright (C) 2015-2018 Twentysix
Copyright (C) 2015-2019 Twentysix
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -652,7 +652,7 @@ Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
Red-DiscordBot Copyright (C) 2015-2018 Twentysix
Red-DiscordBot Copyright (C) 2015-2019 Twentysix
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
@@ -672,3 +672,31 @@ may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
The Red-DiscordBot project contains subcomponents in audio.py that have a
separate copyright notice and license terms. Your use of the source code for
these subcomponents is subject to the terms and conditions of the following
licenses.
This product bundles methods from https://github.com/Just-Some-Bots/MusicBot/
blob/master/musicbot/spotify.py which are available under an MIT license.
Copyright (c) 2015-2018 Just-Some-Bots (https://github.com/Just-Some-Bots)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@@ -1,3 +0,0 @@
include README.md
include LICENSE
include dependency_links.txt

View File

@@ -1,7 +1,26 @@
# Python Code Style
reformat:
black -l 99 -N `git ls-files "*.py"`
black -l 99 `git ls-files "*.py"`
stylecheck:
black --check -l 99 -N `git ls-files "*.py"`
black --check -l 99 `git ls-files "*.py"`
# Translations
gettext:
redgettext --command-docstrings --verbose --recursive redbot --exclude-files "redbot/pytest/**/*"
crowdin upload
upload_translations:
$(MAKE) gettext
crowdin upload sources
download_translations:
crowdin download
# Dependencies
bumpdeps:
python tools/bumpdeps.py
# Development environment
newenv:
python3.7 -m venv --clear .venv
.venv/bin/pip install -U pip setuptools
$(MAKE) syncenv
syncenv:
.venv/bin/pip install -Ur ./tools/dev-requirements.txt

12
Pipfile
View File

@@ -1,12 +0,0 @@
[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"
[packages]
"discord.py" = { git = 'git://github.com/Rapptz/discord.py', ref = 'rewrite', editable = true }
"e1839a8" = { path = ".", editable = true, extras = ['mongo', 'voice'] }
[dev-packages]
tox = "*"
"e1839a9" = { path = ".", editable = true, extras = ['docs', 'test', 'style'] }

781
Pipfile.lock generated
View File

@@ -1,781 +0,0 @@
{
"_meta": {
"hash": {
"sha256": "edd35f353e1fadc20094e40de6627db77fd61303da01794214c44d748e99838b"
},
"pipfile-spec": 6,
"requires": {},
"sources": [
{
"name": "pypi",
"url": "https://pypi.org/simple",
"verify_ssl": true
}
]
},
"default": {
"aiohttp": {
"hashes": [
"sha256:0419705a36b43c0ac6f15469f9c2a08cad5c939d78bd12a5c23ea167c8253b2b",
"sha256:1812fc4bc6ac1bde007daa05d2d0f61199324e0cc893b11523e646595047ca08",
"sha256:2214b5c0153f45256d5d52d1e0cafe53f9905ed035a142191727a5fb620c03dd",
"sha256:275909137f0c92c61ba6bb1af856a522d5546f1de8ea01e4e726321c697754ac",
"sha256:3983611922b561868428ea1e7269e757803713f55b53502423decc509fef1650",
"sha256:51afec6ffa50a9da4cdef188971a802beb1ca8e8edb40fa429e5e529db3475fa",
"sha256:589f2ec8a101a0f340453ee6945bdfea8e1cd84c8d88e5be08716c34c0799d95",
"sha256:789820ddc65e1f5e71516adaca2e9022498fa5a837c79ba9c692a9f8f916c330",
"sha256:7a968a0bdaaf9abacc260911775611c9a602214a23aeb846f2eb2eeaa350c4dc",
"sha256:7aeefbed253f59ea39e70c5848de42ed85cb941165357fc7e87ab5d8f1f9592b",
"sha256:7b2eb55c66512405103485bd7d285a839d53e7fdc261ab20e5bcc51d7aaff5de",
"sha256:87bc95d3d333bb689c8d755b4a9d7095a2356108002149523dfc8e607d5d32a4",
"sha256:9d80e40db208e29168d3723d1440ecbb06054d349c5ece6a2c5a611490830dd7",
"sha256:a1b442195c2a77d33e4dbee67c9877ccbdd3a1f686f91eb479a9577ed8cc326b",
"sha256:ab3d769413b322d6092f169f316f7b21cd261a7589f7e31db779d5731b0480d8",
"sha256:b066d3dec5d0f5aee6e34e5765095dc3d6d78ef9839640141a2b20816a0642bd",
"sha256:b24e7845ae8de3e388ef4bcfcf7f96b05f52c8e633b33cf8003a6b1d726fc7c2",
"sha256:c59a953c3f8524a7c86eaeaef5bf702555be12f5668f6384149fe4bb75c52698",
"sha256:cf2cc6c2c10d242790412bea7ccf73726a9a44b4c4b073d2699ef3b48971fd95",
"sha256:e0c9c8d4150ae904f308ff27b35446990d2b1dfc944702a21925937e937394c6",
"sha256:f1839db4c2b08a9c8f9788112644f8a8557e8e0ecc77b07091afabb941dc55d0",
"sha256:f3df52362be39908f9c028a65490fae0475e4898b43a03d8aa29d1e765b45e07"
],
"version": "==3.4.4"
},
"aiohttp-json-rpc": {
"hashes": [
"sha256:00d72f40edfc7271578d545a8c47874c0e23cc5d3201ed8128481f6a4af47e32",
"sha256:02d83b6998f8a0b7e59b46f0cb8a96b475bbf82600b1f9527df47135353f1ca8"
],
"version": "==0.11.2"
},
"appdirs": {
"hashes": [
"sha256:9e5896d1372858f8dd3344faf4e5014d21849c756c8d5701f78f8a103b372d92",
"sha256:d8b24664561d0d34ddfaec54636d502d7cea6e29c3eaf68f3df6180863e2166e"
],
"version": "==1.4.3"
},
"async-timeout": {
"hashes": [
"sha256:0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f",
"sha256:4291ca197d287d274d0b6cb5d6f8f8f82d434ed288f962539ff18cc9012f9ea3"
],
"version": "==3.0.1"
},
"attrs": {
"hashes": [
"sha256:10cbf6e27dbce8c30807caf056c8eb50917e0eaafe86347671b57254006c3e69",
"sha256:ca4be454458f9dec299268d472aaa5a11f67a4ff70093396e1ceae9c76cf4bbb"
],
"version": "==18.2.0"
},
"chardet": {
"hashes": [
"sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae",
"sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"
],
"version": "==3.0.4"
},
"colorama": {
"hashes": [
"sha256:05eed71e2e327246ad6b38c540c4a3117230b19679b875190486ddd2d721422d",
"sha256:f8ac84de7840f5b9c4e3347b3c1eaa50f7e49c2b07596221daec5edaabbd7c48"
],
"version": "==0.4.1"
},
"discord-py": {
"editable": true,
"git": "git://github.com/Rapptz/discord.py",
"ref": "7f4c57dd5ad20b7fa10aea485f674a4bc24b9547"
},
"discord.py": {
"editable": true,
"git": "git://github.com/Rapptz/discord.py",
"ref": "rewrite"
},
"distro": {
"hashes": [
"sha256:224041cef9600e72d19ae41ba006e71c05c4dc802516da715d7fda55ba3d8742",
"sha256:6ec8e539cf412830e5ccf521aecf879f2c7fcf60ce446e33cd16eef1ed8a0158"
],
"version": "==1.3.0"
},
"dnspython": {
"hashes": [
"sha256:36c5e8e38d4369a08b6780b7f27d790a292b2b08eea01607865bf0936c558e01",
"sha256:f69c21288a962f4da86e56c4905b49d11aba7938d3d740e80d9e366ee4f1632d"
],
"version": "==1.16.0"
},
"e1839a8": {
"editable": true,
"extras": [
"mongo",
"voice"
],
"path": "."
},
"fuzzywuzzy": {
"hashes": [
"sha256:5ac7c0b3f4658d2743aa17da53a55598144edbc5bee3c6863840636e6926f254",
"sha256:6f49de47db00e1c71d40ad16da42284ac357936fa9b66bea1df63fed07122d62"
],
"version": "==0.17.0"
},
"idna": {
"hashes": [
"sha256:c357b3f628cf53ae2c4c05627ecc484553142ca23264e593d327bcde5e9c3407",
"sha256:ea8b7f6188e6fa117537c3df7da9fc686d485087abf6ac197f9c46432f7e4a3c"
],
"version": "==2.8"
},
"idna-ssl": {
"hashes": [
"sha256:a933e3bb13da54383f9e8f35dc4f9cb9eb9b3b78c6b36f311254d6d0d92c6c7c"
],
"version": "==1.1.0"
},
"motor": {
"hashes": [
"sha256:462fbb824f4289481c158227a2579d6adaf1ec7c70cf7ebe60ed6ceb321e5869",
"sha256:d035c09ab422bc50bf3efb134f7405694cae76268545bd21e14fb22e2638f84e"
],
"version": "==2.0.0"
},
"multidict": {
"hashes": [
"sha256:024b8129695a952ebd93373e45b5d341dbb87c17ce49637b34000093f243dd4f",
"sha256:041e9442b11409be5e4fc8b6a97e4bcead758ab1e11768d1e69160bdde18acc3",
"sha256:045b4dd0e5f6121e6f314d81759abd2c257db4634260abcfe0d3f7083c4908ef",
"sha256:047c0a04e382ef8bd74b0de01407e8d8632d7d1b4db6f2561106af812a68741b",
"sha256:068167c2d7bbeebd359665ac4fff756be5ffac9cda02375b5c5a7c4777038e73",
"sha256:148ff60e0fffa2f5fad2eb25aae7bef23d8f3b8bdaf947a65cdbe84a978092bc",
"sha256:1d1c77013a259971a72ddaa83b9f42c80a93ff12df6a4723be99d858fa30bee3",
"sha256:1d48bc124a6b7a55006d97917f695effa9725d05abe8ee78fd60d6588b8344cd",
"sha256:31dfa2fc323097f8ad7acd41aa38d7c614dd1960ac6681745b6da124093dc351",
"sha256:34f82db7f80c49f38b032c5abb605c458bac997a6c3142e0d6c130be6fb2b941",
"sha256:3d5dd8e5998fb4ace04789d1d008e2bb532de501218519d70bb672c4c5a2fc5d",
"sha256:4a6ae52bd3ee41ee0f3acf4c60ceb3f44e0e3bc52ab7da1c2b2aa6703363a3d1",
"sha256:4b02a3b2a2f01d0490dd39321c74273fed0568568ea0e7ea23e02bd1fb10a10b",
"sha256:4b843f8e1dd6a3195679d9838eb4670222e8b8d01bc36c9894d6c3538316fa0a",
"sha256:5de53a28f40ef3c4fd57aeab6b590c2c663de87a5af76136ced519923d3efbb3",
"sha256:61b2b33ede821b94fa99ce0b09c9ece049c7067a33b279f343adfe35108a4ea7",
"sha256:6a3a9b0f45fd75dc05d8e93dc21b18fc1670135ec9544d1ad4acbcf6b86781d0",
"sha256:76ad8e4c69dadbb31bad17c16baee61c0d1a4a73bed2590b741b2e1a46d3edd0",
"sha256:7ba19b777dc00194d1b473180d4ca89a054dd18de27d0ee2e42a103ec9b7d014",
"sha256:7c1b7eab7a49aa96f3db1f716f0113a8a2e93c7375dd3d5d21c4941f1405c9c5",
"sha256:7fc0eee3046041387cbace9314926aa48b681202f8897f8bff3809967a049036",
"sha256:8ccd1c5fff1aa1427100ce188557fc31f1e0a383ad8ec42c559aabd4ff08802d",
"sha256:8e08dd76de80539d613654915a2f5196dbccc67448df291e69a88712ea21e24a",
"sha256:c18498c50c59263841862ea0501da9f2b3659c00db54abfbf823a80787fde8ce",
"sha256:c49db89d602c24928e68c0d510f4fcf8989d77defd01c973d6cbe27e684833b1",
"sha256:ce20044d0317649ddbb4e54dab3c1bcc7483c78c27d3f58ab3d0c7e6bc60d26a",
"sha256:d1071414dd06ca2eafa90c85a079169bfeb0e5f57fd0b45d44c092546fcd6fd9",
"sha256:d3be11ac43ab1a3e979dac80843b42226d5d3cccd3986f2e03152720a4297cd7",
"sha256:db603a1c235d110c860d5f39988ebc8218ee028f07a7cbc056ba6424372ca31b"
],
"version": "==4.5.2"
},
"pymongo": {
"hashes": [
"sha256:025f94fc1e1364f00e50badc88c47f98af20012f23317234e51a11333ef986e6",
"sha256:02aa7fb282606331aefbc0586e2cf540e9dbe5e343493295e7f390936ad2738e",
"sha256:057210e831573e932702cf332012ed39da78edf0f02d24a3f0b213264a87a397",
"sha256:0d946b79c56187fe139276d4c8ed612a27a616966c8b9779d6b79e2053587c8b",
"sha256:104790893b928d310aae8a955e0bdbaa442fb0ac0a33d1bbb0741c791a407778",
"sha256:15527ef218d95a8717486106553b0d54ff2641e795b65668754e17ab9ca6e381",
"sha256:1826527a0b032f6e20e7ac7f72d7c26dd476a5e5aa82c04aa1c7088a59fded7d",
"sha256:22e3aa4ce1c3eebc7f70f9ca7fd4ce1ea33e8bdb7b61996806cd312f08f84a3a",
"sha256:244e1101e9a48615b9a16cbd194f73c115fdfefc96894803158608115f703b26",
"sha256:24b8c04fdb633a84829d03909752c385faef249c06114cc8d8e1700b95aae5c8",
"sha256:2c276696350785d3104412cbe3ac70ab1e3a10c408e7b20599ee41403a3ed630",
"sha256:2d8474dc833b1182b651b184ace997a7bd83de0f51244de988d3c30e49f07de3",
"sha256:3119b57fe1d964781e91a53e81532c85ed1701baaddec592e22f6b77a9fdf3df",
"sha256:3bee8e7e0709b0fcdaa498a3e513bde9ffc7cd09dbceb11e425bd91c89dbd5b6",
"sha256:436c071e01a464753d30dbfc8768dd93aecf2a8e378e5314d130b95e77b4d612",
"sha256:46635e3f19ad04d5a7d7cf23d232388ddbfccf46d9a3b7436b6abadda4e84813",
"sha256:4772e0b679717e7ac4608d996f57b6f380748a919b457cb05bb941467b888b22",
"sha256:4e2cd80e16f481a62c3175b607373200e714ed29025f21559ebf7524f295689f",
"sha256:52732960efa0e003ca1c092dc0a3c65276e897681287a788a01ca78dda3b41f0",
"sha256:55a7de51ec7d1731b2431886d0349146645f2816e5b8eb982d7c49f89472c9f3",
"sha256:5f8ed5934197a2d4b2087646e98de3e099a237099dcf498b9e38dd3465f74ef4",
"sha256:64b064124fcbc8eb04a155117dc4d9a336e3cda3f069958fbc44fe70c3c3d1e9",
"sha256:65958b8e4319f992e85dad59d8081888b97fcdbde5f0d14bc28f2848b92d3ef1",
"sha256:7683428862e20c6a790c19e64f8ccf487f613fbc83d47e3d532df9c81668d451",
"sha256:78566d5570c75a127c2491e343dc006798a384f06be588fe9b0cbe5595711559",
"sha256:7d1cb00c093dbf1d0b16ccf123e79dee3b82608e4a2a88947695f0460eef13ff",
"sha256:8c74e2a9b594f7962c62cef7680a4cb92a96b4e6e3c2f970790da67cc0213a7e",
"sha256:8e60aa7699170f55f4b0f56ee6f8415229777ac7e4b4b1aa41fc61eec08c1f1d",
"sha256:9447b561529576d89d3bf973e5241a88cf76e45bd101963f5236888713dea774",
"sha256:970055bfeb0be373f2f5299a3db8432444bad3bc2f198753ee6c2a3a781e0959",
"sha256:a6344b8542e584e140dc3c651d68bde51270e79490aa9320f9e708f9b2c39bd5",
"sha256:ce309ca470d747b02ba6069d286a17b7df8e9c94d10d727d9cf3a64e51d85184",
"sha256:cfbd86ed4c2b2ac71bbdbcea6669bf295def7152e3722ddd9dda94ac7981f33d",
"sha256:d7929c513732dff093481f4a0954ed5ff16816365842136b17caa0b4992e49d3"
],
"version": "==3.7.2"
},
"python-levenshtein": {
"hashes": [
"sha256:033a11de5e3d19ea25c9302d11224e1a1898fe5abd23c61c7c360c25195e3eb1"
],
"version": "==0.12.0"
},
"pyyaml": {
"hashes": [
"sha256:3d7da3009c0f3e783b2c873687652d83b1bbfd5c88e9813fb7e5b03c0dd3108b",
"sha256:3ef3092145e9b70e3ddd2c7ad59bdd0252a94dfe3949721633e41344de00a6bf",
"sha256:40c71b8e076d0550b2e6380bada1f1cd1017b882f7e16f09a65be98e017f211a",
"sha256:558dd60b890ba8fd982e05941927a3911dc409a63dcb8b634feaa0cda69330d3",
"sha256:a7c28b45d9f99102fa092bb213aa12e0aaf9a6a1f5e395d36166639c1f96c3a1",
"sha256:aa7dd4a6a427aed7df6fb7f08a580d68d9b118d90310374716ae90b710280af1",
"sha256:bc558586e6045763782014934bfaf39d48b8ae85a2713117d16c39864085c613",
"sha256:d46d7982b62e0729ad0175a9bc7e10a566fc07b224d2c79fafb5e032727eaa04",
"sha256:d5eef459e30b09f5a098b9cea68bebfeb268697f78d647bd255a085371ac7f3f",
"sha256:e01d3203230e1786cd91ccfdc8f8454c8069c91bee3962ad93b87a4b2860f537",
"sha256:e170a9e6fcfd19021dd29845af83bb79236068bf5fd4df3327c1be18182b2531"
],
"version": "==3.13"
},
"raven": {
"hashes": [
"sha256:3fa6de6efa2493a7c827472e984ce9b020797d0da16f1db67197bcc23c8fae54",
"sha256:44a13f87670836e153951af9a3c80405d36b43097db869a36e92809673692ce4"
],
"version": "==6.10.0"
},
"raven-aiohttp": {
"hashes": [
"sha256:1444a49c93a85b8bb57c6ee649e512368dce7a26ad64ac3a01d86aa5669d77f3",
"sha256:6a34b6a9841ad0fd827eeb158edb5826c5c5bd7babe2cde2a3f23eb85313af04"
],
"version": "==0.7.0"
},
"red-lavalink": {
"hashes": [
"sha256:6a1a34471ccf4630eee537049568dd87e8e93614f1d1ce355dd74e5b10079782"
],
"version": "==0.1.2"
},
"schema": {
"hashes": [
"sha256:d994b0dc4966000037b26898df638e3e2a694cc73636cb2050e652614a350687",
"sha256:fa1a53fe5f3b6929725a4e81688c250f46838e25d8c1885a10a590c8c01a7b74"
],
"version": "==0.6.8"
},
"websockets": {
"hashes": [
"sha256:0e2f7d6567838369af074f0ef4d0b802d19fa1fee135d864acc656ceefa33136",
"sha256:2a16dac282b2fdae75178d0ed3d5b9bc3258dabfae50196cbb30578d84b6f6a6",
"sha256:5a1fa6072405648cb5b3688e9ed3b94be683ce4a4e5723e6f5d34859dee495c1",
"sha256:5c1f55a1274df9d6a37553fef8cff2958515438c58920897675c9bc70f5a0538",
"sha256:669d1e46f165e0ad152ed8197f7edead22854a6c90419f544e0f234cc9dac6c4",
"sha256:695e34c4dbea18d09ab2c258994a8bf6a09564e762655408241f6a14592d2908",
"sha256:6b2e03d69afa8d20253455e67b64de1a82ff8612db105113cccec35d3f8429f0",
"sha256:79ca7cdda7ad4e3663ea3c43bfa8637fc5d5604c7737f19a8964781abbd1148d",
"sha256:7fd2dd9a856f72e6ed06f82facfce01d119b88457cd4b47b7ae501e8e11eba9c",
"sha256:82c0354ac39379d836719a77ee360ef865377aa6fdead87909d50248d0f05f4d",
"sha256:8f3b956d11c5b301206382726210dc1d3bee1a9ccf7aadf895aaf31f71c3716c",
"sha256:91ec98640220ae05b34b79ee88abf27f97ef7c61cf525eec57ea8fcea9f7dddb",
"sha256:952be9540d83dba815569d5cb5f31708801e0bbfc3a8c5aef1890b57ed7e58bf",
"sha256:99ac266af38ba1b1fe13975aea01ac0e14bb5f3a3200d2c69f05385768b8568e",
"sha256:9fa122e7adb24232247f8a89f2d9070bf64b7869daf93ac5e19546b409e47e96",
"sha256:a0873eadc4b8ca93e2e848d490809e0123eea154aa44ecd0109c4d0171869584",
"sha256:cb998bd4d93af46b8b49ecf5a72c0a98e5cc6d57fdca6527ba78ad89d6606484",
"sha256:e02e57346f6a68523e3c43bbdf35dde5c440318d1f827208ae455f6a2ace446d",
"sha256:e79a5a896bcee7fff24a788d72e5c69f13e61369d055f28113e71945a7eb1559",
"sha256:ee55eb6bcf23ecc975e6b47c127c201b913598f38b6a300075f84eeef2d3baff",
"sha256:f1414e6cbcea8d22843e7eafdfdfae3dd1aba41d1945f6ca66e4806c07c4f454"
],
"version": "==6.0"
},
"yarl": {
"hashes": [
"sha256:024ecdc12bc02b321bc66b41327f930d1c2c543fa9a561b39861da9388ba7aa9",
"sha256:2f3010703295fbe1aec51023740871e64bb9664c789cba5a6bdf404e93f7568f",
"sha256:3890ab952d508523ef4881457c4099056546593fa05e93da84c7250516e632eb",
"sha256:3e2724eb9af5dc41648e5bb304fcf4891adc33258c6e14e2a7414ea32541e320",
"sha256:5badb97dd0abf26623a9982cd448ff12cb39b8e4c94032ccdedf22ce01a64842",
"sha256:73f447d11b530d860ca1e6b582f947688286ad16ca42256413083d13f260b7a0",
"sha256:7ab825726f2940c16d92aaec7d204cfc34ac26c0040da727cf8ba87255a33829",
"sha256:b25de84a8c20540531526dfbb0e2d2b648c13fd5dd126728c496d7c3fea33310",
"sha256:c6e341f5a6562af74ba55205dbd56d248daf1b5748ec48a0200ba227bb9e33f4",
"sha256:c9bb7c249c4432cd47e75af3864bc02d26c9594f49c82e2a28624417f0ae63b8",
"sha256:e060906c0c585565c718d1c3841747b61c5439af2211e185f6739a9412dfbde1"
],
"version": "==1.3.0"
}
},
"develop": {
"aiohttp": {
"hashes": [
"sha256:0419705a36b43c0ac6f15469f9c2a08cad5c939d78bd12a5c23ea167c8253b2b",
"sha256:1812fc4bc6ac1bde007daa05d2d0f61199324e0cc893b11523e646595047ca08",
"sha256:2214b5c0153f45256d5d52d1e0cafe53f9905ed035a142191727a5fb620c03dd",
"sha256:275909137f0c92c61ba6bb1af856a522d5546f1de8ea01e4e726321c697754ac",
"sha256:3983611922b561868428ea1e7269e757803713f55b53502423decc509fef1650",
"sha256:51afec6ffa50a9da4cdef188971a802beb1ca8e8edb40fa429e5e529db3475fa",
"sha256:589f2ec8a101a0f340453ee6945bdfea8e1cd84c8d88e5be08716c34c0799d95",
"sha256:789820ddc65e1f5e71516adaca2e9022498fa5a837c79ba9c692a9f8f916c330",
"sha256:7a968a0bdaaf9abacc260911775611c9a602214a23aeb846f2eb2eeaa350c4dc",
"sha256:7aeefbed253f59ea39e70c5848de42ed85cb941165357fc7e87ab5d8f1f9592b",
"sha256:7b2eb55c66512405103485bd7d285a839d53e7fdc261ab20e5bcc51d7aaff5de",
"sha256:87bc95d3d333bb689c8d755b4a9d7095a2356108002149523dfc8e607d5d32a4",
"sha256:9d80e40db208e29168d3723d1440ecbb06054d349c5ece6a2c5a611490830dd7",
"sha256:a1b442195c2a77d33e4dbee67c9877ccbdd3a1f686f91eb479a9577ed8cc326b",
"sha256:ab3d769413b322d6092f169f316f7b21cd261a7589f7e31db779d5731b0480d8",
"sha256:b066d3dec5d0f5aee6e34e5765095dc3d6d78ef9839640141a2b20816a0642bd",
"sha256:b24e7845ae8de3e388ef4bcfcf7f96b05f52c8e633b33cf8003a6b1d726fc7c2",
"sha256:c59a953c3f8524a7c86eaeaef5bf702555be12f5668f6384149fe4bb75c52698",
"sha256:cf2cc6c2c10d242790412bea7ccf73726a9a44b4c4b073d2699ef3b48971fd95",
"sha256:e0c9c8d4150ae904f308ff27b35446990d2b1dfc944702a21925937e937394c6",
"sha256:f1839db4c2b08a9c8f9788112644f8a8557e8e0ecc77b07091afabb941dc55d0",
"sha256:f3df52362be39908f9c028a65490fae0475e4898b43a03d8aa29d1e765b45e07"
],
"version": "==3.4.4"
},
"aiohttp-json-rpc": {
"hashes": [
"sha256:00d72f40edfc7271578d545a8c47874c0e23cc5d3201ed8128481f6a4af47e32",
"sha256:02d83b6998f8a0b7e59b46f0cb8a96b475bbf82600b1f9527df47135353f1ca8"
],
"version": "==0.11.2"
},
"alabaster": {
"hashes": [
"sha256:446438bdcca0e05bd45ea2de1668c1d9b032e1a9154c2c259092d77031ddd359",
"sha256:a661d72d58e6ea8a57f7a86e37d86716863ee5e92788398526d58b26a4e4dc02"
],
"version": "==0.7.12"
},
"appdirs": {
"hashes": [
"sha256:9e5896d1372858f8dd3344faf4e5014d21849c756c8d5701f78f8a103b372d92",
"sha256:d8b24664561d0d34ddfaec54636d502d7cea6e29c3eaf68f3df6180863e2166e"
],
"version": "==1.4.3"
},
"async-timeout": {
"hashes": [
"sha256:0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f",
"sha256:4291ca197d287d274d0b6cb5d6f8f8f82d434ed288f962539ff18cc9012f9ea3"
],
"version": "==3.0.1"
},
"atomicwrites": {
"hashes": [
"sha256:0312ad34fcad8fac3704d441f7b317e50af620823353ec657a53e981f92920c0",
"sha256:ec9ae8adaae229e4f8446952d204a3e4b5fdd2d099f9be3aaf556120135fb3ee"
],
"version": "==1.2.1"
},
"attrs": {
"hashes": [
"sha256:10cbf6e27dbce8c30807caf056c8eb50917e0eaafe86347671b57254006c3e69",
"sha256:ca4be454458f9dec299268d472aaa5a11f67a4ff70093396e1ceae9c76cf4bbb"
],
"version": "==18.2.0"
},
"babel": {
"hashes": [
"sha256:6778d85147d5d85345c14a26aada5e478ab04e39b078b0745ee6870c2b5cf669",
"sha256:8cba50f48c529ca3fa18cf81fa9403be176d374ac4d60738b839122dfaaa3d23"
],
"version": "==2.6.0"
},
"black": {
"hashes": [
"sha256:817243426042db1d36617910df579a54f1afd659adb96fc5032fcf4b36209739",
"sha256:e030a9a28f542debc08acceb273f228ac422798e5215ba2a791a6ddeaaca22a5"
],
"version": "==18.9b0"
},
"certifi": {
"hashes": [
"sha256:47f9c83ef4c0c621eaef743f133f09fa8a74a9b75f037e8624f83bd1b6626cb7",
"sha256:993f830721089fef441cdfeb4b2c8c9df86f0c63239f06bd025a76a7daddb033"
],
"version": "==2018.11.29"
},
"chardet": {
"hashes": [
"sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae",
"sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"
],
"version": "==3.0.4"
},
"click": {
"hashes": [
"sha256:2335065e6395b9e67ca716de5f7526736bfa6ceead690adf616d925bdc622b13",
"sha256:5b94b49521f6456670fdb30cd82a4eca9412788a93fa6dd6df72c94d5a8ff2d7"
],
"version": "==7.0"
},
"colorama": {
"hashes": [
"sha256:05eed71e2e327246ad6b38c540c4a3117230b19679b875190486ddd2d721422d",
"sha256:f8ac84de7840f5b9c4e3347b3c1eaa50f7e49c2b07596221daec5edaabbd7c48"
],
"version": "==0.4.1"
},
"distro": {
"hashes": [
"sha256:224041cef9600e72d19ae41ba006e71c05c4dc802516da715d7fda55ba3d8742",
"sha256:6ec8e539cf412830e5ccf521aecf879f2c7fcf60ce446e33cd16eef1ed8a0158"
],
"version": "==1.3.0"
},
"docutils": {
"hashes": [
"sha256:02aec4bd92ab067f6ff27a38a38a41173bf01bed8f89157768c1573f53e474a6",
"sha256:51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274",
"sha256:7a4bd47eaf6596e1295ecb11361139febe29b084a87bf005bf899f9a42edc3c6"
],
"version": "==0.14"
},
"e1839a9": {
"editable": true,
"extras": [
"docs",
"test",
"style"
],
"path": "."
},
"filelock": {
"hashes": [
"sha256:b8d5ca5ca1c815e1574aee746650ea7301de63d87935b3463d26368b76e31633",
"sha256:d610c1bb404daf85976d7a82eb2ada120f04671007266b708606565dd03b5be6"
],
"version": "==3.0.10"
},
"fuzzywuzzy": {
"hashes": [
"sha256:5ac7c0b3f4658d2743aa17da53a55598144edbc5bee3c6863840636e6926f254",
"sha256:6f49de47db00e1c71d40ad16da42284ac357936fa9b66bea1df63fed07122d62"
],
"version": "==0.17.0"
},
"idna": {
"hashes": [
"sha256:c357b3f628cf53ae2c4c05627ecc484553142ca23264e593d327bcde5e9c3407",
"sha256:ea8b7f6188e6fa117537c3df7da9fc686d485087abf6ac197f9c46432f7e4a3c"
],
"version": "==2.8"
},
"idna-ssl": {
"hashes": [
"sha256:a933e3bb13da54383f9e8f35dc4f9cb9eb9b3b78c6b36f311254d6d0d92c6c7c"
],
"version": "==1.1.0"
},
"imagesize": {
"hashes": [
"sha256:3f349de3eb99145973fefb7dbe38554414e5c30abd0c8e4b970a7c9d09f3a1d8",
"sha256:f3832918bc3c66617f92e35f5d70729187676313caa60c187eb0f28b8fe5e3b5"
],
"version": "==1.1.0"
},
"jinja2": {
"hashes": [
"sha256:74c935a1b8bb9a3947c50a54766a969d4846290e1e788ea44c1392163723c3bd",
"sha256:f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4"
],
"version": "==2.10"
},
"markupsafe": {
"hashes": [
"sha256:048ef924c1623740e70204aa7143ec592504045ae4429b59c30054cb31e3c432",
"sha256:130f844e7f5bdd8e9f3f42e7102ef1d49b2e6fdf0d7526df3f87281a532d8c8b",
"sha256:19f637c2ac5ae9da8bfd98cef74d64b7e1bb8a63038a3505cd182c3fac5eb4d9",
"sha256:1b8a7a87ad1b92bd887568ce54b23565f3fd7018c4180136e1cf412b405a47af",
"sha256:1c25694ca680b6919de53a4bb3bdd0602beafc63ff001fea2f2fc16ec3a11834",
"sha256:1f19ef5d3908110e1e891deefb5586aae1b49a7440db952454b4e281b41620cd",
"sha256:1fa6058938190ebe8290e5cae6c351e14e7bb44505c4a7624555ce57fbbeba0d",
"sha256:31cbb1359e8c25f9f48e156e59e2eaad51cd5242c05ed18a8de6dbe85184e4b7",
"sha256:3e835d8841ae7863f64e40e19477f7eb398674da6a47f09871673742531e6f4b",
"sha256:4e97332c9ce444b0c2c38dd22ddc61c743eb208d916e4265a2a3b575bdccb1d3",
"sha256:525396ee324ee2da82919f2ee9c9e73b012f23e7640131dd1b53a90206a0f09c",
"sha256:52b07fbc32032c21ad4ab060fec137b76eb804c4b9a1c7c7dc562549306afad2",
"sha256:52ccb45e77a1085ec5461cde794e1aa037df79f473cbc69b974e73940655c8d7",
"sha256:5c3fbebd7de20ce93103cb3183b47671f2885307df4a17a0ad56a1dd51273d36",
"sha256:5e5851969aea17660e55f6a3be00037a25b96a9b44d2083651812c99d53b14d1",
"sha256:5edfa27b2d3eefa2210fb2f5d539fbed81722b49f083b2c6566455eb7422fd7e",
"sha256:7d263e5770efddf465a9e31b78362d84d015cc894ca2c131901a4445eaa61ee1",
"sha256:83381342bfc22b3c8c06f2dd93a505413888694302de25add756254beee8449c",
"sha256:857eebb2c1dc60e4219ec8e98dfa19553dae33608237e107db9c6078b1167856",
"sha256:98e439297f78fca3a6169fd330fbe88d78b3bb72f967ad9961bcac0d7fdd1550",
"sha256:bf54103892a83c64db58125b3f2a43df6d2cb2d28889f14c78519394feb41492",
"sha256:d9ac82be533394d341b41d78aca7ed0e0f4ba5a2231602e2f05aa87f25c51672",
"sha256:e982fe07ede9fada6ff6705af70514a52beb1b2c3d25d4e873e82114cf3c5401",
"sha256:edce2ea7f3dfc981c4ddc97add8a61381d9642dc3273737e756517cc03e84dd6",
"sha256:efdc45ef1afc238db84cb4963aa689c0408912a0239b0721cb172b4016eb31d6",
"sha256:f137c02498f8b935892d5c0172560d7ab54bc45039de8805075e19079c639a9c",
"sha256:f82e347a72f955b7017a39708a3667f106e6ad4d10b25f237396a7115d8ed5fd",
"sha256:fb7c206e01ad85ce57feeaaa0bf784b97fa3cad0d4a5737bc5295785f5c613a1"
],
"version": "==1.1.0"
},
"more-itertools": {
"hashes": [
"sha256:38a936c0a6d98a38bcc2d03fdaaedaba9f412879461dd2ceff8d37564d6522e4",
"sha256:c0a5785b1109a6bd7fac76d6837fd1feca158e54e521ccd2ae8bfe393cc9d4fc",
"sha256:fe7a7cae1ccb57d33952113ff4fa1bc5f879963600ed74918f1236e212ee50b9"
],
"version": "==5.0.0"
},
"multidict": {
"hashes": [
"sha256:024b8129695a952ebd93373e45b5d341dbb87c17ce49637b34000093f243dd4f",
"sha256:041e9442b11409be5e4fc8b6a97e4bcead758ab1e11768d1e69160bdde18acc3",
"sha256:045b4dd0e5f6121e6f314d81759abd2c257db4634260abcfe0d3f7083c4908ef",
"sha256:047c0a04e382ef8bd74b0de01407e8d8632d7d1b4db6f2561106af812a68741b",
"sha256:068167c2d7bbeebd359665ac4fff756be5ffac9cda02375b5c5a7c4777038e73",
"sha256:148ff60e0fffa2f5fad2eb25aae7bef23d8f3b8bdaf947a65cdbe84a978092bc",
"sha256:1d1c77013a259971a72ddaa83b9f42c80a93ff12df6a4723be99d858fa30bee3",
"sha256:1d48bc124a6b7a55006d97917f695effa9725d05abe8ee78fd60d6588b8344cd",
"sha256:31dfa2fc323097f8ad7acd41aa38d7c614dd1960ac6681745b6da124093dc351",
"sha256:34f82db7f80c49f38b032c5abb605c458bac997a6c3142e0d6c130be6fb2b941",
"sha256:3d5dd8e5998fb4ace04789d1d008e2bb532de501218519d70bb672c4c5a2fc5d",
"sha256:4a6ae52bd3ee41ee0f3acf4c60ceb3f44e0e3bc52ab7da1c2b2aa6703363a3d1",
"sha256:4b02a3b2a2f01d0490dd39321c74273fed0568568ea0e7ea23e02bd1fb10a10b",
"sha256:4b843f8e1dd6a3195679d9838eb4670222e8b8d01bc36c9894d6c3538316fa0a",
"sha256:5de53a28f40ef3c4fd57aeab6b590c2c663de87a5af76136ced519923d3efbb3",
"sha256:61b2b33ede821b94fa99ce0b09c9ece049c7067a33b279f343adfe35108a4ea7",
"sha256:6a3a9b0f45fd75dc05d8e93dc21b18fc1670135ec9544d1ad4acbcf6b86781d0",
"sha256:76ad8e4c69dadbb31bad17c16baee61c0d1a4a73bed2590b741b2e1a46d3edd0",
"sha256:7ba19b777dc00194d1b473180d4ca89a054dd18de27d0ee2e42a103ec9b7d014",
"sha256:7c1b7eab7a49aa96f3db1f716f0113a8a2e93c7375dd3d5d21c4941f1405c9c5",
"sha256:7fc0eee3046041387cbace9314926aa48b681202f8897f8bff3809967a049036",
"sha256:8ccd1c5fff1aa1427100ce188557fc31f1e0a383ad8ec42c559aabd4ff08802d",
"sha256:8e08dd76de80539d613654915a2f5196dbccc67448df291e69a88712ea21e24a",
"sha256:c18498c50c59263841862ea0501da9f2b3659c00db54abfbf823a80787fde8ce",
"sha256:c49db89d602c24928e68c0d510f4fcf8989d77defd01c973d6cbe27e684833b1",
"sha256:ce20044d0317649ddbb4e54dab3c1bcc7483c78c27d3f58ab3d0c7e6bc60d26a",
"sha256:d1071414dd06ca2eafa90c85a079169bfeb0e5f57fd0b45d44c092546fcd6fd9",
"sha256:d3be11ac43ab1a3e979dac80843b42226d5d3cccd3986f2e03152720a4297cd7",
"sha256:db603a1c235d110c860d5f39988ebc8218ee028f07a7cbc056ba6424372ca31b"
],
"version": "==4.5.2"
},
"packaging": {
"hashes": [
"sha256:0886227f54515e592aaa2e5a553332c73962917f2831f1b0f9b9f4380a4b9807",
"sha256:f95a1e147590f204328170981833854229bb2912ac3d5f89e2a8ccd2834800c9"
],
"version": "==18.0"
},
"pluggy": {
"hashes": [
"sha256:8ddc32f03971bfdf900a81961a48ccf2fb677cf7715108f85295c67405798616",
"sha256:980710797ff6a041e9a73a5787804f848996ecaa6f8a1b1e08224a5894f2074a"
],
"version": "==0.8.1"
},
"py": {
"hashes": [
"sha256:bf92637198836372b520efcba9e020c330123be8ce527e535d185ed4b6f45694",
"sha256:e76826342cefe3c3d5f7e8ee4316b80d1dd8a300781612ddbc765c17ba25a6c6"
],
"version": "==1.7.0"
},
"pygments": {
"hashes": [
"sha256:5ffada19f6203563680669ee7f53b64dabbeb100eb51b61996085e99c03b284a",
"sha256:e8218dd399a61674745138520d0d4cf2621d7e032439341bc3f647bff125818d"
],
"version": "==2.3.1"
},
"pyparsing": {
"hashes": [
"sha256:40856e74d4987de5d01761a22d1621ae1c7f8774585acae358aa5c5936c6c90b",
"sha256:f353aab21fd474459d97b709e527b5571314ee5f067441dc9f88e33eecd96592"
],
"version": "==2.3.0"
},
"pytest": {
"hashes": [
"sha256:3e65a22eb0d4f1bdbc1eacccf4a3198bf8d4049dea5112d70a0c61b00e748d02",
"sha256:5924060b374f62608a078494b909d341720a050b5224ff87e17e12377486a71d"
],
"version": "==4.1.0"
},
"pytest-asyncio": {
"hashes": [
"sha256:9fac5100fd716cbecf6ef89233e8590a4ad61d729d1732e0a96b84182df1daaf",
"sha256:d734718e25cfc32d2bf78d346e99d33724deeba774cc4afdf491530c6184b63b"
],
"version": "==0.10.0"
},
"python-levenshtein": {
"hashes": [
"sha256:033a11de5e3d19ea25c9302d11224e1a1898fe5abd23c61c7c360c25195e3eb1"
],
"version": "==0.12.0"
},
"pytz": {
"hashes": [
"sha256:32b0891edff07e28efe91284ed9c31e123d84bea3fd98e1f72be2508f43ef8d9",
"sha256:d5f05e487007e29e03409f9398d074e158d920d36eb82eaf66fb1136b0c5374c"
],
"version": "==2018.9"
},
"pyyaml": {
"hashes": [
"sha256:3d7da3009c0f3e783b2c873687652d83b1bbfd5c88e9813fb7e5b03c0dd3108b",
"sha256:3ef3092145e9b70e3ddd2c7ad59bdd0252a94dfe3949721633e41344de00a6bf",
"sha256:40c71b8e076d0550b2e6380bada1f1cd1017b882f7e16f09a65be98e017f211a",
"sha256:558dd60b890ba8fd982e05941927a3911dc409a63dcb8b634feaa0cda69330d3",
"sha256:a7c28b45d9f99102fa092bb213aa12e0aaf9a6a1f5e395d36166639c1f96c3a1",
"sha256:aa7dd4a6a427aed7df6fb7f08a580d68d9b118d90310374716ae90b710280af1",
"sha256:bc558586e6045763782014934bfaf39d48b8ae85a2713117d16c39864085c613",
"sha256:d46d7982b62e0729ad0175a9bc7e10a566fc07b224d2c79fafb5e032727eaa04",
"sha256:d5eef459e30b09f5a098b9cea68bebfeb268697f78d647bd255a085371ac7f3f",
"sha256:e01d3203230e1786cd91ccfdc8f8454c8069c91bee3962ad93b87a4b2860f537",
"sha256:e170a9e6fcfd19021dd29845af83bb79236068bf5fd4df3327c1be18182b2531"
],
"version": "==3.13"
},
"raven": {
"hashes": [
"sha256:3fa6de6efa2493a7c827472e984ce9b020797d0da16f1db67197bcc23c8fae54",
"sha256:44a13f87670836e153951af9a3c80405d36b43097db869a36e92809673692ce4"
],
"version": "==6.10.0"
},
"raven-aiohttp": {
"hashes": [
"sha256:1444a49c93a85b8bb57c6ee649e512368dce7a26ad64ac3a01d86aa5669d77f3",
"sha256:6a34b6a9841ad0fd827eeb158edb5826c5c5bd7babe2cde2a3f23eb85313af04"
],
"version": "==0.7.0"
},
"requests": {
"hashes": [
"sha256:502a824f31acdacb3a35b6690b5fbf0bc41d63a24a45c4004352b0242707598e",
"sha256:7bf2a778576d825600030a110f3c0e3e8edc51dfaafe1c146e39a2027784957b"
],
"version": "==2.21.0"
},
"schema": {
"hashes": [
"sha256:d994b0dc4966000037b26898df638e3e2a694cc73636cb2050e652614a350687",
"sha256:fa1a53fe5f3b6929725a4e81688c250f46838e25d8c1885a10a590c8c01a7b74"
],
"version": "==0.6.8"
},
"six": {
"hashes": [
"sha256:3350809f0555b11f552448330d0b52d5f24c91a322ea4a15ef22629740f3761c",
"sha256:d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73"
],
"version": "==1.12.0"
},
"snowballstemmer": {
"hashes": [
"sha256:919f26a68b2c17a7634da993d91339e288964f93c274f1343e3bbbe2096e1128",
"sha256:9f3bcd3c401c3e862ec0ebe6d2c069ebc012ce142cce209c098ccb5b09136e89"
],
"version": "==1.2.1"
},
"sphinx": {
"hashes": [
"sha256:429e3172466df289f0f742471d7e30ba3ee11f3b5aecd9a840480d03f14bcfe5",
"sha256:c4cb17ba44acffae3d3209646b6baec1e215cad3065e852c68cc569d4df1b9f8"
],
"version": "==1.8.3"
},
"sphinx-rtd-theme": {
"hashes": [
"sha256:02f02a676d6baabb758a20c7a479d58648e0f64f13e07d1b388e9bb2afe86a09",
"sha256:d0f6bc70f98961145c5b0e26a992829363a197321ba571b31b24ea91879e0c96"
],
"version": "==0.4.2"
},
"sphinxcontrib-asyncio": {
"hashes": [
"sha256:96627b1ec4eba08d09ad577ff9416c131910333ef37a2c82a2716e59646739f0"
],
"version": "==0.2.0"
},
"sphinxcontrib-websupport": {
"hashes": [
"sha256:68ca7ff70785cbe1e7bccc71a48b5b6d965d79ca50629606c7861a21b206d9dd",
"sha256:9de47f375baf1ea07cdb3436ff39d7a9c76042c10a769c52353ec46e4e8fc3b9"
],
"version": "==1.1.0"
},
"toml": {
"hashes": [
"sha256:229f81c57791a41d65e399fc06bf0848bab550a9dfd5ed66df18ce5f05e73d5c",
"sha256:235682dd292d5899d361a811df37e04a8828a5b1da3115886b73cf81ebc9100e"
],
"version": "==0.10.0"
},
"tox": {
"hashes": [
"sha256:2a8d8a63660563e41e64e3b5b677e81ce1ffa5e2a93c2c565d3768c287445800",
"sha256:edfca7809925f49bdc110d0a2d9966bbf35a0c25637216d9586e7a5c5de17bfb"
],
"index": "pypi",
"version": "==3.6.1"
},
"urllib3": {
"hashes": [
"sha256:61bf29cada3fc2fbefad4fdf059ea4bd1b4a86d2b6d15e1c7c0b582b9752fe39",
"sha256:de9529817c93f27c8ccbfead6985011db27bd0ddfcdb2d86f3f663385c6a9c22"
],
"version": "==1.24.1"
},
"virtualenv": {
"hashes": [
"sha256:34b9ae3742abed2f95d3970acf4d80533261d6061b51160b197f84e5b4c98b4c",
"sha256:fa736831a7b18bd2bfeef746beb622a92509e9733d645952da136b0639cd40cd"
],
"version": "==16.2.0"
},
"websockets": {
"hashes": [
"sha256:0e2f7d6567838369af074f0ef4d0b802d19fa1fee135d864acc656ceefa33136",
"sha256:2a16dac282b2fdae75178d0ed3d5b9bc3258dabfae50196cbb30578d84b6f6a6",
"sha256:5a1fa6072405648cb5b3688e9ed3b94be683ce4a4e5723e6f5d34859dee495c1",
"sha256:5c1f55a1274df9d6a37553fef8cff2958515438c58920897675c9bc70f5a0538",
"sha256:669d1e46f165e0ad152ed8197f7edead22854a6c90419f544e0f234cc9dac6c4",
"sha256:695e34c4dbea18d09ab2c258994a8bf6a09564e762655408241f6a14592d2908",
"sha256:6b2e03d69afa8d20253455e67b64de1a82ff8612db105113cccec35d3f8429f0",
"sha256:79ca7cdda7ad4e3663ea3c43bfa8637fc5d5604c7737f19a8964781abbd1148d",
"sha256:7fd2dd9a856f72e6ed06f82facfce01d119b88457cd4b47b7ae501e8e11eba9c",
"sha256:82c0354ac39379d836719a77ee360ef865377aa6fdead87909d50248d0f05f4d",
"sha256:8f3b956d11c5b301206382726210dc1d3bee1a9ccf7aadf895aaf31f71c3716c",
"sha256:91ec98640220ae05b34b79ee88abf27f97ef7c61cf525eec57ea8fcea9f7dddb",
"sha256:952be9540d83dba815569d5cb5f31708801e0bbfc3a8c5aef1890b57ed7e58bf",
"sha256:99ac266af38ba1b1fe13975aea01ac0e14bb5f3a3200d2c69f05385768b8568e",
"sha256:9fa122e7adb24232247f8a89f2d9070bf64b7869daf93ac5e19546b409e47e96",
"sha256:a0873eadc4b8ca93e2e848d490809e0123eea154aa44ecd0109c4d0171869584",
"sha256:cb998bd4d93af46b8b49ecf5a72c0a98e5cc6d57fdca6527ba78ad89d6606484",
"sha256:e02e57346f6a68523e3c43bbdf35dde5c440318d1f827208ae455f6a2ace446d",
"sha256:e79a5a896bcee7fff24a788d72e5c69f13e61369d055f28113e71945a7eb1559",
"sha256:ee55eb6bcf23ecc975e6b47c127c201b913598f38b6a300075f84eeef2d3baff",
"sha256:f1414e6cbcea8d22843e7eafdfdfae3dd1aba41d1945f6ca66e4806c07c4f454"
],
"version": "==6.0"
},
"yarl": {
"hashes": [
"sha256:024ecdc12bc02b321bc66b41327f930d1c2c543fa9a561b39861da9388ba7aa9",
"sha256:2f3010703295fbe1aec51023740871e64bb9664c789cba5a6bdf404e93f7568f",
"sha256:3890ab952d508523ef4881457c4099056546593fa05e93da84c7250516e632eb",
"sha256:3e2724eb9af5dc41648e5bb304fcf4891adc33258c6e14e2a7414ea32541e320",
"sha256:5badb97dd0abf26623a9982cd448ff12cb39b8e4c94032ccdedf22ce01a64842",
"sha256:73f447d11b530d860ca1e6b582f947688286ad16ca42256413083d13f260b7a0",
"sha256:7ab825726f2940c16d92aaec7d204cfc34ac26c0040da727cf8ba87255a33829",
"sha256:b25de84a8c20540531526dfbb0e2d2b648c13fd5dd126728c496d7c3fea33310",
"sha256:c6e341f5a6562af74ba55205dbd56d248daf1b5748ec48a0200ba227bb9e33f4",
"sha256:c9bb7c249c4432cd47e75af3864bc02d26c9594f49c82e2a28624417f0ae63b8",
"sha256:e060906c0c585565c718d1c3841747b61c5439af2211e185f6739a9412dfbde1"
],
"version": "==1.3.0"
}
}
}

View File

@@ -16,21 +16,21 @@
<img src="https://img.shields.io/badge/Support-Red!-yellow.svg" alt="Support Red on Patreon!">
</a>
<a href="https://www.python.org/downloads/">
<img src="https://img.shields.io/badge/Made%20With-Python%203-blue.svg?style=for-the-badge" alt="Made with Python 3">
<img src="https://img.shields.io/badge/Made%20With-Python%203.7-blue.svg?style=for-the-badge" alt="Made with Python 3.7">
</a>
<a href="https://crowdin.com/project/red-discordbot">
<img src="https://d322cqt584bo4o.cloudfront.net/red-discordbot/localized.svg" alt="Localized with Crowdin">
</a>
<a href="https://github.com/Rapptz/discord.py/tree/rewrite">
<a href="https://github.com/Rapptz/discord.py/">
<img src="https://img.shields.io/badge/discord-py-blue.svg" alt="discord.py">
</a>
</p>
<p align="center">
<a href="https://travis-ci.org/Cog-Creators/Red-DiscordBot">
<img src="https://api.travis-ci.org/Cog-Creators/Red-DiscordBot.svg?branch=V3/develop" alt="Travis CI">
<a href="https://travis-ci.com/Cog-Creators/Red-DiscordBot">
<img src="https://api.travis-ci.com/Cog-Creators/Red-DiscordBot.svg?branch=V3/develop" alt="Travis CI">
</a>
<a href="http://red-discordbot.readthedocs.io/en/v3-develop/?badge=v3-develop">
<img src="https://readthedocs.org/projects/red-discordbot/badge/?version=v3-develop" alt="Red on readthedocs.org">
<a href="http://red-discordbot.readthedocs.io/en/stable/?badge=stable">
<img src="https://readthedocs.org/projects/red-discordbot/badge/?version=stable" alt="Red on readthedocs.org">
</a>
<a href="https://github.com/ambv/black">
<img src="https://img.shields.io/badge/code%20style-black-000000.svg" alt="Code Style: Black">
@@ -45,7 +45,7 @@
<a href="#installation">Installation</a>
<a href="http://red-discordbot.readthedocs.io/en/v3-develop/index.html">Documentation</a>
<a href="http://red-discordbot.readthedocs.io/en/stable/index.html">Documentation</a>
<a href="#plugins">Plugins</a>
@@ -83,19 +83,17 @@ community of cog repositories.**
**The following platforms are officially supported:**
- [Windows](https://red-discordbot.readthedocs.io/en/v3-develop/install_windows.html)
- [MacOS](https://red-discordbot.readthedocs.io/en/v3-develop/install_linux_mac.html)
- [Ubuntu](https://red-discordbot.readthedocs.io/en/v3-develop/install_linux_mac.html)
- [Debian Stretch](https://red-discordbot.readthedocs.io/en/v3-develop/install_linux_mac.html)
- [CentOS 7](https://red-discordbot.readthedocs.io/en/v3-develop/install_linux_mac.html)
- [Arch Linux](https://red-discordbot.readthedocs.io/en/v3-develop/install_linux_mac.html)
- [Raspbian Stretch](https://red-discordbot.readthedocs.io/en/v3-develop/install_linux_mac.html)
- [Windows](https://red-discordbot.readthedocs.io/en/stable/install_windows.html)
- [MacOS](https://red-discordbot.readthedocs.io/en/stable/install_linux_mac.html)
- [Ubuntu](https://red-discordbot.readthedocs.io/en/stable/install_linux_mac.html)
- [Debian Stretch](https://red-discordbot.readthedocs.io/en/stable/install_linux_mac.html)
- [CentOS 7](https://red-discordbot.readthedocs.io/en/stable/install_linux_mac.html)
- [Arch Linux](https://red-discordbot.readthedocs.io/en/stable/install_linux_mac.html)
- [Raspbian Stretch](https://red-discordbot.readthedocs.io/en/stable/install_linux_mac.html)
Already using **Red** V2? Take a look at the [Data Converter](https://red-discordbot.readthedocs.io/en/v3-develop/cog_dataconverter.html)
to import your data to V3.
If after reading the guide you are still experiencing issues, feel free to join the
[Official Discord Server](https://discord.gg/red) and ask in the **#v3-support** channel for help.
[Official Discord Server](https://discord.gg/red) and ask in the **#support** channel for help.
# Plugins
@@ -108,18 +106,18 @@ plugins directly from Discord! A few examples are:
- Casino
- Reaction roles
- Slow Mode
- Anilist
- AniList
- And much, much more!
Feel free to take a [peek](https://github.com/Cog-Creators/Red-DiscordBot/issues/1398) at a list of
Feel free to take a [peek](https://cogboard.red/t/approved-repositories/210) at a list of
available 3rd party cogs!
# Join the community!
**Red** is in continuous development, and its supported by an active community which produces new
content (cogs/plugins) for everyone to enjoy. New features are constantly added. If you cant
[find](https://github.com/Cog-Creators/Red-DiscordBot/issues/1398) the cog youre looking for,
consult our [guide](https://red-discordbot.readthedocs.io/en/v3-develop/guide_cog_creation.html) on
[find](https://cogboard.red/t/approved-repositories/210) the cog youre looking for,
consult our [guide](https://red-discordbot.readthedocs.io/en/stable/guide_cog_creation.html) on
building your own cogs!
Join us on our [Official Discord Server](https://discord.gg/red)!

View File

@@ -1,5 +1,8 @@
api_key_env: CROWDIN_API_KEY
project_identifier_env: CROWDIN_PROJECT_ID
base_path: ./redbot/
files:
- source: /redbot/**/*.pot
- source: cogs/**/messages.pot
translation: /%original_path%/%locale%.po
- source: core/**/messages.pot
translation: /%original_path%/%locale%.po

View File

@@ -1 +0,0 @@
https://github.com/Rapptz/discord.py/tarball/7f4c57dd5ad20b7fa10aea485f674a4bc24b9547#egg=discord.py-1.0.0a0

View File

@@ -14,9 +14,6 @@ help:
.PHONY: help Makefile
init:
cd .. && pipenv lock -r --dev > docs/requirements.txt && echo 'git+https://github.com/Rapptz/discord.py@rewrite#egg=discord.py-1.0' >> docs/requirements.txt
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile

View File

@@ -28,6 +28,7 @@ Paste the following and replace all instances of :code:`username` with the usern
Restart=always
RestartSec=15
RestartPreventExitStatus=0
TimeoutStopSec=10
[Install]
WantedBy=multi-user.target
@@ -48,6 +49,14 @@ To set the bot to start on boot, you must enable the service, again adding the i
:code:`sudo systemctl enable red@instancename`
If you need to shutdown the bot, you can use the ``[p]shutdown`` command or
type the following command in the terminal, still by adding the instance name after the **@**:
:code:`sudo systemctl stop red@instancename`
.. warning:: If the service doesn't stop in the next 10 seconds, the process is killed.
Check your logs to know the cause of the error that prevents the shutdown.
To view Reds log, you can acccess through journalctl:
:code:`sudo journalctl -u red@instancename`

232
docs/changelog_3_1_0.rst Normal file
View File

@@ -0,0 +1,232 @@
.. v3.1.0 Changelog
####################
v3.1.0 Release Notes
####################
----------------------
Mongo Driver Migration
----------------------
Due to the required changes of the Mongo driver for Config, all existing Mongo users will need to
complete the below instructions to continue to use Mongo after updating to 3.1.
This includes **all** users, regardless of any prior migration attempt to a development version of
3.1.
#. Upgrade to 3.1
#. Convert all existing Mongo instances to JSON using the new converters
#. Start each bot instance while using JSON and load any and all cogs you have in order to successfully preserve data.
#. Turn each instance off and convert back to Mongo.
**NOTE:** No data is wiped from your Mongo database when converting to JSON.
You may want to use a *new* database name when converting back to Mongo in order to not have duplicate data.
-------------
Setup Utility
-------------
New commands were introduced to simplify the conversion/editing/removal process both on our end and the users end.
Please use ``redbot-setup --help`` to learn how to use the new features.
.. HINT::
Converting to JSON: ``redbot-setup convert <instance_name> json``
Converting to Mongo: ``redbot-setup convert <instance_name> mongo``
################
v3.1.0 Changelog
################
-----
Audio
-----
* Add Spotify support (`#2328`_)
* Play local folders via text command (`#2457`_)
* Change pause to a toggle (`#2461`_)
* Remove aliases (`#2462`_)
* Add track length restriction (`#2465`_)
* Seek command can now seek to position (`#2470`_)
* Add option for dc at queue end (`#2472`_)
* Emptydisconnect and status refactor (`#2473`_)
* Queue clean and queue clear addition (`#2476`_)
* Fix for audioset status (`#2481`_)
* Playlist download addition (`#2482`_)
* Add songs when search-queuing (`#2513`_)
* Match v2 behavior for channel change (`#2521`_)
* Bot will no longer complain about permissions when trying to connect to user-limited channel, if it has "Move Members" permission (`#2525`_)
* Fix issue on audiostats command when more than 20 servers to display (`#2533`_)
* Fix for prev command display (`#2556`_)
* Fix for localtrack playing (`#2557`_)
* Fix for playlist queue when not playing (`#2586`_)
* Track search and append fixes (`#2591`_)
* DJ role should ask for a role (`#2606`_)
----
Core
----
* Warn on usage of ``yaml.load`` (`#2326`_)
* New Event dispatch: ``on_message_without_command`` (`#2338`_)
* Improve output format of cooldown messages (`#2412`_)
* Delete cooldown messages when expired (`#2469`_)
* Fix local blacklist/whitelist management (`#2531`_)
* ``[p]set locale`` now only accepts actual locales (`#2553`_)
* ``[p]listlocales`` now displays ``en-US`` (`#2553`_)
* ``redbot --version`` will now give you current version of Red (`#2567`_)
* Redesign help and related formatter (`#2628`_)
* Default locale changed from ``en`` to ``en-US`` (`#2642`_)
* New command ``[p]datapath`` that prints the bot's datapath (`#2652`_)
------
Config
------
* Updated Mongo driver to support large guilds (`#2536`_)
* Introduced ``init_custom`` method on Config objects (`#2545`_)
* We now record custom group primary key lengths in the core config object (`#2550`_)
* Migrated internal UUIDs to maintain cross platform consistency (`#2604`_)
-------------
DataConverter
-------------
* It's dead jim (Removal) (`#2554`_)
----------
discord.py
----------
* No longer vendoring discord.py (`#2587`_)
* Upgraded discord.py dependency to version 1.0.1 (`#2587`_)
----------
Downloader
----------
* ``[p]cog install`` will now tell user that cog has to be loaded (`#2523`_)
* The message when libraries fail to install is now formatted (`#2576`_)
* Fixed bug, that caused Downloader to include submodules on cog list (`#2590`_)
* ``[p]cog uninstall`` allows to uninstall multiple cogs now (`#2592`_)
* ``[p]cog uninstall`` will now remove cog from installed cogs even if it can't find the cog in install path anymore (`#2595`_)
* ``[p]cog install`` will not allow to install cogs which aren't suitable for installed version of Red anymore (`#2605`_)
* Cog Developers now have to use ``min_bot_version`` in form of version string instead of ``bot_version`` in info.json and they can also use ``max_bot_version`` to specify maximum version of Red, more in :doc:`framework_downloader`. (`#2605`_)
------
Filter
------
* Filter performs significantly better on large servers. (`#2509`_)
--------
Launcher
--------
* Fixed extras in the launcher (`#2588`_)
---
Mod
---
* Admins can now decide how many times message has to be repeated before ``deleterepeats`` removes it (`#2437`_)
* Fix: make ``[p]ban [days]`` optional as per the doc (`#2602`_)
* Added the command ``voicekick`` to kick members from a voice channel with optional mod case. (`#2639`_)
-----------
Permissions
-----------
* Removed: ``p`` alias for ``permissions`` command (`#2467`_)
-------------
Setup Scripts
-------------
* ``redbot-setup`` now uses the click CLI library (`#2579`_)
* ``redbot-setup convert`` now used to convert between libraries (`#2579`_)
* Backup support for Mongo is currently broken (`#2579`_)
-------
Streams
-------
* Add support for custom stream alert messages per guild (`#2600`_)
* Add ability to exclude rerun Twitch streams, and note rerun streams in embed status (`#2620`_)
-----
Tests
-----
* Test for ``trivia`` cog uses explicitly utf-8 encoding for checking yaml files (`#2565`_)
------
Trivia
------
* Fix of dead image link for Sao Tome and Principe in ``worldflags`` trivia (`#2540`_)
-----------------
Utility Functions
-----------------
* New: ``chat_formatting.humanize_timedelta`` (`#2412`_)
* ``Tunnel`` - Spelling correction of method name - changed ``files_from_attatch`` to ``files_from_attach`` (old name is left for backwards compatibility) (`#2496`_)
* ``Tunnel`` - fixed behavior of ``react_close()``, now when tunnel closes message will be sent to other end (`#2507`_)
* ``chat_formatting.humanize_list`` - Improved error handling of empty lists (`#2597`_)
.. _#2326: https://github.com/Cog-Creators/Red-DiscordBot/pull/2326
.. _#2328: https://github.com/Cog-Creators/Red-DiscordBot/pull/2328
.. _#2338: https://github.com/Cog-Creators/Red-DiscordBot/pull/2338
.. _#2412: https://github.com/Cog-Creators/Red-DiscordBot/pull/2412
.. _#2437: https://github.com/Cog-Creators/Red-DiscordBot/pull/2437
.. _#2457: https://github.com/Cog-Creators/Red-DiscordBot/pull/2457
.. _#2461: https://github.com/Cog-Creators/Red-DiscordBot/pull/2461
.. _#2462: https://github.com/Cog-Creators/Red-DiscordBot/pull/2462
.. _#2465: https://github.com/Cog-Creators/Red-DiscordBot/pull/2465
.. _#2467: https://github.com/Cog-Creators/Red-DiscordBot/pull/2467
.. _#2469: https://github.com/Cog-Creators/Red-DiscordBot/pull/2469
.. _#2470: https://github.com/Cog-Creators/Red-DiscordBot/pull/2470
.. _#2472: https://github.com/Cog-Creators/Red-DiscordBot/pull/2472
.. _#2473: https://github.com/Cog-Creators/Red-DiscordBot/pull/2473
.. _#2476: https://github.com/Cog-Creators/Red-DiscordBot/pull/2476
.. _#2481: https://github.com/Cog-Creators/Red-DiscordBot/pull/2481
.. _#2482: https://github.com/Cog-Creators/Red-DiscordBot/pull/2482
.. _#2496: https://github.com/Cog-Creators/Red-DiscordBot/pull/2496
.. _#2507: https://github.com/Cog-Creators/Red-DiscordBot/pull/2507
.. _#2509: https://github.com/Cog-Creators/Red-DiscordBot/pull/2509
.. _#2513: https://github.com/Cog-Creators/Red-DiscordBot/pull/2513
.. _#2521: https://github.com/Cog-Creators/Red-DiscordBot/pull/2521
.. _#2523: https://github.com/Cog-Creators/Red-DiscordBot/pull/2523
.. _#2525: https://github.com/Cog-Creators/Red-DiscordBot/pull/2525
.. _#2531: https://github.com/Cog-Creators/Red-DiscordBot/pull/2531
.. _#2533: https://github.com/Cog-Creators/Red-DiscordBot/pull/2533
.. _#2536: https://github.com/Cog-Creators/Red-DiscordBot/pull/2536
.. _#2540: https://github.com/Cog-Creators/Red-DiscordBot/pull/2540
.. _#2545: https://github.com/Cog-Creators/Red-DiscordBot/pull/2545
.. _#2550: https://github.com/Cog-Creators/Red-DiscordBot/pull/2550
.. _#2553: https://github.com/Cog-Creators/Red-DiscordBot/pull/2553
.. _#2554: https://github.com/Cog-Creators/Red-DiscordBot/pull/2554
.. _#2556: https://github.com/Cog-Creators/Red-DiscordBot/pull/2556
.. _#2557: https://github.com/Cog-Creators/Red-DiscordBot/pull/2557
.. _#2565: https://github.com/Cog-Creators/Red-DiscordBot/pull/2565
.. _#2567: https://github.com/Cog-Creators/Red-DiscordBot/pull/2567
.. _#2576: https://github.com/Cog-Creators/Red-DiscordBot/pull/2576
.. _#2579: https://github.com/Cog-Creators/Red-DiscordBot/pull/2579
.. _#2586: https://github.com/Cog-Creators/Red-DiscordBot/pull/2586
.. _#2587: https://github.com/Cog-Creators/Red-DiscordBot/pull/2587
.. _#2588: https://github.com/Cog-Creators/Red-DiscordBot/pull/2588
.. _#2590: https://github.com/Cog-Creators/Red-DiscordBot/pull/2590
.. _#2591: https://github.com/Cog-Creators/Red-DiscordBot/pull/2591
.. _#2592: https://github.com/Cog-Creators/Red-DiscordBot/pull/2592
.. _#2595: https://github.com/Cog-Creators/Red-DiscordBot/pull/2595
.. _#2597: https://github.com/Cog-Creators/Red-DiscordBot/pull/2597
.. _#2600: https://github.com/Cog-Creators/Red-DiscordBot/pull/2600
.. _#2602: https://github.com/Cog-Creators/Red-DiscordBot/pull/2602
.. _#2604: https://github.com/Cog-Creators/Red-DiscordBot/pull/2604
.. _#2605: https://github.com/Cog-Creators/Red-DiscordBot/pull/2605
.. _#2606: https://github.com/Cog-Creators/Red-DiscordBot/pull/2606
.. _#2620: https://github.com/Cog-Creators/Red-DiscordBot/pull/2620
.. _#2628: https://github.com/Cog-Creators/Red-DiscordBot/pull/2628
.. _#2639: https://github.com/Cog-Creators/Red-DiscordBot/pull/2639
.. _#2642: https://github.com/Cog-Creators/Red-DiscordBot/pull/2642
.. _#2652: https://github.com/Cog-Creators/Red-DiscordBot/pull/2652

View File

@@ -1,62 +0,0 @@
.. Importing data from a V2 install
================================
Importing data from a V2 install
================================
----------------
What you'll need
----------------
1. A Running V3 bot
2. The path where your V2 bot is installed
--------------
Importing data
--------------
.. important::
Unless otherwise specified, the V2 data will take priority over V3 data for the same entires
.. important::
For the purposes of this guide, your prefix will be denoted as
[p]
You should swap whatever you made your prefix in for this.
All of the below are commands to be entered in discord where the bot can
see them.
The dataconverter cog is not loaded by default. To start, load it with
.. code-block:: none
[p]load dataconverter
Next, you'll need to give it the path where your V2 install is.
On linux and OSX, it may look something like:
.. code-block:: none
/home/username/Red-DiscordBot/
On Windows it will look something like:
.. code-block:: none
C:\Users\yourusername\Red-DiscordBot
Once you have that path, give it to the bot with the following command
(make sure to swap your own path in)
.. code-block:: none
[p]convertdata /home/username/Red-DiscordBot/
From here, if the path is correct, you will be prompted with an interactive menu asking you
what data you would like to import
You can select an entry by number, or quit with any of 'quit', 'exit', 'q', '-1', or 'cancel'

View File

@@ -72,15 +72,15 @@ Locking the ``[p]play`` command to approved server(s) as a bot owner:
.. code-block:: none
[p]permissions setglobaldefault play deny
[p]permissions setdefaultglobalrule deny play
[p]permissions addglobalrule allow play [server ID or name]
Locking the ``[p]play`` command to specific voice channel(s) as a serverowner or admin:
.. code-block:: none
[p]permissions setserverdefault deny play
[p]permissions setserverdefault deny "playlist start"
[p]permissions setdefaultserverrule deny play
[p]permissions setdefaultserverrule deny "playlist start"
[p]permissions addserverrule allow play [voice channel ID or name]
[p]permissions addserverrule allow "playlist start" [voice channel ID or name]

View File

@@ -40,7 +40,7 @@ extensions = [
"sphinx.ext.viewcode",
"sphinx.ext.napoleon",
"sphinx.ext.doctest",
"sphinxcontrib.asyncio",
"sphinxcontrib_trio",
]
# Add any paths that contain templates here, relative to this directory.
@@ -100,6 +100,9 @@ default_role = "any"
#
html_theme = "sphinx_rtd_theme"
# This will be needed until sphinx_rtd_theme supports the html5 writer
html4_writer = True
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
@@ -195,15 +198,15 @@ texinfo_documents = [
# A list of regular expressions that match URIs that should not be
# checked when doing a linkcheck build.
linkcheck_ignore = [r"https://java.com*"]
linkcheck_ignore = [r"https://java.com*", r"https://chocolatey.org*"]
# -- Options for extensions -----------------------------------------------
# Intersphinx
intersphinx_mapping = {
"python": ("https://docs.python.org/3.6", None),
"dpy": ("https://discordpy.readthedocs.io/en/rewrite/", None),
"python": ("https://docs.python.org/3", None),
"dpy": ("https://discordpy.readthedocs.io/en/v1.0.1/", None),
"motor": ("https://motor.readthedocs.io/en/stable/", None),
}
@@ -211,3 +214,7 @@ intersphinx_mapping = {
# If this string is non-empty, all blocks with ``>>>`` in them will be
# tested, not just the ones explicitly marked with ``.. doctest::``
doctest_test_doctest_blocks = ""
# Autodoc options
autodoc_default_flags = ["show-inheritance"]
autodoc_typehints = "none"

View File

@@ -0,0 +1,48 @@
.. V3 Shared API Key Reference
===============
Shared API Keys
===============
Red has a central API key storage utilising the core bots config. This allows cog creators to add a single location to store API keys for their cogs which may be shared between other cogs.
There needs to be some consistency between cog creators when using shared API keys between cogs. To help make this easier service should be all **lowercase** and the key names should match the naming convetion of the API being accessed.
Example:
Twitch has a client ID and client secret so a user should be asked to input
``[p]set api twitch client_id,1234ksdjf client_secret,1234aldlfkd``
and when accessed in the code it should be done by
.. code-block:: python
await self.bot.db.api_tokens.get_raw("twitch", default={"client_id": None, "client_secret": None})
Each service has its own dict of key, value pairs for each required key type. If there's only one key required then a name for the key is still required for storing and accessing.
Example:
``[p]set api youtube api_key,1234ksdjf``
and when accessed in the code it should be done by
.. code-block:: python
await self.bot.db.api_tokens.get_raw("youtube", default={"api_key": None})
***********
Basic Usage
***********
.. code-block:: python
class MyCog:
@commands.command()
async def youtube(self, ctx, user: str):
apikey = await self.bot.db.api_tokens.get_raw("youtube", default={"api_key": None})
if apikey["api_key"] is None:
return await ctx.send("The YouTube API key has not been set.")
# Use the API key to access content as you normally would

View File

@@ -16,15 +16,16 @@ Basic Usage
.. code-block:: python
from redbot.core import bank
from redbot.core import bank, commands
import discord
class MyCog:
class MyCog(commands.Cog):
@commands.command()
async def balance(self, ctx, user: discord.Member=None):
async def balance(self, ctx, user: discord.Member = None):
if user is None:
user = ctx.author
bal = bank.get_balance(user)
currency = bank.get_currency_name(ctx.guild)
bal = await bank.get_balance(user)
currency = await bank.get_currency_name(ctx.guild)
await ctx.send(
"{}'s balance is {} {}".format(
user.display_name, bal, currency
@@ -40,3 +41,7 @@ Bank
.. automodule:: redbot.core.bank
:members:
:exclude-members: cost
.. autofunction:: cost
:decorator:

View File

@@ -30,7 +30,10 @@ Keys common to both repo and cog info.json (case sensitive)
Keys specific to the cog info.json (case sensitive)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- ``bot_version`` (list of integer) - Min version number of Red in the format ``(MAJOR, MINOR, PATCH)``
- ``min_bot_version`` (string) - Min version number of Red in the format ``MAJOR.MINOR.MICRO``
- ``max_bot_version`` (string) - Max version number of Red in the format ``MAJOR.MINOR.MICRO``,
if ``min_bot_version`` is newer than ``max_bot_version``, ``max_bot_version`` will be ignored
- ``hidden`` (bool) - Determines if a cog is visible in the cog list for a repo.

View File

@@ -16,17 +16,17 @@ Basic Usage
.. code-block:: python
from redbot.core import modlog
from redbot.core import commands, modlog
import discord
class MyCog:
class MyCog(commands.Cog):
@commands.command()
@checks.admin_or_permissions(ban_members=True)
async def ban(self, ctx, user: discord.Member, reason: str=None):
async def ban(self, ctx, user: discord.Member, reason: str = None):
await ctx.guild.ban(user)
case = modlog.create_case(
ctx.guild, ctx.message.created_at, "ban", user,
ctx.author, reason, until=None, channel=None
case = await modlog.create_case(
ctx.bot, ctx.guild, ctx.message.created_at, action="ban",
user=user, moderator=ctx.author, reason=reason
)
await ctx.send("Done. It was about time.")
@@ -35,50 +35,65 @@ Basic Usage
Registering Case types
**********************
To register a single case type:
To register case types, use an asynchronous ``initialize()`` method and call
it from your setup function:
.. code-block:: python
from redbot.core import modlog
# mycog/mycog.py
from redbot.core import modlog, commands
import discord
class MyCog:
def __init__(self, bot):
class MyCog(commands.Cog):
async def initialize(self):
await self.register_casetypes()
@staticmethod
async def register_casetypes():
# Registering a single casetype
ban_case = {
"name": "ban",
"default_setting": True,
"image": ":hammer:",
"image": "\N{HAMMER}",
"case_str": "Ban",
"audit_type": "ban"
# audit_type should be omitted if the action doesn't show
# up in the audit log.
"audit_type": "ban",
}
modlog.register_casetype(**ban_case)
try:
await modlog.register_casetype(**ban_case)
except RuntimeError:
pass
To register multiple case types:
.. code-block:: python
from redbot.core import modlog
import discord
class MyCog:
def __init__(self, bot):
# Registering multiple casetypes
new_types = [
{
"name": "ban",
"name": "hackban",
"default_setting": True,
"image": ":hammer:",
"case_str": "Ban",
"audit_type": "ban"
"image": "\N{BUST IN SILHOUETTE}\N{HAMMER}",
"case_str": "Hackban",
"audit_type": "ban",
},
{
"name": "kick",
"default_setting": True,
"image": ":boot:",
"image": "\N{WOMANS BOOTS}",
"case_str": "Kick",
"audit_type": "kick"
}
]
modlog.register_casetypes(new_types)
await modlog.register_casetypes(new_types)
.. code-block:: python
# mycog/__init__.py
from .mycog import MyCog
async def setup(bot):
cog = MyCog()
await cog.initialize()
bot.add_cog(cog)
.. important::
Image should be the emoji you want to represent your case type with.

View File

@@ -40,12 +40,6 @@ Mod Helpers
.. automodule:: redbot.core.utils.mod
:members:
V2 Data Conversion
==================
.. automodule:: redbot.core.utils.data_converter
:members: DataConverter
Tunnel
======

View File

@@ -17,8 +17,8 @@ you in the process.
Getting started
---------------
To start off, be sure that you have installed Python 3.6.2 or higher (3.6.6 or higher on Windows).
Open a terminal or command prompt and type :code:`pip install --process-dependency-links -U git+https://github.com/Cog-Creators/Red-DiscordBot@V3/develop#egg=redbot[test]`
To start off, be sure that you have installed Python 3.7.
Open a terminal or command prompt and type :code:`pip install -U git+https://github.com/Cog-Creators/Red-DiscordBot@V3/develop#egg=redbot[test]`
(note that if you get an error with this, try again but put :code:`python -m` in front of the command
This will install the latest version of V3.
@@ -46,7 +46,7 @@ In that file, place the following code:
from redbot.core import commands
class Mycog:
class Mycog(commands.Cog):
"""My custom cog"""
@commands.command()

View File

@@ -1,154 +0,0 @@
.. Converting Data from a V2 cog
.. role:: python(code)
:language: python
============================
Importing Data From a V2 Cog
============================
This guide serves as a tutorial on using the DataConverter class
to import settings from a V2 cog.
------------------
Things you'll need
------------------
1. The path where each file holding related settings in v2 is
2. A conversion function to take the data and transform it to conform to Config
-----------------------
Getting your file paths
-----------------------
You should probably not try to find the files manually.
Asking the user for the base install path and using a relative path to where the
data should be, then testing that the file exists there is safer. This is especially
True if your cog has multiple settings files
Example
.. code-block:: python
from discord.ext import commands
from pathlib import Path
@commands.command(name="filefinder")
async def file_finding_command(self, ctx, filepath):
"""
this finds a file based on a user provided input and a known relative path
"""
base_path = Path(filepath)
fp = base_path / 'data' / 'mycog' / 'settings.json'
if not fp.is_file():
pass
# fail, prompting user
else:
pass
# do something with the file
---------------
Converting data
---------------
Once you've gotten your v2 settings file, you'll want to be able to import it
There are a couple options available depending on how you would like to convert
the data.
The first one takes a data path, and a conversion function and does the rest for you.
This is great for simple data that just needs to quickly be imported without much
modification.
Here's an example of that in use:
.. code-block:: python
from pathlib import Path
from discord.ext import commands
from redbot.core.utils.data_converter import DataConverter as dc
from redbot.core.config import Config
...
async def import_v2(self, file_path: Path):
"""
to be called from a command limited to owner
This should be a coroutine as the convert function will
need to be awaited
"""
# First we give the converter our cog's Config instance.
converter = dc(self.config)
# next we design a way to get all of the data into Config's internal
# format. This should be a generator, but you can also return a single
# list with identical results outside of memory usage
def conversion_spec(v2data):
for guild_id in v2.data.keys():
yield {(Config.GUILD, guild_id): {('blacklisted',): True}}
# This is yielding a dictionary that is designed for config's set_raw.
# The keys should be a tuple of Config scopes + the needed Identifiers. The
# values should be another dictionary whose keys are tuples representing
# config settings, the value should be the value to set for that.
# Then we pass the file and the conversion function
await converter.convert(file_path, conversion_spec)
# From here, our data should be imported
You can also choose to convert all of your data and pass it as a single dict
This can be useful if you want finer control over the dataconversion or want to
preserve any data from v3 that may share the same entry and set it aside to prompt
a user
.. code-block:: python
from pathlib import Path
from discord.ext import commands
from redbot.core.utils.data_converter import DataConverter as dc
from redbot.core.config import Config
...
await dc(config_instance).dict_import(some_processed_dict)
The format of the items of the dict is the same as in the above example
-----------------------------------
Config Scopes and their Identifiers
-----------------------------------
This section is provided as a quick reference for the identifiers for default
scopes available in Config. This does not cover usage of custom scopes, though the
data converter is compatible with those as well.
Global::
:code:`(Config.GLOBAL,)`
Guild::
:code:`(Config.GUILD, guild_id)`
Channel::
:code:`(Config.CHANNEL, channel_id)`
User::
:code:`(Config.USER, user_id)`
Member::
:code:`(Config.MEMBER, guild_id, user_id)`
Role::
:code:`(Config.ROLE, role_id)`
-----------------------------
More information and Examples
-----------------------------
For a more in depth look at how all of these commands function
You may want to take a look at how core data is being imported
:code:`redbot/cogs/dataconverter/core_specs.py`

View File

@@ -7,7 +7,7 @@
Migrating Cogs to V3
====================
First, be sure to read `discord.py's migration guide <http://discordpy.readthedocs.io/en/rewrite/migrating.html>`_
First, be sure to read `discord.py's migration guide <https://discordpy.readthedocs.io/en/v1.0.1/migrating.html>`_
as that covers all of the changes to discord.py that will affect the migration process
----------------

View File

@@ -13,7 +13,6 @@ Welcome to Red - Discord Bot's documentation!
install_windows
install_linux_mac
venv_guide
cog_dataconverter
autostart_systemd
.. toctree::
@@ -30,7 +29,7 @@ Welcome to Red - Discord Bot's documentation!
guide_migration
guide_cog_creation
guide_data_conversion
framework_apikeys
framework_bank
framework_bot
framework_checks
@@ -45,6 +44,11 @@ Welcome to Red - Discord Bot's documentation!
framework_rpc
framework_utils
.. toctree::
:maxdepth: 2
:caption: Changelogs:
changelog_3_1_0
Indices and tables

View File

@@ -16,11 +16,13 @@ Installing the pre-requirements
Please install the pre-requirements using the commands listed for your operating system.
The pre-requirements are:
- Python 3.6.2 or greater
- Python 3.7.0 or greater
- pip 9.0 or greater
- git
- Java Runtime Environment 8 or later (for audio support)
.. _install-arch:
~~~~~~~~~~
Arch Linux
~~~~~~~~~~
@@ -29,15 +31,25 @@ Arch Linux
sudo pacman -Syu python-pip git base-devel jre8-openjdk
~~~~~~~~
CentOS 7
~~~~~~~~
.. _install-centos:
.. _install-fedora:
.. _install-rhel:
~~~~~~~~~~~~~~~~~~~~~~~~~~
CentOS 7, Fedora, and RHEL
~~~~~~~~~~~~~~~~~~~~~~~~~~
.. code-block:: none
yum -y groupinstall development
yum -y install https://centos7.iuscommunity.org/ius-release.rpm
yum -y install yum-utils wget which python36u python36u-pip python36u-devel openssl-devel libffi-devel git java-1.8.0-openjdk
sudo yum install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel \
openssl-devel xz xz-devel libffi-devel git2u java-1.8.0-openjdk
Complete the rest of the installation by `installing Python 3.7 with pyenv <install-python-pyenv>`.
.. _install-debian:
.. _install-raspbian:
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Debian and Raspbian Stretch
@@ -53,27 +65,13 @@ Debian/Raspbian Stretch. This guide will tell you how. First, run the following
.. code-block:: none
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev git unzip default-jre
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev libffi-dev liblzma-dev python3-openssl git unzip default-jre
After that last 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.
Complete the rest of the installation by `installing Python 3.7 with pyenv <install-python-pyenv>`.
Then run the following command:
.. code-block:: none
CONFIGURE_OPTS=--enable-optimizations pyenv install 3.7.0 -v
This may take a long time to complete.
After that is finished, run:
.. code-block:: none
pyenv global 3.7.0
Pyenv is now installed and your system should be configured to run Python 3.7.
.. _install-mac:
~~~
Mac
@@ -91,24 +89,33 @@ one-by-one:
.. code-block:: none
brew install python3 --with-brewed-openssl
brew install python --with-brewed-openssl
brew install git
brew tap caskroom/versions
brew cask install java8
brew cask install homebrew/cask-versions/adoptopenjdk8
~~~~~~~~~~~~~~~~~~~~~~~~~~
Ubuntu 18.04 Bionic Beaver
~~~~~~~~~~~~~~~~~~~~~~~~~~
It's possible you will have network issues. If so, go in your Applications folder, inside it, go in the Python 3.7 folder then double click ``Install certificates.command``
.. _install-ubuntu:
.. _install-ubuntu-bionic:
.. _install-ubuntu-cosmic:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ubuntu 18.04 Bionic Beaver and 18.10 Cosmic Cuttlefish
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. code-block:: none
sudo apt install python3.6-dev python3-pip build-essential libssl-dev libffi-dev git unzip default-jre -y
sudo apt install python3.7 python3.7-dev python3.7-venv python3-pip build-essential \
libssl-dev libffi-dev git unzip default-jre -y
.. _install-ubuntu-xenial:
~~~~~~~~~~~~~~~~~~~~~~~~~
Ubuntu 16.04 Xenial Xerus
~~~~~~~~~~~~~~~~~~~~~~~~~
We recommend adding the ``deadsnakes`` apt repository to install Python 3.6.2 or greater:
We recommend adding the ``deadsnakes`` apt repository to install Python 3.7 or greater:
.. code-block:: none
@@ -120,9 +127,46 @@ Now, install python, pip, git and java with the following commands:
.. code-block:: none
sudo apt install python3.6-dev build-essential libssl-dev libffi-dev git unzip default-jre wget -y
wget https://bootstrap.pypa.io/get-pip.py
sudo python3.6 get-pip.py
sudo apt install python3.7 python3.7-dev build-essential libssl-dev libffi-dev git \
unzip default-jre curl -y
curl https://bootstrap.pypa.io/get-pip.py | sudo python3.7
.. _install-python-pyenv:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Installing Python with pyenv
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
On distributions where Python 3.7 needs to be compiled from source, we recommend the use of pyenv.
This simplifies the compilation process and has the added bonus of simplifying setting up Red in a
virtual environment.
.. code-block:: none
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
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.
Then run the following command:
.. code-block:: none
CONFIGURE_OPTS=--enable-optimizations pyenv install 3.7.2 -v
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
the ``CONFIGURE_OPTS=--enable-optimizations`` part from the front of the command, which will
drastically reduce the install time. However, be aware that this will make Python run about 10%
slower.
After that is finished, run:
.. code-block:: none
pyenv global 3.7.2
Pyenv is now installed and your system should be configured to run Python 3.7.
------------------------------
Creating a Virtual Environment
@@ -142,25 +186,19 @@ Choose one of the following commands to install Red.
.. note::
If you're not inside an activated virtual environment, include the ``--user`` flag with all
``pip3`` commands.
``python3.7 -m pip`` commands.
To install without audio support:
To install without MongoDB support:
.. code-block:: none
pip3 install -U --process-dependency-links --no-cache-dir Red-DiscordBot
python3.7 -m pip install -U Red-DiscordBot
Or, to install with audio support:
Or, to install with MongoDB support:
.. code-block:: none
pip3 install -U --process-dependency-links --no-cache-dir Red-DiscordBot[voice]
Or, install with audio and MongoDB support:
.. code-block:: none
pip3 install -U --process-dependency-links --no-cache-dir Red-DiscordBot[voice,mongo]
python3.7 -m pip install -U Red-DiscordBot[mongo]
.. note::
@@ -192,6 +230,9 @@ Once done setting up the instance, run the following command to run Red:
redbot <your instance name>
It will walk through the initial setup, asking for your token and a prefix.
You can find out how to obtain a token with
`this guide <https://discordpy.readthedocs.io/en/v1.0.1/discord.html#creating-a-bot-account>`_,
section "Creating a Bot Account".
You may also run Red via the launcher, which allows you to restart the bot
from discord, and enable auto-restart. You may also update the bot from the

View File

@@ -8,18 +8,44 @@ Installing Red on Windows
Needed Software
---------------
* `Python <https://www.python.org/downloads/>`_ - Red needs Python 3.6.6 or greater on Windows
The following software dependencies can all be installed quickly and easily through powershell,
using a trusted package manager for windows called `Chocolatey <https://chocolatey.org>`_
We also provide instructions for manually installing all of the dependencies.
******************************************
Installing using powershell and chocolatey
******************************************
To install via powershell, search "powershell" in the windows start menu,
right-click on it and then click "Run as administrator"
Then run each of the following commands:
.. code-block:: none
Set-ExecutionPolicy Bypass -Scope Process -Force
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco install git --params "/GitOnlyOnPath /WindowsTerminal" -y
choco install jre8 python -y; exit
********************************
Manually installing dependencies
********************************
* `Python <https://www.python.org/downloads/>`_ - Red needs Python 3.7.0 or greater
.. note:: 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>`_
.. attention:: Please choose the option to "Run Git from the Windows Command Prompt" in Git's setup
.. attention:: Please choose the option to "Run Git from the Windows Command Prompt" in Git's setup.
* `Java <https://java.com/en/download/manual.jsp>`_ - needed for Audio
.. attention:: Please choose the "Windows Online" installer
.. attention:: Please choose the "Windows Online" installer.
.. _installing-red-windows:
@@ -27,6 +53,9 @@ Needed Software
Installing Red
--------------
.. attention:: You may need to restart your computer after installing dependencies
for the PATH changes to take effect.
1. Open a command prompt (open Start, search for "command prompt", then click it)
2. Create and activate a virtual environment (strongly recommended), see the section `using-venv`
3. Run **one** of the following commands, depending on what extras you want installed
@@ -36,23 +65,17 @@ Installing Red
If you're not inside an activated virtual environment, include the ``--user`` flag with all
``pip`` commands.
* No audio:
* No MongoDB support:
.. code-block:: none
python -m pip install -U --process-dependency-links --no-cache-dir Red-DiscordBot
python -m pip install -U Red-DiscordBot
* With audio:
* With MongoDB support:
.. code-block:: none
python -m pip install -U --process-dependency-links --no-cache-dir Red-DiscordBot[voice]
* With audio and MongoDB support:
.. code-block:: none
python -m pip install -U --process-dependency-links --no-cache-dir Red-DiscordBot[voice,mongo]
python -m pip install -U Red-DiscordBot[mongo]
.. note::
@@ -84,6 +107,9 @@ Once done setting up the instance, run the following command to run Red:
redbot <your instance name>
It will walk through the initial setup, asking for your token and a prefix.
You can find out how to obtain a token with
`this guide <https://discordpy.readthedocs.io/en/v1.0.1/discord.html#creating-a-bot-account>`_,
section "Creating a Bot Account".
You may also run Red via the launcher, which allows you to restart the bot
from discord, and enable auto-restart. You may also update the bot from the

2
docs/requirements.txt Normal file
View File

@@ -0,0 +1,2 @@
# We still need this because RTD is special
setuptools==40.8.0

View File

@@ -24,7 +24,7 @@ to keep it in a location which is easy to type out the path to. From now, we'll
~~~~~~~~~~~~~~~~~~~~~~~~
Create your virtual environment with the following command::
python3 -m venv path/to/venv/
python3.7 -m venv path/to/venv/
And activate it with the following command::
@@ -68,7 +68,7 @@ Using ``pyenv virtualenv``
Using ``pyenv virtualenv`` saves you the headache of remembering where you installed your virtual
environments. If you haven't already, install pyenv with `pyenv-installer`_.
First, ensure your pyenv interpreter is set to python 3.6.2 or greater with the following command::
First, ensure your pyenv interpreter is set to python 3.7.0 or greater with the following command::
pyenv version

View File

@@ -1,6 +1,6 @@
@echo off
if "%1"=="" goto help
if [%1] == [] goto help
REM This allows us to expand variables at execution
setlocal ENABLEDELAYEDEXPANSION
@@ -14,11 +14,20 @@ for /F "tokens=* USEBACKQ" %%A in (`git ls-files "*.py"`) do (
goto %1
:reformat
black -l 99 -N !PYFILES!
black -l 99 !PYFILES!
exit /B %ERRORLEVEL%
:stylecheck
black -l 99 -N --check !PYFILES!
black -l 99 --check !PYFILES!
exit /B %ERRORLEVEL%
:newenv
py -3.7 -m venv --clear .venv
.\.venv\Scripts\python -m pip install -U pip setuptools
goto syncenv
:syncenv
.\.venv\Scripts\python -m pip install -Ur .\tools\dev-requirements.txt
exit /B %ERRORLEVEL%
:help
@@ -28,3 +37,6 @@ echo.
echo Commands:
echo reformat Reformat all .py files being tracked by git.
echo stylecheck Check which tracked .py files need reformatting.
echo newenv Create or replace this project's virtual environment.
echo syncenv Sync this project's virtual environment to Red's latest
echo dependencies.

View File

@@ -1,34 +1,181 @@
import sys
import warnings
import discord
import colorama
import re as _re
import sys as _sys
import warnings as _warnings
from math import inf as _inf
from typing import (
Any as _Any,
ClassVar as _ClassVar,
Dict as _Dict,
List as _List,
Optional as _Optional,
Pattern as _Pattern,
Tuple as _Tuple,
Union as _Union,
)
# Let's do all the dumb version checking in one place.
if sys.platform == "win32":
# Due to issues with ProactorEventLoop prior to 3.6.6 (bpo-26819)
MIN_PYTHON_VERSION = (3, 6, 6)
else:
MIN_PYTHON_VERSION = (3, 6, 2)
if sys.version_info < MIN_PYTHON_VERSION:
MIN_PYTHON_VERSION = (3, 7, 0)
__all__ = ["MIN_PYTHON_VERSION", "__version__", "version_info", "VersionInfo"]
if _sys.version_info < MIN_PYTHON_VERSION:
print(
f"Python {'.'.join(map(str, MIN_PYTHON_VERSION))} is required to run Red, but you have "
f"{sys.version}! Please update Python."
f"{_sys.version}! Please update Python."
)
sys.exit(1)
_sys.exit(1)
if discord.version_info.major < 1:
print(
"You are not running the rewritten version of discord.py.\n\n"
"In order to use Red V3 you MUST be running d.py version "
"1.0.0 or greater."
class VersionInfo:
ALPHA = "alpha"
BETA = "beta"
RELEASE_CANDIDATE = "release candidate"
FINAL = "final"
_VERSION_STR_PATTERN: _ClassVar[_Pattern[str]] = _re.compile(
r"^"
r"(?P<major>0|[1-9]\d*)\.(?P<minor>0|[1-9]\d*)\.(?P<micro>0|[1-9]\d*)"
r"(?:(?P<releaselevel>a|b|rc)(?P<serial>0|[1-9]\d*))?"
r"(?:\.post(?P<post_release>0|[1-9]\d*))?"
r"(?:\.dev(?P<dev_release>0|[1-9]\d*))?"
r"$",
flags=_re.IGNORECASE,
)
sys.exit(1)
_RELEASE_LEVELS: _ClassVar[_List[str]] = [ALPHA, BETA, RELEASE_CANDIDATE, FINAL]
_SHORT_RELEASE_LEVELS: _ClassVar[_Dict[str, str]] = {
"a": ALPHA,
"b": BETA,
"rc": RELEASE_CANDIDATE,
}
def __init__(
self,
major: int,
minor: int,
micro: int,
releaselevel: str,
serial: _Optional[int] = None,
post_release: _Optional[int] = None,
dev_release: _Optional[int] = None,
) -> None:
self.major: int = major
self.minor: int = minor
self.micro: int = micro
if releaselevel not in self._RELEASE_LEVELS:
raise TypeError(f"'releaselevel' must be one of: {', '.join(self._RELEASE_LEVELS)}")
self.releaselevel: str = releaselevel
self.serial: _Optional[int] = serial
self.post_release: _Optional[int] = post_release
self.dev_release: _Optional[int] = dev_release
@classmethod
def from_str(cls, version_str: str) -> "VersionInfo":
"""Parse a string into a VersionInfo object.
Raises
------
ValueError
If the version info string is invalid.
"""
match = cls._VERSION_STR_PATTERN.match(version_str)
if not match:
raise ValueError(f"Invalid version string: {version_str}")
kwargs: _Dict[str, _Union[str, int]] = {}
for key in ("major", "minor", "micro"):
kwargs[key] = int(match[key])
releaselevel = match["releaselevel"]
if releaselevel is not None:
kwargs["releaselevel"] = cls._SHORT_RELEASE_LEVELS[releaselevel]
else:
kwargs["releaselevel"] = cls.FINAL
for key in ("serial", "post_release", "dev_release"):
if match[key] is not None:
kwargs[key] = int(match[key])
return cls(**kwargs)
@classmethod
def from_json(
cls, data: _Union[_Dict[str, _Union[int, str]], _List[_Union[int, str]]]
) -> "VersionInfo":
if isinstance(data, _List):
# For old versions, data was stored as a list:
# [MAJOR, MINOR, MICRO, RELEASELEVEL, SERIAL]
return cls(*data)
else:
return cls(**data)
def to_json(self) -> _Dict[str, _Union[int, str]]:
return {
"major": self.major,
"minor": self.minor,
"micro": self.micro,
"releaselevel": self.releaselevel,
"serial": self.serial,
"post_release": self.post_release,
"dev_release": self.dev_release,
}
def _generate_comparison_tuples(
self, other: "VersionInfo"
) -> _List[
_Tuple[int, int, int, int, _Union[int, float], _Union[int, float], _Union[int, float]]
]:
tups: _List[
_Tuple[int, int, int, int, _Union[int, float], _Union[int, float], _Union[int, float]]
] = []
for obj in (self, other):
tups.append(
(
obj.major,
obj.minor,
obj.micro,
obj._RELEASE_LEVELS.index(obj.releaselevel),
obj.serial if obj.serial is not None else _inf,
obj.post_release if obj.post_release is not None else -_inf,
obj.dev_release if obj.dev_release is not None else _inf,
)
)
return tups
def __lt__(self, other: "VersionInfo") -> bool:
tups = self._generate_comparison_tuples(other)
return tups[0] < tups[1]
def __eq__(self, other: "VersionInfo") -> bool:
tups = self._generate_comparison_tuples(other)
return tups[0] == tups[1]
def __le__(self, other: "VersionInfo") -> bool:
tups = self._generate_comparison_tuples(other)
return tups[0] <= tups[1]
def __str__(self) -> str:
ret = f"{self.major}.{self.minor}.{self.micro}"
if self.releaselevel != self.FINAL:
short = next(
k for k, v in self._SHORT_RELEASE_LEVELS.items() if v == self.releaselevel
)
ret += f"{short}{self.serial}"
if self.post_release is not None:
ret += f".post{self.post_release}"
if self.dev_release is not None:
ret += f".dev{self.dev_release}"
return ret
def __repr__(self) -> str:
return (
"VersionInfo(major={major}, minor={minor}, micro={micro}, "
"releaselevel={releaselevel}, serial={serial}, post={post_release}, "
"dev={dev_release})".format(**self.to_json())
)
colorama.init()
__version__ = "3.1.4"
version_info = VersionInfo.from_str(__version__)
# Filter fuzzywuzzy slow sequence matcher warning
warnings.filterwarnings("ignore", module=r"fuzzywuzzy.*")
# Prevent discord PyNaCl missing warning
discord.voice_client.VoiceClient.warn_nacl = False
_warnings.filterwarnings("ignore", module=r"fuzzywuzzy.*")

View File

@@ -2,36 +2,43 @@
# Discord Version check
import sys
import discord
from redbot.core.bot import Red, ExitCodes
from redbot.core.cog_manager import CogManagerUI
from redbot.core.data_manager import create_temp_config, load_basic_configuration, config_file
from redbot.core.json_io import JsonIO
from redbot.core.global_checks import init_global_checks
from redbot.core.events import init_events
from redbot.core.cli import interactive_config, confirm, parse_cli_flags, ask_sentry
from redbot.core.core_commands import Core
from redbot.core.dev_commands import Dev
from redbot.core import __version__
import asyncio
import logging.handlers
import json
import logging
import os
import sys
# Let's not force this dependency, uvloop is much faster on cpython
if sys.implementation.name == "cpython":
import discord
# Set the event loop policies here so any subsequent `get_event_loop()`
# calls, in particular those as a result of the following imports,
# return the correct loop object.
if sys.platform == "win32":
asyncio.set_event_loop_policy(asyncio.WindowsProactorEventLoopPolicy())
elif sys.implementation.name == "cpython":
# Let's not force this dependency, uvloop is much faster on cpython
try:
import uvloop
except ImportError:
uvloop = None
pass
else:
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
if sys.platform == "win32":
asyncio.set_event_loop(asyncio.ProactorEventLoop())
import redbot.logging
from redbot.core.bot import Red, ExitCodes
from redbot.core.cog_manager import CogManagerUI
from redbot.core.global_checks import init_global_checks
from redbot.core.events import init_events
from redbot.core.cli import interactive_config, confirm, parse_cli_flags
from redbot.core.core_commands import Core
from redbot.core.dev_commands import Dev
from redbot.core import __version__, modlog, bank, data_manager
from signal import SIGTERM
log = logging.getLogger("red.main")
#
# Red - Discord Bot v3
#
@@ -39,50 +46,6 @@ if sys.platform == "win32":
#
def init_loggers(cli_flags):
# d.py stuff
dpy_logger = logging.getLogger("discord")
dpy_logger.setLevel(logging.WARNING)
console = logging.StreamHandler()
console.setLevel(logging.WARNING)
dpy_logger.addHandler(console)
# Red stuff
logger = logging.getLogger("red")
red_format = logging.Formatter(
"%(asctime)s %(levelname)s %(module)s %(funcName)s %(lineno)d: %(message)s",
datefmt="[%d/%m/%Y %H:%M]",
)
stdout_handler = logging.StreamHandler(sys.stdout)
stdout_handler.setFormatter(red_format)
if cli_flags.debug:
os.environ["PYTHONASYNCIODEBUG"] = "1"
logger.setLevel(logging.DEBUG)
else:
logger.setLevel(logging.INFO)
from redbot.core.data_manager import core_data_path
logfile_path = core_data_path() / "red.log"
fhandler = logging.handlers.RotatingFileHandler(
filename=str(logfile_path), encoding="utf-8", mode="a", maxBytes=10 ** 7, backupCount=5
)
fhandler.setFormatter(red_format)
logger.addHandler(fhandler)
logger.addHandler(stdout_handler)
# Sentry stuff
sentry_logger = logging.getLogger("red.sentry")
sentry_logger.setLevel(logging.WARNING)
return logger, sentry_logger
async def _get_prefix_and_token(red, indict):
"""
Again, please blame <@269933075037814786> for this.
@@ -91,18 +54,18 @@ async def _get_prefix_and_token(red, indict):
"""
indict["token"] = await red.db.token()
indict["prefix"] = await red.db.prefix()
indict["enable_sentry"] = await red.db.enable_sentry()
def list_instances():
if not config_file.exists():
if not data_manager.config_file.exists():
print(
"No instances have been configured! Configure one "
"using `redbot-setup` before trying to run the bot!"
)
sys.exit(1)
else:
data = JsonIO(config_file)._load_json()
with data_manager.config_file.open(encoding="utf-8") as fs:
data = json.load(fs)
text = "Configured Instances:\n\n"
for instance_name in sorted(data.keys()):
text += "{}\n".format(instance_name)
@@ -110,13 +73,19 @@ def list_instances():
sys.exit(0)
async def sigterm_handler(red, log):
log.info("SIGTERM received. Quitting...")
await red.shutdown(restart=False)
def main():
description = "Red - Version {}".format(__version__)
description = "Red V3"
cli_flags = parse_cli_flags(sys.argv[1:])
if cli_flags.list_instances:
list_instances()
elif cli_flags.version:
print(description)
print("Current Version: {}".format(__version__))
sys.exit(0)
elif not cli_flags.instance_name and not cli_flags.no_instance:
print("Error: No instance name was provided!")
@@ -124,21 +93,40 @@ def main():
if cli_flags.no_instance:
print(
"\033[1m"
"Warning: The data will be placed in a temporary folder and removed on next system reboot."
"Warning: The data will be placed in a temporary folder and removed on next system "
"reboot."
"\033[0m"
)
cli_flags.instance_name = "temporary_red"
create_temp_config()
load_basic_configuration(cli_flags.instance_name)
log, sentry_log = init_loggers(cli_flags)
red = Red(cli_flags=cli_flags, description=description, pm_help=None)
data_manager.create_temp_config()
data_manager.load_basic_configuration(cli_flags.instance_name)
redbot.logging.init_logging(
level=cli_flags.logging_level, location=data_manager.core_data_path() / "logs"
)
log.debug("====Basic Config====")
log.debug("Data Path: %s", data_manager._base_data_path())
log.debug("Storage Type: %s", data_manager.storage_type())
red = Red(
cli_flags=cli_flags, description=description, dm_help=None, fetch_offline_members=True
)
loop = asyncio.get_event_loop()
loop.run_until_complete(red.maybe_update_config())
init_global_checks(red)
init_events(red, cli_flags)
red.add_cog(Core(red))
red.add_cog(CogManagerUI())
if cli_flags.dev:
red.add_cog(Dev())
loop = asyncio.get_event_loop()
# noinspection PyProtectedMember
loop.run_until_complete(modlog._init())
# noinspection PyProtectedMember
bank._init()
if os.name == "posix":
loop.add_signal_handler(SIGTERM, lambda: asyncio.ensure_future(sigterm_handler(red, log)))
tmp_data = {}
loop.run_until_complete(_get_prefix_and_token(red, tmp_data))
token = os.environ.get("RED_TOKEN", tmp_data["token"])
@@ -158,8 +146,6 @@ def main():
if cli_flags.dry_run:
loop.run_until_complete(red.http.close())
sys.exit(0)
if tmp_data["enable_sentry"]:
red.enable_sentry()
try:
loop.run_until_complete(red.start(token, bot=True))
except discord.LoginFailure:
@@ -176,14 +162,13 @@ def main():
red._shutdown_mode = ExitCodes.SHUTDOWN
except Exception as e:
log.critical("Fatal exception", exc_info=e)
sentry_log.critical("Fatal Exception", exc_info=e)
loop.run_until_complete(red.logout())
finally:
pending = asyncio.Task.all_tasks(loop=red.loop)
gathered = asyncio.gather(*pending, loop=red.loop, return_exceptions=True)
gathered.cancel()
try:
red.rpc.server.close()
loop.run_until_complete(red.rpc.close())
except AttributeError:
pass

View File

@@ -20,14 +20,21 @@ GENERIC_FORBIDDEN = _(
)
HIERARCHY_ISSUE = _(
"I tried to add {role.name} to {member.display_name} but that role"
"I tried to {verb} {role.name} to {member.display_name} but that role"
" is higher than my highest role in the Discord hierarchy so I was"
" unable to successfully add it. Please give me a higher role and "
"try again."
)
USER_HIERARCHY_ISSUE = _(
"I tried to add {role.name} to {member.display_name} but that role"
"I tried to {verb} {role.name} to {member.display_name} but that role"
" is higher than your highest role in the Discord hierarchy so I was"
" unable to successfully add it. Please get a higher role and "
"try again."
)
ROLE_USER_HIERARCHY_ISSUE = _(
"I tried to edit {role.name} but that role"
" is higher than your highest role in the Discord hierarchy so I was"
" unable to successfully add it. Please get a higher role and "
"try again."
@@ -59,7 +66,7 @@ class Admin(commands.Cog):
self.__current_announcer = None
def __unload(self):
def cog_unload(self):
try:
self.__current_announcer.cancel()
except AttributeError:
@@ -104,7 +111,9 @@ class Admin(commands.Cog):
await member.add_roles(role)
except discord.Forbidden:
if not self.pass_hierarchy_check(ctx, role):
await self.complain(ctx, T_(HIERARCHY_ISSUE), role=role, member=member)
await self.complain(
ctx, T_(HIERARCHY_ISSUE), role=role, member=member, verb=_("add")
)
else:
await self.complain(ctx, T_(GENERIC_FORBIDDEN))
else:
@@ -119,7 +128,9 @@ class Admin(commands.Cog):
await member.remove_roles(role)
except discord.Forbidden:
if not self.pass_hierarchy_check(ctx, role):
await self.complain(ctx, T_(HIERARCHY_ISSUE), role=role, member=member)
await self.complain(
ctx, T_(HIERARCHY_ISSUE), role=role, member=member, verb=_("remove")
)
else:
await self.complain(ctx, T_(GENERIC_FORBIDDEN))
else:
@@ -145,7 +156,9 @@ class Admin(commands.Cog):
# noinspection PyTypeChecker
await self._addrole(ctx, user, rolename)
else:
await self.complain(ctx, T_(USER_HIERARCHY_ISSUE), member=ctx.author, role=rolename)
await self.complain(
ctx, T_(USER_HIERARCHY_ISSUE), member=user, role=rolename, verb=_("add")
)
@commands.command()
@commands.guild_only()
@@ -163,7 +176,9 @@ class Admin(commands.Cog):
# noinspection PyTypeChecker
await self._removerole(ctx, user, rolename)
else:
await self.complain(ctx, T_(USER_HIERARCHY_ISSUE))
await self.complain(
ctx, T_(USER_HIERARCHY_ISSUE), member=user, role=rolename, verb=_("remove")
)
@commands.group()
@commands.guild_only()
@@ -190,7 +205,7 @@ class Admin(commands.Cog):
reason = "{}({}) changed the colour of role '{}'".format(author.name, author.id, role.name)
if not self.pass_user_hierarchy_check(ctx, role):
await self.complain(ctx, T_(USER_HIERARCHY_ISSUE))
await self.complain(ctx, T_(ROLE_USER_HIERARCHY_ISSUE), role=role)
return
try:
@@ -218,7 +233,7 @@ class Admin(commands.Cog):
)
if not self.pass_user_hierarchy_check(ctx, role):
await self.complain(ctx, T_(USER_HIERARCHY_ISSUE))
await self.complain(ctx, T_(ROLE_USER_HIERARCHY_ISSUE), role=role)
return
try:
@@ -300,7 +315,7 @@ class Admin(commands.Cog):
valid_role_ids = set(r.id for r in valid_roles)
if selfrole_ids != valid_role_ids:
await self.conf.guild(guild).selfroles.set(valid_role_ids)
await self.conf.guild(guild).selfroles.set(list(valid_role_ids))
# noinspection PyTypeChecker
return valid_roles

View File

@@ -20,7 +20,7 @@ class MemberDefaultAuthor(commands.Converter):
class SelfRole(commands.Converter):
async def convert(self, ctx: commands.Context, arg: str) -> discord.Role:
admin = ctx.command.instance
admin = ctx.command.cog
if admin is None:
raise commands.BadArgument(_("The Admin cog is not loaded."))

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:41-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Arabic\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\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-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: ar_SA\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "حاولت القيام بشيء لا أملك تصريح من ديسكورد لفعله. فشل أمرك في إكمال نجاحه."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "أنا بالفعل أُعلن شيئاً. إذا كنت ترغب في إصدار إعلان مختلف الرجاء إستخدام `{prefix}announce cancel` أولاً."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "مجموعة من أدوات إدارة السيرفر."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "لقد قمت بنجاح بإضافة {role.name} إلى {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "لقد قمت بنجاح بإزالة {role.name} من {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "تعديل إعدادات الرتبة."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "تم."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr "الإعلان عن رسالة إلى جميع السيرفرات المتواجد بها البوت."
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr "تم البدء في الإعلان."
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr "إلغاء إعلان جارٍ."
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr "تم إلغاء الإعلان الحالي."
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr "تعديل القناة التي يستخدمها البوت للإعلانات."
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr "تم تحديث قناة الإعلانات إلى {channel.mention}"
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr "تم تمكين الإعلانات في السيرفر."
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr "سيرفر {guild.name} سيتلقى إعلانات الآن."
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr "سيرفر {guild.name} لن يتلقى إعلانات."
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr "تم تحديث/تعديل قائمة الرتب الذاتية بنجاح."
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr "قفل البوت للسيرفر الحالي فقط."
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr "لم يعد البوت مقفول للسيرفر الحالي فقط."
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr "لقد تم قفل البوت للسيرفر الحالي فقط."
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr "لم أتمكن من الإعلان في السيرفر: {server.id}"
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr "لم يتم تحميل وحدة الأدمن cog."
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr "الرتبة المذكورة ليست على قائمة الرتب الذاتية."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Bulgarian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: bg_BG\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Завършено."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -0,0 +1,186 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:15\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Czech\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
"X-Crowdin-Language: cs\n"
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: cs_CZ\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Pokusil jsem se udělat něco, co mi Discord odepřel. Tvůj příkaz se nepodažilo úspěšně dokončit."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Už něco oznamuji. Pokud bys rád provedl jiné oznámení, nejdříve použij `{prefix}announce cancel`."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Kolekce nástrojů pro správu serveru."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "Úspěšně jsem přidal {role.name} k {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "Úspěšně jsem odstranil {role.name} od {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Upraví nastavení role."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Hotovo."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Danish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: da_DK\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr ""
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: German\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: de_DE\n"
#: redbot/cogs/admin/admin.py:17
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."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr "Ich habe versucht {member.display_name} er Rolle: {role.name} {verb}, aber diese Rolle hat höhere Rechte als ich. Also war es nicht möglich die Rolle erfolgreich hinzuzufügen. Bitte geb mir eine höhere Rolle und versuche es erneut."
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "Ich habe versucht die Rolle {role.name} an {member.display_name} zu {verb}, aber die Rolle ist höher als meine Rolle in der Discord Hierarchie, daher war es mir nicht möglich sie hinzuzufügen. Bitte gib mir eine höhere Rolle und versuche es erneut."
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "Ich habe versucht {role.name} zu bearbeiten, aber die Rolle ist höher als deine höhste Rolle im Discord. Also konnte ich dies nicht erfolgreich hinzufügen. Versuche es mit einer höheren Rolle erneut."
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Ich kündige bereits etwas an. Wenn du eine andere Ankündigung machen willst, benutze bitte zuerst `{prefix}announce cancel`."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Eine Sammlung von administrativen Server-Verwaltungsprogramme."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr "hinzuzufügen"
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "Ich habe erfolgreich {role.name} zu {member.display_name} hinzugefügt"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr "entfernen"
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "Ich habe erfolgreich {role.name} von {member.display_name} entfernt"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Bearbeiten der Rollen Einstellungen."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Erledigt."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr "Mache eine Ankündigung auf allen Servern auf denen der Bot ist."
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr "Die Ankündigung hat begonnen."
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr "Breche eine laufende Ankündigung ab."
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr "Die aktuelle Ankündigung wurde abgebrochen."
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr "Ändere den Kanal in dem der Bot Ankündigungen macht."
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr "Der für Ankündigungen gewählte Kanal wurde festgelegt auf {channel.mention}"
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr "Schaltet Ankündigungen auf diesem Server ein oder aus."
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr "Der Server {guild.name} wird Ankündigunen erhalten."
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr "Der Server {guild.name} wird keine Ankündigunen erhalten."
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr "Die Liste selbst auswählbarer Rollen wurde erfolgreich bearbeitet."
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr "Sperrt den Bot neuen Servern beizutreten."
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr "Der Bot ist nicht länger gesperrt neuen Servern beizutreten."
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr "Der Bot ist jetzt gesperrt neuen Servern beizutreten."
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr "Ich konnte keine Ankündigung auf diesem Server machen: {server.id}"
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr "Das Admin-Cog ist nicht geladen."
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr "Die vorausgesetzte Rolle ist keine berechtigte selbst auswählbare Rolle."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Greek\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: el_GR\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr ""
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:15\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Pirate English\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: en_PT\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Done."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:41-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Spanish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: es_ES\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Intenté hacer algo que Discord me ha negado el permiso. Su comando no se pudo completar."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr "He intentado agregar {verb} {role.name} a {member.display_name} pero ese rol es más alto que mi rol en la jerarquía de Discord, por lo que no he podido añadirlo con éxito. Por favor dame un rol más alto y vuelva a intentarlo."
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "He intentado agregar {verb} {role.name} a {member.display_name} pero ese rol es más alto que mi rol en la jerarquía de Discord, por lo que no he podido añadirlo con éxito. Por favor dame un rol más alto y vuelva a intentarlo."
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "He intentado agregar {role.name} a pero ese rol es más alto que mi rol en la jerarquía de Discord, por lo que no he podido añadirlo con éxito. Por favor dame un rol más alto y vuelva a intentarlo."
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Ya estoy anunciando algo. Si quieres hacer un anuncio diferente, por favor usa `{prefix}announce cancel` primero."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Una colección de utilidades de administración de servidores."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr "añadir"
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "He añadido con éxito {role.name} a {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr "eliminar"
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "He retirado con éxito {role.name} de {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr "Añadir un rol a un usuario.\\n\\n Si el usuario se deja en blanco, por defecto se convierte en autor del comando.\\n "
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr "Eliminar un rol de un usuario.\\n\\n Si el usuario se deja en blanco, por defecto se convierte en autor del comando.\\n "
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Editar configuración de rol."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Listo."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr "Anunciar un mensaje a todos los servidores en que el bot está."
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr "El bot está bloqueado por el servidor."
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr "No pude anunciar en servidor: {server.id}"
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr "El cog Admin no está cargado."
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr "El rol proporcionado no es un selfrole válido."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:15\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Finnish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: fi_FI\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Yritin tehdä jotain, jonka Discord kielsi minulle luvat. Komento epäonnistui onnistuneesti."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr "Yritin {verb} {role.name} kohtaan {member.display_name}, mutta tämä rooli on suurempi kuin korkein roolini Discord-hierarkiassa, joten en voinut lisätä sitä onnistuneesti. Anna minulle suurempi rooli ja yritä uudelleen."
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "Yritin {verb} {role.name} kohtaan {member.display_name}, mutta tämä rooli on korkeampi kuin korkein rooli Discord-hierarkiassa, joten en voinut lisätä sitä onnistuneesti. Hanki suurempi rooli ja yritä uudelleen."
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "Yritin muokata {role.name}, mutta tämä rooli on korkeampi kuin korkein rooli Discord-hierarkiassa, joten en voinut lisätä sitä onnistuneesti. Hanki suurempi rooli ja yritä uudelleen."
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Olen jo ilmoittanut jotain. Jos haluat tehdä toisen ilmoituksen, käytä ensin \"{prefix} announce cancel\"."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Kokoelma palvelinhallintaohjelmia."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr "lisätä"
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "Lisäsin {role.name} onnistuneesti {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr "poistaa"
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "Olen poistanut {role.name} onnistuneesti {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Muokkaa rooliasetuksia."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Tehty."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr "Ilmoita viesti kaikille palvelimille, joihin botti on."
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:41-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:11\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: French\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: fr_FR\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "J'ai tenté de faire quelque chose que pour lequel Discord m'a refusé les permissions. La commande a échoué."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr "J'ai essayé de {verb} {role.name} à {member.display_name} mais ce rôle est plus élevé que mon rôle le plus élevé dans la hiérarchie Discord, je n'ai donc pas réussi à l'ajouter. Donnez-moi un rôle plus élevé et réessayez."
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "J'ai essayé de {verb} {role.name} à {member.display_name} mais ce rôle est plus élevé que votre rôle le plus élevé dans la hiérarchie Discord donc je n'ai pas réussi à l'ajouter. Essayez à nouveau avec un rôle plus élevé."
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "J'ai essayé d'éditer {role.name} mais ce rôle est plus élevé que votre rôle le plus élevé dans la hiérarchie Discord et je n'ai donc pas réussi à l'ajouter. Essayez à nouveau avec un rôle plus élevé."
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Je suis déjà en train d'annoncer quelque chose. Si tu souhaites faire une annonce différente, tu dois d'abord utiliser la commande `{prefix}announce cancel`."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Un ensemble d'utilitaires d'administration du serveur."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr "ajouter"
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "J'ai bien ajouté le rôle {role.name} à {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr "supprimer"
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "J'ai bien retiré le rôle {role.name} de {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr "Ajouter un rôle à un utilisateur.\\n\\n Si aucun utilisateur n'est mentionné dans la commande, celui-ci fera effet sur l'auteur.\\n "
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr "Retirer un rôle à un utilisateur.\\n\\n Si aucun utilisateur n'est mentionné dans la commande, celui-ci fera effet sur l'auteur.\\n "
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Modifier les paramètres d'un rôle."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 "Modifier la couleur d'un rôle.\\n\\n Utilise des guillemets si le nom du rôle contient des espaces.\\n La couleur doit être au format hexadécimal\\n [Sélecteur de couleur en ligne](http://www.w3schools.com/colors/colors_picker.asp)\\n\\n Exemples:\\n `[p]editrole colour \\\"The Transistor\\\" #ff0000`\\n `[p]editrole colour Test #ff9900`\\n "
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Fait."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr "Modifier le nom d'un rôle.\\n\\n Utilise des guillemets si le nom du rôle contient des espaces.\\n\\n Exemples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr "Faire une annonce à tous les serveurs dans lesquels le bot se trouve."
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr "Lannonce a commencé."
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr "Interrompre une annonce en cours."
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr "L'annonce actuelle a été interrompue."
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr "Changer le salon dans lequel le bot fait des annonces."
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr "Les annonces seront maintenant faites dans {channel.mention}"
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr "Activer ou désactiver les annonces sur ce serveur."
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr "Le serveur {guild.name} recevra maintenant les annonces."
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr "Le serveur {guild.name} ne recevra plus les annonces."
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr "S'ajouter un rôle à soi-même.\\n\\n Les administrateurs du serveur doivent avoir configuré le rôle en tant qu'ajoutable par les utilisateurs.\\n\\n NOTE : Le nom du rôle est sensible aux majuscules et minuscules !\\n "
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr "Se supprimer un auto-rôle.\\n\\n NOTE : Le rôle est sensible aux majuscules et minuscules !\\n "
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr "Ajouter 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:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr "La liste des auto-rôles a été modifiée avec succès."
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr "Supprimer un rôle de la liste des auto-rôles.\\n\\n NOTE : Le nom du rôle est sensible aux majuscules et minuscules !\\n "
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr "\\n Liste de tous les auto-rôles disponibles.\\n "
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr "Auto-rôles disponibles :\\n{selfroles}"
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr "Verrouiller un bot sur ses serveurs actuels uniquement."
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr "Le bot n'est plus verrouillé sur ses serveurs actuels."
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr "Le bot est maintenant verrouillé sur ses serveurs actuels."
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr "Je n'ai pas pu faire d'annonce dans le serveur: {server.id}"
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr "Le cog Admin n'est pas chargé."
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr "Le rôle fourni n'est pas un auto-rôle valide."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Hungarian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: hu_HU\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Kész."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Indonesian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: id_ID\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr "menambahkan"
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr "menghapus"
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Selesai."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Italian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: it_IT\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Ho cercato di fare qualcosa ma Discord mi ha negato i permessi per farla. Il tuo comando non è stato completato con successo."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr "Ho cercato di {verb} {role.name} al gruppo {member.display_name} ma quel ruolo è più elevato del mio livello nella gerarchia di Discord quindi non sono stato in grado di aggiungerlo. prova a darmi un ruolo più alto e riprova."
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "Ho cercato di {verb} {role.name} al gruppo {member.display_name} ma quel ruolo è più elevato del tuo livello nella gerarchia di Discord quindi non sono stato in grado di aggiungerlo. Raggiungi un ruolo più alto e riprova."
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "Ho cercato di modificare {role.name} ma quel ruolo è più elevato del tuo livello nella gerarchia di Discord quindi non sono stato in grado di aggiungerlo. Raggiungi un ruolo più alto e riprova."
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Sto già annunciando qualcosa. Se desideri fare un annuncio diverso, usa prima `{prefix}announce cancel`."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Una collezione di servizi di amministrazione del server."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr "aggiungere"
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "Ho aggiunto con successo {role.name} al gruppo {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr "rimuovere"
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "Ho rimosso con successo {role.name} dal gruppo {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Modifica impostazioni ruolo."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Fatto."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr "Invia un annuncio a tutti i server in cui si trova il bot."
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr "L'annuncio è partito."
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr "Cancella un annuncio in corso."
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr "L'annuncio in corso è stato cancellato."
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr "Modifica il canale in cui il bot invia gli annunci."
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr "Il canale per gli annunci è stato impostato su {channel.mention}"
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr "Attiva/disattiva gli annunci in questo server."
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr "Il server {guild.name} riceverà gli annunci."
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr "Il server {guild.name} non riceverà gli annunci."
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr "La lista dei ruoli autoassegnabili e stata modificata."
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr "Blocca un bot ai suoi server attuali."
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr "Il bot non è più bloccato ai server."
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr "Il bot è bloccato ai server."
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr "Non ho potuto annunciare al server: {server.id}"
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr "Il cog Admin non è caricato."
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr "Il ruolo fornito non è un ruolo autoassegnabile valido."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Japanese\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: ja_JP\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "私は不和が私に権限を拒否した何かをしようとしました。コマンドを正常に完了できませんでした。"
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr ""
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Korean\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: ko_KR\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "다 했어요."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: LOLCAT\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: lol_US\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Discord sayed I can't do sometingz. Ur command faild 2 complete."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr ""
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Dutch\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: nl_NL\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Ik probeerde iets te doen, maar Discord weigerde mij toestemming te geven. Je command is geslaagd te mislukken."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Ik ben al iets aan het aankondigen. Als je iets anders wilt aankondigen, voer dan eerst deze command uit: '{prefix}announce cancel'."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Een collectie van de server administratie voorzieningen."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "Ik heb succesvol {role.name} toegevoegd aan {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "Ik heb succesvol {role.name} verwijderd van {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Rol instellingen bewerken."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Klaar."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr "Kondig een bericht aan in alle servers."
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr "De aankondiging is begonnen."
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr "Annuleer een huidige aankondiging."
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr "De huidige aankondiging is geannuleerd."
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr "Bewerk het kanaal waar de bot aankondigingen maakt."
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr "Het aankondigingskanaal is aangepast naar {channel.mention}"
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr "Aankondigingen zijn geactiveerd in deze server."
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr "De server {guild.name} ontvangt aankondigingen."
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr "De server {guild.name} ontvangt geen aankondigingen."
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr "De selfroles lijst is succesvol aangepast."
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr "Vergrendel de bot voor alleen deze server."
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr "De bot is niet langer vergrendeld."
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr "De bot is vergrendeld."
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr "Ik kan geen bericht aankondigen in: {server.id}"
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr "De admin cog is niet geladen."
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr "De ingevulde rol is geen beschikbare selfrole."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Norwegian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: no_NO\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Ferdig."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,18 +1,186 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Polish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Plural-Forms: nplurals=4; plural=((n == 1) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || n%10 == 1 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 12 && n%100 <= 14)) ? 2 : 3));\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\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-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
"X-Crowdin-Language: pl\n"
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: pl_PL\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr "Spróbowałam {verb} {role.name} na {member.display_name}, ale ta rola jest wyższa niż moja najwyższa rola w hierarchii Discorda, więc nie mogłam jej dodać. Daj mi proszę wyższą rolę i spróbuj ponownie."
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "Spróbowałam {verb} {role.name} na {member.display_name}, ale ta rola jest wyższa niż twoja najwyższa rola w hierarchii Discorda, więc nie mogłam jej dodać. Uzyskaj proszę wyższą rolę i spróbuj ponownie."
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "Spróbowałam zmienić {role.name}, ale ta rola jest wyższa niż twoja najwyższa rola w hierarchii Discorda, więc nie mogłam jej dodać. Uzyskaj proszę wyższą rolę i spróbuj ponownie."
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr "dodać"
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr "usunąć"
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Gotowe."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr "Moduł Admin nie jest załadowany."
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Portuguese, Brazilian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: pt_BR\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Eu tentei fazer algo que o Discord me negou as permissões. Seu comando falhou em ser completado com sucesso."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Eu já estou anunciando algo. Se quer fazer um anúncio diferente, por favor use `{prefix}announce cancel` primeiro."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Uma coleção de ferramentas de administração para o servidor."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "Eu adicionei com sucesso {role.name} de {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "Eu removi com sucesso {role.name} de {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Edite as configurações de cargo."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Concluído."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Portuguese\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: pt_PT\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Tentei fazer uma coisa que o Discord negou permissão para fazer. O comando não foi concluído."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Já estou a anunciar algo. Se queres fazer um anúncio diferente usa `{prefix}announce cancel` antes de usares este comando."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Uma coleção de utilidades para administração de servidores."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "Adicionei com sucesso {role.name} a {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "Removi com sucesso {role.name} de {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Concluído."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr "Anuncia uma mensagem para todos os servidores em que o bot está."
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr "O anúncio foi iniciado."
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr "Cancelar um anúncio em curso."
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr "O anúncio atual foi cancelado."
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr "Mude o canal para o qual o bot faz os anúncios."
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr "O canal de anúncio foi definido para {channel.mention}"
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr "Ativar ou Desativar os anúncios neste servidor."
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr "O servidor {guild.name} vai receber anúncios."
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr "O servidor {guild.name} não vai receber anúncios."
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr "A lista de cargos definíveis foi modificada com sucesso."
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr "Bloquear o bot aos servidores atuais."
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr "O bot já não está bloqueado aos servidores atuais."
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr "O bot está agora bloqueado aos servidores atuais."
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr "Não me foi possível anunciar no servidor: {server.id}"
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr "O cog 'Admin' não está carregado."
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr "O cargo indicado não é um cargo definível válido."

View File

@@ -0,0 +1,186 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:09\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Romanian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
"X-Crowdin-Language: ro\n"
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: ro_RO\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr ""
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Russian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\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-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: ru_RU\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Я попыталась сделать что-то, в чем Discord отказал мне в разрешениях. Ваша команда не была выполнена успешно."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr "Я попытался изменить {role.name}, но эта роль выше Вашей в иерархии Discord, поэтому я не смог добавить её. Повысьте роль и попробуйте еще раз."
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr "Я уже что-то объявляю. Если вы хотите сделать другое объявление, сначала используйте `{prefix}announce cancel`."
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "Набор утилит администрирования сервера."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr "добавить"
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr "Я успешно добавила роль {role.name} пользователю {member.display_name}"
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr "удалить"
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr "Я успешно забрала роль {role.name} у пользователя {member.display_name}"
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Изменение параметров роли."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Готово."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr "Объявить сообщение на всех серверах, к которым подключен бот."
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr "Объявление началось."
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr "Отменить текущее объявление."
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr "Текущее объявление было отменено."
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr "Изменить канал, на котором бот делает объявления."
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr "Канал объявления был установлен на {channel.mention}"
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr "Переключить объявления, когда этот сервер включен."
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr "Сервер {guild.name} будет получать объявления."
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr "Сервер {guild.name} не будет получать объявления."
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr "Список ролей был изменен успешно."
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr "Зафиксировать бота только на его текущих серверах."
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr "Бот больше не зафиксирован на сервере."
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr "Бот теперь зафиксирован на сервере."
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr "Я не могу объявить на сервере: {server.id}"
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr "Модуль Admin не загружен."
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr "Предоставленная роль не является допустимой ролью."

View File

@@ -0,0 +1,186 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Slovak\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
"X-Crowdin-Language: sk\n"
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: sk_SK\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr ""
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Swedish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: sv_SE\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr "Jag försökte göra något som Discord nekade mig behörighet till. Ditt kommando kunde inte slutföras."
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr "En samling administrationsverktyg för servern."
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr "Redigera rollinställningar."
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Klart."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -0,0 +1,186 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Turkish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
"X-Crowdin-Language: tr\n"
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: tr_TR\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "Tamamdır."
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Chinese Simplified\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,3 +16,171 @@ msgstr ""
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: zh_CN\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr "完成。"
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -0,0 +1,186 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:15\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Chinese Traditional\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
"X-Crowdin-Language: zh-TW\n"
"X-Crowdin-File: /cogs/admin/locales/messages.pot\n"
"Language: zh_TW\n"
#: redbot/cogs/admin/admin.py:17
msgid "I attempted to do something that Discord denied me permissions for. Your command failed to successfully complete."
msgstr ""
#: redbot/cogs/admin/admin.py:22
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than my highest role in the Discord hierarchy so I was unable to successfully add it. Please give me a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:29
msgid "I tried to {verb} {role.name} to {member.display_name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:36
msgid "I tried to edit {role.name} but that role is higher than your highest role in the Discord hierarchy so I was unable to successfully add it. Please get a higher role and try again."
msgstr ""
#: redbot/cogs/admin/admin.py:43
msgid "I am already announcing something. If you would like to make a different announcement please use `{prefix}announce cancel` first."
msgstr ""
#: redbot/cogs/admin/admin.py:53
#, docstring
msgid "A collection of server administration utilities."
msgstr ""
#: redbot/cogs/admin/admin.py:115 redbot/cogs/admin/admin.py:160
msgid "add"
msgstr ""
#: redbot/cogs/admin/admin.py:121
msgid "I successfully added {role.name} to {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:132 redbot/cogs/admin/admin.py:180
msgid "remove"
msgstr ""
#: redbot/cogs/admin/admin.py:138
msgid "I successfully removed {role.name} from {member.display_name}"
msgstr ""
#: redbot/cogs/admin/admin.py:149
#, docstring
msgid "Add a role to a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:169
#, docstring
msgid "Remove a role from a user.\\n\\n If user is left blank it defaults to the author of the command.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:187
#, docstring
msgid "Edit role settings."
msgstr ""
#: redbot/cogs/admin/admin.py:194
#, docstring
msgid "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 ""
#: redbot/cogs/admin/admin.py:217 redbot/cogs/admin/admin.py:245
msgid "Done."
msgstr ""
#: redbot/cogs/admin/admin.py:222
#, docstring
msgid "Edit a role's name.\\n\\n Use double quotes if the role or the name contain spaces.\\n\\n Examples:\\n `[p]editrole name \\\"The Transistor\\\" Test`\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:250
#, docstring
msgid "Announce a message to all servers the bot is in."
msgstr ""
#: redbot/cogs/admin/admin.py:257
msgid "The announcement has begun."
msgstr ""
#: redbot/cogs/admin/admin.py:265
#, docstring
msgid "Cancel a running announce."
msgstr ""
#: redbot/cogs/admin/admin.py:271
msgid "The current announcement has been cancelled."
msgstr ""
#: redbot/cogs/admin/admin.py:277
#, docstring
msgid "Change the channel to which the bot makes announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:283
msgid "The announcement channel has been set to {channel.mention}"
msgstr ""
#: redbot/cogs/admin/admin.py:290
#, docstring
msgid "Toggle announcements being enabled this server."
msgstr ""
#: redbot/cogs/admin/admin.py:296
msgid "The server {guild.name} will receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:300
msgid "The server {guild.name} will not receive announcements."
msgstr ""
#: redbot/cogs/admin/admin.py:326
#, docstring
msgid "Add a role to yourself.\\n\\n Server admins must have configured the role as user settable.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:337
#, docstring
msgid "Remove a selfrole from yourself.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:347
#, docstring
msgid "Add a role to the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:355 redbot/cogs/admin/admin.py:367
msgid "The selfroles list has been successfully modified."
msgstr ""
#: redbot/cogs/admin/admin.py:360
#, docstring
msgid "Remove a role from the list of available selfroles.\\n\\n NOTE: The role is case sensitive!\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:371
#, docstring
msgid "\\n Lists all available selfroles.\\n "
msgstr ""
#: redbot/cogs/admin/admin.py:377
msgid "Available Selfroles:\\n{selfroles}"
msgstr ""
#: redbot/cogs/admin/admin.py:394
#, docstring
msgid "Lock a bot to its current servers only."
msgstr ""
#: redbot/cogs/admin/admin.py:399
msgid "The bot is no longer serverlocked."
msgstr ""
#: redbot/cogs/admin/admin.py:401
msgid "The bot is now serverlocked."
msgstr ""
#: redbot/cogs/admin/announcer.py:70
msgid "I could not announce to server: {server.id}"
msgstr ""
#: redbot/cogs/admin/converters.py:25
msgid "The Admin cog is not loaded."
msgstr ""
#: redbot/cogs/admin/converters.py:34
msgid "The provided role is not a valid selfrole."
msgstr ""

View File

@@ -1,8 +1,10 @@
from copy import copy
from re import search
from re import findall, search
from string import Formatter
from typing import Generator, Tuple, Iterable, Optional
import discord
from discord.ext.commands.view import StringView
from redbot.core import Config, commands, checks
from redbot.core.i18n import Translator, cog_i18n
from redbot.core.utils.chat_formatting import box
@@ -13,6 +15,21 @@ from .alias_entry import AliasEntry
_ = Translator("Alias", __file__)
class _TrackingFormatter(Formatter):
def __init__(self):
super().__init__()
self.max = -1
def get_value(self, key, args, kwargs):
if isinstance(key, int):
self.max = max((key, self.max))
return super().get_value(key, args, kwargs)
class ArgParseError(Exception):
pass
@cog_i18n(_)
class Alias(commands.Cog):
"""Create aliases for commands.
@@ -80,8 +97,25 @@ class Alias(commands.Cog):
return not bool(search(r"\s", alias_name)) and alias_name.isprintable()
async def add_alias(
self, ctx: commands.Context, alias_name: str, command: Tuple[str], global_: bool = False
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_:
@@ -142,7 +176,17 @@ class Alias(commands.Cog):
:return:
"""
known_content_length = len(prefix) + len(alias.name)
extra = message.content[known_content_length:].strip()
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(
@@ -167,10 +211,18 @@ class Alias(commands.Cog):
async def call_alias(self, message: discord.Message, prefix: str, alias: AliasEntry):
new_message = copy(message)
args = self.get_extra_args_from_alias(message, prefix, alias)
try:
args = self.get_extra_args_from_alias(message, prefix, alias)
except commands.BadArgument as bae:
return
trackform = _TrackingFormatter()
command = trackform.format(alias.command, *args)
# noinspection PyDunderSlots
new_message.content = "{}{} {}".format(prefix, alias.command, args)
new_message.content = "{}{} {}".format(
prefix, command, " ".join(args[trackform.max + 1 :])
)
await self.bot.process_commands(new_message)
@commands.group()
@@ -228,7 +280,10 @@ class Alias(commands.Cog):
# At this point we know we need to make a new alias
# and that the alias name is valid.
await self.add_alias(ctx, alias_name, command)
try:
await self.add_alias(ctx, alias_name, command)
except ArgParseError as e:
return await ctx.send(" ".join(e.args))
await ctx.send(
_("A new alias with the trigger `{name}` has been created.").format(name=alias_name)
@@ -274,7 +329,10 @@ class Alias(commands.Cog):
return
# endregion
await self.add_alias(ctx, alias_name, command, global_=True)
try:
await self.add_alias(ctx, alias_name, command, global_=True)
except ArgParseError as e:
return await ctx.send(" ".join(e.args))
await ctx.send(
_("A new global alias with the trigger `{name}` has been created.").format(
@@ -317,7 +375,7 @@ class Alias(commands.Cog):
await ctx.send(_("There is no alias with the name `{name}`").format(name=alias_name))
@checks.mod_or_permissions(manage_guild=True)
@alias.command(name="del")
@alias.command(name="delete", aliases=["del", "remove"])
@commands.guild_only()
async def _del_alias(self, ctx: commands.Context, alias_name: str):
"""Delete an existing alias on this server."""
@@ -336,7 +394,7 @@ class Alias(commands.Cog):
await ctx.send(_("Alias with name `{name}` was not found.").format(name=alias_name))
@checks.is_owner()
@global_.command(name="del")
@global_.command(name="delete", aliases=["del", "remove"])
async def _del_global_alias(self, ctx: commands.Context, alias_name: str):
"""Delete an existing global alias."""
aliases = await self.unloaded_global_aliases()
@@ -376,6 +434,7 @@ class Alias(commands.Cog):
else:
await ctx.send(box("\n".join(names), "diff"))
@commands.Cog.listener()
async def on_message(self, message: discord.Message):
aliases = list(await self.unloaded_global_aliases())
if message.guild is not None:

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:41-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Arabic\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\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-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: ar_SA\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr ""
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr ""
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr ""
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr ""
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr ""
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr ""
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Bulgarian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: bg_BG\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Няма намерен префикс."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Нов псевдоним със задействащия оператор `{}` беше създаден."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Нов псевдоним, по всеобщо правило, със задействащия оператор `{}` беше създаден."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Този псевдоним не съществува."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "`{}` псевдоним ще изпълни командата `{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Псевдонимът под името `{}` не съществува"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Няма псевдоними положени към тази гилдия."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "Псевдонимът с име `{}` беше успешно изтрит."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Псевдонимът с името `{}` не е намерен."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Няма псевдоними положени към този бот."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Псевдоними:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Няма използвани псевдоними на този сървър."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Няма псевдоними положени към този бот."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Псевдоними:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -0,0 +1,154 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:15\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Czech\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
"X-Crowdin-Language: cs\n"
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: cs_CZ\n"
#: redbot/cogs/alias/alias.py:35
#, 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 "
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:107
msgid "Arguments must be specified with a number."
msgstr "Argumenty musí být zadány s číslem."
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr "Argumenty musí být sekvenční. Chybějící argumenty: "
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Nebyl nalezen žádný prefix."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr "Spravovat aliasy příkazů."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:259
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:270
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 ""
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr ""
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr ""
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Danish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: da_DK\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr ""
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr ""
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr ""
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr ""
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr ""
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr ""
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: German\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: de_DE\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr "Argumente müssen mit einer Nummer bestimmt werden."
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr "Argumente müssen sequentiell sein. Fehlende Argumente: "
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Kein Präfix wurde gefunden."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
msgstr "Sie haben versucht, einen neuen Alias mit dem Namen {} zu erstellen, aber dieser Name ist bereits ein Command für diesen Bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr "Verwalte die Alias Befehle."
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
msgstr "Sie haben versucht, einen neuen Alias mit dem Namen {} zu erstellen, aber dieser Alias existiert bereits auf diesem Server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr "Verwalte die globalen Aliasse."
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Sie haben versucht, einen neuen Alias mit dem Namen {} zu erstellen, dieser Name ist jedoch ein ungültiger Aliasname. Alias-Namen dürfen keine Leerzeichen enthalten."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr "Füge einen Alias für einen Befehl hinzu."
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Ein neuer alias mit dem Trigger `{}` wurde hinzugefügt."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr "Du hast versucht, einen neuen Alias mit dem Namen {name} zu erstellen, aber dieser Name ist bereits ein Befehl für diesen Bot."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
msgstr "Sie haben versucht, einen neuen globalen Alias mit dem Namen {} zu erstellen, aber dieser Name ist bereits ein Command für diesen Bot."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr "Du hast versucht einen neuen Alias mit dem Namen {name} zu erstellen, aber dieser Alias existiert bereits auf dem Server."
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
msgstr "Sie haben versucht, einen neuen globalen Aliasnamen mit dem Namen {} zu erstellen, dieser Aliasname ist jedoch bereits auf diesem Server vorhanden."
#: redbot/cogs/alias/alias.py:270
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 "Du hast versucht einen neuen Alias mit dem Namen {name} zu erstellen, aber dieser Name ist ein ungültiger Alias-Name. Alias-Namen dürfen keine Leerzeichen enthalten."
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Sie haben versucht, einen neuen globalen Aliasnamen mit dem Namen {} zu erstellen, dieser Name ist jedoch ein ungültiger Aliasname. Alias-Namen dürfen keine Leerzeichen enthalten."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr "Ein neuer alias mit dem Trigger `{name}` wurde erstellt."
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Ein neuer globaler Alias mit dem Trigger `{}` wurde erstellt."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr "Füge einen globalen Alias für einen Befehl hinzu."
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr "Du hast versucht, einen neuen globalen Alias mit dem Namen {name} zu erstellen, aber dieser Name ist bereits ein Befehl für diesen Bot."
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr "Du hast versucht, einen neuen globalen Alias mit dem Namen {name} zu erstellen, dieser ist jedoch bereits auf diesem Server vorhanden."
#: redbot/cogs/alias/alias.py:322
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 "Du hast versucht, einen neuen globalen Alias mit dem Namen {name} zu erstellen, dieser Name ist jedoch ein ungültiger Alias-Name. Alias-Namen dürfen keine Leerzeichen enthalten."
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr "Ein neuer globaler Alias mit dem Trigger `{name}` wurde erstellt."
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr "Versuche die Hilfe für den Basisbefehl des Alias auszuführen."
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr "{prefix}help {command}"
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Kein solcher alias ist vorhanden."
msgstr "So ein Alias ist nicht vorhanden."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "Der `{}` alias wird den Befehl `{}` ausführen"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr "Zeige den Befehl, welchen der Alias ausführt."
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Es gibt keinen alias mit dem Namen `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr "Der Alias '{alias_name}' führt den Befehl '{command}' aus"
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Es gibt keine Aliase auf diesem Server."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr "Kein Alias mit dem Namen '{name}' gefunden"
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "Der Alias mit dem Namen `{}` wurde erfolgreich gelöscht."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr "Lösche einen bereits existierenden Alias auf diesem Server."
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Der Alias mit dem Namen `{}` wurde nicht gefunden."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Es gibt keine Aliase in diesem Bot."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Aliase:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Es gibt keine Aliase in diesem Server."
msgstr "Es gibt keine Aliasse auf diesem Server."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr "Der Alias mit dem Namen '{name}' wurde erfolgreich gelöscht."
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr "Kein Alias mit dem Namen '{name}' gefunden."
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr "Lösche einen bereits existierenden globalen Alias."
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Es gibt keine Aliasse in diesem Bot."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr "Zeige die auf diesem Server verfügbaren Alias."
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Aliasse:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr "Zeige die verfügbaren globalen Alias von diesem Bot."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Greek\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: el_GR\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Δεν βρέθηκε πρόθεμα."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr ""
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr ""
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr ""
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr ""
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr ""
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:15\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Pirate English\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: en_PT\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Arrr, no prefix found capt'n!"
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
msgstr "Ye try and make a squeeky-clean alias with the name {} but 'she be taken by another order."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
msgstr "Ye try and make a Squeeky-clean alias with the name {} but 'she already be on the island."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Ye try and make a Squeeky-clean alias with the name {} but 'she walk the plank! Spaces in an alias must walk the plank."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Arrr! A new alias with thee trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
msgstr "Ye try and make a squeeky-clean global alias with the name {} but 'she be taken by another order."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
msgstr "Ye try and make a Squeeky-clean global alias with the name {} but 'she already be on the island."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Ye try and make a Squeeky-clean global alias with the name {} but 'she walk the plank! Spaces in an alias must walk the plank."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Arrr! A new global alias with thee trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Yer scummy alias don't exist, matey!"
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "Blimey! Thee `{}` alias will execute thee command `{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Thar is no alias with thee name `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Fool! Thar be no aliases on this guild."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "Yo-ho-ho! Alias with thee name `{}` has been sent to Davy Jones' locker."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Yo-ho-ho! Alias with thee name `{}`as been sent to Davy Jones' locker."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Shiver me timbers! Thar be no aliases on this bot."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Yar Aliases:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Alas! Thar be no aliases on this guild."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Shiver me timbers! Thar be no aliases on this bot."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Yar Aliases:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:41-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Spanish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: es_ES\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Prefijo no encontrado."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
msgstr "Has intentado crear un nuevo alias con el nombre {} pero ese nombre ya es un comando en este bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
msgstr "Se ha intentado crear un nuevo alias con el nombre {} pero ese alias ya existe en este servidor."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Has intentado crear un nuevo alias con el nombre {} pero ese nombre es un alias inválido. Los alias no deben contener espacios."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Un alias nuevo ha creado con el activación `{}`."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
msgstr "Has intentado crear un nuevo alias global con el nombre {} pero ese nombre ya es un comando en este bot."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
msgstr "Se ha intentado crear un nuevo alias global con el nombre {} pero ese alias ya existe en este servidor."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Has intentado crear un nuevo alias global con el nombre {} pero ese nombre es un alias inválido. Los alias no deben contener espacios."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Un alias nuevo global ha creado con el activación `{}`."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Un alias no existe."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "El alias de `{}` va a ejecutar el comando`{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "No hay el alias con el nombre de `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "No hay el alias dentro de este guild."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "El alias con el nombre de `{}` satisfactoriamente se ha eliminado."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Alias con el nombre `{}` no fue encontrado."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "No hay el los alias dentro de este bot."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Alias:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "No hay los aliases en este servidor."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "No hay el los alias dentro de este bot."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Alias:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:15\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Finnish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: fi_FI\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr ""
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr ""
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr ""
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr ""
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr ""
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr ""
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:41-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:11\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: French\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: fr_FR\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr "Créée des alias pour les commandes\\n\\n Les alias sont des raccourcis de noms alternatifs pour les commandes. Ils\\n peuvent agir comme un lambda (stocker des arguments pour un usage répété)\\n ou comme simplement un raccourci pour dire \\\"x y z\\\".\\n\\n Lors de leur exécution, les alias accepteront tous les arguments supplémentaires\\n et seront exécutés en plus des arguments stockés dans l'alias.\\n "
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr "Les arguments doivent être spécifiés avec un nombre."
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr "Les arguments doivent être séquentiels. Arguments manquants : "
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Aucun préfixe trouvé."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
msgstr "Vous avez tenté de créer un nouvel alias nommé {}, mais une commande existe déjà avec ce nom sur ce bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr "Gérer les alias de commandes."
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
msgstr "Vous avez tenté de créer un nouvel alias nommé {}, mais cet alias existe déjà sur cette guilde."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr "Gérer les alias globaux."
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Vous avez tenté de créer un nouvel alias nommé {}, mais ce nom d'alias est invalide. Les noms d'alias ne peuvent pas contenir d'espaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr "Ajouter un alias à une commande."
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Un nouvel alias avec le déclencheur `{}` a bien été créé."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr "Tu as tenté de créer un nouvel alias nommé {name}, mais une commande existe déjà avec ce nom sur ce bot."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
msgstr "Vous avez tenté de créer un nouvel alias global nommé {}, mais une commande existe déjà avec ce nom sur ce bot."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr "Tu as tenté de créer un nouvel alias nommé {name}, mais cet alias existe déjà sur ce serveur."
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
msgstr "Vous avez tenté de créer un nouvel alias global nommé {}, mais cet alias existe déjà sur cette guilde."
#: redbot/cogs/alias/alias.py:270
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 "Tu as tenté de créer un nouvel alias nommé {name}, mais ce nom d'alias est invalide. Les noms d'alias ne peuvent pas contenir d'espaces."
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Vous avez tenté de créer un nouvel alias global nommé {}, mais ce nom d'alias est invalide. Les noms d'alias ne peuvent pas contenir d'espaces."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr "Un nouvel alias avec le déclencheur `{name}` a bien été créé."
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Un nouvel alias global avec le déclencheur `{}` a bien été créé."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr "Ajouter un alias global à une commande."
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr "Tu as tenté de créer un nouvel alias global nommé {name}, mais une commande existe déjà avec ce nom sur ce bot."
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr "Tu as tenté de créer un nouvel alias global nommé {name}, mais cet alias existe déjà sur ce serveur."
#: redbot/cogs/alias/alias.py:322
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 "Tu as tenté de créer un nouvel alias global nommé {name}, mais ce nom d'alias est invalide. Les noms d'alias ne peuvent pas contenir d'espaces."
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr "Un nouvel alias global avec le déclencheur `{name}` a bien été créé."
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr "Tente d'exécuter l'aide pour la commande de base de l'alias."
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr "{prefix}help {command}"
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Cet alias n'existe pas."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "L'alias `{}` va exécuter la commande `{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr "Affiche la commande que l'alias exécute."
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Il n'y a pas d'alias nommé `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr "L'alias `{alias_name}` exécute la commande `{command}`"
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Il n'y a pas d'alias sur cette guilde."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr "Il n'y a pas d'alias nommé `{name}`"
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "L'alias nommé `{}`a bien été supprimé."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr "Supprime un alias de ce serveur."
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "L'alias nommé `{}`n'a pas été trouvé."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Il n'y a pas d'alias sur ce bot."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Alias:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Il n'y a pas d'alias sur ce serveur."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr "L'alias nommé `{name}` a bien été supprimé."
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr "L'alias nommé `{name}` n'a pas été trouvé."
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr "Supprime un alias global existant."
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Il n'y a pas d'alias sur ce bot."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr "Liste les alias disponibles sur ce serveur."
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Alias:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr "Liste les alias globaux disponibles sur ce bot."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:12\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Hungarian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: hu_HU\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Nem találtható prefix."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Egy új rövidítés `{}` létrehozva."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Egy új globális rövidítés `{}` létrehozva."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Nem létezik ilyen rövidítés."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "A(z) `{}` rövidítés a `{}` parancsot fogja végrehajtani"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Nem található olyan rövidítés melynek a neve `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Nincsenek rövidítések ezen a szerveren."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "`{}` rövidítés sikeresen törölve."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Nem található olyan rövidítés melynek a neve `{}`."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Nincsenek rövidítések ennél a botnál."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Rövidítések:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Nincsenek rövidítések ezen a szerveren."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Nincsenek rövidítések ennél a botnál."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Rövidítések:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Indonesian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: id_ID\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Awalan tidak ditemukan."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
msgstr "Anda mencoba untuk membuat sebuah alias baru dengan nama {} tetapi nama itu sudah menjadi perintah pada bot ini."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
msgstr "Anda mencoba untuk membuat sebuah alias baru dengan nama {} tetapi alias itu sudah ada pada server ini."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Anda mencoba untuk membuat sebuah alias baru dengan nama {} tetapi nama itu adalah sebuah nama alias yang tidak berlaku. Nama alias tidak boleh berisi spasi."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Alias baru dengan pemicu '{}' telah dibuat."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
msgstr "Anda mencoba untuk membuat sebuah alias global baru dengan nama {} tetapi nama itu sudah menjadi sebuah perintah pada bot ini."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
msgstr "Anda mencoba untuk membuat sebuah alias global baru dengan nama {} tetapi alias itu sudah ada pada server ini."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "Anda mencoba untuk membuat sebuah alias global baru dengan nama {} tetapi nama itu adalah sebuah nama alias yang tidak berlaku. Nama alias tidak boleh berisi spasi."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Alias global baru dengan pemicu '{}' telah dibuat."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Alias tersebut tidak ditemukan."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "Alias '{}' akan mengeksekusi perintah '{}'"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Tidak ada alias dengan nama '{}'"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Tidak ada alias pada guild ini."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "Alias dengan nama '{}' berhasil dihapus."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Alias dengan nama '{}' tidak ditemukan."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Tidak ada alias pada bot ini."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Alias:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Tidak ada alias pada server ini."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Tidak ada alias pada bot ini."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Alias:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Italian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: it_IT\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr "Gli argomenti devono essere specificati con un numero."
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Nessun prefisso trovato."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr "Gestisci gli alias dei comandi."
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr "Gestisci alias globali."
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr ""
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr "Aggiungi un alias per un comando."
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "È stato creato un nuovo alias con il grilletto '{}'."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr "Hai cercato di creare un nuovo alias con il nome {name}, ma questo nome corrisponde già a un comando su questo bot."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr "Hai cercato di creare un nuovo alias con il nome {name}, ma questo alias già esiste su questo bot."
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:270
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 "Hai cercato di creare un nuovo alias con il nome {name}, ma questo nome non è un nome alias valido. I nomi alias non possono contenere spazi."
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr ""
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr "È stato creato un nuovo alias con il comando '{name}'."
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "È stato creato un nuovo alias globale con il grilletto '{}'."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr "Aggiungi un alias globale per un comando."
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr "Hai cercato di creare un nuovo alias globale con il nome {name}, ma questo nome corrisponde già a un comando su questo bot."
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr "Hai cercato di creare un nuovo alias globale con il nome {name}, ma questo alias già esiste su questo server."
#: redbot/cogs/alias/alias.py:322
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 "Hai cercato di creare un nuovo alias globale con il nome {name}, ma questo nome non è un nome alias valido. I nomi alias non possono contenere spazi."
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr "È stato creato un nuovo alias globale con il comando '{name}'."
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr "Prova a eseguire l'aiuto per il comando di base dell'alias."
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr "{prefix}help {command}"
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Non esiste nessun alias con questo nome."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "L'alias '{}' eseguirà il comando '{}'"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr "Mostra quale comando viene eseguito dall'alias."
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Non c'è nessun alias con il nome '{}'"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr "L'alias `{alias_name}` eseguirà il comando `{command}`"
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Non ci sono nessun alias su questa gilda."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr "Non c nessun alias con il nome `{name}`"
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "Alias con il nome '{}' è stata eliminata."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr "Elimina un alias esistente su questo server."
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Alias con il nome '{}' non è stato trovato."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Non ci sono nessun alias su questo bot."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Alias:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Non ci sono alias su questo server."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr "L'alias con il nome `{name}` è stato eliminato con successo."
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr "L'alias con il nome `{name}` non è stato trovato."
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr "Elimina un alias globale esistente."
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Non ci sono alias su questo bot."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr "Elenca gli alias disponibili su questo server."
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Alias:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr "Elenca gli alias globali disponibili su questo server."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Japanese\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: ja_JP\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "プレフィックスが見つかりません。"
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "`{}`という新しいエイリアスが作成されました。"
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "`{}`という新しいグローバルエイリアスが作成されました。"
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "そのようなエイリアスはありません。"
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "`{}`のエイリアスは`{}`コマンドを実行します。"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "`{}`という名前のエイリアスはありません。"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "このギルドにはエイリアスはありません。"
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "`{}`という名前のエイリアスは削除されました。"
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "`{}`という名前のエイリアスが見つかりませんでした。"
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "このボットにはエイリアスはありません。"
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "アリアス:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "このサーバにエイリアスはありません。"
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "このボットにはエイリアスはありません。"
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "アリアス:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Korean\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: ko_KR\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "프리픽스를 찾을 수 없어요."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
msgstr "이름이 {} 인 바로가기를 만들려고 했지만, 이 봇의 커맨드와 중복돼요."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
msgstr "이름이 {} 인 바로가기를 만들려고 했지만, 해당 바로가기가 이미 이 서버에 등록되어 있어요."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "이름이 {} 인 바로가기를 만들려고 했지만, 잘못된 바로가기 이름에요. 바로가기 이름에는 공백이 포함될 수 없어요."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "트리거 `{}` 이(가) 포함된 별칭이 등록됐어요."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
msgstr "이름이 {} 인 글로벌 별칭을 만들려고 했지만, 이 봇의 커맨드와 중복돼요."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
msgstr "이름이 {} 인 글로벌 별칭을 만들려고 했지만, 해당 별칭이 이미 이 서버에 등록되어 있어요."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "이름이 {} 인 글로벌 별칭을 만들려고 했지만, 잘못된 별칭 이름에요. 별칭 이름에는 공백이 포함될 수 없어요."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "트리거 `{}` 이(가) 포함된 글로벌 별칭이 등록됐어요."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "그런 별칭은 등록되어 있지 않아요."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "`{}` 별칭이 `{}` 커맨드를 실행했어요."
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "`{}` 이란 이름으로 등록된 별칭이 없어요."
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "이 길드에 등록된 별칭이 없어요."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "별칭 `{}` 이(가) 성공적으로 삭제됐어요."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "`{}` 바로가기가 등록되어 있지 않아요."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "이 봇에 등록된 별칭이 없어요."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "등록된 별칭 리스트 :"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "이 서버에 등록된 별칭이 없어요."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "이 봇에 등록된 별칭이 없어요."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "등록된 별칭 리스트 :"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: LOLCAT\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: lol_US\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Nu prifix findz."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr "Mange da command aliasez."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr "Mange da global aliasez."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr "Addz an alias 4 command."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Nu alias wif teh triggah `{}` has been creatd."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Nu global alias wif teh triggah `{}` has been creatd."
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Nu such aliaz existz."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "Teh `{}` aliaz will execute teh commands `{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Ther is nu aliaz with teh name `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Ther r nu aliaz on dis guilds."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "Aliaz wif teh nem `{}` was successfulls deletz."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Aliaz wit names `{}` is nut there."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Ther no aliazes :("
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Aliazes:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Serverz hav nu aliazes."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Ther no aliazes :("
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Aliazes:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Dutch\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: nl_NL\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Geen prefix gevonden."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
msgstr "U probeert een nieuwe alias maken met de naam {}, maar is al een opdracht op de bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr "Beheer commandaliassen."
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
msgstr "U probeert een nieuwe alias met de naam {} maken. Maar die alias bestaat al op deze server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr "Beheer globale aliassen."
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "U probeert een nieuwe alias maken met de naam {}, maar dat is een ongeldige alias naam. Alias namen mogen geen spaties bevatten."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr "Voeg een alias toe voor een opdracht."
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Een nieuwe alias met de trigger `{}`is aangemaakt."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr "Je hebt geprobeerd een nieuwe alias te maken met de naam {name}, maar die naam is al een opdracht voor deze bot."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
msgstr "U probeert een nieuwe globale alias met de naam {} te maken, maar die alias al een commando op deze bot."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr "Je hebt geprobeerd een nieuwe alias te maken met de naam {name}, maar die alias bestaat al op deze server."
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
msgstr "U probeert een nieuwe globale alias met de naam {} te maken, maar die alias al bestaat op deze server."
#: redbot/cogs/alias/alias.py:270
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 "Je hebt geprobeerd een nieuwe alias te maken met de naam {name}, maar die naam is een ongeldige aliasnaam. Aliasnamen mogen geen spaties bevatten."
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr "U probeert een nieuwe globale alias maken met de naam {}, maar die naam is de naam van een ongeldige alias. Alias namen mogen geen spaties bevatten."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr "Er is een nieuwe alias gemaakt met de trigger `{name}`."
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Een nieuwe globale alias met de trigger `{}` is aangemaakt."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr "Voeg een globale alias toe voor een opdracht."
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr "Je hebt geprobeerd om een nieuwe globale alias te maken met de naam {name}, maar die naam is al een opdracht op deze bot."
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr "Je hebt geprobeerd een nieuwe globale alias te maken met de naam {name}, maar die alias bestaat al op deze server."
#: redbot/cogs/alias/alias.py:322
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 "Je hebt geprobeerd een nieuwe algemene alias te maken met de naam {name}, maar die naam is een ongeldige aliasnaam. Aliasnamen mogen geen spaties bevatten."
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr "Er is een nieuwe globale alias gemaakt met de trigger `{name}`."
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr "Probeer hulp uit te voeren voor de basisopdracht van de alias."
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr "{prefix}help {command}"
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Deze alias bestaat niet."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "Het alias `{}` zal het commando `{}` uitvoeren"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr "Laat zien welk commando de alias uitvoert."
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Er is geen alias met de naam `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr "De `{alias_name}` alias voert het commando `{command}` uit"
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Er zijn geen aliases in deze server."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr "Er is geen alias met de naam'{name}'"
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "Alias met de naam `{}` is met success verwijderd."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr "Verwijder een bestaande alias op deze server."
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Alias met de naam `{}` is niet gevonden."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Er zijn geen aliases op deze bot."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Aliassen:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Er zijn geen aliases in deze server."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr "Alias met de naam `{name}` is succesvol verwijderd."
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr "Alias met naam `{name}` is niet gevonden."
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr "Een bestaande globale alias verwijderen."
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Er zijn geen aliases op deze bot."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr "Maak een lijst van de beschikbare aliassen op deze server."
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Aliassen:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr "Maak een lijst van de beschikbare globale aliassen op deze bot."

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:42-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Norwegian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: no_NO\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr "Argumenter må spesifiseres med et nummer."
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Ingen prefiks funnet."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr "Administrer kommando aliaser."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr "Administrer globale aliaser."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr "Legg til et alias for en kommando."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr "Du forsøkte å opprette et nytt alias med navnet {name} men navnet er allerede en kommando på denne boten."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr "Du forsøkte å opprette et nytt alias med navnet {name} men aliaset finnes allerede på denne serveren."
#: redbot/cogs/alias/alias.py:270
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 "Du forsøkte å opprette et nytt alias med navnet {name} men navnet er et ugyldig aliasnavn. Aliasnavn kan ikke inneholde mellomrom."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr "Et nytt alias med utløseren \"{name}\" har blitt opprettet."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr "Legg til et globalt alias for en kommando."
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr "Du forsøkte å opprette et nytt globalt alias med navnet {navn} men navnet er allerede en kommando på denne boten."
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr "Du forsøkte å opprette et nytt alias med navnet {navn} men aliaset finnes allerede på denne serveren."
#: redbot/cogs/alias/alias.py:322
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 "Du forsøkte å opprette et nytt globalt alias med navnet {name} men navnet er et ugyldig aliasnavn. Aliasnavn kan ikke inneholde mellomrom."
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr "Et nytt globalt alias med utløseren '{name}' har blitt opprettet."
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Et nytt alias med utløseren \"{}\" har blitt opprettet."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
msgstr ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "En ny global alias med utløseren \"{}\" har blitt opprettet."
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Ingen slike alias finnes."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "\"{}\" Aliaset vil kjøre kommandoen \"{}\""
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Det er ingen alias med navnet \"{}\""
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Det er ingen alias i denne gruppen."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "Alias med navn \"{}\" ble slettet."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Alias med navn \"{}' ble ikke funnet."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Det er ingen aliaser på denne boten."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Aliaser:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Det er ingen aliaser på denne serveren."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Det er ingen aliaser på denne boten."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Aliaser:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,90 +1,154 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Polish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Plural-Forms: nplurals=4; plural=((n == 1) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || n%10 == 1 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 12 && n%100 <= 14)) ? 2 : 3));\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\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-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
"X-Crowdin-Language: pl\n"
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: pl_PL\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Nie znaleziono prefiksu."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Utworzono nowy alias z wyzwalaczem '{}'."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Utworzono nowy globalny alias z wyzwalaczem '{}'."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr "{prefix}help {command}"
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Taki alias nie istnieje."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "Alias '{}' spowoduje wykonanie komendy '{}'"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Nie ma aliasu o nazwie `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Nie ma aliasów w tej gildii."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "Alias o nazwie `{}` został usunięty pomyślnie."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "Alias o nazwie `{}` nie został znaleziony."
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Nie ma aliasów na tym serwerze."
#: ../alias.py:316
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Nie ma żadnych aliasów dla tego bota."
#: ../alias.py:331 ../alias.py:342
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Aliasy:"
#: ../alias.py:333 ../alias.py:344
msgid "There are no aliases on this server."
msgstr "Nie ma aliasów na tym serwerze Discord."
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:14\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Portuguese, Brazilian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: pt_BR\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr "Nenhum prefixo encontrado."
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
msgstr "Foi criado um novo alias com a ação '{}'."
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
msgstr "Foi criado um novo alias global com a ação '{}'."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr "Alias inexistente."
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
msgstr "O alias '{}' executará o comando '{}'"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
msgstr "Não há nenhum alias com o nome '{}'"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
msgstr "Não há nenhum aliases nessa guild."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
msgstr "O alias com o nome '{}' foi excluído com sucesso."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr "O alias com o nome '{}' não foi encontrado."
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr "Não há nenhum aliases neste bot."
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr "Aliases:"
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr "Não há nenhum aliases neste servidor."
msgstr "Não há nenhum alias neste servidor."
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr "Não há nenhum alias nesse bot."
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr "Alias:"
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -1,14 +1,14 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2018-02-18 14:42+AKST\n"
"PO-Revision-Date: 2018-04-15 16:43-0400\n"
"Last-Translator: Kowlin <boxedpp@gmail.com>\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-06 16:13\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Portuguese\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: ENCODING\n"
"Generated-By: pygettext.py 1.5\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
@@ -16,75 +16,139 @@ msgstr ""
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: pt_PT\n"
#: ../alias.py:129
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr ""
#: ../alias.py:198
msgid "You attempted to create a new alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: ../alias.py:205
msgid "You attempted to create a new alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: ../alias.py:212
msgid "You attempted to create a new alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: ../alias.py:224
msgid "A new alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: ../alias.py:236
msgid "You attempted to create a new global alias with the name {} but that name is already a command on this bot."
#: redbot/cogs/alias/alias.py:259
msgid "You attempted to create a new alias with the name {name} but that alias already exists on this server."
msgstr ""
#: ../alias.py:243
msgid "You attempted to create a new global alias with the name {} but that alias already exists on this server."
#: redbot/cogs/alias/alias.py:270
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 ""
#: ../alias.py:250
msgid "You attempted to create a new global alias with the name {} but that name is an invalid alias name. Alias names may not contain spaces."
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: ../alias.py:259
msgid "A new global alias with the trigger `{}` has been created."
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: ../alias.py:274
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr ""
#: ../alias.py:283
msgid "The `{}` alias will execute the command `{}`"
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: ../alias.py:286
msgid "There is no alias with the name `{}`"
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: ../alias.py:298
msgid "There are no aliases on this guild."
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: ../alias.py:302 ../alias.py:320
msgid "Alias with the name `{}` was successfully deleted."
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: ../alias.py:305 ../alias.py:323
msgid "Alias with name `{}` was not found."
msgstr ""
#: ../alias.py:316
msgid "There are no aliases on this bot."
msgstr ""
#: ../alias.py:331 ../alias.py:342
msgid "Aliases:"
msgstr ""
#: ../alias.py:333 ../alias.py:344
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr ""
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

View File

@@ -0,0 +1,154 @@
msgid ""
msgstr ""
"Project-Id-Version: red-discordbot\n"
"POT-Creation-Date: 2019-07-05 22:33+0200\n"
"PO-Revision-Date: 2019-07-14 02:09\n"
"Last-Translator: Robert Jansen (Kowlin)\n"
"Language-Team: Romanian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: redgettext 3.0\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: red-discordbot\n"
"X-Crowdin-Language: ro\n"
"X-Crowdin-File: /cogs/alias/locales/messages.pot\n"
"Language: ro_RO\n"
#: redbot/cogs/alias/alias.py:35
#, 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 "
msgstr ""
#: redbot/cogs/alias/alias.py:107
msgid "Arguments must be specified with a number."
msgstr ""
#: redbot/cogs/alias/alias.py:114
msgid "Arguments must be sequential. Missing arguments: "
msgstr ""
#: redbot/cogs/alias/alias.py:164
msgid "No prefix found."
msgstr ""
#: redbot/cogs/alias/alias.py:231
#, docstring
msgid "Manage command aliases."
msgstr ""
#: redbot/cogs/alias/alias.py:236
#, docstring
msgid "Manage global aliases."
msgstr ""
#: redbot/cogs/alias/alias.py:243
#, docstring
msgid "Add an alias for a command."
msgstr ""
#: redbot/cogs/alias/alias.py:248
msgid "You attempted to create a new alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:259
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:270
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 ""
#: redbot/cogs/alias/alias.py:289
msgid "A new alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:295
#, docstring
msgid "Add a global alias for a command."
msgstr ""
#: redbot/cogs/alias/alias.py:300
msgid "You attempted to create a new global alias with the name {name} but that name is already a command on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:311
msgid "You attempted to create a new global alias with the name {name} but that alias already exists on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:322
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 ""
#: redbot/cogs/alias/alias.py:338
msgid "A new global alias with the trigger `{name}` has been created."
msgstr ""
#: redbot/cogs/alias/alias.py:346
#, docstring
msgid "Try to execute help for the base command of the alias."
msgstr ""
#: redbot/cogs/alias/alias.py:355
msgid "{prefix}help {command}"
msgstr ""
#: redbot/cogs/alias/alias.py:360
msgid "No such alias exists."
msgstr ""
#: redbot/cogs/alias/alias.py:365
#, docstring
msgid "Show what command the alias executes."
msgstr ""
#: redbot/cogs/alias/alias.py:370
msgid "The `{alias_name}` alias will execute the command `{command}`"
msgstr ""
#: redbot/cogs/alias/alias.py:375
msgid "There is no alias with the name `{name}`"
msgstr ""
#: redbot/cogs/alias/alias.py:381
#, docstring
msgid "Delete an existing alias on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:386 redbot/cogs/alias/alias.py:422
#: redbot/cogs/alias/alias.py:433
msgid "There are no aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:391 redbot/cogs/alias/alias.py:409
msgid "Alias with the name `{name}` was successfully deleted."
msgstr ""
#: redbot/cogs/alias/alias.py:394 redbot/cogs/alias/alias.py:412
msgid "Alias with name `{name}` was not found."
msgstr ""
#: redbot/cogs/alias/alias.py:399
#, docstring
msgid "Delete an existing global alias."
msgstr ""
#: redbot/cogs/alias/alias.py:404
msgid "There are no aliases on this bot."
msgstr ""
#: redbot/cogs/alias/alias.py:417
#, docstring
msgid "List the available aliases on this server."
msgstr ""
#: redbot/cogs/alias/alias.py:418 redbot/cogs/alias/alias.py:429
msgid "Aliases:"
msgstr ""
#: redbot/cogs/alias/alias.py:428
#, docstring
msgid "List the available global aliases on this bot."
msgstr ""

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