[liblouis-liblouisxml] Translatable table names in Liblouis independent with screen readers now used methods: possible doing this?

  • From: Hammer Attila <hammera@xxxxxxxxx>
  • To: liblouis-liblouisxml@xxxxxxxxxxxxx
  • Date: Tue, 22 May 2012 18:32:47 +0200

Hy,

Because in Orca GUI preferences dialog more years ago have possibility to localize table names in the contraction table combo box, I opened a bug ticket with Orca and request accept future want hungarian table names localization strings. I attached a patch with doing this in now using src/orca/braille.py file, similar with other more years added Liblouis tables, but Joanie last comment is very interesting: Possible doing localization support for Liblouis side to screen readers have possibility to get localized table names? If a table name is not localized in Orca, in Orca Preferences dialog/braille page the contraction table combo box the table names presenting with file names basename without extension, for example, hu, hu1, hi, etc. If need doing this task only with Python bindings and only with Linux, possible using for example Gettext support, and need adding with translatable table names and real table file names with a dictionary. Of course, need doing a proper Makefile in the po directory to install binary message catalog files into /usr/share/locale/langs/LC_MESSAGES or /usr/local/share/lang/LC_MESSAGES directory.
Need doing a function with returning this dictionary for screen readers.

But what will be happening in Windows if Liblouis support localized table names?
In NVDA for example how can possible localizing Liblouis table names?
In Orca side have following type strings the src/orca/braille.py file:
TABLE_NAMES = {"Cz-Cz-g1": _("Czech Grade 1"),
               "Es-Es-g1": _("Spanish Grade 1"),
               "Fr-Ca-g2": _("Canada French Grade 2"),
               "Fr-Fr-g2": _("France French Grade 2"),
Other not added tables Orca executing I think following function to generate table list, Joanie will be correct if I saying wrong information:
def listTables():
    tables = {}
    try:
        for fname in os.listdir(tablesdir):
            if fname[-4:] in (".utb", ".ctb"):
                alias = fname[:-4]
                tables[TABLE_NAMES.get(alias, alias)] = \
                    os.path.join(tablesdir, fname)
    except OSError:
        pass
    return tables

Attila
For a description of the software, to download it and links to
project pages go to http://www.abilitiessoft.com

Other related posts: