Encender luz de teclado retroiluminados con Scroll Lock

Solapas principales

Algunos teclado retroiluminados para activar la retroiluminación se necesita presionar la la tecla Scroll Lock, la cual está desactivada por defectos en las distro GNU/Linux.

Hay tres formas de activar la tecla Scroll Lock:

TTY

 Para eso de utiliza el comando setleds:

setleds -D +scroll

Si se quiere automatizar que se encienda la luz al inicio, se tiene que crear el archivo /etc/rc.local con el siguiente código:

#!/bin/sh
for tty in /dev/tty[2-6]
  do
  /usr/bin/setleds -D +scroll < $tty
done
exit 0

Entornos gráficos
· Configurando X11

Sugiero que hagan una copia de la versión original del archivo a editar y, si no está muy cancheros, NO utilicen este método.

En el directorio /usr/share/X11/xkb/symbols existe un archivo por cada distribución de teclado, en el archivo que pertenece a nuestra distribución configurada, añadimos la linea modifier_map Mod3   { Scroll_Lock }; debajo de name[Group1]= "Nombre de la distribución";.
 

· Comando xset

Con el comando xset en cualquier emulador de terminal para activar se teclea:

$ xset led 3

Si se desea, pueden seguir estos pasos.

Primero probamos la opción -q en xset:

$ xset -q
Keyboard Control:
  auto repeat:  on    key click percent:  0    LED mask:  00000006
  XKB indicators:
    00: Caps Lock:   off    01: Num Lock:    on     02: Scroll Lock: on 
    03: Compose:     off    04: Kana:        off    05: Sleep:       off
    06: Suspend:     off    07: Mute:        off    08: Misc:        off
    09: Mail:        off    10: Charging:    off    11: Shift Lock:  off
    12: Group 2:     off    13: Mouse Keys:  off
  auto repeat delay:  400    repeat rate:  30
  auto repeating keys:  00ffffffdffffbbf
                        fadfffefffedffff
                        9fffffffffffffff
                        fff7ffffffffffff
  bell percent:  50    bell pitch:  400    bell duration:  100
Pointer Control:
  acceleration:  2/1    threshold:  4
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  600
Colors:
  default colormap:  0x20    BlackPixel:  0x0    WhitePixel:  0xffffff
Font Path:
  /usr/share/fonts/X11/misc,/usr/share/fonts/X11/Type1,built-ins
DPMS (Energy Star):
  Standby: 0    Suspend: 0    Off: 0
  DPMS is Enabled
  Monitor is On

Nos fijamos que hay una linea que dice:

   00: Caps Lock:   off    01: Num Lock:    on     02: Scroll Lock: on

¿Y si apagamos la led del teclado con xset led off?

$ xset led off
$ xset -q
Keyboard Control:
  auto repeat:  on    key click percent:  0    LED mask:  00000006
  XKB indicators:
    00: Caps Lock:   off    01: Num Lock:    on     02: Scroll Lock: off
    03: Compose:     off    04: Kana:        off    05: Sleep:       off
    06: Suspend:     off    07: Mute:        off    08: Misc:        off
    09: Mail:        off    10: Charging:    off    11: Shift Lock:  off
    12: Group 2:     off    13: Mouse Keys:  off
  auto repeat delay:  400    repeat rate:  30
  auto repeating keys:  00ffffffdffffbbf
                        fadfffefffedffff
                        9fffffffffffffff
                        fff7ffffffffffff
  bell percent:  50    bell pitch:  400    bell duration:  100
Pointer Control:
  acceleration:  2/1    threshold:  4
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  600
Colors:
  default colormap:  0x20    BlackPixel:  0x0    WhitePixel:  0xffffff
Font Path:
  /usr/share/fonts/X11/misc,/usr/share/fonts/X11/Type1,built-ins
DPMS (Energy Star):
  Standby: 0    Suspend: 0    Off: 0
  DPMS is Enabled
  Monitor is On

Entonces para que nos dé el estado de la led se podría hacer:

$ xset -q | awk '{if ($10=="Scroll") {print $NF}}'

O sea, que se podría hacer el siguiente script:

#!/bin/bash
[ `xset -q | awk '{if ($10=="Scroll") {print $NF}}'` == 'on' ] && xset led off || xset led 3

Luego a este script lo añadimos a un atajo en nuestra gráfica.