Skip to content

Davidslv/nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Neovim

Documentation | Github

Pre-Installation

Make sure you have install homebrew. Then run the following command to install Neovim and some dependencies.

[See the Brewfile for details]

brew bundle install --verbose --no-lock

Installation

Clone this repository into ~/.config/nvim

git clone [email protected]:Davidslv/nvim.git ~/.config/nvim

Healtcheck

Open nvim and enter the following:

:checkhealth

Folder structure

lua
├── lsp                    - LSP Configuration
├── plugins                - this is where you setup your plugins
│  ├── alpha.lua
│  ├── nvim-tree.lua
│  ├── nvim-treesitter.lua
│  ├── toggleterm.lua
│  └── which-key.lua
├── plugins.lua            - this is where all plugins are installed, via packer
└── settings
   ├── colorscheme.lua
   ├── init.lua            - main settings
   ├── keymaps             - this is where you setup your keymaps
   │  ├── nvim-tree.lua
   │  ├── telescope.lua
   │  └── toggleterm.lua
   └── keymaps.lua

Custom Development Environment

Each vim is quite personal to each individual, you should customize it to your own needs.

  • Lua-fy everthing
    • Settings
    • Keymaps
    • Commands
    • Autocmds
    • etc..

Commands

Plugin Command Description
NvimTree a Press a (add) to create a new file, you need to be on the file Explorer
NvimTree r Press r (rename) to rename a file/folder
NvimTree d Press d (delete) to delete a file/folder
NvimTree o Press o (open) to open a folder
NvimTree f Press f (filter) to filter files with given match
NvimTree m Press m (mark) toggle mark node, selects a tree node (to use with bmv)
NvimTree bmv Press bmv (bulk move) marked notes to given destination
WhichKey <leader>w Press \w to popup menu with possible key bindings
Telescope <leader>ff Press \ff to popup menu to find files by name
Telescope <leader>fg Press \fg to popup menu to find text in files
Telescope <leader>fb Press \fb to popup menu to list open buffers in current Neovim instance
vim-rails :AS/:AV Opens test file underneath or on right side of current file
Native <C-v> Press CTRL + v to enter visual mode (text selection)
Native <C-v> + c CTRL + v, select, press c, apply your change, press ESC, everything select should have changed

Ruby

  • Make sure you have your package manager install
  • Make sure you do have a ruby version installed
$ gem install neovim solargraph

cd /path/to/workspace

# in the directory of the project create a .solargraph.yml file
touch .solargraph.yml
include:
- "**/*.rb"
exclude:
- spec/**/*
- test/**/*
- vendor/**/*
- db/**/*
- ".bundle/**/*"
require: []
domains: []
reporters:
- rubocop
- require_not_found
max_files: 8000

And then scan the project directory

$ solargraph scan -v

Troubleshooting

:LspRestart

Warning: The workspace is too large to index

neoclide/coc.nvim

[coc.nvim] build/index.js not found, please install dependencies and compile coc.nvim by: yarn install

You need to run yarn install manually in the coc.nvim packer directory

cd ~/.local/share/nvim/site/pack/packer/start/coc.nvim
yarn install

Trigger completion

https://github.com/neoclide/coc.nvim/wiki/Completion-with-sources#use-tab-or-custom-key-for-trigger-completion

Have fun!

That's it...