From 4c71c5fb73b5b1e9d02d4f3de51dabbe0bf4c41a Mon Sep 17 00:00:00 2001 From: Mouse Reeve Date: Thu, 4 Mar 2021 08:04:55 -0800 Subject: [PATCH 1/3] Removes "fuzzy" flag from translated French strings --- bookwyrm/templates/notifications.html | 6 +- locale/fr_FR/LC_MESSAGES/django.mo | Bin 20489 -> 25299 bytes locale/fr_FR/LC_MESSAGES/django.po | 87 +++++--------------------- 3 files changed, 19 insertions(+), 74 deletions(-) diff --git a/bookwyrm/templates/notifications.html b/bookwyrm/templates/notifications.html index f6fd7dabc..007e6b053 100644 --- a/bookwyrm/templates/notifications.html +++ b/bookwyrm/templates/notifications.html @@ -87,11 +87,11 @@ {% elif notification.notification_type == 'BOOST' %} {% if related_status.status_type == 'Review' %} - {% blocktrans with related_path=related_status.local_path book_title=related_status.book.title %}boosted your review of {{ book.title }}{% endblocktrans %} + {% blocktrans with related_path=related_status.local_path book_title=related_status.book.title %}boosted your review of {{ book_title }}{% endblocktrans %} {% elif related_status.status_type == 'Comment' %} - {% blocktrans with related_path=related_status.local_path book_title=related_status.book.title %}boosted your comment on{{ book.title }}{% endblocktrans %} + {% blocktrans with related_path=related_status.local_path book_title=related_status.book.title %}boosted your comment on{{ book_title }}{% endblocktrans %} {% elif related_status.status_type == 'Quotation' %} - {% blocktrans with related_path=related_status.local_path book_title=related_status.book.title %}boosted your quote from {{ book.title }}{% endblocktrans %} + {% blocktrans with related_path=related_status.local_path book_title=related_status.book.title %}boosted your quote from {{ book_title }}{% endblocktrans %} {% else %} {% blocktrans with related_path=related_status.local_path %}boosted your status{% endblocktrans %} {% endif %} diff --git a/locale/fr_FR/LC_MESSAGES/django.mo b/locale/fr_FR/LC_MESSAGES/django.mo index d35bde77c5ea72217eead13ef5b3499b2b0922d3..2cddb7935337507fcce9245e070abe10274ca6fb 100644 GIT binary patch literal 25299 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 CS?0e0 diff --git a/locale/fr_FR/LC_MESSAGES/django.po b/locale/fr_FR/LC_MESSAGES/django.po index 0c7707532..750a5de0e 100644 --- a/locale/fr_FR/LC_MESSAGES/django.po +++ b/locale/fr_FR/LC_MESSAGES/django.po @@ -435,15 +435,12 @@ msgid "Something went wrong! Sorry about that." msgstr "Une erreur s’est produite ; désolé !" #: bookwyrm/templates/feed/direct_messages.html:8 -#, fuzzy, python-format -#| msgid "favorited your %(preview_name)s" +#, python-format msgid "Direct Messages with %(username)s" msgstr "Messages directs avec %(username)s" #: bookwyrm/templates/feed/direct_messages.html:10 #: bookwyrm/templates/layout.html:79 -#, fuzzy -#| msgid "Send direct message" msgid "Direct Messages" msgstr "Messages directs" @@ -662,8 +659,6 @@ msgid "Sorry! This invite code is no longer valid." msgstr "Cette invitation n’est plus valide ; désolé !" #: bookwyrm/templates/layout.html:33 -#, fuzzy -#| msgid "Search for a book" msgid "Search for a book or user" msgstr "Chercher un livre ou un compte" @@ -706,8 +701,6 @@ msgid "Site Configuration" msgstr "Configuration du site" #: bookwyrm/templates/layout.html:117 -#, fuzzy -#| msgid "Log in" msgid "Log out" msgstr "Se déconnecter" @@ -899,8 +892,6 @@ msgid "Not Found" msgstr "Introuvable" #: bookwyrm/templates/notfound.html:9 -#, fuzzy -#| msgid "The page your requested doesn't seem to exist!" msgid "The page you requested doesn't seem to exist!" msgstr "Il semblerait que la page que vous avez demandée n’existe pas !" @@ -909,74 +900,56 @@ msgid "Delete notifications" msgstr "Supprimer les notifications" #: bookwyrm/templates/notifications.html:49 -#, fuzzy, python-format -#| msgid "favorited your %(preview_name)s" msgid "favorited your review of %(book_title)s" msgstr "a ajouté votre critique de %(book_title)s à ses favoris" #: bookwyrm/templates/notifications.html:51 -#, fuzzy, python-format -#| msgid "favorited your %(preview_name)s" msgid "favorited your comment on %(book_title)s" msgstr "a ajouté votre commentaire sur %(book_title)s à ses favoris" #: bookwyrm/templates/notifications.html:53 -#, fuzzy, python-format -#| msgid "favorited your %(preview_name)s" msgid "favorited your quote from %(book_title)s" msgstr "a ajouté votre citation de %(book_title)s à ses favoris" #: bookwyrm/templates/notifications.html:55 -#, fuzzy, python-format -#| msgid "favorited your %(preview_name)s" msgid "favorited your status" msgstr "a ajouté votre statut à ses favoris" #: bookwyrm/templates/notifications.html:60 -#, fuzzy, python-format -#| msgid "mentioned you in a %(preview_name)s" msgid "mentioned you in a review of %(book_title)s" msgstr "vous a mentionné dans sa critique de %(book_title)s" #: bookwyrm/templates/notifications.html:62 -#, fuzzy, python-format -#| msgid "mentioned you in a %(preview_name)s" msgid "mentioned you in a comment on %(book_title)s" msgstr "vous a mentionné dans son commentaire sur %(book_title)s" #: bookwyrm/templates/notifications.html:64 -#, fuzzy, python-format -#| msgid "mentioned you in a %(preview_name)s" +#, python-format msgid "mentioned you in a quote from %(book_title)s" msgstr "vous a mentionné dans sa citation de %(book_title)s" #: bookwyrm/templates/notifications.html:66 -#, fuzzy, python-format -#| msgid "mentioned you in a %(preview_name)s" +#, python-format msgid "mentioned you in a status" msgstr "vous a mentionné dans son statut" #: bookwyrm/templates/notifications.html:71 -#, fuzzy, python-format -#| msgid "replied to your %(preview_name)s" +#, python-format msgid "replied to your review of %(book_title)s" msgstr "a répondu à votre critique de %(book_title)s" #: bookwyrm/templates/notifications.html:73 -#, fuzzy, python-format -#| msgid "replied to your %(preview_name)s" +#, python-format msgid "replied to your comment on %(book_title)s" msgstr "a répondu à votre commentaire sur %(book_title)s" #: bookwyrm/templates/notifications.html:75 -#, fuzzy, python-format -#| msgid "replied to your %(preview_name)s" +#, python-format msgid "replied to your quote from %(book_title)s" msgstr "a répondu à votre citation de %(book_title)s" #: bookwyrm/templates/notifications.html:77 -#, fuzzy, python-format -#| msgid "replied to your %(preview_name)s" +#, python-format msgid "replied to your status" msgstr "a répondu à votre statut" @@ -989,38 +962,32 @@ msgid "sent you a follow request" msgstr "vous a envoyé une demande d’abonnement" #: bookwyrm/templates/notifications.html:90 -#, fuzzy, python-format -#| msgid "boosted your %(preview_name)s" -msgid "boosted your review of %(book.title)s" +#, python-format +msgid "boosted your review of %(book_title)s" msgstr "a partagé votre critique de %(book_title)s" #: bookwyrm/templates/notifications.html:92 -#, fuzzy, python-format -#| msgid "boosted your %(preview_name)s" -msgid "boosted your comment on%(book.title)s" +#, python-format +msgid "boosted your comment on%(book_title)s" msgstr "a partagé votre commentaire sur %(book_title)s" #: bookwyrm/templates/notifications.html:94 -#, fuzzy, python-format -#| msgid "boosted your %(preview_name)s" -msgid "boosted your quote from %(book.title)s" +#, python-format +msgid "boosted your quote from %(book_title)s" msgstr "a partagé votre citation de %(book_title)s" #: bookwyrm/templates/notifications.html:96 -#, fuzzy, python-format -#| msgid "boosted your %(preview_name)s" +#, python-format msgid "boosted your status" msgstr "a partagé votre statut" #: bookwyrm/templates/notifications.html:100 -#, fuzzy, python-format -#| msgid "replied to your %(preview_name)s" +#, python-format msgid " added %(book_title)s to your list \"%(list_name)s\"" msgstr " a ajouté %(book_title)s à votre liste « %(list_name)s »" #: bookwyrm/templates/notifications.html:102 -#, fuzzy, python-format -#| msgid "replied to your %(preview_name)s" +#, python-format msgid " suggested adding %(book_title)s to your list \"%(list_name)s\"" msgstr " a suggégré l’ajout de %(book_title)s à votre liste « %(list_name)s »" @@ -1114,8 +1081,6 @@ msgid "Relationships" msgstr "Relations" #: bookwyrm/templates/search_results.html:4 -#, fuzzy -#| msgid "Search Results for \"%(query)s\"" msgid "Search Results" msgstr "Résultats de recherche" @@ -1164,8 +1129,6 @@ msgid "No lists found for \"%(query)s\"" msgstr "Aucune liste trouvée pour « %(query)s »" #: bookwyrm/templates/settings/admin_layout.html:4 -#, fuzzy -#| msgid "Registration" msgid "Administration" msgstr "Administration" @@ -1319,8 +1282,6 @@ msgid "Un-block" msgstr "Débloquer" #: bookwyrm/templates/snippets/book_titleby.html:3 -#, fuzzy, python-format -#| msgid "Editions of \"%(work_title)s\"" msgid "%(title)s by " msgstr "%(title)s par " @@ -1369,8 +1330,6 @@ msgid "No rating" msgstr "Aucune note" #: bookwyrm/templates/snippets/create_status_form.html:54 -#, fuzzy -#| msgid "Spoiler alert:" msgid "Include spoiler alert" msgstr "Afficher une alerte spoiler" @@ -1730,8 +1689,6 @@ msgid "More options" msgstr "Plus d’options" #: bookwyrm/templates/snippets/status/status_options.html:17 -#, fuzzy -#| msgid "Delete post" msgid "Delete status" msgstr "Supprimer le statut" @@ -1755,8 +1712,6 @@ msgstr "Livres tagués « %(tag.name)s »" #: bookwyrm/templates/user/create_shelf_form.html:5 #: bookwyrm/templates/user/create_shelf_form.html:22 -#, fuzzy -#| msgid "Create shelf" msgid "Create Shelf" msgstr "Créer l’étagère" @@ -1770,8 +1725,6 @@ msgstr "Mettre l’étagère à jour" #: bookwyrm/templates/user/followers.html:7 #: bookwyrm/templates/user/following.html:7 bookwyrm/templates/user/user.html:9 -#, fuzzy -#| msgid "User profile" msgid "User Profile" msgstr "Profil" @@ -1790,8 +1743,6 @@ msgid "%(username)s isn't following any users" msgstr "%(username)s n’est abonné(e) à personne" #: bookwyrm/templates/user/lists.html:9 -#, fuzzy -#| msgid "Your lists" msgid "Your Lists" msgstr "Vos listes" @@ -1806,14 +1757,10 @@ msgid "Create list" msgstr "Créer une liste" #: bookwyrm/templates/user/shelf.html:9 -#, fuzzy -#| msgid "Your shelves" msgid "Your Shelves" msgstr "Vos étagères" #: bookwyrm/templates/user/shelf.html:11 -#, fuzzy, python-format -#| msgid "%(username)s has no followers" msgid "%(username)s: Shelves" msgstr "%(username)s : Étagères" @@ -1822,8 +1769,6 @@ msgid "Create shelf" msgstr "Créer l’étagère" #: bookwyrm/templates/user/shelf.html:54 -#, fuzzy -#| msgid "Edit Shelf" msgid "Edit shelf" msgstr "Modifier l’étagère" From 5613f42a4d5c7226708ae7f831e0fe277e52f9bb Mon Sep 17 00:00:00 2001 From: Mouse Reeve Date: Thu, 4 Mar 2021 08:07:35 -0800 Subject: [PATCH 2/3] Adds python-format tags --- locale/fr_FR/LC_MESSAGES/django.po | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/locale/fr_FR/LC_MESSAGES/django.po b/locale/fr_FR/LC_MESSAGES/django.po index 750a5de0e..68bb0c465 100644 --- a/locale/fr_FR/LC_MESSAGES/django.po +++ b/locale/fr_FR/LC_MESSAGES/django.po @@ -900,26 +900,32 @@ msgid "Delete notifications" msgstr "Supprimer les notifications" #: bookwyrm/templates/notifications.html:49 +#, python-format msgid "favorited your review of %(book_title)s" msgstr "a ajouté votre critique de %(book_title)s à ses favoris" #: bookwyrm/templates/notifications.html:51 +#, python-format msgid "favorited your comment on %(book_title)s" msgstr "a ajouté votre commentaire sur %(book_title)s à ses favoris" #: bookwyrm/templates/notifications.html:53 +#, python-format msgid "favorited your quote from %(book_title)s" msgstr "a ajouté votre citation de %(book_title)s à ses favoris" #: bookwyrm/templates/notifications.html:55 +#, python-format msgid "favorited your status" msgstr "a ajouté votre statut à ses favoris" #: bookwyrm/templates/notifications.html:60 +#, python-format msgid "mentioned you in a review of %(book_title)s" msgstr "vous a mentionné dans sa critique de %(book_title)s" #: bookwyrm/templates/notifications.html:62 +#, python-format msgid "mentioned you in a comment on %(book_title)s" msgstr "vous a mentionné dans son commentaire sur %(book_title)s" From 15392c007f648ec0337b6bf56eb24df3ef395673 Mon Sep 17 00:00:00 2001 From: Mouse Reeve Date: Thu, 4 Mar 2021 08:20:44 -0800 Subject: [PATCH 3/3] Updates translation instructions for fuzzy matches --- README.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 2564d7af0..41bd70653 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ Code contributions are gladly welcomed! If you're not sure where to start, take If you have questions about the project or contributing, you can set up a video call during BookWyrm ["office hours"](https://calendly.com/mouse-reeve/30min). ### Translation -Do you speak a language besides English? BookWyrm needs localization! If you're comfortable using git and want to get into the code, there are [instructions](#workin-with-translations-and-locale-files) on how to create and edit localization files. If you feel more comfortable working in a regular text editor and would prefer not to run the application, get in touch directly and we can figure out a system, like emailing a text file, that works best. +Do you speak a language besides English? BookWyrm needs localization! If you're comfortable using git and want to get into the code, there are [instructions](#working-with-translations-and-locale-files) on how to create and edit localization files. If you feel more comfortable working in a regular text editor and would prefer not to run the application, get in touch directly and we can figure out a system, like emailing a text file, that works best. ### Financial Support BookWyrm is an ad-free passion project with no intentions of seeking out venture funding or corporate financial relationships. If you want to help keep the project going, you can donate to the [Patreon](https://www.patreon.com/bookwyrm), or make a one time gift via [PayPal](https://paypal.me/oulipo). @@ -118,7 +118,7 @@ If you edit the CSS or JavaScript, you will need to run Django's `collectstatic` ./bw-dev collectstatic ``` -### Workin with translations and locale files +### Working with translations and locale files Text in the html files are wrapped in translation tags (`{% trans %}` and `{% blocktrans %}`), and Django generates locale files for all the strings in which you can add translations for the text. You can find existing translations in the `locale/` directory. The application's language is set by a request header sent by your browser to the application, so to change the language of the application, you can change the default language requested by your browser. @@ -132,7 +132,10 @@ To start translation into a language which is currently supported, run the djang #### Editing a locale When you have a locale file, open the `django.po` in the directory for the language (for example, if you were adding German, `locale/de/LC_MESSAGES/django.po`. All the the text in the application will be shown in paired strings, with `msgid` as the original text, and `msgstr` as the translation (by default, this is set to an empty string, and will display the original text). -Add you translations to the `msgstr` strings, and when you're ready, compile the locale by running: +Add your translations to the `msgstr` strings. As the messages in the application are updated, `gettext` will sometimes add best-guess fuzzy matched options for those translations. When a message is marked as fuzzy, it will not be used in the application, so be sure to remove it when you translate that line. + +When you're done, compile the locale by running: + ``` bash ./bw-dev compilemessages ```