ivman->halevt->? мультимедийные кнопки
malic 13 марта, 2011 - 12:01
Раньше для настройки мультимедийных клавиш пользoвался ivman-ом - выпилили, перешел на halevt - начинают выпиливать (замаскировали). Плюсы использования halevt: независимость от того где находишься в консоли или в Х-ах. Может кто подскажет как теперь можно реализовать настройку клавиш, которая не зависит от графического окружения?
»
- Для комментирования войдите или зарегистрируйтесь

xbindkeys, например.
xbindkeys, например.
Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.
Да ... но он только для иксов
Да ... но он только для иксов ...
Деревья умирают стоя.
actkbd Сам использую
actkbd
Сам использую следующий init.d к нему
#!/sbin/runscript # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ opts="${opts} reload" description="Per-device actkbd service for system-wide hotkeys" actkbd=/usr/bin/actkbd device="${RC_SVCNAME##*.}" pidfile=/var/run/actkbd.${device} rc_config=/etc/conf.d/actkbd source ${rc_config} [[ -r "${rc_config}.${device}" ]] && source ${rc_config}.${device} depend() { need dev localmount use localmount } get_val() { local var=$1 eval echo \${${device}_${var}:-\${actkbd_${var}:-$2}} } start() { if [[ "${device}" == "${RC_SVCNAME}" ]]; then eerror "You should not use this script directly" eerror "Please, make a symlink to it named actkbd.<device>:" eerror "" eerror "ln -s /etc/init.d/actkbd /etc/init.d/actkbd.<device>" eerror "" eerror "You may use per-device config as well as global config" exit 1 fi local config=$(get_val config) if [[ -z "${config}" ]]; then if yesno ${actkbd_config_per_device}; then config=/etc/actkbd.${device}.conf else config=/etc/actkbd.conf fi fi local devpath="/dev/input/actkbd/${device}" local options=$(get_val options "-D -q") yesno $(get_val log "no") && options="${options} -l" ebegin "Starting actkbd on ${device} [${config}]" start-stop-daemon --start --exec ${actkbd} --pidfile ${pidfile} -- \ -c ${config} -d ${devpath} -p ${pidfile} ${options} eend $? } stop() { ebegin "Stopping actkbd on ${device}" start-stop-daemon --stop --pidfile ${pidfile} eend $? } reload() { ebegin "Reloading actkbd on ${device}" start-stop-daemon --signal HUP --pidfile ${pidfile} eend $? }И правило в udev, например
# Detect if we are working on right devices, or bail out SUBSYSTEM!="input", KERNELS!="event[0-9]*", GOTO="_END_" # Added ACTION=="add|change", GOTO="_SELECT_" # Removed, and it was previously added by this rule ACTION=="remove", ENV{__ALIAS}=="?*", GOTO="_STOP_" GOTO="_END_" LABEL="_SELECT_" # Set here any number of rules, detecting needed devices and mapping them into aliases. Beware, that # rules should match for ony one device, or symlink will fail. End every rule with GOTO="_START_" to # autolaunch actkbd service on plug/unplug, if you want to (you are, probably, don't want to do this for # permanent devices, like internal keyboard for laptops). "SYMLINK+=..." part is mandatory, you don't need # to change it, setting ENV{__ALIAS} is also mandatory, and this is what you _need_ to change: # #DRIVERS=="atkbd", ENV{__ALIAS}="intkbd", SYMLINK+="input/actkbd/%E{__ALIAS}", GOTO="_START_" # DRIVERS=="atkbd", ENV{__ALIAS}="intkbd", SYMLINK+="input/actkbd/%E{__ALIAS}" ENV{DMI_VENDOR}=="Sony?*", ATTRS{name}=="Sony Vaio Keys", ENV{__ALIAS}="sony_keys", SYMLINK+="input/actkbd/%E{__ALIAS}", GOTO="_START_" ATTRS{name}=="Creative Technology USB Sound Blaster HD", ENV{__ALIAS}="xfi", SYMLINK+="input/actkbd/%E{__ALIAS}", GOTO="_START_" GOTO="_END_" LABEL="_START_" RUN+="/etc/init.d/actkbd.%E{__ALIAS} --quiet start" GOTO="_END_" LABEL="_STOP_" RUN+="/etc/init.d/actkbd.%E{__ALIAS} --quiet stop" LABEL="_END_"Ага. Большой спс. То что
Ага. Большой спс. То что доктор прописал.
Только ни как не могу добраться до переменной $DISPLAY из /etc/actkbd.conf, надо как то определить запущены иксы или нет ...
... про такую не знает ...
Деревья умирают стоя.