ayamir / nvimdots

A well configured and structured Neovim.
BSD 3-Clause "New" or "Revised" License
2.83k stars 451 forks source link

Clean project plugins #1196

Closed ayamir closed 3 months ago

ayamir commented 3 months ago

Feature description

I want to clean plugins which are infrequently used OR out-dated. What do you think? @Jint-lzxy @CharlesChiuGit @aarnphm

Additional information

junegunn/vim-easy-align: 1780 days ago
lukas-reineke/cmp-under-comparator: 853 days ago
hrsh7th/cmp-buffer: 581 days ago
gelguy/wilder.nvim: 578 days ago
edluffy/specs.nvim: 540 days ago
hrsh7th/cmp-path: 527 days ago
kdheepak/cmp-latex-symbols: 415 days ago
jvgrootveld/telescope-zoxide: 399 days ago
mfussenegger/nvim-treehopper: 383 days ago
rainbowhxch/accelerated-jk.nvim: 378 days ago
folke/paint.nvim: 360 days ago
ray-x/cmp-treesitter: 353 days ago
ahmedkhalf/project.nvim: 345 days ago
ojroques/nvim-bufdel: 335 days ago
hrsh7th/cmp-nvim-lua: 334 days ago
zbirenbaum/neodim: 280 days ago
romgrk/fzy-lua-native: 279 days ago
numToStr/Comment.nvim: 219 days ago
joechrisellis/lsp-format-modifications.nvim: 206 days ago
dnlhc/glance.nvim: 200 days ago
romainl/vim-cool: 189 days ago
f3fora/cmp-spell: 175 days ago
saadparwaiz1/cmp_luasnip: 156 days ago
folke/flash.nvim: 148 days ago
iamcco/markdown-preview.nvim: 148 days ago
folke/trouble.nvim: 147 days ago
folke/which-key.nvim: 145 days ago
LunarVim/bigfile.nvim: 128 days ago
debugloop/telescope-undo.nvim: 118 days ago
sindrets/diffview.nvim: 114 days ago
chrisbra/csv.vim: 103 days ago
hrsh7th/cmp-nvim-lsp: 94 days ago
Jint-lzxy/lsp_signature.nvim: 90 days ago
nvim-telescope/telescope-live-grep-args.nvim: 89 days ago
NvChad/nvim-colorizer.lua: 81 days ago
smoka7/hop.nvim: 72 days ago
michaelb/sniprun: 57 days ago
max397574/better-escape.nvim: 52 days ago
Jint-lzxy/nvim: 50 days ago
mrcjkb/rustaceanvim: 48 days ago
hrsh7th/nvim-cmp: 40 days ago
JoosepAlviste/nvim-ts-context-commentstring: 40 days ago
RRethy/vim-illuminate: 39 days ago
windwp/nvim-ts-autotag: 35 days ago
akinsho/toggleterm.nvim: 30 days ago
lukas-reineke/indent-blankline.nvim: 29 days ago
mfussenegger/nvim-dap: 25 days ago
rcarriga/nvim-notify: 25 days ago
rcarriga/nvim-dap-ui: 25 days ago
dstein64/nvim-scrollview: 24 days ago
abecodes/tabout.nvim: 24 days ago
j-hui/fidget.nvim: 23 days ago
m4xshen/autoclose.nvim: 19 days ago
andymass/vim-matchup: 18 days ago
rafamadriz/friendly-snippets: 18 days ago
nvim-telescope/telescope-frecency.nvim: 17 days ago
williamboman/mason.nvim: 17 days ago
fatih/vim-go: 17 days ago
goolord/alpha-nvim: 17 days ago
jay-babu/mason-null-ls.nvim: 14 days ago
nvimtools/none-ls.nvim: 14 days ago
andersevenrud/cmp-tmux: 13 days ago
hiphish/rainbow-delimiters.nvim: 13 days ago
jay-babu/mason-nvim-dap.nvim: 11 days ago
kevinhwang91/nvim-bqf: 11 days ago
L3MON4D3/LuaSnip: 10 days ago
tpope/vim-fugitive: 10 days ago
nvim-treesitter/nvim-treesitter-context: 8 days ago
ibhagwan/smartyank.nvim: 8 days ago
nvim-telescope/telescope-fzf-native.nvim: 8 days ago
nvim-lua/plenary.nvim: 7 days ago
olimorris/persisted.nvim: 7 days ago
nvim-telescope/telescope.nvim: 6 days ago
akinsho/bufferline.nvim: 6 days ago
Saecki/crates.nvim: 6 days ago
folke/lazy.nvim: 6 days ago
nvim-tree/nvim-web-devicons: 4 days ago
nvim-tree/nvim-tree.lua: 4 days ago
williamboman/mason-lspconfig.nvim: 3 days ago
karb94/neoscroll.nvim: 3 days ago
nvim-lualine/lualine.nvim: 2 days ago
stevearc/aerial.nvim: 2 days ago
lewis6991/gitsigns.nvim: 1 day ago
lambdalisue/suda.vim: 1 day ago
nvim-treesitter/nvim-treesitter: 1 day ago
nvim-treesitter/nvim-treesitter-textobjects: 1 day ago
junegunn/fzf: 1 day ago
nvimdev/lspsaga.nvim: 1 day ago
neovim/nvim-lspconfig: 1 day ago
ayamir commented 3 months ago

And some awesome plugins can be added like mentioned in #1157 and https://github.com/ayamir/nvimdots/discussions/494.

CharlesChiuGit commented 3 months ago

totally support this

aarnphm commented 3 months ago

+1 for this. Let's try to think hard about the workflow we want to do.

My setup currently revolves around mini.nvim ecosystem, telescope, and treesitter, and native lsp, that's it.

ayamir commented 3 months ago

Some plugins tend to remove (just personal opinion, not final decision):

REASON 1: not editor core function REASON 2: longtime no updates REASON 3: infrequently used REASON 4: can be completed by other existing means REASON 5: can be completed by other better plugins (more intuitive or more powerful or less bloat)

junegunn/vim-easy-align: 1,2,3 edluffy/specs.nvim: 1,2 rainbowhxch/accelerated-jk.nvim: 1,2 abecodes/tabout.nvim: 3,4 max397574/better-escape.nvim: 3,4(<Esc> is enough) tpope/vim-fugitive: 3,4(lazygit) NvChad/nvim-colorizer.lua: 3,5(brenoprata10/nvim-highlight-colors) folke/flash.nvim and smoka7/hop.nvim: 5(ggandor/leap.nvim) faith/vim-go: 5(ray-x/go.nvim) j-hui/fidget.nvim: 1 debugloop/telescope-undo.nvim: 3

aarnphm commented 3 months ago

junegunn/vim-easy-align: 1,2,3

can be replaced with mini.align

edluffy/specs.nvim: 1,2 abecodes/tabout.nvim: 3,4 rainbowhxch/accelerated-jk.nvim: 1,2

not sure what this does, so def don't need these

max397574/better-escape.nvim: 3,4(<Esc> is enough)

agree

tpope/vim-fugitive: 3,4(lazygit)

fugitive is fine, it is preferences.

NvChad/nvim-colorizer.lua: 3,5(brenoprata10/nvim-highlight-colors)

my two cent: colorizer works well, no need to change tbh.

folke/flash.nvim and smoka7/hop.nvim: 5(ggandor/leap.nvim)

leap and flit works wonder, +1 for this

faith/vim-go: 5(ray-x/go.nvim)

IMO vim-go is actually less bloat than go.nvim. I don't agree with most ray-x's plugins philosophy.

j-hui/fidget.nvim: 1 debugloop/telescope-undo.nvim: 3

never used these

CharlesChiuGit commented 3 months ago

Response:

junegunn/vim-easy-align

edluffy/specs.nvim abecodes/tabout.nvim rainbowhxch/accelerated-jk.nvim max397574/better-escape.nvim

tpope/vim-fugitive

faith/vim-go

NvChad/nvim-colorizer.lua

j-hui/fidget.nvim

folke/flash.nvim

replacement or remove:

functional plugins:

quality of life:

ayamir commented 3 months ago

https://github.com/tpope/vim-sleuth is useful for smart tabsize for different projects. I use olimorris/persisted.nvim almost everyday b/c it can auto restore session based on the directory (lazy = false).

i would like to bring https://github.com/folke/trouble.nvim back, it just help me jump around errors easier.

We have never removed it lol.

https://github.com/mrjones2014/smart-splits.nvim for wezterm, tmux, kitty intergration. https://github.com/folke/todo-comments.nvim, i use this quite a lot, very useful for hinting.

They are definitely awesome plugins and worth to integrate!

CharlesChiuGit commented 3 months ago

We have never removed it lol.

lmao, i'm blinded.

ayamir commented 3 months ago

https://github.com/kevinhwang91/nvim-ufo is an awesome plugin which brings modern code fold functions. image

ayamir commented 3 months ago

https://github.com/folke/neoconf.nvim/ for per project lsp configuration as we mentioned in #1156. https://github.com/nvim-pack/nvim-spectre for plain text find and replace at project level as we mentioned in #1157.

ayamir commented 3 months ago

https://github.com/mrjones2014/smart-splits.nvim for wezterm, tmux, kitty intergration.

The keymap of this plugin has a little bit conflicts with bufferline.nvim(<A-j> and <A-k>). There are two solutions:

  1. set <A-;> and <A-'> for <A-j> and <A-k> which also overrides what we set in mappings.lua.
  2. set existing bufferline keymaps to another mapppings like:
    ["n|<A-i>"] = map_cr("BufferLineCycleNext"):with_noremap():with_silent():with_desc("buffer: Switch to next"),
    ["n|<A-o>"] = map_cr("BufferLineCyclePrev"):with_noremap():with_silent():with_desc("buffer: Switch to prev"),
    ["n|<A-S-i>"] = map_cr("BufferLineMoveNext"):with_noremap():with_silent():with_desc("buffer: Move current to next"),
    ["n|<A-S-o>"] = map_cr("BufferLineMovePrev"):with_noremap():with_silent():with_desc("buffer: Move current to prev"),
aarnphm commented 3 months ago

kevinhwang91/nvim-ufo is an awesome plugin which brings modern code fold functions. image

personally ufo is very much overkill. I have never found folding that helpful. F/f/T/t and fuzzy finder is more than enough usually.

spectre is good, use alongside with telescope feels illegal.

neoconf is also goated.

CharlesChiuGit commented 3 months ago

folke/neoconf.nvim

agree, it's nice to have.

personally ufo is very much overkill. I have never found folding that helpful. F/f/T/t and fuzzy finder is more than enough usually.

yeah, i dont use folding too.

nvim-pack/nvim-spectre for plain text find and replace at project level as we mentioned in https://github.com/ayamir/nvimdots/issues/1157.

i tried spectre before, but not sure if the plugin have some bugs or i have difficulty learning it, it just doesn't work for me.

CharlesChiuGit commented 3 months ago

The keymap of this plugin has a little bit conflicts with bufferline.nvim(<A-j> and <A-k>). There are two solutions:

  1. set <A-;> and <A-'> for <A-j> and <A-k> which also overrides what we set in mappings.lua.
  2. set existing bufferline keymaps to another mapppings like:
["n|<A-i>"] = map_cr("BufferLineCycleNext"):with_noremap():with_silent():with_desc("buffer: Switch to next"),
["n|<A-o>"] = map_cr("BufferLineCyclePrev"):with_noremap():with_silent():with_desc("buffer: Switch to prev"),
["n|<A-S-i>"] = map_cr("BufferLineMoveNext"):with_noremap():with_silent():with_desc("buffer: Move current to next"),
["n|<A-S-o>"] = map_cr("BufferLineMovePrev"):with_noremap():with_silent():with_desc("buffer: Move current to prev"),

i think i prefer second option. tho we need to remember to change tutor too.

ayamir commented 3 months ago

i think i prefer second option. tho we need to remember to change tutor too.

Agree, <A-i> and <A-o> are also keep align with <C-i> and <C-o> for jumping.

ayamir commented 3 months ago

i tried spectre before, but not sure if the plugin have some bugs or i have difficulty learn, it just doesn't work for me.

It works out of box for me lol.

https://github.com/ayamir/nvimdots/assets/61657399/9d964a25-8ddb-443d-b5db-235bad28f768

ayamir commented 3 months ago

i personally prefer https://github.com/stevearc/conform.nvim 's config style than none-ls's, it give us an easier way to fine-tune what linter/formatter to use on what langs.

I'm little bit lazy about replacing current none-ls with conform and none-ls just works fine.

Cyberczy commented 3 months ago

According to glepnir, the 0.10 stable version of neovim will be available by the end of this month if everything goes well

Cyberczy commented 3 months ago

According to glepnir, the 0.10 stable version of neovim will be available by the end of this month if everything goes well

It looks like it's going to be put off until May image

aarnphm commented 3 months ago

Sometimes I forgot about the stable releases, have been on nightly forever :)

aarnphm commented 3 months ago

Hmm I don't think we have updated everything in here?

ayamir commented 3 months ago

Hmm I don't think we have updated everything in here?

What?

aarnphm commented 3 months ago

Oh did we remove all unused plugins?

My initial thought is that #1198 only remove a few?

ayamir commented 3 months ago

No, I only removed the plugins that all of us proposaled to remove.

aarnphm commented 3 months ago

sg.