Configuración de un teclado externo para el diseño de Colemak

He encontrado aplicaciones de teclado en pantalla que proporcionan el diseño de Colemak para el teclado virtual. Sin embargo, necesito el diseño cuando escribo al tacto en un teclado físico.

En mi caso, estoy usando un teclado USB normal conectado a una tableta Iconia A500. El mapa de teclas debe poder personalizarse libremente modificando los archivos del sistema, pero preferiría hacerlo sin rootear.

¿Cómo puedo reasignar las teclas de un teclado físico al diseño de Colemak?

Respuestas (5)

Parece que la aplicación External Keyboard Helper me permite cambiar los diseños de un teclado USB externo en mi Nexus 7, sin necesidad de acceso a la raíz.

¡Gracias por mencionar esta aplicación! Actualmente uso un teclado inalámbrico de Apple en mi dispositivo Android. Y esa aplicación External Keyboard Helper me permite reasignar la esquina superior derecha inútil Eject CDa Del. Sugerencias: al intentar configurar esto, la tecla Supr se puede elegir con un nombre de tecla "Eliminar adelante".

Tengo un problema similar al intentar que mi teclado físico funcione con Dvorak. Encontré los siguientes enlaces:

http://www.mjvanderwielen.com/?p=1321
http://jahrome.free.fr/index.php/keyboard-mapping-android-htc-desire?lang=en

Básicamente, describen cómo crear su propio archivo de asignación de teclado. Necesitaría acceso de root para hacer esto. Sin embargo, no he probado esto yo mismo (todavía).

Según el primer enlace relacionado con Android en la página principal de http://colemak.com/ , la aplicación AnySoftKeyboard ( enlace de mercado ) es su principal recomendación para teléfonos Android. Uno de los puntos en la lista de características en su página de inicio es:

El teclado físico también es compatible.

¿Parece que eso podría hacer el trabajo por ti?

Esto no parece funcionar. Mi teclado USB externo todavía tiene el diseño QWERTY de EE. UU. cuando uso Colemak AnySoftKeyboard.
Puedo confirmar que ASK no funciona para teclados físicos. Tienen un problema abierto en su rastreador de errores: code.google.com/p/softkeyboard/issues/detail?id=181

Aparentemente, Android 4.1 tiene soporte incorporado para cambiar el diseño de los teclados USB y Bluetooth, y permite a los usuarios instalar diseños personalizados sin root.

No sirve de mucho para dispositivos sin Jellybean, pero es bueno saber que los dispositivos actualizados ya no tienen este problema.

https://code.google.com/p/android/issues/detail?id=17119

Como solución parcial...

He tenido cierto éxito con extkeyboardremapper ( también conocido como laurent2o1o Keyboard ). Cambié Qcon éxito Asiguiendo las instrucciones traducidas al francés .

No he llegado tan lejos como para crear un diseño completo, pero me pregunto si podría simplemente copiar los diseños desde algún lugar de Ubuntu.

Editar: en Ubuntu y probablemente en la mayoría de los otros sistemas Linux, estos archivos se encuentran en:

/usr/share/X11/xkb/symbols/

Para usuarios que no son de Linux, aquí está el repositorio web de la fuente:

http://cgit.freedesktop.org/xkeyboard-config/tree/symbols?h=2.2-branch

Los archivos no son directamente compatibles con extkeyboardremapper, pero pueden servir como guía para crear el k2g.cfgarchivo. Colemak y Dvorak se pueden encontrar en el archivo, parece que usotros archivos simplemente modifican la versión estadounidense.gb

Editar: usando los archivos de diseño de teclado X11 como guía, hice una k2g.cfgpara Colemak, para completar mi solución.

He aquí cómo usarlo:

mkdir /sdcard/keyremap

Haz este archivo:

/sdcard/keyremap/s2k.cfg

86 => 773

Esto se debe a que Android no parece tener un código clave para <LSGT>, así que llamémoslo 773por ahora.

Haz este archivo:

/sdcard/keyremap/k2g.cfg

==== USA - Colemak ====

0 68 ` ~ 0303 ~
0 8 1 ! ¡ ¹
0 9 2 @ º ²
0 10 3 # ª ³
0 11 4 $ ¢ £
0 12 5 % € ¥
0 13 6 ^ ħ Ħ
0 14 7 & ð Ð
0 15 8 * þ Þ
0 16 9 ( ‘ “
0 17 0 ) ’ ”
0 69 - _ – —
0 70 = + × ÷

0 45 q Q ä Ä
0 51 w W å Å
33 f F ã Ã
46 p P ø Ø
48 g G 0328 ~
53 j J đ Đ
49 l L ł Ł
37 u U ú Ú
43 y Y ü Ü
44 ; : ö Ö
0 71 [ { « ‹
0 72 ] } » ›
0 73 \ | ~ ~

0 29 a A á Á
47 r R 0300 ~
32 s S ß ~
34 t T 0301 030B
35 d D 0308 ~
0 36 h H 030C ~
38 n N ñ Ñ
39 e E é É
40 i I í Í
74 o O ó Ó
0 75 ' " õ Õ

0 54 z Z æ Æ
0 52 x X 0302 ~
0 31 c C ç Ç
0 50 v V œ Œ
0 30 b B 0306 ~
42 k K 030A ~
0 41 m M 0304 ~
0 55 , < 0327 ~
0 56 . > 0307 ~
0 76 / ? ¿ ~

0 773 - _ – —
0 62 0020 0020 0020 00A0


==== United Kingdom - Colemak (extension) ====

9 2 " ² ⅛
10 3 £ ³ £
11 4 $ € ¼

75 ' @ 0302 030C
68 ` ¬ | |

73 # ~ 0300 0306
773 \ | | ¦

Los antepuestos 0comentan efectivamente la línea. He comentado todas las líneas excepto las necesarias debido a este error , pero si el error se soluciona, o si usa los AltGrcaracteres más que Ctrlatajos, simplemente elimínelos.

Los usuarios de EE. UU. pueden cortar la extensión del Reino Unido al final, otros tendrán que reemplazarla por la suya.

Si realmente desea duplicar su Backspaceclave, debe agregar esta línea a s2k.cfg:

58 => 67

... pero puede encontrar que la función de retroceso simplemente se agrega a la CapsLocktecla.

¡ Ahora simplemente instale extkeyboardremapper , actívelo y selecciónelo!

Acabo de descubrir un error que indica que CapsLock no funciona para las teclas asignadas .
Tengo el mismo problema con el Asistente de teclado externo: simplemente no puedo hacer que Mayús bloquee otro control. Aunque puedo elegirlo en el diseño personalizado, simplemente no parece aplicarse.