linux vim粘贴快捷键设置,vim粘贴模式快捷方式

vim粘贴模式快捷方式

有时候,复制文本(尤其是代码)到 Vim,会出现格式错乱的问题。看样子,应该是自动缩进惹得祸。本文不去深究原因,直接给出解决方法。

paste 模式

运行如下命令,进入 paste 模式:

:set paste

进入 paste 模式后,按 i 键进入插入模式,然后再粘帖,文本格式不会错乱了。但粘帖后还需要按 进入普通模式并执行如下命令结束 paste 模式:

:set nopaste

显然,这样非常麻烦。下面我们进行改进。

快捷键一

我们可以利用设置快捷键来简化上面的两个命令。在 ~/.vimrc 中加入如下两行:

map :set paste

map :set nopaste

这样,在普通模式下按 F10 (你也可以用自己喜欢的按键)就会进入 paste 模式,按 i 进入插入模式后粘帖,然后按 回到普通模式,再按 F11 结束 paste 模式。

这样虽然方便了,但占用了两个按键。下面我们继续改进。

快捷键二

在 ~/.vimrc 中加入如下内容:

set pastetoggle=

这样就可以把上面的 F10 和 F11 合并为一个快捷键来切换 paste 模式了。

还有更好的办法么?当然!

Vim 寄存器一

关于 Vim 寄存器的详细信息请执行命令 :help registers 查看。

对于“剪切板”这个概念,Linux 下有两个东西:一个叫做 选择缓冲区(X11 selection buffer ),另一个才是 剪切板(clipboard) 。

鼠标或键盘选择内容时,内容实时进入缓冲区,然后按中键将内容插入光标所在位置;

鼠标或键盘选择内容后,按Ctrl-C(或Shift-Ctrl-C)或菜单中的“复制”,内容进入剪切板,然后按Ctrl-V(或Shift-Ctrl-V)或菜单中的“粘帖”将内容插入光标所在位置。关于这两者的详细信息,请自行搜索,此处不深究。

Vim 的寄存器 "* 对应系统缓冲区, 寄存器 "+ 对应系统剪切板。

如果你是把选择的内容(在系统缓冲区中)粘帖到 Vim ,只需在普通模式下执行如下命令:

"*p

对应的,如果你是把复制的内容(在系统剪切板中)粘帖到 Vim,只需在普通模式下执行如下命令:

"+p

怎么样?格式没有错乱了吧?

这样虽然简便很多了,但还是需要输入三个字母,并且这三个字母都得使用右手小拇指输入,甚至其中的两个字母还需要 shift 键配合!

还有更简单的办法。

Vim 寄存器二

在 ~/.vimrc 里加入如下内容:

set clipboard=unnamed

然后只需在普通模式下按 p 即可把系统缓冲区中的内容粘帖到 Vim 中,就像粘帖用 yy 命令得到的内容一样,并且格式不错乱。

如果把上面的一行换成如下内容:

set clipboard=unnamedplus

普通模式下按 p 粘帖的内容就是系统剪切板里的内容了。

这已经足够简便了。在搜索此问题的过程中,我还看到了另外一些办法。

快捷键三

在 ~/.vimrc 里加入如下内容:

inoremap :setl pastegi+:setl nopastegi

这样,你就可以在插入模式下使用 Shift-Insert 快捷键在粘帖系统剪贴板中的内容了。

把上面一行替换成如下内容同样可以达到相同的效果:

inoremap "+p`]a

注意,这可是在插入模式下哦!比起第 5 节提到的方法,这种方法省去了一次 按键进入普通模式和一次 i 按键重新回到插入模式。

至此,你需要做的只是:

复制你想要的内容;

回到 Vim 并按 Shift-Insert 快捷键;

继续编辑其他内容。

### 回答1: Linux Vim 的常用快捷键有:Ctrl+F:向前移动一个字符;Ctrl+B:向后移动一个字符;Ctrl+P:上移一行;Ctrl+N:下移一行;Ctrl+A:跳到当前行第一个字符;Ctrl+E:跳到当前行的最后一个字符;Ctrl+H:删除前一个字符;Ctrl+D:删除当前字符;Ctrl+U:删除当前行;Ctrl+K:删除当前到末尾的字符;Ctrl+Y:粘贴前面删除的字符;Ctrl+O:执行一个命令;Ctrl+X:退出Vim编辑器。 ### 回答2: Linux中的Vim是一款强大的文本编辑器,使用快捷键可以提高效率。下面是一些常用的Vim快捷键: 1. 光标移动: - h:向左移动一个字符 - j:向下移动一行 - k:向上移动一行 - l:向右移动一个字符 - gg:跳转到文件的第一行 - G:跳转到文件的最后一行 - Ctrl+f:向下翻一页 - Ctrl+b:向上翻一页 - 数字+G:跳转到指定行号 2. 文本编辑: - i:进入插入模式,在光标前插入文本 - a:进入插入模式,在光标后插入文本 - o:在当前行的下方插入一个新行并进入插入模式 - O:在当前行的上方插入一个新行并进入插入模式 - x:删除光标所在位置的字符 - dd:删除当前行 3. 撤销和重做: - u:撤销最近的操作 - Ctrl+r:重做上一次被撤销的操作 4. 复制和粘贴: - yy:复制当前行 - p:粘贴复制的内容 5. 查找和替换: - /text:向前搜索指定的文本 - ?text:向后搜索指定的文本 - :s/old/new/g:替换指定的文本 6. 保存和退出: - :w:保存当前文件 - :q:退出编辑器 - :wq:保存并退出编辑器 以上是一些Vim的常用快捷键,掌握它们可以在编辑文本时更加高效。还有许多其他的快捷键可以探索学习,帮助您更好地使用Vim。 ### 回答3: Linux中的Vim是一款功能强大的文本编辑器,下面是一些常用的Vim快捷键: 1. 光标移动: - h:向左移动一个字符 - j:向下移动一行 - k:向上移动一行 - l:向右移动一个字符 - w:向后移动到下一个单词的开头 - b:向前移动到上一个单词的开头 - e:向后移动到当前单词的末尾 - 0:移动到行的开头 - $:移动到行的末尾 - gg:移动到文件的开头 - G:移动到文件的末尾 - Ctrl+f:向下翻页 - Ctrl+b:向上翻页 2. 文本编辑: - i:在当前位置插入文本 - a:在当前位置之后插入文本 - o:在当前行下方插入新行 - dd:删除当前行 - yy:复制当前行 - p:粘贴复制的内容 - u:撤销上一步操作 - Ctrl+r:重做上一步操作 - :w:保存文件 - :q:退出Vim - :q!:强制退出Vim,不保存文件 3. 查找和替换: - /关键词:在文本中向下查找关键词 - ?关键词:在文本中向上查找关键词 - n:跳到下一个匹配项 - N:跳到上一个匹配项 - :s/旧词/新词/g:替换文本中的旧词为新词 - :%s/旧词/新词/g:替换整个文件中的旧词为新词 这些是Vim中最基本和常用的快捷键,掌握它们可以帮助提高在Linux中使用Vim编辑器的效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值