Files
nvim/.flake.nix.swp

27 lines
20 KiB
Plaintext
Raw Normal View History

2023-04-02 13:26:27 +03:00
b0VIM 9.0<00>W)d<><12>miknikifmacpro1519.identity.xaked.com~miknikif/work/private/nvim/flake.nixutf-8 3210#"! U
<00>
<00>
<00>
<00>
<00>
~
Y
K

<00> <00> <00> p 7
<00><00><00>oL.<00><00>N<00><00><00>{]7.<00><00><00><00><00>qK<00><00><00>sdK <00><00><00><00><00>g=-<00><00>fe<00><00> # Removing 2022-11-30 as it is slow and treesitter generally does the same thing # Syntax / Language Support ########################## plenary-nvim # Library for lua plugins; used by many plugins here popup-nvim # dependency of some other plugins # Common dependencies of other plugins [ start = with pkgs.vimPlugins; packages.myPlugins = with pkgs.vimPlugins; { ''; EOF + '' + pkgs.lib.readFile ./init.lua '' package.path = "${self}/?.lua;" .. package.path lua << EOF '' customRC = configure = { # make sure impatient is loaded before everything else to speed things up extraMakeWrapperArgs = ''--prefix PATH : "${pkgs.lib.makeBinPath dependencies}"''; extraPython3Packages = false; withRuby = false; withPython3 = false; withNodeJs = false; vimAlias = true; viAlias = true; packages.nvim = pkgs.wrapNeovim neovim-augmented { ]; {buildInputs = dependencies;} pkgs.neovim-unwrapped neovim-augmented = recursiveMerge [ ]; cargo # have this as a fallback when a local flake isn't in place python310Packages.python-lsp-server # todo: is specifying 310 an issue? nodePackages."@tailwindcss/language-server" nodePackages.bash-language-server nodePackages.vscode-langservers-extracted # lsp servers for json, html, css nodePackages.prettier # ditto lua-language-server # luajitPackages.lua-lsp shellcheck statix # linter for nix alejandra # nix formatter alternative #nixfmt # nix formatter used with null-ls nil # nix lsp -- better than rnix? prisma-engines # ditto for schema.prisma files luaformatter # ditto for lua proselint # ditto vale # linter for prose # todo: research https://github.com/artempyanykh/marksman curl # needed to fetch titles from urls git zsh # terminal requires it zk # lsp for markdown notes ripgrep fd [ dependencies = with pkgs; in rec { f [] attrList; in else pkgs.lib.last values); then f (attrPath ++ [n]) values else if pkgs.lib.all pkgs.lib.isAttrs values then pkgs.lib.unique (pkgs.lib.concatLists values) else if pkgs.lib.all pkgs.lib.isList values then pkgs.lib.head values if pkgs.lib.tail values == [] builtins.zipAttrsWith (n: values: f = attrPath: recursiveMerge = attrList: let }; ]; }) super.vimPlugins {}; vimPlugins = (self: super: { overlays = [ inherit system; pkgs = import nixpkgs { flake-utils.lib.eachDefaultSystem (system: let }: ... flake-utils, nixpkgs, self, outputs = inputs @ { }; flake-utils.url = "github:numtide/flake-utils"; nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; inputs = { }; ]; "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" extra-trusted-public-keys = [ ]; "https://nix-community.cachix.org" "https://cache.nixos.org" extra-substituters = [ nixConfig = { description = "NVIM Configuration";{ad<00> Q
&<00><00><00>G<00><00><00><00>lN1<00> <00> z Y H  <00> <00> ? <00> <00> <00> <00> <00> j M 6   <00>
<00>
<00>
d
[
S
Q
P
} }); }; buildInputs = with pkgs; [packages.nvim] ++ dependencies; devShell = pkgs.mkShell { apps.default = apps.nvim; packages.default = packages.nvim; }; exePath = "/bin/nvim"; name = "nvim"; drv = packages.nvim; apps.nvim = flake-utils.lib.mkApp { }; }; }; ]; #direnv-vim # auto-execute nix direnv setups -- currently my slowest plugin; enabled by programming filetype #hologram-nvim # images inline for markdown (only in terminal) # see note about hologram in markdown.lua file. commented out 2023-01-19 vim-grammarous # grammar check opt = with pkgs.vimPlugins; [ ]; #vim-startuptime which-key-nvim impatient-nvim # speeds startup times by caching lua bytecode vim-tmux-navigator # navigate vim and tmux panes together project-nvim diffview-nvim vim-fugitive # git management # Misc # twilight-nvim # dim text outside of current scope true-zen-nvim # distraction free, width constrained writing mode zk-nvim # lsp for a folder of notes for searching/linking/etc. # writing friendly-snippets # actual library of snippets used by luasnipad3OA<00>g%<00><00>kK(<00> <00> p o ( <00> <00> <00> 9 <00> <00> Z + <00>
<00>
u
*
<00> <00> P  <00>F/.<00><00>L<00><00>H<00>u<00><00><00><00><00>sB<00>{Q<00><00>R<00><00><00>ON cmp_luasnip # snippets completion luasnip # snippets driver vim-emoji # TODO: redundant now? nvim-ts-autotag # balance or rename html nvim-autopairs # balances parens as you type cmp-npm # complete node packages in package.json cmp-nvim-lsp-signature-help # help complete function call by showing args cmp-emoji # complete :emojis: cmp-cmdline # completing in :commands cmp-path # complete paths cmp-buffer # any text in open buffers cmp-nvim-lua # makes vim config editing better with completions cmp-nvim-lsp # use lsp as source for completions nvim-cmp # generic autocompleter # Autocompletion vim-dadbod-completion vim-dadbod-ui vim-dadbod # Database interactions vim-speeddating # allows ctrl-x and ctrl-a to increment/decrement dates vim-eunuch # brings cp/mv type commands. :Rename and :Move are particularly handy comment-nvim # code commenter vim-visualstar # press * or # on a word to find it vim-rsi # brings keyline bindings to editing (like ctrl-e for end of line when in insert mode) vim-repeat # supports all of the above so you can use . vim-unimpaired # bunch of convenient navigation key mappings nvim-surround # .... updated lua-based alternative to tpope's surround vim-abolish # better abbreviations / spelling fixer # Editor Features #################################### lf-vim nvim-treesitter-context # keep current block header (func defn or whatever) on first line nvim-treesitter-textobjects # jump around and select based on syntax (class, function, etc.) playground # treesitter playground nvim-treesitter.withAllGrammars # better code coloring toggleterm-nvim # better terminal management indent-blankline-nvim # visual indent bufferline-nvim vim-bbye # fix bdelete buffer stuff needed with bufferline lualine-nvim # nice status bar at bottom symbols-outline-nvim # navigate the current file better gitsigns-nvim # git status in gutter nvim-tree-lua # file navigator nvim-web-devicons # makes things pretty; used by many plugins below nvim-colorizer-lua # color over CSS like #00ff00 telescope-frecency-nvim # and frecency comes in handy too telescope-fzy-native-nvim # with fzy gives better results telescope-nvim # da best popup fuzzy finder ir_black # colorscheme for basic terminals onedarkpro-nvim # colorscheme # UI ################################################# SchemaStore-nvim # json schemas neodev-nvim # help for neovim lua api fidget-nvim # show lsp status in bottom right but not status line todo-comments-nvim lsp-format-nvim lspsaga-nvim trouble-nvim # navigate all warnings and errors in quickfix-like window null-ls-nvim # formatting and linting via lsp system nvim-lspconfig # setup LSP for intelligent coding crates-nvim # inline intelligence for Cargo.toml # vim-polyglot # lazy load all the syntax plugins for all the languages