Closed Kaiser-Yang closed 1 week ago
@Kaiser-Yang
目前没有直接的API,绕一点的话可以通过 require('fittencode.engines.inline').reset()
实现类似的功能
OK,谢谢回复,我试试
但是这个有问题,reset之后他会马上加载出来。
@luozhiya
我看主页写了可以集成到coc里面, 如果能够集成到coc里面的话,就可以通过coc
的接口来取消:
但是source mode
部分只给了cmp
的配置,请问我使用coc
的话应该如何配置?
@Kaiser-Yang
coc
处于 WIP 状态,目前还没有提供,您可以看下 #55 有列出计划事项
好的。
我找一个巧妙的方法可以实现我的需求,当存在fitencode
补全的时候,通过<C-c>
清楚当前补全并关闭所有补全,而在需要的时候通过<C-Space>
即可再次触发补全:
vim.cmd[[
inoremap <silent><expr> <C-c>
\ coc#pum#visible() ? coc#pum#cancel() :
\ luaeval('require("fittencode").has_suggestions()') ? '<cmd>lua require("fittencode.engines.inline").reset()<cr><cmd>Fitten disable_completions<cr>' : "\<C-c>"
inoremap <silent><expr> <c-space> luaeval('require("fittencode").has_suggestions()') ? "\<c-space>" : '<cmd>Fitten enable_completions<cr>'
]]
@Kaiser-Yang
dismiss_suggestions
感谢,辛苦了。
由于个人习惯原因,我使用回车键作为补全的接受按键,因此当我需要输入回车而当前存在补全的时候,我输入回车会接受所有的补全,而我想知道能否有取消本次补全的接口(例如
copilot
中的copilot#Dismiss()
),这样我可以绑定<C-C>
来取消本次补全进而可以通过<CR>
来换行。