We recently released a new NeoVim plugin for OCaml. It has been live for a few months now (you can find the announcement here if you are curious), and we would like to know what you think of it.
The next step is to improve the plugin in order to better meet the expectations of the users. To do that, it would be very helpful for us if you could reply to the following poll. Do not hesitate to share your thoughts about the plugin, both positive and negative, and any ideas are also welcome. We are very interested in improving the plugin’s usability, so your impressions are important.
I use vim. I’d like to try neovim, but I haven’t gotten around to it. I use Merlin. I’m interested inlay hints for inferred types. I just looked at the neovim plugin page. I guess I was not aware of the plugin, and the discuss post I read last year about inlay hints was using ocamllsp.
Is LazyVim using the new plugin? I recall I tried to program in OCaml with LazyVim last year, but the indentation was broken out-of-the-box and I didn’t bother much investigating what was wrong there. (likely something with Tree-sitter indentation queries for OCaml)
LazyVim is not using this plugin. As far as I know, it is a built-in Neovim environment with a first set of plugins.
It integrates LSP, and you need to add your required LSP servers (here, ocamllsp). But this plugin is a complementary project, as it provides OCaml-specific features that are not covered by the LSP.
Hello everyone, thanks for answering the initial survey ! We would like to follow up to understand better what would be the next steps to improve the overall experience.
As far as we know there are 3 main ways to develop in OCaml with Neovim:
Use the legacy Merlin plugin initially written for vim
Use the vanilla lsp client from Neovim
Use a specialized lsp plugin such as @tarides/ocaml.nvim or @syaiful6’s one
If you answered “No” to the survey, could you detail a bit more your setup ? Are you using another plugin for writing OCaml ? What features do you think are missing from the existing plugins ?
We are also considering how we could join our efforts with other plugins such as @syaiful6/ocaml.nvim in the future to make sure they stay well maintained.
I’m still on (paleo)-Vim 9, and i’m using classic merlin. For other languages I am using LSP on vim, but the standard Merlin lsp implementation would miss some features afaiu.
I’m all for combining efforts. If a new LSP-based solution would subsume the full functionality of legacy Merlin, I would use it on Vim 9. I might even switch to neovim if required, although that would mean losing MacVim.
The main reason is that I have a working setup. I’ll eventually upend everything and move to a more modern stack one day, but it’s time consuming to move to a new plugin when merlin just works.
Thanks ! The goal of the @tarides/ocaml.nvim plugin is to bridge the feature gap between vanilla LSP and the classic Merlin plugin. And I think that goal is mostly achieved right now (you can see all the features in the readme). If anything is still missing it would be super helpful to know what
But anyways it is only available on Neovim… I don’t think there is any work going that direction right now for Vim 9. (@Juloo had some thoughts about this I think ?)