ฉันเพิ่งเปลี่ยนมาใช้ Ubuntu และสิ่งหนึ่งที่รบกวนฉันคือความเร็วในการเลื่อนซึ่งฉันไม่สามารถเปลี่ยนแปลงได้ ใน windows ฉันเคยตั้งค่าไว้ประมาณ 7 บรรทัด แต่ดูเหมือนว่าจะอยู่ที่ประมาณ 3 บน Ubuntu และไม่สามารถเปลี่ยนแปลงได้ ฉันจะเปลี่ยนความเร็วได้อย่างไร
ฉันเพิ่งเปลี่ยนมาใช้ Ubuntu และสิ่งหนึ่งที่รบกวนฉันคือความเร็วในการเลื่อนซึ่งฉันไม่สามารถเปลี่ยนแปลงได้ ใน windows ฉันเคยตั้งค่าไว้ประมาณ 7 บรรทัด แต่ดูเหมือนว่าจะอยู่ที่ประมาณ 3 บน Ubuntu และไม่สามารถเปลี่ยนแปลงได้ ฉันจะเปลี่ยนความเร็วได้อย่างไร
คำตอบ:
หากเป็นเพียงสำหรับเว็บคุณสามารถเปลี่ยนความเร็วการเลื่อนใน FireFox:
Edit
เมนู> Preferences
> Advanced
> แท็บBrowsing
กลุ่ม: ปิดการใช้งานเลื่อนเรียบปรับจูน:
about:config
ในแถบที่อยู่mousewheel.withnokey.sysnumlines
เป็น FALSEmousewheel.withnokey.numlines
จาก 1 เป็นสิ่งที่คุณต้องการและโซลูชันทั่วทั้งระบบที่กว้างขึ้น:
สำหรับทัชแพดไดรเวอร์บางตัวอนุญาตการปรับแต่งความไวในการเลื่อนเช่นGPointingDeviceSettings (ตัวตายตัวแทน GSynaptics)
สำหรับหนูปัจจุบัน Gnome ไม่สามารถให้ผู้ใช้ปรับความเร็วล้อเมาส์ได้ มันเป็นคุณสมบัติที่ต้องการซึ่งรู้จักกันในชื่อ วิธีแก้ปัญหาคือการใช้แฮ็กหรือเจาะลึกเข้าไปในไฟล์กำหนดค่าและอาจมีการคอมไพล์ใหม่ ไม่สนุกถ้าคุณจำเป็นต้องปรับค่าจนกว่าคุณจะพบความสะดวกสบาย
เพียงถอดปลั๊กเมาส์ (ของฉันเป็นแบบไร้สาย) แล้วเสียบกลับเข้าไปใหม่เพื่อแก้ไขปัญหานี้
ฉันค้นหาเป็นเวลานานสำหรับการแก้ไขนี้และแม้กระทั่งรีบูตเครื่องเพื่อประโยชน์
บางทีการปิดเต็มรูปแบบอาจแก้ไขปัญหาได้
สำหรับ Ubuntu 12.10 ฉันพบว่ามันต่างออกไปเล็กน้อยสำหรับ Firefox
เปิดabout:config
(พิมพ์ลงในแถบที่อยู่) และค้นหา:
mousewheel.min_line_scroll_amount
จากนั้นเปลี่ยนหมายเลขที่เกี่ยวข้อง Mine ถูกตั้งค่าเป็น 5 ฉันเปลี่ยนเป็น 60 และทำงานตามที่ฉันต้องการในตอนนี้
ใน Firefox 19 ให้เรียกใช้about:config
ในแถบที่อยู่แล้วปรับเปลี่ยนพารามิเตอร์mousewheel.min_line_scroll_amount
ให้สูงขึ้น (50) คุณไม่ต้องรีสตาร์ท FF
Chromium Wheel Smooth Scroller
ใน Chrome นี่คือ The Soluttion: https://chrome.google.com/webstore/detail/chromium-wheel-smooth-scr/khpcanbeojalbkpgpmjpdkjnkfcgfkhb
ยอดเยี่ยมเพียง!
ฉันมี Firefox 42.0 ที่นี่และฉันใช้ทัชแพดเพื่อเลื่อน
ฉันพบว่าฉันต้องการปรับการเลื่อนระยะทางฉันสามารถเปลี่ยน:
mousewheel.default.delta_multiplier_y
ในabout:config
. 100
ค่าเริ่มต้นของมันคือ ค่าที่มากขึ้นจะเลื่อนเพิ่มเติม / เร็วขึ้น
หากคุณใช้สองนิ้วบนทัชแพดเพื่อเลื่อนคุณสามารถใช้synclient
เพื่อปรับความไวของทั้งระบบได้
หากคุณยังไม่ได้ติดตั้ง:
sudo apt-get install xserver-xorg-input-synaptics
หากต้องการดูเกณฑ์ความไวในปัจจุบันให้ตรวจสอบผลลัพธ์ของ:
synclient -l | grep ScrollDelta
หากต้องการทำให้มีความไวมากขึ้นให้ลดค่า:
synclient VertScrollDelta=33
ซึ่งหมายความว่าคุณต้องเลื่อนนิ้วของคุณน้อยลงเพื่อส่งกิจกรรมการเลื่อนแต่ละครั้ง
หากคุณต้องการย้อนกลับทิศทางการเลื่อนเช่น "การเลื่อนแบบธรรมชาติ" ของ Mac OS X ให้ตั้งค่าเป็นลบ
แต่โปรดทราบว่านี่จะไม่อนุญาตให้คุณกำหนดค่าระยะห่างขั้นต่ำที่เลื่อนเมื่อคุณเลื่อนนิ้วของคุณเพียงเล็กน้อย ต้องกำหนดค่าต่อแอป (หรืออาจจะเป็นต่อสภาพแวดล้อมแบบเดสก์ท็อป)
แม้ว่าเคล็ดลับการถอดปลั๊ก / จะแก้ไขปัญหานี้ไม่ได้เป็นทางออกที่ดีจริงๆ
ทางออกหนึ่งที่ฉันพบคือการเพิ่ม
xinput set-prop 10 'Evdev Scrolling Distance' 10 10 10
ในตอนท้ายของ.profile
ไฟล์ของฉัน(หรือที่ใดก็ตามที่มันถูกเรียกใช้งานหนึ่งครั้งต่อการเข้าสู่ระบบแบบกราฟิก)
ในกรณีที่เมาส์ Microsoft ของฉันค่าเริ่มต้นเป็น1 1 1
สิ่งที่อ่อนไหวเกินไป
10 10 10
ถูกต้องสำหรับฉัน
ฉันไม่ได้ใช้เวลาในการดูว่าแต่ละหมายเลขหมายถึงอะไรจริง ๆ
set-prop
คือ ID อุปกรณ์ (ฉันเชื่อ) คุณสามารถตรวจสอบได้ด้วยรายการ xinput คุณจะเห็นรหัสอุปกรณ์ตามรายการ รับคุณสมบัติที่พร้อมใช้งานด้วยxinput list-props [id]
Linux Desktop Way
สำหรับผู้ที่ต้องการที่จะแก้ไขได้
เขียนคำสั่งที่ละเอียดถี่ถ้วนเกี่ยวกับวิธีการเพิ่มScroll Ratio
ผ่านแหล่งข้อมูล libinput:
https://github.com/up-to-you/linux_notes/blob/master/mouse/scroll_speed.md
สำหรับผู้ที่เกลียดgithub
( gitlab
funs?) ทำซ้ำที่นี่ (ใช้งานได้กับเมาส์ใด ๆ ):
ค้นหาไฟล์ libinput
sudo updatedb
ll $(locate -A libinput.so)
เป็นไปได้มากว่า Canonical จะส่ง libinput ด้วย snaps
sudo snap list
sudo snap remove gnome-3-28-1804
ตรวจสอบ libinput นั้น lefts เฉพาะในโฟลเดอร์ระบบเช่น:
/usr/lib/x86_64-linux-gnu/libinput.so
/usr/lib/x86_64-linux-gnu/libinput.so.10
/usr/lib/x86_64-linux-gnu/libinput.so.10.13.0
ll $(locate -A libinput.so)
โคลนแหล่ง libinput
git clone https://gitlab.freedesktop.org/libinput/libinput
cd libinput
src/evdev.c
ปรับเปลี่ยน ค้นหาevdev_read_wheel_click_props
ฟังก์ชั่นและ init angles.y = 361
;
static inline struct wheel_angle
evdev_read_wheel_click_props(struct evdev_device *device)
{
struct wheel_angle angles;
const char *wheel_count = "MOUSE_WHEEL_CLICK_COUNT";
const char *wheel_angle = "MOUSE_WHEEL_CLICK_ANGLE";
const char *hwheel_count = "MOUSE_WHEEL_CLICK_COUNT_HORIZONTAL";
const char *hwheel_angle = "MOUSE_WHEEL_CLICK_ANGLE_HORIZONTAL";
/* CLICK_COUNT overrides CLICK_ANGLE */
if (evdev_read_wheel_click_count_prop(device, wheel_count, &angles.y) ||
evdev_read_wheel_click_prop(device, wheel_angle, &angles.y)) {
evdev_log_debug(device,
"wheel: vert click angle: %.2f\n", angles.y);
}
if (evdev_read_wheel_click_count_prop(device, hwheel_count, &angles.x) ||
evdev_read_wheel_click_prop(device, hwheel_angle, &angles.x)) {
evdev_log_debug(device,
"wheel: horizontal click angle: %.2f\n", angles.y);
} else {
angles.x = angles.y;
}
// since, src/util-prop-parsers.c : abs(angle) > 360
angles.y = 361;
return angles;
}
src/libinput.c
ปรับเปลี่ยน ค้นหาlibinput_event_pointer_get_axis_value_discrete
ฟังก์ชั่นและใช้อัตราส่วนการเลื่อนตามที่คุณต้องการ:
LIBINPUT_EXPORT double
libinput_event_pointer_get_axis_value_discrete(struct libinput_event_pointer *event,
enum libinput_pointer_axis axis)
{
struct libinput *libinput = event->base.device->seat->libinput;
double value = 0;
require_event_type(libinput_event_get_context(&event->base),
event->base.type,
0.0,
LIBINPUT_EVENT_POINTER_AXIS);
if (!libinput_event_pointer_has_axis(event, axis)) {
log_bug_client(libinput, "value requested for unset axis\n");
} else {
switch (axis) {
case LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL:
// x5 ratio for horizontal scrolling
value = event->discrete.x * 5;
break;
case LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL:
// x5 ratio for vertical scrolling
value = event->discrete.y * 5;
break;
}
}
return value;
}
เตรียมไดเรกทอรีการสร้าง (จำเป็นต้องติดตั้งการอ้างอิง):
meson --prefix=/usr builddir/ -Ddocumentation=false
รวบรวมและติดตั้ง:
ninja -C builddir/ && sudo ninja -C builddir/ install
ยืนยันตำแหน่ง:
sudo updatedb
ll $(locate -A libinput.so)
ออกจากระบบ / เข้าสู่ระบบใช้