Skip to content

raymon-roos/neovim-config

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sample of installed plugins

  • Plugin management through lazy.nvim.
  • base16 colour scheme, because it integrates well with Treesitter and modern UI features.
  • Lualine as a status line.
  • Treesitter for nice syntax highlighting and more advanced text objects.
  • Coding quality of life, such as:
    • Auto complete matching pair while typing (i.e. {},[],'',"" etc).
    • Advanced pair navigation, the '%' key jumps between function() and end, or if() and ifelse() for example.
    • Treesitter text objects for functions, classes, loops, and conditionals.
    • Treesitter indentation guides and scope highlighting.
    • Surround motions/text objects with parentheses/braces/blocks/quotes and any other character, but also HTML tags and function calls.
  • Conform for external formatters
  • nvim-lint for external linters
  • neotest for running tests
  • lazydev for nvim API completion and hover docs
  • Git status signs in the sign column.
  • git-conflict to highlight git conflict markers and provide commands for easily picking a resolution.
  • Latex integration, for navigating, compiling and viewing.
  • Fuzzy search all the things with Telescope
  • Managing files and directories as buffers, a new paradigm compared to file trees. Paired with Telescope, huge web framework directory structures seize being a hindrance.
  • Jumping and telekinesis with Leap.
  • nvim-surround the missing surround-the-given-region operation
  • Code completion nvim-cmp blink.cmp the new shiny go-to completion plugin. Actually feels faster, and a lot nicer to set up. With snippets using LuaSnip.
  • General diagnostics: Virtual text, signs, hotkeys for jumping between and viewing diagnostics.
  • Mason (and lsp-config and mason-lspconfig) for easily managing lsp servers.
  • Mason-lspconfig for automatically hooking installed mason lsp servers into lsp-config I dropped Mason, in favour of installing my linters/formatters/LSPs through my system's package manager, because Nix is just that good. Did wonders for simplifying my lsp setup.
  • lsp-config for sane default configurations for many LSP servers.
  • tiny-inline-diagnostic for improved virtual text diagnostic messages.

... and more

Zettelkasten in vanilla vim

Copied largely from this excellent blog post series. Rewritten in pure Lua, with minor tweaks. Features consist mostly of user commands, tied to hotkeys. To quickly start a new note for instance, or searching and navigating between notes. Notes I make are small, covering a single subject and are all stored together in a single flat directory and are linked to other relevant notes through file links, making use of filename completion. Filenames get a timestamp appended on creation, so they can be manipulated programmatically in the future. The tag system is build on universal-c-tags, which integrates into vim natively.

About

My neovim config, for programming, zettelkasten, and LaTeX purposes.

Topics

Resources

Stars

Watchers

Forks

Languages