| liblouis 3.1.0 has been released |
| |
| The liblouis developer team is proud to announce the liblouis release |
| 3.1.0. The release is available for download at: |
| |
| https://github.com/liblouis/liblouis/releases |
| |
| Introduction |
| ============ |
| |
| Liblouis is an open-source braille translator and back-translator. It |
| features support for computer, literary and math braille, supports |
| contracted and uncontracted translation for many, many languages[1]. |
| It plays an important role in an open source accessibility stack and |
| is used by screenreaders such as NVDA, Orca and JAWS. A companion |
| project liblouisutdml[2] deals with formatting of braille. |
| |
| Changes in this release |
| ======================= |
| |
| An influx of new contributors have made sure that liblouis continues |
| to improve. Back translation has seen major improvements, there are |
| some additional modes to help screen readers, for many tables meta |
| data has been added, the Python bindings are more robust, Windows |
| support has been improved, the YAML test suite has been generalized |
| and as usual new and improved braille tables have been included. On |
| the licensing front we managed to get almost all tables re-licensed to |
| LGPLv2.1+. |
| |
| New features |
| ~~~~~~~~~~~~ |
| |
| Meta data |
| --------- |
| |
| Most of the translation tables now contain meta data. This makes them |
| discoverable. Programs can use the lou_findTable function to find a |
| table based on a query. |
| |
| noUndefinedDots mode |
| -------------------- |
| |
| Add a noUndefinedDots mode to disable the output of dot numbers when |
| back-translating undefined patterns. Thanks to James Teh. |
| |
| When back translating input from a braille keyboard cell by cell, it |
| is desirable to output characters as soon as they are produced. |
| Similarly, when back translating contracted braille, it is desirable |
| to provide a "guess" to the user of the characters they typed. To |
| achieve this, liblouis needs to have the ability to produce no text |
| when indicators (which don't produce a character by themselves) are |
| not followed by another cell. This works already for indicators |
| liblouis knows about such as capital sign, number sign, etc., but it |
| does not work for indicators which are not (and cannot be) |
| specifically defined as indicators. For example, in UEB, dots 4 5 6 |
| alone produces the text "\456/". Setting the noUndefinedDots mode |
| suppresses this dot number output. |
| |
| partialTrans mode |
| ----------------- |
| |
| Add a partialTrans mode to specify that back-translation input should |
| be treated as an incomplete word. Thanks to James Teh. |
| |
| If this mode is set, rules that apply only for complete words or at |
| the end of a word will not take effect. This is intended to be used |
| when translating input typed on a braille keyboard to provide a rough |
| idea to the user of the characters they are typing before the word is |
| complete. |
| |
| YAML test framework |
| ------------------- |
| |
| The YAML framework has been extended and is much more useful now. You |
| can test multiple tables within one YAML file, you can define test |
| tables directly inline and you can test multiple tables using the same |
| test data. Refer to the documentation for the details. |
| |
| If really not wanted the YAML tests can be disabled by specifying |
| `configure --without-yaml'. |
| |
| Bug fixes |
| ~~~~~~~~~ |
| |
| - Fixes implicit declaration of 'pattern_check' thanks to Reiner Dolp |
| - Fix a stackoverflow crash on applications with smaller stack size. |
| Thanks to Victor Montalvão. |
| - Fix the \v escape sequence. Thanks to Davy Kager. |
| - The Python bindings now give a helpful error if liblouis has been |
| compiled with a different character size than Python. Thanks to Matt |
| Wenn. |
| - Massive bug fixes in multipass rules. Dave Mielke has done a |
| tremendous job improving the multipass machinery also in the context |
| of back-translation. Where needed nofor/noback has been added to the |
| multipass rules. |
| |
| Other changes |
| ~~~~~~~~~~~~~ |
| |
| - Improvements to the Emacs mode for editing liblouis tables thanks to |
| Christian Egli |
| - Documenting lou_charSize thanks to Reiner Dolp |
| - Support for relative table paths in the tests. This will make sure |
| you always know which table a test actually uses. |
| - Infrastructure to build windows binaries in a Docker container, |
| thanks to Bert Frees |
| |
| Braille table improvements |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| |
| - UEB improvements, thanks to Mike Gray |
| - Fixed apostrophe and back translation |
| - Added rules for Unicode apostrophe handling |
| - Improvements to UEB and Nemeth math |
| - Complete overhaul of Lithuanian 8-dots table, thanks to Rimas |
| Kudelis |
| - New Urdu 6 Dot Grade 1 and 2 Braille tables thanks to Jake Kyle |
| - Improvements to Italian 8 dots computer braille, thanks to Simone |
| Dal Maso. |
| - New table `unicode-braille.utb' that helps to back translate braille |
| input to Unicode braille output, thanks to Leonard de Ruijter. |
| - Improvements to the Chinese braille table thanks to Coscell Kao. |
| - New Turkish braille table for grade 1 that should replace the old |
| `tr.ctb' table, thanks to Arend Arends. |
| - New Persian grade 1 table and 8-dots computer table thanks to |
| Mohammadreza Rashad. |
| - New table for the International Phonetic Alphabet thanks to Ludovic |
| Oger |
| - Fixes for the French 6 and 8 dots tables thanks to Michel Such. Some |
| errors have been fixed and many Unicode characters have been added. |
| - Add an extended 8-dot computer braille table for U.S. English thanks |
| to Davy Kager. The table is tailored for use on Windows (CP-1252) |
| and uses dot patterns from Windows screen readers, but should be |
| useful on other platforms too. |
| - New Greek table that is better than the existing Greek Grade 1 |
| Braille Table (gr-gr-g1.utb) thanks to Dave Mielke. |
| - Improved number back-translations on fr-fr-g1 and vi-g1 tables |
| thanks to Victor Montalvao. |
| - New Chinese Braille table for use in the mainland of China thanks to |
| Kaifang Bao of RejoinTech. |
| - The Black Circle character is commonly used for displaying password |
| characters. The absence of its definition leads to users not being |
| able to know how many characters were typed in such fields. This has |
| been improved for many tables thanks to Victor Montalvao. |
| |
| License changes |
| ~~~~~~~~~~~~~~~ |
| |
| - DocArch has agreed to re-license their tables, so we have 8 more |
| tables under the LGPLv2.1+. |
| |
| Backwards incompatible changes |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| |
| - The naming in the YAML test framework has changed slightly from |
| `tables:` to `table:`. |
| |
| Next release |
| ============ |
| |
| The next release will be published on June 5, 2017 so please keep up |
| the excellent work and keep those improvements coming. |
| |
| Share and Enjoy! |
| |
| -- Christian Egli, on behalf of the liblouis developers |
| |
| Footnotes |
| ========= |
| |
| [1] See https://github.com/liblouis/liblouis/tree/master/tables |
| [2] See https://github.com/liblouis/liblouisutdml |
| [3] See https://github.com/liblouis/liblouis/wiki/Emphasis-Opcodes#upgrade-from-previous-versions |
| [4] See https://github.com/liblouis/liblouis/wiki/Licensing-of-liblouis-tables |