Page suivante Page précédente Table des matières

## 7. Braille abrégé

BRLTTY peut afficher le braille abrégé sur la ligne. IL le fait si:

- Une table d'abrégé a été sélectionnée. Voir l'option -c en ligne de commande et la ligne contraction-table du fichier de configuration pour des détails.
- La possibilité braille 6 points a été activée. Voir la commande SIXDOTS et la préférence Text Style pour des détails.

Cette possibilité n'est pas disponible si vous avez spécifié l'option de compilation --disable-contracted-braille.

Les tables d'abrégé suivantes sont fournies:

big5

  Chinois

compress

  Enlève les blancs en trop

en-uebc-g2

  Braille abrégé anglais unifié

fr-abrege

  Français unifié abrégé

fr-integral

  Français unifié désabrégé

zh-tw

  Chinois Thaïwanais

zh-tw-ucb

  Braille Chinois Thaïwanais "Unique"

## 7.1 Format de fichier

Les lignes vides sont ignorées. Tout espace au début ou à la fin (n'importe quel nombre d'espaces ou tabulations) est ignoré. Les lignes commençant par un dièse (`#`) sont ignorées, ce sont des commentaires.

> `# C'est un commentaire.`

Toutes les autres lignes définissent des entrées de table.

La forme générale d'une entrée de table est un opcode, suivi de ses opérateurs. Le opcode et son opérateur sont séparés par des espaces. Chaque opcode a un nombre spécifique d'opérateurs, et tout texte suivant son dernier opérateur est traité comme un commentaire.

> `opcode operateur ... commentaire`

Les types d'opérateur suivant sont supportés:

string

  Une séquence de caractères différent d'un espace (qui finit la chaîne) et d'une barre oblique inversée (`\`). Les représentations spéciales suivantes sont aussi supportées:

  `\\`

    barre oblique inversée

  `\f`

    saut de page

  `\n`

    nouvelle ligne

  `\o` ooo

    valeur d'octet sur 3 chiffres

  `\r`

    retour chariot

  `\s`

    vide (espace)

  `\t`

    tabulation horizontale

  `\v`

    tabulation verticale

  `\x` xx

    valeur hexadecimale

number

  Un entier. Il peut être spécifié d'une des façons suivantes:

  decimal

    Une séquence de chiffres décimaux (`0`-`9`), le premier chiffre étant différent de zéro (`1`-`9`).

  hexadecimal

    Une séquence de chiffres hexadécimaux (`0`-`9`, et soit `a`-`f` soit `A`-`F`), précédé soit par `0x` soit par `0X`.

  octal

    Une séquence de chiffres en octet (`0`-`7`), le premier chiffre étant zéro (`0`).

dots

  Un symbole braille. Les points braille doivent être spécifiés par leur numéro standard (voir la Convention du nombre de points braille Standard), et, pour un symbole multicellules, les spécifications de la cellule doivent être séparées par un tiret (`-`). Par exemple, l'abréviation du mot anglais `lord` (la lettre `l` précédée du point 5) serait spécifiée comme `5-123`. Vous pouvez spécifier un espace avec le numéro de point spécial `0`.

## 7.2 Opcodes

Un opcode est un mot-clé qui dit au traducteur comment interpréter les opérateurs. Les opcodes sont groupés ici par leur fonction.

### Administration de la table

Ces opérateurs facilitent l'écriture des tables d'abrégé. Ils n'ont pas d'effet direct sur la traduction de caractère.

`include` path

  Inclut le contenu d'un autre fichier. L'inclusion peut se faire à n'importe quel niveau. Les chemins relatifs sont déterminés par rapport au répertoire du fichier incluS.

`locale` locale

  Définit la locale pour l'interprétation d'un caractère (minuscule, majuscule, numérique, etc). La locale peut être définie comme:

  langue[`_`pays][`.`charset][`@`modifier]

    La composante langue est requise et devrait être un code de langue à deux lettres `ISO-639`. La composante pays est facultative et devrait être un code de pays à deux lettres `ISO-3166`. La composante charset est optionnelle est devrait être le nom d'une table de caractères, comme `ISO-8859-1`.

  C

    7-bit ASCII.

  -

    Aucune locale.

  La dernière spécification de locale s'applique à toute la table. Si vous n'utilisez pas cet opcode, la locale `C` est utilisée.

### Définition de caractères spéciaux

Ces opcodes définissent les caractères spéciaux qui doivent être insérés dans le texte braille afin de le rendre plus clair.

`capsign` points

  Le symbole qui met en majuscule une seule lettre.

`begcaps` points

  Le symbole qui commence un bloc de lettres en majuscule à l'intérieur d'un mot.

`endcaps` points

  Le symbole qui termine un bloc de lettres en majuscules à l'intérieur d'un mot.

`letsign` points

  Le symbole qui désigne une lettre ne faisant pas partie du mot.

  Le symbole marquant le début d'un nombre.

`lastlargesign` points

  Traduit les caractères quelque soit l'endroit où ils apparaissent. Supprime les espaces qui les précède si le mot précédent a été marqué par le code "largesign".

### Traduction de caractère

Ces opcodes définissent les représentations braille des séquences de caractères. Chacun d'eux définit une entrée à l'intérieur de la table d'abrégé. Ces entrées peuvent être définit dans n'importe quel ordre, sauf, comme remarqué ci-dessous, lorsqu'elles définissent des représentations alternatives de la même séquence de caractères.

Chacun de ces opcodes a un opérateurs caractères (qui doit être spécifié comme une chaîne), et une condition de configuration dirigeant son utilisation. Le texte est traduit strictement de la gauche vers la droite, caractère par caractère, avec l'entrée la plus acceptable pour chaque position utilisée. S'il y a plus d'une entrée acceptable pour une position donnée, celle ayant la chaîne de caractères la plus longue est utilisée. S'il y a plus d'une entrée acceptable pour la même chaîne de caractères, celle définie le plus au début de la table est utilisée (c'est la seule dépendance de l'ordre).

Beaucoup de ces opcodes ont un opérateur points qui définit la représentation braille de son opérateur caractères. Il peut être aussi spécifié comme un signe égal (`=`), au quel cas il signifie l'une des deux choses. Si l'entrée est pour un seul caractère, cela signifie que la représentation du braille informatique sélectionnée (voir l'option -t en ligne de commande et la ligne text-table du fichier de configuration) de ce caractère doit être utilisée. Si c'est pour une séquence multi-caractères, la représentation par défaut de chaque caractère (voir always) dans une séquence doit être utilisée.

Certains termes spéciaux sont utilisés à l'intérieur des descriptions de ces opcodes.

word

  Une séquence maximale d'une ou plusieurs lettres à la suite.

Enfin, voici maintenant la description des opcodes eux-mêmes:

`literal` caractères

  Traduit ce qui est lié à l'espace et qui contient une séquence de caractères en braille informatique (voir l'option -t en ligne de commande et la ligne text-table du fichier de configuration).

`replace` caractères caractères

  Remplace la première valeur des caractères, quelque soit l'endroit où ils apparaissent, par la seconde. Les caractères remplacés ne sont pas réinsérés.

`always` caractères points

  Traduit les caractères quelque soit l'endroit où ils apparaissent. S'il n'y a qu'un caractère, alors, en plus, définit la représentation par défaut de ce caractère.

`repeatable` caractères points

  Traduit les caractères quelque soit l'endroit où ils apparaissent. Ignore toute répétition immédiate de la même séquence.

`largesign` caractères points

  Traduit les caractères quelque soit l'endroit où ils apparaissent. Supprime les espaces entre les mots qui se suivent et qui sont gérés par cet opcode.

`word` caractères points

  Traduit les caractères s'ils forment un mot.

`joinword` caractères points

  Traduit les caractères s'ils forment un mot. Supprime l'espace suivant si le premier caractère le suit est une lettre.

`lowword` caractères points

  Traduit les caractères s'ils forment un mot lié à un espace.

`contraction` caractères

  Fait précéder les caractères d'un signe-lettre (voir letsign) s'ils forment un mot.

`sufword` caractères points

  Traduit les caractères s'ils forment soit un mot, soit s'ils sont au début d'un mot.

`prfword` caractères points

  Traduit les caractères s'ils forment soit un mot, soit s'ils sont à la fin d'un mot.

`begword` caractères points

  Traduit les caractères s'ils sont au début d'un mot.

`begmidword` caractères points

  Traduit les caractères s'ils sont au début ou au milieu d'un mot.

`midword` caractères points

  Traduit les caractères s'ils sont au milieu d'un mot.

`midendword` caractères points

  Traduit les caractères s'ils sont au milieu ou à la fin d'un mot.

`endword` caractères points

  Traduit les caractères s'ils sont à la fin d'un mot.

`prepunc` caractères points

  Traduit les caractères s'ils font partie de la ponctuation au début d'un mot.

`postpunc` caractères points

  Traduit les caractères s'ils font partie de la ponctuation à la fin d'un mot.

`begnum` caractères points

  Traduit les caractères s'ils sont au début d'un nombre.

`midnum` caractères points

  Traduit les caractères s'ils sont au milieu d'un nombre.

`endnum` caractères points

  Traduit les caractères s'ils sont à la fin d'un nombre.

### Classes de caractère

Ces opcodes définissent et utilisent des classes de caractère. Une classe de caractère associe un type de caractère à un nom. Le nom se réfère alors à n'importe quel caractère à l'intérieur de la classe. Un caractère peut appartenir à plus d'une classe.

Les classes de caractère suivantes sont automatiquement prédéfinies, basées sur la locale sélectionnée.

digit

  Caractères numériques.

letter

  Les caractères alphabétiques majuscule ou minuscule. Certaines locales ont des lettres supplémentaires qui ne sont ni en majuscule ni en minuscule.

lowercase

  Les caractères alphabétiques minuscules.

punctuation

  Caractères imprimables qui ne sont ni des espaces ni alphanumériques.

space

  Caractères d'espacement. Dans la locale par défaut, il s'agit de: espace, tabulation horizontale, tabulation verticale, retour chariot, nouvelle ligne, saut de page.

uppercase

  Caractères alphabétiques en majuscules.

Les opcodes qui définissent et utilisent des classes de caractères sont:

`class` nom caractères

  Définit une nouvelle classe de caractère. L'opérateur caractères doit être spécifié comme une chaîne. Une classe de caractère ne peut pas être utilisée tant qu'elle n'est pas définie.

`after` class opcode ...

  L'opcode spécifié est assez contraint dans le sens où la séquence de caractères adéquat doit être immédiatement précédée par un caractère appartenant à la classe spécifiée. Si vous utilisez plus d'une fois cet opcode sur la même ligne, l'union des caractères de toute la classe est utilisée.

`before` class opcode ...

  L'opcode spécifié est assez contraint dans le sens où la séquence de caractères adéquat doit être immédiatement suivie par un caractère appartenant à la classe spécifiée. Si vous utilisez plus d'une fois cet opcode sur la même ligne, l'union des caractères de toute la classe est utilisée.

Page suivante Page précédente Table des matières