neovim-config/README.md

100 lines
4 KiB
Markdown
Raw Normal View History

2021-03-13 07:50:11 +00:00
The config is complete but still work in progress as I am new to lua and slowly learning vim stuffs, so I'll keep adding new features like snippets etc and clean the config!
2021-03-08 08:14:21 +00:00
# Screenshots -
2021-03-08 08:14:21 +00:00
<img src ="https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/initialNvim.png"><hr>
<kbd><img src ="https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/nvimRice2.png"></kbd><hr>
2021-03-10 09:05:16 +00:00
# Cool Plugins -
#### lspkind-nvim
This tiny plugin adds vscode-like pictograms to neovim built-in lsp:
<kbd><img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/lspkind.png"></kbd><hr>
2021-03-13 02:18:06 +00:00
#### nvim-tree.lua
A fast and efficient file tree:
<kbd><img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/nvimtree.png"></kbd><hr>
2021-03-13 02:18:06 +00:00
### telescope-nvim -
A fuzzy file finder, picker, sorter, previewer and much more:
2021-03-13 11:10:23 +00:00
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/tel.png"></kbd>
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/telmedia.png"></kbd><hr>
2021-03-13 08:04:10 +00:00
### galaxyline -
A statusline plugin:
<kbd><img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/statusline.png"></kbd><hr>
2021-03-13 02:18:06 +00:00
### gitsigns.nvim -
Shows git signs of a repo on the signcolumn to indicate diffs/changes etc (needs plenary.nvim)
<hr>
2021-03-13 02:18:06 +00:00
### nvim-bufferline.lua -
As a top bufferline like thing which lets me handle tabs like switching, closing tabs.
2021-03-13 11:10:23 +00:00
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/bufferline.png"></kbd>
<hr>
2021-03-13 02:18:06 +00:00
### nvim-web-devicons -
Lua fork of vim devicons which lets me change icons of filetypes
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/image.png"></kbd><hr>
2021-03-13 02:18:06 +00:00
### nvim-treesitter
Better syntax highlighting for programming languages ( my config just has html,css,js support for now ).
2021-03-13 03:05:22 +00:00
without Treesitter :
2021-03-13 11:10:23 +00:00
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/woTree.png"></kbd>
2021-03-13 08:17:24 +00:00
with Treesitter :
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/wiTree.png"></kbd><hr>
2021-03-13 08:17:24 +00:00
# Guides to migrate to init.lua -
2021-03-13 11:03:42 +00:00
- https://github.com/nanotee/nvim-lua-guide
- https://alpha2phi.medium.com/neovim-init-lua-e80f4f136030
- https://oroques.dev/notes/neovim-init/
- https://icyphox.sh/blog/nvim-lua/
2021-03-13 08:17:24 +00:00
# Clone my setup -
2021-03-13 03:05:22 +00:00
2021-03-13 03:06:52 +00:00
- Install neovim-nightly , also use a nerdfont on your terminal.
- Install packer.nvim
2021-03-13 13:07:38 +00:00
```shell
2021-03-13 03:07:27 +00:00
git clone https://github.com/wbthomason/packer.nvim\
~/.local/share/nvim/site/pack/packer/start/packer.nvim
2021-03-13 13:07:38 +00:00
```
2021-03-14 11:19:29 +00:00
2021-03-13 03:05:22 +00:00
2021-03-13 03:06:52 +00:00
- Open neovim and install all plugins , :PackerInstall and :TSUpdate
2021-03-13 08:18:50 +00:00
- Install language servers and prettier ( for autocompletion etc and code formatting , nodejs should be installed too!)
2021-03-14 11:19:29 +00:00
- copy all config files in from this repo except ( plugin folder )
2021-03-13 13:07:38 +00:00
```
sudo npm install -g vscode-html-languageserver-bin typescript typescript-language-server vscode-css-languageserver-bin prettier
```
2021-03-13 08:20:37 +00:00
2021-03-13 11:07:43 +00:00
To setup any language server , follow this guide https://github.com/neovim/nvim-lspconfig/blob/master/CONFIG.md and search up the needed LSP. For example if I needed clangd's lsp server :
<kbd>
2021-03-13 11:08:14 +00:00
<img src = "https://raw.githubusercontent.com/siduck76/personal-backup/master/rice%20flex/clang.png">
2021-03-13 11:07:43 +00:00
</kbd>
2021-03-13 10:43:44 +00:00
2021-03-13 11:10:23 +00:00
2021-03-13 10:43:44 +00:00
2021-03-14 03:48:57 +00:00
I'd install it first and add its setup line ( require'lspconfig'.clangd.setup{} ) in /lua/nvim-lspconfig/lua.lua file . I will organise the config slowly and soon add a list of important mappings used in my config , on this readme so it might get easy for some :)
2021-03-14 06:45:58 +00:00
# Troubleshooting -
2021-03-14 06:45:58 +00:00
![image](https://user-images.githubusercontent.com/59060246/111059898-f096cf00-84be-11eb-977a-f91d622ee5b9.png)
if you get any errors with packer.nvim , then remove the ~/.config/nvim/plugin/packer_nvim.vim file since it just has file paths for my system
and re-install packer.nvim
2021-03-14 06:45:58 +00:00