fauxClip is a Vim plugin allowing to define custom registers, with primary goal of providing a pseudo clipboard support for versions of Vim compiled without +clipboard.
Default utilities for clipboard yank and paste are:
xclip
(on Linux with X server, or WSL)xsel
(fallback toxclip
)pbcopy
+pbpaste
(on macOS)clip.exe
+powershell.exe Get-Clipboard
(on Windows)wl-copy
+wl-paste
(on Linux with Wayland)
Assuming you are on Linux, using Tmux, xclip
is installed, and you didn't
change any of fauxClip's defaults, then the dictionary with commands for
registers will be set as following:
let g:fauxClip_regcmds = {
\ '+': {
\ 'yank': 'xclip -f -i -selection clipboard',
\ 'paste': 'xclip -o -selection clipboard',
\ },
\ '*': {
\ 'yank': 'xclip -f -i',
\ 'paste': 'xclip -o',
\ },
\ ']': {
\ 'yank': 'tmux load-buffer -',
\ 'paste': 'tmux save-buffer -',
\ }
\ }
By manually setting any of the items you can overwrite the defaults, or craft your own registers:
let g:fauxClip_regcmds = {
\ '!': {
\ 'paste': 'echo "Bang!"'
\ }
\ }
Note: to disable clipboard registers *
and +
you need to explicitly set
them to empty strings.
To set different "register" for Tmux than ]
:
let g:fauxClip_tmux_reg = 't'
If for some reason you don't want to suppress error messages from clipboard
command (e.g. xclip
's empty clipboard), then:
let g:fauxClip_suppress_errors = 0
If Vim is compiled with +clipboard, but you want to use custom commands regardless, then:
let g:fauxClip_always_use = 1
Plug 'Jorengarenar/fauxClip'
cd ~/.vim/pack/plugins/start
git clone git://github.com/Jorengarenar/fauxClip.git
curl --create-dirs -L https://raw.githubusercontent.com/Jorengarenar/fauxClip/master/plugin/fauxClip.vim -o ~/.vim/plugin/fauxClip.vim