장치별로 다른 스크롤 방향 설정 Ubuntu 18.04 Gnome

장치별로 다른 스크롤 방향 설정 Ubuntu 18.04 Gnome

저는 워크스테이션에서 마우스와 키보드 콤보를 기본 입력 장치로 사용합니다.

컴퓨터가 TV에도 연결되어 있습니다. 저는 TV를 시청하면서 터치패드가 있는 저렴한 키보드를 사용하는 것을 좋아합니다. 브랜드는 없지만 뒷면에는 이렇게 적혀 있습니다.

Wireless Keyboard
Model: ST-WK600
Art. nr.: IW.48.788

저는 MacBook의 "자연스러운 스크롤"에 익숙했기 때문에 이를 터치패드에도 사용하고 싶었습니다.

그러나 마우스가 기본적으로 작동하도록 하고 싶습니다.

gnome-control-center마우스와 터치패드에 대해 하나의 설정만 표시됩니다. 기기별로 스크롤 동작을 설정할 수 있나요?

그놈 제어 센터

편집: hwinfo --short출력, 관련 부분으로 축소.

보시다시피 여기에는 내 Logitech 키보드, MCE USB 수신기 및 가 포함되어 있습니다. unknown: Keyboard controller터치패드 섹션이 없고 /dev/input/mice하나의 장치만 나열되어 있으므로 키보드 터치패드 콤보인 것으로 의심됩니다.

keyboard:
/dev/input/event6    Logitech LX710 Cordless Desktop Laser
/dev/input/event17   MCE IR Keyboard/Mouse (mceusb)
mouse:
/dev/input/mice      Logitech LX710 Cordless Desktop Laser
unknown:
                    FPU
                    DMA controller
                    PIC
                    Keyboard controller
                    Intel 7 Series/C216 Chipset Family MEI Controller #1
                    Intel 7 Series/C216 Chipset Family SMBus Controller
                    Feature Integration Technology Inc. (Fintek) F71610A or F71612A Consumer Infrared Receiver/Transceiver
/dev/input/event2    P&E Micro Smart Control
                    ASUSTek BCM20702A0

편집 2: xinput list출력. 이러한 장치 중 하나는 HLHB155터치패드여야 합니다.

$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ HLHB155 V1 10 27 01 Smart Control         id=10   [slave  pointer  (2)]
⎜   ↳ HLHB155 V1 10 27 01 Smart Control         id=11   [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver                     id=14   [slave  pointer  (2)]
⎜   ↳ MCE IR Keyboard/Mouse (mceusb)            id=16   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ HLHB155 V1 10 27 01 Smart Control         id=9    [slave  keyboard (3)]
    ↳ Media Center Ed. eHome Infrared Remote Transceiver (1934:5168)    id=12   [slave  keyboard (3)]
    ↳ Logitech USB Receiver                     id=13   [slave  keyboard (3)]
    ↳ Eee PC WMI hotkeys                        id=15   [slave  keyboard (3)]
    ↳ HLHB155 V1 10 27 01 Smart Control         id=17   [slave  keyboard (3)]
    ↳ Logitech USB Receiver                     id=18   [slave  keyboard (3)]
    ↳ MCE IR Keyboard/Mouse (mceusb)            id=19   [slave  keyboard (3)]

답변1

gsettings set org.gnome.desktop.peripherals.mouse natural-scroll false
gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll true

당신이 받는 경우그런 열쇠는 없어, 실행 dconf및 검색스크롤또는스크롤.

답변2

이것은 실제 해결책은 아니지만 책상(마우스 및 100%) 스위치와 소파(트랙패드 및 200%) 스위치 간에 디스플레이 확대/축소 및 마우스 방향을 전환하기 위해 제가 작성한 작은 Python 스크립트가 있습니다.

도움이 되길 바랍니다.

#!/usr/bin/python3

import subprocess
import sys

current = subprocess.check_output([
    'gsettings',
    'get',
    'org.gnome.desktop.interface',
    'scaling-factor'
])

if current == b'uint32 2\n':
    scale = 1
    natural = 'false'
elif current == b'uint32 1\n':
    scale = 2
    natural = 'true'
else:
    sys.exit('cannot determine current scale')

subprocess.call([
    'gsettings',
    'set',
    'org.gnome.desktop.interface',
    'scaling-factor',
    '%d' % (scale,)
])
subprocess.call([
    'gsettings',
    'set',
    'org.gnome.settings-daemon.plugins.xsettings',
    'overrides',
    "{'Gdk/WindowScalingFactor': <%d>}" % (scale,)
])
subprocess.call([
    'gsettings',
    'set',
    'org.gnome.desktop.peripherals.mouse',
    'natural-scroll',
    natural
])

관련 정보