aboutsummaryrefslogtreecommitdiffstats
path: root/home-manager/soispha/config/neovim/nixvim/plugins/lsp-progress-nvim/default.nix
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2023-08-26 12:06:40 +0200
committerSoispha <soispha@vhack.eu>2023-08-26 12:06:40 +0200
commit12043656054c4c45ffea24680147b1be9265e721 (patch)
tree4165adae098b55fdca580b1efca0c18cc83d4d92 /home-manager/soispha/config/neovim/nixvim/plugins/lsp-progress-nvim/default.nix
parentFix(hm/conf/lf/commands): Actually send cd command to lf instance (diff)
downloadnixos-config-12043656054c4c45ffea24680147b1be9265e721.zip
Feat(hm/conf/neovim/plugins/lsp-progress): Init
Diffstat (limited to 'home-manager/soispha/config/neovim/nixvim/plugins/lsp-progress-nvim/default.nix')
-rw-r--r--home-manager/soispha/config/neovim/nixvim/plugins/lsp-progress-nvim/default.nix50
1 files changed, 50 insertions, 0 deletions
diff --git a/home-manager/soispha/config/neovim/nixvim/plugins/lsp-progress-nvim/default.nix b/home-manager/soispha/config/neovim/nixvim/plugins/lsp-progress-nvim/default.nix
new file mode 100644
index 00000000..71385a91
--- /dev/null
+++ b/home-manager/soispha/config/neovim/nixvim/plugins/lsp-progress-nvim/default.nix
@@ -0,0 +1,50 @@
+{
+ lib,
+ pkgs,
+ ...
+}: {
+ programs.nixvim = {
+ # TODO package lsp-progress-nvim though a module
+ extraConfigLuaPost = ''
+ ${lib.strings.fileContents ./lua/lsp-progress-nvim.lua}
+ '';
+ extraPlugins = [
+ pkgs.vimExtraPlugins.lsp-progress-nvim
+ ];
+
+ # Status line setup
+ autoGroups.lsp_refresh.clear = true;
+ autoCmd = [
+ {
+ event = ["User LspProgressStatusUpdated"];
+ pattern = ["*"];
+ callback =
+ /*
+ lua
+ */
+ {
+ __raw = ''
+ require("lualine").refresh
+ '';
+ };
+ group = "lsp_refresh";
+ description = "Refresh the statusbar when the lsp status was updated.";
+ }
+ ];
+ plugins.lualine = let
+ get_lsp_progress = {
+ __raw =
+ /*
+ lua
+ */
+ ''
+ require('lsp-progress').progress
+ '';
+ };
+ in {
+ sections = {
+ lualine_c = [{name = get_lsp_progress;}];
+ };
+ };
+ };
+}