Sobre Superkb

Esta página está dividida en varias secciones. Por favor use el menú de la derecha para navegar sobre ella.

¿Qué?

Superkb es un lanzador gráfico de programas para Linux. Funciona activándose al presionar una supertecla, normalmente Super_L o Super_R (mejor conocida como "la tecla de Windows"). Al activarse, presenta en pantalla un teclado con las teclas y sus correspondientes acciones.

Pautas

Superkb debería:

Haremos lo mejor posible.

¿Por qué?

Es lo mismo que Windows. —Mi amigo, decepcionado.

Se ve igual que Windows. —Mi hermana, decepcionada.

¡Linux es muy difícil! —Usuario al que se le muestra un Linux que no se parece a Windows.

Bien. ¿qué hago ahora? —Usuario primerizo (Win ó Lin) contemplando el escritorio vacío.

¡Argh, ¿por qué no puedo abrir la calculadora más rápido?! —Yo.

¿Dónde hay una calculadora cuando la necesitas? —Un usuario justo frente a su PC.

No sabía que podía hacer eso... —Un novato.

¡¿Por qué no usar una maldita tecla para cargar la calculadora?! —Yo.

Mi teclado multimedia no trabaja en Linux. —Caso hipotético.

¿Cómo?

El objetivo es repintar la tecla de la banderita con letras más grandes que digan "MENÚ" o algo similar. Por razones técnicas, me referiré a esa tecla como Super. Cada que presione cualquiera de las teclas Super, aparecerá un teclado en pantalla diciéndome qué teclas están enlazadas a qué, con sus respectivos iconos.

Esto es a lo que me refiero: supongamos que estoy trabajando en algún programa y quiero rápidamente lanzar la calculadora. Primero, presiono (y mantengo) la tecla Super. Un teclado como el siguiente aparecerá en la pantalla:

Teclado muestra

En este momento me doy cuenta de que la calculadora está en la "C", así que la presiono. Después de hacer esto varias veces, se debe convertir en un movimiento automático, incluso sin necesidad de que el teclado aparezca: sólo presionar Super+C en una reacción automática a mi deseo de correr la calculadora. (¡Intenta es con el mouse!)

La imagen es sólo un bosquejo.

Claro que habría algunos enlaces predefinidos. Por ejemplo:

De acuerdo con el ejemplo, cuando el usuario presione la tecla Shift, —claro, mientras presiona la tecla Super —, superkb mostrará las acciones para Insert, Delete y End y otras teclas enlazadas a Shift y escondería aquellas que están solo enlazadas con presión natural.

Detalles

Así es como el programa deberá trabajar:

  1. Superkb carga —ya sea solo o como parte de un manejador de ventanas—.
  2. El usuario presiona y mantiene la tecla Super.
  3. Un teclado como el mostrado arriba aparece en la pantalla. Ese teclado deberá hacer notar al usuario que las teclas W, C y N hacen algo. También que las flechas y las teclas de edición hacen algo.
  4. El usuario podría hacer una de lo siguientes cosas:
    1. El usuario presiona y suelta, digamos, la W. La acción apropiada (cargar Writer) deberá iniciarse. El teclado no deberá desaparecer de la pantalla.
    2. El usuario presiona (y mantiene) una tecla ya enlazada o enlazable, como la W, N, C u otra del alfabeto, pero no Pausa, por ejemplo. Si el usuario mantiene la tecla presionada durante 3 segundos, el teclado debe desaparecer y la ventana de "Configuración de Tecla" debe aparecer. Si el usuario suelta la tecla antes de lso 3 segundos, en realidad es el punto 4.1.
    3. Un usuario podría usar el ratón para mover o descansar el puntero sobre una tecla:
      1. Si pasa el puntero sobre una tecla enlazada, deberá aparecer información adicional —como hacer el icono más grande—.
      2. Si el usuario hace clic sobre una tecla enlazada, la acción deberá llevarse a cabo.
      3. Si el usuario presiona y mantiene un botón sobre una tecla deberá ser configurada según el punto 4.2.
  5. Después de que el usuario haya cargado todos los programas que desea soltará la tecla y el teclado desaparecerá. Los programas deberían en este momento estar cargándose ya.

Se necesita

  1. Retroalimentación sobre la compilación de Superkb. La idea es que funcione sin necesidad de ./configure tanto como se pueda.
  2. Una rutina para determinar el lugar óptimo para poner el icono en teclas poligonales (como los teclados multimedia y ENTER en forma de L.
  3. Portar la librería cargaiconos (puticon_gdk_pixbuf_xlib.c) a Qt.
  4. Código para rotar fuentes (realmente no se puede con Xlib?)
  5. Muchas otras cosas.

Who?

Mi nombre es Octavio Alvarez. Mi dirección de correo electrónico es alvarezp@alvarezp.ods.org. También estoy (a veces) en irc.freenode.net en #superkb como alvarezp u octal.

License and Legal Stuff

Todo el software relacionado con este proyecto, incluidos los prototipos y bosquejos están distribuidos bajo los términos de la Licencia Pública General, versión 2. Todos el arte está bajo los términos de Creative Commons Attribution-ShareAlike 2.5 License.

El teclado es una versión modificada del que puso Christoph Eckert en el dominio público.

Aquí hay un enlace a la página del proyecto Superkb en Sourceforge.net.

SourceForge.net LogoTambién, según lo piden las políticas de SourceForge, aquí está el logo de SourceForge.net, el gran anfitrión de proyectos open source, que de este modo ayuda mucho al proyecto Superkb.