Di chuyển chuột di chuyển khi nhấn nút giữa


29

Trong Windows, tôi thường bấm vào nút giữa và nó cung cấp tùy chọn "cuộn nhanh" lên hoặc xuống. Làm thế nào tôi có thể có hành vi này trên Linux? Hiện tại nó dường như sử dụng nút quay lại khi nhấp vào trung tâm.

Tôi sử dụng Gnome theo CentOS.


Điều gì, đặc biệt, không hoạt động? Chuột Unix có ba nút từ ngày đầu tiên, vì vậy nút chuột giữa thường hoạt động tốt.
Gilles 'SO- ngừng trở nên xấu xa'

Tôi đã quen với việc nhấp vào nút trung tâm và nó cung cấp tùy chọn "cuộn nhanh" lên hoặc xuống. Hiện tại nó dường như sử dụng nút quay lại khi nhấp vào trung tâm.
some1

2
À, vì vậy bạn muốn hành vi Windows của nút giữa (hoặc thay vì nhấn bánh xe), thay vì hành vi Unix (trong đó nút giữa thường dán nội dung clipboard). Bạn thực sự cần phải nói điều này trong câu hỏi của bạn, chúng tôi không thể đọc được suy nghĩ của bạn! Điều này đòi hỏi sự hỗ trợ từ các ứng dụng; bạn sử dụng ứng dụng nào? Môi trường máy tính để bàn nào (ví dụ Gnome, KDE, XFCE, tầm)?
Gilles 'SO- ngừng trở nên xấu xa'

Chà, tôi đã hình dung sẽ có một bảng cấu hình ở đâu đó nơi tôi có thể đặt nó, nhưng tôi thậm chí không thể đi xa đến thế. Máy tính để bàn là Gnome tôi giả sử, đó có phải là mặc định không? Và vấn đề là ở firefox.
some1

1
Đối với Firefox, có một giải pháp trong một câu hỏi gần như trùng lặp .
Gilles 'SO- ngừng trở nên xấu xa'

Câu trả lời:


26

Tính năng Windows này chưa bao giờ thực sự xâm nhập vào thế giới Unix. Trong thế giới Unix, mục đích chính của nút chuột giữa là dán nội dung clipboard (hay chính xác hơn là văn bản được chọn bằng chuột, được sao chép tự động). Một vài ứng dụng đa nền tảng như Firefox và Chrome hỗ trợ nút chuột giữa kiểu Linux trong Windows và ngược lại, nhưng khác với hầu hết các ứng dụng không hỗ trợ kiểu cuộn mịn này.

Tuy nhiên, bạn có thể khá gần ở cấp hệ thống. Có thể thiết lập một nút chuột sao cho khi nhấn, chuyển động của chuột được chuyển thành các sự kiện bánh xe. Đây là tính năng tương tự mà bạn đã từng sử dụng, nhưng bạn có thể tìm thấy chuyển động bị biến dạng, bởi vì các ứng dụng nhận các sự kiện bánh xe, thường được hiểu là cuộn theo toàn bộ một dòng hoặc cột.

Để chơi với cấu hình này, hãy sử dụng chương trình xinput (Tôi không biết nếu có giao diện GUI cho nó). Đầu tiên, chạy lệnh sau để xem tên của thiết bị trỏ của bạn:

$ xinput --list       
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Generic USB Mouse                         id=8    [slave  pointer  (2)]
⎜   ↳ Macintosh mouse button emulation          id=12   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳   USB Keyboard                            id=9    [slave  keyboard (3)]

Ví dụ, trong đầu ra ở trên, thiết bị con trỏ là Generic USB mouse. Bạn có thể chạy lệnh sau để liệt kê các thuộc tính có thể điều chỉnh:

xinput --list-props 'Generic USB Mouse'

Tập hợp các thuộc tính mà bạn đang tìm kiếm là các mô phỏng mô phỏng Bánh xe Evdev. Với các cài đặt sau, khi nhấn nút chuột giữa (nút 2), di chuyển chuột sẽ gửi các sự kiện bánh xe (4 = lên, 5 = xuống, 6 = trái, 7 = phải).

xinput --set-prop 'Generic USB Mouse' 'Evdev Wheel Emulation' 1
xinput --set-prop 'Generic USB Mouse' 'Evdev Wheel Emulation Button' 2
xinput --set-prop 'Generic USB Mouse' 'Evdev Wheel Emulation Axes' 6 7 4 5

Bạn có thể muốn điều chỉnh các tham số khác (quán tính, thời gian chờ).

Bạn có thể đặt các lệnh này trong một tập lệnh. Thêm #!/bin/shdưới dạng dòng đầu tiên và làm cho tệp tập lệnh thực thi (ví dụ chmod +x ~/bin/activate-wheel-emulation.sh). Sau đó thêm tập lệnh đó vào danh sách các lệnh sẽ chạy khi phiên của bạn bắt đầu ( gnome-session-propertiescho phép bạn định cấu hình tập lệnh đó).

Nếu bạn có quyền truy cập root và bạn muốn thực hiện thay đổi cho tất cả người dùng (chấp nhận được trên máy gia đình), việc thực hiện thông qua tệp cấu hình máy chủ X.org sẽ đơn giản hơn . Với quyền root, hãy tạo một tệp /etc/X11/xorg.conf.d/wheel-emulation.confcó tên chứa cài đặt cho trình điều khiển chuột . Các cài đặt giống nhau nhưng chúng được tổ chức hơi khác nhau.

Section "InputClass"
    Identifier "Wheel Emulation"
    MatchProduct "Generic USB Mouse"
    Option "EmulateWheel" "on"
    Option "EmulateWheelButton" "2"
    Option "XAxisMapping" "6 7"
    Option "YAxisMapping" "4 5"
EndSection

Bạn sẽ muốn thận trọng khi điều chỉnh các tham số khác. Nếu bạn giảm Evdev Wheel Emulation Timeouttham số quá nhiều, bạn có thể mất hoàn toàn chức năng nút chuột giữa (nhấp chuột). Ví dụ: nếu bạn giảm Evdev Wheel Emulation Timeoutxuống dưới giá trị Evdev Middle Button Timeoutthì bạn sẽ không còn tạo các sự kiện Nhấp vào nút giữa. Từ kinh nghiệm cá nhân, những điều sau đây có vẻ hoạt động khá tốt:
agnussmcferguss

xinput --set-prop 'Generic USB Mouse' 'Evdev Middle Button Emulation' 1. xinput --set-prop 'Generic USB Mouse' 'Evdev Middle Button Timeout' 50. xinput --set-prop 'Generic USB Mouse' 'Evdev Wheel Emulation Timeout' 100. Điều đó cung cấp chức năng nhấp và cuộn hợp lý, mặc dù nếu bạn thấy nó kích hoạt quá nhanh, thì hãy thử tăng Evdev Wheel Emulation Timeout(tôi nghĩ 200 là mặc định)
agnussmcferguss

Gilles, tôi nghĩ có gì đó không đúng trong tệp cấu hình xorg.conf.d được đề xuất của bạn. Khi tôi sử dụng nó, X.Org của tôi đã khởi động màn hình đen. Tôi đã tạo ra một phiên bản hoạt động bằng cách thêm Device "evdev"và đặt dấu ngoặc kép xung quanh "EmulateWheelButton"giá trị của "2". (Xin lỗi, tôi không có thời gian để điều tra xem một hoặc cả hai thay đổi này có khắc phục được sự cố không.)
Arkanon

@Arkanon Dấu ngoặc kép bị thiếu chắc chắn là một lỗi cú pháp. Tôi không nghĩ Device "evdev"có thể có ý nghĩa, ý bạn là Driver "evdev"gì? Tôi nghĩ rằng đây sẽ là một thay thế cho MatchProductchỉ thị đặt các tùy chọn cho tất cả các thiết bị đầu vào thay vì chỉ chuột USB chung.
Gilles 'SO- ngừng trở nên xấu xa'

1
@Wallacoloo Tôi không biết liệu bạn có thể có được hiệu ứng chính xác này không, nhưng bạn có thể có bàn phím số di chuyển chuột bằng cách gõ Pointer_EnableKeys(google nó hoặc hỏi một câu hỏi mới ở đây) và bạn có thể thiết lập hành vi fancier với XKB (tìm kiếm keybord : mousekey, hoặc hỏi một câu hỏi mới ở đây mô tả chính xác những gì bạn muốn và những gì bạn sẽ giải quyết nếu bạn không thể có chính xác).
Gilles 'SO- ngừng trở nên xấu xa'

25

Hóa ra điều này có thể được thực hiện thông qua các tùy chọn Firefox.

  1. Từ menu kéo xuống: Chỉnh sửa -> Tùy chọn
  2. Sau đó chọn các tab: Nâng cao -> chung
  3. Sau đó kiểm tra "Sử dụng tính năng tự động ghi"

Ảnh chụp màn hình

   ss


0

để chromebạn có thể sử dụng tiện ích mở rộng này để tự động đăng ký

Tự động kiểm soát

đừng quên khởi động lại chrome sau khi cài đặt tiện ích mở rộ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.