locale en LC_MESSAGES messages.po de LC_MESSAGES messages.po es LC_MESSAGES messages.po
$ mkdir -p static/i18n $ ./node_modules/.bin/compile-json locale static/i18n
static i18n en messages.json messages.js de messages.json messages.js es messages.json messages.js
# Spanish translations for PACKAGE package. # Copyright (C) 2013 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Austin King <ozten@localhost>, 2013. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2012-06-24 09:50+0200\n" "PO-Revision-Date: 2013-04-24 16:42-0700\n" "Last-Translator: Austin King <ozten@nutria.localdomain>\n" "Language-Team: Spanish\n" "Language: es\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" #: /home/ozten/abide-demo/views/homepage.ejs:3 msgid "Mozilla Persona" msgstr "Mozilla Personidada"
"messages": { "": { "Project-Id-Version": " PACKAGE VERSION\nReport-Msgid-Bugs-To: \nPOT-Creation-Date: 2012-06-24 09:50+0200\nPO-Revision-Date: 2013-04-24 16:42-0700\nLast-Translator: Austin King <ozten@nutria.localdomain>\nLanguage-Team: German\nLanguage: de\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\nContent-Transfer-Encoding: 8bit\nPlural-Forms: nplurals=2; plural=(n != 1);\n" }, "Mozilla Persona": [ null, "Mozilla Personidada" ] } }
app.use(i18n.abide({ supported_languages: ['en-US', 'de', 'es', 'zh-TW'], default_lang: 'en-US', translation_directory: 'static/i18n' }));
app.use(i18n.abide({ supported_languages: ['en-US', 'de', 'es', 'zh-TW', 'it-CH'], debug_lang: 'it-CH', ...
<%= gettext('<p>Buy <a href="/buy?prod=blue&type=ticket">Blue Tickets</a> Now!</p>') %> <p><%= format(gettext('Buy <a href="%s">Blue Tickets</a> Now!'), ['/buy?prod=blue&type=ticket']) %></p> <p><%= format(gettext('Buy <a href="%(url)s">Blue Tickets</a> Now!'), {url: '/buy?prod=blue&type=ticket'}) %></p>
msgid "<p>Buy <a href=\"/buy?prod=blue&type=ticket\">Blue Tickets</a> Now!</p>" msgid "Buy <a href="%s">Blue Tickets</a> Now!" msgid "Buy <a href="%(url)s">Blue Tickets</a> Now!"
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
. ! - , . URL.
format , , HTML, , .
, . , URL. - .
- , :
<p><%= format(gettext('Welcome back, %(user_name)s'), {user_name: user.name}) %></p>
, .
. CSS, .
CSS. . , .
. , 100%- , , .
, . .
, .
: " Node.js " " Node " " , " " . 1 β , , " " , " " . 2 β etagify " " - node-convict " " . 3 β " " Node.js. 1 " " Node.js. 2: " " Node.js. 3: " " Awsbox - PaaS- Node.js Amazon "
Source: https://habr.com/ru/post/198252/
All Articles