web-dev-qa-db-ja.com

xsetのデフォルトの繰り返し率はどこに保存されますか?

キーボードのリピートレートをxset r rate 250 100、USBキーボードを外してからxset -q、キーボードを切断した後、リピートレートが自動的に次のデフォルト値に設定されていることがわかります。

$ xset -q | grep delay
  auto repeat delay:  660    repeat rate:  25

デフォルト値を変更できますか?それらはどこに保管されていますか?私はDebianSidを実行しています。

1
jojman

関連するパラメータを追加することで、_/etc/X11/xinit/xserverrc_のいわゆるseat-defaultsを変更できます(XSERVER(1)を参照)。 。

_-ardelay milliseconds
   sets the autorepeat delay (length of time in milliseconds that a key must be depressed before autorepeat starts).

-arinterval milliseconds
   sets the autorepeat interval (length of time in milliseconds that should elapse between autorepeat-generated keystrokes).
_

(!)arintervalの繰り返し頻度からミリ秒単位でxsetを計算するには、_1000/freq_を計算します。

私は今_exec /usr/bin/X -nolisten tcp -ardelay 200 -arinterval 20 "$@"_と言います

[ https://superuser.com/questions/935801/whenever-i-plug-in-another-keyboard-key-repeating-rate-is-reset-to-some-value] にあります

(以前は_Option "AutoRepeat" "190 70"_ _/etc/X11/xorg.conf.d/keyboard.conf_を設定して繰り返し率を永続的にしようとしていましたが、それがうまくいかなかったので、(どうしようもなく)1分あたりのxsetcronを実行することにしました。ジョブXD)

1
eMPee584

Bashプロンプトで設定を変更すると、新しい設定は実行中のXサーバーのメモリにのみ保存されているように見えます。

変更を永続的にするために、システムにそのファイルがある場合は、/etc/kbd/configの「KEYBOARD_RATE」行と「KEYBOARD_DELAY」行のコメントを外すことができます。

それ以外の場合(とにかくUbuntuの場合)、さまざまなディストリビューション固有のアプローチが存在する傾向があります。以下を参照してください。 https://askubuntu.com/q/140255/231504

xsetを介して設定された値がXサーバーのメモリ内にのみ存在すると推測している理由は次のとおりです。

straceの下でコマンドを実行すると、次のようになります。

strace xset r rate 175 37

straceでの私の限られた経験に基づくと)設定はソケットに書き込まれているようで、私のマシンではソケットは次のとおりです。

/tmp/.X11-unix/X0

そのソケットのもう一方の端にあるものを確認するには:

Sudo lsof +d /tmp/.X11-unix

...出力:

COMMAND  PID USER   FD   TYPE             DEVICE SIZE/OFF   NODE NAME
Xorg    1635 root    3u  unix 0xffff88046ae4bc00      0t0  24945 /tmp/.X11-unix/X0 type=STREAM

...これは、ソケットをリッスンしているプロセスがXorg(別名Xサーバー)であることを示しています。もちろん、X Serverは、仮想的に値をどこかの不揮発性メモリに永続化することができますが、ユーザーからの複数の逸話に基づくと、そうではないように思われます。

0
pestophagous