blob: e3f9170f0125d18cee4848f66ea66c170561eb9c [file] [log] [blame]
Christian Egli13c5d032012-05-31 21:21:01 +00001liblouis NEWS -- history of user-visible changes. -*- org -*-
Christian Egli7fbd3c42009-01-15 22:45:46 +00002
Mesar Hameedd000f182014-10-13 09:49:04 +01003* Noteworthy changes in release 2.6.1 (2014-12-01)
Mesar Hameedc94cc352014-12-01 07:21:36 +00004
5** New features
6*** New Braille tables
7- New grade 1 and grade 2 Gaeilge tables implementing the 2014 UIB standard.
8 Including tests, thanks to Ronan McGuirk, Mesar Hameed.
9
Mesar Hameed60607802014-09-02 16:05:10 +010010** Braille table improvements
Christian Egliec585e82014-09-18 11:10:05 +020011- Updates and correction to Hungarian braille tables, thanks to Hammer
12 Attila.
Mesar Hameed0fa3c922014-11-28 08:33:46 +000013- Correction to English UK grade 2 braille tables and new tests,
14 thanks to Paul Wood, Mesar Hameed
Mesar Hameed60607802014-09-02 16:05:10 +010015
Mesar Hameedc94cc352014-12-01 07:21:36 +000016** Backwards incompatible changes
17- Deleted ga.ctb now superseded by ga-g1.utb and ga.g2.ctb.
18
Christian Eglide22f202014-09-26 17:07:24 +020019** Documentation updates
20- The documentation has been restructured to be more beginner friendly
21 and a short introduction to translation table writing has been added.
22 Thanks to Joseph Lee and Christian Egli
Christian Egliaf52d5c2014-09-01 13:20:26 +020023
Michael Whapplesfd376772014-09-23 15:31:51 +010024** Other changes
25- When compiling with mingw or cygwin resulting dll is liblouis.dll.
Mesar Hameedd000f182014-10-13 09:49:04 +010026- runHarness.py: add new output format, conpact output mode suitable for grepping.
Michael Whapplesfd376772014-09-23 15:31:51 +010027
Mesar Hameedd000f182014-10-13 09:49:04 +010028* Noteworthy changes in release 2.6.0 (2014-9-01)
Christian Eglia519c982014-09-01 11:43:24 +020029This is the first release by the new maintainer team. A lot of work by
30people from across the community contributed to this release. There
Christian Egliaf52d5c2014-09-01 13:20:26 +020031are massive additions and updates to the Braille tables (e.g.
32Afrikaans, Hebrew, many Indian languages, Korean) and also changes to
33the C API to enable call backs for error messages and warnings.
Christian Egli42dc2f12014-08-27 16:54:02 +020034
Christian Egli907c6b42014-05-06 12:18:59 +000035** New features
Christian Egliad7f1222014-08-27 12:37:12 +020036*** New Braille tables
37- Tables for Afrikaans, Cherokee, Hawaiian, Maori, Sotho and Tswana
Christian Egli42dc2f12014-08-27 16:54:02 +020038 were donated by Greg Kearney. Afrikaans, Cherokee, Maori and Hawaiian
Christian Eglid1d67492014-08-27 16:24:10 +020039 all are grade 1 tables and with the exception of Cherokee were
40 derived from World Braille Usage 2013. The Cherokee was taken from
41 the specification published at www.cbtbc.org/cherokee/.
Christian Egliad7f1222014-08-27 12:37:12 +020042*** Logging callback
43There is now a callback system in place to get error messages and
44warnings. This can be used from programs that use liblouis to log
45warnings for example.
Michael Whapples5cdce4a2014-04-11 09:24:55 +000046
Michael Whapplesb4465d02014-03-12 12:23:08 +000047** Bug fixes
Ken Perry643928c2014-07-01 07:01:08 -040048- fix back translation problems when word gets split in unusual places
Christian Eglia326e5f2014-07-07 14:07:38 +020049 causing back translation of whole words for example K5 back
50 translates to Knowledgeen, M>k back translates to Moreark, and M5
51 back translates to Moren. This caused over 8400 extra back
52 translation errors in en-us-g2 and 5000 in en-ueb-g2. Thanks to Ken
53 Perry.
Michael Whapplesb4465d02014-03-12 12:23:08 +000054- Fixed bug to prevent removal of \xffff between largesign rules. This
Christian Egli554b70f2014-09-01 13:47:30 +020055 solves a Liblouisutdml bug where \xffff is used as a segment
Christian Eglida700862014-06-03 10:15:29 +020056 delimiter.
57- Fixed a bug in back translation, when a letsign was encountered, the
Mesar Hameed5353c422014-04-12 18:40:02 +000058 letsign was being applied beyond the element it applied to.
Christian Egli0e8d4e32014-05-21 11:48:49 +020059- Fix memory leaks in the default table resolver introduced in the
60 previous release.
Christian Egli71e292d2014-06-26 16:37:30 +020061- Fixes to the build system by Simon Aittamaa
Michael Whapplesb4465d02014-03-12 12:23:08 +000062
Christian Egli4b1fc482014-03-07 13:06:32 +000063** Braille table improvements
Christian Egli704de6b2014-09-01 10:55:27 +020064- Major improvements to Indian tables thanks to the Indian National
65 Institute for Visually Handicapped, in particular Dipendra Manocha,
Christian Eglida700862014-06-03 10:15:29 +020066 Mesar Hameed, Dinesh Kaushall and Sreeja Parameswaran:
67 - Corrected opcodes for letters, punctuation marks, digits, signs
68 etc.
69 - Updated braille codes according to prescribed braille codes for
70 each Unicode character by the Braille Council of India for all
71 Indian languages.
72 - defined rules for dealing with Nukhta character in Hindi table
73 - defined rule to insert dot-1 between consonant followed by full
74 vowel character in all Indian Languages
75 - defined rules for shifting of halant character before the
76 consonant. This character is placed after the consonant in normal
77 typing but need to be before the consonant in braille. This rule
78 is applicable for all Indian languages.
79 - defined rules for two conjunct characters "ksha and gya" used in
Christian Eglia519c982014-09-01 11:43:24 +020080 all Indian Languages for which there are specific codes in
81 Braille.
Christian Eglie96f5712014-05-28 16:29:25 +020082- New Hebrew table that is based on the new unified Hebrew Braille
83 code standard that was put together on January 2014 after a
84 conference with all of the specialists in this field in Israel. It
85 includes improved representation of Hebrew letters, special letters
86 that are called Nikud, and punctuation symbols. The old Braille
87 standard is not relevant any more. Thanks to Adi Kushnir.
Christian Egli554b70f2014-09-01 13:47:30 +020088- UEB table fixes: Fix ity contraction, fixed the missing end word
89 contraction ;n ;d sign 46. thanks to Ken Perry.
90- Fix for Norwegian where letsign is affecting some extra characters
91 thanks to Lars Bjørndal
92- Much improved hyphenation for Norwegian thanks to Lars Bjørndal
93- Korean Grade 2 now includes support for reading English text using
94 grade 2.
95- en-us-g1.ctb and en-ueb.g1.ctb are now able to display 8 dot Unicode
96 braille.
Christian Egli4b1fc482014-03-07 13:06:32 +000097
Christian Egli01bb6cb2014-03-03 09:59:29 +000098* Noteworthy changes in release 2.5.4 (2014-3-3)
99This release contains nine months worth of braille table improvements
Christian Eglifa849372014-03-03 12:49:25 +0000100for example for Danish, UEB, en-us, Nemeth, Bulgarian, Slovenian and
101many more. Also there are fixes to the core for table path resolving
102and back-translation.
Christian Egli01bb6cb2014-03-03 09:59:29 +0000103
Bert Frees07288aa2014-02-24 09:53:20 +0000104** New features
105 - Added function lou_registerTableResolver for plugging in a table
106 resolver callback from your host language.
107
Christian Egli4b1fc482014-03-07 13:06:32 +0000108** Bug fixes
Christian Egli3af9b4f2013-08-06 13:30:58 +0000109 - Fixed ENDSEGMENT indicator in computer Braille thanks to John
110 Boyer.
111 - Emphasized words should now be contracted consistently thanks to
112 John Boyer.
Christian Egli06f908c2013-09-10 09:09:10 +0000113 - Fixed several problems with back-translation. A slash within a
114 number and strings such as 5-inch-diameter and 25-year-old-man
115 should now back-translate correctly. Thanks to John Boyer.
Christian Eglicbb94fa2013-10-01 12:58:47 +0000116 - Fixed a problem with syllable opcode. Thanks to John Boyer.
Christian Eglibb782552014-01-06 13:37:00 +0000117 - Fix warnings with gcc 4.8.2. Thanks to Peter Lundblad.
Bert Frees07288aa2014-02-24 09:53:20 +0000118 - When a table is specified with an absolute or relative path, the
119 "includes" in that table will now work as expected, meaning files
120 in the same directory will be found.
Christian Egli06f908c2013-09-10 09:09:10 +0000121
Christian Egli4b1fc482014-03-07 13:06:32 +0000122** Braille table improvements
Christian Egli3af9b4f2013-08-06 13:30:58 +0000123 - fr-bfu-comp8.utb: corrections, zero was wrongly displayed in some
124 instances.
125 - en-us-g2.ctb, en-ueb-g2.ctb: Fixes for that's, can't and s'
126 thanks to Ken Perry.
Christian Egli54b994d2014-03-03 10:33:35 +0000127 - en-us-g2.ctb: Fix for back-translation of things like
Christian Egli01bb6cb2014-03-03 09:59:29 +0000128 http://address.com, words including after, capsigns. thanks to
129 Ken Perry.
Christian Egliafd5f402013-09-09 11:13:01 +0000130 - Further corrections and testcases to the Hungarian tables thanks
131 to Hammer Attila
Christian Egli45407ab2013-09-13 07:34:32 +0000132 - Fixed letter sign in en-us and en-ueb tables. Thanks to John
133 Boyer and Ken Perry.
Christian Egli283f0622013-10-17 10:39:37 +0000134 - UEB Fixes thanks to Mesar Hameed, Ken Perry and Joseph Lee:
Christian Eglic0b4f9b2014-01-06 12:42:57 +0000135 - chardefs - correct title and fixed a long standing bug
Christian Egli54b994d2014-03-03 10:33:35 +0000136 where dots 46 was inserted between letters (especially for web
Christian Eglic0b4f9b2014-01-06 12:42:57 +0000137 addresses).
Christian Egli45407ab2013-09-13 07:34:32 +0000138 - Fix problem with at sign.
139 - Removed section of accented letters, that were left behind from
140 US table.
141 - Added todo for accents, to define according to the formal docs.
142 - Corrected mathematical forall symbol.
Mesar Hameedbe21ddc2013-09-20 13:14:08 +0000143 - Modified emphasis dot combinations to follow UEB standard.
Mesar Hameed30532eb2013-09-20 13:27:30 +0000144 - Corrected the display of period when used as a midword.
Christian Egli54b994d2014-03-03 10:33:35 +0000145 - Ensure 'inin' is correctly back-translated in words such as
Christian Egli283f0622013-10-17 10:39:37 +0000146 asinine, feminine and others.
Christian Egli54b994d2014-03-03 10:33:35 +0000147 - Bulgarian bg.ctb: updated to meet modern standards (added Latin
Christian Eglicbb94fa2013-10-01 12:58:47 +0000148 letters, corrected punctuation/mathematical symbols, misc typos).
149 Thanks to Rumiana Kamenska
150 - en-gb-g1.utb: Fixes thanks to Paul Wood
Christian Egli9ec64502013-11-21 09:56:27 +0000151 - Fix for the lich sign in the German tables. Thanks to Halim
152 Sahin.
Christian Egli3f61bda2014-01-08 13:19:42 +0000153 - Nemeth improvements thanks to John Boyer.
Christian Egli01bb6cb2014-03-03 09:59:29 +0000154 - Spaces in nemethdefs.cti were changed to unbreakable spaces.
Christian Egli54b994d2014-03-03 10:33:35 +0000155 This was done so that Nemeth expressions would not be broken
Christian Egli01bb6cb2014-03-03 09:59:29 +0000156 between lines.
Christian Egli3f61bda2014-01-08 13:19:42 +0000157 - The number sign is now inserted between the minus sign and the
158 number at the beginning of an expression. Some problems with
159 pass2 opcodes have also been corrected.
Christian Egli79d44c72014-01-06 11:14:48 +0000160 - The Esperanto table has additional punctuation characters and a
161 test harness. Thanks to Aaron Cannon.
162 - Added missing symbols to the US English BRF display table. Thanks
Christian Eglic0b4f9b2014-01-06 12:42:57 +0000163 to Aaron Cannon.
Christian Egli48c738b2014-01-08 13:25:06 +0000164 - Improvements to the Slovenian table and a new Slovenian eight dot
Christian Eglic0b4f9b2014-01-06 12:42:57 +0000165 computer table provided by Jožef Gregorc.
Christian Egli48c738b2014-01-08 13:25:06 +0000166 - Fixes to the Norwegian tables thanks to Lars Bjørndal
167 - Fixes for less than / greater than.
168 - Add entries for URLs, domains and file names.
Christian Egli01bb6cb2014-03-03 09:59:29 +0000169 - Added ne.utb, an alternative Nepali braille table. One of ne.utb
170 or ne.ctb will be removed/merged in a future version. Keeping
171 both for the time being so that users can test and give feedback
172 on which is most correct. Thanks to Him Prasad Gautam, and Mesar
173 Hameed
Christian Eglifa849372014-03-03 12:49:25 +0000174 - Much improved danish grade 1 and grade 2 6 and 8 dot braille,
175 thanks to Bue Vester-Andersen and Mesar Hameed
Christian Egli3af9b4f2013-08-06 13:30:58 +0000176
177** Backwards incompatible changes
Christian Egli01bb6cb2014-03-03 09:59:29 +0000178 - Delete the table chardefs-ueb.cti as these rules are now provided
179 by en-ueb-chardefs.uti
Mesar Hameed48ccdea2013-07-19 11:28:38 +0000180
Bert Frees07288aa2014-02-24 09:53:20 +0000181** Invisible changes
182 - Refactoring in compileTranslationTable.c: separated more clearly
183 the compilation from the table resolving, removed duplicate code,
184 etc.
185
Christian Egli4fe66452013-06-03 12:18:57 +0000186* Noteworthy changes in release 2.5.3 (2013-6-21)
Christian Egli776fece2013-01-04 09:21:17 +0000187** New features
188*** New Braille tables
189 - Korean grade 1 and grade 2 thanks to Joseph Lee
Christian Eglibe4de912013-01-28 11:24:33 +0000190 - U.K. English 8 dot computer braille table thanks to David
Christian Egli09f0e862013-01-21 15:11:51 +0000191 Reynolds
Christian Eglibe4de912013-01-28 11:24:33 +0000192 - New Russian literary and computer braille tables thanks to Igor
193 B. Poretsky. These replace the older Russian tables which are
Christian Eglid9567d92013-01-28 11:14:15 +0000194 left for backwards compatibility.
Christian Eglibe4de912013-01-28 11:24:33 +0000195 - New hyphenation dictionary for Russian thanks to Igor B.
196 Poretsky.
Christian Eglie30f8c52013-04-02 09:42:32 +0000197 - Updated hyphenation tables for the Norwegian language (nynorsk
198 and bokmål) thanks to Lars Bjørndal.
Mesar Hameedffdb3f62013-04-21 12:44:32 +0000199 - New hyphenation dictionary for Esperanto thanks to Aaron Cannon.
Christian Egli66ac3722013-06-10 09:08:02 +0000200 - New Esperanto grade 1 table, using the x system for accented
201 letters, thanks to Aaron Cannon.
Christian Egli776fece2013-01-04 09:21:17 +0000202
Mesar Hameed6894a1d2013-04-15 12:55:17 +0000203*** runHarness.py:
Mesar Hameedee563b82013-04-15 15:56:44 +0000204 Accept filename globs on the commandline to run specific harness files.
205 In tests/harness, one can do make <filename> or make runall
206 Removed from make check because these checks are checking the validity
207 of our tables, rather than validity of the code.
Mesar Hameed6894a1d2013-04-15 12:55:17 +0000208
Christian Egli776fece2013-01-04 09:21:17 +0000209** Braille Table Improvements
Christian Egli66ac3722013-06-10 09:08:02 +0000210 - da-dk-g2.ctb, mostly rewritten to use nocross and hyphenation
211 table.
212 - Most tables: removed the default collapse whitespace statements,
213 if you need to compress whitespace, consider adding compress.ctb
214 to the list of tables when processing.
215 - Corrections to Unified English Braille Code (Grade 1 and 2),
216 thanks to Joseph Lee
Christian Egli6717e9e2013-01-17 09:50:54 +0000217 - Corrections to apostrophes in the Computer Spanish 8 dots Braille
218 table (Es-Es-G0.utb). Thanks to Juan C. Buno.
Christian Egliabf0e7e2013-01-28 10:53:59 +0000219 - Corrections for double angle quotation marks and emphasis marks
220 in the Norwegian Grade 0 Braille Table. Thanks to Knut Arne
221 Bjørndal.
Christian Egli9f2464b2013-04-17 12:26:09 +0000222 - Fixes for a minor problem regarding the noletsign in Norwegian
223 contracted braille. Thanks to Lars Bjørndal.
Christian Egli1499efb2013-01-28 11:32:02 +0000224 - Corrections to the Italian table thanks to Igor B. Poretsky.
Christian Egli86755ed2013-03-22 12:34:43 +0000225 - Corrections to the Hungarian grade 1 table thanks to Hammer
226 Attila
227 - Corrections to English, U.S. Grade 2 (ABAE) table. Thanks to Ken
228 Perry for reporting the bug and John J. Boyer for fixing it.
Christian Egli66ac3722013-06-10 09:08:02 +0000229 - Further reorganization of the tables to remove duplication. Move
230 litdigit opcode common parts and include where needed.
231 - Removed obsolete en-us-g1.utb, which has been replaced by
232 en-us-g1.ctb.
Mesar Hameeda1c29922013-04-16 12:57:49 +0000233 - Added dictionary harness tests for: en-ueb-g2.ctb, en-us-g2.ctb.
Christian Egli66ac3722013-06-10 09:08:02 +0000234 - Corrections to Nemeth character definitions thanks to Neil
235 Soiffer.
Christian Egli146244e2013-04-09 06:57:05 +0000236 - Corrections to the Esperanto table thanks to Aaron Cannon.
Christian Egli776fece2013-01-04 09:21:17 +0000237
238** Bug Fixes
Christian Egli86755ed2013-03-22 12:34:43 +0000239 - Cursor position calculation is now based on the same code that
240 calculates inpos and outpos. This probably solves a number of
241 bugs.
Mesar Hameeded535d02013-04-13 12:24:55 +0000242 - Fix nocross opcode processing.
Christian Egli66ac3722013-06-10 09:08:02 +0000243 - Fix several buffer over/under runs in
244 lou_translateString.c:hyphenate.
Christian Egli8452ccd2013-04-09 09:51:32 +0000245 - Fix the '=' problem, i.e. fix inputPositions calculation for the
Christian Egli66ac3722013-06-10 09:08:02 +0000246 case where the equals sign is used as the dots operand. Thanks to
247 Bert Frees
Christian Egli4fe66452013-06-03 12:18:57 +0000248 - Fix a bug when resizing a table. Previously not all references to
249 this table were updated.
Christian Egli776fece2013-01-04 09:21:17 +0000250
Christian Egli61093d32013-06-06 07:28:03 +0000251** Backwards incompatible changes
252 - The feature that allowed a mapping between language code and
253 Braille table was removed as it contained a out-of-bounds access
254 bug, was never documented and probably never used. Thanks to
255 Peter Nilsson Lundblad and Jeremy Roman for analyzing this
256 problem and providing a patch.
257
Christian Eglia9749aa2012-12-17 15:18:11 +0000258* Noteworthy changes in release 2.5.2 (2012-12-18)
Christian Egli9f60ddd2012-12-13 10:49:54 +0000259
Christian Eglia9749aa2012-12-17 15:18:11 +0000260While initially planned as mainly a bug fix release this release
261contains some notable new features: There is a new tool to trace which
Christian Egli61506ee2012-12-19 09:29:46 +0000262rules have been used to perform a translation. Also along with other
263new tables the long awaited table for UEB is finally here.
Christian Egli551b8a42012-10-02 14:59:57 +0000264
Mesar Hameed05aa4ba2012-11-17 09:51:35 +0000265** New features
Christian Eglia9749aa2012-12-17 15:18:11 +0000266*** New tool to trace rule application
267 There is a new tool (lou_trace) which helps to trace which rules
268 have been used to perform a Braille translation. This is helpful
269 for writing Braille tables. See the documentation for more
270 information.
Mesar Hameed05aa4ba2012-11-17 09:51:35 +0000271*** New Braille tables
272 - Inuktitut grade 1, thanks to Greg Kearney.
Christian Egli12faab22013-01-18 14:02:17 +0000273 - UEB grade 1 and 2, thanks to Joseph Lee. These tables replace
274 the old UEB tables (UEBC-g1.utb and UEBC-g2.ctb).
Christian Egli686c81d2012-12-06 16:15:48 +0000275 - Korean table thanks to Joseph Lee
Mesar Hameed8f896f92012-12-05 10:26:21 +0000276
277** Braille Table Improvements
Mesar Hameedd90886b2013-03-10 16:26:25 +0000278 - da-dk-g2.ctb, fixes for transposed â, å, æ, ä, ø and ö,
Christian Eglia7ad32f2012-12-07 15:13:54 +0000279 corrected/improved harness tests.
280 - Corrections for en-GB-g2.ctb thanks to Paul Wood
Christian Eglie65f4612012-12-17 10:26:31 +0000281 - Corrections to the Hungarian grade 1 table thanks to Hammer
282 Attila
Mesar Hameed8f896f92012-12-05 10:26:21 +0000283
Christian Eglia9749aa2012-12-17 15:18:11 +0000284** Bug Fixes
285 - Update gnulib
286 - Fix a bug in the correct opcode which causes sometimes random
287 results when translating. Thanks to Bert Frees.
288 - Fixes for compiler warnings.
289 - Fix some Valgrind warnings about invalid reads
Mesar Hameed05aa4ba2012-11-17 09:51:35 +0000290
Christian Eglia81e2db2012-09-21 14:48:54 +0000291* Noteworthy changes in release 2.5.1 (2012-9-24)
Mesar Hameed9d173ec2012-09-14 08:21:46 +0000292
293** Braille Table Improvements
Christian Egli551b8a42012-10-02 14:59:57 +0000294- Fix encoding problem in italian table and added more character
295 definitions. Thanks to Simone Dal Maso <simone.dalmaso@juvox.it>.
296- Rename it-it-g1.utb to it-it-comp6.utb and it-it-g1.utb2 to
297 it-it-comp8.utb.
James Teh4a716ab2012-09-19 05:03:06 +0000298
299** Bug fixes
Christian Egli551b8a42012-10-02 14:59:57 +0000300- Fix outputPos and inlen where an input character generates multiple
301 output characters.
Mesar Hameed9d173ec2012-09-14 08:21:46 +0000302
Christian Egli8974daf2012-09-10 09:53:28 +0000303* Noteworthy changes in release 2.5.0 (2012-9-10)
Christian Egli0ae8b0a2012-09-05 09:33:14 +0000304
305This release contains a tremendous amount of work many developers.
306Many long standing bugs have been fixed. The tables can finally be in
307UTF-8. A grand table cleanup removed duplication from the tables.
308There are now two extensive test frameworks for table writers. A
309number of new tables have been contributed on top of the usual
310assortment of table improvements. Thanks to all of this liblouis has
311already seen quite a bit of uptake in a number of places, notably the
312new DAISY pipeline will ship with this release of liblouis.
Christian Egli539f6b32012-02-27 09:13:17 +0000313
Christian Eglieb7178f2012-09-10 10:08:16 +0000314NOTE: If you have private tables you might want to migrate them to
315utf-8. To do this just use iconv as follows:
316
317 $ iconv -f latin-1 -t utf-8 <input >output
318
Christian Egli539f6b32012-02-27 09:13:17 +0000319** New features
Christian Egli1d7b3022012-05-16 07:59:44 +0000320*** New Braille tables
321 - Estonian grade 0, thanks to Jürgen Dengo.
322 - Portuguese 8 dot Computer braille, Thanks to Rui Fontes
Christian Egli328d0c92012-07-10 07:14:48 +0000323*** UTF-8 support in tables
324 Braille tables can now contain UTF-8 in the opcode arguments.
Christian Egli539f6b32012-02-27 09:13:17 +0000325*** Improvements to the python bindings
326 All constants defined in liblouis.h are now exposed in the bindings.
Christian Eglicc1a0a42012-03-02 13:34:09 +0000327*** Add a doctest infrastructure
Christian Egli66cfe502012-03-01 14:50:42 +0000328 These tests are based on the Python doctest framework and are only
329 run if there is a Python interpreter on the system
Christian Eglicc1a0a42012-03-02 13:34:09 +0000330*** Add a test harness
331 This test infrastructure allows the user to do table tests in a
Christian Egli0ae8b0a2012-09-05 09:33:14 +0000332 simple and concise syntax. These tests are based on the Python
333 nose testing framework and are only run if either Python 2.x or
334 3.x with the related nose python module is installed on the
335 system. See the documentation for more information. Thanks to
336 Mesar Hameed.
Mesar Hameed96f30d82012-07-20 08:43:00 +0000337*** Add a test harness generator
Christian Egli0ae8b0a2012-09-05 09:33:14 +0000338 A harness generator that uses simple text files with a little
339 formatting to help to generate the json harness files. The purpose
340 of this tool is to make it much easier and faster to add checks
341 for a given table. You are expected to read the generated harness
342 file and make necessary changes, the tool only helps you to get
343 the tests into the harness format, not check their validity.
Christian Egli1d7b3022012-05-16 07:59:44 +0000344*** Support for Python 3 in the Python bindings
345 The Python bindings now work for both Python 2 and Python 3.
346 Thanks to Michael Whapples.
Christian Egli539f6b32012-02-27 09:13:17 +0000347
Christian Egli13c5d032012-05-31 21:21:01 +0000348** Improved C-based test framework
349 - Improved the test framework to be able to test translations
350 involving Unicode.
351 - Added numerous tests, e.g. for lowercase and Unicode, for the
352 input position, for repeated, etc.
353
Christian Egli539f6b32012-02-27 09:13:17 +0000354** Improved the documentation
Mesar Hameedaa633e52012-07-26 12:55:37 +0000355 - Document the test harness (json format, fields, flags).
Christian Egli1d7b3022012-05-16 07:59:44 +0000356 - Document the use of Valgrind to find memory leaks
Christian Egli48422152012-06-28 09:06:18 +0000357 - Improve the documentation on the display opcode
Christian Egli539f6b32012-02-27 09:13:17 +0000358
359** Bug fixes
Christian Egli13c5d032012-05-31 21:21:01 +0000360 - lou_allround and lou_translate now properly handle Unicode
Christian Eglie30b08b2012-04-17 08:27:13 +0000361 characters
Christian Egli8b0740d2012-05-11 12:41:02 +0000362 - Fix some issues reported by Valgrind
Christian Egli1d7b3022012-05-16 07:59:44 +0000363 - Fix inputPos for situation where context and multipass opcodes
364 are involved
Christian Egli13c5d032012-05-31 21:21:01 +0000365 - Fixed a number of bugs with the letter, uppercase and lowercase
366 opcodes when dealing with Unicode
Christian Egli9a018072012-06-07 12:08:54 +0000367 - Fixed a couple of bugs with hyphenation (documentation, Python
368 bindings and a number of buffer overruns in the C library).
369 Thanks Milan Zamazal <pdm@brailcom.org> for reporting this.
Christian Eglid4e73742012-06-07 15:33:03 +0000370 - Fix a bug in the $a. matcher in the multipass rules where only 32
371 chars were matched. It now matches 0xffff chars.
Christian Egli8da99ad2012-09-06 19:46:48 +0000372 - Fix a bug reported by James Teh related to pass1Only
Christian Egli539f6b32012-02-27 09:13:17 +0000373
374** Braille Table Improvements
Christian Egli0ae8b0a2012-09-05 09:33:14 +0000375 - all table files have consistent encoding, UTF-8.
Christian Egli13c5d032012-05-31 21:21:01 +0000376 - The grand table cleanup: Reorganize the tables to remove
377 duplication. Move common parts such as Latin letter, eight and
378 six dot digit definitions to separate files which are then
379 included. This should ease table maintenance. Thanks to Mesar Hameed.
Christian Egli1d7b3022012-05-16 07:59:44 +0000380 - Fixes to de-de-comp8.ctb thanks to Aliminator83@gmail.com
Mesar Hameed6ae9d6d2012-06-12 06:50:58 +0000381 - hu1.ctb renamed to hu-hu-g1.ctb
Mesar Hameedfa475f22012-06-12 07:18:43 +0000382 - hu.ctb renamed to hu-hu-comp8.ctb
Mesar Hameed01382982012-07-09 13:54:08 +0000383 - eo.ctb renamed to eo-g1.ctb
384 - Fixes to eo-g1.ctb thanks to Aaron Cannon <cannona@fireantproductions.com>
Christian Egli0ae8b0a2012-09-05 09:33:14 +0000385 - hu-hu-g1.ctb: improvements and extensive test harness, with
386 working back-translation, Thanks to Hammer Attila
Christian Egli8da99ad2012-09-06 19:46:48 +0000387 - Fixes to fr-bfu-comp6.utb and fr-bfu-comp8.utb thanks to Michel
388 Such <michel.such@free.fr>
389 - Reworked and extended Ethiopic braille table ethio-g1.ctb,
390 superseeds gez*, thanks to Dr. Tamru E. Belay
391 <g.braille@sympatico.ca>
Christian Egli8974daf2012-09-10 09:53:28 +0000392 - Fixes to no-no-g3.ctb thanks to Lars Bjørndal <lars@lamasti.net>
Christian Egli539f6b32012-02-27 09:13:17 +0000393
Christian Egli86193412012-02-21 12:41:32 +0000394* Noteworthy changes in release 2.4.1 (2012-2-22)
Christian Egli12717a52011-05-18 07:16:00 +0000395
Christian Egli29f38552011-06-28 10:19:39 +0000396** New features
Christian Eglib3d59042012-02-01 10:03:21 +0000397 - Czech hyphenation table thanks to Jan Hegr
Christian Egli3ef96cf2012-02-06 10:49:00 +0000398 - Spanish grade 1 table provided by José Enrique Fernández del
Christian Egli1d9171d2012-02-22 11:08:53 +0000399 Campo and Juan Carlos Buño Suárez
Christian Eglib5502892012-02-23 08:24:01 +0000400 - New Tamil table thanks to Mesar Hameed
Christian Eglib3d59042012-02-01 10:03:21 +0000401
402** Braille Table Improvements
Christian Egli5dcf5b52012-02-01 13:01:35 +0000403 - Improvements to the Portuguese grade1 braille tables
Christian Eglia9b36872012-02-20 09:58:20 +0000404 - Updates and additions to Icelandic 8-dot braille table.
Christian Egli86193412012-02-21 12:41:32 +0000405 - Improvements to the uncontracted Spanish computer braille table.
Christian Egli65791262012-02-22 09:04:52 +0000406 - Improvements to the Norwegian braille table thanks to David Hole.
Christian Eglia9b36872012-02-20 09:58:20 +0000407
Christian Eglib3d59042012-02-01 10:03:21 +0000408* Noteworthy changes in release 2.4.0 (2012-01-31)
409
410** New features
Christian Eglia620a142012-01-09 11:12:09 +0000411 - New Generic Farsi Grade 1 table: A new table for Generic Farsi
412 Grade 1 braille has been provided by Mesar Hameed.
Christian Eglia620a142012-01-09 11:12:09 +0000413 - Emacs mode for editing Braille tables thanks to Christian Egli
414
Christian Egli12717a52011-05-18 07:16:00 +0000415** Braille Table Improvements
416 - Improvements to the French comp6 and comp8 braille tables
Christian Egli728b77d2011-05-30 06:40:27 +0000417 - Improvements to the Romanian braille table
Christian Egli29f38552011-06-28 10:19:39 +0000418 - Improvements to the Generic Arabic Grade 1 table
Christian Eglia620a142012-01-09 11:12:09 +0000419 - Improvements to the Czech tables thanks to Jan Halousek and to
420 Jan Hegr
Christian Egli12717a52011-05-18 07:16:00 +0000421
Christian Eglie3a003d2011-05-09 06:52:24 +0000422* Noteworthy changes in release 2.3.0 (2011-05-09)
Christian Egli3929eac2010-09-27 15:05:08 +0000423
Christian Eglifa8b3e92011-05-09 07:39:06 +0000424This release contains support for many more languages than before
425(Swedish, Kurdish, Ethiopic, Serbian, many Indian languages). The
426search path for tables is now a list of paths. Finally there is the
427usual assortment of bug fixes.
428
Christian Eglia6119352011-03-14 09:47:59 +0000429** New features
430*** Multiple table search path
431 The environment variable LOUIS_TABLEPATH can now contain a list of
432 paths (separated by commas) where liblouis should look for tables.
433 This allows the user to keep local tables.
Christian Egli34c886e2011-03-14 13:13:32 +0000434*** New --quiet option for lou_checktable
435 lou_checktable writes to stderr even in the case of success. This
436 can now be suppressed with the new option --quiet.
Christian Egli6a127f32011-03-30 09:35:25 +0000437*** New Swedish table
438 A new table for Swedish braille has been provided by Samuel
439 Thibault.
Christian Egli36cf0dc2011-04-15 10:31:17 +0000440*** New table for Sorani (Kurdish)
Christian Egli12717a52011-05-18 07:16:00 +0000441 A new table for Sorani (Kurdish) Braille has been donated by Peter
442 Engström from Index Braille
Christian Eglibc8401c2011-04-15 11:36:22 +0000443*** New table for Ethiopic
Christian Egli12717a52011-05-18 07:16:00 +0000444 A new table for Ethiopic Braille has been donated by Tamru E.
445 Belay PH.D from Adaptive Technology Center for the Blind (ATCB)
Christian Egli7ddbd8c2011-04-15 13:24:03 +0000446*** New table for Serbian
Christian Egli12717a52011-05-18 07:16:00 +0000447 A new table for Serbian Braille has been donated by Peter Engström
448 from Index Braille
Christian Eglia6119352011-03-14 09:47:59 +0000449
Christian Egli60fc9902011-03-28 06:59:40 +0000450** Improved the documentation
451 The deprecated opcodes have been moved to a separate section
452
Christian Egli9863b722011-03-03 10:16:33 +0000453** Bug fixes
Christian Egli12717a52011-05-18 07:16:00 +0000454 - Fixed a long standing bug with an infinite loop in the table
455 compiler
Christian Egli6826d572011-04-15 08:57:16 +0000456
457** Braille Table Improvements
Christian Egli12717a52011-05-18 07:16:00 +0000458 - Improvements to the Chinese braille table
459 - Improvements to the Flemish Braille Math Code tables
460 - Improvements to the Dutch Braille tables
461 - Improvements to the Spanish Braille tables.
462 - Fixes for the uncontracted French 6 and 8 dot tables
463 - Improved support for Italian 8 dot
464 - Improvements to the Generic Arabic Grade 1 table
Christian Egli9863b722011-03-03 10:16:33 +0000465
466* Noteworthy changes in release 2.2.0 (????-??-??)
467
Christian Egli3929eac2010-09-27 15:05:08 +0000468** New features
469*** New tables
470 - Support for many indian languages
471 - Support for Icelandic 6- and 8-dot
Christian Egli85c57f52010-11-12 13:10:13 +0000472 - Support for Catalan
Christian Egli221783c2010-12-07 13:37:29 +0000473 - Support for Dutch Braille (for Belgium and the Netherlands)
474 - Support for Flemish Braille Math Code (a.k.a. Woluwe code)
Christian Egli85c57f52010-11-12 13:10:13 +0000475
Christian Egli6b68c1a2011-03-30 12:31:03 +0000476
477*** New functions to make libraries relocatable
478 Two new functions, to set the search path for tables and files.
479 They make the library relocatable. See the in the documentation
480 for lou_setDataPath and lou_getDataPath.
481
Christian Egli85c57f52010-11-12 13:10:13 +0000482** Bug fixes
483 - Improved support for Spanish
Christian Eglicc417ae2010-12-09 07:57:18 +0000484 - Improved Norwegian tables
Christian Egli3929eac2010-09-27 15:05:08 +0000485
Christian Egli48665712010-08-27 12:40:11 +0000486* Noteworthy changes in release 2.1.1 (2010-8-23)
487
488** Bug fixes
489 - Fixed problems with the Danish grade 2 table
490 - Fixed problems with the Marburg maths table for mathematics and
491 the UK maths table for mathematics
492
Christian Egli48262182010-08-19 11:56:40 +0000493* Noteworthy changes in release 2.1.0 (2010-8-19)
494
495** New features
496*** New tables
497 - Added tables for Portuguese grade 1 and 2
498 - Added unicode.dis for Unicode braille
499*** Modified tables
500 - Updated Danish tables
501*** Implemented language to table mapping
502*** New format of error messages
503 The error messages are now reported in a format similar to the one
504 used in gcc.
505*** New opcode
506 - added undefined opcode
507*** Python bindings
508 - Allow the user to configure the maximum output length by
509 specifying a number by which the input length is multiplied
510 using the outlenMultiplier module variable. The default will
511 handle the case where every input character is undefined in the
512 translation table. Previously, this was hard-coded to 2, which
513 was insufficient in some cases.
514 - Add compbrlLeftCursor mode constant.
515 - Add compileString function which wraps lou_compileString.
516 - Corrections/clarifications to docstrings.
517 - Add python binding for the lou_hyphenate function.
518 - Added python wrapper for lou_backTranslateString and lou_backTranslate.
519
520*** liblouisxslt as an example
521 Add liblouisxslt as an example to python/examples. This is
522 basically an extension of libxslt that lets you invoke liblouis
523 from an xslt stylesheet to do Braille translation on text nodes
524 for example.
525*** compbrlLeftCursor
526 Added a patch provided by Volker Bijewitz to implement
527 compbrlLeftCursor.
528
529** Bug fixes
530*** output cursorPos
531 Fix the output cursorPos when the compbrlAtCursor mode is enabled
532 and the characters around the cursor translate to multiple braille
533 cells, such as in the Chinese braille tables.
534*** outpos when doing back translation
535 Include a patch by Timothy Lee to fix outpos when doing back translation
James Tehfd769b52010-08-22 22:06:45 +0000536 (issue 11)
537*** inputPos/outputPos for undefined characters
538 Fix the input/output position arrays for characters in the input
539 which are undefined in the translation table.
Christian Egli48262182010-08-19 11:56:40 +0000540*** table fixes
James Tehfd769b52010-08-22 22:06:45 +0000541 - Fixed a bug with back translation of '*n'. (issue 13)
Christian Egli48262182010-08-19 11:56:40 +0000542 - Fixes to the en-us-g2.ctb table
543*** Python bindings
James Tehfd769b52010-08-22 22:06:45 +0000544 - Remove unnecessary imports, allowing the bindings to run in Python
545 2.7. (issue 12)
Christian Egli48262182010-08-19 11:56:40 +0000546 - lou_translate* writes output information in typeform, so
547 allocate enough bytes for it. Fixes possible buffer overruns and
548 resultant crashes.
549*** Miscellaneous
550 - Fixes to the man page generation to fix issues that were
551 reported by the Debian packaging builder
552 - Do not invoke help2man when cross-compiling
James Tehfd769b52010-08-22 22:06:45 +0000553 - Documentation updates (issue 10)
Christian Egli48262182010-08-19 11:56:40 +0000554 - Removing noletsign defaults
555 - Many small fixes
Christian Egli48262182010-08-19 11:56:40 +0000556
557* Noteworthy changes in release 2.0.0 (2010-7-6)
558
559** New features
560*** New functions
561 - Adding lou_charSize function
562
563* Noteworthy changes in release 1.9.0 (2010-6-29)
564
565** New features
566*** New functions
567 - lou_dotsToChar and lou_charToDots function
568 - Added lou_compileString for adding entries to tables at
569 run-time.
570
Christian Egli9c390c92009-11-21 07:17:09 +0000571* Noteworthy changes in release 1.8.0 (2009-11-23)
572
573This release contains a number of improvements notably the integration
574of gnulib, the automatic generation of man pages and the addition of
575tables for German grade 2.
576
577** New features
578*** New tables
579 - Tables German Grade 2
580 - Swiss German
Christian Egli21facb52009-11-24 11:03:36 +0000581 - Swedish (1989 standard)
582 - Swedish (1996 standard)
Christian Egli9c390c92009-11-21 07:17:09 +0000583
584*** Modified tables
585 - Updated Norwegian tables
Christian Egli21facb52009-11-24 11:03:36 +0000586 - Updated Chinese braille table
Christian Egli9c390c92009-11-21 07:17:09 +0000587
588*** man pages
589 All tools accept the --version and --help options and are
590 documented in man pages
591
592*** Corpus based test cases for tables
593 You can now have corpus based tests for tables. See the README in
594 tests/table_test_corpuses.
595
596** Bug fixes
Christian Egli21facb52009-11-24 11:03:36 +0000597 - config.h is no longer exported
Christian Egli9c390c92009-11-21 07:17:09 +0000598 - Many small fixes
599
Christian Egli277d71d2009-08-19 08:12:39 +0000600* Noteworthy changes in release 1.7.0 (2009-08-21)
601
602The main new feature of this release is the support for UK and Marburg
603math. Other changes include a new tool to check hyphenation and the
604usual improvement and addition of tables. Also The test suite has been
605enhanced and finally passes.
Christian Eglifbbe9542009-08-18 15:06:20 +0000606
607** New features
608*** New tables
609 - Tables for UK and Marburg math
610 - Hong Kong Cantonese
611 - Hebrew
612 - Hungarian
613 - Slovene
614 - Tibetan
615 - Irish
616 - Maltese
617
618*** Modified tables
619 - Updated Norwegian tables
620 - Bug fixes in Russian tables
621 - Updated French tables
622
623*** lou_checkhyphens tool
624 New tool to check hyphenation
625*** rpm spec file
626*** Test cases for tables
627 The tables can now be tested with `make check'
628*** New opcodes
Christian Egli277d71d2009-08-19 08:12:39 +0000629 - noback and nofor opcode prefixes
630 - grouping opcode
631 - multipass subopcodes
Christian Eglifbbe9542009-08-18 15:06:20 +0000632
633** Bug fixes
634 - Fix for library name and Python bindings
635 - Documentation fixes
636 - Many small fixes
John Boyer638ffe32009-05-28 02:47:00 +0000637
Christian Egli8466dad2009-05-27 14:14:24 +0000638* Noteworthy changes in release 1.6.2 (2009-05-01)
Christian Egli7a1a70e2009-05-27 13:58:45 +0000639
640This release contains a new opcode for Malaysian Braille. See the
641documentation for a description of the new opcode.
642
643** New features
644
645*** repword opcode
646The repword opcode is needed for Malaysian Braille
647
Christian Egli8466dad2009-05-27 14:14:24 +0000648* Noteworthy changes in release 1.6.1 (2009-04-21)
Christian Egli7a1a70e2009-05-27 13:58:45 +0000649
650This is mostly a bug fix release. It contains many bug fixes that were
Christian Egli8466dad2009-05-27 14:14:24 +0000651discovered in the course of developing UK Math tables.
Christian Egli7a1a70e2009-05-27 13:58:45 +0000652
653** Bug fixes
654
Christian Egli48262182010-08-19 11:56:40 +0000655*** bug fixes for correct, context and multipass opcodes
656*** bug fixes for largesign opcode
Christian Egli7a1a70e2009-05-27 13:58:45 +0000657*** fixed bug with French back-translation
658*** fixed the installation path for docs
659*** documentation improvement
660
Christian Egli79105452009-03-09 13:13:10 +0000661* Noteworthy changes in release 1.6 (2009-03-04)
662
663This release features support for Danish and Russian and updated
664tables for French and Norwegian. The search path for tables can now be
665specified using an environment variable. Finally there is the usual
666assortment of bug fixes.
667
668** New features
669
670*** exactdots opcode
671The exactdots opcode is intended for use in liblouisxml
672semantic-action files to specify exact dot patterns, as in
673mathematical codes.
674*** LOUIS_TABLEPATH env variable
675You can now specify where liblouis is to look for tables with the
676LOUIS_TABLEPATH environment variable.
677*** New Tables for Danish and Russian
678There is now support for Danish and Russian.
679
680** Bug fixes
681
682*** Updated French and Norwegian tables
683*** Use stdcall calling convention if building for Windows
684
685** Changes in behavior
686
687None
688
Christian Egliba0095a2009-01-21 08:33:09 +0000689* Noteworthy changes in release 1.5 (2009-01-21)
Christian Egli7fbd3c42009-01-15 22:45:46 +0000690
691This is a big release for liblouis. It's the first time that it is
Christian Egliba0095a2009-01-21 08:33:09 +0000692done from the Google code page. A number of people have contributed,
James Teh50e69c32009-01-20 22:45:15 +0000693namely John Boyer (table debugger, bug fixes), Eitan Isaacson (Python
Christian Egliba0095a2009-01-21 08:33:09 +0000694bindings), James Teh (Python bindings, bug fixes), Christian Egli
695(documentation) and Michel Such (table for French grade 2).
Christian Egli7fbd3c42009-01-15 22:45:46 +0000696
697
698** New features
699
Christian Egliba0095a2009-01-21 08:33:09 +0000700*** Python bindings
701The liblouis library can now be used from Python. For more info
702consult the README file in the python directory.
Christian Egli7fbd3c42009-01-15 22:45:46 +0000703
Christian Egliba0095a2009-01-21 08:33:09 +0000704*** Table debugger
705liblouis now comes with a debugger that can help to find problems with
706translation tables.
Christian Egli7fbd3c42009-01-15 22:45:46 +0000707
Christian Egliba0095a2009-01-21 08:33:09 +0000708*** French table for grade 2
709There is now a translation table for French grade 2.
710
711*** pass1Only mode bit
712The new pass1Only mode bit will help developers of screen readers as
713the cursor will stay where it is expected to.
Christian Egli7fbd3c42009-01-15 22:45:46 +0000714
715** Bug fixes
716
717Fix the inpos array values for the case where a rule has an output
718length which is larger than its input length.
719
720fixed multi-word phrases
721
722fixed bug in character display
723
724fixed bug in findOpcodeName
725
Christian Egliba0095a2009-01-21 08:33:09 +0000726lou_version now returns the correct liblouis version
727
Christian Egli7fbd3c42009-01-15 22:45:46 +0000728** Changes in behavior
729
730None
Christian Egli277d71d2009-08-19 08:12:39 +0000731
Christian Egli94187722014-01-08 13:37:12 +0000732#+OPTIONS: toc:nil num:nil