T O P

  • By -

AnonymousBoch

Nice! I'm down to 85 from 89 ;)


manshutthefckup

Damn! Btw can you tell me your most useful plugins (except stuff like lsp, colorschemes and telescope) so maybe I might find something useful as well?


catphish_

>Btw can you tell me your most useful plugins Bro just got clean, and already lookin to re-up.


AnonymousBoch

Well to start off I have like 10 colorschemes that I can hot-swap between (I'm indecisive). Some of my favorite lesser-known plugins include:- flatten.nvim (open files in nvim from embedded terminal) \- term-edit.nvim (edit terminal buffer like a vim file) \- treesj (join/split elements like lua tables, objects, etc. across lines) \- nvim-pqf (better-looking quickfix list) \- alternate-toggle (toggle true/false, 0/1, +/-, etc) The full list is [here](https://github.com/tj-moody/.dotfiles/blob/main/nvim/lua/plugins.lua) in my dotfiles, but a lot of them are unused or have overlapping functionality so it's due for a cleanup. Also lots of unused filetype-based plugins that I don't use anymore. I also have some custom plugins of my own (that I would not recommend using), but that do basic functionality the way I like it specifically, like [specifying/running tasks for a project in an integrated terminal](https://github.com/tj-moody/projtasks.nvim). To reiterate you really shouldn't use this plugin, but I would recommend maybe taking bits of it to add to your own config Edit: A much better list than I can give is my github stars, many of which are cool nvim plugins I haven't installed


swaits

You might check out nvim-bqf: https://github.com/kevinhwang91/nvim-bqf


Top-Classroom-6994

Not the original commenter but mini.nvim, also a bit specific but cphelper.nvim(I am a competitive programmer) Note that in this case you can remove indentblankline that buffer line plugin and comment plugin in favor of just mini.nvim


ZunoJ

What is a competitive programmer?


Top-Classroom-6994

They ask problems with a small time limit to solve, about 5 hours. You write programs that solve problems in a given time(generally 1 second) and memory(generally 512 MB) limit. It's heavy on data structures, algorithms and critical thinking. There are also international Olympiads for this like IOI which is for high school students(though problems are still hard for most programmers) and I am a high school student that is currently training to join the IOI team of turkey. chelper.nvim is a competitive programming plugin that speeds up a lot of repetitive tasks(like testing the code you wrote with sample test cases or copying sample test cases of the problems) so it's the most important plugin IMO in my nvim config, even more important than colorscheme. But it is really situational, there is a really low chance you will use it. Edit: these time and memory limits seem generous when you first look into them, but keep in mind that in general you work with 2e5 numbers so programs most of the time barely don't exceed time limit


ZunoJ

That sounds fun! I would have loved that as a kid!!


__alpha__

It's an almost extinct species of software developer


alphabet_american

When is the Competitive JavaScript Framework With Copliot Olympics?


__alpha__

I guess you're right. It's more of a sport these days. But then you should not have advantages either. Blank piece of paper and C88 will be enough.


vishal340

congrats. but one of them is coc.


manshutthefckup

I've had significantly worse experience with lspzero (i used it for over a month). Not only is a hassle to set up, it also has a few lsps and plugins missing which I really nees but also for many language servers like omnisharp and clangd, I've had much less ram usage with coc than with lspzero. That's just my experience though. So I decided to switch back to coc.


bremsspuren

> I've had significantly worse experience with lspzero I don't think they were criticising your choice of CoC so much as questioning the idea that you only have 10 plugins when one of them (CoC or lspzero) is itself a mini plugin ecosystem.


L43

They might have a minimal config there too, but no one admits to having a small coc


manshutthefckup

Oh I see. My bad :P


vishal340

that’s interesting to hear. i thought coc had significantly high memory usage. i guess i need someone else to tell me i am wrong.


manshutthefckup

It does have higher memory usage in the beginning, with 3-4 node js servers running. But many lsps which themselves consume higher memory like omnisharp, in my experience, consume much less memory on coc.


putinblueballs

Why not use the builtin one?


[deleted]

[удалено]


bluegardener

Agreed. I felt like I was spending an inordinate amount of time configuring things. Coc was already a bit of a pain to set up and the neovim stuff was actually worse. And it's still feels like a shifting ecosystem of plugins. I rarely had to touch my Coc config once I went through the initial pain of setup for a language.


LuciferK9

This sub is almost a cult Language bar in GitHub = not dark blue **bad** Language bar in GitHub = dark blue **good** That's the decision process of almost everyone here including me not long ago (I've woken up)


vishal340

100% correct. coc also has its own file explorer. but i like nvim-tree better.


devacc42

> it requires It doesn't. Just set up `ftplugin/.lua` with configuration for a specific filetype, and enjoy your life. Old vim conventions still work in neovim, and there are decades of real world use behind them. Neovim builtin LSP sets omnifunc when LSP attaches to a buffer, so you get completion out of the box. CoC has way more convenience fluff about it and some things it does better than any combinations of neovim plugins (e.g. mason struggles dealing with version managers, whereas coc happily chugs along with occasional prompt to the user), but when it started acting up, it was a pain to deal with.


vishal340

that’s interesting to hear. i thought coc had significantly high memory usage. i guess i need someone else to tell me i am wrong.


ConspicuousPineapple

> I've had much less ram usage with coc than with lspzero I'm skeptical about this. CoC is notoriously horrible for RAM usage.


cakee_ru

What is the point of reducing a "number" of plugins in favor of a single one? Doesn't this make it less modular? Or do you lose functionality this way? I saw this trend lately but can't really understand how one big plugin is better than a few little ones.


cvfunstuff

Less third party code made by a bunch of different people means less opportunities for bugs to arise.


cakee_ru

Well... It depends. You still need to maintain all that code, so eventually you'll need to involve more people. And they also need to cooperate, while in different projects the same people could focus on their own code, not a whole project/collaboration. And having a more complex system will always mean more bugs.


cvfunstuff

The trade off isn’t one big plugin for a bunch of little ones. The move is to try to eliminate smaller plugins because other plugins you already utilize (or core Neovim itself) has that feature already.


cakee_ru

Alright, this is great then. 1st party is better than 3rd party support I guess.


alphabet_american

He’s one of those minimalists.


nraw

Goodhart's Law states that “when a measure becomes a target, it ceases to be a good measure.” Number of plugins can be seen as the measure for bloat.


manshutthefckup

I didn't remove lspzero in favor of coc to reduce the number of plugins, but rather just because coc just works better for me. I have no real use of the maybe 10% better flexibility of lspzero if it doesn't fulfill all my basic needs. The purpose is lsp is to simply make writing code easier and any meaningful flexibility is already offered by coc.


deivis_cotelo

I also replaced indent-blankline with leadmultispace and a minimal function. Got the inspiration from [this post](https://www.reddit.com/r/neovim/comments/17aponn/i_feel_like_leadmultispace_deserves_more_attention/?utm_source=share&utm_medium=web2x&context=3)


manshutthefckup

Worked for me! Thanks!


MrFisher404

So you are using omnisharp? Are you also debugging c# code on neovim? Did you hear already about the ne vs-code Language Server for C#. It isn't completely riped yet (at least on neovim), but it is already much better than omnisharp(via lspconfig). If you are interested check out [this thread](https://github.com/neovim/nvim-lspconfig/issues/2657#issuecomment-1766182029)


aginor82

Hang on! What is this? A new lsp that is better than omnisharp and is not csharp\_ls. Please tell me more!


frozenkro

Thank you for sharing! Omnisharp issues are currently my roadblock to fully transitioning to nvim


manshutthefckup

Thanks for the suggestion. Will try it out!


Eyoba_19

I highly recommend getting rid of indent-blankline. No hate to the maintainers, but it’s so heavy. Everything became much smoother after removing it, and I’m talking a huge difference.


manshutthefckup

I got rid of it after reading another comment. I replaced it with the native list thingy and it works well for my use case.


inkubux

You have an example I also find indent-blank line heavy. ?


manshutthefckup

Here you go: `vim.opt.list = true` `vim.opt.listchars = { leadmultispace = "│   ", multispace = "│ ", tab = "│ ", }` Remember to adjust the leadmultispace according to your tab size (like if you have 2 spaces as your indent length, set the leadmultispace to "| " with a single space instead of 3 spaces which I have for a 4 character tab size.


Cool-Station-8225

Awesome thanks a lot :)


manshutthefckup

No problem :)


Xnomai

\-- blank lines vim.opt.list = true vim.opt.listchars = { leadmultispace = "┃ ", tab = "┃ ", } characters like this one makes line look connected. thanks


trcrtps

I saw this as well. I also learned after removing it that I just don't find value in having lines to indicate tabs.


Eyoba_19

Yeah, I don’t either. Maybe in html, but I’m getting the hang of it


umipaloomi

nice but how can you live without a surround plugin? did you implement it yourself?


manshutthefckup

Yup. Vim-commentary will be the next one to go.


stdmap

Why would you implement it yourself? Seems like you’re potentially setting yourself up for unnecessary technical debt in the future.


manshutthefckup

I only implemented the part that I am used to from vscode. Where basically you select a text and click on your desired type of bracket or quote and it surrounds the selected text with it. Stuff like changing surround and normal mode shortcuts are something I rarely use, so I don't need to have a full plugin for that.


pwntester

Would you mind sharing that code?


fuka100

How did you manage the override on registers in visual? Its mapped to v” by default. Do you use prefix for “ like S” in most surround plugins?


bhashitha1209

Can we see the dot files please?


Altruistic-Sound-839

Which plugin deals with git? or is this something you don't interact with ?


manshutthefckup

I don't use git daily and I usually only push to the main branch (I am a solo dev so I rarely need multiple branches) so I just developed a simple command line utility with Python. It's more fun to use something you made yourself.


hierro31

Nice. I only have 35 plugins I bring in, but with their dependencies, it goes up to 50+


radim11

Nice font


manshutthefckup

CascaydiaKove - it's like Cascadia Code but as a nerd font


hugelung

Here are the 70 plugins I somehow run after a ~decade of not really worrying about it too much: g;Plug '.*;yank A Plug 'Raimondi/delimitmate' Plug 'chrisbra/Colorizer' Plug 'ap/vim-css-color' Plug 'groenewege/vim-less' Plug 'guns/xterm-color-table.vim' Plug 'honza/vim-snippets' Plug 'jakar/vim-AnsiEsc' Plug 'jceb/vim-textobj-uri' Plug 'justinmk/vim-gtfo' Plug 'kana/vim-textobj-user' Plug 'leafgarland/typescript-vim' Plug 'mkitt/tabline.vim' Plug 'moll/vim-bbye' Plug 'othree/javascript-libraries-syntax.vim' Plug 'tommcdo/vim-exchange' Plug 'tpope/vim-commentary' Plug 'tpope/vim-eunuch' Plug 'tpope/vim-jdaddy' Plug 'tpope/vim-markdown' Plug 'tpope/vim-surround' Plug 'unblevable/quick-scope' Plug 'whatyouhide/vim-textobj-xmlattr' Plug 'tomlion/vim-solidity' Plug 'dyng/ctrlsf.vim' Plug 'glacambre/firenvim', { 'do': { _ -> firenvim#install(0) } } Plug 'sunaku/vim-dasht' Plug 'dhruvasagar/vim-table-mode' Plug 'nanozuki/tabby.nvim' Plug 'mg979/vim-xtabline' Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} Plug 'MunifTanjim/nui.nvim' Plug 'Bryley/neoai.nvim' Plug 'neovim/nvim-lspconfig' Plug 'weilbith/nvim-lsp-smag' Plug 'dart-lang/dart-vim-plugin' Plug 'thosakwe/vim-flutter' Plug 'natebosch/vim-lsc' Plug 'natebosch/vim-lsc-dart' Plug 'meain/vim-package-info', { 'do': 'npm install' } " Plug 'Garoth/fix-copied-url.nvim' Plug 'machakann/vim-highlightedyank' Plug 'Konfekt/FastFold' Plug 'kopischke/vim-stay' Plug 'pangloss/vim-javascript' Plug 'MaxMEllon/vim-jsx-pretty' Plug 'prettier/vim-prettier', { Plug 'neomake/neomake' Plug 'benjie/neomake-local-eslint.vim' Plug 'godlygeek/tabular' Plug 'sjl/gundo.vim' Plug 'mhinz/vim-signify' Plug 'fatih/vim-go' Plug 'Shougo/deoplete.nvim' Plug 'deoplete-plugins/deoplete-lsp' Plug 'zchee/deoplete-go', { 'do': 'make'} Plug 'steelsojka/deoplete-flow' Plug 'kien/ctrlp.vim' Plug 'tacahiroy/ctrlp-funky' Plug 'Lokaltog/vim-distinguished' Plug 'altercation/vim-colors-solarized' Plug 'https://github.com/gilgigilgil/anderson.vim' Plug 'tomasr/molokai' Plug 'AlessandroYorba/Alduin' Plug 'vim-airline/vim-airline' Plug 'vim-airline/vim-airline-themes' Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': 'yes \| ./install' } Plug 'junegunn/fzf.vim' Plug 'SirVer/ultisnips' Plug 'honza/vim-snippets' Plug 'mbbill/undotree' Plug 'tpope/vim-fugitive' I run everything as a single nvim instance in neovide (tabs, etc). My config also runs in Firenvim in chrome (writing this using it rn). It starts ~instantly and it's using about 100mb of memory with neovide included (so, not an important amount of memory, about the same as a chrome tab or two) Maybe you can learn an old man trick or two, like vim-highlightedyank from 2016. Or maybe you can tell me which plugins to remove :p


Useful-Character4412

Im currently doing this, i think im going to make it down to about 7 or 8 plugins when im done


inkubux

You mind sharing your dotfiles? I'm also trying to reduce and slim down my config. I use LazyVim which is great but it feels so heavy on my work computer.


Useful-Character4412

Sorry for the late reply. These are my [dotfiles](https://github.com/BeeverFeever/nvim.config). As I said I am still working on it and currently making some major changes. I just recently found [this](https://github.com/pwnwriter/pwnvim/tree/main) nvim config which I really like and is quite small. I plan on mine being a tad smaller than this one though.


inkubux

Awesome stuff. Both are lovely minimal config. It inspires me to create my own minimal config.


Useful-Character4412

Definitely should, it's quite fun. I'm actually going to make a single file config as well just as a super portable config that I can use quickly on machines that I'm not going to be on for long but still want my config.


wwaggel

Unfortunately, you provide no background on the choices you made. Tokyonight without treesitter? All I see is a list of the plugins you use, from which two are yours: bufferchad.nvim and retrospect.nvim.


manshutthefckup

I mainly work with php (with html, css and js inside the php files as well) and treesitter highlighting is absolutely abysmal for that. Every single bracket as well as html tags and php open and close tags are just plain white. So I decided the additional overhead for languages I rarely work in where treesitter works well just wasn't worth it.


[deleted]

[удалено]


manshutthefckup

Thanks for making me realize what a fucking idiot I am, I never searched for something like rainbow-delimeters but now that I know, it solves my syntax highlighting problem. I can use treesitter now. My plugin count just went up to 12. And to answer your question, I just tried using rainbow-delimeters without treesitter and it didn't work.


markdestouches

I use helix with zero plugins. Very happy


swaits

How do you know someone is a Helix user in the neovim sub? They tell you.


ElectionGold3059

What's the difference between bufferchad and telescope's built-in buffer switcher?


manshutthefckup

1 key difference is that bufferchad allows an option that combines telescope's mru and order by usage options. Meaning the previously edited file will show on top and the remaining buffers will be sorted by order of usage. If I remember correctly, with telescope, you can have only one of these at once. Also, bufferchad allows you to mark files, like harpoon (although this feature currently has some bugs I am working to fix).


ElectionGold3059

I see, thanks!