La traducción de esta página no está completa aún. Hasta que esté, las partes sin terminar vienen en su inglés original.

keymap-icon_64.pngKeymap

Deskbar:Preferencias
Ubicación:/boot/system/preferences/Keymap
Configuración:~/config/settings/Keymap/* - Ubicación de las combinaciones de teclado modificadas por el usuario.
~/config/settings/Key_map


keymap.png

A la derecha, la ventana Distribución de teclado muestra una representación del teclado. Cuando se presiona una tecla, la correspondiente tecla se oscurece y el símbolo asignado se ingresa dentro del campo de texto Sample and Clipboard (Ejemplo y portapapeles) hasta abajo. Desde allí también se puede copiar y pegar dentro de un documento.
Así, las preferencias de distribución de teclado no sólo están para configurar su teclado local, sino también es útil cuando se busca un símbolo especial usado en otros idiomas. Por ejemplo, puede intercambiarse el teclado a "French" (francés), encontrar la "ç" y copiarla al correo para François. (Aunque se puede encontrar la "cedil" también en otras distribuciones de teclado...)

Al presionar las teclas modificadoras como Mayúsculas, Control u Option se cambia el teclado desplegado en conformidad.

Luego están las teclas que se marcan con un fondo azul. Se llaman Dead Keys (Teclas muertas) que pueden cambiar la tecla que se presiona después de ellas. Si se hace clic en tal tecla azul con el ratón, aquellas teclas modificables se iluminan en amarillo. Haga clic de nuevo y todo regresará a la normalidad. Algunos ejemplos son é, ñ, ó o ë.

Debajo de la representación del teclado hay dos opciones más:

Select Dead Keys (Seleccionar teclas muertas) para seleccionar las teclas azules arriba mencionadas.
Switch Shortcut Key... (Cambiar tecla de atajos) para usar la tecla de atajos en modo Windows/Linux, p. ej., Control (normalmente Ctrl) o el modo de Haiku, p. ej., Command (normalmente ALT).

The lists on the left offer the available pre-configured keymaps of the system, and below that, if available, user-defined maps. You can change a keymap in the keyboard representation: drag&drop one key on another and they switch places.

Alternatively to this drag&dropping of keys, there's the menu File | Set modifier keys... that opens this window:

keymap-modifiers.png

Here, you can assign keys to their respective roles or even completely disable the role of a key. You can even assign the same key to different roles, though that's not a good idea most of the time and you'll be warned by a small exclamation mark beside the pop-up menus if you do that.
Pressing Set modifier keys applies your changes and closes the window.

When you're done you can save the result from the menu File | Save.... Your modified map will only appear in the user-defined list if it's stored in ~/config/settings/Keymap/. Otherwise you'll have to manually load it via File | Open....

Para equiparar mejor el panel Distribución de teclado a su teclado físico, hay algunas configuraciones diferentes disponibles desde el menú Layout (Disposición).

El tipo de letra utilizado en la representación del teclado se selecciona desde el menú Font (Tipografía). Note que puede o no contener todos los símbolos para una Distribución de teclado específica.

Finalmente, hay un botón Revert (Revertir) para regresar las configuraciones que estaban activas cuando se inició el panel preferencias de Distribución de teclado.

index Manipulación avanzada de distribución de teclado

Hay otro método para personalizar su distribución de teclado además del panel de preferencias Distribución de teclado. Involucra editar un archivo de texto que contiene cargas de valores hexadecimales, lo cual puede parecer intimidante a primera vista, pero realmente no es tan imposible de entender.

Se puede tirar copia de la distribución de teclado actual con un comando en la Terminal:

keymap -d MyKeymap

The generated text file can then be opened in a text editor. Make sure to use a fixed font in that editor or you'll never grok that file...
At the beginning of that file, you'll find a legend of a stylized keyboard with the hex value corresponding to each key. Below that are the actual assignments of every value. You can do all the customizing that's also available from the Keymap preference panel, and then some. If you happen to have some special keys on your keyboard, you may be able to activate them. That is, use them as ordinary keys or like an option or control key. You won't be able to, for example, have your multimedia keys de/increase the volume or start some application. For this you can use the Shortcuts preferences.

Cuando termine, guardará el archivo y hará que el sistema cargue la distribución de teclado modificada con este comando:

keymap -s < MyKeymap

Si quisiera importar esta distribución dentro del panel Distribución de teclado, tiene que compilarla primero en un formato binario:

keymap -c < MyKeymap

Esto producirá un archivo keymap.out el cual se puede cargar mediante el menú Open... (Abrir). Por cierto, el comando keymap es capaz de cargar también este formato binario: keymap -l < keymap.out

Este es el archivo arrojado (las teclas en extrema derecha del teclado estilizado se cortan para un desplegado más agradable en esta página):

#!/bin/keymap -s
#
#	Raw key numbering for 101 keyboard...
#                                                                                    
#                                                                                    
# [esc]       [ f1] [ f2] [ f3] [ f4] [ f5] [ f6] [ f7] [ f8] [ f9] [f10] [f11] [f12]
#  0x01        0x02  0x03  0x04  0x05  0x06  0x07  0x08  0x09  0x0a  0x0b  0x0c  0x0d
#
# [ ` ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 0 ] [ - ] [ = ] [bck]
#  0x11  0x12  0x13  0x14  0x15  0x16  0x17  0x18  0x19  0x1a  0x1b  0x1c  0x1d  0x1e
#
# [tab] [ q ] [ w ] [ e ] [ r ] [ t ] [ y ] [ u ] [ i ] [ o ] [ p ] [ [ ] [ ] ] [ \ ]
#  0x26  0x27  0x28  0x29  0x2a  0x2b  0x2c  0x2d  0x2e  0x2f  0x30  0x31  0x32  0x33
#
# [cap] [ a ] [ s ] [ d ] [ f ] [ g ] [ h ] [ j ] [ k ] [ l ] [ ; ] [ ' ] [  enter  ]
#  0x3b  0x3c  0x3d  0x3e  0x3f  0x40  0x41  0x42  0x43  0x44  0x45  0x46     0x47   
#
# [shift]     [ z ] [ x ] [ c ] [ v ] [ b ] [ n ] [ m ] [ , ] [ . ] [ / ]     [shift]
#   0x4b       0x4c  0x4d  0x4e  0x4f  0x50  0x51  0x52  0x53  0x54  0x55       0x56 
#
# [ctr]             [cmd]             [  space  ]             [cmd]             [ctr]
#  0x5c              0x5d                 0x5e                 0x5f              0x60
#
#	NOTE: On a Microsoft Natural Keyboard:
#			left option  = 0x66
#			right option = 0x67
#			menu key     = 0x68
#	NOTE: On an Apple Extended Keyboard:
#			left option  = 0x66
#			right option = 0x67
#			keypad '='   = 0x6a
#			power key    = 0x6b
Version = 3
CapsLock = 0x3b
ScrollLock = 0x0f
NumLock = 0x22
LShift = 0x4b
RShift = 0x56
LCommand = 0x5d
RCommand = 0x60
LControl = 0x5c
RControl = 0x00
LOption = 0x66
ROption = 0x5f
Menu = 0x68
#
# Lock settings
# To set NumLock, do the following:
#   LockSettings = NumLock
#
# To set everything, do the following:
#   LockSettings = CapsLock NumLock ScrollLock
#
LockSettings = 
# Legend:
#   n = Normal
#   s = Shift
#   c = Control
#   C = CapsLock
#   o = Option
# Key      n        s        c        o        os       C        Cs       Co       Cos     
Key 0x00 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x01 = 0x1b     0x1b     0x1b     0x1b     0x1b     0x1b     0x1b     0x1b     0x1b     
Key 0x02 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x03 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x04 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x05 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x06 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x07 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x08 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x09 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x0a = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x0b = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x0c = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x0d = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x0e = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x0f = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x10 = 0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     0x10     
Key 0x11 = '^'      0xc2b0   ''       ' '      ''       '^'      0xc2b0   ' '      ''       
Key 0x12 = '1'      '!'      ''       ' '      ''       '!'      '1'      ' '      ''       
Key 0x13 = '2'      '"'      ''       0xc2b2   ''       '"'      '2'      0xc2b2   ''       
Key 0x14 = '3'      0xc2a7   ''       0xc2b3   ''       0xc2a7   '3'      0xc2b3   ''       
Key 0x15 = '4'      '$'      ''       ' '      ''       '$'      '4'      ' '      ''       
Key 0x16 = '5'      '%'      ''       ' '      ''       '%'      '5'      ' '      ''       
Key 0x17 = '6'      '&'      ''       ' '      ''       '&'      '6'      ' '      ''       
Key 0x18 = '7'      '/'      ''       '{'      ''       '/'      '7'      '{'      ''       
Key 0x19 = '8'      '('      ''       '['      ''       '('      '8'      '['      ''       
Key 0x1a = '9'      ')'      ''       ']'      ''       ')'      '9'      ']'      ''       
Key 0x1b = '0'      '='      ''       '}'      ''       '='      '0'      '}'      ''       
Key 0x1c = 0xc39f   '?'      ''       '\\'     ''       '?'      0xc39f   '\\'     ''       
Key 0x1d = 0xc2b4   '`'      ''       ' '      ''       0xc2b4   '`'      ' '      ''       
Key 0x1e = 0x08     0x08     0x08     0x08     0x08     0x08     0x08     0x08     0x08     
Key 0x1f = 0x05     0x05     0x05     0x05     0x05     0x05     0x05     0x05     0x05     
Key 0x20 = 0x01     0x01     0x01     0x01     0x01     0x01     0x01     0x01     0x01     
Key 0x21 = 0x0b     0x0b     0x0b     0x0b     0x0b     0x0b     0x0b     0x0b     0x0b     
Key 0x22 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x23 = '/'      '/'      '/'      '/'      '/'      '/'      '/'      '/'      '/'      
Key 0x24 = '*'      '*'      '*'      '*'      '*'      '*'      '*'      '*'      '*'      
Key 0x25 = '-'      '-'      '-'      '-'      '-'      '-'      '-'      '-'      '-'      
Key 0x26 = 0x09     0x09     0x09     0x09     0x09     0x09     0x09     0x09     0x09     
Key 0x27 = 'q'      'Q'      0x11     '@'      ''       'Q'      'q'      '@'      ''       
Key 0x28 = 'w'      'W'      0x17     ' '      ''       'W'      'w'      ' '      ''       
Key 0x29 = 'e'      'E'      0x05     0xe282ac ''       'E'      'e'      0xe282ac ''       
Key 0x2a = 'r'      'R'      0x12     ' '      ''       'R'      'r'      ' '      ''       
Key 0x2b = 't'      'T'      0x14     ' '      ''       'T'      't'      ' '      ''       
Key 0x2c = 'z'      'Z'      0x1a     ' '      ''       'Z'      'z'      ' '      ''       
Key 0x2d = 'u'      'U'      0x15     ' '      ''       'U'      'u'      ' '      ''       
Key 0x2e = 'i'      'I'      0x09     ' '      ''       'I'      'i'      ' '      ''       
Key 0x2f = 'o'      'O'      0x0f     ' '      ''       'O'      'o'      ' '      ''       
Key 0x30 = 'p'      'P'      0x10     ' '      ''       'P'      'p'      ' '      ''       
Key 0x31 = 0xc3bc   0xc39c   0x1b     ' '      ''       0xc39c   0xc3bc   ' '      ''       
Key 0x32 = '+'      '*'      0x1d     '~'      ''       '*'      '+'      '~'      ''       
Key 0x33 = '#'      '\''     0x1c     ' '      ''       '\''     '#'      ' '      ''       
Key 0x34 = 0x7f     0x7f     0x7f     0x7f     0x7f     0x7f     0x7f     0x7f     0x7f     
Key 0x35 = 0x04     0x04     0x04     0x04     0x04     0x04     0x04     0x04     0x04     
Key 0x36 = 0x0c     0x0c     0x0c     0x0c     0x0c     0x0c     0x0c     0x0c     0x0c     
Key 0x37 = 0x01     '7'      0x01     0x01     '7'      0x01     '7'      0x01     '7'      
Key 0x38 = 0x1e     '8'      0x1e     0x1e     '8'      0x1e     '8'      0x1e     '8'      
Key 0x39 = 0x0b     '9'      0x0b     0x0b     '9'      0x0b     '9'      0x0b     '9'      
Key 0x3a = '+'      '+'      '+'      '+'      '+'      '+'      '+'      '+'      '+'      
Key 0x3b = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x3c = 'a'      'A'      0x01     ' '      ''       'A'      'a'      ' '      ''       
Key 0x3d = 's'      'S'      0x13     ' '      ''       'S'      's'      ' '      ''       
Key 0x3e = 'd'      'D'      0x04     ' '      ''       'D'      'd'      ' '      ''       
Key 0x3f = 'f'      'F'      0x06     ' '      ''       'F'      'f'      ' '      ''       
Key 0x40 = 'g'      'G'      0x07     ' '      ''       'G'      'g'      ' '      ''       
Key 0x41 = 'h'      'H'      0x08     ' '      ''       'H'      'h'      ' '      ''       
Key 0x42 = 'j'      'J'      0x0a     ' '      ''       'J'      'j'      ' '      ''       
Key 0x43 = 'k'      'K'      0x0b     ' '      ''       'K'      'k'      ' '      ''       
Key 0x44 = 'l'      'L'      0x0c     ' '      ''       'L'      'l'      ' '      ''       
Key 0x45 = 0xc3b6   0xc396   ''       ' '      ''       0xc396   0xc3b6   ' '      ''       
Key 0x46 = 0xc3a4   0xc384   ''       ' '      ''       0xc384   0xc3a4   ' '      ''       
Key 0x47 = 0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     
Key 0x48 = 0x1c     '4'      0x1c     0x1c     '4'      0x1c     '4'      0x1c     '4'      
Key 0x49 = ''       '5'      ''       ''       '5'      ''       '5'      ''       '5'      
Key 0x4a = 0x1d     '6'      0x1d     0x1d     '6'      0x1d     '6'      0x1d     '6'      
Key 0x4b = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x4c = 'y'      'Y'      0x19     ' '      ''       'Y'      'y'      ' '      ''       
Key 0x4d = 'x'      'X'      0x18     ' '      ''       'X'      'x'      ' '      ''       
Key 0x4e = 'c'      'C'      0x03     ' '      ''       'C'      'c'      ' '      ''       
Key 0x4f = 'v'      'V'      0x16     ' '      ''       'V'      'v'      ' '      ''       
Key 0x50 = 'b'      'B'      0x02     ' '      ''       'B'      'b'      ' '      ''       
Key 0x51 = 'n'      'N'      0x0e     ' '      ''       'N'      'n'      ' '      ''       
Key 0x52 = 'm'      'M'      0x0d     0xc2b5   ''       'M'      'm'      0xc2b5   ''       
Key 0x53 = ','      ';'      ','      ' '      ''       ';'      ','      ' '      ''       
Key 0x54 = '.'      ':'      '.'      ' '      ''       ':'      '.'      ' '      ''       
Key 0x55 = '-'      '_'      ''       ' '      ''       '-'      '_'      ' '      ''       
Key 0x56 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x57 = 0x1e     0x1e     0x1e     0x1e     0x1e     0x1e     0x1e     0x1e     0x1e     
Key 0x58 = 0x04     '1'      0x04     0x04     '1'      0x04     '1'      0x04     '1'      
Key 0x59 = 0x1f     '2'      0x1f     0x1f     '2'      0x1f     '2'      0x1f     '2'      
Key 0x5a = 0x0c     '3'      0x0c     0x0c     '3'      0x0c     '3'      0x0c     '3'      
Key 0x5b = 0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     0x0a     
Key 0x5c = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x5d = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x5e = ' '      ' '      0x00     ' '      ' '      ' '      ' '      ' '      ' '      
Key 0x5f = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x60 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x61 = 0x1c     0x1c     0x1c     0x1c     0x1c     0x1c     0x1c     0x1c     0x1c     
Key 0x62 = 0x1f     0x1f     0x1f     0x1f     0x1f     0x1f     0x1f     0x1f     0x1f     
Key 0x63 = 0x1d     0x1d     0x1d     0x1d     0x1d     0x1d     0x1d     0x1d     0x1d     
Key 0x64 = 0x05     '0'      0x05     0x05     '0'      0x05     '0'      0x05     '0'      
Key 0x65 = 0x7f     ','      0x7f     0x7f     ','      0x7f     ','      0x7f     ','      
Key 0x66 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x67 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x68 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x69 = '<'      '>'      ''       '|'      ''       '<'      '>'      '|'      ''       
Key 0x6a = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x6b = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x6c = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x6d = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x6e = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x6f = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x70 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x71 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x72 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x73 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x74 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x75 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x76 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x77 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x78 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x79 = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x7a = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x7b = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x7c = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x7d = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x7e = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Key 0x7f = ''       ''       ''       ''       ''       ''       ''       ''       ''       
Acute ' '       = 0xc2b4   
Acute 'A'       = 0xc381   
Acute 'E'       = 0xc389   
Acute 'I'       = 0xc38d   
Acute 'O'       = 0xc393   
Acute 'U'       = 0xc39a   
Acute 'Y'       = 0xc39d   
Acute 'a'       = 0xc3a1   
Acute 'e'       = 0xc3a9   
Acute 'i'       = 0xc3ad   
Acute 'o'       = 0xc3b3   
Acute 'u'       = 0xc3ba   
Acute 'y'       = 0xc3bd   
Acute ''        = ''       
Acute ''        = ''       
Acute ''        = ''       
AcuteTab = Normal Shift Option Option-Shift CapsLock CapsLock-Shift CapsLock-Option CapsLock-Option-Shift 
Grave ' '       = '`'      
Grave 'A'       = 0xc380   
Grave 'E'       = 0xc388   
Grave 'I'       = 0xc38c   
Grave 'O'       = 0xc392   
Grave 'U'       = 0xc399   
Grave 'a'       = 0xc3a0   
Grave 'e'       = 0xc3a8   
Grave 'i'       = 0xc3ac   
Grave 'o'       = 0xc3b2   
Grave 'u'       = 0xc3b9   
Grave ''        = ''       
Grave ''        = ''       
Grave ''        = ''       
Grave ''        = ''       
Grave ''        = ''       
GraveTab = Normal Shift Option Option-Shift CapsLock CapsLock-Shift CapsLock-Option CapsLock-Option-Shift 
Circumflex ' '       = '^'      
Circumflex 'A'       = 0xc382   
Circumflex 'E'       = 0xc38a   
Circumflex 'I'       = 0xc38e   
Circumflex 'O'       = 0xc394   
Circumflex 'U'       = 0xc39b   
Circumflex 'a'       = 0xc3a2   
Circumflex 'e'       = 0xc3aa   
Circumflex 'i'       = 0xc3ae   
Circumflex 'o'       = 0xc3b4   
Circumflex 'u'       = 0xc3bb   
Circumflex ''        = ''       
Circumflex ''        = ''       
Circumflex ''        = ''       
Circumflex ''        = ''       
Circumflex ''        = ''       
CircumflexTab = Normal Shift Option Option-Shift CapsLock CapsLock-Shift CapsLock-Option CapsLock-Option-Shift 
Diaeresis ' '       = 0xc2a8   
Diaeresis 'A'       = 0xc384   
Diaeresis 'E'       = 0xc38b   
Diaeresis 'I'       = 0xc38f   
Diaeresis 'O'       = 0xc396   
Diaeresis 'U'       = 0xc39c   
Diaeresis 'Y'       = 0xc5b8   
Diaeresis 'a'       = 0xc3a4   
Diaeresis 'e'       = 0xc3ab   
Diaeresis 'i'       = 0xc3af   
Diaeresis 'o'       = 0xc3b6   
Diaeresis 'u'       = 0xc3bc   
Diaeresis 'y'       = 0xc3bf   
Diaeresis ''        = ''       
Diaeresis ''        = ''       
Diaeresis ''        = ''       
DiaeresisTab = Normal Shift Option Option-Shift CapsLock CapsLock-Shift CapsLock-Option CapsLock-Option-Shift 
Tilde ' '       = '~'      
Tilde 'A'       = 0xc383   
Tilde 'O'       = 0xc395   
Tilde 'N'       = 0xc391   
Tilde 'a'       = 0xc3a3   
Tilde 'o'       = 0xc3b5   
Tilde 'n'       = 0xc3b1   
Tilde ''        = ''       
Tilde ''        = ''       
Tilde ''        = ''       
Tilde ''        = ''       
Tilde ''        = ''       
Tilde ''        = ''       
Tilde ''        = ''       
Tilde ''        = ''       
Tilde ''        = ''       
TildeTab = Normal Shift Option Option-Shift CapsLock CapsLock-Shift CapsLock-Option CapsLock-Option-Shift