Localisation File Format
A description of the custom format used by Reloaded for localising.
The file format used by Reloaded3 for localization is designed to deliver a good tradeoff between:
- Human Readability (especially for non-programmers)
- Parsing Speed
Cheat Sheet
##denotes the line is a comment[[KEY]]marks an entry.
Entries
Translatable keys are represented in the following format.
[[KEY]]
Value
A key starts with [[ and ends with ]].
All text after ]] is discarded.
The value is read from the start of the next line.
Standard style for keys uses the following
UPPER_SNAKE_CASE- Shorthand or exact string as stored in text.
Comments
Comments may be represented by a ## at the start of a line,
in which case the entire line is ignored by the parser
## This is a comment
[[KEY]]
Alternatively, it's possible to put comments next to the keys.
[[KEY]] ## This is a comment
Since all characters after ]] are ignored until end of line.
Escape Characters
No characters are escaped. Every character is treated literally.
Lines that are not comments should simply not start with ## or [[.
As a workaround, you can use a Zero Width White Space at the start of a line, if an escape is really needed.
New lines are saved as \n. Any sequences of \r\n should be converted to \n.
Placeholders
Placeholders for string formatting may be included with {}.
[[KEY]]
This is a string with a placeholder: {}
Multiple placeholders may also be used:
[[KEY]]
This is a string with multiple placeholders: {} and {}
These placeholders should map to a programming language's given string formatting system.
For example, in Rust, this would be format!(text(KEY), value1, value2) and in C#
this would be string.Format(text(KEY), value1, value2).
For some languages, it may be necessary to manipulate the returned string to match the native format
upon initial file read. For example, a C# implementation might want to replace first {} with {0}.
Tip
An implementing library may also provide an export like get_text_formatted(KEY, values), where
values is a list of strings to be inserted into the placeholders.
An Example
## Update 1.0.0 | 2024 April 1st
## Initial Release
[[ADD_AN_APPLICATION]]
Add an Application
[[CREATING_DEFAULT_CONFIG]]
Creating Default Config
[[SEARCH_MODS]]
Search Mods
## Update 1.1.0 | 2024 May 2nd
## Added Placeholder Text
[[MOD_LIST_DUMMY_TEXT]]
Reloaded3 is cool >w<! Go get some mods, silly!
## Update 1.2.0 | 2024 June 3rd
## Added Error Handling
[[ERROR_UNKNOWN]]
Unknown Error
[[ERROR_FAILED_TO_START_PROCESS]]
Failed to start the process. This generally happens due to one of the 2 issues:
- The program is configured to run as administrator (right click -> properties) but Reloaded is running in user mode.
- Interference from e.g. Antivirus software. Check your logs.
Here is the error returned from your OS {}
Syntax Highlighting
You may be able to get good syntax highlighting by setting your language as TOML.
This is what this wiki page does 😉