Crowdin CLI uses a configuration file that contains a description of the resources to manage: files to be uploaded into Crowdin and the locations of the corresponding translations.
For at benytte Crowdin-CLI skal du først generere din opsætningsfil og herefter afvikle værktøjet. Som standard ser Crowdin-CLI efter en opsætningsfil med navnet crowdin.yml (filnavnet behøves derfor ikke angivet, medmindre dette ikke er crowdin.yml).
Afvikl flg. kommando for at oprette opsætningsfilen:
A valid Crowdin CLI configuration file has the following structure, so please ensure that you fill out all the needed information:
En typisk opsætningsfil vil ligne flg. eksempel:
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"preserve_hierarchy": true
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"files": [
{
"source": "/locale/en/folder1/[0-2].txt", #source files filter
"translation": "/locale/%two_letters_code%/folder1/%original_file_name%" #where translations are stored
},
{
"source": "/locale/en/folder2/[0-2].txt",
"translation": "/locale/%two_letters_code%/folder2/%original_file_name%"
}
]
For at køre ovenstående opsætningsfil og uploade kildefiler til Crowdin:
Hent oversættelser fra Crowdin og placér dem de rigtige steder:
Du kan indlæse API-akkreditiverne fra en miljøvariabel, f.eks.:
"project_id_env": "CROWDIN_PROJECT_ID"
"api_token_env": "CROWDIN_PERSONAL_TOKEN"
"base_path_env": "CROWDIN_BASE_PATH"
"base_url_env": "CROWDIN_BASE_URL"
Hvis blandet, prioriteres api_token samt project_id:
"project_id_env": "CROWDIN_PROJECT_ID" # Low priority
"api_token_env": "CROWDIN_PERSONAL_TOKEN" # Low priority
"base_path_env": "CROWDIN_BASE_PATH" # Low priority
"base_url_env": "CROWDIN_BASE_PATH" # Low priority
"project_id": "projectId" # High priority
"api_token": "personal-access-token" # High priority
"base_path": "/project-base-path" # High priority
"base_url": "https://api.crowdin.com" # High priority
The crowdin.yml file contains a description of the resources to manage and API credentials (project_id, api_token, base_path, base_url). Dvs., at det er risikabelt at lagre denne fil i kodedepotet, da API-nøglen vil være tilgængelig for andre brugere. Crowdin-CLI understøtter to typer opsætningsfiler:
Er der behov for at afvikle en kommando med brugerspecifikke akkreditiver (f.eks. upload-kilder
). så eksekvér flg. kommando:
Er den brugerspecifikke akkreditivfil placeret i $HOME/.crowdin.yml, kan man eksekvere:
Den ovenfor viste prøveopsætning har kilde- og oversættelsesattributter indeholdende standard jokertegn (også betegnet globbing mønstre) for at gøre det nemmere at arbejde med flere filer.
Her er mønstre, du kan bruge:
* (stjerne)
Repræsenterer et hvilket som helst tegn i fil- eller mappenavnet. Angives en “*.json”, vil den indeholde alle filer, såsom “messages.json”, “about_us.json” og alt af filtypen “.json”.
*** (dobbeltstjerne)
Matcher enhver streng rekursivt (inkl. undermapper). Bemærk, at *** kan benyttes i både kilde- og oversættelsesmønstre. Vha. *** i oversættelsesmønsteret vil det altid indeholde en understi fra kilden til en bestemt fil. Der kan f.eks. benyttes kilden: ‘/da/*.po’ for rekursivt at uploade alle *.po-filer til Crowdin. Oversættelsesmønsteret vil være ‘/%two_letters_code%/\/%original_file_name%’.
? (question mark)
Matcher ethvert enkelttegn.
[set]
Matcher ethvert enkelttegn i et sæt. Opfører sig nøjagtig som tegnsæt i Regexp, herunder negation ([^a-z]).
\ (backslash)
Escaper det næste metategn.
Crowdin-CLI gør det muligt at benytte flg. pladsholdere til at indsætte passende variabler i det resulterende filnavn:
Navn | Beskriveslse |
---|---|
%original_file_name% | Oprindeligt filnavn |
%original_path% | Benyt overordnede mappers navne i Crowdin-projektet til at generere filstien i det resulterende bundt |
%file_extension% | Oprindeligt filtypenavn |
%file_name% | Filnavn uden fiíltypeangivelse |
%language% | Sprognavn (f.eks. Dansk) |
%two_letters_code% | Sprogkode ISO 639-1 (f.eks.. da) |
%three_letters_code% | Sprogkode ISO 639-2/T (f.eks. dan) |
%locale% | Landestandard (f.eks. da-DK) |
%locale_with_underscore% | Landestandard (f.eks. da_DK) |
%android_code% | Android Landestandard-ID benyttes ved navngivning af "værdier"-mapper |
%osx_code% | OS X-landestandard-ID benyttet ved navngivning af ".lproj"-mapper |
%osx_locale% | OS X-landestandard benyttet til navngivning af oversættelsesressourcer (f.eks. uk, zh-Hans, zh_HK) |
Du kan også definere stien til filer i det resulterende depot ved at sætte et skråstreg (/) i starten af mønsteret.
Din oversættelsesindstilling
kan se ud som: “/ locale /%two_letters_code%/ LC_MESSAGES /%original_file_name%”.
Opbygning af filer og mapper på den lokale maskine:
- base_path | |-- folder | | | |-- 1.xml | |-- 1.txt | |-- 123.txt | |-- 123_test.txt | |-- a.txt | |-- a1.txt | |-- crowdin?test.txt | |-- crowdin_test.txt | |-- 1.xml |-- 1.txt |-- 123.txt |-- 123_test.txt |-- a.txt |-- a1.txt |-- crowdin?test.txt |-- crowdin_test.txt |-- 3.txt
Eksempel 1. Brug af jokertegn i kildestien:
#........din projektkonfiguration........
"files": [
{
"source": "/**/?[0-9].txt", #upload a1.txt, mappe/a1.txt
"translation": "/**/%two_letters_code%_%original_file_name%"
},
{
"source": "/**/*\\?*.txt", #upload crowdin?test.txt, mappe/crowdin?test.txt
"translation": "/**/%two_letters_code%_%original_file_name%"
},
{
"source": "/**/[^0-2].txt", #upload 3.txt, mappe/3.txt, a.txt, folder/a.txt (ignore 1.txt, folder/1.txt)
"translation": "/**/%two_letters_code%_%original_file_name%"
}
]
Eksempel 2. Brug af jokertegn til ignorering af filer:
#........din projektkonfiguration........
"files": [
{
"source": "/**/*.*", #upload alle filer fra base_path
"translation": "/**/%two_letters_code%_%original_file_name%",
"ignore": [
"/**/%two_letters_code%_%original_file_name%", #ignorér de oversatte filer
"/**/?.txt", #ignorér 1.txt, a.txt, folder/1.txt, mappe/a.txt
"/**/[0-9].txt", #ignorér 1.txt, mappe/1.txt
"/**/*\\?*.txt", #ignorér crowdin?test.txt, folder/crowdin?test.txt
"/**/[0-9][0-9][0-9].txt", #ignorér 123.txt , mappe½/123.txt
"/**/[0-9]*_*.txt" #ignorér 123_test.txt, mappe/123_test.txt
]
}
]
Ofte har softwareprojekter tilpassede navne til lokalmapper. Crowdin muliggør tilknytning af eget sprog mhp. at være genkendeligt i projekter.
Lad os antage, at dine lokalmapper er navngivet ‘en’, ‘uk’, ‘fr’, ‘de’. De kan alle repræsenteres af parameteren %two_letters_code%. Du har stadig en mappe med navnet ‘zh_CH’. Du kan også tilsidesætte sprogkoder for andre parametre såsom %android_code%, %locale% mv.
To make it work with Crowdin without changes in your project, you can set up Language Mapping via UI.
Har du behov for at omdøbe en fil med oversættelser efter eksporten, kan du nemt gøre dette vha. parameteren translation_replace
.
For example, if the file is named “strings_en.po”, it can be renamed to “strings.po”. For this, add a new parameter (at the same level as the translation parameter) to the configuration file (crowdin.yml):
"files": [
{
"source": "/locale/**/*_en.po",
"translation": "/locale/**/%original_file_name%_%two_letters_code%",
"translation_replace": {
"_en": ""
}
}
]
I dette tilfælde slettes “_en” blot fra filnavnet.
Fra tid til anden er der filer og mapper i projektet, som ikke kræver oversættelse. I sådanne tilfælde kan lokale pr. fil-regler føjes til dit projekts config-fil.
"files": [
{
"source": "/**/*.properties",
"translation": "/**/%file_name%_%two_letters_code%.%file_extension%",
"ignore": [
"/test/file.properties",
"/example.properties"
]
},
{
"source": "/locale/en/**/*.po",
"translation": "/locale/%two_letters_code%/**/%original_file_name%",
"ignore": [
"/locale/en/templates",
"/locale/en/workflow"
]
}
]
Kildefilerne er som standard tilgængelige for oversættelse til alle projektmålsprog. Skal visse kildefiler ikke oversættes til bestemte målsprog, kan disse udelukkes vha. parameteren ekskluded_target_languages
.
Opsætningsfileksempel:
"files": [
{
"source": "/resources/en/*.json",
"translation": "/resources/%two_letters_code%/%original_file_name%",
"excluded_target_languages": [
"uk",
"fr"
]
}
]
Indeholder en CSV- eller XLS-/XLSX-fil oversættelserne til alle målsprog, skal passende sprogkoder angives i scriptet.
CSV-fileksempel:
Opsætningsfileksempel:
"files": [
{
"source": "multicolumn.csv",
"translation": "multicolumn.csv",
"first_line_contains_header": true,
"scheme": "identifier,source_phrase,context,uk,ru,fr"
}
]
Indeholder CSV- eller XLS-/XLSX-filen kolonner, som skal overspringes under import, så angiv none
for sådanne kolonner i skemaet, f.eks.:
"scheme" : "identifier,source_phrase,context,uk,none,ru,none,fr"
Benyt flg. konstanter for at danne skemaet for CSV- eller XLS-/XLSX-filen:
identifier
– Kolonne indeholder strengidentifikatorer.
source_phrase
– Kolonne indeholder kildestrenge.
source_or_translation
– Kolonnen indeholder kildestrenge, men udfyldes med oversættelser, når filen eksporteres. Når eksisterende oversættelser uploades, vil data fra denne kolonne blive brugt som oversættelser.
translations
– Kolonne indeholder oversættelser.
context
– Kolonne indeholder kommentarer eller kontekstoplysninger til kildestrengene.
max_length
– Kolonne indeholder grænseværdierne max.length for strengoversættelserne.
labels
– Kolonne indeholder etiketter til kildestrengene.
none
– Kolonne, der overspringes under import.
"preserve_hierarchy": true
Eks. på opsætningsfil ved brug af preserve_hierarchy
-muligheden:
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"preserve_hierarchy": true
"files": [
{
"source": "/locale/en/**/*.po",
"translation": "/locale/%two_letters_code%/**/%original_file_name%"
}
]
true
. Let’s say the file/folder structure on your machine looks like this:
- locale | |-- en |-- emails |-- app |-- foo.po |-- bar.po
If you don’t use the "preserve_hierarchy": true
option in your configuration file at all or use it with the false
value, all shared directories will be skipped, and the file structure in Crowdin will be represented as follows:
- foo.po
- bar.po
"preserve_hierarchy": false
option works only if your source files have a shared root directory. Using the "preserve_hierarchy": true
option, the file structure in Crowdin will be represented as follows:
- locale | |-- en |-- app |-- foo.po |-- bar.po
The directories that don’t contain any files for translation won’t be created in Crowdin (i.e., as the emails
directory in the example above).
Denne funktion tilføjer understøttelse af 2 valgfrie parametre i yaml-filafsnittene dest
og type
. Dette benyttes typisk i projekter, hvor det uploadede navn skal være anderledes, så Crowdin kan registrere typen korrekt.
dest
-parameteren giver mulighed for at angive et filnavn i Crowdin. Det fungerer for flere filer på én gang og understøtter flg. variabler: %original_file_name%, %original_path%, %file_extension%, %file_name%.
mest
-parameter, skal opsætningsfilen indeholde parameteren preserve_hierarchy
med værdien true.Eksempel på en opsætningsfil med begge parametre:
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"preserve_hierarchy": true
"files": [
{
"source": "/conf/**/*.txt",
"dest": "/conf/**/%file_name%.properties",
"translation": "/conf/**/%two_letters_code%/%file_name%.properties",
"type": "properties"
},
{
"source": "/app/*.txt",
"dest": "/app/%file_name%.xml",
"translation": "/res/values-%android_code%/%original_file_name%",
"type": "android"
},
{
"source": "/conf/**/*.txt",
"dest": "/%original_path%/%file_name%.properties",
"translation": "/conf/**/%two_letters_code%/%original_file_name%",
"type": "properties"
}
]
Parameteren update_option
er valgfri. Opsættes den ikke, mistes oversættelser til ændrede strenge. Nyttigt for skrivefejlrettelser og mindre kildestrengsændringer.
Afhængigt af værdien benyttes update_option
til at bevare oversættelser og bevare/fjerne valideringer af ændrede strenge under filopdatering.
Værdierne er:
Eksempel på en opsætningsfil med update_option-parameteren:
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"files": [
{
"source": "/*.csv",
"translation": "/%three_letters_code%/%file_name%.csv",
"first_line_contains_header": true,
"scheme": "identifier,source_phrase,translation,context",
"update_option": "update_as_unapproved"
},
{
"source": "/**/*.xlsx",
"translation": "/%three_letters_code%/folder/%file_name%.xlsx",
"update_option": "update_without_changes"
}
]
Upload XML-, HTML- og MD-kildefiler mv. uden en nøgleværdistruktur med egne segmenteringsregler. Hvis ikke angivet, anvendes de prædefinerede segmenteringsregler (SRX 2.0) til automatisk indholdssegmentering.
Eks. på en opsætningsfil med tilpasset segmentering:
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"files": [
{
"source": "/emails/sample1.html",
"translation": "/emails/%locale%/%original_file_name%",
"custom_segmentation": "/rules/sample.srx.xml"
}
]
Kommandoen upload translations uploader eksisterende oversættelser til Crowdin. Er ingen indstillinger angivet, så importeres og godkendes uploadede oversættelser ikke, selvom de svarer til kildestrengene.
Værdierne er:
translate_content valgfrit | bool | Definerer, hvorvidt tekster omsluttet af tags skal oversættes. Gyldige værdier er 0 eller 1. Standard er 1. |
translate_attibutes valgfri | bool | Definerer, hvorvidt tagattributter skal oversættes. Gyldige værdier er 0 eller 1. Standard er 1. |
content_segmentation valgfri | bool | Definerer, hvorvidt lange tekster skal opdeles i kortere segmenter. Gyldige værdier er 0 eller 1. Standard er 1. Bemærk: Når Indholdssegmentering er aktiveret, håndteres oversættelsesupload af en eksperimentel maskinlæringsteknologi. |
translatable_elements valgfri | matrix | Dette er en matrix af strenge, hvori hvert element er XPaths tilet DOM-element, der skal importeres. Eksempelsti: /path/to/node or /path/to/attribute[@attr] Bemærk! Hvis angivet, tages parametrene translate_content og translate_attributes ikke i betragtning under importen. |
Eksempel på en opsætningsfil med ekstra parametre:
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"files": [
{
"source": "/app/sample1.xml",
"translation": "/app/%locale%/%original_file_name%",
"translate_attributes": 1,
"translate_content": 0
},
{
"source": "/app/sample2.xml",
"translation": "/app/%locale%/%original_file_name%",
"translatable_elements": [
"/content/text", # translatable texts are stored in 'text' nodes of parent node 'content'
"/content/text[@value]" # translatable texts are stored in 'value' attribute of 'text' nodes
]
}
]
content_segmentation valgfri | bool | Definerer, hvorvidt lange tekster skal opdeles i kortere segmenter. Kun for TXT, DOCX, DITA, IDML, MIF, MEDIAWIKI, HTML, Front Matter HTML, Markdown, Front Matter Markdown, XML, XLIFF, XLIFF 2.0> Gyldige værdier er 0 eller 1. Standard er 1. Bemærk: Når Indholdssegmentering er aktiveret, håndteres oversættelsesupload af en eksperimentel maskinlæringsteknologi. |
Eksempel på en opsætningsfil med ekstra parametre:
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"files": [
{
"source": "/emails/sample1.html",
"translation": "/emails/%locale%/%original_file_name%",
"content_segmentation": 1
}
]
Flg. eksportindstillinger kan bruges til at opsætte den ønskede eksportadfærd for hver filgruppe:
skip_untranslated_strings
– Kun oversatte strenge inkluderes i de eksporterede oversættelsesfiler.
skip_untranslated_files
– Kun oversatte strenge vil blive inkluderet i de eksporterede oversættelsesarkiver.
export_only_approved
– Kun tekster, som både er oversat og godkendt, inkluderes i de eksporterede oversættelsesfiler.
Eks. på en opsætningsfil med begge parametre:
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"preserve_hierarchy": true
"files": [
{
"source": "/locale/en/**/*.po",
"translation": "/locale/%two_letters_code%/**/%original_file_name%",
"skip_untranslated_strings": true
},
{
"source": "/locale/en/**/*.json",
"translation": "/locale/%two_letters_code%/**/%original_file_name%",
"skip_untranslated_files": true
},
{
"source": "/locale/en/**/*.yml",
"translation": "/locale/%two_letters_code%/**/%original_file_name%",
"export_only_approved": true
}
]
Definerer, om et enkelt anførselstegn skal escapes af et andet enkelt anførselstegn eller bagudvendt stråstreg i eksporterede oversættelser. Der kan tilføjes escape_quote
pr. fil muligheden. Gyldige værdier er: 0, 1, 2, 3. Standard er 3.
Værdierne er:
Escaper specialtegn
Definerer, hvorvidt visse specialtegn (=, :, ! og #) skal escapes med bagudvendt skråstreg i eksporterede oversættelser. Der kan tilføjes escape_special_characters
pr. fil muligheden.
Gyldige værdier er 0, 1. Standard er 1.
Opsætningsfileksempel:
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"files": [
{
"source": "/en/strings.properties",
"translation": "/%two_letters_code%/%original_file_name%",
"escape_quotes": 1,
"translate_content": 0,
"escape_special_characters": 0
}
]
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"files": [
{
"source": "/*.csv",
"translation": "/%two_letters_code%/%original_file_name%",
# Specifies whether first line should be imported or it contains columns headers
"first_line_contains_header": true,
# used only when uploading CSV file to define data columns mapping
"scheme": "identifier,source_phrase,translation,context,max_length"
}
]
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"files" : [
{
"source" : "/locale/en/**/*.po",
"translation" : "/locale/%two_letters_code%/LC_MESSAGES/%original_file_name%",
"languages_mapping" : {
"two_letters_code" : {
"zh-CN" : "zh_CH",
"fr-QC": "fr"
}
}
}
]
"project_id": "projectId"
"api_token": "personal-access-token"
"base_path": "/project-base-path"
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com for Crowdin Enterprise
"files" : [
{
"source" : "/res/values/*.xml",
"translation" : "/res/values-%android_code%/%original_file_name%",
"languages_mapping" : {
"android_code" : {
"de" : "de",
"ru" : "ru"
}
}
}
]
VCS-integrationer kræver den samme opsætningsfil som CLI-værktøjet, hvilket betyder, at den samme struktur understøttes. Den eneste forskel er, at der af sikkerhedsmæssige årsager ikke bør gemmes projektlegitimationsoplysninger i fil-headeren. Et par ekstra parametre kan også bruges.
Standard pull request-titel er New Crowdin updates
. For at angive en tilpasset pull request-titel og føje etiketter til pull requesten kan flg. parametre bruges i opsætningsfilen: pull_request_title
, pull_request_labels
.
Eksempel:
"base_path": "/project-base-path"
"pull_request_title": "Custom PR title"
"pull_request_labels": [
"crowdin",
"l10n"
]
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
Hver gang oversættelser commites, vises standardmeddelelsen “Nye oversættelser {fileName} ({languageName})”. Parameteren commit_message
kan benyttes for at tilføje Git-tags (f.eks. for at overspringe builds).
Eksempel:
"base_path": "/project-base-path"
"commit_message": "[ci skip]"
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
Benytte parameteren append_commit_message
med værdien false for at erstatte standard commit-meddelelsen. Du kan også tilføje to valgfrie parametre: %original_file_name% og %language% for at benytte det relevante filnavn og sprogvariablerne i relation hertil.
Eksempel:
"commit_message": "Rettelse: Ny oversættelse %original_file_name% fra Crowdin"
"append_commit_message": false
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
Som standard eksporteres alle sprogene. Ved behov for at eksportere nogle bestemte sprog, så benyt parameteren export_languages
for at angive disse.
Eksempel:
"base_path": "/project-base-path"
"export_languages": [
"ru",
"uk",
"ja"
]
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
If you need to assign a pull request to particular users, use the pull_request_assignees
parameter to specify them.
GitHub/GitHub Server
Eksempel:
"base_path": "/project-base-path"
"pull_request_assignees": [
"login1",
"login2"
]
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
GitLab/GitLab Self-Managed
Example:
"base_path": "/project-base-path"
"pull_request_assignees": [
"user_id1", # numeric ID
"user_id2" # numeric ID
]
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
If you need to request a pull request review from particular users, use the pull_request_reviewers
parameter to specify them.
GitHub/GitHub Server
Example:
"base_path": "/project-base-path"
"pull_request_reviewers": [
"login1",
"login2"
]
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
GitLab/GitLab Self-Managed
Example:
"base_path": "/project-base-path"
"pull_request_reviewers": [
"user_id1", # numeric ID
"user_id2" # numeric ID
]
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
Bitbucket
Example:
"base_path": "/project-base-path"
"pull_request_reviewers": [
"uuid1", # user uuid
"uuid2" # user uuid
]
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
Bitbucket Server
Example:
"base_path": "/project-base-path"
"pull_request_reviewers": [
"username1",
"username2"
]
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
Example:
"base_path": "/project-base-path"
"pull_request_reviewers": [
"guid1", # user ID
"guid2" # user ID
]
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%"
}
]
For at føje eksisterende eller nye etiketter til kildestrengene, så brug parameteren labels
. Etiketter føjes kun til kildestrengene under den indledende upload til Crowdin-projektet.
Strenge uploadet til Crowdin-projektet inden brug parameteren labels
får ingen etiket. Fjernes etiketten tilføjet under den indledende upload direkte i Crowdin, gentilføjes den ikke under de næste synkninger.
Etiketnavnene kan indeholde alle tegn undtagen “,
”.
Example:
"base_path": "/project-base-path"
"files": [
{
"source" : "/resources/en/*.json",
"translation" : "/resources/%two_letters_code%/%original_file_name%",
"labels" : [
"android",
"emails"
]
}
]
Read more about Labels.
Der er tilfælde, hvor det er nødvendigt at bruge VCS-integration og CLI til et projekt. I en sådan situation vil man oftest have to separate opsætningsfiler, én til VCS-integration og én til CLI. Man kan dog bruge én enkelt opsætningsfil til begge tilfælde.
Da VCS-integrationsopsætningsfilen ikke indeholder project_id
og api_token
-legitimationsoplysninger, der kræves for CLI, kan disse sendes direkte i kommandoen vha. flg. parametre: -i/--project-id
, -T/--token
. Alternativt kan miljøvariabler anvendes til dette formål.
Som resultat, vil kommandoen til download af oversættelser via CLI se således ud:
Behov for hjælp til brug af Crowdin-CLI eller evt. spørgsmål? Kontakt Supportteamet.