GiellaLT

GiellaLT provides an infrastructure for rule-based language technology aimed at minority and indigenous languages, and streamlines building anything from keyboards to speech technology.

View GiellaLT on GitHub

Page Content

Localising apps and webapps related to the GiellaLT infrastructure

App overview

The following apps & webapps need localisation:

Localisation of each of them is described below.

borealium.org

All pathnames in this section are relative to the root of the borealium.org repository.

Languages and fallback mechanisms

data/languages.ts contains a list of all languages covered by the site. It has four sections:

regions
Defines all BCP-47 compatible area codes used in the portal, with their localised names. Regions are used to cover linguistic or orthographic variation following the regions, or just to ensure a most useful fallback list depending on region: SME in Finland should fall back to Finnish, then English, while SME in Sweden should fall back to Swedish, then English.
languages
The main language definition, contains language codes and the human readable names.
fallbacks
This is a fallback definition for page content when the requested content is not available in the desired language. This makes pages "multilingual", but in a controlled manner, so that the most appropriate language available is used to build each element of the page.
uiOnly
Languages that are only used to select page language in the portal, not to select tools = we do not make or promote tools for these languages (at least not in this portal).
excludeFromUi
Languages for which we do not have any translated content, but for which we still want them listed in the tools list. That is, skip these languages in the language selection drop down for the site, but list them in the overview of resources for languages.

Categories

data/categories.ts contains localised names and descriptions of categories.

It is seen on top of each category page. One gets to these pages when clicking on a category label.

Resources

data/resources/ contains the definition of all resources described on the site. Except for the file mod.ts, all files contain strings that should be localised. The strings are the following:

Content files

Most of the content for the portal lives in src/. All localisable text is placed in .flt files, including in subdirs. At present, the following dirs contain .flt files to be localised:

src/
├── _components
│   └── landing
├── _includes
├── about
├── doc
│   ├── divvun-manager
│   └── website
├── post
│   └── ...
└── privacy

Divvun Manager

macOS

See the README. But it boils down to the following:

strut-icu-generate swift Support/LocalisationResources/base.yaml \
                         Support/LocalisationResources/{your other langs}.yaml \
                   -o .

Windows

See the README. But it boils down to the following:

Both

DM One-click installer

(Windows only)

TBW - support and documentation missing

Package names and descriptions

Packages are what we distribute to users, such as speller and keyboard packages. They are listed in various places, always with a name, and often with a corresponding description, both of which can be localised.

Below is an example of how both strings show up in borealium.org:

Pahkattekst i Boeralium

and in the package listing in Divvun Manager:

Pahkattekst i Divvun Manager

Package names & descriptions are stored and localised in the following files:

As a general rule, the minimum localisation should be:

This ensures that the tool is presented in an expected language for most users. Other localisations can of course be added ad lib.

The names and descriptions will be propagated in two steps:

  1. they will be accessible on the next package update (ie after the next successfull nightly build and upload of already existing packages) - this will copy the data found in the repositories to the Páhkat index files.
  2. the next time borealium.org is build or Divvun Manager loads data anew - then both will read the updated data in the Páhkat index files.

Both steps are automatic and happen regularly, so on average, new package descriptions will be available pretty soon after they have been committed and pushed.

Páhkat

Categories and channel labels

Category and channel labels are defined in .toml files in main/strings/. The following is the content of the en.toml (English) file:

[tags]
"cat:keyboard-layouts" = "Keyboards"
"cat:spellers" = "Spellers"
"cat:speller-engines" = "Speller Engines"

[channels]
"default" = "Stable"
"nightly" = "Nightly"
"beta" = "Beta"

The category labels are used as category headings in Borealium.org:

Pahkatkategori_i_borealium.png

and the channel labels show up in the settings in Divvun Manager:

Pahkatkategori_i_borealium.png

Other strings

There are a couple of other strings as well that could or should be translated.

Language listing heading

This is defined in main/index.toml:

[name]
en = "Divvun Languages"
ru = "Языки Divvun"

[description]
en = "The repository of all languages supported by Divvun."

(The description is presently not being used anywhere, AFAIK.)

This text is found several places:

Pahkattekst_i_DM_settings2.png

Pahkattekst_i_DM_settings2.png

More strings

The following files and directories contain localisable strings:

It is unclear whether these strings are displayed, if at all.

satni.org

TBW