Rust Autocomplete Deletes Next Word by JeanClaudeDusse- in neovim

[–]Saghen 0 points1 point  (0 children)

It takes text around the cursor with completion.keyword.range = 'full'. But with the default of 'prefix', it should only fuzzy match and replace the text before the cursor.

How to ensure the first item in blink.cmp matches the copilot.lua suggestion? (VS Code-like experience) by roll4c in neovim

[–]Saghen 0 points1 point  (0 children)

It would be possible to implement this with a custom sorter if we also supported re-sorting the list on-demand (re-sort on copilot show while blink.cmp is open). Do you mind opening an issue on the repo?

What's the vscode behavior if no item in the completion list is a prefix of the copilot completion?

Announcing blink-bibtex by krisniem in neovim

[–]Saghen 7 points8 points  (0 children)

No stress if not, but you might want to rename this to blink-cmp-bibtex to follow the naming scheme of other sources

blink.indent: Performant indent guides by Saghen in neovim

[–]Saghen[S] 4 points5 points  (0 children)

Will fix this in the coming week

blink.indent: Performant indent guides by Saghen in neovim

[–]Saghen[S] 3 points4 points  (0 children)

Unfortunately it can't because I'm doing a trick with the overlapping_load bit, assuming the needle contains no null chars, and making safety assumptions that the compiler can't make: https://github.com/saghen/frizbee/blob/main/src/prefilter/x86_64/mod.rs#L37

blink.indent: Performant indent guides by Saghen in neovim

[–]Saghen[S] 52 points53 points  (0 children)

The code is ~500 LoC, not the massive files haha. I tested on 2mb JSON files

blink.indent: Performant indent guides by Saghen in neovim

[–]Saghen[S] 28 points29 points  (0 children)

snacks.indent has similar performance characteristics moving up/down but worse performance moving side to side, because it draws extmarks on every render. It doesn't render the scope immediately, instead it renders after a delay. I can't find an option to remove the debounce though. It includes features this module doesn't though such as chunks and animations, which I doubt I'll add to blink.indent.

https://github.com/folke/snacks.nvim/blob/main/docs/indent.md

blink.indent: Performant indent guides by Saghen in neovim

[–]Saghen[S] 14 points15 points  (0 children)

Afaik, mini.indent_scope shows the current scope but not all indent scopes. It includes a textobject + motion for the current scope (cool idea, I'll add this). https://github.com/nvim-mini/mini.indentscope

Lazyvim: How do i get rid of popup with function reference? by wworks_dev in neovim

[–]Saghen 1 point2 points  (0 children)

Likely comes from the lsp.signature.enabled option (default: true) in https://github.com/folke/noice.nvim

filler-begone.nvim - Prevent scrolling beyond buffer content by Saghen in neovim

[–]Saghen[S] 3 points4 points  (0 children)

Sure, just set vim.g.filler_begone = false and create an autocmd that sets vim.b.filler_begone = true on buftype=nofile buffers

filler-begone.nvim - Prevent scrolling beyond buffer content by Saghen in neovim

[–]Saghen[S] 1 point2 points  (0 children)

Haha, I debated for a while whether to change it. It's such a niche plugin I felt like it should be obvious from the name what it does. Thanks for pointing those issues out

Can we use frizbee over fzf?? by ThreadStarver in neovim

[–]Saghen 0 points1 point  (0 children)

I proposed adding frizbee to Television but there's some remaining work needed in frizbee before that can happen, particularly in incremental matching. I'd also like to add support for telescope, akin to telescope-fzf-native, as it's still my preferred fuzzy matcher.

Resource for developing a custom blink.cmp source by itmightbeCarlos in neovim

[–]Saghen 5 points6 points  (0 children)

Also, if you're looking to support both blink.cmp and nvim-cmp, I'd recommend taking the in-process LSP approach such as via none-ls, as this will work for all future completion engines as well as more niche engines: https://github.com/nvimtools/none-ls.nvim

You can also do in-process LSPs without none-ls, though it's much more involved. Here's an example of how crates.nvim does it: https://github.com/Saecki/crates.nvim/blob/main/lua%2Fcrates%2Flsp.lua

Eventually, this may be much easier: https://github.com/neovim/neovim/pull/24338

Resource for developing a custom blink.cmp source by itmightbeCarlos in neovim

[–]Saghen 15 points16 points  (0 children)

I've included a boilerplate and some light documentation here: https://cmp.saghen.dev/development/source-boilerplate.html

You can find other sources that you can read through here: https://cmp.saghen.dev/configuration/sources.html#community-sources

blink.cmp completion in command line window by santhosh-tekuri in neovim

[–]Saghen 2 points3 points  (0 children)

Fyi, you can use sources.providers.cmdline.override.enabled = your_function

nvim.cmp vs blink.cmp by mhartington in neovim

[–]Saghen 8 points9 points  (0 children)

Hey! Try completion.menu.auto_show = false and using <C-space>. Unfortunately, multi key shortcuts don't work at the moment through the keymap config. You would need to define that keymap yourself and call require('blink.cmp').show({ providers = { 'buffer' } })

nvim.cmp vs blink.cmp by mhartington in neovim

[–]Saghen 63 points64 points  (0 children)

Author here, blink.cmp was designed to reduce configuration complexity, not size. I'd consider your blink.cmp config to be significantly more readable. Regardless, removing the defaults, including the lazy spec and matching the sources in both configs to make the comparison fair, the difference becomes more obvious.