| scripts | ||
| video | ||
| .gitignore | ||
| CHANGELOG.md | ||
| LICENSE.md | ||
| README.md | ||
| vagrant_provisioning.sh | ||
| Vagrantfile | ||
| yank.tmux | ||
Tmux Yank
Enables copying to system clipboard in Tmux. Works on Linux and OS X.
Screencast
Key bindings
prefix + y- copies text from the command line to clipboard.
Works with all popular shells/repls. Tested with:- shells:
bash,zsh(withbindkey -e),tcsh - repls:
irb,pry,node,psql,python,php -a,coffee - remote shells:
ssh, mosh
- shells:
copy mode bindings:
y- copy selection to system clipboardCtrl-y- "put" selection - equivalent to copying a selection, and pasting it to the command lineAlt-y- performs both of the above: copy to system clipboard and put to command line
OS X requirements
- reattach-to-user-namespace
If you don't have this already, then install:$ brew install reattach-to-user-namespace.
Linux requirements
xclipORxselcommand
You most likely already have one of them, but if not:- Debian / Ubuntu:
$ sudo apt-get install xclipor$ sudo apt-get install xsel - Red hat / CentOS:
$ yum install xclipor `$ yum install xsel``
- Debian / Ubuntu:
Copy command
OS X
Copying to clipboard is done using pbcopy.
Linux
Copying to clipboard is done using xclip -selection clipboard or xsel --clipboard command by default.
If copying is different on your system, and you need the command to be i.e.
xclip -selection primary or xsel -i --primary, here's how to customize:
# in .tmux.conf
set -g @yank_selection "primary"
Warning: Use full names as option ("primary", "secondary", "clipboard")
Notes
Mouse Support
When making a selection using tmux mode-mouse on or mode-mouse copy-mode, you cannot rely on the default 'release mouse after selection to copy' behavior. Instead, press y before releasing mouse.
Installation with Tmux Plugin Manager (recommended)
Add plugin to the list of TPM plugins in .tmux.conf:
set -g @tpm_plugins " \
tmux-plugins/tpm \
tmux-plugins/tmux-yank \
"
Hit prefix + I to fetch the plugin and source it. You should now be able to
use the plugin.
Manual Installation
Clone the repo:
$ git clone https://github.com/tmux-plugins/tmux-yank ~/clone/path
Add this line to the bottom of .tmux.conf:
run-shell ~/clone/path/yank.tmux
Reload TMUX environment:
# type this in terminal
$ tmux source-file ~/.tmux.conf
You should now be able to use the plugin.
Other Tmux goodies
Tmux yank works well with tmux copycat and tmux-open plugins.
