[liblouis-liblouisxml] [liblouis] r875 committed - Update online documentation

  • From: liblouis@xxxxxxxxxxxxxx
  • To: liblouis-liblouisxml@xxxxxxxxxxxxx
  • Date: Tue, 18 Dec 2012 10:46:48 +0000

Revision: 875
Author:   christian.egli@xxxxxxxxxxxxxx
Date:     Tue Dec 18 02:46:28 2012
Log:      Update online documentation
http://code.google.com/p/liblouis/source/detail?r=875

Modified:
 /documentation/liblouis.html

=======================================
--- /documentation/liblouis.html        Mon Sep 24 07:51:40 2012
+++ /documentation/liblouis.html        Tue Dec 18 02:46:28 2012
@@ -7,7 +7,7 @@
 <link title="Top" rel="top" href="#Top">
<link href="http://www.gnu.org/software/texinfo/"; rel="generator-home" title="Texinfo Homepage">
 <!--
-This manual is for liblouis (version 2.5.1, 24 September 2012),
+This manual is for liblouis (version 2.5.2, 17 December 2012),
 a Braille Translation and Back-Translation Library derived from the
 Linux screen reader BRLTTY.

@@ -57,10 +57,11 @@
 <li><a name="toc_Test-Programs" href="#Test-Programs">2 Test Programs</a>
 <ul>
 <li><a href="#lou_005fdebug">2.1 lou_debug</a>
-<li><a href="#lou_005fchecktable">2.2 lou_checktable</a>
-<li><a href="#lou_005fallround">2.3 lou_allround</a>
-<li><a href="#lou_005ftranslate-_0028program_0029">2.4 lou_translate</a>
-<li><a href="#lou_005fcheckhyphens">2.5 lou_checkhyphens</a>
+<li><a href="#lou_005ftrace">2.2 lou_trace</a>
+<li><a href="#lou_005fchecktable">2.3 lou_checktable</a>
+<li><a href="#lou_005fallround">2.4 lou_allround</a>
+<li><a href="#lou_005ftranslate-_0028program_0029">2.5 lou_translate</a>
+<li><a href="#lou_005fcheckhyphens">2.6 lou_checkhyphens</a>
 </li></ul>
<li><a name="toc_How-to-Write-Translation-Tables" href="#How-to-Write-Translation-Tables">3 How to Write Translation Tables</a>
 <ul>
@@ -120,7 +121,7 @@

 <h2 class="unnumbered">Liblouis User's and Programmer's Manual</h2>

-<p>This manual is for liblouis (version 2.5.1, 24 September 2012),
+<p>This manual is for liblouis (version 2.5.2, 17 December 2012),
 a Braille Translation and Back-Translation Library derived from the
 Linux screen reader <acronym>BRLTTY</acronym>.

@@ -179,13 +180,14 @@

 <h2 class="chapter">2 Test Programs</h2>

-<p>Five test programs are provided as part of the liblouis package. They
-are intended for testing liblouis and for debugging tables. None of
-them is suitable for braille transcription. An application that can be
-used for transcription is <samp><span class="command">xml2brl</span></samp>, which is part of the -liblouisxml package (see <a href="liblouisxml.html#Top">Introduction</a>). The source code of the
-test programs can be studied to learn how to use the liblouis library
-and they can be used to perform the following functions.
+<p>A number of test programs are provided as part of the liblouis
+package. They are intended for testing liblouis and for debugging
+tables. None of them is suitable for braille transcription. An
+application that can be used for transcription is <samp><span class="command">xml2brl</span></samp>, +which is part of the liblouisxml package (see <a href="liblouisxml.html#Top">Introduction</a>). The source
+code of the test programs can be studied to learn how to use the
+liblouis library and they can be used to perform the following
+functions.

<p><a name="common-options"></a>All of these programs recognize the <samp><span class="option">--help</span></samp> and
 <samp><span class="option">--version</span></samp> options.
@@ -204,13 +206,13 @@
 <h3 class="section">2.1 lou_debug</h3>

 <p><a name="index-lou_005fdebug-1"></a>
-The lou_debug tool is intended for debugging liblouis translation
-tables. The command line for lou_debug is:
+The <samp><span class="command">lou_debug</span></samp> tool is intended for debugging liblouis +translation tables. The command line for <samp><span class="command">lou_debug</span></samp> is:

 <pre class="example">     lou_debug [OPTIONS] TABLE[,TABLE,...]
 </pre>
-   <p>The command line options that are accepted by lou_debug are described
-in <a href="#common-options">common options</a>.
+ <p>The command line options that are accepted by <samp><span class="command">lou_debug</span></samp> are
+described in <a href="#common-options">common options</a>.

    <p>The table (or comma-separated list of tables) is compiled. If no
 errors are found a brief command summary is printed, then the prompt
@@ -289,18 +291,61 @@
      <br><dt><kbd>q</kbd><dd>Exit the program.
 </dl>

-<p><a name="lou_checktable"></a>
+<p><a name="lou_trace"></a>
+<a name="lou_005ftrace"></a>
+
+<h3 class="section">2.2 lou_trace</h3>
+
+<p><a name="index-lou_005ftrace-2"></a>
+When working on translation tables it is sometimes useful to determine
+what rules were applied when translating a string. <samp><span class="command">lou_trace</span></samp>
+helps with exactly that. It list all the the applied rules for a given
+translation table and an input string.
+
+<pre class="example">     lou_trace [OPTIONS] TABLE[,TABLE,...]
+</pre>
+ <p><samp><span class="command">lou_trace</span></samp> accepts all the standard options (see <a href="#common-options">common options</a>). Once started you can type an input string followed by +<kbd>&lt;RET&gt;</kbd>. <samp><span class="command">lou_trace</span></samp> will print the braille
+translation followed by list of rules that were applied to produce the
+translation. A possible invocation is listed in the following example:
+
+<pre class="example">     $ lou_trace tables/en-us-g2.ctb
+     the u.s. postal service
+     ! u4s4 po/al s}vice
+     1.      largesign       the     2346
+     2.      repeated                0
+     3.      lowercase       u       136
+     4.      punctuation     .       46
+     5.      context _$l["."]$l      @256
+     6.      lowercase       s       234
+     7.      postpunc        .       256
+     8.      repeated                0
+     9.      begword post    1234-135-34
+     10.     largesign       a       1
+     11.     lowercase       l       123
+     12.     repeated                0
+     13.     lowercase       s       234
+     14.     always  er      12456
+     15.     lowercase       v       1236
+     16.     lowercase       i       24
+     17.     lowercase       c       14
+     18.     lowercase       e       15
+     19.     pass2   $s1-10  @0
+     20.     pass2   $s1-10  @0
+     21.     pass2   $s1-10  @0
+</pre>
+   <p><a name="lou_checktable"></a>
 <a name="lou_005fchecktable"></a>

-<h3 class="section">2.2 lou_checktable</h3>
+<h3 class="section">2.3 lou_checktable</h3>

-<p><a name="index-lou_005fchecktable-2"></a>
+<p><a name="index-lou_005fchecktable-3"></a>
 To use this program type the following:

 <pre class="example">     lou_checktable [OPTIONS] TABLE
 </pre>
- <p>Aside from the standard options (see <a href="#common-options">common options</a>) lou_checktable
-also accepts the following options:
+ <p>Aside from the standard options (see <a href="#common-options">common options</a>) +<samp><span class="command">lou_checktable</span></samp> also accepts the following options:

      <dl>
<dt><samp><span class="option">--quiet</span></samp><dt><samp><span class="option">-q</span></samp><dd>Do not write to standard error if there are no errors.
@@ -314,16 +359,16 @@
 <p><a name="lou_allround"></a>
 <a name="lou_005fallround"></a>

-<h3 class="section">2.3 lou_allround</h3>
+<h3 class="section">2.4 lou_allround</h3>

-<p><a name="index-lou_005fallround-3"></a>
+<p><a name="index-lou_005fallround-4"></a>
 This program tests every capability of the liblouis library. It is
 completely interactive. Invoke it as follows:

 <pre class="example">     lou_allround [OPTIONS]
 </pre>
-   <p>The command line options that are accepted by lou_debug are described
-in <a href="#common-options">common options</a>.
+ <p>The command line options that are accepted by <samp><span class="command">lou_allround</span></samp>
+are described in <a href="#common-options">common options</a>.

    <p>You will see a few lines telling you how to use the program. Pressing
 one of the letters in parentheses and then enter will take you to a
@@ -335,15 +380,15 @@
 <p><a name="lou_translate-(program)"></a>
 <a name="lou_005ftranslate-_0028program_0029"></a>

-<h3 class="section">2.4 lou_translate</h3>
+<h3 class="section">2.5 lou_translate</h3>

-<p><a name="index-lou_005ftranslate-4"></a>
+<p><a name="index-lou_005ftranslate-5"></a>
 This program translates whatever is on the standard input unit and
 prints it on the standard output unit. It is intended for large-scale
 testing of the accuracy of translation and back-translation. The
-command line for lou_translate is:
+command line for <samp><span class="command">lou_translate</span></samp> is:

-<pre class="example">     lou_translate [OPTION] TABLE
+<pre class="example">     lou_translate [OPTION] TABLE[,TABLE,...]
 </pre>
<p>Aside from the standard options (see <a href="#common-options">common options</a>) this program
 also accepts the following options:
@@ -362,17 +407,17 @@
    <p><a name="lou_checkhyphens"></a>
 <a name="lou_005fcheckhyphens"></a>

-<h3 class="section">2.5 lou_checkhyphens</h3>
+<h3 class="section">2.6 lou_checkhyphens</h3>

-<p><a name="index-lou_005fcheckhyphens-5"></a>
+<p><a name="index-lou_005fcheckhyphens-6"></a>
 This program checks the accuracy of hyphenation in Braille translation
 for both translated and untranslated words. It is completely
 interactive. Invoke it as follows:

 <pre class="example">     lou_checkhyphens [OPTIONS]
 </pre>
-   <p>The command line options that are accepted by lou_checkhyphens are
-described in <a href="#common-options">common options</a>.
+   <p>The command line options that are accepted by
+<samp><span class="command">lou_checkhyphens</span></samp> are described in <a href="#common-options">common options</a>.

    <p>You will see a few lines telling you how to use the program.

@@ -550,27 +595,27 @@
 the character is treated as a space.


-<a name="index-space-6"></a>
+<a name="index-space-7"></a>
 <dl><a name="space-opcode"></a><dt><code>space character dots</code><dd>
 Defines a character as a space and also defines the dot pattern as
 such. for example:

<pre class="example"> space \s 0 \s is the escape sequence for blank; 0 means no dots.
 </pre>
- <p><a name="index-punctuation-7"></a><a name="punctuation-opcode"></a><br><dt><code>punctuation character dots</code><dd> + <p><a name="index-punctuation-8"></a><a name="punctuation-opcode"></a><br><dt><code>punctuation character dots</code><dd>
 Associates a punctuation mark in the particular language with a
 braille representation and defines the character and dot pattern as
 punctuation. For example:

<pre class="example"> punctuation . 46 dot pattern for period in NAB computer braille
 </pre>
- <p><a name="index-digit-8"></a><a name="digit-opcode"></a><br><dt><code>digit character dots</code><dd> + <p><a name="index-digit-9"></a><a name="digit-opcode"></a><br><dt><code>digit character dots</code><dd>
 Associates a digit with a dot pattern and defines the character as a
 digit. For example:

      <pre class="example">          digit 0 356 NAB computer braille
 </pre>
- <p><a name="index-uplow-9"></a><a name="uplow-opcode"></a><br><dt><code>uplow characters dots [,dots]</code><dd> + <p><a name="index-uplow-10"></a><a name="uplow-opcode"></a><br><dt><code>uplow characters dots [,dots]</code><dd>
 The characters operand must be a pair of letters, of which the first
 is uppercase and the second lowercase. The first dots suboperand
 indicates the dot pattern for the upper-case letter. It may have more
@@ -586,7 +631,7 @@

      <pre class="example">          uplow Aa 17,1
 </pre>
- <p><a name="index-grouping-10"></a><a name="grouping-opcode"></a><br><dt><code>grouping name characters dots ,dots</code><dd> + <p><a name="index-grouping-11"></a><a name="grouping-opcode"></a><br><dt><code>grouping name characters dots ,dots</code><dd>
 This opcode is used to indicate pairs of grouping symbols used in
 processing mathematical expressions. These symbols are usually
 generated by the MathML interpreter in liblouisxml. They are used in
@@ -600,31 +645,31 @@
      <pre class="example">          grouping mrow \x0001\x0002 1e,2e
           grouping mfrac \x0003\x0004 3e,4e
 </pre>
- <p><a name="index-letter-11"></a><a name="letter-opcode"></a><br><dt><code>letter character dots</code><dd> + <p><a name="index-letter-12"></a><a name="letter-opcode"></a><br><dt><code>letter character dots</code><dd>
 Associates a letter in the language with a braille representation and
 defines the character as a letter. This is intended for letters which
 are neither uppercase nor lowercase.

- <p><a name="index-lowercase-12"></a><a name="lowercase-opcode"></a><br><dt><code>lowercase character dots</code><dd> + <p><a name="index-lowercase-13"></a><a name="lowercase-opcode"></a><br><dt><code>lowercase character dots</code><dd>
 Associates a character with a dot pattern and defines the character as
 a lowercase letter. Both the character and the dot pattern have the
 attributes lowercase and letter.

- <p><a name="index-uppercase-13"></a><a name="uppercase-opcode"></a><br><dt><code>uppercase character dots</code><dd> + <p><a name="index-uppercase-14"></a><a name="uppercase-opcode"></a><br><dt><code>uppercase character dots</code><dd>
 Associates a character with a dot pattern and defines the character as
 an uppercase letter. Both the character and the dot pattern have the
attributes uppercase and letter. <code>lowercase</code> and <code>uppercase</code>
 should be used when a letter has only one case. Otherwise use the
 <code>uplow</code> opcode (see <a href="#uplow-opcode">uplow</a>).

- <p><a name="index-litdigit-14"></a><a name="litdigit-opcode"></a><br><dt><code>litdigit digit dots</code><dd> + <p><a name="index-litdigit-15"></a><a name="litdigit-opcode"></a><br><dt><code>litdigit digit dots</code><dd>
 Associates a digit with the dot pattern which should be used to
 represent it in literary texts. For example:

      <pre class="example">          litdigit 0 245
           litdigit 1 1
 </pre>
- <p><a name="index-sign-15"></a><a name="sign-opcode"></a><br><dt><code>sign character dots</code><dd> + <p><a name="index-sign-16"></a><a name="sign-opcode"></a><br><dt><code>sign character dots</code><dd>
 Associates a character with a dot pattern and defines both as a sign.
This opcode should be used for things like at sign (&lsquo;<samp><span class="samp">@</span></samp>&rsquo;), percent (&lsquo;<samp><span class="samp">%</span></samp>&rsquo;), dollar sign (&lsquo;<samp><span class="samp">$</span></samp>&rsquo;), etc. Do not use it to
@@ -632,7 +677,7 @@

      <pre class="example">          sign % 4-25-1234 literary percent sign
 </pre>
- <p><a name="index-math-16"></a><a name="math-opcode"></a><br><dt><code>math character dots</code><dd> + <p><a name="index-math-17"></a><a name="math-opcode"></a><br><dt><code>math character dots</code><dd>
 Associates a character and a dot pattern and defines them as a
mathematical symbol. It should be used for less than (&lsquo;<samp><span class="samp">&lt;</span></samp>&rsquo;), greater than(&lsquo;<samp><span class="samp">&gt;</span></samp>&rsquo;), equals(&lsquo;<samp><span class="samp">=</span></samp>&rsquo;), plus(&lsquo;<samp><span class="samp">+</span></samp>&rsquo;), etc. For
@@ -652,32 +697,32 @@
 by a dot pattern, which may be one or more cells.


-<a name="index-capsign-17"></a>
+<a name="index-capsign-18"></a>
 <dl><a name="capsign-opcode"></a><dt><code>capsign dots</code><dd>
 The dot pattern which indicates capitalization of a single letter. In
 English, this is dot 6. For example:

      <pre class="example">          capsign 6
 </pre>
- <p><a name="index-begcaps-18"></a><a name="begcaps-opcode"></a><br><dt><code>begcaps dots</code><dd> + <p><a name="index-begcaps-19"></a><a name="begcaps-opcode"></a><br><dt><code>begcaps dots</code><dd>
 The dot pattern which begins a block of capital letters. For example:

      <pre class="example">          begcaps 6-6
 </pre>
- <p><a name="index-endcaps-19"></a><a name="endcaps-opcode"></a><br><dt><code>endcaps dots</code><dd> + <p><a name="index-endcaps-20"></a><a name="endcaps-opcode"></a><br><dt><code>endcaps dots</code><dd>
 The dot pattern which ends a block of capital letters within a word.
 For example:

      <pre class="example">          endcaps 6-3
 </pre>
- <p><a name="index-letsign-20"></a><a name="letsign-opcode"></a><br><dt><code>letsign dots</code><dd> + <p><a name="index-letsign-21"></a><a name="letsign-opcode"></a><br><dt><code>letsign dots</code><dd>
 This indicator is needed in Grade 2 to show that a single letter is
 not a contraction. It is also used when an abbreviation happens to be
 a sequence of letters that is the same as a contraction. For example:

      <pre class="example">          letsign 56
 </pre>
- <p><a name="index-noletsign-21"></a><a name="noletsign-opcode"></a><br><dt><code>noletsign letters</code><dd> + <p><a name="index-noletsign-22"></a><a name="noletsign-opcode"></a><br><dt><code>noletsign letters</code><dd>

      <p>The letters in the operand will not be proceeded by a letter sign.
 More than one <code>noletsign</code> opcode can be used. This is equivalent
@@ -688,7 +733,7 @@
 treated as though it had also been specified in a <code>noletsign</code>
 entry.

- <p><a name="index-noletsignbefore-22"></a><a name="noletsignbefore-opcode"></a><br><dt><code>noletsignbefore characters</code><dd> + <p><a name="index-noletsignbefore-23"></a><a name="noletsignbefore-opcode"></a><br><dt><code>noletsignbefore characters</code><dd>
 If any of the characters proceeds a single letter without a space a
 letter sign is not used. By default the characters apostrophe
(&lsquo;<samp><span class="samp">'</span></samp>&rsquo;) and period (&lsquo;<samp><span class="samp">.</span></samp>&rsquo;) have this property. Use of a
@@ -696,7 +741,7 @@
 <code>noletsignbefore</code> entry is used, the characters in all entries
 are combined.

- <p><a name="index-noletsignafter-23"></a><a name="noletsignafter-opcode"></a><br><dt><code>noletsignafter characters</code><dd> + <p><a name="index-noletsignafter-24"></a><a name="noletsignafter-opcode"></a><br><dt><code>noletsignafter characters</code><dd>
 If any of the characters follows a single letter without a space a
 letter sign is not used. By default the characters apostrophe
(&lsquo;<samp><span class="samp">'</span></samp>&rsquo;) and period (&lsquo;<samp><span class="samp">.</span></samp>&rsquo;) have this property. Use of a
@@ -704,7 +749,7 @@
 <code>noletsignafter</code> entry is used the characters in all entries are
 combined.

- <p><a name="index-numsign-24"></a><a name="numsign-opcode"></a><br><dt><code>numsign dots</code><dd> + <p><a name="index-numsign-25"></a><a name="numsign-opcode"></a><br><dt><code>numsign dots</code><dd>
 The translator inserts this indicator before numbers made up of digits
defined with the <code>litdigit</code> opcode (see <a href="#litdigit-opcode">litdigit</a>) to show that they are a number
 and not letters or some other symbols. For example:
@@ -750,7 +795,7 @@
    <p>Here are the various emphasis opcodes.


-<a name="index-firstwordital-25"></a>
+<a name="index-firstwordital-26"></a>
<dl><a name="firstwordital-opcode"></a><dt><code>firstwordital dots</code><dd>
 This is the braille indicator to be placed before the first word of an
 italicized phrase that is longer than the value given in the
@@ -758,7 +803,7 @@

      <pre class="example">          firstwordital 46-46 English indicator
 </pre>
- <p><a name="index-lastworditalbefore-26"></a><a name="lastworditalbefore-opcode"></a><br><dt><code>lastworditalbefore dots</code><dd> + <p><a name="index-lastworditalbefore-27"></a><a name="lastworditalbefore-opcode"></a><br><dt><code>lastworditalbefore dots</code><dd>
 This is the braille indicator to be placed before the last word of an
 italicized phrase. In addition, if <code>firstwordital</code> is not used,
 this braille indicator is doubled and placed before the first word. Do
@@ -767,25 +812,25 @@

      <pre class="example">          lastworditalbefore 4-6
 </pre>
- <p><a name="index-lastworditalafter-27"></a><a name="lastworditalafter-opcode"></a><br><dt><code>lastworditalafter dots</code><dd> + <p><a name="index-lastworditalafter-28"></a><a name="lastworditalafter-opcode"></a><br><dt><code>lastworditalafter dots</code><dd>
 This is the braille indicator to be placed after the last word of an
 italicized phrase. Do not use <code>lastworditalbefore</code> and
 <code>lastworditalafter</code> in the same table. See also the
<code>lenitalphrase</code> opcode (see <a href="#lenitalphrase-opcode">lenitalphrase</a>) for more information.

- <p><a name="index-firstletterital-28"></a><a name="firstletterital-opcode"></a><br><dt><code>firstletterital dots</code><dd> + <p><a name="index-firstletterital-29"></a><a name="firstletterital-opcode"></a><br><dt><code>firstletterital dots</code><dd>
 This is the braille indicator to be placed before the first letter (or
 character) if italicization begins in the middle of a word.

- <p><a name="index-lastletterital-29"></a><a name="lastletterital-opcode"></a><br><dt><code>lastletterital dots</code><dd> + <p><a name="index-lastletterital-30"></a><a name="lastletterital-opcode"></a><br><dt><code>lastletterital dots</code><dd>
 This is the braille indicator to be placed after the last letter (or
 character) when italicization ends in the middle of a word.

- <p><a name="index-singleletterital-30"></a><a name="singleletterital-opcode"></a><br><dt><code>singleletterital dots</code><dd> + <p><a name="index-singleletterital-31"></a><a name="singleletterital-opcode"></a><br><dt><code>singleletterital dots</code><dd>
 This braille indicator is used if only a single letter (or character)
 is italicized.

- <p><a name="index-lenitalphrase-31"></a><a name="lenitalphrase-opcode"></a><br><dt><code>lenitalphrase number</code><dd> + <p><a name="index-lenitalphrase-32"></a><a name="lenitalphrase-opcode"></a><br><dt><code>lenitalphrase number</code><dd>
 If <code>lastworditalbefore</code> is used, an italicized phrase is checked
 to see how many words it contains. If this number is less than or
 equal to the number given in the <code>lenitalphrase</code> opcode, the
@@ -798,13 +843,13 @@

      <pre class="example">          lenitalphrase 4
 </pre>
- <p><a name="index-firstwordbold-32"></a><a name="firstwordbold-opcode"></a><br><dt><code>firstwordbold dots</code><dd> + <p><a name="index-firstwordbold-33"></a><a name="firstwordbold-opcode"></a><br><dt><code>firstwordbold dots</code><dd>
 This is the braille indicator to be placed before the first word of a
 bold phrase. For example:

      <pre class="example">          firstwordbold 456-456
 </pre>
- <p><a name="index-lastwordboldbefore-33"></a><a name="lastwordboldbefore-opcode"></a><br><dt><code>lastwordboldbefore dots</code><dd> + <p><a name="index-lastwordboldbefore-34"></a><a name="lastwordboldbefore-opcode"></a><br><dt><code>lastwordboldbefore dots</code><dd>
 This is the braille indicator to be placed before the last word of a
 bold phrase. In addition, if <code>firstwordbold</code> is not used, this
 braille indicator is doubled and placed before the first word. Do not
@@ -813,24 +858,24 @@

      <pre class="example">          lastwordboldbefore 456
 </pre>
- <p><a name="index-lastwordboldafter-34"></a><a name="lastwordboldafter-opcode"></a><br><dt><code>lastwordboldafter dots</code><dd> + <p><a name="index-lastwordboldafter-35"></a><a name="lastwordboldafter-opcode"></a><br><dt><code>lastwordboldafter dots</code><dd>
 This is the braille indicator to be placed after the last word of a
 bold phrase. Do not use <code>lastwordboldbefore</code> and
 <code>lastwordboldafter</code> in the same table.

- <p><a name="index-firstletterbold-35"></a><a name="firstletterbold-opcode"></a><br><dt><code>firstletterbold dots</code><dd> + <p><a name="index-firstletterbold-36"></a><a name="firstletterbold-opcode"></a><br><dt><code>firstletterbold dots</code><dd>
 This is the braille indicator to be placed before the first letter (or
 character) if bold emphasis begins in the middle of a word.

- <p><a name="index-lastletterbold-36"></a><a name="lastletterbold-opcode"></a><br><dt><code>lastletterbold dots</code><dd> + <p><a name="index-lastletterbold-37"></a><a name="lastletterbold-opcode"></a><br><dt><code>lastletterbold dots</code><dd>
 This is the braille indicator to be placed after the last letter (or
 character) when bold emphasis ends in the middle of a word.

- <p><a name="index-singleletterbold-37"></a><a name="singleletterbold-opcode"></a><br><dt><code>singleletterbold dots</code><dd> + <p><a name="index-singleletterbold-38"></a><a name="singleletterbold-opcode"></a><br><dt><code>singleletterbold dots</code><dd>
 This braille indicator is used if only a single letter (or character)
 is in boldface.

- <p><a name="index-lenboldphrase-38"></a><a name="lenboldphrase-opcode"></a><br><dt><code>lenboldphrase number</code><dd> + <p><a name="index-lenboldphrase-39"></a><a name="lenboldphrase-opcode"></a><br><dt><code>lenboldphrase number</code><dd>
 If <code>lastwordboldbefore</code> is used, a bold phrase is checked to see
 how many words it contains. If this number is less than or equal to
 the number given in the <code>lenboldphrase</code> opcode, the
@@ -841,32 +886,32 @@
 used its indicator is made up by doubling the dot pattern given in the
 <code>lastwordboldbefore</code> entry.

- <p><a name="index-firstwordunder-39"></a><a name="firstwordunder-opcode"></a><br><dt><code>firstwordunder dots</code><dd> + <p><a name="index-firstwordunder-40"></a><a name="firstwordunder-opcode"></a><br><dt><code>firstwordunder dots</code><dd>
 This is the braille indicator to be placed before the first word of an
 underlined phrase.

- <p><a name="index-lastwordunderbefore-40"></a><a name="lastwordunderbefore-opcode"></a><br><dt><code>lastwordunderbefore dots</code><dd> + <p><a name="index-lastwordunderbefore-41"></a><a name="lastwordunderbefore-opcode"></a><br><dt><code>lastwordunderbefore dots</code><dd>
 This is the braille indicator to be placed before the last word of an
 underlined phrase. In addition, if <code>firstwordunder</code> is not used,
 this braille indicator is doubled and placed before the first word.

- <p><a name="index-lastwordunderafter-41"></a><a name="lastwordunderafter-opcode"></a><br><dt><code>lastwordunderafter dots</code><dd> + <p><a name="index-lastwordunderafter-42"></a><a name="lastwordunderafter-opcode"></a><br><dt><code>lastwordunderafter dots</code><dd>
 This is the braille indicator to be placed after the last word of an
 underlined phrase.

- <p><a name="index-firstletterunder-42"></a><a name="firstletterunder-opcode"></a><br><dt><code>firstletterunder dots</code><dd> + <p><a name="index-firstletterunder-43"></a><a name="firstletterunder-opcode"></a><br><dt><code>firstletterunder dots</code><dd>
 This is the braille indicator to be placed before the first letter (or
 character) if underline emphasis begins in the middle of a word.

- <p><a name="index-lastletterunder-43"></a><a name="lastletterunder-opcode"></a><br><dt><code>lastletterunder dots</code><dd> + <p><a name="index-lastletterunder-44"></a><a name="lastletterunder-opcode"></a><br><dt><code>lastletterunder dots</code><dd>
 This is the braille indicator to be placed after the last letter (or
 character) when underline emphasis ends in the middle of a word.

- <p><a name="index-singleletterunder-44"></a><a name="singleletterunder-opcode"></a><br><dt><code>singleletterunder dots</code><dd> + <p><a name="index-singleletterunder-45"></a><a name="singleletterunder-opcode"></a><br><dt><code>singleletterunder dots</code><dd>
 This braille indicator is used if only a single letter (or character)
 is underlined.

- <p><a name="index-lenunderphrase-45"></a><a name="lenunderphrase-opcode"></a><br><dt><code>lenunderphrase number</code><dd> + <p><a name="index-lenunderphrase-46"></a><a name="lenunderphrase-opcode"></a><br><dt><code>lenunderphrase number</code><dd> If <code>lastwordunderbefore</code> is used, an underlined phrase is checked
 to see how many words it contains. If this number is less than or
 equal to the number given in the <code>lenunderphrase</code> opcode, the
@@ -877,14 +922,14 @@
 not used its indicator is made up by doubling the dot pattern given in
 the <code>lastwordunderbefore</code> entry.

- <p><a name="index-begcomp-46"></a><a name="begcomp-opcode"></a><br><dt><code>begcomp dots</code><dd> + <p><a name="index-begcomp-47"></a><a name="begcomp-opcode"></a><br><dt><code>begcomp dots</code><dd>
 This braille indicator is placed before a sequence of characters
 translated in computer braille, whether this sequence is indicated in
the <code>typeform</code> parameter (see <a href="#Programming-with-liblouis">Programming with liblouis</a>) or
 inferred because it contains a subsequence specified by the
 <code>compbrl</code> opcode (see <a href="#compbrl-opcode">compbrl</a>).

- <p><a name="index-endcomp-47"></a><a name="endcomp-opcode"></a><br><dt><code>endcomp dots</code><dd> + <p><a name="index-endcomp-48"></a><a name="endcomp-opcode"></a><br><dt><code>endcomp dots</code><dd>
 This braille indicator is placed after a sequence of characters
 translated in computer braille, whether this sequence is indicated in
the <code>typeform</code> parameter (see <a href="#Programming-with-liblouis">Programming with liblouis</a>) or
@@ -901,14 +946,14 @@
 require special treatment.


-<a name="index-decpoint-48"></a>
+<a name="index-decpoint-49"></a>
<dl><a name="decpoint-opcode"></a><dt><code>decpoint character dots</code><dd>
 This opcode defines the decimal point. The character operand must have
only one character. For example, in <samp><span class="file">en-us-g1.ctb</span></samp> we have:

      <pre class="example">          decpoint . 46
 </pre>
- <p><a name="index-hyphen-49"></a><a name="hyphen-opcode"></a><br><dt><code>hyphen character dots</code><dd> + <p><a name="index-hyphen-50"></a><a name="hyphen-opcode"></a><br><dt><code>hyphen character dots</code><dd>
 This opcode defines the hyphen, that is, the character used in
 compound words such as have-nots. The back-translator uses it to
 determine the end of individual words.
@@ -922,7 +967,7 @@
 <p>These opcodes cause special processing to be carried out.


-<a name="index-capsnocont-50"></a>
+<a name="index-capsnocont-51"></a>
 <dl><a name="capsnocont-opcode"></a><dt><code>capsnocont</code><dd>
 This opcode has no operands. If it is specified, words or parts of
 words in all caps are not contracted. This is needed for languages
@@ -965,7 +1010,7 @@
 more consecutive letters between spaces and/or punctuation marks.


-<a name="index-noback-51"></a>
+<a name="index-noback-52"></a>
 <dl><a name="noback-opcode"></a><dt><code>noback opcode ...</code><dd>
 This is an opcode prefix, that is to say, it modifies the operation of
 the opcode that follows it on the same line. noback specifies that no
@@ -973,12 +1018,12 @@

      <pre class="example">          noback always ;\s; 0
 </pre>
- <p><a name="index-nofor-52"></a><a name="nofor-opcode"></a><br><dt><code>nofor opcode ...</code><dd> + <p><a name="index-nofor-53"></a><a name="nofor-opcode"></a><br><dt><code>nofor opcode ...</code><dd>
 This is an opcode prefix which modifies the operation of the opcode
 following it on the same line. nofor specifies that forward translation
 is not to use the information on this line.

- <p><a name="index-compbrl-53"></a><a name="compbrl-opcode"></a><br><dt><code>compbrl characters</code><dd> + <p><a name="index-compbrl-54"></a><a name="compbrl-opcode"></a><br><dt><code>compbrl characters</code><dd>
 If the characters are found within a block of text surrounded by
 whitespace the entire block is translated according to the default
braille representations defined by the <a href="#Character_002dDefinition-Opcodes">Character-Definition Opcodes</a>, if 8-dot computer braille is enabled or according to the dot
@@ -987,7 +1032,7 @@

<pre class="example"> compbrl www translate URLs in computer braille
 </pre>
- <p><a name="index-comp6-54"></a><a name="comp6-opcode"></a><br><dt><code>comp6 character dots</code><dd> + <p><a name="index-comp6-55"></a><a name="comp6-opcode"></a><br><dt><code>comp6 character dots</code><dd>
 This opcode specifies the translation of characters in 6-dot computer
 braille. It is necessary because the translation of a single character
 may require more than one cell. The first operand must be a character
@@ -996,13 +1041,13 @@
 of a misnomer, since any dots, not just dots 1 through 6, can be
 specified. This even includes virtual dots.

- <p><a name="index-nocont-55"></a><a name="nocont-opcode"></a><br><dt><code>nocont characters</code><dd> + <p><a name="index-nocont-56"></a><a name="nocont-opcode"></a><br><dt><code>nocont characters</code><dd>
 Like <code>compbrl</code>, except that the string is uncontracted.
<code>prepunc</code> opcode (see <a href="#prepunc-opcode">prepunc</a>) and <code>postpunc</code> opcode (see <a href="#postpunc-opcode">postpunc</a>) rules are applied,
 however. This is useful for specifying that foreign words should not
 be contracted in an entire document.

- <p><a name="index-replace-56"></a><a name="replace-opcode"></a><br><dt><code>replace characters {characters}</code><dd> + <p><a name="index-replace-57"></a><a name="replace-opcode"></a><br><dt><code>replace characters {characters}</code><dd>
 Replace the first set of characters, no matter where they appear, with
 the second. Note that the second operand is <em>NOT</em> a dot pattern.
 It is also optional. If it is omitted the character(s) in the first
@@ -1011,7 +1056,7 @@
 translation indirectly. Therefore, it is preferable to use
 <code>correct</code> opcode (see <a href="#correct-opcode">correct</a>).

- <p><a name="index-always-57"></a><a name="always-opcode"></a><br><dt><code>always characters dots</code><dd> + <p><a name="index-always-58"></a><a name="always-opcode"></a><br><dt><code>always characters dots</code><dd>
 Replace the characters with the dot pattern no matter where they
appear. Do <em>NOT</em> use an entry such as <code>always a 1</code>. Use the
 <code>uplow</code>, <code>letter</code>, etc. character definition opcodes
@@ -1019,7 +1064,7 @@

<pre class="example"> always world 456-2456 unconditional translation
 </pre>
- <p><a name="index-repeated-58"></a><a name="repeated-opcode"></a><br><dt><code>repeated characters dots</code><dd> + <p><a name="index-repeated-59"></a><a name="repeated-opcode"></a><br><dt><code>repeated characters dots</code><dd>
 Replace the characters with the dot pattern no matter where they
 appear. Ignore any consecutive repetitions of the same character
 sequence. This is useful for shortening long strings of spaces or
@@ -1027,7 +1072,7 @@

<pre class="example"> repeated --- 36-36-36 shorten separator lines made with hyphens
 </pre>
- <p><a name="index-repword-59"></a><a name="repword-opcode"></a><br><dt><code>repword characters dots</code><dd> + <p><a name="index-repword-60"></a><a name="repword-opcode"></a><br><dt><code>repword characters dots</code><dd>
 When characters are encountered check to see if the word before this
 string matches the word after it. If so, replace characters with dots
 and eliminate the second word and any word following another occurrence
@@ -1036,7 +1081,7 @@

      <pre class="example">          repword - 123456
 </pre>
- <p><a name="index-largesign-60"></a><a name="largesign-opcode"></a><br><dt><code>largesign characters dots</code><dd> + <p><a name="index-largesign-61"></a><a name="largesign-opcode"></a><br><dt><code>largesign characters dots</code><dd>
 Replace the characters with the dot pattern no matter where they
 appear. In addition, if two words defined as large signs follow each
 other, remove the space between them. For example, in
@@ -1047,11 +1092,11 @@
 would be properly contracted. The term <code>largesign</code> is a bit of
 braille jargon that pleases braille experts.

- <p><a name="index-word-61"></a><a name="word-opcode"></a><br><dt><code>word characters dots</code><dd> + <p><a name="index-word-62"></a><a name="word-opcode"></a><br><dt><code>word characters dots</code><dd>
 Replace the characters with the dot pattern if they are a word, that
 is, are surrounded by whitespace and/or punctuation.

- <p><a name="index-syllable-62"></a><a name="syllable-opcode"></a><br><dt><code>syllable characters dots</code><dd> + <p><a name="index-syllable-63"></a><a name="syllable-opcode"></a><br><dt><code>syllable characters dots</code><dd>
 As its name indicates, this opcode defines a "syllable" which must be
 represented by exactly the dot patterns given. Contractions may not
 cross the boundaries of this "syllable" either from left or right. The
@@ -1062,7 +1107,7 @@

      <pre class="example">          syllable horse = sawhorse, horseradish
 </pre>
- <p><a name="index-nocross-63"></a><a name="nocross-opcode"></a><br><dt><code>nocross characters dots</code><dd> + <p><a name="index-nocross-64"></a><a name="nocross-opcode"></a><br><dt><code>nocross characters dots</code><dd>
 Replace the characters with the dot pattern if the characters are all
 in one syllable (do not cross a syllable boundary). For this opcode to
 work, a hyphenation table must be included. If this is not done,
@@ -1071,7 +1116,7 @@
 hyphenation table has been included <code>nocross sh 146</code> will cause
the &lsquo;<samp><span class="samp">sh</span></samp>&rsquo; in &lsquo;<samp><span class="samp">monkshood</span></samp>&rsquo; not to be contracted.

- <p><a name="index-joinword-64"></a><a name="joinword-opcode"></a><br><dt><code>joinword characters dots</code><dd> + <p><a name="index-joinword-65"></a><a name="joinword-opcode"></a><br><dt><code>joinword characters dots</code><dd>
 Replace the characters with the dot pattern if they are a word which
 is followed by whitespace and a letter. In addition remove the
whitespace. For example, <samp><span class="file">en-us-g2.ctb</span></samp> has <code>joinword to
@@ -1080,7 +1125,7 @@
 these conditions are not met, the word is translated according to any
 other opcodes that may apply to it.

- <p><a name="index-lowword-65"></a><a name="lowword-opcode"></a><br><dt><code>lowword characters dots</code><dd> + <p><a name="index-lowword-66"></a><a name="lowword-opcode"></a><br><dt><code>lowword characters dots</code><dd>
 Replace the characters with the dot pattern if they are a word
 preceded and followed by whitespace. No punctuation either before or
 after the word is allowed. The term <code>lowword</code> derives from the
@@ -1089,7 +1134,7 @@

      <pre class="example">          lowword were 2356
 </pre>
- <p><a name="index-contraction-66"></a><a name="contraction-opcode"></a><br><dt><code>contraction characters</code><dd> + <p><a name="index-contraction-67"></a><a name="contraction-opcode"></a><br><dt><code>contraction characters</code><dd> If you look at <samp><span class="file">en-us-g2.ctb</span></samp> you will see that some words are
 actually contracted into some of their own letters. A famous example
among braille transcribers is &lsquo;<samp><span class="samp">also</span></samp>&rsquo;, which is contracted as
@@ -1102,40 +1147,40 @@
 combinations when they actually are abbreviations, not contractions.
 The <code>contraction</code> opcode tells the translator to do this.

- <p><a name="index-sufword-67"></a><a name="sufword-opcode"></a><br><dt><code>sufword characters dots</code><dd> + <p><a name="index-sufword-68"></a><a name="sufword-opcode"></a><br><dt><code>sufword characters dots</code><dd>
 Replace the characters with the dot pattern if they are either a word
 or at the beginning of a word.

- <p><a name="index-prfword-68"></a><a name="prfword-opcode"></a><br><dt><code>prfword characters dots</code><dd> + <p><a name="index-prfword-69"></a><a name="prfword-opcode"></a><br><dt><code>prfword characters dots</code><dd>
 Replace the characters with the dot pattern if they are either a word
 or at the end of a word.

- <p><a name="index-begword-69"></a><a name="begword-opcode"></a><br><dt><code>begword characters dots</code><dd> + <p><a name="index-begword-70"></a><a name="begword-opcode"></a><br><dt><code>begword characters dots</code><dd>
 Replace the characters with the dot pattern if they are at the
 beginning of a word.

- <p><a name="index-begmidword-70"></a><a name="begmidword-opcode"></a><br><dt><code>begmidword characters dots</code><dd> + <p><a name="index-begmidword-71"></a><a name="begmidword-opcode"></a><br><dt><code>begmidword characters dots</code><dd>
 Replace the characters with the dot pattern if they are either at the
 beginning or in the middle of a word.

- <p><a name="index-midword-71"></a><a name="midword-opcode"></a><br><dt><code>midword characters dots</code><dd> + <p><a name="index-midword-72"></a><a name="midword-opcode"></a><br><dt><code>midword characters dots</code><dd>
 Replace the characters with the dot pattern if they are in the middle
 of a word.

- <p><a name="index-midendword-72"></a><a name="midendword-opcode"></a><br><dt><code>midendword characters dots</code><dd> + <p><a name="index-midendword-73"></a><a name="midendword-opcode"></a><br><dt><code>midendword characters dots</code><dd>
 Replace the characters with the dot pattern if they are either in the
 middle or at the end of a word.

- <p><a name="index-endword-73"></a><a name="endword-opcode"></a><br><dt><code>endword characters dots</code><dd> + <p><a name="index-endword-74"></a><a name="endword-opcode"></a><br><dt><code>endword characters dots</code><dd>
 Replace the characters with the dot pattern if they are at the end of
 a word.

- <p><a name="index-partword-74"></a><a name="partword-opcode"></a><br><dt><code>partword characters dots</code><dd> + <p><a name="index-partword-75"></a><a name="partword-opcode"></a><br><dt><code>partword characters dots</code><dd>
 Replace the characters with the dot pattern if the characters are
 anywhere in a word, that is, if they are proceeded or followed by a
 letter.

- <p><a name="index-exactdots-75"></a><a name="exactdots-opcode"></a><br><dt><code>exactdots @dots</code><dd> + <p><a name="index-exactdots-76"></a><a name="exactdots-opcode"></a><br><dt><code>exactdots @dots</code><dd> Note that the operand must begin with an at sign (&lsquo;<samp><span class="samp">@</span></samp>&rsquo;). The dot
 pattern following it is evaluated for validity. If it is valid,
 whenever an at sign followed by this dot pattern appears in the source
@@ -1148,32 +1193,32 @@
 </pre>
      <p>will produce the characters with these dot patterns in the output.

- <p><a name="index-prepunc-76"></a><a name="prepunc-opcode"></a><br><dt><code>prepunc characters dots</code><dd> + <p><a name="index-prepunc-77"></a><a name="prepunc-opcode"></a><br><dt><code>prepunc characters dots</code><dd>
 Replace the characters with the dot pattern if they are part of
 punctuation at the beginning of a word.

- <p><a name="index-postpunc-77"></a><a name="postpunc-opcode"></a><br><dt><code>postpunc characters dots</code><dd> + <p><a name="index-postpunc-78"></a><a name="postpunc-opcode"></a><br><dt><code>postpunc characters dots</code><dd>
 Replace the characters with the dot pattern if they are part of
 punctuation at the end of a word.

- <p><a name="index-begnum-78"></a><a name="begnum-opcode"></a><br><dt><code>begnum characters dots</code><dd> + <p><a name="index-begnum-79"></a><a name="begnum-opcode"></a><br><dt><code>begnum characters dots</code><dd>
 Replace the characters with the dot pattern if they are at the
 beginning of a number, that is, before all its digits. For example, in
<samp><span class="file">en-us-g1.ctb</span></samp> we have <code>begnum # 4</code>.

- <p><a name="index-midnum-79"></a><a name="midnum-opcode"></a><br><dt><code>midnum characters dots</code><dd> + <p><a name="index-midnum-80"></a><a name="midnum-opcode"></a><br><dt><code>midnum characters dots</code><dd>
 Replace the characters with the dot pattern if they are in the middle
of a number. For example, <samp><span class="file">en-us-g1.ctb</span></samp> has <code>midnum . 46</code>.
 This is because the decimal point has a different dot pattern than the
 period.

- <p><a name="index-endnum-80"></a><a name="endnum-opcode"></a><br><dt><code>endnum characters dots</code><dd> + <p><a name="index-endnum-81"></a><a name="endnum-opcode"></a><br><dt><code>endnum characters dots</code><dd>
 Replace the characters with the dot pattern if they are at the end of
a number. For example <samp><span class="file">en-us-g1.ctb</span></samp> has <code>endnum th 1456</code>. This handles things like &lsquo;<samp><span class="samp">4th</span></samp>&rsquo;. A letter sign is <em>NOT</em>
 inserted.

- <p><a name="index-joinnum-81"></a><a name="joinnum-opcode"></a><br><dt><code>joinnum characters dots</code><dd> + <p><a name="index-joinnum-82"></a><a name="joinnum-opcode"></a><br><dt><code>joinnum characters dots</code><dd>
 Replace the characters with the dot pattern. In addition, if
 whitespace and a number follows omit the whitespace. This opcode can
 be used to join currency symbols to numbers for example:
@@ -1218,20 +1263,20 @@
 For examples see <samp><span class="file">fr-abrege.ctb</span></samp>.


-<a name="index-class-82"></a>
+<a name="index-class-83"></a>
 <dl><a name="class-opcode"></a><dt><code>class name characters</code><dd>
 Define a new character class. The characters operand must be specified
 as a string. A character class may not be used until it has been
 defined.

- <p><a name="index-after-83"></a><a name="after-opcode"></a><br><dt><code>after class opcode ...</code><dd> + <p><a name="index-after-84"></a><a name="after-opcode"></a><br><dt><code>after class opcode ...</code><dd>
 The specified opcode is further constrained in that the matched
 character sequence must be immediately preceded by a character
 belonging to the specified class. If this opcode is used more than
 once on the same line then the union of the characters in all the
 classes is used.

- <p><a name="index-before-84"></a><a name="before-opcode"></a><br><dt><code>before class opcode ...</code><dd> + <p><a name="index-before-85"></a><a name="before-opcode"></a><br><dt><code>before class opcode ...</code><dd>
 The specified opcode is further constrained in that the matched
 character sequence must be immediately followed by a character
 belonging to the specified class. If this opcode is used more than
@@ -1254,20 +1299,20 @@
 are separated by commas and may contain more than one cell.


-<a name="index-swapcd-85"></a>
+<a name="index-swapcd-86"></a>
<dl><a name="swapcd-opcode"></a><dt><code>swapcd name characters dots, dots, dots, ...</code><dd>
 See above paragraph for explanation. For example:

      <pre class="example">          swapcd dropped 0123456789 356,2,23,...
 </pre>
- <p><a name="index-swapdd-86"></a><a name="swapdd-opcode"></a><br><dt><code>swapdd name dots, dots, dots ... dotpattern1, dotpattern2, dotpattern3, ...</code><dd> + <p><a name="index-swapdd-87"></a><a name="swapdd-opcode"></a><br><dt><code>swapdd name dots, dots, dots ... dotpattern1, dotpattern2, dotpattern3, ...</code><dd>
 The <code>swapdd</code> opcode defines substitutions for the multipass
 opcodes. In the second operand the dot patterns must be single cells,
 but in the third operand multi-cell dot patterns are allowed. This is
 because multi-cell patterns in the second operand would lead to
 ambiguities.

- <p><a name="index-swapcc-87"></a><a name="swapcc-opcode"></a><br><dt><code>swapcc name characters characters</code><dd> + <p><a name="index-swapcc-88"></a><a name="swapcc-opcode"></a><br><dt><code>swapcc name characters characters</code><dd>
 The <code>swapcc</code> opcode swaps characters in its second operand for
 characters in the corresponding places in its third operand. It is
 intended for use with <code>correct</code> opcodes and can solve problems
@@ -1292,7 +1337,7 @@
 opcodes are invoked as follows:

      <dl>
-<a name="context-opcode"></a><a name="index-context-88"></a><a name="index-pass2-89"></a><a name="index-pass3-90"></a><a name="index-pass4-91"></a><dt><code>context test action</code><dt><code>pass2 test action</code><dt><code>pass3 test action</code><dt><code>pass4 test action</code><dd></dl> +<a name="context-opcode"></a><a name="index-context-89"></a><a name="index-pass2-90"></a><a name="index-pass3-91"></a><a name="index-pass4-92"></a><dt><code>context test action</code><dt><code>pass2 test action</code><dt><code>pass3 test action</code><dt><code>pass4 test action</code><dd></dl>

<p>The <code>test</code> and <code>action</code> operands have suboperands. Each
 suboperand begins with a non-alphanumeric character and ends when
@@ -1439,7 +1484,7 @@
 <h3 class="section">3.11 The correct Opcode</h3>


-<a name="index-correct-92"></a>
+<a name="index-correct-93"></a>
 <dl><a name="correct-opcode"></a><dt><code>correct test action</code><dd>
 Because some input (such as that from an OCR program) may contain
 systematic errors, it is sometimes advantageous to use a
@@ -1466,7 +1511,7 @@
 <h3 class="section">3.12 Miscellaneous Opcodes</h3>


-<a name="index-include-93"></a>
+<a name="index-include-94"></a>
 <dl><a name="include-opcode"></a><dt><code>include filename</code><dd>
 Read the file indicated by <code>filename</code> and incorporate or include
 its entries into the table. Included files can include other files,
@@ -1475,17 +1520,17 @@
<samp><span class="file">en-us-g2.ctb</span></samp>. If the included file is not in the same directory
 as the main table, use a full path name for filename.

- <p><a name="index-locale-94"></a><a name="locale-opcode"></a><br><dt><code>locale characters</code><dd> + <p><a name="index-locale-95"></a><a name="locale-opcode"></a><br><dt><code>locale characters</code><dd>
 Not implemented, but recognized and ignored for backward
 compatibility.

- <p><a name="index-undefined-95"></a><a name="undefined-opcode"></a><br><dt><code>undefined dots</code><dd> + <p><a name="index-undefined-96"></a><a name="undefined-opcode"></a><br><dt><code>undefined dots</code><dd>
 If this opcode is used in a table any  characters which have not been
 defined in the table but are encountered in the text will be replaced by
 the dot pattern. If this opcode is not used, any undefined characters
are replaced by <code>'\xhhhh'</code>, where the h's are hexadecimal digits.

- <p><a name="index-display-96"></a><a name="display-opcode"></a><br><dt><code>display character dots</code><dd> + <p><a name="index-display-97"></a><a name="display-opcode"></a><br><dt><code>display character dots</code><dd>
 Associates dot patterns with the characters which will be sent to a
 braille embosser, display or screen font. The character must be in the
 range 0-255 and the dots must specify a single cell. Here are some
@@ -1509,7 +1554,7 @@
 display opcodes (in a different file) to produce plain ASCII braille
 for use with an embosser.

- <p><a name="index-multind-97"></a><a name="multind-opcode"></a><br><dt><code>multind dots opcode opcode ...</code><dd> + <p><a name="index-multind-98"></a><a name="multind-opcode"></a><br><dt><code>multind dots opcode opcode ...</code><dd> The <code>multind</code> opcode tells the back-translator that a sequence of
 braille cells represents more than one braille indicator. For example,
in <samp><span class="file">en-us-g1.ctb</span></samp> we have <code>multind 56-6 letsign capsign</code>.
@@ -1534,26 +1579,26 @@
 backward compatibility.


-<a name="index-italsign-98"></a>
+<a name="index-italsign-99"></a>
<dl><a name="italsign-opcode"></a><dt><code>italsign dots</code><dd>This opcode is deprecated. Use the <code>lastworditalbefore</code> opcode (see <a href="#lastworditalbefore-opcode">lastworditalbefore</a>) instead.

- <p><a name="index-begital-99"></a><a name="begital-opcode"></a><br><dt><code>begital dots</code><dd>This opcode is deprecated. Use the <code>firstletterital</code> opcode (see <a href="#firstletterital-opcode">firstletterital</a>) instead. + <p><a name="index-begital-100"></a><a name="begital-opcode"></a><br><dt><code>begital dots</code><dd>This opcode is deprecated. Use the <code>firstletterital</code> opcode (see <a href="#firstletterital-opcode">firstletterital</a>) instead.

- <p><a name="index-endital-100"></a><a name="endital-opcode"></a><br><dt><code>endital dots</code><dd>This opcode is deprecated. Use the <code>lastletterital</code> opcode (see <a href="#lastletterital-opcode">lastletterital</a>) instead. + <p><a name="index-endital-101"></a><a name="endital-opcode"></a><br><dt><code>endital dots</code><dd>This opcode is deprecated. Use the <code>lastletterital</code> opcode (see <a href="#lastletterital-opcode">lastletterital</a>) instead.

- <p><a name="index-boldsign-101"></a><a name="boldsign-opcode"></a><br><dt><code>boldsign dots</code><dd>This opcode is deprecated. Use the <code>lastwordboldbefore</code> opcode (see <a href="#lastwordboldbefore-opcode">lastwordboldbefore</a>) instead. + <p><a name="index-boldsign-102"></a><a name="boldsign-opcode"></a><br><dt><code>boldsign dots</code><dd>This opcode is deprecated. Use the <code>lastwordboldbefore</code> opcode (see <a href="#lastwordboldbefore-opcode">lastwordboldbefore</a>) instead.

- <p><a name="index-begbold-102"></a><a name="begbold-opcode"></a><br><dt><code>begbold dots</code><dd>This opcode is deprecated. Use the <code>firstletterbold</code> opcode (see <a href="#firstletterbold-opcode">firstletterbold</a>) instead. + <p><a name="index-begbold-103"></a><a name="begbold-opcode"></a><br><dt><code>begbold dots</code><dd>This opcode is deprecated. Use the <code>firstletterbold</code> opcode (see <a href="#firstletterbold-opcode">firstletterbold</a>) instead.

- <p><a name="index-endbold-103"></a><a name="endbold-opcode"></a><br><dt><code>endbold dots</code><dd>This opcode is deprecated. Use the <code>lastletterbold</code> opcode (see <a href="#lastletterbold-opcode">lastletterbold</a>) instead. + <p><a name="index-endbold-104"></a><a name="endbold-opcode"></a><br><dt><code>endbold dots</code><dd>This opcode is deprecated. Use the <code>lastletterbold</code> opcode (see <a href="#lastletterbold-opcode">lastletterbold</a>) instead.

- <p><a name="index-undersign-104"></a><a name="undersign-opcode"></a><br><dt><code>undersign dots</code><dd>This opcode is deprecated. Use the <code>lastwordunderbefore</code> opcode (see <a href="#lastwordunderbefore-opcode">lastwordunderbefore</a>) instead. + <p><a name="index-undersign-105"></a><a name="undersign-opcode"></a><br><dt><code>undersign dots</code><dd>This opcode is deprecated. Use the <code>lastwordunderbefore</code> opcode (see <a href="#lastwordunderbefore-opcode">lastwordunderbefore</a>) instead.

- <p><a name="index-begunder-105"></a><a name="begunder-opcode"></a><br><dt><code>begunder dots</code><dd>This opcode is deprecated. Use the <code>firstletterunder</code> opcode (see <a href="#firstletterunder-opcode">firstletterunder</a>) instead. + <p><a name="index-begunder-106"></a><a name="begunder-opcode"></a><br><dt><code>begunder dots</code><dd>This opcode is deprecated. Use the <code>firstletterunder</code> opcode (see <a href="#firstletterunder-opcode">firstletterunder</a>) instead.

- <p><a name="index-endunder-106"></a><a name="endunder-opcode"></a><br><dt><code>endunder dots</code><dd>This opcode is deprecated. Use the <code>lastletterunder</code> opcode (see <a href="#lastletterunder-opcode">lastletterunder</a>) instead. + <p><a name="index-endunder-107"></a><a name="endunder-opcode"></a><br><dt><code>endunder dots</code><dd>This opcode is deprecated. Use the <code>lastletterunder</code> opcode (see <a href="#lastletterunder-opcode">lastletterunder</a>) instead.

- <p><a name="index-literal-107"></a><a name="literal-opcode"></a><br><dt><code>literal characters</code><dd>This opcode is deprecated. Use the <code>compbrl</code> opcode (see <a href="#compbrl-opcode">compbrl</a>) instead. + <p><a name="index-literal-108"></a><a name="literal-opcode"></a><br><dt><code>literal characters</code><dd>This opcode is deprecated. Use the <code>compbrl</code> opcode (see <a href="#compbrl-opcode">compbrl</a>) instead.
 </dl>

 <p><a name="How-to-test-Translation-Tables"></a>
@@ -1840,7 +1885,7 @@

 <h3 class="section">6.4 lou_version</h3>

-<p><a name="index-lou_005fversion-108"></a>
+<p><a name="index-lou_005fversion-109"></a>
 <pre class="example">     char *lou_version ()
 </pre>
    <p>This function returns a pointer to a character string containing the
@@ -1852,7 +1897,7 @@

 <h3 class="section">6.5 lou_translateString</h3>

-<p><a name="index-lou_005ftranslateString-109"></a>
+<p><a name="index-lou_005ftranslateString-110"></a>
 <pre class="example">     int lou_translateString (
          const char * tableList,
          const widechar * inbuf,
@@ -1942,7 +1987,7 @@

 <h3 class="section">6.6 lou_translate</h3>

-<p><a name="index-lou_005ftranslate-110"></a>
+<p><a name="index-lou_005ftranslate-111"></a>
 <pre class="example">     int lou_translate (
          const char * tableList,
          const widechar * const inbuf,
@@ -2005,7 +2050,7 @@

 <h3 class="section">6.7 lou_backTranslateString</h3>

-<p><a name="index-lou_005fbackTranslateString-111"></a>
+<p><a name="index-lou_005fbackTranslateString-112"></a>
 <pre class="example">     int lou_backTranslateString (
          const char * tableList,
          const widechar * inbuf,
@@ -2031,7 +2076,7 @@

 <h3 class="section">6.8 lou_backTranslate</h3>

-<p><a name="index-lou_005fbackTranslate-112"></a>
+<p><a name="index-lou_005fbackTranslate-113"></a>
 <pre class="example">     int lou_backTranslate (
          const char * tableList,
          const widechar * inbufx,
@@ -2052,7 +2097,7 @@

 <h3 class="section">6.9 lou_hyphenate</h3>

-<p><a name="index-lou_005fhyphenate-113"></a>
+<p><a name="index-lou_005fhyphenate-114"></a>
 <pre class="example">     int lou_hyphenate (
          const char *tableList,
          const widechar *inbuf,
@@ -2086,7 +2131,7 @@

 <h3 class="section">6.10 lou_compileString</h3>

-<p><a name="index-lou_005fcompileString-114"></a>
+<p><a name="index-lou_005fcompileString-115"></a>
<pre class="example"> int lou_compileString (const char *tableList, const char *inString)
 </pre>
    <p>This function enables you to compile a table entry on the fly at
@@ -2102,7 +2147,7 @@

 <h3 class="section">6.11 lou_dotsToChar</h3>

-<p><a name="index-lou_005fdotsToChar-115"></a>
+<p><a name="index-lou_005fdotsToChar-116"></a>
<pre class="example"> int lou_dotsToChar (const char *tableList, const widechar *inbuf, widechar
        *outbuf, int length, int)
 </pre>
@@ -2119,7 +2164,7 @@

 <h3 class="section">6.12 lou_charToDots</h3>

-<p><a name="index-lou_005fcharToDots-116"></a>
+<p><a name="index-lou_005fcharToDots-117"></a>
<pre class="example"> int lou_charToDots (const char *tableList, const widechar *inbuf, widechar
        *outbuf, int length, int mode)
 </pre>
@@ -2137,7 +2182,7 @@

 <h3 class="section">6.13 lou_logFile</h3>

-<p><a name="index-lou_005flogFile-117"></a>
+<p><a name="index-lou_005flogFile-118"></a>
 <pre class="example">     void lou_logFile (char *fileName);
 </pre>
<p>This function is used when it is not convenient either to let messages
@@ -2151,7 +2196,7 @@

 <h3 class="section">6.14 lou_logPrint</h3>

-<p><a name="index-lou_005flogPrint-118"></a>
+<p><a name="index-lou_005flogPrint-119"></a>
 <pre class="example">     void lou_logPrint (char *format, ...);
 </pre>
<p>This function is called like <code>fprint</code>. It can be used by other
***The diff for this file has been truncated for email.***
For a description of the software, to download it and links to
project pages go to http://www.abilitiessoft.com

Other related posts:

  • » [liblouis-liblouisxml] [liblouis] r875 committed - Update online documentation - liblouis