キーボードがドッキング解除されたときに実行されるスクリプトの作成を手伝ってください

ジョシュア・ロビソン

私は以下を作りました

 # Saved as /etc/udev/rules.d/81-MSSP3-dock.rules


# Microsoft Surface Pro Keyboard
SUBSYSTEM=="input", ENV{ID_VENDOR_ID}=="045e", ENV{ID_MODEL_ID}=="07e3, GOTO="MSSP3_rules"
GOTO="MSSP3_rules_end"

LABEL="MSSP3_rules"
ACTION=="add", RUN+="/home/joshuarobison/Documents/Scripts/landscape.sh"
ACTION=="remove", RUN+="/home/joshuarobison/Documents/Scripts/portrait.sh"

LABEL="MSSP3_rules_end"

私のudevは次のとおりです

monitor will print the received events for:
UDEV - the event which udev sends out after rule processing

UDEV  [2672.635429] remove   /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E3.0012/input/input303/event3 (input)
ACTION=remove
BACKSPACE=guess
DEVLINKS=/dev/input/by-path/pci-0000:00:14.0-usb-0:3:1.0-event-kbd /dev/input/by-id/usb-Microsoft_Surface_Type_Cover-event-kbd
DEVNAME=/dev/input/event3
DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E3.0012/input/input303/event3
ID_BUS=usb
ID_INPUT=1
ID_INPUT_KEY=1
ID_INPUT_KEYBOARD=1
ID_MODEL=Surface_Type_Cover
ID_MODEL_ENC=Surface\x20Type\x20Cover
ID_MODEL_ID=07e3
ID_PATH=pci-0000:00:14.0-usb-0:3:1.0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_3_1_0
ID_REVISION=0307
ID_SERIAL=Microsoft_Surface_Type_Cover
ID_TYPE=hid
ID_USB_DRIVER=usbhid
ID_USB_INTERFACES=:030000:
ID_USB_INTERFACE_NUM=00
ID_VENDOR=Microsoft
ID_VENDOR_ENC=Microsoft
ID_VENDOR_ID=045e
LIBINPUT_DEVICE_GROUP=3/45e/7e3:usb-0000:00:14.0-3
MAJOR=13
MINOR=67
SEQNUM=4374
SUBSYSTEM=input
TAGS=:power-switch:
USEC_INITIALIZED=2297576881
XKBLAYOUT=jp
XKBMODEL=pc105

横向きと縦向きのスクリプトはすでに機能しています。どういうわけか、問題はudevルールにあることを私は知っています。キーボードをドッキング解除してドッキングすると、スクリプトが実行されません。

Portraitまたはlandscape.shスクリプトが単なるechoコマンドであっても、何も起こりません。

ジョシュア・ロビソン

以下は、キーボードが取り外されるとポートレートモードに切り替わるようにMicrosoftSP3をセットアップします。スクリプトは、アクティブなスタイラスと静電容量式タッチの向きが正しいことを確認します。

これを書くのに役立ったチュートリアルへのリンクを提供してくれた@georgeudesonに感謝します。

UDEVルール

# Saved as /etc/udev/rules.d/81-MSSP3-dock.rules

# Microsoft Surface Pro Keyboard

ACTION=="add" \
, ATTRS{idProduct}=="07e3" \
, ATTRS{idVendor}=="045e" \
, ENV{DISPLAY}=":0" \
, ENV{XAUTHORITY}="/home/joshuarobison/.Xauthority" \
, RUN+="//home/joshuarobison/Documents/Scripts/landscape.sh"

ACTION=="remove" \
, ATTRS{idProduct}=="07e3" \
, ATTRS{idVendor}=="045e" \
, ENV{DISPLAY}=":0" \
, ENV{XAUTHORITY}="/home/joshuarobison/.Xauthority" \
, RUN+="//home/joshuarobison/Documents/Scripts/portrait.sh"

Portrait.shスクリプト

#!/bin/sh
#Portrait
xrandr -o left
  xinput set-prop "NTRG0001:01 1B96:1B05" --type=float "Coordinate Transformation Matrix" 0 -1 1 1 0 0 0 0 1
  xinput set-prop "NTRG0001:01 1B96:1B05" --type=float "Coordinate Transformation Matrix" 0 -1 1 1 0 0 0 0 1
  xsetwacom set "NTRG0001:01 1B96:1B05 Pen stylus" Rotate ccw

landscape.shスクリプト

#!/bin/sh
#landscape

  xrandr -o normal
  xinput set-prop "NTRG0001:01 1B96:1B05" --type=float "Coordinate Transformation Matrix" 0 0 0 0 0 0 0 0 0
  xinput set-prop "NTRG0001:01 1B96:1B05" --type=float "Coordinate Transformation Matrix" 0 0 0 0 0 0 0 0 0
  xsetwacom set "NTRG0001:01 1B96:1B05 Pen stylus" Rotate 0

udevルールファイルを作成した後、実行することを忘れないでください

sudo udevadm control --reload

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ボタンがクリックされたときにクリップボードにテキストエリアのテキストをコピーする

分類Dev

ループを使用して作成されたボタンを識別する方法。手伝ってください

分類Dev

インドでTechgigイベントのmcqsを実行しているときに、次のコードで問題が発生しました。次のコードを理解するのを手伝ってください

分類Dev

HTMLでJEditorPaneを作成すると、正しくフォーマットされたテキストがクリップボードに配置されます

分類Dev

アプリがバックグラウンドで実行されているときにMacでマウスとキーボードの使用の通知を受け取る方法は?

分類Dev

.proとmain.cppでプラグインを呼び出しているときに、[テキストの編集]をクリックした後にqml仮想キーボードが表示されないのはなぜですか

分類Dev

スクリプトが1つのコマンドのみを実行していて、エラーが表示されることを期待してください

分類Dev

デバイスがロックされている場合、またはアプリがバックグラウンドで実行されている場合、App Storeのアプリはキーチェーンにアクセスできますか?

分類Dev

アプリがバックグラウンドにあるとき、またはアプリが実行されていないときの着信時に、Lenovo L18021(A5)ではブロードキャストレシーバーが呼び出されません

分類Dev

ログイン後に画面/キーボードの新しいデフォルトの明るさを設定するスクリプトを書くのを手伝ってもらえますか?

分類Dev

ログイン後に画面/キーボードの新しいデフォルトの明るさを設定するスクリプトを書くのを手伝ってもらえますか?

分類Dev

divがロードされているときにjqueryスクリプトを実行できません。DOMがロードされる前にjqueryコードを実行してください

分類Dev

含まれているテキストが実行時に認識されない場合に、コード化されたUIでチェックリストボックスのアイテムコントロールを選択する

分類Dev

コピーされたテキストからのプログラムが終了するときにクリップボードの内容を保持する

分類Dev

FlipViewに含まれているテキストボックスがポップアップしたときにソフトキーボードによって隠されているのはなぜですか?

分類Dev

バッテリーがなくなった後、アプリがバックグラウンドで実行されていることを示すiOS

分類Dev

グリースモンキー-htmlとcssがロードされたときにスクリプトを実行します

分類Dev

Debian/KDE でパスワードを変更した後、「コンピューターにログインしたときにログイン キーリングのロックが解除されなかった」を解決する方法は?

分類Dev

キャッシングがボレーに実装されている場合、ボレーがPOSTリクエストメソッドでキャッシュされたパラメーターを送信しないようにします

分類Dev

ホットキーを押して、ループ中にスクリプトを再実行しますが、それを待たないでください

分類Dev

woocomerceイベントに基づいて投稿リクエストが発行されるのはいつですか?また、デバッグできるようにphpコードをコンソールする方法を教えてください

分類Dev

bashスクリプトのデバッグを手伝ってください

分類Dev

新しいHDD(x3)のディスク書き込みエラー!! 私が多くのことを試したのを手伝ってください。私はそれが一貫して高いビットレートの使用にダウンしていると思います

分類Dev

ロギングのスクリプトを手伝ってください

分類Dev

私のサンドボックスアプリは10.8で正常に実行されていましたが、10.9ではユーザーのデフォルトの.plistがまったく保存されていないようです

分類Dev

Pythonを使用してテキストを入力するためのホットキーを作成し、キーが押されるのを待ってバックグラウンドで実行します

分類Dev

ネットワーク接続を回復するために、いくつかの「パージされた」パッケージを正しい順序で手動で再インストールするのを手伝ってください

分類Dev

ネットワーク接続を回復するために、いくつかの「パージされた」パッケージを正しい順序で手動で再インストールするのを手伝ってください

分類Dev

ボタンがクリックされたときにポップアップしてからフェードアウトするテキストhtml

Related 関連記事

  1. 1

    ボタンがクリックされたときにクリップボードにテキストエリアのテキストをコピーする

  2. 2

    ループを使用して作成されたボタンを識別する方法。手伝ってください

  3. 3

    インドでTechgigイベントのmcqsを実行しているときに、次のコードで問題が発生しました。次のコードを理解するのを手伝ってください

  4. 4

    HTMLでJEditorPaneを作成すると、正しくフォーマットされたテキストがクリップボードに配置されます

  5. 5

    アプリがバックグラウンドで実行されているときにMacでマウスとキーボードの使用の通知を受け取る方法は?

  6. 6

    .proとmain.cppでプラグインを呼び出しているときに、[テキストの編集]をクリックした後にqml仮想キーボードが表示されないのはなぜですか

  7. 7

    スクリプトが1つのコマンドのみを実行していて、エラーが表示されることを期待してください

  8. 8

    デバイスがロックされている場合、またはアプリがバックグラウンドで実行されている場合、App Storeのアプリはキーチェーンにアクセスできますか?

  9. 9

    アプリがバックグラウンドにあるとき、またはアプリが実行されていないときの着信時に、Lenovo L18021(A5)ではブロードキャストレシーバーが呼び出されません

  10. 10

    ログイン後に画面/キーボードの新しいデフォルトの明るさを設定するスクリプトを書くのを手伝ってもらえますか?

  11. 11

    ログイン後に画面/キーボードの新しいデフォルトの明るさを設定するスクリプトを書くのを手伝ってもらえますか?

  12. 12

    divがロードされているときにjqueryスクリプトを実行できません。DOMがロードされる前にjqueryコードを実行してください

  13. 13

    含まれているテキストが実行時に認識されない場合に、コード化されたUIでチェックリストボックスのアイテムコントロールを選択する

  14. 14

    コピーされたテキストからのプログラムが終了するときにクリップボードの内容を保持する

  15. 15

    FlipViewに含まれているテキストボックスがポップアップしたときにソフトキーボードによって隠されているのはなぜですか?

  16. 16

    バッテリーがなくなった後、アプリがバックグラウンドで実行されていることを示すiOS

  17. 17

    グリースモンキー-htmlとcssがロードされたときにスクリプトを実行します

  18. 18

    Debian/KDE でパスワードを変更した後、「コンピューターにログインしたときにログイン キーリングのロックが解除されなかった」を解決する方法は?

  19. 19

    キャッシングがボレーに実装されている場合、ボレーがPOSTリクエストメソッドでキャッシュされたパラメーターを送信しないようにします

  20. 20

    ホットキーを押して、ループ中にスクリプトを再実行しますが、それを待たないでください

  21. 21

    woocomerceイベントに基づいて投稿リクエストが発行されるのはいつですか?また、デバッグできるようにphpコードをコンソールする方法を教えてください

  22. 22

    bashスクリプトのデバッグを手伝ってください

  23. 23

    新しいHDD(x3)のディスク書き込みエラー!! 私が多くのことを試したのを手伝ってください。私はそれが一貫して高いビットレートの使用にダウンしていると思います

  24. 24

    ロギングのスクリプトを手伝ってください

  25. 25

    私のサンドボックスアプリは10.8で正常に実行されていましたが、10.9ではユーザーのデフォルトの.plistがまったく保存されていないようです

  26. 26

    Pythonを使用してテキストを入力するためのホットキーを作成し、キーが押されるのを待ってバックグラウンドで実行します

  27. 27

    ネットワーク接続を回復するために、いくつかの「パージされた」パッケージを正しい順序で手動で再インストールするのを手伝ってください

  28. 28

    ネットワーク接続を回復するために、いくつかの「パージされた」パッケージを正しい順序で手動で再インストールするのを手伝ってください

  29. 29

    ボタンがクリックされたときにポップアップしてからフェードアウトするテキストhtml

ホットタグ

アーカイブ