From 308b6894b6d255456a6ad2a479374adfe22d87b4 Mon Sep 17 00:00:00 2001 From: Mykhailo Nikiforov Date: Sun, 2 Apr 2023 14:08:15 +0300 Subject: [PATCH] clean start --- flake.nix | 112 +----------------------------------------------------- init.lua | 26 ++++++------- 2 files changed, 15 insertions(+), 123 deletions(-) diff --git a/flake.nix b/flake.nix index 455d56b..0bc34f6 100644 --- a/flake.nix +++ b/flake.nix @@ -30,30 +30,10 @@ in rec { dependencies = with pkgs; [ - fd ripgrep - zk # lsp for markdown notes zsh # terminal requires it git curl # needed to fetch titles from urls - # todo: research https://github.com/artempyanykh/marksman - vale # linter for prose - proselint # ditto - luaformatter # ditto for lua - prisma-engines # ditto for schema.prisma files - nil # nix lsp -- better than rnix? - #nixfmt # nix formatter used with null-ls - alejandra # nix formatter alternative - statix # linter for nix - shellcheck - # luajitPackages.lua-lsp - # lua-language-server - nodePackages.prettier # ditto - nodePackages.vscode-langservers-extracted # lsp servers for json, html, css - nodePackages.bash-language-server - nodePackages."@tailwindcss/language-server" - python310Packages.python-lsp-server # todo: is specifying 310 an issue? - cargo # have this as a fallback when a local flake isn't in place ]; neovim-augmented = recursiveMerge [ pkgs.neovim-unwrapped @@ -79,101 +59,13 @@ EOF ''; packages.myPlugins = with pkgs.vimPlugins; { - start = with pkgs.vimPlugins; - [ + start = with pkgs.vimPlugins; [ # Common dependencies of other plugins popup-nvim # dependency of some other plugins - plenary-nvim # Library for lua plugins; used by many plugins here - - # Syntax / Language Support ########################## - # Removing 2022-11-30 as it is slow and treesitter generally does the same thing - # vim-polyglot # lazy load all the syntax plugins for all the languages - crates-nvim # inline intelligence for Cargo.toml - nvim-lspconfig # setup LSP for intelligent coding - null-ls-nvim # formatting and linting via lsp system - trouble-nvim # navigate all warnings and errors in quickfix-like window - lspsaga-nvim - lsp-format-nvim - todo-comments-nvim - fidget-nvim # show lsp status in bottom right but not status line - neodev-nvim # help for neovim lua api - SchemaStore-nvim # json schemas - - # UI ################################################# - onedarkpro-nvim # colorscheme - ir_black # colorscheme for basic terminals - telescope-nvim # da best popup fuzzy finder - telescope-fzy-native-nvim # with fzy gives better results - telescope-frecency-nvim # and frecency comes in handy too - nvim-colorizer-lua # color over CSS like #00ff00 - nvim-web-devicons # makes things pretty; used by many plugins below - nvim-tree-lua # file navigator - gitsigns-nvim # git status in gutter - symbols-outline-nvim # navigate the current file better - lualine-nvim # nice status bar at bottom - vim-bbye # fix bdelete buffer stuff needed with bufferline - bufferline-nvim - indent-blankline-nvim # visual indent - toggleterm-nvim # better terminal management - nvim-treesitter.withAllGrammars # better code coloring - playground # treesitter playground - nvim-treesitter-textobjects # jump around and select based on syntax (class, function, etc.) - nvim-treesitter-context # keep current block header (func defn or whatever) on first line - lf-vim - - # Editor Features #################################### - vim-abolish # better abbreviations / spelling fixer - nvim-surround # .... updated lua-based alternative to tpope's surround - vim-unimpaired # bunch of convenient navigation key mappings - vim-repeat # supports all of the above so you can use . - vim-rsi # brings keyline bindings to editing (like ctrl-e for end of line when in insert mode) - vim-visualstar # press * or # on a word to find it - comment-nvim # code commenter - vim-eunuch # brings cp/mv type commands. :Rename and :Move are particularly handy - vim-speeddating # allows ctrl-x and ctrl-a to increment/decrement dates - - # Database interactions - vim-dadbod - vim-dadbod-ui - vim-dadbod-completion - - # Autocompletion - nvim-cmp # generic autocompleter - cmp-nvim-lsp # use lsp as source for completions - cmp-nvim-lua # makes vim config editing better with completions - cmp-buffer # any text in open buffers - cmp-path # complete paths - cmp-cmdline # completing in :commands - cmp-emoji # complete :emojis: - cmp-nvim-lsp-signature-help # help complete function call by showing args - cmp-npm # complete node packages in package.json - nvim-autopairs # balances parens as you type - nvim-ts-autotag # balance or rename html - vim-emoji # TODO: redundant now? - luasnip # snippets driver - cmp_luasnip # snippets completion - friendly-snippets # actual library of snippets used by luasnip - - # writing - zk-nvim # lsp for a folder of notes for searching/linking/etc. - true-zen-nvim # distraction free, width constrained writing mode - # twilight-nvim # dim text outside of current scope - - # Misc - vim-fugitive # git management - diffview-nvim - project-nvim - vim-tmux-navigator # navigate vim and tmux panes together - impatient-nvim # speeds startup times by caching lua bytecode - which-key-nvim - #vim-startuptime - ]; + ]; opt = with pkgs.vimPlugins; [ # grammar check vim-grammarous - # see note about hologram in markdown.lua file. commented out 2023-01-19 - #hologram-nvim # images inline for markdown (only in terminal) - #direnv-vim # auto-execute nix direnv setups -- currently my slowest plugin; enabled by programming filetype ]; }; }; diff --git a/init.lua b/init.lua index 5a6c2cf..54f6bce 100644 --- a/init.lua +++ b/init.lua @@ -4,16 +4,16 @@ if vim.fn.has('mac') == 1 then else vim.opt.guifont = "Hasklug Nerd Font:h9" end -require('impatient') -require('impatient').enable_profile() -require('pwnvim.filetypes').config() -require('pwnvim.options').defaults() -require('pwnvim.options').gui() -require('pwnvim.mappings') -require('pwnvim.abbreviations') -require('pwnvim.plugins').ui() -require('pwnvim.plugins').diagnostics() -require('pwnvim.plugins').telescope() -require('pwnvim.plugins').completions() -require('pwnvim.plugins').notes() -require('pwnvim.plugins').misc() +-- require('impatient') +-- require('impatient').enable_profile() +-- require('pwnvim.filetypes').config() +-- require('pwnvim.options').defaults() +-- require('pwnvim.options').gui() +-- require('pwnvim.mappings') +-- require('pwnvim.abbreviations') +-- require('pwnvim.plugins').ui() +-- require('pwnvim.plugins').diagnostics() +-- require('pwnvim.plugins').telescope() +-- require('pwnvim.plugins').completions() +-- require('pwnvim.plugins').notes() +-- require('pwnvim.plugins').misc()