¿Cómo asociar una aplicación con una tecla?


Los usuarios de Windows tienen la posibilidad de ejecutar una aplicación directamente desde el teclado, particularmente con teclas específicas. Bajo Linux, resulta bastante fácil hacer lo mismo. Pero mejor aún: ¡puede elegir usted mismo la aplicación y la tecla asociada!

Para eso, puede usar un programita en modo texto llamado xbindkeys. Nótese que existe un equivalente gráfico: xbindkeys_config. Pero como la interfaz es en inglés, es más sencillo para un no anglófono utilizar el programa en modo texto.

  1. ¿Dónde encontrarlo?


    Lo encontrará:

                          # xbindkeys aquí:

    http://hocwp.free.fr/xbindkeys/xbindkeys.fr.html
    http://astuce.linux.free.fr/Telechargement/

                          # xbindkeys_config aquí:

    http://www.netchampagne.com/xbindkeys_config/ (pero el servidor está en obras)
    http://astuce.linux.free.fr/Telechargement/
  2. ¿Cómo funciona?


          El programa xbindkeys lee un fichero que está en su directorio personal (por ejemplo el de pepe). Se trata de:

          home/toto/.xbindkeysrc

          Lo puede visualizar con el orden xbindkeys_show

          Ejemplo de línea del fichero:

    "xterm &"
    control+shift + q

    La primera línea indica la aplicación que se va a ejecutar. Aquí, es xterm. Nótese el & y las "


          La segunda línea indica la tecla o las combinaciones de teclas que habrá
    que utilizar para ejecutar la aplicación. Aquí, es Control + May +q (¡pruébela!)


          Otro ejemplo

          "xterm &"

          c:41 + m:0x4

          Sólo cambia la segunda línea: las teclas del teclado se designan con sus
    códigos. Aquí, es control + f


          Último ejemplo:

          "xterm &"

          control + b:2

          Aquí, b:2 corpresponde al  botón central del ratón.
    1. ¿Cómo hacer para asociar teclas y aplicaciones?

      Por ejemplo se desea ejecutar kmail con la tecla home de su teclado compatible Windows IE (en mi teclado de marca Microsoft, es una tecla con un icono en forma de casa)

            ¡Muy sencillo! Basta con editar el fichero home/pepe/.xbindkeysrc agregando al final estas líneas:

            "kmail &"

            m:0x10 + c:236

      ¿Cómo hicé para saber que para esta tecla había que poner m:0x10 + c:236 ? Muy sencillo. Ejecuto la orden xbindkeys -k (la opción -k para key)
      Me invita después a presionar una tecla un mensaje en una ventana "Xbindkey:
      Hit a key" y otro en la ventana de terminal "Press a key You can use one of the two lines after "NoCommand"

      in $HOME/.xbindkeysrc to bind a key."

      Una vez presionada esta tecla, tengo eso en la ventana de terminal:

      "NoCommand"

      m:0x10 + c:236

      Mod2 + NoSymbol

      Así que me basta con copiar y pegar la segunda línea y salvar las modificaciones.

      Por motivos de claridad, más vale añadir un comentario que explique el orden en que se va a ejecutar (y por qué no el nombre de la tecla). Este comentario empieza por el signo # que sirve para indicar al programa que no debe tener en cuenta la dicha línea. Para kmail, tendremos:

      #Para ejecutar kmail

      "kmail &"

      m:0x10 + c:236

            Ejecute el programa xbindkeys y presione la tecla para comprobarlo. Debe funcionar.

      • ¿Y si quiero asociar una aplicación con una combinación de teclas?

            Igual, pero utilizará xbindkeys -mk (como multi keys)

      • Tengo un problemilla. Funcionaba. Y después de arrancar el ordenador o sencillamente de desconectarme, ¡ya no volvió a funcionar más!

            Normal, el programa xbindkeys debe estar corriendo. Teclee xbindkeys dentro de una ventana de terminal y todo irá bien. Luego, tendrá que poner esta orden en el fichero de arranque de su administrador de ventanas para que la ejecución sea automática. Bajo KDE, el más sencillo es hacer un copiar y pegar
      (enlazar) de /home/pepe/.xbindkeys hacia /home/toto/.kde/Autostart

      • ¡Otro problema! Funcionaba. Modifico el fichero ~/.xbindkeysrc para agregar una tecla y una aplicación. Bueno, lo que funcionaba antes funciona igual, pero mi nueva aplicación todavía no funciona.

            Hay que parar xbindkeys con killall xbindkeys, luego volver a ejecutarlo con xbindkeys y debería funcionar.

      • Hay todavía algo que no funciona. Lo siento... He ejecutado xbindkeys -k o xbindkeys -mk . Pero cuando presiono la tecla que me interesa, no obtengo ninguna respuesta.

            Debe de ser porque esta tecla o esta combinación de teclas ya la utiliza el administrador de ventanas, una aplicación o el mismo xbindkeys.
      Normalmente, ha debido de ejecutarse un programa. Tiene que elegir otra tecla (o si no cambiar de administrador de ventanas o modificar su configuración).
      • Un ejemplo interesante: la captura de pantalla

            Bajo Windows, se puede hacer una captura de pantalla fácilmente presionando la tecla "Impr Pant" (que hace un copiar de la pantalla), luego haciendo un pegar en el programa de su elección.

            Se puede hacer con Linux tan o más fácilmente que con Windows utilizando el orden "import". En mi .xbindkeysrc, he agregado las líneas siguientes:

            #Para hacer una captura de pantalla que seleccionar  con el ratón (con la teclas Maj y Impr Pant)

            "import ~/capturas_de_pantalla/captura1.jpg &"

            m:0x11 + c:111

            #Para hacer una captura de toda la pantalla con la tecla Impr Pant

            "import -window root ~/capturas_de_pantalla/captura1.jpg&"

            m:0x10 + c:111

            En el primer caso, presionando las teclas Maj y Impr Pant, el puntero del ratón cambia de forma y basta con seleccionar la zona que se desea capturar. Así pues, la captura de pantalla se crea en el fichero captura1.jpg que se guarda en la carpeta /home/pepe/capturas_de_pantalla (No olvide crear esta carpeta)

            En el segundo caso, presionando la tecla Impr Pant, toda la pantalla se captura en el mismo fichero. Es muy práctico.
Este artículo está distribuido bajo la licencia LGPL. Lo puede copiar, traducir (excepto al francés que es el idioma original) y difundirlo como quiera con la condición de no modificarlo y de dejar intacta la presente nota.
 

Fue escrito y traducido con la ayuda de varios miembros de la comunidad del sofware libre (Licor) que agredezco de paso.

 ¿Errores, sugerencias? Escríbame. Ver mi dirección aquí http://astuce.linux.free.fr/Espagnol/index.html
 
Actualizado el 16 de noviembre de 2004