12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- {
- description = "Neovim configuration";
- outputs = { self, nixpkgs }: {
- packages.x86_64-linux.default =
- with nixpkgs.legacyPackages.x86_64-linux;
- let
- seti-vim = vimUtils.buildVimPlugin {
- pname = "seti.vim";
- version = "1.0.0";
- src = fetchFromGitHub {
- owner = "trusktr";
- repo = "seti.vim";
- rev = "a4781817e75a627b54403a92683516aee6230091";
- sha256 = "sha256-3XIEKC0fs9v2a73qcbWA+b9gvCbCaHwGs0uoAn9mprg=";
- };
- };
- extraPath = [
- fzf
- nodePackages.typescript-language-server
- nodePackages.eslint_d
- ];
- in
- neovim.override {
- extraMakeWrapperArgs = "--prefix PATH : ${lib.makeBinPath extraPath}";
- configure = {
- customRC = ''
- source ${./vimrc}
- source ${./init.lua}
- '';
- packages.myVimPackage = with vimPlugins; {
- start = [
- vim-sensible
- vim-sleuth
- vim-fugitive
- vim-surround
- vim-abolish
- undotree
- vim-merginal
- fzf-vim
- mini-nvim
- gitsigns-nvim
- seti-vim
- (nvim-treesitter.withPlugins (p: with p; [
- tree-sitter-css
- tree-sitter-go
- tree-sitter-javascript
- tree-sitter-json
- tree-sitter-lua
- tree-sitter-nix
- tree-sitter-ruby
- tree-sitter-tsx
- tree-sitter-typescript
- ]))
- nvim-lspconfig
- nvim-lsp-ts-utils
- null-ls-nvim
- ];
- };
- };
- };
- };
- }
|