summaryrefslogtreecommitdiff
path: root/user/vim
diff options
context:
space:
mode:
authorMartin Fischer <martin@push-f.com>2025-06-16 17:30:51 +0200
committerMartin Fischer <martin@push-f.com>2025-06-18 21:00:46 +0200
commitc8c85adc361d48d770fc5a5da86d06cd5809951f (patch)
treee01850bccee2902c5817ea0f3bd28ce1e6a549c0 /user/vim
parentf2a1ac7744b95f8913a46dd5b535bfcb4cf1a06f (diff)
fix(workstation): make vim use system clipboard
Diffstat (limited to 'user/vim')
-rw-r--r--user/vim/vimrc16
1 files changed, 16 insertions, 0 deletions
diff --git a/user/vim/vimrc b/user/vim/vimrc
index 8c85c4e..952f863 100644
--- a/user/vim/vimrc
+++ b/user/vim/vimrc
@@ -3,5 +3,21 @@ syntax on
" Don't break words in the middle.
set linebreak
+" Enable easy copying between different vim instances.
+set clipboard=unnamed
+
+" Wayland clipboard workaround (see https://github.com/vim/vim/issues/5157).
+if !empty($WAYLAND_DISPLAY) && executable('wl-copy') && executable('wl-paste')
+ " enable focus reporting
+ let &t_fe = "\<Esc>[?1004h"
+ let &t_fd = "\<Esc>[?1004l"
+
+ augroup wl-clipboard
+ autocmd!
+ autocmd FocusLost * if @" != '' | call system('wl-copy --trim-newline', @") | endif
+ autocmd FocusGained * let @" = system('wl-paste -n')
+ augroup END
+endif
+
" Enable pasting with middle mouse click in insert mode.
set mouse=