การเพิ่มความเร็วในการเลื่อน


39

ฉันเพิ่งเปลี่ยนมาใช้ Ubuntu และสิ่งหนึ่งที่รบกวนฉันคือความเร็วในการเลื่อนซึ่งฉันไม่สามารถเปลี่ยนแปลงได้ ใน windows ฉันเคยตั้งค่าไว้ประมาณ 7 บรรทัด แต่ดูเหมือนว่าจะอยู่ที่ประมาณ 3 บน Ubuntu และไม่สามารถเปลี่ยนแปลงได้ ฉันจะเปลี่ยนความเร็วได้อย่างไร

คำตอบ:


25

หากเป็นเพียงสำหรับเว็บคุณสามารถเปลี่ยนความเร็วการเลื่อนใน FireFox:

  • Editเมนู> Preferences> Advanced> แท็บBrowsingกลุ่ม: ปิดการใช้งานเลื่อนเรียบ

ปรับจูน:

  • พิมพ์ enter about:configในแถบที่อยู่
  • ค้นหาและเปลี่ยนmousewheel.withnokey.sysnumlinesเป็น FALSE
  • จากนั้นเปลี่ยนmousewheel.withnokey.numlinesจาก 1 เป็นสิ่งที่คุณต้องการ

และโซลูชันทั่วทั้งระบบที่กว้างขึ้น:

  • สำหรับทัชแพดไดรเวอร์บางตัวอนุญาตการปรับแต่งความไวในการเลื่อนเช่นGPointingDeviceSettings (ตัวตายตัวแทน GSynaptics)

  • สำหรับหนูปัจจุบัน Gnome ไม่สามารถให้ผู้ใช้ปรับความเร็วล้อเมาส์ได้ มันเป็นคุณสมบัติที่ต้องการซึ่งรู้จักกันในชื่อ วิธีแก้ปัญหาคือการใช้แฮ็กหรือเจาะลึกเข้าไปในไฟล์กำหนดค่าและอาจมีการคอมไพล์ใหม่ ไม่สนุกถ้าคุณจำเป็นต้องปรับค่าจนกว่าคุณจะพบความสะดวกสบาย


3
สำหรับทั้งระบบ
Kironide

5
เพียงถอดปลั๊กแล้วเสียบที่ช่องเสียบเมาส์อีกครั้ง มันใช้งานได้สำหรับฉัน
Airton Sobral

3
ใช่. มันก็ใช้ได้ผลสำหรับฉันเช่นกัน ฉันกำลังใช้เมาส์ไร้สาย ก่อนอื่นฉันพยายามปิดและเปิดเมาส์ แต่นั่นก็ไม่ได้ช่วย จากนั้นฉันถอดอะแดปเตอร์ usb รอประมาณสองสามวินาทีแล้วต่อสายอีกครั้ง

1
@AirtonSobral มันค่อนข้างแปลก! ทำงานให้ฉันด้วยเช่นกันยกเว้นในกรณีของฉันล้อเลื่อนของฉันจะกระโดดยาวเต็มหน้า (เร็วเกินไป) ตอนนี้มันราบรื่น! :)
Web_Designer

1
คำตอบนี้ทันสมัยหรือไม่?
ahorn

26

เพียงถอดปลั๊กเมาส์ (ของฉันเป็นแบบไร้สาย) แล้วเสียบกลับเข้าไปใหม่เพื่อแก้ไขปัญหานี้

ฉันค้นหาเป็นเวลานานสำหรับการแก้ไขนี้และแม้กระทั่งรีบูตเครื่องเพื่อประโยชน์

บางทีการปิดเต็มรูปแบบอาจแก้ไขปัญหาได้


2
สิ่งนี้ใช้ได้สำหรับฉันเช่นกัน มันน่ารำคาญนิดหน่อยที่ฉันต้องทำสิ่งนี้ในการเริ่มต้นทุกครั้ง แต่โอเคอย่างน้อยก็ใช้ได้
Tamás Szelei

2
การปิดเต็มรูปแบบไม่ได้ผลสำหรับฉัน แต่การถอดและการถอดปลั๊กทำงานได้! ฉันหวังว่าฉันไม่จำเป็นต้องทำสิ่งนี้ทุกรอบการรีสตาร์ท
TechplexEngineer

4
ว้าวสิ่งนี้ใช้ได้กับฉันด้วยเมาส์ Microsoft Wireless ที่เลื่อนเร็วเกินไป ฉันถอดปลั๊กดองเกิลบลูทู ธ แล้วเสียบใหม่อีกครั้งและการเลื่อนก็สมบูรณ์แบบ น่าทึ่งที่การแก้ไขเป็นเรื่องง่าย
เจอร์รี่

แน่นอนว่าไม่มีวิธีที่จะแสดงความกตัญญูของฉันอย่างเต็มที่ในช่วงชีวิตดังนั้นฉันจะบอกว่าขอบคุณมันใช้ได้เลย
AndreasT

พบทางออกที่สมบูรณ์แบบ ไม่มีการถอดปลั๊กและเสียบอีกต่อไป ใช้resetmsmiceและแพ็คเกจ Ubuntu
Ted Feng

15

สำหรับ Ubuntu 12.10 ฉันพบว่ามันต่างออกไปเล็กน้อยสำหรับ Firefox

เปิดabout:config(พิมพ์ลงในแถบที่อยู่) และค้นหา:

mousewheel.min_line_scroll_amount

จากนั้นเปลี่ยนหมายเลขที่เกี่ยวข้อง Mine ถูกตั้งค่าเป็น 5 ฉันเปลี่ยนเป็น 60 และทำงานตามที่ฉันต้องการในตอนนี้


1
ขอบคุณ! ฉันพบตัวเลือกนั้น แต่ไม่ได้ลองตัวเลขที่สูงอย่างเช่น 10 แต่ด้วยการเลื่อนอย่างนุ่มนวลดูเหมือนว่าตัวเลขที่สูงกว่านั้นจะมีความเร็วในการเลื่อนที่เพียงพอ ขณะนี้มีการตั้งค่าของฉันเป็น 100
nem75

5

ใน Firefox 19 ให้เรียกใช้about:configในแถบที่อยู่แล้วปรับเปลี่ยนพารามิเตอร์mousewheel.min_line_scroll_amountให้สูงขึ้น (50) คุณไม่ต้องรีสตาร์ท FF



2

ฉันมี Firefox 42.0 ที่นี่และฉันใช้ทัชแพดเพื่อเลื่อน

ฉันพบว่าฉันต้องการปรับการเลื่อนระยะทางฉันสามารถเปลี่ยน:

mousewheel.default.delta_multiplier_y

ในabout:config. 100ค่าเริ่มต้นของมันคือ ค่าที่มากขึ้นจะเลื่อนเพิ่มเติม / เร็วขึ้น


1

หากคุณใช้สองนิ้วบนทัชแพดเพื่อเลื่อนคุณสามารถใช้synclientเพื่อปรับความไวของทั้งระบบได้

หากคุณยังไม่ได้ติดตั้ง:

sudo apt-get install xserver-xorg-input-synaptics

หากต้องการดูเกณฑ์ความไวในปัจจุบันให้ตรวจสอบผลลัพธ์ของ:

synclient -l | grep ScrollDelta

หากต้องการทำให้มีความไวมากขึ้นให้ลดค่า:

synclient VertScrollDelta=33

ซึ่งหมายความว่าคุณต้องเลื่อนนิ้วของคุณน้อยลงเพื่อส่งกิจกรรมการเลื่อนแต่ละครั้ง

หากคุณต้องการย้อนกลับทิศทางการเลื่อนเช่น "การเลื่อนแบบธรรมชาติ" ของ Mac OS X ให้ตั้งค่าเป็นลบ

แต่โปรดทราบว่านี่จะไม่อนุญาตให้คุณกำหนดค่าระยะห่างขั้นต่ำที่เลื่อนเมื่อคุณเลื่อนนิ้วของคุณเพียงเล็กน้อย ต้องกำหนดค่าต่อแอป (หรืออาจจะเป็นต่อสภาพแวดล้อมแบบเดสก์ท็อป)


เฉพาะในอุปกรณ์ Synaptic - ใช้ไม่ได้กับ ALPS หรือผู้ผลิตทัชแพดรายอื่น ๆ
Wyatt8740

0

แม้ว่าเคล็ดลับการถอดปลั๊ก / จะแก้ไขปัญหานี้ไม่ได้เป็นทางออกที่ดีจริงๆ

ทางออกหนึ่งที่ฉันพบคือการเพิ่ม

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]
emf

นี่คือความหมายของ Evdev params: unix.stackexchange.com/a/442666
Sam

0

Linux Desktop Wayสำหรับผู้ที่ต้องการที่จะแก้ไขได้

เขียนคำสั่งที่ละเอียดถี่ถ้วนเกี่ยวกับวิธีการเพิ่มScroll Ratioผ่านแหล่งข้อมูล libinput:

https://github.com/up-to-you/linux_notes/blob/master/mouse/scroll_speed.md

สำหรับผู้ที่เกลียดgithub( gitlabfuns?) ทำซ้ำที่นี่ (ใช้งานได้กับเมาส์ใด ๆ ):

ค้นหาไฟล์ 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)

ออกจากระบบ / เข้าสู่ระบบใช้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.