Skenario
Menggunakan dua atau lebih monitor menjadikan kita produktif, namun dengan menggunakan pen tablet (misal saya menggunakan Huion 950P) pada dua monitor sangat mengganggu. Pen tablet akan lari kesana kesini karena perbedaan ruang di pad yang kecil dan di dua monitor yang cukup besar. Hal ini berakibat kepada ketidaknyamanan ketika menulis dengan menggunakan aplikasi whitboard seperti xournal. Berikut adalah solusi membatasi pen tablet (khususnya gerakan stylus) hanya pada satu monitor saja di Ubuntu 20.04.
Pilih monitor mana
Perintah di terminal adalah
bagus@m049:tmp$ xrandr Screen 0: minimum 320 x 200, current 3840 x 1080, maximum 16384 x 16384 HDMI-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 698mm x 393mm 1920x1080 60.00*+ 50.00 59.94 1920x1080i 60.00 50.00 59.94 1680x1050 59.88 1280x1024 75.02 60.02 1440x900 74.98 59.90 1280x960 60.00 1152x864 75.00 1280x720 60.00 50.00 59.94 1440x576 50.00 1024x768 75.03 70.07 60.00 832x624 74.55 800x600 75.00 60.32 56.25 720x576 50.00 720x480 60.00 59.94 640x480 75.00 66.67 60.00 59.94 720x400 70.08 DP-1 connected primary 1920x1080+1920+0 (normal left inverted right x axis y axis) 598mm x 336mm 1920x1080 60.00*+ 74.97 50.00 59.94 1920x1080i 60.00 50.00 59.94 1600x1200 60.00 1680x1050 59.95 1280x1024 75.02 60.02 1440x900 74.98 59.89 1280x960 60.00 1152x864 75.00 1280x720 60.00 50.00 59.94 1024x768 75.03 60.00 832x624 74.55 800x600 75.00 60.32 720x576 50.00 720x480 60.00 59.94 640x480 75.00 60.00 59.94 720x400 70.08 HDMI-2 disconnected (normal left inverted right x axis y axis)Pada kasus di atas, saya memilih DP-1 sebagai monitor untuk pen stylus. Monitor ini menggunakan koneksi display port sehingga namanya DP-1.
Pilih divais mana
Perintah di terminal adalah
bagus@m049:tmp$ xinput ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ Lite-On Technology Corp. USB Multimedia Keyboard Consumer Control id=11 [slave pointer (2)] ⎜ ↳ USB Optical Mouse id=13 [slave pointer (2)] ⎜ ↳ Tablet Monitor stylus id=15 [slave pointer (2)] ⎜ ↳ Tablet Monitor Dial pad id=16 [slave pointer (2)] ⎜ ↳ Tablet Monitor Touch Strip pad id=17 [slave pointer (2)] ⎜ ↳ Tablet Monitor Pad pad id=18 [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)] ↳ Power Button id=8 [slave keyboard (3)] ↳ Sleep Button id=9 [slave keyboard (3)] ↳ Lite-On Technology Corp. USB Multimedia Keyboard id=10 [slave keyboard (3)] ↳ Lite-On Technology Corp. USB Multimedia Keyboard System Control id=12 [slave keyboard (3)] ↳ Lite-On Technology Corp. USB Multimedia Keyboard Consumer Control id=14 [slave keyboard (3)]Output yang penting dari output perintah di atas adalah "id". Saya memilih id 15-18 karena itu adalah id pen tablet saya.
Map ke satu monitor
Langkah terakhir adalah mapping. Perintahnya adalah berikut
bagus@m049:ptxconf$ xinput map-to-output 15 DP-1 bagus@m049:ptxconf$ xinput map-to-output 16 DP-1 bagus@m049:ptxconf$ xinput map-to-output 17 DP-1 bagus@m049:ptxconf$ xinput map-to-output 18 DP-1Selesai! Sekarang saya bisa dengan leluasa menggunakan stylus di satu monitor untuk keperluan kuliah online. Berikut contohnya!
Konfigurasi Tambahan dan Menambahkan pada start up application
Agar setting di atas tetap alias tidak berubah pada setiap kali reboot, peintah mapping perlu kita tambahkan pada start up application. Dari empat perintah mapping di atas, perintah mapping stylus merupakan yang utama dan itu saja yang sebenarnya perlu ditambahkan.
MONITOR="DP-1" PAD_NAME='Tablet Monitor' ID_STYLUS=$(xinput | grep "Tablet Monitor stylus" | cut -f 2 | cut -c 4-5) xinput map-to-output $ID_STYLUS $MONITOR # konfigurasi tambahan untuk Krita, Xournalpp xsetwacom set "$PAD_NAME Pad pad" button 1 key Ctrl z # undo xsetwacom set "$PAD_NAME Pad pad" button 2 key Ctrl y # redo xsetwacom set "$PAD_NAME Pad pad" button 3 key Ctrl shift p # pen xsetwacom set "$PAD_NAME Pad pad" button 8 key Ctrl shift e # eraser xsetwacom set "$PAD_NAME Pad pad" button 9 key Ctrl shift h # highlight xsetwacom set "$PAD_NAME Pad pad" button 10 key Ctrl 1 # shape recognizer xsetwacom set "$PAD_NAME Pad pad" button 11 key Ctrl shift r # select rect. xsetwacom set "$PAD_NAME Pad pad" button 12 key Ctrl d # new page after
Kemudian, tambahkan perintah pada startup application seperti berikut.
Startup application > Add > Command > huion950p.sh
Bonus
Agar ukuran papan tulis bisa penuh satu monitor, saya membuat 'page' custom di aplikasi whiteboard sesuai ukuran monitor saya yakni 27 inchi (598mm x 336mm). Ukuran tsb juga didapatkan dari output perintah xrandr. Untuk tingginya saya kurangi sedikit karena ada toolbar milik xournal. Sehingga,
width = 59 cm, dan
height = 26 cm.