【问题标题】:Neovim - Shortcut for native autocomplete Ctrl + nNeovim - 本机自动完成的快捷方式 Ctrl + n
【发布时间】:2023-02-10 15:22:00
【问题描述】:

你好,我想在 neovim 中添加一个快捷方式,以利用其使用 Ctrl + n 激活的本机自动完成功能,在插入模式下键入时,我想按 Tab 键并自动完成。以下代码对我有用,尤其是 lua 代码。但是有一个问题:

当我使用这个快捷方式时,我失去了标签功能,我正在寻找一种方法让这个快捷方式只在光标前有一个词时才起作用;否则选项卡应该可以正常工作。我提前感谢帮助。

Lua

map('i', '<Tab>', '<c-n>', {noremap = true})

虚拟脚本

imap <Tab> <c-o><c-n>

笔记:这个问题解决了原生 nvim 'Ctrl + n' 自动完成而不是自动完成插件。谢谢。

【问题讨论】:

  • 我认为这不是自动完成,这仍然是手动完成。对于自动完成,不需要触发键。

标签: lua neovim


【解决方案1】:
inoremap <expr><Tab> CheckBackspace() ? "<Tab>" : "<C-n>"

function! CheckBackspace() abort
  let col = col('.') - 1
  return !col || getline('.')[col - 1]  =~# 's'
endfunction

我从 coc.nvim plugin's 示例配置中获取了 CheckBackspace() 函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-31
    相关资源
    最近更新 更多