(locale): Add string templates.

This commit is contained in:
2023-08-16 17:04:39 +03:00
parent 5799b51a32
commit 5ff887c4c3
35 changed files with 11593 additions and 0 deletions

View File

@@ -0,0 +1,743 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: src/modules/pomodoro/timer.py:52
msgctxt "timer|stage:break|name"
msgid "BREAK"
msgstr ""
#: src/modules/pomodoro/timer.py:53
msgctxt "timer|stage:focus|name"
msgid "FOCUS"
msgstr ""
#: src/modules/pomodoro/timer.py:220
#, possible-python-brace-format
msgctxt "timer|default_base_name"
msgid "Timer {pattern}"
msgstr ""
#: src/modules/pomodoro/timer.py:392
#, possible-python-brace-format
msgctxt "timer|kicked_message"
msgid ""
"{mentions} was removed from {channel} because they were inactive! Remember "
"to press {tick} to register your presence every stage."
msgid_plural ""
"{mentions} were removed from {channel} because they were inactive! Remember "
"to press {tick} to register your presence every stage."
msgstr[0] ""
msgstr[1] ""
#: src/modules/pomodoro/timer.py:485
#, possible-python-brace-format
msgctxt "timer|status|stage:focus|statusline"
msgid "{channel} is now in **FOCUS**! Good luck, **BREAK** starts {timestamp}"
msgstr ""
#: src/modules/pomodoro/timer.py:490
#, possible-python-brace-format
msgctxt "timer|status|stage:break|statusline"
msgid ""
"{channel} is now on **BREAK**! Take a rest, **FOCUS** starts {timestamp}"
msgstr ""
#: src/modules/pomodoro/timer.py:522
#, possible-python-brace-format
msgctxt "timer|status|warningline"
msgid ""
"**Warning:** {mentions}, please press {tick} to avoid being removed on the "
"next stage."
msgstr ""
#: src/modules/pomodoro/timer.py:539
#, possible-python-brace-format
msgctxt "timer|status|stopped:auto"
msgid "Timer stopped! Join {channel} to start the timer."
msgstr ""
#: src/modules/pomodoro/timer.py:544
msgctxt "timer|status|stopped:manual"
msgid "Timer stopped! Press `Start` to restart the timer."
msgstr ""
#: src/modules/pomodoro/settingui.py:39
msgctxt "ui:timer_config|menu:channels|placeholder"
msgid "Select Pomodoro Notification Channel"
msgstr ""
#: src/modules/pomodoro/settingui.py:47
msgctxt "ui:timer_config|embed|title"
msgid "Timer Configuration Panel"
msgstr ""
#: src/modules/pomodoro/settingui.py:81
msgctxt "dash:pomodoro|title"
msgid "Pomodoro Configuration ({commands[configure pomodoro]})"
msgstr ""
#: src/modules/pomodoro/cog.py:307
msgctxt "cmd:pomodoro"
msgid "timers"
msgstr ""
#: src/modules/pomodoro/cog.py:308
msgctxt "cmd:pomodoro|desc"
msgid "Base group for all pomodoro timer commands."
msgstr ""
#: src/modules/pomodoro/cog.py:316
msgctxt "cmd:pomodoro_status"
msgid "show"
msgstr ""
#: src/modules/pomodoro/cog.py:317
msgctxt "cmd:pomodoro_status|desc"
msgid "Display the status of a single pomodoro timer."
msgstr ""
#: src/modules/pomodoro/cog.py:320
msgctxt "cmd:pomodoro_status|param:channel"
msgid "timer_channel"
msgstr ""
#: src/modules/pomodoro/cog.py:325
msgctxt "cmd:pomodoro_status|param:channel|desc"
msgid "The channel for which you want to view the timer."
msgstr ""
#: src/modules/pomodoro/cog.py:343
#, possible-python-brace-format
msgctxt "cmd:pomodoro_status|error:no_timer"
msgid "The channel {channel} does not have a timer set up!"
msgstr ""
#: src/modules/pomodoro/cog.py:353
msgctxt "cmd:pomodoro_list"
msgid "list"
msgstr ""
#: src/modules/pomodoro/cog.py:354
msgctxt "cmd:pomodoro_list|desc"
msgid "List the available pomodoro timers."
msgstr ""
#: src/modules/pomodoro/cog.py:376
#, possible-python-brace-format
msgctxt "cmd:pomodoro_list|error:no_timers"
msgid ""
"No timers have been setup in this server!\n"
"You can ask an admin to create one with {command}."
msgstr ""
#: src/modules/pomodoro/cog.py:388
msgctxt "cmd:pomodoro_list|error:no_visible_timers"
msgid "There are no visible timers in this server!"
msgstr ""
#: src/modules/pomodoro/cog.py:398
#, possible-python-brace-format
msgctxt "cmd:pomodoro_list|embed:timer_list|title"
msgid "Pomodoro Timers in **{guild}**"
msgstr ""
#: src/modules/pomodoro/cog.py:407
#, possible-python-brace-format
msgctxt "cmd:pomodoro_list|status:stopped_auto"
msgid ""
"`{pattern}` timer is stopped with no members!\n"
"Join {channel} to restart it."
msgstr ""
#: src/modules/pomodoro/cog.py:412
#, possible-python-brace-format
msgctxt "cmd:pomodoro_list|status:stopped_manual"
msgid ""
"`{pattern}` timer is stopped with `{members}` members!\n"
"Join {channel} and press `Start` to start it!"
msgstr ""
#: src/modules/pomodoro/cog.py:419
#, possible-python-brace-format
msgctxt "cmd:pomodoro_list|status:running_focus"
msgid ""
"`{pattern}` timer is running with `{members}` members!\n"
"Currently **focusing**, with break starting {timestamp}"
msgstr ""
#: src/modules/pomodoro/cog.py:425
#, possible-python-brace-format
msgctxt "cmd:pomodoro_list|status:running_break"
msgid ""
"`{pattern}` timer is running with `{members}` members!\n"
"Currently **resting**, with focus starting {timestamp}"
msgstr ""
#: src/modules/pomodoro/cog.py:439
msgctxt "cmd:pomodoro_admin"
msgid "admin"
msgstr ""
#: src/modules/pomodoro/cog.py:440
msgctxt "cmd:pomodoro_admin|desc"
msgid "Command group for pomodoro admin controls."
msgstr ""
#: src/modules/pomodoro/cog.py:446
msgctxt "cmd:pomodoro_create"
msgid "create"
msgstr ""
#: src/modules/pomodoro/cog.py:449
msgctxt "cmd:pomodoro_create|desc"
msgid "Create a new Pomodoro timer. Requires admin permissions."
msgstr ""
#: src/modules/pomodoro/cog.py:453
msgctxt "cmd:pomodoro_create|param:channel"
msgid "timer_channel"
msgstr ""
#: src/modules/pomodoro/cog.py:459
msgctxt "cmd:pomodoro_create|param:channel|desc"
msgid ""
"Voice channel to create the timer in. (Defaults to your current channel, or "
"makes a new one.)"
msgstr ""
#: src/modules/pomodoro/cog.py:488
msgctxt "cmd:pomodoro_create|error:insufficient_perms"
msgid "Only server administrators can create timers!"
msgstr ""
#: src/modules/pomodoro/cog.py:515
msgctxt "cmd:pomodoro_create|error:channel_create_failed|title"
msgid "Could not create pomodoro voice channel!"
msgstr ""
#: src/modules/pomodoro/cog.py:519
msgctxt "cmd:pomodoro_create|error:channel_create|desc"
msgid ""
"Failed to create a new pomodoro voice channel due to an unknown Discord "
"communication error. Please try creating the channel manually and pass it to "
"the `timer_channel` argument of this command."
msgstr ""
#: src/modules/pomodoro/cog.py:533
msgctxt "cmd:pomodoro_create|error:channel_create_permissions|title"
msgid "Could not create pomodoro voice channel!"
msgstr ""
#: src/modules/pomodoro/cog.py:537
msgctxt "cmd:pomodoro_create|error:channel_create_permissions|desc"
msgid ""
"No `timer_channel` was provided, and I lack the `MANAGE_CHANNELS` permission "
"needed to create a new voice channel."
msgstr ""
#: src/modules/pomodoro/cog.py:551
#, possible-python-brace-format
msgctxt "cmd:pomodoro_create|error:timer_exists"
msgid ""
"A timer already exists in {channel}! Use `/pomodoro admin edit` to modify it."
msgstr ""
#: src/modules/pomodoro/cog.py:590
msgctxt "cmd:pomodoro_create|response:success|content"
msgid "Timer created successfully! Use the panel below to reconfigure."
msgstr ""
#: src/modules/pomodoro/cog.py:596
msgctxt "cmd:pomodoro_destroy"
msgid "destroy"
msgstr ""
#: src/modules/pomodoro/cog.py:599
msgctxt "cmd:pomodoro_destroy|desc"
msgid ""
"Delete a pomodoro timer from a voice channel. Requires admin permissions."
msgstr ""
#: src/modules/pomodoro/cog.py:603
msgctxt "cmd:pomodoro_destroy|param:channel"
msgid "timer_channel"
msgstr ""
#: src/modules/pomodoro/cog.py:606
msgctxt "cmd:pomodoro_destroy|param:channel"
msgid "Channel with the timer to delete."
msgstr ""
#: src/modules/pomodoro/cog.py:624
msgctxt "cmd:pomodoro_destroy|error:no_timer"
msgid "This channel doesn't have an attached pomodoro timer!"
msgstr ""
#: src/modules/pomodoro/cog.py:639
msgctxt "cmd:pomodoro_destroy|error:insufficient_perms|owned"
msgid ""
"You need to be an administrator or own this channel to remove this timer!"
msgstr ""
#: src/modules/pomodoro/cog.py:649
msgctxt "cmd:pomodoro_destroy|error:insufficient_perms|notowned"
msgid "You need to be a server administrator to remove this timer!"
msgstr ""
#: src/modules/pomodoro/cog.py:661
#, possible-python-brace-format
msgctxt "cmd:pomdoro_destroy|response:success|description"
msgid "Timer successfully removed from {channel}."
msgstr ""
#: src/modules/pomodoro/cog.py:667
msgctxt "cmd:pomodoro_edit"
msgid "edit"
msgstr ""
#: src/modules/pomodoro/cog.py:670
msgctxt "cmd:pomodoro_edit|desc"
msgid "Edit a Timer"
msgstr ""
#: src/modules/pomodoro/cog.py:674
msgctxt "cmd:pomodoro_edit|param:channel"
msgid "timer_channel"
msgstr ""
#: src/modules/pomodoro/cog.py:680
msgctxt "cmd:pomodoro_edit|param:channel|desc"
msgid "Channel holding the timer to edit."
msgstr ""
#: src/modules/pomodoro/cog.py:721
msgctxt "cmd:pomodoro_edit|error:no_timer"
msgid "This channel doesn't have an attached pomodoro timer to edit!"
msgstr ""
#: src/modules/pomodoro/cog.py:734
msgctxt "cmd:pomodoro_edit|error:insufficient_perms|role:other"
msgid ""
"Insufficient permissions to modifiy this timer!\n"
"You need to be a server administrator, own this channel, or have the timer "
"manager role."
msgstr ""
#: src/modules/pomodoro/cog.py:755
msgctxt "cmd:pomodoro_edit|error:insufficient_permissions|role_needed:admin"
msgid "You need to be a guild admin to modify this option!"
msgstr ""
#: src/modules/pomodoro/cog.py:760
msgctxt "cmd:pomodoro_edit|error:insufficient_permissions|role_needed:owner"
msgid "You need to be a channel owner or guild admin to modify this option!"
msgstr ""
#: src/modules/pomodoro/cog.py:765
msgctxt "cmd:pomodoro_edit|error:insufficient_permissions|role_needed:manager"
msgid ""
"You need to be a guild admin or have the manager role to modify this option!"
msgstr ""
#: src/modules/pomodoro/cog.py:801
msgctxt "cmd:configure_pomodoro"
msgid "pomodoro"
msgstr ""
#: src/modules/pomodoro/cog.py:802
msgctxt "cmd:configure_pomodoro|desc"
msgid "Configure Pomodoro Timer System"
msgstr ""
#: src/modules/pomodoro/lib.py:19
#, possible-python-brace-format
msgctxt "formatstring:channel_name|key:remaining"
msgid "{remaining}"
msgstr ""
#: src/modules/pomodoro/lib.py:20
#, possible-python-brace-format
msgctxt "formatstring:channel_name|key:stage"
msgid "{stage}"
msgstr ""
#: src/modules/pomodoro/lib.py:21
#, possible-python-brace-format
msgctxt "formatstring:channel_name|key:members"
msgid "{members}"
msgstr ""
#: src/modules/pomodoro/lib.py:22
#, possible-python-brace-format
msgctxt "formatstring:channel_name|key:name"
msgid "{name}"
msgstr ""
#: src/modules/pomodoro/lib.py:23
#, possible-python-brace-format
msgctxt "formatstring:channel_name|key:pattern"
msgid "{pattern}"
msgstr ""
#: src/modules/pomodoro/options.py:32
msgctxt "timerset:voice_channel"
msgid "channel"
msgstr ""
#: src/modules/pomodoro/options.py:35
msgctxt "timerset:voice_channel|desc"
msgid "Channel in which to track timer members and send alerts."
msgstr ""
#: src/modules/pomodoro/options.py:45
msgctxt "timerset:notification_channel"
msgid "notification_channel"
msgstr ""
#: src/modules/pomodoro/options.py:48
msgctxt "timerset:notification_channel|desc"
msgid "Channel to which to send timer status cards and notifications."
msgstr ""
#: src/modules/pomodoro/options.py:68
#, possible-python-brace-format
msgctxt "timerset:notification_channel|format:notset"
msgid "Not Set (Using {channel})"
msgstr ""
#: src/modules/pomodoro/options.py:78
msgctxt "timerset:inactivity_threshold|inactivity_threshold"
msgid "inactivity_threshold"
msgstr ""
#: src/modules/pomodoro/options.py:81
msgctxt "timerset:inactivity_threshold|desc"
msgid ""
"Number of inactive focus+break stages before a member is removed from the "
"timer."
msgstr ""
#: src/modules/pomodoro/options.py:85
msgctxt "timerset:inactivity_threshold|desc"
msgid "How many timer cycles before kicking inactive members."
msgstr ""
#: src/modules/pomodoro/options.py:99
msgctxt "timerset:manager_role"
msgid "manager_role"
msgstr ""
#: src/modules/pomodoro/options.py:102
msgctxt "timerset:manager_role|desc"
msgid "Role allowed to start, stop, and edit the focus/break lengths."
msgstr ""
#: src/modules/pomodoro/options.py:114
msgctxt "timerset:manager_role|format:notset"
msgid "Not Set (Only Admins may start/stop or edit pattern)"
msgstr ""
#: src/modules/pomodoro/options.py:124
msgctxt "timerset:voice_alerts"
msgid "voice_alerts"
msgstr ""
#: src/modules/pomodoro/options.py:127
msgctxt "timerset:voice_alerts|desc"
msgid "Whether to join the voice channel and announce focus and break stages."
msgstr ""
#: src/modules/pomodoro/options.py:138
msgctxt "timerset:base_name"
msgid "name"
msgstr ""
#: src/modules/pomodoro/options.py:141
msgctxt "timerset:base_name|desc"
msgid "Timer name, as shown on the timer card."
msgstr ""
#: src/modules/pomodoro/options.py:145
msgctxt "timerset:base_name|accepts"
msgid "Any short name, shown on the timer card."
msgstr ""
#: src/modules/pomodoro/options.py:159
msgctxt "timerset:channel_name_format"
msgid "channel_name"
msgstr ""
#: src/modules/pomodoro/options.py:162
#, possible-python-brace-format
msgctxt "timerset:channel_name_format|desc"
msgid ""
"Auto-updating voice channel name, accepting {remaining}, {name}, {pattern}, "
"and {stage} keys."
msgstr ""
#: src/modules/pomodoro/options.py:166
#, possible-python-brace-format
msgctxt "timerset:channel_name|accepts"
msgid ""
"Timer channel name, with keys {remaining}, {name}, {pattern}, and {stage}."
msgstr ""
#: src/modules/pomodoro/options.py:178
msgctxt "timerset:focus_length"
msgid "focus_length"
msgstr ""
#: src/modules/pomodoro/options.py:181
msgctxt "timerset:focus_length|desc"
msgid "Length of the focus stage of the timer in minutes."
msgstr ""
#: src/modules/pomodoro/options.py:186
msgctxt "timerset:focus_length|accepts"
msgid "A positive integer number of minutes."
msgstr ""
#: src/modules/pomodoro/options.py:210
msgctxt "timerset:focus_length|desc"
msgid "Please enter a positive number of minutes."
msgstr ""
#: src/modules/pomodoro/options.py:218
msgctxt "timerset:break_length"
msgid "break_length"
msgstr ""
#: src/modules/pomodoro/options.py:221
msgctxt "timerset:break_length|desc"
msgid "Length of the break stage of the timer in minutes."
msgstr ""
#: src/modules/pomodoro/options.py:226
msgctxt "timerset:break_length|accepts"
msgid "A positive integer number of minutes."
msgstr ""
#: src/modules/pomodoro/options.py:250
msgctxt "timerset:break_length|desc"
msgid "Please enter a positive number of minutes."
msgstr ""
#: src/modules/pomodoro/settings.py:19
msgctxt "guildset:pomodoro_channel"
msgid "pomodoro_channel"
msgstr ""
#: src/modules/pomodoro/settings.py:22
msgctxt "guildset:pomodoro_channel|desc"
msgid "Default central notification channel for pomodoro timers."
msgstr ""
#: src/modules/pomodoro/settings.py:26
msgctxt "guildset:pomodoro_channel|long_desc"
msgid ""
"Pomodoro timers which do not have a custom notification channel set will "
"send timer notifications in this channel. If this setting is not set, "
"pomodoro notifications will default to the timer voice channel itself."
msgstr ""
#: src/modules/pomodoro/settings.py:33
msgctxt "guildset:pomodoro_channel|formatted|notset"
msgid "Not Set (Will use timer voice channel.)"
msgstr ""
#: src/modules/pomodoro/settings.py:37
msgctxt "guildset:pomodoro_channel|accepts"
msgid "Timer notification channel name or id."
msgstr ""
#: src/modules/pomodoro/settings.py:50
#, possible-python-brace-format
msgctxt "guildset:pomodoro_channel|set_response|set"
msgid "Pomodoro timer notifications will now default to {channel}"
msgstr ""
#: src/modules/pomodoro/settings.py:55
msgctxt "guildset:pomodoro_channel|set_response|unset"
msgid "Pomodoro timer notifications will now default to their voice channel."
msgstr ""
#: src/modules/pomodoro/settings.py:65
#, possible-python-brace-format
msgctxt "guildset:pomdoro_channel|set_using"
msgid "{cmd} or channel selector below."
msgstr ""
#: src/modules/pomodoro/ui/edit.py:63
msgctxt "modal:timer_editor|title"
msgid "Timer Option Editor"
msgstr ""
#: src/modules/pomodoro/ui/status.py:58
msgctxt "ui:timer_status|button:present|label"
msgid "Present"
msgstr ""
#: src/modules/pomodoro/ui/status.py:81
msgctxt "ui:timer_status|button:edit|error:no_permissions"
msgid ""
"Configuring this timer requires guild admin permissions or the configured "
"manager role!"
msgstr ""
#: src/modules/pomodoro/ui/status.py:93
msgctxt "ui:timer_status|button:edit|label"
msgid "Options"
msgstr ""
#: src/modules/pomodoro/ui/status.py:111
msgctxt "ui:timer_status|button:start|error:already_running"
msgid "Cannot start a timer that is already running!"
msgstr ""
#: src/modules/pomodoro/ui/status.py:125
msgctxt "ui:timer_status|button:start|label"
msgid "Start"
msgstr ""
#: src/modules/pomodoro/ui/status.py:142
msgctxt "ui:timer_status|button:stop|label"
msgid "Stop"
msgstr ""
#: src/modules/pomodoro/ui/config.py:51
msgctxt "ui:timer_options|button:edit|label"
msgid "Edit"
msgstr ""
#: src/modules/pomodoro/ui/config.py:67
msgctxt "ui:timer_options|button:voice_alerts|label"
msgid "Voice Alerts"
msgstr ""
#: src/modules/pomodoro/ui/config.py:88
msgctxt "ui:timer_options|button:delete|success|title"
msgid "Timer Deleted"
msgstr ""
#: src/modules/pomodoro/ui/config.py:92
#, possible-python-brace-format
msgctxt "ui:timer_options|button:delete|success|description"
msgid "The timer in {channel} has been removed."
msgstr ""
#: src/modules/pomodoro/ui/config.py:100
msgctxt "ui:timer_options|button:delete|label"
msgid "Delete"
msgstr ""
#: src/modules/pomodoro/ui/config.py:119
msgctxt "ui:timer_options|menu:voice_channel|placeholder"
msgid "Set Voice Channel"
msgstr ""
#: src/modules/pomodoro/ui/config.py:142
msgctxt "ui:timer_options|menu:notification_channel|placeholder"
msgid "Set Notification Channel"
msgstr ""
#: src/modules/pomodoro/ui/config.py:157
msgctxt "ui:timer_options|menu:manager_role|placeholder"
msgid "Set Manager Role"
msgstr ""
#: src/modules/pomodoro/ui/config.py:166
#, possible-python-brace-format
msgctxt "ui:timer_options|embed|title"
msgid "Timer Control Panel for {channel}"
msgstr ""
#: src/modules/pomodoro/ui/config.py:173
msgctxt "ui:timer_options|embed|footer"
msgid "Hover over the option names to view descriptions."
msgstr ""
#: src/modules/pomodoro/ui/config.py:185
msgctxt "ui:timer_options|embed|field:pattern|name"
msgid "Pattern"
msgstr ""
#: src/modules/pomodoro/ui/config.py:188
#, possible-python-brace-format
msgctxt "ui:timer_options|embed|field:pattern|value"
msgid ""
"**`{focus_len} minutes`** focus\n"
"**`{break_len} minutes`** break"
msgstr ""
#: src/modules/pomodoro/ui/config.py:199
msgctxt "ui:timer_options|embed|field:channel_name|name"
msgid "Channel Name Preview"
msgstr ""
#: src/modules/pomodoro/ui/config.py:203
#, possible-python-brace-format
msgctxt "ui:timer_options|embed|field:channel_name|value"
msgid ""
"**`{name}`**\n"
"(The actual channel name may not match due to ratelimits.)"
msgstr ""
#: src/modules/pomodoro/ui/config.py:213
msgctxt "ui:timer_options|embed|field:issues|name"
msgid "Issues"
msgstr ""
#: src/modules/pomodoro/ui/config.py:231
msgctxt "ui:timer_options|issue:no_voice_channel"
msgid "The configured voice channel does not exist! Please update it below."
msgstr ""
#: src/modules/pomodoro/ui/config.py:242
#, possible-python-brace-format
msgctxt "ui:timer_options|issue:cannot_speak"
msgid "Voice alerts are on, but I don't have speaking permissions in {channel}"
msgstr ""
#: src/modules/pomodoro/ui/config.py:249
#, possible-python-brace-format
msgctxt "ui:timer_options|issue:cannot_change_name"
msgid ""
"I cannot update the name of {channel}! (Needs `MANAGE_CHANNELS` permission)"
msgstr ""
#: src/modules/pomodoro/ui/config.py:260
msgctxt "ui:timer_options|issue:notif_channel_dne"
msgid "Configured notification channel does not exist!"
msgstr ""
#: src/modules/pomodoro/ui/config.py:269
#, possible-python-brace-format
msgctxt "ui:timer_options|issue:notif_channel_write"
msgid ""
"I cannot attach files (`ATTACH_FILES`) or send embeds (`EMBED_LINKS`) in "
"{channel}"
msgstr ""
#: src/modules/pomodoro/ui/config.py:277
#, possible-python-brace-format
msgctxt "ui:timer_options|issues:cannot_make_webhooks"
msgid ""
"I cannot create the notification webhook (`MANAGE_WEBHOOKS`) in {channel}"
msgstr ""

365
locales/templates/babel.pot Normal file
View File

@@ -0,0 +1,365 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/babel/settingui.py:40
msgctxt "ui:locale_config|button:force|label"
msgid "Toggle Force"
msgstr ""
#: src/babel/settingui.py:49
msgctxt "ui:locale_config|embed|title"
msgid "Language Configuration Panel"
msgstr ""
#: src/babel/settingui.py:83
msgctxt "dash:locale|title"
msgid "Server Language Configuration ({commands[configure language]})"
msgstr ""
#: src/babel/cog.py:99
msgctxt "cmd:configure_language"
msgid "language"
msgstr ""
#: src/babel/cog.py:101
msgctxt "cmd:configure_language|desc"
msgid "Configure the default language I will use in this server."
msgstr ""
#: src/babel/cog.py:147
#, possible-python-brace-format
msgctxt "cmd:configure_language|error"
msgid ""
"You cannot enable `{force_setting}` without having a configured language!"
msgstr ""
#: src/babel/cog.py:167
msgctxt "cmd:configure_language|success"
msgid "Language settings updated!"
msgstr ""
#: src/babel/cog.py:183
msgctxt "cmd:userconfig_language"
msgid "language"
msgstr ""
#: src/babel/cog.py:186
msgctxt "cmd:userconfig_language|desc"
msgid "Set your preferred interaction language."
msgstr ""
#: src/babel/cog.py:190
msgctxt "cmd:userconfig_language|param:language"
msgid "language"
msgstr ""
#: src/babel/cog.py:195
msgctxt "cmd:userconfig_language|param:language|desc"
msgid "Which language do you want me to respond in?"
msgstr ""
#: src/babel/cog.py:211
msgctxt "cmd:userconfig_language|button:reset|label"
msgid "Reset"
msgstr ""
#: src/babel/cog.py:251
#, possible-python-brace-format
msgctxt "acmpl:language|no_match"
msgid "No supported languages matching {partial}"
msgstr ""
#: src/babel/utils.py:9
msgctxt "utils|months"
msgid ""
"January,February,March,April,May,June,July,August,September,October,November,"
"December"
msgstr ""
#: src/babel/utils.py:14
msgctxt "utils|short_months"
msgid "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec"
msgstr ""
#: src/babel/settings.py:23
msgctxt "settype:locale|accepts"
msgid "Enter a supported language (e.g. 'en-GB')."
msgstr ""
#: src/babel/settings.py:34
msgctxt "settype:locale|summary_table|field:supported|key"
msgid "Supported"
msgstr ""
#: src/babel/settings.py:44
msgctxt "settype:locale|formatted:unset"
msgid "Unset"
msgstr ""
#: src/babel/settings.py:60
#, possible-python-brace-format
msgctxt "settype:locale|error"
msgid "Sorry, we do not support the language `{lang}` at this time!"
msgstr ""
#: src/babel/settings.py:75
msgctxt "userset:locale"
msgid "language"
msgstr ""
#: src/babel/settings.py:76
msgctxt "userset:locale|desc"
msgid "Your preferred language for interacting with me."
msgstr ""
#: src/babel/settings.py:79
msgctxt "userset:locale|long_desc"
msgid ""
"The language you would prefer me to respond to commands and interactions in. "
"Servers may be configured to override this with their own language."
msgstr ""
#: src/babel/settings.py:90
msgctxt "userset:locale|response"
msgid "You have unset your language."
msgstr ""
#: src/babel/settings.py:92
#, possible-python-brace-format
msgctxt "userset:locale|response"
msgid "You have set your language to {lang}."
msgstr ""
#: src/babel/settings.py:110
msgctxt "guildset:force_locale"
msgid "force_language"
msgstr ""
#: src/babel/settings.py:112
msgctxt "guildset:force_locale|desc"
msgid ""
"Whether to force all members to use the configured guild language when "
"interacting with me."
msgstr ""
#: src/babel/settings.py:115
msgctxt "guildset:force_locale|long_desc"
msgid ""
"When enabled, commands in this guild will always use the configured guild "
"language, regardless of the member's personally configured language."
msgstr ""
#: src/babel/settings.py:119
msgctxt "guildset:force_locale|output"
msgid "Enabled (members will be forced to use the server language)"
msgstr ""
#: src/babel/settings.py:120
msgctxt "guildset:force_locale|output"
msgid "Disabled (members may set their own language)"
msgstr ""
#: src/babel/settings.py:134
msgctxt "guildset:force_locale|response"
msgid "I will always use the set language in this server."
msgstr ""
#: src/babel/settings.py:139
msgctxt "guildset:force_locale|response"
msgid "I will now allow the members to set their own language here."
msgstr ""
#: src/babel/settings.py:156
msgctxt "guildset:locale"
msgid "language"
msgstr ""
#: src/babel/settings.py:157
msgctxt "guildset:locale|desc"
msgid "Your preferred language for interacting with me."
msgstr ""
#: src/babel/settings.py:160
msgctxt "guildset:locale|long_desc"
msgid ""
"The default language to use for responses and interactions in this server. "
"Member's own configured language will override this for their commands "
"unless `force_language` is enabled."
msgstr ""
#: src/babel/settings.py:172
msgctxt "guildset:locale|response"
msgid "You have unset the guild language."
msgstr ""
#: src/babel/settings.py:174
#, possible-python-brace-format
msgctxt "guildset:locale|response"
msgid "You have set the guild language to {lang}."
msgstr ""
#: src/babel/enums.py:41
msgctxt "localenames|locale:en-US"
msgid "American English"
msgstr ""
#: src/babel/enums.py:42
msgctxt "localenames|locale:en-GB"
msgid "British English"
msgstr ""
#: src/babel/enums.py:43
msgctxt "localenames|locale:bg"
msgid "Bulgarian"
msgstr ""
#: src/babel/enums.py:44
msgctxt "localenames|locale:zh-CN"
msgid "Chinese"
msgstr ""
#: src/babel/enums.py:45
msgctxt "localenames|locale:zh-TW"
msgid "Taiwan Chinese"
msgstr ""
#: src/babel/enums.py:46
msgctxt "localenames|locale:hr"
msgid "Croatian"
msgstr ""
#: src/babel/enums.py:47
msgctxt "localenames|locale:cs"
msgid "Czech"
msgstr ""
#: src/babel/enums.py:48
msgctxt "localenames|locale:da"
msgid "Danish"
msgstr ""
#: src/babel/enums.py:49
msgctxt "localenames|locale:nl"
msgid "Dutch"
msgstr ""
#: src/babel/enums.py:50
msgctxt "localenames|locale:fi"
msgid "Finnish"
msgstr ""
#: src/babel/enums.py:51
msgctxt "localenames|locale:fr"
msgid "French"
msgstr ""
#: src/babel/enums.py:52
msgctxt "localenames|locale:de"
msgid "German"
msgstr ""
#: src/babel/enums.py:53
msgctxt "localenames|locale:el"
msgid "Greek"
msgstr ""
#: src/babel/enums.py:54
msgctxt "localenames|locale:hi"
msgid "Hindi"
msgstr ""
#: src/babel/enums.py:55
msgctxt "localenames|locale:hu"
msgid "Hungarian"
msgstr ""
#: src/babel/enums.py:56
msgctxt "localenames|locale:it"
msgid "Italian"
msgstr ""
#: src/babel/enums.py:57
msgctxt "localenames|locale:ja"
msgid "Japanese"
msgstr ""
#: src/babel/enums.py:58
msgctxt "localenames|locale:ko"
msgid "Korean"
msgstr ""
#: src/babel/enums.py:59
msgctxt "localenames|locale:lt"
msgid "Lithuanian"
msgstr ""
#: src/babel/enums.py:60
msgctxt "localenames|locale:no"
msgid "Norwegian"
msgstr ""
#: src/babel/enums.py:61
msgctxt "localenames|locale:pl"
msgid "Polish"
msgstr ""
#: src/babel/enums.py:62
msgctxt "localenames|locale:pt-BR"
msgid "Brazil Portuguese"
msgstr ""
#: src/babel/enums.py:63
msgctxt "localenames|locale:ro"
msgid "Romanian"
msgstr ""
#: src/babel/enums.py:64
msgctxt "localenames|locale:ru"
msgid "Russian"
msgstr ""
#: src/babel/enums.py:65
msgctxt "localenames|locale:es-ES"
msgid "Spain Spanish"
msgstr ""
#: src/babel/enums.py:66
msgctxt "localenames|locale:sv-SE"
msgid "Swedish"
msgstr ""
#: src/babel/enums.py:67
msgctxt "localenames|locale:th"
msgid "Thai"
msgstr ""
#: src/babel/enums.py:68
msgctxt "localenames|locale:tr"
msgid "Turkish"
msgstr ""
#: src/babel/enums.py:69
msgctxt "localenames|locale:uk"
msgid "Ukrainian"
msgstr ""
#: src/babel/enums.py:70
msgctxt "localenames|locale:vi"
msgid "Vietnamese"
msgstr ""

View File

@@ -0,0 +1,34 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-11-22 13:17+0200\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: bot/modules/sysadmin/exec_cog.py:70
msgid "You cannot use this interface!"
msgstr ""
#: bot/modules/sysadmin/exec_cog.py:252 bot/modules/sysadmin/exec_cog.py:254
msgid "async"
msgstr ""
#: bot/modules/sysadmin/exec_cog.py:253 bot/modules/sysadmin/exec_cog.py:255
msgid "Execute arbitrary code with Exec"
msgstr ""
#: bot/modules/sysadmin/exec_cog.py:265
msgid "eval"
msgstr ""

View File

@@ -0,0 +1,72 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/config/general.py:41
msgctxt "guildset:timezone"
msgid "timezone"
msgstr ""
#: src/modules/config/general.py:44
msgctxt "guildset:timezone|desc"
msgid "Guild timezone for statistics display."
msgstr ""
#: src/modules/config/general.py:48
msgctxt "guildset:timezone|long_desc"
msgid ""
"Guild-wide timezone. Used to determine start of the day for the "
"leaderboards, and as the default statistics timezone for members who have "
"not set one."
msgstr ""
#: src/modules/config/general.py:62
#, possible-python-brace-format
msgctxt "guildset:timezone|response"
msgid "The guild timezone has been set to `{timezone}`."
msgstr ""
#: src/modules/config/general.py:94
msgctxt "cmd:configure_general"
msgid "general"
msgstr ""
#: src/modules/config/general.py:95
msgctxt "cmd:configure_general|desc"
msgid "General configuration panel"
msgstr ""
#: src/modules/config/general.py:129
msgctxt "cmd:configure_general|parse_failure:timezone"
msgid "Could not set the timezone!"
msgstr ""
#: src/modules/config/general.py:150
msgctxt "cmd:configure_general|success"
msgid "Settings Updated!"
msgstr ""
#: src/modules/config/general.py:165
msgctxt "cmd:configure_general|panel|title"
msgid "General Configuration Panel"
msgstr ""
#: src/modules/config/dashboard.py:144
msgctxt "ui:dashboard|menu:config|placeholder"
msgid "Open Configuration Panel"
msgstr ""

View File

@@ -0,0 +1,23 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/core/config.py:28
msgctxt "group:configure"
msgid "configure"
msgstr ""

View File

@@ -0,0 +1,500 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: src/modules/economy/settingui.py:33
msgctxt "ui:economy_config|embed|title"
msgid "Economy Configuration Panel"
msgstr ""
#: src/modules/economy/settingui.py:68
msgctxt "dash:economy|title"
msgid "Economy Configuration ({commands[configure economy]})"
msgstr ""
#. ----- Economy group commands -----
#: src/modules/economy/cog.py:85
msgctxt "cmd:economy"
msgid "economy"
msgstr ""
#: src/modules/economy/cog.py:91
msgctxt "cmd:economy_balance"
msgid "balance"
msgstr ""
#: src/modules/economy/cog.py:94
msgctxt "cmd:economy_balance|desc"
msgid "Display and modify LionCoin balance for members or roles."
msgstr ""
#: src/modules/economy/cog.py:98
msgctxt "cmd:economy_balance|param:target"
msgid "target"
msgstr ""
#: src/modules/economy/cog.py:99
msgctxt "cmd:economy_balance|param:add"
msgid "add"
msgstr ""
#: src/modules/economy/cog.py:100
msgctxt "cmd:economy_balance|param:set"
msgid "set"
msgstr ""
#: src/modules/economy/cog.py:105
msgctxt "cmd:economy_balance|param:target|desc"
msgid ""
"Target user or role to view or update. Use @everyone to update the entire "
"guild."
msgstr ""
#: src/modules/economy/cog.py:109
msgctxt "cmd:economy_balance|param:add|desc"
msgid ""
"Number of LionCoins to add to the target member's balance. May be negative "
"to remove."
msgstr ""
#: src/modules/economy/cog.py:113
msgctxt "cmd:economy_balance|param:set|set"
msgid "New balance to set the target's balance to."
msgstr ""
#: src/modules/economy/cog.py:150
#, possible-python-brace-format
msgctxt "cmd:economy_balance|error:no_target"
msgid "There are no valid members in {role.mention}! It has a total of `0` LC."
msgstr ""
#: src/modules/economy/cog.py:161
msgctxt "cmd:economy_balance|error:target_is_bot"
msgid "Bots cannot have coin balances!"
msgstr ""
#: src/modules/economy/cog.py:172
msgctxt "cmd:economy_balance|error:args"
msgid "You cannot simultaneously `set` and `add` member balances!"
msgstr ""
#: src/modules/economy/cog.py:217
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:success|affected"
msgid "One user was affected."
msgid_plural "**{count}** users were affected."
msgstr[0] ""
msgstr[1] ""
#: src/modules/economy/cog.py:223
#, possible-python-brace-format
msgctxt "cmd:economy_balance|confirm|affected"
msgid "One user will be affected."
msgid_plural "**{count}** users will be affected."
msgstr[0] ""
msgstr[1] ""
#: src/modules/economy/cog.py:230
msgctxt "cmd:economy_balance|confirm|button:confirm"
msgid "Yes, adjust balances"
msgstr ""
#: src/modules/economy/cog.py:234
msgctxt "cmd:economy_balance|confirm|button:cancel"
msgid "No, cancel"
msgstr ""
#: src/modules/economy/cog.py:241
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:success_set|desc"
msgid ""
"All members of **{guild_name}** have had their balance set to {coin_emoji}"
"**{amount}**."
msgstr ""
#: src/modules/economy/cog.py:250
#, possible-python-brace-format
msgctxt "cmd:economy_balance|confirm_set|desc"
msgid ""
"Are you sure you want to set everyone's balance to {coin_emoji}**{amount}**?"
msgstr ""
#: src/modules/economy/cog.py:258
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:success_set|desc"
msgid ""
"All members of {role_mention} have had their balance set to {coin_emoji}"
"**{amount}**."
msgstr ""
#: src/modules/economy/cog.py:267
#, possible-python-brace-format
msgctxt "cmd:economy_balance|confirm_set|desc"
msgid ""
"Are you sure you want to set the balance of everyone with {role_mention} to "
"{coin_emoji}**{amount}**?"
msgstr ""
#: src/modules/economy/cog.py:284
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:success_set|desc"
msgid "{user_mention} now has a balance of {coin_emoji}**{amount}**."
msgstr ""
#: src/modules/economy/cog.py:300
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:success_add|desc"
msgid ""
"All members of **{guild_name}** have been given {coin_emoji}**{amount}**."
msgstr ""
#: src/modules/economy/cog.py:309
#, possible-python-brace-format
msgctxt "cmd:economy_balance|confirm_add|desc"
msgid "Are you sure you want to add **{amount}** to everyone's balance?"
msgstr ""
#: src/modules/economy/cog.py:317
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:success_add|desc"
msgid "All members of {role_mention} have been given {coin_emoji}**{amount}**."
msgstr ""
#: src/modules/economy/cog.py:326
#, possible-python-brace-format
msgctxt "cmd:economy_balance|confirm_add|desc"
msgid ""
"Are you sure you want to add {coin_emoji}**{amount}** to everyone in "
"{role_mention}?"
msgstr ""
#: src/modules/economy/cog.py:348
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:success_add|desc"
msgid ""
"{user_mention} was given {coin_emoji}**{amount}**, and now has a balance of "
"{coin_emoji}**{new_amount}**."
msgstr ""
#: src/modules/economy/cog.py:359
msgctxt "cmd:economy_balance|embed:success|title"
msgid "Account successfully updated."
msgid_plural "Accounts successfully updated."
msgstr[0] ""
msgstr[1] ""
#: src/modules/economy/cog.py:387
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:role_lb|author"
msgid "Balance sheet for {name}"
msgstr ""
#: src/modules/economy/cog.py:393
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:role_lb|header"
msgid "This server has a total balance of {coin_emoji}**{total}**."
msgstr ""
#: src/modules/economy/cog.py:401
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:role_lb|header"
msgid ""
"{role_mention} has `{count}` members with non-zero balance, with a total "
"balance of {coin_emoji}**{total}**."
msgstr ""
#: src/modules/economy/cog.py:413
msgctxt "cmd:economy_balance|embed:role_lb|row_format"
msgid "`[{pos:>{numwidth}}]` | `{coins:>{coinwidth}} LC` | {mention}"
msgstr ""
#: src/modules/economy/cog.py:441
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:role_lb|footer"
msgid "Page {page}/{total}"
msgstr ""
#: src/modules/economy/cog.py:451
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:role_lb|header"
msgid "This server has a total balance of {coin_emoji}**0**."
msgstr ""
#: src/modules/economy/cog.py:458
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:role_lb|header"
msgid "The role {role_mention} has a total balance of {coin_emoji}**0**."
msgstr ""
#: src/modules/economy/cog.py:478
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:single|desc"
msgid "{mention} currently owns {coin_emoji} {coins}."
msgstr ""
#: src/modules/economy/cog.py:488
#, possible-python-brace-format
msgctxt "cmd:economy_balance|embed:single|author"
msgid "Balance statement for {user}"
msgstr ""
#: src/modules/economy/cog.py:497
msgctxt "cmd:economy_reset"
msgid "reset"
msgstr ""
#: src/modules/economy/cog.py:500
msgctxt "cmd:economy_reset|desc"
msgid ""
"Reset the coin balance for a target user or role. (See also \"economy "
"balance\".)"
msgstr ""
#: src/modules/economy/cog.py:504
msgctxt "cmd:economy_reset|param:target"
msgid "target"
msgstr ""
#: src/modules/economy/cog.py:509
msgctxt "cmd:economy_reset|param:target|desc"
msgid ""
"Target user or role to view or update. Use @everyone to reset the entire "
"guild."
msgstr ""
#: src/modules/economy/cog.py:535
#, possible-python-brace-format
msgctxt "cmd:economy_reset|confirm:reset_guild|desc"
msgid ""
"Are you sure you want to reset the coin balance for everyone in "
"**{guild_name}**?\n"
"*This is not reversible!*"
msgstr ""
#: src/modules/economy/cog.py:543
msgctxt "cmd:economy_reset|confirm:reset_guild|button:confirm"
msgid "Yes, reset the economy"
msgstr ""
#: src/modules/economy/cog.py:547
msgctxt "cmd:economy_reset|confirm:reset_guild|button:cancel"
msgid "Cancel reset"
msgstr ""
#: src/modules/economy/cog.py:563
#, possible-python-brace-format
msgctxt "cmd:economy_reset|embed:success_guild|desc"
msgid ""
"Everyone in **{guild_name}** has had their balance reset to {coin_emoji}"
"**{amount}**."
msgstr ""
#: src/modules/economy/cog.py:580
#, possible-python-brace-format
msgctxt "cmd:economy_reset|error:no_target|desc"
msgid "The role {mention} has no members to reset!"
msgstr ""
#: src/modules/economy/cog.py:590
#, possible-python-brace-format
msgctxt "cmd:economy_reset|confirm:reset_role|desc"
msgid ""
"Are you sure you want to reset the balance for everyone in {mention}?\n"
"**{count}** members will be affected."
msgstr ""
#: src/modules/economy/cog.py:599
msgctxt "cmd:economy_reset|confirm:reset_role|button:confirm"
msgid "Yes, complete economy reset"
msgstr ""
#: src/modules/economy/cog.py:603
msgctxt "cmd:economy_reset|confirm:reset_role|button:cancel"
msgid "Cancel"
msgstr ""
#: src/modules/economy/cog.py:620
#, possible-python-brace-format
msgctxt "cmd:economy_reset|embed:success_role|desc"
msgid ""
"Everyone in {role_mention} has had their coin balance reset to {coin_emoji}"
"**{amount}**."
msgstr ""
#: src/modules/economy/cog.py:642
#, possible-python-brace-format
msgctxt "cmd:economy_reset|embed:success_user|desc"
msgid "{mention}'s balance has been reset to {coin_emoji}**{amount}**."
msgstr ""
#: src/modules/economy/cog.py:652
msgctxt "cmd:send"
msgid "send"
msgstr ""
#: src/modules/economy/cog.py:655
msgctxt "cmd:send|desc"
msgid "Gift the target user a certain number of LionCoins."
msgstr ""
#: src/modules/economy/cog.py:659
msgctxt "cmd:send|param:target"
msgid "target"
msgstr ""
#: src/modules/economy/cog.py:660
msgctxt "cmd:send|param:amount"
msgid "amount"
msgstr ""
#: src/modules/economy/cog.py:661
msgctxt "cmd:send|param:note"
msgid "note"
msgstr ""
#: src/modules/economy/cog.py:664
msgctxt "cmd:send|param:target|desc"
msgid "User to send the gift to"
msgstr ""
#: src/modules/economy/cog.py:665
msgctxt "cmd:send|param:amount|desc"
msgid "Number of coins to send"
msgstr ""
#: src/modules/economy/cog.py:666
msgctxt "cmd:send|param:note|desc"
msgid "Optional note to add to the gift."
msgstr ""
#: src/modules/economy/cog.py:690
msgctxt "cmd:send|error:not_allowed"
msgid "Sorry, this server has disabled LionCoin transfers!"
msgstr ""
#: src/modules/economy/cog.py:713
#, possible-python-brace-format
msgctxt "cmd:send|error:insufficient"
msgid ""
"You do not have enough lioncoins to do this!\n"
"`Current Balance:` {coin_emoji}{balance}"
msgstr ""
#: src/modules/economy/cog.py:733
#, possible-python-brace-format
msgctxt "cmd:send|embed:gift|title"
msgid "{user} sent you a gift!"
msgstr ""
#: src/modules/economy/cog.py:737
#, possible-python-brace-format
msgctxt "cmd:send|embed:gift|desc"
msgid "{mention} sent you {coin_emoji}**{amount}**."
msgstr ""
#: src/modules/economy/cog.py:762
#, possible-python-brace-format
msgctxt "cmd:send|embed:ack|desc"
msgid ""
"**{coin_emoji}{amount}** has been deducted from your balance and sent to "
"{mention}!"
msgstr ""
#: src/modules/economy/cog.py:772
msgctxt "cmd:send|embed:ack|desc|error:unreachable"
msgid ""
"Unfortunately, I was not able to message the recipient. Perhaps they have me "
"blocked?"
msgstr ""
#: src/modules/economy/cog.py:784
msgctxt "cmd:configure_economy"
msgid "economy"
msgstr ""
#: src/modules/economy/cog.py:787
msgctxt "cmd:configure_economy|desc"
msgid "Configure LionCoin Economy"
msgstr ""
#: src/modules/economy/settings.py:35
msgctxt "guildset:coins_per_xp"
msgid "coins_per_100xp"
msgstr ""
#: src/modules/economy/settings.py:38
msgctxt "guildset:coins_per_xp|desc"
msgid "How many LionCoins to reward members per 100 XP they earn."
msgstr ""
#: src/modules/economy/settings.py:42
msgctxt "guildset:coins_per_xp|long_desc"
msgid ""
"Members will be rewarded with this many LionCoins for every 100 XP they earn."
msgstr ""
#: src/modules/economy/settings.py:46
msgctxt "guildset:coins_per_xp|long_desc"
msgid "The number of coins to reward per 100 XP."
msgstr ""
#: src/modules/economy/settings.py:59
#, possible-python-brace-format
msgctxt "guildset:coins_per_xp|set_response"
msgid ""
"For every **100** XP they earn, members will now be given {coin}**{amount}**."
msgstr ""
#: src/modules/economy/settings.py:70
msgctxt "guildset:allow_transfers"
msgid "allow_transfers"
msgstr ""
#: src/modules/economy/settings.py:73
msgctxt "guildset:allow_transfers|desc"
msgid "Whether to allow members to transfer LionCoins to each other."
msgstr ""
#: src/modules/economy/settings.py:77
msgctxt "guildset:allow_transfers|long_desc"
msgid ""
"If disabled, members will not be able to transfer LionCoins to each other."
msgstr ""
#: src/modules/economy/settings.py:85
msgctxt "guildset:allow_transfers|outputs:true"
msgid "Enabled (Coin transfers allowed.)"
msgstr ""
#: src/modules/economy/settings.py:86
msgctxt "guildset:allow_transfers|outputs:false"
msgid "Disabled (Coin transfers not allowed.)"
msgstr ""
#: src/modules/economy/settings.py:102
#, possible-python-brace-format
msgctxt "guildset:allow_transfers|set_response|set:true"
msgid "Members will now be able to use {send_cmd} to transfer {coin}"
msgstr ""
#: src/modules/economy/settings.py:107
#, possible-python-brace-format
msgctxt "guildset:allow_transfers|set_response|set:false"
msgid "Members will not be able to use {send_cmd} to transfer {coin}"
msgstr ""

View File

@@ -0,0 +1,81 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/sysadmin/exec_cog.py:252
msgid "async"
msgstr ""
#: src/modules/sysadmin/exec_cog.py:253
msgid "Execute arbitrary code with Exec"
msgstr ""
#: src/modules/sysadmin/exec_cog.py:262
msgctxt "command"
msgid "eval"
msgstr ""
#: src/modules/sysadmin/exec_cog.py:263
msgctxt "command:eval"
msgid "Execute arbitrary code with Eval"
msgstr ""
#: src/modules/sysadmin/exec_cog.py:266
msgctxt "command:eval|param:string"
msgid "Code to evaluate."
msgstr ""
#: src/modules/sysadmin/exec_cog.py:273
msgctxt "command"
msgid "asyncall"
msgstr ""
#: src/modules/sysadmin/exec_cog.py:274
msgctxt "command:asyncall|desc"
msgid "Execute arbitrary code on all shards."
msgstr ""
#: src/modules/sysadmin/exec_cog.py:277
msgctxt "command:asyncall|param:string"
msgid "Cross-shard code to execute. Cannot reference ctx!"
msgstr ""
#: src/modules/sysadmin/exec_cog.py:278
msgctxt "command:asyncall|param:target"
msgid "Target shard app name, see autocomplete for options."
msgstr ""
#: src/modules/sysadmin/exec_cog.py:333
msgid "reload"
msgstr ""
#: src/modules/sysadmin/exec_cog.py:334
msgid "Reload a given LionBot extension. Launches an ExecUI."
msgstr ""
#: src/modules/sysadmin/exec_cog.py:337
msgid "Name of the extesion to reload. See autocomplete for options."
msgstr ""
#: src/modules/sysadmin/exec_cog.py:369
msgid "shutdown"
msgstr ""
#: src/modules/sysadmin/exec_cog.py:370
msgid "Shutdown (or restart) the client."
msgstr ""

View File

@@ -0,0 +1,101 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/gui/cards/goals.py:95
msgctxt "skin:goals|goal:tasks|name"
msgid "TASKS DONE"
msgstr ""
#: src/gui/cards/goals.py:99
msgctxt "skin:goals|goal:tasks|goal"
msgid "GOAL: "
msgstr ""
#: src/gui/cards/goals.py:125
msgctxt "skin:goals|goal:attendance|name"
msgid ""
"ATTENDANCE\n"
"RATE"
msgstr ""
#: src/gui/cards/goals.py:139
msgctxt "skin:goals|mode:study|goal:middle|above"
msgid "STUDIED"
msgstr ""
#: src/gui/cards/goals.py:143
msgctxt "skin:goals|mode:study|goal:middle|below"
msgid "HOURS"
msgstr ""
#: src/gui/cards/goals.py:147
msgctxt "skin:goals|mode:voice|goal:middle|above"
msgid "CHATTED"
msgstr ""
#: src/gui/cards/goals.py:151
msgctxt "skin:goals|mode:voice|goal:middle|below"
msgid "HOURS"
msgstr ""
#: src/gui/cards/goals.py:155
msgctxt "skin:goals|mode:text|goal:middle|above"
msgid "SENT"
msgstr ""
#: src/gui/cards/goals.py:159
msgctxt "skin:goals|mode:text|goal:middle|below"
msgid "MESSAGES"
msgstr ""
#: src/gui/cards/goals.py:163
msgctxt "skin:goals|mode:anki|goal:middle|above"
msgid "REVIEWED"
msgstr ""
#: src/gui/cards/goals.py:167
msgctxt "skin:goals|mode:anki|goal:middle|below"
msgid "CARDS"
msgstr ""
#: src/gui/cards/goals.py:228
#, possible-python-brace-format
msgctxt "skin:goals|footer"
msgid "As of {day} {month} • {name}"
msgstr ""
#: src/gui/cards/goals.py:240
msgctxt "ui:goals|weekly|title"
msgid "WEEKLY STATISTICS"
msgstr ""
#: src/gui/cards/goals.py:244
msgctxt "ui:goals|weekly|task_header"
msgid "GOALS OF THE WEEK"
msgstr ""
#: src/gui/cards/goals.py:254
msgctxt "ui:goals|monthly|title"
msgid "MONTHLY STATISTICS"
msgstr ""
#: src/gui/cards/goals.py:258
msgctxt "ui:goals|monthly|task_header"
msgid "GOALS OF THE MONTH"
msgstr ""

View File

@@ -0,0 +1,91 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/gui/cards/leaderboard.py:69
msgctxt "skin:leaderboard|mode:study|header_text"
msgid "STUDY TIME LEADERBOARD"
msgstr ""
#: src/gui/cards/leaderboard.py:73
msgctxt "skin:leaderboard|mode:text|header_text"
msgid "MESSAGE LEADERBOARD"
msgstr ""
#: src/gui/cards/leaderboard.py:77
msgctxt "skin:leaderboard|mode:voice|header_text"
msgid "VOICE LEADERBOARD"
msgstr ""
#: src/gui/cards/leaderboard.py:81
msgctxt "skin:leaderboard|mode:anki|header_text"
msgid "ANKI REVIEW LEADERBOARD"
msgstr ""
#: src/gui/cards/leaderboard.py:99
msgctxt "skin:leaderboard|field:subheader_text"
msgid "SERVER: "
msgstr ""
#: src/gui/cards/leaderboard.py:129
#, possible-python-brace-format
msgctxt "skin:leaderboard|mode:study|top_hours_text"
msgid "{amount} hours"
msgstr ""
#: src/gui/cards/leaderboard.py:133
#, possible-python-brace-format
msgctxt "skin:leaderboard|mode:text|top_hours_text"
msgid "{amount} XP"
msgstr ""
#: src/gui/cards/leaderboard.py:137
#, possible-python-brace-format
msgctxt "skin:leaderboard|mode:voice|top_hours_text"
msgid "{amount} hours"
msgstr ""
#: src/gui/cards/leaderboard.py:141
#, possible-python-brace-format
msgctxt "skin:leaderboard|mode:anki|top_hours_text"
msgid "{amount} cards"
msgstr ""
#: src/gui/cards/leaderboard.py:168
#, possible-python-brace-format
msgctxt "skin:leaderboard|mode:study|entry_hours_text"
msgid "{HH:.02d}:{MM:.02d}"
msgstr ""
#: src/gui/cards/leaderboard.py:172
#, possible-python-brace-format
msgctxt "skin:leaderboard|mode:text|entry_hours_text"
msgid "{amount} XP"
msgstr ""
#: src/gui/cards/leaderboard.py:176
#, possible-python-brace-format
msgctxt "skin:leaderboard|mode:voice|entry_hours_text"
msgid "{HH}:{MM}"
msgstr ""
#: src/gui/cards/leaderboard.py:180
#, possible-python-brace-format
msgctxt "skin:leaderboard|mode:anki|entry_hours_text"
msgid "{amount} cards"
msgstr ""

View File

@@ -0,0 +1,122 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/core/setting_types.py:31
msgctxt "settype:coin|accepts"
msgid "A positive integral number of coins."
msgstr ""
#: src/core/setting_types.py:47
msgctxt "settype:coin|parse|error:notinteger"
msgid "The coin quantity must be a positive integer!"
msgstr ""
#: src/core/setting_types.py:54
msgctxt "settype:coin|parse|error:too_large"
msgid "Provided number of coins was too high!"
msgstr ""
#: src/core/setting_types.py:60
msgctxt "settype:coin|parse|error:too_large"
msgid "Provided number of coins was too low!"
msgstr ""
#: src/core/setting_types.py:71
#, possible-python-brace-format
msgctxt "settype:coin|formatted"
msgid "{coin}**{amount}**"
msgstr ""
#: src/core/setting_types.py:87
msgctxt "settype:message|accepts"
msgid "JSON formatted raw message data"
msgstr ""
#: src/core/setting_types.py:102
msgctxt "settype:message|download|error:not_json"
msgid "The attached message data is not a JSON file!"
msgstr ""
#: src/core/setting_types.py:107
msgctxt "settype:message|download|error:size"
msgid "The attached message data is too large!"
msgstr ""
#: src/core/setting_types.py:116
msgctxt "settype:message|download|error:decoding"
msgid ""
"Could not decode the message data. Please ensure it is saved with the "
"`UTF-8` encoding."
msgstr ""
#: src/core/setting_types.py:173
#, possible-python-brace-format
msgctxt "settype:message|error_suffix"
msgid ""
"You can view, test, and fix your embed using the online [embed builder]"
"({link})."
msgstr ""
#: src/core/setting_types.py:185
#, possible-python-brace-format
msgctxt "settype:message|error:invalid_json"
msgid ""
"The provided message data was not a valid JSON document!\n"
"`{error}`"
msgstr ""
#: src/core/setting_types.py:193
msgctxt "settype:message|error:json_missing_keys"
msgid ""
"Message data must be a JSON object with at least one of the following "
"fields: `content`, `embed`, `embeds`"
msgstr ""
#: src/core/setting_types.py:202
msgctxt "settype:message|error:json_embed_type"
msgid "`embed` field must be a valid JSON object."
msgstr ""
#: src/core/setting_types.py:210
msgctxt "settype:message|error:json_embeds_type"
msgid "`embeds` field must be a list."
msgstr ""
#: src/core/setting_types.py:217
msgctxt "settype:message|error:json_embed_embeds"
msgid "Message data cannot include both `embed` and `embeds`."
msgstr ""
#: src/core/setting_types.py:225
msgctxt "settype:message|error:json_content_type"
msgid "`content` field must be a string."
msgstr ""
#: src/core/setting_types.py:241
#, possible-python-brace-format
msgctxt "ui:settype:message|error:embed_conversion"
msgid ""
"Could not parse the message embed data.\n"
"**Error:** `{exception}`"
msgstr ""
#: src/core/setting_types.py:269
msgctxt "settype:message|format:too_long"
msgid "Too long to display! See Preview."
msgstr ""

View File

@@ -0,0 +1,382 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/member_admin/settingui.py:57
msgctxt "ui:memberadmin|menu:greetch|placeholder"
msgid "Select Greeting Channel"
msgstr ""
#: src/modules/member_admin/settingui.py:86
msgctxt "ui:memberadmin|menu:autoroles|placeholder"
msgid "Select Autoroles"
msgstr ""
#: src/modules/member_admin/settingui.py:115
msgctxt "ui:memberadmin|menu:bot_autoroles|placeholder"
msgid "Select Bot Autoroles"
msgstr ""
#: src/modules/member_admin/settingui.py:156
msgctxt "ui:member_admin|button:greet_msg|label"
msgid "Greeting Msg"
msgstr ""
#: src/modules/member_admin/settingui.py:205
msgctxt "ui:memberadmin|button:return_msg|label"
msgid "Returning Msg"
msgstr ""
#: src/modules/member_admin/settingui.py:213
msgctxt "ui:memberadmin|embed|title"
msgid "Member Admin Configuration Panel"
msgstr ""
#: src/modules/member_admin/settingui.py:257
msgctxt "dash:member_admin|title"
msgid "Greetings and Initial Roles ({commands[configure welcome]})"
msgstr ""
#: src/modules/member_admin/settingui.py:261
msgctxt "dash:member_admin|dropdown|placeholder"
msgid "Greetings and Initial Roles Panel"
msgstr ""
#: src/modules/member_admin/cog.py:233
msgctxt "cmd:resetmember"
msgid "resetmember"
msgstr ""
#: src/modules/member_admin/cog.py:236
msgctxt "cmd:resetmember|desc"
msgid "Reset (server-associated) member data for the target member or user."
msgstr ""
#: src/modules/member_admin/cog.py:240
msgctxt "cmd:resetmember|param:target"
msgid "member_to_reset"
msgstr ""
#: src/modules/member_admin/cog.py:241
msgctxt "cmd:resetmember|param:saved_roles"
msgid "saved_roles"
msgstr ""
#: src/modules/member_admin/cog.py:246
msgctxt "cmd:resetmember|param:target|desc"
msgid "Choose the member (current or past) you want to reset."
msgstr ""
#: src/modules/member_admin/cog.py:250
msgctxt "cmd:resetmember|param:saved_roles|desc"
msgid ""
"Clear the saved roles for this member, so their past roles are not restored "
"on rejoin."
msgstr ""
#: src/modules/member_admin/cog.py:276
#, possible-python-brace-format
msgctxt "cmd:resetmember|reset:saved_roles|success"
msgid ""
"The saved roles for {target} have been reset. They will not regain their "
"roles if they rejoin."
msgstr ""
#: src/modules/member_admin/cog.py:284
msgctxt "cmd:resetmember|error:nothing_to_do"
msgid "No reset operation selected, nothing to do."
msgstr ""
#: src/modules/member_admin/cog.py:300
msgctxt "cmd:configure_welcome"
msgid "welcome"
msgstr ""
#: src/modules/member_admin/cog.py:303
msgctxt "cmd:configure_welcome|desc"
msgid "Configure new member greetings and roles."
msgstr ""
#: src/modules/member_admin/settings.py:20
msgctxt "guildset:greeting_message|formatkey:mention"
msgid "Mention the new member."
msgstr ""
#: src/modules/member_admin/settings.py:22
msgctxt "guildset:greeting_message|formatkey:user_name"
msgid "Display name of the new member."
msgstr ""
#: src/modules/member_admin/settings.py:24
msgctxt "guildset:greeting_message|formatkey:user_avatar"
msgid "Avatar url of the new member."
msgstr ""
#: src/modules/member_admin/settings.py:26
msgctxt "guildset:greeting_message|formatkey:guild_name"
msgid "Name of this server."
msgstr ""
#: src/modules/member_admin/settings.py:28
msgctxt "guildset:greeting_message|formatkey:guild_icon"
msgid "Server icon url."
msgstr ""
#: src/modules/member_admin/settings.py:30
msgctxt "guildset:greeting_message|formatkey:studying_count"
msgid "Number of current voice channel members."
msgstr ""
#: src/modules/member_admin/settings.py:32
msgctxt "guildset:greeting_message|formatkey:member_count"
msgid "Number of members in the server."
msgstr ""
#: src/modules/member_admin/settings.py:40
msgctxt "guildset:greeting_channel"
msgid "welcome_channel"
msgstr ""
#: src/modules/member_admin/settings.py:43
msgctxt "guildset:greeting_channel|desc"
msgid "Channel in which to welcome new members to the server."
msgstr ""
#: src/modules/member_admin/settings.py:47
msgctxt "guildset:greeting_channel|long_desc"
msgid ""
"New members will be sent the configured `welcome_message` in this channel, "
"and returning members will be sent the configured `returning_message`. Unset "
"to send these message via direct message."
msgstr ""
#: src/modules/member_admin/settings.py:53
msgctxt "guildset:greeting_channel|accepts"
msgid "Name or id of the greeting channel, or 0 for DM."
msgstr ""
#: src/modules/member_admin/settings.py:67
msgctxt "guildset:greeting_channel|set_response:unset"
msgid "Welcome messages will now be sent via direct message."
msgstr ""
#: src/modules/member_admin/settings.py:72
#, possible-python-brace-format
msgctxt "guildset:greeting_channel|set_response:set"
msgid "Welcome messages will now be sent to {channel}"
msgstr ""
#: src/modules/member_admin/settings.py:84
msgctxt "guildset:greeting_channel|formmatted:unset"
msgid "Direct Message"
msgstr ""
#: src/modules/member_admin/settings.py:91
msgctxt "guildset:greeting_message"
msgid "welcome_message"
msgstr ""
#: src/modules/member_admin/settings.py:95
msgctxt "guildset:greeting_message|desc"
msgid "Custom message used to greet new members when they join the server."
msgstr ""
#: src/modules/member_admin/settings.py:99
msgctxt "guildset:greeting_message|long_desc"
msgid ""
"When set, this message will be sent to the `welcome_channel` when a *new* "
"member joins the server. If not set, no message will be sent."
msgstr ""
#: src/modules/member_admin/settings.py:104
msgctxt "guildset:greeting_message|accepts"
msgid "JSON formatted greeting message data"
msgstr ""
#: src/modules/member_admin/settings.py:108
msgctxt "guildset:greeting_message|default"
msgid ""
"\n"
" {\n"
" \"embed\": {\n"
" \"title\": \"Welcome {user_name}!\",\n"
" \"thumbnail\": {\"url\": \"{user_avatar}\"},\n"
" \"description\": \"Welcome to **{guild_name}**!\",\n"
" \"footer\": {\n"
" \"text\": \"You are the {member_count}th member!\"\n"
" },\n"
" \"color\": 15695665\n"
" }\n"
" }\n"
" "
msgstr ""
#: src/modules/member_admin/settings.py:136
msgctxt "guildset:greeting_message|set_response:unset"
msgid "Welcome message unset! New members will not be greeted."
msgstr ""
#: src/modules/member_admin/settings.py:141
msgctxt "guildset:greeting_message|set_response:set"
msgid "The welcome message has been updated."
msgstr ""
#: src/modules/member_admin/settings.py:153
msgctxt "guildset:greeting_message|formmatted:unset"
msgid "Not set, members will not be welcomed."
msgstr ""
#: src/modules/member_admin/settings.py:200
msgctxt "guildset:greeting_message|embed_field|formatkeys|explanation"
msgid "The following placeholders will be substituted with their values."
msgstr ""
#: src/modules/member_admin/settings.py:203
msgctxt "guildset:greeting_message|embed_field|formatkeys|name"
msgid "Placeholders"
msgstr ""
#: src/modules/member_admin/settings.py:213
msgctxt "guildset:returning_message"
msgid "returning_message"
msgstr ""
#: src/modules/member_admin/settings.py:217
msgctxt "guildset:returning_message|desc"
msgid ""
"Custom message used to greet returning members when they rejoin the server."
msgstr ""
#: src/modules/member_admin/settings.py:221
msgctxt "guildset:returning_message|long_desc"
msgid ""
"When set, this message will be sent to the `welcome_channel` when a member "
"*returns* to the server. If not set, no message will be sent."
msgstr ""
#: src/modules/member_admin/settings.py:226
msgctxt "guildset:returning_message|accepts"
msgid "JSON formatted returning message data"
msgstr ""
#: src/modules/member_admin/settings.py:230
msgctxt "guildset:returning_message|default"
msgid ""
"\n"
" {\n"
" \"embed\": {\n"
" \"title\": \"Welcome Back {user_name}!\",\n"
" \"thumbnail\": {\"url\": \"{User_avatar}\"},\n"
" \"description\": \"Welcome back to **{guild_name}**!"
"\\nYou were last seen <t:{last_time}:R>.\",\n"
" \"color\": 15695665\n"
" }\n"
" }\n"
" "
msgstr ""
#: src/modules/member_admin/settings.py:247
msgctxt "guildset:returning_message|formatkey:last_time"
msgid "Unix timestamp of the last time the member was seen in the server."
msgstr ""
#: src/modules/member_admin/settings.py:258
msgctxt "guildset:returning_message|set_response:unset"
msgid "Returning member greeting unset! Will use `welcome_message` if set."
msgstr ""
#: src/modules/member_admin/settings.py:263
msgctxt "guildset:greeting_message|set_response:set"
msgid "The returning member greeting has been updated."
msgstr ""
#: src/modules/member_admin/settings.py:275
msgctxt "guildset:greeting_message|formmatted:unset"
msgid "Not set, will use the `welcome_message` if set."
msgstr ""
#: src/modules/member_admin/settings.py:325
msgctxt "guildset:returning_message|embed_field|formatkeys|explanation"
msgid "In *addition* to the placeholders supported by `welcome_message`"
msgstr ""
#: src/modules/member_admin/settings.py:328
msgctxt "guildset:returning_message|embed_field|formatkeys|"
msgid "Placeholders"
msgstr ""
#: src/modules/member_admin/settings.py:339
msgctxt "guildset:autoroles"
msgid "autoroles"
msgstr ""
#: src/modules/member_admin/settings.py:343
msgctxt "guildset:autoroles|desc"
msgid "Roles given to new members when they join the server."
msgstr ""
#: src/modules/member_admin/settings.py:347
msgctxt "guildset:autoroles|long_desc"
msgid ""
"These roles will be given when a member joins the server. If "
"`role_persistence` is enabled, these roles will *not* be given to a "
"returning member."
msgstr ""
#: src/modules/member_admin/settings.py:361
msgctxt "guildset:bot_autoroles"
msgid "bot_autoroles"
msgstr ""
#: src/modules/member_admin/settings.py:365
msgctxt "guildset:bot_autoroles|desc"
msgid "Roles given to new bots when they join the server."
msgstr ""
#: src/modules/member_admin/settings.py:369
msgctxt "guildset:bot_autoroles|long_desc"
msgid "These roles will be given when a bot joins the server."
msgstr ""
#: src/modules/member_admin/settings.py:382
msgctxt "guildset:role_persistence"
msgid "role_persistence"
msgstr ""
#: src/modules/member_admin/settings.py:385
msgctxt "guildset:role_persistence|desc"
msgid "Whether member roles should be restored on rejoin."
msgstr ""
#: src/modules/member_admin/settings.py:389
msgctxt "guildset:role_persistence|long_desc"
msgid ""
"If enabled, member roles will be stored when they leave the server, and then "
"restored when they rejoin (instead of giving `autoroles`). Note that this "
"may conflict with other bots who manage join roles."
msgstr ""
#: src/modules/member_admin/settings.py:405
msgctxt "guildset:role_persistence|set_response:off"
msgid "Roles will not be restored when members rejoin."
msgstr ""
#: src/modules/member_admin/settings.py:410
msgctxt "guildset:greeting_message|set_response:on"
msgid "Roles will now be restored when members rejoin."
msgstr ""

113
locales/templates/meta.pot Normal file
View File

@@ -0,0 +1,113 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/meta/cog.py:23
msgctxt "cmd:help"
msgid "help"
msgstr ""
#: src/modules/meta/cog.py:26
msgctxt "cmd:help|desc"
msgid "See a brief summary of my commands and features."
msgstr ""
#: src/modules/meta/help_sections.py:40
#, possible-python-brace-format
msgctxt "helptext|level:member|mode:study"
msgid ""
"\n"
" {config_emoji} Personal Configuration\n"
" *View or adjust personal settings with the {cmd_my} command.*\n"
" {cmd_my_timezone}: Timezone used to display your stats and set "
"reminders.\n"
" {cmd_my_language}: Your preferred language for commands and "
"interactions.\n"
"\n"
"\n"
" {stats_emoji} Statistics\n"
" *Study in voice channels to earn activity ranks and compete on the "
"leaderboard!*\n"
" {cmd_me}: View your personal study profile and set your profile tags.\n"
" {cmd_stats}: View study statistics for the current and past weeks or "
"months.\n"
" {cmd_ranks}: See the list of activity ranks.\n"
" {cmd_leaderboard}: Compete with other members on the server "
"leaderboards.\n"
"\n"
"\n"
" {coin} Economy\n"
" *Earn coins through studying, then spend them on some well deserved "
"rewards!*\n"
" {cmd_send}: Send your {coin} to another member.\n"
" {cmd_shop}: Purchase server roles with your {coin}.\n"
" {cmd_room}: Rent a private voice channel for you and your friends.\n"
"\n"
"\n"
" {utility_emoji} Utilities\n"
" *Some other utilities to help you stay productive while studying!*\n"
" {cmd_reminders}: Ask me to remind you about that important task!\n"
" {cmd_tasklist}: Create tasks and feel the satisfaction of checking them "
"off.\n"
" {cmd_timers}: Stay productive using the classic *pomodoro technique*!\n"
" {cmd_schedule}: Schedule a shared study session and keep yourself "
"accountable!\n"
" "
msgstr ""
#: src/modules/meta/help_sections.py:73
#, possible-python-brace-format
msgctxt "helptext|page:admin"
msgid ""
"\n"
" Use {cmd_dashboard} to see an overview of the server configuration, "
"and quickly jump to the feature configuration panels to modify settings.\n"
"\n"
" Configuration panels are also accessible directly through the `/"
"configure` commands and most features may be configured through these "
"commands.\n"
"\n"
" Other relevant commands for guild configuration below:\n"
" `/editshop`: Add/Edit/Remove colour roles from the {coin} shop.\n"
" `/ranks`: Add/Edit/Remove activity ranks.\n"
" `/timer admin`: Add/Edit/Remove Pomodoro timers in voice channels.\n"
" `/rolemenus`: Allow members to equip roles from customisable messages.\n"
" `/economy balance`: Display and modify LionCoin balance for members and "
"roles.\n"
" "
msgstr ""
#: src/modules/meta/help_sections.py:112
msgctxt "helptext|level:member|title"
msgid "Command Summary (for members)"
msgstr ""
#: src/modules/meta/help_sections.py:140
msgctxt "helptext|level:admin|title"
msgid "Command Summary (for server admins)"
msgstr ""
#: src/modules/meta/helpui.py:47
msgctxt "ui:help|button:member_page|label"
msgid "Member Page"
msgstr ""
#: src/modules/meta/helpui.py:59
msgctxt "ui:help|button:admin_page|label"
msgid "Admin Page"
msgstr ""

View File

@@ -0,0 +1,257 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/moderation/settingui.py:53
msgctxt "ui:moderation_config|menu:ticket_log|placeholder"
msgid "Select Ticket Log"
msgstr ""
#: src/modules/moderation/settingui.py:78
msgctxt "ui:moderation_config|menu:alert_channel|placeholder"
msgid "Select Alert Channel"
msgstr ""
#: src/modules/moderation/settingui.py:103
msgctxt "ui:moderation_config|menu:modrole|placeholder"
msgid "Select Moderator Role"
msgstr ""
#: src/modules/moderation/settingui.py:111
msgctxt "ui:moderation_config|embed|title"
msgid "Moderation Configuration Panel"
msgstr ""
#: src/modules/moderation/settingui.py:150
msgctxt "dash:moderation|title"
msgid "Moderation Settings ({commands[configure moderation]})"
msgstr ""
#: src/modules/moderation/settingui.py:154
msgctxt "dash:moderation|dropdown|placeholder"
msgid "Moderation Panel"
msgstr ""
#: src/modules/moderation/cog.py:136
msgctxt "cmd:configure_moderation"
msgid "moderation"
msgstr ""
#: src/modules/moderation/cog.py:139
msgctxt "cmd:configure_moderation|desc"
msgid "Configure general moderation settings."
msgstr ""
#: src/modules/moderation/ticket.py:147
#, possible-python-brace-format
msgctxt "ticket|title:auto"
msgid "Ticket #{ticketid} | {state} | {type}[Auto] | {name}"
msgstr ""
#: src/modules/moderation/ticket.py:152
#, possible-python-brace-format
msgctxt "ticket|title:manual"
msgid "Ticket #{ticketid} | {state} | {type} | {name}"
msgstr ""
#: src/modules/moderation/ticket.py:168
msgctxt "ticket|field:target|name"
msgid "Target"
msgstr ""
#: src/modules/moderation/ticket.py:173
msgctxt "ticket|field:moderator|name"
msgid "Moderator"
msgstr ""
#: src/modules/moderation/ticket.py:180
msgctxt "ticket|field:expiry|mode:expiring|name"
msgid "Expires At"
msgstr ""
#: src/modules/moderation/ticket.py:183
#, possible-python-brace-format
msgctxt "ticket|field:expiry|mode:expiring|value"
msgid ""
"{timestamp}\n"
"Duration: `{duration}`"
msgstr ""
#: src/modules/moderation/ticket.py:191
msgctxt "ticket|field:expiry|mode:expired|name"
msgid "Expired"
msgstr ""
#: src/modules/moderation/ticket.py:194
#, possible-python-brace-format
msgctxt "ticket|field:expiry|mode:expired|value"
msgid "{timestamp}"
msgstr ""
#: src/modules/moderation/ticket.py:201
msgctxt "ticket|field:expiry|mode:open|name"
msgid "Expiry"
msgstr ""
#: src/modules/moderation/ticket.py:204
#, possible-python-brace-format
msgctxt "ticket|field:expiry|mode:open|value"
msgid "{timestamp}"
msgstr ""
#: src/modules/moderation/ticket.py:212
msgctxt "ticket|field:context|name"
msgid "Context"
msgstr ""
#: src/modules/moderation/ticket.py:219
msgctxt "ticket|field:notes|name"
msgid "Notes"
msgstr ""
#: src/modules/moderation/ticket.py:226
msgctxt "ticket|field:pardoned|name"
msgid "Pardoned"
msgstr ""
#: src/modules/moderation/ticket.py:229
#, possible-python-brace-format
msgctxt "ticket|field:pardoned|value"
msgid ""
"Pardoned by <&{moderator}> at {timestamp}.\n"
"{reason}"
msgstr ""
#: src/modules/moderation/settings.py:20
msgctxt "guildset:ticket_log"
msgid "ticket_log"
msgstr ""
#: src/modules/moderation/settings.py:23
msgctxt "guildset:ticket_log|desc"
msgid "Private moderation log to send tickets and moderation events."
msgstr ""
#: src/modules/moderation/settings.py:27
msgctxt "guildset:ticket_log|long_desc"
msgid ""
"Warnings, notes, video blacklists, and other moderation events will be "
"posted as numbered tickets with context to this log."
msgstr ""
#: src/modules/moderation/settings.py:32
msgctxt "guildset:ticket_log|accepts"
msgid "Ticket channel name or id."
msgstr ""
#: src/modules/moderation/settings.py:46
#, possible-python-brace-format
msgctxt "guildset:ticket_log|set_response:set"
msgid "Moderation tickets will be sent to {channel}"
msgstr ""
#: src/modules/moderation/settings.py:51
msgctxt "guildset:ticket_log|set_response:unset"
msgid "Moderation tickets will not be logged to a channel."
msgstr ""
#: src/modules/moderation/settings.py:63
msgctxt "guildset:ticket_log|formatted:unset"
msgid "Not Set."
msgstr ""
#: src/modules/moderation/settings.py:70
msgctxt "guildset:alert_channel"
msgid "alert_channel"
msgstr ""
#: src/modules/moderation/settings.py:73
msgctxt "guildset:alert_channel|desc"
msgid "Moderation notification channel for members with DMs disabled."
msgstr ""
#: src/modules/moderation/settings.py:77
msgctxt "guildset:alert_channel|long_desc"
msgid ""
"When I need to send a member a moderation-related notification (e.g. asking "
"them to enable their video in a video channel) from this server, I will try "
"to send it via direct messages. If this fails, I will instead mention the "
"user in this channel."
msgstr ""
#: src/modules/moderation/settings.py:84
msgctxt "guildset:alert_channel|accepts"
msgid "Alert channel name or id."
msgstr ""
#: src/modules/moderation/settings.py:98
#, possible-python-brace-format
msgctxt "guildset:alert_channel|set_response:set"
msgid "Moderation alerts will be sent to {channel}"
msgstr ""
#: src/modules/moderation/settings.py:103
msgctxt "guildset:alert_channel|set_response:unset"
msgid "Moderation alerts will be ignored if the member cannot be reached."
msgstr ""
#: src/modules/moderation/settings.py:115
msgctxt "guildset:alert_channel|formatted:unset"
msgid "Not Set (Only alert via direct message.)"
msgstr ""
#: src/modules/moderation/settings.py:122
msgctxt "guildset:mod_role"
msgid "mod_role"
msgstr ""
#: src/modules/moderation/settings.py:125
msgctxt "guildset:mod_role|desc"
msgid ""
"Guild role permitted to view configuration and perform moderation tasks."
msgstr ""
#: src/modules/moderation/settings.py:129
msgctxt "guildset:mod_role|long_desc"
msgid ""
"Members with the set role will be able to access my configuration panels, "
"and perform some moderation tasks, such us setting up pomodoro timers. "
"Moderators cannot reconfigure most bot configuration, or perform operations "
"they do not already have permission for in Discord."
msgstr ""
#: src/modules/moderation/settings.py:136
msgctxt "guildset:mod_role|accepts"
msgid "Moderation role name or id."
msgstr ""
#: src/modules/moderation/settings.py:150
#, possible-python-brace-format
msgctxt "guildset:mod_role|set_response:set"
msgid "Members with the {role} will be considered moderators."
msgstr ""
#: src/modules/moderation/settings.py:155
msgctxt "guildset:mod_role|set_response:unset"
msgid "No members will be given moderation privileges."
msgstr ""
#: src/modules/moderation/settings.py:167
msgctxt "guildset:mod_role|formatted:unset"
msgid "Not Set."
msgstr ""

View File

@@ -0,0 +1,165 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/gui/cards/monthly.py:39
msgctxt "skin:monthlystats|mode:study|title"
msgid "STUDY HOURS"
msgstr ""
#: src/gui/cards/monthly.py:43
msgctxt "skin:monthlystats|mode:voice|title"
msgid "VOICE CHANNEL ACTIVITY"
msgstr ""
#: src/gui/cards/monthly.py:47
msgctxt "skin:monthlystats|mode:text|title"
msgid "MESSAGE ACTIVITY"
msgstr ""
#: src/gui/cards/monthly.py:51
msgctxt "skin::monthlystats|mode:anki|title"
msgid "CARDS REVIEWED"
msgstr ""
#: src/gui/cards/monthly.py:118
#, possible-python-brace-format
msgctxt "ui:monthlystats|mode:study|bar_value"
msgid "{value} H"
msgstr ""
#: src/gui/cards/monthly.py:122
#, possible-python-brace-format
msgctxt "ui:monthlystats|mode:voice|bar_value"
msgid "{value} H"
msgstr ""
#: src/gui/cards/monthly.py:126
#, possible-python-brace-format
msgctxt "ui:monthlystats|mode:text|bar_value"
msgid "{value} M"
msgstr ""
#: src/gui/cards/monthly.py:130
#, possible-python-brace-format
msgctxt "ui:monthlystats|mode:anki|bar_value"
msgid "{value} C"
msgstr ""
#: src/gui/cards/monthly.py:152
msgctxt "skin:monthlystats|weekdays"
msgid "M,T,W,T,F,S,S"
msgstr ""
#: src/gui/cards/monthly.py:162
#, possible-python-brace-format
msgctxt "skin:monthlystats|mode:study|summary:this_month"
msgid "THIS MONTH: {amount} HOURS"
msgstr ""
#: src/gui/cards/monthly.py:166
#, possible-python-brace-format
msgctxt "skin:monthlystats|mode:voice|summary:this_month"
msgid "THIS MONTH: {amount} HOURS"
msgstr ""
#: src/gui/cards/monthly.py:170
#, possible-python-brace-format
msgctxt "skin:monthlystats|mode:text|summary:this_month"
msgid "THIS MONTH: {amount} MESSAGES"
msgstr ""
#: src/gui/cards/monthly.py:174
#, possible-python-brace-format
msgctxt "skin:monthlystats|mode:text|summary:this_month"
msgid "THIS MONTH: {amount} CARDS"
msgstr ""
#: src/gui/cards/monthly.py:196
#, possible-python-brace-format
msgctxt "skin:monthlystats|mode:study|summary:last_month"
msgid "LAST MONTH: {amount} HOURS"
msgstr ""
#: src/gui/cards/monthly.py:200
#, possible-python-brace-format
msgctxt "skin:monthlystats|mode:voice|summary:last_month"
msgid "LAST MONTH: {amount} HOURS"
msgstr ""
#: src/gui/cards/monthly.py:204
#, possible-python-brace-format
msgctxt "skin:monthlystats|mode:text|summary:last_month"
msgid "LAST MONTH: {amount} MESSAGES"
msgstr ""
#: src/gui/cards/monthly.py:208
#, possible-python-brace-format
msgctxt "skin:monthlystats|mode:text|summary:last_month"
msgid "LAST MONTH: {amount} CARDS"
msgstr ""
#: src/gui/cards/monthly.py:299
msgctxt "ui:monthlystats|stats:current_streak|key"
msgid "Current Streak:"
msgstr ""
#: src/gui/cards/monthly.py:303
#, possible-python-brace-format
msgctxt "ui:monthlystats|stats:current_streak|value"
msgid "{count} days"
msgstr ""
#: src/gui/cards/monthly.py:307
msgctxt "ui:monthlystats|stats:longest_streak|key"
msgid "Longest Streak:"
msgstr ""
#: src/gui/cards/monthly.py:311
#, possible-python-brace-format
msgctxt "ui:monthlystats|stats:longest_streak|value"
msgid "{count} days"
msgstr ""
#: src/gui/cards/monthly.py:315
msgctxt "ui:monthlystats|stats:daily_average|key"
msgid "Daily Average:"
msgstr ""
#: src/gui/cards/monthly.py:319
#, possible-python-brace-format
msgctxt "ui:monthlystats|stats:daily_average|value"
msgid "{count} hours"
msgstr ""
#: src/gui/cards/monthly.py:323
msgctxt "ui:monthlystats|stats:days_active|key"
msgid "Days Active:"
msgstr ""
#: src/gui/cards/monthly.py:327
#, possible-python-brace-format
msgctxt "ui:monthlystats|stats:days_active|value"
msgid "{count} days"
msgstr ""
#: src/gui/cards/monthly.py:340
#, possible-python-brace-format
msgctxt "skin:monthlystats|footer"
msgid "Monthly Statistics • As of {day} {month} • {name} {discrim}"
msgstr ""

View File

@@ -0,0 +1,49 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/gui/cards/profile.py:79
msgctxt "skin:profile|header:profile"
msgid "PROFILE"
msgstr ""
#: src/gui/cards/profile.py:83
msgctxt "skin:profile|header:achievements"
msgid "ACHIEVEMENTS"
msgstr ""
#: src/gui/cards/profile.py:134
msgctxt "skin:profile|field:rank_unranked_text"
msgid "UNRANKED"
msgstr ""
#: src/gui/cards/profile.py:138
#, possible-python-brace-format
msgctxt "skin:profile|field:rank_nextrank_text"
msgid "NEXT RANK: {name} {rangestr}"
msgstr ""
#: src/gui/cards/profile.py:142
msgctxt "skin:profile|field:rank_noranks_text"
msgid "NO RANKS AVAILABLE"
msgstr ""
#: src/gui/cards/profile.py:146
msgctxt "skin:profile|field:rank_maxrank_text"
msgid "YOU HAVE REACHED THE MAXIMUM RANK"
msgstr ""

722
locales/templates/ranks.pot Normal file
View File

@@ -0,0 +1,722 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/ranks/cog.py:70
msgctxt "cmd:configure_ranks|param:rank_type|choice:voice"
msgid "Voice"
msgstr ""
#: src/modules/ranks/cog.py:71
msgctxt "cmd:configure_ranks|param:rank_type|choice:xp"
msgid "XP"
msgstr ""
#: src/modules/ranks/cog.py:72
msgctxt "cmd:configure_ranks|param:rank_type|choice:message"
msgid "Message"
msgstr ""
#: src/modules/ranks/cog.py:359
msgctxt "event:rank_update|embed:notify"
msgid "New Activity Rank Attained!"
msgstr ""
#. ---------- Commands ----------
#: src/modules/ranks/cog.py:437
msgctxt "cmd:ranks"
msgid "ranks"
msgstr ""
#: src/modules/ranks/cog.py:463
msgctxt "cmd:configure_ranks"
msgid "ranks"
msgstr ""
#: src/modules/ranks/cog.py:464
msgctxt "cmd:configure_ranks|desc"
msgid "Configure Activity Ranks"
msgstr ""
#: src/modules/ranks/cog.py:524
#, possible-python-brace-format
msgctxt ""
"cmd:configure_ranks|response:updated|setting:notification|withdm_withchannel"
msgid ""
"Rank update notifications will be sent via **direct message** when possible, "
"otherwise to {channel}"
msgstr ""
#: src/modules/ranks/cog.py:530
msgctxt ""
"cmd:configure_ranks|response:updated|setting:notification|withdm_nochannel"
msgid "Rank update notifications will be sent via **direct message**."
msgstr ""
#: src/modules/ranks/cog.py:536
#, possible-python-brace-format
msgctxt ""
"cmd:configure_ranks|response:updated|setting:notification|nodm_withchannel"
msgid "Rank update notifications will be sent to {channel}."
msgstr ""
#: src/modules/ranks/cog.py:541
msgctxt ""
"cmd:configure_ranks|response:updated|setting:notification|nodm_nochannel"
msgid "Members will not be notified when their activity rank updates."
msgstr ""
#: src/modules/ranks/utils.py:13
#, possible-python-brace-format
msgctxt "formatstring:rank_message|key:role_name"
msgid "{role_name}"
msgstr ""
#: src/modules/ranks/utils.py:14
#, possible-python-brace-format
msgctxt "formatstring:rank_message|key:guild_name"
msgid "{guild_name}"
msgstr ""
#: src/modules/ranks/utils.py:15
#, possible-python-brace-format
msgctxt "formatstring:rank_message|key:user_name"
msgid "{user_name}"
msgstr ""
#: src/modules/ranks/utils.py:16
#, possible-python-brace-format
msgctxt "formatstring:rank_message|key:role_id"
msgid "{role_id}"
msgstr ""
#: src/modules/ranks/utils.py:17
#, possible-python-brace-format
msgctxt "formatstring:rank_message|key:guild_id"
msgid "{guild_id}"
msgstr ""
#: src/modules/ranks/utils.py:18
#, possible-python-brace-format
msgctxt "formatstring:rank_message|key:user_id"
msgid "{user_id}"
msgstr ""
#: src/modules/ranks/utils.py:19
#, possible-python-brace-format
msgctxt "formatstring:rank_message|key:role_mention"
msgid "{role_mention}"
msgstr ""
#: src/modules/ranks/utils.py:20
#, possible-python-brace-format
msgctxt "formatstring:rank_message|key:user_mention"
msgid "{user_mention}"
msgstr ""
#: src/modules/ranks/utils.py:21
#, possible-python-brace-format
msgctxt "formatstring:rank_message|key:requires"
msgid "{rank_requires}"
msgstr ""
#: src/modules/ranks/settings.py:26
msgctxt "guildset:rank_type|output:voice"
msgid "`Voice`"
msgstr ""
#: src/modules/ranks/settings.py:27
msgctxt "guildset:rank_type|output:xp"
msgid "`Exp`"
msgstr ""
#: src/modules/ranks/settings.py:28
msgctxt "guildset:rank_type|output:message"
msgid "`Messages`"
msgstr ""
#: src/modules/ranks/settings.py:31
msgctxt "guildset:rank_type|input_format:voice"
msgid "Voice"
msgstr ""
#: src/modules/ranks/settings.py:32
msgctxt "guildset:rank_type|input_format:xp"
msgid "Exp"
msgstr ""
#: src/modules/ranks/settings.py:33
msgctxt "guildset:rank_type|input_format:message"
msgid "Messages"
msgstr ""
#: src/modules/ranks/settings.py:36
msgctxt "guildset:rank_type|input_pattern:voice"
msgid "voice|study"
msgstr ""
#: src/modules/ranks/settings.py:37
msgctxt "guildset:rank_type|input_pattern:voice"
msgid "text|message|messages"
msgstr ""
#: src/modules/ranks/settings.py:38
msgctxt "guildset:rank_type|input_pattern:xp"
msgid "xp|exp|experience"
msgstr ""
#: src/modules/ranks/settings.py:45
msgctxt "guildset:rank_type"
msgid "rank_type"
msgstr ""
#: src/modules/ranks/settings.py:48
msgctxt "guildset:rank_type|desc"
msgid ""
"The type of statistic (messages | xp | voice hours) used to determine "
"activity ranks."
msgstr ""
#: src/modules/ranks/settings.py:52
msgctxt "guildset:rank_type|long_desc"
msgid ""
"Which statistic is used to reward activity ranks.\n"
"`Voice` is the number of hours active in tracked voice channels, `Exp` is a "
"measure of message activity, and `Message` is a simple count of messages "
"sent."
msgstr ""
#: src/modules/ranks/settings.py:59
msgctxt "guildset:rank_type|accepts"
msgid "Voice/Exp/Messages"
msgstr ""
#: src/modules/ranks/settings.py:71
msgctxt "guildset:rank_type|set_response|type:voice"
msgid "Members will be awarded activity ranks based on `Voice Activity`."
msgstr ""
#: src/modules/ranks/settings.py:76
msgctxt "guildset:rank_type|set_response|type:messages"
msgid "Members will be awarded activity ranks based on `Messages Sent`."
msgstr ""
#: src/modules/ranks/settings.py:81
msgctxt "guildset:rank_type|set_response|type:xp"
msgid "Members will be awarded activity ranks based on `Message XP Earned`."
msgstr ""
#: src/modules/ranks/settings.py:91
#, possible-python-brace-format
msgctxt "guildset:rank_channel|set_using"
msgid "{cmd} or option menu below."
msgstr ""
#: src/modules/ranks/settings.py:103
msgctxt "guildset:rank_channel"
msgid "rank_channel"
msgstr ""
#: src/modules/ranks/settings.py:106
msgctxt "guildset:rank_channel|desc"
msgid "The channel in which to send rank update notifications."
msgstr ""
#: src/modules/ranks/settings.py:110
msgctxt "guildset:rank_channel|long_desc"
msgid ""
"Whenever a user advances a rank, a congratulatory message will be sent in "
"this channel, if set. If `dm_ranks` is enabled, this channel will only be "
"used when the user has opted not to receive DM notifications, or is "
"otherwise unreachable."
msgstr ""
#: src/modules/ranks/settings.py:116
msgctxt "guildset:rank_channel|accepts"
msgid "Rank notification channel name or id."
msgstr ""
#: src/modules/ranks/settings.py:128
#, possible-python-brace-format
msgctxt "guildset:rank_channel|set_response|set"
msgid "Rank update messages will be sent to {channel}."
msgstr ""
#: src/modules/ranks/settings.py:133
msgctxt "guildset:rank_channel|set_response|unset"
msgid ""
"Rank update messages will be ignored or sent via DM (if `dm_ranks` is "
"enabled)."
msgstr ""
#: src/modules/ranks/settings.py:143
#, possible-python-brace-format
msgctxt "guildset:rank_channel|set_using"
msgid "{cmd} or channel selector below."
msgstr ""
#: src/modules/ranks/settings.py:153
msgctxt "guildset:dm_ranks"
msgid "dm_ranks"
msgstr ""
#: src/modules/ranks/settings.py:156
msgctxt "guildset:dm_ranks|desc"
msgid "Whether to send rank advancement notifications through direct messages."
msgstr ""
#: src/modules/ranks/settings.py:160
msgctxt "guildset:dm_ranks|long_desc"
msgid ""
"If enabled, congratulatory messages for rank advancement will be direct "
"messaged to the user, instead of being sent to the configured `rank_channel`."
msgstr ""
#: src/modules/ranks/settings.py:174
msgctxt "guildset:dm_ranks|response:true"
msgid "I will direct message members upon rank advancement."
msgstr ""
#: src/modules/ranks/settings.py:179
msgctxt "guildset:dm_ranks|response:false"
msgid "I will never direct message members upon rank advancement."
msgstr ""
#: src/modules/ranks/ui/preview.py:74
msgctxt "ui:rank_preview|button:edit|error:role_deleted"
msgid ""
"The role underlying this rank no longer exists! Please select a new role "
"from the role menu."
msgstr ""
#: src/modules/ranks/ui/preview.py:81
msgctxt "ui:rank_preview|button:edit|error:role_not_assignable"
msgid ""
"I do not have permission to edit the underlying role! Please select a new "
"role from the role menu, or ensure my top role is above the selected role."
msgstr ""
#: src/modules/ranks/ui/preview.py:90
msgctxt "ui:rank_preview|button:edit|error|title"
msgid "Failed to edit rank!"
msgstr ""
#: src/modules/ranks/ui/preview.py:108
msgctxt "ui:rank_preview|button:edit|label"
msgid "Edit"
msgstr ""
#: src/modules/ranks/ui/preview.py:139
#, possible-python-brace-format
msgctxt "ui:rank_preview|button:delete|response:success|description|with_role"
msgid ""
"You have deleted the rank {mention}. Press the button below to also delete "
"the role."
msgstr ""
#: src/modules/ranks/ui/preview.py:144
#, possible-python-brace-format
msgctxt "ui:rank_preview|button:delete|response:success|description|no_role"
msgid "You have deleted the rank {mention}."
msgstr ""
#: src/modules/ranks/ui/preview.py:150
msgctxt "ui:rank_preview|button:delete|response:success|title"
msgid "Rank Deleted"
msgstr ""
#: src/modules/ranks/ui/preview.py:160
msgctxt ""
"ui:rank_preview|button:delete|response:success|button:delete_role|label"
msgid "Delete Role"
msgstr ""
#: src/modules/ranks/ui/preview.py:176
#, possible-python-brace-format
msgctxt ""
"ui:rank_preview|button:delete|response:success|button:delete_role|response:"
"errored|desc"
msgid ""
"You have deleted the rank **{name}**! Could not delete the role due to an "
"unknown error."
msgstr ""
#: src/modules/ranks/ui/preview.py:182
#, possible-python-brace-format
msgctxt ""
"ui:rank_preview|button:delete|response:success|button:delete_role|response:"
"success|desc"
msgid "You have deleted the rank **{name}** along with the underlying role."
msgstr ""
#: src/modules/ranks/ui/preview.py:199
msgctxt "ui:rank_preview|button:delete|label"
msgid "Delete Rank"
msgstr ""
#: src/modules/ranks/ui/preview.py:219
#, possible-python-brace-format
msgctxt "ui:rank_preview|menu:roles|error:above_caller"
msgid ""
"You have insufficient permissions to assign {mention} as a rank role! You "
"may only manage roles below your top role."
msgstr ""
#: src/modules/ranks/ui/preview.py:225
msgctxt "ui:rank_preview|menu:roles|error:above_caller|title"
msgid "Insufficient permissions!"
msgstr ""
#: src/modules/ranks/ui/preview.py:241
msgctxt "ui:rank_preview|menu:roles|error:not_assignable|suberror:is_default"
msgid "The @everyone role cannot be removed, and cannot be a rank!"
msgstr ""
#: src/modules/ranks/ui/preview.py:246
msgctxt "ui:rank_preview|menu:roles|error:not_assignable|suberror:is_managed"
msgid ""
"The role is managed by another application or integration, and cannot be a "
"rank!"
msgstr ""
#: src/modules/ranks/ui/preview.py:251
msgctxt ""
"ui:rank_preview|menu:roles|error:not_assignable|suberror:no_permissions"
msgid ""
"I do not have the `MANAGE_ROLES` permission in this server, so I cannot "
"manage ranks!"
msgstr ""
#: src/modules/ranks/ui/preview.py:256
msgctxt "ui:rank_preview|menu:roles|error:not_assignable|suberror:above_me"
msgid ""
"This role is above my top role in the role hierarchy, so I cannot add or "
"remove it!"
msgstr ""
#: src/modules/ranks/ui/preview.py:262
msgctxt "ui:rank_preview|menu:roles|error:not_assignable|suberror:other"
msgid "I am not able to manage the selected role, so it cannot be a rank!"
msgstr ""
#: src/modules/ranks/ui/preview.py:268
msgctxt "ui:rank_preview|menu:roles|error:not_assignable|title"
msgid "Could not update rank!"
msgstr ""
#: src/modules/ranks/ui/preview.py:278
msgctxt "ui:rank_preview|menu:roles|placeholder"
msgid "Update Rank Role"
msgstr ""
#: src/modules/ranks/ui/preview.py:290
msgctxt "ui:rank_preview|embed|title"
msgid "Rank Information"
msgstr ""
#: src/modules/ranks/ui/preview.py:297
msgctxt "ui:rank_preview|embed|field:role|name"
msgid "Role"
msgstr ""
#: src/modules/ranks/ui/preview.py:304
msgctxt "ui:rank_preview|embed|field:required|name"
msgid "Required"
msgstr ""
#: src/modules/ranks/ui/preview.py:311
msgctxt "ui:rank_preview|embed|field:reward|name"
msgid "Reward"
msgstr ""
#: src/modules/ranks/ui/preview.py:320
msgctxt "ui:rank_preview|embed|field:message"
msgid "Congratulatory Message"
msgstr ""
#: src/modules/ranks/ui/config.py:42
msgctxt "ui:rankconfigui|check|not_permitted"
msgid "You have insufficient server permissions to use this UI!"
msgstr ""
#: src/modules/ranks/ui/config.py:64
msgctxt "ui:rank_config|button:overview|label"
msgid "Edit Ranks"
msgstr ""
#: src/modules/ranks/ui/config.py:82
msgctxt "ui:rank_config|menu:types|placeholder"
msgid "Select Statistic Type"
msgstr ""
#: src/modules/ranks/ui/config.py:90
msgctxt "ui:rank_config|menu:types|option:voice"
msgid "Voice Activity"
msgstr ""
#: src/modules/ranks/ui/config.py:98
msgctxt "ui:rank_config|menu:types|option:xp"
msgid "XP Earned"
msgstr ""
#: src/modules/ranks/ui/config.py:106
msgctxt "ui:rank_config|menu:types|option:messages"
msgid "Messages Sent"
msgstr ""
#: src/modules/ranks/ui/config.py:126
msgctxt "ui:rank_config|menu:channels|placeholder"
msgid "Select Rank Notification Channel"
msgstr ""
#: src/modules/ranks/ui/config.py:134
msgctxt "ui:rank_config|embed|title"
msgid "Ranks Configuration Panel"
msgstr ""
#: src/modules/ranks/ui/config.py:171
msgctxt "dash:rank|title"
msgid "Rank Configuration ({commands[configure ranks]})"
msgstr ""
#: src/modules/ranks/ui/overview.py:77
msgctxt "ui:rank_overview|button:auto|label"
msgid "Auto Create"
msgstr ""
#: src/modules/ranks/ui/overview.py:91
msgctxt "ui:rank_overview|button:refresh|label"
msgid "Refresh Member Ranks"
msgstr ""
#: src/modules/ranks/ui/overview.py:107
msgctxt "ui:rank_overview|button:clear|label"
msgid "Clear Ranks"
msgstr ""
#: src/modules/ranks/ui/overview.py:137
msgctxt "ui:rank_overview|button:create|label"
msgid "Create Rank"
msgstr ""
#: src/modules/ranks/ui/overview.py:153
#, possible-python-brace-format
msgctxt "ui:rank_overview|menu:roles|error:above_caller"
msgid ""
"You have insufficient permissions to assign {mention} as a rank role! You "
"may only manage roles below your top role."
msgstr ""
#: src/modules/ranks/ui/overview.py:159
msgctxt "ui:rank_overview|menu:roles|error:above_caller|title"
msgid "Insufficient permissions!"
msgstr ""
#: src/modules/ranks/ui/overview.py:192
msgctxt "ui:rank_overview|menu:roles|error:not_assignable|suberror:is_default"
msgid "The @everyone role cannot be removed, and cannot be a rank!"
msgstr ""
#: src/modules/ranks/ui/overview.py:197
msgctxt "ui:rank_overview|menu:roles|error:not_assignable|suberror:is_managed"
msgid ""
"The role is managed by another application or integration, and cannot be a "
"rank!"
msgstr ""
#: src/modules/ranks/ui/overview.py:202
msgctxt ""
"ui:rank_overview|menu:roles|error:not_assignable|suberror:no_permissions"
msgid ""
"I do not have the `MANAGE_ROLES` permission in this server, so I cannot "
"manage ranks!"
msgstr ""
#: src/modules/ranks/ui/overview.py:207
msgctxt "ui:rank_overview|menu:roles|error:not_assignable|suberror:above_me"
msgid ""
"This role is above my top role in the role hierarchy, so I cannot add or "
"remove it!"
msgstr ""
#: src/modules/ranks/ui/overview.py:213
msgctxt "ui:rank_overview|menu:roles|error:not_assignable|suberror:other"
msgid "I am not able to manage the selected role, so it cannot be a rank!"
msgstr ""
#: src/modules/ranks/ui/overview.py:219
msgctxt "ui:rank_overview|menu:roles|error:not_assignable|title"
msgid "Could not create rank!"
msgstr ""
#: src/modules/ranks/ui/overview.py:243
msgctxt "ui:rank_overview|menu:roles|placeholder"
msgid "Create from role"
msgstr ""
#: src/modules/ranks/ui/overview.py:260
msgctxt "ui:rank_overview|menu:ranks|placeholder"
msgid "View or edit rank"
msgstr ""
#: src/modules/ranks/ui/overview.py:330
msgctxt "ui:rank_overview|embed:noranks|desc"
msgid ""
"No activity ranks have been set up!\n"
"Press 'AUTO' to automatically create a standard heirachy of voice | text | "
"xp ranks, or select a role or press Create below!"
msgstr ""
#: src/modules/ranks/ui/overview.py:338
#, possible-python-brace-format
msgctxt "ui:rank_overview|embed|title|type:voice"
msgid "Voice Ranks in {guild_name}"
msgstr ""
#: src/modules/ranks/ui/overview.py:343
#, possible-python-brace-format
msgctxt "ui:rank_overview|embed|title|type:xp"
msgid "XP ranks in {guild_name}"
msgstr ""
#: src/modules/ranks/ui/overview.py:348
#, possible-python-brace-format
msgctxt "ui:rank_overview|embed|title|type:message"
msgid "Message ranks in {guild_name}"
msgstr ""
#: src/modules/ranks/ui/editor.py:33
msgctxt "ui:rank_editor|input:role_name|label"
msgid "Role Name"
msgstr ""
#: src/modules/ranks/ui/editor.py:37
msgctxt "ui:rank_editor|input:role_name|placeholder"
msgid "Name of the awarded guild role"
msgstr ""
#: src/modules/ranks/ui/editor.py:53
msgctxt "ui:rank_editor|input:role_colour|label"
msgid "Role Colour"
msgstr ""
#: src/modules/ranks/ui/editor.py:57
msgctxt "ui:rank_editor|input:role_colour|placeholder"
msgid "Colour of the awarded guild role, e.g. #AB1321"
msgstr ""
#: src/modules/ranks/ui/editor.py:69
msgctxt "ui:rank_editor|input:role_colour|error:parse"
msgid ""
"`role_colour`: Could not parse colour! Please use `#<hex>` format e.g. "
"`#AB1325`."
msgstr ""
#: src/modules/ranks/ui/editor.py:88
msgctxt "ui:rank_editor|type:voice|input:requires|label"
msgid "Required Voice Hours"
msgstr ""
#: src/modules/ranks/ui/editor.py:92
msgctxt "ui:rank_editor|type:voice|input:requires|placeholder"
msgid "Number of voice hours before awarding this rank"
msgstr ""
#: src/modules/ranks/ui/editor.py:97
msgctxt "ui:rank_editor|type:xp|input:requires|label"
msgid "Required XP"
msgstr ""
#: src/modules/ranks/ui/editor.py:101
msgctxt "ui:rank_editor|type:xp|input:requires|placeholder"
msgid "Amount of XP needed before obtaining this rank"
msgstr ""
#: src/modules/ranks/ui/editor.py:106
msgctxt "ui:rank_editor|type:message|input:requires|label"
msgid "Required Message Count"
msgstr ""
#: src/modules/ranks/ui/editor.py:110
msgctxt "ui:rank_editor|type:message|input:requires|placeholder"
msgid "Number of messages needed before awarding rank"
msgstr ""
#: src/modules/ranks/ui/editor.py:126
msgctxt "ui:rank_editor|type:voice|input:requires|error:parse"
msgid ""
"`requires`: Could not parse provided minimum time! Please write a number of "
"hours."
msgstr ""
#: src/modules/ranks/ui/editor.py:137
msgctxt "ui:rank_editor|type:message|input:requires|error:parse"
msgid ""
"`requires`: Could not parse provided minimum message count! Please enter an "
"integer."
msgstr ""
#: src/modules/ranks/ui/editor.py:148
msgctxt "ui:rank_editor|type:xp|input:requires|error:parse"
msgid ""
"`requires`: Could not parse provided minimum XP! Please enter an integer."
msgstr ""
#: src/modules/ranks/ui/editor.py:162
msgctxt "ui:rank_editor|input:reward|label"
msgid "LionCoins awarded upon achieving this rank"
msgstr ""
#: src/modules/ranks/ui/editor.py:166
msgctxt "ui:rank_editor|input:reward|placeholder"
msgid "LionCoins awarded upon achieving this rank"
msgstr ""
#: src/modules/ranks/ui/editor.py:181
msgctxt "ui:rank_editor|input:reward|error:parse"
msgid "`reward`: Please enter an integer number of LionCoins."
msgstr ""
#: src/modules/ranks/ui/editor.py:197
msgctxt "ui:rank_editor|input:message|label"
msgid "Rank Message"
msgstr ""
#: src/modules/ranks/ui/editor.py:201
msgctxt "ui:rank_editor|input:message|placeholder"
msgid "Congratulatory message sent to the user upon achieving this rank."
msgstr ""
#: src/modules/ranks/ui/editor.py:207
#, possible-python-brace-format
msgctxt "ui:rank_editor|input:message|default|type:voice"
msgid ""
"Congratulations {user_mention}!\n"
"For working hard for **{requires}**, you have achieved the rank of "
"**{role_name}** in **{guild_name}**! Keep up the good work."
msgstr ""
#: src/modules/ranks/ui/editor.py:262
msgctxt "ui:rank_editor|mode:edit|title"
msgid "Rank Editor"
msgstr ""
#: src/modules/ranks/ui/editor.py:317
msgctxt "ui:rank_editor|mode:create|title"
msgid "Rank Creator"
msgstr ""

View File

@@ -0,0 +1,358 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: src/modules/reminders/cog.py:92
msgctxt "reminder|embed"
msgid "You asked me to remind you!"
msgstr ""
#: src/modules/reminders/cog.py:100
msgctxt "reminder|embed"
msgid "Context?"
msgstr ""
#: src/modules/reminders/cog.py:102
msgctxt "reminder|embed"
msgid "Click Here"
msgstr ""
#: src/modules/reminders/cog.py:109
msgctxt "reminder|embed"
msgid "Next reminder"
msgstr ""
#: src/modules/reminders/cog.py:133
#, possible-python-brace-format
msgctxt "reminder|formatted|interval"
msgid "Every day"
msgid_plural "Every `{days}` days"
msgstr[0] ""
msgstr[1] ""
#: src/modules/reminders/cog.py:142
#, possible-python-brace-format
msgctxt "reminder|formatted|interval"
msgid "Every hour"
msgid_plural "Every `{hours}` hours"
msgstr[0] ""
msgstr[1] ""
#: src/modules/reminders/cog.py:151
#, possible-python-brace-format
msgctxt "reminder|formatted|interval"
msgid "Every `{duration}`"
msgstr ""
#: src/modules/reminders/cog.py:341
msgctxt "cmd:reminders"
msgid "reminders"
msgstr ""
#. No help string
#: src/modules/reminders/cog.py:348
msgctxt "cmd:reminders_show"
msgid "show"
msgstr ""
#: src/modules/reminders/cog.py:351
msgctxt "cmd:reminders_show|desc"
msgid "Display your current reminders."
msgstr ""
#: src/modules/reminders/cog.py:367
msgctxt "cmd:reminders_show|close_elsewhere"
msgid "Closing since the list was opened elsewhere."
msgstr ""
#: src/modules/reminders/cog.py:379
msgctxt "cmd:reminders_clear"
msgid "clear"
msgstr ""
#: src/modules/reminders/cog.py:382
msgctxt "cmd:reminders_clear|desc"
msgid "Clear your reminder list."
msgstr ""
#: src/modules/reminders/cog.py:400
msgctxt "cmd:reminders_clear|error:no_reminders"
msgid "You have no reminders to clear!"
msgstr ""
#: src/modules/reminders/cog.py:409
msgctxt "cmd:reminders_clear|confirm|title"
msgid "Are You Sure?"
msgstr ""
#: src/modules/reminders/cog.py:412
#, possible-python-brace-format
msgctxt "cmd:reminders_clear|confirm|desc"
msgid "Are you sure you want to delete your `{count}` reminder?"
msgid_plural "Are you sure you want to clear your `{count}` reminders?"
msgstr[0] ""
msgstr[1] ""
#: src/modules/reminders/cog.py:418
msgctxt "cmd:reminders_clear|confirm|button:yes"
msgid "Yes, clear my reminders"
msgstr ""
#: src/modules/reminders/cog.py:427
msgctxt "cmd:reminders_clear|success|desc"
msgid "Your reminders have been cleared!"
msgstr ""
#: src/modules/reminders/cog.py:436
msgctxt "cmd:reminders_clear|confirm|button:cancel"
msgid "Cancel"
msgstr ""
#: src/modules/reminders/cog.py:446
msgctxt "cmd:reminders_cancel"
msgid "cancel"
msgstr ""
#: src/modules/reminders/cog.py:449
msgctxt "cmd:reminders_cancel|desc"
msgid ""
"Cancel a single reminder. Use the menu in \"reminder show\" to cancel "
"multiple reminders."
msgstr ""
#: src/modules/reminders/cog.py:453
msgctxt "cmd:reminders_cancel|param:reminder"
msgid "reminder"
msgstr ""
#: src/modules/reminders/cog.py:458
msgctxt "cmd:reminders_cancel|param:reminder|desc"
msgid "Start typing, then select a reminder to cancel."
msgstr ""
#: src/modules/reminders/cog.py:477
msgctxt "cmd:reminders_cancel|error:no_reminders"
msgid "There are no reminders to cancel!"
msgstr ""
#: src/modules/reminders/cog.py:501
msgctxt "cmd:reminders_cancel|error:no_match"
msgid ""
"I am not sure which reminder you want to cancel. Please try again, selecting "
"a reminder from the list of choices."
msgstr ""
#: src/modules/reminders/cog.py:514
msgctxt "cmd:reminders_cancel|embed:success|desc"
msgid "Reminder successfully cancelled."
msgstr ""
#: src/modules/reminders/cog.py:531
msgctxt "cmd:reminders_cancel|acmpl:reminder|error:no_reminders"
msgid "There are no reminders to cancel!"
msgstr ""
#: src/modules/reminders/cog.py:561
#, possible-python-brace-format
msgctxt "cmd:reminders_cancel|acmpl:reminder|error:no_matches"
msgid "You do not have any reminders matching \"{partial}\""
msgstr ""
#: src/modules/reminders/cog.py:569
msgctxt "cmd:remindme"
msgid "remindme"
msgstr ""
#: src/modules/reminders/cog.py:576
msgctxt "cmd:remindme_at"
msgid "at"
msgstr ""
#: src/modules/reminders/cog.py:579
msgctxt "cmd:remindme_at|desc"
msgid "Schedule a reminder for a particular time."
msgstr ""
#: src/modules/reminders/cog.py:583
msgctxt "cmd:remindme_at|param:time"
msgid "time"
msgstr ""
#: src/modules/reminders/cog.py:584
msgctxt "cmd:remindme_at|param:reminder"
msgid "reminder"
msgstr ""
#: src/modules/reminders/cog.py:585
msgctxt "cmd:remindme_at|param:every"
msgid "repeat_every"
msgstr ""
#: src/modules/reminders/cog.py:588
msgctxt "cmd:remindme_at|param:time|desc"
msgid "When you want to be reminded. (E.g. `4pm` or `16:00`)."
msgstr ""
#: src/modules/reminders/cog.py:589
msgctxt "cmd:remindme_at|param:reminder|desc"
msgid "What should the reminder be?"
msgstr ""
#: src/modules/reminders/cog.py:590
msgctxt "cmd:remindme_at|param:every|desc"
msgid "How often to repeat this reminder."
msgstr ""
#: src/modules/reminders/cog.py:608
msgctxt "cmd_remindme_at|error:too_many|desc"
msgid "Sorry, you have reached the maximum of `25` reminders!"
msgstr ""
#: src/modules/reminders/cog.py:612
msgctxt "cmd_remindme_at|error:too_many|title"
msgid "Could not create reminder!"
msgstr ""
#: src/modules/reminders/cog.py:625
msgctxt "cmd_remindme_at|error:too_fast|desc"
msgid "You cannot set a repeating reminder with a period less than 10 minutes."
msgstr ""
#: src/modules/reminders/cog.py:629
msgctxt "cmd_remindme_at|error:too_fast|title"
msgid "Could not create reminder!"
msgstr ""
#: src/modules/reminders/cog.py:647
#, possible-python-brace-format
msgctxt "cmd:remindme_at|error:parse_time|desc"
msgid ""
"Could not parse provided time `{given}`. Try entering e.g. `4 pm` or `16:00`."
msgstr ""
#: src/modules/reminders/cog.py:651
msgctxt "cmd:remindme_at|error:parse_time|title"
msgid "Could not create reminder!"
msgstr ""
#: src/modules/reminders/cog.py:662
msgctxt "cmd:remindme_at|error:past_time|desc"
msgid "Provided time is in the past!"
msgstr ""
#: src/modules/reminders/cog.py:666
msgctxt "cmd:remindme_at|error:past_time|title"
msgid "Could not create reminder!"
msgstr ""
#: src/modules/reminders/cog.py:691
#, possible-python-brace-format
msgctxt "cmd:remindme_in|success|title"
msgid "Reminder Set at {timestamp}"
msgstr ""
#: src/modules/reminders/cog.py:702
msgctxt "cmd:remindme_in"
msgid "in"
msgstr ""
#: src/modules/reminders/cog.py:705
msgctxt "cmd:remindme_in|desc"
msgid "Schedule a reminder for a given amount of time in the future."
msgstr ""
#: src/modules/reminders/cog.py:709
msgctxt "cmd:remindme_in|param:time"
msgid "time"
msgstr ""
#: src/modules/reminders/cog.py:710
msgctxt "cmd:remindme_in|param:reminder"
msgid "reminder"
msgstr ""
#: src/modules/reminders/cog.py:711
msgctxt "cmd:remindme_in|param:every"
msgid "repeat_every"
msgstr ""
#: src/modules/reminders/cog.py:714
msgctxt "cmd:remindme_in|param:time|desc"
msgid "How far into the future to set the reminder (e.g. 1 day 10h 5m)."
msgstr ""
#: src/modules/reminders/cog.py:715
msgctxt "cmd:remindme_in|param:reminder|desc"
msgid "What should the reminder be?"
msgstr ""
#: src/modules/reminders/cog.py:716
msgctxt "cmd:remindme_in|param:every|desc"
msgid "How often to repeat this reminder. (e.g. 1 day, or 2h)"
msgstr ""
#: src/modules/reminders/cog.py:734
msgctxt "cmd_remindme_in|error:too_many|desc"
msgid "Sorry, you have reached the maximum of `25` reminders!"
msgstr ""
#: src/modules/reminders/cog.py:738
msgctxt "cmd_remindme_in|error:too_many|title"
msgid "Could not create reminder!"
msgstr ""
#: src/modules/reminders/cog.py:751
msgctxt "cmd_remindme_in|error:too_fast|desc"
msgid "You cannot set a repeating reminder with a period less than 10 minutes."
msgstr ""
#: src/modules/reminders/cog.py:755
msgctxt "cmd_remindme_in|error:too_fast|title"
msgid "Could not create reminder!"
msgstr ""
#: src/modules/reminders/cog.py:781
#, possible-python-brace-format
msgctxt "cmd:remindme_in|success|title"
msgid "Reminder Set {timestamp}"
msgstr ""
#: src/modules/reminders/cog.py:842
msgctxt "ui:reminderlist|select:remove|placeholder"
msgid "Select to cancel."
msgstr ""
#: src/modules/reminders/cog.py:918
#, possible-python-brace-format
msgctxt "ui:reminderlist|embed:list|author"
msgid "{name}'s reminders"
msgstr ""
#: src/modules/reminders/cog.py:924
msgctxt "ui:reminderlist|embed:list|footer"
msgid "Click a reminder twice to jump to the context!"
msgstr ""
#: src/modules/reminders/cog.py:931
#, possible-python-brace-format
msgctxt "ui:reminderlist|embed:no_reminders|desc"
msgid ""
"You have no reminders to display!\n"
"Use {remindme} to create a new reminder."
msgstr ""

File diff suppressed because it is too large Load Diff

705
locales/templates/rooms.pot Normal file
View File

@@ -0,0 +1,705 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: src/modules/rooms/settingui.py:38
msgctxt "ui:room_config|menu:category|placeholder"
msgid "Select Private Room Category"
msgstr ""
#: src/modules/rooms/settingui.py:52
msgctxt "ui:room_config|button:visible|label"
msgid "Toggle Room Visibility"
msgstr ""
#: src/modules/rooms/settingui.py:62
msgctxt "ui:rooms_config|embed|title"
msgid "Private Room System Configuration Panel"
msgstr ""
#: src/modules/rooms/settingui.py:98
msgctxt "dash:rooms|title"
msgid "Private Room Configuration ({commands[configure rooms]})"
msgstr ""
#: src/modules/rooms/roomui.py:55
msgctxt "ui:room_status|error:owner_required"
msgid "You must be the private room owner to do this!"
msgstr ""
#: src/modules/rooms/roomui.py:71
msgctxt "ui:room_status|error:member_required"
msgid "You need to be a member of the private room to do this!"
msgstr ""
#: src/modules/rooms/roomui.py:89
msgctxt "ui:room_status|button:deposit|modal:deposit|title"
msgid "Room Deposit"
msgstr ""
#: src/modules/rooms/roomui.py:93
msgctxt "ui:room_status|button:deposit|modal:deposit|field:question|label"
msgid "How many LionCoins do you want to deposit?"
msgstr ""
#: src/modules/rooms/roomui.py:111
#, possible-python-brace-format
msgctxt "ui:room_status|button:deposit|error:invalid_number"
msgid "Cannot deposit `{inputted}` coins. Please enter a positive integer."
msgstr ""
#: src/modules/rooms/roomui.py:133
#, possible-python-brace-format
msgctxt "ui:room_status|button:deposit|error:insufficient_funds"
msgid ""
"You cannot deposit {coin}**{amount}**! You only have {coin}**{balance}**."
msgstr ""
#: src/modules/rooms/roomui.py:154
msgctxt "ui:room_status|button:deposit|label"
msgid "Deposit"
msgstr ""
#: src/modules/rooms/roomui.py:165
msgctxt "ui:room_status|button:edit|label"
msgid "Edit Room"
msgstr ""
#: src/modules/rooms/roomui.py:198
msgctxt "ui:room_status|button:timer|modal:add_timer|title"
msgid "Create Room Timer"
msgstr ""
#: src/modules/rooms/roomui.py:230
msgctxt "ui:room_status|button:timer|timer_created"
msgid "Timer created successfully! Use `/pomodoro edit` to configure further."
msgstr ""
#: src/modules/rooms/roomui.py:248
msgctxt "ui:room_status|button:timer|label:edit_timer"
msgid "Edit Timer"
msgstr ""
#: src/modules/rooms/roomui.py:255
msgctxt "ui:room_status|button:timer|label:add_timer"
msgid "Add Timer"
msgstr ""
#: src/modules/rooms/roomui.py:298
#, possible-python-brace-format
msgctxt "ui:room_status|menu:invite|error:too_many_members"
msgid ""
"Too many members! You are inviting `{count}` new members to your room, but "
"you already have `{current}` members! The member cap is `{cap}`."
msgstr ""
#: src/modules/rooms/roomui.py:324
msgctxt "ui:room_status|menu:invite_menu|placeholder:capped"
msgid "Room member cap reached!"
msgstr ""
#: src/modules/rooms/roomui.py:330
msgctxt "ui:room_status|menu:invite_menu|placeholder:notcapped"
msgid "Add Members"
msgstr ""
#: src/modules/rooms/roomui.py:353
msgctxt "ui:room_status|menu:kick_menu|placeholder"
msgid "Remove Members"
msgstr ""
#: src/modules/rooms/roomui.py:361
msgctxt "ui:room_status|embed|title"
msgid "Room Control Panel"
msgstr ""
#: src/modules/rooms/roomui.py:369
msgctxt "ui:room_status|embed|field:channel|name"
msgid "Channel"
msgstr ""
#: src/modules/rooms/roomui.py:374
msgctxt "ui:room_status|embed|field:owner|name"
msgid "Owner"
msgstr ""
#: src/modules/rooms/roomui.py:379
msgctxt "ui:room_status|embed|field:created|name"
msgid "Created At"
msgstr ""
#: src/modules/rooms/roomui.py:389
#, possible-python-brace-format
msgctxt "ui:room_status|embed|field:bank|value:expiring"
msgid ""
"**Warning:** Insufficient room balance to pay next rent ({coin} **{rent}"
"**).\n"
"The room will expire {expiry}.\n"
"Use {room_deposit_cmd} to increase balance."
msgstr ""
#: src/modules/rooms/roomui.py:401
#, possible-python-brace-format
msgctxt "ui:room_status|embed|field:bank|value:notexpiring"
msgid "Next rent due {time} (- {coin}**{rent}**)"
msgstr ""
#: src/modules/rooms/roomui.py:410
#, possible-python-brace-format
msgctxt "ui:room_status|embed|field:bank|name"
msgid "Room Balance: {coin}**{amount}**"
msgstr ""
#: src/modules/rooms/roomui.py:422
#, possible-python-brace-format
msgctxt "ui:room_status|embed|field:members|name"
msgid "Members ({count}/{cap})"
msgstr ""
#: src/modules/rooms/cog.py:316
msgctxt "cmd:room"
msgid "room"
msgstr ""
#: src/modules/rooms/cog.py:317
msgctxt "cmd:room|desc"
msgid "Base command group for private room configuration."
msgstr ""
#: src/modules/rooms/cog.py:324
msgctxt "cmd:room_rent"
msgid "rent"
msgstr ""
#: src/modules/rooms/cog.py:327
msgctxt "cmd:room_rent|desc"
msgid "Rent a private voice channel with LionCoins."
msgstr ""
#: src/modules/rooms/cog.py:331
msgctxt "cmd:room_rent|param:days"
msgid "days"
msgstr ""
#: src/modules/rooms/cog.py:332
msgctxt "cmd:room_rent|param:members"
msgid "members"
msgstr ""
#: src/modules/rooms/cog.py:333
msgctxt "cmd:room_rent|param:name"
msgid "name"
msgstr ""
#: src/modules/rooms/cog.py:338
msgctxt "cmd:room_rent|param:days|desc"
msgid "Number of days to pre-purchase. (Default: 1)"
msgstr ""
#: src/modules/rooms/cog.py:342
msgctxt "cmd:room_rent|param:members|desc"
msgid "Mention the members you want to add to your private room."
msgstr ""
#: src/modules/rooms/cog.py:346
msgctxt "cmd:room_rent|param:name|desc"
msgid "Name of your private voice channel."
msgstr ""
#: src/modules/rooms/cog.py:364
msgctxt "cmd:room_rent|error:not_setup"
msgid ""
"The private room system has not been set up! A private room category needs "
"to be set first with `/configure rooms`."
msgstr ""
#: src/modules/rooms/cog.py:375
msgctxt "cmd:room_rent|error:insufficient_perms"
msgid ""
"I do not have enough permissions to create a new channel under the "
"configured private room category!"
msgstr ""
#: src/modules/rooms/cog.py:389
#, possible-python-brace-format
msgctxt "cmd:room_rent|error:room_exists"
msgid "You already own a private room! Click to visit: {channel}"
msgstr ""
#: src/modules/rooms/cog.py:409
#, possible-python-brace-format
msgctxt "cmd:room_rent|error:member_not_found"
msgid "Could not find the requested member {mention} in this server!"
msgstr ""
#: src/modules/rooms/cog.py:423
#, possible-python-brace-format
msgctxt "cmd:room_rent|error:too_many_members"
msgid ""
"Too many members! You have requested to add `{count}` members to your room, "
"but the maximum private room size is `{cap}`!"
msgstr ""
#: src/modules/rooms/cog.py:437
#, possible-python-brace-format
msgctxt "cmd:room_rent|confirm:purchase"
msgid ""
"Are you sure you want to spend {coin}**{required}** to rent a private room "
"for `one` day?"
msgid_plural ""
"Are you sure you want to spend {coin}**{required}** to rent a private room "
"for `{days}` days?"
msgstr[0] ""
msgstr[1] ""
#: src/modules/rooms/cog.py:466
#, possible-python-brace-format
msgctxt "cmd:room_rent|error:insufficient_funds"
msgid ""
"Renting a private room for `one` day costs {coin}**{required}**, but you "
"only have {coin}**{balance}**!"
msgid_plural ""
"Renting a private room for `{days}` days costs {coin}**{required}**, but you "
"only have {coin}**{balance}**!"
msgstr[0] ""
msgstr[1] ""
#: src/modules/rooms/cog.py:498
#, possible-python-brace-format
msgctxt "cmd:room_rent|success"
msgid "Successfully created your private room {channel}!"
msgstr ""
#: src/modules/rooms/cog.py:503
msgctxt "cmd:room_rent|success|title"
msgid "Private Room Created!"
msgstr ""
#: src/modules/rooms/cog.py:509
msgctxt "cmd:room_status"
msgid "status"
msgstr ""
#: src/modules/rooms/cog.py:512
msgctxt "cmd:room_status|desc"
msgid "Display the status of your current room."
msgstr ""
#: src/modules/rooms/cog.py:529
msgctxt "cmd:room_status|error:no_target"
msgid ""
"Could not identify target private room! Please re-run the command in the "
"private room you wish to view the status of."
msgstr ""
#: src/modules/rooms/cog.py:544
msgctxt "cmd:room_invite"
msgid "invite"
msgstr ""
#: src/modules/rooms/cog.py:547
msgctxt "cmd:room_invite|desc"
msgid "Add members to your private room."
msgstr ""
#: src/modules/rooms/cog.py:551
msgctxt "cmd:room_invite|param:members"
msgid "members"
msgstr ""
#: src/modules/rooms/cog.py:556
msgctxt "cmd:room_invite|param:members|desc"
msgid "Mention the members you want to add."
msgstr ""
#: src/modules/rooms/cog.py:570
#, possible-python-brace-format
msgctxt "cmd:room_invite|error:no_room"
msgid ""
"You do not own a private room! Use `/room rent` to rent one with {coin}!"
msgstr ""
#: src/modules/rooms/cog.py:591
#, possible-python-brace-format
msgctxt "cmd:room_invite|error:member_not_found"
msgid "Could not find the invited member {mention} in this server!"
msgstr ""
#: src/modules/rooms/cog.py:602
msgctxt "cmd:room_invite|error:no_new_members"
msgid "All members mentioned are already in the room!"
msgstr ""
#: src/modules/rooms/cog.py:616
#, possible-python-brace-format
msgctxt "cmd:room_invite|error:too_many_members"
msgid ""
"Too many members! You have invited `{count}` new members to your room, but "
"you already have `{current}`, and the member cap is `{cap}`!"
msgstr ""
#: src/modules/rooms/cog.py:640
msgctxt "cmd:room_invite|success|ack"
msgid "Members Invited successfully."
msgstr ""
#: src/modules/rooms/cog.py:648
msgctxt "cmd:room_kick"
msgid "kick"
msgstr ""
#: src/modules/rooms/cog.py:651
msgctxt "cmd:room_kick|desc"
msgid "Remove a members from your private room."
msgstr ""
#: src/modules/rooms/cog.py:655
msgctxt "cmd:room_kick|param:members"
msgid "members"
msgstr ""
#: src/modules/rooms/cog.py:660
msgctxt "cmd:room_kick|param:members|desc"
msgid ""
"Mention the members you want to remove. Also accepts space-separated user "
"ids."
msgstr ""
#: src/modules/rooms/cog.py:674
#, possible-python-brace-format
msgctxt "cmd:room_kick|error:no_room"
msgid ""
"You do not own a private room! Use `/room rent` to rent one with {coin}!"
msgstr ""
#: src/modules/rooms/cog.py:691
msgctxt "cmd:room_kick|error:no_matching_members"
msgid "None of the mentioned members are in this room!"
msgstr ""
#: src/modules/rooms/cog.py:708
msgctxt "cmd:room_kick|success|ack"
msgid "Members removed."
msgstr ""
#: src/modules/rooms/cog.py:714
msgctxt "cmd:room_transfer"
msgid "transfer"
msgstr ""
#: src/modules/rooms/cog.py:717
msgctxt "cmd:room_transfer|desc"
msgid "Transfer your private room to another room member. Not reversible!"
msgstr ""
#: src/modules/rooms/cog.py:721
msgctxt "cmd:room_transfer|param:new_owner"
msgid "new_owner"
msgstr ""
#: src/modules/rooms/cog.py:726
msgctxt "cmd:room_transfer|param:new_owner"
msgid "The room member you would like to transfer your room to."
msgstr ""
#: src/modules/rooms/cog.py:740
msgctxt "cmd:room_transfer|error:no_room"
msgid "You do not own a private room to transfer!"
msgstr ""
#: src/modules/rooms/cog.py:752
#, possible-python-brace-format
msgctxt "cmd:room_transfer|error:target_not_member"
msgid ""
"{mention} is not a member of your private room! You must invite them first."
msgstr ""
#: src/modules/rooms/cog.py:764
#, possible-python-brace-format
msgctxt "cmd:room_transfer|error:target_has_room"
msgid "{mention} already owns a room! Members can only own one room at a time."
msgstr ""
#: src/modules/rooms/cog.py:773
#, possible-python-brace-format
msgctxt "cmd:room_transfer|confirm|question"
msgid ""
"Are you sure you wish to transfer your private room {channel} to "
"{new_owner}? This action is not reversible!"
msgstr ""
#: src/modules/rooms/cog.py:793
#, possible-python-brace-format
msgctxt "cmd:room_transfer|success|description"
msgid ""
"You have successfully transferred ownership of {channel} to {new_owner}."
msgstr ""
#: src/modules/rooms/cog.py:799
msgctxt "cmd:room_deposit"
msgid "deposit"
msgstr ""
#: src/modules/rooms/cog.py:802
msgctxt "cmd:room_deposit|desc"
msgid ""
"Deposit LionCoins in your private room bank to add more days. (Members may "
"also deposit!)"
msgstr ""
#: src/modules/rooms/cog.py:806
msgctxt "cmd:room_deposit|param:coins"
msgid "coins"
msgstr ""
#: src/modules/rooms/cog.py:811
msgctxt "cmd:room_deposit|param:coins|desc"
msgid "Number of coins to deposit."
msgstr ""
#: src/modules/rooms/cog.py:831
msgctxt "cmd:room_deposit|error:no_target"
msgid ""
"Could not identify target private room! Please re-run the command in the "
"private room you wish to contribute to."
msgstr ""
#: src/modules/rooms/cog.py:848
#, possible-python-brace-format
msgctxt "cmd:room_deposit|error:insufficient_funds"
msgid ""
"You cannot deposit {coin}**{amount}**! You only have {coin}**{balance}**."
msgstr ""
#: src/modules/rooms/cog.py:870
#, possible-python-brace-format
msgctxt "cmd:room_depost|success"
msgid ""
"Success! You have contributed {coin}**{amount}** to the private room bank."
msgstr ""
#: src/modules/rooms/cog.py:885
msgctxt "cmd:configure_rooms"
msgid "rooms"
msgstr ""
#: src/modules/rooms/cog.py:886
msgctxt "cmd:configure_rooms|desc"
msgid "Configure Rented Private Rooms"
msgstr ""
#: src/modules/rooms/room.py:81
#, possible-python-brace-format
msgctxt "room|notify:deposit|description"
msgid "{member} has deposited {coin}**{amount}** into the room bank!"
msgstr ""
#: src/modules/rooms/room.py:104
msgctxt "room|notify:new_members|title"
msgid "New Members!"
msgstr ""
#: src/modules/rooms/room.py:108
#, possible-python-brace-format
msgctxt "room|notify:new_members|desc"
msgid "Welcome {members}"
msgstr ""
#: src/modules/rooms/room.py:163
#, possible-python-brace-format
msgctxt "room|notify:transfer|description"
msgid "{old_owner} has transferred private room ownership to {new_owner}"
msgstr ""
#: src/modules/rooms/room.py:227
msgctxt "room|embed:expiry|title"
msgid "Private Room Expired!"
msgstr ""
#: src/modules/rooms/room.py:231
#, possible-python-brace-format
msgctxt "room|embed:expiry|description"
msgid "Your private room in **{guild}** has expired!"
msgstr ""
#: src/modules/rooms/room.py:245
#, possible-python-brace-format
msgctxt "room|tick|rent_deducted"
msgid "Daily rent deducted from room balance. New balance: {coin}**{amount}**"
msgstr ""
#: src/modules/rooms/settings.py:21
msgctxt "guildset:room_category"
msgid "rooms_category"
msgstr ""
#: src/modules/rooms/settings.py:25
msgctxt "guildset:rooms_category|desc"
msgid "Category in which to create private voice channels."
msgstr ""
#: src/modules/rooms/settings.py:29
msgctxt "guildset:room_category|long_desc"
msgid ""
"When a member uses {cmds[room rent]} to rent a new private room, a private "
"voice channel will be created under this category, manageable by the member. "
"I must have permission to create new channels in this category, as well as "
"to manage permissions."
msgstr ""
#: src/modules/rooms/settings.py:37
msgctxt "guildset:room_category|accepts"
msgid "Private room category name or id."
msgstr ""
#: src/modules/rooms/settings.py:51
msgctxt "guildset:rooms_category|set_response:unset"
msgid ""
"The private room category has been unset. Existing private rooms will not be "
"affected. Delete the channels manually to remove the private rooms."
msgstr ""
#: src/modules/rooms/settings.py:57
#, possible-python-brace-format
msgctxt "guildset:rooms_category|set_response:set"
msgid ""
"Private room category has been set to {channel}. Existing private rooms will "
"be moved."
msgstr ""
#: src/modules/rooms/settings.py:67
#, possible-python-brace-format
msgctxt "guildset:room_category|set_using"
msgid "{cmd} or category selector below."
msgstr ""
#: src/modules/rooms/settings.py:76
msgctxt "guildset:rooms_price"
msgid "room_rent"
msgstr ""
#: src/modules/rooms/settings.py:80
msgctxt "guildset:rooms_rent|desc"
msgid "Daily rent price for a private room."
msgstr ""
#: src/modules/rooms/settings.py:84
msgctxt "guildset:rooms_rent|long_desc"
msgid ""
"Members will be charged this many LionCoins for each day they rent a private "
"room."
msgstr ""
#: src/modules/rooms/settings.py:88
msgctxt "guildset:rooms_rent|accepts"
msgid "Number of LionCoins charged per day for a private room."
msgstr ""
#: src/modules/rooms/settings.py:100
#, possible-python-brace-format
msgctxt "guildset:rooms_price|set_response"
msgid "Private rooms will now cost {coin}**{amount}** per 24 hours."
msgstr ""
#: src/modules/rooms/settings.py:112
msgctxt "guildset:rooms_slots"
msgid "room_member_cap"
msgstr ""
#: src/modules/rooms/settings.py:115
msgctxt "guildset:rooms_slots|desc"
msgid "Maximum number of members in each private room."
msgstr ""
#: src/modules/rooms/settings.py:119
msgctxt "guildset:rooms_slots|long_desc"
msgid ""
"Private room owners may invite other members to their private room via the "
"UI, or through the {cmds[room invite]} command. This setting limits the "
"maximum number of members a private room may hold."
msgstr ""
#: src/modules/rooms/settings.py:125
msgctxt "guildset:rooms_slots|accepts"
msgid "Maximum number of members allowed per private room."
msgstr ""
#: src/modules/rooms/settings.py:137
#, possible-python-brace-format
msgctxt "guildset:rooms_slots|set_response"
msgid "Private rooms are now capped to **{amount}** members."
msgstr ""
#: src/modules/rooms/settings.py:146
msgctxt "guildset:rooms_visible"
msgid "room_visibility"
msgstr ""
#: src/modules/rooms/settings.py:149
msgctxt "guildset:rooms_visible|desc"
msgid "Whether private rented rooms are visible to non-members."
msgstr ""
#: src/modules/rooms/settings.py:153
msgctxt "guildset:rooms_visible|long_desc"
msgid ""
"If enabled, new private rooms will be created with the `VIEW_CHANNEL` "
"permission enabled for the `@everyone` role."
msgstr ""
#: src/modules/rooms/settings.py:157
msgctxt "guildset:rooms_visible|accepts"
msgid "Visible/Invisible"
msgstr ""
#: src/modules/rooms/settings.py:159
msgctxt "guildset:rooms_visible|output:true"
msgid "Visible"
msgstr ""
#: src/modules/rooms/settings.py:160
msgctxt "guildset:rooms_visible|output:false"
msgid "Invisible"
msgstr ""
#: src/modules/rooms/settings.py:166
msgctxt "guildset:rooms_visible|parse:truthy_values"
msgid "visible|enabled|yes|true|on|enable|1"
msgstr ""
#: src/modules/rooms/settings.py:170
msgctxt "guildset:rooms_visible|parse:falsey_values"
msgid "invisible|disabled|no|false|off|disable|0"
msgstr ""
#: src/modules/rooms/settings.py:182
msgctxt "guildset:rooms_visible|set_response:enabled"
msgid "Private rooms will now be visible to everyone."
msgstr ""
#: src/modules/rooms/settings.py:187
msgctxt "guildset:rooms_visible|set_response:disabled"
msgid "Private rooms will now only be visible to their members (and admins)."
msgstr ""
#: src/modules/rooms/settings.py:197
#, possible-python-brace-format
msgctxt "guildset:rooms_visible|set_using"
msgid "{cmd} or toggle below."
msgstr ""

View File

@@ -0,0 +1,941 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: src/modules/schedule/cog.py:428
msgctxt "create_booking|error:no_lobby"
msgid ""
"This server has not set a `session_lobby`, so the scheduled session system "
"is disabled!"
msgstr ""
#: src/modules/schedule/cog.py:440
msgctxt "create_booking|error:no_member"
msgid "An unknown Discord error occurred. Please try again in a few minutes."
msgstr ""
#: src/modules/schedule/cog.py:448
msgctxt "create_booking|error:blacklisted"
msgid ""
"You have been blacklisted from the scheduled session system in this server."
msgstr ""
#: src/modules/schedule/cog.py:459
#, possible-python-brace-format
msgctxt "create_booking|error:insufficient_balance"
msgid ""
"Booking a session costs {coin}**{required}**, but you only have {coin}"
"**{balance}**."
msgid_plural ""
"Booking `{count}` sessions costs {coin}**{required}**, but you only have "
"{coin}**{balance}**."
msgstr[0] ""
msgstr[1] ""
#: src/modules/schedule/cog.py:473
msgctxt "create_booking|error:already_booked"
msgid "One or more requested timeslots are already booked!"
msgstr ""
#: src/modules/schedule/cog.py:668
msgctxt "cmd:schedule"
msgid "schedule"
msgstr ""
#: src/modules/schedule/cog.py:671
msgctxt "cmd:schedule|desc"
msgid "View and manage your scheduled session."
msgstr ""
#: src/modules/schedule/cog.py:699
#, possible-python-brace-format
msgctxt "cmd:schedule|cancel_booking|error:parse_slot"
msgid ""
"Time slot `{provided}` not recognised. Please select a session to cancel "
"from the autocomplete options."
msgstr ""
#: src/modules/schedule/cog.py:707
#, possible-python-brace-format
msgctxt "cmd:schedule|cancel_booking|error:not_booked"
msgid "Could not cancel {time} booking because it is not booked!"
msgstr ""
#: src/modules/schedule/cog.py:716
#, possible-python-brace-format
msgctxt "cmd:schedule|cancel_booking|error:too_soon"
msgid "Cannot cancel {time} booking because it is running or starting soon!"
msgstr ""
#: src/modules/schedule/cog.py:729
#, possible-python-brace-format
msgctxt "cmd:schedule|cancel_booking|success"
msgid "Successfully cancelled your booking at {time}."
msgstr ""
#: src/modules/schedule/cog.py:742
#, possible-python-brace-format
msgctxt "cmd:schedule|create_booking|error:parse_slot"
msgid ""
"Time slot `{provided}` not recognised. Please select a session to cancel "
"from the autocomplete options."
msgstr ""
#: src/modules/schedule/cog.py:750
#, possible-python-brace-format
msgctxt "cmd:schedule|create_booking|error:already_booked"
msgid "You have already booked a scheduled session for {time}."
msgstr ""
#: src/modules/schedule/cog.py:759
#, possible-python-brace-format
msgctxt "cmd:schedule|create_booking|error:too_soon"
msgid "Cannot book session at {time} because it is running or starting soon!"
msgstr ""
#: src/modules/schedule/cog.py:771
#, possible-python-brace-format
msgctxt "cmd:schedule|create_booking|success"
msgid "You have successfully scheduled a session at {time}."
msgstr ""
#: src/modules/schedule/cog.py:838
msgctxt "cmd:configure_schedule"
msgid "schedule"
msgstr ""
#: src/modules/schedule/cog.py:841
msgctxt "cmd:configure_schedule|desc"
msgid "Configure Scheduled Session system"
msgstr ""
#: src/modules/schedule/settings.py:36
msgctxt "guildset:session_lobby"
msgid "session_lobby"
msgstr ""
#: src/modules/schedule/settings.py:39
msgctxt "guildset:session_lobby|desc"
msgid "Channel to post scheduled session announcement and status to."
msgstr ""
#: src/modules/schedule/settings.py:43
msgctxt "guildset:session_lobby|long_desc"
msgid ""
"Channel in which to announce scheduled sessions and post their status. I "
"must have the `MANAGE_WEBHOOKS` permission in this channel.\n"
"**This must be configured in order for the scheduled session system to "
"function.**"
msgstr ""
#: src/modules/schedule/settings.py:49
msgctxt "guildset:session_lobby|accepts"
msgid "Name or id of the session lobby channel."
msgstr ""
#: src/modules/schedule/settings.py:61
#, possible-python-brace-format
msgctxt "guildset:session_lobby|set_response|set"
msgid "Scheduled sessions will now be announced in {channel}"
msgstr ""
#: src/modules/schedule/settings.py:66
msgctxt "guildset:session_lobby|set_response|unset"
msgid ""
"The schedule session lobby has been unset. Shutting down scheduled session "
"system."
msgstr ""
#: src/modules/schedule/settings.py:76
msgctxt "guildset:session_lobby|formatted|unset"
msgid "`Not Set` (The scheduled session system is disabled.)"
msgstr ""
#: src/modules/schedule/settings.py:81
#, possible-python-brace-format
msgctxt "guildset:session_lobby|formatted|set"
msgid "<#{channelid}>"
msgstr ""
#: src/modules/schedule/settings.py:90
msgctxt "guildset:session_room"
msgid "session_room"
msgstr ""
#: src/modules/schedule/settings.py:93
msgctxt "guildset:session_room|desc"
msgid "Special voice channel open to scheduled session members."
msgstr ""
#: src/modules/schedule/settings.py:97
msgctxt "guildset:session_room|long_desc"
msgid ""
"If set, this voice channel serves as a dedicated room for scheduled session "
"members. During (and slightly before) each scheduled session, all members "
"who have booked the session will be given permission to join the voice "
"channel (via permission overwrites). I require the `MANAGE_CHANNEL`, "
"`MANAGE_PERMISSIONS`, `CONNECT`, and `VIEW_CHANNEL` permissions in this "
"channel, and my highest role must be higher than all permission overwrites "
"set in the channel. Furthermore, if this is set to a *category* channel, "
"then the permission overwrites will apply to all *synced* channels under the "
"category, as usual."
msgstr ""
#: src/modules/schedule/settings.py:107
msgctxt "guildset:session_room|accepts"
msgid "Name or id of the session room voice channel."
msgstr ""
#: src/modules/schedule/settings.py:120
#, possible-python-brace-format
msgctxt "guildset:session_room|set_response|set"
msgid "Schedule session members will now be given access to {channel}"
msgstr ""
#: src/modules/schedule/settings.py:125
msgctxt "guildset:session_room|set_response|unset"
msgid "The dedicated schedule session room has been removed."
msgstr ""
#: src/modules/schedule/settings.py:132
msgctxt "guildset:session_channels"
msgid "session_channels"
msgstr ""
#: src/modules/schedule/settings.py:135
msgctxt "guildset:session_channels|desc"
msgid "Voice channels in which to track activity for scheduled sessions."
msgstr ""
#: src/modules/schedule/settings.py:139
msgctxt "guildset:session_channels|long_desc"
msgid ""
"Only activity in these channels (and in `session_room` if set) will count "
"towards scheduled session attendance. If a category is selected, then all "
"channels under the category will also be included. Activity tracking also "
"respects the `untracked_voice_channels` setting."
msgstr ""
#: src/modules/schedule/settings.py:146
msgctxt "guildset:session_channels|accepts"
msgid "Comma separated list of session channel names or ids."
msgstr ""
#: src/modules/schedule/settings.py:163
#, possible-python-brace-format
msgctxt "guildset:session_channels|set_response|set"
msgid ""
"Activity in the following sessions will now count towards scheduled session "
"attendance: {channels}"
msgstr ""
#: src/modules/schedule/settings.py:168
msgctxt "guildset:session_channels|set_response|unset"
msgid ""
"Activity in all (tracked) voice channels will now count towards session "
"attendance."
msgstr ""
#: src/modules/schedule/settings.py:178
msgctxt "guildset:session_channels|formatted|unset"
msgid "All Channels (excluding `untracked_channels`)"
msgstr ""
#: src/modules/schedule/settings.py:208
msgctxt "guildset:schedule_cost"
msgid "schedule_cost"
msgstr ""
#: src/modules/schedule/settings.py:211
msgctxt "guildset:schedule_cost|desc"
msgid "Booking cost for each scheduled session."
msgstr ""
#: src/modules/schedule/settings.py:215
msgctxt "guildset:schedule_cost|long_desc"
msgid ""
"Members will be charged this many LionCoins for each scheduled session they "
"book."
msgstr ""
#: src/modules/schedule/settings.py:219
msgctxt "guildset:schedule_cost|accepts"
msgid "Price of each session booking (non-negative integer)."
msgstr ""
#: src/modules/schedule/settings.py:231
#, possible-python-brace-format
msgctxt "guildset:schedule_cost|set_response"
msgid ""
"Schedule session bookings will now cost {coin} **{amount}** per timeslot."
msgstr ""
#: src/modules/schedule/settings.py:244
#, possible-python-brace-format
msgctxt "guildset:schedule_cost|formatted"
msgid "{coin}**{amount}** per booking."
msgstr ""
#: src/modules/schedule/settings.py:253
msgctxt "guildset:attendance_reward"
msgid "attendance_reward"
msgstr ""
#: src/modules/schedule/settings.py:256
msgctxt "guildset:attendance_reward|desc"
msgid "Reward for attending a booked scheduled session."
msgstr ""
#: src/modules/schedule/settings.py:260
msgctxt "guildset:attendance_reward|long_desc"
msgid ""
"When a member successfully attends a scheduled session they booked, they "
"will be awarded this many LionCoins. Should generally be more than the "
"`schedule_cost` setting."
msgstr ""
#: src/modules/schedule/settings.py:266
msgctxt "guildset:attendance_reward|accepts"
msgid "Number of coins to reward session attendance."
msgstr ""
#: src/modules/schedule/settings.py:278
#, possible-python-brace-format
msgctxt "guildset:attendance_reward|set_response"
msgid ""
"Members will be rewarded {coin}**{amount}** when they attend a scheduled "
"session."
msgstr ""
#: src/modules/schedule/settings.py:288
#, possible-python-brace-format
msgctxt "guildset:attendance_reward|formatted"
msgid "{coin}**{amount}** upon attendance."
msgstr ""
#: src/modules/schedule/settings.py:297
msgctxt "guildset:attendance_bonus"
msgid "group_attendance_bonus"
msgstr ""
#: src/modules/schedule/settings.py:300
msgctxt "guildset:attendance_bonus|desc"
msgid "Bonus reward given when all members attend a scheduled session."
msgstr ""
#: src/modules/schedule/settings.py:304
msgctxt "guildset:attendance_bonus|long_desc"
msgid ""
"When all members who have booked a session successfully attend the session, "
"they will be given this bonus in *addition* to the `attendance_reward`."
msgstr ""
#: src/modules/schedule/settings.py:309
msgctxt "guildset:attendance_bonus|accepts"
msgid "Bonus coins rewarded when everyone attends a session."
msgstr ""
#: src/modules/schedule/settings.py:321
#, possible-python-brace-format
msgctxt "guildset:attendance_bonus|set_response"
msgid ""
"Session members will be rewarded an additional {coin}**{amount}** when "
"everyone attends."
msgstr ""
#: src/modules/schedule/settings.py:331
#, possible-python-brace-format
msgctxt "guildset:attendance_bonus|formatted"
msgid "{coin}**{amount}** bonus when all booked members attend."
msgstr ""
#: src/modules/schedule/settings.py:340
msgctxt "guildset:min_attendance"
msgid "min_attendance"
msgstr ""
#: src/modules/schedule/settings.py:343
msgctxt "guildset:min_attendance|desc"
msgid "Minimum attendance before reward eligability."
msgstr ""
#: src/modules/schedule/settings.py:347
msgctxt "guildset:min_attendance|long_desc"
msgid ""
"Scheduled session members will need to attend the session for at least this "
"number of minutes before they are marked as having attended (and hence are "
"rewarded)."
msgstr ""
#: src/modules/schedule/settings.py:352
msgctxt "guildset:min_attendance|accepts"
msgid "Number of minutes (1-60) before attendance is counted."
msgstr ""
#: src/modules/schedule/settings.py:366
#, possible-python-brace-format
msgctxt "guildset:min_attendance|set_response"
msgid ""
"Members will be rewarded after they have attended booked sessions for at "
"least **`{amount}`** minutes."
msgstr ""
#: src/modules/schedule/settings.py:376
#, possible-python-brace-format
msgctxt "guildset:min_attendance|formatted"
msgid "**`{amount}`** minutes"
msgstr ""
#: src/modules/schedule/settings.py:397
msgctxt "guildset:min_attendance|parse|error"
msgid ""
"Minimum attendance must be an integer number of minutes between `1` and `60`."
msgstr ""
#: src/modules/schedule/settings.py:407
msgctxt "guildset:schedule_blacklist_role"
msgid "schedule_blacklist_role"
msgstr ""
#: src/modules/schedule/settings.py:410
msgctxt "guildset:schedule_blacklist_role|desc"
msgid "Role which disables scheduled session booking."
msgstr ""
#: src/modules/schedule/settings.py:414
msgctxt "guildset:schedule_blacklist_role|long_desc"
msgid ""
"Members with this role will not be allowed to book scheduled sessions in "
"this server. If the role is manually added, all future scheduled sessions "
"for the user are cancelled. This provides a way to stop repeatedly "
"unreliable members from blocking the group bonus for all members. "
"Alternatively, consider setting the booking cost (and reward) very high to "
"provide a strong disincentive for not attending a session."
msgstr ""
#: src/modules/schedule/settings.py:422
msgctxt "guildset:schedule_blacklist_role|accepts"
msgid "Blacklist role name or id."
msgstr ""
#: src/modules/schedule/settings.py:434
#, possible-python-brace-format
msgctxt "guildset:schedule_blacklist_role|set_response|set"
msgid "Members with {role} will be unable to book scheduled sessions."
msgstr ""
#: src/modules/schedule/settings.py:439
msgctxt "guildset:schedule_blacklist_role|set_response|unset"
msgid "The schedule blacklist role has been unset."
msgstr ""
#: src/modules/schedule/settings.py:449
#, possible-python-brace-format
msgctxt "guildset:schedule_blacklist_role|formatted|set"
msgid "{role} members will not be able to book scheduled sessions."
msgstr ""
#: src/modules/schedule/settings.py:454
msgctxt "guildset:schedule_blacklist_role|formatted|unset"
msgid "Not Set"
msgstr ""
#: src/modules/schedule/settings.py:463
msgctxt "guildset:schedule_blacklist_after"
msgid "schedule_blacklist_after"
msgstr ""
#: src/modules/schedule/settings.py:466
msgctxt "guildset:schedule_blacklist_after|desc"
msgid "Number of missed sessions within 24h before blacklisting."
msgstr ""
#: src/modules/schedule/settings.py:470
msgctxt "guildset:schedule_blacklist_after|long_desc"
msgid ""
"Members who miss more than this number of booked sessions in a single 24 "
"hour period will be automatically given the `blacklist_role`. Has no effect "
"if the `blacklist_role` is not set or if I do not have sufficient "
"permissions to assign the blacklist role."
msgstr ""
#: src/modules/schedule/settings.py:477
msgctxt "guildset:schedule_blacklist_after|accepts"
msgid "A number of missed sessions (1-24) before blacklisting."
msgstr ""
#: src/modules/schedule/settings.py:492
#, possible-python-brace-format
msgctxt "guildset:schedule_blacklist_after|set_response|set"
msgid ""
"Members will be blacklisted after **`{amount}`** missed sessions within "
"`24h`."
msgstr ""
#: src/modules/schedule/settings.py:497
msgctxt "guildset:schedule_blacklist_after|set_response|unset"
msgid ""
"Members will not be automatically blacklisted from booking scheduled "
"sessions."
msgstr ""
#: src/modules/schedule/settings.py:507
#, possible-python-brace-format
msgctxt "guildset:schedule_blacklist_after|formatted|set"
msgid "Blacklist after **`{amount}`** missed sessions within `24h`."
msgstr ""
#: src/modules/schedule/settings.py:512
msgctxt "guildset:schedule_blacklist_after|formatted|unset"
msgid "Do not automatically blacklist."
msgstr ""
#: src/modules/schedule/settings.py:524
msgctxt "guildset:schedule_blacklist_role|parse|error"
msgid "Blacklist threshold must be a number between `1` and `24`."
msgstr ""
#: src/modules/schedule/ui/settingui.py:69
msgctxt "ui:schedule_config|button:page0|label"
msgid "Page 1"
msgstr ""
#: src/modules/schedule/ui/settingui.py:88
msgctxt "ui:schedule_config|menu:lobby|placeholder"
msgid "Select Lobby Channel"
msgstr ""
#: src/modules/schedule/ui/settingui.py:105
msgctxt "ui:schedule_config|menu:room|placeholder"
msgid "Select Session Room"
msgstr ""
#: src/modules/schedule/ui/settingui.py:123
msgctxt "ui:schedule_config|menu:channels|placeholder"
msgid "Select Session Channels"
msgstr ""
#: src/modules/schedule/ui/settingui.py:137
msgctxt "ui:schedule_config|button:page1|label"
msgid "Page 2"
msgstr ""
#: src/modules/schedule/ui/settingui.py:152
msgctxt "ui:schedule_config|button:page2|label"
msgid "Page 3"
msgstr ""
#: src/modules/schedule/ui/settingui.py:169
msgctxt "ui:schedule_config|menu:blacklist_role|placeholder"
msgid "Select Blacklist Role"
msgstr ""
#: src/modules/schedule/ui/settingui.py:177
msgctxt "ui:schedule_config|embed|title"
msgid "Scheduled Session Configuration Panel"
msgstr ""
#: src/modules/schedule/ui/settingui.py:230
msgctxt "dash:schedule|title"
msgid "Scheduled Session Configuration ({commands[configure schedule]})"
msgstr ""
#: src/modules/schedule/ui/settingui.py:247
msgctxt "dash:schedule|section:schedule_channels|name"
msgid "Scheduled Session Channels ({commands[configure schedule]})"
msgstr ""
#: src/modules/schedule/ui/settingui.py:257
msgctxt "dash:schedule|section:schedule_rewards|name"
msgid "Scheduled Session Rewards ({commands[configure schedule]})"
msgstr ""
#: src/modules/schedule/ui/settingui.py:267
msgctxt "dash:schedule|section:schedule_blacklist|name"
msgid "Scheduled Session Blacklist ({commands[configure schedule]})"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:31
msgctxt "ui:schedule|about"
msgid "Guide tips here TBD"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:116
msgctxt "ui:schedule|button:clear|error:nothing"
msgid "No upcoming sessions to cancel! Your schedule is already clear."
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:129
msgctxt "ui:schedule|button:clear|success"
msgid "Successfully cancelled and refunded your upcoming scheduled sessions."
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:142
msgctxt "ui:schedule|button:clear|label"
msgid "Clear Schedule"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:158
msgctxt "ui:schedule|button:about|label"
msgid "About Schedule"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:184
msgctxt "ui:schedule|menu:booking|error:current_slot"
msgid "You cannot schedule a currently running session!"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:191
msgctxt "ui:schedule|menu:booking|error:next_slot"
msgid "Too late! You cannot schedule a session starting in the next minute."
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:198
msgctxt "ui:schedule|menu:booking|error:already_booked"
msgid "You have already booked one or more of the requested sessions!"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:211
#, possible-python-brace-format
msgctxt "ui:schedule|menu:booking|error:insufficient_balance"
msgid ""
"Booking `{count}` scheduled sessions requires {coin}**{required}**, but you "
"only have {coin}**{balance}**!"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:227
#, possible-python-brace-format
msgctxt "ui:schedule|menu:booking|success"
msgid "Successfully booked your scheduled session at {times}."
msgid_plural ""
"Successfully booked the following scheduled sessions.\n"
"{times}"
msgstr[0] ""
msgstr[1] ""
#: src/modules/schedule/ui/scheduleui.py:250
msgctxt "ui:schedule|menu:booking|placeholder:blacklisted"
msgid "Book Sessions (Cannot book - Blacklisted)"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:258
#, possible-python-brace-format
msgctxt "ui:schedule|menu:booking|placeholder:regular"
msgid "Book Sessions ({amount} LC)"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:303
#, possible-python-brace-format
msgctxt "ui:schedule|menu:slots|option|format"
msgid "{day} {time} ({until})"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:307
msgctxt "ui:schedule|menu:slots|option|day:today"
msgid "Today"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:311
msgctxt "ui:schedule|menu:slots|option|day:tomorrow"
msgid "Tomorrow"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:333
#, possible-python-brace-format
msgctxt "ui:schedule|format_until|positive"
msgid "in <1 hour"
msgid_plural "in {number} hours"
msgstr[0] ""
msgstr[1] ""
#: src/modules/schedule/ui/scheduleui.py:340
msgctxt "ui:schedule|format_until|now"
msgid "right now!"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:362
msgctxt "ui:schedule|menu:cancel|error:current_slot"
msgid ""
"You cannot cancel a currently running *scheduled* session! Please attend it "
"if possible."
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:368
msgctxt "ui:schedule|menu:cancel|error:too_late"
msgid ""
"Too late! You cannot cancel a scheduled session within a minute of it "
"starting. Please attend it if possible."
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:385
msgctxt "ui:schedule|menu:cancel|error:already_cancelled"
msgid "The selected bookings no longer exist! Nothing to cancel."
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:395
#, possible-python-brace-format
msgctxt "ui:schedule|menu:cancel|success"
msgid ""
"Successfully cancelled and refunded your scheduled session booking for "
"{times}."
msgid_plural ""
"Successfully cancelled and refunded your scheduled session bookings:\n"
"{times}."
msgstr[0] ""
msgstr[1] ""
#: src/modules/schedule/ui/scheduleui.py:416
msgctxt "ui:schedule|menu:cancel|placeholder"
msgid "Cancel booked sessions"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:438
msgctxt "ui:schedule|embed|author"
msgid "Your Scheduled Sessions and Past Statistics"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:450
msgctxt "ui:schedule|embed|field:stats|field:recent"
msgid "Recent"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:457
msgctxt "ui:schedule|embed|field:stats|field:alltime"
msgid "All Time"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:463
msgctxt "ui:schedule|embed|field:stats|field:streak"
msgid "Streak"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:468
#, possible-python-brace-format
msgctxt "ui:schedule|embed|field:stats|field:streak|value:zero"
msgid "One session attended! Keep it up!"
msgid_plural "**{streak}** sessions attended in a row! Good job!"
msgstr[0] ""
msgstr[1] ""
#: src/modules/schedule/ui/scheduleui.py:475
msgctxt "ui:schedule|embed|field:stats|field:streak|value:positive"
msgid "No streak yet!"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:483
msgctxt "ui:schedule|embed|field:stats|name"
msgid "Session Statistics"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:502
msgctxt "ui:schedule|embed|field:upcoming|name"
msgid "Upcoming Sessions"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:506
msgctxt "ui:schedule|embed|field:upcoming|value:empty"
msgid "No sessions scheduled yet!"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:520
#, possible-python-brace-format
msgctxt "ui:schedule|embed|stats_format"
msgid ""
"**{attended}** attended out of **{total}** booked.\r\n"
"**{percent}%** attendance rate.\r\n"
"**{average}** average attendance time."
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:534
#, possible-python-brace-format
msgctxt "ui:schedule|booking_format:short"
msgid "`{until}` | {start} - {end}"
msgstr ""
#: src/modules/schedule/ui/scheduleui.py:538
#, possible-python-brace-format
msgctxt "ui:schedule|booking_format:long"
msgid "> `{until}` | {start} - {end}"
msgstr ""
#: src/modules/schedule/ui/sessionui.py:52
msgctxt "ui:sessionui|button:book|label"
msgid "Book"
msgstr ""
#: src/modules/schedule/ui/sessionui.py:56
msgctxt "ui:sessionui|button:cancel|label"
msgid "Cancel"
msgstr ""
#: src/modules/schedule/ui/sessionui.py:60
msgctxt "ui:sessionui|button:schedule|label"
msgid "Open Schedule"
msgstr ""
#: src/modules/schedule/ui/sessionui.py:87
msgctxt "ui:session|button:book|error:starting_soon"
msgid "Too late! This session has started or is starting shortly."
msgstr ""
#: src/modules/schedule/ui/sessionui.py:94
msgctxt "ui:session|button:book|error:already_booked"
msgid "You are already a member of this session!"
msgstr ""
#: src/modules/schedule/ui/sessionui.py:101
msgctxt "ui:session|button:book|success"
msgid "Successfully booked this session."
msgstr ""
#: src/modules/schedule/ui/sessionui.py:115
msgctxt "ui:session|button:book|error|title"
msgid "Could not book session"
msgstr ""
#: src/modules/schedule/ui/sessionui.py:133
msgctxt "ui:session|button:cancel|error:starting_soon"
msgid "Too late! This session has started or is starting shortly."
msgstr ""
#: src/modules/schedule/ui/sessionui.py:140
msgctxt "ui:session|button:cancel|error:not_booked"
msgid "You are not a member of this session!"
msgstr ""
#: src/modules/schedule/ui/sessionui.py:150
msgctxt "ui:session|button:cancel|success"
msgid "Successfully cancelled this session."
msgstr ""
#: src/modules/schedule/ui/sessionui.py:164
msgctxt "ui:session|button:cancel|error|title"
msgid "Could not cancel session"
msgstr ""
#: src/modules/schedule/core/session.py:186
msgctxt "session|error:lobby_webhook_perms"
msgid ""
"Insufficient permissions to create a webhook in this channel. I require the "
"`MANAGE_WEBHOOKS` permission."
msgstr ""
#: src/modules/schedule/core/session.py:261
#, possible-python-brace-format
msgctxt "session|prepare|error:room_permissions"
msgid ""
"Could not prepare the configured session room {room} for the next scheduled "
"session! I require the `MANAGE_CHANNEL`, `MANAGE_ROLES`, `CONNECT` and "
"`VIEW_CHANNEL` permissions."
msgstr ""
#: src/modules/schedule/core/session.py:304
#, possible-python-brace-format
msgctxt "session|open|error:room_permissions"
msgid ""
"Could not set up the configured session room {room} for this scheduled "
"session! I require the `MANAGE_CHANNEL`, `MANAGE_ROLES`, `CONNECT` and "
"`VIEW_CHANNEL` permissions."
msgstr ""
#: src/modules/schedule/core/session.py:345
#, possible-python-brace-format
msgctxt "session|status|title"
msgid "Session {start} - {end}"
msgstr ""
#: src/modules/schedule/core/session.py:356
msgctxt "session|status|desc:cancelled"
msgid ""
"I cancelled this scheduled session because I was unavailable. All members "
"who booked the session have been refunded."
msgstr ""
#: src/modules/schedule/core/session.py:363
msgctxt "session|status|desc:no_members"
msgid "*No members scheduled this session.*"
msgstr ""
#: src/modules/schedule/core/session.py:369
#, possible-python-brace-format
msgctxt "session|status:preparing|desc:has_members"
msgid "Starting {start}"
msgstr ""
#: src/modules/schedule/core/session.py:372
msgctxt "session|status:preparing|field:members"
msgid "Members"
msgstr ""
#: src/modules/schedule/core/session.py:379
#, possible-python-brace-format
msgctxt "session|status:running|desc:has_members"
msgid "Finishing {start}"
msgstr ""
#: src/modules/schedule/core/session.py:413
msgctxt "session|status:running|field:waiting"
msgid "Waiting For"
msgstr ""
#: src/modules/schedule/core/session.py:419
msgctxt "session|status:running|field:attending"
msgid "Attending"
msgstr ""
#: src/modules/schedule/core/session.py:425
msgctxt "session|status:running|field:attended"
msgid "Attended"
msgstr ""
#: src/modules/schedule/core/session.py:450
#, possible-python-brace-format
msgctxt "session|status:finished|desc:everyone_att"
msgid ""
"Everyone attended the session! All members were rewarded with {coin} "
"**{reward} + {bonus}**!"
msgstr ""
#: src/modules/schedule/core/session.py:461
#, possible-python-brace-format
msgctxt "session|status:finished|desc:some_att"
msgid ""
"Everyone who attended was rewarded with {coin} **{reward}**! Some members "
"did not attend so everyone missed out on the bonus {coin} **{bonus}**.\n"
"**Members who missed their session have all future sessions cancelled "
"without refund!*"
msgstr ""
#: src/modules/schedule/core/session.py:473
msgctxt "session|status:finished|desc:some_att"
msgid ""
"No-one attended this session! No-one received rewards.\n"
"**Members who missed their session have all future sessions cancelled "
"without refund!*"
msgstr ""
#: src/modules/schedule/core/session.py:479
msgctxt "session|status:finished|field:attended"
msgid "Attended"
msgstr ""
#: src/modules/schedule/core/session.py:484
msgctxt "session|status:finished|field:missing"
msgid "Missing"
msgstr ""

View File

@@ -0,0 +1,218 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/settings/ui.py:179
msgctxt "setting|formatted|notset"
msgid "Not Set"
msgstr ""
#: src/settings/ui.py:338
#, possible-python-brace-format
msgctxt "setting|summary_embed|title"
msgid "Configuration options for `{name}`"
msgstr ""
#: src/settings/ui.py:350
msgctxt "setting|summary_table|field:currently|key"
msgid "Currently"
msgstr ""
#: src/settings/ui.py:357
msgctxt "setting|summary_table|field:default|key"
msgid "By Default"
msgstr ""
#: src/settings/ui.py:364
msgctxt "setting|summary_table|field:set|key"
msgid "Set Using"
msgstr ""
#: src/settings/setting_types.py:48
msgctxt "settype:string|accepts"
msgid "Any Text"
msgstr ""
#: src/settings/setting_types.py:89
#, possible-python-brace-format
msgctxt "settype:string|error"
msgid "Provided string is too long! Maximum length: {maxlen} characters."
msgstr ""
#: src/settings/setting_types.py:114
msgctxt "settype:emoji|accepts"
msgid "Paste a builtin emoji, custom emoji, or emoji id."
msgstr ""
#: src/settings/setting_types.py:167
#, possible-python-brace-format
msgctxt "settype:emoji|error:parse"
msgid ""
"Could not parse `{provided}` as a Discord emoji. Supported formats are "
"builtin emojis (e.g. `{builtin}`), custom emojis (e.g. {custom}), or custom "
"emoji ids (e.g. `{custom_id}`)."
msgstr ""
#: src/settings/setting_types.py:236
msgctxt "settype:channel|accepts"
msgid "A channel name or id"
msgstr ""
#: src/settings/setting_types.py:281
#, possible-python-brace-format
msgctxt "settype:channel|parse|error:not_found"
msgid "Channel `{string}` could not be found in this guild!"
msgstr ""
#: src/settings/setting_types.py:367
msgctxt "settype:role|accepts"
msgid "A role name or id"
msgstr ""
#: src/settings/setting_types.py:426
#, possible-python-brace-format
msgctxt "settype:role|parse|error:not_found"
msgid "Role `{string}` could not be found in this guild!"
msgstr ""
#: src/settings/setting_types.py:491
msgctxt "settype:bool|accepts"
msgid "Enabled/Disabled"
msgstr ""
#: src/settings/setting_types.py:496
msgctxt "settype:bool|parse:truthy_values"
msgid "enabled|yes|true|on|enable|1"
msgstr ""
#: src/settings/setting_types.py:500
msgctxt "settype:bool|parse:falsey_values"
msgid "disabled|no|false|off|disable|0"
msgstr ""
#: src/settings/setting_types.py:505
msgctxt "settype:bool|output:true"
msgid "On"
msgstr ""
#: src/settings/setting_types.py:506
msgctxt "settype:bool|output:false"
msgid "Off"
msgstr ""
#: src/settings/setting_types.py:507
msgctxt "settype:bool|output:none"
msgid "Not Set"
msgstr ""
#: src/settings/setting_types.py:618
msgctxt "settype:integer|accepts"
msgid "An integer"
msgstr ""
#: src/settings/setting_types.py:681
msgctxt "settype:emoji|desc"
msgid "Unicode or custom emoji"
msgstr ""
#: src/settings/setting_types.py:753
msgctxt "settype:guildid|accepts"
msgid "Any Snowflake ID"
msgstr ""
#: src/settings/setting_types.py:822
msgctxt "settype:timezone|accepts"
msgid "A timezone name from the 'tz database' (e.g. 'Europe/London')"
msgstr ""
#: src/settings/setting_types.py:892
msgctxt "settype:timezone|summary_table|field:supported|key"
msgid "Supported"
msgstr ""
#: src/settings/setting_types.py:896
#, possible-python-brace-format
msgctxt "settype:timezone|summary_table|field:supported|value"
msgid "Any timezone from the [tz database]({link})."
msgstr ""
#: src/settings/setting_types.py:913
#, possible-python-brace-format
msgctxt "set_type:timezone|acmpl|no_matching"
msgid "No timezones matching '{input}'!"
msgstr ""
#: src/settings/setting_types.py:926
#, possible-python-brace-format
msgctxt "set_type:timezone|acmpl|choice"
msgid "{tz} (Currently {now})"
msgstr ""
#: src/settings/setting_types.py:956
msgctxt "settype:timestamp|accepts"
msgid "A timestamp in the form YYYY-MM-DD HH:MM"
msgstr ""
#: src/settings/setting_types.py:985
#, possible-python-brace-format
msgctxt "settype:timestamp|parse|error:invalid"
msgid ""
"Could not parse `{provided}` as a timestamp. Please use `YYYY-MM-DD HH:MM` "
"format."
msgstr ""
#: src/settings/setting_types.py:1016
msgctxt "settype:raw|accepts"
msgid "Anything"
msgstr ""
#: src/settings/setting_types.py:1069
msgctxt "settype:enum|accepts"
msgid "A valid option."
msgstr ""
#: src/settings/setting_types.py:1119
#, possible-python-brace-format
msgctxt "settype:enum|parse|error:not_found"
msgid "`{provided}` is not a valid option!"
msgstr ""
#: src/settings/setting_types.py:1167
msgctxt "settype:duration|accepts"
msgid "A number of days, hours, minutes, and seconds, e.g. `2d 4h 10s`."
msgstr ""
#: src/settings/setting_types.py:1348
msgctxt "settype:channel_list|accepts"
msgid "Comma separated list of channel ids."
msgstr ""
#: src/settings/setting_types.py:1359
msgctxt "settype:role_list|accepts"
msgid "Comma separated list of role ids."
msgstr ""
#: src/settings/setting_types.py:1375
msgctxt "settype:stringlist|accepts"
msgid "Comma separated strings."
msgstr ""
#: src/settings/setting_types.py:1386
msgctxt "settype:guildidlist|accepts"
msgid "Comma separated list of guild ids."
msgstr ""

573
locales/templates/shop.pot Normal file
View File

@@ -0,0 +1,573 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/shop/cog.py:108
msgctxt "group:editshop"
msgid "editshop"
msgstr ""
#: src/modules/shop/cog.py:117
msgctxt "group:shop"
msgid "shop"
msgstr ""
#: src/modules/shop/cog.py:123
msgctxt "cmd:shop_open"
msgid "open"
msgstr ""
#: src/modules/shop/cog.py:124
msgctxt "cmd:shop_open|desc"
msgid "Open the server shop."
msgstr ""
#: src/modules/shop/cog.py:150
msgctxt "cmd:shop_open|error:no_shops"
msgid "There is nothing to buy!"
msgstr ""
#: src/modules/shop/cog.py:212
msgctxt "ui:stores|button:close|label"
msgid "Close"
msgstr ""
#: src/modules/shop/cog.py:219
msgctxt "ui:stores|button:close|response|title"
msgid "Shop Closed"
msgstr ""
#: src/modules/shop/shops/colours.py:103
#, possible-python-brace-format
msgctxt "ui:colourstore|menu:buycolours|label"
msgid "{name} ({price} LC)"
msgstr ""
#: src/modules/shop/shops/colours.py:108
#, possible-python-brace-format
msgctxt "ui:colourstore|menu:buycolours|label"
msgid "{name} (This is your colour!)"
msgstr ""
#: src/modules/shop/shops/colours.py:113
#, possible-python-brace-format
msgctxt "ui:colourstore|menu:buycolours|desc"
msgid "Colour: {colour}"
msgstr ""
#: src/modules/shop/shops/colours.py:118
msgctxt "ui:colourstore|menu:buycolours|desc"
msgid "Colour: Unknown"
msgstr ""
#: src/modules/shop/shops/colours.py:132
msgctxt "shop:colours|name"
msgid "Colour Shop"
msgstr ""
#: src/modules/shop/shops/colours.py:169
msgctxt "shop:colour|purchase|error:not_purchasable"
msgid "This item may not be purchased!"
msgstr ""
#: src/modules/shop/shops/colours.py:182
msgctxt "shop:colour|purchase|error:no_guild"
msgid "Could not retrieve the server from Discord!"
msgstr ""
#: src/modules/shop/shops/colours.py:192
msgctxt "shop:colour|purchase|error:no_member"
msgid "Could not retrieve the member from Discord."
msgstr ""
#: src/modules/shop/shops/colours.py:202
msgctxt "shop:colour|purchase|error:no_role"
msgid "This colour role could not be found in the server."
msgstr ""
#: src/modules/shop/shops/colours.py:211
#, possible-python-brace-format
msgctxt "shop:colour|purchase|error:low_balance"
msgid ""
"This item costs {coin}{amount}!\n"
"Your balance is {coin}{balance}"
msgstr ""
#: src/modules/shop/shops/colours.py:226
msgctxt "shop:colour|purchase|error:owned"
msgid "You already own this item!"
msgstr ""
#: src/modules/shop/shops/colours.py:260
msgctxt "shop:colour|purchase|error:failed_no_role"
msgid "This colour role no longer exists!"
msgstr ""
#: src/modules/shop/shops/colours.py:267
msgctxt "shop:colour|purchase|error:failed_permissions"
msgid "I do not have enough permissions to give you this colour role!"
msgstr ""
#: src/modules/shop/shops/colours.py:274
msgctxt "shop:colour|purchase|error:failed_unknown"
msgid "An unknown error occurred while giving you this colour role!"
msgstr ""
#: src/modules/shop/shops/colours.py:343
msgctxt "grp:editshop_colours"
msgid "colours"
msgstr ""
#: src/modules/shop/shops/colours.py:348
msgctxt "cmd:editshop_colours_create"
msgid "create"
msgstr ""
#: src/modules/shop/shops/colours.py:351
msgctxt "cmd:editshop_colours_create|desc"
msgid "Create a new colour role with the given colour."
msgstr ""
#: src/modules/shop/shops/colours.py:355
msgctxt "cmd:editshop_colours_create|param:colour"
msgid "colour"
msgstr ""
#: src/modules/shop/shops/colours.py:356
msgctxt "cmd:editshop_colours_create|param:name"
msgid "name"
msgstr ""
#: src/modules/shop/shops/colours.py:357
msgctxt "cmd:editshop_colours_create|param:price"
msgid "price"
msgstr ""
#: src/modules/shop/shops/colours.py:362
msgctxt "cmd:editshop_colours_create|param:colour|desc"
msgid "What colour should the role be? (As a hex code, e.g. #AB22AB)"
msgstr ""
#: src/modules/shop/shops/colours.py:366
msgctxt "cmd:editshop_colours_create|param:name|desc"
msgid "What should the colour role be called?"
msgstr ""
#: src/modules/shop/shops/colours.py:370
msgctxt "cmd:editshop_colours_create|param:price|desc"
msgid "How much should the colour role cost?"
msgstr ""
#: src/modules/shop/shops/colours.py:392
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_create|error:parse_colour"
msgid ""
"I could not extract a colour value from `{colour}`!\n"
"Please enter the colour as a hex string, e.g. `#FA0BC1`"
msgstr ""
#: src/modules/shop/shops/colours.py:402
msgctxt "cmd:editshop_colours_create|error:perms"
msgid ""
"I do not have permission to create server roles!\n"
"Please either give me this permission, or create the role manually and use `/"
"editshop colours add` instead."
msgstr ""
#: src/modules/shop/shops/colours.py:418
msgctxt "cmd:editshop_colours_create|error:max_colours"
msgid ""
"This server already has the maximum of `25` colour roles!\n"
"Please remove some before adding or creating more."
msgstr ""
#: src/modules/shop/shops/colours.py:437
msgctxt "cmd:editshop_colours_create|error:failed_unknown"
msgid ""
"An unknown Discord error occurred while creating your colour role!\n"
"Please try again in a few minutes."
msgstr ""
#: src/modules/shop/shops/colours.py:487
msgctxt "cmd:editshop_colours_create|resp:done|title"
msgid "Colour Role Created"
msgstr ""
#: src/modules/shop/shops/colours.py:491
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_create|resp:done|desc"
msgid ""
"You have created the role {mention}, and added it to the colour shop for "
"{coin}**{price}**!"
msgstr ""
#: src/modules/shop/shops/colours.py:498
msgctxt "cmd:editshop_colours_create|resp:done|field:position_note|value"
msgid ""
"The new colour role was added below all other roles. Remember a member's "
"active colour is determined by their highest coloured role!"
msgstr ""
#: src/modules/shop/shops/colours.py:502
msgctxt "cmd:editshop_colours_create|resp:done|field:position_note|name"
msgid "Note"
msgstr ""
#: src/modules/shop/shops/colours.py:511
msgctxt "cmd:editshop_colours_edit"
msgid "edit"
msgstr ""
#: src/modules/shop/shops/colours.py:514
msgctxt "cmd:editshop_colours_edit|desc"
msgid "Edit the name, colour, or price of a colour role."
msgstr ""
#: src/modules/shop/shops/colours.py:518
msgctxt "cmd:editshop_colours_edit|param:role"
msgid "role"
msgstr ""
#: src/modules/shop/shops/colours.py:519
msgctxt "cmd:editshop_colours_edit|param:name"
msgid "name"
msgstr ""
#: src/modules/shop/shops/colours.py:520
msgctxt "cmd:editshop_colours_edit|param:colour"
msgid "colour"
msgstr ""
#: src/modules/shop/shops/colours.py:521
msgctxt "cmd:editshop_colours_edit|param:price"
msgid "price"
msgstr ""
#: src/modules/shop/shops/colours.py:526
msgctxt "cmd:editshop_colours_edit|param:role|desc"
msgid "Select a colour role to edit."
msgstr ""
#: src/modules/shop/shops/colours.py:530
msgctxt "cmd:editshop_colours_edit|param:name|desc"
msgid "New name to give the colour role."
msgstr ""
#: src/modules/shop/shops/colours.py:534
msgctxt "cmd:editshop_colours_edit|param:colour|desc"
msgid "New colour for the colour role (as hex, e.g. #AB12AB)."
msgstr ""
#: src/modules/shop/shops/colours.py:538
msgctxt "cmd:editshop_colours_edit|param:price|desc"
msgid "New price for the colour role."
msgstr ""
#: src/modules/shop/shops/colours.py:567
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_edit|error:invalid_role"
msgid "{mention} is not in the colour role shop!"
msgstr ""
#: src/modules/shop/shops/colours.py:581
msgctxt "cmd:editshop_colours_edit|error:no_args"
msgid "You must give me one of `name`, `colour`, or `price` to update!"
msgstr ""
#: src/modules/shop/shops/colours.py:597
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_edit|error:parse_colour"
msgid ""
"I could not extract a colour value from `{colour}`!\n"
"Please enter the colour as a hex string, e.g. `#FA0BC1`"
msgstr ""
#: src/modules/shop/shops/colours.py:612
msgctxt "cmd:editshop_colours_edit|error:perms"
msgid "I do not have sufficient server permissions to edit this role!"
msgstr ""
#: src/modules/shop/shops/colours.py:628
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_edit|resp:done|line:price"
msgid "{tick} Set price to {coin}**{price}**"
msgstr ""
#: src/modules/shop/shops/colours.py:645
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_edit|resp:done|line:role"
msgid "{tick} Updated role to {mention}"
msgstr ""
#: src/modules/shop/shops/colours.py:655
msgctxt "cmd:editshop_colours_edit|resp:done|embed:title"
msgid "Colour Role Updated"
msgstr ""
#: src/modules/shop/shops/colours.py:661
msgctxt "cmd:editshop_colours_auto"
msgid "auto"
msgstr ""
#: src/modules/shop/shops/colours.py:662
msgctxt "cmd:editshop_colours_auto|desc"
msgid "Automatically create a set of colour roles."
msgstr ""
#: src/modules/shop/shops/colours.py:671
msgctxt "cmd:editshop_colours_add"
msgid "add"
msgstr ""
#: src/modules/shop/shops/colours.py:674
msgctxt "cmd:editshop_colours_add|desc"
msgid "Add an existing role to the colour shop."
msgstr ""
#: src/modules/shop/shops/colours.py:678
msgctxt "cmd:editshop_colours_add|param:role"
msgid "role"
msgstr ""
#: src/modules/shop/shops/colours.py:679
msgctxt "cmd:editshop_colours_add|param:price"
msgid "price"
msgstr ""
#: src/modules/shop/shops/colours.py:684
msgctxt "cmd:editshop_colours_add|param:role|desc"
msgid "Select a role to add to the colour shop."
msgstr ""
#: src/modules/shop/shops/colours.py:688
msgctxt "cmd:editshop_colours_add|param:price|desc"
msgid "How much should this role cost?"
msgstr ""
#: src/modules/shop/shops/colours.py:713
msgctxt "cmd:editshop_colours_add|error:max_colours"
msgid ""
"This server already has the maximum of `25` colour roles!\n"
"Please remove some before adding or creating more."
msgstr ""
#: src/modules/shop/shops/colours.py:722
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_add|error:role_exists"
msgid "The role {mention} is already registered as a colour role!"
msgstr ""
#: src/modules/shop/shops/colours.py:731
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_add|error:role_perms"
msgid ""
"I do not have enough permissions to assign the role {mention}! Please ensure "
"I have the `MANAGE_ROLES` permission, and that my top role is above this "
"role."
msgstr ""
#: src/modules/shop/shops/colours.py:742
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_add|error:caller_perms"
msgid ""
"You do not have sufficient server permissions to assign {mention} to the "
"shop! You must have `MANAGE_ROLES`, and your top role must be above this "
"role."
msgstr ""
#: src/modules/shop/shops/colours.py:751
msgctxt "cmd:editshop_colours_add|error:role_has_admin"
msgid ""
"I refuse to add an administrator role to the LionCoin shop. That is a really "
"bad idea."
msgstr ""
#: src/modules/shop/shops/colours.py:772
msgctxt "cmd:editshop_colours_add|resp:done|embed:title"
msgid "Colour Role Created"
msgstr ""
#: src/modules/shop/shops/colours.py:775
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_add|resp:done|embed:desc"
msgid "You have added {mention} to the colour shop for {coin}**{price}**!"
msgstr ""
#: src/modules/shop/shops/colours.py:783
msgctxt "cmd:editshop_colours_clear"
msgid "clear"
msgstr ""
#: src/modules/shop/shops/colours.py:786
msgctxt "cmd:editshop_colours_clear|desc"
msgid ""
"Remove all the colour roles from the shop, and optionally delete the roles."
msgstr ""
#: src/modules/shop/shops/colours.py:790
msgctxt "cmd:editshop_colours_clear|param:delete"
msgid "delete_roles"
msgstr ""
#: src/modules/shop/shops/colours.py:795
msgctxt "cmd:editshop_colours_clear|param:delete|desc"
msgid "Also delete the associated roles."
msgstr ""
#: src/modules/shop/shops/colours.py:837
msgctxt "cmd:editshop_colours_clear|error:no_colours"
msgid "There are no coloured roles to remove!"
msgstr ""
#: src/modules/shop/shops/colours.py:881
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_clear|resp:done|line:clear"
msgid "{tick} Colour shop cleared."
msgstr ""
#: src/modules/shop/shops/colours.py:892
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_clear|resp:done|line:refunding"
msgid "{loading} Refunded **{count}/{total}** members."
msgstr ""
#: src/modules/shop/shops/colours.py:898
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_clear|resp:done|line:refunded"
msgid "{tick} Refunded **{total}/{total}** members."
msgstr ""
#: src/modules/shop/shops/colours.py:911
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_clear|resp:done|line:deleted_failed"
msgid ""
"{emoji} Deleted **{count}/{total}** colour roles. (**{failed}** failed!)"
msgstr ""
#: src/modules/shop/shops/colours.py:916
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_clear|resp:done|line:deleted"
msgid "{emoji} Deleted **{count}/{total}** colour roles."
msgstr ""
#: src/modules/shop/shops/colours.py:965
msgctxt "cmd:editshop_colours_remove"
msgid "remove"
msgstr ""
#: src/modules/shop/shops/colours.py:968
msgctxt "cmd:editshop_colours_remove|desc"
msgid "Remove a specific colour role from the shop."
msgstr ""
#: src/modules/shop/shops/colours.py:972
msgctxt "cmd:editshop_colours_remove|param:role"
msgid "role"
msgstr ""
#: src/modules/shop/shops/colours.py:973
msgctxt "cmd:editshop_colours_remove"
msgid "delete_role"
msgstr ""
#: src/modules/shop/shops/colours.py:978
msgctxt "cmd:editshop_colours_remove|param:role|desc"
msgid "Select the colour role to remove."
msgstr ""
#: src/modules/shop/shops/colours.py:982
msgctxt "cmd:editshop_colours_remove|param:delete_role|desc"
msgid "Whether to delete the associated role."
msgstr ""
#: src/modules/shop/shops/colours.py:1007
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_remove|error:not_colour"
msgid "{mention} is not in the colour role shop!"
msgstr ""
#: src/modules/shop/shops/colours.py:1025
msgctxt "cmd:editshop_colours_remove|resp:done|line:delete"
msgid "Successfully deleted the role."
msgstr ""
#: src/modules/shop/shops/colours.py:1030
msgctxt "cmd:editshop_colours_remove|resp:done|line:delete"
msgid "I do not have sufficient permissions to delete the role."
msgstr ""
#: src/modules/shop/shops/colours.py:1035
msgctxt "cmd:editshop_colours_remove|resp:done|line:delete"
msgid "Failed to delete the role for an unknown reason."
msgstr ""
#: src/modules/shop/shops/colours.py:1040
msgctxt "cmd:editshop_colours_remove|resp:done|line:delete"
msgid "Could not find the role in order to delete it."
msgstr ""
#: src/modules/shop/shops/colours.py:1051
#, possible-python-brace-format
msgctxt "cmd:editshop_colours_remove|resp:done|embed:desc"
msgid ""
"Removed {mention} from the colour shop.\n"
"{delete_line}"
msgstr ""
#: src/modules/shop/shops/colours.py:1111
msgctxt "ui:colourstore|menu:buycolours|embed:error|title"
msgid "Purchase Failed!"
msgstr ""
#: src/modules/shop/shops/colours.py:1122
#, possible-python-brace-format
msgctxt "ui:colourstore|menu:buycolours|resp:done|desc"
msgid "{tick} You have purchased {mention}"
msgstr ""
#: src/modules/shop/shops/colours.py:1157
msgctxt "ui:colourstore|menu:buycolours|placeholder"
msgid "There are no colour roles available to purchase!"
msgstr ""
#: src/modules/shop/shops/colours.py:1163
msgctxt "ui:colourstore|menu:buycolours|placeholder"
msgid "Select a colour role to purchase!"
msgstr ""
#: src/modules/shop/shops/colours.py:1192
#, possible-python-brace-format
msgctxt "ui:colourstore|embed|line:owned_item"
msgid "`[{j:02}]` | `{price} LC` | {mention} (You own this!)"
msgstr ""
#: src/modules/shop/shops/colours.py:1197
#, possible-python-brace-format
msgctxt "ui:colourstore|embed|line:item"
msgid "`[{j:02}]` | `{price} LC` | {mention}"
msgstr ""
#: src/modules/shop/shops/colours.py:1204
msgctxt "ui:colourstore|embed|desc"
msgid "No colour roles available for purchase!"
msgstr ""
#: src/modules/shop/shops/colours.py:1207
msgctxt "ui:colourstore|embed|title"
msgid "Colour Role Shop"
msgstr ""

View File

@@ -0,0 +1,697 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/statistics/cog.py:42
msgctxt "cmd:me"
msgid "me"
msgstr ""
#: src/modules/statistics/cog.py:45
msgctxt "cmd:me|desc"
msgid "Display your personal profile and summary statistics."
msgstr ""
#: src/modules/statistics/cog.py:54
msgctxt "cmd:stats"
msgid "stats"
msgstr ""
#: src/modules/statistics/cog.py:57
msgctxt "cmd:stats|desc"
msgid "Weekly and monthly statistics for your recent activity."
msgstr ""
#: src/modules/statistics/cog.py:69
msgctxt "cmd:leaderboard"
msgid "leaderboard"
msgstr ""
#: src/modules/statistics/cog.py:72
msgctxt "cmd:leaderboard|desc"
msgid "Server leaderboard."
msgstr ""
#: src/modules/statistics/cog.py:88
msgctxt "cmd:configure_statistics"
msgid "statistics"
msgstr ""
#: src/modules/statistics/cog.py:89
msgctxt "cmd:configure_statistics|desc"
msgid "Statistics configuration panel"
msgstr ""
#: src/modules/statistics/cog.py:92
msgctxt "cmd:configure_statistics|param:season_start"
msgid "season_start"
msgstr ""
#: src/modules/statistics/cog.py:97
msgctxt "cmd:configure_statistics|param:season_start|desc"
msgid ""
"Time from which to start counting activity for rank badges and season "
"leadeboards."
msgstr ""
#: src/modules/statistics/cog.py:127
#, possible-python-brace-format
msgctxt "cmd:configure_statistics|resp:success|desc"
msgid ""
"Activity ranks and season leaderboard will now be measured from "
"{season_start}."
msgstr ""
#: src/modules/statistics/settings.py:37
msgctxt "settype:stat|output:voice"
msgid "`Voice`"
msgstr ""
#: src/modules/statistics/settings.py:38
msgctxt "settype:stat|output:text"
msgid "`Text`"
msgstr ""
#: src/modules/statistics/settings.py:39
msgctxt "settype:stat|output:anki"
msgid "`Anki`"
msgstr ""
#: src/modules/statistics/settings.py:42
msgctxt "settype:stat|input_format:voice"
msgid "Voice"
msgstr ""
#: src/modules/statistics/settings.py:43
msgctxt "settype:stat|input_format:text"
msgid "Text"
msgstr ""
#: src/modules/statistics/settings.py:44
msgctxt "settype:stat|input_format:anki"
msgid "Anki"
msgstr ""
#: src/modules/statistics/settings.py:47
msgctxt "settype:stat|input_pattern:voice"
msgid "voice|study"
msgstr ""
#: src/modules/statistics/settings.py:48
msgctxt "settype:stat|input_pattern:text"
msgid "text|messages"
msgstr ""
#: src/modules/statistics/settings.py:49
msgctxt "settype:stat|input_pattern:anki"
msgid "anki"
msgstr ""
#: src/modules/statistics/settings.py:53
msgctxt "settype:state|accepts"
msgid "Voice/Text/Anki"
msgstr ""
#: src/modules/statistics/settings.py:66
msgctxt "userset:show_global_stats"
msgid "global_stats"
msgstr ""
#: src/modules/statistics/settings.py:69
msgctxt "userset:show_global_stats|desc"
msgid "Whether displayed statistics include all your servers."
msgstr ""
#: src/modules/statistics/settings.py:73
msgctxt "userset:show_global_stats|long_desc"
msgid ""
"Whether statistics commands display combined stats for all servers or just "
"your current server."
msgstr ""
#: src/modules/statistics/settings.py:88
msgctxt "guildset:season_start"
msgid "season_start"
msgstr ""
#: src/modules/statistics/settings.py:91
msgctxt "guildset:season_start|desc"
msgid "Start of the current statistics season."
msgstr ""
#: src/modules/statistics/settings.py:95
msgctxt "guildset:season_start|long_desc"
msgid ""
"Activity ranks will be determined based on tracked activity since this time, "
"and the leaderboard will display activity since this time by default. Unset "
"to disable seasons and use all-time statistics instead."
msgstr ""
#: src/modules/statistics/settings.py:101
msgctxt "guildset:season_start|accepts"
msgid "The season start time in the form YYYY-MM-DD HH:MM"
msgstr ""
#: src/modules/statistics/settings.py:105
msgctxt "guildset:season_start|notset"
msgid "Not Set (Using all-time statistics)"
msgstr ""
#: src/modules/statistics/settings.py:124
#, possible-python-brace-format
msgctxt "guildset:season_start|parse|error:future_time"
msgid "Provided season start time {timestamp} is in the future!"
msgstr ""
#: src/modules/statistics/settings.py:135
#, possible-python-brace-format
msgctxt "guildset:season_start|set_response|set"
msgid ""
"The leaderboard season and activity ranks will now count from {timestamp}. "
"Member ranks will update when they are next active. Use {rank_cmd} to "
"refresh immediately."
msgstr ""
#: src/modules/statistics/settings.py:144
#, possible-python-brace-format
msgctxt "guildset:season_start|set_response|unset"
msgid ""
"The leaderboard and activity ranks will now count all-time statistics. "
"Member ranks will update when they are next active. Use {rank_cmd} to "
"refresh immediately."
msgstr ""
#: src/modules/statistics/settings.py:155
msgctxt "guildset:unranked_roles"
msgid "unranked_roles"
msgstr ""
#: src/modules/statistics/settings.py:158
msgctxt "guildset:unranked_roles|desc"
msgid "Roles to exclude from the leaderboards."
msgstr ""
#: src/modules/statistics/settings.py:162
msgctxt "guildset:unranked_roles|long_desc"
msgid ""
"When set, members with *any* of these roles will not appear on the /"
"leaderboard ranking list."
msgstr ""
#: src/modules/statistics/settings.py:166
msgctxt "guildset:unranked_roles|accepts"
msgid "Comma separated list of unranked role names or ids."
msgstr ""
#: src/modules/statistics/settings.py:182
msgctxt "guildset:unranked_roles|set_using"
msgid "Role selector below."
msgstr ""
#: src/modules/statistics/settings.py:192
#, possible-python-brace-format
msgctxt "guildset:unranked_roles|set_response|set"
msgid ""
"Members of the following roles will not appear on the leaderboard: {roles}"
msgstr ""
#: src/modules/statistics/settings.py:199
msgctxt "guildset:unranked_roles|set_response|unset"
msgid "You have cleared the unranked role list."
msgstr ""
#: src/modules/statistics/settings.py:213
msgctxt "guildset:visible_stats"
msgid "visible_stats"
msgstr ""
#: src/modules/statistics/settings.py:216
msgctxt "guildset:visible_stats|desc"
msgid "Which statistics will be visible in the statistics commands."
msgstr ""
#: src/modules/statistics/settings.py:220
msgctxt "guildset:visible_stats|desc"
msgid ""
"Choose which statistics types to display in the leaderboard and statistics "
"commands."
msgstr ""
#: src/modules/statistics/settings.py:224
msgctxt "guildset:visible_stats|accepts"
msgid "Voice, Text, Anki"
msgstr ""
#: src/modules/statistics/settings.py:245
msgctxt "guildset:visible_stats|set_using"
msgid "Option menu below."
msgstr ""
#: src/modules/statistics/settings.py:253
#, possible-python-brace-format
msgctxt "guildset:visible_stats|set_response"
msgid "Members will be able to view the following statistics types: {types}"
msgstr ""
#: src/modules/statistics/settings.py:263
msgctxt "guildset:default_stat"
msgid "default_stat"
msgstr ""
#: src/modules/statistics/settings.py:266
msgctxt "guildset:default_stat|desc"
msgid "Statistic type to display by default in setting dialogues."
msgstr ""
#: src/modules/statistics/settings.py:270
msgctxt "guildset:default_stat|long_desc"
msgid "Which statistic type to display by default in setting dialogues."
msgstr ""
#: src/modules/statistics/settings.py:303
msgctxt "ui:statistics_config|menu:unranked_roles|placeholder"
msgid "Select Unranked Roles"
msgstr ""
#: src/modules/statistics/settings.py:327
msgctxt "ui:statistics_config|menu:visible_stats|item:voice|mode:voice"
msgid "Voice Activity"
msgstr ""
#: src/modules/statistics/settings.py:332
msgctxt "ui:statistics_config|menu:visible_stats|item:voice|mode:study"
msgid "Study Statistics"
msgstr ""
#: src/modules/statistics/settings.py:342
msgctxt "ui:statistics_config|menu:visible_stats|item:text"
msgid "Message Activity"
msgstr ""
#: src/modules/statistics/settings.py:350
msgctxt "ui:statistics_config|menu:visible_stats|item:anki"
msgid "Anki Reviews"
msgstr ""
#: src/modules/statistics/settings.py:361
msgctxt "ui:statistics_config|menu:visible_stats|placeholder"
msgid "Select Visible Statistics"
msgstr ""
#: src/modules/statistics/settings.py:382
msgctxt "ui:statistics_config|embed|title"
msgid "Statistics Configuration Panel"
msgstr ""
#: src/modules/statistics/settings.py:396
msgctxt "dash:stats|title"
msgid "Activity Statistics Configuration ({commands[configure statistics]})"
msgstr ""
#: src/modules/statistics/ui/goals.py:92
msgctxt "ui:MonthlyUI|name"
msgid "Monthly"
msgstr ""
#: src/modules/statistics/ui/goals.py:135
msgctxt "ui:WeeklyUI|name"
msgid "Weekly"
msgstr ""
#: src/modules/statistics/ui/summary.py:18
msgctxt "ui:SummaryUI|name"
msgid "Summary"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:96
msgctxt "menu:stat_type|opt:weekly_voice|name"
msgid "Weekly Voice Statistics"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:101
msgctxt "menu:stat_type|opt:weekly_text|name"
msgid "Weekly Text Statistics"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:106
msgctxt "menu:stat_type|opt:weekly_anki|name"
msgid "Weekly Anki Statistics"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:112
msgctxt "menu:stat_type|opt:monthly_voice|name"
msgid "Monthly Voice Statistics"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:117
msgctxt "menu:stat_type|opt:monthly_text|name"
msgid "Monthly Text Statistics"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:122
msgctxt "menu:stat_type|opt:monthly_anki|name"
msgid "Monthly Anki Statistics"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:144
msgctxt "modal:goal_editor|field:task_goal|label"
msgid "Task goal"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:148
msgctxt "modal:goal_editor|field:task_goal|placeholder"
msgid "Enter the number of tasklist tasks you aim to do"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:159
#, possible-python-brace-format
msgctxt "modal:goal_editor|field:task_goal|error:NAN"
msgid "The provided task goal `{input}` is not a number! Please try again."
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:181
msgctxt "modal:goal_editor|field:voice_goal|label"
msgid "Study time goal"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:185
msgctxt "modal:goal_editor|field:voice_goal|placeholder"
msgid "Enter a number of hours of study to aim for."
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:190
msgctxt "modal:goal_editor|field:text_goal|label"
msgid "Message goal"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:194
msgctxt "modal:goal_editor|field:text_goal|placeholder"
msgid "Enter a message count to aim for."
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:199
msgctxt "modal:goal_editor|field:anki_goal|label"
msgid "Card goal"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:203
msgctxt "modal:goal_editor|field:anki_goal|label"
msgid "Enter a number of card revisions to aim for."
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:216
#, possible-python-brace-format
msgctxt "modal:goal_editor|field:voice_goal|error:NAN"
msgid ""
"The provided study time goal `{input}` is not a number! Please try again."
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:223
#, possible-python-brace-format
msgctxt "modal:goal_editor|field:text_goal|error:NAN"
msgid "The provided message goal `{input}` is not a number! Please try again."
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:230
#, possible-python-brace-format
msgctxt "modal:goal_editor|field:anki_goal|error:NAN"
msgid "The provided card goal `{input}` is not a number! Please try again."
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:252
msgctxt "modal:goal_editor|field:weekly_task_editor|label"
msgid "Tasks to complete this week (one per line)"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:256
msgctxt "modal:goal_editor|field:weekly_task_editor|placeholder"
msgid ""
"[ ] Write my biology essay\n"
"[x] Complete the second maths assignment\n"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:262
msgctxt "modal:goal_editor|field:monthly_task_editor|label"
msgid "Tasks to complete this month (one per line)"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:266
msgctxt "modal:goal_editor|field:monthly_task_editor|placeholder"
msgid ""
"[ ] Write my biology essay\n"
"[x] Complete the second maths assignment\n"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:284
#, possible-python-brace-format
msgctxt "modal:goal_editor||field:task_editor|error:parse_general"
msgid ""
"Malformed task!\n"
"`{input}`"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:301
msgctxt "modal:goal_editor|title"
msgid "Weekly goal editor"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:306
msgctxt "modal:goal_editor|monthly|title"
msgid "Monthly goal editor"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:499
msgctxt "ui:weeklymonthly|button:edit_goals|label"
msgid "Edit Goals"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:515
#, possible-python-brace-format
msgctxt "ui:weeklymonthly|menu:period|monthly|label"
msgid "{month} {year}"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:530
#, possible-python-brace-format
msgctxt "ui:weeklymonthly|menu:period|weekly|label"
msgid "{year} W{week}"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:534
#, possible-python-brace-format
msgctxt "ui:weeklymonthly|menu:period|weekly|desc"
msgid ""
"{start_day} {start_month} {start_year} to {end_day} {end_month} {end_year}"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:612
msgctxt "ui:weeklymonthly|button:period|close|label"
msgid "Close Selector"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:617
msgctxt "ui:weeklymonthly|button:period|weekly|label"
msgid "Select Week"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:622
msgctxt "ui:weeklymonthly|button:period|monthly|label"
msgid "Select Month"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:687
msgctxt "ui:weeklymonthly|menu:period|weekly|placeholder"
msgid "Select a week to display"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:692
msgctxt "ui:weeklymonthly|menu:period|monthly|placeholder"
msgid "Select a month to display"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:714
msgctxt "ui:WeeklyMonthly|button:global|resp:success"
msgid ""
"You will now see combined statistics from all your servers (where "
"applicable)! Press again to revert."
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:727
msgctxt "ui:WeeklyMonthly|button:global|mode:local"
msgid "Server Statistics"
msgstr ""
#: src/modules/statistics/ui/weeklymonthly.py:732
msgctxt "ui:WeeklyMonthly|button:global|mode:global"
msgid "Global Statistics"
msgstr ""
#: src/modules/statistics/ui/profile.py:41
msgctxt "modal:profile_editor|field:editor|label"
msgid "Profile Tags (One line per tag)"
msgstr ""
#: src/modules/statistics/ui/profile.py:45
msgctxt "modal:profile_editor|field:editor|placeholder"
msgid ""
"Mathematician\n"
"Loves Cats"
msgstr ""
#: src/modules/statistics/ui/profile.py:53
msgctxt "modal:profile_editor|title"
msgid "Profile Tag Editor"
msgstr ""
#: src/modules/statistics/ui/profile.py:71
#, possible-python-brace-format
msgctxt "modal:profile_editor|error:too_many_tags"
msgid "Too many tags! You can have at most `{limit}` profile tags."
msgstr ""
#: src/modules/statistics/ui/profile.py:92
msgctxt "menu:stat_type|opt:voice|name"
msgid "Voice Statistics"
msgstr ""
#: src/modules/statistics/ui/profile.py:97
msgctxt "menu:stat_type|opt:text|name"
msgid "Text Statistics"
msgstr ""
#: src/modules/statistics/ui/profile.py:102
msgctxt "menu:stat_type|opt:anki|name"
msgid "Anki Statistics"
msgstr ""
#: src/modules/statistics/ui/profile.py:190
msgctxt "modal:profile_editor|resp:success"
msgid "Your profile has been updated!"
msgstr ""
#: src/modules/statistics/ui/profile.py:200
msgctxt "ui:profile_card|button:edit|label"
msgid "Edit Profile Badges"
msgstr ""
#: src/modules/statistics/ui/profile.py:219
msgctxt "ui:profile_card|button:statistics|label:hide"
msgid "Hide Statistics"
msgstr ""
#: src/modules/statistics/ui/profile.py:224
msgctxt "ui:profile_card|button:statistics|label:show"
msgid "Show Statistics"
msgstr ""
#: src/modules/statistics/ui/profile.py:253
msgctxt "ui:Profile|button:global|resp:success"
msgid ""
"You will now see statistics from all you servers (where applicable)! Press "
"again to revert."
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:231
msgctxt "ui:leaderboard|menu:stats|placeholder"
msgid "Select Activity Type"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:240
msgctxt "ui:leaderboard|menu:stats|item:voice"
msgid "Voice Activity"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:251
msgctxt "ui:leaderboard|menu:stats|item:study"
msgid "Study Statistics"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:262
msgctxt "ui:leaderboard|menu:stats|item:message"
msgid "Message Activity"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:273
msgctxt "ui:leaderboard|menu;stats|item:anki"
msgid "Anki Cards Reviewed"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:327
msgctxt "ui:leaderboard|button:season|label"
msgid "This Season"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:331
msgctxt "ui:leaderboard|button:day|label"
msgid "Today"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:335
msgctxt "ui:leaderboard|button:week|label"
msgid "This Week"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:339
msgctxt "ui:leaderboard|button:month|label"
msgid "This Month"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:343
msgctxt "ui:leaderboard|button:alltime|label"
msgid "All Time"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:347
msgctxt "ui:leaderboard|button:jump|label"
msgid "Jump"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:362
msgctxt "ui:leaderboard|button:jump|input:title"
msgid "Jump to page"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:366
msgctxt "ui:leaderboard|button:jump|input:question"
msgid "Page number to jump to"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:377
msgctxt "ui:leaderboard|button:jump|error:invalid_page"
msgid "Invalid page number, please try again!"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:428
msgctxt "ui:leaderboard|mode:voice|message:empty|desc"
msgid "There has been no voice activity in this period!"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:433
msgctxt "ui:leaderboard|mode:text|message:empty|desc"
msgid "There has been no message activity in this period!"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:438
msgctxt "ui:leaderboard|mode:anki|message:empty|desc"
msgid "There have been no Anki cards reviewed in this period!"
msgstr ""
#: src/modules/statistics/ui/leaderboard.py:444
msgctxt "ui:leaderboard|message:empty|title"
msgid "Leaderboard Empty!"
msgstr ""

View File

@@ -0,0 +1,140 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#. First column
#: src/gui/cards/stats.py:72
msgctxt "skin:stats|header:col1"
msgid "STATISTICS"
msgstr ""
#: src/gui/cards/stats.py:75
msgctxt "skin:stats|subheader:leaderboard"
msgid "LEADERBOARD POSITION"
msgstr ""
#: src/gui/cards/stats.py:79
msgctxt "skin:stats|mode:study|subheader:study"
msgid "STUDY TIME"
msgstr ""
#: src/gui/cards/stats.py:83
msgctxt "skin:stats|mode:voice|subheader:study"
msgid "VOICE TIME"
msgstr ""
#: src/gui/cards/stats.py:87
msgctxt "skin:stats|mode:text|subheader:study"
msgid "MESSAGES"
msgstr ""
#: src/gui/cards/stats.py:91
msgctxt "skin:stats|mode:anki|subheader:study"
msgid "CARDS REVIEWED"
msgstr ""
#: src/gui/cards/stats.py:102
msgctxt "skin:stats|subheader:workouts"
msgid "WORKOUTS"
msgstr ""
#: src/gui/cards/stats.py:118
msgctxt "skin:stats|field:daily"
msgid "DAILY"
msgstr ""
#: src/gui/cards/stats.py:122
msgctxt "skin:stats|field:weekly"
msgid "WEEKLY"
msgstr ""
#: src/gui/cards/stats.py:126
msgctxt "skin:stats|field:monthly"
msgid "MONTHLY"
msgstr ""
#: src/gui/cards/stats.py:130
msgctxt "skin:stats|field:alltime"
msgid "ALL TIME"
msgstr ""
#: src/gui/cards/stats.py:134
msgctxt "skin:stats|field:time"
msgid "TIME"
msgstr ""
#: src/gui/cards/stats.py:138
msgctxt "skin:stats|field:anki"
msgid "ANKI: COMING SOON"
msgstr ""
#: src/gui/cards/stats.py:155
msgctxt "skin:stats|mode:study|header:col2"
msgid "STUDY STREAK"
msgstr ""
#: src/gui/cards/stats.py:159
msgctxt "skin:stats|mode:voice|header:col2"
msgid "VOICE STREAK"
msgstr ""
#: src/gui/cards/stats.py:163
msgctxt "skin:stats|mode:text|header:col2"
msgid "ACTIVITY STREAK"
msgstr ""
#: src/gui/cards/stats.py:167
msgctxt "skin:stats|mode:anki|header:col2"
msgid "ANKI REVIEW STREAK"
msgstr ""
#: src/gui/cards/stats.py:180
#, possible-python-brace-format
msgctxt "skin:stats|mode:study|field:col2_summary"
msgid "{amount} HRS"
msgstr ""
#: src/gui/cards/stats.py:184
#, possible-python-brace-format
msgctxt "skin:stats|mode:voice|field:col2_summary"
msgid "{amount} HRS"
msgstr ""
#: src/gui/cards/stats.py:188
#, possible-python-brace-format
msgctxt "skin:stats|mode:text|field:col2_summary"
msgid "{amount} XP"
msgstr ""
#: src/gui/cards/stats.py:192
#, possible-python-brace-format
msgctxt "skin:stats|mode:anki|field:col2_summary"
msgid "{amount} CARDS"
msgstr ""
#: src/gui/cards/stats.py:223
msgctxt "skin:stats|cal|weekdays"
msgid "S,M,T,W,T,F,S"
msgstr ""
#: src/gui/cards/stats.py:227
msgctxt "skin:stats|cal|months"
msgid ""
"JANUARY,FEBRUARY,MARCH,APRIL,MAY,JUNE,JULY,AUGUST,SEPTEMBER,OCTOBER,NOVEMBER,"
"DECEMBER"
msgstr ""

View File

@@ -0,0 +1,199 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/sysadmin/presence.py:116
msgctxt "botset:presence_status"
msgid "online_status"
msgstr ""
#: src/modules/sysadmin/presence.py:117
msgctxt "botset:presence_status|desc"
msgid "Bot status indicator"
msgstr ""
#: src/modules/sysadmin/presence.py:120
msgctxt "botset:presence_status|long_desc"
msgid "Whether the bot account displays as online, idle, dnd, or offline."
msgstr ""
#: src/modules/sysadmin/presence.py:124
msgctxt "botset:presence_status|accepts"
msgid "Online/Idle/Dnd/Offline"
msgstr ""
#: src/modules/sysadmin/presence.py:133
msgctxt "botset:presence_status|output:online"
msgid "**Online**"
msgstr ""
#: src/modules/sysadmin/presence.py:134
msgctxt "botset:presence_status|output:idle"
msgid "**Idle**"
msgstr ""
#: src/modules/sysadmin/presence.py:135
msgctxt "botset:presence_status|output:dnd"
msgid "**Do Not Disturb**"
msgstr ""
#: src/modules/sysadmin/presence.py:136
msgctxt "botset:presence_status|output:offline"
msgid "**Offline**"
msgstr ""
#: src/modules/sysadmin/presence.py:139
msgctxt "botset:presence_status|input_format:online"
msgid "Online"
msgstr ""
#: src/modules/sysadmin/presence.py:140
msgctxt "botset:presence_status|input_format:idle"
msgid "Idle"
msgstr ""
#: src/modules/sysadmin/presence.py:141
msgctxt "botset:presence_status|input_format:dnd"
msgid "DND"
msgstr ""
#: src/modules/sysadmin/presence.py:142
msgctxt "botset:presence_status|input_format:offline"
msgid "Offline"
msgstr ""
#: src/modules/sysadmin/presence.py:145
msgctxt "botset:presence_status|input_pattern:online"
msgid "on|online"
msgstr ""
#: src/modules/sysadmin/presence.py:146
msgctxt "botset:presence_status|input_pattern:idle"
msgid "idle"
msgstr ""
#: src/modules/sysadmin/presence.py:147
msgctxt "botset:presence_status|input_pattern:dnd"
msgid "do not disturb|dnd"
msgstr ""
#: src/modules/sysadmin/presence.py:148
msgctxt "botset:presence_status|input_pattern:offline"
msgid "off|offline|invisible"
msgstr ""
#: src/modules/sysadmin/presence.py:155
msgctxt "botset:presence_type"
msgid "activity_type"
msgstr ""
#: src/modules/sysadmin/presence.py:156
msgctxt "botset:presence_type|desc"
msgid "Type of presence activity"
msgstr ""
#: src/modules/sysadmin/presence.py:159
msgctxt "botset:presence_type|long_desc"
msgid ""
"Whether the bot activity is shown as 'Listening', 'Playing', or 'Watching'."
msgstr ""
#: src/modules/sysadmin/presence.py:163
msgctxt "botset:presence_type|accepts"
msgid "Listening/Playing/Watching/Streaming"
msgstr ""
#: src/modules/sysadmin/presence.py:172
msgctxt "botset:presence_type|output:watching"
msgid "**Watching**"
msgstr ""
#: src/modules/sysadmin/presence.py:173
msgctxt "botset:presence_type|output:listening"
msgid "**Listening**"
msgstr ""
#: src/modules/sysadmin/presence.py:174
msgctxt "botset:presence_type|output:playing"
msgid "**Playing**"
msgstr ""
#: src/modules/sysadmin/presence.py:175
msgctxt "botset:presence_type|output:streaming"
msgid "**Streaming**"
msgstr ""
#: src/modules/sysadmin/presence.py:178
msgctxt "botset:presence_type|input_format:watching"
msgid "Watching"
msgstr ""
#: src/modules/sysadmin/presence.py:179
msgctxt "botset:presence_type|input_format:listening"
msgid "Listening"
msgstr ""
#: src/modules/sysadmin/presence.py:180
msgctxt "botset:presence_type|input_format:playing"
msgid "Playing"
msgstr ""
#: src/modules/sysadmin/presence.py:181
msgctxt "botset:presence_type|input_format:streaming"
msgid "Streaming"
msgstr ""
#: src/modules/sysadmin/presence.py:184
msgctxt "botset:presence_type|input_pattern:watching"
msgid "watching"
msgstr ""
#: src/modules/sysadmin/presence.py:185
msgctxt "botset:presence_type|input_pattern:listening"
msgid "listening"
msgstr ""
#: src/modules/sysadmin/presence.py:186
msgctxt "botset:presence_type|input_pattern:playing"
msgid "playing"
msgstr ""
#: src/modules/sysadmin/presence.py:187
msgctxt "botset:presence_type|input_pattern:streaming"
msgid "streaming"
msgstr ""
#: src/modules/sysadmin/presence.py:194
msgctxt "botset:presence_name"
msgid "activity_name"
msgstr ""
#: src/modules/sysadmin/presence.py:195
msgctxt "botset:presence_name|desc"
msgid "Name of the presence activity"
msgstr ""
#: src/modules/sysadmin/presence.py:196
msgctxt "botset:presence_name|long_desc"
msgid "Presence activity name."
msgstr ""
#: src/modules/sysadmin/presence.py:197
msgctxt "botset:presence_name|accepts"
msgid "The name of the activity to show."
msgstr ""

View File

@@ -0,0 +1,778 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: src/modules/tasklist/cog.py:34
msgctxt "argtype:Before|opt:HOUR"
msgid "The last hour"
msgstr ""
#: src/modules/tasklist/cog.py:35
msgctxt "argtype:Before|opt:HALFDAY"
msgid "The last 12 hours"
msgstr ""
#: src/modules/tasklist/cog.py:36
msgctxt "argtype:Before|opt:DAY"
msgid "The last 24 hours"
msgstr ""
#: src/modules/tasklist/cog.py:37
msgctxt "argtype:Before|opt:TODAY"
msgid "Today"
msgstr ""
#: src/modules/tasklist/cog.py:38
msgctxt "argtype:Before|opt:YESTERDAY"
msgid "Yesterday"
msgstr ""
#: src/modules/tasklist/cog.py:39
msgctxt "argtype:Before|opt:Monday"
msgid "This Monday"
msgstr ""
#: src/modules/tasklist/cog.py:40
msgctxt "argtype:Before|opt:THISMONTH"
msgid "This Month"
msgstr ""
#: src/modules/tasklist/cog.py:222
msgctxt "cmd:tasklist"
msgid "tasklist"
msgstr ""
#: src/modules/tasklist/cog.py:225
msgctxt "cmd:tasklist|desc"
msgid "Open your tasklist."
msgstr ""
#: src/modules/tasklist/cog.py:234
msgctxt "group:tasks"
msgid "tasks"
msgstr ""
#: src/modules/tasklist/cog.py:235
msgctxt "group:tasks|desc"
msgid "Base command group for tasklist commands."
msgstr ""
#: src/modules/tasklist/cog.py:257
msgctxt "argtype:taskid|error:no_tasks"
msgid "Tasklist empty! No matching tasks."
msgstr ""
#: src/modules/tasklist/cog.py:302
#, possible-python-brace-format
msgctxt "argtype:taskid|error:parse_multi"
msgid "(Warning: {error})"
msgstr ""
#: src/modules/tasklist/cog.py:336
#, possible-python-brace-format
msgctxt "argtype:taskid|error:no_matching"
msgid "No tasks matching '{partial}'!"
msgstr ""
#: src/modules/tasklist/cog.py:356
msgctxt "cmd:tasks_new"
msgid "new"
msgstr ""
#: src/modules/tasklist/cog.py:359
msgctxt "cmd:tasks_new|desc"
msgid "Add a new task to your tasklist."
msgstr ""
#: src/modules/tasklist/cog.py:363
msgctxt "cmd:tasks_new|param:content"
msgid "task"
msgstr ""
#: src/modules/tasklist/cog.py:364
msgctxt "cmd:tasks_new|param:parent"
msgid "parent"
msgstr ""
#: src/modules/tasklist/cog.py:367
msgctxt "cmd:tasks_new|param:content|desc"
msgid "Content of your new task."
msgstr ""
#: src/modules/tasklist/cog.py:368
msgctxt "cmd:tasks_new|param:parent"
msgid "Parent of this task."
msgstr ""
#: src/modules/tasklist/cog.py:388
#, possible-python-brace-format
msgctxt "cmd:tasks_new|error:parse_parent"
msgid "Could not find parent task number `{input}` in your tasklist."
msgstr ""
#: src/modules/tasklist/cog.py:403
#, possible-python-brace-format
msgctxt "cmd:tasks_new|resp:success"
msgid "{tick} Created task `{label}`."
msgstr ""
#: src/modules/tasklist/cog.py:415
msgctxt "cmd:tasks_upload"
msgid "upload"
msgstr ""
#: src/modules/tasklist/cog.py:418
msgctxt "cmd:tasks_upload|desc"
msgid "Upload a list of tasks to append to or replace your tasklist."
msgstr ""
#: src/modules/tasklist/cog.py:422
msgctxt "cmd:tasks_upload|param:tasklist"
msgid "tasklist"
msgstr ""
#: src/modules/tasklist/cog.py:423
msgctxt "cmd:tasks_upload|param:append"
msgid "append"
msgstr ""
#: src/modules/tasklist/cog.py:428
msgctxt "cmd:tasks_upload|param:tasklist|desc"
msgid ""
"Text file containing a (standard markdown formatted) checklist of tasks to "
"add or append."
msgstr ""
#: src/modules/tasklist/cog.py:432
msgctxt "cmd:tasks_upload|param:append|desc"
msgid ""
"Whether to append the given tasks or replace your entire tasklist. Defaults "
"to True."
msgstr ""
#: src/modules/tasklist/cog.py:448
msgctxt "cmd:tasks_upload|error:not_text"
msgid "The attached tasklist must be a text file!"
msgstr ""
#: src/modules/tasklist/cog.py:456
msgctxt "cmd:tasks_upload|error:too_large"
msgid "The attached tasklist was too large!"
msgstr ""
#: src/modules/tasklist/cog.py:467
msgctxt "cmd:tasks_upload|error:too_many_lines"
msgid ""
"Too many tasks! Refusing to process a tasklist with more than `1000` lines."
msgstr ""
#: src/modules/tasklist/cog.py:473
msgctxt "cmd:tasks_upload|error:decoding"
msgid ""
"Could not decode attached tasklist. Please make sure it is saved with the "
"`UTF-8` encoding."
msgstr ""
#: src/modules/tasklist/cog.py:523
#, possible-python-brace-format
msgctxt "cmd:tasks_upload|resp:success"
msgid "{tick} Updated your tasklist."
msgstr ""
#: src/modules/tasklist/cog.py:535
msgctxt "cmd:tasks_edit"
msgid "edit"
msgstr ""
#: src/modules/tasklist/cog.py:538
msgctxt "cmd:tasks_edit|desc"
msgid "Edit a task in your tasklist."
msgstr ""
#: src/modules/tasklist/cog.py:542
msgctxt "cmd:tasks_edit|param:taskstr"
msgid "task"
msgstr ""
#: src/modules/tasklist/cog.py:543
msgctxt "cmd:tasks_edit|param:new_content"
msgid "new_task"
msgstr ""
#: src/modules/tasklist/cog.py:544
msgctxt "cmd:tasks_edit|param:new_parent"
msgid "new_parent"
msgstr ""
#: src/modules/tasklist/cog.py:547
msgctxt "cmd:tasks_edit|param:taskstr|desc"
msgid "Which task do you want to update?"
msgstr ""
#: src/modules/tasklist/cog.py:548
msgctxt "cmd:tasks_edit|param:new_content|desc"
msgid "What do you want to change the task to?"
msgstr ""
#: src/modules/tasklist/cog.py:549
msgctxt "cmd:tasks_edit|param:new_parent|desc"
msgid "Which task do you want to be the new parent?"
msgstr ""
#: src/modules/tasklist/cog.py:568
#, possible-python-brace-format
msgctxt "cmd:tasks_edit|error:parse_taskstr"
msgid "Could not find target task number `{input}` in your tasklist."
msgstr ""
#: src/modules/tasklist/cog.py:584
#, possible-python-brace-format
msgctxt "cmd:tasks_edit|error:parse_parent"
msgid "Could not find new parent task number `{input}` in your tasklist."
msgstr ""
#: src/modules/tasklist/cog.py:603
#, possible-python-brace-format
msgctxt "cmd:tasks_edit|resp:success|desc"
msgid "{tick} Task `{label}` updated."
msgstr ""
#: src/modules/tasklist/cog.py:625
msgctxt "ui:tasklist_single_editor|title"
msgid "Edit Task"
msgstr ""
#: src/modules/tasklist/cog.py:640
msgctxt "cmd:tasks_clear"
msgid "clear"
msgstr ""
#: src/modules/tasklist/cog.py:641
msgctxt "cmd:tasks_clear|desc"
msgid "Clear your tasklist."
msgstr ""
#: src/modules/tasklist/cog.py:651
msgctxt "cmd:tasks_clear|resp:success"
msgid "Your tasklist has been cleared."
msgstr ""
#: src/modules/tasklist/cog.py:659
msgctxt "cmd:tasks_remove"
msgid "remove"
msgstr ""
#: src/modules/tasklist/cog.py:662
msgctxt "cmd:tasks_remove|desc"
msgid ""
"Remove tasks matching all the provided conditions. (E.g. remove tasks "
"completed before today)."
msgstr ""
#: src/modules/tasklist/cog.py:666
msgctxt "cmd:tasks_remove|param:taskidstr"
msgid "tasks"
msgstr ""
#: src/modules/tasklist/cog.py:667
msgctxt "cmd:tasks_remove|param:created_before"
msgid "created_before"
msgstr ""
#: src/modules/tasklist/cog.py:668
msgctxt "cmd:tasks_remove|param:updated_before"
msgid "updated_before"
msgstr ""
#: src/modules/tasklist/cog.py:669
msgctxt "cmd:tasks_remove|param:completed"
msgid "completed"
msgstr ""
#: src/modules/tasklist/cog.py:670
msgctxt "cmd:tasks_remove|param:cascade"
msgid "cascade"
msgstr ""
#: src/modules/tasklist/cog.py:675
msgctxt "cmd:tasks_remove|param:taskidstr|desc"
msgid "List of task numbers or ranges to remove (e.g. 1, 2, 5-7, 8.1-3, 9-)."
msgstr ""
#: src/modules/tasklist/cog.py:679
msgctxt "cmd:tasks_remove|param:created_before|desc"
msgid "Only delete tasks created before the selected time."
msgstr ""
#: src/modules/tasklist/cog.py:683
msgctxt "cmd:tasks_remove|param:updated_before|desc"
msgid ""
"Only deleted tasks update (i.e. completed or edited) before the selected "
"time."
msgstr ""
#: src/modules/tasklist/cog.py:687
msgctxt "cmd:tasks_remove|param:completed"
msgid "Only delete tasks which are (not) complete."
msgstr ""
#: src/modules/tasklist/cog.py:691
msgctxt "cmd:tasks_remove|param:cascade"
msgid "Whether to recursively remove subtasks of removed tasks."
msgstr ""
#: src/modules/tasklist/cog.py:760
#, possible-python-brace-format
msgctxt "cmd:tasks_remove|resp:success"
msgid "{tick} Deleted task `{label}`"
msgid_plural "{tick} Deleted `{count}` tasks from your tasklist."
msgstr[0] ""
msgstr[1] ""
#: src/modules/tasklist/cog.py:778
msgctxt "cmd:tasks_tick"
msgid "tick"
msgstr ""
#: src/modules/tasklist/cog.py:779
msgctxt "cmd:tasks_tick|desc"
msgid "Mark the given tasks as completed."
msgstr ""
#: src/modules/tasklist/cog.py:782
msgctxt "cmd:tasks_tick|param:taskidstr"
msgid "tasks"
msgstr ""
#: src/modules/tasklist/cog.py:783
msgctxt "cmd:tasks_tick|param:cascade"
msgid "cascade"
msgstr ""
#: src/modules/tasklist/cog.py:788
msgctxt "cmd:tasks_tick|param:taskidstr|desc"
msgid "List of task numbers or ranges to remove (e.g. 1, 2, 5-7, 8.1-3, 9-)."
msgstr ""
#: src/modules/tasklist/cog.py:792
msgctxt "cmd:tasks_tick|param:cascade|desc"
msgid "Whether to also mark all subtasks as complete."
msgstr ""
#: src/modules/tasklist/cog.py:836
#, possible-python-brace-format
msgctxt "cmd:tasks_tick|resp:success"
msgid "{tick} Marked `{label}` as complete."
msgid_plural "{tick} Marked `{count}` tasks as complete."
msgstr[0] ""
msgstr[1] ""
#: src/modules/tasklist/cog.py:854
msgctxt "cmd:tasks_untick"
msgid "untick"
msgstr ""
#: src/modules/tasklist/cog.py:855
msgctxt "cmd:tasks_untick|desc"
msgid "Mark the given tasks as incomplete."
msgstr ""
#: src/modules/tasklist/cog.py:858
msgctxt "cmd:tasks_untick|param:taskidstr"
msgid "taskids"
msgstr ""
#: src/modules/tasklist/cog.py:859
msgctxt "cmd:tasks_untick|param:cascade"
msgid "cascade"
msgstr ""
#: src/modules/tasklist/cog.py:864
msgctxt "cmd:tasks_untick|param:taskidstr|desc"
msgid "List of task numbers or ranges to remove (e.g. 1, 2, 5-7, 8.1-3, 9-)."
msgstr ""
#: src/modules/tasklist/cog.py:868
msgctxt "cmd:tasks_untick|param:cascade|desc"
msgid "Whether to also mark all subtasks as incomplete."
msgstr ""
#: src/modules/tasklist/cog.py:909
#, possible-python-brace-format
msgctxt "cmd:tasks_untick|resp:success"
msgid "{tick} Marked `{label}` as incomplete."
msgid_plural "{tick} Marked `{count}` tasks as incomplete."
msgstr[0] ""
msgstr[1] ""
#: src/modules/tasklist/cog.py:933
msgctxt "cmd:configure_tasklist"
msgid "tasklist"
msgstr ""
#: src/modules/tasklist/cog.py:934
msgctxt "cmd:configure_tasklist|desc"
msgid "Tasklist configuration panel"
msgstr ""
#: src/modules/tasklist/cog.py:937
msgctxt "cmd:configure_tasklist|param:reward"
msgid "reward"
msgstr ""
#: src/modules/tasklist/cog.py:938
msgctxt "cmd:configure_tasklist|param:reward_limit"
msgid "reward_limit"
msgstr ""
#: src/modules/tasklist/cog.py:974
#, possible-python-brace-format
msgctxt "cmd:configure_tasklist|resp:success|desc"
msgid ""
"Members will now be rewarded {coin}**{amount}** for each task they complete "
"up to a maximum of `{limit}` tasks per 24h."
msgstr ""
#: src/modules/tasklist/tasklist.py:254
#, possible-python-brace-format
msgctxt "tasklist|parse:multi-range|error:parents_match"
msgid "Parents don't match in range `{range}`"
msgstr ""
#: src/modules/tasklist/tasklist.py:276
#, possible-python-brace-format
msgctxt "tasklist|parse:multi-range|error:parse"
msgid "Could not parse `{range}` as a task number or range."
msgstr ""
#: src/modules/tasklist/tasklist.py:307
#, possible-python-brace-format
msgctxt "modal:tasklist_bulk_editor|error:parse_task"
msgid ""
"Malformed taskline!\n"
"`{input}`"
msgstr ""
#: src/modules/tasklist/tasklist.py:319
msgctxt "modal:tasklist_bulk_editor|error:task_too_long"
msgid "Please keep your tasks under 100 characters!"
msgstr ""
#: src/modules/tasklist/ui.py:38
msgctxt "ui:tasklist_caller|button:tasklist|label"
msgid "Open Tasklist"
msgstr ""
#: src/modules/tasklist/ui.py:56
msgctxt "modal:tasklist_single_editor|field:task|label"
msgid "Task content"
msgstr ""
#: src/modules/tasklist/ui.py:68
msgctxt "modal:tasklist_single_editor|field:parent|label"
msgid "Parent Task"
msgstr ""
#: src/modules/tasklist/ui.py:72
msgctxt "modal:tasklist_single_editor|field:parent|placeholder"
msgid "Enter a task number, e.g. 2.1"
msgstr ""
#: src/modules/tasklist/ui.py:103
msgctxt "modal:tasklist_bulk_editor|field:tasklist|label"
msgid "Tasklist"
msgstr ""
#: src/modules/tasklist/ui.py:107
msgctxt "modal:tasklist_bulk_editor|field:tasklist|placeholder"
msgid ""
"- [ ] This is task 1, unfinished.\n"
"- [x] This is task 2, finished.\n"
" - [ ] This is subtask 2.1."
msgstr ""
#: src/modules/tasklist/ui.py:129
msgctxt "modal:tasklist_bulk_editor"
msgid "Tasklist Editor"
msgstr ""
#: src/modules/tasklist/ui.py:185
msgctxt "ui:tasklist|menu:main|mode:toggle|placeholder"
msgid "Select to Toggle"
msgstr ""
#: src/modules/tasklist/ui.py:189
#, possible-python-brace-format
msgctxt "ui:tasklist|menu:sub|mode:toggle|placeholder"
msgid "Toggle from {label}.*"
msgstr ""
#: src/modules/tasklist/ui.py:195
msgctxt "ui:tasklist|menu:main|mode:edit|placeholder"
msgid "Select to Edit"
msgstr ""
#: src/modules/tasklist/ui.py:199
#, possible-python-brace-format
msgctxt "ui:tasklist|menu:sub|mode:edit|placeholder"
msgid "Edit from {label}.*"
msgstr ""
#: src/modules/tasklist/ui.py:205
msgctxt "ui:tasklist|menu:main|mode:delete|placeholder"
msgid "Select to Delete"
msgstr ""
#: src/modules/tasklist/ui.py:209
#, possible-python-brace-format
msgctxt "ui:tasklist|menu:sub|mode:delete|placeholder"
msgid "Delete from {label}.*"
msgstr ""
#: src/modules/tasklist/ui.py:405
#, possible-python-brace-format
msgctxt "ui:tasklist_single_editor|field:parent|error:parse_id"
msgid "Could not find the given parent task number `{input}` in your tasklist."
msgstr ""
#: src/modules/tasklist/ui.py:419
#, possible-python-brace-format
msgctxt "ui:tasklist_single_editor|field:parent|error:multiple_matching"
msgid ""
"Multiple tasks matching given parent task `{input}`. Please use a task "
"number instead!"
msgstr ""
#: src/modules/tasklist/ui.py:426
#, possible-python-brace-format
msgctxt "ui:tasklist_single_editor|field:parent|error:no_matching"
msgid "No tasks matching given parent task `{input}`."
msgstr ""
#: src/modules/tasklist/ui.py:497
msgctxt "ui:tasklist|menu:edit|modal:title"
msgid "Edit task"
msgstr ""
#: src/modules/tasklist/ui.py:590
msgctxt "ui:tasklist_single_editor|title"
msgid "Add task"
msgstr ""
#: src/modules/tasklist/ui.py:623
msgctxt "ui:tasklist|button:edit_mode|label"
msgid "Edit"
msgstr ""
#: src/modules/tasklist/ui.py:639
msgctxt "ui:tasklist|button:delete_mode|label"
msgid "Delete"
msgstr ""
#: src/modules/tasklist/ui.py:655
msgctxt "ui:tasklist|button:toggle_mode|label"
msgid "Toggle"
msgstr ""
#: src/modules/tasklist/ui.py:672
msgctxt "ui:tasklist|button:edit_bulk|error:too_long"
msgid ""
"Your tasklist is too long to be edited in a Discord text input! Use the save "
"button and {cmds[tasks upload]} instead."
msgstr ""
#: src/modules/tasklist/ui.py:686
msgctxt "ui:tasklist|button:edit_bulk|label"
msgid "Bulk Edit"
msgstr ""
#: src/modules/tasklist/ui.py:699
msgctxt "ui:tasklist|button:clear|label"
msgid "Clear Tasklist"
msgstr ""
#: src/modules/tasklist/ui.py:718
#, possible-python-brace-format
msgctxt "ui:tasklist|button:save|dm:contents"
msgid "Your tasklist as of {now} is attached. Click here to jump back: {jump}"
msgstr ""
#: src/modules/tasklist/ui.py:731
msgctxt "ui:tasklist|button:save|error:dms"
msgid "Could not DM you! Do you have me blocked? Tasklist attached below."
msgstr ""
#: src/modules/tasklist/ui.py:776
msgctxt "ui:tasklist|error:wrong_user"
msgid "This is not your tasklist!"
msgstr ""
#: src/modules/tasklist/ui.py:818
#, possible-python-brace-format
msgctxt "ui:tasklist|embed|author"
msgid "{name}'s tasklist ({completed}/{total} complete)"
msgstr ""
#: src/modules/tasklist/ui.py:840
msgctxt "ui:tasklist|embed|description"
msgid ""
"**You have no tasks on your tasklist!**\n"
"Add a task with {cmds[tasks new]}, or by pressing the {new_button} button "
"below."
msgstr ""
#: src/modules/tasklist/settings.py:33
msgctxt "guildset:task_reward"
msgid "task_reward"
msgstr ""
#: src/modules/tasklist/settings.py:36
msgctxt "guildset:task_reward|desc"
msgid "Number of LionCoins given for each completed task."
msgstr ""
#: src/modules/tasklist/settings.py:40
msgctxt "guildset:task_reward|long_desc"
msgid ""
"The number of coins members will be rewarded each time they complete a task "
"on their tasklist."
msgstr ""
#: src/modules/tasklist/settings.py:44
msgctxt "guildset:task_reward|accepts"
msgid "The number of LionCoins to reward per task."
msgstr ""
#: src/modules/tasklist/settings.py:56
#, possible-python-brace-format
msgctxt "guildset:task_reward|response"
msgid ""
"Members will now be rewarded {coin}**{amount}** for each completed task."
msgstr ""
#: src/modules/tasklist/settings.py:65
#, possible-python-brace-format
msgctxt "guildset:task_reward|formatted"
msgid "{coin}**{amount}** per task."
msgstr ""
#: src/modules/tasklist/settings.py:73
msgctxt "guildset:task_reward_limit"
msgid "task_reward_limit"
msgstr ""
#: src/modules/tasklist/settings.py:76
msgctxt "guildset:task_reward_limit|desc"
msgid "Maximum number of task rewards given per 24h."
msgstr ""
#: src/modules/tasklist/settings.py:80
msgctxt "guildset:task_reward_limit|long_desc"
msgid ""
"Maximum number of times in each 24h period that members will be rewarded for "
"completing a task."
msgstr ""
#: src/modules/tasklist/settings.py:85
msgctxt "guildset:task_reward_limit|accepts"
msgid "The maximum number of tasks to reward LC for per 24h."
msgstr ""
#: src/modules/tasklist/settings.py:97
#, possible-python-brace-format
msgctxt "guildset:task_reward_limit|response"
msgid ""
"Members will now be rewarded for task completion at most **{amount}** times "
"per 24h."
msgstr ""
#: src/modules/tasklist/settings.py:106
#, possible-python-brace-format
msgctxt "guildset:task_reward_limit|formatted"
msgid "`{number}` per 24 hours."
msgstr ""
#: src/modules/tasklist/settings.py:113
msgctxt "guildset:tasklist_channels"
msgid "tasklist_channels"
msgstr ""
#: src/modules/tasklist/settings.py:116
msgctxt "guildset:tasklist_channels|desc"
msgid "Channels in which to publicly display member tasklists."
msgstr ""
#: src/modules/tasklist/settings.py:120
#, possible-python-brace-format
msgctxt "guildset:tasklist_channels|long_desc"
msgid ""
"A member's tasklist (from {cmds[tasklist]}) is usually only visible to the "
"member themselves. If set, tasklists opened in `tasklist_channels` will be "
"visible to all members, and the interface will have a much longer expiry "
"period. If a category is provided, this will apply to all channels under the "
"category."
msgstr ""
#: src/modules/tasklist/settings.py:127
msgctxt "guildset:tasklist_channels|accepts"
msgid "Comma separated list of tasklist channel names or ids."
msgstr ""
#: src/modules/tasklist/settings.py:144
#, possible-python-brace-format
msgctxt "guildset:tasklist_channels|set_response|set"
msgid ""
"Tasklists will now be publicly displayed in the following channels: "
"{channels}"
msgstr ""
#: src/modules/tasklist/settings.py:149
msgctxt "guildset:tasklist_channels|set_response|unset"
msgid "Member tasklists will never be publicly displayed."
msgstr ""
#: src/modules/tasklist/settings.py:158
msgctxt "guildset:tasklist_channels|set_using"
msgid "Channel selector below."
msgstr ""
#: src/modules/tasklist/settings.py:289
msgctxt "ui:tasklist_config|button:close|label"
msgid "Close"
msgstr ""
#: src/modules/tasklist/settings.py:290
msgctxt "ui:tasklist_config|button:reset|label"
msgid "Reset"
msgstr ""
#: src/modules/tasklist/settings.py:293
msgctxt "ui:tasklist_config|menu:channels|placeholder"
msgid "Set Tasklist Channels"
msgstr ""
#: src/modules/tasklist/settings.py:311
msgctxt "ui:tasklist_config|embed|title"
msgid "Tasklist Configuration Panel"
msgstr ""
#: src/modules/tasklist/settings.py:320
msgctxt "dash:tasklist|name"
msgid "Tasklist Configuration ({commands[configure tasklist]})"
msgstr ""

View File

@@ -0,0 +1,78 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/test/test.py:47 src/modules/test/test.py:54
msgid "test"
msgstr ""
#: src/modules/test/test.py:55
msgid "Test"
msgstr ""
#: src/modules/test/test.py:62
msgid "editor"
msgstr ""
#: src/modules/test/test.py:63
msgid "Test message editor"
msgstr ""
#: src/modules/test/test.py:89
msgid "test_ephemeral"
msgstr ""
#: src/modules/test/test.py:90
msgid "Test ephemeral delete and edit"
msgstr ""
#: src/modules/test/test.py:102
msgid "colours"
msgstr ""
#: src/modules/test/test.py:103
msgid "Test Ansi colours"
msgstr ""
#: src/modules/test/test.py:123
msgid "fail"
msgstr ""
#: src/modules/test/test.py:130
msgid "pager"
msgstr ""
#: src/modules/test/test.py:158
msgid "pager2"
msgstr ""
#: src/modules/test/test.py:189
msgid "prettyusers"
msgstr ""
#: src/modules/test/test.py:239
msgid "dmview"
msgstr ""
#: src/modules/test/test.py:250
msgid "multiview"
msgstr ""
#: src/modules/test/test.py:267
msgid "stats-card"
msgstr ""

View File

@@ -0,0 +1,222 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/tracking/text/cog.py:249
msgctxt "cmd:configure_message_exp"
msgid "message_exp"
msgstr ""
#: src/tracking/text/cog.py:252
msgctxt "cmd:configure_message_exp|desc"
msgid "Configure Message Tracking & Experience"
msgstr ""
#: src/tracking/text/cog.py:315
msgctxt "cmd:leo_configure_exp_rates"
msgid "experience_rates"
msgstr ""
#: src/tracking/text/cog.py:318
msgctxt "cmd:leo_configure_exp_rates|desc"
msgid "Global experience rate configuration"
msgstr ""
#: src/tracking/text/ui.py:45
msgctxt "ui:text_tracker_config|menu:untracked_channels|placeholder"
msgid "Select Untracked Channels"
msgstr ""
#: src/tracking/text/ui.py:52
msgctxt "ui:text_tracker_config|embed|title"
msgid "Message Tracking Configuration Panel"
msgstr ""
#: src/tracking/text/ui.py:89
msgctxt "dash:text_tracking|title"
msgid "Message XP configuration ({commands[configure message_exp]})"
msgstr ""
#: src/tracking/text/settings.py:33
msgctxt "guildset:xp_per_period"
msgid "xp_per_5min"
msgstr ""
#: src/tracking/text/settings.py:36
msgctxt "guildset:xp_per_period|desc"
msgid ""
"How much XP members will be given every 5 minute period they are active."
msgstr ""
#: src/tracking/text/settings.py:40
msgctxt "guildset:xp_per_period|long_desc"
msgid ""
"Amount of message XP to give members for each 5 minute period in which they "
"are active (send a message). Note that this XP is only given *once* per "
"period."
msgstr ""
#: src/tracking/text/settings.py:45
msgctxt "guildset:xp_per_period|accepts"
msgid "Number of message XP to reward per 5 minute active period."
msgstr ""
#: src/tracking/text/settings.py:57
#, possible-python-brace-format
msgctxt "guildset:xp_per_period|set_response"
msgid ""
"For every **5** minutes they are active (i.e. in which they send a message), "
"members will now be given **{amount}** XP."
msgstr ""
#: src/tracking/text/settings.py:65
msgctxt "guildset:word_xp"
msgid "xp_per_100words"
msgstr ""
#: src/tracking/text/settings.py:68
msgctxt "guildset:word_xp|desc"
msgid "How much XP members will be given per hundred words they write."
msgstr ""
#: src/tracking/text/settings.py:72
msgctxt "guildset:word_xp|long_desc"
msgid ""
"Amount of message XP to be given (additionally to the XP per period) for "
"each hundred words. Useful for rewarding communication."
msgstr ""
#: src/tracking/text/settings.py:77
msgctxt "guildset:word_xp|accepts"
msgid "Number of XP to reward per hundred words sent."
msgstr ""
#: src/tracking/text/settings.py:89
#, possible-python-brace-format
msgctxt "guildset:word_xp|set_response"
msgid ""
"For every **100** words they send, members will now be rewarded an "
"additional **{amount}** XP."
msgstr ""
#: src/tracking/text/settings.py:95
msgctxt "guildset:untracked_text_channels"
msgid "untracked_text_channels"
msgstr ""
#: src/tracking/text/settings.py:98
msgctxt "guildset:untracked_text_channels|desc"
msgid "Channels in which Message XP will not be given."
msgstr ""
#: src/tracking/text/settings.py:102
msgctxt "guildset:untracked_text_channels|long_desc"
msgid ""
"Messages sent in these channels will not count towards a member's message "
"XP. If a category is selected, then all channels under the category will "
"also be untracked."
msgstr ""
#: src/tracking/text/settings.py:107
msgctxt "guildset:untracked_text_channels|accepts"
msgid "Comma separated list of untracked text channel names or ids."
msgstr ""
#: src/tracking/text/settings.py:111
msgctxt "guildset:untracked_text_channels|notset"
msgid "Not Set (all text channels will be tracked.)"
msgstr ""
#: src/tracking/text/settings.py:128
#, possible-python-brace-format
msgctxt "guildset:untracked_text_channels|set_response|set"
msgid "Messages in or under the following channels will be ignored: {channels}"
msgstr ""
#: src/tracking/text/settings.py:133
msgctxt "guildset:untracked_text_channels|set_response|notset"
msgid "Message XP will now be tracked in every channel."
msgstr ""
#: src/tracking/text/settings.py:142
msgctxt "guildset:untracked_text_channels|set_using"
msgid "Channel selector below"
msgstr ""
#: src/tracking/text/settings.py:173
msgctxt "botset:xp_per_period"
msgid "xp_per_5min"
msgstr ""
#: src/tracking/text/settings.py:176
msgctxt "botset:xp_per_period|desc"
msgid ""
"How much global XP members will be given every 5 minute period they are "
"active."
msgstr ""
#: src/tracking/text/settings.py:180
msgctxt "botset:xp_per_period|long_desc"
msgid ""
"Amount of global message XP to give members for each 5 minute period in "
"which they are active (send a message). Note that this XP is only given "
"*once* per period."
msgstr ""
#: src/tracking/text/settings.py:186
msgctxt "botset:xp_per_period|accepts"
msgid "Number of message XP to reward per 5 minute active period."
msgstr ""
#: src/tracking/text/settings.py:198
#, possible-python-brace-format
msgctxt "leoset:xp_per_period|set_response"
msgid ""
"For every **5** minutes they are active (i.e. in which they send a message), "
"all users will now be given **{amount}** global XP."
msgstr ""
#: src/tracking/text/settings.py:206
msgctxt "botset:word_xp"
msgid "xp_per_100words"
msgstr ""
#: src/tracking/text/settings.py:209
msgctxt "botset:word_xp|desc"
msgid "How much global XP members will be given per hundred words they write."
msgstr ""
#: src/tracking/text/settings.py:213
msgctxt "botset:word_xp|long_desc"
msgid ""
"Amount of global message XP to be given (additionally to the XP per period) "
"for each hundred words. Useful for rewarding communication."
msgstr ""
#: src/tracking/text/settings.py:218
msgctxt "botset:word_xp|accepts"
msgid "Number of XP to reward per hundred words sent."
msgstr ""
#: src/tracking/text/settings.py:230
#, possible-python-brace-format
msgctxt "leoset:word_xp|set_response"
msgid ""
"For every **100** words they send, users will now be rewarded an additional "
"**{amount}** global XP."
msgstr ""

View File

@@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/gui/cards/timer.py:73
msgctxt "skin:timer|field:date_text"
msgid "Use /now to show what you are working on!"
msgstr ""
#: src/gui/cards/timer.py:89
msgctxt "skin:timer|stage:focus|field:stage_text"
msgid "FOCUS"
msgstr ""
#: src/gui/cards/timer.py:103
msgctxt "skin:timer|stage:break|field:stage_text"
msgid "BREAK"
msgstr ""

View File

@@ -0,0 +1,97 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/user_config/cog.py:38
msgctxt "userset:timezone"
msgid "timezone"
msgstr ""
#: src/modules/user_config/cog.py:41
msgctxt "userset:timezone|desc"
msgid "Timezone in which to display statistics."
msgstr ""
#: src/modules/user_config/cog.py:45
msgctxt "userset:timezone|long_desc"
msgid ""
"All personal time-related features of StudyLion will use this timezone for "
"you, including personal statistics. Note that leaderboards will still be "
"shown in the server's own timezone."
msgstr ""
#: src/modules/user_config/cog.py:60
#, possible-python-brace-format
msgctxt "userset:timezone|response:set"
msgid "Your personal timezone has been set to `{timezone}`."
msgstr ""
#: src/modules/user_config/cog.py:65
msgctxt "userset:timezone|response:unset"
msgid ""
"You have unset your timezone. Statistics will be displayed in the server "
"timezone."
msgstr ""
#: src/modules/user_config/cog.py:81
msgctxt "cmd:userconfig"
msgid "my"
msgstr ""
#: src/modules/user_config/cog.py:82
msgctxt "cmd:userconfig|desc"
msgid "User configuration commands."
msgstr ""
#: src/modules/user_config/cog.py:89
msgctxt "cmd:userconfig_timezone"
msgid "timezone"
msgstr ""
#: src/modules/user_config/cog.py:92
msgctxt "cmd:userconfig_timezone|desc"
msgid ""
"Set your personal timezone, used for displaying stats and setting reminders."
msgstr ""
#: src/modules/user_config/cog.py:96
msgctxt "cmd:userconfig_timezone|param:timezone"
msgid "timezone"
msgstr ""
#: src/modules/user_config/cog.py:101
msgctxt "cmd:userconfig_timezone|param:timezone|desc"
msgid "What timezone are you in? Try typing your country or continent."
msgstr ""
#: src/modules/user_config/cog.py:117
#, possible-python-brace-format
msgctxt "cmd:userconfig_timezone|response:set"
msgid "Your timezone is currently set to {timezone}"
msgstr ""
#: src/modules/user_config/cog.py:121
msgctxt "cmd:userconfig_timezone|button:reset|label"
msgid "Reset"
msgstr ""
#: src/modules/user_config/cog.py:133
#, possible-python-brace-format
msgctxt "cmd:userconfig_timezone|response:unset"
msgid "Your timezone is not set. Using the server timezone `{timezone}`."
msgstr ""

510
locales/templates/utils.pot Normal file
View File

@@ -0,0 +1,510 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/utils/cog.py:18
msgctxt "cmd:page"
msgid "page"
msgstr ""
#: src/utils/cog.py:21
msgctxt "cmd:page|desc"
msgid ""
"Jump to a given page of the ouput of a previous command in this channel."
msgstr ""
#: src/utils/cog.py:34
msgctxt "cmd:page|error:no_pager"
msgid "No pager listening in this channel!"
msgstr ""
#: src/utils/cog.py:45
msgctxt "cmd:page_next"
msgid "next"
msgstr ""
#: src/utils/cog.py:46
msgctxt "cmd:page_next|desc"
msgid "Jump to the next page of output."
msgstr ""
#: src/utils/cog.py:52
msgctxt "cmd:page_prev"
msgid "prev"
msgstr ""
#: src/utils/cog.py:53
msgctxt "cmd:page_prev|desc"
msgid "Jump to the previous page of output."
msgstr ""
#: src/utils/cog.py:59
msgctxt "cmd:page_first"
msgid "first"
msgstr ""
#: src/utils/cog.py:60
msgctxt "cmd:page_first|desc"
msgid "Jump to the first page of output."
msgstr ""
#: src/utils/cog.py:66
msgctxt "cmd:page_last"
msgid "last"
msgstr ""
#: src/utils/cog.py:67
msgctxt "cmd:page_last|desc"
msgid "Jump to the last page of output."
msgstr ""
#: src/utils/cog.py:73
msgctxt "cmd:page_select"
msgid "select"
msgstr ""
#: src/utils/cog.py:74
msgctxt "cmd:page_select|desc"
msgid "Select a page of the output to jump to."
msgstr ""
#: src/utils/cog.py:77
msgctxt "cmd:page_select|param:page"
msgid "page"
msgstr ""
#: src/utils/cog.py:80
msgctxt "cmd:page_select|param:page|desc"
msgid "The page name or number to jump to."
msgstr ""
#: src/utils/cog.py:86
msgctxt "cmd:page_select|error:no_pager"
msgid "No pager listening in this channel!"
msgstr ""
#: src/utils/cog.py:97
msgctxt "cmd:page_select|acmpl|error:no_pager"
msgid "No active pagers in this channel!"
msgstr ""
#: src/utils/transformers.py:43
#, possible-python-brace-format
msgctxt "utils:parse_dur|error"
msgid "Cannot parse `{value}` as a duration."
msgstr ""
#: src/utils/transformers.py:68
#, possible-python-brace-format
msgctxt "util:Duration|acmpl|error"
msgid "Cannot extract duration from \"{partial}\""
msgstr ""
#: src/utils/lib.py:670
msgctxt "util:parse_dur|regex:day"
msgid "(?P<value>\\d+)\\s*(?:(d)|(day))"
msgstr ""
#: src/utils/lib.py:677
msgctxt "util:parse_dur|regex:hour"
msgid "(?P<value>\\d+)\\s*(?:(h)|(hour))"
msgstr ""
#: src/utils/lib.py:684
msgctxt "util:parse_dur|regex:minute"
msgid "(?P<value>\\d+)\\s*(?:(m)|(min))"
msgstr ""
#: src/utils/lib.py:691
msgctxt "util:parse_dur|regex:second"
msgid "(?P<value>\\d+)\\s*(?:(s)|(sec))"
msgstr ""
#: src/utils/ui/config.py:35
msgctxt "ui:configui|modal:edit|title"
msgid "Setting Editor"
msgstr ""
#: src/utils/ui/config.py:75
msgctxt "ui:configui|check|not_permitted"
msgid "You have insufficient server permissions to use this UI!"
msgstr ""
#: src/utils/ui/config.py:153
msgctxt "ui:configui|button:edit|label"
msgid "Edit"
msgstr ""
#: src/utils/ui/config.py:192
msgctxt "ui:guild_config_base|button:reset|label"
msgid "Reset"
msgstr ""
#. List of valid keys indicating movement to the next page
#: src/utils/ui/pagers.py:50
msgctxt "cmd:page|pager:Pager|options:next"
msgid "n, nxt, next, forward, +"
msgstr ""
#. List of valid keys indicating movement to the previous page
#: src/utils/ui/pagers.py:53
msgctxt "cmd:page|pager:Pager|options:prev"
msgid "p, prev, back, -"
msgstr ""
#. List of valid keys indicating movement to the first page
#: src/utils/ui/pagers.py:56
msgctxt "cmd:page|pager:Pager|options:first"
msgid "f, first, one, start"
msgstr ""
#. List of valid keys indicating movement to the last page
#: src/utils/ui/pagers.py:59
msgctxt "cmd:page|pager:Pager|options:last"
msgid "l, last, end"
msgstr ""
#: src/utils/ui/pagers.py:273
#, possible-python-brace-format
msgctxt "cmd:page|pager:Pager|error:parse"
msgid "Could not understand page specification `{value}`."
msgstr ""
#: src/utils/ui/pagers.py:302
#, possible-python-brace-format
msgctxt "cmd:page|acmpl|pager:Pager|choice:last"
msgid "Last: Page {page}/{total}"
msgstr ""
#: src/utils/ui/pagers.py:307
#, possible-python-brace-format
msgctxt "cmd:page|acmpl|pager:Pager|choice:current"
msgid "Current: Page {page}/{total}"
msgstr ""
#: src/utils/ui/pagers.py:319
#, possible-python-brace-format
msgctxt "cmd:page|acmpl|pager:Pager|choice:general"
msgid "Page {page}"
msgstr ""
#: src/utils/ui/pagers.py:353
#, possible-python-brace-format
msgctxt "cmd:page|acmpl|pager:Page|choice:select"
msgid "Selected: Page {page}/{total}"
msgstr ""
#: src/utils/ui/pagers.py:363
msgctxt "cmd:page|acmpl|pager:Page|error:parse"
msgid "No matching pages!"
msgstr ""
#: src/utils/ui/msgeditor.py:75
msgctxt "ui:msg_editor|error:empty"
msgid "Rendering failed! The message content and embed cannot both be empty."
msgstr ""
#: src/utils/ui/msgeditor.py:86
#, possible-python-brace-format
msgctxt "ui:msg_editor|error:embed_failed"
msgid ""
"Rendering failed! Could not parse the embed.\n"
"Error: {error}"
msgstr ""
#: src/utils/ui/msgeditor.py:104
#, possible-python-brace-format
msgctxt "ui:msg_editor|error:invalid_change"
msgid ""
"Rendering failed! The message was not modified.\n"
"Error: `{text}`"
msgstr ""
#: src/utils/ui/msgeditor.py:123
msgctxt "ui:msg_editor|modal:content|field:content|label"
msgid "Message Content"
msgstr ""
#: src/utils/ui/msgeditor.py:132
msgctxt "ui:msg_editor|modal:content|title"
msgid "Content Editor"
msgstr ""
#: src/utils/ui/msgeditor.py:150
msgctxt "ui:msg_editor|button:edit|label"
msgid "Edit Content"
msgstr ""
#: src/utils/ui/msgeditor.py:162
msgctxt "ui:msg_editor|button:add_embed|sample_embed|title"
msgid "Title Placeholder"
msgstr ""
#: src/utils/ui/msgeditor.py:163
msgctxt "ui:msg_editor|button:add_embed|sample_embed|description"
msgid "Description Placeholder"
msgstr ""
#: src/utils/ui/msgeditor.py:174
msgctxt "ui:msg_editor|button:add_embed|label"
msgid "Add Embed"
msgstr ""
#: src/utils/ui/msgeditor.py:192
msgctxt "ui:msg_editor|modal:body|field:content|label"
msgid "Message Content"
msgstr ""
#: src/utils/ui/msgeditor.py:203
msgctxt "ui:msg_editor|modal:body|field:desc|label"
msgid "Embed Description"
msgstr ""
#: src/utils/ui/msgeditor.py:214
msgctxt "ui:msg_editor|modal:body|field:title|label"
msgid "Embed Title"
msgstr ""
#: src/utils/ui/msgeditor.py:225
msgctxt "ui:msg_editor|modal:body|field:colour|label"
msgid "Embed Colour"
msgstr ""
#: src/utils/ui/msgeditor.py:240
msgctxt "ui:msg_editor|modal:body|title"
msgid "Message Body Editor"
msgstr ""
#: src/utils/ui/msgeditor.py:265
msgctxt "ui:msg_editor|button:body|error:invalid_colour"
msgid ""
"Invalid colour format! Please enter colours as hex codes, e.g. `#E67E22`"
msgstr ""
#: src/utils/ui/msgeditor.py:285
msgctxt "ui:msg_editor|button:body|label"
msgid "Body"
msgstr ""
#: src/utils/ui/msgeditor.py:302
msgctxt "ui:msg_editor|modal:author|field:name|label"
msgid "Author Name"
msgstr ""
#: src/utils/ui/msgeditor.py:313
msgctxt "ui:msg_editor|modal:author|field:link|label"
msgid "Author URL"
msgstr ""
#: src/utils/ui/msgeditor.py:323
msgctxt "ui:msg_editor|modal:author|field:image|label"
msgid "Author Image URL"
msgstr ""
#: src/utils/ui/msgeditor.py:334
msgctxt "ui:msg_editor|modal:author|title"
msgid "Embed Author Editor"
msgstr ""
#: src/utils/ui/msgeditor.py:360
msgctxt "ui:msg_editor|button:author|label"
msgid "Author"
msgstr ""
#: src/utils/ui/msgeditor.py:377
msgctxt "ui:msg_editor|modal:footer|field:text|label"
msgid "Footer Text"
msgstr ""
#: src/utils/ui/msgeditor.py:388
msgctxt "ui:msg_editor|modal:footer|field:image|label"
msgid "Footer Image URL"
msgstr ""
#: src/utils/ui/msgeditor.py:398
msgctxt "ui:msg_editor|modal:footer|field:timestamp|label"
msgid "Embed Timestamp (in ISO format)"
msgstr ""
#: src/utils/ui/msgeditor.py:410
msgctxt "ui:msg_editor|modal:footer|title"
msgid "Embed Footer Editor"
msgstr ""
#: src/utils/ui/msgeditor.py:429
msgctxt "ui:msg_editor|button:footer|error:invalid_timestamp"
msgid "Invalid timestamp! Please enter the timestamp in ISO format."
msgstr ""
#: src/utils/ui/msgeditor.py:449
msgctxt "ui:msg_editor|button:footer|label"
msgid "Footer"
msgstr ""
#: src/utils/ui/msgeditor.py:467
msgctxt "ui:msg_editor|modal:images|field:thumb|label"
msgid "Thumbnail Image URL"
msgstr ""
#: src/utils/ui/msgeditor.py:477
msgctxt "ui:msg_editor|modal:images|field:image|label"
msgid "Embed Image URL"
msgstr ""
#: src/utils/ui/msgeditor.py:487
msgctxt "ui:msg_editor|modal:images|title"
msgid "Embed images Editor"
msgstr ""
#: src/utils/ui/msgeditor.py:517
msgctxt "ui:msg_editor|button:images|label"
msgid "Images"
msgstr ""
#: src/utils/ui/msgeditor.py:535
msgctxt "ui:msg_editor|modal:add_field|field:position|label"
msgid "Field number to insert at"
msgstr ""
#: src/utils/ui/msgeditor.py:545
msgctxt "ui:msg_editor|modal:add_field|field:name|label"
msgid "Field name"
msgstr ""
#: src/utils/ui/msgeditor.py:555
msgctxt "ui:msg_editor|modal:add_field|field:value|label"
msgid "Field value"
msgstr ""
#: src/utils/ui/msgeditor.py:565
msgctxt "ui:msg_editor|modal:add_field|field:inline|label"
msgid "Whether the field is inline"
msgstr ""
#: src/utils/ui/msgeditor.py:569
msgctxt "ui:msg_editor|modal:add_field|field:inline|placeholder"
msgid "True/False"
msgstr ""
#: src/utils/ui/msgeditor.py:582
msgctxt "ui:msg_editor|modal:add_field|title"
msgid "Add Embed Field"
msgstr ""
#: src/utils/ui/msgeditor.py:602
msgctxt "ui:msg_editor|modal:add_field|error:position_not_int"
msgid "The field position must be an integer!"
msgstr ""
#: src/utils/ui/msgeditor.py:621
msgctxt "ui:msg_editor|button:add_field|label"
msgid "Add Field"
msgstr ""
#: src/utils/ui/msgeditor.py:637
msgctxt "ui:msg_editor|format_field|name_placeholder"
msgid "-"
msgstr ""
#: src/utils/ui/msgeditor.py:666
msgctxt "ui:msg_editor|modal:edit_field|field:name|label"
msgid "Field name"
msgstr ""
#: src/utils/ui/msgeditor.py:677
msgctxt "ui:msg_editor|modal:edit_field|field:value|label"
msgid "Field value"
msgstr ""
#: src/utils/ui/msgeditor.py:688
msgctxt "ui:msg_editor|modal:edit_field|field:inline|label"
msgid "Whether the field is inline"
msgstr ""
#: src/utils/ui/msgeditor.py:692
msgctxt "ui:msg_editor|modal:edit_field|field:inline|placeholder"
msgid "True/False"
msgstr ""
#: src/utils/ui/msgeditor.py:704
msgctxt "ui:msg_editor|modal:edit_field|title"
msgid "Edit Embed Field"
msgstr ""
#: src/utils/ui/msgeditor.py:733
msgctxt "ui:msg_editor|menu:edit_field|placeholder"
msgid "Edit Embed Field"
msgstr ""
#: src/utils/ui/msgeditor.py:772
msgctxt "ui:msg_deleteor|menu:delete_field|placeholder"
msgid "Remove Embed Field"
msgstr ""
#: src/utils/ui/msgeditor.py:808
msgctxt "ui:msg_editor|button:save|label"
msgid "Save"
msgstr ""
#: src/utils/ui/msgeditor.py:833
msgctxt "ui:msg_editor|button:download|label"
msgid "Download"
msgstr ""
#: src/utils/ui/msgeditor.py:852
msgctxt "ui:msg_editor|button:undo|label"
msgid "Undo"
msgstr ""
#: src/utils/ui/msgeditor.py:872
msgctxt "ui:msg_editor|button:redo|label"
msgid "Redo"
msgstr ""
#: src/utils/ui/msgeditor.py:891
msgctxt "ui:msg_editor|button:quit|confirm"
msgid "You have unsaved changes! Are you sure you want to quit?"
msgstr ""
#: src/utils/ui/msgeditor.py:896
msgctxt "ui:msg_editor|button:quit|confirm|button:yes"
msgid "Yes, Quit Now"
msgstr ""
#: src/utils/ui/msgeditor.py:902
msgctxt "ui:msg_editor|button:quit|confirm|button:no"
msgid "No, Go Back"
msgstr ""
#: src/utils/ui/msgeditor.py:996
msgctxt "ui:msg_editor|timeout_warning|title"
msgid "Warning!"
msgstr ""
#: src/utils/ui/msgeditor.py:1000
#, possible-python-brace-format
msgctxt "ui:msg_editor|timeout_warning|desc"
msgid ""
"This interface will time out {timestamp}. Press 'Continue' below to keep "
"editing."
msgstr ""
#: src/utils/ui/msgeditor.py:1009
msgctxt "ui:msg_editor|timeout_warning|continue"
msgid "Continue"
msgstr ""

356
locales/templates/video.pot Normal file
View File

@@ -0,0 +1,356 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/modules/video_channels/settingui.py:57
msgctxt "ui:video_config|menu:channels|placeholder"
msgid "Select Video Channels"
msgstr ""
#: src/modules/video_channels/settingui.py:82
msgctxt "ui:video_config|menu:exempt|placeholder"
msgid "Select Exempt Roles"
msgstr ""
#: src/modules/video_channels/settingui.py:109
msgctxt "ui:video_config|menu:video_blacklist|placeholder"
msgid "Select Blacklist Role"
msgstr ""
#: src/modules/video_channels/settingui.py:117
msgctxt "ui:video_config|embed|title"
msgid "Video Channel Configuration Panel"
msgstr ""
#: src/modules/video_channels/settingui.py:156
msgctxt "dash:video|title"
msgid "Video Channel Settings ({commands[configure video_channels]})"
msgstr ""
#: src/modules/video_channels/settingui.py:160
msgctxt "dash:video|option|name"
msgid "Video Channel Panel"
msgstr ""
#: src/modules/video_channels/cog.py:229
msgctxt "video_watchdog|kick_blacklisted_member|audit_reason"
msgid "Removing video blacklisted member from a video channel."
msgstr ""
#: src/modules/video_channels/cog.py:246
msgctxt "video_watchdog|kick_blacklisted_member|notification|title"
msgid "You have been disconnected."
msgstr ""
#: src/modules/video_channels/cog.py:250
#, possible-python-brace-format
msgctxt "video_watchdog|kick_blacklisted_member|notification|desc"
msgid ""
"You were disconnected from the video channel {channel} because you are "
"blacklisted from video channels in **{server}**."
msgstr ""
#: src/modules/video_channels/cog.py:290
#, possible-python-brace-format
msgctxt "video_watchdog|join_task|jump_field"
msgid "[Click to jump back]({link})"
msgstr ""
#: src/modules/video_channels/cog.py:297
msgctxt "video_watchdog|join_task|initial_request:title"
msgid "Please enable your video!"
msgstr ""
#: src/modules/video_channels/cog.py:301
#, possible-python-brace-format
msgctxt "video_watchdog|join_task|initial_request:description"
msgid ""
"**You have joined the video channel {channel}!**\n"
"Please **enable your video** or **leave the channel** or you will be "
"disconnected {timestamp} and potentially **blacklisted**."
msgstr ""
#: src/modules/video_channels/cog.py:316
msgctxt "video_watchdog|join_task|thanks:title"
msgid "Thanks for enabling your video!"
msgstr ""
#: src/modules/video_channels/cog.py:323
msgctxt "video_watchdog|join_task|bye:title"
msgid "Thanks for leaving the channel promptly!"
msgstr ""
#: src/modules/video_channels/cog.py:367
msgctxt "video_watchdog|join_task|kick_after_grace|audit_reason"
msgid "Member never enabled their video in video channel."
msgstr ""
#: src/modules/video_channels/cog.py:385
#, possible-python-brace-format
msgctxt "video_watchdog|join_task|kick_after_grace|ticket_reason"
msgid "Failed to enable their video in time in the video channel {channel}"
msgstr ""
#: src/modules/video_channels/cog.py:403
msgctxt "video_watchdog|join_task|kick_after_grace|warning|title"
msgid "You have received a warning!"
msgstr ""
#: src/modules/video_channels/cog.py:407
#, possible-python-brace-format
msgctxt "video_watchdog|join_task|kick_after_grace|warning|desc"
msgid ""
"**You must enable your camera in camera-only rooms.**\n"
"You have been disconnected from the video {channel} for not enabling your "
"camera."
msgstr ""
#: src/modules/video_channels/cog.py:422
msgctxt "video_watchdog|join_task|kick_after_grace|blacklist|title"
msgid "You have been blacklisted!"
msgstr ""
#: src/modules/video_channels/cog.py:426
msgctxt "video_watchdog|join_task|kick_after_grace|blacklist|desc"
msgid "You have been blacklisted from the video channels in this server."
msgstr ""
#: src/modules/video_channels/cog.py:459
#, possible-python-brace-format
msgctxt "video_watchdog|disabled_video_kick|audit_reason"
msgid ""
"Disconnected for disabling video for more than {number} seconds in video "
"channel."
msgstr ""
#: src/modules/video_channels/cog.py:474
msgctxt "video_watchdog|disabled_video_kick|notification|title"
msgid "You have been disconnected."
msgstr ""
#: src/modules/video_channels/cog.py:478
#, possible-python-brace-format
msgctxt "video_watchdog|disabled_video_kick|notification|desc"
msgid ""
"You were disconnected from the video channel {channel} because you disabled "
"your video.\n"
"Please keep your video on at all times, and leave the channel if you need to "
"disable it!"
msgstr ""
#: src/modules/video_channels/cog.py:510
msgctxt "cmd:configure_video"
msgid "video_channels"
msgstr ""
#: src/modules/video_channels/cog.py:512
msgctxt "cmd:configure_video|desc"
msgid "Configure video-only channels and blacklisting."
msgstr ""
#: src/modules/video_channels/settings.py:29
msgctxt "guildset:video_channels"
msgid "video_channels"
msgstr ""
#: src/modules/video_channels/settings.py:32
msgctxt "guildset:video_channels|desc"
msgid "List of voice channels and categories in which to enforce video."
msgstr ""
#: src/modules/video_channels/settings.py:36
msgctxt "guildset:video_channels|long_desc"
msgid ""
"Member will be required to turn on their video in these channels.\n"
"If they do not enable their video with `15` seconds of joining, they will be "
"asked to enable it through a notification in direct messages or the "
"`alert_channel`. If they still have not enabled it after the "
"`video_grace_period` has passed, they will be kicked from the channel. "
"Further, after the first offence (which is considered a warning), they will "
"be given the `video_blacklist` role, if configured, which will stop them "
"from joining video channels.\n"
"As usual, if a category is configured, this will apply to all voice channels "
"under the category."
msgstr ""
#: src/modules/video_channels/settings.py:50
msgctxt "guildset:video_channels|accepts"
msgid "Comma separated channel ids or names."
msgstr ""
#: src/modules/video_channels/settings.py:67
#, possible-python-brace-format
msgctxt "guildset:video_channels|set_response:set"
msgid ""
"Members will be asked to turn on their video in the following channels: "
"{channels}"
msgstr ""
#: src/modules/video_channels/settings.py:72
msgctxt "guildset:video_channels|set_response:unset"
msgid "Members will not be asked to turn on their video in any channels."
msgstr ""
#: src/modules/video_channels/settings.py:105
msgctxt "guildset:video_blacklist"
msgid "video_blacklist"
msgstr ""
#: src/modules/video_channels/settings.py:108
msgctxt "guildset:video_blacklist|desc"
msgid "Role given when members are blacklisted from video channels."
msgstr ""
#: src/modules/video_channels/settings.py:112
msgctxt "guildset:video_blacklist|long_desc"
msgid ""
"This role will be automatically given after a member has failed to keep "
"their video enabled in a video channel (see above).\n"
"Members who have this role will not be able to join configured video "
"channels. The role permissions may be freely configured by server admins to "
"place further restrictions on the offender.\n"
"The role may also be manually assigned, to the same effect.\n"
"If this role is not set, no video blacklist will occur, and members will "
"only be kicked from the channel and warned."
msgstr ""
#: src/modules/video_channels/settings.py:123
msgctxt "guildset:video_blacklist|accepts"
msgid "Blacklist role name or id."
msgstr ""
#: src/modules/video_channels/settings.py:138
#, possible-python-brace-format
msgctxt "guildset:video_blacklist|set_response:set"
msgid "Members who fail to keep their video on will be given {role}"
msgstr ""
#: src/modules/video_channels/settings.py:143
msgctxt "guildset:video_blacklist|set_response:unset"
msgid ""
"Members will no longer be automatically blacklisted from video channels."
msgstr ""
#: src/modules/video_channels/settings.py:155
msgctxt "guildset:video_blacklist|formatted:unset"
msgid "Not Set. (Members will not be automatically blacklisted.)"
msgstr ""
#: src/modules/video_channels/settings.py:162
msgctxt "guildset:video_durations"
msgid "video_blacklist_durations"
msgstr ""
#: src/modules/video_channels/settings.py:165
msgctxt "guildset:video_durations|desc"
msgid "Sequence of durations for automatic video blacklists."
msgstr ""
#: src/modules/video_channels/settings.py:169
msgctxt "guildset:video_durations|long_desc"
msgid ""
"When `video_blacklist` is set and members fail to turn on their video within "
"the configured `video_grace_period`, they will be automatically blacklisted "
"(i.e. given the `video_blacklist` role).\n"
"This setting describes *how long* the member will be blacklisted for, for "
"each offence.\n"
"E.g. if this is set to `1d, 7d, 30d`, then on the first offence the member "
"will be blacklisted for 1 day, on the second for 7 days, and on the third "
"for 30 days. A subsequent offence will result in an infinite blacklist."
msgstr ""
#: src/modules/video_channels/settings.py:181
msgctxt "guildset:video_durations|accepts"
msgid "Comma separated list of durations."
msgstr ""
#: src/modules/video_channels/settings.py:208
#, possible-python-brace-format
msgctxt "guildset:video_durations|set_response:set"
msgid "Members will be automatically blacklisted for: {durations}"
msgstr ""
#: src/modules/video_channels/settings.py:213
msgctxt "guildset:video_durations|set_response:unset"
msgid "Video blacklists are now always permanent."
msgstr ""
#: src/modules/video_channels/settings.py:221
msgctxt "guildset:video_grace_period"
msgid "video_grace_period"
msgstr ""
#: src/modules/video_channels/settings.py:224
msgctxt "guildset:video_grace_period|desc"
msgid ""
"How long to wait (in seconds) before kicking/blacklist members who don't "
"enable their video."
msgstr ""
#: src/modules/video_channels/settings.py:228
msgctxt "guildset:video_grace_period|long_desc"
msgid ""
"The length of time a member has to enable their video after joining a video "
"channel. After this time, if they have not enabled their video, they will be "
"kicked from the channel and potentially blacklisted from video channels."
msgstr ""
#: src/modules/video_channels/settings.py:234
msgctxt "guildset:video_grace_period|accepts"
msgid "How many seconds to wait for a member to enable video."
msgstr ""
#: src/modules/video_channels/settings.py:248
#, possible-python-brace-format
msgctxt "guildset:video_grace_period|set_response:set"
msgid "Members will now have **{duration}** to enable their video."
msgstr ""
#: src/modules/video_channels/settings.py:256
msgctxt "guildset:video_exempt"
msgid "video_exempt"
msgstr ""
#: src/modules/video_channels/settings.py:259
msgctxt "guildset:video_exempt|desc"
msgid "List of roles which are exempt from video channels."
msgstr ""
#: src/modules/video_channels/settings.py:263
msgctxt "guildset:video_exempt|long_desc"
msgid ""
"Members who have **any** of these roles will not be required to enable their "
"video in the `video_channels`. This also overrides the `video_blacklist` "
"role."
msgstr ""
#: src/modules/video_channels/settings.py:269
msgctxt "guildset:video_exempt|accepts"
msgid "List of exempt role names or ids."
msgstr ""
#: src/modules/video_channels/settings.py:284
#, possible-python-brace-format
msgctxt "guildset:video_exempt|set_response:set"
msgid "The following roles will now be exempt from video channels: {roles}"
msgstr ""
#: src/modules/video_channels/settings.py:289
msgctxt "guildset:video_exempt|set_response:unset"
msgid "No members will be exempt from video channel requirements."
msgstr ""

View File

@@ -0,0 +1,240 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/tracking/voice/cog.py:646
msgctxt "cmd:configure_voice_rates"
msgid "voice_rewards"
msgstr ""
#: src/tracking/voice/cog.py:649
msgctxt "cmd:configure_voice_rates|desc"
msgid "Configure Voice tracking rewards and experience"
msgstr ""
#: src/tracking/voice/cog.py:706
#, possible-python-brace-format
msgctxt "cmd:configure_voice_tracking|mode:voice|resp:success|desc"
msgid ""
"Members will now be rewarded {coin}**{base} (+ {bonus})** per hour they "
"spend (live) in a voice channel, up to a total of **{cap}** hours per server "
"day."
msgstr ""
#: src/tracking/voice/cog.py:717
#, possible-python-brace-format
msgctxt "cmd:configure_voice_tracking|mode:study|resp:success|desc"
msgid ""
"Members will now be rewarded {coin}**{base}** per hour of study in this "
"server, with a bonus of {coin}**{bonus}** if they stream of display video, "
"up to a total of **{cap}** hours per server day."
msgstr ""
#: src/tracking/voice/settings.py:40
msgctxt "guildset:untracked_channels"
msgid "untracked_channels"
msgstr ""
#: src/tracking/voice/settings.py:43
msgctxt "guildset:untracked_channels|desc"
msgid "Channels which will be ignored for statistics tracking."
msgstr ""
#: src/tracking/voice/settings.py:47
msgctxt "guildset:untracked_channels|long_desc"
msgid ""
"Activity in these channels will not count towards a member's statistics. If "
"a category is selected, all channels under the category will be untracked."
msgstr ""
#: src/tracking/voice/settings.py:52
msgctxt "guildset:untracked_channels|accepts"
msgid "Comma separated list of untracked channel name/ids."
msgstr ""
#: src/tracking/voice/settings.py:56
msgctxt "guildset:untracked_channels|notset"
msgid "Not Set (all voice channels will be tracked.)"
msgstr ""
#: src/tracking/voice/settings.py:73
msgctxt "guildset:untracked_channels|set"
msgid "Channel selector below."
msgstr ""
#: src/tracking/voice/settings.py:82
#, possible-python-brace-format
msgctxt "guildset:untracked_channels|set_response|set"
msgid "Activity in the following channels will now be ignored: {channels}"
msgstr ""
#: src/tracking/voice/settings.py:89
msgctxt "guildset:untracked_channels|set_response|unset"
msgid "All voice channels will now be tracked."
msgstr ""
#: src/tracking/voice/settings.py:117
msgctxt "guildset:hourly_reward"
msgid "hourly_reward"
msgstr ""
#: src/tracking/voice/settings.py:120
msgctxt "guildset:hourly_reward|mode:voice|desc"
msgid "LionCoins given per hour in a voice channel."
msgstr ""
#: src/tracking/voice/settings.py:124
msgctxt "guildset:hourly_reward|mode:voice|long_desc"
msgid ""
"Number of LionCoins to each member per hour that they stay in a tracked "
"voice channel."
msgstr ""
#: src/tracking/voice/settings.py:128
msgctxt "guildset:hourly_reward|accepts"
msgid "Number of coins to reward per hour in voice."
msgstr ""
#: src/tracking/voice/settings.py:144
#, possible-python-brace-format
msgctxt "guildset:hourly_reward|formatted"
msgid "{coin}**{amount}** per hour."
msgstr ""
#: src/tracking/voice/settings.py:159
#, possible-python-brace-format
msgctxt "guildset:hourly_reward|mode:voice|response"
msgid "Members will be given {coin}**{amount}** per hour in a voice channel!"
msgstr ""
#: src/tracking/voice/settings.py:171
msgctxt "guildset:hourly_reward|mode:study|desc"
msgid "LionCoins given per hour of study."
msgstr ""
#: src/tracking/voice/settings.py:175
msgctxt "guildset:hourly_reward|mode:study|long_desc"
msgid "Number of LionCoins given per hour of study, up to the daily hour cap."
msgstr ""
#: src/tracking/voice/settings.py:183
#, possible-python-brace-format
msgctxt "guildset:hourly_reward|mode:study|response"
msgid "Members will be given {coin}**{amount}** per hour that they study!"
msgstr ""
#: src/tracking/voice/settings.py:197
msgctxt "guildset:hourly_live_bonus"
msgid "hourly_live_bonus"
msgstr ""
#: src/tracking/voice/settings.py:200
msgctxt "guildset:hourly_live_bonus|desc"
msgid "Bonus Lioncoins given per hour when a member streams or video-chats."
msgstr ""
#: src/tracking/voice/settings.py:205
msgctxt "guildset:hourly_live_bonus|long_desc"
msgid ""
"When a member streams or video-chats in a channel they will be given this "
"bonus *additionally* to the `hourly_reward`."
msgstr ""
#: src/tracking/voice/settings.py:210
msgctxt "guildset:hourly_live_bonus|accepts"
msgid "Number of bonus coins to reward per hour when live."
msgstr ""
#: src/tracking/voice/settings.py:226
#, possible-python-brace-format
msgctxt "guildset:hourly_live_bonus|formatted"
msgid "{coin}**{amount}** bonus per hour when live."
msgstr ""
#: src/tracking/voice/settings.py:237
#, possible-python-brace-format
msgctxt "guildset:hourly_live_bonus|response"
msgid ""
"Live members will now *additionally* be given {coin}**{amount}** per hour."
msgstr ""
#: src/tracking/voice/settings.py:248
msgctxt "guildset:daily_voice_cap"
msgid "daily_voice_cap"
msgstr ""
#: src/tracking/voice/settings.py:251
msgctxt "guildset:daily_voice_cap|desc"
msgid "Maximum number of hours per day to count for each member."
msgstr ""
#: src/tracking/voice/settings.py:255
msgctxt "guildset:daily_voice_cap|long_desc"
msgid ""
"Time spend in voice channels over this amount will not be tracked towards "
"the member's statistics. Tracking will resume at the start of the next day. "
"The start of the day is determined by the configured guild timezone."
msgstr ""
#: src/tracking/voice/settings.py:261
msgctxt "guildset:daily_voice_cap|accepts"
msgid "The maximum number of voice hours to track per day."
msgstr ""
#: src/tracking/voice/settings.py:277
#, possible-python-brace-format
msgctxt "guildset:daily_voice_cap|response"
msgid ""
"Members will be tracked for at most {duration} per day. (**NOTE:** This will "
"not affect members currently in voice channels.)"
msgstr ""
#: src/tracking/voice/settings.py:335
msgctxt "ui:voice_tracker_config|button:close|label"
msgid "Close"
msgstr ""
#: src/tracking/voice/settings.py:349
msgctxt "ui:voice_tracker_config|button:reset|label"
msgid "Reset"
msgstr ""
#: src/tracking/voice/settings.py:362
msgctxt "ui:voice_tracker_config|menu:untracked_channels|placeholder"
msgid "Set Untracked Channels"
msgstr ""
#: src/tracking/voice/settings.py:428 src/tracking/voice/settings.py:482
msgctxt "ui:voice_tracker_config|mode:voice|embed|title"
msgid "Voice Tracker Configuration Panel"
msgstr ""
#: src/tracking/voice/settings.py:433 src/tracking/voice/settings.py:487
msgctxt "ui:voice_tracker_config|mode:study|embed|title"
msgid "Study Tracker Configuration Panel"
msgstr ""
#: src/tracking/voice/settings.py:472
msgctxt "ui:voice_tracker_config|menu:untracked_channels|placeholder"
msgid "Select Untracked Channels"
msgstr ""
#: src/tracking/voice/settings.py:528
msgctxt "dash:voice_tracker|title"
msgid "Voice Tracker Configuration ({commands[configure voice_rewards]})"
msgstr ""

View File

@@ -0,0 +1,78 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/wards.py:65
msgctxt "ward:sys_admin|failed"
msgid "You must be a bot owner to do this!"
msgstr ""
#: src/wards.py:81
msgctxt "ward:high_management|failed"
msgid "You must have the `ADMINISTRATOR` permission in this server to do this!"
msgstr ""
#: src/wards.py:97
msgctxt "ward:low_management|failed"
msgid "You must have the `MANAGE_GUILD` permission in this server to do this!"
msgstr ""
#: src/wards.py:121
#, possible-python-brace-format
msgctxt "ward:equippable_role|error:bot_managed"
msgid "I cannot manage {role} because it is managed by another bot!"
msgstr ""
#: src/wards.py:128
#, possible-python-brace-format
msgctxt "ward:equippable_role|error:integration"
msgid "I cannot manage {role} because it is managed by a server integration."
msgstr ""
#: src/wards.py:135
msgctxt "ward:equippable_role|error:default_role"
msgid "I cannot manage the server's default role."
msgstr ""
#: src/wards.py:142
msgctxt "ward:equippable_role|error:no_perms"
msgid "I need the `MANAGE_ROLES` permission before I can manage roles!"
msgstr ""
#: src/wards.py:149
#, possible-python-brace-format
msgctxt "ward:equippable_role|error:my_top_role"
msgid "I cannot assign or remove {role} because it is above my top role!"
msgstr ""
#: src/wards.py:156
#, possible-python-brace-format
msgctxt "ward:equippable_role|error:not_assignable"
msgid "I don't have sufficient permissions to assign or remove {role}."
msgstr ""
#: src/wards.py:164
msgctxt "ward:equippable_role|error:actor_perms"
msgid "You need the `MANAGE_ROLES` permission before you can configure roles!"
msgstr ""
#: src/wards.py:171
#, possible-python-brace-format
msgctxt "ward:equippable_role|error:actor_top_role"
msgid "You cannot configure {role} because it is above your top role!"
msgstr ""

View File

@@ -0,0 +1,97 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-16 17:01+0300\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/gui/cards/weekly.py:52
msgctxt "skin:weeklystats|mode:study|title"
msgid "STUDY HOURS"
msgstr ""
#: src/gui/cards/weekly.py:56
msgctxt "skin:weeklystats|mode:voice|title"
msgid "VOICE CHANNEL ACTIVITY"
msgstr ""
#: src/gui/cards/weekly.py:60
msgctxt "skin:weeklystats|mode:text|title"
msgid "MESSAGE ACTIVITY"
msgstr ""
#: src/gui/cards/weekly.py:64
msgctxt "skin::weeklystats|mode:anki|title"
msgid "CARDS REVIEWED"
msgstr ""
#: src/gui/cards/weekly.py:137
msgctxt "skin:weeklystats|weekdays"
msgid "M,T,W,T,F,S,S"
msgstr ""
#: src/gui/cards/weekly.py:207
#, possible-python-brace-format
msgctxt "skin:weeklystats|mode:study|summary:this_week"
msgid "THIS WEEK: {amount} HOURS"
msgstr ""
#: src/gui/cards/weekly.py:211
#, possible-python-brace-format
msgctxt "skin:weeklystats|mode:voice|summary:this_week"
msgid "THIS WEEK: {amount} HOURS"
msgstr ""
#: src/gui/cards/weekly.py:215
#, possible-python-brace-format
msgctxt "skin:weeklystats|mode:text|summary:this_week"
msgid "THIS WEEK: {amount} MESSAGES"
msgstr ""
#: src/gui/cards/weekly.py:219
#, possible-python-brace-format
msgctxt "skin:weeklystats|mode:text|summary:this_week"
msgid "THIS WEEK: {amount} CARDS"
msgstr ""
#: src/gui/cards/weekly.py:240
#, possible-python-brace-format
msgctxt "skin:weeklystats|mode:study|summary:last_week"
msgid "LAST WEEK: {amount} HOURS"
msgstr ""
#: src/gui/cards/weekly.py:244
#, possible-python-brace-format
msgctxt "skin:weeklystats|mode:voice|summary:last_week"
msgid "LAST WEEK: {amount} HOURS"
msgstr ""
#: src/gui/cards/weekly.py:248
#, possible-python-brace-format
msgctxt "skin:weeklystats|mode:text|summary:last_week"
msgid "LAST WEEK: {amount} MESSAGES"
msgstr ""
#: src/gui/cards/weekly.py:252
#, possible-python-brace-format
msgctxt "skin:weeklystats|mode:text|summary:last_week"
msgid "LAST WEEK: {amount} CARDS"
msgstr ""
#: src/gui/cards/weekly.py:272
#, possible-python-brace-format
msgctxt "skin:weeklystats|footer"
msgid "Weekly Statistics • As of {day} {month} • {name} {discrim}"
msgstr ""