【问题标题】:Neovim lua copy and paste key mappingNeovim lua 复制和粘贴键映射
【发布时间】:2022-01-21 04:56:20
【问题描述】:

我刚开始用 lua 配置替换我的 vim 配置,我试图制作一个简单的复制/粘贴到剪贴板键映射,以便我可以选择带有“v”的文本,然后单击 Ctrl+c 和 Ctrl+v,但我可以不要让它工作。

我想做一个“+y”和一个“+p”

我试过了,但它不起作用:

local keymap = vim.api.nvim_set_keymap
keymap("n", "<C-c>", '"+y', opts)
keymap("n", "<C-v>", '<ESC>"+pa', opts)

有什么想法吗?

【问题讨论】:

    标签: lua neovim


    【解决方案1】:

    我有一个地图辅助功能:

    -- ~/.config/nvim/lua/mappings.lua
    -- in your init.lua use: require('mappings')
    local function map(mode, lhs, rhs, opts)
        local options = { noremap = true }
        if opts then
            options = vim.tbl_extend("force", options, opts)
        end
        vim.api.nvim_set_keymap(mode, lhs, rhs, options)
    end
    

    默认情况下使用选项,以防万一您使用任何选项,这些选项会与选项合并。

    现在您可以像这样创建映射:

    -- Update Plugins
    map("n", "<Leader>u", ":PackerSync<CR>")
    

    【讨论】:

      【解决方案2】:

      试试这个:

      vim.api.nvim_set_keymap("n", "<c-c>", '"*y :let @+=@*<CR>', {noremap=true, silent=true})
      vim.api.nvim_set_keymap("n", "<c-v>", '"+p', {noremap=true, silent=true})
      

      将 i,v,x... 添加到其他模式的第一个引号中。

      我看到您正在做一些额外的事情,例如转义和追加,所以对于您的工作流程来说,这可能并不是一帆风顺 - 但这应该能让您继续前进。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-10-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-23
        相关资源
        最近更新 更多