diff options
| -rw-r--r-- | checks.nix | 49 | ||||
| -rw-r--r-- | config/after/plugin/globals.lua (renamed from config/globals.lua) | 2 | ||||
| -rw-r--r-- | config/after/plugin/keymaps.lua (renamed from config/keymaps.lua) | 0 | ||||
| -rw-r--r-- | config/ftdetect/just.lua | 5 | ||||
| -rw-r--r-- | config/init.lua | 4 | ||||
| -rw-r--r-- | config/lua/getchoo/efmls.lua (renamed from config/plugins/efmls.lua) | 5 | ||||
| -rw-r--r-- | config/lua/getchoo/init.lua (renamed from config/options.lua) | 7 | ||||
| -rw-r--r-- | config/plugin/bufferline.lua (renamed from config/plugins/bufferline.lua) | 5 | ||||
| -rw-r--r-- | config/plugin/catppuccin.lua (renamed from config/plugins/catppuccin.lua) | 5 | ||||
| -rw-r--r-- | config/plugin/cmp.lua (renamed from config/plugins/cmp.lua) | 5 | ||||
| -rw-r--r-- | config/plugin/dressing.lua | 6 | ||||
| -rw-r--r-- | config/plugin/fidget.lua | 6 | ||||
| -rw-r--r-- | config/plugin/flash.lua | 6 | ||||
| -rw-r--r-- | config/plugin/gitsigns.lua | 6 | ||||
| -rw-r--r-- | config/plugin/ibl.lua (renamed from config/plugins/ibl.lua) | 5 | ||||
| -rw-r--r-- | config/plugin/lsp-format.lua | 6 | ||||
| -rw-r--r-- | config/plugin/lsp.lua (renamed from config/plugins/lsp.lua) | 9 | ||||
| -rw-r--r-- | config/plugin/lualine.lua (renamed from config/plugins/lualine.lua) | 5 | ||||
| -rw-r--r-- | config/plugin/mini.lua (renamed from config/plugins/mini.lua) | 5 | ||||
| -rw-r--r-- | config/plugin/telescope.lua | 6 | ||||
| -rw-r--r-- | config/plugin/treesitter.lua (renamed from config/plugins/treesitter.lua) | 5 | ||||
| -rw-r--r-- | config/plugin/trouble.lua | 6 | ||||
| -rw-r--r-- | config/plugin/which-key.lua | 10 | ||||
| -rw-r--r-- | config/plugins/dressing.lua | 1 | ||||
| -rw-r--r-- | config/plugins/fidget.lua | 1 | ||||
| -rw-r--r-- | config/plugins/flash.lua | 1 | ||||
| -rw-r--r-- | config/plugins/gitsigns.lua | 1 | ||||
| -rw-r--r-- | config/plugins/init.lua | 16 | ||||
| -rw-r--r-- | config/plugins/lsp-format.lua | 1 | ||||
| -rw-r--r-- | config/plugins/telescope.lua | 1 | ||||
| -rw-r--r-- | config/plugins/trouble.lua | 1 | ||||
| -rw-r--r-- | config/plugins/which-key.lua | 5 | ||||
| -rw-r--r-- | flake.nix | 3 | ||||
| -rw-r--r-- | neovim.nix | 16 | ||||
| -rw-r--r-- | nvim.yaml | 5 | ||||
| -rw-r--r-- | selene.toml | 1 |
36 files changed, 137 insertions, 84 deletions
@@ -5,43 +5,24 @@ inherit (pkgs) lib; formatter = self.formatter.${pkgs.system}; in { - check-actionlint = - pkgs.runCommand "check-actionlint" { - nativeBuildInputs = [pkgs.actionlint]; - } '' - actionlint ${./.}/.github/workflows/* - touch $out - ''; - - "check-${formatter.pname}" = - pkgs.runCommand "check-${formatter.pname}" { - nativeBuildInputs = [formatter]; - } '' - ${lib.getExe formatter} --check ${./.} - touch $out - ''; + check-actionlint = pkgs.runCommand "check-actionlint" {} '' + ${lib.getExe pkgs.actionlint} ${./.}/.github/workflows/* + touch $out + ''; - check-statix = - pkgs.runCommand "check-statix" { - nativeBuildInputs = [pkgs.statix]; - } - '' - statix check ${./.} - touch $out - ''; + "check-${formatter.pname}" = pkgs.runCommand "check-${formatter.pname}" {} '' + ${lib.getExe formatter} --check ${./.} + touch $out + ''; - check-nil = - pkgs.runCommand "check-nil" { - nativeBuildInputs = with pkgs; [fd git nil]; - } - '' - cd ${./.} - fd . -e 'nix' | while read -r file; do - nil diagnostics "$file" - done + check-selen = pkgs.runCommand "check-selene" {} '' + ${lib.getExe pkgs.selene} ${./config} + ''; - touch $out - ''; + check-statix = pkgs.runCommand "check-statix" {} '' + ${lib.getExe pkgs.statix} check ${./.} + touch $out + ''; check-stylua = pkgs.runCommand "check-stylua" {} '' ${lib.getExe pkgs.stylua} --check ${./.} diff --git a/config/globals.lua b/config/after/plugin/globals.lua index ce1cd3b..f2d5650 100644 --- a/config/globals.lua +++ b/config/after/plugin/globals.lua @@ -1,5 +1,3 @@ -vim.g.mapleader = "," - -- for deno's lsp vim.g.markdown_fenced_languages = { "ts=typescript", diff --git a/config/keymaps.lua b/config/after/plugin/keymaps.lua index 8e46904..8e46904 100644 --- a/config/keymaps.lua +++ b/config/after/plugin/keymaps.lua diff --git a/config/ftdetect/just.lua b/config/ftdetect/just.lua new file mode 100644 index 0000000..4c7098a --- /dev/null +++ b/config/ftdetect/just.lua @@ -0,0 +1,5 @@ +vim.filetype.add({ + filename = { + ["justfile"] = "just", + }, +}) diff --git a/config/init.lua b/config/init.lua deleted file mode 100644 index e7b816f..0000000 --- a/config/init.lua +++ /dev/null @@ -1,4 +0,0 @@ -require("getchoo.globals") -require("getchoo.keymaps") -require("getchoo.options") -require("getchoo.plugins") diff --git a/config/plugins/efmls.lua b/config/lua/getchoo/efmls.lua index 979cafb..10d1dee 100644 --- a/config/plugins/efmls.lua +++ b/config/lua/getchoo/efmls.lua @@ -1,10 +1,12 @@ local alex = require("efmls-configs.linters.alex") +alex.rootMarkers = nil local actionlint = require("efmls-configs.linters.actionlint") local beautysh = require("efmls-configs.formatters.beautysh") local codespell = require("efmls-configs.linters.codespell") local fish_indent = require("efmls-configs.formatters.fish_indent") local prettier = require("efmls-configs.formatters.prettier") local prettier_eslint = require("efmls-configs.formatters.prettier_eslint") +local selene = require("efmls-configs.linters.selene") local shellcheck = require("efmls-configs.linters.shellcheck") local statix = require("efmls-configs.linters.statix") local stylua = require("efmls-configs.formatters.stylua") @@ -14,7 +16,6 @@ local languages = { bash = { beautysh, - shellcheck, }, css = { prettier }, @@ -27,7 +28,7 @@ local languages = { json = { prettier }, - lua = { stylua }, + lua = { selene, stylua }, nix = { statix }, diff --git a/config/options.lua b/config/lua/getchoo/init.lua index 5277299..c73e88d 100644 --- a/config/options.lua +++ b/config/lua/getchoo/init.lua @@ -2,7 +2,9 @@ local opt = vim.opt opt.shiftwidth = 2 opt.tabstop = 2 -opt.smartindent = true +-- https://www.reddit.com/r/neovim/comments/14n6iiy/if_you_have_treesitter_make_sure_to_disable +-- TLDR: this breaks things with treesitter indent +opt.smartindent = false opt.wrap = true opt.syntax = "on" opt.termguicolors = true @@ -16,3 +18,6 @@ else end opt.backupdir = backupDir + +vim.g.mapleader = "," +vim.g.do_filetype_lua = 1 diff --git a/config/plugins/bufferline.lua b/config/plugin/bufferline.lua index a74dfa2..f6e68ef 100644 --- a/config/plugins/bufferline.lua +++ b/config/plugin/bufferline.lua @@ -1,3 +1,8 @@ +if vim.g.did_load_bufferline_plugin then + return +end +vim.g.did_load_bufferline_plugin = true + require("bufferline").setup({ options = { always_show_bufferline = false, diff --git a/config/plugins/catppuccin.lua b/config/plugin/catppuccin.lua index 6f8c367..f457fc2 100644 --- a/config/plugins/catppuccin.lua +++ b/config/plugin/catppuccin.lua @@ -1,3 +1,8 @@ +if vim.g.did_load_catppuccin_plugin then + return +end +vim.g.did_load_catppuccin_plugin = true + local compile_path = vim.fn.stdpath("cache") .. "/catppuccin-nvim" vim.fn.mkdir(compile_path, "p") vim.opt.runtimepath:append(compile_path) diff --git a/config/plugins/cmp.lua b/config/plugin/cmp.lua index eee5eb1..10c750f 100644 --- a/config/plugins/cmp.lua +++ b/config/plugin/cmp.lua @@ -1,3 +1,8 @@ +if vim.g.did_load_cmp_plugin then + return +end +vim.g.did_load_cmp_plugin = true + local cmp = require("cmp") cmp.setup({ diff --git a/config/plugin/dressing.lua b/config/plugin/dressing.lua new file mode 100644 index 0000000..dc926fe --- /dev/null +++ b/config/plugin/dressing.lua @@ -0,0 +1,6 @@ +if vim.g.did_load_dressing_plugin then + return +end +vim.g.did_load_dressing_plugin = true + +require("dressing") diff --git a/config/plugin/fidget.lua b/config/plugin/fidget.lua new file mode 100644 index 0000000..59fbb0c --- /dev/null +++ b/config/plugin/fidget.lua @@ -0,0 +1,6 @@ +if vim.g.did_load_fidget_plugin then + return +end +vim.g.did_load_fidget_plugin = true + +require("fidget").setup() diff --git a/config/plugin/flash.lua b/config/plugin/flash.lua new file mode 100644 index 0000000..f3e1c15 --- /dev/null +++ b/config/plugin/flash.lua @@ -0,0 +1,6 @@ +if vim.g.did_load_flash_plugin then + return +end +vim.g.did_load_flash_plugin = true + +require("flash").setup() diff --git a/config/plugin/gitsigns.lua b/config/plugin/gitsigns.lua new file mode 100644 index 0000000..7f6f457 --- /dev/null +++ b/config/plugin/gitsigns.lua @@ -0,0 +1,6 @@ +if vim.g.did_load_gitsigns_plugin then + return +end +vim.g.did_load_gitsigns_plugin = true + +require("gitsigns").setup() diff --git a/config/plugins/ibl.lua b/config/plugin/ibl.lua index b63139b..d780c74 100644 --- a/config/plugins/ibl.lua +++ b/config/plugin/ibl.lua @@ -1,3 +1,8 @@ +if vim.g.did_load_ibl_plugin then + return +end +vim.g.did_load_ibl_plugin = true + require("ibl").setup({ exclude = { filetypes = { diff --git a/config/plugin/lsp-format.lua b/config/plugin/lsp-format.lua new file mode 100644 index 0000000..e21bdfd --- /dev/null +++ b/config/plugin/lsp-format.lua @@ -0,0 +1,6 @@ +if vim.g.did_load_lsp_format_plugin then + return +end +vim.g.did_load_lsp_format_plugin = true + +require("lsp-format").setup() diff --git a/config/plugins/lsp.lua b/config/plugin/lsp.lua index 9492df1..0312523 100644 --- a/config/plugins/lsp.lua +++ b/config/plugin/lsp.lua @@ -1,3 +1,8 @@ +if vim.g.did_load_lsp_plugin then + return +end +vim.g.did_load_lsp_plugin = true + local lsp_servers = { bashls = { binary = "bash-language-server", @@ -8,8 +13,8 @@ local lsp_servers = { eslint = {}, efm = { - binary = "true", - extraOptions = require("getchoo.plugins.efmls"), + binary = "efm-langserver", + extraOptions = require("getchoo.efmls"), }, lua_ls = { diff --git a/config/plugins/lualine.lua b/config/plugin/lualine.lua index 2727d75..8a8f87a 100644 --- a/config/plugins/lualine.lua +++ b/config/plugin/lualine.lua @@ -1,3 +1,8 @@ +if vim.g.did_load_lualine_plugin then + return +end +vim.g.did_load_lualine_plugin = true + require("lualine").setup({ options = { theme = "catppuccin", diff --git a/config/plugins/mini.lua b/config/plugin/mini.lua index e2b3b46..a1ab447 100644 --- a/config/plugins/mini.lua +++ b/config/plugin/mini.lua @@ -1,3 +1,8 @@ +if vim.g.did_load_mini_plugin then + return +end +vim.g.did_load_mini_plugin = true + require("mini.comment").setup({ options = { custom_commentstring = function() diff --git a/config/plugin/telescope.lua b/config/plugin/telescope.lua new file mode 100644 index 0000000..d50d742 --- /dev/null +++ b/config/plugin/telescope.lua @@ -0,0 +1,6 @@ +if vim.g.did_load_telescope_plugin then + return +end +vim.g.did_load_telescope_plugin = true + +require("telescope").setup() diff --git a/config/plugins/treesitter.lua b/config/plugin/treesitter.lua index e9b88f2..f2da8f7 100644 --- a/config/plugins/treesitter.lua +++ b/config/plugin/treesitter.lua @@ -1,3 +1,8 @@ +if vim.g.did_load_treesitter_plugin then + return +end +vim.g.did_load_treesitter_plugin = true + require("nvim-treesitter.configs").setup({ auto_install = false, diff --git a/config/plugin/trouble.lua b/config/plugin/trouble.lua new file mode 100644 index 0000000..e1e7768 --- /dev/null +++ b/config/plugin/trouble.lua @@ -0,0 +1,6 @@ +if vim.g.did_load_trouble_plugin then + return +end +vim.g.did_load_trouble_plugin = true + +require("trouble").setup() diff --git a/config/plugin/which-key.lua b/config/plugin/which-key.lua new file mode 100644 index 0000000..e6d5ecc --- /dev/null +++ b/config/plugin/which-key.lua @@ -0,0 +1,10 @@ +if vim.g.did_load_which_key_plugin then + return +end +vim.g.did_load_which_key_plugin = true + +require("which-key").setup({ + plugins = { + spelling = { enable = true }, + }, +}) diff --git a/config/plugins/dressing.lua b/config/plugins/dressing.lua deleted file mode 100644 index a4fcb44..0000000 --- a/config/plugins/dressing.lua +++ /dev/null @@ -1 +0,0 @@ -require("dressing") diff --git a/config/plugins/fidget.lua b/config/plugins/fidget.lua deleted file mode 100644 index 4f1ab35..0000000 --- a/config/plugins/fidget.lua +++ /dev/null @@ -1 +0,0 @@ -require("fidget").setup() diff --git a/config/plugins/flash.lua b/config/plugins/flash.lua deleted file mode 100644 index 9f9c773..0000000 --- a/config/plugins/flash.lua +++ /dev/null @@ -1 +0,0 @@ -require("flash").setup() diff --git a/config/plugins/gitsigns.lua b/config/plugins/gitsigns.lua deleted file mode 100644 index d16d238..0000000 --- a/config/plugins/gitsigns.lua +++ /dev/null @@ -1 +0,0 @@ -require("gitsigns").setup() diff --git a/config/plugins/init.lua b/config/plugins/init.lua deleted file mode 100644 index 5610f2d..0000000 --- a/config/plugins/init.lua +++ /dev/null @@ -1,16 +0,0 @@ -require("getchoo.plugins.bufferline") -require("getchoo.plugins.catppuccin") -require("getchoo.plugins.cmp") -require("getchoo.plugins.dressing") -require("getchoo.plugins.fidget") -require("getchoo.plugins.flash") -require("getchoo.plugins.gitsigns") -require("getchoo.plugins.ibl") -require("getchoo.plugins.lsp-format") -require("getchoo.plugins.lsp") -require("getchoo.plugins.lualine") -require("getchoo.plugins.mini") -require("getchoo.plugins.telescope") -require("getchoo.plugins.treesitter") -require("getchoo.plugins.trouble") -require("getchoo.plugins.which-key") diff --git a/config/plugins/lsp-format.lua b/config/plugins/lsp-format.lua deleted file mode 100644 index 6b57642..0000000 --- a/config/plugins/lsp-format.lua +++ /dev/null @@ -1 +0,0 @@ -require("lsp-format").setup() diff --git a/config/plugins/telescope.lua b/config/plugins/telescope.lua deleted file mode 100644 index be3366b..0000000 --- a/config/plugins/telescope.lua +++ /dev/null @@ -1 +0,0 @@ -require("telescope").setup() diff --git a/config/plugins/trouble.lua b/config/plugins/trouble.lua deleted file mode 100644 index 38ef1e9..0000000 --- a/config/plugins/trouble.lua +++ /dev/null @@ -1 +0,0 @@ -require("trouble").setup() diff --git a/config/plugins/which-key.lua b/config/plugins/which-key.lua deleted file mode 100644 index 32ca2ff..0000000 --- a/config/plugins/which-key.lua +++ /dev/null @@ -1,5 +0,0 @@ -require("which-key").setup({ - plugins = { - spelling = { enable = true }, - }, -}) @@ -20,12 +20,13 @@ checks = forAllSystems (pkgs: import ./checks.nix {inherit pkgs self;}); devShells = forAllSystems (pkgs: { - default = pkgs.mkShell { + default = pkgs.mkShellNoCC { packages = with pkgs; [ actionlint # lua lua-language-server + selene stylua # nix @@ -5,16 +5,12 @@ self: { }: let config = pkgs.vimUtils.buildVimPlugin { pname = "neovim-config"; - version = builtins.substring 0 8 self.rev or self.dirtyRev or "dirty"; + version = self.shortRev or self.dirtyShortRev or "unknown-dirty"; - src = null; - - dontUnpack = true; - - buildPhase = '' - mkdir -p lua - cp -r ${./config} lua/getchoo - ''; + src = lib.fileset.toSource { + root = ./config; + fileset = lib.fileset.gitTracked ./config; + }; }; plugins = with pkgs.vimPlugins; [ @@ -53,9 +49,9 @@ self: { plenary-nvim nvim-treesitter.withAllGrammars + nvim-treesitter-context nvim-ts-context-commentstring nvim-ts-autotag - vim-just trouble-nvim which-key-nvim diff --git a/nvim.yaml b/nvim.yaml new file mode 100644 index 0000000..7465c62 --- /dev/null +++ b/nvim.yaml @@ -0,0 +1,5 @@ +base: lua52 + +globals: + vim: + any: true diff --git a/selene.toml b/selene.toml new file mode 100644 index 0000000..98b6ac7 --- /dev/null +++ b/selene.toml @@ -0,0 +1 @@ +std = "nvim" |
