docs: rewrite the readme in plain words
This commit is contained in:
1 parent
af82ffec78
commit
46e63e9faa
1 file changed
+24
-37
@@ -1,21 +1,27 @@
|
|||||||
# middleclick-autoscroll
|
# middleclick-autoscroll
|
||||||
|
|
||||||
Middle-click autoscroll for Linux. Hold the middle mouse button, move the
|
Middle-click autoscroll is a CLI for Linux that enables autoscroll in every application that supports it.
|
||||||
mouse, the page scrolls — like on Windows. Works with browsers, Electron apps,
|
Works with browsers, Electron apps like Discord and Spotify, Steam, and anything else that runs on Chromium under the hood.
|
||||||
Flatpaks, snaps, Steam, and anything else that runs on Chromium under the hood.
|
|
||||||
|
|
||||||
No app list to maintain. The program looks at what's actually installed, figures
|
There is no app list. My tool just looks at what uses chromium under the hood and applies the necessary steps to get it working.
|
||||||
out what's Chromium-based, and handles it.
|
|
||||||
|
|
||||||
## Installing
|
## How to install
|
||||||
|
|
||||||
**Arch, CachyOS, EndeavourOS, Manjaro**
|
**Arch**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
paru -S middleclick-autoscroll
|
yay -S middleclick-autoscroll
|
||||||
```
|
```
|
||||||
|
|
||||||
**Debian, Ubuntu, Linux Mint, Pop!_OS**
|
**Fedora**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo curl -fsSL -o /etc/yum.repos.d/middleclick-autoscroll.repo \
|
||||||
|
https://felitendo.github.io/middleclick-autoscroll/middleclick-autoscroll.repo
|
||||||
|
sudo dnf install middleclick-autoscroll
|
||||||
|
```
|
||||||
|
|
||||||
|
**Debian**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo install -d -m 0755 /etc/apt/keyrings
|
sudo install -d -m 0755 /etc/apt/keyrings
|
||||||
@@ -26,14 +32,6 @@ echo "deb [signed-by=/etc/apt/keyrings/middleclick-autoscroll.gpg] https://felit
|
|||||||
sudo apt update && sudo apt install middleclick-autoscroll
|
sudo apt update && sudo apt install middleclick-autoscroll
|
||||||
```
|
```
|
||||||
|
|
||||||
**Fedora, RHEL, CentOS Stream**
|
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo curl -fsSL -o /etc/yum.repos.d/middleclick-autoscroll.repo \
|
|
||||||
https://felitendo.github.io/middleclick-autoscroll/middleclick-autoscroll.repo
|
|
||||||
sudo dnf install middleclick-autoscroll
|
|
||||||
```
|
|
||||||
|
|
||||||
**openSUSE**
|
**openSUSE**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -43,30 +41,24 @@ sudo zypper addrepo --gpgcheck --refresh \
|
|||||||
sudo zypper install middleclick-autoscroll
|
sudo zypper install middleclick-autoscroll
|
||||||
```
|
```
|
||||||
|
|
||||||
Then run `middleclick-autoscroll enable`. That's it — nothing else to configure.
|
## How to use
|
||||||
|
|
||||||
Updates come through your package manager like anything else. Without a package,
|
Just run `middleclick-autoscroll`. This will open the configuration TUI that looks like this:
|
||||||
build [from source](#building-from-source) or grab a `.deb`/`.rpm` from the
|
|
||||||
[releases page](https://github.com/Felitendo/middleclick-autoscroll/releases).
|
|
||||||
|
|
||||||
Run `middleclick-autoscroll disable` before removing the package — it undoes
|
//
|
||||||
everything.
|
|
||||||
|
|
||||||
## How it works
|
## How it works
|
||||||
|
|
||||||
Blink (the engine in Chromium, Electron, and CEF) already has autoscroll, but
|
Blink (the engine in Chromium, Electron, and CEF) already has autoscroll, but
|
||||||
it's off on Linux because middle click does primary-selection paste there. One
|
it's off on Linux because middle click does primary-selection paste there. This
|
||||||
flag turns it on:
|
flag turns it on:
|
||||||
|
|
||||||
```
|
|
||||||
--enable-blink-features=MiddleClickAutoscroll
|
--enable-blink-features=MiddleClickAutoscroll
|
||||||
```
|
|
||||||
|
|
||||||
Doing that for one app is a five-minute job. Doing it for *all* of them — across
|
But doing that for every app is kinda bothersome and it also might break with updates.
|
||||||
flag files, desktop entries, Flatpaks, snaps, autostart entries, Steam — so it
|
That's why I created this small tool to automate that.
|
||||||
survives upgrades, is not. That's what this does.
|
|
||||||
|
|
||||||
New apps are picked up within a second by a systemd path unit that watches the
|
New apps are picked up by a systemd path unit that watches the
|
||||||
relevant directories. Without systemd, `middleclick-autoscroll apply` does the
|
relevant directories. Without systemd, `middleclick-autoscroll apply` does the
|
||||||
same thing manually.
|
same thing manually.
|
||||||
|
|
||||||
@@ -75,15 +67,12 @@ same thing manually.
|
|||||||
Steam's web UI supports autoscroll but has no way to pass extra arguments to its
|
Steam's web UI supports autoscroll but has no way to pass extra arguments to its
|
||||||
helper, so the program patches the script that starts it. Steam checks its own
|
helper, so the program patches the script that starts it. Steam checks its own
|
||||||
files at every start and repairs whatever looks changed, so the patch is written
|
files at every start and repairs whatever looks changed, so the patch is written
|
||||||
to look unchanged: the bytes the argument costs come back out of the script's
|
to look unchanged.
|
||||||
comments and the timestamp is restored, leaving a file exactly as long and as old
|
|
||||||
as Steam left it. It survives however you start Steam — the menu, a desktop
|
|
||||||
shortcut, a game launcher, a terminal.
|
|
||||||
|
|
||||||
As a fallback, for the case where that isn't possible, `-noverifyfiles` goes on
|
As a fallback, for the case where that isn't possible, `-noverifyfiles` goes on
|
||||||
everything that starts Steam: its launcher, its autostart entry, and the
|
everything that starts Steam: its launcher, its autostart entry, and the
|
||||||
shortcuts it writes for single games. That one means Steam won't auto-repair
|
shortcuts it writes for single games. That one means Steam won't auto-repair
|
||||||
damaged files on its own — you can turn it off separately in the settings.
|
damaged files on its own just so you're aware of that.
|
||||||
|
|
||||||
## Commands
|
## Commands
|
||||||
|
|
||||||
@@ -97,8 +86,6 @@ damaged files on its own — you can turn it off separately in the settings.
|
|||||||
| `… status` | What's covered |
|
| `… status` | What's covered |
|
||||||
| `… list` | All apps and how they're handled |
|
| `… list` | All apps and how they're handled |
|
||||||
|
|
||||||
See `man middleclick-autoscroll` for more.
|
|
||||||
|
|
||||||
## Building from source
|
## Building from source
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
Reference in new issue
Block a user