Open htx1020 opened 1 month ago
@htx1020
您试一下这个命令,看看 Tab
映射情况
verbose imap <tab>
正常的话,应该是如下输出
:verbose imap <tab>
i <Tab> * <Lua 111: E:/DataCenter/onWorking/fittencode.nvim/lua/fittencode/engines/inline/init.lua:630>
Last set from Lua (run Nvim with -V1 for more details)
Lazyvim对Tab键,也有配置,故而造成冲突,把Lazyvim的Tab键定义关闭后,fitten Tab键就能正常工作。非常感谢!
应该可以使用has_suggestions这个api
code = require("...")
vim.keymap.set("i", "<Tab>", function()
if code.has_suggestions() then
autopairs.disable()
code. accept_line()
autopairs.enable()
else
vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("<Tab>", true, false, true), "n", false)
end
end, { silent = true, desc = "code accept" })
这是一个没有经过测试的demo,建议将tab设置成这样,这样的话不会去干扰CMP的TAB设置
应该可以使用has_suggestions这个api
code = require("...") vim.keymap.set("i", "<Tab>", function() if code.has_suggestions() then autopairs.disable() code. accept_line() autopairs.enable() else vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("<Tab>", true, false, true), "n", false) end end, { silent = true, desc = "code accept" })
这是一个没有经过测试的demo,建议将tab设置成这样,这样的话不会去干扰CMP的TAB设置
fitten的插件随时都会提示,所以替代传统的补全是没问题的。 补全跟候选项不干扰
Lazyvim对Tab键,也有配置,故而造成冲突,把Lazyvim的Tab键定义关闭后,fitten Tab键就能正常工作。非常感谢!
想请教一下大佬,具体要改哪些配置?
Lazyvim对Tab键,也有配置,故而造成冲突,把Lazyvim的Tab键定义关闭后,fitten Tab键就能正常工作。非常感谢!
想请教一下大佬,具体要改哪些配置?
前面讨论的就是lazyVim的默认绑定了Tab键行为,导致和fittencode的Tab行为冲突了。
lazyVim默认的Tab,Shif+Tab 行为是snippet提示词间的跳转,
目前要使用fittencode的tab补全,不用lazyVim的Tab话可以关掉,但最终还是看下作者后期怎么做下兼容吧。
可以暂时修改lazyvim配置,相关配置如下:
~/.local/share/nvim/lazy/LazyVim/lua/lazyvim/plugins/coding.lua
{ "<Tab>", function() return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>" end, expr = true, silent = true, mode = { "i", "s" }, },
Lazyvim对Tab键,也有配置,故而造成冲突,把Lazyvim的Tab键定义关闭后,fitten Tab键就能正常工作。非常感谢!
想请教一下大佬,具体要改哪些配置?
前面讨论的就是lazyVim的默认绑定了Tab键行为,导致和fittencode的Tab行为冲突了。 lazyVim默认的Tab,Shif+Tab 行为是snippet提示词间的跳转, 目前要使用fittencode的tab补全,不用lazyVim的Tab话可以关掉,但最终还是看下作者后期怎么做下兼容吧。 可以暂时修改lazyvim配置,相关配置如下: ~/.local/share/nvim/lazy/LazyVim/lua/lazyvim/plugins/coding.lua
{ "<Tab>", function() return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>" end, expr = true, silent = true, mode = { "i", "s" }, },
谢谢大佬!此前我修改了nvim-cmp的键位,即VS Code式的Tab补全。把大佬提到的那部分代码注释掉后,Tab补全既可用于nvim-cmp,又可用于fittencode.nvim,符合我的期望
Lazyvim对Tab键,也有配置,故而造成冲突,把Lazyvim的Tab键定义关闭后,fitten Tab键就能正常工作。非常感谢!
想请教一下大佬,具体要改哪些配置?
前面讨论的就是lazyVim的默认绑定了Tab键行为,导致和fittencode的Tab行为冲突了。 lazyVim默认的Tab,Shif+Tab 行为是snippet提示词间的跳转, 目前要使用fittencode的tab补全,不用lazyVim的Tab话可以关掉,但最终还是看下作者后期怎么做下兼容吧。 可以暂时修改lazyvim配置,相关配置如下: ~/.local/share/nvim/lazy/LazyVim/lua/lazyvim/plugins/coding.lua
{ "<Tab>", function() return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>" end, expr = true, silent = true, mode = { "i", "s" }, },
谢谢大佬!此前我修改了nvim-cmp的键位,即VS Code式的Tab补全。把大佬提到的那部分代码注释掉后,Tab补全既可用于nvim-cmp,又可用于fittencode.nvim,符合我的期望
不过这样就不能更新lazyvim了,会提示修改了上述文件
Lazyvim对Tab键,也有配置,故而造成冲突,把Lazyvim的Tab键定义关闭后,fitten Tab键就能正常工作。非常感谢!
想请教一下大佬,具体要改哪些配置?
前面讨论的就是lazyVim的默认绑定了Tab键行为,导致和fittencode的Tab行为冲突了。 lazyVim默认的Tab,Shif+Tab 行为是snippet提示词间的跳转, 目前要使用fittencode的tab补全,不用lazyVim的Tab话可以关掉,但最终还是看下作者后期怎么做下兼容吧。 可以暂时修改lazyvim配置,相关配置如下: ~/.local/share/nvim/lazy/LazyVim/lua/lazyvim/plugins/coding.lua
{ "<Tab>", function() return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>" end, expr = true, silent = true, mode = { "i", "s" }, },
谢谢大佬!此前我修改了nvim-cmp的键位,即VS Code式的Tab补全。把大佬提到的那部分代码注释掉后,Tab补全既可用于nvim-cmp,又可用于fittencode.nvim,符合我的期望
不过这样就不能更新lazyvim了,会提示修改了上述文件
最好修改用于配置lua文件,不要改~/.local/share/nvim/lazy/
我看到codeium.vim 也没有做兼容,他们在readme中提供了一些按键映射。
-- Change '<C-g>' here to any keycode you like.
vim.keymap.set('i', '<C-g>', function () return vim.fn['codeium#Accept']() end, { expr = true, silent = true })
vim.keymap.set('i', '<c-;>', function() return vim.fn['codeium#CycleCompletions'](1) end, { expr = true, silent = true })
vim.keymap.set('i', '<c-,>', function() return vim.fn['codeium#CycleCompletions'](-1) end, { expr = true, silent = true })
vim.keymap.set('i', '<c-x>', function() return vim.fn['codeium#Clear']() end, { expr = true, silent = true })
基于lazyvim,安装fitten后,Tab键无法补全。 不知道是不是跟lazy自带的补全冲突了。 方便的话,指导一下。目前使用其他快捷键替代,也可正常使用