Verified Solution

[StackOverflow/go] inlay hints don't work for golang in neovim?

Sponsored Content
### ROOT CAUSE The issue arises because inlay hints for Go in Neovim depend on the correct configuration of both the language server (gopls) and the completion plugin (nvim-cmp). Common causes include: 1. **gopls not enabled for inlay hints**: The `--inlay-hints` flag in gopls might be disabled or misconfigured. 2. **nvim-cmp source not included**: The `inlay_hints` source isn't added to the completion configuration. 3. **Language client setup issues**: The `nvim-lspconfig` plugin for gopls isn't properly configured to enable inlay hints. ### CODE FIX 1. **Enable inlay hints in gopls**: - Add `inlay_hints.enable = true` to your `gopls` settings in `init.vim`/`init.lua`: ```vim " For Vimscript let g:go_gopls_settings = { "inlay_hints": { "enable": true } } " For Lua vim.api.nvim_set_option('gopls', { settings = { gopls = { inlay_hints = { enable = true } } } }) ``` 2. **Configure nvim-cmp to include inlay hints**: - Ensure the `inlay_hints` source is included in the completion setup: ```vim " For Vimscript let g:cmp_sources = [{'name': 'inlay_hints'}] " For Lua require'cmp'.setup({ sources = require'cmp'.config.sources{ { name = 'inlay_hints' } } }) ``` 3. **Verify lsp client configuration**: - Use `nvim-lspconfig` to set up gopls with the correct flags: ```lua require'lspconfig'.gopls.setup{ on_attach = function(client, bufnr) -- Optional: enable hover, definition, etc. end, capabilities = require'lspkind'.capabilities, -- For nvim-cmp integration settings = { gopls = { inlay_hints = { enable = true } } } } ``` **Note**: Ensure you have the necessary plugins (`nvim-cmp`, `nvim-lspconfig`, and `lspkind`) installed and properly configured.
Deploy on DigitalOcean ($200 Credit)

Related Fixes

[StackOverflow/reactjs] @react-pdf/renderer how to build for node when using renderToStream
[StackOverflow/python] Change dash Checklist values by callback
[StackOverflow/python] How can I host a Jupyter Notebook (.ipynb)