Обратное направление прокрутки двумя пальцами (естественная прокрутка)?

Прокрутка с двумя пальцами работает нормально, но есть ли способ, которым я могу изменить направление (естественная прокрутка)? Похоже, в противоположность тому, как это делает OSX.

19 ответов

Я не знаю, какую версию Ubuntu вы используете, но в 13.04 (и я думаю, в 12.10) это возможно через настройки сенсорной панели.

Итак, сначала откройте Системные настройки> Мышь и сенсорная панель. Как видно на скриншоте ниже, если есть опция для контента, прикрепленного к пальцам, отметьте его. Тогда полосы прокрутки будут работать в обратном направлении.


Это также доступно через DConf Editor. Идти к org.gnome.settings-daemon.peripherals.touchpad и проверить natural-scroll,


Вы также можете установить эту опцию в командной строке:

gsettings set org.gnome.settings-daemon.peripherals.touchpad natural-scroll true

Есть несколько способов включить для системы обратную или естественную прокрутку для мыши. Только два способа, которые я попробовал, включат его для всех окон, включая gedit, терминал, центр программного обеспечения, nautilus и другие. Самый простой способ сделать это - сделать следующее. Для этого метода потребуется последняя версия драйвера xserver-xorg-input-evdev, которую вы можете получить здесь. Я знаю, что это будет работать, потому что я использую его и проверил его до написания этой версии руководства, которое я ранее написал для Fedora 21. Убедитесь, что в Ubuntu-Tweak отключена обратная прокрутка, иначе вы не увидите эффекта изменений. Кроме того, для тех пользователей, которые не хотят использовать естественную прокрутку в вашей системе сейчас, когда обратная прокрутка будет распространяться на всю систему, эти пользователи могут использовать эту опцию, чтобы отключить естественную прокрутку для каждого пользователя. Теперь, чтобы начать...

Обновите / установите Evdev до последней версии и перезагрузите компьютер, прежде чем продолжить это руководство.

Получите идентификатор устройства мыши, запустив в терминале следующее:

xinput list

Возьмите тот номер, который вы получили (просто номер после "id=") и замените "{идентификатор устройства}" на этот номер в следующей команде:

xinput list-props {device id} | grep "Scrolling Distance"

Он чувствителен к регистру, если вы не используете -i в команде grep. Запишите числа, которые вы найдете в выводе этой команды (в моем случае это был номер 1, показанный три раза и разделенный запятыми). Вы будете использовать отрицательные значения чисел, которые вы получите в своем выводе. Кроме того, обязательно запишите номер свойства (он будет указан в скобках в выходных данных; в моем случае это было (272) в Ubuntu и (273) в Fedora).

Примечание. Если вы не получите вывод, содержащий свойство "Расстояние прокрутки", этот метод не будет работать для вас, и вам необходимо остановиться здесь и перейти к альтернативному способу, показанному под этим руководством.

Выполните следующую команду в вашем открытом терминале:

sudo touch /usr/share/X11/xorg.conf.d/20-natural-scrolling.conf

Теперь запустите следующую команду (вы можете использовать ваш любимый текстовый редактор вместо nano, но я использую nano):

sudo nano /usr/share/X11/xorg.conf.d/20-natural-scrolling.conf

В файле, который вы открыли в предпочитаемом вами текстовом редакторе, вставьте следующее (но не забудьте изменить числа на те же числа, разделенные запятыми, которые вы получили на шаге 3; в моем случае это было 1, поэтому я поставил -1):

Section "InputClass"
        Identifier "Natural Scrolling"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Option "VertScrollDelta" "-1"
        Option "HorizScrollDelta" "-1"
        Option "DialDelta" "-1"
EndSection

Сохраните файл и выйдите из текстового редактора. Нет необходимости в перезагрузке. Просто введите следующую команду (подставив номер свойства и отрицательные числа, полученные на третьем шаге, и идентификатор устройства, полученный на втором шаге):

xinput set-prop {device id} {property number} -1 -1 -1

Возможно, вам придется выйти из nautilus и перезапустить nautilus на некоторых системах (пропустите это, если в nautilus работает естественная прокрутка после выполнения вышеуказанной команды). Нажмите Alt+F2 и выполните каждую из этих команд отдельно:

nautilus -q

nautilus -n

Это оно! Теперь у вас должна быть общесистемная естественная прокрутка, которая будет постоянной.

Альтернативный метод:

Если вы не хотите устанавливать последнюю версию Evdev (или, если ваша мышь не имеет свойства "Расстояние прокрутки" даже в последней версии Evdev), вы можете сделать следующее:

Выполните следующую команду в вашем открытом терминале:

sudo touch /usr/share/X11/xorg.conf.d/20-natural-scrolling.conf

Теперь запустите следующую команду (вы можете использовать ваш любимый текстовый редактор вместо nano, но я использую nano):

sudo nano /usr/share/X11/xorg.conf.d/20-natural-scrolling.conf

В файле, который вы открыли в предпочитаемом вами текстовом редакторе, вставьте следующее:

Section "InputClass"
        Identifier "natural scrolling for mouse wheel"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Driver "mouse"
        Option "Device" "/dev/input/mice"
        Option "Protocol" "Auto"
        Option "ZAxisMapping" "5 4"
EndSection

Сохраните файл и перезагрузитесь. Как и выше, отдельные пользователи могут отключить его для каждого пользователя с помощью Ubuntu-Tweak для "включения" естественной прокрутки (это будет противоположно общесистемным настройкам для каждого пользователя, но не повлияет на фактическая настройка системы для других пользователей, которые захотят использовать естественную прокрутку).

Примечание: альтернативный метод здесь не будет работать, если у вас установлена ​​последняя версия Evdev, например, в Fedora 22. Используйте метод Evdev выше. Также обратите внимание: ни один метод не будет работать с libinput в Wayland. Вам понадобится альтернативный способ сделать это для каждого пользователя или иным образом. При использовании libinput обязательно удалите файлы, созданные, как указано выше, и создайте элемент запуска в файле рабочего стола. После создания файла рабочего стола, поместите следующее в строку Exec (обязательно используйте идентификатор устройства для вашей мыши и номер свойства naturalscrolling для вашей мыши при использовании libinput; мой идентификатор устройства был 11, а свойство было 272; настройте соответственно).

sh -c "сон 5; exec xinput set-prop 11 272 1"

После этого сохраните файл и выйдите из системы. При повторном входе в систему у вас должна быть естественная прокрутка для каждого пользователя или вы можете установить ее в автозапуске для всех пользователей.

Самый простой и ИМХО лучший способ добиться этого в Ubuntu 12.10 и выше - это (не тестировать его в 12.04 и ниже) для редактирования конфигурации synaptics:

sudoedit /usr/share/X11/xorg.conf.d/50-synaptics.conf

16.04 скопируйте этот файл в /etc/X11/xorg.conf.d/50-synaptics.confзатем отредактируйте:

cp /usr/share/X11/xorg.conf.d/50-synaptics.conf /etc/X11/xorg.conf.d/
sudoedit /etc/X11/xorg.conf.d/50-synaptics.conf

добавить эти строки в Section "InputClass"Identifier "touchpad catchall":

        Option "VertScrollDelta" "-111"
        Option "HorizScrollDelta" "-111"

Так что это выглядит следующим образом:

Section "InputClass"
        Identifier "touchpad catchall"
        Driver "synaptics"
        MatchIsTouchpad "on"
        Option "VertScrollDelta" "-111"
        Option "HorizScrollDelta" "-111"
# ...

Перезагрузитесь (или читайте дальше) и получайте удовольствие от естественной прокрутки:)

Если вы хотите попробовать свои настройки без перезагрузки, вы можете использовать synclient

synclient VertScrollDelta=-111
synclient HorizScrollDelta=-111

Изменения вступают в силу немедленно, но не останутся после перезагрузки, если вы не добавите их в 50-synaptics-conf файл.

Примечание для GNOME или Cinnamon:

Если вы используете GNOME или Cinnamon Desktop Manager, есть большая вероятность, что настройки GNOME/Cinnamon могут переопределить ваши пользовательские настройки. Чтобы настройки GNOME/Cinnamon не изменили ваши настройки, откройте dconf Editor [dconf-editor] и отредактируйте следующую запись:

/org/gnome/settings-daemon/plugins/mouse/
or
/org/cinnamon/settings-daemon/plugins/mouse/

Снимите флажок активный.

PS:

Значением по умолчанию является 111 и это указывает на скорость, это означает, что вы можете играть со значением, чтобы настроить скорость прокрутки в соответствии с вашими предпочтениями. Придавая ему отрицательное значение, можно просто прокрутить в обратном направлении.

ОБНОВЛЕНИЕ: Это решение не работает для приложений, использующих GTK3, таких как основные приложения Gnome, такие как Nautilus (файловый браузер). См . Ответ Д. Чарльза Пайла ниже для обходного пути, который работает во всех приложениях. Или следуйте за ошибкой в ​​Gnome 682457, чтобы узнать, как выполнить исправление ядра, которое не требует обходных путей.

Вы можете использовать " Естественную прокрутку ", чтобы иметь обратную прокрутку в масштабе всей системы.

Что такое естественная прокрутка?

Natural Scrolling - это апплет GNOME, позволяющий изменить направление прокрутки. Вы нажимаете пальцами вверх для перемещения содержимого страницы вверх (и вниз для вниз), как на устройствах с iOS. Больше не перемещайте полосы прокрутки, кроме своего файла.

Установите Natural Scrolling:

Natural Scrolling можно установить из своего PPA.

Нажмите Alt + Ctrl + T, чтобы открыть терминал и выполнить следующие команды:

sudo add-apt-repository ppa: zedtux / naturalscrolling
sudo apt-get update
sudo apt-get установить naturalscrolling

Как включить Natural Scrolling?

После установки нажмите Super key (ключ Windows), чтобы открыть Unity Dash, найдите "естественную прокрутку" и откройте его. Вы увидите новый индикатор на панели Unity, нажмите на него и выберите свое устройство. В настройках вы можете настроить его запуск при входе в систему. Это оно!

введите описание здесь

В Ubuntu 14.04 перейдите в раздел "Мышь и сенсорная панель" и выберите "Естественная прокрутка".

введите описание здесь

Обратная прокрутка, о которой вы говорите, называется "естественной прокруткой" и может быть включена несколькими различными способами в Ubuntu. Вот статья о OMG! Ubuntu! подробно о том, как установить программное обеспечение, которое даст вам то, что вам нужно. Если вы знакомы с Ubuntu Tweak, вы также можете включить его в последней версии.

Получить идентификатор устройства с помощью:

xinput list

Получить числа из этой команды:

xinput list-props {device id} | grep "Scrolling Distance"

Например, пример вывода:

Synaptics Scrolling Distance (290): 102, 102

Здесь числа 102, 102 представляют наш интерес. В вашем случае они будут чем-то другим. Просто положите отрицательные числа в приведенном ниже конфиге.

Отредактируйте ~/.profile и поместите эти строки в конец файла.

synclient VertScrollDelta=-102
synclient HorizScrollDelta=-102

Выйти и войти, естественная прокрутка должна работать нормально.

Самый простой способ установить естественную прокрутку для всей системы и для ее работы со всеми системными приложениями - это настроить следующие файлы.

Только сенсорные панели:

/usr/share/X11/xorg.conf.d/20-natural-scrolling-touchpads.conf

Section "InputClass"
    Identifier "Natural Scrolling Touchpads"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    Option "VertScrollDelta" "-111"
    Option "HorizScrollDelta" "-111"
EndSection

Только для мышей:

/usr/share/X11/xorg.conf.d/20-natural-scrolling-mouses.conf

Section "InputClass"
    Identifier "Natural Scrolling Mouses"
    MatchIsPointer "on"
    MatchIsTouchpad "off"
    MatchDevicePath "/dev/input/event*"
    Option "VertScrollDelta" "-1"
    Option "HorizScrollDelta" "-1"
    Option "DialDelta" "-1"
EndSection

Для обоих мышей и сенсорных панелей создайте оба файла.

Затем перезагрузите компьютер.

Преимущество использования одной из этих двух конфигураций заключается в том, что они не зависят от устройства. Вы можете подключить другие мыши, сенсорные панели или клавиатуры с сенсорными панелями, и это будет работать.

Приложение Natural Scrolling, упомянутое в ответе Башарата Сиала, не исправляет естественную прокрутку в определенных системных окнах.

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

Пожалуйста, следуйте приведенным ниже инструкциям, чтобы система широко изменила прокрутку.

  1. На терминале напишите: xev -event mouse, Вы получите одну маленькую коробочку, и когда вы поместите мышь в этот раздел, вы получите много данных, генерируемых в Терминале.
  2. При прокрутке вверх обратите внимание на название кнопки, скажем, "х" (в моем случае это кнопка 5). Также запишите название кнопки при прокрутке вниз, скажем, "у". в моем случае это "4".
  3. Создать резервную копию ~/.Xmodmap файл с помощью cp ~/.Xmodmap ~/.Xmodmap.bak,
  4. Делать cat ~/.Xmodmap, Выход будет как pointer = 1 2 3 5 4 6 7 8 9 10 11 12
  5. В вышеприведенном выводе найдите x и y, и они будут в последовательном положении и просто поменяйте их местами. В моем случае echo "pointer = 1 2 3 4 5 6 7 8 9 10 11 12" > ~/.Xmodmap && xmodmap ~/.Xmodmap работал. Примечание выключатель 4 а также 5,
  6. Теперь прокрутка будет применяться во всей системе. Нет необходимости перезагружаться.

Вы также можете использовать инструмент Ubuntu Tweak, чтобы включить естественную прокрутку (разные настройки)

Официальная домашняя страница с дистрибутивом.deb: http://ubuntu-tweak.com/

Пакет Naturalscrolling не работает для Ubuntu 12.10. Я установил Ubuntu Tweak:

sudo add-apt-repository ppa:tualatrix/ppa
sudo apt-get update
sudo apt-get install ubuntu-tweak

и вы можете настроить прокрутку в

Твики -> Разное -> Естественная прокрутка

Основанный на этом блоге, скрипт ниже работал для меня на Ubuntu 12.04. Он устанавливает масштабные коэффициенты горизонтальной и вертикальной прокрутки сенсорной панели как на отрицательные значения (что обычно обеспечивает "естественную" прокрутку). Он делает это "под капотом", поэтому все ваши приложения будут затронуты, даже те, которые не обращают внимания на настройки, настроенные tweakUI. Здесь есть несколько ненужных команд и комментариев, чтобы вы могли видеть, что происходит. Возможно, вы захотите отключить любые естественные настройки прокрутки в TweakUI или аналогичные.

xinput list | grep "[Tt]ouch" | grep "id=([0-9]+)"
# ⎜   ↳ SynPS/2 Synaptics TouchPad                  id=11    [slave  pointer  (2)]
id=`xinput list | grep -Po "[Tt]ouch[^=]*id=[0-9]+" | grep -Po [0-9]+`
xinput --list-props $id | grep "Scrolling Distance"
# Synaptics Scrolling Distance (269):    -107, -107
# Synaptics Circular Scrolling Distance (282):    0.100000
prop_id=`xinput --list-props $id | grep -P ".*[^C][^i][^r][^c][^u][^l][^a][^r]\sScrolling Distance" | grep -Po '\([0-9]+\)' | grep -Po "[0-9]+"`
prop_xy=xinput --list-props $id | grep -P ".*[^C][^i][^r][^c][^u][^l][^a][^r]\sScrolling Distance" | grep -Po '\s+[-+]{0,1}[0-9]+\,\s*[-+]{0,1}[0-9]+' | tr -d '-'
xinput --list-props $id |  -P ".*[^C][^i][^r][^c][^u][^l][^a][^r]\sScrolling Distance" | grep -Po '\s+[-+]?[0-9]+[,]?' | tr -d '-' | tr -d ',' | tr ' \t' '-' | xargs xinput --set-prop $id $prop_id
nautilus -q
nautilus -n &

В более новых версиях GNOME (начиная с версии 3.6) установка расширения больше не требуется. Его можно найти в стандартных настройках GNOME "Mouse and Touchpad". Тем не менее, несколько странно, что гноместеры решили назвать это "Контент прилипает к пальцам".

Итак, у меня была Firefox прокрутка в одну сторону, а Evolution прокрутка в другую. Я установил естественную прокрутку в Системных настройках, но обнаружил, что в некоторых приложениях Ubuntu настраивает естественную прокрутку. Мне нужно, чтобы обе настройки системы И настройка Ubuntu были настроены на естественную прокрутку, чтобы получить универсальную прокрутку в одном направлении, в противном случае они, кажется, сражаются друг с другом. Мне понадобилось много часов, чтобы понять это.

Это работало на Mate и, вероятно, в других средах, у которых нет простой опции для этого в панели управления.

Добавьте эту строку вручную, если у вас уже есть файл.Xmodmap.

# standard
echo "pointer = 1 2 3 4 5 6 7 8 9 10 11 12" > ~/.Xmodmap && xmodmap .Xmodmap


# "natural"
echo "pointer = 1 2 3 5 4 6 7 8 9 10 11 12" > ~/.Xmodmap && xmodmap .Xmodmap

12.04.5

sudo add-apt-repository ppa:zedtux/naturalscrolling
sudo apt-get update
sudo apt-get install naturalscrolling

Начните с поиска с помощью приложения Natural Scrolling

Щелкните правой кнопкой мыши его значок в правом верхнем меню. Natural Scrolling> ваше устройство

Кроме того, Настройки> начать при входе в систему

Я использовал Альтернативный метод @D. Чарльз Пайл упоминается, но с небольшой модификацией:

Option "ZAxisMapping" "4 5" 

вместо

Option "ZAxisMapping" "5 4"

Ubuntu 14.04, GNOME, Logitech Optical Mouse

Я только что получил новую Локатор E5570, которая связана с ошибкой # 1590590 (среди прочего...:\), и в этом комментарии было представлено очень быстрое и простое решение:

~ /.Xinputrc

xinput set-button-map "ImPS / 2 Generic Wheel Mouse" 1 2 3 5 4 6 7

таким образом, только направление прокрутки двумя пальцами нераспознанной сенсорной панели будет инвертировано, в то время как направление прокрутки колес внешней мыши не будет изменено.

Кроме того, из-за некоторой ошибки в unity / gnome не все приложения правильно интерпретируют команды.xinputrc /.Xmodmap. Так, например, chrome / firefox будет в порядке, но окна nautilus будут по-прежнему использовать "естественную" прокрутку, независимо от содержимого.xinputrc /.Xmodmap. Я не нашел решения для устранения этих несоответствий.

Единственным реальным решением, конечно, будет правильная поддержка нашей сенсорной панели на уровне ядра.

Другие вопросы по тегам