简单教程
本文记录一个极简的 tmux 配置教程,来满足基本的开发需求。
首先打开 tmux 配置文件:
vim ~/.tmux.conf
然后键入一下内容:
set-option -g automatic-rename onset-option -g aggressive-resize onset-option -g mouse onset-option -g base-index 1set-option -g pane-base-index 1
成品 tmux 配置
这里使用 https://github.com/gpakosz/.tmux 的配置,命令如下:
cdgit clone https://github.com/gpakosz/.tmux.gitln -s -f .tmux/.tmux.confcp .tmux/.tmux.conf.local .
编辑 ~/.tmux.conf.local ,将 tmux_conf_copy_to_os_clipboard 的值改成 true,代码如下:
# -- clipboard -----------------------------------------------------------------# in copy mode, copying selection also copies to the OS clipboard# - true# - false (default)# on macOS, this requires installing reattach-to-user-namespace, see README.md# on Linux, this requires xsel or xcliptmux_conf_copy_to_os_clipboard=true
开启鼠标模式,将 #set -g mouse on 的注释去掉,代码如下:
# start with mouse mode enabledset -g mouse on
在 Linux 中需要安装 xsel 或者是 xclip,命令如下:
# ubuntu:sudo apt install xsel# sudo apt install clip# archsudo pacman -S xclip
重新打开 tmux 或者重新加载配置 prefix + r
解决 nvim 在 WSL 下因为粘贴板速度变慢的问题
配置上面共享粘贴板以后,不知道为啥 nvim 打开速度变得很慢,最后发现 clipboard 报了一些错误,之后在 CSDN 上找的一个帖子:
原贴: neovim 添加 clipboard = “unnamedplus“ 出现打开速度变慢的解决办法
笔者最近在 wsl 下重新配 neovim 时,发现打开速度会变得很慢。耗费巨大时间,终于找到原因。注释掉配置文件(init.lua or optioons.lua)下的,vim.opt.clipboard = "unnamedplus" 打开速度就会正常。
当然!我们知道 vim.opt.clipboard = "unnamedplus" 是为了, Vim 在进行复制(yank)和粘贴(paste)操作时使用系统剪贴板的特定寄存器。只是注释掉会大大的降低nvim的使用。
你可以试着注释掉 vim.opt.clipboard = "unnamedplus",看看速度会不会恢复,解决问题步骤如下:
- 下载 win32yank.exe, 命令如下:
curl -sLo/tmp/win32yank.zip https://github.com/equalsraf/win32yank/releases/download/v0.1.1/win32yank-x64.zipunzip -p /tmp/win32yank.zip win32yank.exe > /tmp/win32yank.exesudo chmod +x /tmp/win32yank.exesudo mv /tmp/win32yank.exe /usr/local/bin/sudo rm -rf /tmp/win32yank.zip
验证是否能正常的工作:
# Set the clipboard echo "hello brave new world!" | win32yank.exe -i # Get the clipboard. win32yank -o
如果没有输出,那么请通过上面的链接手动下载 win32yank.exe 到 windows,然后再拷贝,命令如下:
# 假设现在到 download 目录下并解压了sudo mv /mnt/c/User/your-user-name/Downloads/win32yank/win32yank.exe /usr/local/bin/
2 把下面的内容放到 init.lua ,代码如下:
vim.g.clipboard = { name = 'win32yank-wsl', copy = { ['+'] = 'win32yank.exe -i --crlf', ['*'] = 'win32yank.exe -i --crlf', }, paste = { ['+'] = 'win32yank.exe -o --lf', ['*'] = 'win32yank.exe -o --lf', }, cache_enabled = true,}
但是在部分机器上,win32yank 的性能表现比较差,可以根据情况决定是否要启用这个功能。
常用技巧
prefix 是 ctrl + b 按键。
- 从 tmux 窗口复制内容到剪贴板: 安装 shift 按键,使用鼠标左键选择, 如果没有开启窗口滚动,可以键入 prefix + [;
- 创建新的 tmux 会话:prefix + : + new -s name;