Merge branch 'main' into black

This commit is contained in:
Mouse Reeve 2021-03-08 08:36:30 -08:00
commit a07f955781
41 changed files with 699 additions and 452 deletions

View file

@ -102,7 +102,7 @@ class ActivityObject:
if allow_create and \
hasattr(model, 'ignore_activity') and \
model.ignore_activity(self):
return None
raise ActivitySerializerError()
# check for an existing instance
instance = instance or model.find_existing(self.serialize())

View file

@ -26,7 +26,7 @@ class Book(ActivityObject):
librarythingKey: str = ''
goodreadsKey: str = ''
cover: Image = field(default_factory=lambda: {})
cover: Image = None
type: str = 'Book'

View file

@ -449,7 +449,7 @@ def broadcast_task(sender_id, activity, recipients):
for recipient in recipients:
try:
sign_and_send(sender, activity, recipient)
except (HTTPError, SSLError) as e:
except (HTTPError, SSLError, ConnectionError) as e:
logger.exception(e)

View file

@ -37,6 +37,10 @@ class BookDataModel(ObjectMixin, BookWyrmModel):
self.remote_id = None
return super().save(*args, **kwargs)
def broadcast(self, activity, sender, software='bookwyrm'):
''' only send book data updates to other bookwyrm instances '''
super().broadcast(activity, sender, software=software)
class Book(BookDataModel):
''' a generic book, which can mean either an edition or a work '''

View file

@ -7,6 +7,7 @@ from bookwyrm import activitypub
from .activitypub_mixin import ActivityMixin
from .base_model import BookWyrmModel
from . import fields
from .status import Status
class Favorite(ActivityMixin, BookWyrmModel):
''' fav'ing a post '''
@ -17,6 +18,11 @@ class Favorite(ActivityMixin, BookWyrmModel):
activity_serializer = activitypub.Like
@classmethod
def ignore_activity(cls, activity):
''' don't bother with incoming favs of unknown statuses '''
return not Status.objects.filter(remote_id=activity.object).exists()
def save(self, *args, **kwargs):
''' update user active time '''
self.user.last_active_date = timezone.now()

View file

@ -35,7 +35,7 @@
</div>
<div class="columns">
<div class="column is-narrow">
<div class="column is-one-fifth">
{% include 'snippets/book_cover.html' with book=book size=large %}
{% include 'snippets/rate_action.html' with user=request.user book=book %}
{% include 'snippets/shelve_button/shelve_button.html' %}
@ -93,7 +93,7 @@
</section>
</div>
<div class="column">
<div class="column is-three-fifths">
<div class="block">
<h3 class="field is-grouped">
{% include 'snippets/stars.html' with rating=rating %}
@ -201,7 +201,7 @@
</div>
</div>
<div class="column is-narrow">
<div class="column is-one-fifth">
{% if book.subjects %}
<section class="content block">
<h2 class="title is-5">{% trans "Subjects" %}</h2>
@ -217,7 +217,7 @@
<section class="content block">
<h2 class="title is-5">{% trans "Places" %}</h2>
<ul>
{% for place in book.subject_placess %}
{% for place in book.subject_places %}
<li>{{ place }}</li>
{% endfor %}
</ul>
@ -252,10 +252,10 @@
<div class="media-left">{% include 'snippets/avatar.html' with user=rating.user %}</div>
<div class="media-content">
<div>
{% include 'snippets/username.html' with user=rating.user %}
<a href="{{ rating.user.local_path }}">{{ rating.user.display_name }}</a>
</div>
<div class="field is-grouped mb-0">
<div>{% trans "rated it" %}</div>
<div class="is-flex">
<p class="mr-1">{% trans "rated it" %}</p>
{% include 'snippets/stars.html' with rating=rating.rating %}
</div>
<div>

View file

@ -6,13 +6,13 @@
<h1 class="title">{% blocktrans %}{{ tab_title }} Timeline{% endblocktrans %}</h1>
<div class="tabs">
<ul>
<li class="{% if tab == 'home' %}is-active{% endif %}">
<li class="{% if tab == 'home' %}is-active{% endif %}"{% if tab == 'home' %} aria-current="page"{% endif %}>
<a href="/#feed">{% trans "Home" %}</a>
</li>
<li class="{% if tab == 'local' %}is-active{% endif %}">
<li class="{% if tab == 'local' %}is-active{% endif %}"{% if tab == 'local' %} aria-current="page"{% endif %}>
<a href="/local#feed">{% trans "Local" %}</a>
</li>
<li class="{% if tab == 'federated' %}is-active{% endif %}">
<li class="{% if tab == 'federated' %}is-active{% endif %}"{% if tab == 'federated' %} aria-current="page"{% endif %}>
<a href="/federated#feed">{% trans "Federated" %}</a>
</li>
</ul>

View file

@ -4,7 +4,7 @@
{% block panel %}
<header class="block">
<a href="/#feed" class="button" data-back>
<span class="icon icon-arrow-left" aira-hidden="true"></span>
<span class="icon icon-arrow-left" aria-hidden="true"></span>
<span>{% trans "Back" %}</span>
</a>
</header>

View file

@ -79,7 +79,7 @@
aria-controls="navbar-dropdown"
>
{% include 'snippets/avatar.html' with user=request.user %}
{% include 'snippets/username.html' with user=request.user anchor=false %}
<span class="ml-2">{{ user.display_name }}</span>
</a>
<ul class="navbar-dropdown" id="navbar-dropdown">
<li>
@ -199,7 +199,7 @@
{% if site.support_link %}
<div class="column">
<span class="icon icon-heart"></span>
{% blocktrans %}Support {{ site.name }} on <a href="{{ site.support_link }}" target="_blank">{{ site.support_title }}</a>{% endblocktrans %}
{% blocktrans with site_name=site.name support_link=site.support_link support_title=site.support_title %}Support {{ site_name }} on <a href="{{ support_link }}" target="_blank">{{ support_title }}</a>{% endblocktrans %}
</div>
{% endif %}
<div class="column">

View file

@ -0,0 +1,10 @@
{% load i18n %}
{% spaceless %}
{% if list.curation != 'open' %}
{% blocktrans with username=list.user.display_name path=list.user.local_path %}Created and curated by <a href="{{ path }}">{{ username }}</a>{% endblocktrans %}
{% else %}
{% blocktrans with username=list.user.display_name path=list.user.local_path %}Created by <a href="{{ path }}">{{ username }}</a>{% endblocktrans %}
{% endif %}
{% endspaceless %}

View file

@ -24,7 +24,7 @@
{% include 'snippets/book_titleby.html' with book=item.book %}
</td>
<td>
{% include 'snippets/username.html' with user=item.user %}
<a href="{{ item.user.local_path }}">{{ item.user.display_name }}</a>
</td>
<td>
<div class="field has-addons">

View file

@ -1,5 +1,4 @@
{% load bookwyrm_tags %}
{% load i18n %}
<div class="columns is-multiline">
{% for list in lists %}
<div class="column is-one-quarter">
@ -16,7 +15,9 @@
</div>
<div class="card-content is-flex-grow-0">
{% if list.description %}{{ list.description | to_markdown | safe | truncatewords_html:20 }}{% endif %}
<p class="subtitle help">{% if list.curation != 'open' %}{% trans "Created and curated by" %}{% else %}{% trans "Created by" %}{% endif %} {% include 'snippets/username.html' with user=list.user %}</p>
<p class="subtitle help">
{% include 'lists/created_text.html' with list=list %}
</p>
</div>
</div>
</div>

View file

@ -8,8 +8,9 @@
<header class="columns content is-mobile">
<div class="column">
<h1 class="title">{{ list.name }} <span class="subtitle">{% include 'snippets/privacy-icons.html' with item=list %}</span></h1>
<p class="subtitle help">{% if list.curation != 'open' %}{% trans "Created and curated by" %}{% else %}{% trans "Created by" %} {% include 'snippets/username.html' with user=list.user %}</p>
{% endif %}
<p class="subtitle help">
{% include 'lists/created_text.html' with list=list %}
</p>
{% include 'snippets/trimmed_text.html' with full=list.description %}
</div>
{% if request.user == list.user %}

View file

@ -42,8 +42,10 @@
<p>
{# DESCRIPTION #}
{% if notification.related_user %}
<a href="{{ notification.related_user.local_path }}">
{% include 'snippets/avatar.html' with user=notification.related_user %}
{% include 'snippets/username.html' with user=notification.related_user %}
{{ notification.related_user.display_name }}
</a>
{% if notification.notification_type == 'FAVORITE' %}
{% if related_status.status_type == 'Review' %}
{% blocktrans with book_title=related_status.book.title related_path=related_status.local_path %}favorited your <a href="{{ related_path }}">review of <em>{{ book_title }}</em></a>{% endblocktrans %}
@ -114,7 +116,9 @@
<div class="columns">
<div class="column">
{% if related_status.content %}
<a href="{{ related_status.local_path }}">{{ related_status.content | safe | truncatewords_html:10 }}</a>
<a href="{{ related_status.local_path }}">
{{ related_status.content | safe | truncatewords_html:10 }}{% if related_status.mention_books %} <em>{{ related_status.mention_books.first.title }}</em>{% endif %}
</a>
{% elif related_status.quote %}
<a href="{{ related_status.local_path }}">{{ related_status.quote | safe | truncatewords_html:10 }}</a>
{% elif related_status.rating %}

View file

@ -15,7 +15,7 @@
{% for user in request.user.blocks.all %}
<li class="is-flex">
<p>
{% include 'snippets/avatar.html' with user=user %} {% include 'snippets/username.html' with user=user %}
<a href="{{ user.local_path }}">{% include 'snippets/avatar.html' with user=user %} {{ user.display_name }}</a>
</p>
<p class="mr-2">
{% include 'snippets/block_button.html' with user=user %}

View file

@ -79,8 +79,10 @@
<ul>
{% for result in user_results %}
<li class="block">
{% include 'snippets/avatar.html' with user=result %}</h2>
{% include 'snippets/username.html' with user=result show_full=True %}</h2>
<a href="{{ result.local_path }}">
{% include 'snippets/avatar.html' with user=result %}
{{ result.display_name }}
</a> ({{ result.username }})
{% include 'snippets/follow_button.html' with user=result %}
</li>
{% endfor %}

View file

@ -1,3 +1,3 @@
{% load bookwyrm_tags %}
<img class="avatar image {% if large %}is-96x96{% else %}is-32x32{% endif %}" src="{% if user.avatar %}/images/{{ user.avatar }}{% else %}/static/images/default_avi.jpg{% endif %}" alt="{{ user.alt_text }}">
<img class="avatar image {% if large %}is-96x96{% else %}is-32x32{% endif %}" src="{% if user.avatar %}/images/{{ user.avatar }}{% else %}/static/images/default_avi.jpg{% endif %}" {% if ariaHide %}aria-hidden="true"{% endif %} alt="{{ user.alt_text }}">

View file

@ -6,8 +6,7 @@
<div class="no-cover book-cover">
<img class="book-cover" src="/static/images/no_cover.jpg" alt="No cover">
<div>
<p>{{ book.title }}</p>
<p>({{ book.edition_info }})</p>
<p>{{ book.alt_text }}</p>
</div>
</div>
{% endif %}

View file

@ -67,4 +67,4 @@
</div>
</form>
</div>
{% include 'snippets/delete_readthrough_modal.html' with controls_text="delete-readthrough" controls_uid=readthrough.id %}
{% include 'snippets/delete_readthrough_modal.html' with controls_text="delete-readthrough" controls_uid=readthrough.id no_body=True %}

View file

@ -2,8 +2,10 @@
{% load i18n %}
{% if not status.deleted %}
{% if status.status_type == 'Announce' %}
<a href="{{ status.user.local_path }}">
{% include 'snippets/avatar.html' with user=status.user %}
{% include 'snippets/username.html' with user=status.user %}
{{ status.user.display_name }}
</a>
{% trans "boosted" %}
{% include 'snippets/status/status_body.html' with status=status|boosted_status %}
{% else %}

View file

@ -1,7 +1,9 @@
{% load bookwyrm_tags %}
{% load i18n %}
{% include 'snippets/avatar.html' with user=status.user %}
{% include 'snippets/username.html' with user=status.user %}
<a href="{{ status.user.local_path }}">
{% include 'snippets/avatar.html' with user=status.user ariaHide="true" %}
{{ status.user.display_name }}
</a>
{% if status.status_type == 'GeneratedNote' %}
{{ status.content | safe }}
@ -15,7 +17,17 @@
{% trans "quoted" %}
{% elif status.reply_parent %}
{% with parent_status=status|parent %}
replied to {% include 'snippets/username.html' with user=parent_status.user possessive=True %} <a href="{{parent_status.remote_id }}">{% if parent_status.status_type == 'GeneratedNote' %}update{% else %}{{ parent_status.status_type | lower }}{% endif %}</a>
{% if parent_status.status_type == 'Review' %}
{% blocktrans with username=parent_status.user.display_name user_path=parent_status.user.local_path status_path=parent_status.local_path %}replied to <a href="{{ user_path }}">{{ username}}'s</a> <a href="{{ status_path }}">review</a>{% endblocktrans %}
{% elif parent_status.status_type == 'Comment' %}
{% blocktrans with username=parent_status.user.display_name user_path=parent_status.user.local_path status_path=parent_status.local_path %}replied to <a href="{{ user_path }}">{{ username}}'s</a> <a href="{{ status_path }}">comment</a>{% endblocktrans %}
{% elif parent_status.status_type == 'Quotation' %}
{% blocktrans with username=parent_status.user.display_name user_path=parent_status.user.local_path status_path=parent_status.local_path %}replied to <a href="{{ user_path }}">{{ username}}'s</a> <a href="{{ status_path }}">quote</a>{% endblocktrans %}
{% else %}
{% blocktrans with username=parent_status.user.display_name user_path=parent_status.user.local_path status_path=parent_status.local_path %}replied to <a href="{{ user_path }}">{{ username}}'s</a> <a href="{{ status_path }}">status</a>{% endblocktrans %}
{% endif %}
{% endwith %}
{% endif %}
{% if status.book %}

View file

@ -1,15 +0,0 @@
{% spaceless %}
{% load bookwyrm_tags %}
<{% if anchor %}a href="{{ user.local_path }}"{% else %}span{% endif %}
class="user ml-1"
>
{{ user.display_name }}
</a>
{% if possessive %}'s{% endif %}
{% if show_full and user.name or show_full and user.localname %}
({{ user.username }})
{% endif %}
{% endspaceless %}

View file

@ -11,19 +11,22 @@
{% block panel %}
<div class="block">
<h2 class="title">{% trans "Followers" %}</h2>
{% for followers in followers %}
{% for follower in followers %}
<div class="block columns">
<div class="column">
{% include 'snippets/avatar.html' with user=followers %}
{% include 'snippets/username.html' with user=followers show_full=True %}
<a href="{{ follower.local_path }}">
{% include 'snippets/avatar.html' with user=follower %}
{{ follower.display_name }}
</a>
({{ follower.username }})
</div>
<div class="column is-narrow">
{% include 'snippets/follow_button.html' with user=followers %}
{% include 'snippets/follow_button.html' with user=follower %}
</div>
</div>
{% endfor %}
{% if not followers.count %}
<div>{% blocktrans with username=user|username %}{{ username }} has no followers{% endblocktrans %}</div>
<div>{% blocktrans with username=user.display_name %}{{ username }} has no followers{% endblocktrans %}</div>
{% endif %}
</div>
{% endblock %}

View file

@ -14,8 +14,11 @@
{% for follower in user.following.all %}
<div class="block columns">
<div class="column">
<a href="{{ follower.local_path }}">
{% include 'snippets/avatar.html' with user=follower %}
{% include 'snippets/username.html' with user=follower show_full=True %}
{{ follower.display_name }}
</a>
({{ follower.username }})
</div>
<div class="column">
{% include 'snippets/follow_button.html' with user=follower %}

View file

@ -33,7 +33,7 @@
{% for requester in user.follower_requests.all %}
<div class="row shrink">
<p>
{% include 'snippets/username.html' with user=requester show_full=True %}
<a href="{{ requester.local_path }}">{{ requester.display_name }}</a> ({{ requester.username }})
</p>
{% include 'snippets/follow_request_buttons.html' with user=requester %}
</div>
@ -56,7 +56,7 @@
<a href="{{ url }}">{% trans "Reading Goal" %}</a>
</li>
{% endif %}
{% if is_self or user.lists.exists %}
{% if is_self or user.list_set.exists %}
{% url 'user-lists' user|username as url %}
<li{% if url in request.path %} class="is-active"{% endif %}>
<a href="{{ url }}">{% trans "Lists" %}</a>

View file

@ -1 +0,0 @@
from . import *

View file

@ -208,6 +208,9 @@ class BaseActivity(TestCase):
# sets the celery task call to the function call
with patch(
'bookwyrm.activitypub.base_activity.set_related_field.delay'):
with patch('bookwyrm.models.status.Status.ignore_activity') \
as discarder:
discarder.return_value = False
update_data.to_model(model=models.Status, instance=status)
self.assertIsNone(status.attachments.first())

View file

@ -74,7 +74,7 @@ class Inbox(TestCase):
mock_valid.return_value = False
result = self.client.post(
'/user/mouse/inbox',
'{"type": "Test", "object": "exists"}',
'{"type": "Announce", "object": "exists"}',
content_type="application/json"
)
self.assertEqual(result.status_code, 401)
@ -484,7 +484,7 @@ class Inbox(TestCase):
'actor': 'https://example.com/users/rat',
'type': 'Like',
'published': 'Mon, 25 May 2020 19:31:20 GMT',
'object': 'https://example.com/status/1',
'object': self.status.remote_id,
}
views.inbox.activity_task(activity)
@ -494,6 +494,21 @@ class Inbox(TestCase):
self.assertEqual(fav.remote_id, 'https://example.com/fav/1')
self.assertEqual(fav.user, self.remote_user)
def test_ignore_favorite(self):
''' don't try to save an unknown status '''
activity = {
'@context': 'https://www.w3.org/ns/activitystreams',
'id': 'https://example.com/fav/1',
'actor': 'https://example.com/users/rat',
'type': 'Like',
'published': 'Mon, 25 May 2020 19:31:20 GMT',
'object': 'https://unknown.status/not-found',
}
views.inbox.activity_task(activity)
self.assertFalse(models.Favorite.objects.exists())
def test_handle_unfavorite(self):
''' fav a status '''
activity = {

View file

@ -89,7 +89,7 @@ class Book(View):
'rating': reviews.aggregate(Avg('rating'))['rating__avg'],
'tags': models.UserTag.objects.filter(book=book),
'lists': privacy_filter(
request.user, book.list_set.all()
request.user, book.list_set.filter(listitem__approved=True)
),
'user_tags': user_tags,
'user_shelves': user_shelves,

View file

@ -20,7 +20,7 @@ class Inbox(View):
''' requests sent by outside servers'''
def post(self, request, username=None):
''' only works as POST request '''
# first let's do some basic checks to see if this is legible
# make sure the user's inbox even exists
if username:
try:
models.User.objects.get(localname=username)
@ -33,6 +33,11 @@ class Inbox(View):
except json.decoder.JSONDecodeError:
return HttpResponseBadRequest()
if not 'object' in activity_json or \
not 'type' in activity_json or \
not activity_json['type'] in activitypub.activity_objects:
return HttpResponseNotFound()
# verify the signature
if not has_valid_signature(request, activity_json):
if activity_json['type'] == 'Delete':
@ -42,12 +47,6 @@ class Inbox(View):
return HttpResponse()
return HttpResponse(status=401)
# just some quick smell tests before we try to parse the json
if not 'object' in activity_json or \
not 'type' in activity_json or \
not activity_json['type'] in activitypub.activity_objects:
return HttpResponseNotFound()
activity_task.delay(activity_json)
return HttpResponse()
@ -63,7 +62,11 @@ def activity_task(activity_json):
# cool that worked, now we should do the action described by the type
# (create, update, delete, etc)
try:
activity.action()
except activitypub.ActivitySerializerError:
# this is raised if the activity is discarded
return
def has_valid_signature(request, activity):

9
bw-dev
View file

@ -35,6 +35,10 @@ function initdb {
execweb python manage.py initdb
}
function makeitblack {
runweb black celerywyrm bookwyrm
}
CMD=$1
shift
@ -102,7 +106,10 @@ case "$CMD" in
clean)
clean
;;
black)
makeitblack
;;
*)
echo "Unrecognised command. Try: build, clean, up, initdb, resetdb, makemigrations, migrate, bash, shell, dbshell, restart_celery, test, pytest, test_report"
echo "Unrecognised command. Try: build, clean, up, initdb, resetdb, makemigrations, migrate, bash, shell, dbshell, restart_celery, test, pytest, test_report, black"
;;
esac

Binary file not shown.

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-04 22:24+0000\n"
"POT-Creation-Date: 2021-03-07 23:40+0000\n"
"PO-Revision-Date: 2021-03-02 17:19-0800\n"
"Last-Translator: Mouse Reeve <mousereeve@riseup.net>\n"
"Language-Team: English <LL@li.org>\n"
@ -56,10 +56,8 @@ msgid "%(value)s is not a valid username"
msgstr "%(value)s ist kein gültiger Username"
#: bookwyrm/models/fields.py:164 bookwyrm/templates/layout.html:152
#, fuzzy
#| msgid "Server name"
msgid "username"
msgstr "Servername"
msgstr "Username"
#: bookwyrm/models/fields.py:169
msgid "A user with that username already exists."
@ -132,15 +130,15 @@ msgstr ""
#: bookwyrm/templates/book.html:84
#, fuzzy, python-format
#| msgid "of %(book.pages)s pages"
#| msgid "%(format)s, %(pages)s pages"
msgid "%(format)s, %(pages)s pages"
msgstr "von %(book.pages)s Seiten"
msgstr "%(format)s, %(book.pages)s Seiten"
#: bookwyrm/templates/book.html:86
#, fuzzy, python-format
#| msgid "of %(book.pages)s pages"
#| msgid "%(pages)s pages"
msgid "%(pages)s pages"
msgstr "von %(book.pages)s Seiten"
msgstr "%(book.pages)s Seiten"
#: bookwyrm/templates/book.html:91
msgid "View on OpenLibrary"
@ -236,7 +234,7 @@ msgstr "Orte"
#: bookwyrm/templates/book.html:229 bookwyrm/templates/layout.html:64
#: bookwyrm/templates/lists/lists.html:4 bookwyrm/templates/lists/lists.html:9
#: bookwyrm/templates/search_results.html:90
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/user/user_layout.html:62
msgid "Lists"
msgstr "Listen"
@ -536,7 +534,7 @@ msgstr "%(name)s hat sich für %(year)s kein Leseziel gesetzt."
#: bookwyrm/templates/goal.html:51
#, python-format
msgid "Your %(year)s Books"
msgstr "Deine %(year)s Bücher"
msgstr "Deine Bücher %(year)s"
#: bookwyrm/templates/goal.html:53
#, python-format
@ -601,35 +599,40 @@ msgstr "(Aktualisiere für ein Update!)"
msgid "Failed to load"
msgstr "Laden fehlgeschlagen"
#: bookwyrm/templates/import_status.html:59
#: bookwyrm/templates/import_status.html:44
#, python-format
msgid "Jump to the bottom of the list to select the %(failed_count)s items which failed to import."
msgstr ""
#: bookwyrm/templates/import_status.html:79
msgid "Select all"
msgstr "Alle auswählen"
#: bookwyrm/templates/import_status.html:62
#: bookwyrm/templates/import_status.html:82
msgid "Retry items"
msgstr "Punkte erneut versuchen"
#: bookwyrm/templates/import_status.html:84
#: bookwyrm/templates/import_status.html:108
msgid "Successfully imported"
msgstr "Erfolgreich importiert"
#: bookwyrm/templates/import_status.html:88
#: bookwyrm/templates/import_status.html:112
#: bookwyrm/templates/lists/curate.html:14
msgid "Book"
msgstr "Buch"
#: bookwyrm/templates/import_status.html:91
#: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/snippets/shelf.html:10
msgid "Title"
msgstr "Titel"
#: bookwyrm/templates/import_status.html:94
#: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/snippets/shelf.html:11
msgid "Author"
msgstr "Autor*in"
#: bookwyrm/templates/import_status.html:117
#: bookwyrm/templates/import_status.html:141
msgid "Imported"
msgstr "Importiert"
@ -646,6 +649,28 @@ msgstr "Zugiff verweigert"
msgid "Sorry! This invite code is no longer valid."
msgstr "Sorry! Dieser Einladecode ist mehr gültig."
#: bookwyrm/templates/isbn_search_results.html:4
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr "Suchergebnisse"
#: bookwyrm/templates/isbn_search_results.html:9
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr "Suchergebnisse für \"%(query)s\""
#: bookwyrm/templates/isbn_search_results.html:14
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr "Passende Bücher"
#: bookwyrm/templates/isbn_search_results.html:17
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr "Keine Bücher für \"%(query)s\" gefunden"
#: bookwyrm/templates/layout.html:33
msgid "Search for a book or user"
msgstr "Suche nach Buch oder Benutzer*in"
@ -670,7 +695,7 @@ msgstr ""
#: bookwyrm/templates/layout.html:92
#: bookwyrm/templates/preferences/preferences_layout.html:14
msgid "Profile"
msgstr ""
msgstr "Profil"
#: bookwyrm/templates/layout.html:97
msgid "Settings"
@ -729,7 +754,7 @@ msgstr "Admin kontaktieren"
#: bookwyrm/templates/layout.html:202
#, python-format
msgid "Support %(site.name)s on <a href=\"%(site.support_link)s\" target=\"_blank\">%(site.support_title)s</a>"
msgid "Support %(site_name)s on <a href=\"%(support_link)s\" target=\"_blank\">%(support_title)s</a>"
msgstr ""
#: bookwyrm/templates/layout.html:206
@ -741,6 +766,18 @@ msgstr "BookWyrm ist open source Software. Du kannst dich auf <a href=\"https://
msgid "Create List"
msgstr "Liste erstellen"
#: bookwyrm/templates/lists/created_text.html:5
#, fuzzy, python-format
#| msgid "Direct Messages with <a href=\"%(path)s\">%(username)s</a>"
msgid "Created and curated by <a href=\"%(path)s\">%(username)s</a>"
msgstr "Direktnachrichten mit <a href=\"%(path)s\">%(username)s</a>"
#: bookwyrm/templates/lists/created_text.html:7
#, fuzzy, python-format
#| msgid "Direct Messages with <a href=\"%(path)s\">%(username)s</a>"
msgid "Created by <a href=\"%(path)s\">%(username)s</a>"
msgstr "Direktnachrichten mit <a href=\"%(path)s\">%(username)s</a>"
#: bookwyrm/templates/lists/curate.html:6
msgid "Pending Books"
msgstr "Unbestätigte Bücher"
@ -766,7 +803,7 @@ msgid "Discard"
msgstr "Ablehnen"
#: bookwyrm/templates/lists/edit_form.html:5
#: bookwyrm/templates/lists/list_layout.html:17
#: bookwyrm/templates/lists/list_layout.html:18
msgid "Edit List"
msgstr "Liste bearbeiten"
@ -845,16 +882,6 @@ msgstr "Keine Bücher gefunden"
msgid "Suggest"
msgstr "Vorschlagen"
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created and curated by"
msgstr "Erstellt und kuratiert von"
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created by"
msgstr "Erstellt von"
#: bookwyrm/templates/lists/lists.html:14
msgid "Your lists"
msgstr "Deine Listen"
@ -898,110 +925,110 @@ msgstr "Die Seite die du angefordert hast scheint nicht zu existieren!"
msgid "Delete notifications"
msgstr "Benachrichtigungen löschen"
#: bookwyrm/templates/notifications.html:49
#: bookwyrm/templates/notifications.html:51
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "hat deine <a href=\"%(related_path)s\">Bewertung von <em>%(book_title)s</em></a> favorisiert"
#: bookwyrm/templates/notifications.html:51
#: bookwyrm/templates/notifications.html:53
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "hat deinen <a href=\"%(related_path)s\">Kommentar zu <em>%(book_title)s</em></a> favorisiert"
#: bookwyrm/templates/notifications.html:53
#: bookwyrm/templates/notifications.html:55
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr " hat dein <a href=\"%(related_path)s\">Zitat aus <em>%(book_title)s</em></a>"
msgstr " hat dein <a href=\"%(related_path)s\">Zitat aus <em>%(book_title)s</em></a> favorisiert"
#: bookwyrm/templates/notifications.html:55
#: bookwyrm/templates/notifications.html:57
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">status</a>"
msgstr "hat deinen <a href=\"%(related_path)s\">Status</a> favorisiert"
#: bookwyrm/templates/notifications.html:60
#: bookwyrm/templates/notifications.html:62
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "hat dich in einer <a href=\"%(related_path)s\">Bewertung von <em>%(book_title)s</em></a> erwähnt"
#: bookwyrm/templates/notifications.html:62
#: bookwyrm/templates/notifications.html:64
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "hat dich in einem <a href=\"%(related_path)s\">Kommentar zu <em>%(book_title)s</em></a> erwähnt"
#: bookwyrm/templates/notifications.html:64
#: bookwyrm/templates/notifications.html:66
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "hat dich in einem <a href=\"%(related_path)s\">Zitat von <em>%(book_title)s</em></a> erwähnt"
#: bookwyrm/templates/notifications.html:66
#: bookwyrm/templates/notifications.html:68
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">status</a>"
msgstr "hat dich in einem <a href=\"%(related_path)s\">Status</a> erwähnt"
#: bookwyrm/templates/notifications.html:71
#: bookwyrm/templates/notifications.html:73
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "hat auf deine <a href=\"%(parent_path)s\">Bewertung von <em>%(book_title)s</em></a> <a href=\"%(related_path)s\">geantwortet</a> "
#: bookwyrm/templates/notifications.html:73
#: bookwyrm/templates/notifications.html:75
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "hat auf deinen <a href=\"%(parent_path)s\">Kommentar zu <em>%(book_title)s</em></a> <a href=\"%(related_path)s\">geantwortet</a>"
#: bookwyrm/templates/notifications.html:75
#: bookwyrm/templates/notifications.html:77
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "hat auf dein <a href=\"%(parent_path)s\">Zitat aus <em>%(book_title)s</em></a> <a href=\"%(related_path)s\">geantwortet</a>"
#: bookwyrm/templates/notifications.html:77
#: bookwyrm/templates/notifications.html:79
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgstr "hat auf deinen <a href=\"%(parent_path)s\">Status</a> <a href=\"%(related_path)s\">geantwortet</a>"
#: bookwyrm/templates/notifications.html:81
#: bookwyrm/templates/notifications.html:83
msgid "followed you"
msgstr "folgt dir"
#: bookwyrm/templates/notifications.html:84
#: bookwyrm/templates/notifications.html:86
msgid "sent you a follow request"
msgstr "hat dir eine Folgeanfrage geschickt"
#: bookwyrm/templates/notifications.html:90
#: bookwyrm/templates/notifications.html:92
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "hat deine <a href=\"%(related_path)s\">Bewertung von <em>%(book_title)s</em></a> geteilt"
#: bookwyrm/templates/notifications.html:92
#: bookwyrm/templates/notifications.html:94
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">comment on<em>%(book_title)s</em></a>"
msgstr "hat deinen <a href=\"%(related_path)s\">Kommentar zu<em>%(book_title)s</em></a> geteilt"
#: bookwyrm/templates/notifications.html:94
#: bookwyrm/templates/notifications.html:96
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "hat dein <a href=\"%(related_path)s\">Zitat aus <em>%(book_title)s</em></a> geteilt"
#: bookwyrm/templates/notifications.html:96
#: bookwyrm/templates/notifications.html:98
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">status</a>"
msgstr "hat deinen <a href=\"%(related_path)s\">Status</a> geteilt"
#: bookwyrm/templates/notifications.html:100
#: bookwyrm/templates/notifications.html:102
#, python-format
msgid " added <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s\">%(list_name)s</a>\""
msgstr "hat <em><a href=\"%(book_path)s\">%(book_title)s</a></em> zu deiner Liste \"<a href=\"%(list_path)s\">%(list_name)s</a>\" Hinzugefügt"
#: bookwyrm/templates/notifications.html:102
#: bookwyrm/templates/notifications.html:104
#, python-format
msgid " suggested adding <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s/curate\">%(list_name)s</a>\""
msgstr "hat <em><a href=\"%(book_path)s\">%(book_title)s</a></em> für deine Liste \"<a href=\"%(list_path)s/curate\">%(list_name)s</a>\" vorgeschlagen"
#: bookwyrm/templates/notifications.html:106
#: bookwyrm/templates/notifications.html:108
#, python-format
msgid " your <a href=\"/import/%(related_id)s\">import</a> completed."
msgstr " dein <a href=\"/import/%(related_id)s\">Import</a> ist abgeschlossen."
#: bookwyrm/templates/notifications.html:138
#: bookwyrm/templates/notifications.html:142
msgid "You're all caught up!"
msgstr "Du bist auf dem neusten Stand!"
@ -1071,7 +1098,7 @@ msgstr "Displayname:"
#: bookwyrm/templates/preferences/edit_user.html:31
msgid "Summary:"
msgstr "Zusammenfassung:"
msgstr "Bio:"
#: bookwyrm/templates/preferences/edit_user.html:46
msgid "Manually approve followers:"
@ -1085,24 +1112,6 @@ msgstr ""
msgid "Relationships"
msgstr "Beziehungen"
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr "Suchergebnisse"
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr "Suchergebnisse für \"%(query)s\""
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr "Passende Bücher"
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr "Keine Bücher für \"%(query)s\" gefunden"
#: bookwyrm/templates/search_results.html:33
msgid "Didn't find what you were looking for?"
msgstr "Nicht gefunden, wonach du gesucht hast?"
@ -1128,7 +1137,7 @@ msgstr "Passende Nutzer*innen"
msgid "No users found for \"%(query)s\""
msgstr "Keine Nutzer*innen für \"%(query)s\" gefunden"
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/search_results.html:94
#, python-format
msgid "No lists found for \"%(query)s\""
msgstr "Keine Liste für \"%(query)s\" gefunden"
@ -1454,11 +1463,11 @@ msgstr "%(username)s hat <a href=\"%(path)s\">%(read_count)s von %(goal_count)s
#: bookwyrm/templates/snippets/pagination.html:7
msgid "Previous"
msgstr "Vorher"
msgstr "Zurück"
#: bookwyrm/templates/snippets/pagination.html:15
msgid "Next"
msgstr "Danach"
msgstr "Weiter"
#: bookwyrm/templates/snippets/privacy-icons.html:3
#: bookwyrm/templates/snippets/privacy-icons.html:4
@ -1518,7 +1527,7 @@ msgstr "Fortschrittsupdates:"
#: bookwyrm/templates/snippets/readthrough.html:11
msgid "finished"
msgstr "beendet"
msgstr "Abgeschlossen"
#: bookwyrm/templates/snippets/readthrough.html:14
msgid "Show all updates"
@ -1554,31 +1563,31 @@ msgstr "Fortschritt"
#: bookwyrm/templates/snippets/readthrough_form.html:30
#: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:25
msgid "Finished reading"
msgstr "Lesen beendet"
msgstr "Lesen abgeschlossen"
#: bookwyrm/templates/snippets/register_form.html:32
msgid "Sign Up"
msgstr "Registrieren"
#: bookwyrm/templates/snippets/rss_title.html:5
#: bookwyrm/templates/snippets/status/status_header.html:9
#: bookwyrm/templates/snippets/status/status_header.html:11
msgid "rated"
msgstr ""
#: bookwyrm/templates/snippets/rss_title.html:7
#: bookwyrm/templates/snippets/status/status_header.html:11
#: bookwyrm/templates/snippets/status/status_header.html:13
msgid "reviewed"
msgstr "bewertet"
msgstr "bewertete"
#: bookwyrm/templates/snippets/rss_title.html:9
#: bookwyrm/templates/snippets/status/status_header.html:13
#: bookwyrm/templates/snippets/status/status_header.html:15
msgid "commented on"
msgstr "kommentiert zu"
msgstr "kommentierte"
#: bookwyrm/templates/snippets/rss_title.html:11
#: bookwyrm/templates/snippets/status/status_header.html:15
#: bookwyrm/templates/snippets/status/status_header.html:17
msgid "quoted"
msgstr "zitiert"
msgstr "zitierte"
#: bookwyrm/templates/snippets/search_result_text.html:3
#, python-format
@ -1599,7 +1608,7 @@ msgstr "Gestartet"
#: bookwyrm/templates/snippets/shelf.html:15
msgid "Finished"
msgstr "Beendet"
msgstr "Abgeschlossen"
#: bookwyrm/templates/snippets/shelf.html:16
msgid "External links"
@ -1628,7 +1637,7 @@ msgstr "Vom Regal nehmen"
#: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:5
#, python-format
msgid "Finish \"<em>%(book_title)s</em>\""
msgstr "\"<em>%(book_title)s</em>\" beenden"
msgstr "\"<em>%(book_title)s</em>\" abschließen"
#: bookwyrm/templates/snippets/shelve_button/shelve_button_dropdown.html:5
msgid "More shelves"
@ -1640,7 +1649,7 @@ msgstr "Zu lesen beginnen"
#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:13
msgid "Finish reading"
msgstr "Lesen beenden"
msgstr "Lesen abschließen"
#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:16
#: bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html:26
@ -1657,9 +1666,9 @@ msgstr "\"<em>%(book_title)s</em>\" beginnen"
msgid "Want to Read \"<em>%(book_title)s</em>\""
msgstr "\"<em>%(book_title)s</em>\" auf Leseliste setzen"
#: bookwyrm/templates/snippets/status/status.html:7
#: bookwyrm/templates/snippets/status/status.html:9
msgid "boosted"
msgstr "geteilt"
msgstr "teilt"
#: bookwyrm/templates/snippets/status/status_body.html:24
#: bookwyrm/templates/snippets/status/status_body.html:37
@ -1681,6 +1690,30 @@ msgstr "Weniger anzeigen"
msgid "Open image in new window"
msgstr "Bild in neuem Fenster öffnen"
#: bookwyrm/templates/snippets/status/status_header.html:22
#, fuzzy, python-format
#| msgid "Direct Messages with <a href=\"%(path)s\">%(username)s</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">review</a>"
msgstr "Direktnachrichten mit <a href=\"%(path)s\">%(username)s</a>"
#: bookwyrm/templates/snippets/status/status_header.html:24
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">comment</a>"
msgstr "hat auf deinen <a href=\"%(parent_path)s\">Status</a> geantwortet</a>"
#: bookwyrm/templates/snippets/status/status_header.html:26
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">quote</a>"
msgstr "hat auf deinen <a href=\"%(parent_path)s\">Status</a> <a href=\"%(related_path)s\">geantwortet</a>"
#: bookwyrm/templates/snippets/status/status_header.html:28
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">status</a>"
msgstr "hat auf deinen <a href=\"%(parent_path)s\">Status</a> <a href=\"%(related_path)s\">geantwortet</a>"
#: bookwyrm/templates/snippets/status/status_options.html:7
#: bookwyrm/templates/snippets/user_options.html:7
msgid "More options"
@ -1726,7 +1759,7 @@ msgstr "Regal aktualisieren"
msgid "User Profile"
msgstr "Benutzerprofil"
#: bookwyrm/templates/user/followers.html:26
#: bookwyrm/templates/user/followers.html:29
#, python-format
msgid "%(username)s has no followers"
msgstr "niemand folgt %(username)s "
@ -1735,7 +1768,7 @@ msgstr "niemand folgt %(username)s "
msgid "Following"
msgstr "Folgend"
#: bookwyrm/templates/user/following.html:26
#: bookwyrm/templates/user/following.html:29
#, python-format
msgid "%(username)s isn't following any users"
msgstr "%(username)s folgt niemandem"
@ -1833,7 +1866,13 @@ msgstr[1] "%(counter)s Folgende"
#: bookwyrm/templates/user/user_preview.html:16
#, python-format
msgid "%(counter)s following"
msgstr "%(counter)s folgen"
msgstr "Folgt %(counter)s"
#~ msgid "Created and curated by"
#~ msgstr "Erstellt und kuratiert von"
#~ msgid "Created by"
#~ msgstr "Erstellt von"
#~ msgid "Added by"
#~ msgstr "Hinzugefügt von"

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-04 22:24+0000\n"
"POT-Creation-Date: 2021-03-07 23:40+0000\n"
"PO-Revision-Date: 2021-02-28 17:19-0800\n"
"Last-Translator: Mouse Reeve <mousereeve@riseup.net>\n"
"Language-Team: English <LL@li.org>\n"
@ -227,7 +227,7 @@ msgstr ""
#: bookwyrm/templates/book.html:229 bookwyrm/templates/layout.html:64
#: bookwyrm/templates/lists/lists.html:4 bookwyrm/templates/lists/lists.html:9
#: bookwyrm/templates/search_results.html:90
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/user/user_layout.html:62
msgid "Lists"
msgstr ""
@ -588,35 +588,40 @@ msgstr ""
msgid "Failed to load"
msgstr ""
#: bookwyrm/templates/import_status.html:59
#: bookwyrm/templates/import_status.html:44
#, python-format
msgid "Jump to the bottom of the list to select the %(failed_count)s items which failed to import."
msgstr ""
#: bookwyrm/templates/import_status.html:79
msgid "Select all"
msgstr ""
#: bookwyrm/templates/import_status.html:62
#: bookwyrm/templates/import_status.html:82
msgid "Retry items"
msgstr ""
#: bookwyrm/templates/import_status.html:84
#: bookwyrm/templates/import_status.html:108
msgid "Successfully imported"
msgstr ""
#: bookwyrm/templates/import_status.html:88
#: bookwyrm/templates/import_status.html:112
#: bookwyrm/templates/lists/curate.html:14
msgid "Book"
msgstr ""
#: bookwyrm/templates/import_status.html:91
#: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/snippets/shelf.html:10
msgid "Title"
msgstr ""
#: bookwyrm/templates/import_status.html:94
#: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/snippets/shelf.html:11
msgid "Author"
msgstr ""
#: bookwyrm/templates/import_status.html:117
#: bookwyrm/templates/import_status.html:141
msgid "Imported"
msgstr ""
@ -633,6 +638,28 @@ msgstr ""
msgid "Sorry! This invite code is no longer valid."
msgstr ""
#: bookwyrm/templates/isbn_search_results.html:4
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr ""
#: bookwyrm/templates/isbn_search_results.html:9
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr ""
#: bookwyrm/templates/isbn_search_results.html:14
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr ""
#: bookwyrm/templates/isbn_search_results.html:17
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr ""
#: bookwyrm/templates/layout.html:33
msgid "Search for a book or user"
msgstr ""
@ -716,7 +743,7 @@ msgstr ""
#: bookwyrm/templates/layout.html:202
#, python-format
msgid "Support %(site.name)s on <a href=\"%(site.support_link)s\" target=\"_blank\">%(site.support_title)s</a>"
msgid "Support %(site_name)s on <a href=\"%(support_link)s\" target=\"_blank\">%(support_title)s</a>"
msgstr ""
#: bookwyrm/templates/layout.html:206
@ -728,6 +755,16 @@ msgstr ""
msgid "Create List"
msgstr ""
#: bookwyrm/templates/lists/created_text.html:5
#, python-format
msgid "Created and curated by <a href=\"%(path)s\">%(username)s</a>"
msgstr ""
#: bookwyrm/templates/lists/created_text.html:7
#, python-format
msgid "Created by <a href=\"%(path)s\">%(username)s</a>"
msgstr ""
#: bookwyrm/templates/lists/curate.html:6
msgid "Pending Books"
msgstr ""
@ -753,7 +790,7 @@ msgid "Discard"
msgstr ""
#: bookwyrm/templates/lists/edit_form.html:5
#: bookwyrm/templates/lists/list_layout.html:17
#: bookwyrm/templates/lists/list_layout.html:18
msgid "Edit List"
msgstr ""
@ -831,16 +868,6 @@ msgstr ""
msgid "Suggest"
msgstr ""
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created and curated by"
msgstr ""
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created by"
msgstr ""
#: bookwyrm/templates/lists/lists.html:14
msgid "Your lists"
msgstr ""
@ -883,110 +910,110 @@ msgstr ""
msgid "Delete notifications"
msgstr ""
#: bookwyrm/templates/notifications.html:49
#: bookwyrm/templates/notifications.html:51
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:51
#: bookwyrm/templates/notifications.html:53
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:53
#: bookwyrm/templates/notifications.html:55
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:55
#: bookwyrm/templates/notifications.html:57
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">status</a>"
msgstr ""
#: bookwyrm/templates/notifications.html:60
#: bookwyrm/templates/notifications.html:62
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:62
#: bookwyrm/templates/notifications.html:64
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:64
#: bookwyrm/templates/notifications.html:66
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:66
#: bookwyrm/templates/notifications.html:68
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">status</a>"
msgstr ""
#: bookwyrm/templates/notifications.html:71
#: bookwyrm/templates/notifications.html:73
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">review of <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:73
#: bookwyrm/templates/notifications.html:75
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:75
#: bookwyrm/templates/notifications.html:77
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:77
#: bookwyrm/templates/notifications.html:79
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgstr ""
#: bookwyrm/templates/notifications.html:81
#: bookwyrm/templates/notifications.html:83
msgid "followed you"
msgstr ""
#: bookwyrm/templates/notifications.html:84
#: bookwyrm/templates/notifications.html:86
msgid "sent you a follow request"
msgstr ""
#: bookwyrm/templates/notifications.html:90
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:92
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">comment on<em>%(book_title)s</em></a>"
msgid "boosted your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:94
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgid "boosted your <a href=\"%(related_path)s\">comment on<em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:96
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">status</a>"
msgid "boosted your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr ""
#: bookwyrm/templates/notifications.html:100
#: bookwyrm/templates/notifications.html:98
#, python-format
msgid " added <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s\">%(list_name)s</a>\""
msgid "boosted your <a href=\"%(related_path)s\">status</a>"
msgstr ""
#: bookwyrm/templates/notifications.html:102
#, python-format
msgid " added <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s\">%(list_name)s</a>\""
msgstr ""
#: bookwyrm/templates/notifications.html:104
#, python-format
msgid " suggested adding <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s/curate\">%(list_name)s</a>\""
msgstr ""
#: bookwyrm/templates/notifications.html:106
#: bookwyrm/templates/notifications.html:108
#, python-format
msgid " your <a href=\"/import/%(related_id)s\">import</a> completed."
msgstr ""
#: bookwyrm/templates/notifications.html:138
#: bookwyrm/templates/notifications.html:142
msgid "You're all caught up!"
msgstr ""
@ -1070,24 +1097,6 @@ msgstr ""
msgid "Relationships"
msgstr ""
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr ""
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr ""
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr ""
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr ""
#: bookwyrm/templates/search_results.html:33
msgid "Didn't find what you were looking for?"
msgstr ""
@ -1113,7 +1122,7 @@ msgstr ""
msgid "No users found for \"%(query)s\""
msgstr ""
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/search_results.html:94
#, python-format
msgid "No lists found for \"%(query)s\""
msgstr ""
@ -1546,22 +1555,22 @@ msgid "Sign Up"
msgstr ""
#: bookwyrm/templates/snippets/rss_title.html:5
#: bookwyrm/templates/snippets/status/status_header.html:9
#: bookwyrm/templates/snippets/status/status_header.html:11
msgid "rated"
msgstr ""
#: bookwyrm/templates/snippets/rss_title.html:7
#: bookwyrm/templates/snippets/status/status_header.html:11
#: bookwyrm/templates/snippets/status/status_header.html:13
msgid "reviewed"
msgstr ""
#: bookwyrm/templates/snippets/rss_title.html:9
#: bookwyrm/templates/snippets/status/status_header.html:13
#: bookwyrm/templates/snippets/status/status_header.html:15
msgid "commented on"
msgstr ""
#: bookwyrm/templates/snippets/rss_title.html:11
#: bookwyrm/templates/snippets/status/status_header.html:15
#: bookwyrm/templates/snippets/status/status_header.html:17
msgid "quoted"
msgstr ""
@ -1642,7 +1651,7 @@ msgstr ""
msgid "Want to Read \"<em>%(book_title)s</em>\""
msgstr ""
#: bookwyrm/templates/snippets/status/status.html:7
#: bookwyrm/templates/snippets/status/status.html:9
msgid "boosted"
msgstr ""
@ -1666,6 +1675,26 @@ msgstr ""
msgid "Open image in new window"
msgstr ""
#: bookwyrm/templates/snippets/status/status_header.html:22
#, python-format
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">review</a>"
msgstr ""
#: bookwyrm/templates/snippets/status/status_header.html:24
#, python-format
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">comment</a>"
msgstr ""
#: bookwyrm/templates/snippets/status/status_header.html:26
#, python-format
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">quote</a>"
msgstr ""
#: bookwyrm/templates/snippets/status/status_header.html:28
#, python-format
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">status</a>"
msgstr ""
#: bookwyrm/templates/snippets/status/status_options.html:7
#: bookwyrm/templates/snippets/user_options.html:7
msgid "More options"
@ -1711,7 +1740,7 @@ msgstr ""
msgid "User Profile"
msgstr ""
#: bookwyrm/templates/user/followers.html:26
#: bookwyrm/templates/user/followers.html:29
#, python-format
msgid "%(username)s has no followers"
msgstr ""
@ -1720,7 +1749,7 @@ msgstr ""
msgid "Following"
msgstr ""
#: bookwyrm/templates/user/following.html:26
#: bookwyrm/templates/user/following.html:29
#, python-format
msgid "%(username)s isn't following any users"
msgstr ""

Binary file not shown.

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-04 22:37+0000\n"
"POT-Creation-Date: 2021-03-07 23:40+0000\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"
@ -227,7 +227,7 @@ msgstr "Lugares"
#: bookwyrm/templates/book.html:229 bookwyrm/templates/layout.html:64
#: bookwyrm/templates/lists/lists.html:4 bookwyrm/templates/lists/lists.html:9
#: bookwyrm/templates/search_results.html:90
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/user/user_layout.html:62
msgid "Lists"
msgstr "Listas"
@ -476,7 +476,6 @@ msgstr "¡No hay ningún libro aqui ahorita! Busca a un libro para empezar"
#: bookwyrm/templates/feed/feed_layout.html:23
#: bookwyrm/templates/user/shelf.html:24
#| msgid "Read"
msgid "To Read"
msgstr "Para leer"
@ -589,35 +588,40 @@ msgstr "(¡Refresca para actualizar!)"
msgid "Failed to load"
msgstr "Se falló a cargar"
#: bookwyrm/templates/import_status.html:59
#: bookwyrm/templates/import_status.html:44
#, python-format
msgid "Jump to the bottom of the list to select the %(failed_count)s items which failed to import."
msgstr ""
#: bookwyrm/templates/import_status.html:79
msgid "Select all"
msgstr "Seleccionar todo"
#: bookwyrm/templates/import_status.html:62
#: bookwyrm/templates/import_status.html:82
msgid "Retry items"
msgstr "Reintentar ítems"
#: bookwyrm/templates/import_status.html:84
#: bookwyrm/templates/import_status.html:108
msgid "Successfully imported"
msgstr "Importado exitosamente"
#: bookwyrm/templates/import_status.html:88
#: bookwyrm/templates/import_status.html:112
#: bookwyrm/templates/lists/curate.html:14
msgid "Book"
msgstr "Libro"
#: bookwyrm/templates/import_status.html:91
#: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/snippets/shelf.html:10
msgid "Title"
msgstr "Título"
#: bookwyrm/templates/import_status.html:94
#: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/snippets/shelf.html:11
msgid "Author"
msgstr "Autor/Autora"
#: bookwyrm/templates/import_status.html:117
#: bookwyrm/templates/import_status.html:141
msgid "Imported"
msgstr "Importado"
@ -634,6 +638,28 @@ msgstr "Permiso denegado"
msgid "Sorry! This invite code is no longer valid."
msgstr "¡Disculpa! Este código de invitación no queda válido."
#: bookwyrm/templates/isbn_search_results.html:4
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr "Resultados de búsqueda"
#: bookwyrm/templates/isbn_search_results.html:9
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr "Resultados de búsqueda por \"%(query)s\""
#: bookwyrm/templates/isbn_search_results.html:14
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr "Libros correspondientes"
#: bookwyrm/templates/isbn_search_results.html:17
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr "No se encontró ningún libro correspondiente a \"%(query)s\""
#: bookwyrm/templates/layout.html:33
msgid "Search for a book or user"
msgstr "Buscar un libro o un usuario"
@ -717,7 +743,7 @@ msgstr "Contactarse con administradores del sitio"
#: bookwyrm/templates/layout.html:202
#, python-format
msgid "Support %(site.name)s on <a href=\"%(site.support_link)s\" target=\"_blank\">%(site.support_title)s</a>"
msgid "Support %(site_name)s on <a href=\"%(support_link)s\" target=\"_blank\">%(support_title)s</a>"
msgstr ""
#: bookwyrm/templates/layout.html:206
@ -729,6 +755,18 @@ msgstr "BookWyrm es software de código abierto. Puedes contribuir o reportar pr
msgid "Create List"
msgstr "Crear lista"
#: bookwyrm/templates/lists/created_text.html:5
#, fuzzy, python-format
#| msgid "Added by <a href=\"%(user_path)s\">%(username)s</a>"
msgid "Created and curated by <a href=\"%(path)s\">%(username)s</a>"
msgstr "Agregado por <a href=\"%(user_path)s\">%(username)s</a>"
#: bookwyrm/templates/lists/created_text.html:7
#, fuzzy, python-format
#| msgid "Added by <a href=\"%(user_path)s\">%(username)s</a>"
msgid "Created by <a href=\"%(path)s\">%(username)s</a>"
msgstr "Agregado por <a href=\"%(user_path)s\">%(username)s</a>"
#: bookwyrm/templates/lists/curate.html:6
msgid "Pending Books"
msgstr "Libros pendientes"
@ -754,7 +792,7 @@ msgid "Discard"
msgstr "Desechar"
#: bookwyrm/templates/lists/edit_form.html:5
#: bookwyrm/templates/lists/list_layout.html:17
#: bookwyrm/templates/lists/list_layout.html:18
msgid "Edit List"
msgstr "Editar lista"
@ -832,16 +870,6 @@ msgstr "No se encontró ningún libro"
msgid "Suggest"
msgstr "Sugerir"
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created and curated by"
msgstr "Creado y comisariado por"
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created by"
msgstr "Creado por"
#: bookwyrm/templates/lists/lists.html:14
msgid "Your lists"
msgstr "Tus listas"
@ -884,110 +912,110 @@ msgstr "¡Parece que la página solicitada no existe!"
msgid "Delete notifications"
msgstr "Borrar notificaciones"
#: bookwyrm/templates/notifications.html:49
#: bookwyrm/templates/notifications.html:51
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "le gustó tu <a href=\"%(related_path)s\">reseña de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:51
#: bookwyrm/templates/notifications.html:53
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "le gustó tu <a href=\"%(related_path)s\">comentario en <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:53
#: bookwyrm/templates/notifications.html:55
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "le gustó tu <a href=\"%(related_path)s\">cita de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:55
#: bookwyrm/templates/notifications.html:57
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">status</a>"
msgstr "le gustó tu <a href=\"%(related_path)s\">status</a>"
#: bookwyrm/templates/notifications.html:60
#: bookwyrm/templates/notifications.html:62
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "te mencionó en una <a href=\"%(related_path)s\">reseña de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:62
#: bookwyrm/templates/notifications.html:64
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "te mencionó en un <a href=\"%(related_path)s\">comentario de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:64
#: bookwyrm/templates/notifications.html:66
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "te mencionó en una <a href=\"%(related_path)s\">cita de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:66
#: bookwyrm/templates/notifications.html:68
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">status</a>"
msgstr "te mencionó en un <a href=\"%(related_path)s\">status</a>"
#: bookwyrm/templates/notifications.html:71
#: bookwyrm/templates/notifications.html:73
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "<a href=\"%(related_path)s\">respondió a</a> tu <a href=\"%(parent_path)s\">reseña de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:73
#: bookwyrm/templates/notifications.html:75
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "<a href=\"%(related_path)s\">respondió a</a> tu <a href=\"%(parent_path)s\">comentario en <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:75
#: bookwyrm/templates/notifications.html:77
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "<a href=\"%(related_path)s\">respondió a</a> tu <a href=\"%(parent_path)s\">cita de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:77
#: bookwyrm/templates/notifications.html:79
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgstr "<a href=\"%(related_path)s\">respondió a</a> tu <a href=\"%(parent_path)s\">status</a>"
#: bookwyrm/templates/notifications.html:81
#: bookwyrm/templates/notifications.html:83
msgid "followed you"
msgstr "te siguió"
#: bookwyrm/templates/notifications.html:84
#: bookwyrm/templates/notifications.html:86
msgid "sent you a follow request"
msgstr "te quiere seguir"
#: bookwyrm/templates/notifications.html:90
#: bookwyrm/templates/notifications.html:92
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "respaldó tu <a href=\"%(related_path)s\">reseña de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:92
#: bookwyrm/templates/notifications.html:94
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">comment on<em>%(book_title)s</em></a>"
msgstr "respaldó tu <a href=\"%(related_path)s\">comentario en<em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:94
#: bookwyrm/templates/notifications.html:96
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "respaldó tu<a href=\"%(related_path)s\">cita de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:96
#: bookwyrm/templates/notifications.html:98
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">status</a>"
msgstr "respaldó tu <a href=\"%(related_path)s\">status</a>"
#: bookwyrm/templates/notifications.html:100
#: bookwyrm/templates/notifications.html:102
#, python-format
msgid " added <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s\">%(list_name)s</a>\""
msgstr " agregó <em><a href=\"%(book_path)s\">%(book_title)s</a></em> a tu lista \"<a href=\"%(list_path)s\">%(list_name)s</a>\""
#: bookwyrm/templates/notifications.html:102
#: bookwyrm/templates/notifications.html:104
#, python-format
msgid " suggested adding <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s/curate\">%(list_name)s</a>\""
msgstr " sugirió agregar <em><a href=\"%(book_path)s\">%(book_title)s</a></em> a tu lista \"<a href=\"%(list_path)s/curate\">%(list_name)s</a>\""
#: bookwyrm/templates/notifications.html:106
#: bookwyrm/templates/notifications.html:108
#, python-format
msgid " your <a href=\"/import/%(related_id)s\">import</a> completed."
msgstr " tu <a href=\"/import/%(related_id)s\">importación</a> ha terminado."
#: bookwyrm/templates/notifications.html:138
#: bookwyrm/templates/notifications.html:142
msgid "You're all caught up!"
msgstr "¡Estás al día!"
@ -1071,24 +1099,6 @@ msgstr "Cuenta"
msgid "Relationships"
msgstr "Relaciones"
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr "Resultados de búsqueda"
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr "Resultados de búsqueda por \"%(query)s\""
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr "Libros correspondientes"
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr "No se encontró ningún libro correspondiente a \"%(query)s\""
#: bookwyrm/templates/search_results.html:33
msgid "Didn't find what you were looking for?"
msgstr "¿No encontraste lo que buscabas?"
@ -1114,7 +1124,7 @@ msgstr "Usuarios correspondientes"
msgid "No users found for \"%(query)s\""
msgstr "No se encontró ningún usuario correspondiente a \"%(query)s\""
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/search_results.html:94
#, python-format
msgid "No lists found for \"%(query)s\""
msgstr "No se encontró ningúna lista correspondiente a \"%(query)s\""
@ -1547,22 +1557,22 @@ msgid "Sign Up"
msgstr "Inscribirse"
#: bookwyrm/templates/snippets/rss_title.html:5
#: bookwyrm/templates/snippets/status/status_header.html:9
#: bookwyrm/templates/snippets/status/status_header.html:11
msgid "rated"
msgstr "calificó"
#: bookwyrm/templates/snippets/rss_title.html:7
#: bookwyrm/templates/snippets/status/status_header.html:11
#: bookwyrm/templates/snippets/status/status_header.html:13
msgid "reviewed"
msgstr "reseñó"
#: bookwyrm/templates/snippets/rss_title.html:9
#: bookwyrm/templates/snippets/status/status_header.html:13
#: bookwyrm/templates/snippets/status/status_header.html:15
msgid "commented on"
msgstr "comentó en"
#: bookwyrm/templates/snippets/rss_title.html:11
#: bookwyrm/templates/snippets/status/status_header.html:15
#: bookwyrm/templates/snippets/status/status_header.html:17
msgid "quoted"
msgstr "citó"
@ -1643,7 +1653,7 @@ msgstr "Empezar \"<em>%(book_title)s</em>\""
msgid "Want to Read \"<em>%(book_title)s</em>\""
msgstr "Quiero leer \"<em>%(book_title)s</em>\""
#: bookwyrm/templates/snippets/status/status.html:7
#: bookwyrm/templates/snippets/status/status.html:9
msgid "boosted"
msgstr "respaldó"
@ -1667,6 +1677,30 @@ msgstr "Mostrar menos"
msgid "Open image in new window"
msgstr "Abrir imagen en una nueva ventana"
#: bookwyrm/templates/snippets/status/status_header.html:22
#, fuzzy, python-format
#| msgid "Added by <a href=\"%(user_path)s\">%(username)s</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">review</a>"
msgstr "Agregado por <a href=\"%(user_path)s\">%(username)s</a>"
#: bookwyrm/templates/snippets/status/status_header.html:24
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">comment</a>"
msgstr "<a href=\"%(related_path)s\">respondió a</a> tu <a href=\"%(parent_path)s\">status</a>"
#: bookwyrm/templates/snippets/status/status_header.html:26
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">quote</a>"
msgstr "<a href=\"%(related_path)s\">respondió a</a> tu <a href=\"%(parent_path)s\">status</a>"
#: bookwyrm/templates/snippets/status/status_header.html:28
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">status</a>"
msgstr "<a href=\"%(related_path)s\">respondió a</a> tu <a href=\"%(parent_path)s\">status</a>"
#: bookwyrm/templates/snippets/status/status_options.html:7
#: bookwyrm/templates/snippets/user_options.html:7
msgid "More options"
@ -1712,7 +1746,7 @@ msgstr "Actualizar estante"
msgid "User Profile"
msgstr "Perfil de usuario"
#: bookwyrm/templates/user/followers.html:26
#: bookwyrm/templates/user/followers.html:29
#, python-format
msgid "%(username)s has no followers"
msgstr "%(username)s no tiene seguidores"
@ -1721,7 +1755,7 @@ msgstr "%(username)s no tiene seguidores"
msgid "Following"
msgstr "Siguiendo"
#: bookwyrm/templates/user/following.html:26
#: bookwyrm/templates/user/following.html:29
#, python-format
msgid "%(username)s isn't following any users"
msgstr "%(username)s no sigue a nadie"
@ -1821,6 +1855,12 @@ msgstr[1] "%(counter)s seguidores"
msgid "%(counter)s following"
msgstr "%(counter)s siguiendo"
#~ msgid "Created and curated by"
#~ msgstr "Creado y comisariado por"
#~ msgid "Created by"
#~ msgstr "Creado por"
#~ msgid "Added by"
#~ msgstr "Agregado por"

Binary file not shown.

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.1.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-05 14:10+0000\n"
"POT-Creation-Date: 2021-03-07 23:40+0000\n"
"PO-Revision-Date: 2021-03-02 12:37+0100\n"
"Last-Translator: Fabien Basmaison <contact@arkhi.org>\n"
"Language-Team: Mouse Reeve <LL@li.org>\n"
@ -240,7 +240,7 @@ msgstr "Lieux"
#: bookwyrm/templates/book.html:229 bookwyrm/templates/layout.html:64
#: bookwyrm/templates/lists/lists.html:4 bookwyrm/templates/lists/lists.html:9
#: bookwyrm/templates/search_results.html:90
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/user/user_layout.html:62
msgid "Lists"
msgstr "Listes"
@ -615,40 +615,40 @@ msgstr "(Rechargez la page pour mettre à jour!"
msgid "Failed to load"
msgstr "Items non importés"
#: bookwyrm/templates/import_status.html:42
#: bookwyrm/templates/import_status.html:44
#, python-format
msgid "Jump to the bottom of the list to select the %(failed_count)s items which failed to import."
msgstr "Sauter en bas de liste pour sélectionner les %(failed_count)s items nayant pu être importés."
#: bookwyrm/templates/import_status.html:74
#: bookwyrm/templates/import_status.html:79
msgid "Select all"
msgstr "Tout sélectionner"
#: bookwyrm/templates/import_status.html:79
#: bookwyrm/templates/import_status.html:82
msgid "Retry items"
msgstr "Essayer dimporter les items sélectionnés de nouveau"
#: bookwyrm/templates/import_status.html:101
#: bookwyrm/templates/import_status.html:108
msgid "Successfully imported"
msgstr "Importation réussie"
#: bookwyrm/templates/import_status.html:105
#: bookwyrm/templates/import_status.html:112
#: bookwyrm/templates/lists/curate.html:14
msgid "Book"
msgstr "Livre"
#: bookwyrm/templates/import_status.html:108
#: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/snippets/shelf.html:10
msgid "Title"
msgstr "Titre"
#: bookwyrm/templates/import_status.html:111
#: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/snippets/shelf.html:11
msgid "Author"
msgstr "Auteur ou autrice"
#: bookwyrm/templates/import_status.html:134
#: bookwyrm/templates/import_status.html:141
msgid "Imported"
msgstr "Importé"
@ -665,6 +665,28 @@ msgstr "Autorisation refusée"
msgid "Sorry! This invite code is no longer valid."
msgstr "Cette invitation nest plus valide; désolé!"
#: bookwyrm/templates/isbn_search_results.html:4
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr "Résultats de recherche"
#: bookwyrm/templates/isbn_search_results.html:9
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr "Résultats de recherche pour « %(query)s»"
#: bookwyrm/templates/isbn_search_results.html:14
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr "Livres correspondants"
#: bookwyrm/templates/isbn_search_results.html:17
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr "Aucun livre trouvé pour « %(query)s»"
#: bookwyrm/templates/layout.html:33
msgid "Search for a book or user"
msgstr "Chercher un livre ou un compte"
@ -752,7 +774,7 @@ msgstr "Contacter ladministrateur du site"
#: bookwyrm/templates/layout.html:202
#, python-format
msgid "Support %(site.name)s on <a href=\"%(site.support_link)s\" target=\"_blank\">%(site.support_title)s</a>"
msgid "Support %(site_name)s on <a href=\"%(support_link)s\" target=\"_blank\">%(support_title)s</a>"
msgstr ""
#: bookwyrm/templates/layout.html:206
@ -764,6 +786,18 @@ msgstr "Bookwyrm est un logiciel libre. Vous pouvez contribuer ou faire des rapp
msgid "Create List"
msgstr "Créer une liste"
#: bookwyrm/templates/lists/created_text.html:5
#, fuzzy, python-format
#| msgid "favorited your <a href=\"%(related_path)s\">%(preview_name)s</a>"
msgid "Created and curated by <a href=\"%(path)s\">%(username)s</a>"
msgstr "Messages directs avec <a href=\"%(path)s\">%(username)s</a>"
#: bookwyrm/templates/lists/created_text.html:7
#, fuzzy, python-format
#| msgid "favorited your <a href=\"%(related_path)s\">%(preview_name)s</a>"
msgid "Created by <a href=\"%(path)s\">%(username)s</a>"
msgstr "Messages directs avec <a href=\"%(path)s\">%(username)s</a>"
#: bookwyrm/templates/lists/curate.html:6
msgid "Pending Books"
msgstr "Livres en attente de modération"
@ -789,7 +823,7 @@ msgid "Discard"
msgstr "Rejeter"
#: bookwyrm/templates/lists/edit_form.html:5
#: bookwyrm/templates/lists/list_layout.html:17
#: bookwyrm/templates/lists/list_layout.html:18
msgid "Edit List"
msgstr "Modifier la liste"
@ -868,16 +902,6 @@ msgstr "Aucun livre trouvé"
msgid "Suggest"
msgstr "Suggérer"
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created and curated by"
msgstr "Créée et modérée par"
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created by"
msgstr "Créée par"
#: bookwyrm/templates/lists/lists.html:14
msgid "Your lists"
msgstr "Vos listes"
@ -921,110 +945,110 @@ msgstr "Il semblerait que la page que vous avez demandée nexiste pas!"
msgid "Delete notifications"
msgstr "Supprimer les notifications"
#: bookwyrm/templates/notifications.html:49
#: bookwyrm/templates/notifications.html:51
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "a ajouté votre <a href=\"%(related_path)s\">critique de <em>%(book_title)s</em></a> à ses favoris"
#: bookwyrm/templates/notifications.html:51
#: bookwyrm/templates/notifications.html:53
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "a ajouté votre <a href=\"%(related_path)s\">commentaire sur <em>%(book_title)s</em></a> à ses favoris"
#: bookwyrm/templates/notifications.html:53
#: bookwyrm/templates/notifications.html:55
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "a ajouté votre <a href=\"%(related_path)s\">citation de <em>%(book_title)s</em></a> à ses favoris"
#: bookwyrm/templates/notifications.html:55
#: bookwyrm/templates/notifications.html:57
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">status</a>"
msgstr "a ajouté votre <a href=\"%(related_path)s\">statut</a> à ses favoris"
#: bookwyrm/templates/notifications.html:60
#: bookwyrm/templates/notifications.html:62
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "vous a mentionné dans sa <a href=\"%(related_path)s\">critique de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:62
#: bookwyrm/templates/notifications.html:64
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "vous a mentionné dans son <a href=\"%(related_path)s\">commentaire sur <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:64
#: bookwyrm/templates/notifications.html:66
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "vous a mentionné dans sa <a href=\"%(related_path)s\">citation de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:66
#: bookwyrm/templates/notifications.html:68
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">status</a>"
msgstr "vous a mentionné dans son <a href=\"%(related_path)s\">statut</a>"
#: bookwyrm/templates/notifications.html:71
#: bookwyrm/templates/notifications.html:73
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "<a href=\"%(related_path)s\">a répondu</a> à votre <a href=\"%(parent_path)s\">critique de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:73
#: bookwyrm/templates/notifications.html:75
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "<a href=\"%(related_path)s\">a répondu</a> à votre <a href=\"%(parent_path)s\">commentaire sur <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:75
#: bookwyrm/templates/notifications.html:77
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "<a href=\"%(related_path)s\">a répondu</a> à votre <a href=\"%(parent_path)s\">citation de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:77
#: bookwyrm/templates/notifications.html:79
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgstr "<a href=\"%(related_path)s\">a répondu</a> à votre <a href=\"%(parent_path)s\">statut</a>"
#: bookwyrm/templates/notifications.html:81
#: bookwyrm/templates/notifications.html:83
msgid "followed you"
msgstr "sest abonné(e)"
#: bookwyrm/templates/notifications.html:84
#: bookwyrm/templates/notifications.html:86
msgid "sent you a follow request"
msgstr "vous a envoyé une demande dabonnement"
#: bookwyrm/templates/notifications.html:90
#: bookwyrm/templates/notifications.html:92
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "a partagé votre <a href=\"%(related_path)s\">critique de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:92
#: bookwyrm/templates/notifications.html:94
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">comment on<em>%(book_title)s</em></a>"
msgstr "a partagé votre <a href=\"%(related_path)s\">commentaire sur <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:94
#: bookwyrm/templates/notifications.html:96
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "a partagé votre <a href=\"%(related_path)s\">citation de <em>%(book_title)s</em></a>"
#: bookwyrm/templates/notifications.html:96
#: bookwyrm/templates/notifications.html:98
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">status</a>"
msgstr "a partagé votre <a href=\"%(related_path)s\">statut</a>"
#: bookwyrm/templates/notifications.html:100
#: bookwyrm/templates/notifications.html:102
#, python-format
msgid " added <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s\">%(list_name)s</a>\""
msgstr " a ajouté <em><a href=\"%(book_path)s\">%(book_title)s</a></em> à votre liste « <a href=\"%(list_path)s\">%(list_name)s</a> »"
#: bookwyrm/templates/notifications.html:102
#: bookwyrm/templates/notifications.html:104
#, python-format
msgid " suggested adding <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s/curate\">%(list_name)s</a>\""
msgstr " a suggégré lajout de <em><a href=\"%(book_path)s\">%(book_title)s</a></em> à votre liste « <a href=\"%(list_path)s/curate\">%(list_name)s</a> »"
#: bookwyrm/templates/notifications.html:106
#: bookwyrm/templates/notifications.html:108
#, python-format
msgid " your <a href=\"/import/%(related_id)s\">import</a> completed."
msgstr " votre <a href=\"/import/%(related_id)s\">importation</a> est terminée."
#: bookwyrm/templates/notifications.html:138
#: bookwyrm/templates/notifications.html:142
msgid "You're all caught up!"
msgstr "Aucune nouvelle notification!"
@ -1108,24 +1132,6 @@ msgstr "Compte"
msgid "Relationships"
msgstr "Relations"
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr "Résultats de recherche"
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr "Résultats de recherche pour « %(query)s»"
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr "Livres correspondants"
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr "Aucun livre trouvé pour « %(query)s»"
#: bookwyrm/templates/search_results.html:33
msgid "Didn't find what you were looking for?"
msgstr "Vous navez pas trouvé ce que vous cherchiez?"
@ -1151,7 +1157,7 @@ msgstr "Comptes correspondants"
msgid "No users found for \"%(query)s\""
msgstr "Aucun compte trouvé pour « %(query)s»"
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/search_results.html:94
#, python-format
msgid "No lists found for \"%(query)s\""
msgstr "Aucune liste trouvée pour « %(query)s»"
@ -1588,22 +1594,22 @@ msgid "Sign Up"
msgstr "Senregistrer"
#: bookwyrm/templates/snippets/rss_title.html:5
#: bookwyrm/templates/snippets/status/status_header.html:9
#: bookwyrm/templates/snippets/status/status_header.html:11
msgid "rated"
msgstr "a noté"
#: bookwyrm/templates/snippets/rss_title.html:7
#: bookwyrm/templates/snippets/status/status_header.html:11
#: bookwyrm/templates/snippets/status/status_header.html:13
msgid "reviewed"
msgstr "a écrit une critique de"
#: bookwyrm/templates/snippets/rss_title.html:9
#: bookwyrm/templates/snippets/status/status_header.html:13
#: bookwyrm/templates/snippets/status/status_header.html:15
msgid "commented on"
msgstr "a commenté"
#: bookwyrm/templates/snippets/rss_title.html:11
#: bookwyrm/templates/snippets/status/status_header.html:15
#: bookwyrm/templates/snippets/status/status_header.html:17
msgid "quoted"
msgstr "a cité"
@ -1688,7 +1694,7 @@ msgstr "Commencer « <em>%(book_title)s</em> »"
msgid "Want to Read \"<em>%(book_title)s</em>\""
msgstr "A envie de lire « <em>%(book_title)s</em> »"
#: bookwyrm/templates/snippets/status/status.html:7
#: bookwyrm/templates/snippets/status/status.html:9
msgid "boosted"
msgstr "partagé"
@ -1712,6 +1718,30 @@ msgstr "Replier"
msgid "Open image in new window"
msgstr "Ouvrir limage dans une nouvelle fenêtre"
#: bookwyrm/templates/snippets/status/status_header.html:22
#, fuzzy, python-format
#| msgid "favorited your <a href=\"%(related_path)s\">%(preview_name)s</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">review</a>"
msgstr "Messages directs avec <a href=\"%(path)s\">%(username)s</a>"
#: bookwyrm/templates/snippets/status/status_header.html:24
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">comment</a>"
msgstr "<a href=\"%(related_path)s\">a répondu</a> à votre <a href=\"%(parent_path)s\">statut</a>"
#: bookwyrm/templates/snippets/status/status_header.html:26
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">quote</a>"
msgstr "<a href=\"%(related_path)s\">a répondu</a> à votre <a href=\"%(parent_path)s\">statut</a>"
#: bookwyrm/templates/snippets/status/status_header.html:28
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">status</a>"
msgstr "<a href=\"%(related_path)s\">a répondu</a> à votre <a href=\"%(parent_path)s\">statut</a>"
#: bookwyrm/templates/snippets/status/status_options.html:7
#: bookwyrm/templates/snippets/user_options.html:7
msgid "More options"
@ -1757,7 +1787,7 @@ msgstr "Mettre létagère à jour"
msgid "User Profile"
msgstr "Profil"
#: bookwyrm/templates/user/followers.html:26
#: bookwyrm/templates/user/followers.html:29
#, python-format
msgid "%(username)s has no followers"
msgstr "%(username)s na pas dabonné(e)"
@ -1766,7 +1796,7 @@ msgstr "%(username)s na pas dabonné(e)"
msgid "Following"
msgstr "Abonné(e) à"
#: bookwyrm/templates/user/following.html:26
#: bookwyrm/templates/user/following.html:29
#, python-format
msgid "%(username)s isn't following any users"
msgstr "%(username)s nest abonné(e) à personne"
@ -1868,6 +1898,12 @@ msgstr[1] "%(username)s na pas dabonné(e)s"
msgid "%(counter)s following"
msgstr "%(counter)s abonnements"
#~ msgid "Created and curated by"
#~ msgstr "Créée et modérée par"
#~ msgid "Created by"
#~ msgstr "Créée par"
#~ msgid "Create New Shelf"
#~ msgstr "Créer une nouvelle étagère"

Binary file not shown.

View file

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.1.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-04 22:24+0000\n"
"POT-Creation-Date: 2021-03-07 23:40+0000\n"
"PO-Revision-Date: 2021-03-02 10:35+0000\n"
"Last-Translator: Kana <gudzpoz@live.com>\n"
"Language-Team: Mouse Reeve <LL@li.org>\n"
@ -233,7 +233,7 @@ msgstr "地点"
#: bookwyrm/templates/book.html:229 bookwyrm/templates/layout.html:64
#: bookwyrm/templates/lists/lists.html:4 bookwyrm/templates/lists/lists.html:9
#: bookwyrm/templates/search_results.html:90
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/user/user_layout.html:62
msgid "Lists"
msgstr "列表"
@ -598,35 +598,40 @@ msgstr "(按下重新加载来更新!)"
msgid "Failed to load"
msgstr "加载失败"
#: bookwyrm/templates/import_status.html:59
#: bookwyrm/templates/import_status.html:44
#, python-format
msgid "Jump to the bottom of the list to select the %(failed_count)s items which failed to import."
msgstr ""
#: bookwyrm/templates/import_status.html:79
msgid "Select all"
msgstr "全选"
#: bookwyrm/templates/import_status.html:62
#: bookwyrm/templates/import_status.html:82
msgid "Retry items"
msgstr "重试项目"
#: bookwyrm/templates/import_status.html:84
#: bookwyrm/templates/import_status.html:108
msgid "Successfully imported"
msgstr "成功导入了"
#: bookwyrm/templates/import_status.html:88
#: bookwyrm/templates/import_status.html:112
#: bookwyrm/templates/lists/curate.html:14
msgid "Book"
msgstr "书目"
#: bookwyrm/templates/import_status.html:91
#: bookwyrm/templates/import_status.html:115
#: bookwyrm/templates/snippets/create_status_form.html:10
#: bookwyrm/templates/snippets/shelf.html:10
msgid "Title"
msgstr "标题"
#: bookwyrm/templates/import_status.html:94
#: bookwyrm/templates/import_status.html:118
#: bookwyrm/templates/snippets/shelf.html:11
msgid "Author"
msgstr "作者"
#: bookwyrm/templates/import_status.html:117
#: bookwyrm/templates/import_status.html:141
msgid "Imported"
msgstr "已导入"
@ -643,6 +648,28 @@ msgstr "没有权限"
msgid "Sorry! This invite code is no longer valid."
msgstr "抱歉!此邀请码已不再有效。"
#: bookwyrm/templates/isbn_search_results.html:4
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr "搜索结果"
#: bookwyrm/templates/isbn_search_results.html:9
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr "\"%(query)s\" 的搜索结果"
#: bookwyrm/templates/isbn_search_results.html:14
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr "匹配的书目"
#: bookwyrm/templates/isbn_search_results.html:17
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr "没有找到 \"%(query)s\" 的书目"
#: bookwyrm/templates/layout.html:33
msgid "Search for a book or user"
msgstr "搜索书目或用户"
@ -726,7 +753,7 @@ msgstr "联系站点管理员"
#: bookwyrm/templates/layout.html:202
#, python-format
msgid "Support %(site.name)s on <a href=\"%(site.support_link)s\" target=\"_blank\">%(site.support_title)s</a>"
msgid "Support %(site_name)s on <a href=\"%(support_link)s\" target=\"_blank\">%(support_title)s</a>"
msgstr ""
#: bookwyrm/templates/layout.html:206
@ -738,6 +765,18 @@ msgstr "BookWyrm 是开源软件。你可以在<a href=\"https://github.com/mous
msgid "Create List"
msgstr "创建列表"
#: bookwyrm/templates/lists/created_text.html:5
#, fuzzy, python-format
#| msgid "Direct Messages with <a href=\"%(path)s\">%(username)s</a>"
msgid "Created and curated by <a href=\"%(path)s\">%(username)s</a>"
msgstr "与 <a href=\"%(path)s\">%(username)s</a> 私信"
#: bookwyrm/templates/lists/created_text.html:7
#, fuzzy, python-format
#| msgid "Direct Messages with <a href=\"%(path)s\">%(username)s</a>"
msgid "Created by <a href=\"%(path)s\">%(username)s</a>"
msgstr "与 <a href=\"%(path)s\">%(username)s</a> 私信"
#: bookwyrm/templates/lists/curate.html:6
msgid "Pending Books"
msgstr "等候中的书目"
@ -763,7 +802,7 @@ msgid "Discard"
msgstr "削除"
#: bookwyrm/templates/lists/edit_form.html:5
#: bookwyrm/templates/lists/list_layout.html:17
#: bookwyrm/templates/lists/list_layout.html:18
msgid "Edit List"
msgstr "编辑列表"
@ -842,16 +881,6 @@ msgstr "没有找到书目"
msgid "Suggest"
msgstr "推荐"
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created and curated by"
msgstr "创建者及策展者为"
#: bookwyrm/templates/lists/list_items.html:19
#: bookwyrm/templates/lists/list_layout.html:11
msgid "Created by"
msgstr "创建者为"
#: bookwyrm/templates/lists/lists.html:14
msgid "Your lists"
msgstr "你的列表"
@ -895,110 +924,110 @@ msgstr "你请求的页面似乎并不存在!"
msgid "Delete notifications"
msgstr "删除通知"
#: bookwyrm/templates/notifications.html:49
#: bookwyrm/templates/notifications.html:51
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "喜欢了你 <a href=\"%(related_path)s\">对 <em>%(book_title)s</em> 的书评</a>"
#: bookwyrm/templates/notifications.html:51
#: bookwyrm/templates/notifications.html:53
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "喜欢了你 <a href=\"%(related_path)s\">对 <em>%(book_title)s</em> 的评论</a>"
#: bookwyrm/templates/notifications.html:53
#: bookwyrm/templates/notifications.html:55
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "喜欢了你 <a href=\"%(related_path)s\">来自 <em>%(book_title)s</em> 的引用</a>"
#: bookwyrm/templates/notifications.html:55
#: bookwyrm/templates/notifications.html:57
#, python-format
msgid "favorited your <a href=\"%(related_path)s\">status</a>"
msgstr "喜欢了你的 <a href=\"%(related_path)s\">状态</a>"
#: bookwyrm/templates/notifications.html:60
#: bookwyrm/templates/notifications.html:62
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "在 <a href=\"%(related_path)s\">对 <em>%(book_title)s</em> 的书评</a> 里提到了你"
#: bookwyrm/templates/notifications.html:62
#: bookwyrm/templates/notifications.html:64
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "在 <a href=\"%(related_path)s\">对 <em>%(book_title)s</em> 的评论</a> 里提到了你"
#: bookwyrm/templates/notifications.html:64
#: bookwyrm/templates/notifications.html:66
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "在 <a href=\"%(related_path)s\">对 <em>%(book_title)s</em> 的引用</a> 中提到了你"
#: bookwyrm/templates/notifications.html:66
#: bookwyrm/templates/notifications.html:68
#, python-format
msgid "mentioned you in a <a href=\"%(related_path)s\">status</a>"
msgstr "在 <a href=\"%(related_path)s\">状态</a> 中提到了你"
#: bookwyrm/templates/notifications.html:71
#: bookwyrm/templates/notifications.html:73
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "<a href=\"%(related_path)s\">回复</a> 了你的 <a href=\"%(parent_path)s\">对 <em>%(book_title)s</em> 的书评</a>"
#: bookwyrm/templates/notifications.html:73
#: bookwyrm/templates/notifications.html:75
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">comment on <em>%(book_title)s</em></a>"
msgstr "<a href=\"%(related_path)s\">回复</a> 了你的 <a href=\"%(parent_path)s\">对 <em>%(book_title)s</em> 的评论</a>"
#: bookwyrm/templates/notifications.html:75
#: bookwyrm/templates/notifications.html:77
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "<a href=\"%(related_path)s\">回复</a> 了你 <a href=\"%(parent_path)s\">对 <em>%(book_title)s</em> 中的引用</a>"
#: bookwyrm/templates/notifications.html:77
#: bookwyrm/templates/notifications.html:79
#, python-format
msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgstr "<a href=\"%(related_path)s\">回复</a> 了你的 <a href=\"%(parent_path)s\">状态</a>"
#: bookwyrm/templates/notifications.html:81
#: bookwyrm/templates/notifications.html:83
msgid "followed you"
msgstr "关注了你"
#: bookwyrm/templates/notifications.html:84
#: bookwyrm/templates/notifications.html:86
msgid "sent you a follow request"
msgstr "向你发送了关注请求"
#: bookwyrm/templates/notifications.html:90
#: bookwyrm/templates/notifications.html:92
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">review of <em>%(book_title)s</em></a>"
msgstr "转发了你的 <a href=\"%(related_path)s\">对 <em>%(book_title)s</em> 的书评</a>"
#: bookwyrm/templates/notifications.html:92
#: bookwyrm/templates/notifications.html:94
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">comment on<em>%(book_title)s</em></a>"
msgstr "转发了你的 <a href=\"%(related_path)s\">对 <em>%(book_title)s</em> 的评论</a>"
#: bookwyrm/templates/notifications.html:94
#: bookwyrm/templates/notifications.html:96
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">quote from <em>%(book_title)s</em></a>"
msgstr "转发了你的 <a href=\"%(related_path)s\">对 <em>%(book_title)s</em> 的引用</a>"
#: bookwyrm/templates/notifications.html:96
#: bookwyrm/templates/notifications.html:98
#, python-format
msgid "boosted your <a href=\"%(related_path)s\">status</a>"
msgstr "转发了你的 <a href=\"%(related_path)s\">状态</a>"
#: bookwyrm/templates/notifications.html:100
#: bookwyrm/templates/notifications.html:102
#, python-format
msgid " added <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s\">%(list_name)s</a>\""
msgstr " 添加了 <em><a href=\"%(book_path)s\">%(book_title)s</a></em> 到你的列表 \"<a href=\"%(list_path)s\">%(list_name)s</a>\""
#: bookwyrm/templates/notifications.html:102
#: bookwyrm/templates/notifications.html:104
#, python-format
msgid " suggested adding <em><a href=\"%(book_path)s\">%(book_title)s</a></em> to your list \"<a href=\"%(list_path)s/curate\">%(list_name)s</a>\""
msgstr " 推荐添加 <em><a href=\"%(book_path)s\">%(book_title)s</a></em> 到你的列表 \"<a href=\"%(list_path)s/curate\">%(list_name)s</a>\""
#: bookwyrm/templates/notifications.html:106
#: bookwyrm/templates/notifications.html:108
#, python-format
msgid " your <a href=\"/import/%(related_id)s\">import</a> completed."
msgstr " 你的 <a href=\"/import/%(related_id)s\">导入</a> 已完成。"
#: bookwyrm/templates/notifications.html:138
#: bookwyrm/templates/notifications.html:142
msgid "You're all caught up!"
msgstr "你什么也没错过!"
@ -1082,24 +1111,6 @@ msgstr "帐号"
msgid "Relationships"
msgstr "关系"
#: bookwyrm/templates/search_results.html:4
msgid "Search Results"
msgstr "搜索结果"
#: bookwyrm/templates/search_results.html:9
#, python-format
msgid "Search Results for \"%(query)s\""
msgstr "\"%(query)s\" 的搜索结果"
#: bookwyrm/templates/search_results.html:14
msgid "Matching Books"
msgstr "匹配的书目"
#: bookwyrm/templates/search_results.html:17
#, python-format
msgid "No books found for \"%(query)s\""
msgstr "没有找到 \"%(query)s\" 的书目"
#: bookwyrm/templates/search_results.html:33
msgid "Didn't find what you were looking for?"
msgstr "没有找到你想找的?"
@ -1125,7 +1136,7 @@ msgstr "匹配的用户"
msgid "No users found for \"%(query)s\""
msgstr "没有找到 \"%(query)s\" 的用户"
#: bookwyrm/templates/search_results.html:92
#: bookwyrm/templates/search_results.html:94
#, python-format
msgid "No lists found for \"%(query)s\""
msgstr "没有找到 \"%(query)s\" 的条目"
@ -1557,22 +1568,22 @@ msgid "Sign Up"
msgstr "注册"
#: bookwyrm/templates/snippets/rss_title.html:5
#: bookwyrm/templates/snippets/status/status_header.html:9
#: bookwyrm/templates/snippets/status/status_header.html:11
msgid "rated"
msgstr "评价了"
#: bookwyrm/templates/snippets/rss_title.html:7
#: bookwyrm/templates/snippets/status/status_header.html:11
#: bookwyrm/templates/snippets/status/status_header.html:13
msgid "reviewed"
msgstr "写了书评给"
#: bookwyrm/templates/snippets/rss_title.html:9
#: bookwyrm/templates/snippets/status/status_header.html:13
#: bookwyrm/templates/snippets/status/status_header.html:15
msgid "commented on"
msgstr "评论了"
#: bookwyrm/templates/snippets/rss_title.html:11
#: bookwyrm/templates/snippets/status/status_header.html:15
#: bookwyrm/templates/snippets/status/status_header.html:17
msgid "quoted"
msgstr "引用了"
@ -1653,7 +1664,7 @@ msgstr "开始 \"<em>%(book_title)s</em>\""
msgid "Want to Read \"<em>%(book_title)s</em>\""
msgstr "想要阅读 \"<em>%(book_title)s</em>\""
#: bookwyrm/templates/snippets/status/status.html:7
#: bookwyrm/templates/snippets/status/status.html:9
msgid "boosted"
msgstr "转发了"
@ -1677,6 +1688,30 @@ msgstr "显示更少"
msgid "Open image in new window"
msgstr "在新窗口中打开图像"
#: bookwyrm/templates/snippets/status/status_header.html:22
#, fuzzy, python-format
#| msgid "Direct Messages with <a href=\"%(path)s\">%(username)s</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">review</a>"
msgstr "与 <a href=\"%(path)s\">%(username)s</a> 私信"
#: bookwyrm/templates/snippets/status/status_header.html:24
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">comment</a>"
msgstr "<a href=\"%(related_path)s\">回复</a> 了你的 <a href=\"%(parent_path)s\">状态</a>"
#: bookwyrm/templates/snippets/status/status_header.html:26
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">quote</a>"
msgstr "<a href=\"%(related_path)s\">回复</a> 了你的 <a href=\"%(parent_path)s\">状态</a>"
#: bookwyrm/templates/snippets/status/status_header.html:28
#, fuzzy, python-format
#| msgid "<a href=\"%(related_path)s\">replied</a> to your <a href=\"%(parent_path)s\">status</a>"
msgid "replied to <a href=\"%(user_path)s\">%(username)s's</a> <a href=\"%(status_path)s\">status</a>"
msgstr "<a href=\"%(related_path)s\">回复</a> 了你的 <a href=\"%(parent_path)s\">状态</a>"
#: bookwyrm/templates/snippets/status/status_options.html:7
#: bookwyrm/templates/snippets/user_options.html:7
msgid "More options"
@ -1722,7 +1757,7 @@ msgstr "更新书架"
msgid "User Profile"
msgstr "用户个人资料"
#: bookwyrm/templates/user/followers.html:26
#: bookwyrm/templates/user/followers.html:29
#, python-format
msgid "%(username)s has no followers"
msgstr "%(username)s 没有关注者"
@ -1731,7 +1766,7 @@ msgstr "%(username)s 没有关注者"
msgid "Following"
msgstr "正在关注"
#: bookwyrm/templates/user/following.html:26
#: bookwyrm/templates/user/following.html:29
#, python-format
msgid "%(username)s isn't following any users"
msgstr "%(username)s 没有关注任何用户"
@ -1830,6 +1865,12 @@ msgstr[0] "%(counter)s 个关注者"
msgid "%(counter)s following"
msgstr "关注着 %(counter)s 人"
#~ msgid "Created and curated by"
#~ msgstr "创建者及策展者为"
#~ msgid "Created by"
#~ msgstr "创建者为"
#~ msgid "Create New Shelf"
#~ msgstr "新建书架"

View file

@ -1,5 +1,4 @@
celery==4.4.2
coverage==5.1
Django==3.0.7
django-model-utils==4.0.0
environs==7.2.0
@ -8,11 +7,15 @@ Markdown==3.3.3
Pillow>=7.1.0
psycopg2==2.8.4
pycryptodome==3.9.4
pytest-django==4.1.0
pytest==6.1.2
pytest-cov==2.10.1
python-dateutil==2.8.1
redis==3.4.1
requests==2.22.0
responses==0.10.14
django-rename-app==0.1.2
# Dev
black==20.8b1
coverage==5.1
pytest-django==4.1.0
pytest==6.1.2
pytest-cov==2.10.1