[liblouis-liblouisxml] Re: UEB: an "ideal" en-ueb-g1 table

  • From: "John J. Boyer" <john.boyer@xxxxxxxxxxxxxxxxx>
  • To: liblouis-liblouisxml@xxxxxxxxxxxxx
  • Date: Tue, 20 Nov 2012 03:48:51 -0600

I'm working on a scripting language that will handle phrases with the 
Braille indicators after the last word. The task right now is to write a 
description of the script and then submit it to the list for feedback. 
Then it will have to be implemented. Meanwhile, please don't worry about 
the dode. Getting the contractions and symbols right can be done without 
having the incicators just right.

John

On Tue, Nov 20, 2012 at 12:47:49AM -0800, Joseph Lee wrote:
> Hi,
> Begin and end passage/attribute: just tested the "old" table and 
> it is also a problem there as well.
> For passages, we need sort of a context-based search.  Same goes 
> with attributes.
> Right now, I assume that whenever the translator finds a word 
> composed of all capital letters, it adds 6-6 to the beginning of 
> the word (for braille presentation).  This works okay for word 
> tokens; however, as you pointed out, we need a way to tell 
> LibLouis what constitutes a passage.  For this, we need to define 
> what a passage is - either based on testing or based on UEB 
> rules.
> Here's something that could work (written in CPP):
> // First, count numbber ef capwords.
> 
> int capwordcount(curstring)
> {int capwordindex; // just a counter for capwords.
> for (string w = begincurstring; w != endofstring(); w = nextword)
> {if (capword(w) && capword(nextword) capwordindex++;}
> capwordindex++;
> return capwordindex;}
> 
> The above function would count number of cap words within a 
> sentence or a paragraph.  This may require the following parsing 
> function:
> 
> int capwordpos(curstring)
> {int wordindex = 0; // index of the capword.
> for (string w = curstringbeg; w != curstringend; w = nextword)
> {if (!capword(w)) wordindex++;}
> return wordindex;}
> 
> Essentially, we're parsing the sentence to find the index of the 
> first capword.  If the word is a capword, then we invoke the 
> first function to really make sure that we are indeed in the 
> beginning of the passage by checking the next word also.  Then 
> based on the capword count, we can tell LibLouis to output 6-6-6 
> at the beginning of the passage and output 6-3 at the end of it.
> A more efficient idea, although this might be slower, is to check 
> two words at a time - the current word and the next word while 
> parsing the current string for first pass translation.  If both 
> words were written with all caps, then it is a likely candidate 
> of a passage, so we call the first function to verify that we're 
> indeed at the beginning of the passage.
> Thanks.
> Cheers,
> Joseph
> 
> 
> 
> 
> ----- Original Message -----
> From: Greg Kearney <gkearney@xxxxxxxxx
> To: liblouis-liblouisxml@xxxxxxxxxxxxx
> Date sent: Tue, 20 Nov 2012 15:47:07 +0800
> Subject: [liblouis-liblouisxml] Re: UEB: an "ideal" en-ueb-g1 
> table
> 
> Joseph this is working well.  There is however one issue UEB has 
> the notion of an indicator, and closing indicators for things 
> like strings of upper case letters, italic, bold and so on.
> 
> Consider the following examples which show this for upper case
> 
> A single letter T for example is done with the following dot 
> sequence 6-2345
> A one or two words GREG KEARNEY is done with a the word 
> indicators in front of each world 6-6-1245-1235-15-1245
> A passage is three or more words and is indicated with 6-6-6 and 
> is terminated with 6-3
> 
> As it stands right now when I enter the string THIS IS A TEST it 
> get  ,,? ,,is ,a ,,te/ which is not correct it should be  ,,,? is 
> a te/,'
> 
> You can get a list of all of this indicators at 
> http://www.cucat.org/ueb/chart.php or http://www.cucat.org/ueb/
> 
> Anyone wanting to test the new tables can do so here: 
> http://www.cbtbc.org/louis/index.php
> 
> Gregory Kearney | Manager Accessible Media
> Association for the Blind of WA - Guide Dogs WA
> PO Box 101, Victoria Park WA 6979 | 61 Kitchener Ave, Victoria 
> Park WA 6100
> Tel: 08 9311 8246 | Fax: 08 9361 8696 | www.guidedogswa.com.au
> Tel: 307-224-4022 (North America)
> Email: greg.kearney@xxxxxxxxxxxxxxxxxx
> Email: gkearney@xxxxxxxxx
> 
> Everyone has the right to freedom of opinion and expression; this 
> right includes freedom to hold opinions without interference and 
> to seek, receive and impart information and ideas through any 
> media and regardless of frontiers.
> Article 19 of the UN Universal Declaration of Human Rights
> 
> On 20/11/2012, at 3:02 PM, Joseph Lee <joseph.lee22590@xxxxxxxxx> 
> wrote:
> 
> Hi folks,
> Attached is the "ideal" en-ueb-g1 table.  There might be some 
> encoding
> and char errors in there.
> For Christian: If you want to add the Unicode chars you found, 
> please
> do add them.  Towards the middle of the table, I wrote:
> #todo
> With categories of Unicode chars to work on for the next UEB 
> task -
> namely Greek and Latin letters, basic mathematical symbols,
> transcribers notes, shapes and misc ones (the biggest weakness 
> of the
> current UEBC table is lack of correct dot patterns or wrong 
> patterns
> for these chars).
> Thanks.
> //JL
> <en-ueb-g1.ctb
> 
> For a description of the software, to download it and links to
> project pages go to http://www.abilitiessoft.com
> For a description of the software, to download it and links to
> project pages go to http://www.abilitiessoft.com

-- 
John J. Boyer; President, Chief Software Developer
Abilitiessoft, Inc.
http://www.abilitiessoft.com
Madison, Wisconsin USA
Developing software for people with disabilities

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

Other related posts: