No description
Find a file
RingOfStorms (Joshua Bell) c42f197307 WIP on new config
2024-05-01 01:14:46 -05:00
lua WIP on new config 2024-05-01 01:14:46 -05:00
flake.lock WIP on new config 2024-05-01 01:14:46 -05:00
flake.nix WIP on new config 2024-05-01 01:14:46 -05:00
init.lua WIP on new config 2024-05-01 01:14:46 -05:00
README.md WIP on new config 2024-05-01 01:14:46 -05:00
test.nix wip 2024-04-30 11:02:30 -05:00

NVIM config

Goals:

  • Works with or without nix
  • LSP integration with the current project's settings if available

Running

With Nix

nix run "."

Without Nix

  • Must have all required programs installed and available on path
    • neovim >= 0.5
    • Evertying listed in flake.nix runtime dependencies variable near the top of the file
      • These must be available on the path
      • Treesitter/Lazy/Mason will install all other requirements needed on other systems
git clone https://github.com/RingOfStorms/nvim ~/.config/nvim
nvim --headless "+Lazy! sync" +qa

Backup existing config:

DATE=$(date +"%Y%m%d")
mv ~/.config/nvim ~/.config/nvim_$DATE.bak
mv ~/.local/share/nvim ~/.local/share/nvim_$DATE.bak
mv ~/.local/state/nvim ~/.local/state/nvim_$DATE.bak

or remove existing config:

rm -rf ~/.config/nvim 
rm -rf ~/.local/share/nvim
rm -rf ~/.local/state/nvim 

NOTES/TODOS

  • Checkout cargo-bloat, cargo-cache, cargo-outdated - memcache sccache

  • For scratches, just make an input box for custom extension rather than predefined list

  • for find files, ignore git, capital F for find all

  • better copilot alternatives? Local LLM usage only? etc?

  • blacklist for undofile? .age files... etc

  • TODO learn more about augroup in autocommands.

  • plugins to install:

    • rmagatti/auto-session - session management
      • TODO look for alternatives? I am not a huge fan of this as it causes some issues on startup sometimes. I really only care about window placements and I want the rest to load naturally
    • preservim/nerdcommenter - [un]comment support
    • uga-rosa/ccc.nvim - color picker for hex codes etc
    • zbirenbaum/copilot.lua
      • Does github's work for me now? github/copilot.vim
      • zbirenbaum/copilot-cmp
    • chrisgrieser/nvim-early-retirement - auto close buffers
    • voldikss/vim-floaterm
    • GIT
      • lewis6991/gitsigns.nvim
      • Neogitorg/neogit ??? remove? I dont use this much...
      • kdheepak/lazygit.nvim ?? remove?
      • sindrets/diffview.nvim ? as long as this works without the above.
    • rest-nvim/rest.nvim - http curl commands
      • TODO I want a better alternative to this. One that shows streaming responses/curl as is. Can I just run curl myself easily?
    • RRethy/vim-illuminate - show token under cursor throughout file
    • lukas-reineke/indent-blankline.nvim - indent lines
      • TODO figure out tabs vs spaces thing with arrows vs bars.
    • nvim-lualine/lualine.nvim
      • TODO look at other buffer lines, is this still the best? What do others use?
    • LSP stuff... figure out from scratch using kickstart/lazynvim as an example
      • rust, ts, js, nix, lua,
      • lvimuser/lsp-inlayhints.nvim L3MON4D3/LuaSnip hrsh7th/nvim-cmp williamboman/mason.nvim folke/neodev.nvim williamboman/mason-lspconfig.nvim neovim/nvim-lspconfig simrat39/rust-tools.nvim Saecki/crates.nvim
      • how cna we do language specific tooling per project integrated with neovim here? Like different rust versions in current shell etc?
      • MASON when not nix, otherwise yes
    • lnc3l0t/glow.nvim - markdown preview
    • null_ls replacement?? need a formater replacement, diff between lsp reformat?
    • Almo7aya/openingh.nvim
    • tpope/vim-surround
    • nvim-telescope/telescope-file-browser.nvim ?? do I want to keep this?
    • nvim-telescope/telescope.nvim
      • nvim-telescope/telescope-fzf-native.nvim
      • nvim-telescope/telescope-ui-select.nvim (use this with scratch files?)
    • johmsalas/text-case.nvim
    • nvim-treesitter/nvim-treesitter
    • mbbill/undotree
    • nvim-lua/plenary.nvim
    • rcarriga/nvim-notify ??? is this replaced by noice??
    • folke/which-key.nvim
  • check out

  • plugins I decided to remove from my old config

    • jinh0/eyeliner.nvim
    • David-Kunz/gen.nvim - ollama integration
    • Neogitorg/neogit ??
    • kdheepak/lazygit.nvim ??
    • null_ls