## Description
<!-- Describe the big picture of your changes to communicate to the
maintainers
why we should accept this pull request. -->
After reviewing and fixing bugs in blink-cmp-copilot, I realized that
there is significant room for improvement in its codebase. So I created
a new copilot source `blink-copilot` for `blink.cmp` that introduces
many new features, enhanced performance, and official `copilot.vim`
backend support. (`copilot.lua` is supported by default)
The plugin has been starred by over 30 users, and it is growing faster
than blink-cmp-copilot. After more than two weeks of gathering feedback
and addressing bugs, the plugin has become very stable, and I believe
it’s time to share it with a broader audience.
`blink-copilot` register the kind `Copilot` by default, so there is no
need to do extra transforming on the completion items.
## Related Issue(s)
<!--
If this PR fixes any issues, please link to the issue here.
- Fixes #<issue_number>
-->
## Screenshots
<!-- Add screenshots of the changes if applicable. -->
## Checklist
- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
## Description
Following copilot.lua refactoring in
https://github.com/zbirenbaum/copilot.lua/pull/431, lualine is unable to
refresh.
We face the following error
```
Error 15:55:22 msg_show.lua_error Error executing vim.schedule lua callback: ...share/nvim/lazy/lualine.nvim/lua/lualine/utils/utils.lua:211: lualine: Failed to refresh statusline:
.../.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:415: Error executing lua: ...m/lazy/LazyVim/lua/lazyvim/plugins/extras/ai/copilot.lua:54: attempt to index field 'status' (a nil value)
stack traceback:
...m/lazy/LazyVim/lua/lazyvim/plugins/extras/ai/copilot.lua:54: in function 'status'
...cal/share/nvim/lazy/LazyVim/lua/lazyvim/util/lualine.lua:17: in function 'cond'
...l/share/nvim/lazy/lualine.nvim/lua/lualine/component.lua:275: in function 'draw'
...are/nvim/lazy/lualine.nvim/lua/lualine/utils/section.lua:26: in function 'draw_section'
.../.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:167: in function 'statusline'
.../.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:309: in function <...gaze/.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:290>
[C]: in function 'nvim_win_call'
.../.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:415: in function 'refresh'
.../.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:491: in function <.../.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:490>
[C]: in function 'pcall'
...share/nvim/lazy/lualine.nvim/lua/lualine/utils/utils.lua:214: in function ''
vim/_editor.lua: in function <vim/_editor.lua:0>
```
## Related Issue(s)
#5899
## Screenshots

## Checklist
- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
## Description
blink.cmp integration for codeium and copilot, and correct menu drawing
for codeium, copilot, and supermaven.
I've simplified the blink.cmp config a bit for these extras (especially
for copilot, which was extremely nested) by only including the blink.cmp
spec if vim.g.ai_cmp is true.
Multiple AI extras can now be enabled at the same time with blink.cmp.
blink.cmp ghost text is now always enabled. Although some ai plugins
always display virtual text, at worst it overlaps with blink's ghost
text and is not noticable.
Lastly, I can't test copilot because I don't have a subscription, nor do
I want to sign up for one, but it should work just as well as the
others.
## Screenshots
With Codeium:

Multiple extras enabled at the same time:

## Checklist
- [X] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
---------
Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
## Description
<!-- Describe the big picture of your changes to communicate to the
maintainers
why we should accept this pull request. -->
## Related Issue(s)
<!--
If this PR fixes any issues, please link to the issue here.
- Fixes #<issue_number>
-->
## Screenshots
<!-- Add screenshots of the changes if applicable. -->
## Checklist
- [ ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.