From 27bee5c6bc5ab8df93f2be20fc9e20ed6e71bd27 Mon Sep 17 00:00:00 2001 From: seth Date: Fri, 1 Sep 2023 15:35:00 -0400 Subject: initial commit --- .github/dependabot.yml | 8 ++ .github/workflows/build.yaml | 22 ++++ .gitignore | 3 + .luarc.json | 253 ++++++++++++++++++++++++++++++++++++++++ LICENSE | 21 ++++ README.md | 3 + default.nix | 30 +++++ flake.lock | 26 +++++ flake.nix | 45 +++++++ lua/getchoo/filetypes.lua | 8 ++ lua/getchoo/init.lua | 21 ++++ lua/getchoo/keybinds.lua | 38 ++++++ lua/getchoo/plugins/general.lua | 66 +++++++++++ lua/getchoo/plugins/init.lua | 6 + lua/getchoo/plugins/lazy.lua | 37 ++++++ lua/getchoo/plugins/lsp.lua | 161 +++++++++++++++++++++++++ shell.nix | 6 + 17 files changed, 754 insertions(+) create mode 100644 .github/dependabot.yml create mode 100644 .github/workflows/build.yaml create mode 100644 .gitignore create mode 100644 .luarc.json create mode 100644 LICENSE create mode 100644 README.md create mode 100644 default.nix create mode 100644 flake.lock create mode 100644 flake.nix create mode 100644 lua/getchoo/filetypes.lua create mode 100644 lua/getchoo/init.lua create mode 100644 lua/getchoo/keybinds.lua create mode 100644 lua/getchoo/plugins/general.lua create mode 100644 lua/getchoo/plugins/init.lua create mode 100644 lua/getchoo/plugins/lazy.lua create mode 100644 lua/getchoo/plugins/lsp.lua create mode 100644 shell.nix diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..1d662ce --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,8 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "weekly" + commit-message: + prefix: "actions" diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..a7133ae --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,22 @@ +name: build plugin + +on: + push: + branches: + - main + pull_request: + workflow_dispatch: + + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - uses: DeterminateSystems/nix-installer-action@main + - uses: DeterminateSystems/magic-nix-cache-action@main + + - name: run build + run: + nix build -L diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..70ffe88 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.direnv +result* +repl-result-out* diff --git a/.luarc.json b/.luarc.json new file mode 100644 index 0000000..694db71 --- /dev/null +++ b/.luarc.json @@ -0,0 +1,253 @@ +{ + "workspace.library": [ + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/bufferline.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/catppuccin-nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/cmp-buffer", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/cmp-nvim-lsp", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/cmp-path", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/cmp_luasnip", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/editorconfig.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/fidget.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/gitsigns.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/leap.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/lualine.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/luasnip", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/null-ls.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/nvim-autopairs", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/nvim-cmp", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/nvim-lspconfig", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/nvim-tree.lua", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/nvim-treesitter", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/nvim-web-devicons", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/plenary.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/telescope.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/trouble.nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vim-just", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ada", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-agda", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-arduino", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-astro", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-awk", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-bash", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-bass", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-beancount", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-bibtex", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-bicep", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-bitbake", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-blueprint", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-c", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-c_sharp", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-cairo", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-capnp", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-chatito", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-clojure", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-cmake", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-comment", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-commonlisp", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-cooklang", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-corn", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-cpon", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-cpp", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-css", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-csv", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-cuda", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-cue", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-d", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-dart", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-devicetree", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-dhall", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-diff", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-dockerfile", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-dot", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-doxygen", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-dtd", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ebnf", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-eex", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-elixir", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-elm", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-elsa", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-elvish", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-embedded_template", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-erlang", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-fennel", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-firrtl", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-fish", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-foam", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-forth", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-fortran", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-fsh", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-func", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-fusion", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gdscript", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-git_config", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-git_rebase", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gitattributes", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gitcommit", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gitignore", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gleam", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-glimmer", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-glsl", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-go", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-godot_resource", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gomod", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gosum", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gowork", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gpg", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-graphql", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-groovy", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-hack", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-hare", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-haskell", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-haskell_persistent", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-hcl", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-heex", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-hjson", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-hlsl", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-hocon", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-hoon", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-html", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-htmldjango", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-http", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-hurl", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ini", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ispc", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-janet_simple", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-java", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-javascript", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-jq", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-jsdoc", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-json", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-json5", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-jsonc", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-jsonnet", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-julia", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-kdl", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-kotlin", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-lalrpop", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-latex", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ledger", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-llvm", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-lua", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-luadoc", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-luap", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-luau", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-m68k", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-make", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-markdown", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-markdown_inline", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-matlab", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-menhir", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-mermaid", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-meson", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-mlir", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-nickel", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ninja", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-nix", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-norg", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-objc", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ocaml", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ocaml_interface", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ocamllex", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-odin", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-org", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-pascal", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-passwd", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-pem", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-perl", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-php", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-phpdoc", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-pioasm", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-po", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-poe_filter", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-pony", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-prisma", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-promql", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-proto", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-prql", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-psv", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-pug", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-puppet", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-pymanifest", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-python", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ql", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-qmldir", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-qmljs", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-query", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-r", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-racket", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-rasi", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-re2c", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-regex", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-rego", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-requirements", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-rnoweb", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-robot", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ron", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-rst", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ruby", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-rust", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-scala", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-scfg", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-scheme", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-scss", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-slint", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-smali", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-smithy", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-solidity", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-sparql", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-sql", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-squirrel", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-starlark", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-strace", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-supercollider", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-surface", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-svelte", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-swift", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-sxhkdrc", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-systemtap", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-t32", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-tablegen", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-teal", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-terraform", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-thrift", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-tiger", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-tlaplus", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-todotxt", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-toml", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-tsv", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-tsx", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-turtle", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-twig", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-typescript", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-ungrammar", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-usd", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-uxntal", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-v", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-vala", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-verilog", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-vhs", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-vim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-vimdoc", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-vue", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-wgsl", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-wgsl_bevy", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-wing", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-xml", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-yaml", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-yang", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-yuck", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-zig", + "/home/seth/.config/nvim", + "/nix/store/grcfjxsgxjajc1ws6ip2jkkhd238dx77-neovim-unwrapped-0.9.1/share/nvim/runtime", + "/nix/store/grcfjxsgxjajc1ws6ip2jkkhd238dx77-neovim-unwrapped-0.9.1/lib/nvim", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/catppuccin-nvim/after", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/cmp-buffer/after", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/cmp-nvim-lsp/after", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/cmp-path/after", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/cmp_luasnip/after", + "/nix/store/mlqag16rr51xl6dhwywh464h50grdg6n-vim-pack-dir/pack/myNeovimPackages/start/editorconfig.nvim/after", + "/home/seth/.cache/nvim/catppuccin-nvim", + "${3rd}/luassert/library" + ] +} \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..171b89c --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 seth + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..4c617fd --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# getchvim + +my "from scratch" neovim config. figured i would make it separate from my overengineered [flake](https://github.com/getchoo/flake) diff --git a/default.nix b/default.nix new file mode 100644 index 0000000..be725bd --- /dev/null +++ b/default.nix @@ -0,0 +1,30 @@ +{ + lib, + buildVimPluginFrom2Nix, + self, + version, +}: let + filter = path: type: let + path' = toString path; + base = baseNameOf path'; + isLua = lib.any (suffix: lib.hasSuffix suffix base) [".lua"]; + in + type == "directory" || isLua; + + filterSource = src: + lib.cleanSourceWith { + src = lib.cleanSource self; + inherit filter; + }; +in + buildVimPluginFrom2Nix { + pname = "getchvim"; + inherit version; + src = filterSource self; + meta = with lib; { + homepage = "https://github.com/getchoo/getchvim"; + license = licenses.mit; + maintainers = with maintainers; [getchoo]; + platforms = platforms.all; + }; + } diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..d37b30a --- /dev/null +++ b/flake.lock @@ -0,0 +1,26 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1693471703, + "narHash": "sha256-0l03ZBL8P1P6z8MaSDS/MvuU8E75rVxe5eE1N6gxeTo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "3e52e76b70d5508f3cec70b882a29199f4d1ee85", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "ref": "nixos-unstable", + "type": "indirect" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..561d71a --- /dev/null +++ b/flake.nix @@ -0,0 +1,45 @@ +{ + description = "getchoo's neovim config"; + + inputs.nixpkgs.url = "nixpkgs/nixos-unstable"; + + outputs = { + self, + nixpkgs, + ... + }: let + inherit (nixpkgs) lib; + version = builtins.substring 0 8 self.lastModifiedDate or "dirty"; + + systems = [ + "x86_64-linux" + "aarch64-linux" + "x86_64-darwin" + "aarch64-darwin" + ]; + + forAllSystems = fn: lib.genAttrs systems (sys: fn nixpkgs.legacyPackages.${sys}); + in { + devShells = forAllSystems (pkgs: { + default = import ./shell.nix {inherit pkgs;}; + }); + + formatter = forAllSystems (pkgs: pkgs.alejandra); + + packages = forAllSystems (pkgs: let + p = self.overlays.default pkgs pkgs; + in { + inherit (p.vimPlugins) getchvim; + default = p.vimPlugins.getchvim; + }); + + overlays.default = final: prev: { + vimPlugins = prev.vimPlugins.extend (_: _: { + getchvim = prev.callPackage ./default.nix { + inherit (final.vimUtils) buildVimPluginFrom2Nix; + inherit self version; + }; + }); + }; + }; +} diff --git a/lua/getchoo/filetypes.lua b/lua/getchoo/filetypes.lua new file mode 100644 index 0000000..cb62635 --- /dev/null +++ b/lua/getchoo/filetypes.lua @@ -0,0 +1,8 @@ +local filetypes = { + filename = { + PKGBUILD = "text", + [".makepkg.conf"] = "text", + }, +} + +vim.filetype.add(filetypes) diff --git a/lua/getchoo/init.lua b/lua/getchoo/init.lua new file mode 100644 index 0000000..94a02dc --- /dev/null +++ b/lua/getchoo/init.lua @@ -0,0 +1,21 @@ +local cmd = vim.cmd +local opt = vim.opt + +-- text options +opt.tabstop = 2 +opt.shiftwidth = 2 +opt.expandtab = false +opt.smartindent = true +opt.wrap = false + +-- appearance +opt.syntax = "on" +cmd("filetype plugin indent on") +opt.termguicolors = true + +require("getchoo.keybinds") +require("getchoo.filetypes") + +if vim.g.no_plugins then + require("getchoo.plugins") +end diff --git a/lua/getchoo/keybinds.lua b/lua/getchoo/keybinds.lua new file mode 100644 index 0000000..a71f606 --- /dev/null +++ b/lua/getchoo/keybinds.lua @@ -0,0 +1,38 @@ +vim.g.mapleader = "," + +local opts = { noremap = true, silent = true } +local set = function(mode, key, vimcmd) + vim.keymap.set(mode, key, vimcmd, opts) +end + +set("n", "t", function() + vim.cmd("NvimTreeToggle") +end) + +for i = 1, 9 do + set("n", "" .. i, function() + local vimcmd = "BufferLineGoToBuffer " .. i + vim.cmd(vimcmd) + end) +end + +set("n", "q", function() + vim.cmd("BufferLinePickClose") +end) + +set("n", "e", vim.diagnostic.open_float) +set("n", "[d", vim.diagnostic.goto_prev) +set("n", "]d", vim.diagnostic.goto_next) +set("n", "u", vim.diagnostic.setloclist) + +set("n", "f", function() + vim.cmd("Telescope") +end) + +set("n", "p", function() + vim.cmd("TroubleToggle") +end) + +set("n", "z", function() + vim.api.nvim_clear_autocmds({ group = "LspFormatting" }) +end) diff --git a/lua/getchoo/plugins/general.lua b/lua/getchoo/plugins/general.lua new file mode 100644 index 0000000..3c89ea6 --- /dev/null +++ b/lua/getchoo/plugins/general.lua @@ -0,0 +1,66 @@ +---- autopairs +require("nvim-autopairs").setup({ + disable_filetype = { "TeleScopePrompt" }, +}) + +---- catppuccin +local compile_path = vim.fn.stdpath("cache") .. "/catppuccin-nvim" +vim.fn.mkdir(compile_path, "p") +vim.opt.runtimepath:append(compile_path) + +require("catppuccin").setup({ + compile_path = compile_path, + flavour = "mocha", -- mocha, macchiato, frappe, latte + integrations = { + barbar = true, + cmp = true, + gitsigns = true, + leap = true, + native_lsp = { + enabled = true, + }, + nvimtree = true, + treesitter_context = true, + treesitter = true, + telescope = true, + lsp_trouble = true, + }, + no_italic = true, +}) +vim.api.nvim_command("colorscheme catppuccin") + +---- bufferline +require("bufferline").setup({ + options = { + always_show_bufferline = false, + highlights = require("catppuccin.groups.integrations.bufferline").get(), + diagnostics = "nvim_lsp", + mode = "buffers", + numbers = "ordinal", + separator_style = "slant", + }, +}) + +---- gitsigns +require("gitsigns").setup() + +---- leap +require("leap").add_default_mappings() + +---- lualine +require("lualine").setup({ + options = { + theme = "catppuccin", + }, + extensions = { "nvim-tree" }, +}) + +---- nvim-tree +require("nvim-tree").setup() + +---- treesitter +require("nvim-treesitter.configs").setup({ + auto_install = false, + highlight = { enable = true }, + indent = { enable = true }, +}) diff --git a/lua/getchoo/plugins/init.lua b/lua/getchoo/plugins/init.lua new file mode 100644 index 0000000..f0e8a44 --- /dev/null +++ b/lua/getchoo/plugins/init.lua @@ -0,0 +1,6 @@ +if vim.g.use_lazy then + require("getchoo.plugins.lazy") +end + +require("getchoo.plugins.general") +require("getchoo.plugins.lsp") diff --git a/lua/getchoo/plugins/lazy.lua b/lua/getchoo/plugins/lazy.lua new file mode 100644 index 0000000..bdd6dc3 --- /dev/null +++ b/lua/getchoo/plugins/lazy.lua @@ -0,0 +1,37 @@ +local lazy_path = vim.fn.stdpath("data") .. "/lazy/lazy.vim" + +-- bootstrap lazy +if not vim.loop.fs_stat(lazy_path) then + vim.fn.system({ + "git", + "clone", + "--filter=blob:none", + "https://github.com/folke/lazy.nvim.git", + "--branch=stable", + lazy_path, + }) +end + +vim.opt.rtp:prepend(lazy_path) + +require("lazy").setup({ + { "akinsho/bufferline.nvim", version = "*", dependencies = "nvim-tree/nvim-web-devicons" }, + { "catppuccin/nvim", name = "catppuccin", priority = 1000 }, + "hrsh7th/nvim-cmp", + "hrsh7th/cmp-nvim-lsp", + "hrsh7th/cmp-buffer", + "saadparwaiz1/cmp_luasnip", + "FelipeLema/cmp-async-path", + { "j-hui/fidget.nvim", tag = "legacy" }, + "lewis6991/gitsigns.nvim", + { "folke/flash.nvim", event = "VeryLazy" }, + { "nvim-lualine/lualine.nvim", dependencies = "nvim-tree/nvim-web-devicons" }, + "L3MON4D3/LuaSnip", + { "echasnovski/mini.pairs", event = "VeryLazy" }, + "neovim/nvim-lspconfig", + { "nvim-tree/nvim-tree.lua", dependencies = "nvim-tree/nvim-web-devicons" }, + "nvim-treesitter/nvim-treesitter", + "nvim-lua/plenary.nvim", + { "nvim-telescope/telescope.nvim", tag = "0.1.2" }, + { "folke/trouble.nvim", dependencies = { "nvim-tree/nvim-web-devicons" } }, +}) diff --git a/lua/getchoo/plugins/lsp.lua b/lua/getchoo/plugins/lsp.lua new file mode 100644 index 0000000..b9e8a78 --- /dev/null +++ b/lua/getchoo/plugins/lsp.lua @@ -0,0 +1,161 @@ +---- cmp +local cmp = require("cmp") +local luasnip = require("luasnip") +local mapping = cmp.mapping + +require("cmp").setup({ + completion = { + completeopt = "menu,menuone,noinsert", + }, + + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) + end, + }, + + mapping = mapping.preset.insert({ + [""] = mapping.select_next_item({ behavior = cmp.SelectBehavior.Insert }), + [""] = mapping.select_prev_item({ behavior = cmp.SelectBehavior.Insert }), + [""] = mapping.scroll_docs(-4), + [""] = mapping.scroll_docs(4), + [""] = mapping.complete(), + [""] = mapping.abort(), + [""] = mapping.confirm({ select = true }), + [""] = mapping.confirm({ + behavior = cmp.ConfirmBehavior.Replace, + select = true, + }), + }), + + sources = cmp.config.sources({ + { name = "nvim_lsp" }, + { name = "luasnip" }, + { name = "async_path" }, + { name = "buffer" }, + }), +}) + +---- fidget +require("fidget").setup() + +---- lsp sources +local null_ls = require("null-ls") +local diagnostics = null_ls.builtins.diagnostics +local formatting = null_ls.builtins.formatting + +local sources = { + lsp_servers = { + ["bashls"] = "bash-language-server", + ["clangd"] = "clangd", + ["pyright"] = "pyright-langserver", + ["rust_analyzer"] = "rust-analyzer", + ["tsserver"] = "typescript-language-server", + }, + null_ls = { + diagnostics.actionlint, + diagnostics.alex, + diagnostics.codespell, + diagnostics.deadnix, + diagnostics.eslint, + diagnostics.pylint, + diagnostics.shellcheck, + diagnostics.statix, + formatting.alejandra, + formatting.beautysh, + formatting.codespell, + formatting.just, + formatting.nimpretty, + formatting.prettier, + formatting.rustfmt, + formatting.shellharden, + formatting.stylua, + formatting.yapf, + }, +} + +--- lsp config +local capabilities = vim.tbl_deep_extend( + "force", + require("cmp_nvim_lsp").default_capabilities(vim.lsp.protocol.make_client_capabilities()), + { workspace = { didChangeWatchedFiles = { dynamicRegistration = true } } } +) + +local all_config = { + capabilities = capabilities, +} + +local servers = {} +for server, binary in pairs(sources.lsp_servers) do + if vim.fn.executable(binary) == 1 then + servers[server] = all_config + end +end + +servers["lua_ls"] = { + capabilities = capabilities, + settings = { + Lua = { + runtime = { + version = "LuaJIT", + }, + diagnostics = { + globals = { "vim" }, + }, + workspace = { + library = vim.api.nvim_get_runtime_file("", true), + }, + }, + }, +} + +servers["nil_ls"] = { + capabilities = capabilities, + settings = { + ["nil"] = { + nix = { + flake = { + autoArchive = false, + autoEvalInputs = false, + }, + }, + }, + }, +} + +for server, settings in pairs(servers) do + require("lspconfig")[server].setup(settings) +end + +---- null-ls +-- auto-format +local lsp_formatting = function(bufnr) + vim.lsp.buf.format({ + filter = function(client) + return client.name == "null-ls" + end, + bufnr = bufnr, + }) +end + +local augroup = vim.api.nvim_create_augroup("LspFormatting", {}) +local formatting_on_attach = function(client, bufnr) + if client.supports_method("textDocument/formatting") then + vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr }) + vim.api.nvim_create_autocmd("BufWritePre", { + group = augroup, + buffer = bufnr, + callback = function() + lsp_formatting(bufnr) + end, + }) + end +end + +require("null-ls").setup({ + on_attach = formatting_on_attach, + sources = sources.null_ls, +}) + +---- trouble +require("trouble").setup() diff --git a/shell.nix b/shell.nix new file mode 100644 index 0000000..c647106 --- /dev/null +++ b/shell.nix @@ -0,0 +1,6 @@ +{pkgs ? import {}}: +pkgs.mkShell { + packages = with pkgs; [ + stylua + ]; +} -- cgit v1.2.3