在 tty 中禁用嵌入式键盘

在 tty 中禁用嵌入式键盘

我最近一直在研究上网本。我喜欢尽可能连接外部键盘和鼠标,并将键盘放在嵌入式键盘上。

在 X 上时,我使用 xinput 禁用嵌入式键盘,如下所示,以防止覆盖键盘按下嵌入式键盘(或更准确地说,防止这些按下产生效果):

#!/bin/sh
usage(){
    : ${SELF:="$(basename "$0")"}
cat <<EOF
Usage:
    $SELF 
        Query state of X device
    $SELF 0|1
        Set state of X device
    $SELF -h|--help
        Show this help
EOF
}
[ $# -gt 1 ] && { usage >&2; exit 1; }

acerKbd=$(
xinput --list 2>/dev/null|
xinput  --list | sed -n 's/^.*AT Translated Set 2 keyboard.*id=\([0-9]*\).*/\1/ p'
)
queryState(){ xinput list-props "$acerKbd" |grep 'Device Enabled'|cut -d: -f2|tr -d ' \t'; }
setState() { xinput set-int-prop "$acerKbd" 'Device Enabled' 8 "$1"; }

case "$1" in
    -h|--help) usage;;
    0|1) setState "$1";;
    "") queryState;;
    *) usage >&2; exit 1;;
esac

xinput我使用几乎相同的脚本来禁用/启用鼠标(不同的搜索策略 - 我不知道是否有比 regexp matches的输出更好的方法来定位设备)。

但我还没有找到一种方法来完成与此等效的 tty 操作?

有任何想法吗?

相关内容