The thing I missed most after leaving Windows was not a program. It was a keystroke. Win+V, and the last twenty things I had copied were right there.
Linux itself was never the hard part. I grew up on it, in a way: schools in Kerala run IT@School GNU/Linux, a distro KITE built for the state syllabus, so my first Linux desktop was handed to me in a computer lab. Years later I switched off Windows properly, started on Linux Mint, moved to Ubuntu after about a year, and stayed. Between writing software and building electronics, it is simply the machine that gets out of my way.
Except for the clipboard.
Everything I tried first
I went through most of the clipboard managers people recommend. Some did not survive a Wayland session. Some worked but felt like a settings dialog with a list stapled to it. I settled on Diodon for a few years, which was fine in the way a spare tyre is fine. It held my history and I stopped thinking about it.
On my Mac I use Clipy, and I never stopped thinking about that one. It gets a small thing right that almost nothing on Linux does: the menu opens where my mouse already is. No trip to a panel icon, no separate window. Press the hotkey, the list is under the pointer, pick an item, it pastes into whatever I was typing in.
So the goal was not "a clipboard manager". I already had one of those.
The goal was Clipy's muscle memory, on Ubuntu.
What I built
I spent a weekend on it, with Claude doing a lot of the typing, and ended up with a GNOME Shell extension called Clipix. It is open source, GPL-3.0.
Everything you copy goes into a history, newest first, grouped into folders of ten the way Clipy does it. Open a folder, press a number, done.
The features, briefly:
- Text and images, deduplicated, newest first
- History grouped into folders of ten, entries numbered
- Snippets: folders of text you paste often
- Number keys pick an entry without touching the mouse
- Picking an item pastes it straight into the focused window
- A panel icon carrying the same menu, if you prefer clicking
Super+Shift+V opens it at the pointer. Super+Shift+B opens just the snippets.
Snippets are the other half of Clipy I use daily. Mine are mostly the same handful of commands and boilerplate I retype in embedded projects, sitting in folders so they are two keys away.
The part that was not fun
Two things ate most of the weekend, and neither was the clipboard.
The first: GNOME keeps extension code in memory for the whole login session. Change one line, and disabling and re-enabling the extension happily runs the old code anyway. Under Wayland there is no way around it. Log out, log back in, test one change, repeat. I logged out more times that weekend than in the previous month.
The second was better. I clicked the panel icon and nothing happened. No error, no crash, just a menu that would not open. It turned out GNOME refuses to open an empty menu, and I was filling the menu in the handler that only runs after it opens. So it stayed empty, so it refused to open, so it stayed empty. Building the list before the click instead of after fixed it in about four lines.
The bug was not in the clipboard code. It never is.
Where it stands
I have been using it as my daily clipboard manager since the weekend, and Diodon is uninstalled. It handles text, screenshots, and the snippets I actually reach for, which was the whole point.
If you have been putting up with a clipboard manager you tolerate rather than like, the honest lesson is that the gap between the two was one weekend. I put it off for years.
Clipboard history and snippets for GNOME Shell.
Discussion 0 comments
Be kind. I read everything but might take a day or two to reply.