mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-05-11 08:19:54 +00:00
Add stubs for Japanese translations.
This commit is contained in:
parent
0c446398d1
commit
18385dc49f
1
.gitignore
vendored
1
.gitignore
vendored
@ -9,3 +9,4 @@ docs/_build
|
|||||||
*.png
|
*.png
|
||||||
*.jpg
|
*.jpg
|
||||||
*.flac
|
*.flac
|
||||||
|
*.mo
|
||||||
|
@ -97,6 +97,9 @@ release = version
|
|||||||
# Usually you set "language" from the command line for these cases.
|
# Usually you set "language" from the command line for these cases.
|
||||||
language = None
|
language = None
|
||||||
|
|
||||||
|
locale_dirs = ['locale/']
|
||||||
|
gettext_compact = False
|
||||||
|
|
||||||
# There are two options for replacing |today|: either, you set today to some
|
# There are two options for replacing |today|: either, you set today to some
|
||||||
# non-false value, then it is used:
|
# non-false value, then it is used:
|
||||||
#today = ''
|
#today = ''
|
||||||
|
10157
docs/locale/ja/LC_MESSAGES/api.po
Normal file
10157
docs/locale/ja/LC_MESSAGES/api.po
Normal file
File diff suppressed because it is too large
Load Diff
196
docs/locale/ja/LC_MESSAGES/discord.po
Normal file
196
docs/locale/ja/LC_MESSAGES/discord.po
Normal file
@ -0,0 +1,196 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../discord.rst:4
|
||||||
|
msgid "Creating a Bot Account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:6
|
||||||
|
msgid ""
|
||||||
|
"In order to work with the library and the Discord API in general, we must"
|
||||||
|
" first create a Discord Bot account."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:8
|
||||||
|
msgid "Creating a Bot account is a pretty straightforward process."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:10
|
||||||
|
msgid ""
|
||||||
|
"Make sure you're logged on to the `Discord website "
|
||||||
|
"<https://discordapp.com>`_."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:11
|
||||||
|
msgid ""
|
||||||
|
"Navigate to the `application page "
|
||||||
|
"<https://discordapp.com/developers/applications/me>`_"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:12
|
||||||
|
msgid "Click on the \"New App\" button."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:17
|
||||||
|
msgid ""
|
||||||
|
"Give the application a name and a description if wanted and click "
|
||||||
|
"\"Create App\"."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:19
|
||||||
|
msgid ""
|
||||||
|
"You can also put an avatar you want your bot to use, don't worry you can "
|
||||||
|
"change this later."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:20
|
||||||
|
msgid "**Leave the Redirect URI(s) blank** unless are creating a service."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:24
|
||||||
|
msgid ""
|
||||||
|
"Create a Bot User by clicking on the accompanying button and confirming "
|
||||||
|
"it."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:28
|
||||||
|
msgid ""
|
||||||
|
"Make sure that **Public Bot** is ticked if you want others to invite your"
|
||||||
|
" bot."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:30
|
||||||
|
msgid ""
|
||||||
|
"You should also make sure that **Require OAuth2 Code Grant** is unchecked"
|
||||||
|
" unless you are developing a service that needs it. If you're unsure, "
|
||||||
|
"then **leave it unchecked**."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:36
|
||||||
|
msgid "Click to reveal the token."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:38
|
||||||
|
msgid "**This is not the Client Secret**"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:39
|
||||||
|
msgid "Look at the image above to see where the **Token** is."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:43
|
||||||
|
msgid ""
|
||||||
|
"It should be worth noting that this token is essentially your bot's "
|
||||||
|
"password. You should **never** share this to someone else. In doing so, "
|
||||||
|
"someone can log in to your bot and do malicious things, such as leaving "
|
||||||
|
"servers, ban all members inside a server, or pinging everyone "
|
||||||
|
"maliciously."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:48
|
||||||
|
msgid "The possibilities are endless, so **do not share this token.**"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:50
|
||||||
|
msgid ""
|
||||||
|
"And that's it. You now have a bot account and you can login with that "
|
||||||
|
"token."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:55
|
||||||
|
msgid "Inviting Your Bot"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:57
|
||||||
|
msgid "So you've made a Bot User but it's not actually in any server."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:59
|
||||||
|
msgid "If you want to invite your bot you must create an invite URL for your bot."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:61
|
||||||
|
msgid ""
|
||||||
|
"First, you must fetch the Client ID of the Bot. You can find this in the "
|
||||||
|
"Bot's application page."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:66
|
||||||
|
msgid "Copy paste that into the pre-formatted URL:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:72
|
||||||
|
msgid ""
|
||||||
|
"Replace ``YOUR_CLIENT_ID`` with the Client ID we got in the previous "
|
||||||
|
"step. For example, in the image above our client ID is 312777964700041216"
|
||||||
|
" so the resulting URL would be "
|
||||||
|
"https://discordapp.com/oauth2/authorize?client_id=312777964700041216&scope=bot&permissions=0"
|
||||||
|
" (note that this bot has been deleted)."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:77
|
||||||
|
msgid ""
|
||||||
|
"Now you can click the link and invite your bot to any server you have "
|
||||||
|
"\"Manage Server\" permissions on."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:80
|
||||||
|
msgid "Adding Permissions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:82
|
||||||
|
msgid ""
|
||||||
|
"In the above URL, you might have noticed an interesting bit, the "
|
||||||
|
"``permissions=0`` fragment."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:84
|
||||||
|
msgid ""
|
||||||
|
"Bot accounts can request specific permissions to be granted upon joining."
|
||||||
|
" When the bot joins the guild, they will be granted a managed role that "
|
||||||
|
"contains the permissions you requested. If the permissions is 0, then no "
|
||||||
|
"special role is created."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:88
|
||||||
|
msgid ""
|
||||||
|
"This ``permissions`` value is calculated based on bit-wise arithmetic. "
|
||||||
|
"Thankfully, people have created a calculator that makes it easy to "
|
||||||
|
"calculate the permissions necessary visually."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:91
|
||||||
|
msgid "https://discordapi.com/permissions.html"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:92
|
||||||
|
msgid "https://finitereality.github.io/permissions/"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:94
|
||||||
|
msgid "Feel free to use whichever is easier for you to grasp."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../discord.rst:96
|
||||||
|
msgid ""
|
||||||
|
"If you want to generate this URL dynamically at run-time inside your bot "
|
||||||
|
"and using the :class:`discord.Permissions` interface, you can use "
|
||||||
|
":func:`discord.utils.oauth_url`."
|
||||||
|
msgstr ""
|
||||||
|
|
3100
docs/locale/ja/LC_MESSAGES/ext/commands/api.po
Normal file
3100
docs/locale/ja/LC_MESSAGES/ext/commands/api.po
Normal file
File diff suppressed because it is too large
Load Diff
665
docs/locale/ja/LC_MESSAGES/ext/commands/commands.po
Normal file
665
docs/locale/ja/LC_MESSAGES/ext/commands/commands.po
Normal file
@ -0,0 +1,665 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:6
|
||||||
|
msgid "Commands"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:8
|
||||||
|
msgid ""
|
||||||
|
"One of the most appealing aspect of the command extension is how easy it "
|
||||||
|
"is to define commands and how you can arbitrarily nest groups and "
|
||||||
|
"commands to have a rich sub-command system."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:11
|
||||||
|
msgid ""
|
||||||
|
"Commands are defined by attaching it to a regular Python function. The "
|
||||||
|
"command is then invoked by the user using a similar signature to the "
|
||||||
|
"Python function."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:14
|
||||||
|
msgid "For example, in the given command definition:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:22
|
||||||
|
msgid "With the following prefix (``$``), it would be invoked by the user via:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:28
|
||||||
|
msgid ""
|
||||||
|
"A command must always have at least one parameter, ``ctx``, which is the "
|
||||||
|
":class:`.Context` as the first one."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:30
|
||||||
|
msgid ""
|
||||||
|
"There are two ways of registering a command. The first one is by using "
|
||||||
|
":meth:`.Bot.command` decorator, as seen in the example above. The second "
|
||||||
|
"is using the :func:`~ext.commands.command` decorator followed by "
|
||||||
|
":meth:`.Bot.add_command` on the instance."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:34
|
||||||
|
msgid "Essentially, these two are equivalent: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:52
|
||||||
|
msgid ""
|
||||||
|
"Since the :meth:`.Bot.command` decorator is shorter and easier to "
|
||||||
|
"comprehend, it will be the one used throughout the documentation here."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:55
|
||||||
|
msgid ""
|
||||||
|
"Any parameter that is accepted by the :class:`.Command` constructor can "
|
||||||
|
"be passed into the decorator. For example, to change the name to "
|
||||||
|
"something other than the function would be as simple as doing this:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:65
|
||||||
|
msgid "Parameters"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:67
|
||||||
|
msgid ""
|
||||||
|
"Since we define commands by making Python functions, we also define the "
|
||||||
|
"argument passing behaviour by the function parameters."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:70
|
||||||
|
msgid ""
|
||||||
|
"Certain parameter types do different things in the user side and most "
|
||||||
|
"forms of parameter types are supported."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:73
|
||||||
|
msgid "Positional"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:75
|
||||||
|
msgid ""
|
||||||
|
"The most basic form of parameter passing is the positional parameter. "
|
||||||
|
"This is where we pass a parameter as-is:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:84
|
||||||
|
msgid ""
|
||||||
|
"On the bot using side, you can provide positional arguments by just "
|
||||||
|
"passing a regular string:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:88
|
||||||
|
msgid "To make use of a word with spaces in between, you should quote it:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:92
|
||||||
|
msgid ""
|
||||||
|
"As a note of warning, if you omit the quotes, you will only get the first"
|
||||||
|
" word:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:96
|
||||||
|
msgid ""
|
||||||
|
"Since positional arguments are just regular Python arguments, you can "
|
||||||
|
"have as many as you want:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:105
|
||||||
|
msgid "Variable"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:107
|
||||||
|
msgid ""
|
||||||
|
"Sometimes you want users to pass in an undetermined number of parameters."
|
||||||
|
" The library supports this similar to how variable list parameters are "
|
||||||
|
"done in Python:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:116
|
||||||
|
msgid ""
|
||||||
|
"This allows our user to accept either one or many arguments as they "
|
||||||
|
"please. This works similar to positional arguments, so multi-word "
|
||||||
|
"parameters should be quoted."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:119
|
||||||
|
msgid "For example, on the bot side:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:123
|
||||||
|
msgid ""
|
||||||
|
"If the user wants to input a multi-word argument, they have to quote it "
|
||||||
|
"like earlier:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:127
|
||||||
|
msgid ""
|
||||||
|
"Do note that similar to the Python function behaviour, a user can "
|
||||||
|
"technically pass no arguments at all:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:132
|
||||||
|
msgid ""
|
||||||
|
"Since the ``args`` variable is a `tuple "
|
||||||
|
"<https://docs.python.org/3/library/stdtypes.html#sequence-types-list-"
|
||||||
|
"tuple-range>`_, you can do anything you would usually do with one."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:136
|
||||||
|
msgid "Keyword-Only Arguments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:138
|
||||||
|
msgid ""
|
||||||
|
"When you want to handle parsing of the argument yourself or do not feel "
|
||||||
|
"like you want to wrap multi-word user input into quotes, you can ask the "
|
||||||
|
"library to give you the rest as a single argument. We do this by using a "
|
||||||
|
"**keyword-only argument**, seen below:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:150
|
||||||
|
msgid "You can only have one keyword-only argument due to parsing ambiguities."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:152
|
||||||
|
msgid "On the bot side, we do not need to quote input with spaces:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:156
|
||||||
|
msgid "Do keep in mind that wrapping it in quotes leaves it as-is:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:160
|
||||||
|
msgid ""
|
||||||
|
"By default, the keyword-only arguments are stripped of white space to "
|
||||||
|
"make it easier to work with. This behaviour can be toggled by the "
|
||||||
|
":attr:`.Command.rest_is_raw` argument in the decorator."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:166
|
||||||
|
msgid "Invocation Context"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:168
|
||||||
|
msgid ""
|
||||||
|
"As seen earlier, every command must take at least a single parameter, "
|
||||||
|
"called the :class:`~ext.commands.Context`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:170
|
||||||
|
msgid ""
|
||||||
|
"This parameter gives you access to something called the \"invocation "
|
||||||
|
"context\". Essentially all the information you need to know how the "
|
||||||
|
"command was executed. It contains a lot of useful information:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:173
|
||||||
|
msgid ":attr:`.Context.guild` to fetch the :class:`Guild` of the command, if any."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:174
|
||||||
|
msgid ":attr:`.Context.message` to fetch the :class:`Message` of the command."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:175
|
||||||
|
msgid ""
|
||||||
|
":attr:`.Context.author` to fetch the :class:`Member` or :class:`User` "
|
||||||
|
"that called the command."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:176
|
||||||
|
msgid ""
|
||||||
|
":meth:`.Context.send` to send a message to the channel the command was "
|
||||||
|
"used in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:178
|
||||||
|
msgid ""
|
||||||
|
"The context implements the :class:`abc.Messageable` interface, so "
|
||||||
|
"anything you can do on a :class:`abc.Messageable` you can do on the "
|
||||||
|
":class:`~ext.commands.Context`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:182
|
||||||
|
msgid "Converters"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:184
|
||||||
|
msgid ""
|
||||||
|
"Adding bot arguments with function parameters is only the first step in "
|
||||||
|
"defining your bot's command interface. To actually make use of the "
|
||||||
|
"arguments, we usually want to convert the data into a target type. We "
|
||||||
|
"call these :ref:`ext_commands_api_converters`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:188
|
||||||
|
msgid "Converters come in a few flavours:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:190
|
||||||
|
msgid ""
|
||||||
|
"A regular callable object that takes an argument as a sole parameter and "
|
||||||
|
"returns a different type."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:192
|
||||||
|
msgid ""
|
||||||
|
"These range from your own function, to something like :class:`bool` or "
|
||||||
|
":class:`int`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:194
|
||||||
|
msgid "A custom class that inherits from :class:`~ext.commands.Converter`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:197
|
||||||
|
msgid "Basic Converters"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:199
|
||||||
|
msgid ""
|
||||||
|
"At its core, a basic converter is a callable that takes in an argument "
|
||||||
|
"and turns it into something else."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:201
|
||||||
|
msgid ""
|
||||||
|
"For example, if we wanted to add two numbers together, we could request "
|
||||||
|
"that they are turned into integers for us by specifying the converter:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:210
|
||||||
|
msgid ""
|
||||||
|
"We specify converters by using something called a **function "
|
||||||
|
"annotation**. This is a Python 3 exclusive feature that was introduced in"
|
||||||
|
" :pep:`3107`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:213
|
||||||
|
msgid ""
|
||||||
|
"This works with any callable, such as a function that would convert a "
|
||||||
|
"string to all upper-case:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:227
|
||||||
|
msgid "Advanced Converters"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:229
|
||||||
|
msgid ""
|
||||||
|
"Sometimes a basic converter doesn't have enough information that we need."
|
||||||
|
" For example, sometimes we want to get some information from the "
|
||||||
|
":class:`Message` that called the command or we want to do some "
|
||||||
|
"asynchronous processing."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:232
|
||||||
|
msgid ""
|
||||||
|
"For this, the library provides the :class:`~ext.commands.Converter` "
|
||||||
|
"interface. This allows you to have access to the :class:`.Context` and "
|
||||||
|
"have the callable be asynchronous. Defining a custom converter using this"
|
||||||
|
" interface requires overriding a single method, "
|
||||||
|
":meth:`.Converter.convert`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:236
|
||||||
|
msgid "An example converter:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:251
|
||||||
|
msgid ""
|
||||||
|
"The converter provided can either be constructed or not. Essentially "
|
||||||
|
"these two are equivalent:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:265
|
||||||
|
msgid ""
|
||||||
|
"Having the possibility of the converter be constructed allows you to set "
|
||||||
|
"up some state in the converter's ``__init__`` for fine tuning the "
|
||||||
|
"converter. An example of this is actually in the library, "
|
||||||
|
":class:`~ext.commands.clean_content`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:281
|
||||||
|
msgid ""
|
||||||
|
"If a converter fails to convert an argument to its designated target "
|
||||||
|
"type, the :exc:`.BadArgument` exception must be raised."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:285
|
||||||
|
msgid "Discord Converters"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:287
|
||||||
|
msgid ""
|
||||||
|
"Working with :ref:`discord_api_models` is a fairly common thing when "
|
||||||
|
"defining commands, as a result the library makes working with them easy."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:290
|
||||||
|
msgid ""
|
||||||
|
"For example, to receive a :class:`Member`, you can just pass it as a "
|
||||||
|
"converter:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:298
|
||||||
|
msgid ""
|
||||||
|
"When this command is executed, it attempts to convert the string given "
|
||||||
|
"into a :class:`Member` and then passes it as a parameter for the "
|
||||||
|
"function. This works by checking if the string is a mention, an ID, a "
|
||||||
|
"nickname, a username + discriminator, or just a regular username. The "
|
||||||
|
"default set of converters have been written to be as easy to use as "
|
||||||
|
"possible."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:302
|
||||||
|
msgid "A lot of discord models work out of the gate as a parameter:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:304 ../../ext/commands/commands.rst:325
|
||||||
|
msgid ":class:`Member`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:305 ../../ext/commands/commands.rst:327
|
||||||
|
msgid ":class:`User`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:306 ../../ext/commands/commands.rst:329
|
||||||
|
msgid ":class:`TextChannel`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:307 ../../ext/commands/commands.rst:331
|
||||||
|
#: ../../ext/commands/commands.rst:333
|
||||||
|
msgid ":class:`VoiceChannel`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:308
|
||||||
|
msgid ":class:`CategoryChannel`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:309 ../../ext/commands/commands.rst:335
|
||||||
|
msgid ":class:`Role`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:310 ../../ext/commands/commands.rst:337
|
||||||
|
msgid ":class:`Invite`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:311 ../../ext/commands/commands.rst:339
|
||||||
|
msgid ":class:`Game`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:312 ../../ext/commands/commands.rst:341
|
||||||
|
msgid ":class:`Emoji`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:313 ../../ext/commands/commands.rst:343
|
||||||
|
msgid ":class:`PartialEmoji`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:314 ../../ext/commands/commands.rst:345
|
||||||
|
msgid ":class:`Colour`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:316
|
||||||
|
msgid ""
|
||||||
|
"Having any of these set as the converter will intelligently convert the "
|
||||||
|
"argument to the appropriate target type you specify."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:319
|
||||||
|
msgid ""
|
||||||
|
"Under the hood, these are implemented by the "
|
||||||
|
":ref:`ext_commands_adv_converters` interface. A table of the equivalent "
|
||||||
|
"converter is given below:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:323
|
||||||
|
msgid "Discord Class"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:323
|
||||||
|
msgid "Converter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:325
|
||||||
|
msgid ":class:`~ext.commands.MemberConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:327
|
||||||
|
msgid ":class:`~ext.commands.UserConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:329
|
||||||
|
msgid ":class:`~ext.commands.TextChannelConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:331
|
||||||
|
msgid ":class:`~ext.commands.VoiceChannelConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:333
|
||||||
|
msgid ":class:`~ext.commands.CategoryChannelConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:335
|
||||||
|
msgid ":class:`~ext.commands.RoleConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:337
|
||||||
|
msgid ":class:`~ext.commands.InviteConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:339
|
||||||
|
msgid ":class:`~ext.commands.GameConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:341
|
||||||
|
msgid ":class:`~ext.commands.EmojiConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:343
|
||||||
|
msgid ":class:`~ext.commands.PartialEmojiConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:345
|
||||||
|
msgid ":class:`~ext.commands.ColourConverter`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:348
|
||||||
|
msgid ""
|
||||||
|
"By providing the converter it allows us to use them as building blocks "
|
||||||
|
"for another converter:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:363
|
||||||
|
msgid "Inline Advanced Converters"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:365
|
||||||
|
msgid ""
|
||||||
|
"If we don't want to inherit from :class:`~ext.commands.Converter`, we can"
|
||||||
|
" still provide a converter that has the advanced functionalities of an "
|
||||||
|
"advanced converter and save us from specifying two types."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:368
|
||||||
|
msgid ""
|
||||||
|
"For example, a common idiom would be to have a class and a converter for "
|
||||||
|
"that class:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:394
|
||||||
|
msgid ""
|
||||||
|
"This can get tedious, so an inline advanced converter is possible through"
|
||||||
|
" a ``classmethod`` inside the type:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:423
|
||||||
|
msgid "Error Handling"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:425
|
||||||
|
msgid ""
|
||||||
|
"When our commands fail to either parse we will, by default, receive a "
|
||||||
|
"noisy error in ``stderr`` of our console that tells us that an error has "
|
||||||
|
"happened and has been silently ignored."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:428
|
||||||
|
msgid ""
|
||||||
|
"In order to handle our errors, we must use something called an error "
|
||||||
|
"handler. There is a global error handler, called :func:`on_command_error`"
|
||||||
|
" which works like any other event in the :ref:`discord-api-events`. This "
|
||||||
|
"global error handler is called for every error reached."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:432
|
||||||
|
msgid ""
|
||||||
|
"Most of the time however, we want to handle an error local to the command"
|
||||||
|
" itself. Luckily, commands come with local error handlers that allow us "
|
||||||
|
"to do just that. First we decorate an error handler function with "
|
||||||
|
":meth:`.Command.error`:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:448
|
||||||
|
msgid ""
|
||||||
|
"The first parameter of the error handler is the :class:`.Context` while "
|
||||||
|
"the second one is an exception that is derived from "
|
||||||
|
":exc:`~ext.commands.CommandError`. A list of errors is found in the "
|
||||||
|
":ref:`ext_commands_api_errors` page of the documentation."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:452
|
||||||
|
msgid "Checks"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:454
|
||||||
|
msgid ""
|
||||||
|
"There are cases when we don't want a user to use our commands. They don't"
|
||||||
|
" have permissions to do so or maybe we blocked them from using our bot "
|
||||||
|
"earlier. The commands extension comes with full support for these things "
|
||||||
|
"in a concept called a :ref:`ext_commands_api_checks`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:458
|
||||||
|
msgid ""
|
||||||
|
"A check is a basic predicate that can take in a :class:`.Context` as its "
|
||||||
|
"sole parameter. Within it, you have the following options:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:461
|
||||||
|
msgid "Return ``True`` to signal that the person can run the command."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:462
|
||||||
|
msgid "Return ``False`` to signal that the person cannot run the command."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:463
|
||||||
|
msgid ""
|
||||||
|
"Raise a :exc:`~ext.commands.CommandError` derived exception to signal the"
|
||||||
|
" person cannot run the command."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:465
|
||||||
|
msgid ""
|
||||||
|
"This allows you to have custom error messages for you to handle in the "
|
||||||
|
":ref:`error handlers <ext_commands_error_handler>`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:468
|
||||||
|
msgid ""
|
||||||
|
"To register a check for a command, we would have two ways of doing so. "
|
||||||
|
"The first is using the :meth:`~ext.commands.check` decorator. For "
|
||||||
|
"example:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:482
|
||||||
|
msgid ""
|
||||||
|
"This would only evaluate the command if the function ``is_owner`` returns"
|
||||||
|
" ``True``. Sometimes we re-use a check often and want to split it into "
|
||||||
|
"its own decorator. To do that we can just add another level of depth:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:499
|
||||||
|
msgid ""
|
||||||
|
"Since an owner check is so common, the library provides it for you "
|
||||||
|
"(:func:`~ext.commands.is_owner`):"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:509
|
||||||
|
msgid "When multiple checks are specified, **all** of them must be ``True``:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:524
|
||||||
|
msgid ""
|
||||||
|
"If any of those checks fail in the example above, then the command will "
|
||||||
|
"not be run."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:526
|
||||||
|
msgid ""
|
||||||
|
"When an error happens, the error is propagated to the :ref:`error "
|
||||||
|
"handlers <ext_commands_error_handler>`. If you do not raise a custom "
|
||||||
|
":exc:`~ext.commands.CommandError` derived exception, then it will get "
|
||||||
|
"wrapped up into a :exc:`~ext.commands.CheckFailure` exception as so:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:543
|
||||||
|
msgid ""
|
||||||
|
"If you want a more robust error system, you can derive from the exception"
|
||||||
|
" and raise it instead of returning ``False``:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:568
|
||||||
|
msgid ""
|
||||||
|
"Since having a ``guild_only`` decorator is pretty common, it comes built-"
|
||||||
|
"in via :func:`~ext.commands.guild_only`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:571
|
||||||
|
msgid "Global Checks"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:573
|
||||||
|
msgid ""
|
||||||
|
"Sometimes we want to apply a check to **every** command, not just certain"
|
||||||
|
" commands. The library supports this as well using the global check "
|
||||||
|
"concept."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:576
|
||||||
|
msgid ""
|
||||||
|
"Global checks work similarly to regular checks except they are registered"
|
||||||
|
" with the :func:`.Bot.check` decorator."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:578
|
||||||
|
msgid "For example, to block all DMs we could do the following:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/commands.rst:588
|
||||||
|
msgid ""
|
||||||
|
"Be careful on how you write your global checks, as it could also lock you"
|
||||||
|
" out of your own bot."
|
||||||
|
msgstr ""
|
||||||
|
|
33
docs/locale/ja/LC_MESSAGES/ext/commands/index.po
Normal file
33
docs/locale/ja/LC_MESSAGES/ext/commands/index.po
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../ext/commands/index.rst:2
|
||||||
|
msgid "``discord.ext.commands`` -- Bot commands framework"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../ext/commands/index.rst:4
|
||||||
|
msgid ""
|
||||||
|
"``discord.py`` offers a lower level aspect on interacting with Discord. "
|
||||||
|
"Often times, the library is used for the creation of bots. However this "
|
||||||
|
"task can be daunting and confusing to get correctly the first time. Many "
|
||||||
|
"times there comes a repetition in creating a bot command framework that "
|
||||||
|
"is extensible, flexible, and powerful. For this reason, ``discord.py`` "
|
||||||
|
"comes with an extension library that handles this for you."
|
||||||
|
msgstr ""
|
||||||
|
|
405
docs/locale/ja/LC_MESSAGES/faq.po
Normal file
405
docs/locale/ja/LC_MESSAGES/faq.po
Normal file
@ -0,0 +1,405 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../faq.rst:5
|
||||||
|
msgid "Frequently Asked Questions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:7
|
||||||
|
msgid ""
|
||||||
|
"This is a list of Frequently Asked Questions regarding using "
|
||||||
|
"``discord.py`` and its extension modules. Feel free to suggest a new "
|
||||||
|
"question or submit one via pull requests."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:11
|
||||||
|
msgid "Questions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:14
|
||||||
|
msgid "Coroutines"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:16
|
||||||
|
msgid "Questions regarding coroutines and asyncio belong here."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:19
|
||||||
|
msgid "What is a coroutine?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:21
|
||||||
|
msgid ""
|
||||||
|
"A coroutine is a function that must be invoked with ``await`` or ``yield "
|
||||||
|
"from``. When Python encounters an ``await`` it stops the function's "
|
||||||
|
"execution at that point and works on other things until it comes back to "
|
||||||
|
"that point and finishes off its work. This allows for your program to be "
|
||||||
|
"doing multiple things at the same time without using threads or "
|
||||||
|
"complicated multiprocessing."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:26
|
||||||
|
msgid ""
|
||||||
|
"**If you forget to await a coroutine then the coroutine will not run. "
|
||||||
|
"Never forget to await a coroutine.**"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:29
|
||||||
|
msgid "Where can I use ``await``\\?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:31
|
||||||
|
msgid ""
|
||||||
|
"You can only use ``await`` inside ``async def`` functions and nowhere "
|
||||||
|
"else."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:34
|
||||||
|
msgid "What does \"blocking\" mean?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:36
|
||||||
|
msgid ""
|
||||||
|
"In asynchronous programming a blocking call is essentially all the parts "
|
||||||
|
"of the function that are not ``await``. Do not despair however, because "
|
||||||
|
"not all forms of blocking are bad! Using blocking calls is inevitable, "
|
||||||
|
"but you must work to make sure that you don't excessively block "
|
||||||
|
"functions. Remember, if you block for too long then your bot will freeze "
|
||||||
|
"since it has not stopped the function's execution at that point to do "
|
||||||
|
"other things."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:41
|
||||||
|
msgid ""
|
||||||
|
"A common source of blocking for too long is something like "
|
||||||
|
":func:`time.sleep`. Don't do that. Use :func:`asyncio.sleep` instead. "
|
||||||
|
"Similar to this example: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:50
|
||||||
|
msgid ""
|
||||||
|
"Another common source of blocking for too long is using HTTP requests "
|
||||||
|
"with the famous module ``requests``. While ``requests`` is an amazing "
|
||||||
|
"module for non-asynchronous programming, it is not a good choice for "
|
||||||
|
":mod:`asyncio` because certain requests can block the event loop too "
|
||||||
|
"long. Instead, use the ``aiohttp`` library which is installed on the side"
|
||||||
|
" with this library."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:54
|
||||||
|
msgid "Consider the following example: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:70
|
||||||
|
msgid "General"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:72
|
||||||
|
msgid "General questions regarding library usage belong here."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:75
|
||||||
|
msgid "How do I set the \"Playing\" status?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:77
|
||||||
|
msgid ""
|
||||||
|
"There is a method for this under :class:`Client` called "
|
||||||
|
":meth:`Client.change_presence`. The relevant aspect of this is its "
|
||||||
|
"``game`` keyword argument which takes in a :class:`Game` object. Putting "
|
||||||
|
"both of these pieces of info together, you get the following: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:84
|
||||||
|
msgid "How do I send a message to a specific channel?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:86
|
||||||
|
msgid ""
|
||||||
|
"You must fetch the channel directly and then call the appropriate method."
|
||||||
|
" Example: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:92
|
||||||
|
msgid "How do I upload an image?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:94
|
||||||
|
msgid "To upload something to Discord you have to use the :class:`File` object."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:96
|
||||||
|
msgid ""
|
||||||
|
"A :class:`File` accepts two parameters, the file-like object (or file "
|
||||||
|
"path) and the filename to pass to Discord when uploading."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:99
|
||||||
|
msgid "If you want to upload an image it's as simple as: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:103
|
||||||
|
msgid "If you have a file-like object you can do as follows: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:108
|
||||||
|
msgid ""
|
||||||
|
"To upload multiple files, you can use the ``files`` keyword argument "
|
||||||
|
"instead of ``file``\\: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:116
|
||||||
|
msgid ""
|
||||||
|
"If you want to upload something from a URL, you will have to use an HTTP "
|
||||||
|
"request using ``aiohttp`` and then pass an :class:`io.BytesIO` instance "
|
||||||
|
"to :class:`File` like so:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:133
|
||||||
|
msgid "How can I add a reaction to a message?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:135
|
||||||
|
msgid "You use the :meth:`Message.add_reaction` method."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:137
|
||||||
|
msgid ""
|
||||||
|
"If you want to use unicode emoji, you must pass a valid unicode code "
|
||||||
|
"point in a string. In your code, you can write this in a few different "
|
||||||
|
"ways:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:139
|
||||||
|
msgid "``'👍'``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:140
|
||||||
|
msgid "``'\\U0001F44D'``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:141
|
||||||
|
msgid "``'\\N{THUMBS UP SIGN}'``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:143 ../../faq.rst:154 ../../faq.rst:218
|
||||||
|
msgid "Quick example: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:147
|
||||||
|
msgid ""
|
||||||
|
"In case you want to use emoji that come from a message, you already get "
|
||||||
|
"their code points in the content without needing to do anything special. "
|
||||||
|
"You **cannot** send ``':thumbsup:'`` style shorthands."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:150
|
||||||
|
msgid ""
|
||||||
|
"For custom emoji, you should pass an instance of :class:`Emoji`. You can "
|
||||||
|
"also pass a ``'name:id'`` string, but if you can use said emoji, you "
|
||||||
|
"should be able to use :meth:`Client.get_emoji` to get an emoji via ID or "
|
||||||
|
"use :func:`utils.find`/ :func:`utils.get` on :attr:`Client.emojis` or "
|
||||||
|
":attr:`Guild.emojis` collections."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:166
|
||||||
|
msgid "How do I pass a coroutine to the player's \"after\" function?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:168
|
||||||
|
msgid ""
|
||||||
|
"The library's music player launches on a separate thread, ergo it does "
|
||||||
|
"not execute inside a coroutine. This does not mean that it is not "
|
||||||
|
"possible to call a coroutine in the ``after`` parameter. To do so you "
|
||||||
|
"must pass a callable that wraps up a couple of aspects."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:172
|
||||||
|
msgid ""
|
||||||
|
"The first gotcha that you must be aware of is that calling a coroutine is"
|
||||||
|
" not a thread-safe operation. Since we are technically in another thread,"
|
||||||
|
" we must take caution in calling thread-safe operations so things do not "
|
||||||
|
"bug out. Luckily for us, :mod:`asyncio` comes with a "
|
||||||
|
":func:`asyncio.run_coroutine_threadsafe` function that allows us to call "
|
||||||
|
"a coroutine from another thread."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:177
|
||||||
|
msgid ""
|
||||||
|
"However, this function returns a :class:`concurrent.Future` and to "
|
||||||
|
"actually call it we have to fetch its result. Putting all of this "
|
||||||
|
"together we can do the following: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:192
|
||||||
|
msgid "How do I run something in the background?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:194
|
||||||
|
msgid ""
|
||||||
|
"`Check the background_task.py example. "
|
||||||
|
"<https://github.com/Rapptz/discord.py/blob/rewrite/examples/background_task.py>`_"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:197
|
||||||
|
msgid "How do I get a specific model?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:199
|
||||||
|
msgid ""
|
||||||
|
"There are multiple ways of doing this. If you have a specific model's ID "
|
||||||
|
"then you can use one of the following functions:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:202
|
||||||
|
msgid ":meth:`Client.get_channel`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:203
|
||||||
|
msgid ":meth:`Client.get_guild`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:204
|
||||||
|
msgid ":meth:`Client.get_user`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:205
|
||||||
|
msgid ":meth:`Client.get_emoji`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:206
|
||||||
|
msgid ":meth:`Guild.get_member`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:207
|
||||||
|
msgid ":meth:`Guild.get_channel`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:209
|
||||||
|
msgid "The following use an HTTP request:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:211
|
||||||
|
msgid ":meth:`abc.Messageable.get_message`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:212
|
||||||
|
msgid ":meth:`Client.get_user_info`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:215
|
||||||
|
msgid ""
|
||||||
|
"If the functions above do not help you, then use of :func:`utils.find` or"
|
||||||
|
" :func:`utils.get` would serve some use in finding specific models."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:229
|
||||||
|
msgid "Commands Extension"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:231
|
||||||
|
msgid "Questions regarding ``discord.ext.commands`` belong here."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:234
|
||||||
|
msgid "Is there any documentation for this?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:236
|
||||||
|
msgid ""
|
||||||
|
"Not at the moment. Writing documentation for stuff takes time. A lot of "
|
||||||
|
"people get by reading the docstrings in the source code. Others get by "
|
||||||
|
"via asking questions in the `Discord server <https://discord.gg/discord-"
|
||||||
|
"api>`_. Others look at the source code of `other existing bots "
|
||||||
|
"<https://github.com/Rapptz/RoboDanny>`_."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:240
|
||||||
|
msgid ""
|
||||||
|
"There is a `basic example "
|
||||||
|
"<https://github.com/Rapptz/discord.py/blob/rewrite/examples/basic_bot.py>`_"
|
||||||
|
" showcasing some functionality."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:243
|
||||||
|
msgid ""
|
||||||
|
"**Documentation is being worked on, it will just take some time to polish"
|
||||||
|
" it**."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:246
|
||||||
|
msgid "Why does ``on_message`` make my commands stop working?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:248
|
||||||
|
msgid ""
|
||||||
|
"Overriding the default provided ``on_message`` forbids any extra commands"
|
||||||
|
" from running. To fix this, add a ``bot.process_commands(message)`` line "
|
||||||
|
"at the end of your ``on_message``. For example: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:258
|
||||||
|
msgid "Why do my arguments require quotes?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:260
|
||||||
|
msgid "In a simple command defined as: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:266
|
||||||
|
msgid ""
|
||||||
|
"Calling it via ``?echo a b c`` will only fetch the first argument and "
|
||||||
|
"disregard the rest. To fix this you should either call it via ``?echo \"a"
|
||||||
|
" b c\"`` or change the signature to have \"consume rest\" behaviour. "
|
||||||
|
"Example: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:273
|
||||||
|
msgid "This will allow you to use ``?echo a b c`` without needing the quotes."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:276
|
||||||
|
msgid "How do I get the original ``message``\\?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:278
|
||||||
|
msgid ""
|
||||||
|
"The :class:`~ext.commands.Context` contains an attribute, "
|
||||||
|
":attr:`~.Context.message` to get the original message."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:281 ../../faq.rst:294
|
||||||
|
msgid "Example: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:289
|
||||||
|
msgid "How do I make a subcommand?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:291
|
||||||
|
msgid ""
|
||||||
|
"Use the ``group`` decorator. This will transform the callback into a "
|
||||||
|
"``Group`` which will allow you to add commands into the group operating "
|
||||||
|
"as \"subcommands\". These groups can be arbitrarily nested as well."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../faq.rst:305
|
||||||
|
msgid "This could then be used as ``?git push origin master``."
|
||||||
|
msgstr ""
|
||||||
|
|
87
docs/locale/ja/LC_MESSAGES/index.po
Normal file
87
docs/locale/ja/LC_MESSAGES/index.po
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../index.rst:7
|
||||||
|
msgid "Welcome to discord.py"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:11
|
||||||
|
msgid ""
|
||||||
|
"discord.py is a modern, easy to use, feature-rich, and async ready API "
|
||||||
|
"wrapper for Discord."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:14
|
||||||
|
msgid "**Features:**"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:16
|
||||||
|
msgid "Modern Pythonic API using ``async``\\/``await`` syntax"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:17
|
||||||
|
msgid "Sane rate limit handling that prevents 429s"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:18
|
||||||
|
msgid "Implements the entire Discord API"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:19
|
||||||
|
msgid "Command extension to aid with bot creation"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:20
|
||||||
|
msgid "Easy to use with an object oriented design"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:21
|
||||||
|
msgid "Optimised for both speed and memory"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:24
|
||||||
|
msgid "Documentation Contents"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:36
|
||||||
|
msgid "Extensions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:45
|
||||||
|
msgid "Additional Information"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:54
|
||||||
|
msgid ""
|
||||||
|
"If you still can't find what you're looking for, try in one of the "
|
||||||
|
"following pages:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:56
|
||||||
|
msgid ":ref:`genindex`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:57
|
||||||
|
msgid ":ref:`modindex`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../index.rst:58
|
||||||
|
msgid ":ref:`search`"
|
||||||
|
msgstr ""
|
||||||
|
|
149
docs/locale/ja/LC_MESSAGES/intro.po
Normal file
149
docs/locale/ja/LC_MESSAGES/intro.po
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../intro.rst:6
|
||||||
|
msgid "Introduction"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:8
|
||||||
|
msgid ""
|
||||||
|
"This is the documentation for discord.py, a library for Python to aid in "
|
||||||
|
"creating applications that utilise the Discord API."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:12
|
||||||
|
msgid "Prerequisites"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:14
|
||||||
|
msgid ""
|
||||||
|
"discord.py works with Python 3.5.3 or higher. Support for earlier "
|
||||||
|
"versions of Python is not provided. Python 2.7 or lower is not supported."
|
||||||
|
" Python 3.4 or lower is not supported due to one of the dependencies "
|
||||||
|
"(``aiohttp``) not supporting Python 3.4."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:22
|
||||||
|
msgid "Installing"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:24
|
||||||
|
msgid "You can get the library directly from PyPI: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:28
|
||||||
|
msgid "If you are using Windows, then the following should be used instead: ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:33
|
||||||
|
msgid ""
|
||||||
|
"To get voice support, you should use ``discord.py[voice]`` instead of "
|
||||||
|
"``discord.py``, e.g. ::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:37
|
||||||
|
msgid ""
|
||||||
|
"On Linux environments, installing voice requires getting the following "
|
||||||
|
"dependencies:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:39
|
||||||
|
msgid "libffi"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:40
|
||||||
|
msgid "libnacl"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:41
|
||||||
|
msgid "python3-dev"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:43
|
||||||
|
msgid ""
|
||||||
|
"For a debian-based system, the following command will help get those "
|
||||||
|
"dependencies:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:49
|
||||||
|
msgid "Remember to check your permissions!"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:52
|
||||||
|
msgid "Virtual Environments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:54
|
||||||
|
msgid ""
|
||||||
|
"Sometimes we don't want to pollute our system installs with a library or "
|
||||||
|
"we want to maintain different versions of a library than the currently "
|
||||||
|
"system installed one. Or we don't have permissions to install a library "
|
||||||
|
"along side with the system installed ones. For this purpose, the standard"
|
||||||
|
" library as of 3.3 comes with a concept called \"Virtual Environment\" to"
|
||||||
|
" help maintain these separate versions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:59
|
||||||
|
msgid ""
|
||||||
|
"A more in-depth tutorial is found on `the official documentation. "
|
||||||
|
"<https://docs.python.org/3/tutorial/venv.html>`_"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:61
|
||||||
|
msgid "However, for the quick and dirty:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:63
|
||||||
|
msgid "Go to your project's working directory:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:70
|
||||||
|
msgid "Activate the virtual environment:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:76
|
||||||
|
msgid "On Windows you activate it with:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:82
|
||||||
|
msgid "Use pip like usual:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:88
|
||||||
|
msgid ""
|
||||||
|
"Congratulations. You now have a virtual environment all set up without "
|
||||||
|
"messing with your system installation."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:91
|
||||||
|
msgid "Basic Concepts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:93
|
||||||
|
msgid ""
|
||||||
|
"discord.py revolves around the concept of :ref:`events <discord-api-"
|
||||||
|
"events>`. An event is something you listen to and then respond to. For "
|
||||||
|
"example, when a message happens, you will receive an event about it and "
|
||||||
|
"you can then respond to it."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../intro.rst:97
|
||||||
|
msgid "A quick example to showcase how events work:"
|
||||||
|
msgstr ""
|
||||||
|
|
65
docs/locale/ja/LC_MESSAGES/logging.po
Normal file
65
docs/locale/ja/LC_MESSAGES/logging.po
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../logging.rst:5
|
||||||
|
msgid "Setting Up Logging"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../logging.rst:7
|
||||||
|
msgid ""
|
||||||
|
"*discord.py* logs errors and debug information via the :mod:`logging` "
|
||||||
|
"python module. It is strongly recommended that the logging module is "
|
||||||
|
"configured, as no errors or warnings will be output if it is not set up. "
|
||||||
|
"Configuration of the ``logging`` module can be as simple as::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../logging.rst:16
|
||||||
|
msgid ""
|
||||||
|
"Placed at the start of the application. This will output the logs from "
|
||||||
|
"discord as well as other libraries that uses the ``logging`` module "
|
||||||
|
"directly to the console."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../logging.rst:20
|
||||||
|
msgid ""
|
||||||
|
"The optional ``level`` argument specifies what level of events to log out"
|
||||||
|
" and can any of ``CRITICAL``, ``ERROR``, ``WARNING``, ``INFO``, and "
|
||||||
|
"``DEBUG`` and if not specified defaults to ``WARNING``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../logging.rst:24
|
||||||
|
msgid ""
|
||||||
|
"More advance setups are possible with the :mod:`logging` module. To for "
|
||||||
|
"example write the logs to a file called ``discord.log`` instead of "
|
||||||
|
"outputting them to to the console the following snippet can be used::"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../logging.rst:37
|
||||||
|
msgid ""
|
||||||
|
"This is recommended, especially at verbose levels such as ``INFO``, and "
|
||||||
|
"``DEBUG`` as there are a lot of events logged and it would clog the "
|
||||||
|
"stdout of your program."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../logging.rst:43
|
||||||
|
msgid ""
|
||||||
|
"For more information, check the documentation and tutorial of the "
|
||||||
|
":mod:`logging` module."
|
||||||
|
msgstr ""
|
||||||
|
|
2100
docs/locale/ja/LC_MESSAGES/migrating.po
Normal file
2100
docs/locale/ja/LC_MESSAGES/migrating.po
Normal file
File diff suppressed because it is too large
Load Diff
431
docs/locale/ja/LC_MESSAGES/migrating_to_async.po
Normal file
431
docs/locale/ja/LC_MESSAGES/migrating_to_async.po
Normal file
@ -0,0 +1,431 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:8
|
||||||
|
msgid "Migrating to v0.10.0"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:10
|
||||||
|
msgid ""
|
||||||
|
"v0.10.0 is one of the biggest breaking changes in the library due to "
|
||||||
|
"massive fundamental changes in how the library operates."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:13
|
||||||
|
msgid ""
|
||||||
|
"The biggest major change is that the library has dropped support to all "
|
||||||
|
"versions prior to Python 3.4.2. This was made to support ``asyncio``, in "
|
||||||
|
"which more detail can be seen :issue:`in the corresponding issue <50>`. "
|
||||||
|
"To reiterate this, the implication is that **python version 2.7 and 3.3 "
|
||||||
|
"are no longer supported**."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:18
|
||||||
|
msgid "Below are all the other major changes from v0.9.0 to v0.10.0."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:21
|
||||||
|
msgid "Event Registration"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:23
|
||||||
|
msgid ""
|
||||||
|
"All events before were registered using :meth:`Client.event`. While this "
|
||||||
|
"is still possible, the events must be decorated with "
|
||||||
|
"``@asyncio.coroutine``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:26 ../../migrating_to_async.rst:71
|
||||||
|
#: ../../migrating_to_async.rst:105 ../../migrating_to_async.rst:166
|
||||||
|
msgid "Before:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:34 ../../migrating_to_async.rst:83
|
||||||
|
#: ../../migrating_to_async.rst:111 ../../migrating_to_async.rst:174
|
||||||
|
#: ../../migrating_to_async.rst:284
|
||||||
|
msgid "After:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:43
|
||||||
|
msgid "Or in Python 3.5+:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:51
|
||||||
|
msgid ""
|
||||||
|
"Because there is a lot of typing, a utility decorator "
|
||||||
|
"(:meth:`Client.async_event`) is provided for easier registration. For "
|
||||||
|
"example:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:61
|
||||||
|
msgid ""
|
||||||
|
"Be aware however, that this is still a coroutine and your other functions"
|
||||||
|
" that are coroutines must be decorated with ``@asyncio.coroutine`` or be "
|
||||||
|
"``async def``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:65
|
||||||
|
msgid "Event Changes"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:67
|
||||||
|
msgid ""
|
||||||
|
"Some events in v0.9.0 were considered pretty useless due to having no "
|
||||||
|
"separate states. The main events that were changed were the ``_update`` "
|
||||||
|
"events since previously they had no context on what was changed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:93
|
||||||
|
msgid ""
|
||||||
|
"Note that ``on_status`` was removed. If you want its functionality, use "
|
||||||
|
":func:`on_member_update`. See :ref:`discord-api-events` for more "
|
||||||
|
"information. Other removed events include ``on_socket_closed``, "
|
||||||
|
"``on_socket_receive``, and ``on_socket_opened``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:98
|
||||||
|
msgid "Coroutines"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:100
|
||||||
|
msgid ""
|
||||||
|
"The biggest change that the library went through is that almost every "
|
||||||
|
"function in :class:`Client` was changed to be a `coroutine "
|
||||||
|
"<https://docs.python.org/3/library/asyncio-task.html>`_. Functions that "
|
||||||
|
"are marked as a coroutine in the documentation must be awaited from or "
|
||||||
|
"yielded from in order for the computation to be done. For example..."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:120
|
||||||
|
msgid ""
|
||||||
|
"In order for you to ``yield from`` or ``await`` a coroutine then your "
|
||||||
|
"function must be decorated with ``@asyncio.coroutine`` or ``async def``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:124
|
||||||
|
msgid "Iterables"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:126
|
||||||
|
msgid ""
|
||||||
|
"For performance reasons, many of the internal data structures were "
|
||||||
|
"changed into a dictionary to support faster lookup. As a consequence, "
|
||||||
|
"this meant that some lists that were exposed via the API have changed "
|
||||||
|
"into iterables and not sequences. In short, this means that certain "
|
||||||
|
"attributes now only support iteration and not any of the sequence "
|
||||||
|
"functions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:131
|
||||||
|
msgid "The affected attributes are as follows:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:133
|
||||||
|
msgid ":attr:`Client.servers`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:134
|
||||||
|
msgid ":attr:`Client.private_channels`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:135
|
||||||
|
msgid ":attr:`Server.channels`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:136
|
||||||
|
msgid ":attr:`Server.members`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:138
|
||||||
|
msgid "Some examples of previously valid behaviour that is now invalid"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:145
|
||||||
|
msgid ""
|
||||||
|
"Since they are no longer :obj:`list`\\s, they no longer support indexing "
|
||||||
|
"or any operation other than iterating. In order to get the old behaviour "
|
||||||
|
"you should explicitly cast it to a list."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:155
|
||||||
|
msgid ""
|
||||||
|
"Due to internal changes of the structure, the order you receive the data "
|
||||||
|
"in is not in a guaranteed order."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:159
|
||||||
|
msgid "Enumerations"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:161
|
||||||
|
msgid ""
|
||||||
|
"Due to dropping support for versions lower than Python 3.4.2, the library"
|
||||||
|
" can now use `enumerations "
|
||||||
|
"<https://docs.python.org/3/library/enum.html>`_ in places where it makes "
|
||||||
|
"sense."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:164
|
||||||
|
msgid ""
|
||||||
|
"The common places where this was changed was in the server region, member"
|
||||||
|
" status, and channel type."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:182
|
||||||
|
msgid ""
|
||||||
|
"The main reason for this change was to reduce the use of finicky strings "
|
||||||
|
"in the API as this could give users a false sense of power. More "
|
||||||
|
"information can be found in the :ref:`discord-api-enums` page."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:186
|
||||||
|
msgid "Properties"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:188
|
||||||
|
msgid ""
|
||||||
|
"A lot of function calls that returned constant values were changed into "
|
||||||
|
"Python properties for ease of use in format strings."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:191
|
||||||
|
msgid "The following functions were changed into properties:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:194 ../../migrating_to_async.rst:223
|
||||||
|
#: ../../migrating_to_async.rst:238
|
||||||
|
msgid "Before"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:194 ../../migrating_to_async.rst:223
|
||||||
|
#: ../../migrating_to_async.rst:238
|
||||||
|
msgid "After"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:196
|
||||||
|
msgid "``User.avatar_url()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:196
|
||||||
|
msgid ":attr:`User.avatar_url`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:198
|
||||||
|
msgid "``User.mention()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:198
|
||||||
|
msgid ":attr:`User.mention`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:200
|
||||||
|
msgid "``Channel.mention()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:200
|
||||||
|
msgid ":attr:`Channel.mention`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:202
|
||||||
|
msgid "``Channel.is_default_channel()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:202
|
||||||
|
msgid ":attr:`Channel.is_default`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:204
|
||||||
|
msgid "``Role.is_everyone()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:204
|
||||||
|
msgid ":attr:`Role.is_everyone`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:206
|
||||||
|
msgid "``Server.get_default_role()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:206
|
||||||
|
msgid ":attr:`Server.default_role`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:208
|
||||||
|
msgid "``Server.icon_url()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:208
|
||||||
|
msgid ":attr:`Server.icon_url`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:210
|
||||||
|
msgid "``Server.get_default_channel()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:210
|
||||||
|
msgid ":attr:`Server.default_channel`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:212
|
||||||
|
msgid "``Message.get_raw_mentions()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:212
|
||||||
|
msgid ":attr:`Message.raw_mentions`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:214
|
||||||
|
msgid "``Message.get_raw_channel_mentions()``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:214
|
||||||
|
msgid ":attr:`Message.raw_channel_mentions`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:218
|
||||||
|
msgid "Member Management"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:220
|
||||||
|
msgid "Functions that involved banning and kicking were changed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:225
|
||||||
|
msgid "``Client.ban(server, user)``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:225
|
||||||
|
msgid "``Client.ban(member)``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:227
|
||||||
|
msgid "``Client.kick(server, user)``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:227
|
||||||
|
msgid "``Client.kick(member)``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:233
|
||||||
|
msgid "Renamed Functions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:235
|
||||||
|
msgid "Functions have been renamed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:240
|
||||||
|
msgid "``Client.set_channel_permissions``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:240 ../../migrating_to_async.rst:263
|
||||||
|
msgid ":meth:`Client.edit_channel_permissions`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:243
|
||||||
|
msgid ""
|
||||||
|
"All the :class:`Permissions` related attributes have been renamed and the"
|
||||||
|
" `can_` prefix has been dropped. So for example, ``can_manage_messages`` "
|
||||||
|
"has become ``manage_messages``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:247
|
||||||
|
msgid "Forced Keyword Arguments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:249
|
||||||
|
msgid ""
|
||||||
|
"Since 3.0+ of Python, we can now force questions to take in forced "
|
||||||
|
"keyword arguments. A keyword argument is when you explicitly specify the "
|
||||||
|
"name of the variable and assign to it, for example: ``foo(name='test')``."
|
||||||
|
" Due to this support, some functions in the library were changed to force"
|
||||||
|
" things to take said keyword arguments. This is to reduce errors of "
|
||||||
|
"knowing the argument order and the issues that could arise from them."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:254
|
||||||
|
msgid "The following parameters are now exclusively keyword arguments:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:256
|
||||||
|
msgid ":meth:`Client.send_message`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:257
|
||||||
|
msgid "``tts``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:259
|
||||||
|
msgid ":meth:`Client.logs_from`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:259
|
||||||
|
msgid "``before``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:260
|
||||||
|
msgid "``after``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:262
|
||||||
|
msgid "``allow``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:263
|
||||||
|
msgid "``deny``"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:265
|
||||||
|
msgid ""
|
||||||
|
"In the documentation you can tell if a function parameter is a forced "
|
||||||
|
"keyword argument if it is after ``\\*,`` in the function signature."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:271
|
||||||
|
msgid "Running the Client"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:273
|
||||||
|
msgid ""
|
||||||
|
"In earlier versions of discord.py, ``client.run()`` was a blocking call "
|
||||||
|
"to the main thread that called it. In v0.10.0 it is still a blocking call"
|
||||||
|
" but it handles the event loop for you. However, in order to do that you "
|
||||||
|
"must pass in your credentials to :meth:`Client.run`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:277
|
||||||
|
msgid "Basically, before:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:292
|
||||||
|
msgid ""
|
||||||
|
"Like in the older ``Client.run`` function, the newer one must be the one "
|
||||||
|
"of the last functions to call. This is because the function is "
|
||||||
|
"**blocking**. Registering events or doing anything after "
|
||||||
|
":meth:`Client.run` will not execute until the function returns."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../migrating_to_async.rst:297
|
||||||
|
msgid ""
|
||||||
|
"This is a utility function that abstracts the event loop for you. There's"
|
||||||
|
" no need for the run call to be blocking and out of your control. Indeed,"
|
||||||
|
" if you want control of the event loop then doing so is quite "
|
||||||
|
"straightforward:"
|
||||||
|
msgstr ""
|
||||||
|
|
120
docs/locale/ja/LC_MESSAGES/quickstart.po
Normal file
120
docs/locale/ja/LC_MESSAGES/quickstart.po
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:6
|
||||||
|
msgid "Quickstart"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:8
|
||||||
|
msgid ""
|
||||||
|
"This page gives a brief introduction to the library. It assumes you have "
|
||||||
|
"the library installed, if you don't check the :ref:`installing` portion."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:12
|
||||||
|
msgid "A Minimal Bot"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:14
|
||||||
|
msgid ""
|
||||||
|
"Let's make a bot that replies to a specific message and walk you through "
|
||||||
|
"it."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:16
|
||||||
|
msgid "It looks something like this:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:38
|
||||||
|
msgid ""
|
||||||
|
"Let's name this file ``example_bot.py``. Make sure not to name it "
|
||||||
|
"``discord.py`` as that'll conflict with the library."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:41
|
||||||
|
msgid "There's a lot going on here, so let's walk you through it step by step."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:43
|
||||||
|
msgid ""
|
||||||
|
"The first line just imports the library, if this raises a "
|
||||||
|
"`ModuleNotFoundError` or `ImportError` then head on over to "
|
||||||
|
":ref:`installing` section to properly install."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:45
|
||||||
|
msgid ""
|
||||||
|
"Next, we create an instance of a :class:`Client`. This client is our "
|
||||||
|
"connection to Discord."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:46
|
||||||
|
msgid ""
|
||||||
|
"We then use the :meth:`Client.event` decorator to register an event. This"
|
||||||
|
" library has many events. Since this library is asynchronous, we do "
|
||||||
|
"things in a \"callback\" style manner."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:49
|
||||||
|
msgid ""
|
||||||
|
"A callback is essentially a function that is called when something "
|
||||||
|
"happens. In our case, the :func:`on_ready` event is called when the bot "
|
||||||
|
"has finished logging in and setting things up and the :func:`on_message` "
|
||||||
|
"event is called when the bot has received a message."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:52
|
||||||
|
msgid ""
|
||||||
|
"Since the :func:`on_message` event triggers for *every* message received,"
|
||||||
|
" we have to make sure that we ignore messages from ourselves. We do this "
|
||||||
|
"by checking if the :attr:`Message.author` is the same as the "
|
||||||
|
":attr:`Client.user`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:55
|
||||||
|
msgid ""
|
||||||
|
"Afterwards, we check if the :class:`Message.content` starts with "
|
||||||
|
"``'$hello'``. If it is, then we reply in the channel it was used in with "
|
||||||
|
"``'Hello!'``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:57
|
||||||
|
msgid ""
|
||||||
|
"Finally, we run the bot with our login token. If you need help getting "
|
||||||
|
"your token or creating a bot, look in the :ref:`discord-intro` section."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:61
|
||||||
|
msgid ""
|
||||||
|
"Now that we've made a bot, we have to *run* the bot. Luckily, this is "
|
||||||
|
"simple since this is just a Python script, we can run it directly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:64
|
||||||
|
msgid "On Windows:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:70
|
||||||
|
msgid "On other systems:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../quickstart.rst:76
|
||||||
|
msgid "Now you can try playing around with your basic bot."
|
||||||
|
msgstr ""
|
||||||
|
|
26
docs/locale/ja/LC_MESSAGES/sphinx.po
Normal file
26
docs/locale/ja/LC_MESSAGES/sphinx.po
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../_templates/layout.html:24
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"Created using <a href=\"http://sphinx-doc.org/\">Sphinx</a> "
|
||||||
|
"%(sphinx_version)s."
|
||||||
|
msgstr ""
|
||||||
|
|
939
docs/locale/ja/LC_MESSAGES/whats_new.po
Normal file
939
docs/locale/ja/LC_MESSAGES/whats_new.po
Normal file
@ -0,0 +1,939 @@
|
|||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) 2015-2017, Rapptz
|
||||||
|
# This file is distributed under the same license as the discord.py package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2018.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: discord.py 1.0.0a\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-07-31 14:21-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.5.3\n"
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:6
|
||||||
|
msgid "Changelog"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:8
|
||||||
|
msgid ""
|
||||||
|
"This page keeps a detailed human friendly rendering of what's new and "
|
||||||
|
"changed in specific versions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:14
|
||||||
|
msgid "v0.16.6"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:17 ../../whats_new.rst:33 ../../whats_new.rst:53
|
||||||
|
#: ../../whats_new.rst:101 ../../whats_new.rst:118 ../../whats_new.rst:155
|
||||||
|
#: ../../whats_new.rst:191 ../../whats_new.rst:243 ../../whats_new.rst:287
|
||||||
|
#: ../../whats_new.rst:353
|
||||||
|
msgid "Bug Fixes"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:19
|
||||||
|
msgid "Fix issue with :meth:`Client.create_server` that made it stop working."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:20
|
||||||
|
msgid "Fix main thread being blocked upon calling ``StreamPlayer.stop``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:21
|
||||||
|
msgid "Handle HEARTBEAT_ACK and resume gracefully when it occurs."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:22
|
||||||
|
msgid ""
|
||||||
|
"Fix race condition when pre-emptively rate limiting that caused releasing"
|
||||||
|
" an already released lock."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:23
|
||||||
|
msgid "Fix invalid state errors when immediately cancelling a coroutine."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:28
|
||||||
|
msgid "v0.16.1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:30
|
||||||
|
msgid ""
|
||||||
|
"This release is just a bug fix release with some better rate limit "
|
||||||
|
"implementation."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:35
|
||||||
|
msgid "Servers are now properly chunked for user bots."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:36
|
||||||
|
msgid "The CDN URL is now used instead of the API URL for assets."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:37
|
||||||
|
msgid "Rate limit implementation now tries to use header information if possible."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:38
|
||||||
|
msgid "Event loop is now properly propagated (:issue:`420`)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:39
|
||||||
|
msgid ""
|
||||||
|
"Allow falsey values in :meth:`Client.send_message` and "
|
||||||
|
":meth:`Client.send_file`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:44
|
||||||
|
msgid "v0.16.0"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:47 ../../whats_new.rst:79 ../../whats_new.rst:112
|
||||||
|
#: ../../whats_new.rst:141 ../../whats_new.rst:168 ../../whats_new.rst:204
|
||||||
|
#: ../../whats_new.rst:264 ../../whats_new.rst:310
|
||||||
|
msgid "New Features"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:49
|
||||||
|
msgid ""
|
||||||
|
"Add :attr:`Channel.overwrites` to get all the permission overwrites of a "
|
||||||
|
"channel."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:50
|
||||||
|
msgid "Add :attr:`Server.features` to get information about partnered servers."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:55
|
||||||
|
msgid ""
|
||||||
|
"Timeout when waiting for offline members while triggering "
|
||||||
|
":func:`on_ready`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:57
|
||||||
|
msgid ""
|
||||||
|
"The fact that we did not timeout caused a gigantic memory leak in the "
|
||||||
|
"library that caused thousands of duplicate :class:`Member` instances "
|
||||||
|
"causing big memory spikes."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:60
|
||||||
|
msgid "Discard null sequences in the gateway."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:62
|
||||||
|
msgid ""
|
||||||
|
"The fact these were not discarded meant that :func:`on_ready` kept being "
|
||||||
|
"called instead of :func:`on_resumed`. Since this has been corrected, in "
|
||||||
|
"most cases :func:`on_ready` will be called once or twice with "
|
||||||
|
":func:`on_resumed` being called much more often."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:69
|
||||||
|
msgid "v0.15.1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:71
|
||||||
|
msgid "Fix crash on duplicate or out of order reactions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:76
|
||||||
|
msgid "v0.15.0"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:81
|
||||||
|
msgid "Rich Embeds for messages are now supported."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:83
|
||||||
|
msgid ""
|
||||||
|
"To do so, create your own :class:`Embed` and pass the instance to the "
|
||||||
|
"``embed`` keyword argument to :meth:`Client.send_message` or "
|
||||||
|
":meth:`Client.edit_message`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:84
|
||||||
|
msgid "Add :meth:`Client.clear_reactions` to remove all reactions from a message."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:85
|
||||||
|
msgid ""
|
||||||
|
"Add support for MESSAGE_REACTION_REMOVE_ALL event, under "
|
||||||
|
":func:`on_reaction_clear`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:86
|
||||||
|
msgid ""
|
||||||
|
"Add :meth:`Permissions.update` and :meth:`PermissionOverwrite.update` for"
|
||||||
|
" bulk permission updates."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:88
|
||||||
|
msgid ""
|
||||||
|
"This allows you to use e.g. ``p.update(read_messages=True, "
|
||||||
|
"send_messages=False)`` in a single line."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:89
|
||||||
|
msgid ""
|
||||||
|
"Add :meth:`PermissionOverwrite.is_empty` to check if the overwrite is "
|
||||||
|
"empty (i.e. has no overwrites set explicitly as true or false)."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:91
|
||||||
|
msgid "For the command extension, the following changed:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:93
|
||||||
|
msgid "``Context`` is no longer slotted to facilitate setting dynamic attributes."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:98
|
||||||
|
msgid "v0.14.3"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:103
|
||||||
|
msgid "Fix crash when dealing with MESSAGE_REACTION_REMOVE"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:104
|
||||||
|
msgid "Fix incorrect buckets for reactions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:109
|
||||||
|
msgid "v0.14.2"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:115
|
||||||
|
msgid ""
|
||||||
|
":meth:`Client.wait_for_reaction` now returns a namedtuple with "
|
||||||
|
"``reaction`` and ``user`` attributes."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:115
|
||||||
|
msgid ""
|
||||||
|
"This is for better support in the case that ``None`` is returned since "
|
||||||
|
"tuple unpacking can lead to issues."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:120
|
||||||
|
msgid ""
|
||||||
|
"Fix bug that disallowed ``None`` to be passed for ``emoji`` parameter in "
|
||||||
|
":meth:`Client.wait_for_reaction`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:125
|
||||||
|
msgid "v0.14.1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:128
|
||||||
|
msgid "Bug fixes"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:131
|
||||||
|
msgid "Fix bug with `Reaction` not being visible at import."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:131
|
||||||
|
msgid "This was also breaking the documentation."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:136
|
||||||
|
msgid "v0.14.0"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:138
|
||||||
|
msgid "This update adds new API features and a couple of bug fixes."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:143
|
||||||
|
msgid ""
|
||||||
|
"Add support for Manage Webhooks permission under "
|
||||||
|
":attr:`Permissions.manage_webhooks`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:144
|
||||||
|
msgid "Add support for ``around`` argument in 3.5+ :meth:`Client.logs_from`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:152
|
||||||
|
msgid "Add support for reactions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:146
|
||||||
|
msgid ":meth:`Client.add_reaction` to add a reactions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:147
|
||||||
|
msgid ":meth:`Client.remove_reaction` to remove a reaction."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:148
|
||||||
|
msgid ""
|
||||||
|
":meth:`Client.get_reaction_users` to get the users that reacted to a "
|
||||||
|
"message."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:149
|
||||||
|
msgid ":attr:`Permissions.add_reactions` permission bit support."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:150
|
||||||
|
msgid "Two new events, :func:`on_reaction_add` and :func:`on_reaction_remove`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:151
|
||||||
|
msgid ":attr:`Message.reactions` to get reactions from a message."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:152
|
||||||
|
msgid ":meth:`Client.wait_for_reaction` to wait for a reaction from a user."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:157
|
||||||
|
msgid "Fix bug with Paginator still allowing lines that are too long."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:158
|
||||||
|
msgid "Fix the :attr:`Permissions.manage_emojis` bit being incorrect."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:163
|
||||||
|
msgid "v0.13.0"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:165
|
||||||
|
msgid "This is a backwards compatible update with new features."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:170
|
||||||
|
msgid "Add the ability to manage emojis."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:172
|
||||||
|
msgid ":meth:`Client.create_custom_emoji` to create new emoji."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:173
|
||||||
|
msgid ":meth:`Client.edit_custom_emoji` to edit an old emoji."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:174
|
||||||
|
msgid ":meth:`Client.delete_custom_emoji` to delete a custom emoji."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:175
|
||||||
|
msgid "Add new :attr:`Permissions.manage_emojis` toggle."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:177
|
||||||
|
msgid "This applies for :class:`PermissionOverwrite` as well."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:178
|
||||||
|
msgid "Add new statuses for :class:`Status`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:180
|
||||||
|
msgid ""
|
||||||
|
":attr:`Status.dnd` (aliased with :attr:`Status.do_not_disturb`\\) for Do "
|
||||||
|
"Not Disturb."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:181
|
||||||
|
msgid ""
|
||||||
|
":attr:`Status.invisible` for setting your status to invisible (please see"
|
||||||
|
" the docs for a caveat)."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:182
|
||||||
|
msgid "Deprecate :meth:`Client.change_status`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:184
|
||||||
|
msgid ""
|
||||||
|
"Use :meth:`Client.change_presence` instead for better more up to date "
|
||||||
|
"functionality."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:185
|
||||||
|
msgid "This method is subject for removal in a future API version."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:186
|
||||||
|
msgid ""
|
||||||
|
"Add :meth:`Client.change_presence` for changing your status with the new "
|
||||||
|
"Discord API change."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:188
|
||||||
|
msgid ""
|
||||||
|
"This is the only method that allows changing your status to invisible or "
|
||||||
|
"do not disturb."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:193
|
||||||
|
msgid "Paginator pages do not exceed their max_size anymore (:issue:`340`)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:194
|
||||||
|
msgid ""
|
||||||
|
"Do Not Disturb users no longer show up offline due to the new "
|
||||||
|
":class:`Status` changes."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:199
|
||||||
|
msgid "v0.12.0"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:201
|
||||||
|
msgid "This is a bug fix update that also comes with new features."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:206
|
||||||
|
msgid "Add custom emoji support."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:208
|
||||||
|
msgid "Adds a new class to represent a custom Emoji named :class:`Emoji`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:209
|
||||||
|
msgid "Adds a utility generator function, :meth:`Client.get_all_emojis`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:210
|
||||||
|
msgid "Adds a list of emojis on a server, :attr:`Server.emojis`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:211
|
||||||
|
msgid "Adds a new event, :func:`on_server_emojis_update`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:212
|
||||||
|
msgid "Add new server regions to :class:`ServerRegion`"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:214
|
||||||
|
msgid ":attr:`ServerRegion.eu_central` and :attr:`ServerRegion.eu_west`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:215
|
||||||
|
msgid ""
|
||||||
|
"Add support for new pinned system message under "
|
||||||
|
":attr:`MessageType.pins_add`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:216
|
||||||
|
msgid ""
|
||||||
|
"Add order comparisons for :class:`Role` to allow it to be compared with "
|
||||||
|
"regards to hierarchy."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:218
|
||||||
|
msgid ""
|
||||||
|
"This means that you can now do ``role_a > role_b`` etc to check if "
|
||||||
|
"``role_b`` is lower in the hierarchy."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:220
|
||||||
|
msgid "Add :attr:`Server.role_hierarchy` to get the server's role hierarchy."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:221
|
||||||
|
msgid ""
|
||||||
|
"Add :attr:`Member.server_permissions` to get a member's server "
|
||||||
|
"permissions without their channel specific overwrites."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:222
|
||||||
|
msgid "Add :meth:`Client.get_user_info` to retrieve a user's info from their ID."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:223
|
||||||
|
msgid ""
|
||||||
|
"Add a new ``Player`` property, ``Player.error`` to fetch the error that "
|
||||||
|
"stopped the player."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:225
|
||||||
|
msgid ""
|
||||||
|
"To help with this change, a player's ``after`` function can now take a "
|
||||||
|
"single parameter denoting the current player."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:226
|
||||||
|
msgid "Add support for server verification levels."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:228
|
||||||
|
msgid "Adds a new enum called :class:`VerificationLevel`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:229
|
||||||
|
msgid ""
|
||||||
|
"This enum can be used in :meth:`Client.edit_server` under the "
|
||||||
|
"``verification_level`` keyword argument."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:230
|
||||||
|
msgid "Adds a new attribute in the server, :attr:`Server.verification_level`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:231
|
||||||
|
msgid ""
|
||||||
|
"Add :attr:`Server.voice_client` shortcut property for "
|
||||||
|
":meth:`Client.voice_client_in`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:233
|
||||||
|
msgid ""
|
||||||
|
"This is technically old (was added in v0.10.0) but was undocumented until"
|
||||||
|
" v0.12.0."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:235 ../../whats_new.rst:281
|
||||||
|
msgid "For the command extension, the following are new:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:237
|
||||||
|
msgid "Add custom emoji converter."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:238
|
||||||
|
msgid "All default converters that can take IDs can now convert via ID."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:239
|
||||||
|
msgid "Add coroutine support for ``Bot.command_prefix``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:240
|
||||||
|
msgid "Add a method to reset command cooldown."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:245
|
||||||
|
msgid ""
|
||||||
|
"Fix bug that caused the library to not work with the latest "
|
||||||
|
"``websockets`` library."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:246
|
||||||
|
msgid "Fix bug that leaked keep alive threads (:issue:`309`)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:247
|
||||||
|
msgid ""
|
||||||
|
"Fix bug that disallowed :class:`ServerRegion` from being used in "
|
||||||
|
":meth:`Client.edit_server`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:248
|
||||||
|
msgid ""
|
||||||
|
"Fix bug in :meth:`Channel.permissions_for` that caused permission "
|
||||||
|
"resolution to happen out of order."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:249
|
||||||
|
msgid ""
|
||||||
|
"Fix bug in :attr:`Member.top_role` that did not account for same-position"
|
||||||
|
" roles."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:254
|
||||||
|
msgid "v0.11.0"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:256
|
||||||
|
msgid ""
|
||||||
|
"This is a minor bug fix update that comes with a gateway update (v5 -> "
|
||||||
|
"v6)."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:259
|
||||||
|
msgid "Breaking Changes"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:261
|
||||||
|
msgid ""
|
||||||
|
"``Permissions.change_nicknames`` has been renamed to "
|
||||||
|
":attr:`Permissions.change_nickname` to match the UI."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:266
|
||||||
|
msgid "Add the ability to prune members via :meth:`Client.prune_members`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:267
|
||||||
|
msgid ""
|
||||||
|
"Switch the websocket gateway version to v6 from v5. This allows the "
|
||||||
|
"library to work with group DMs and 1-on-1 calls."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:268
|
||||||
|
msgid "Add :attr:`AppInfo.owner` attribute."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:269
|
||||||
|
msgid "Add :class:`CallMessage` for group voice call messages."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:270
|
||||||
|
msgid "Add :class:`GroupCall` for group voice call information."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:271
|
||||||
|
msgid "Add :attr:`Message.system_content` to get the system message."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:272
|
||||||
|
msgid ""
|
||||||
|
"Add the remaining VIP servers and the Brazil servers into "
|
||||||
|
":class:`ServerRegion` enum."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:273
|
||||||
|
msgid ""
|
||||||
|
"Add ``stderr`` argument to :meth:`VoiceClient.create_ffmpeg_player` to "
|
||||||
|
"redirect stderr."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:274
|
||||||
|
msgid ""
|
||||||
|
"The library now handles implicit permission resolution in "
|
||||||
|
":meth:`Channel.permissions_for`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:275
|
||||||
|
msgid "Add :attr:`Server.mfa_level` to query a server's 2FA requirement."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:276
|
||||||
|
msgid "Add :attr:`Permissions.external_emojis` permission."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:277
|
||||||
|
msgid "Add :attr:`Member.voice` attribute that refers to a :class:`VoiceState`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:279
|
||||||
|
msgid ""
|
||||||
|
"For backwards compatibility, the member object will have properties "
|
||||||
|
"mirroring the old behaviour."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:283
|
||||||
|
msgid "Command cooldown system with the ``cooldown`` decorator."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:284
|
||||||
|
msgid ""
|
||||||
|
"``UserInputError`` exception for the hierarchy for user input related "
|
||||||
|
"errors."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:289
|
||||||
|
msgid ":attr:`Client.email` is now saved when using a token for user accounts."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:290
|
||||||
|
msgid "Fix issue when removing roles out of order."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:291
|
||||||
|
msgid "Fix bug where discriminators would not update."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:292
|
||||||
|
msgid ""
|
||||||
|
"Handle cases where ``HEARTBEAT`` opcode is received. This caused bots to "
|
||||||
|
"disconnect seemingly randomly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:294
|
||||||
|
msgid "For the command extension, the following bug fixes apply:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:296
|
||||||
|
msgid "``Bot.check`` decorator is actually a decorator not requiring parentheses."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:297
|
||||||
|
msgid ""
|
||||||
|
"``Bot.remove_command`` and ``Group.remove_command`` no longer throw if "
|
||||||
|
"the command doesn't exist."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:298
|
||||||
|
msgid "Command names are no longer forced to be ``lower()``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:299
|
||||||
|
msgid ""
|
||||||
|
"Fix a bug where Member and User converters failed to work in private "
|
||||||
|
"message contexts."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:300
|
||||||
|
msgid ""
|
||||||
|
"``HelpFormatter`` now ignores hidden commands when deciding the maximum "
|
||||||
|
"width."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:305
|
||||||
|
msgid "v0.10.0"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:307
|
||||||
|
msgid ""
|
||||||
|
"For breaking changes, see :ref:`migrating-to-async`. The breaking changes"
|
||||||
|
" listed there will not be enumerated below. Since this version is rather "
|
||||||
|
"a big departure from v0.9.2, this change log will be non-exhaustive."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:312
|
||||||
|
msgid ""
|
||||||
|
"The library is now fully ``asyncio`` compatible, allowing you to write "
|
||||||
|
"non-blocking code a lot more easily."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:313
|
||||||
|
msgid "The library now fully handles 429s and unconditionally retries on 502s."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:314
|
||||||
|
msgid ""
|
||||||
|
"A new command extension module was added but is currently undocumented. "
|
||||||
|
"Figuring it out is left as an exercise to the reader."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:315
|
||||||
|
msgid ""
|
||||||
|
"Two new exception types, :exc:`Forbidden` and :exc:`NotFound` to denote "
|
||||||
|
"permission errors or 404 errors."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:316
|
||||||
|
msgid "Added :meth:`Client.delete_invite` to revoke invites."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:317
|
||||||
|
msgid ""
|
||||||
|
"Added support for sending voice. Check :class:`VoiceClient` for more "
|
||||||
|
"details."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:318
|
||||||
|
msgid ""
|
||||||
|
"Added :meth:`Client.wait_for_message` coroutine to aid with follow up "
|
||||||
|
"commands."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:319
|
||||||
|
msgid ""
|
||||||
|
"Added :data:`version_info` named tuple to check version info of the "
|
||||||
|
"library."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:320
|
||||||
|
msgid ""
|
||||||
|
"Login credentials are now cached to have a faster login experience. You "
|
||||||
|
"can disable this by passing in ``cache_auth=False`` when constructing a "
|
||||||
|
":class:`Client`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:322
|
||||||
|
msgid ""
|
||||||
|
"New utility function, :func:`discord.utils.get` to simplify retrieval of "
|
||||||
|
"items based on attributes."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:323
|
||||||
|
msgid ""
|
||||||
|
"All data classes now support ``!=``, ``==``, ``hash(obj)`` and "
|
||||||
|
"``str(obj)``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:324
|
||||||
|
msgid "Added :meth:`Client.get_bans` to get banned members from a server."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:325
|
||||||
|
msgid ""
|
||||||
|
"Added :meth:`Client.invites_from` to get currently active invites in a "
|
||||||
|
"server."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:326
|
||||||
|
msgid ""
|
||||||
|
"Added :attr:`Server.me` attribute to get the :class:`Member` version of "
|
||||||
|
":attr:`Client.user`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:327
|
||||||
|
msgid ""
|
||||||
|
"Most data classes now support a ``hash(obj)`` function to allow you to "
|
||||||
|
"use them in ``set`` or ``dict`` classes or subclasses."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:328
|
||||||
|
msgid ""
|
||||||
|
"Add :meth:`Message.clean_content` to get a text version of the content "
|
||||||
|
"with the user and channel mentioned changed into their names."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:329
|
||||||
|
msgid ""
|
||||||
|
"Added a way to remove the messages of the user that just got banned in "
|
||||||
|
":meth:`Client.ban`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:330
|
||||||
|
msgid ""
|
||||||
|
"Added :meth:`Client.wait_until_ready` to facilitate easy creation of "
|
||||||
|
"tasks that require the client cache to be ready."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:331
|
||||||
|
msgid ""
|
||||||
|
"Added :meth:`Client.wait_until_login` to facilitate easy creation of "
|
||||||
|
"tasks that require the client to be logged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:332
|
||||||
|
msgid ""
|
||||||
|
"Add :class:`discord.Game` to represent any game with custom text to send "
|
||||||
|
"to :meth:`Client.change_status`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:333
|
||||||
|
msgid "Add :attr:`Message.nonce` attribute."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:334
|
||||||
|
msgid ""
|
||||||
|
"Add :meth:`Member.permissions_in` as another way of doing "
|
||||||
|
":meth:`Channel.permissions_for`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:335
|
||||||
|
msgid "Add :meth:`Client.move_member` to move a member to another voice channel."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:336
|
||||||
|
msgid "You can now create a server via :meth:`Client.create_server`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:337
|
||||||
|
msgid "Added :meth:`Client.edit_server` to edit existing servers."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:338
|
||||||
|
msgid ""
|
||||||
|
"Added :meth:`Client.server_voice_state` to server mute or server deafen a"
|
||||||
|
" member."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:339
|
||||||
|
msgid "If you are being rate limited, the library will now handle it for you."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:340
|
||||||
|
msgid ""
|
||||||
|
"Add :func:`on_member_ban` and :func:`on_member_unban` events that trigger"
|
||||||
|
" when a member is banned/unbanned."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:343
|
||||||
|
msgid "Performance Improvements"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:345
|
||||||
|
msgid ""
|
||||||
|
"All data classes now use ``__slots__`` which greatly reduce the memory "
|
||||||
|
"usage of things kept in cache."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:346
|
||||||
|
msgid ""
|
||||||
|
"Due to the usage of ``asyncio``, the CPU usage of the library has gone "
|
||||||
|
"down significantly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:347
|
||||||
|
msgid ""
|
||||||
|
"A lot of the internal cache lists were changed into dictionaries to "
|
||||||
|
"change the ``O(n)`` lookup into ``O(1)``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:348
|
||||||
|
msgid ""
|
||||||
|
"Compressed READY is now on by default. This means if you're on a lot of "
|
||||||
|
"servers (or maybe even a few) you would receive performance improvements "
|
||||||
|
"by having to download and process less data."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:350
|
||||||
|
msgid ""
|
||||||
|
"While minor, change regex from ``\\d+`` to ``[0-9]+`` to avoid "
|
||||||
|
"unnecessary unicode character lookups."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:355
|
||||||
|
msgid "Fix bug where guilds being updated did not edit the items in cache."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:356
|
||||||
|
msgid ""
|
||||||
|
"Fix bug where ``member.roles`` were empty upon joining instead of having "
|
||||||
|
"the ``@everyone`` role."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:357
|
||||||
|
msgid ""
|
||||||
|
"Fix bug where :meth:`Role.is_everyone` was not being set properly when "
|
||||||
|
"the role was being edited."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:358
|
||||||
|
msgid ""
|
||||||
|
":meth:`Client.logs_from` now handles cases where limit > 100 to sidestep "
|
||||||
|
"the discord API limitation."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:359
|
||||||
|
msgid "Fix bug where a role being deleted would trigger a ``ValueError``."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:360
|
||||||
|
msgid ""
|
||||||
|
"Fix bug where :meth:`Permissions.kick_members` and "
|
||||||
|
":meth:`Permissions.ban_members` were flipped."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:361
|
||||||
|
msgid ""
|
||||||
|
"Mentions are now triggered normally. This was changed due to the way "
|
||||||
|
"discord handles it internally."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:362
|
||||||
|
msgid ""
|
||||||
|
"Fix issue when a :class:`Message` would attempt to upgrade a "
|
||||||
|
":attr:`Message.server` when the channel is a :class:`Object`."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../whats_new.rst:364
|
||||||
|
msgid ""
|
||||||
|
"Unavailable servers were not being added into cache, this has been "
|
||||||
|
"corrected."
|
||||||
|
msgstr ""
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user