Vim 和 tmux 的常用注意事项

Vim

复制粘贴

在Vim中,可以使用系统剪切板进行复制和粘贴操作,具体操作与实际的操作系统有关。

在Linux和macOS上

  1. 复制到剪切板

    • 在Vim中,可以使用"+y来复制当前选中的文本到系统剪切板。例如,要复制当前行,可以先进入可视模式(按v),然后使用"+y。
  2. 从剪切板粘贴

    • 在Vim中,可以使用"+p来从系统剪切板粘贴文本。例如,要在当前光标位置后粘贴文本,使用"+p;如果要在当前行之前粘贴,使用"+P。

在Windows上

在Windows上,通常使用的是"*来代表系统剪切板。但是,如果使用的是Gvim(GUI版本),或者通过某些配置使得Vim支持系统剪切板,也可以使用"+。以下是操作方法:

  1. 复制到剪切板

    • 在Vim中,使用"*y或"+y来复制当前选中的文本到系统剪切板。例如,要复制当前行,先进入可视模式(按v),然后使用"*y或"+y。
  2. 从剪切板粘贴

    • 在Vim中,使用"*p或"+p来从系统剪切板粘贴文本。例如,要在当前光标位置后粘贴文本,使用"*p或"+p;如果要在当前行之前粘贴,使用"*P或"+P。

确保Vim支持系统剪切板

如果发现上述方法不起作用,可能是因为Vim版本不支持直接与系统剪切板交互。对于这种情况,可以安装或配置一个插件来实现这一功能。一个常用的插件是vim-gtk(仅限GTK版本)或者使用vim-gtk3(针对GTK3)。另一个流行的选择是vim-plus,它提供了更多的集成选项。

安装插件

如果选择使用插件,通常的安装方法是通过Vim的包管理器,如vim-plug或Vundle。以vim-plug为例,可以在.vimrc文件中添加如下配置:

vim 复制代码
call plugbegin('~/.vim/plugged')
Plug 'jodosha/vim-gtk3'
call plugend()

然后运行:PlugInstall来安装插件。

确保Vim版本支持选择的插件,并且在启动Vim时加载了相应的插件配置。之后,应该能够使用上述提到的命令来操作系统剪切板了。如果使用的是纯终端版的Vim(非Gvim),可能还需要额外的工具如xclip(在Linux上)或pbcopy/pbpaste(在macOS上)来实现剪切板功能。例如,在Linux上,可以通过:r !xclip -o来从剪切板读取文本。

自用.vimrc

复制代码
syntax on                                 " 自动语法高亮
set number                                " 显示行号
set smartindent                           " 智能自动缩进
set shiftwidth=4                          " 设置自动缩进时,每一级缩进4个空格的宽度
set tabstop=4                             " 设定 tab 长度为 4
set cursorline                            " 突出显示当前行
set ruler                                 " 打开状态栏标尺
set laststatus=2                          " 显示状态栏 (默认值为 1, 无法显示状态栏) 
set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\
" 设置在状态行显示的信息
set incsearch                             " 输入搜索内容时就显示搜索结果
set mouse=a                               " 鼠标选择时不选中行号

tmux

自用.tmux.conf

复制代码
set -g status-left-length 50  # 增加底部信息栏可显示内容的长度,默认是10,调整为更大的值(如50)
相关推荐
Ruiery5 小时前
Linux 6.6内核内存管理深度解析(十六):mmap — 用户态“申请内存“的真相
linux·运维·服务器
欧米欧5 小时前
Linux系统篇(七),环境变量的底层溯源,核心获取机制与安全应用
linux·运维·服务器
Ruiery5 小时前
Linux 6.6内核内存管理深度解析(十八):KASLR 内核地址空间随机化
linux·运维·服务器·安全
qetfw6 小时前
UOS MariaDB 数据库:安装、最小权限与备份验证
linux·数据库·mariadb·uos
逆风的蚂蚁7 小时前
linux服务器性能调整怎么落地?我把 CPU 调度、I/O 优先级和内核参数这几个旋钮都拧了一遍
linux·运维·服务器
沫璃染墨11 小时前
从零入门计算机网络系列(十一):HTTP协议进阶——从重定向原理到GET/POST与Fiddler抓包
linux·服务器·开发语言·网络·c++·tcp/ip·html
香芋芋圆12 小时前
iD-editor 详解|OSM官方在线编辑器,基于D3.js的轻量地图编辑器
开发语言·javascript·编辑器
AI_Lab0113 小时前
宝塔用了两年,有没有必要换成轻量方案?
linux·运维·服务器
by2099913 小时前
Linux GDB 调试与 CGDB 使用
linux·运维·服务器·经验分享
星恒随风13 小时前
Linux网络编程:应用层协议究竟是什么?从网络计算器到TCP Socket抽象基类完整实现
linux·网络·笔记·tcp/ip