## Editing ISO-Latin and Unicode Characters

### Entering Characters in Amaya

To enter ISO-Latin characters that are not directly available from the keyboard, Amaya uses the standard support provided by the Operating System. An optional multi-key support is also provided for Motif versions and Windows versions.

Amaya provides a mechanism for assigning Keyboard Shortcuts to characters that are not directly available from the keyboard. Some of them are pre-defined:

- To enter a non-breaking space, press `Control - space`.

  This character will be saved as an entity (`&nbsp;`) and is displayed in the source view with the following colored character: ~

- To enter a € (euro) character, press `Alt - e`.
- To enter a œ (oelig), press `Control - o` the `Control - e`.
- To enter a Œ (OElig), press `Shift - Control - O` then `Shift - Control - e`.
- To enter a «, press either `Control - <` or Shift - `Control - <` (it depends on your keyboard).
- To enter a », press `Shift - Control - >`.

See the description of the standard input method: Standard multi-key for Unix versions.

### About Unix Standard Multi-key Support

If an ISO-Latin character is unavailable on the standard keyboard, you can insert the character by pressing the special `Compose` key followed by a sequence of two other keys. See the table below for the keys used to insert various ISO-Latin characters. Note that in Amaya, you can switch the position of the first key and the second one.

If your keyboard doesn't contain the `Compose` key, you can attach it to an existing key such as `Alt-Gr` with the following `xmodmap` command:

`keycode 113 = Multi_key`

You can place this command in the `$HOME/.Xmodmap` file (in Unix), and Amaya will apply it when you will launch your X server.

Nom | Code | Première/Seconde touche | Seconde/Première Touche | Sortie
AElig | 198 | <Shift> A | <Shift> E | Æ
Aacute | 193 | <Shift> A | accent aigu | Á
Acirc | 194 | <Shift> A | accent circonflexe | Â
Agrave | 192 | <Shift> A | accent grave | À
Aring | 197 | <Shift> A | étoile | Å
Atilde | 195 | <Shift> A | tilde | Ã
Auml | 196 | <Shift> A | tréma | Ä
Ccedil | 199 | <Shift> C | cédille | Ç
Eth | 222 | - | D | Ð
Eacute | 201 | <Shift> E | accent aigu | É
Ecirc | 202 | <Shift> E | accent circonflexe | Ê
Egrave | 200 | <Shift> E | accent grave | È
Euml | 203 | <Shift> E | tréma | Ë
Iacute | 205 | <Shift> I | accent aigu | Í
Icirc | 206 | <Shift> I | accent circonflexe | Î
Igrave | 204 | <Shift> I | accent grave | Ì
Iuml | 207 | <Shift> I | tréma | Ï
Ntilde | 209 | <Shift> N | tilde | Ñ
Oacute | 211 | <Shift> O | accent aigu | Ó
Ocirc | 212 | <Shift> O | accent circonflexe | Ô
Ograve | 210 | <Shift> O | accent grave | Ò
Oslash | 216 | <Shift> O | slash | Ø
Otilde | 213 | <Shift> O | tilde | Õ
Ouml | 214 | <Shift> O | tréma | Ö
Thorn | 222 | <Shift> T | <Shift> H | Þ
Uacute | 205 | <Shift> U | accent aigu | Ú
Ucirc | 206 | <Shift> U | accent circonflexe | Û
Ugrave | 204 | <Shift> U | accent grave | Ù
Uuml | 207 | <Shift> U | tréma | Ü
Yacute | 221 | <Shift> Y | accent aigu | Ý
aelig | 230 | a | e | æ
aacute | 225 | a | accent aigu | á
acirc | 226 | a | accent circonflexe | â
agrave | 224 | a | accent grave | à
aring | 229 | a | étoile | å
atilde | 227 | a | tilde | ã2
auml | 228 | a | tréma | ä
brvbar | 166 | bar (pipe) | bar | ¦
ccedil | 231 | c | cédille | ç
cent | 162 | c | slash | ¢
copy | 169 | c | o | ©
current | 164 | x | o | ¤
deg | 176 | accent circonflexe | 0 (zéro) | °
eacute | 233 | e | accent aigu | é
ecirc | 234 | e | accent circonflexe | ê
egrave | 232 | e | accent grave | è
euml | 235 | e | tréma | ë
eth | 240 | - | d | ð
frac12 | 189 | / | 2 | ½
frac14 | 188 | / | 4 | ¼
frac34 | 190 | / | 3 | ¾
hyphen | 173 | - (moins) | - |
iacute | 237 | i | accent aigu | í
icirc | 238 | i | accent circonflexe | î
igrave | 236 | i | accent grave | ì
iexcl | 161 | ! (exclam) | ! | ¡
iquest | 191 | ? (question) | ? | ¿
laquo | 171 | < (inférieur) | < | «
macr | 175 | - (moins) | accent circonflexe | ¯
micro | 181 | / | u | µ
middot | 183 | . | accent circonflexe | ·
nbsp | 160 | <Ctrl> space | (aucun) |
not | 172 | - (moins) | cédille | ¬
ntilde | 241 | n | tilde | ñ
oacute | 243 | o | accent aigu | ó
ocirc | 244 | o | accent circonflexe | ô
ograve | 242 | o | accent grave | ò
oslash | 248 | o | slash | ø
otilde | 245 | o | tilde | õ
ouml | 246 | o | tréma | ö
ordf | 170 | a | _ (underscore) | ª
ordm | 186 | o | _ (underscore) | º
para | 182 | <Shift> P | ! (exclam) | ¶
plusmn | 177 | + | - (moins) | ±
pound | 163 | l | - (moins) | £
raquo | 187 | > (supérieur) | > | »
reg | 174 | <Shift> R | <Shift> O | ®
sec | 167 | s | ! (exclam) | §
sup1 | 185 | s | 1 | ¹
sup2 | 178 | s | 2 | ²
sup3 | 179 | s | 3 | ³
szlig | 223 | s | s | ß
thorn | 254 | t | h | þ
uacute | 250 | u | accent aigu | ú
ucirc | 251 | u | accent circonflexe | û
ugrave | 249 | u | accent grave | ù
uuml | 252 | u | tréma | ü
yacute | 253 | y | accent aigu | ý
yen | 165 | y | - (moins) | ¥
yuml | 255 | y | tréma | ÿ

### About White Space Handling

Amaya removes insignificant white-space characters when it loads a document unless they must be explicitly preserved. This is true for XHTML, MathML, and SVG documents, as well as MathML or SVG elements included in a HTML document,

The following are considered as insignificant white-space characters:

- End of line characters (`#xD` and `#xA`)
- Tab characters (`#X9`)
- Leading spaces of an element
- Trailing spaces of an element
- Contiguous spaces (one space is preserved)

To preserve all the characters for some elements, use the `xml:space` attribute or the `PRE` element (only valid for XHTML documents). The possible values for the `xml:space` attribute are `default` and `preserve`.

- The value `default` means that an applications' default white-space treatment is acceptable for these elements. In Amaya, the default treatment removes the insignificant white-space characters for all supported DTDs (see above).

- The value `preserve` indicates that applications will preserve all the characters, except the first one that immediately follows the end tag of the element where it is specified, if that element is an end of line.

You apply the `xml:space` attribute to all elements within the content of the element where it is specified, unless it is overriden with another instance of the `xml:space` attribute.

In an XHTML DTD, the `PRE` element causes the same behavior as the `xml:space` attribute with the value `preserve`.

Amaya applies white space handling when it loads a document, not during editing. A consequence is that if you type insignificant white-space characters, they will be visible and saved but will be removed the next time the document is loaded. For example, the following source code:

`<p>Amaya removes the <strong> insignificant white-space </strong>when it loads ...</p>`

displays as follows during editing:

`Amaya removes the insignificant white-space when it loads...`

The text will be saved with that syntax. However, the next time the document is loaded, the text will display as:

`Amaya removes theinsignificant white-spacewhen it loads...`

because the leading and trailing spaces of the element `<strong>` are considered to be insignificant and are removed.

The correct source code would be:

`<p>Amaya removes the <strong>insignificant white-space</strong> when it loads ...</p>`