Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I yank to system clipboard in Kakoune?

Tags:

yank

kakoune

If I yank a word in kakoune, how do I paste it into another editor (e.g. gedit)?

I have read How to make vim paste from (and copy to) system's clipboard? since vim is very similar but kakoune does not have any * register.

like image 453
Ford O. Avatar asked Dec 30 '16 13:12

Ford O.


2 Answers

In case all the links go away this is the complete solution:

<a-|> xsel --input --clipboard <ret>

Explanation:

  • <a-|> pipes the current selection to what follows.
  • xsel is a program for manipulating X's clipboard.
  • --input tells xsel to read from stdin.
  • --clipboard tells xsel which 'selection' store to use. There are three of them and you want 'clipboard' in order to paste elsewhere.

This will work on Linux. Not sure about MacOS, I'd imagine piping to pbcopy would Just Work.

EDIT: To make live easier define a key binding in User mode like so (in your .kakrc):

map global user y '<a-|>xsel -i -b<ret>'

Now you can select the text and press ,y to yank to the system clipboard. The leading comma tells Kakoune to look for the key binding in User mode.

like image 141
harm Avatar answered Sep 28 '22 20:09

harm


To add to the accepted answer, according to the documentation if your version of Kakoune is post July 2020 then you can add the following hook to your kakrc:

hook global RegisterModified '"' %{ nop %sh{
  printf %s "$kak_main_reg_dquote" | xsel --input --clipboard
}}
like image 32
Concrete_Buddha Avatar answered Sep 28 '22 19:09

Concrete_Buddha