Vim – Minimal Setup Explained

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • vim-sensible

    sensible.vim: Defaults everyone can agree on

  • fzf.vim

    fzf :heart: vim

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • ctags

    A maintained ctags implementation

  • Vim supports ctgs[0] lookup out of the box which fits your need somewhat.

    I tend to use FZF[1] which has functions for leveraging ripgrep and silver surfer for searches. It can also use find. FZF also has dialogues for paring down results in real time (i.e., as you type)

    There are also plugins that are much more nuanced and more involved for searching symbols and providing autocomplete. Duoplete, vimcomplete, youcompleteme spring to mind.

    [0]: https://ctags.io/

  • vim-gutentags

    A Vim plugin that manages your tag files

  • You can then use :cnext and :cprev (or focusing the window and selecting an entry) to navigate between them.

    As others have stated, you can also use ctags (plugins like https://github.com/ludovicchabant/vim-gutentags are useful for refreshing tags in a project), but for some languages you may need to add a tag definition (e.g. for something like rust or zig). For older languages like C you should be fine.

  • vimrc

    Basic vim configuration for your .vimrc (by sheerun)

  • nvim-lspconfig

    Quickstart configs for Nvim LSP

  • > And neovim is heavily embracing the LSP paradigm, where you'd use something like gd to jump to definition when on top of a function and a language specific LSP server will tell Neovim where to jump to.

    This x100. I switched to neovim+pylsp a few months ago, and it's been an absolute delight. I use lspconfig [1] and pyslp [2] since most of my time is spent developing Python code. Not only can I navigate more quickly and easily, I also find myself catching more silly errors before run-time due to better linting from the lsp.

    It used to be that I wouldn't use vim beyond quick edits on single files. Although I still prefer to use vim style bindings in IDEs, I can go much further before I feel the need to fire up an IDE in the first place.

    [1]: https://github.com/neovim/nvim-lspconfig

    [2]: https://github.com/python-lsp/python-lsp-server

  • python-lsp-server

    Fork of the python-language-server project, maintained by the Spyder IDE team and the community

  • > And neovim is heavily embracing the LSP paradigm, where you'd use something like gd to jump to definition when on top of a function and a language specific LSP server will tell Neovim where to jump to.

    This x100. I switched to neovim+pylsp a few months ago, and it's been an absolute delight. I use lspconfig [1] and pyslp [2] since most of my time is spent developing Python code. Not only can I navigate more quickly and easily, I also find myself catching more silly errors before run-time due to better linting from the lsp.

    It used to be that I wouldn't use vim beyond quick edits on single files. Although I still prefer to use vim style bindings in IDEs, I can go much further before I feel the need to fire up an IDE in the first place.

    [1]: https://github.com/neovim/nvim-lspconfig

    [2]: https://github.com/python-lsp/python-lsp-server

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • vim-compilers

    a collection of compilers for ready use by Vim's built-in compiler feature (see :help :compiler)

  • Vim has some built in support for that syntax

    https://github.com/Konfekt/vim-compilers

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Managing Local and Remote Filesystems with Vim and netrw

    2 projects | dev.to | 5 Jan 2023
  • Having trouble with ctags

    3 projects | /r/vim | 5 Jun 2022
  • How to set up VIM for PHP development

    8 projects | dev.to | 14 Feb 2022
  • What are the most essential keyboard shortcuts to remember?

    6 projects | /r/vim | 18 Jan 2022
  • Plugin for browsing source tree?

    4 projects | /r/neovim | 5 Jun 2021