vim命令复制粘贴命令_linux编辑文件命令vim

vim命令复制粘贴命令_linux编辑文件命令vim今天被vim的复制粘贴弄得很烦,它不像windows那样,每次复制会把以前的内容覆盖。所以有时粘贴出来的东西并不是你想要的。在不同终端中,用vim打开的两个文件之间的复制粘贴1.用同一个终端,直接使用这个命令:vimfile1file2这样就可以直接用y和p复制粘贴了。但是这样比较麻烦,需要在两个文件之间切换。2.之所以不能直接用y和p复制粘贴。是因为每个终端中的vim复制的内容存储在不同…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

今天被vim的复制粘贴弄得很烦,它不像windows那样,每次复制会把以前的内容覆盖。所以有时粘贴出来的东西并不是你想要的。

在不同终端中,用vim打开的两个文件之间的复制粘贴

1. 用同一个终端,直接使用这个命令:

vim file1 file2

这样就可以直接用y和p复制粘贴了。

但是这样比较麻烦,需要在两个文件之间切换。

2. 之所以不能直接用y和p复制粘贴。是因为每个终端中的vim复制的内容存储在不同的地方。在这里我们将存储vim复制到的内容的地方叫做寄存器。

可以使用一下命令查看vim的寄存器的内容:

在vim的normal模式下:

:reg

这样就可以看到寄存器的名字及其存放的内容了。如下图所示:

7c7f28f0230bc5a6815b6b682c7b60b6.png

其中,寄存器的名字都是以“开头的。如果想将 “/ 这个寄存器的内容粘贴到文件中,可以在normal模式下使用如下命令:

”/p

默认按下p粘贴的是 ”“ 这个寄存器的内容。

在这些寄存器中, ”+ 这个寄存器是全局的。也就是说,两文件中,其他寄存器的内容都可以不一样,但是 “+ 这个寄存器的内容是一样的。所以,你可以使用以下命令将内容复制到 ”+ 这个寄存器中:

“+y

然后在另外一个文件中,使用如下命令粘贴;

”+p

这样就可以了实现两个文件之间的复制粘贴了。另外,使用鼠标右键paste粘贴的内容也是 ”+ 这个寄存器的,可以说它就是系统粘贴板。

如果寄存器列表中没有 “+ 这个寄存器,可能是没有安装vim的图形界面所致。

Debian/Ubuntu下可以通过安装vim-gnome解决,命令如下:

$ sudo apt-get install vim-gnome

3. 通过配置 ~/.vimrc 文件实现两个文件之间的复制粘贴。

把下面这段代码贴到你的.vimrc里面去,然后选择一段文本,用xw来copy,在另 外的终端上用xr来贴。原理非常简单,就是利用一个文件来作中转。

” transfer/read and write one block of text between vim sessions

” Usage:

” `from’ session:

” ma

” move to end-of-block

” xw

” `to’ session:

” move to where I want block inserted

” xr

if has(“unix”)

nmap xr :r $HOME/.vimxfer

nmap xw :’a,.w! $HOME/.vimxfer

vmap xr c:r $HOME/.vimxfer

vmap xw :w! $HOME/.vimxfer

else

nmap xr :r c:/.vimxfer

nmap xw :’a,.w! c:/.vimxfer

vmap xr c:r c:/.vimxfer

vmap xw :w! c:/.vimxfer

endif

参考文章:

http://www.cnblogs.com/end/archive/2012/06/01/2531147.html

http://blog.sina.com.cn/s/blog_66f64e510101bqib.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190759.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • win10家庭版打开管理员账户_win10用户账户控制阻止程序运行

    win10家庭版打开管理员账户_win10用户账户控制阻止程序运行win10版本家庭中文版:运行应用程序报错:解决办法(亲试):1.进入”控制面板“–”用户账户“–”用户账户“,选择”更改用户账户控制设置“,选择最后一项,点击”确定“按钮,如下图:2.按

    2022年8月1日
    6
  • usb转rs485 linux驱动下载,USB转485万能驱动下载

    usb转rs485 linux驱动下载,USB转485万能驱动下载USB转RS485串口驱动是一款非常专业的USB转RS485驱动安装程序。这款软件适合WIN7/WINXP/LINUX等系统,能够帮助用户一键解决USB无法转换成RS485的问题,需要的小伙伴可下载体验。【安装方法】1、在安装前可以先看看使用说明再安装。将USB转换线插入电脑的USB接口中,系统会提示检测到新设备并出现新硬件添加向导,选择从列表或指定的位置安装,手动安装,找到刚刚驱动的解压目录,…

    2022年6月12日
    55
  • sql里declare_oracle declare语法

    sql里declare_oracle declare语法DECLARE为sql中的关键字,主要用于申明变量。本文简单介绍了其使用方法,主要为一般变量的申明和查看和表变量的使用和查看。

    2022年8月20日
    6
  • 音频PCM编码「建议收藏」

    音频PCM编码「建议收藏」PCM编码PCM就是把一个时间连续,取值连续的模拟信号变换成时间离散,取值离散的数字信号后在信道中传输。简而言之PCM就是对模拟信号先抽样,再对样值幅度量化,编码的过程。例如听到的声音就是模拟信号,

    2022年8月2日
    3
  • Maven插件的使用

    Maven插件的使用

    2022年3月3日
    43
  • C# License

    C# License第一步:生成一组公钥和私钥,公钥用于你发布程序,私钥属于注册码生成。using(RSACryptoServiceProviderrsa=new RSACryptoServiceProvider())  {  stringpubkey=rsa.ToXmlString(false);  //公钥 stringprikey=rsa.ToXmlString(t

    2022年7月26日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号