dlangui.core.i18n
This module contains internationalization support implementation.Translation files contain of simple key=value pair lines.
STRING_RESOURCE_ID=Translation text.
Supports fallback to another translation file (e.g. default language).
Synopsis:
import dlangui.core.i18n; // use global i18n object to get translation for string ID dstring translated = i18n.get("STR_FILE_OPEN"); // UIString type can hold either string resource id or dstring raw value. UIString text; // assign resource id as string text = "ID_FILE_EXIT"; // or assign raw value as dstring text = "some text"d; // i18n.get() will automatically be invoked when getting UIString value (e.g. using alias this). dstring translated = text;
License:
Boost License 1.0
Authors:
Vadim Lopatin, coolreader.org@gmail.com
- struct UIString;
- container for UI string - either raw value or string resource ID
- this(string id);
- create string with i18n resource id
- this(dstring value);
- create string with raw value
- const @property dstring value();
- get value (either raw or translated by id)
- @property void value(dstring newValue);
- set raw value
- ref UIString opAssign(dstring rawValue);
- assign raw value
- ref UIString opAssign(string ID);
- assign ID
- class UIStringList;
- UI string translator
- void clear();
- remove all items
- void set(string id, dstring value);
- set item value
- const dstring get(string id);
- get item value, null if translation is not found for id
- bool load(std.stream.InputStream stream);
- load strings from stream
- bool load(string[] filenames);
- load strings from file (utf8, id=value lines)