You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Kind of an openended issue.
My initial issue is that I contribute to several haskell packages, and haskell plugins like stan or hlint are noisy in the diagnostics.
To work around this:
One way to fix this is probably to ignore DEBUG/INFO diagnostics as a general diagnostic nvim functions. can be annoying if you want to keep hlint but not stan
add a hls.json with the correct config in every project. Can be annoying if you can't commit it.
change the config dynamically. This is the usecase I prefer, toggling on/off plugins at runtime .
Here is what I've tried:
M.toggle_stan = function ()
local settings = M.generate_settings()
settings.hls.default_settings.haskell.plugin.stan.globalOn = not settings.hls.default_settings.haskell.plugin.stan.globalOn
return settings
end
M.restart_hls = function ()
local new_settings = M.toggle_stan()
vim.g.settings = new_settings
vim.cmd [[ HlsRestart ]]
end
Seems to work. Looking at the HLS doc, it looks like it could be generalized, haskell-tools could parse the available plugins via --list-plugins and expose a :HlsTools plugin toggle/enable/disable <plugin>.
Unrelated/more of a general problem but I believe that a good way to expose commands could be to have a function that registers menu commands. For my own purpose I have created a local context menu where I add commands but maybe haskell-tools could have a
function register_menu_entries command (prefix)
vim.cmd[[menu ]]..prefix..[[.Restart\ HLS <cmd>HlsRestart<cr>]]
...
end
The text was updated successfully, but these errors were encountered:
This sounds like a good idea!
Not sure I fully understand the "registering menu commands" thing though.
I've been planning to rework the commands, so that it's less polluting and more similar to how I implemented it with rustaceanvim: One :Hls command (for haskell-language-server) and :Ht (for non-hls tools) with subcommands and completions, e.g. :Hls [re]start, :Hls stop, :Hls plugin toggle, and :Ht repl [...], etc (see #297)
Feature description
Kind of an openended issue.
My initial issue is that I contribute to several haskell packages, and haskell plugins like stan or hlint are noisy in the diagnostics.
To work around this:
Here is what I've tried:
Seems to work. Looking at the HLS doc, it looks like it could be generalized, haskell-tools could parse the available plugins via
--list-plugins
and expose a:HlsTools plugin toggle/enable/disable <plugin>
.Unrelated/more of a general problem but I believe that a good way to expose commands could be to have a function that registers
menu
commands. For my own purpose I have created a local context menu where I add commands but maybe haskell-tools could have aThe text was updated successfully, but these errors were encountered: