Raccourcis clavier

Amaya

## Définir des raccourcis clavier

Il est utile de pouvoir invoquer les commandes des menus directement depuis le clavier. Vous pouvez accomplir ceci par un fichier de raccourcis clavier (un fichier par plate-forme). Ces fichiers définissent une liste d'associations entre une séquence au clavier et la commande invoquée. Ils sont stockés dans le répertoire `Amaya/config` et sont différent pour chaque plate-forme : ``amaya.keyboard`` (Linux), `amaya.kb` (Windows) and `amaya.kb-mac` (Mac OS X).

- Liste des raccoucis clavier par défaut pour Linux
- Liste des raccoucis clavier par défaut pour Windows
- Liste des raccoucis clavier par défaut pour Mac OS X

Vous pouvez modifier ces fichiers pour définir vos propres raccourcis clavier. La syntaxe utilisée pour définir une association est :

`Directive = KeySeq ':' IdentCommand ;
KeysSeq = KeySet [ ',' KeySet ] ;
KeySet = [ Modifier ] [ 'Shift' ] Key ;
Key = '<Key>' KeyValue / '<Key>' SpecialKey ;
Modifier = 'Ctrl' / 'Alt' / 'Meta' ;
KeyValue = 'a' / 'b' / ... ;
SpecialKey = 'Escape' / 'Delete' / 'Space' / 'BackSpace' /
'Enter' / 'Up' / 'Down' / 'Left' / 'Right' /
'Home' / 'End' / 'F1' / ... / 'L1' / ... / 'R1' / ... ;
IdentCommand = 'TtcInsertChar(' Char ')' / NAME '()' ;
Char = KeyValue / OctalValue / Entity ;``
OctalValue = '\' NUMBER ;
Entity = DecEntity / HexaEntity ;
DecEntity = '&' '#' NUMBER ';' ;
HexaEntity = '&' '#' 'x' HEXADECIMAL ';' ;`.

La liste des commandes disponibles est (une liste à jour peut être trouvée dans les sources d'Amaya : `Amaya/amaya/EDITOR.A`) :

- Commandes de déplacement :
  - `TtcNextChar`, `TtcPreviousChar` : déplace caractère par caractère.
  - `TtcNextWord`, `TtcPreviousWord` : déplace mot par mot.
  - `TtcStartOfLine`, `TtcEndOfLine` : déplace au début ou à la fin de la ligne courante..
  - `TtcNextLine`, `TtcPreviousLine` : déplace ligne par ligne.
  - `TtcNextElement`, `TtcPreviousElement`, `TtcChildElement`, `TtcParentElement` : déplace élément par élément.
  - `TtcPageDown`, `TtcPageUp`, `TtcPageTop`, `TtcPageEnd` : fait défiler page par page.
  - `TtcLineUp`, `TtcLineDown` fait défiler une ligne en haut ou une ligne en bas.
- Commandes d'extension de la sélection :
  - `TtcNextSelChar`, `TtcPreviousSelChar` : sélectionne caractère par caractère.
  - `TtcNextSelWord`, `TtcPreviousSelWord` : sélectionne mot par mot.
  - `TtcSelStartOfLine`, `TtcSelEndOfLine` : sélectionne jusqu'au début ou à la fin de la ligne courante.
  - `TtcNextSelLine`, `TtcPreviousSelLine` : sélectionne ligne par ligne.
- Une commande qui permet de suivre un lien ou d'activer un élément de formulaire HTML (menu, bouton, etc.) :

  `DoAction`.

- Une commande qui permet de sauter au prochain (ou au premier s'il n'y a pas de sélection) lien ou élément de formulaire HTML :

  `NextLinkOrFormElement`.

- Une commande qui permet de sauter lien ou élément de formulaire HTML précédent :

  `PreviousLinkOrFormElement`.

- Dans le menu Fichier :

  `NewXHTML`, `NewMathML`, `NewSVG`, `NewCss`, `OpenDoc`, `Reload`, `GotoPreviousHTML`, `GotoNextHTML`, `GoToHome`, `SaveDocument`, `SaveDocumentAs`, `Synchronize`, `SetupAndPrint`, `PrintAs`, `CloseDocument`, `AmayaCloseTab`,`AmayaCloseWindow`, `AmayaClose`.

- Dans le menu Édition :

  `TtcUndo`, `TtcRedo`, `TtcCutSelection`, `TtcCopySelection`, `TtcPaste`, `TtcDeleteSelection`, `SetBrowserEditor`, `TtcSearchText`, `SpellCheck`, `TransformType`, `ConfigAmaya`.

- Dans le menu `Affichage` :

  `ShowPanel`, `FullScreen`, `ShowMapAreas`, `ShowTargets`, `ZoomIn`, `ZoomOut`, `ShowLogFile`, `ShowFormatted`, `ShowStructure`, `ShowAlternate`, `ShowLinks`, `ShowToC`, `ShowSource`, `SplitHorizontally`, `SplitVertically`.

- Dans le menu Insertion :
  - `CreateAddress` `CreateParagraph`, `CreateImage`, `CreateHorizontalRule`, `CreateBlockQuote`, `CreatePreformatted`, `CreateAddress`, `CreateDivision`, `CreateNOSCRIPT`, `CreateObject`, `CreateParameter`, `CreateIFrame`, `CreateBreak`,`MakeBook`, `CreateAreaRect`, `CreateAreaCircle`, `CreateAreaPoly`, `CreateForm`, `CreateFileInput`, `CreateImageInput`, `CreatePasswordInput`, `CreateHiddenInput`, `CreateLabel`, `CreateFieldset`, `CreateOptGroup`, `CreateToggle`, `CreateRadio`, `CreateOption`, `CreateTextInput`, `CreateTextArea`, `CreateSubmit`, `CreateReset`, `CreateHeading1`, `CreateHeading2`, `CreateHeading3`, `CreateHeading4`, `CreateHeading5`, `CreateHeading6``, CreateList`, `CreateNumberedList`, `CreateDefinitionList`, `CreateDefinitionTerm`, `CreateDefinitionDef`, `CreateObject`, `CreateParameter`
  - `CreateTable`, `CreateCaption`, `CreateTHead`, `CreateTBody`, `CreateTFoot`, `CreateRow`, `CreateDataCell`, `CreateHeadingCell`
  - `CreateBase`, `CreateMeta`, `CreateLinkInHead`, `CreateScript`, `CreateStyle`, `CreateComment.`
  - `SetOnOffEmphasis`, `SetOnOffStrong`, `SetOnOffCite`, `SetOnOffDefinition`, `SetOnOffCode`, `SetOnOffVariable`, `SetOnOffSample`, `SetOnOffKeyboard`, `SetOnOffAbbr`, `SetOnOffAcronym`, `SetOnOffINS`, `SetOnOffDEL`.
  - `SetOnOffItalic`, `SetOnOffBold`, `SetOnOffTeletype`, `SetOnOffBig`, `SetOnOffSmall`, `SetOnOffSub`, `SetOnOffSup`, `SetOnOffQuotation`, `SetOnOffBDO`.
  - `CreateInlineMath`, `CreateMath`, `CreateMROOT`, `CreateMSQRT`, `CreateMFRAC`, `CreateMSUBSUP`, `CreateMSUB`, `CreateMSUP`, `CreateMUNDEROVER`, `CreateMUNDER`, `CreateMOVER`, `CreateMROW`, `CreateMMULTISCRIPTS`, `CreateMTABLE`
- Dans le menu `Format` :

  `CreateClass`, `ApplyClass`, `LinkCSS`, `OpenCSS`, `DisableCSS`, `EnableCSS`, `RemoveCSS`, `DoLeftAlign`, `DoRightAlign`, `DoCenter`, `DoJustify`.

- Dans le menu `Liens` :

  `LinkToPreviousTarget`, `CreateOrChangeLink`, `CreateTarget`, `DeleteAnchor`, `MakeID`.

- Dans le menu Outils:

  ``ChangeTitle`,DeleteColumn`, `AnnotateSelection`, `AnnotateDocument`, `LoadAnnotations`, `PostAnnotation`, `DeleteAnnotation`, `FilterAnnot`, `ConfigAnnot`.

- Dans le menu `Aide` :

  `HelpAmaya`, `HelpAtW3C`, `HelpBrowsing`, `HelpSelecting`, `HelpSearching`, `HelpViews`, `HelpCreating`, `HelpLinks`, `HelpChanging`, `HelpTables`, `HelpMath`, `HelpSVG`, `HelpImageMaps`, `HelpStyleSheets`, `HelpAttributes`, `HelpPublishing`, `HelpPrinting`, `HelpNumbering`, `HelpMakeBook`, `HelpAnnotation`, `HelpConfigure`, `HelpShortCuts`, `HelpAccess`.