Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
タッチスクリーンのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
タッチスクリーン
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:入力デバイス]] [[Category:ディスプレイ]] [[en:Touchscreen]] {{Related articles start}} {{Related3|Calibrating Touchscreen|タッチスクリーンの較正}} {{Related articles end}} Linux でタッチスクリーンデバイスをセットアップしようと試みた場合、(多少の較正は必要ながらも) 特に何も設定しなくても動作するときと、あるいはカーネルによってサポートされていないデバイスなら、設定するのがとても面倒くさい場合があります。 == イントロダクション == この記事ではカーネル (の ''usbtouchscreen'' モジュールなど) によってサポートされているタッチスクリーンデバイスを対象にします。サポートされていれば、デバイスの {{ic|/dev/input/event*}} ノードが存在するはずです。ノードが存在するか確認するには: $ less /proc/bus/input/devices あるいはディスプレイをタッチしたときに使われるイベントノードを確認するには: $ cat /dev/input/event? # replace ? with the event numbers デバイスノードが見つけられたのであれば、デバイスを動作させることもおそらくできるはずです。 == 利用可能な X11 ドライバー == X11 用のタッチスクリーンインプットドライバーは多数存在します。''extra'' リポジトリに入っている最も一般的なドライバーは: * {{Pkg|xf86-input-evdev}} (タッチスクリーンを接続しただけで動作する場合のデフォルトドライバー) * {{Pkg|xf86-input-libinput}}; [[libinput]] を参照 * {{Pkg|xf86-input-elographics}} リポジトリに含まれていない、マイナーなドライバーは: * xf86-input-magictouch * xf86-input-mutouch * xf86-input-plpevtch * xf86-input-palmax デバイスによってはプロプライエタリなドライバーも存在しますが (例: {{AUR|xf86-input-egalax}})、最初にオープンソースのドライバーを試すことを推奨します。 あなたが使用するタッチスクリーンデバイスにあわせて適当なドライバーを選択してください。タッチスクリーンが既に動作する場合はおそらく evdev がデフォルトです。 == 2 本指スクロール == 2 本指スクロールはアプリケーション側で実装する必要があります([https://bbs.archlinux.org/viewtopic.php?pid=1839974#p1839974 このリンク]を参照してください)。 Firefoxについては、[[Firefox/設定#タッチスクリーンジェスチャを有効化する]]を参照してください。 [[#Touchegg]] でこのスクロール動作をエミュレートするハックはありますが、X サーバーはそれをテキスト選択として扱います(少なくとも[[Plasma]]では)。 == evdev ドライバー == === キャリブレーション === {{AUR|xinput_calibrator}} (AUR) をインストールして、''xinput_calibrator'' を実行して指示に従って下さい。 == マルチディスプレイでタッチスクリーンを使う == マルチディスプレイを使う場合 (その中にタッチスクリーンも含まれる場合)、タッチサーフェスとスクリーンのマッピングを Xorg に指定する必要があります。xinput を使うことでとても簡単に設定できます。 以下は Wacom タブレットと外付けモニタを使用する例です。xrandr を実行すると2つのディスプレイが表示されます: {{hc|$ xrandr| Screen 0: minimum 320 x 200, current 2944 x 1080, maximum 8192 x 8192 LVDS1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 1024x768 60.0*+ 800x600 60.3 56.2 640x480 59.9 VGA1 connected 1920x1080+1024+0 (normal left inverted right x axis y axis) 477mm x 268mm 1920x1080 60.0*+ 1600x1200 60.0 1680x1050 60.0 1680x945 60.0 }} 上記で2つのディスプレイは LVDS1 と VGA1 であることがわかり、LVDS1 はタブレットの内蔵ディスプレイで、VGA1 は外付けモニタです。スタイラスの入力を LVDS1 にマップしたいとします。そこで、スタイラスの入力の ID を確認する必要があります: {{hc|$ xinput --list| ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ QUANTA OpticalTouchScreen id=9 [slave pointer (2)] ⎜ ↳ TPPS/2 IBM TrackPoint id=11 [slave pointer (2)] ⎜ ↳ Serial Wacom Tablet WACf004 stylus id=13 [slave pointer (2)] ⎜ ↳ Serial Wacom Tablet WACf004 eraser id=14 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] ↳ Power Button id=6 [slave keyboard (3)] ↳ Video Bus id=7 [slave keyboard (3)] ↳ Sleep Button id=8 [slave keyboard (3)] ↳ AT Translated Set 2 keyboard id=10 [slave keyboard (3)] ↳ ThinkPad Extra Buttons id=12 [slave keyboard (3)] }} スタイラス入力が 2 つあることがわかります。今、私たちは単に以下のように入力を出力にマップする必要があります: $ xinput --map-to-output 'Serial Wacom Tablet WACf004 stylus' LVDS1 $ xinput --map-to-output 'Serial Wacom Tablet WACf004 eraser' LVDS1 これらのコマンドを ~/.xinitrc または類似のものに入れることで自動化することができます。タッチスクリーンが切断されて再接続された場合、例えば KVM 経由でモニターを切り替える場合など、マッピングは失われます。その場合は、udev ルールを使用する方が良いです。タッチスクリーンのキャリブレーションページには、変換マトリックスが手動で計算され、自動的に適用される必要がある場合の例として udev ルールがあります。 === xrandr-watch-git を使用して map-to-output を自動化する === スクリプトからキャプチャできる [[xrandr]] イベントがあります。{{AUR|xrandr-watch-git}} をインストールし、実行権限を持つスクリプト {{ic|~/.xrandr-changed}} を作成して map-to-output を実行します。例えば: {{hc|~/.xrandr-changed| #!/bin/sh xinput --map-to-output "Wacom HID 4861 Finger touch" "eDP1" }} そして、[[systemd/ユーザー]] サービスとして {{ic|xrandr-watcher.service}} を開始、テスト、有効化します。 === Wayland/Weston === Wayland は現在、sway(または wlroots ベースのサポートされたコンポジター)以外の環境で特定のディスプレイにタッチをロックする既知の方法がありません。weston-touch-calibrator などのツールはありますが、Gnome Wayland は Xwayland を使用しており、キャリブレーターがタッチスクリーンを見つけることができません。 Wayland/Xwayland はまた、xinput リストをマスクしてそれらを "xwayland-pointer", "xwayland-relative-pointer", "xwayland-touch-pointer" などの一般的な xwayland デバイスに統合します。Wayland の "[[Xinput]]" 方法は "[[Libinput]]" ですが、すべての同じ機能を持っているわけではありません。マルチヘッドセットアップでタッチスクリーンを使用する現在知られている方法は、Gnome や KDE に X11 を使用させることです。libinput は現在、タッチスクリーンが利用可能なすべてのモニターをカバーしていると仮定しています。 sway の設定については [[Sway#タッチディスプレイのマッピング]]を参照してください。 == Touchegg == [[Touchegg]] は、X とのみ互換性のあるマルチタッチジェスチャープログラムで、ユーザーとしてバックグラウンドで実行され、ジェスチャーを認識し、それをマウスホイールの動きなどのより従来のイベントに変換します。たとえば、2 本指でスクロールすることができます。しかし、独自のジェスチャー認識を行うアプリケーションやウィンドウマネージャーと干渉することもあります。タッチパッドとタッチスクリーンの両方があり、タッチパッドドライバー(synaptics や libinput など)がジェスチャーを自体で認識せずにマルチタッチイベントを通過させるように設定されている場合、Touchegg は両方でジェスチャーを認識しますが、これは設定できません。実際には、synaptics や libinput のタッチパッドドライバーよりもジェスチャーの認識が優れていますが、タッチスクリーンでは、アプリケーションが独自の方法でタッチに応答する方が一般的に良いです。一部の Qt や GTK アプリケーションはそれを行いますが、Touchegg がタッチイベントを「食べてしまう」とそれができなくなります。そのため、Touchegg は主に独自のタッチイベントの使用を行わないレガシーアプリケーションを実行している場合に便利です。 2 本指スクロールは、最近の touchegg 2.0 の書き直しで無効にされました。 有効にするには、{{Pkg|xdotool}} をインストールし、[https://github.com/JoseExposito/touchegg/issues/438 このクローズされたイシュー] を参照してください。 {{TranslationStatus|Touchscreen|2024/6/6|782539}}
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:META Related articles start
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
テンプレート:Related3
(
ソースを閲覧
)
テンプレート:Related articles end
(
ソースを閲覧
)
テンプレート:Related articles start
(
ソースを閲覧
)
テンプレート:TranslationStatus
(
ソースを閲覧
)
タッチスクリーン
に戻る。
検索
検索
タッチスクリーンのソースを表示
話題を追加