diff --git a/default.nix b/default.nix index 4325764..a3bf783 100644 --- a/default.nix +++ b/default.nix @@ -10,9 +10,10 @@ let ./plugins/explorer ./plugins/theme ./plugins/lsp + ./plugins/formatter ]; - basicConfigs = [builtins.readFile ./config/basic.lua]; + basicConfigs = map builtins.readFile [ ./config/basic.lua ]; pluginConfigs = lib.extractAttrs "luaConfig" plugins; allConfigs = basicConfigs ++ pluginConfigs; in diff --git a/plugins/formatter/default.nix b/plugins/formatter/default.nix new file mode 100644 index 0000000..6aeef34 --- /dev/null +++ b/plugins/formatter/default.nix @@ -0,0 +1,9 @@ +{ vimPlugins, ... }: + +{ + luaConfig = builtins.readFile ./neoformat.lua; + + plugins = [ + vimPlugins.neoformat + ]; +} diff --git a/plugins/formatter/neoformat.lua b/plugins/formatter/neoformat.lua new file mode 100644 index 0000000..dcad4bc --- /dev/null +++ b/plugins/formatter/neoformat.lua @@ -0,0 +1,10 @@ +vim.g.neoformat_try_node_exe = 1 +vim.g.neoformat_only_msg_on_error = 1 +vim.g.neoformat_enabled_markdown = { "denofmt" } + +vim.cmd[[ +aug fmt + au! + au BufWritePre * try | undojoin | Neoformat | catch /E790/ | Neoformat | endtry +aug END +]]