Windows上でスクロール可能な大きなテキストコンテナを持つほとんどのプログラム(すべてのブラウザ、ほとんどのワードプロセッシングプログラム、IDE)では、マウスの中央ボタンを押してマウスを動かしてスクロールできます。このスクロールは非常に滑らかで、マウスだけを使ってすばやくスクロールできます。
Linuxを使用するときラップトップ、2本の指スクロールはほぼ同じ機能を実行します。ページをすばやく下にスクロールするのは簡単ですが(マウスホイールを回転させるよりもはるかに高速です)、正確な位置を指定できるほどスクロールはまだ滑らかです。
マウスを使ってデスクトップでLinuxを実行するときに同じ効果を得る方法がわかりません。幅広いインターネット検索でわかる限り、Windowsスタイルのマウスの中ボタン操作に切り替えるアプリケーション固有の設定や、同じ効果を得るためのシステム全体の設定はありません。
これに関連して説明するために関連がある場合は、Firefox、Google Chrome、GeditのコンテキストでMint(自宅で使用)またはUbuntu(職場で使用)の最新バージョンをリクエストするとします。そしてEclipse。しかし、私はこれがディストリビューションとアプリケーションに独立した問題だと思います。
私が知っている限り、スクロールオプションは次のとおりです。
- マウスホイールでスクロール - ゆっくり!
- PgUp / PgDnキーを使用 - 一度に遠くにジャンプするので、正確な位置決めには使用できず、マウスを使用するのと同じくらい快適ではありません。
- 以前のWindows PCで2ボタンマウスを使用したように、画面の右側にあるスクロールバーを上下にドラッグします。実際はそうですが、巨大なワイドスクリーンでWindowsスタイルのマウスの中でボタンをスクロールするよりもはるかに不便です。カーソルを画面の中央からスクロールバーに移動してから戻ってくるのにほとんどの時間を費やす必要があります。もう一度後ろにスクロールすると、私が見ようとしていることから目を回す必要があります。実際にこれを順次実行しています。
これらのどれも私を満足させません!このUIの問題は、デスクトップでLinuxを楽しむのを妨げる唯一の問題であり、マウスの代わりにラップトップのタッチパッドを使用したいと思います。これが私を迷惑にしてしまったので、私はこの問題を解決するいくつかの基本的なLinux UI機能が欠けているか、それとも敏感なオタクで他人を悩ませないという結論に達しました。どちらか分からない。
だから私の質問は次のようになります
- Windowsスタイルのマウスの中ボタンスクロール機能はLinuxの世界のどこにでも存在しますか、それとも純粋にWindowsに固有のものですか?特に、Windowsスタイルのスクロールを使用できるLinux Webブラウザがありますか?
- Linuxには存在するがWindowsには存在しないスクロールページメカニズム、特に私が説明した役割を果たすメカニズムはありますか?
- 私が逃した他の解決策はありますか?
答え1
おっしゃった機能は「自動スクロール」です。マウスの中ボタンを押しながらマウスを動かしてスムーズなスクロールができます。 Linuxでこれを行う(マウスの中ボタンを押す)のデフォルトの動作は、通常テキストを貼り付けることです。
ただし、Firefoxにはデフォルト設定があり、Chrome / Chromiumにはマウスの中央ボタンを使用してスクロールしてこの機能を有効にする拡張機能があります。
Firefoxブラウザ
「オプション」タブを開きます:「ל」(メニューを開く)→「オプション」。
「一般」に移動します(「一般」はデフォルトで開いている必要があります)。
下にスクロールして「参照」を選択します。 「参照」の下に「自動スクロールを使用」オプションがあります。 Firefoxでこの機能を有効にするには、この横にチェックマークを付けます。
または、検索ボックスを使用して「autoscroll」を検索してください。
クロム/クロム
Chrome / Chromiumの場合は、「AutoScroll」(kaescripts.blogspot.comで提供)と呼ばれる拡張機能を使用できます。
行くChromeウェブストアのこのリンク(明らかにChrome / Chromiumを使用しています)
この拡張機能をインストールするには、「+ CHROMEに追加」ボタンをクリックしてください。
確認ダイアログボックスで、追加をクリックします。
電子申請
Visual Studio Code、Spotify、Discordなどの一部のElectronアプリケーションでは、--enable-blink-features=MiddleClickAutoscroll
実行パラメータに追加できます。自動スクロールは、プログラムがそれをサポートするElectronバージョンを実行しているかどうかに応じて有効になります。
その他のアプリ
他のアプリではまだ解決策が見つかりませんでした。それにもかかわらず、ほとんどの問題は長いWebページが原因で発生し、FirefoxとChrome / Chromiumの両方にソリューションがあります。
答え2
これはすべてのアプリケーションで機能するため、何もインストールする必要はありません。
入力デバイスIDを取得します。私の場合は11時です。
xinput list
必要に応じて利用可能な属性を一覧表示しますxinput list-props <deviceID>
。 libinput(将来/現在)を使用すると、ほぼすべての属性が次から始まります。ライブラリ入力。 ~のためevdev
確認する私の答えはここにあります。
そしてlibinput
マウスプロパティの設定
xinput set-prop 11 "libinput Scroll Method Enabled" 0, 0, 1 # This is button
xinput set-prop 11 "libinput Button Scrolling Button" 2 # This is middle mouse. Already 2 by default
説明man libinput
:
- libinputスクロール方式が有効3つのブール値(8ビット、0、または1)、つまり「2本指」、「一番上」、「ボタン」。このデバイスで現在アクティブなスクロール方法を示します。
- libinputボタンスクロールボタン1つの32ビット値。ボタンスクロールに使用するボタン番号を設定します。この設定はスクロール方式とは別です。ボタンスクロールを有効にするには、メソッドをボタンスクロールに設定し、有効なボタンを設定する必要があります。
- これを追加できますシェルスクリプトに追加してログイン時に実行します。
- マウスホイールと同様に押しながら同じ動作をすると、Ctrlページが拡大/縮小されます。Ctrl + 0初期化。
- これはXで動作しますおそらくウェイランドと。
答え3
試してみてください:Firefoxで自動スクロール
firefox > preferences > search auto scroll and enable it
バニラのUbuntuに付属のFirefoxでは、マウス設定をさらに調整したい場合は時々無効になっています(下記のコントロールパネルに表示されています)。GNOME調整ツールのインストール
2番目のオプション:
- マウスの中ボタン操作を変更してx入力。
- 入力デバイスと周辺機器を検出するには、次のコードを入力します。
x 入力リスト
xinput set-prop 9 "libinput スクロール方式を有効にする" 0, 0, 1
- 次に、中央ボタンを押して、垂直スクロール(大きなテキスト/文書)があるアプリケーションでマウスを上下に動かすと、マウスがどのように動作するかを確認します。
答え4
Pablo Aの答えが最高だと思って自動化することにしました(Firefoxだけでなく、すべてのアプリで動作するため)。
このファイルをスクリプト(たとえば~/setup_middle_click_scrolling.sh
)として保存し、を使用して実行可能にしてからchmod +x
実行します(実行後に削除できます)。中間クリックスクロールをサポートし、起動スクリプトも追加するので、ログインするたびにその機能を使用できます。
#!/bin/bash
# Enables middle click to scroll (like Windows).
set -e
: ${SCRIPT_PATH:=~/.config/autostart/middle_click_to_scroll.sh}
: ${DESKTOP_PATH:=~/.config/autostart/middle_click_to_scroll.desktop}
# Create dirs if they don't exist.
echo "$SCRIPT_PATH" "$DESKTOP_PATH" | xargs dirname | xargs mkdir -p
# Create a script that can be run on-demand.
# When run, it enables middle-click to scroll.
cat > "$SCRIPT_PATH" << EOF
#!/bin/bash
# Get device IDs of all devices containing "pointer"
pointer_ids=(\$(xinput list | grep pointer | perl -p -e 's@.*?id=(\d+).*@\1@'))
for pointer_id in "\${pointer_ids[@]}"; do
# If the pointer supports scroll method, set middle click to scroll
if xinput list-props "\$pointer_id" | grep 'Scroll Method Enabled' &>/dev/null; then
xinput set-prop "\$pointer_id" 'libinput Scroll Method Enabled' 0 0 1
fi
done
EOF
chmod +x "$SCRIPT_PATH"
# Create a desktop entry so it runs on startup.
cat > "$DESKTOP_PATH" << EOF
[Desktop Entry]
Type=Application
Name=Middle click to scroll
Exec="$SCRIPT_PATH"
X-GNOME-Autostart-Phase=Initialization
Terminal=false
NoDisplay=true
EOF
"$SCRIPT_PATH"
コメントにいる人がこれがすべてのシステムで機能していることを指摘できることを願っています。しかし、私はXFCE
++libinput
標準の3ボタンマウス設定で動作します。