Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 1 | liblouis 3.20.0 has been released |
Christian Egli | 15c482e | 2009-01-27 16:23:57 +0000 | [diff] [blame] | 2 | |
Christian Egli | 554b70f | 2014-09-01 13:47:30 +0200 | [diff] [blame] | 3 | The liblouis developer team is proud to announce the liblouis release |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 4 | 3.20.0. The release is available for download at: |
Christian Egli | 15c482e | 2009-01-27 16:23:57 +0000 | [diff] [blame] | 5 | |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 6 | https://github.com/liblouis/liblouis/releases |
Christian Egli | 15c482e | 2009-01-27 16:23:57 +0000 | [diff] [blame] | 7 | |
| 8 | Introduction |
Christian Egli | 554b70f | 2014-09-01 13:47:30 +0200 | [diff] [blame] | 9 | ============ |
Christian Egli | 15c482e | 2009-01-27 16:23:57 +0000 | [diff] [blame] | 10 | |
| 11 | Liblouis is an open-source braille translator and back-translator. It |
Christian Egli | 183d9e7 | 2011-05-09 07:38:36 +0000 | [diff] [blame] | 12 | features support for computer, literary and math braille, supports |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 13 | contracted and uncontracted translation for many, many languages [1]_. |
| 14 | It plays an important role in an open source accessibility stack and is |
| 15 | used by screenreaders such as NVDA, Orca and JAWS. A companion project |
| 16 | liblouisutdml [2]_ deals with formatting of braille. |
Christian Egli | 15c482e | 2009-01-27 16:23:57 +0000 | [diff] [blame] | 17 | |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 18 | Noteworthy changes in this release |
| 19 | ================================== |
Christian Egli | 15c482e | 2009-01-27 16:23:57 +0000 | [diff] [blame] | 20 | |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 21 | This is a major release. Not only in terms of table additions and |
| 22 | updates but also in the way the tables are written. Bert has replaced |
| 23 | the ``uplow`` opcode with a more generalized ``base`` opcode. This |
| 24 | clears up the path for a more generalized handling of emphasis and |
| 25 | uppercase characters. In the course of this simplification some bugs |
| 26 | with computer braille were discovered and fixed. |
| 27 | |
| 28 | On the Braille tables side there is a brand new table for braille kanji |
| 29 | and there are major updates to the Polish, Chinese, Russian literary and |
| 30 | the UEB tables. |
Christian Egli | 6e5a637 | 2021-06-07 18:26:56 +0200 | [diff] [blame] | 31 | |
| 32 | I'd like to thank everybody for helping to bring liblouis forward. |
Christian Egli | 343b1ae | 2016-07-14 17:40:54 +0200 | [diff] [blame] | 33 | |
Christian Egli | 8923b3a | 2018-06-04 18:18:47 +0200 | [diff] [blame] | 34 | For a detailed list of all the changes refer to the list of closed |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 35 | issues [3]_. |
Christian Egli | 1f0ae09 | 2017-09-04 17:23:22 +0200 | [diff] [blame] | 36 | |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 37 | New features |
| 38 | ------------ |
| 39 | |
| 40 | - There is an experimental new feature that allows a table writer to |
| 41 | write table macros. This feature is disabled by default. Macros are a |
| 42 | helpful tool for refactoring, however as it stands the feature is not |
| 43 | mature and might disappear in future releases. |
| 44 | - Add a new opcode ``base`` that associates a character with another |
| 45 | already defined character. Think of it as a generalized form of |
| 46 | ``uplow``. A typical use of this opcode is for defining a pair of |
| 47 | letters, a lowercase and the corresponding uppercase. |
| 48 | |
Christian Egli | 6e5a637 | 2021-06-07 18:26:56 +0200 | [diff] [blame] | 49 | Bug fixes |
| 50 | --------- |
| 51 | |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 52 | - Fix a problem with the dot 7 capitalization indicator in computer |
| 53 | braille thanks to Bert Frees. |
Christian Egli | 6e5a637 | 2021-06-07 18:26:56 +0200 | [diff] [blame] | 54 | |
Christian Egli | b4b192b | 2015-03-02 10:54:30 +0100 | [diff] [blame] | 55 | Braille table improvements |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 56 | -------------------------- |
Christian Egli | 695316a | 2017-12-04 16:51:01 +0100 | [diff] [blame] | 57 | |
Christian Egli | 46e2448 | 2021-12-07 09:18:39 +0100 | [diff] [blame] | 58 | - New table for Kantenji (or "braille kanji", a Japanese |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 59 | braille system) thanks to Kensaku Y. |
| 60 | - Improvements to Polish literary braille table thanks to Łukasz |
| 61 | Golonka. |
Christian Egli | 8eef81b | 2019-12-02 17:41:35 +0100 | [diff] [blame] | 62 | |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 63 | - use correct representation of indexes for squared, cubed etc. |
| 64 | - use correct representation for fractions |
| 65 | - change symbol used for underscore from dots 46 to 6 |
| 66 | - add U+2212 minus symbol (also to computer braille table) |
Christian Egli | 8eef81b | 2019-12-02 17:41:35 +0100 | [diff] [blame] | 67 | |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 68 | - Updates to the Chinese braille table (``zh-tw.ctb``) thanks to |
| 69 | Bo-Cheng Jhan. |
| 70 | |
| 71 | - Complete translation of CJK Radicals Supplement |
| 72 | - Change the default braille pattern of '蛤' to ⠗⠜⠂ |
| 73 | - Correct the default braille pattern of many Chinese characters |
| 74 | - Add various Chinese phrases involving exceptions of braille |
| 75 | patterns |
| 76 | - Add a math symbol '◊' (⠫⠓) |
| 77 | |
| 78 | - Improvements to the Russian literary (uncontracted and contracted) |
| 79 | braille thanks to Andrey Yakuboy. |
| 80 | |
| 81 | - If the dot sign ('.') is after digits at the beginning of a |
| 82 | string, the braille dot 6 isn't inserted between the last digit |
| 83 | and the dot. This is necessary for items' numbers of numbered |
| 84 | lists. |
| 85 | - Back translation for French letters has been disabled because of |
| 86 | conflicts with punctuations. |
| 87 | - Back translation for Latin (mostly English and German) letters has |
| 88 | been improved. |
| 89 | - The definition of the 7/8 fraction (U+215E) has been fixed. |
| 90 | - Placement of spaces around math symbols has been improved |
| 91 | according to the Russian braille rules. |
Christian Egli | 46e2448 | 2021-12-07 09:18:39 +0100 | [diff] [blame] | 92 | - The apostrophe sign ("'") and the right tick sign |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 93 | (u+2019) are displayed correctly if they're in the end of a word |
| 94 | (English, for example). |
| 95 | - New contractions have been added and minor bugs have been fixed in |
| 96 | the Russian contracted braille table. |
| 97 | |
| 98 | - New display table (``ru-brf.dis``) has been added. It adds support of |
| 99 | Braille ASCII for Russian and other Cyrillic tables. Thanks to Andrey |
| 100 | Yakuboy. |
| 101 | - Improvements to UEB thanks to James Bowden. |
| 102 | |
| 103 | - Fixed placement of numeric indicator in letters dot numbers. |
| 104 | - Added more mathematical symbols. |
| 105 | - Added the four new allowed shortform extension words. |
Christian Egli | 46e2448 | 2021-12-07 09:18:39 +0100 | [diff] [blame] | 106 | - Improvements to words starting with "dis(h)" and |
| 107 | "cross(h)". |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 108 | |
| 109 | - Implement alphabet change indicator in Dutch braille thanks to Bert |
| 110 | Frees. |
Christian Egli | 695316a | 2017-12-04 16:51:01 +0100 | [diff] [blame] | 111 | |
| 112 | Other changes |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 113 | ------------- |
Christian Egli | 695316a | 2017-12-04 16:51:01 +0100 | [diff] [blame] | 114 | |
Christian Egli | 10f66b2 | 2021-09-03 11:15:15 +0200 | [diff] [blame] | 115 | Deprecation notice |
| 116 | ------------------ |
| 117 | |
| 118 | - None |
| 119 | |
| 120 | Backwards incompatible changes |
| 121 | ------------------------------ |
| 122 | |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 123 | - The ``uplow`` opcode has been removed and replaced with the more |
| 124 | general ``base`` opcode. |
Christian Egli | 10f66b2 | 2021-09-03 11:15:15 +0200 | [diff] [blame] | 125 | |
| 126 | Invisible changes |
| 127 | ----------------- |
| 128 | |
Christian Egli | d1998f2 | 2017-06-06 14:46:08 +0200 | [diff] [blame] | 129 | New, renamed or removed tables |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 130 | ------------------------------ |
Christian Egli | d1998f2 | 2017-06-06 14:46:08 +0200 | [diff] [blame] | 131 | |
| 132 | New |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 133 | ~~~ |
Christian Egli | 695316a | 2017-12-04 16:51:01 +0100 | [diff] [blame] | 134 | |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 135 | - ru-brf.dis |
| 136 | - ja-kantenji.utb |
| 137 | - latinUppercaseComp6.uti |
Christian Egli | d1998f2 | 2017-06-06 14:46:08 +0200 | [diff] [blame] | 138 | |
| 139 | Renamed |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 140 | ~~~~~~~ |
Christian Egli | 695316a | 2017-12-04 16:51:01 +0100 | [diff] [blame] | 141 | |
Christian Egli | 8eef81b | 2019-12-02 17:41:35 +0100 | [diff] [blame] | 142 | None |
Christian Egli | 695316a | 2017-12-04 16:51:01 +0100 | [diff] [blame] | 143 | |
| 144 | Removed |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 145 | ~~~~~~~ |
Christian Egli | 0dee1fc | 2018-03-05 17:09:58 +0100 | [diff] [blame] | 146 | |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 147 | - ru-ru.dis |
| 148 | - cs-letterDef8Dots.uti |
| 149 | - ru-chardefs.cti |
| 150 | - nl-g0.uti |
| 151 | - nl-BE-g0.utb |
Christian Egli | 2d6ae7e | 2014-12-01 14:37:01 +0100 | [diff] [blame] | 152 | |
Christian Egli | b4b192b | 2015-03-02 10:54:30 +0100 | [diff] [blame] | 153 | Next release |
| 154 | ============ |
Christian Egli | 2d6ae7e | 2014-12-01 14:37:01 +0100 | [diff] [blame] | 155 | |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 156 | The next release will be published on March 7 2022 so please keep up the |
| 157 | excellent work and keep those improvements coming. |
Christian Egli | 15c482e | 2009-01-27 16:23:57 +0000 | [diff] [blame] | 158 | |
| 159 | Share and Enjoy! |
| 160 | |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 161 | – Christian Egli, on behalf of the liblouis developers |
Christian Egli | 971d4e8 | 2009-01-30 10:09:52 +0000 | [diff] [blame] | 162 | |
| 163 | Footnotes |
Christian Egli | 554b70f | 2014-09-01 13:47:30 +0200 | [diff] [blame] | 164 | ========= |
Christian Egli | 971d4e8 | 2009-01-30 10:09:52 +0000 | [diff] [blame] | 165 | |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 166 | .. [1] |
| 167 | https://github.com/liblouis/liblouis/tree/master/tables |
Christian Egli | 8c46e1b | 2018-12-03 16:47:51 +0100 | [diff] [blame] | 168 | |
Christian Egli | 67ab8e9 | 2019-09-02 13:29:53 +0200 | [diff] [blame] | 169 | .. [2] |
| 170 | https://github.com/liblouis/liblouisutdml |
| 171 | |
| 172 | .. [3] |
Christian Egli | 4c2865b | 2021-12-06 18:43:23 +0100 | [diff] [blame] | 173 | https://github.com/liblouis/liblouis/milestone/30?closed=1 |