diff --git a/Dockerfile b/Dockerfile index 7456996e6..99d2671ce 100644 --- a/Dockerfile +++ b/Dockerfile @@ -10,6 +10,7 @@ WORKDIR /app COPY requirements.txt /app/ RUN pip install -r requirements.txt +RUN apt-get update && apt-get install -y gettext libgettextpo-dev COPY ./bookwyrm /app COPY ./celerywyrm /app diff --git a/bookwyrm/settings.py b/bookwyrm/settings.py index 9446b09c0..8cdf87ff3 100644 --- a/bookwyrm/settings.py +++ b/bookwyrm/settings.py @@ -140,6 +140,7 @@ AUTH_PASSWORD_VALIDATORS = [ LANGUAGE_CODE = 'en-us' LANGUAGES = [ ('en-us', _('English')), + ('fr-fr', _('French')), ] diff --git a/bookwyrm/templates/author.html b/bookwyrm/templates/author.html index 9dd831894..bc1034a8d 100644 --- a/bookwyrm/templates/author.html +++ b/bookwyrm/templates/author.html @@ -1,6 +1,9 @@ {% extends 'layout.html' %} {% load i18n %} {% load bookwyrm_tags %} + +{% block title %}{{ author.name }}{% endblock %} + {% block content %}
diff --git a/bookwyrm/templates/book.html b/bookwyrm/templates/book.html index 35ddba373..10682347a 100644 --- a/bookwyrm/templates/book.html +++ b/bookwyrm/templates/book.html @@ -2,8 +2,10 @@ {% load i18n %} {% load bookwyrm_tags %} {% load humanize %} -{% block content %} +{% block title %}{{ book.title }}{% endblock %} + +{% block content %}
@@ -93,7 +95,8 @@ {% include 'snippets/trimmed_text.html' with full=book|book_description %} {% if request.user.is_authenticated and perms.bookwyrm.edit_book and not book|book_description %} - {% include 'snippets/toggle/open_button.html' with text="Add description" controls_text="add-description" controls_uid=book.id focus="id_description" hide_active=True id="hide-description" %} + {% trans 'Add Description' as button_text %} + {% include 'snippets/toggle/open_button.html' with text=button_text controls_text="add-description" controls_uid=book.id focus="id_description" hide_active=True id="hide-description" %} @@ -137,7 +141,8 @@

{% trans "Your reading activity" %}

- {% include 'snippets/toggle/open_button.html' with text="Add read dates" icon="plus" class="is-small" controls_text="add-readthrough" %} + {% trans "Add read dates" as button_text %} + {% include 'snippets/toggle/open_button.html' with text=button_text icon="plus" class="is-small" controls_text="add-readthrough" %}
{% if not readthroughs.exists %} @@ -151,7 +156,8 @@
- {% include 'snippets/toggle/close_button.html' with text="Cancel" controls_text="add-readthrough" %} + {% trans "Cancel" as button_text %} + {% include 'snippets/toggle/close_button.html' with text=button_text controls_text="add-readthrough" %}
diff --git a/bookwyrm/templates/components/inline_form.html b/bookwyrm/templates/components/inline_form.html index 6a244ffd7..40915a928 100644 --- a/bookwyrm/templates/components/inline_form.html +++ b/bookwyrm/templates/components/inline_form.html @@ -1,10 +1,12 @@ +{% load i18n %}
{% if type == 'quotation' %}
- + {% include 'snippets/content_warning_field.html' with parent_status=status %}
@@ -51,7 +51,8 @@
- {% include 'snippets/toggle/toggle_button.html' with text="Include spoiler alert" icon="warning is-size-4" controls_text="spoilers" controls_uid=uuid focus="id_content_warning" checkbox="id_show_spoilers" class="toggle-button" pressed=status.content_warning %} + {% trans "Include spoiler alert" as button_text %} + {% include 'snippets/toggle/toggle_button.html' with text=button_text icon="warning is-size-4" controls_text="spoilers" controls_uid=uuid focus="id_content_warning" checkbox="id_show_spoilers" class="toggle-button" pressed=status.content_warning %}
{% if type == 'direct' %} diff --git a/bookwyrm/templates/snippets/delete_readthrough_modal.html b/bookwyrm/templates/snippets/delete_readthrough_modal.html index 557059eda..e1560f93e 100644 --- a/bookwyrm/templates/snippets/delete_readthrough_modal.html +++ b/bookwyrm/templates/snippets/delete_readthrough_modal.html @@ -14,6 +14,7 @@ - {% include 'snippets/toggle/toggle_button.html' with text="Cancel" controls_text="delete-readthrough" controls_uid=readthrough.id %} + {% trans "Cancel" as button_text %} + {% include 'snippets/toggle/toggle_button.html' with text=button_text controls_text="delete-readthrough" controls_uid=readthrough.id %} {% endblock %} diff --git a/bookwyrm/templates/snippets/generated_status/goal.html b/bookwyrm/templates/snippets/generated_status/goal.html index 3b4d0de4f..465722659 100644 --- a/bookwyrm/templates/snippets/generated_status/goal.html +++ b/bookwyrm/templates/snippets/generated_status/goal.html @@ -1 +1 @@ -{% load humanize %}set a goal to read {{ goal.goal | intcomma }} book{{ goal.goal | pluralize }} in {{ goal.year }} +{% load i18n %}{% load humanize %}{% blocktrans count counter=goal.goal with counter=goal.goal year=goal.year %}set a goal to read {{ counter }} book in {{ year }}{% plural %}set a goal to read {{ counter }} books in {{ year }}{% endblocktrans %} diff --git a/bookwyrm/templates/snippets/goal_card.html b/bookwyrm/templates/snippets/goal_card.html index 386c030c8..084a5ad0b 100644 --- a/bookwyrm/templates/snippets/goal_card.html +++ b/bookwyrm/templates/snippets/goal_card.html @@ -3,7 +3,7 @@ {% block card-header %}

- {% blocktrans %}{{ year }} reading goal{% endblocktrans %} + {% blocktrans %}{{ year }} Reading Goal{% endblocktrans %}

{% endblock %} diff --git a/bookwyrm/templates/snippets/goal_form.html b/bookwyrm/templates/snippets/goal_form.html index cf5d21f26..30ea18392 100644 --- a/bookwyrm/templates/snippets/goal_form.html +++ b/bookwyrm/templates/snippets/goal_form.html @@ -29,7 +29,8 @@

{% if goal %} - {% include 'snippets/toggle/close_button.html' with text="Cancel" controls_text="show-edit-goal" %} + {% trans "Cancel" as button_text %} + {% include 'snippets/toggle/close_button.html' with text=button_text controls_text="show-edit-goal" %} {% endif %}

diff --git a/bookwyrm/templates/snippets/goal_progress.html b/bookwyrm/templates/snippets/goal_progress.html index 2fa0da54e..2d46181ef 100644 --- a/bookwyrm/templates/snippets/goal_progress.html +++ b/bookwyrm/templates/snippets/goal_progress.html @@ -4,9 +4,13 @@ {% if goal.progress_percent >= 100 %} {% trans "Success!" %} {% elif goal.progress_percent %} - {% blocktrans with percent=goal.percent %}{{ percent }}% complete!{% endblocktrans %} + {% blocktrans with percent=goal.progress_percent %}{{ percent }}% complete!{% endblocktrans %} + {% endif %} + {% if goal.user == request.user %} + {% blocktrans with read_count=goal.book_count|intcomma goal_count=goal.goal|intcomma path=goal.local_path %}You've read {{ read_count }} of {{ goal_count}} books.{% endblocktrans %} + {% else %} + {% blocktrans with username=goal.user.display_name read_count=goal.book_count|intcomma goal_count=goal.goal|intcomma path=goal.local_path %}{{ username }} has read {{ read_count }} of {{ goal_count}} books.{% endblocktrans %} {% endif %} - {% if goal.user == request.user %}You've{% else %}{{ goal.user.display_name }} has{% endif %} read {% if request.path != goal.local_path %}{% endif %}{{ goal.book_count }} of {{ goal.goal | intcomma }} books{% if request.path != goal.local_path %}{% endif %}.

diff --git a/bookwyrm/templates/snippets/readthrough.html b/bookwyrm/templates/snippets/readthrough.html index de85635e4..edac21cfe 100644 --- a/bookwyrm/templates/snippets/readthrough.html +++ b/bookwyrm/templates/snippets/readthrough.html @@ -11,7 +11,8 @@
  • {% if readthrough.finish_date %} {{ readthrough.finish_date | naturalday }}: {% trans "finished" %} {% else %}{% if readthrough.progress_mode == 'PG' %}on page {{ readthrough.progress }}{% if book.pages %} of {{ book.pages }}{% endif %} {% else %}{{ readthrough.progress }}%{% endif %}{% endif %} {% if readthrough.progress %} - {% include 'snippets/toggle/toggle_button.html' with text="Show all updates" controls_text="updates" controls_uid=readthrough.id class="is-small" %} + {% trans "Show all updates" as button_text %} + {% include 'snippets/toggle/toggle_button.html' with text=button_text controls_text="updates" controls_uid=readthrough.id class="is-small" %}
  • diff --git a/bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html b/bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html index 896c80162..ca65bf06c 100644 --- a/bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html +++ b/bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html @@ -40,7 +40,8 @@
    - {% include 'snippets/toggle/close_button.html' with text="Cancel" controls_text="finish-reading" controls_uid=uuid %} + {% trans "Cancel" as button_text %} + {% include 'snippets/toggle/close_button.html' with text=button_text controls_text="finish-reading" controls_uid=uuid %}
    {% endblock %} diff --git a/bookwyrm/templates/snippets/shelve_button/shelve_button_options.html b/bookwyrm/templates/snippets/shelve_button/shelve_button_options.html index a1ef2c329..d6fdb13bc 100644 --- a/bookwyrm/templates/snippets/shelve_button/shelve_button_options.html +++ b/bookwyrm/templates/snippets/shelve_button/shelve_button_options.html @@ -5,13 +5,16 @@ {% if dropdown %}
  • {% endif %}
    - {% include 'snippets/toggle/toggle_button.html' with text="Cancel" controls_text="start-reading" controls_uid=uuid %} + {% trans "Cancel" as button_text %} + {% include 'snippets/toggle/toggle_button.html' with text=button_text controls_text="start-reading" controls_uid=uuid %}
  • {% endblock %} diff --git a/bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html b/bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html index 179e004e4..d7c378977 100644 --- a/bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html +++ b/bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html @@ -25,7 +25,8 @@ - {% include 'snippets/toggle/toggle_button.html' with text="Cancel" controls_text="want-to-read" controls_uid=uuid %} + {% trans "Cancel" as button_text %} + {% include 'snippets/toggle/toggle_button.html' with text=button_text controls_text="want-to-read" controls_uid=uuid %}
    {% endblock %} diff --git a/bookwyrm/templates/snippets/status/status_body.html b/bookwyrm/templates/snippets/status/status_body.html index 1bf0d3c70..8d6c21ed9 100644 --- a/bookwyrm/templates/snippets/status/status_body.html +++ b/bookwyrm/templates/snippets/status/status_body.html @@ -21,7 +21,8 @@ {% if request.user.is_authenticated %}
    - {% include 'snippets/toggle/toggle_button.html' with controls_text="show-comment" controls_uid=status.id text="Reply" icon="comment" class="is-small toggle-button" focus="id_content_reply" %} + {% trans "Reply" as button_text %} + {% include 'snippets/toggle/toggle_button.html' with controls_text="show-comment" controls_uid=status.id text=button_text icon="comment" class="is-small toggle-button" focus="id_content_reply" %}
    {% include 'snippets/boost_button.html' with status=status %} diff --git a/bookwyrm/templates/snippets/status/status_content.html b/bookwyrm/templates/snippets/status/status_content.html index b48566b0f..bdbf3cfcc 100644 --- a/bookwyrm/templates/snippets/status/status_content.html +++ b/bookwyrm/templates/snippets/status/status_content.html @@ -13,13 +13,15 @@ {% if status.content_warning %}

    {{ status.content_warning }}

    - {% include 'snippets/toggle/open_button.html' with text="show more" class="is-small" controls_text="show-status-cw" controls_uid=status.id %} + {% trans "Show more" as button_text %} + {% include 'snippets/toggle/open_button.html' with text=button_text class="is-small" controls_text="show-status-cw" controls_uid=status.id %}
    {% endif %}
    @@ -49,7 +51,8 @@
    {% if is_self %}
    - {% include 'snippets/toggle/open_button.html' with text="Edit shelf" icon="pencil" controls_text="edit-shelf-form" focus="edit-shelf-form-header" %} + {% trans "Edit shelf" as button_text %} + {% include 'snippets/toggle/open_button.html' with text=button_text icon="pencil" controls_text="edit-shelf-form" focus="edit-shelf-form-header" %}
    {% endif %} diff --git a/bookwyrm/templates/user/user.html b/bookwyrm/templates/user/user.html index bcab8d84f..5dd24caee 100644 --- a/bookwyrm/templates/user/user.html +++ b/bookwyrm/templates/user/user.html @@ -1,10 +1,12 @@ {% extends 'user/user_layout.html' %} {% load i18n %} +{% block title %}{{ user.name }}{% endblock %} + {% block header %}
    -

    {% trans "User profile" %}

    +

    {% trans "User Profile" %}

    {% if is_self %}
    diff --git a/bookwyrm/templates/user/user_layout.html b/bookwyrm/templates/user/user_layout.html index c8eea4128..bc7fe126e 100644 --- a/bookwyrm/templates/user/user_layout.html +++ b/bookwyrm/templates/user/user_layout.html @@ -3,6 +3,8 @@ {% load humanize %} {% load bookwyrm_tags %} +{% block title %}{{ user.display_name }}{% endblock %} + {% block content %}
    {% block header %}{% endblock %} diff --git a/bookwyrm/templates/user/user_preview.html b/bookwyrm/templates/user/user_preview.html index 3158ff54e..c641c58fb 100644 --- a/bookwyrm/templates/user/user_preview.html +++ b/bookwyrm/templates/user/user_preview.html @@ -12,8 +12,8 @@

    {{ user.username }}

    {% blocktrans with date=user.created_date|naturaltime %}Joined {{ date }}{% endblocktrans %}

    - {{ user.followers.count }} follower{{ user.followers.count | pluralize }}, - {{ user.following.count }} following + {% blocktrans count counter=user.followers.count %}{{ counter }} follower{% plural %}{{ counter }} followers{% endblocktrans %}, + {% blocktrans with counter=user.following.count %}{{ counter }} following{% endblocktrans %}

    diff --git a/bookwyrm/views/authentication.py b/bookwyrm/views/authentication.py index a74febca5..13c9ce49e 100644 --- a/bookwyrm/views/authentication.py +++ b/bookwyrm/views/authentication.py @@ -6,6 +6,7 @@ from django.shortcuts import get_object_or_404, redirect from django.template.response import TemplateResponse from django.utils import timezone from django.utils.decorators import method_decorator +from django.views.decorators.csrf import csrf_exempt from django.views import View from bookwyrm import forms, models @@ -13,6 +14,7 @@ from bookwyrm.settings import DOMAIN # pylint: disable= no-self-use +@method_decorator(csrf_exempt, name='dispatch') class Login(View): ''' authenticate an existing user ''' def get(self, request): @@ -21,7 +23,6 @@ class Login(View): return redirect('/') # sene user to the login page data = { - 'title': 'Login', 'login_form': forms.LoginForm(), 'register_form': forms.RegisterForm(), } @@ -29,6 +30,8 @@ class Login(View): def post(self, request): ''' authentication action ''' + if request.user.is_authenticated: + return redirect('/') login_form = forms.LoginForm(request.POST) localname = login_form.data['localname'] diff --git a/bookwyrm/views/author.py b/bookwyrm/views/author.py index a1a37cc53..356c95ffd 100644 --- a/bookwyrm/views/author.py +++ b/bookwyrm/views/author.py @@ -24,7 +24,6 @@ class Author(View): books = models.Work.objects.filter( Q(authors=author) | Q(editions__authors=author)).distinct() data = { - 'title': author.name, 'author': author, 'books': [b.get_default_edition() for b in books], } @@ -41,7 +40,6 @@ class EditAuthor(View): ''' info about a book ''' author = get_object_or_404(models.Author, id=author_id) data = { - 'title': 'Edit Author', 'author': author, 'form': forms.AuthorForm(instance=author) } @@ -54,7 +52,6 @@ class EditAuthor(View): form = forms.AuthorForm(request.POST, request.FILES, instance=author) if not form.is_valid(): data = { - 'title': 'Edit Author', 'author': author, 'form': form } diff --git a/bookwyrm/views/block.py b/bookwyrm/views/block.py index cb14aae38..90e5033b5 100644 --- a/bookwyrm/views/block.py +++ b/bookwyrm/views/block.py @@ -15,8 +15,7 @@ class Block(View): ''' blocking users ''' def get(self, request): ''' list of blocked users? ''' - return TemplateResponse( - request, 'preferences/blocks.html', {'title': 'Blocked Users'}) + return TemplateResponse(request, 'preferences/blocks.html') def post(self, request, user_id): ''' block a user ''' diff --git a/bookwyrm/views/books.py b/bookwyrm/views/books.py index 6d55676cc..4d6afba96 100644 --- a/bookwyrm/views/books.py +++ b/bookwyrm/views/books.py @@ -82,7 +82,6 @@ class Book(View): ) data = { - 'title': book.title, 'book': book, 'reviews': reviews_page, 'review_count': reviews.count(), @@ -113,7 +112,6 @@ class EditBook(View): if not book.description: book.description = book.parent_work.description data = { - 'title': 'Edit Book', 'book': book, 'form': forms.EditionForm(instance=book) } @@ -126,7 +124,6 @@ class EditBook(View): form = forms.EditionForm(request.POST, request.FILES, instance=book) if not form.is_valid(): data = { - 'title': 'Edit Book', 'book': book, 'form': form } @@ -146,7 +143,6 @@ class Editions(View): return ActivitypubResponse(work.to_edition_list(**request.GET)) data = { - 'title': 'Editions of %s' % work.title, 'editions': work.editions.order_by('-edition_rank').all(), 'work': work, } diff --git a/bookwyrm/views/error.py b/bookwyrm/views/error.py index 9eabe29fa..82999d6ed 100644 --- a/bookwyrm/views/error.py +++ b/bookwyrm/views/error.py @@ -3,11 +3,9 @@ from django.template.response import TemplateResponse def server_error_page(request): ''' 500 errors ''' - return TemplateResponse( - request, 'error.html', {'title': 'Oops!'}, status=500) + return TemplateResponse(request, 'error.html', status=500) def not_found_page(request, _): ''' 404s ''' - return TemplateResponse( - request, 'notfound.html', {'title': 'Not found'}, status=404) + return TemplateResponse(request, 'notfound.html', status=404) diff --git a/bookwyrm/views/federation.py b/bookwyrm/views/federation.py index 0bd14dab3..62ae076cd 100644 --- a/bookwyrm/views/federation.py +++ b/bookwyrm/views/federation.py @@ -17,8 +17,5 @@ class Federation(View): def get(self, request): ''' edit form ''' servers = models.FederatedServer.objects.all() - data = { - 'title': 'Federated Servers', - 'servers': servers - } + data = {'servers': servers} return TemplateResponse(request, 'settings/federation.html', data) diff --git a/bookwyrm/views/feed.py b/bookwyrm/views/feed.py index 3a2805b4f..5300c762a 100644 --- a/bookwyrm/views/feed.py +++ b/bookwyrm/views/feed.py @@ -38,7 +38,6 @@ class Feed(View): paginated = Paginator(activities, PAGE_LENGTH) data = {**feed_page_data(request.user), **{ - 'title': 'Updates Feed', 'user': request.user, 'activities': paginated.page(page), 'tab': tab, @@ -75,7 +74,6 @@ class DirectMessage(View): paginated = Paginator(activities, PAGE_LENGTH) activity_page = paginated.page(page) data = {**feed_page_data(request.user), **{ - 'title': 'Direct Messages', 'user': request.user, 'partner': user, 'activities': activity_page, @@ -108,7 +106,6 @@ class Status(View): status.to_activity(pure=not is_bookwyrm_request(request))) data = {**feed_page_data(request.user), **{ - 'title': 'Status by %s' % user.username, 'status': status, }} return TemplateResponse(request, 'feed/status.html', data) diff --git a/bookwyrm/views/goal.py b/bookwyrm/views/goal.py index 97f139136..7da9e4343 100644 --- a/bookwyrm/views/goal.py +++ b/bookwyrm/views/goal.py @@ -30,7 +30,6 @@ class Goal(View): return HttpResponseNotFound() data = { - 'title': '%s\'s %d Reading' % (user.display_name, year), 'goal_form': forms.GoalForm(instance=goal), 'goal': goal, 'user': user, @@ -53,7 +52,6 @@ class Goal(View): form = forms.GoalForm(request.POST, instance=goal) if not form.is_valid(): data = { - 'title': '%s\'s %d Reading' % (request.user.display_name, year), 'goal_form': form, 'goal': goal, 'year': year, diff --git a/bookwyrm/views/import_data.py b/bookwyrm/views/import_data.py index 675cae3d1..cf33163ab 100644 --- a/bookwyrm/views/import_data.py +++ b/bookwyrm/views/import_data.py @@ -19,7 +19,6 @@ class Import(View): def get(self, request): ''' load import page ''' return TemplateResponse(request, 'import.html', { - 'title': 'Import Books', 'import_form': forms.ImportForm(), 'jobs': models.ImportJob. objects.filter(user=request.user).order_by('-created_date'), @@ -71,7 +70,6 @@ class ImportStatus(View): failed_items = [i for i in items if i.fail_reason] items = [i for i in items if not i.fail_reason] return TemplateResponse(request, 'import_status.html', { - 'title': 'Import Status', 'job': job, 'items': items, 'failed_items': failed_items, diff --git a/bookwyrm/views/invite.py b/bookwyrm/views/invite.py index 6b3611fc1..750a5c2b9 100644 --- a/bookwyrm/views/invite.py +++ b/bookwyrm/views/invite.py @@ -30,7 +30,6 @@ class ManageInvites(View): ).order_by('-created_date'), PAGE_LENGTH) data = { - 'title': 'Invitations', 'invites': paginated.page(page), 'form': forms.CreateInviteForm(), } @@ -50,7 +49,6 @@ class ManageInvites(View): user=request.user ).order_by('-created_date'), PAGE_LENGTH) data = { - 'title': 'Invitations', 'invites': paginated.page(1), 'form': form } @@ -66,7 +64,6 @@ class Invite(View): invite = get_object_or_404(models.SiteInvite, code=code) data = { - 'title': 'Join', 'register_form': forms.RegisterForm(), 'invite': invite, 'valid': invite.valid() if invite else True, diff --git a/bookwyrm/views/landing.py b/bookwyrm/views/landing.py index 2774e7428..94b27b8fc 100644 --- a/bookwyrm/views/landing.py +++ b/bookwyrm/views/landing.py @@ -12,10 +12,7 @@ class About(View): ''' create invites ''' def get(self, request): ''' more information about the instance ''' - data = { - 'title': 'About', - } - return TemplateResponse(request, 'discover/about.html', data) + return TemplateResponse(request, 'discover/about.html') class Home(View): ''' discover page or home feed depending on auth ''' @@ -43,7 +40,6 @@ class Discover(View): ).order_by('-review__published_date__max')[:6] data = { - 'title': 'Discover', 'register_form': forms.RegisterForm(), 'books': list(set(books)), } diff --git a/bookwyrm/views/list.py b/bookwyrm/views/list.py index e7b70a286..b1741b117 100644 --- a/bookwyrm/views/list.py +++ b/bookwyrm/views/list.py @@ -40,7 +40,6 @@ class Lists(View): paginated = Paginator(lists, 12) data = { - 'title': 'Lists', 'lists': paginated.page(page), 'list_form': forms.ListForm(), 'path': '/list', @@ -72,7 +71,6 @@ class UserLists(View): paginated = Paginator(lists, 12) data = { - 'title': '%s: Lists' % user.name, 'user': user, 'is_self': request.user.id == user.id, 'lists': paginated.page(page), @@ -114,7 +112,6 @@ class List(View): data = { - 'title': '%s | Lists' % book_list.name, 'list': book_list, 'items': book_list.listitem_set.filter(approved=True), 'pending_count': book_list.listitem_set.filter( @@ -149,7 +146,6 @@ class Curate(View): return HttpResponseNotFound() data = { - 'title': 'Curate "%s" | Lists' % book_list.name, 'list': book_list, 'pending': book_list.listitem_set.filter(approved=False), 'list_form': forms.ListForm(instance=book_list), diff --git a/bookwyrm/views/notifications.py b/bookwyrm/views/notifications.py index 7d6a31495..684154e4c 100644 --- a/bookwyrm/views/notifications.py +++ b/bookwyrm/views/notifications.py @@ -16,7 +16,6 @@ class Notifications(View): .order_by('-created_date') unread = [n.id for n in notifications.filter(read=False)] data = { - 'title': 'Notifications', 'notifications': notifications, 'unread': unread, } diff --git a/bookwyrm/views/password.py b/bookwyrm/views/password.py index 6602a2701..792da2d78 100644 --- a/bookwyrm/views/password.py +++ b/bookwyrm/views/password.py @@ -19,7 +19,6 @@ class PasswordResetRequest(View): return TemplateResponse( request, 'password_reset_request.html', - {'title': 'Reset Password'} ) def post(self, request): @@ -53,11 +52,7 @@ class PasswordReset(View): except models.PasswordReset.DoesNotExist: raise PermissionDenied - return TemplateResponse( - request, - 'password_reset.html', - {'title': 'Reset Password', 'code': reset_code.code} - ) + return TemplateResponse(request, 'password_reset.html') def post(self, request, code): ''' allow a user to change their password through an emailed token ''' @@ -90,10 +85,7 @@ class ChangePassword(View): ''' change password as logged in user ''' def get(self, request): ''' change password page ''' - data = { - 'title': 'Change Password', - 'user': request.user, - } + data = {'user': request.user} return TemplateResponse( request, 'preferences/change_password.html', data) diff --git a/bookwyrm/views/search.py b/bookwyrm/views/search.py index 8acb28363..b44c49f81 100644 --- a/bookwyrm/views/search.py +++ b/bookwyrm/views/search.py @@ -58,7 +58,6 @@ class Search(View): book_results = connector_manager.search( query, min_confidence=min_confidence) data = { - 'title': 'Search Results', 'book_results': book_results, 'user_results': user_results, 'list_results': list_results, diff --git a/bookwyrm/views/shelf.py b/bookwyrm/views/shelf.py index 70d3d1dea..867c7d91c 100644 --- a/bookwyrm/views/shelf.py +++ b/bookwyrm/views/shelf.py @@ -53,7 +53,6 @@ class Shelf(View): ).order_by('-updated_date').all() data = { - 'title': '%s\'s %s shelf' % (user.display_name, shelf.name), 'user': user, 'is_self': is_self, 'shelves': shelves.all(), diff --git a/bookwyrm/views/site.py b/bookwyrm/views/site.py index 0a5e270b9..e60354a32 100644 --- a/bookwyrm/views/site.py +++ b/bookwyrm/views/site.py @@ -19,10 +19,7 @@ class Site(View): def get(self, request): ''' edit form ''' site = models.SiteSettings.objects.get() - data = { - 'title': 'Site Settings', - 'site_form': forms.SiteForm(instance=site) - } + data = {'site_form': forms.SiteForm(instance=site)} return TemplateResponse(request, 'settings/site.html', data) def post(self, request): @@ -30,10 +27,7 @@ class Site(View): site = models.SiteSettings.objects.get() form = forms.SiteForm(request.POST, instance=site) if not form.is_valid(): - data = { - 'title': 'Site Settings', - 'site_form': form - } + data = {'site_form': form} return TemplateResponse(request, 'settings/site.html', data) form.save() diff --git a/bookwyrm/views/tag.py b/bookwyrm/views/tag.py index 502f5ea53..e106e8dce 100644 --- a/bookwyrm/views/tag.py +++ b/bookwyrm/views/tag.py @@ -25,7 +25,6 @@ class Tag(View): usertag__tag__identifier=tag_id ).distinct() data = { - 'title': tag_obj.name, 'books': books, 'tag': tag_obj, } diff --git a/bookwyrm/views/user.py b/bookwyrm/views/user.py index a218375fd..f3a088c13 100644 --- a/bookwyrm/views/user.py +++ b/bookwyrm/views/user.py @@ -79,7 +79,6 @@ class User(View): if not object_visible_to_user(request.user, goal): goal = None data = { - 'title': user.name, 'user': user, 'is_self': is_self, 'shelves': shelf_preview, @@ -108,7 +107,6 @@ class Followers(View): user.to_followers_activity(**request.GET)) data = { - 'title': '%s: followers' % user.name, 'user': user, 'is_self': request.user.id == user.id, 'followers': user.followers.all(), @@ -133,7 +131,6 @@ class Following(View): user.to_following_activity(**request.GET)) data = { - 'title': '%s: following' % user.name, 'user': user, 'is_self': request.user.id == user.id, 'following': user.following.all(), @@ -147,7 +144,6 @@ class EditUser(View): def get(self, request): ''' edit profile page for a user ''' data = { - 'title': 'Edit profile', 'form': forms.EditUserForm(instance=request.user), 'user': request.user, } diff --git a/bw-dev b/bw-dev index 27dbc4c37..7a003d018 100755 --- a/bw-dev +++ b/bw-dev @@ -91,10 +91,10 @@ case "$CMD" in execweb python manage.py collectstatic --no-input ;; makemessages) - django-admin makemessages --extension html --ignore=venv3 $@ + execweb django-admin makemessages --extension html --ignore=venv3 $@ ;; compilemessages) - django-admin compilemessages --ignore venv3 $@ + execweb django-admin compilemessages --ignore venv3 $@ ;; build) docker-compose build diff --git a/locale/en_US/LC_MESSAGES/django.po b/locale/en_US/LC_MESSAGES/django.po index 4d140e521..851758132 100644 --- a/locale/en_US/LC_MESSAGES/django.po +++ b/locale/en_US/LC_MESSAGES/django.po @@ -1,119 +1,150 @@ -# English language text for the bookwyrm UI +# Stub English-language trnaslation file # Copyright (C) 2021 Mouse Reeve -# This file is distributed under the same license as the bookwyrm package. +# This file is distributed under the same license as the BookWyrm package. # Mouse Reeve , 2021 # #, fuzzy msgid "" msgstr "" -"Project-Id-Version: 0.1.1\n" +"Project-Id-Version: 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-28 08:42-0800\n" -"PO-Revision-Date: 2021-02-27 13:50+PST\n" +"POT-Creation-Date: 2021-03-01 09:32-0800\n" +"PO-Revision-Date: 2021-02-28 17:19-0800\n" "Last-Translator: Mouse Reeve \n" -"Language-Team: Mouse Reeve \n" -"Language: English \n" +"Language-Team: English \n" +"Language: English\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: bookwyrm/templates/author.html:13 bookwyrm/templates/author.html:14 +#: bookwyrm/templates/author.html:16 bookwyrm/templates/author.html:17 +#: bookwyrm/templates/edit_author.html:5 msgid "Edit Author" msgstr "" -#: bookwyrm/templates/author.html:29 +#: bookwyrm/templates/author.html:32 msgid "Wikipedia" msgstr "" -#: bookwyrm/templates/author.html:34 +#: bookwyrm/templates/author.html:37 #, python-format msgid "Books by %(name)s" msgstr "" -#: bookwyrm/templates/book.html:27 bookwyrm/templates/book.html:28 +#: bookwyrm/templates/book.html:29 bookwyrm/templates/book.html:30 +#: bookwyrm/templates/edit_book.html:5 msgid "Edit Book" msgstr "" -#: bookwyrm/templates/book.html:43 +#: bookwyrm/templates/book.html:45 msgid "Add cover" msgstr "" -#: bookwyrm/templates/book.html:49 bookwyrm/templates/lists/list.html:89 +#: bookwyrm/templates/book.html:51 bookwyrm/templates/lists/list.html:89 msgid "Add" msgstr "" -#: bookwyrm/templates/book.html:58 +#: bookwyrm/templates/book.html:60 msgid "ISBN:" msgstr "" -#: bookwyrm/templates/book.html:65 bookwyrm/templates/edit_book.html:104 +#: bookwyrm/templates/book.html:67 bookwyrm/templates/edit_book.html:107 msgid "OCLC Number:" msgstr "" -#: bookwyrm/templates/book.html:72 bookwyrm/templates/edit_book.html:108 +#: bookwyrm/templates/book.html:74 bookwyrm/templates/edit_book.html:111 msgid "ASIN:" msgstr "" -#: bookwyrm/templates/book.html:84 +#: bookwyrm/templates/book.html:86 msgid "View on OpenLibrary" msgstr "" -#: bookwyrm/templates/book.html:102 bookwyrm/templates/edit_book.html:36 +#: bookwyrm/templates/book.html:98 +msgid "Add Description" +msgstr "" + +#: bookwyrm/templates/book.html:105 bookwyrm/templates/edit_book.html:39 #: bookwyrm/templates/lists/form.html:12 msgid "Description:" msgstr "" -#: bookwyrm/templates/book.html:106 bookwyrm/templates/edit_author.html:75 -#: bookwyrm/templates/edit_book.html:117 bookwyrm/templates/lists/form.html:42 -#: bookwyrm/templates/preferences/edit_user.html:47 -#: bookwyrm/templates/settings/site.html:86 +#: bookwyrm/templates/book.html:109 bookwyrm/templates/edit_author.html:78 +#: bookwyrm/templates/edit_book.html:120 bookwyrm/templates/lists/form.html:42 +#: bookwyrm/templates/preferences/edit_user.html:50 +#: bookwyrm/templates/settings/site.html:89 #: bookwyrm/templates/snippets/progress_update.html:21 -#: bookwyrm/templates/snippets/readthrough.html:61 +#: bookwyrm/templates/snippets/readthrough.html:64 #: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:42 #: bookwyrm/templates/snippets/shelve_button/start_reading_modal.html:34 msgid "Save" msgstr "" -#: bookwyrm/templates/book.html:138 +#: bookwyrm/templates/book.html:110 bookwyrm/templates/book.html:159 +#: bookwyrm/templates/edit_author.html:79 bookwyrm/templates/edit_book.html:121 +#: bookwyrm/templates/snippets/delete_readthrough_modal.html:17 +#: bookwyrm/templates/snippets/goal_form.html:32 +#: bookwyrm/templates/snippets/readthrough.html:65 +#: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:43 +#: bookwyrm/templates/snippets/shelve_button/start_reading_modal.html:35 +#: bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html:28 +msgid "Cancel" +msgstr "" + +#: bookwyrm/templates/book.html:142 msgid "Your reading activity" msgstr "" #: bookwyrm/templates/book.html:144 +msgid "Add read dates" +msgstr "" + +#: bookwyrm/templates/book.html:149 msgid "You don't have any reading activity for this book." msgstr "" -#: bookwyrm/templates/book.html:151 +#: bookwyrm/templates/book.html:156 msgid "Create" msgstr "" -#: bookwyrm/templates/book.html:172 +#: bookwyrm/templates/book.html:178 msgid "Tags" msgstr "" -#: bookwyrm/templates/book.html:176 bookwyrm/templates/snippets/tag.html:18 +#: bookwyrm/templates/book.html:182 bookwyrm/templates/snippets/tag.html:18 msgid "Add tag" msgstr "" -#: bookwyrm/templates/book.html:193 +#: bookwyrm/templates/book.html:199 msgid "Subjects" msgstr "" -#: bookwyrm/templates/book.html:204 +#: bookwyrm/templates/book.html:210 msgid "Places" msgstr "" -#: bookwyrm/templates/book.html:215 bookwyrm/templates/layout.html:64 -#: bookwyrm/templates/lists/lists.html:6 -#: bookwyrm/templates/search_results.html:85 -#: bookwyrm/templates/user/user_layout.html:60 +#: bookwyrm/templates/book.html:221 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/user/user_layout.html:62 msgid "Lists" msgstr "" -#: bookwyrm/templates/book.html:244 +#: bookwyrm/templates/book.html:250 msgid "rated it" msgstr "" +#: bookwyrm/templates/components/inline_form.html:8 +#: bookwyrm/templates/feed/feed_layout.html:51 +msgid "Close" +msgstr "" + +#: bookwyrm/templates/discover/about.html:7 +#, python-format +msgid "About %(site_name)s" +msgstr "" + #: bookwyrm/templates/discover/about.html:10 #: bookwyrm/templates/discover/about.html:20 msgid "Code of Conduct" @@ -128,162 +159,180 @@ msgstr "" msgid "Recent Books" msgstr "" -#: bookwyrm/templates/discover/landing_layout.html:15 +#: bookwyrm/templates/discover/landing_layout.html:5 +msgid "Welcome" +msgstr "" + +#: bookwyrm/templates/discover/landing_layout.html:17 msgid "Decentralized" msgstr "" -#: bookwyrm/templates/discover/landing_layout.html:21 +#: bookwyrm/templates/discover/landing_layout.html:23 msgid "Friendly" msgstr "" -#: bookwyrm/templates/discover/landing_layout.html:27 +#: bookwyrm/templates/discover/landing_layout.html:29 msgid "Anti-Corporate" msgstr "" -#: bookwyrm/templates/discover/landing_layout.html:42 +#: bookwyrm/templates/discover/landing_layout.html:44 #, python-format msgid "Join %(name)s" msgstr "" -#: bookwyrm/templates/discover/landing_layout.html:47 -#: bookwyrm/templates/login.html:46 +#: bookwyrm/templates/discover/landing_layout.html:49 +#: bookwyrm/templates/login.html:48 msgid "This instance is closed" msgstr "" -#: bookwyrm/templates/discover/landing_layout.html:53 +#: bookwyrm/templates/discover/landing_layout.html:55 msgid "Your Account" msgstr "" -#: bookwyrm/templates/edit_author.html:10 bookwyrm/templates/edit_book.html:10 +#: bookwyrm/templates/edit_author.html:13 bookwyrm/templates/edit_book.html:13 msgid "Added:" msgstr "" -#: bookwyrm/templates/edit_author.html:11 bookwyrm/templates/edit_book.html:11 +#: bookwyrm/templates/edit_author.html:14 bookwyrm/templates/edit_book.html:14 msgid "Updated:" msgstr "" -#: bookwyrm/templates/edit_author.html:12 bookwyrm/templates/edit_book.html:12 +#: bookwyrm/templates/edit_author.html:15 bookwyrm/templates/edit_book.html:15 msgid "Last edited by:" msgstr "" -#: bookwyrm/templates/edit_author.html:28 bookwyrm/templates/edit_book.html:27 +#: bookwyrm/templates/edit_author.html:31 bookwyrm/templates/edit_book.html:30 msgid "Metadata" msgstr "" -#: bookwyrm/templates/edit_author.html:29 bookwyrm/templates/lists/form.html:8 +#: bookwyrm/templates/edit_author.html:32 bookwyrm/templates/lists/form.html:8 #: bookwyrm/templates/user/create_shelf_form.html:13 #: bookwyrm/templates/user/edit_shelf_form.html:14 msgid "Name:" msgstr "" -#: bookwyrm/templates/edit_author.html:34 +#: bookwyrm/templates/edit_author.html:37 msgid "Bio:" msgstr "" -#: bookwyrm/templates/edit_author.html:39 +#: bookwyrm/templates/edit_author.html:42 msgid "Wikipedia link:" msgstr "" -#: bookwyrm/templates/edit_author.html:44 +#: bookwyrm/templates/edit_author.html:47 msgid "Birth date:" msgstr "" -#: bookwyrm/templates/edit_author.html:49 +#: bookwyrm/templates/edit_author.html:52 msgid "Death date:" msgstr "" -#: bookwyrm/templates/edit_author.html:55 +#: bookwyrm/templates/edit_author.html:58 msgid "Author Identifiers" msgstr "" -#: bookwyrm/templates/edit_author.html:56 bookwyrm/templates/edit_book.html:100 +#: bookwyrm/templates/edit_author.html:59 bookwyrm/templates/edit_book.html:103 msgid "Openlibrary key:" msgstr "" -#: bookwyrm/templates/edit_author.html:61 +#: bookwyrm/templates/edit_author.html:64 msgid "Librarything key:" msgstr "" -#: bookwyrm/templates/edit_author.html:66 +#: bookwyrm/templates/edit_author.html:69 msgid "Goodreads key:" msgstr "" -#: bookwyrm/templates/edit_author.html:76 bookwyrm/templates/edit_book.html:118 -msgid "Cancel" -msgstr "" - -#: bookwyrm/templates/edit_book.html:28 -#: bookwyrm/templates/snippets/create_status_form.html:10 +#: bookwyrm/templates/edit_book.html:31 msgid "Title:" msgstr "" -#: bookwyrm/templates/edit_book.html:32 +#: bookwyrm/templates/edit_book.html:35 msgid "Subtitle:" msgstr "" -#: bookwyrm/templates/edit_book.html:40 +#: bookwyrm/templates/edit_book.html:43 msgid "Series:" msgstr "" -#: bookwyrm/templates/edit_book.html:44 +#: bookwyrm/templates/edit_book.html:47 msgid "Series number:" msgstr "" -#: bookwyrm/templates/edit_book.html:48 +#: bookwyrm/templates/edit_book.html:51 msgid "First published date:" msgstr "" -#: bookwyrm/templates/edit_book.html:52 +#: bookwyrm/templates/edit_book.html:55 msgid "Published date:" msgstr "" -#: bookwyrm/templates/edit_book.html:65 +#: bookwyrm/templates/edit_book.html:68 #: bookwyrm/templates/snippets/shelf.html:9 msgid "Cover" msgstr "" -#: bookwyrm/templates/edit_book.html:75 +#: bookwyrm/templates/edit_book.html:78 msgid "Physical Properties" msgstr "" -#: bookwyrm/templates/edit_book.html:76 +#: bookwyrm/templates/edit_book.html:79 msgid "Format:" msgstr "" -#: bookwyrm/templates/edit_book.html:84 +#: bookwyrm/templates/edit_book.html:87 msgid "Pages:" msgstr "" -#: bookwyrm/templates/edit_book.html:91 +#: bookwyrm/templates/edit_book.html:94 msgid "Book Identifiers" msgstr "" -#: bookwyrm/templates/edit_book.html:92 +#: bookwyrm/templates/edit_book.html:95 msgid "ISBN 13:" msgstr "" -#: bookwyrm/templates/edit_book.html:96 +#: bookwyrm/templates/edit_book.html:99 msgid "ISBN 10:" msgstr "" -#: bookwyrm/templates/editions.html:6 +#: bookwyrm/templates/editions.html:5 +#, python-format +msgid "Editions of %(book_title)s" +msgstr "" + +#: bookwyrm/templates/editions.html:9 #, python-format msgid "Editions of \"%(work_title)s\"" msgstr "" -#: bookwyrm/templates/error.html:6 +#: bookwyrm/templates/error.html:4 +msgid "Oops!" +msgstr "" + +#: bookwyrm/templates/error.html:8 msgid "Server Error" msgstr "" -#: bookwyrm/templates/error.html:7 +#: bookwyrm/templates/error.html:9 msgid "Something went wrong! Sorry about that." msgstr "" -#: bookwyrm/templates/feed/direct_messages.html:7 +#: bookwyrm/templates/feed/direct_messages.html:8 +#, python-format +msgid "Direct Messages with %(username)s" +msgstr "" + +#: bookwyrm/templates/feed/direct_messages.html:10 +#: bookwyrm/templates/layout.html:79 +msgid "Direct Messages" +msgstr "" + +#: bookwyrm/templates/feed/direct_messages.html:13 msgid "All messages" msgstr "" -#: bookwyrm/templates/feed/direct_messages.html:16 +#: bookwyrm/templates/feed/direct_messages.html:22 msgid "You have no messages right now." msgstr "" @@ -313,21 +362,26 @@ msgid "" "There aren't any activities right now! Try following a user to get started" msgstr "" -#: bookwyrm/templates/feed/feed_layout.html:9 -msgid "Your books" +#: bookwyrm/templates/feed/feed_layout.html:5 +msgid "Updates" msgstr "" #: bookwyrm/templates/feed/feed_layout.html:11 +msgid "Your books" +msgstr "" + +#: bookwyrm/templates/feed/feed_layout.html:13 msgid "" "There are no books here right now! Try searching for a book to get started" msgstr "" -#: bookwyrm/templates/feed/feed_layout.html:68 +#: bookwyrm/templates/feed/feed_layout.html:73 bookwyrm/templates/goal.html:26 +#: bookwyrm/templates/snippets/goal_card.html:6 #, python-format msgid "%(year)s Reading Goal" msgstr "" -#: bookwyrm/templates/feed/status.html:7 +#: bookwyrm/templates/feed/status.html:8 msgid "Back" msgstr "" @@ -336,7 +390,11 @@ msgstr "" msgid "%(year)s Reading Progress" msgstr "" -#: bookwyrm/templates/goal.html:29 +#: bookwyrm/templates/goal.html:11 +msgid "Edit Goal" +msgstr "" + +#: bookwyrm/templates/goal.html:30 #: bookwyrm/templates/snippets/goal_card.html:13 #, python-format msgid "" @@ -344,110 +402,128 @@ msgid "" "your progress throughout the year." msgstr "" -#: bookwyrm/templates/goal.html:38 +#: bookwyrm/templates/goal.html:39 #, python-format msgid "%(name)s hasn't set a reading goal for %(year)s." msgstr "" -#: bookwyrm/templates/import.html:6 +#: bookwyrm/templates/goal.html:51 +#, python-format +msgid "Your %(year)s Books" +msgstr "" + +#: bookwyrm/templates/goal.html:53 +#, python-format +msgid "%(username)s's %(year)s Books" +msgstr "" + +#: bookwyrm/templates/import.html:5 bookwyrm/templates/import.html:9 +#: bookwyrm/templates/layout.html:94 msgid "Import Books" msgstr "" -#: bookwyrm/templates/import.html:11 +#: bookwyrm/templates/import.html:14 msgid "Data source" msgstr "" -#: bookwyrm/templates/import.html:29 +#: bookwyrm/templates/import.html:32 msgid "Include reviews" msgstr "" -#: bookwyrm/templates/import.html:34 +#: bookwyrm/templates/import.html:37 msgid "Privacy setting for imported reviews:" msgstr "" -#: bookwyrm/templates/import.html:38 +#: bookwyrm/templates/import.html:41 msgid "Import" msgstr "" -#: bookwyrm/templates/import.html:43 +#: bookwyrm/templates/import.html:46 msgid "Recent Imports" msgstr "" -#: bookwyrm/templates/import.html:45 +#: bookwyrm/templates/import.html:48 msgid "No recent imports" msgstr "" -#: bookwyrm/templates/import_status.html:7 +#: bookwyrm/templates/import_status.html:6 +#: bookwyrm/templates/import_status.html:10 msgid "Import Status" msgstr "" -#: bookwyrm/templates/import_status.html:10 +#: bookwyrm/templates/import_status.html:13 msgid "Import started:" msgstr "" -#: bookwyrm/templates/import_status.html:14 +#: bookwyrm/templates/import_status.html:17 msgid "Import completed:" msgstr "" -#: bookwyrm/templates/import_status.html:17 +#: bookwyrm/templates/import_status.html:20 msgid "TASK FAILED" msgstr "" -#: bookwyrm/templates/import_status.html:23 +#: bookwyrm/templates/import_status.html:26 msgid "Import still in progress." msgstr "" -#: bookwyrm/templates/import_status.html:25 +#: bookwyrm/templates/import_status.html:28 msgid "(Hit reload to update!)" msgstr "" -#: bookwyrm/templates/import_status.html:32 +#: bookwyrm/templates/import_status.html:35 msgid "Failed to load" msgstr "" -#: bookwyrm/templates/import_status.html:56 +#: bookwyrm/templates/import_status.html:59 msgid "Select all" msgstr "" -#: bookwyrm/templates/import_status.html:59 +#: bookwyrm/templates/import_status.html:62 msgid "Retry items" msgstr "" -#: bookwyrm/templates/import_status.html:81 +#: bookwyrm/templates/import_status.html:84 msgid "Successfully imported" msgstr "" -#: bookwyrm/templates/import_status.html:85 +#: bookwyrm/templates/import_status.html:88 #: bookwyrm/templates/lists/curate.html:14 msgid "Book" msgstr "" -#: bookwyrm/templates/import_status.html:88 +#: bookwyrm/templates/import_status.html:91 +#: bookwyrm/templates/snippets/create_status_form.html:10 #: bookwyrm/templates/snippets/shelf.html:10 msgid "Title" msgstr "" -#: bookwyrm/templates/import_status.html:91 +#: bookwyrm/templates/import_status.html:94 #: bookwyrm/templates/snippets/shelf.html:11 msgid "Author" msgstr "" -#: bookwyrm/templates/import_status.html:114 +#: bookwyrm/templates/import_status.html:117 msgid "Imported" msgstr "" -#: bookwyrm/templates/invite.html:9 bookwyrm/templates/login.html:41 +#: bookwyrm/templates/invite.html:4 bookwyrm/templates/invite.html:12 +#: bookwyrm/templates/login.html:43 msgid "Create an Account" msgstr "" -#: bookwyrm/templates/invite.html:18 +#: bookwyrm/templates/invite.html:21 msgid "Permission Denied" msgstr "" -#: bookwyrm/templates/invite.html:19 +#: bookwyrm/templates/invite.html:22 msgid "Sorry! This invite code is no longer valid." msgstr "" +#: bookwyrm/templates/layout.html:33 +msgid "Search for a book or user" +msgstr "" + #: bookwyrm/templates/layout.html:37 bookwyrm/templates/layout.html:38 #: bookwyrm/templates/lists/list.html:62 msgid "Search" @@ -465,19 +541,43 @@ msgstr "" msgid "Feed" msgstr "" +#: bookwyrm/templates/layout.html:84 +#: bookwyrm/templates/preferences/preferences_layout.html:14 +msgid "Profile" +msgstr "" + +#: bookwyrm/templates/layout.html:89 +msgid "Settings" +msgstr "" + +#: bookwyrm/templates/layout.html:103 +#: bookwyrm/templates/settings/admin_layout.html:19 +#: bookwyrm/templates/settings/manage_invites.html:3 +msgid "Invites" +msgstr "" + +#: bookwyrm/templates/layout.html:110 +msgid "Site Configuration" +msgstr "" + +#: bookwyrm/templates/layout.html:117 +msgid "Log out" +msgstr "" + #: bookwyrm/templates/layout.html:125 bookwyrm/templates/layout.html:126 -#: bookwyrm/templates/notifications.html:7 +#: bookwyrm/templates/notifications.html:6 +#: bookwyrm/templates/notifications.html:10 msgid "Notifications" msgstr "" #: bookwyrm/templates/layout.html:143 bookwyrm/templates/layout.html:147 -#: bookwyrm/templates/login.html:15 +#: bookwyrm/templates/login.html:17 #: bookwyrm/templates/snippets/register_form.html:4 msgid "Username:" msgstr "" -#: bookwyrm/templates/layout.html:152 bookwyrm/templates/login.html:8 -#: bookwyrm/templates/login.html:31 +#: bookwyrm/templates/layout.html:152 bookwyrm/templates/login.html:10 +#: bookwyrm/templates/login.html:33 msgid "Log in" msgstr "" @@ -489,7 +589,14 @@ msgstr "" msgid "Contact site admin" msgstr "" +#: bookwyrm/templates/layout.html:198 +msgid "" +"BookWyrm is open source software. You can contribute or report issues on GitHub." +msgstr "" + #: bookwyrm/templates/lists/create_form.html:5 +#: bookwyrm/templates/lists/lists.html:17 msgid "Create List" msgstr "" @@ -518,6 +625,7 @@ msgid "Discard" msgstr "" #: bookwyrm/templates/lists/edit_form.html:5 +#: bookwyrm/templates/lists/list_layout.html:17 msgid "Edit List" msgstr "" @@ -595,165 +703,262 @@ msgid "Suggest" msgstr "" #: bookwyrm/templates/lists/list_items.html:19 -#: bookwyrm/templates/lists/list_layout.html:9 +#: 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:9 +#: bookwyrm/templates/lists/list_layout.html:11 msgid "Created by" msgstr "" -#: bookwyrm/templates/lists/lists.html:11 +#: bookwyrm/templates/lists/lists.html:14 msgid "Your lists" msgstr "" -#: bookwyrm/templates/lists/lists.html:36 +#: bookwyrm/templates/lists/lists.html:40 msgid "Recent Lists" msgstr "" -#: bookwyrm/templates/login.html:21 bookwyrm/templates/password_reset.html:15 +#: bookwyrm/templates/login.html:4 +msgid "Login" +msgstr "" + +#: bookwyrm/templates/login.html:23 bookwyrm/templates/password_reset.html:17 #: bookwyrm/templates/snippets/register_form.html:22 msgid "Password:" msgstr "" -#: bookwyrm/templates/login.html:34 +#: bookwyrm/templates/login.html:36 msgid "Forgot your password?" msgstr "" -#: bookwyrm/templates/login.html:47 +#: bookwyrm/templates/login.html:49 msgid "Contact an administrator to get an invite" msgstr "" -#: bookwyrm/templates/login.html:57 +#: bookwyrm/templates/login.html:59 msgid "More about this site" msgstr "" -#: bookwyrm/templates/notfound.html:6 +#: bookwyrm/templates/notfound.html:4 bookwyrm/templates/notfound.html:8 msgid "Not Found" msgstr "" -#: bookwyrm/templates/notfound.html:7 +#: bookwyrm/templates/notfound.html:9 msgid "The page your requested doesn't seem to exist!" msgstr "" -#: bookwyrm/templates/notifications.html:11 +#: bookwyrm/templates/notifications.html:14 msgid "Delete notifications" msgstr "" -#: bookwyrm/templates/notifications.html:45 +#: bookwyrm/templates/notifications.html:49 #, python-format -msgid "favorited your %(preview_name)s" -msgstr "" - -#: bookwyrm/templates/notifications.html:48 -#, python-format -msgid "mentioned you in a %(preview_name)s" +msgid "" +"favorited your review of %(book_title)s" msgstr "" #: bookwyrm/templates/notifications.html:51 #, python-format msgid "" -"replied to your " -"%(preview_name)s" +"favorited your comment on %(book_title)s" msgstr "" -#: bookwyrm/templates/notifications.html:54 -msgid "followed you" +#: bookwyrm/templates/notifications.html:53 +#, python-format +msgid "" +"favorited your quote from %(book_title)s" msgstr "" -#: bookwyrm/templates/notifications.html:57 -msgid "sent you a follow request" +#: bookwyrm/templates/notifications.html:55 +#, python-format +msgid "favorited your status" +msgstr "" + +#: bookwyrm/templates/notifications.html:60 +#, python-format +msgid "" +"mentioned you in a review of " +"%(book_title)s" msgstr "" #: bookwyrm/templates/notifications.html:62 #, python-format -msgid "boosted your %(preview_name)s" +msgid "" +"mentioned you in a comment on " +"%(book_title)s" msgstr "" #: bookwyrm/templates/notifications.html:64 -msgid "added" +#, python-format +msgid "" +"mentioned you in a quote from " +"%(book_title)s" msgstr "" -#: bookwyrm/templates/notifications.html:64 -msgid "suggested adding" +#: bookwyrm/templates/notifications.html:66 +#, python-format +msgid "mentioned you in a status" msgstr "" -#: bookwyrm/templates/notifications.html:67 +#: bookwyrm/templates/notifications.html:71 +#, python-format +msgid "" +"replied to your review of %(book_title)s" +msgstr "" + +#: bookwyrm/templates/notifications.html:73 +#, python-format +msgid "" +"replied to your comment on %(book_title)s" +msgstr "" + +#: bookwyrm/templates/notifications.html:75 +#, python-format +msgid "" +"replied to your quote from %(book_title)s" +msgstr "" + +#: bookwyrm/templates/notifications.html:77 +#, python-format +msgid "" +"replied to your status" +msgstr "" + +#: bookwyrm/templates/notifications.html:81 +msgid "followed you" +msgstr "" + +#: bookwyrm/templates/notifications.html:84 +msgid "sent you a follow request" +msgstr "" + +#: bookwyrm/templates/notifications.html:90 +#, python-format +msgid "" +"boosted your review of %(book.title)s" +msgstr "" + +#: bookwyrm/templates/notifications.html:92 +#, python-format +msgid "" +"boosted your comment on%(book.title)s" +msgstr "" + +#: bookwyrm/templates/notifications.html:94 +#, python-format +msgid "" +"boosted your quote from %(book.title)s" +msgstr "" + +#: bookwyrm/templates/notifications.html:96 +#, python-format +msgid "boosted your status" +msgstr "" + +#: bookwyrm/templates/notifications.html:100 +#, python-format +msgid "" +" added %(book_title)s to your list " +"\"%(list_name)s\"" +msgstr "" + +#: bookwyrm/templates/notifications.html:102 +#, python-format +msgid "" +" suggested adding %(book_title)s to " +"your list \"%(list_name)s\"" +msgstr "" + +#: bookwyrm/templates/notifications.html:106 #, python-format msgid " your import completed." msgstr "" -#: bookwyrm/templates/notifications.html:99 +#: bookwyrm/templates/notifications.html:138 msgid "You're all caught up!" msgstr "" -#: bookwyrm/templates/password_reset.html:8 -#: bookwyrm/templates/password_reset_request.html:8 +#: bookwyrm/templates/password_reset.html:4 +#: bookwyrm/templates/password_reset.html:10 +#: bookwyrm/templates/password_reset_request.html:4 +#: bookwyrm/templates/password_reset_request.html:10 msgid "Reset Password" msgstr "" -#: bookwyrm/templates/password_reset.html:21 -#: bookwyrm/templates/preferences/change_password.html:15 +#: bookwyrm/templates/password_reset.html:23 +#: bookwyrm/templates/preferences/change_password.html:18 msgid "Confirm password:" msgstr "" -#: bookwyrm/templates/password_reset.html:28 +#: bookwyrm/templates/password_reset.html:30 msgid "Confirm" msgstr "" -#: bookwyrm/templates/password_reset_request.html:10 +#: bookwyrm/templates/password_reset_request.html:12 msgid "A link to reset your password will be sent to your email address" msgstr "" -#: bookwyrm/templates/password_reset_request.html:14 -#: bookwyrm/templates/preferences/edit_user.html:35 +#: bookwyrm/templates/password_reset_request.html:16 +#: bookwyrm/templates/preferences/edit_user.html:38 #: bookwyrm/templates/snippets/register_form.html:13 msgid "Email address:" msgstr "" -#: bookwyrm/templates/password_reset_request.html:21 +#: bookwyrm/templates/password_reset_request.html:23 msgid "Reset password" msgstr "" -#: bookwyrm/templates/preferences/blocks.html:5 +#: bookwyrm/templates/preferences/blocks.html:4 +#: bookwyrm/templates/preferences/blocks.html:7 +#: bookwyrm/templates/preferences/preferences_layout.html:23 msgid "Blocked Users" msgstr "" -#: bookwyrm/templates/preferences/blocks.html:10 +#: bookwyrm/templates/preferences/blocks.html:12 msgid "No users currently blocked." msgstr "" #: bookwyrm/templates/preferences/change_password.html:4 +#: bookwyrm/templates/preferences/change_password.html:7 +#: bookwyrm/templates/preferences/change_password.html:21 +#: bookwyrm/templates/preferences/preferences_layout.html:17 msgid "Change Password" msgstr "" -#: bookwyrm/templates/preferences/change_password.html:11 +#: bookwyrm/templates/preferences/change_password.html:14 msgid "New password:" msgstr "" -#: bookwyrm/templates/preferences/change_password.html:18 -#: bookwyrm/templates/preferences/preferences_layout.html:17 -msgid "Change password" -msgstr "" - #: bookwyrm/templates/preferences/edit_user.html:4 +#: bookwyrm/templates/preferences/edit_user.html:7 msgid "Edit Profile" msgstr "" -#: bookwyrm/templates/preferences/edit_user.html:14 +#: bookwyrm/templates/preferences/edit_user.html:17 msgid "Avatar:" msgstr "" -#: bookwyrm/templates/preferences/edit_user.html:21 +#: bookwyrm/templates/preferences/edit_user.html:24 msgid "Display name:" msgstr "" -#: bookwyrm/templates/preferences/edit_user.html:28 +#: bookwyrm/templates/preferences/edit_user.html:31 msgid "Summary:" msgstr "" -#: bookwyrm/templates/preferences/edit_user.html:43 +#: bookwyrm/templates/preferences/edit_user.html:46 msgid "Manually approve followers:" msgstr "" @@ -761,106 +966,110 @@ msgstr "" msgid "Account" msgstr "" -#: bookwyrm/templates/preferences/preferences_layout.html:14 -msgid "Profile" -msgstr "" - #: bookwyrm/templates/preferences/preferences_layout.html:20 msgid "Relationships" msgstr "" -#: bookwyrm/templates/preferences/preferences_layout.html:23 -msgid "Blocked users" +#: bookwyrm/templates/search_results.html:4 +msgid "Search Results" msgstr "" -#: bookwyrm/templates/search_results.html:6 +#: bookwyrm/templates/search_results.html:9 #, python-format msgid "Search Results for \"%(query)s\"" msgstr "" -#: bookwyrm/templates/search_results.html:11 +#: bookwyrm/templates/search_results.html:14 msgid "Matching Books" msgstr "" -#: bookwyrm/templates/search_results.html:14 +#: bookwyrm/templates/search_results.html:17 #, python-format msgid "No books found for \"%(query)s\"" msgstr "" -#: bookwyrm/templates/search_results.html:30 +#: bookwyrm/templates/search_results.html:33 msgid "Didn't find what you were looking for?" msgstr "" -#: bookwyrm/templates/search_results.html:53 +#: bookwyrm/templates/search_results.html:35 +msgid "Show results from other catalogues" +msgstr "" + +#: bookwyrm/templates/search_results.html:57 msgid "Import book" msgstr "" -#: bookwyrm/templates/search_results.html:70 +#: bookwyrm/templates/search_results.html:67 +msgid "Hide results from other catalogues" +msgstr "" + +#: bookwyrm/templates/search_results.html:75 msgid "Matching Users" msgstr "" -#: bookwyrm/templates/search_results.html:72 +#: bookwyrm/templates/search_results.html:77 #, python-format msgid "No users found for \"%(query)s\"" msgstr "" -#: bookwyrm/templates/search_results.html:87 +#: bookwyrm/templates/search_results.html:92 #, python-format msgid "No lists found for \"%(query)s\"" msgstr "" -#: bookwyrm/templates/settings/admin_layout.html:12 +#: bookwyrm/templates/settings/admin_layout.html:4 +msgid "Administration" +msgstr "" + +#: bookwyrm/templates/settings/admin_layout.html:15 msgid "Manage Users" msgstr "" -#: bookwyrm/templates/settings/admin_layout.html:16 -#: bookwyrm/templates/settings/manage_invites.html:3 -msgid "Invites" -msgstr "" - -#: bookwyrm/templates/settings/admin_layout.html:20 -#: bookwyrm/templates/settings/federation.html:3 +#: bookwyrm/templates/settings/admin_layout.html:23 +#: bookwyrm/templates/settings/federation.html:4 msgid "Federated Servers" msgstr "" -#: bookwyrm/templates/settings/admin_layout.html:25 +#: bookwyrm/templates/settings/admin_layout.html:28 msgid "Instance Settings" msgstr "" -#: bookwyrm/templates/settings/admin_layout.html:29 -#: bookwyrm/templates/settings/site.html:3 -msgid "Site Configuration" -msgstr "" - #: bookwyrm/templates/settings/admin_layout.html:32 -#: bookwyrm/templates/settings/site.html:10 -msgid "Instance Info" -msgstr "" - -#: bookwyrm/templates/settings/admin_layout.html:33 -#: bookwyrm/templates/settings/site.html:36 -msgid "Images" -msgstr "" - -#: bookwyrm/templates/settings/admin_layout.html:34 -#: bookwyrm/templates/settings/site.html:56 -msgid "Footer Content" +#: bookwyrm/templates/settings/site.html:4 +#: bookwyrm/templates/settings/site.html:6 +msgid "Site Settings" msgstr "" #: bookwyrm/templates/settings/admin_layout.html:35 -#: bookwyrm/templates/settings/site.html:74 +#: bookwyrm/templates/settings/site.html:13 +msgid "Instance Info" +msgstr "" + +#: bookwyrm/templates/settings/admin_layout.html:36 +#: bookwyrm/templates/settings/site.html:39 +msgid "Images" +msgstr "" + +#: bookwyrm/templates/settings/admin_layout.html:37 +#: bookwyrm/templates/settings/site.html:59 +msgid "Footer Content" +msgstr "" + +#: bookwyrm/templates/settings/admin_layout.html:38 +#: bookwyrm/templates/settings/site.html:77 msgid "Registration" msgstr "" -#: bookwyrm/templates/settings/federation.html:9 +#: bookwyrm/templates/settings/federation.html:10 msgid "Server name" msgstr "" -#: bookwyrm/templates/settings/federation.html:10 +#: bookwyrm/templates/settings/federation.html:11 msgid "Software" msgstr "" -#: bookwyrm/templates/settings/federation.html:11 +#: bookwyrm/templates/settings/federation.html:12 msgid "Status" msgstr "" @@ -900,55 +1109,55 @@ msgstr "" msgid "No active invites" msgstr "" -#: bookwyrm/templates/settings/site.html:12 +#: bookwyrm/templates/settings/site.html:15 msgid "Instance Name:" msgstr "" -#: bookwyrm/templates/settings/site.html:16 +#: bookwyrm/templates/settings/site.html:19 msgid "Tagline:" msgstr "" -#: bookwyrm/templates/settings/site.html:20 +#: bookwyrm/templates/settings/site.html:23 msgid "Instance description:" msgstr "" -#: bookwyrm/templates/settings/site.html:24 +#: bookwyrm/templates/settings/site.html:27 msgid "Code of conduct:" msgstr "" -#: bookwyrm/templates/settings/site.html:28 +#: bookwyrm/templates/settings/site.html:31 msgid "Privacy Policy:" msgstr "" -#: bookwyrm/templates/settings/site.html:39 +#: bookwyrm/templates/settings/site.html:42 msgid "Logo:" msgstr "" -#: bookwyrm/templates/settings/site.html:43 +#: bookwyrm/templates/settings/site.html:46 msgid "Logo small:" msgstr "" -#: bookwyrm/templates/settings/site.html:47 +#: bookwyrm/templates/settings/site.html:50 msgid "Favicon:" msgstr "" -#: bookwyrm/templates/settings/site.html:58 +#: bookwyrm/templates/settings/site.html:61 msgid "Support link:" msgstr "" -#: bookwyrm/templates/settings/site.html:62 +#: bookwyrm/templates/settings/site.html:65 msgid "Support title:" msgstr "" -#: bookwyrm/templates/settings/site.html:66 +#: bookwyrm/templates/settings/site.html:69 msgid "Admin email:" msgstr "" -#: bookwyrm/templates/settings/site.html:76 +#: bookwyrm/templates/settings/site.html:79 msgid "Allow registration:" msgstr "" -#: bookwyrm/templates/settings/site.html:80 +#: bookwyrm/templates/settings/site.html:83 msgid "Registration closed text:" msgstr "" @@ -960,10 +1169,15 @@ msgstr "" msgid "Un-block" msgstr "" +#: bookwyrm/templates/snippets/book_titleby.html:3 +#, python-format +msgid "%(title)s by " +msgstr "" + #: bookwyrm/templates/snippets/boost_button.html:8 #: bookwyrm/templates/snippets/boost_button.html:9 -#: bookwyrm/templates/snippets/status/status_body.html:40 #: bookwyrm/templates/snippets/status/status_body.html:41 +#: bookwyrm/templates/snippets/status/status_body.html:42 msgid "Boost status" msgstr "" @@ -980,15 +1194,16 @@ msgstr "" msgid "Spoilers ahead!" msgstr "" -#: bookwyrm/templates/snippets/create_status.html:8 +#: bookwyrm/templates/snippets/create_status.html:9 msgid "Review" msgstr "" -#: bookwyrm/templates/snippets/create_status.html:11 +#: bookwyrm/templates/snippets/create_status.html:12 +#: bookwyrm/templates/snippets/create_status_form.html:44 msgid "Comment" msgstr "" -#: bookwyrm/templates/snippets/create_status.html:14 +#: bookwyrm/templates/snippets/create_status.html:15 msgid "Quote" msgstr "" @@ -1003,18 +1218,18 @@ msgstr "" msgid "No rating" msgstr "" -#: bookwyrm/templates/snippets/create_status_form.html:44 -msgid "Comment:" +#: bookwyrm/templates/snippets/create_status_form.html:54 +msgid "Include spoiler alert" msgstr "" -#: bookwyrm/templates/snippets/create_status_form.html:59 +#: bookwyrm/templates/snippets/create_status_form.html:60 #: bookwyrm/templates/snippets/privacy-icons.html:15 #: bookwyrm/templates/snippets/privacy-icons.html:16 #: bookwyrm/templates/snippets/privacy_select.html:19 msgid "Private" msgstr "" -#: bookwyrm/templates/snippets/create_status_form.html:66 +#: bookwyrm/templates/snippets/create_status_form.html:67 msgid "Post" msgstr "" @@ -1036,8 +1251,8 @@ msgstr "" #: bookwyrm/templates/snippets/fav_button.html:7 #: bookwyrm/templates/snippets/fav_button.html:8 -#: bookwyrm/templates/snippets/status/status_body.html:44 #: bookwyrm/templates/snippets/status/status_body.html:45 +#: bookwyrm/templates/snippets/status/status_body.html:46 msgid "Like status" msgstr "" @@ -1066,10 +1281,12 @@ msgstr "" msgid "Accept" msgstr "" -#: bookwyrm/templates/snippets/goal_card.html:6 +#: bookwyrm/templates/snippets/generated_status/goal.html:1 #, python-format -msgid "%(year)s reading goal" -msgstr "" +msgid "set a goal to read %(counter)s book in %(year)s" +msgid_plural "set a goal to read %(counter)s books in %(year)s" +msgstr[0] "" +msgstr[1] "" #: bookwyrm/templates/snippets/goal_card.html:21 msgid "Dismiss message" @@ -1114,6 +1331,19 @@ msgstr "" msgid "%(percent)s%% complete!" msgstr "" +#: bookwyrm/templates/snippets/goal_progress.html:10 +#, python-format +msgid "" +"You've read %(read_count)s of %(goal_count)s books." +msgstr "" + +#: bookwyrm/templates/snippets/goal_progress.html:12 +#, python-format +msgid "" +"%(username)s has read %(read_count)s of %(goal_count)s " +"books." +msgstr "" + #: bookwyrm/templates/snippets/pagination.html:7 msgid "Previous" msgstr "" @@ -1143,7 +1373,7 @@ msgid "Post privacy" msgstr "" #: bookwyrm/templates/snippets/privacy_select.html:16 -#: bookwyrm/templates/user/followers.html:17 +#: bookwyrm/templates/user/followers.html:13 msgid "Followers" msgstr "" @@ -1182,18 +1412,27 @@ msgstr "" msgid "finished" msgstr "" -#: bookwyrm/templates/snippets/readthrough.html:29 +#: bookwyrm/templates/snippets/readthrough.html:14 +msgid "Show all updates" +msgstr "" + +#: bookwyrm/templates/snippets/readthrough.html:30 msgid "Delete this progress update" msgstr "" -#: bookwyrm/templates/snippets/readthrough.html:39 +#: bookwyrm/templates/snippets/readthrough.html:40 msgid "started" msgstr "" -#: bookwyrm/templates/snippets/readthrough.html:57 +#: bookwyrm/templates/snippets/readthrough.html:46 +#: bookwyrm/templates/snippets/readthrough.html:60 msgid "Edit read dates" msgstr "" +#: bookwyrm/templates/snippets/readthrough.html:50 +msgid "Delete these read dates" +msgstr "" + #: bookwyrm/templates/snippets/readthrough_form.html:7 #: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:19 #: bookwyrm/templates/snippets/shelve_button/start_reading_modal.html:17 @@ -1287,10 +1526,23 @@ msgstr "" msgid "More shelves" msgstr "" -#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:10 +#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:8 +msgid "Start reading" +msgstr "" + +#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:11 msgid "Read" msgstr "" +#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:13 +msgid "Finish reading" +msgstr "" + +#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:16 +#: bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html:26 +msgid "Want to read" +msgstr "" + #: bookwyrm/templates/snippets/shelve_button/start_reading_modal.html:5 #, python-format msgid "Start \"%(book_title)s\"" @@ -1301,20 +1553,27 @@ msgstr "" msgid "Want to Read \"%(book_title)s\"" msgstr "" -#: bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html:26 -msgid "Want to read" -msgstr "" - #: bookwyrm/templates/snippets/status/status.html:7 msgid "boosted" msgstr "" -#: bookwyrm/templates/snippets/status/status_body.html:36 +#: bookwyrm/templates/snippets/status/status_body.html:24 #: bookwyrm/templates/snippets/status/status_body.html:37 +#: bookwyrm/templates/snippets/status/status_body.html:38 msgid "Reply" msgstr "" -#: bookwyrm/templates/snippets/status/status_content.html:42 +#: bookwyrm/templates/snippets/status/status_content.html:16 +#: bookwyrm/templates/snippets/trimmed_text.html:12 +msgid "Show more" +msgstr "" + +#: bookwyrm/templates/snippets/status/status_content.html:23 +#: bookwyrm/templates/snippets/trimmed_text.html:18 +msgid "Show less" +msgstr "" + +#: bookwyrm/templates/snippets/status/status_content.html:44 msgid "Open image in new window" msgstr "" @@ -1340,7 +1599,7 @@ msgstr "" msgid "Remove tag" msgstr "" -#: bookwyrm/templates/tag.html:7 +#: bookwyrm/templates/tag.html:9 #, python-format msgid "Books tagged \"%(tag.name)s\"" msgstr "" @@ -1350,6 +1609,7 @@ msgid "Create New Shelf" msgstr "" #: bookwyrm/templates/user/create_shelf_form.html:22 +#: bookwyrm/templates/user/shelf.html:33 msgid "Create shelf" msgstr "" @@ -1361,73 +1621,100 @@ msgstr "" msgid "Update shelf" msgstr "" -#: bookwyrm/templates/user/followers.html:30 +#: bookwyrm/templates/user/followers.html:7 +#: bookwyrm/templates/user/following.html:7 bookwyrm/templates/user/user.html:9 +msgid "User Profile" +msgstr "" + +#: bookwyrm/templates/user/followers.html:26 #, python-format msgid "%(username)s has no followers" msgstr "" -#: bookwyrm/templates/user/following.html:17 +#: bookwyrm/templates/user/following.html:13 msgid "Following" msgstr "" -#: bookwyrm/templates/user/following.html:30 +#: bookwyrm/templates/user/following.html:26 #, python-format msgid "%(username)s isn't following any users" msgstr "" -#: bookwyrm/templates/user/lists.html:28 +#: bookwyrm/templates/user/lists.html:9 +msgid "Your Lists" +msgstr "" + +#: bookwyrm/templates/user/lists.html:11 +#, python-format +msgid "Lists: %(username)s" +msgstr "" + +#: bookwyrm/templates/user/lists.html:17 +msgid "Create new list" +msgstr "" + +#: bookwyrm/templates/user/lists.html:29 msgid "Create list" msgstr "" -#: bookwyrm/templates/user/user.html:7 -msgid "User profile" +#: bookwyrm/templates/user/shelf.html:9 +msgid "Your Shelves" msgstr "" -#: bookwyrm/templates/user/user.html:13 +#: bookwyrm/templates/user/shelf.html:11 +#, python-format +msgid "%(username)s: Shelves" +msgstr "" + +#: bookwyrm/templates/user/shelf.html:54 +msgid "Edit shelf" +msgstr "" + +#: bookwyrm/templates/user/user.html:15 msgid "Edit profile" msgstr "" -#: bookwyrm/templates/user/user.html:24 -#: bookwyrm/templates/user/user_layout.html:66 +#: bookwyrm/templates/user/user.html:26 +#: bookwyrm/templates/user/user_layout.html:68 msgid "Shelves" msgstr "" -#: bookwyrm/templates/user/user.html:29 +#: bookwyrm/templates/user/user.html:31 #, python-format msgid "See all %(size)s" msgstr "" -#: bookwyrm/templates/user/user.html:42 +#: bookwyrm/templates/user/user.html:44 #, python-format msgid "See all %(shelf_count)s shelves" msgstr "" -#: bookwyrm/templates/user/user.html:54 +#: bookwyrm/templates/user/user.html:56 #, python-format msgid "Set a reading goal for %(year)s" msgstr "" -#: bookwyrm/templates/user/user.html:60 +#: bookwyrm/templates/user/user.html:62 msgid "User Activity" msgstr "" -#: bookwyrm/templates/user/user.html:63 +#: bookwyrm/templates/user/user.html:65 msgid "RSS feed" msgstr "" -#: bookwyrm/templates/user/user.html:74 +#: bookwyrm/templates/user/user.html:76 msgid "No activities yet!" msgstr "" -#: bookwyrm/templates/user/user_layout.html:30 +#: bookwyrm/templates/user/user_layout.html:32 msgid "Follow Requests" msgstr "" -#: bookwyrm/templates/user/user_layout.html:48 +#: bookwyrm/templates/user/user_layout.html:50 msgid "Activity" msgstr "" -#: bookwyrm/templates/user/user_layout.html:54 +#: bookwyrm/templates/user/user_layout.html:56 msgid "Reading Goal" msgstr "" @@ -1435,3 +1722,15 @@ msgstr "" #, python-format msgid "Joined %(date)s" msgstr "" + +#: bookwyrm/templates/user/user_preview.html:15 +#, python-format +msgid "%(counter)s follower" +msgid_plural "%(counter)s followers" +msgstr[0] "" +msgstr[1] "" + +#: bookwyrm/templates/user/user_preview.html:16 +#, python-format +msgid "%(counter)s following" +msgstr "" diff --git a/locale/fr_FR/LC_MESSAGES/django.mo b/locale/fr_FR/LC_MESSAGES/django.mo new file mode 100644 index 000000000..85fe5bc05 Binary files /dev/null and b/locale/fr_FR/LC_MESSAGES/django.mo differ diff --git a/locale/fr_FR/LC_MESSAGES/django.po b/locale/fr_FR/LC_MESSAGES/django.po new file mode 100644 index 000000000..3101b7f2e --- /dev/null +++ b/locale/fr_FR/LC_MESSAGES/django.po @@ -0,0 +1,1448 @@ +# French language text for the bookwyrm UI +# Copyright (C) 2021 Mouse Reeve +# This file is distributed under the same license as the bookwyrm package. +# Mouse Reeve , 2021 +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: 0.1.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-03-01 18:43+0000\n" +"PO-Revision-Date: 2021-03-01 10:10+0100\n" +"Last-Translator: Fabien Basmaison \n" +"Language-Team: Mouse Reeve \n" +"Language: fr_FR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: bookwyrm/templates/author.html:13 bookwyrm/templates/author.html:14 +msgid "Edit Author" +msgstr "Modifier l’auteur ou autrice" + +#: bookwyrm/templates/author.html:29 +msgid "Wikipedia" +msgstr "Wikipedia" + +#: bookwyrm/templates/author.html:34 +#, python-format +msgid "Books by %(name)s" +msgstr "Livres par %(name)s" + +#: bookwyrm/templates/book.html:27 bookwyrm/templates/book.html:28 +msgid "Edit Book" +msgstr "Modifier le livre" + +#: bookwyrm/templates/book.html:43 +msgid "Add cover" +msgstr "Ajouter une couverture" + +#: bookwyrm/templates/book.html:49 bookwyrm/templates/lists/list.html:89 +msgid "Add" +msgstr "Ajouter" + +#: bookwyrm/templates/book.html:58 +msgid "ISBN:" +msgstr "ISBN :" + +#: bookwyrm/templates/book.html:65 bookwyrm/templates/edit_book.html:104 +msgid "OCLC Number:" +msgstr "Numéro OCLC :" + +#: bookwyrm/templates/book.html:72 bookwyrm/templates/edit_book.html:108 +msgid "ASIN:" +msgstr "ASIN :" + +#: bookwyrm/templates/book.html:84 +msgid "View on OpenLibrary" +msgstr "Voir sur OpenLibrary" + +#: bookwyrm/templates/book.html:102 bookwyrm/templates/edit_book.html:36 +#: bookwyrm/templates/lists/form.html:12 +msgid "Description:" +msgstr "Description :" + +#: bookwyrm/templates/book.html:106 bookwyrm/templates/edit_author.html:75 +#: bookwyrm/templates/edit_book.html:117 bookwyrm/templates/lists/form.html:42 +#: bookwyrm/templates/preferences/edit_user.html:47 +#: bookwyrm/templates/settings/site.html:86 +#: bookwyrm/templates/snippets/progress_update.html:21 +#: bookwyrm/templates/snippets/readthrough.html:61 +#: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:42 +#: bookwyrm/templates/snippets/shelve_button/start_reading_modal.html:34 +msgid "Save" +msgstr "Enregistrer" + +#: bookwyrm/templates/book.html:138 +msgid "Your reading activity" +msgstr "Votre activité de lecture" + +#: bookwyrm/templates/book.html:144 +msgid "You don't have any reading activity for this book." +msgstr "Vous n’avez aucune activité de lecture pour ce livre" + +#: bookwyrm/templates/book.html:151 +msgid "Create" +msgstr "Créer" + +#: bookwyrm/templates/book.html:172 +msgid "Tags" +msgstr "Tags" + +#: bookwyrm/templates/book.html:176 bookwyrm/templates/snippets/tag.html:18 +msgid "Add tag" +msgstr "Ajouter un tag" + +#: bookwyrm/templates/book.html:193 +msgid "Subjects" +msgstr "Sujets" + +#: bookwyrm/templates/book.html:204 +msgid "Places" +msgstr "Lieux" + +#: bookwyrm/templates/book.html:215 bookwyrm/templates/layout.html:64 +#: bookwyrm/templates/lists/lists.html:6 +#: bookwyrm/templates/search_results.html:85 +#: bookwyrm/templates/user/user_layout.html:60 +msgid "Lists" +msgstr "Listes" + +#: bookwyrm/templates/book.html:244 +msgid "rated it" +msgstr "l’a noté" + +#: bookwyrm/templates/discover/about.html:10 +#: bookwyrm/templates/discover/about.html:20 +msgid "Code of Conduct" +msgstr "Code de conduite" + +#: bookwyrm/templates/discover/about.html:13 +#: bookwyrm/templates/discover/about.html:29 +msgid "Privacy Policy" +msgstr "Politique de vie privée" + +#: bookwyrm/templates/discover/discover.html:6 +msgid "Recent Books" +msgstr "Livres récents" + +#: bookwyrm/templates/discover/landing_layout.html:15 +msgid "Decentralized" +msgstr "Décentralisé" + +#: bookwyrm/templates/discover/landing_layout.html:21 +msgid "Friendly" +msgstr "Sympa" + +#: bookwyrm/templates/discover/landing_layout.html:27 +msgid "Anti-Corporate" +msgstr "Anti‑commercial" + +#: bookwyrm/templates/discover/landing_layout.html:42 +#, python-format +msgid "Join %(name)s" +msgstr "Rejoignez %(name)s" + +#: bookwyrm/templates/discover/landing_layout.html:47 +#: bookwyrm/templates/login.html:46 +msgid "This instance is closed" +msgstr "Cette instance est fermée" + +#: bookwyrm/templates/discover/landing_layout.html:53 +msgid "Your Account" +msgstr "Votre compte" + +#: bookwyrm/templates/edit_author.html:10 bookwyrm/templates/edit_book.html:10 +msgid "Added:" +msgstr "AJouté :" + +#: bookwyrm/templates/edit_author.html:11 bookwyrm/templates/edit_book.html:11 +msgid "Updated:" +msgstr "Mis à jour :" + +#: bookwyrm/templates/edit_author.html:12 bookwyrm/templates/edit_book.html:12 +msgid "Last edited by:" +msgstr "Dernière modification par :" + +#: bookwyrm/templates/edit_author.html:28 bookwyrm/templates/edit_book.html:27 +msgid "Metadata" +msgstr "Métadonnées" + +#: bookwyrm/templates/edit_author.html:29 bookwyrm/templates/lists/form.html:8 +#: bookwyrm/templates/user/create_shelf_form.html:13 +#: bookwyrm/templates/user/edit_shelf_form.html:14 +msgid "Name:" +msgstr "Nom :" + +#: bookwyrm/templates/edit_author.html:34 +msgid "Bio:" +msgstr "Bio :" + +#: bookwyrm/templates/edit_author.html:39 +msgid "Wikipedia link:" +msgstr "Wikipedia :" + +#: bookwyrm/templates/edit_author.html:44 +msgid "Birth date:" +msgstr "Date de naissance :" + +#: bookwyrm/templates/edit_author.html:49 +msgid "Death date:" +msgstr "Date de décès :" + +#: bookwyrm/templates/edit_author.html:55 +msgid "Author Identifiers" +msgstr "Identifiants de l’auteur ou autrice" + +#: bookwyrm/templates/edit_author.html:56 bookwyrm/templates/edit_book.html:100 +msgid "Openlibrary key:" +msgstr "Clé Openlibrary :" + +#: bookwyrm/templates/edit_author.html:61 +msgid "Librarything key:" +msgstr "Clé Librarything :" + +#: bookwyrm/templates/edit_author.html:66 +msgid "Goodreads key:" +msgstr "Clé Goodreads :" + +#: bookwyrm/templates/edit_author.html:76 bookwyrm/templates/edit_book.html:118 +msgid "Cancel" +msgstr "Annuler les modifications" + +#: bookwyrm/templates/edit_book.html:28 +#: bookwyrm/templates/snippets/create_status_form.html:10 +msgid "Title:" +msgstr "Titre :" + +#: bookwyrm/templates/edit_book.html:32 +msgid "Subtitle:" +msgstr "Sous‑titre :" + +#: bookwyrm/templates/edit_book.html:40 +msgid "Series:" +msgstr "Série :" + +#: bookwyrm/templates/edit_book.html:44 +msgid "Series number:" +msgstr "Numéro dans la série :" + +#: bookwyrm/templates/edit_book.html:48 +msgid "First published date:" +msgstr "Première date de publication :" + +#: bookwyrm/templates/edit_book.html:52 +msgid "Published date:" +msgstr "Date de publication :" + +#: bookwyrm/templates/edit_book.html:65 +#: bookwyrm/templates/snippets/shelf.html:9 +msgid "Cover" +msgstr "Couverture" + +#: bookwyrm/templates/edit_book.html:75 +msgid "Physical Properties" +msgstr "Propriétés physiques" + +#: bookwyrm/templates/edit_book.html:76 +msgid "Format:" +msgstr "Format :" + +#: bookwyrm/templates/edit_book.html:84 +msgid "Pages:" +msgstr "Pages :" + +#: bookwyrm/templates/edit_book.html:91 +msgid "Book Identifiers" +msgstr "Identifiants du livre" + +#: bookwyrm/templates/edit_book.html:92 +msgid "ISBN 13:" +msgstr "ISBN 13 :" + +#: bookwyrm/templates/edit_book.html:96 +msgid "ISBN 10:" +msgstr "ISBN 10 :" + +#: bookwyrm/templates/editions.html:6 +#, python-format +msgid "Editions of \"%(work_title)s\"" +msgstr "Éditions de « %(work_title)s »" + +#: bookwyrm/templates/error.html:6 +msgid "Server Error" +msgstr "Erreur côté serveur" + +#: bookwyrm/templates/error.html:7 +msgid "Something went wrong! Sorry about that." +msgstr "Une erreur s’est produite ; désolé !" + +#: bookwyrm/templates/feed/direct_messages.html:7 +msgid "All messages" +msgstr "Tous les messages" + +#: bookwyrm/templates/feed/direct_messages.html:16 +msgid "You have no messages right now." +msgstr "Vous n’avez aucun message pour l’instant." + +#: bookwyrm/templates/feed/feed.html:6 +#, python-format +msgid "%(tab_title)s Timeline" +msgstr "%(tab_title)s — Fil d’actualité" + +#: bookwyrm/templates/feed/feed.html:10 +msgid "Home" +msgstr "Accueil" + +#: bookwyrm/templates/feed/feed.html:13 +msgid "Local" +msgstr "Local" + +#: bookwyrm/templates/feed/feed.html:16 +msgid "Federated" +msgstr "Fédéré" + +#: bookwyrm/templates/feed/feed.html:24 +msgid "Announcements" +msgstr "Annonces" + +#: bookwyrm/templates/feed/feed.html:32 +msgid "" +"There aren't any activities right now! Try following a user to get started" +msgstr "" +"Aucune activité pour l’instant ! Abonnez‑vous à quelqu’un pour commencer" + +#: bookwyrm/templates/feed/feed_layout.html:9 +msgid "Your books" +msgstr "Vos livres" + +#: bookwyrm/templates/feed/feed_layout.html:11 +msgid "" +"There are no books here right now! Try searching for a book to get started" +msgstr "Aucun livre ici pour l’instant ! Cherchez un livre pour commencer" + +#: bookwyrm/templates/feed/feed_layout.html:68 +#, python-format +msgid "%(year)s Reading Goal" +msgstr "Défi lecture pour %(year)s" + +#: bookwyrm/templates/feed/status.html:7 +msgid "Back" +msgstr "Retour" + +#: bookwyrm/templates/goal.html:7 +#, python-format +msgid "%(year)s Reading Progress" +msgstr "Progression de lecture pour %(year)s" + +#: bookwyrm/templates/goal.html:29 +#: bookwyrm/templates/snippets/goal_card.html:13 +#, python-format +msgid "" +"Set a goal for how many books you'll finish reading in %(year)s, and track " +"your progress throughout the year." +msgstr "" +"Définissez un nombre de livre à lire comme objectif pour %(year)s, et " +"suivezvotre progression au fil de l’année." + +#: bookwyrm/templates/goal.html:38 +#, python-format +msgid "%(name)s hasn't set a reading goal for %(year)s." +msgstr "%(name)s n’a aucun défi lecture pour %(year)s." + +#: bookwyrm/templates/import.html:6 +msgid "Import Books" +msgstr "Importer des livres" + +#: bookwyrm/templates/import.html:11 +msgid "Data source" +msgstr "Source de données" + +#: bookwyrm/templates/import.html:29 +msgid "Include reviews" +msgstr "Importer les critiques" + +#: bookwyrm/templates/import.html:34 +msgid "Privacy setting for imported reviews:" +msgstr "Confidentialité des critiques importées :" + +#: bookwyrm/templates/import.html:38 +msgid "Import" +msgstr "Importer" + +#: bookwyrm/templates/import.html:43 +msgid "Recent Imports" +msgstr "Importations récentes" + +#: bookwyrm/templates/import.html:45 +msgid "No recent imports" +msgstr "Aucune importation récente" + +#: bookwyrm/templates/import_status.html:7 +msgid "Import Status" +msgstr "Statut de l’importation" + +#: bookwyrm/templates/import_status.html:10 +msgid "Import started:" +msgstr "Importation en cours :" + +#: bookwyrm/templates/import_status.html:14 +msgid "Import completed:" +msgstr "Importation terminé :" + +#: bookwyrm/templates/import_status.html:17 +msgid "TASK FAILED" +msgstr "la tâche a échoué" + +#: bookwyrm/templates/import_status.html:23 +msgid "Import still in progress." +msgstr "L’importation est toujours en cours" + +#: bookwyrm/templates/import_status.html:25 +msgid "(Hit reload to update!)" +msgstr "(Rechargez la page pour mettre à jour !" + +#: bookwyrm/templates/import_status.html:32 +msgid "Failed to load" +msgstr "Le chargement a échoué" + +#: bookwyrm/templates/import_status.html:56 +msgid "Select all" +msgstr "Tout sélectionner" + +#: bookwyrm/templates/import_status.html:59 +msgid "Retry items" +msgstr "Essayer d’importer les objets sélectionnés de nouveau" + +#: bookwyrm/templates/import_status.html:81 +msgid "Successfully imported" +msgstr "Importation réussie" + +#: bookwyrm/templates/import_status.html:85 +#: bookwyrm/templates/lists/curate.html:14 +msgid "Book" +msgstr "Livre" + +#: bookwyrm/templates/import_status.html:88 +#: bookwyrm/templates/snippets/shelf.html:10 +msgid "Title" +msgstr "Titre" + +#: bookwyrm/templates/import_status.html:91 +#: bookwyrm/templates/snippets/shelf.html:11 +msgid "Author" +msgstr "Auteur ou autrice" + +#: bookwyrm/templates/import_status.html:114 +msgid "Imported" +msgstr "Importé" + +#: bookwyrm/templates/invite.html:9 bookwyrm/templates/login.html:41 +msgid "Create an Account" +msgstr "Créer un compte" + +#: bookwyrm/templates/invite.html:18 +msgid "Permission Denied" +msgstr "Autorisation refusée" + +#: bookwyrm/templates/invite.html:19 +msgid "Sorry! This invite code is no longer valid." +msgstr "Cette invitation n’est plus valide ; désolé !" + +#: bookwyrm/templates/layout.html:37 bookwyrm/templates/layout.html:38 +#: bookwyrm/templates/lists/list.html:62 +msgid "Search" +msgstr "Chercher" + +#: bookwyrm/templates/layout.html:47 bookwyrm/templates/layout.html:48 +msgid "Main navigation menu" +msgstr "Menu de navigation principal " + +#: bookwyrm/templates/layout.html:58 +msgid "Your shelves" +msgstr "Vos étagères" + +#: bookwyrm/templates/layout.html:61 +msgid "Feed" +msgstr "Fil d’actualité" + +#: bookwyrm/templates/layout.html:125 bookwyrm/templates/layout.html:126 +#: bookwyrm/templates/notifications.html:7 +msgid "Notifications" +msgstr "Notifications" + +#: bookwyrm/templates/layout.html:143 bookwyrm/templates/layout.html:147 +#: bookwyrm/templates/login.html:15 +#: bookwyrm/templates/snippets/register_form.html:4 +msgid "Username:" +msgstr "Nom d’utilisateur :" + +#: bookwyrm/templates/layout.html:152 bookwyrm/templates/login.html:8 +#: bookwyrm/templates/login.html:31 +msgid "Log in" +msgstr "Se connecter" + +#: bookwyrm/templates/layout.html:183 +msgid "About this server" +msgstr "À propos de ce serveur" + +#: bookwyrm/templates/layout.html:187 +msgid "Contact site admin" +msgstr "Contacter l’administrateur du site" + +#: bookwyrm/templates/lists/create_form.html:5 +msgid "Create List" +msgstr "Créer une liste" + +#: bookwyrm/templates/lists/curate.html:6 +msgid "Pending Books" +msgstr "Livres en attente de modération" + +#: bookwyrm/templates/lists/curate.html:7 +msgid "Go to list" +msgstr "Aller à la liste" + +#: bookwyrm/templates/lists/curate.html:9 +msgid "You're all set!" +msgstr "Aucun livre en attente de validation !" + +#: bookwyrm/templates/lists/curate.html:15 +msgid "Suggested by" +msgstr "Suggéré par" + +#: bookwyrm/templates/lists/curate.html:35 +msgid "Approve" +msgstr "Approuver" + +#: bookwyrm/templates/lists/curate.html:41 +msgid "Discard" +msgstr "Rejeter" + +#: bookwyrm/templates/lists/edit_form.html:5 +msgid "Edit List" +msgstr "Modifier la liste" + +#: bookwyrm/templates/lists/form.html:18 +msgid "List curation:" +msgstr "Modération de la liste :" + +#: bookwyrm/templates/lists/form.html:21 +msgid "Closed" +msgstr "Fermée" + +#: bookwyrm/templates/lists/form.html:22 +msgid "Only you can add and remove books to this list" +msgstr "Vous seul(e) pouvez ajouter ou supprimer des livres dans cette liste" + +#: bookwyrm/templates/lists/form.html:26 +msgid "Curated" +msgstr "Modérée" + +#: bookwyrm/templates/lists/form.html:27 +msgid "Anyone can suggest books, subject to your approval" +msgstr "N’importe qui peut suggérer des livres, soumis à votre approbation" + +#: bookwyrm/templates/lists/form.html:31 +msgid "Open" +msgstr "Ouverte" + +#: bookwyrm/templates/lists/form.html:32 +msgid "Anyone can add books to this list" +msgstr "N’importe qui peut suggérer des livres" + +#: bookwyrm/templates/lists/list.html:17 +msgid "This list is currently empty" +msgstr "Cette liste est vide actuellement" + +#: bookwyrm/templates/lists/list.html:35 +msgid "Added by" +msgstr "Ajouté par" + +#: bookwyrm/templates/lists/list.html:41 +msgid "Remove" +msgstr "Supprimer" + +#: bookwyrm/templates/lists/list.html:54 +msgid "Add Books" +msgstr "Ajouter des livres" + +#: bookwyrm/templates/lists/list.html:54 +msgid "Suggest Books" +msgstr "Suggérer des livres" + +#: bookwyrm/templates/lists/list.html:58 +msgid "Search for a book" +msgstr "Chercher un livre" + +#: bookwyrm/templates/lists/list.html:63 +msgid "search" +msgstr "Chercher" + +#: bookwyrm/templates/lists/list.html:69 +msgid "Clear search" +msgstr "Vider la requête" + +#: bookwyrm/templates/lists/list.html:74 +#, python-format +msgid "No books found matching the query \"%(query)s\"" +msgstr "Aucun livre trouvé pour la requête « %(query)s »" + +#: bookwyrm/templates/lists/list.html:75 +msgid "No books found" +msgstr "Aucun livre trouvé" + +#: bookwyrm/templates/lists/list.html:89 +msgid "Suggest" +msgstr "Suggérer" + +#: bookwyrm/templates/lists/list_items.html:19 +#: bookwyrm/templates/lists/list_layout.html:9 +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:9 +msgid "Created by" +msgstr "Créée par" + +#: bookwyrm/templates/lists/lists.html:11 +msgid "Your lists" +msgstr "Vos listes" + +#: bookwyrm/templates/lists/lists.html:36 +msgid "Recent Lists" +msgstr "Listes récentes" + +#: bookwyrm/templates/login.html:21 bookwyrm/templates/password_reset.html:15 +#: bookwyrm/templates/snippets/register_form.html:22 +msgid "Password:" +msgstr "Mot de passe :" + +#: bookwyrm/templates/login.html:34 +msgid "Forgot your password?" +msgstr "Mot de passe oublié ?" + +#: bookwyrm/templates/login.html:47 +msgid "Contact an administrator to get an invite" +msgstr "Contacter un administrateur pour obtenir une invitation" + +#: bookwyrm/templates/login.html:57 +msgid "More about this site" +msgstr "En savoir plus sur ce site" + +#: bookwyrm/templates/notfound.html:6 +msgid "Not Found" +msgstr "Introuvable" + +#: bookwyrm/templates/notfound.html:7 +msgid "The page your requested doesn't seem to exist!" +msgstr "Il semblerait que la page que vous avez demandée n’existe pas !" + +#: bookwyrm/templates/notifications.html:11 +msgid "Delete notifications" +msgstr "Supprimer les notifications" + +#: bookwyrm/templates/notifications.html:45 +#, python-format +msgid "favorited your %(preview_name)s" +msgstr "" +"a ajouté %(preview_name)s à ses favoris" + +#: bookwyrm/templates/notifications.html:48 +#, python-format +msgid "mentioned you in a %(preview_name)s" +msgstr "" +"vous a mentionné dans un(e) %(preview_name)s" + +#: bookwyrm/templates/notifications.html:51 +#, python-format +msgid "" +"replied to your " +"%(preview_name)s" +msgstr "" +"a répondu à votre %(preview_name)s" + +#: bookwyrm/templates/notifications.html:54 +msgid "followed you" +msgstr "s’est abonné(e)" + +#: bookwyrm/templates/notifications.html:57 +msgid "sent you a follow request" +msgstr "vous a envoyé une demande d’abonnement" + +#: bookwyrm/templates/notifications.html:62 +#, python-format +msgid "boosted your %(preview_name)s" +msgstr "a partagé votre %(preview_name)s" + +#: bookwyrm/templates/notifications.html:64 +msgid "added" +msgstr "a ajouté" + +#: bookwyrm/templates/notifications.html:64 +msgid "suggested adding" +msgstr "a suggéré l’ajout de" + +#: bookwyrm/templates/notifications.html:67 +#, python-format +msgid " your import completed." +msgstr "" +" votre importation est terminée." + +#: bookwyrm/templates/notifications.html:99 +msgid "You're all caught up!" +msgstr "Aucune nouvelle notification !" + +#: bookwyrm/templates/password_reset.html:8 +#: bookwyrm/templates/password_reset_request.html:8 +msgid "Reset Password" +msgstr "Changez le mot de passe" + +#: bookwyrm/templates/password_reset.html:21 +#: bookwyrm/templates/preferences/change_password.html:15 +msgid "Confirm password:" +msgstr "Confirmez le mot de passe :" + +#: bookwyrm/templates/password_reset.html:28 +msgid "Confirm" +msgstr "Confirmer" + +#: bookwyrm/templates/password_reset_request.html:10 +msgid "A link to reset your password will be sent to your email address" +msgstr "" +"Un lien pour changer votre mot de passe sera envoyé à votre addresse email" + +#: bookwyrm/templates/password_reset_request.html:14 +#: bookwyrm/templates/preferences/edit_user.html:35 +#: bookwyrm/templates/snippets/register_form.html:13 +msgid "Email address:" +msgstr "Adresse email :" + +#: bookwyrm/templates/password_reset_request.html:21 +msgid "Reset password" +msgstr "Changer de mot de passe" + +#: bookwyrm/templates/preferences/blocks.html:5 +msgid "Blocked Users" +msgstr "Comptes bloqués" + +#: bookwyrm/templates/preferences/blocks.html:10 +msgid "No users currently blocked." +msgstr "Aucun compte bloqué actuellement" + +#: bookwyrm/templates/preferences/change_password.html:4 +msgid "Change Password" +msgstr "Changer le mot de passe" + +#: bookwyrm/templates/preferences/change_password.html:11 +msgid "New password:" +msgstr "Nouveau mot de passe :" + +#: bookwyrm/templates/preferences/change_password.html:18 +#: bookwyrm/templates/preferences/preferences_layout.html:17 +msgid "Change password" +msgstr "Changer le mot de passe" + +#: bookwyrm/templates/preferences/edit_user.html:4 +msgid "Edit Profile" +msgstr "Modifier le profil" + +#: bookwyrm/templates/preferences/edit_user.html:14 +msgid "Avatar:" +msgstr "Avatar :" + +#: bookwyrm/templates/preferences/edit_user.html:21 +msgid "Display name:" +msgstr "Nom affiché :" + +#: bookwyrm/templates/preferences/edit_user.html:28 +msgid "Summary:" +msgstr "Résumé :" + +#: bookwyrm/templates/preferences/edit_user.html:43 +msgid "Manually approve followers:" +msgstr "Autoriser les abonnements manuellement :" + +#: bookwyrm/templates/preferences/preferences_layout.html:11 +msgid "Account" +msgstr "Compte" + +#: bookwyrm/templates/preferences/preferences_layout.html:14 +msgid "Profile" +msgstr "Profil" + +#: bookwyrm/templates/preferences/preferences_layout.html:20 +msgid "Relationships" +msgstr "Relations" + +#: bookwyrm/templates/preferences/preferences_layout.html:23 +msgid "Blocked users" +msgstr "Comptes bloqués" + +#: bookwyrm/templates/search_results.html:6 +#, python-format +msgid "Search Results for \"%(query)s\"" +msgstr "Résultats de recherche pour « %(query)s »" + +#: bookwyrm/templates/search_results.html:11 +msgid "Matching Books" +msgstr "Livres correspondants" + +#: bookwyrm/templates/search_results.html:14 +#, python-format +msgid "No books found for \"%(query)s\"" +msgstr "Aucun livre trouvé pour « %(query)s »" + +#: bookwyrm/templates/search_results.html:30 +msgid "Didn't find what you were looking for?" +msgstr "Vous n’avez pas trouvé ce que vous cherchiez ?" + +#: bookwyrm/templates/search_results.html:53 +msgid "Import book" +msgstr "Importer le livre" + +#: bookwyrm/templates/search_results.html:70 +msgid "Matching Users" +msgstr "Comptes correspondants" + +#: bookwyrm/templates/search_results.html:72 +#, python-format +msgid "No users found for \"%(query)s\"" +msgstr "Aucun compte trouvé pour « %(query)s »" + +#: bookwyrm/templates/search_results.html:87 +#, python-format +msgid "No lists found for \"%(query)s\"" +msgstr "Aucune liste trouvée pour « %(query)s »" + +#: bookwyrm/templates/settings/admin_layout.html:12 +msgid "Manage Users" +msgstr "Gérer les comptes" + +#: bookwyrm/templates/settings/admin_layout.html:16 +#: bookwyrm/templates/settings/manage_invites.html:3 +msgid "Invites" +msgstr "Invitations" + +#: bookwyrm/templates/settings/admin_layout.html:20 +#: bookwyrm/templates/settings/federation.html:3 +msgid "Federated Servers" +msgstr "Serveurs fédérés" + +#: bookwyrm/templates/settings/admin_layout.html:25 +msgid "Instance Settings" +msgstr "Paramètres de l’instance" + +#: bookwyrm/templates/settings/admin_layout.html:29 +#: bookwyrm/templates/settings/site.html:3 +msgid "Site Configuration" +msgstr "Configuration du site" + +#: bookwyrm/templates/settings/admin_layout.html:32 +#: bookwyrm/templates/settings/site.html:10 +msgid "Instance Info" +msgstr "Information sur l’instance" + +#: bookwyrm/templates/settings/admin_layout.html:33 +#: bookwyrm/templates/settings/site.html:36 +msgid "Images" +msgstr "Images" + +#: bookwyrm/templates/settings/admin_layout.html:34 +#: bookwyrm/templates/settings/site.html:56 +msgid "Footer Content" +msgstr "Contenu du pied de page" + +#: bookwyrm/templates/settings/admin_layout.html:35 +#: bookwyrm/templates/settings/site.html:74 +msgid "Registration" +msgstr "Enregistrement" + +#: bookwyrm/templates/settings/federation.html:9 +msgid "Server name" +msgstr "Nom du serveur" + +#: bookwyrm/templates/settings/federation.html:10 +msgid "Software" +msgstr "Logiciel" + +#: bookwyrm/templates/settings/federation.html:11 +msgid "Status" +msgstr "Statut" + +#: bookwyrm/templates/settings/manage_invites.html:7 +msgid "Generate New Invite" +msgstr "Générer une nouvelle invitation" + +#: bookwyrm/templates/settings/manage_invites.html:13 +msgid "Expiry:" +msgstr "Expiration :" + +#: bookwyrm/templates/settings/manage_invites.html:19 +msgid "Use limit:" +msgstr "Limiter à :" + +#: bookwyrm/templates/settings/manage_invites.html:26 +msgid "Create Invite" +msgstr "Créer une invitation" + +#: bookwyrm/templates/settings/manage_invites.html:33 +msgid "Link" +msgstr "Lien" + +#: bookwyrm/templates/settings/manage_invites.html:34 +msgid "Expires" +msgstr "Expiration" + +#: bookwyrm/templates/settings/manage_invites.html:35 +msgid "Max uses" +msgstr "Nombre maximum d’utilisations" + +#: bookwyrm/templates/settings/manage_invites.html:36 +msgid "Times used" +msgstr "Nombre de fois utilisée" + +#: bookwyrm/templates/settings/manage_invites.html:39 +msgid "No active invites" +msgstr "Aucune invitation active" + +#: bookwyrm/templates/settings/site.html:12 +msgid "Instance Name:" +msgstr "Nom de l’instance :" + +#: bookwyrm/templates/settings/site.html:16 +msgid "Tagline:" +msgstr "Slogan :" + +#: bookwyrm/templates/settings/site.html:20 +msgid "Instance description:" +msgstr "Description de l’instance :" + +#: bookwyrm/templates/settings/site.html:24 +msgid "Code of conduct:" +msgstr "Code de conduite :" + +#: bookwyrm/templates/settings/site.html:28 +msgid "Privacy Policy:" +msgstr "Politique de vie privée :" + +#: bookwyrm/templates/settings/site.html:39 +msgid "Logo:" +msgstr "Logo :" + +#: bookwyrm/templates/settings/site.html:43 +msgid "Logo small:" +msgstr "Logo réduit :" + +#: bookwyrm/templates/settings/site.html:47 +msgid "Favicon:" +msgstr "Favicon :" + +#: bookwyrm/templates/settings/site.html:58 +msgid "Support link:" +msgstr "URL pour soutenir l’instance :" + +#: bookwyrm/templates/settings/site.html:62 +msgid "Support title:" +msgstr "Titre pour soutenir l’instance :" + +#: bookwyrm/templates/settings/site.html:66 +msgid "Admin email:" +msgstr "Email de l’administrateur :" + +#: bookwyrm/templates/settings/site.html:76 +msgid "Allow registration:" +msgstr "Autoriser l’enregistrement :" + +#: bookwyrm/templates/settings/site.html:80 +msgid "Registration closed text:" +msgstr "Texte affiché lorsque les enregistrements sont clos :" + +#: bookwyrm/templates/snippets/block_button.html:5 +msgid "Block" +msgstr "Bloquer" + +#: bookwyrm/templates/snippets/block_button.html:10 +msgid "Un-block" +msgstr "Débloquer" + +#: bookwyrm/templates/snippets/boost_button.html:8 +#: bookwyrm/templates/snippets/boost_button.html:9 +#: bookwyrm/templates/snippets/status/status_body.html:40 +#: bookwyrm/templates/snippets/status/status_body.html:41 +msgid "Boost status" +msgstr "Partager le statut" + +#: bookwyrm/templates/snippets/boost_button.html:16 +#: bookwyrm/templates/snippets/boost_button.html:17 +msgid "Un-boost status" +msgstr "Annuler le partage du statut" + +#: bookwyrm/templates/snippets/content_warning_field.html:3 +msgid "Spoiler alert:" +msgstr "Alerte Spoiler :" + +#: bookwyrm/templates/snippets/content_warning_field.html:4 +msgid "Spoilers ahead!" +msgstr "Attention spoilers !" + +#: bookwyrm/templates/snippets/create_status.html:8 +msgid "Review" +msgstr "Critique" + +#: bookwyrm/templates/snippets/create_status.html:11 +msgid "Comment" +msgstr "Commentaire" + +#: bookwyrm/templates/snippets/create_status.html:14 +msgid "Quote" +msgstr "Citation" + +#: bookwyrm/templates/snippets/create_status_form.html:21 +#: bookwyrm/templates/snippets/shelf.html:17 +msgid "Rating" +msgstr "Note" + +#: bookwyrm/templates/snippets/create_status_form.html:23 +#: bookwyrm/templates/snippets/rate_action.html:14 +#: bookwyrm/templates/snippets/stars.html:3 +msgid "No rating" +msgstr "Aucune note" + +#: bookwyrm/templates/snippets/create_status_form.html:44 +msgid "Comment:" +msgstr "Commentaire :" + +#: bookwyrm/templates/snippets/create_status_form.html:59 +#: bookwyrm/templates/snippets/privacy-icons.html:15 +#: bookwyrm/templates/snippets/privacy-icons.html:16 +#: bookwyrm/templates/snippets/privacy_select.html:19 +msgid "Private" +msgstr "Privé" + +#: bookwyrm/templates/snippets/create_status_form.html:66 +msgid "Post" +msgstr "Publier" + +#: bookwyrm/templates/snippets/delete_readthrough_modal.html:4 +msgid "Delete these read dates?" +msgstr "Supprimer ces dates de lecture ?" + +#: bookwyrm/templates/snippets/delete_readthrough_modal.html:7 +#, python-format +msgid "" +"You are deleting this readthrough and its %(count)s associated progress " +"updates." +msgstr "Vous avez supprimé ce résumé et ses %(count)s progressions associées." + +#: bookwyrm/templates/snippets/delete_readthrough_modal.html:15 +#: bookwyrm/templates/snippets/follow_request_buttons.html:13 +msgid "Delete" +msgstr "Supprimer" + +#: bookwyrm/templates/snippets/fav_button.html:7 +#: bookwyrm/templates/snippets/fav_button.html:8 +#: bookwyrm/templates/snippets/status/status_body.html:44 +#: bookwyrm/templates/snippets/status/status_body.html:45 +msgid "Like status" +msgstr "Ajouter le statut aux favoris" + +#: bookwyrm/templates/snippets/fav_button.html:15 +#: bookwyrm/templates/snippets/fav_button.html:16 +msgid "Un-like status" +msgstr "Supprimer le statut des favoris" + +#: bookwyrm/templates/snippets/follow_button.html:6 +msgid "Follow request already sent." +msgstr "Demande d’abonnement déjà envoyée" + +#: bookwyrm/templates/snippets/follow_button.html:19 +msgid "Send follow request" +msgstr "Envoyer une demande d’abonnement" + +#: bookwyrm/templates/snippets/follow_button.html:21 +msgid "Follow" +msgstr "S’abonner" + +#: bookwyrm/templates/snippets/follow_button.html:27 +msgid "Unfollow" +msgstr "Se désabonner" + +#: bookwyrm/templates/snippets/follow_request_buttons.html:8 +msgid "Accept" +msgstr "Accepter" + +#: bookwyrm/templates/snippets/goal_card.html:6 +#, python-format +msgid "%(year)s reading goal" +msgstr "Défi lecture pour %(year)s" + +#: bookwyrm/templates/snippets/goal_card.html:21 +msgid "Dismiss message" +msgstr "Rejeter le message" + +#: bookwyrm/templates/snippets/goal_card.html:22 +#, python-format +msgid "" +"You can set or change your reading goal any time from your profile page" +msgstr "" +"Vous pouvez définir ou changer vore défi lecture à n’importe quel " +"moment depuis votre profil" + +#: bookwyrm/templates/snippets/goal_form.html:9 +msgid "Reading goal:" +msgstr "Défi lecture :" + +#: bookwyrm/templates/snippets/goal_form.html:14 +msgid "books" +msgstr "livres" + +#: bookwyrm/templates/snippets/goal_form.html:19 +msgid "Goal privacy:" +msgstr "Confidentialité du défi :" + +#: bookwyrm/templates/snippets/goal_form.html:26 +#: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:37 +#: bookwyrm/templates/snippets/shelve_button/start_reading_modal.html:29 +#: bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html:20 +msgid "Post to feed" +msgstr "Publier sur le fil d’actualité" + +#: bookwyrm/templates/snippets/goal_form.html:30 +msgid "Set goal" +msgstr "Valider ce défi" + +#: bookwyrm/templates/snippets/goal_progress.html:5 +msgid "Success!" +msgstr "Bravo !" + +#: bookwyrm/templates/snippets/goal_progress.html:7 +#, python-format +msgid "%(percent)s%% complete!" +msgstr "%(percent)s%% terminé !" + +#: bookwyrm/templates/snippets/pagination.html:7 +msgid "Previous" +msgstr "Précédente" + +#: bookwyrm/templates/snippets/pagination.html:15 +msgid "Next" +msgstr "Suivante" + +#: bookwyrm/templates/snippets/privacy-icons.html:3 +#: bookwyrm/templates/snippets/privacy-icons.html:4 +#: bookwyrm/templates/snippets/privacy_select.html:10 +msgid "Public" +msgstr "Public" + +#: bookwyrm/templates/snippets/privacy-icons.html:7 +#: bookwyrm/templates/snippets/privacy-icons.html:8 +#: bookwyrm/templates/snippets/privacy_select.html:13 +msgid "Unlisted" +msgstr "Non listé" + +#: bookwyrm/templates/snippets/privacy-icons.html:12 +msgid "Followers-only" +msgstr "Abonnements seulement" + +#: bookwyrm/templates/snippets/privacy_select.html:6 +msgid "Post privacy" +msgstr "Confidentialité du message" + +#: bookwyrm/templates/snippets/privacy_select.html:16 +#: bookwyrm/templates/user/followers.html:17 +msgid "Followers" +msgstr "Abonnements" + +#: bookwyrm/templates/snippets/progress_update.html:6 +msgid "Progress:" +msgstr "Progression :" + +#: bookwyrm/templates/snippets/progress_update.html:16 +#: bookwyrm/templates/snippets/readthrough_form.html:22 +msgid "pages" +msgstr "pages" + +#: bookwyrm/templates/snippets/progress_update.html:17 +#: bookwyrm/templates/snippets/readthrough_form.html:23 +msgid "percent" +msgstr "pourcent" + +#: bookwyrm/templates/snippets/progress_update.html:25 +#, python-format +msgid "of %(book.pages)s pages" +msgstr "sur %(book.pages)s pages" + +#: bookwyrm/templates/snippets/rate_action.html:4 +msgid "Leave a rating" +msgstr "Laisser une note" + +#: bookwyrm/templates/snippets/rate_action.html:29 +msgid "Rate" +msgstr "Noter" + +#: bookwyrm/templates/snippets/readthrough.html:7 +msgid "Progress Updates:" +msgstr "Progression :" + +#: bookwyrm/templates/snippets/readthrough.html:11 +msgid "finished" +msgstr "terminé" + +#: bookwyrm/templates/snippets/readthrough.html:29 +msgid "Delete this progress update" +msgstr "Supprimer cette mise à jour" + +#: bookwyrm/templates/snippets/readthrough.html:39 +msgid "started" +msgstr "commencé" + +#: bookwyrm/templates/snippets/readthrough.html:57 +msgid "Edit read dates" +msgstr "Modifier les date de lecture" + +#: bookwyrm/templates/snippets/readthrough_form.html:7 +#: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:19 +#: bookwyrm/templates/snippets/shelve_button/start_reading_modal.html:17 +msgid "Started reading" +msgstr "A commencé la lecture" + +#: bookwyrm/templates/snippets/readthrough_form.html:14 +msgid "Progress" +msgstr "Progression" + +#: bookwyrm/templates/snippets/readthrough_form.html:30 +#: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:25 +msgid "Finished reading" +msgstr "A terminé la lecture" + +#: bookwyrm/templates/snippets/register_form.html:32 +msgid "Sign Up" +msgstr "S’enregistrer" + +#: bookwyrm/templates/snippets/rss_title.html:5 +#: bookwyrm/templates/snippets/status/status_header.html:9 +msgid "rated" +msgstr "avec notes" + +#: bookwyrm/templates/snippets/rss_title.html:7 +#: bookwyrm/templates/snippets/status/status_header.html:11 +msgid "reviewed" +msgstr "avec critiques" + +#: bookwyrm/templates/snippets/rss_title.html:9 +#: bookwyrm/templates/snippets/status/status_header.html:13 +msgid "commented on" +msgstr "avec commentaires" + +#: bookwyrm/templates/snippets/rss_title.html:11 +#: bookwyrm/templates/snippets/status/status_header.html:15 +msgid "quoted" +msgstr "avec citations" + +#: bookwyrm/templates/snippets/search_result_text.html:3 +#, python-format +msgid "by %(author)s" +msgstr "par %(author)s" + +#: bookwyrm/templates/snippets/shelf.html:12 +msgid "Published" +msgstr "Publié" + +#: bookwyrm/templates/snippets/shelf.html:13 +msgid "Shelved" +msgstr "Ajouté à une étagère" + +#: bookwyrm/templates/snippets/shelf.html:14 +msgid "Started" +msgstr "Commencé" + +#: bookwyrm/templates/snippets/shelf.html:15 +msgid "Finished" +msgstr "Terminé" + +#: bookwyrm/templates/snippets/shelf.html:16 +msgid "External links" +msgstr "Liens externes" + +#: bookwyrm/templates/snippets/shelf.html:44 +msgid "OpenLibrary" +msgstr "OpenLibrary" + +#: bookwyrm/templates/snippets/shelf.html:61 +msgid "This shelf is empty." +msgstr "Cette étagère est vide" + +#: bookwyrm/templates/snippets/shelf.html:67 +msgid "Delete shelf" +msgstr "Supprimer l’étagère" + +#: bookwyrm/templates/snippets/shelf_selector.html:4 +msgid "Change shelf" +msgstr "Changer d’étagère" + +#: bookwyrm/templates/snippets/shelf_selector.html:27 +msgid "Unshelve" +msgstr "Enlever de l’étagère" + +#: bookwyrm/templates/snippets/shelve_button/finish_reading_modal.html:5 +#, python-format +msgid "Finish \"%(book_title)s\"" +msgstr "Terminer « %(book_title)s »" + +#: bookwyrm/templates/snippets/shelve_button/shelve_button_dropdown.html:5 +msgid "More shelves" +msgstr "Plus d’étagères" + +#: bookwyrm/templates/snippets/shelve_button/shelve_button_options.html:10 +msgid "Read" +msgstr "Lire" + +#: bookwyrm/templates/snippets/shelve_button/start_reading_modal.html:5 +#, python-format +msgid "Start \"%(book_title)s\"" +msgstr "Commencer « %(book_title)s »" + +#: bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html:5 +#, python-format +msgid "Want to Read \"%(book_title)s\"" +msgstr "A envie de lire « %(book_title)s »" + +#: bookwyrm/templates/snippets/shelve_button/want_to_read_modal.html:26 +msgid "Want to read" +msgstr "A envie de lire" + +#: bookwyrm/templates/snippets/status/status.html:7 +msgid "boosted" +msgstr "partagé" + +#: bookwyrm/templates/snippets/status/status_body.html:36 +#: bookwyrm/templates/snippets/status/status_body.html:37 +msgid "Reply" +msgstr "Répondre" + +#: bookwyrm/templates/snippets/status/status_content.html:42 +msgid "Open image in new window" +msgstr "Ouvrir l’image dans une nouvelle fenêtre" + +#: bookwyrm/templates/snippets/status/status_options.html:7 +#: bookwyrm/templates/snippets/user_options.html:7 +msgid "More options" +msgstr "Plus d’options" + +#: bookwyrm/templates/snippets/status/status_options.html:17 +msgid "Delete post" +msgstr "Supprimer le message" + +#: bookwyrm/templates/snippets/status/status_options.html:23 +#: bookwyrm/templates/snippets/user_options.html:13 +msgid "Send direct message" +msgstr "Envoyer un message direct" + +#: bookwyrm/templates/snippets/switch_edition_button.html:5 +msgid "Switch to this edition" +msgstr "Changer vers cette édition" + +#: bookwyrm/templates/snippets/tag.html:14 +msgid "Remove tag" +msgstr "Supprimer le tag" + +#: bookwyrm/templates/tag.html:7 +#, python-format +msgid "Books tagged \"%(tag.name)s\"" +msgstr "Livres tagués « %(tag.name)s »" + +#: bookwyrm/templates/user/create_shelf_form.html:5 +msgid "Create New Shelf" +msgstr "Créer une nouvelle étagère" + +#: bookwyrm/templates/user/create_shelf_form.html:22 +msgid "Create shelf" +msgstr "Créer l’étagère" + +#: bookwyrm/templates/user/edit_shelf_form.html:5 +msgid "Edit Shelf" +msgstr "Modifier l’étagère" + +#: bookwyrm/templates/user/edit_shelf_form.html:26 +msgid "Update shelf" +msgstr "Mettre l’étagère à jour" + +#: bookwyrm/templates/user/followers.html:30 +#, python-format +msgid "%(username)s has no followers" +msgstr "%(username)s n’a pas d’abonné(e)" + +#: bookwyrm/templates/user/following.html:17 +msgid "Following" +msgstr "Abonné(e) à" + +#: bookwyrm/templates/user/following.html:30 +#, python-format +msgid "%(username)s isn't following any users" +msgstr "%(username)s n’est abonné(e) à personne" + +#: bookwyrm/templates/user/lists.html:28 +msgid "Create list" +msgstr "Créer une liste" + +#: bookwyrm/templates/user/user.html:7 +msgid "User profile" +msgstr "Profil" + +#: bookwyrm/templates/user/user.html:13 +msgid "Edit profile" +msgstr "Modifier le profil" + +#: bookwyrm/templates/user/user.html:24 +#: bookwyrm/templates/user/user_layout.html:66 +msgid "Shelves" +msgstr "Étagères" + +#: bookwyrm/templates/user/user.html:29 +#, python-format +msgid "See all %(size)s" +msgstr "Voir les %(size)s" + +#: bookwyrm/templates/user/user.html:42 +#, python-format +msgid "See all %(shelf_count)s shelves" +msgstr "Voir les %(shelf_count)s étagères" + +#: bookwyrm/templates/user/user.html:54 +#, python-format +msgid "Set a reading goal for %(year)s" +msgstr "Définir un défi lecture pour %(year)s" + +#: bookwyrm/templates/user/user.html:60 +msgid "User Activity" +msgstr "Activité du compte" + +#: bookwyrm/templates/user/user.html:63 +msgid "RSS feed" +msgstr "Flux RSS" + +#: bookwyrm/templates/user/user.html:74 +msgid "No activities yet!" +msgstr "Aucune activité pour l’instant !" + +#: bookwyrm/templates/user/user_layout.html:30 +msgid "Follow Requests" +msgstr "Demandes d’abonnement" + +#: bookwyrm/templates/user/user_layout.html:48 +msgid "Activity" +msgstr "Activité" + +#: bookwyrm/templates/user/user_layout.html:54 +msgid "Reading Goal" +msgstr "Défi lecture" + +#: bookwyrm/templates/user/user_preview.html:13 +#, python-format +msgid "Joined %(date)s" +msgstr "Enregistré(e) %(date)s"