diff --git a/flake.nix b/flake.nix index c02c997e..d6577635 100644 --- a/flake.nix +++ b/flake.nix @@ -55,6 +55,10 @@ enable = true; useUnicode = true; }; + plugins.goyo = { + enable = true; + showLineNumbers = true; + }; plugins.lsp = { enable = true; diff --git a/plugins/default.nix b/plugins/default.nix index b2735107..c6cea5db 100644 --- a/plugins/default.nix +++ b/plugins/default.nix @@ -11,6 +11,7 @@ ./utils/undotree.nix ./utils/commentary.nix ./utils/startify.nix + ./utils/goyo.nix ./languages/treesitter.nix diff --git a/plugins/utils/goyo.nix b/plugins/utils/goyo.nix new file mode 100644 index 00000000..707e119f --- /dev/null +++ b/plugins/utils/goyo.nix @@ -0,0 +1,29 @@ +{ lib, pkgs, ... }@attrs: +let + helpers = import ../helpers.nix { lib = lib; }; +in with helpers; with lib; +mkPlugin attrs { + name = "goyo"; + description = "Enable goyo.vim"; + extraPlugins = [ pkgs.vimPlugins.goyo-vim ]; + + options = { + width = mkDefaultOpt { + description = "Width"; + global = "goyo_width"; + type = types.int; + }; + + height = mkDefaultOpt { + description = "Height"; + global = "goyo_height"; + type = types.int; + }; + + showLineNumbers = mkDefaultOpt { + description = "Show line numbers when in Goyo mode"; + global = "goyo_linenr"; + type = types.bool; + }; + }; +}