Phát hiện đúng ngón tay cái và bàn di chuột với libinput


23

Vì vậy, libinput nó gần phát hành ổn định đầu tiên của nó với một ứng cử viên phát hành

Việc bổ sung hỗ trợ thích hợp để phát hiện ngón tay cái / lòng bàn tay trên bàn phím cảm ứng cùng với cử chỉ vuốt & chụm hỗ trợ một cái gì đó bị bỏ lỡ trong Linux cho máy tính xách tay có khả năng cảm ứng đa điểm.

Bất cứ ai cũng có thể cung cấp một hướng dẫn tốt về cách cài đặt nó trên Ubuntu 15.04

Vì tôi tin rằng chúng ta sẽ không thấy nó là mặc định trong cài đặt Ubuntu trong một thời gian.


Không có nhiều chú ý cho câu hỏi này. Thành thật không biết tại sao.
VRR

Phát hiện lòng bàn tay phụ thuộc vào trình điều khiển touchpad kernel và cũng có thể được thiết lập trong xorg-synaptics. Bạn có bàn di chuột nào?
Phi công6

@ Pilot6 gói có sẵn để tải xuống, nhưng tệp readme không đưa ra hướng dẫn cụ thể về cách biên dịch vào kernel.
RCF

@ RCF-U15.04 libinputlà một ứng dụng không gian người dùng. Nó không có gì để làm với kernel. Nó chỉ sử dụng các sự kiện được báo cáo bởi kernel.
Phi công6

@tomodachi Nếu bạn muốn thiết lập phát hiện cọ tốt trong Ubuntu, bạn có thể hỏi một câu hỏi khác và tôi sẽ giúp bạn.
Phi công6

Câu trả lời:


14

Đây là cách cài đặt libinput cho Ubuntu.

  1. Cài đặt một số gói cần thiết

    sudo apt-get install git build-essential autoconf automake pkg-config libtool
    sudo apt-get install libmtdev1 libmtdev-dev libudev-dev libevdev-dev xutils-dev libwacom-dev
    
  2. Cài đặt xserver-xorg-dev. Đối với 14.04.3, nó có thể xserver-xorg-dev-lts-vivid. Hãy cẩn thận. Bạn cần kiểm tra xserver-xorggói nào được cài đặt.

    sudo apt-get install xserver-xorg-dev
    
  3. Nhân bản libinputxf86-input-libinput.

    git clone git://anongit.freedesktop.org/git/wayland/libinput
    git clone git://anongit.freedesktop.org/xorg/driver/xf86-input-libinput
    
  4. Xây dựng và cài đặt.

    cd libinput
    ./autogen.sh --prefix=/usr
    make && sudo make install
    
    cd ../xf86-input-libinput
    ./autogen.sh --prefix=/usr
    make && sudo make install
    
  5. Thêm vào conf/90-libinput.confchuỗi tập tin Option "Tapping" "True"trước EndSectionvào phần touchpad.

  6. Sao chép tập tin cấu hình để kích hoạt libinput.

    sudo cp conf/90-libinput.conf /usr/share/X11/xorg.conf.d/
    

Đăng xuất và đăng nhập.

Bạn sẽ thấy rằng libinputđược sử dụng bằng cách chạy xinput list-props <your_touchpad_id>.

Nếu bạn không thích sử dụng libinput, bạn luôn có thể vô hiệu hóa nó bằng cách

sudo rm /usr/share/X11/xorg.conf.d/90-libinput.conf

Tôi vừa cài đặt nó, bây giờ tôi đang tìm cách thiết lập phát hiện lòng bàn tay. Có vẻ như nó được bật theo mặc định, nhưng tôi hoàn toàn không hiểu làm thế nào nó sử dụng kernel được báo cáo về chiều rộng và áp lực.

Có vẻ như hiện tại không có lợi thế lớn nào khi sử dụng libinputtrong Ubuntu.

xf86-input-libinputchỉ cần kết thúc nó với Xorg và không có gì khác. Vì vậy, cử chỉ thêm không được hỗ trợ. Ít nhất tôi không biết nếu họ làm. Wayland hoặc Mir sẽ có nhiều khả năng hơn, tôi đoán vậy.

Sau một số thử nghiệm tôi tìm thấy một lợi thế. Có một vấn đề với xorg-synapticsđó là khi bạn đặt ngón tay lên vùng nút, bạn không thể sử dụng ngón tay khác để di chuyển con trỏ. Điều đó là bất tiện cho những người thích sử dụng các nút phần cứng để nhấp. Vấn đề đó đã được báo cáo nhiều lần là một lỗi.

Trong libinputđó không có vấn đề này cả.

Đó là một niềm vui để thử nghiệm. Cảm ơn câu hỏi.


@ Pilot6 Điểm nào trong "cử chỉ thêm không được hỗ trợ" ?
VRR

@VRR Vấn đề là Ubuntu DE mặc định không hỗ trợ nhiều cử chỉ. Chỉ cần libinputkhông thay đổi nó. Vòi 1,2,3 hoạt động ra khỏi hộp. Phát hiện cọ có khả năng thông minh hơn, nhưng có vẻ như nó không hỗ trợ bàn di chuột chỉ báo cáo chiều rộng. Các model mới không hỗ trợ áp lực, vì chúng hoạt động như màn hình cảm ứng, v.v.
Pilot6 21/07/2015

Tôi nghĩ rằng tôi đã làm mọi thứ rối tung lên một chút..trong quá trình..tôi đang nhận được màn hình đen sau khi khởi động..nhưng không có màn hình đăng nhập lightdm..có thể là do xorg..Tôi biết số phiên bản cũ hơn ..can bất cứ ai nói cho tôi biết quá trình phải làm gì bây giờ..Tôi có thể đến tty
linh cảm

Nếu bạn có vấn đề chỉ cần loại bỏ /usr/share/X11/xorg.conf.d/99-libinput.conf. sudo rm /usr/share/X11/xorg.conf.d/99-libinput.conf
Pilot6

Đó không phải là giải quyết vấn đề. Bạn có thể đề cập vài điều về xserver-xorg-dev .... nơi bạn cũng đã đề cập .. cẩn thận .. Làm thế nào để trở lại phiên bản cũ hơn ..
linh cảm

25

Đối với Ubuntu 15.10+ bạn có thể cài đặt libinput( khôn ngoan , xenial , yakkety ) thông qua apt:

sudo apt install xserver-xorg-input-libinput

Tôi vẫn phải chỉnh sửa tập tin cấu hình để cho phép khai thác, tôi giả sử là Unity hấp thụ libinput, nó sẽ phơi bày điều này thông qua cài đặt bảng điều khiển (tôi đã sử dụng vi ở đây, bạn có thể sử dụng gedit hoặc bất cứ điều gì bạn thích):

Chỉnh sửa tệp sau (được kiểm tra vào ngày 16.04 2016-4-14 và 16.10 2016-10-14):

sudo vi /usr/share/X11/xorg.conf.d/90-libinput.conf 

Điều chỉnh phần 'bàn di chuột' để thêm Option "tapping" "True"Option "DisableWhileTyping" "True"nếu bạn thích hành vi này:

Section "InputClass"
    Identifier "libinput touchpad catchall"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    Driver "libinput"
    Option "Tapping" "True"
    Option "DisableWhileTyping" "True"
EndSection

Đăng xuất, đăng nhập .. thưởng thức! :)


Không có tùy chọn "PalmDetection" trong libinput, DisableWhileTyping được bật theo mặc định. Vì vậy, không cần phải thêm tất cả điều này.
Pilot6

Điều chỉnh và loại bỏ cả hai tùy chọn. Tôi đã để lại 'Khai thác' vì nó không được bật theo mặc định.
JimB

Và tôi cũng không khuyên bạn nên sử dụng libinput cho tất cả các thiết bị. Bàn phím bị chậm trong trường hợp của tôi, vì vậy tôi đã chọn sự kiện touchpad, trong trường hợp của tôi event5và viết nó vào tập tin đó.
Pilot6

@ Pilot6 - bạn có thể cung cấp thêm một vài chi tiết về cách sử dụng libinput cho touchpad không?
BeeOnRope

4
Dường như bạn cũng có thể thêm Option "AccelSpeed" "-0.5", trong đó giá trị có thể là số float từ -1 (con trỏ chậm hơn) đến +1 (con trỏ nhanh hơn). Bạn cũng có thể thử nghiệm với giá trị này và các giá trị khác bằng cách sử dụng xinput. đầu tiên tìm id bằng cách chạy xinput, sau đó nếu id của bạn là 12, bạn có thể làm xinput list-props 12để liệt kê tất cả các đạo cụ. nếu bạn muốn thay đổi một, hãy lấy int cho prop (ví dụ: libinput Accel Speed ​​(281): -0.500000), sau đó bạn có thể làm xinput set-prop 12 281 -0.4để thay đổi accel thành -0.4.
David784


1

Tôi gặp vấn đề tương tự trên Lubfox 17. Tôi đã thử cài đặt libinput và chỉnh sửa tệp .conf không thành công.

Nhưng sau đó tôi thấy bài đăng @ Pilot6 ở trên về việc sử dụng xinput để xác minh rằng libinput đang hoạt động (cũng sẽ rất tuyệt nếu biết tiêu chí để xác minh là gì, nhưng tôi lạc đề).

Tôi đã kiểm tra xinput của tôi với xinput list-props 14(có thể là một số khác trong trường hợp của bạn).

mà đã cho tôi một synapticsbàn di chuột.

Trong danh sách có một tùy chọn để phát hiện lòng bàn tay với một số liên quan đến nó (316).

Vì vậy, tôi sử dụng xinput set-prop 14 316 1để kích hoạt phát hiện lòng bàn tay. Và cuối cùng nó cũng hoạt động.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.