vim 复制,粘贴,超给力

本文介绍了Vim编辑器中的粘贴板使用方法,包括如何使用不同粘贴板进行复制和粘贴操作,以及如何利用这些技巧提高工作效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果只是想使用系统粘贴板的话直接在输入模式按Shift+Inset就可以了,下面讲一下vim的粘贴板的基础知识,有兴趣的可以看看,应该会有所收获的。
vim帮助文档里与粘贴板有关的内容如下:
vim有12个粘贴板,分别是0、1、2、...、9、a、“、+;用:reg命令可以查看各个粘贴板里的内容。在vim中简单用y只是复制到“(双引号)粘贴板里,同样用p粘贴的也是这个粘贴板里的内容;
 
要将vim的内容复制到某个粘贴板,需要退出编辑模式,进入正常模式后,选择要复制的内容,然后按"Ny完成复制,其中N为粘贴板号(注意是按一下双引号然后按粘贴板号最后按y),例如要把内容复制到粘贴板a,选中内容后按"ay就可以了,有两点需要说明一下:
“号粘贴板(临时粘贴板)比较特殊,直接按y就复制到这个粘贴板中了,直接按p就粘贴这个粘贴板中的内容;
+号粘贴板是系统粘贴板,用"+y将内容复制到该粘贴板后可以使用Ctrl+V将其粘贴到其他文档(如firefox、gedit)中,同理,要把在其他地方用Ctrl+C或右键复制的内容复制到vim中,需要在正常模式下按"+p;
 
要将vim某个粘贴板里的内容粘贴进来,需要退出编辑模式,在正常模式按"Np,其中N为粘贴板号,如上所述,可以按"5p将5号粘贴板里的内容粘贴进来,也可以按"+p将系统全局粘贴板里的内容粘贴进来。


yy  複製游標所在行整行。或大寫一個 Y。
2yy 或 y2y  複製兩行。ㄟ,請舉一反三好不好!:-)
y^  複製至行首,或 y0。不含游標所在處字元。
y$  複製至行尾。含游標所在處字元。
yw  複製一個 word。
y2w 複製兩個字。
yG  複製至檔尾。
y1G 複製至檔首。
p   小寫 p 代表貼至游標後(下)。
P   大寫 P 代表貼至游標前(上)。


整行的複製,按 p 或 P 時是插入式的貼在下(上)一行。非整行的複製則是貼在游標所在處之後(前)。
"ayy  將本行文字複製到 a 緩衝區
a 可為 26 個英文字母中的一個,如果是小寫的話,原先的內容會被清掉,如果是大寫的話是 append 的作用,會把內容附加到原先內容之後。
" 是 Enter 鍵隔壁的那一個同上符號(ditto marks)。
"ap  將 a 緩衝區的內容貼上。
緩衝區的術語在 vim 稱為 registers,vim 擴充了相當多的功能,有興趣深入的朋友請 :h registers。您用 d、c、s、x、y 等指令改變或刪除的內容都是放在 registers 中的。例如:您用 dd 刪除的一行,也是可以使用 p 來貼上的。只要是在緩衝區的內容都可以使用 p 來貼上,不是一定要 y 起來的內容才能用 p。因此您認為 p 是 paste 也可以,認為是 put 可能較正確。
5"ayy  複製五行內容至 a 緩衝區。
5"Ayy  再複製五行附在 a 內容之後,現在 a 中有十行內容了!
资源下载链接为: https://pan.quark.cn/s/1bfadf00ae14 “STC单片机电压测量”是一个以STC系列单片机为基础的电压检测应用案例,它涵盖了硬件电路设计、软件编程以及数据处理等核心知识点。STC单片机凭借其低功耗、高性价比和丰富的I/O接口,在电子工程领域得到了广泛应用。 STC是Specialized Technology Corporation的缩写,该公司的单片机基于8051内核,具备内部振荡器、高速运算能、ISP(在系统编程)和IAP(在应用编程)功能,非常适合用于各种嵌入式控制系统。 在源代码方面,“浅雪”风格的代码通常简洁易懂,非常适合初学者学习。其中,“main.c”文件是程序的入口,包含了电压测量的核心逻辑;“STARTUP.A51”是启动代码,负责初始化单片机的硬件环境;“电压测量_uvopt.bak”和“电压测量_uvproj.bak”可能是Keil编译器的配置文件备份,用于设置编译选项和项目配置。 对于3S锂电池电压测量,3S锂电池由三节锂离子电池串联而成,标称电压为11.1V。测量时需要考虑电池的串联特性,通过分压电路将高电压转换为单片机可接受的范围,并实时监控,防止过充或过放,以确保电池的安全和寿命。 在电压测量电路设计中,“电压测量.lnp”文件可能包含电路布局信息,而“.hex”文件是编译后的机器码,用于烧录到单片机中。电路中通常会使用ADC(模拟数字转换器)将模拟电压信号转换为数字信号供单片机处理。 在软件编程方面,“StringData.h”文件可能包含程序中使用的字符串常量和数据结构定义。处理电压数据时,可能涉及浮点数运算,需要了解STC单片机对浮点数的支持情况,以及如何高效地存储和显示电压值。 用户界面方面,“电压测量.uvgui.kidd”可能是用户界面的配置文件,用于显示测量结果。在嵌入式系统中,用
<think>嗯,用户想了解如何在Vim中进行复制粘贴操作。首先,我需要回忆一下Vim的基本复制粘贴命令。记得在普通模式下,复制是y,粘贴是p或者P。不过具体怎么用呢?比如,复制一行的话是yy,然后p粘贴到下一行。但可能需要更详细的操作说明。 然后,用户可能需要知道如何复制特定的内容,比如单词、段落或者选中的区域。这时候得提到可视模式,v进入字符可视模式,V进入行可视模式,Ctrl+v进入块可视模式。在可视模式下选择文本后,按y复制,再按p粘贴。 还有寄存器的问题,Vim使用寄存器来存储复制的内容。默认使用无名寄存器"",但其他寄存器比如"+可以访问系统剪贴板。如果用户需要在Vim和外部程序之间复制粘贴,可能需要检查是否支持clipboard特性,可能需要安装vim-gtk或者neovim的配置。 另外,用户可能遇到的问题包括复制粘贴的位置不对,或者在插入模式下使用Ctrl+Shift+V导致格式混乱。这时候需要提醒他们使用正确的模式和寄存器。 可能还需要提到一些高级技巧,比如使用命名寄存器,或者如何粘贴而不影响缩进。比如在粘贴前设置:set paste,避免自动缩进的问题。 此外,用户可能分不清Vim和Neovim的配置差异。比如Neovim的配置文件在~/.config/nvim/init.vim,而传统Vim是~/.vimrc。如果用户使用的是Neovim,可能需要调整配置来启用系统剪贴板。 最后,用户可能需要知道如何跨窗口或分屏复制粘贴,这时候可能需要结合系统剪贴板或者使用Vim的缓冲区操作。例如,在分屏时,使用"+y复制到系统剪贴板,然后在另一个分屏中"+p粘贴。 需要确保回答覆盖基本操作、可视模式、寄存器使用、系统剪贴板集成以及常见问题解决。同时,引用相关的参考资料来增强可信度,比如引用中提到的安装vim-gtk或者配置Neovim的部分。</think>### Vim复制粘贴操作教程 #### 一、基础操作 1. **复制(yank)** - 单行复制:在普通模式下按 `yy`,例如复制当前行到寄存器[^4] - 单词复制:光标移动到单词开头按 `yw` - 多行复制:输入数字前缀 `3yy` 表示复制3行 2. **粘贴(paste)** - 普通模式下按 `p` 在光标后粘贴 - 大写 `P` 在光标前粘贴 - 在插入模式下按 `Ctrl+Shift+V`(需系统剪贴板支持) #### 二、可视化模式操作 1. 进入字符选择模式:按 `v` 后移动光标选择文本,按 `y` 复制 2. 进入行选择模式:按 `V` 选择整行,按 `y` 复制 3. 进入块选择模式:按 `Ctrl+v` 选择矩形区域,按 `y` 复制[^3] #### 三、寄存器使用 Vim使用多个寄存器存储内容: - 无名寄存器 `""`:默认存储最近复制/删除内容 - 数字寄存器 `"0`:专存复制内容(不受删除操作影响) - 系统剪贴板 `"+`:跨程序粘贴时使用 `"+y` 复制,`"+p` 粘贴[^4] #### 四、系统剪贴板集成 1. 检查剪贴板支持: ```bash vim --version | grep clipboard ``` 如果显示 `-clipboard`,需安装增强版: ```bash sudo apt install vim-gtk # Ubuntu/Debian[^2] ``` 2. Neovim配置: 在 `~/.config/nvim/init.vim` 中添加: ```vim set clipboard=unnamedplus # 共享系统剪贴板[^1] ``` #### 五、高级技巧 1. 粘贴保留格式: ```vim :set paste # 进入粘贴模式 i Ctrl+Shift+V :set nopaste ``` 2. 跨窗口操作: - 分屏时使用 `"+y` 和 `"+p` 跨窗口复制 - 通过 `:reg` 命令查看所有寄存器内容
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值