Увеличение скорости прокрутки


40

Я недавно перешел на Ubuntu, и меня беспокоит только одна вещь - скорость прокрутки, которую я не могу изменить. В Windows у меня было около 7 строк, но в Ubuntu, похоже, около 3, и его нельзя изменить. Как я могу изменить скорость?

Ответы:


26

Если это только для сети, вы можете изменить скорость прокрутки в FireFox:

  • EditМеню> Preferences> Advancedвкладка> Browsingгруппа: отключить плавную прокрутку

Тонкая настройка:

  • Введите введите about:configв адресной строке
  • Найти и изменить mousewheel.withnokey.sysnumlinesна ЛОЖЬ
  • Затем измените mousewheel.withnokey.numlinesот 1 до того, что вы хотите.

И более общее общесистемное решение:


3
Для всей системы.
Kironide

5
Просто отключите и снова подключите разъем мыши. Это сработало для меня.
Эйртон Собрал

3
Да. Это сработало и для меня. Я использовал беспроводную мышь. Сначала я попытался выключить и включить питание мыши, но это не помогло. Затем я отключил USB-адаптер, подождал несколько секунд, а затем снова подключил.

1
@AirtonSobral Это довольно странно! Сработало и для меня, за исключением того, что в моем случае мое колесо прокрутки перескочило на всю длину страницы (слишком быстро) Теперь все гладко! :)
Web_Designer

1
Этот ответ актуален?
Ахорн

26

Просто отключите мышь (у меня была беспроводная), а затем подключите ее снова, чтобы решить эту проблему.

Я долго искал это исправление и даже перезагрузил машину безрезультатно.

Возможно полное отключение решило бы проблему.


2
Это сработало и для меня. Это немного раздражает, что я должен делать это при каждом запуске, ну да ладно, по крайней мере, это работает.
Тамас Селеи

2
Полное отключение не сработало для меня, но отключение и повторное включение работали! Надеюсь, мне не нужно делать это каждый цикл перезапуска.
TechplexEngineer

4
Вау, это сработало и для меня с беспроводной мышью Microsoft, которая слишком быстро прокручивалась. Я отключил ключ Bluetooth и снова подключил его, и прокрутка стала идеальной. Удивительно, что исправить это было так просто.
Джерри

Конечно, нет способа полностью выразить мою благодарность в течение жизни, поэтому я просто скажу СПАСИБО, это работает.
AndreasT

Нашел идеальное решение. Нет больше отключить и подключить. Используйте resetmsmice и пакет Ubuntu
Ted Feng

15

Для Ubuntu 12.10 я обнаружил, что он немного отличается от работы Firefox.

Откройте about:config(введите его в адресную строку) и найдите:

mousewheel.min_line_scroll_amount

Затем измените номер, связанный с ним. Мой был установлен на 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идентификатор устройства (я полагаю.) Вы можете проверить это с помощью списка xinput. Вы увидите ваши идентификаторы устройств, перечисленные в порядке. Получите доступные свойства сxinput list-props [id]
emf

Вот что означают параметры Evdev: unix.stackexchange.com/a/442666
Сэм

0

Для тех, кто предпочитает это исправить Linux Desktop Way.

Написал исчерпывающую инструкцию о том, как добавить Scroll Ratioчерез исходники libinput:

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

Для тех, кто ненавидит github( gitlabприколы?), Продублировано здесь (работает для любой мыши):

найти файлы libinput

sudo updatedb
ll $(locate -A libinput.so)

скорее всего, Canonical поставляет свои библиотеки libinput с оснасткой

sudo snap list
sudo snap remove gnome-3-28-1804

проверьте, что libinput остается только в системной папке, например: /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

Modify src/evdev.c . Найти evdev_read_wheel_click_propsфункцию и инициализацию 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;
}

Modify 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)

Выйти / Войти, использовать.


0

Этот урок работал для меня:

  1. Откройте терминал и запустите: sudo apt-get install imwheel
  2. gedit ~/.imwheelrc
  3. Вставьте это, сохраните и закройте gedit:

    ".*"
    None,      Up,   Button4, 3
    None,      Down, Button5, 3
    Control_L, Up,   Control_L|Button4
    Control_L, Down, Control_L|Button5
    Shift_L,   Up,   Shift_L|Button4
    Shift_L,   Down, Shift_L|Button5
    
  4. imwheel --kill --buttons "4 5"

  5. Добавить предыдущую строку в ~/.bashrc

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.