mirror of
https://github.com/wallabag/wallabag.git
synced 2024-12-24 00:20:28 +00:00
Merge pull request #1441 from wallabag/v2-french-translation
Add french translation
This commit is contained in:
commit
0e8f778199
12 changed files with 179 additions and 47 deletions
|
@ -15,7 +15,7 @@ class EntryFilterType extends AbstractType
|
|||
private $repository;
|
||||
|
||||
/**
|
||||
* Repository & user are used to get a list of language entries for this user
|
||||
* Repository & user are used to get a list of language entries for this user.
|
||||
*
|
||||
* @param EntityRepository $entryRepository
|
||||
* @param User $user
|
||||
|
|
|
@ -163,9 +163,9 @@ class EntryRepository extends EntityRepository
|
|||
}
|
||||
|
||||
/**
|
||||
* Used only in test case to get the right entry associated to the right user
|
||||
* Used only in test case to get the right entry associated to the right user.
|
||||
*
|
||||
* @param string $username
|
||||
* @param string $username
|
||||
*
|
||||
* @return Entry
|
||||
*/
|
||||
|
|
130
src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml
Normal file
130
src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml
Normal file
|
@ -0,0 +1,130 @@
|
|||
#Login
|
||||
Keep me logged in: 'Rester connecté'
|
||||
Forgot your password?: 'Mot de passe oublié ?'
|
||||
Login: 'Se connecter'
|
||||
Back to login: 'Revenir au formulaire de connexion'
|
||||
Send: 'Envoyer'
|
||||
"Enter your email address below and we'll send you password reset instructions.": "Saisissez votre adresse e-mail ci-dessous, nous vous enverrons les instructions pour réinitialiser votre mot de passe."
|
||||
|
||||
# Menu
|
||||
unread: 'Non lus'
|
||||
starred: 'Favoris'
|
||||
archive: 'Lus'
|
||||
all: 'Tous les articles'
|
||||
tags: 'Tags'
|
||||
config: 'Configuration'
|
||||
howto: 'Aide'
|
||||
logout: 'Déconnexion'
|
||||
Filtered: 'Articles filtrés'
|
||||
About: 'À propos'
|
||||
|
||||
# Header
|
||||
Back to unread articles: 'Retour aux articles non lus'
|
||||
Add a new entry: 'Sauvegarder un nouvel article'
|
||||
Search: 'Rechercher'
|
||||
Filter entries: 'Filtrer les articles'
|
||||
Enter your search here: 'Saisissez votre terme de recherche'
|
||||
Save new entry: 'Sauvegarder un nouvel article'
|
||||
|
||||
# Config screen
|
||||
Settings: 'Paramètres'
|
||||
User information: 'Mon compte'
|
||||
Password: 'Mot de passe'
|
||||
RSS: 'RSS'
|
||||
Add a user: 'Créer un compte'
|
||||
Theme: 'Thème'
|
||||
Items per page: "Nombre d'articles par page"
|
||||
Language: 'Langue'
|
||||
Save: 'Enregistrer'
|
||||
RSS token: 'Jeton RSS'
|
||||
Name: 'Nom'
|
||||
Email: 'Adresse e-mail'
|
||||
No token: 'Aucun jeton généré'
|
||||
Reset your token: 'Réinitialisez votre jeton'
|
||||
Create your token: 'Créez votre jeton'
|
||||
Rss limit: "Nombre d'articles dans un flux RSS"
|
||||
RSS links: 'URL de vos flux RSS'
|
||||
"RSS feeds provided by wallabag allow you to read your saved articles with your favourite RSS reader. You need to generate a token first.": "Les flux RSS fournis par wallabag vous permettent de lire vos articles sauvegardés dans votre lecteur de flux préféré. Pour pouvoir les utiliser, vous devez d'abord créer un jeton."
|
||||
Old password: 'Mot de passe actuel'
|
||||
New password: 'Nouveau mot de passe'
|
||||
Repeat new password: 'Confirmez votre nouveau mot de passe'
|
||||
Username: "Nom d'utilisateur"
|
||||
|
||||
# Entries
|
||||
'estimated reading time': 'durée de lecture'
|
||||
original: original
|
||||
Toggle mark as read: 'Marquer comme lu/non lu'
|
||||
Toggle favorite: 'Marquer comme favori'
|
||||
Delete: 'Supprimer'
|
||||
|
||||
# Filters
|
||||
Filters: 'Filtres'
|
||||
Status: 'Statut'
|
||||
Archived: 'Lu'
|
||||
Starred: 'Favori'
|
||||
Preview picture: 'Photo'
|
||||
Has a preview picture: 'A une photo'
|
||||
Reading time in minutes: 'Durée de lecture en minutes'
|
||||
from: 'de'
|
||||
to: 'à'
|
||||
website.com: 'website.com'
|
||||
Domain name: 'Nom de domaine'
|
||||
Creation date: 'Date de création'
|
||||
dd/mm/yyyy: 'dd/mm/aaaa'
|
||||
Clear: 'Effacer'
|
||||
Filter: 'Filtrer'
|
||||
|
||||
# About
|
||||
Who is behind wallabag: "L'équipe derrière wallabag"
|
||||
Getting help: "Besoin d'aide"
|
||||
Helping wallabag: "Aider wallabag"
|
||||
Developed by: "Développé par"
|
||||
website: "Site web"
|
||||
And many others contributors ♥: "Et plein de contributeurs ♥"
|
||||
on GitHub: "sur GitHub"
|
||||
Project website: "Site web du projet"
|
||||
License: "Licence"
|
||||
Version: "Version"
|
||||
Documentation: "Documentation"
|
||||
Bug reports: "Rapport de bugs"
|
||||
On our support website: "Sur notre site de support"
|
||||
or: "ou"
|
||||
"wallabag is free and opensource. You can help us:": "wallabag est gratuit et opensource. Vous pouvez nous aider :"
|
||||
"by contributing to the project:": "en contribuant au projet :"
|
||||
an issue lists all our needs: "un ticket recense tous nos besoins"
|
||||
via Paypal: "via Paypal"
|
||||
via Flattr: "via Flattr"
|
||||
|
||||
# Howto
|
||||
Form: Formulaire
|
||||
Thanks to this form: "Grâce à ce formulaire"
|
||||
Browser addons: "Extensions de navigateur"
|
||||
Mobile apps: "Applications smartphone"
|
||||
Bookmarklet: "Bookmarklet"
|
||||
Standard Firefox Add-On: "Extension Firefox"
|
||||
Chrome Extension: "Extension Chrome"
|
||||
download the application: "téléchargez l'application"
|
||||
"Drag & drop this link to your bookmarks bar:": "Glissez et déposez ce lien dans votre barre de favoris :"
|
||||
|
||||
# Flash messages
|
||||
Information updated: "Vos informations personnelles ont bien été mises à jour"
|
||||
Config saved: "Les paramètres de wallabag ont bien été mis à jour"
|
||||
RSS information updated: "La configuration des flux RSS a bien été mise à jour"
|
||||
Password updated: "Votre mot de passe a bien été mis à jour"
|
||||
Entry starred: "Article ajouté dans les favoris"
|
||||
Entry unstarred: "Article retiré des favoris"
|
||||
Entry archived: "Article marqué comme lu"
|
||||
Entry unarchived: "Article marqué comme non lu"
|
||||
Entry deleted: "Article supprimé"
|
||||
|
||||
# Entry
|
||||
Mark as read: 'Marquer comme lu'
|
||||
Favorite: 'Mettre en favori'
|
||||
back: 'Retour'
|
||||
original article: 'Article original'
|
||||
Add a tag: 'Ajouter un tag'
|
||||
Share: 'Partager'
|
||||
Download: 'Télécharger'
|
||||
Does this article appear wrong?: "Est-ce que cet article s'affiche mal ?"
|
||||
Problems?: 'Un problème ?'
|
||||
Edit title: "Modifier le titre"
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "WallabagCoreBundle::layout.html.twig" %}
|
||||
|
||||
{% block title %}{% trans %}Config{% endtrans %}{% endblock %}
|
||||
{% block title %}{% trans %}config{% endtrans %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
@ -11,7 +11,7 @@
|
|||
<div class="row">
|
||||
<div class="div_tabs col s12">
|
||||
<ul class="tabs">
|
||||
<li class="tab col s3"><a class="active" href="#set1">{% trans %}Wallabag{% endtrans %}</a></li>
|
||||
<li class="tab col s3"><a class="active" href="#set1">{% trans %}Settings{% endtrans %}</a></li>
|
||||
<li class="tab col s3"><a href="#set2">{% trans %}RSS{% endtrans %}</a></li>
|
||||
<li class="tab col s3"><a href="#set3">{% trans %}User information{% endtrans %}</a></li>
|
||||
<li class="tab col s3"><a href="#set4">{% trans %}Password{% endtrans %}</a></li>
|
||||
|
@ -62,33 +62,36 @@
|
|||
|
||||
<div class="row">
|
||||
<div class="input-field col s12">
|
||||
<label>Rss token</label>
|
||||
<div>
|
||||
{% if rss.token %}
|
||||
{{ rss.token }}
|
||||
{% else %}
|
||||
<em>No token</em>
|
||||
{% endif %}
|
||||
–
|
||||
<a href="{{ path('generate_token') }}">Regenerate ?</a>
|
||||
</div>
|
||||
{% trans %}RSS feeds provided by wallabag allow you to read your saved articles with your favourite RSS reader. You need to generate a token first.{% endtrans %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="input-field col s12">
|
||||
<label>Rss links:</label>
|
||||
{% if rss.token %}
|
||||
<ul>
|
||||
<li><a href="{{ path('unread_rss', {'username': rss.username, 'token': rss.token}) }}">unread</a></li>
|
||||
<li><a href="{{ path('starred_rss', {'username': rss.username, 'token': rss.token}) }}">fav</a></li>
|
||||
<li><a href="{{ path('archive_rss', {'username': rss.username, 'token': rss.token}) }}">archives</a></li>
|
||||
</ul>
|
||||
{% else %}
|
||||
<strong>You need to generate a token first.</strong>
|
||||
{% endif %}
|
||||
<label>{% trans %}RSS token{% endtrans %}</label>
|
||||
<div>
|
||||
{% if rss.token %}
|
||||
{{ rss.token }}
|
||||
{% else %}
|
||||
<em>{% trans %}No token{% endtrans %}</em>
|
||||
{% endif %}
|
||||
– <a href="{{ path('generate_token') }}">{% if rss.token %}{% trans %}Reset your token{% endtrans %}{% else %}{% trans %}Create your token{% endtrans %}{% endif %}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% if rss.token %}
|
||||
<div class="row">
|
||||
<div class="input-field col s12">
|
||||
<label>{% trans %}RSS links{% endtrans %}</label>
|
||||
<ul>
|
||||
<li><a href="{{ path('unread_rss', {'username': rss.username, 'token': rss.token}) }}">{% trans %}unread{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('starred_rss', {'username': rss.username, 'token': rss.token}) }}">{% trans %}starred{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('archive_rss', {'username': rss.username, 'token': rss.token}) }}">{% trans %}archive{% endtrans %}</a></li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row">
|
||||
<div class="input-field col s12">
|
||||
|
@ -166,7 +169,7 @@
|
|||
|
||||
<div class="hidden">{{ form_rest(form.pwd) }}</div>
|
||||
<button class="btn waves-effect waves-light" type="submit" name="action">
|
||||
{% trans %}Update{% endtrans %}
|
||||
{% trans %}Save{% endtrans %}
|
||||
</button>
|
||||
|
||||
</form>
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
{% set currentRoute = app.request.attributes.get('_route') %}
|
||||
|
||||
{% if currentRoute == 'starred' %}
|
||||
{% trans %}Starred{% endtrans %}
|
||||
{% trans %}starred{% endtrans %}
|
||||
{% elseif currentRoute == 'archive' %}
|
||||
{% trans %}Archive{% endtrans %}
|
||||
{% trans %}archive{% endtrans %}
|
||||
{% elseif currentRoute == 'all' %}
|
||||
{% trans %}Filtered{% endtrans %}
|
||||
{% else %}
|
||||
{% trans %}Unread{% endtrans %}
|
||||
{% trans %}unread{% endtrans %}
|
||||
{% endif %}
|
||||
|
||||
{% endblock %}
|
||||
|
@ -49,9 +49,9 @@
|
|||
<span class="card-title"><a href="{{ path('view', { 'id': entry.id }) }}">{{ entry.title|raw|striptags|slice(0, 42) }}</a></span>
|
||||
|
||||
{% if entry.readingTime > 0 %}
|
||||
<div class="estimatedTime grey-text"><span class="tool reading-time">{% trans %}estimated reading time: {% endtrans %} {{ entry.readingTime }} min</span></div>
|
||||
<div class="estimatedTime grey-text"><span class="tool reading-time">{% trans %}estimated reading time{% endtrans %}: {{ entry.readingTime }} min</span></div>
|
||||
{% else %}
|
||||
<div class="estimatedTime grey-text"><span class="tool reading-time">{% trans %}estimated reading time: {% endtrans %} <small class="inferieur"><</small> 1 min</span></div>
|
||||
<div class="estimatedTime grey-text"><span class="tool reading-time">{% trans %}estimated reading time{% endtrans %}: <small class="inferieur"><</small> 1 min</span></div>
|
||||
{% endif %}
|
||||
|
||||
{% if entry.previewPicture is null %}
|
||||
|
@ -66,9 +66,9 @@
|
|||
<span class="card-title"><a href="{{ path('view', { 'id': entry.id }) }}">{{ entry.title|raw }}</a></span>
|
||||
|
||||
{% if entry.readingTime > 0 %}
|
||||
<div class="estimatedTime grey-text"><span class="tool reading-time">{% trans %}estimated reading time: {% endtrans %} {{ entry.readingTime }} min</span></div>
|
||||
<div class="estimatedTime grey-text"><span class="tool reading-time">{% trans %}estimated reading time{% endtrans %}: {{ entry.readingTime }} min</span></div>
|
||||
{% else %}
|
||||
<div class="estimatedTime grey-text"><span class="tool reading-time">{% trans %}estimated reading time: {% endtrans %} <small class="inferieur"><</small> 1 min</span></div>
|
||||
<div class="estimatedTime grey-text"><span class="tool reading-time">{% trans %}estimated reading time{% endtrans %}: <small class="inferieur"><</small> 1 min</span></div>
|
||||
{% endif %}
|
||||
|
||||
<p>{{ entry.content|striptags|slice(0, 300) }}…</p>
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
<li class="bold hide-on-med-and-down">
|
||||
<a class="waves-effect collapsible-header" title="{% trans %}Mark as read{% endtrans %}" href="{{ path('archive_entry', { 'id': entry.id }) }}" id="markAsRead">
|
||||
<i class="{% if entry.isArchived == 0 %}mdi-action-done{% else %}mdi-content-redo{% endif %} small"></i>
|
||||
<span>{% trans %}Toggle mark as read{% endtrans %}</span>
|
||||
<span>{% trans %}Mark as read{% endtrans %}</span>
|
||||
</a>
|
||||
<div class="collapsible-body"></div>
|
||||
</li>
|
||||
|
@ -62,7 +62,7 @@
|
|||
<li class="bold hide-on-med-and-down">
|
||||
<a class="waves-effect collapsible-header" title="{% trans %}Favorite{% endtrans %}" href="{{ path('star_entry', { 'id': entry.id }) }}" id="setFav">
|
||||
<i class="{% if entry.isStarred == 0 %}mdi-action-favorite-outline{% else %}mdi-action-favorite{% endif %} small"></i>
|
||||
<span>{% trans %}Toggle favorite{% endtrans %}</span>
|
||||
<span>{% trans %}Favorite{% endtrans %}</span>
|
||||
</a>
|
||||
<div class="collapsible-body"></div>
|
||||
</li>
|
||||
|
|
|
@ -9,12 +9,11 @@
|
|||
{% block content %}
|
||||
<main class="valign-wrapper">
|
||||
<div class="valign row">
|
||||
<h1>{% trans %}Forgot password{% endtrans %}</h1>
|
||||
<div class="card sw">
|
||||
<div class="center"><img src="{{ asset('themes/baggy/img/logo-other_themes.png') }}" alt="wallabag logo" /></div>
|
||||
<form action="{{ path('forgot_password') }}" method="post" name="forgotPasswordform">
|
||||
<div class="card-content">
|
||||
|
||||
<span class="card-title black-text"><p>{% trans %}Enter your email address below and we'll send you password reset instructions.{% endtrans %}</p></span>
|
||||
<span class="black-text"><p>{% trans %}Enter your email address below and we'll send you password reset instructions.{% endtrans %}</p></span>
|
||||
|
||||
{% if form_errors(form) %}
|
||||
<span class="black-text">{{ form_errors(form) }}</span>
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
<dd><a href="mailto:nicolas@loeuillet.org">Nicolas Lœuillet</a> — <a href="http://cdetc.fr">{% trans %}website{% endtrans %}</a></dd>
|
||||
<dd>Thomas Citharel — <a href="https://tcit.fr">{% trans %}website{% endtrans %}</a></dd>
|
||||
<dd>Jérémy Benoist — <a href="http://www.j0k3r.net">{% trans %}website{% endtrans %}</a></dd>
|
||||
<dt>{% trans %}And many others contributors ♥{% endtrans %} <a href="https://github.com/wallabag/wallabag/graphs/contributors">{% trans %}on Github{% endtrans %}</a></dt>
|
||||
<dt>{% trans %}And many others contributors ♥{% endtrans %} <a href="https://github.com/wallabag/wallabag/graphs/contributors">{% trans %}on GitHub{% endtrans %}</a></dt>
|
||||
<dt>{% trans %}Project website{% endtrans %}</dt>
|
||||
<dd><a href="https://www.wallabag.org">https://www.wallabag.org</a></dd>
|
||||
<dt>{% trans %}License{% endtrans %}: <a href="http://en.wikipedia.org/wiki/MIT_License">MIT</a></dt>
|
||||
|
@ -37,14 +37,14 @@
|
|||
<dd><a href="https://doc.wallabag.org/de">deutsch</a></dd>
|
||||
|
||||
<dt>{% trans %}Bug reports{% endtrans %}</dt>
|
||||
<dd><a href="https://support.wallabag.org">{% trans %}On our support website{% endtrans %}</a> {% trans %}or{% endtrans %} <a href="https://github.com/wallabag/wallabag/issues">{% trans %}on Github{% endtrans %}</a></dd>
|
||||
<dd><a href="https://support.wallabag.org">{% trans %}On our support website{% endtrans %}</a> {% trans %}or{% endtrans %} <a href="https://github.com/wallabag/wallabag/issues">{% trans %}on GitHub{% endtrans %}</a></dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div id="set3" class="col s12">
|
||||
<dl>
|
||||
<dt>{% trans %}wallabag is free and opensource. You can help us:{% endtrans %}</dt>
|
||||
<dd>by contributing to the project: <a href="https://github.com/wallabag/wallabag/issues/1254">an issue lists all our needs</a></dd>
|
||||
<dd>{% trans %}by contributing to the project:{% endtrans %} <a href="https://github.com/wallabag/wallabag/issues/1254">{% trans %}an issue lists all our needs{% endtrans %}</a></dd>
|
||||
<dd><a href="{{ paypal_url }}">{% trans %}via Paypal{% endtrans %}</a></dd>
|
||||
|
||||
<dd><a href="{{ flattr_url }}">{% trans %}via Flattr{% endtrans %}</a></dd>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% extends "WallabagCoreBundle::layout.html.twig" %}
|
||||
|
||||
{% block title %}{% trans %}Howto{% endtrans %}{% endblock %}
|
||||
{% block title %}{% trans %}howto{% endtrans %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
{% block messages %}
|
||||
{% for flashMessage in app.session.flashbag.get('notice') %}
|
||||
<script>
|
||||
Materialize.toast('{{ flashMessage }}', 4000);
|
||||
Materialize.toast('{{ flashMessage|trans }}', 4000);
|
||||
</script>
|
||||
{% endfor %}
|
||||
{% endblock %}
|
||||
|
@ -42,10 +42,11 @@
|
|||
<li class="bold {% if currentRoute == 'unread' or currentRoute == 'homepage' %}active{% endif %}"><a class="waves-effect" href="{{ path('unread') }}">{% trans %}unread{% endtrans %}</a></li>
|
||||
<li class="bold {% if currentRoute == 'starred' %}active{% endif %}"><a class="waves-effect" href="{{ path('starred') }}">{% trans %}starred{% endtrans %}</a></li>
|
||||
<li class="bold {% if currentRoute == 'archive' %}active{% endif %}"><a class="waves-effect" href="{{ path('archive') }}">{% trans %}archive{% endtrans %}</a></li>
|
||||
<li class="bold {% if currentRoute == 'all' %}active{% endif %}"><a class="waves-effect" href="{{ path('all') }}">{% trans %}all{% endtrans %}</a></li>
|
||||
<li class="bold border-bottom {% if currentRoute == 'all' %}active{% endif %}"><a class="waves-effect" href="{{ path('all') }}">{% trans %}all{% endtrans %}</a></li>
|
||||
<li class="bold border-bottom {% if currentRoute == 'tags' %}active{% endif %}"><a class="waves-effect" href="{{ path('tag') }}">{% trans %}tags{% endtrans %}</a></li>
|
||||
<li class="bold {% if currentRoute == 'config' %}active{% endif %}"><a class="waves-effect" href="{{ path('config') }}">{% trans %}config{% endtrans %}</a></li>
|
||||
<li class="bold {% if currentRoute == 'howto' %}active{% endif %}"><a class="waves-effect" href="{{ path('howto') }}">{% trans %}howto{% endtrans %}</a></li>
|
||||
<li class="bold border-bottom {% if currentRoute == 'about' %}active{% endif %}"><a class="waves-effect" href="{{ path('about') }}">{% trans %}About{% endtrans %}</a></li>
|
||||
<li class="bold"><a class="waves-effect" class="icon icon-power" href="{{ path('logout') }}" title="{% trans %}logout{% endtrans %}">{% trans %}logout{% endtrans %}</a></li>
|
||||
</ul>
|
||||
<div class="nav-wrapper nav-panels">
|
||||
|
@ -93,7 +94,7 @@
|
|||
{% trans %}and{% endtrans %}
|
||||
<a target="_blank" class="grey-text text-lighten-3" href="https://chrome.google.com/webstore/detail/wallabagit/peehlcgckcnclnjlndmoddifcicdnabm">chrome</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col l4 offset-l2 s12">
|
||||
<h5 class="white-text">{% trans %}Social{% endtrans %}</h5>
|
||||
<ul>
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
namespace Wallabag\CoreBundle\Tests\Controller;
|
||||
|
||||
use Wallabag\CoreBundle\Tests\WallabagCoreTestCase;
|
||||
use Doctrine\ORM\AbstractQuery;
|
||||
|
||||
class EntryControllerTest extends WallabagCoreTestCase
|
||||
{
|
||||
|
|
|
@ -13,7 +13,7 @@ class WallabagExtension extends \Twig_Extension
|
|||
|
||||
public function removeWww($url)
|
||||
{
|
||||
return preg_replace('/^www\./i', '',$url);
|
||||
return preg_replace('/^www\./i', '', $url);
|
||||
}
|
||||
|
||||
public function getName()
|
||||
|
|
Loading…
Reference in a new issue