Skip to content

Latest commit

 

History

History
175 lines (147 loc) · 14 KB

README.md

File metadata and controls

175 lines (147 loc) · 14 KB

image logo

BEARVIM

Bearvim is a bare minimum neovim config to get started on using neovim for beginners and also for advanced users. I tried many neovim distributions overtime but i always came back to my personal configs, mostly because most of the neovim distributions are complicated and they seem to make everything way overboard.
This config aims to bridge the gap. This is a little bit opinianated but it offers a lot of flexibility in terms of adapting it to your own liking.

NB: This is solely a neovim config. It probably will not work with vanilla vim.

Installing.

Prerequisites git, neovim > 0.7

curl -sLf https://raw.githubusercontent.com/anoopar112/bearvim/master/install.sh | bash

Config structure.

├──  README.md
├──  init.lua
├──  install.sh
└──   lua
    └──  bearvim
        ├──  core
        │   ├──  colorscheme.lua
        │   ├──  dashboard.lua
        │   ├──  keymaps.lua
        │   └──  options.lua
        ├──  plugins
        │   ├──  autopairs.lua
        │   ├──  autosave.lua
        │   ├──  bookmark.lua
        │   ├──  bufferline.lua
        │   ├──  comment.lua
        │   ├──  general.lua
        │   ├──  gitsigns.lua
        │   ├──  indentblankline.lua
        │   ├──  lualine.lua
        │   ├──  markdown-preview.lua
        │   ├──  nvim-cmp.lua
        │   ├──  nvimtree.lua
        │   ├──  session-manager.lua
        │   ├──  telescope.lua
        │   ├──  treesitter.lua
        │   └──  vimwiki.lua
        │   ├──  lsp
        │   │   ├──  lspconfig.lua
        │   │   ├──  lspsaga.lua
        │   │   ├──  mason.lua
        │   │   └──  null-ls.lua
        └──  plugins-setup.lua

The structure of the directory is divided into core and plugins. The core contains the main options and keymaps. The plugins directory contains all the installed plugins.

Startup.

Bearvim will install packer and then packer will install all the plugins on first start. In the subsequent runs it will install the lsp plugins.

Installing new plugins.

Bearvim uses packer to install all the plugins.
All the plugins are in the plugins-setup page.
You can add the plugins in the same page using packer.
For more info refer packer documentation here

Keybindings

This is the most opinianated section for this repository.
But fortunately, by design it is very easy to change.
you can change most of these Keybindings from the core/keymaps.lua file. There are some plugin specific bindings in their respective files also which will be mentioned seperately.

The leader key is mapped to space.

Moving between splits.

  • space w j move down the split.
  • space w k move up the split.
  • space w h move right the split.
  • space w l move left the split.

Other bindings.

  • jj will get you out of the insert mode.
    autosave.nvim is added so that it will automatically save the file on mode change.
    you can toggle that using the command :ASToggle.
    for more info refer Pocco81/auto-save.nvim

  • space jj - save the file.

  • space wq - also save the file and quit.

  • space wc - close the window/split or quit if only one window is open.

  • space bd - delete the current buffer.

  • space ff - open the file tree.

  • space nh - clear the current highlight.

  • space vt - This Keybinding is specifically for adding tasks in vimwiki.
    it will create a string in the format YYYYMMDD_task for easily creating
    tasks for each day.

Telescope specific bindings.