Kedu ihe kpatara na enweghị m ike ịmegharị ngwa ma ọ bụ saịtị m niile site na Google Translate wee nweta ntụgharị asụsụ bụ isi n'asụsụ ọzọ?
*** Ugbu a, ị nwere ike!
Aha hokeylization
bụ portmanteau, nke pụtara 'nchịkọta hokey'
Ọ dị ntakịrị hokey n'ihi na ọ dị mfe: ọ na-eziga eriri na Google Translate
Ma ọ dị mfe, ma dịkwa ike. Ọ nwere nkwado pụrụ iche maka akwụkwọ HTML, HandlebarsJS ndebiri, na Markdown faịlụ.
Ị nwere ike ịtụgharị:
- ihe Javascript nwere ozi
- ọnụọgụ faịlụ ma ọ bụ akwụkwọ ndekọ aha ọ bụla, na-agafe akwụkwọ ndekọ aha mgbe niile
Atụgharịala akwụkwọ README.md a, na-eji ngwa hokeyylization n'onwe ya, banye Google Translate na-akwado asụsụ ọ bụla!
Eji m n'aka na ọ zughị oke, mana enwere m olileanya na ọ ka mma karịa ihe ọ bụla!
🇸🇦 Arabic 🇧🇩 Bengali 🇩🇪 German 🇺🇸 Bekee 🇪🇸 Spanish 🇫🇷 French 🇹🇩 Hausa 🇮🇳 Hindi 🇮🇩 Indonesian 🇮🇹 Ịtali 🇯🇵 Japanese 🇰🇷 Korean 🇮🇳 Marathi 🇵🇱 Polish 🇧🇷 Portuguese 🇷🇺 Russian 🇰🇪 Swahili 🇵🇭 Tagalog 🇹🇷 Turkish 🇵🇰 Urdu 🇻🇳 Vietnamese 🇨🇳 Chinese
Ntụgharị asụsụ nke izizi README nwere ike nwee ntụpọ -- * A nabatara mgbazi!* Biko ziga arịrịọ pull arịrịọ na GitHub, ma ọ bụ ọ bụrụ na ahụ adịghị gị mma ime nke ahụ, mepee mbipụta
Mgbe ị mepụtara mbipụta GitHub ọhụrụ gbasara ntụgharị asụsụ, biko mee:
- tinye URL ibe (detuo / mado site na ebe adreesị ihe nchọgharị)
- tinye ederede ezighi ezi (detuo / mado site na ihe nchọgharị)
- biko kọwaa ihe adịghị mma -- ntụgharị asụsụ ezighi ezi? Agbajiri usoro nhazi ahụ n'ụzọ ụfọdụ?
- jiri obiọma nye ntụnye nke ntụgharị asụsụ ka mma, ma ọ bụ ka esi ahazi ederede nke ọma
- Daalụ!
- [Isi Iyi](#Isi Iyi)
- [Nkwado na Ego](#Nkwado-na Ego)
- Nwụnye
- Nhazi
- Na-atụgharị faịlụ akụrụngwa eriri Javascript
- Ịtụgharị akwụkwọ ndekọ aha faịlụ ederede
- [Nhọrọ ndị ọzọ](#Nhọrọ ndị ọzọ)
- JSON batch nyere iwu
Ana m agbali ịbụ ọkachamara mmepe ngwanrọ mepere emepe. Anọ m na-arụ ọrụ ụlọ ọrụ ngwanrọ ruo ọtụtụ afọ, amalitela m ụlọ ọrụ na-aga nke ọma ma ree ha ụlọ ọrụ ọha. N’oge na-adịbeghị anya, a chụrụ m n’ọrụ, enweghịkwa m ọrụ ọ bụla e debere n’ahịrị
Ya mere, m ga-agbalị ide software na-enyere aka hụ ma ọ na-arụ ọrụ
Ọ bụrụ na ị na-enwe mmasị iji nke a software, M ga-enwe nnọọ obi ụtọ na-enweta ọbụna kacha nta onyinye kwa ọnwa site na Patreon
Daalụ!
Iji jiri ngwa ahịrị iwu, wụnye na iji npm
ma ọ bụ yarn
:
npm install -g hokeylization
yarn global add hokeylization
Iji jiri dị ka ọba akwụkwọ, wụnye ụdị lite
nke pere mpe:
npm install -g hokeylization-lite
yarn global add hokeylization-lite
Mgbe ahụ lee enyemaka maka iwu hokey
:
hokey --help
hokey -h
Chọrọ ịhụ mmepụta n'asụsụ gị ma ọ bụ asụsụ ọzọ?
hokey
-anwa ịchọpụta asụsụ na-akpaghị aka site na mgbanwe gburugburu shei gị
Ị nwere ike ịmanye asụsụ site na ịtọ mgbanwe gburugburu LC_ALL
:
LC_ALL=it hokey --help
Rịba ama na ọ bụrụ na ị hokeylization-lite
, enyemaka iwu dị naanị na Bekee
Tọọ mgbanwe gburugburu GOOGLE_TRANSLATE_PROJECT_ID
iji mata ọrụ ntụgharị asụsụ Google gị
Tọọ mgbanwe gburugburu GOOGLE_APPLICATION_CREDENTIALS
na nzere JSON ị budatara
mgbe ịchọpụtachara ka njirimara si arụ ọrụ na igwe ojii Google (ọ nwere ike ịbụ ihe ọchị)
Ọ bụrụ na ị na-agba ọsọ site na koodu isi mmalite, ị nwekwara ike itinye ndị a na faịlụ .env
na isi mmalite
A ga-ebunye ndekọ aha ha na oge ojiri gaa site na dotenv
Tebụl eriri gị ** ga-abụrịrị na faịlụ Javascript n'otu n'ime ụdị abụọ a:
Mbupu ES6:
export default {
string_key: "some value",
another_key: "another value",
... more keys ...
}
CommonJS mbupụ
module.exports = {
string_key: "some value",
another_key: "another value",
... more keys ...
}
Ọ bụrụ na aha faịlụ a bụ myfile.en.js
, ị nwere ike iji ya tụgharịa ya na Spanish na German:
hokey -l es,de -o myfile.LANG.js myfile.en.js
LANG
dị n'elu bụ ihe pụrụ iche -- ọ bụ okwu echekwara na ngwa a!
Eji koodu asụsụ maka faịlụ mmepụta dochie LANG
Ya mere iwu a dị n'elu na-emepụta faịlụ ndị a:
myfile.es.js
myfile.de.js
Nhọrọ -l
/ --languages
bụ ndepụta nke koodu asụsụ ISO kewapụrụ rikoma.
Google Translate kwadoro
Ọ bụrụ na faịlụ mmepụta adịlarị, a ga-enyocha ya iji chọpụta igodo ndị dị adị. Agaghị atụgharị asụsụ igodo dị adị. A ga-emepụta ma tinye ntụgharị asụsụ maka igodo efu ruo na njedebe nke ihe JS. A na-edegharị faịlụ niile mgbe niile.
Iji manye ntụgharị asụsụ niile, jiri nhọrọ -f
/ --force
Ị nwekwara ike ịtụgharị asụsụ ndekọ aha faịlụ. hokeylization ga-eleta ọ bụla ugboro ugboro tinye n'ime ndekọ ma mee ihe dị n'ime ya site na Google Translate, wee chekwaa mmepụta ya gaa na faịlụ aha aha ya na osisi ndekọ aha dị iche
Mgbe ebumnuche ntụgharị asụsụ gị bụ ndekọ, agbanyere ọnọdụ a
Nhọrọ -o
/ --outfile
na-akọwapụta ndekọ mmepụta
** Nnukwu ịdọ aka ná ntị ***: Mgbe ị na-asụgharị akwụkwọ ndekọ aha, ** akọwala akwụkwọ ndekọ aha mmepụta nke ahụ dị n'ime ndekọ ndenye gị! Ọ bụrụ na ịmee nke a, ị ga-:
- kpalite nlọghachi na-enweghị ngwụcha
- Mepụta ụgwọ Google gị
- mejupụta diski gị
- nwee obere ntụrụndụ
Nke a bụ ọmụmaatụ ihe * agaghị eme *:
hokey -l es -o templates/es templates # <--- DON'T DO THIS!
Mgbe nke a na-eme, a na-ede faịlụ ndị atụgharịrị ka ọ bụrụ templates/es
, wee bụrụ nke ọhụrụ
faịlụ isi mmalite ịtụgharị asụsụ, ebe ha nọ n'okpuru templates/
- usoro a na-aga n'ihu
ruo mgbe ebighị ebi, emela ya!
OK, ka anyị kwuo na ị nwere ụfọdụ ndebiri email na ndekọ:
templates/email/en/welcome.txt
templates/email/en/welcome.html
templates/email/en/verify-account.txt
templates/email/en/verify-account.html
templates/email/en/reset-password.txt
templates/email/en/reset-password.html
Iji tụgharịa asụsụ ndị a niile ka ọ bụrụ Spanish na German, gbaa ọsọ:
hokey -l es,de -o templates/email/LANG templates/email/en
Na nke dị n'elu, LANG
bụ okwu edobere, a ga-ejikwa koodu asụsụ ISO dochie ya
Kedu ihe na-eme mgbe ihe dị n'elu na-agba:
- A ga-emepụta akwụkwọ ndekọ aha
templates/email/es
' natemplates/email/de
' (ọ bụrụ na ha adịghị) - A ga-atụgharị asụsụ ọ bụla faịlụ dị na
templates/email/en
' ka ọ bụrụ Spanish na German - A gaghị emegharị faịlụ mmepụta dị adị ma ọ bụrụ na ijiri
-f
/--force
- Ị ga-emecha nwee usoro ndekọ aha ya na faịlụ dị n'ime
es
' nade
dị ka ị nwere n'okpuruen
Nyefee -n
/ --dry-run
iji gosi ihe a ga-eme, mana emela oku API ọ bụla ma ọ bụ dee faịlụ ọ bụla.
Nyefee -f
/ --force
ka imeghari ntụgharị asụsụ mgbe niile, ọbụlagodi na ha adịlarị
Nyefee -m
/ --match
ka amachi faịlụ emebere mgbe ọ na-agba ọsọ na ọnọdụ ndekọ
Ị nwere ike ọ gaghị achọ ịsụgharị faịlụ * ọ bụla* na akwụkwọ ndekọ aha gị gaa na ndekọ aha gị
Uru nke nhọrọ -m
/ --match
bụ regex (kpachara anya na-ehota okwu iwu!) nke na-akọwapụta.
Kedu faịlụ a ga-atụgharị
Mgbe ị na-enwe obi abụọ, ị nwere ike ijikọ nhọrọ a na -n
/ --dry-run
ka ịhụ faịlụ ndị a ga-atụgharị
Mgbe ụfọdụ -m
ọtụtụ faịlụ. Jiri nhọrọ -e
/ --excludes
ka ewepu nke ọma
faịlụ ndị ga-adakọrịrị
Ị nwere ike depụta ọtụtụ regexes, nke oghere kewapụrụ
Ojiji a na-ejikarị ga-abụ: --excludes node_modules dist \.git build tmp
Urụk a ga-atụgharị asụsụ nwere ike ịnwe ndebiri {{ handlebars }}
, ma nwee ihe nkwado abụọ ma ọ bụ atọ.
Eleghị anya Ịchọghị ka a tụgharịa asụsụ ihe dị n'ime ndebiri ndị ahụ
Nyefee ọkọlọtọ -H
/ --handlebars
, na ihe ọ bụla dị n'ime {{ ... }}
agaghị atụgharịrị
Markdown abụghị ederede ma ọ bụ HTML, yabụ Google Translate nwere ihe isi ike na ya
-M
/ --markdown
na-enyere njikwa pụrụ iche maka faịlụ akara akara
Site na faịlụ akara akara, ọ bụrụ na ijighị ọkọlọtọ -M
, ị ga-ahụ nsogbu ndị a:
- Njikọ ndị gbajiri agbaji. Na ntụgharị asụsụ, mkpụrụedemede oghere na-apụta mgbe nkọwa njikọ akara gwụchara (ya na
]
) mana tupu njikọ ebumnuche ya amalite (ya na(
) Nke a na-eme ka akara akara emeghị nke ọma, yana njikọ ahụ. agbajikwa mgbe ị na-elele akwụkwọ ahụ. - A na-atụgharị asụsụ ngọngọ koodu. Google Translation amaghị ihe markdown na-atụle koodu na ihe ọ na-amaghị
- Oghere na-ezighi ezi maka ngọngọ koodu etinyere. O siri ike idobe oghere na ntụgharị asụsụ
- A ga-atụgharị asụsụ ihe dị n'ime
backticks
, mgbe ị na-achọkarị ka ha bụrụ ụkpụrụ nkịtị
Mgbe agbanyere ọkọlọtọ -M
/ --markdown
:
- Usoro
](
ga-agbakọ na](
si otú a na-edozi njikọ ndị mebiri emebi - A ga-edowe ihe mkpuchi "enweghị ntụgharị asụsụ" n'akụkụ ngọngọ koodu, na-echekwa ntinye kwesịrị ekwesị yana hụ na atụgharịghị ya.
- A ga-edowe ihe mkpuchi "enweghị ntụgharị asụsụ" n'akụkụ ederede n'ime
backticks
iji hụ na atụgharịghị ya
A na-ahazi ihe niile dịka ederede doro anya
Ọ bụrụ na ọdịnaya gị bụ HTML, a ga-emegharị ya ma ọ bụrụ na ị gafere -p html
/ --process-as html
Maka ihe na-akpali akpali: mgbe ị na-ahazi faịlụ na ndekọ, ị nwere ike ịgafe nhọrọ -F
/ --filter
iji nzacha mmepụta tupu edee ya na sistemụ faịlụ
Uru nke nhọrọ a ga-abụrịrị ụzọ gaa na faịlụ JS na-ebupụ ọrụ akpọrọ filter
Ọrụ filter
ga-abụrịrị async
n'ihi na await
ga-akpọ ya
Tupu edee faịlụ na diski, a ga-ebufe ọdịnaya niile dị n'ime ya na ọrụ filter
dị ka eriri
Uru nloghachi sitere na ọrụ filter
bụ ihe a ga-ede n'ezie na nchekwa
Ya mere, ị na-achịkwa ihe niile a ga-ede n'ikpeazụ
A ga-achọ edemede filter
n'ebe ndị a (a ga-etinye .js
na nzacha.
aha, belụsọ na ọ kwụsịrị na .js
)
- Akwụkwọ ndekọ aha ugbu a
- Akwụkwọ ndekọ aha
.hokey-filters
n'ime ndekọ aha ugbu a - Ndekọ aha ya bụ
${HOME}/.hokey-filters
, ebe${HOME}
bụ ndekọ ụlọ nke onye ọrụ ugbu a - Ihe arụnyere n'ime ndekọ ihe nzacha
filter
nwere ike ịbụ ọtụtụ okwu. N'okwu a, okwu mbụ bụ aha nzacha, na
A ga-agafe okwu ndị fọdụrụ dị ka arụmụka maka ọrụ filter
Jiri -h
/ --help
gosi enyemaka
Site na -j
/ --json
, ị nwere ike igba ọtụtụ iwu hokey
Site na nkwekọrịta a na-akpọ faịlụ a hokey.json
, mana ị nwere ike ịkpọ ya ihe ọ bụla ịchọrọ
Ọ bụrụ na ịgafe akwụkwọ ndekọ aha dị ka nhọrọ
-j,
hokeyga-achọ
hokey.json` na ndekọ ahụ.
Faịlụ JSON kwesịrị inwe otu ihe. N'ime ihe ahụ, aha ihe onwunwe ya bụ otu ihe ahụ
nhọrọ ahịrị iwu, gbakwunyere otu ihe agbakwunyere aha ya bụ hokey
Ngwongwo hokey
bụ ọtụtụ iwu iji na-agba ọsọ. Ngwongwo ekwuputara n'ime iwu ndị a ga-
kagbuo nkwupụta oyiri ọ bụla dị na mpụta ihe.
N'ime ihe ọ bụla dị n'usoro hokey
, ị ga-akọwapụta name
, yana faịlụ ntinye na mmepụta
Nke a bụ ọmụmaatụ hokey.json
{
"inputLanguage": "en",
"languages": "es,fr,ja", # can also be an array of strings
"force": false,
"match": null,
"processAs": null,
"excludes": ["exclude-1", "exclude-2"],
"handlebars": false,
"markdown": false,
"regular": false,
"dryRun": false,
"filter": "theFilter.js",
"hokey": [
{
"name": "locale names",
"infile": "messages/locales_en.js",
"outfile": "messages/locales_LANG.js",
"handlebars": true
},
{
"name": "CLI messages",
"infile": "messages/en_messages.js",
"outfile": "messages/LANG_messages.js",
"handlebars": true
},
{
"name": "README",
"infile": "README.md",
"outfile": "lang/LANG/",
"excludes": ["lang/", "node_modules/", "\\.git/", "tmp/"],
"filter": "relativizeMarkdownLinks lang",
"markdown": true,
"index": "lang/README.md"
}
]
}
Nyefee ọtụtụ ụzọ faịlụ dị ka infiles
kama otu ụzọ infile
, dịka na ọmụmaatụ a:
{
... [
{
"name": "my docs",
"infiles": ["README.md", "INSTALL.md", "TUTORIAL.md"],
"outfile": "docs/LANG/",
"markdown": true
]
}
Mgbe ị na-atụgharị asụsụ n'ọtụtụ asụsụ, hokey
nwere ike ịmepụta faịlụ index nke depụtara ntụgharị asụsụ niile emere
ma na-enye njikọ na ha
- Mgbe ị na-emepụta index, ị nwere ike ịnwe naanị otu ntinye ntinye*
Nyefee nhọrọ -I
/ --index
, uru ya bụ ebe a ga-ewepụta faịlụ ndeksi, nke nwere ike ịbụ faịlụ.
ma ọ bụ ndekọ. Ọ bụrụ na ọ bụ ndekọ aha, a ga-eji aha faịlụ ndabara, dabere na ndebiri (lee n'okpuru)
Jiri -A
/ --index-template
' chọpụta ka esi ahazi mmepụta ndeksi. Ị nwere ike ịkọwapụta 'html',
'markdown', 'ederede', ma ọ bụ ụzọ faịlụ gaa na nke gị HandlebarsJS template
Ọ bụrụ na ị kọwapụta template nke gị, ị ga-ezipụtakwa otu faịlụ (ọ bụghị akwụkwọ ndekọ aha) maka -I
/ --index
nhọrọ