Application Localizer Visual Studio Code Extension that helps with localizing applications.
Pseudo Locale Generator Web Site
Utilizes app-localizer
- Locale validator
- Check for missing labels
- Multi-file locale support (see example below)
- Polymer file structure
- Angular flat file structure
- Pseudo localizer
- Accents on letters
- Longer sentence
- Longer word
- Right-to-Left
- Enclose in exclamations
- Enclose in brackets
- Support ICU Message syntax
- Create workspace and global settings file (
Ctrl+Shift+P
orCmd+Shift+P
typeApplocalizer: Settings
)- Apply settings immediately after saving changes in
./.vscode/applocalizer.json
file - Support comments in JSON as an extension to JSON specification
- Apply settings immediately after saving changes in
Locale validator options
- filePathPattern Locale files path (supports node glob pattern).
- multiFile Each locale is in separate file in the same folder.
- fileStructure Structure of locale file content (
polymer
orangular.flat
file structure).
Pseudo locale generator options
- expander Sentence expand factor 0.3 = 30%.
- wordexpander Word expand factor 0.5 = 50%.
- brackets Enclose sentence in brackets.
- exclamations Enclose sentence in exclamations.
- accents Convert letter to its accent version.
- rightToLeft RTL writing systems.
- forceException Force throwing syntax exception if any.
- escapeCharacters Escape special characters (
false
for json content)
{
"validator": {
"multiFile": false,
"filePathPattern": "**/locales.json",
"fileStructure": "polymer"
},
"pseudoLocale": {
"expander": 0.3,
"exclamations": true,
"brackets": true,
"accents": true,
"rightToLeft": false,
"wordexpander": 0.5,
"forceException": false,
"escapeCharacters": false
}
}
{
"en-us": {
"label3": "blah3 {token}",
"label1": "blah1",
"label2": "blah2",
"label4": "blah4"
},
"de-de": {
"label3": "blah3 {token}",
"label1": "blah1",
"label2": "blah2",
"label4": "blah4"
}
}
{
"en-us": {
"label3": "blah3 {token}",
"label1": "blah1",
"label2": "blah2",
"label4": "blah4"
}
}
{
"label1": "blah1 {{token}}",
"label2": "blah2",
"label5": "blah3",
"label3": "blah4"
}