TIL GNU/linux has 2 clipboards

mFat@lemdro.id to Linux@lemmy.ml – 204 points –

Pretty sure most of you already know this but for those who don't: you have two clipboards in Linux. One is the traditional clipboard where you copy with control c and paste with control v. The other one is when you highlight text and use the mouse middle click to paste text.

More details here.

82

Is this applicable for Wayland as well? That link makes several references to X and its ecosystem of tools.

If I understand it correctly, Wayland only specifies a single clipboard but no primary. But most (all?) wayland compositors implement an additional protocol that's also supported by the toolkits (gtk, qt, ...) and programs like wl-clipboard.

So yes, wayland also has clipboard + primary. But no secondary, as far as I found. Though I never used secondary on X anyway.

Ironically neither GNU nor Linux has a clipboard (well GNU Emacs probably has like 37 of them for some reason). "Primary selection" (the other clipboard that people don't tell you about) started off on X11, which of course had to implement by XFree86, which became Xorg, and then it copied (ha ha) by other non-X-related software like gpm and toolkits like GTK when using Wayland.

Emacs's regular clipboard is the "kill ring" which also allows you to retrieve any previously cut/copied text. It also has "registers" where you can store and retrieve snippets of text, which can be considered clipboards when used for this purpose. Registers can be referenced by any character you can type on your keyboard, including control characters like ^D.

This totals... a lot of clipboards.

Not going to lie, I hate the middle click clipboard and disable it ASAP. I really dislike the idea that it copies things without my explicit permission.

I don't believe anything is actually copied until you request it to be pasted. The clipboards in Linux mark where the data is, and don't actually initiate a copy until there's a destination.

https://wiki.archlinux.org/title/clipboard

Yes. You can test this by selecting something, closing that window and attempting to paste. It won't work. Closing the window removes the information about what was highlighted, so there is nothing to paste. If it were to copy upon selection you'd still be able to paste.

It's one of the things that I hated at first when moving from Windows, but then I got so used to it I just can't live without it. Whenever I use Windows, I would try to quickly copypaste text using selection, doing so for 5-10 seconds, until I realise this is not a thing on this OS.

Ditto. And sometimes I use both the Ctrl+C and middle-click clipboards at the same time, when I want to copy two chunks of text. Like this:

  • Select chunk A, press Ctrl+C
  • Select chunk B
  • Shift window
  • Paste chunk B through middle-click
  • Paste chunk A through Ctrl+V

Windows and KDE Plasma both have CMD + V to show a list of all things that have been copied. So I always just do Ctrl + C, Ctrl + C, Ctrl + V, CMD + V -> down arrow -> enter. Though on KDE Plasma you will need another Ctrl + V to actually do the pasting after you have selected the value to paste, whereas on Windows selecting the value also pastes it. But the workflows are very similar.

Huh, I do not have CMD + V for clipboard contents in Plasma with Klipper. What distro is configuring that?

I am assuming by CMD you mean Superkey. If not, I would like to know. I looked at Klipper shortcuts and didnt find it in there either.

By CMD, I mean the windows key. I am using Opensuse Tumbleweed. I thought I was just using the default clipboard, but I guess I'm not 100% sure.

Well I guess it is configured that way on my EndeavorOS laptop, so I wonder what I need to do to enable it. My desktop has been rolling for 4 years, maybe they added that at some point along the way.

I will give it a look an check it out. Been awhile since I used Suse. Totally cool. Oh and I meant the windows key. A lot of Linux folks call it the super key.

I guess I was using the Mac term for it. I use all three heavily, so they all get mixed up on my head.

Lol I have gotten so used to it that I can barely use web terminals that don't support it

I actually like the feature but could you explain how you disabled it? I've tried to merge all three clipboards into one a few years ago and couldn't make it work

KDE has the option to disable middle click paste, so I do that. Out of sight, out of mind

Whenever I use a touchpad without physical buttons, I usually disable the middle button entirely. It's more of a hammer-to-mosquito solution than what you were asking, but it's as easy as adding this command to the autostart file (on Xorg): xinput set-button-map "Name-of-your-Touchpad-goes-here" 1 0 3 4 5 6 7, where "Name-of-your-Touchpad-goes-here" can be found with xinput list --name-only.

I use auto scroll a lot, middle click paste is generally an immediate no for me.

How do middle-click-to-paste and middle-click-to-scroll conflict? In Firefox I can click-to-paste if the cursor is over an input field and click-to-scroll anywhere else. Never had any problem with this behavior.

How do middle-click-to-paste and middle-click-to-scroll conflict?

Some of us are clumsy.

That's not something I thought about. Good thing that you can disable the feature then

How did you setup auto scroll? It doesn't work for me.

You can't in most apps but Firefox allows it. It requires an app to specifically enable the behavior instead. It's terrible.

Neat, he?

It's a pain when you switch between Windows and Linux all the time and you can't do the middle click in Windows.

Tbf, lots of things in Windows are a pain when you're used to Linux.

Correction: Lots more things are a pain...

But on the other hand, many things that you take for granted on Windows are a pain on Linux. For example, if you want to see advertisements, you can't just open the Start menu.

Just simply...At least in Cinnamon, I can mouse over the audio icon on the panel and roll the scroll wheel to change the volume. Last time I tried it on Windows, you had to click the icon first. While that alone doesn't sound like much, the whole OS is like that, needing extra little interactions for basically everything. Now that I'm used to using Cinnamon, using Windows feels like walking in beach sand.

I believe they added this in windows recently. Otherwise I absolutely agree though.

I'll admit the "last time I tried it on Windows" has been at least two major versions ago. I've never owned a computer with Windows 10 and never used a computer with Windows 11.

Is it possible to have have a Windows 10-like clipboard in Mint? Where you can copy multiple stuff with ctrl+c and then press super+v to have a dropdown of things that you copied with a possiblity to pin some of them?

What your talking about is called a clipboard manager, and there are tons of them out there. All with varying features.

Klipper on KDE offers a clipboard history. Don't know about other DEs.

1 more...

Oh, that explains why my steamdeck layout randomly pastes text when I'm trying to use a mmb shortcut on my dang browser

And then there is the "clipboard" (copy paste function) in the nano text editor being a third

Vim also has it's own clipboard

You can also configure vim to use the first clipboard (works with nvim but never tested on vim).

I knew and use this, but I never thought to call it two clipboards :)

Plus I'd never heard of shift-ins, I just used ctrl-shift-c/v in graphic terminals :P

Ohhhhh!!!! IT WORKS!

This will be so usefull in the future.

This user, at least, has not touched a mouse in a decade. Young people do not even know what a mouse is.

It's like a rat but cute, right??

btw do you know how to press Ctrl on my keyboard? I have already found the key of C, they're all white and sound good, kind of like an organ, but I can't see any Ctrl key. Also, do I need to press the entire key of C at once to copy? It's gonna sound intense! But I haven't learned using all 10 fingers yet for the keyboard. I only use two, so it will be hard to press them all at once while also pressing Ctrl once I find it! Is it one of those black keys? Actually I haven't even heard about the key of V yet... So I can't paste before I've learned a lot more! I've only learned A to D by now. And btw how do I compile in C#? Is keyboard really supposed to be so hard to use???

Clipboard managers often have an option to synchronize them. There are standalone tools as well, autocutsel for example.

On my arch install with hyperland, clip boards have been by far the hardest thing to setup. I finally got a basic clipboard manger working using clipman and wofi. But tbh I don't really understand how that's working.

My main issues though have been trying to copy from one with vim open to other terminal with vim. Copying from vim elsewhere using y(yank) works fine. Copying elsewhere into vim works great. But vim to vim will not work for me.

Also trying to find a way to make copying text out of a terminal running tmux not so overly complex and tedious.

For copying from Tmux, I recommend tmux-yank. There are also multiple plugins allowing you to copy predefined set of text types (IP adresses, URLs, etc...). I'm currently using tmux-thumbs. Note that you have to set custom command in tmux-thums to actually copy the text to xclip or whatever you are using. example in my dotfiles

I have tmux-thumbs, but only been able to use it a few times. Apparently most of what I need to copy is not ip's and URLs. But this tmux-yank looks like what I'm looking for. I'll give it a try. Thanks.

This has been a thing for like ever. Throws me off a lot in Windows when I just want a temporary clipboard to search something and nothing comes up.

I think PowerShell abides by it, but that's it.

I didn't realize they were different. I always thought my copy failed and tried to use one copy with the other paste.

Please stop calling it gun/Linux UNLESS you also use

  • Firestone/bus
  • chisel/David
  • vacuum/Danielle Smith

Etc.

I don't understand a single example you gave. I always call it Linux. But, what?

Linux is the kernel, useless without actual programs to run on it. In general the minimal set of programs to make a Linux system actually useful (cd, ls, cat, ...) are provided by the coreutils package, a GNU project.

RMS, the founder of GNU, was pissed that people were using Linux + his software and simply calling it Linux, so he insisted that the proper generic name for "Linux" distributions was actually "GNU/Linux" (i.e. GNU utilities + Linux kernel).

OP's joke is that we name stuff without specifying their components or needed tools all the time, so we shouldn't bother doing it for Linux.

Yeah, I understood all of that. I didn't understand the examples. Chisel, David, etc..

Michelangelo's David is a well-known marble statue which was carved using a chisel.

I don't get it, why would you even be mad about someone referring it as GNU/Linux?

In that case it's even just either X org or the wayland compositor that may implement that, not "linux".

Please stop lecturing people about how to talk.

But why would you call this linux when this is not linux specific thing anyway

I mean, we live in a world where there are multiple use cases for non-GNU/Linux (i.e. Alpine). Surely the distinction has become useful.

Yes, thank you! Just call it Linux.

I think going of out your way to type four more letters shows appropriate appreciation for the historical significance of the GNU project.

I think that sort of pedantry over semantics is one of the reasons the Linux community has such a bad reputation.

You vlassifying it as "pedantry" supports my point. It's also ironic, considering you told somebody else to not call it GNU+Linux instead of the other way around.

pedantry over semantics

Just call it Linux

Pick one.

1 more...