Instructions that move the index always begin with the letter I (capital I). Regardless of whether the condition is TRUE or FALSE, these instructions are always followed if reached. In order for them to be executed correctly, the command interpreter must arrive at them and not be interrupted beforehand (short circuit). If you use these instructions, it is useful to enclose the others within a "(...)" block. Below is a list of all available instructions.
- I+ - Index after
Increases the index by one position. The index is a position variable that analyzes lines of text. Path the text in order to translate it into Braille codes. This instruction advances the index by one position. For example:
we have a code with text string "b";
we want the "b" to be translated only if skipping one character there is another "b";
the condition we will enter will be "I+Cnb";
When the index reaches the first "b", it is incremented by one unit, and then it moves to the "i". Then use the "Cn" instruction to check the next character after the index, which is the second "b".
- I- - Index before
Decreases the index by one position. The index is a position variable that analyzes lines of text. Path the text in order to translate it into Braille codes. This instruction decreases the index by one position. For example:
we have a code with the text string "or";
we want the "o" to be translated only if there is a "b" two characters before;
the condition we will enter will be "I-Cpb";
the index arriving at the "o" of "biblos" is decreased by one position, then goes back to the "l". Then use the "Cp" instruction to check the pre-index character, which is the second "b".
- Ir - Reset index
The index may be temporarily increased or decreased. This instruction returns the index to the original position.
- Iw - Store index
The index may be temporarily increased or decreased. If you want the new index position to be maintained, this instruction will make sure that it is permanently stored.
Storing the index is an action that should be programmed with caution, as it may have unexpected results in the final Braille document.
- I< - Decrease text string
Reduces the size of the text string being analyzed by one character. This instruction only acts if the condition is TRUE. For example:
You search for the string: bel
It transcribes into Braille like: 12 15
The condition: WbI< is used
When the string "bel" is initial word, the size of the searched string, in this case 3 characters, is decreased to 2 characters. The string that is transcribed is only "be", that is the first two characters of "bel", while the analysis and transcription of the text continues from the next "l".
- I> - Increase text string
Increases the size of the text string being analyzed by one character. This instruction only acts if the condition is TRUE. For example:
You search for the string: bel
It is transcribed into Braille as: 12 15 123
Condition is used: WbI>
When the string "bel" is initial word, the size of the searched string, in this case 3 characters, is increased to 4 characters. The character that follows the string "bel" will never be transcribed, because the analysis index has passed it.
- Iu - Unifiable index with flag
This is an instruction that checks if there are conditions to reset the index in order to delete spaces between words. It is used in conjunction with the Xu Flag. This example explains its use:
we have a text where the words are present: to be, to have we add the braille codes "be", "have" and to each we give as a condition the flag "Xu";
we add the braille code "to" and give it the condition "Iu";
When "to" is followed by "be", "have", the space between the two words will be removed, i.e. the index will be merged with the following code that has the Xu union flag.
- Ij - Index always unizable
This is an instruction that checks if there are conditions to reset the index in order to delete spaces between words. It is similar to the previous instruction, but it is always used and does not need the complementary flag "Xu". This example explains its use:
we add a new braille code and diamond the text string "to";
as conditions we write "WwIj".
The code will only be used if "to" is an integer word. Also, if it is separated from the next word by a space, this space will be deleted.
- Ia - First united index
This instruction returns TRUE if in the previous code the index has been merged (instructions Iu and Ij). It's a Boolean instruction, it doesn't change the index as the previous ones do.
- Il - Literal Index
This instruction is only used with letters or sequences of letters. Activates the literal transcription of the word in which the letter or sequence of letters is located. It can generally be used in contracted braille tables in order to transcribe words that contain certain letters literally, i.e. letter by letter. This instruction ensures that, in addition to the literal transcription, the word concerned is marked at the beginning and the end with the literal prefix and suffix.
If this instruction is used on a single letter, you must value the braille code of the letter, as it will still be used for the braille transcription of the letter. If this instruction is used on a sequence of letters, it will only be used as an activator code for the literal transcription of the text, so any Braille code assigned will be irrelevant.