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-plugVundle。以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)
相关推荐
xuhe22 分钟前
[全流程详细教程]Docker部署ClawBot, 使用GLM4.7, 接入TG Bot实现私人助理. 解决Docker Openclaw Permission Denied问题
linux·docker·ai·github·tldr
Lsir10110_18 分钟前
【Linux】进程信号(下半)
linux·运维·服务器
酉鬼女又兒36 分钟前
零基础入门Linux指南:每天一个Linux命令_pwd
linux·运维·服务器
云飞云共享云桌面38 分钟前
高性能图形工作站的资源如何共享给10个SolidWorks研发设计用
linux·运维·服务器·前端·网络·数据库·人工智能
zl_dfq40 分钟前
Linux 之 【多线程】(pthread_xxx、轻量级进程、原生线程库、线程ID、__thread、线程栈、线程与信号、线程与程序替换)
linux
choke23341 分钟前
Python 基础语法精讲:数据类型、运算符与输入输出
java·linux·服务器
AZ996ZA1 小时前
自学linux的第二十一天【DHCP 服务从入门到实战】
linux·运维·服务器·php
_OP_CHEN1 小时前
【Linux系统编程】(二十八)深入 ELF 文件原理:从目标文件到程序加载的完整揭秘
linux·操作系统·编译·c/c++·目标文件·elf文件
Fleshy数模2 小时前
MySQL 表创建全攻略:Navicat 图形化与 Xshell 命令行双模式实践
linux·mysql
神梦流2 小时前
GE 引擎的非标准数据流处理:稀疏张量与自定义算子在图优化中的语义保持
linux·运维·服务器