[liblouis-liblouisxml] Re: SV: are the swap opcodes broken?

  • From: Bert Frees <bertfrees@xxxxxxxxx>
  • To: "liblouis-liblouisxml@xxxxxxxxxxxxx" <liblouis-liblouisxml@xxxxxxxxxxxxx>
  • Date: Mon, 16 Jan 2017 13:45:57 +0100

Answers inline:

2017-01-16 13:02 GMT+01:00 Bue Vester-Andersen <bue@xxxxxxxxxxxxxxxxxx>:

Hi Bert,



I will try to be more specific:



In 8 dots you get a capital letter by adding dot 7 to the cell, e.g. A =
17, B = 127 etc. So, dot 7 acts exactly as the capletter sign in liblouis.
Likewise, if you use word contractions or partword contractions you
capitalize the first letter by adding dot 7, e.g. Aber = 17, Den = 14. This
also applies to contractions that don’t represent letters in their basic
vorm, e.g. Ei = 1467, Ie = 3467. I am using German examples to make them
more clear, even though there is no contracted 8 dot system in German.
There are similar examples in Danish.



However, at least in Danish 8 dots Braille, there is no begcapsword or
endcapsword sign. So, using the example from above, ABER =17-127-157-12357.
Like I said, you could of course have an 8 dots system with also a
begcapsword sign, but I don’t know of any.



Of course! I get it now. You need to be able to distinguish between "ABER"
and "Aber". I'm still not really sure Liblouis should automatically do this
though. I prefer explicitly specifying "capsnocont" in the table.



Maybe, what we want to do is to define a proper default behavior if an
capsletter sign has been defined but not begcapsword or endcapsword. In
that case, I think each letter should be marked with capsletter, i.e. dot 7
in 8 dots. Would that make sense?



I don't understand :(



About adding dot 7 in practice, I might be totally wrong. I just thought
it would be easier to add dot 7 to a cell while it is still defined as a
cell and before it becomes an actual output character. Otherwise, we would
probably have to define a mapping between output characters and their
equivalent with dot 7 since not all of them are letters.



OK, I see what you mean now. Yes, adding the dot 7 in the cell
representation if definitely the way to go.


Perhaps, it would be easier to skype about it?



I'm sorry, I have not so much time at the moment. Perhaps we can try to
arrange a Skype call if this idea gets more concrete and you want to start
digging into the code? Send me a private email.


Bert






Bue





*Fra:* liblouis-liblouisxml-bounce@xxxxxxxxxxxxx [mailto:
liblouis-liblouisxml-bounce@xxxxxxxxxxxxx] *På vegne af *Bert Frees
*Sendt:* 14. januar 2017 13:20
*Til:* liblouis-liblouisxml@xxxxxxxxxxxxx
*Emne:* [liblouis-liblouisxml] Re: SV: Re: SV: Re: SV: Re: are the swap
opcodes broken?



Two things you have to explain a bit more please:

Firstly, why can't words in all capitals be contracted? Even if it's the
case in Danish, can it really be said in general?

Secondly, I don't understand what you are trying to say in the part
regarding practical problems of adding a dot 7 to cells.







2017-01-13 20:42 GMT+01:00 Bue Vester-Andersen <bue@xxxxxxxxxxxxxxxxxx>:



Here is a go at a description of the caps7 opcode (or whatever we decide
to call it):



This opcode takes no parameters. The caps7 opcode tells liblouis to always
add dot 7 as a marker for capital letters, also when the capital letter is
the first letter of a contraction. This opcode is especially useful in
tables defining 8 dots Braille in grade 2. Capsnocont is automatically
turned on, as words in all capitals cannot be contracted in this mode. When
caps7 is used, no other opcodes concerned with capital letters should be
used in the same table.



When adding dot 7 to a cell, we should “or” with dot 7, since characters
will already be defined like

Uplow Aa 17,1

However, not all cells can add dot 7 simply by doing a toupper(), e.g.
dropped signs. I don’t know how this should be done in practice, because we
have to get at the cell while it is still only defined as dots and not as
an output character. Perhaps you have an idea?



I could imagine that someone sometime might want a table with both caps7
and capsword defined, so that they could actually contract all-caps words,
but perhaps we should cross that bridge if we ever get to it.



I hope this makes some kind of sense. Perhaps we should have a Skype
session about it, and perhaps I can do some of the coding myself, that is
if I can find my way through all the spaghetti J





Other related posts: