在vs code中设置vim实现连续粘贴

在使用vim的时候,很多情况下都会用到连续粘贴,比如复制了一个代码以后,手动的进行粘贴,而这个时候往往粘贴了一次以后,下一次粘贴的内容就是上一条被覆盖的内容了(这个是vim实现的逻辑,本文不过多讨论),如果想要实现一次复制连续粘贴,可以用命令行的替换,并且加上\c选项来手动选择,也可以使用vim中的命名为0的寄存器进行连续复制,即在想要连续复制的地方输入 “0p 也可以实现连续复制粘贴,但是这两种方式都挺麻烦的,那么有没有什么偷懒的办法呢?我想到了改键,于是我查了一下在vs code下vim改键的方法,并没有用vimrc而是用的json,反正看起来也不复杂,如果有其他拓展需求的话,可以仔细看看下面的链接。

VSCodeVim/Vim: Vim for Visual Studio Code (github.com)icon-default.png?t=M276https://github.com/VSCodeVim/Vim在vs code中设置连续粘贴的话,需要修改到settings json文件,那么我们打开这个文件以后,就可以去添加vim相关的配置了(前提是下了vim插件),我的settings json与vim配置的相关文件如下:

    // vim config
    "vim.statusBarColors.easymotioninputmode": "#007acc",
    "vim.leader": "<space>",
    "vim.statusBarColors.easymotionmode": "#007acc",
    "vim.easymotion": true,
    "vim.commandLineModeKeyBindingsNonRecursive": [],
    "vim.insertModeKeyBindings": [],
    "vim.normalModeKeyBindingsNonRecursive": [],
    "vim.visualModeKeyBindings": [
        // 支持连续粘贴
        {
            "before": [
                "<leader>",
                "p"
            ],
            "after": [
                "\"",
                "0",
                "p",
            ]
        },
    ],
    "vim.normalModeKeyBindings": [
        // 支持连续粘贴
        {
            "before": [
                "<leader>",
                "p"
            ],
            "after": [
                "\"",
                "0",
                "p",
            ]
        },
    ],
    // vim config end

我的方法是在vim 的normal mode和visual mode的时候,用 <leader>p 替换 “0p 实现连续复制,所以也需要根据喜好设置一下vim的leader键(如下代码),我设置的是空格,也可以设置成你喜欢的其他键

"vim.leader": "<space>",

在改完settings json以后,就可以愉快的连续复制了。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值