haskell / haskell/haskell-language-server

completion snippets behave badly in the presence of combining diacritics

Open
#4,404 3 comments 0 reactions 0 assignees View on GitHub
component: ghcide status: needs info type: bug
Dominant language
Haskell
Stars
3k
Forks
455
Avg merge
2d 19h
Merged PRs (30d)
11

Description

### Your environment

Which LSP client (editor/plugin) do you use?
Neovim, astrovim (which I think is using luasnips and nvim-cmp)

The actual crash is in nvim-cmp, so it's quite possibly a bug there, but at least turning off `plugin.ghcide-completions.config.snippetsOn` seems to fix things, so opening this issue just in case anyone else searches combining diacritics snippets or something.

Sorry for the low quality report!

Which version of HLS do you use and how did you install it?
`haskell-language-server version: 2.9.0.0 (GHC: 9.8.2)`

### Steps to reproduce

- Set up astrovim and enable the haskell community pack (definitely a smaller repro)
- Open a haskell file
- wait for hls to init
- type `â` (a with a combining circumflex)
- observe something like:

```
Error executing vim.schedule lua callback: ...l/share/astrovim/lazy/nvim-cmp/lua/cmp/utils/snippet.lua:409: snippet parsing failed.
stack traceback:
[C]: in function 'error'
...l/share/astrovim/lazy/nvim-cmp/lua/cmp/utils/snippet.lua:409: in function 'parse'
.../e/.local/share/astrovim/lazy/nvim-cmp/lua/cmp/entry.lua:130: in function 'callback'
...cal/share/astrovim/lazy/nvim-cmp/lua/cmp/utils/cache.lua:38: in function 'get_word'
.../e/.local/share/astrovim/lazy/nvim-cmp/lua/cmp/entry.lua:81: in function 'callback'
...cal/share/astrovim/lazy/nvim-cmp/lua/cmp/utils/cache.lua:38: in function 'get_offset'
...e/.local/share/astrovim/lazy/nvim-cmp/lua/cmp/source.lua:353: in function ''
vim/_editor.lua: in function
````

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.