-
-
Notifications
You must be signed in to change notification settings - Fork 219
Full set of translation wrapping #87
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,39 @@ | ||
| { | ||
| "1 min read": "", | ||
| "Access site": "", | ||
| "Account": "", | ||
| "Already have an account?": "", | ||
| "Close (Esc)": "", | ||
| "Featured": "", | ||
| "jamie@example.com": "", | ||
| "Latest": "", | ||
| "Menu": "", | ||
| "Newer Posts": "", | ||
| "Next (arrow right)": "", | ||
| "Older Posts": "", | ||
| "Page {page} of {totalPages}": "", | ||
| "Page %": "", | ||
| "Password": "", | ||
| "Powered by {ghostlink}": "", | ||
| "Previous (arrow left)": "", | ||
| "Read more": "", | ||
| "Recommendations": "", | ||
| "Search posts, tags and authors": "", | ||
| "Search this site": "", | ||
| "See all": "", | ||
| "Share": "", | ||
| "Sign in": "", | ||
| "Subscribe": "", | ||
| "Subscribe now": "", | ||
| "This page is for paying subscribers only": "", | ||
| "This page is for subscribers on the {tiers} only": "", | ||
| "This page is for subscribers only": "", | ||
| "This post is for paying subscribers only": "", | ||
| "This post is for subscribers on the {tiers} only": "", | ||
| "This post is for subscribers only": "", | ||
| "This site is private.": "", | ||
| "Toggle fullscreen": "", | ||
| "Upgrade": "", | ||
| "Upgrade your account": "", | ||
| "Zoom in/out": "" | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,41 @@ | ||
| { | ||
| "1 min read": "1 min de lecture", | ||
| "% min read": "% min de lecture", | ||
| "and": "et", | ||
| "Access site": "Accéder au site", | ||
| "Account": "Compte", | ||
| "Already have an account?": "Vous avez déjà un compte ?", | ||
| "Close (Esc)": "Fermer (Échap)", | ||
| "Featured": "À la une", | ||
| "jamie@example.com": "jean@example.com", | ||
| "Latest": "Derniers", | ||
| "Menu": "Menu", | ||
| "Newer Posts": "Articles plus récents", | ||
| "Next (arrow right)": "Suivant (flèche droite)", | ||
| "Older Posts": "Articles plus anciens", | ||
| "Page {page} of {totalPages}": "Page {page} sur {totalPages}", | ||
| "Page %": "Page %", | ||
| "Password": "Mot de passe", | ||
| "Powered by {ghostlink}": "Propulsé par {ghostlink}", | ||
| "Previous (arrow left)": "Précédent (flèche gauche)", | ||
| "Read more": "Lire la suite", | ||
| "Recommendations": "Recommandations", | ||
| "Search posts, tags and authors": "Rechercher des articles, tags et auteurs", | ||
| "Search this site": "Rechercher sur ce site", | ||
| "See all": "Voir tout", | ||
| "Share": "Partager", | ||
| "Sign in": "Se connecter", | ||
| "Subscribe": "S'abonner", | ||
| "Subscribe now": "S'abonner maintenant", | ||
| "This page is for paying subscribers only": "Cette page est réservée aux abonnés payants uniquement", | ||
| "This page is for subscribers on the {tiers} only": "Cette page est réservée aux abonnés sur les {tiers} uniquement", | ||
| "This page is for subscribers only": "Cette page est réservée aux abonnés uniquement", | ||
| "This post is for paying subscribers only": "Cet article est réservé aux abonnés payants uniquement", | ||
| "This post is for subscribers on the {tiers} only": "Cet article est réservé aux abonnés sur les {tiers} uniquement", | ||
| "This post is for subscribers only": "Cet article est réservé aux abonnés uniquement", | ||
| "This site is private.": "Ce site est privé.", | ||
| "Toggle fullscreen": "Basculer en plein écran", | ||
| "Upgrade": "Mettre à niveau", | ||
| "Upgrade your account": "Mettre à niveau votre compte", | ||
| "Zoom in/out": "Zoom avant/arrière" | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,32 @@ | ||
| {{{html}}} | ||
| <aside class="gh-post-upgrade-cta"> | ||
| <div class="gh-post-upgrade-cta-content" style="background-color: {{@site.accent_color}}"> | ||
| {{#has visibility="paid"}} | ||
| {{#is "page"}} | ||
| <h2>{{t "This page is for paying subscribers only"}}</h2> | ||
| {{else}} | ||
| <h2>{{t "This post is for paying subscribers only"}}</h2> | ||
| {{/is}} | ||
| {{/has}} | ||
| {{#has visibility="members"}} | ||
| {{#is "page"}} | ||
| <h2>{{t "This page is for subscribers only"}}</h2> | ||
| {{else}} | ||
| <h2>{{t "This post is for subscribers only"}}</h2> | ||
| {{/is}} | ||
| {{/has}} | ||
| {{#has visibility="tiers"}} | ||
| {{#is "page"}} | ||
| <h2>{{t "This page is for subscribers on the {tiers} only" tiers=(tiers separator=", " lastSeparator=(concat " " (t "and") " "))}}</h2> | ||
| {{else}} | ||
| <h2>{{t "This post is for subscribers on the {tiers} only" tiers=(tiers separator=", " lastSeparator=(concat " " (t "and") " "))}}</h2> | ||
| {{/is}} | ||
| {{/has}} | ||
| {{#if @member}} | ||
| <a class="gh-btn" data-portal="account/plans" href="#/portal/account/plans" style="color:{{@site.accent_color}}">{{t "Upgrade your account"}}</a> | ||
| {{else}} | ||
| <a class="gh-btn" data-portal="signup" href="#/portal/signup" style="color:{{@site.accent_color}}">{{t "Subscribe now"}}</a> | ||
| <p><small>{{t "Already have an account?"}} <a data-portal="signin" href="#/portal/signin">{{t "Sign in"}}</a></small></p> | ||
| {{/if}} | ||
| </div> | ||
| </aside> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,7 +1,7 @@ | ||
| <form class="gh-form" data-members-form> | ||
| <input class="gh-form-input" id="{{email_field_id}}" name="email" type="email" placeholder="jamie@example.com" required data-members-email> | ||
| <input class="gh-form-input" id="{{email_field_id}}" name="email" type="email" placeholder="{{t "jamie@example.com"}}" required data-members-email> | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Bug: Untranslated aria-label inconsistent with visible translated textThe |
||
| <button class="gh-button" type="submit" aria-label="Subscribe"> | ||
| <span><span>Subscribe</span> {{> "icons/arrow"}}</span> | ||
| <span><span>{{t "Subscribe"}}</span> {{> "icons/arrow"}}</span> | ||
| {{> "icons/loader"}} | ||
| {{> "icons/checkmark"}} | ||
| </button> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| <nav class="pagination"> | ||
| {{#if prev}} | ||
| <a class="newer-posts" href="{{page_url prev}}"><span aria-hidden="true">←</span> {{t "Newer Posts"}}</a> | ||
| {{/if}} | ||
| <span class="page-number">{{t "Page {page} of {totalPages}" page=page totalPages=pages}}</span> | ||
| {{#if next}} | ||
| <a class="older-posts" href="{{page_url next}}">{{t "Older Posts"}} <span aria-hidden="true">→</span></a> | ||
| {{/if}} | ||
| </nav> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,3 @@ | ||
| <button class="gh-search gh-icon-button" aria-label="Search this site" data-ghost-search> | ||
| <button class="gh-search gh-icon-button" aria-label="{{t "Search this site"}}" data-ghost-search> | ||
| {{> "icons/search"}} | ||
| </button> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,67 @@ | ||
| <!DOCTYPE html> | ||
| <html class="no-js" lang="en"> | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Bug: Hardcoded language attribute ignores site locale settingThe new |
||
| <head> | ||
| <meta charset="UTF-8" /> | ||
|
|
||
| <title>{{@site.title}}</title> | ||
| <meta property="og:type" content="website"> | ||
| <meta property="og:site_name" content="{{@site.title}}"> | ||
| <meta property="og:title" content="{{@site.title}}"> | ||
| <meta name="twitter:title" content="{{@site.title}}"> | ||
|
|
||
| <link rel="canonical" href="{{@site.url}}"> | ||
| <meta property="og:url" content="{{@site.url}}"> | ||
| <meta name="twitter:url" content="{{@site.url}}"> | ||
|
|
||
| {{#if @site.icon}} | ||
| <link rel="icon" href="{{img_url @site.icon absolute="true"}}" type="image/png"> | ||
| {{/if}} | ||
|
|
||
| {{#if @site.description}} | ||
| <meta name="description" content="{{@site.description}}"> | ||
| <meta property="og:description" content="{{@site.description}}"> | ||
| <meta name="twitter:description" content="{{@site.description}}"> | ||
| {{/if}} | ||
|
|
||
| {{#if @site.cover_image}} | ||
| <meta property="og:image" content="{{img_url @site.cover_image absolute="true"}}"> | ||
| <meta name="twitter:image" content="{{img_url @site.cover_image absolute="true"}}"> | ||
| {{/if}} | ||
|
|
||
| <meta name="referrer" content="no-referrer-when-downgrade"> | ||
| <meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1, maximum-scale=1"> | ||
| <meta name="mobile-web-app-capable" content="yes" /> | ||
| <meta name="apple-mobile-web-app-capable" content="yes" /> | ||
|
|
||
| <link rel="stylesheet" href="{{asset "public/ghost.css" hasMinFile="true"}}"/> | ||
| </head> | ||
| <body> | ||
| <div class="gh-app"> | ||
| <div class="gh-viewport"> | ||
| <main class="gh-main" role="main"> | ||
| <div class="gh-flow"> | ||
| <div class="gh-flow-content-wrap"> | ||
| {{#if @site.icon}} | ||
| <img class="site-icon" src="{{img_url @site.icon absolute="true"}}" alt="icon"> | ||
| {{/if}} | ||
| <section class="gh-flow-content private"> | ||
| <header> | ||
| <h1>{{t "This site is private."}}</h1> | ||
| </header> | ||
| <form class="gh-signin" method="post" novalidate="novalidate"> | ||
| <div class="form-group{{#if error}} error{{/if}}"> | ||
| {{input_password class="gh-input" placeholder=(t "Password")}} | ||
| {{#if error}} | ||
| <p class="main-error">{{error.message}}</p> | ||
| {{/if}} | ||
| </div> | ||
| <button class="gh-btn" type="submit"><span>{{t "Access site"}} →</span></button> | ||
| </form> | ||
| </section> | ||
| </div> | ||
| </div> | ||
| </main> | ||
| </div> | ||
| </div> | ||
| </body> | ||
| </html> | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: Missing translation keys in English locale file
The English locale file
en.jsonis missing two translation keys that are used in templates and exist infr.json:"% min read"(used inpost.hbsfor thereading_timehelper'sminutesparameter) and"and"(used incontent-cta.hbsfor tier list separators). This inconsistency between locale files may cause translation lookups to fail or display incorrect text for English users.Additional Locations (2)
post.hbs#L37-L38partials/content-cta.hbs#L19-L22