Skip to content

dreamerlzl/nvim-setup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ov

  • my neovim setup with
    • lazy.nvim
    • null-ls for formatting
    • mason for managing lsp
    • harpoon for file navigation
    • noice for floating cmdline
    • lualine for status line
  • configs for plugin can be found under lua/plugins
  • for rust, python, golang, lua and typescript dev

prerequisite(separate installation)

  • pip & pynvim: python3 -m pip install --user --upgrade pynvim
  • black: for python formatting
  • npm (used by mason)
  • build-essential(gcc, git, etc.)
  • ripgrep
  • fzf
  • golangci-lint & golangci-lint-langserver
  • for tsserver: npm install -g typescript
  • for solidity: npm install -g @nomicfoundation/solidity-language-server

manual installation

  • to 01/14/2023, mason.nvim doesn't officially support ensure_installed (see this issue)
    • need to manually install codelldb via MasonInstall codelldb and ensure $PATH includes ~/.local/share/nvim/mason/bin

faq

  • why neo-tree instead of chadtree, nvim-tree and nerdtree for file management?
  • why leap.nvim instead of easymotion, vim-sneak, hop.nvim for metajump?
    • when I switch to lua config and lazy.nvim, vim-sneak stop working.
    • hop.nvim is buggy
    • leap.nvim is more actively maintained, and the design is better
  • why nvim-cmp instead of coq.nvim, mini.completion for autocompletion?
    • coq.nvim makes my neovim crash from time to time; nvim-cmp never.
    • mini.completion is neat, but it's not as feature-rich as nvim-cmp.
  • why nvim-dap instead of vim-inspector?
    • more convenient to debug unit tests
  • about neovim's folding
    • here expr fold is used
  • my leaderF doesn't work
    • execute :checkhealth and see pynvim is ok or not

About

my personal neovim config, in modules.

Resources

Stars

Watchers

Forks

Packages

No packages published