Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/adityastomar67/NvStar
IDE Layer for Neovim, for simplicity lovers.
https://github.com/adityastomar67/NvStar
dotfiles formatters ide linters lua neovim neovim-config neovim-configuration neovim-lua neovim-setup nvim snippets vim vimrc vscode
Last synced: 3 months ago
JSON representation
IDE Layer for Neovim, for simplicity lovers.
- Host: GitHub
- URL: https://github.com/adityastomar67/NvStar
- Owner: adityastomar67
- License: gpl-3.0
- Created: 2022-09-26T03:39:47.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-02-25T03:24:29.000Z (over 1 year ago)
- Last Synced: 2024-06-16T10:32:09.546Z (5 months ago)
- Topics: dotfiles, formatters, ide, linters, lua, neovim, neovim-config, neovim-configuration, neovim-lua, neovim-setup, nvim, snippets, vim, vimrc, vscode
- Language: Vim Snippet
- Homepage:
- Size: 490 KB
- Stars: 27
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
NvSTAR
[![](https://img.shields.io/badge/Neovim-0.8+-blueviolet.svg?style=for-the-badge&logo=Neovim&color=302D41&logoColor=green)](https://github.com/neovim/neovim)
Personalized Development Environment โค๏ธ๐จโ๐ป
Brief description of how this configuration actually works. Hit the โญ button if you found this useful.## โ What is this
This is a v2 of my previous Neovim config - [Nvdots](https://github.com/adityastomar67/nvdots)![Screenshot_Dashboard](https://user-images.githubusercontent.com/33474611/200270455-d1fc848e-3109-49f1-902a-a7909fb00661.png)
> For **Wallpaper**, Go to _[this](https://github.com/adityastomar67/Wallpapers)_
Terminal is **ST**, for config go _[here](https://github.com/adityastomar67/.dotfiles/tree/master/.config/st)_
For other stuff checkout my [Profile](https://github.com/adityastomar67)Before we proceed, File Structure is like
If the reader is well versed or, has a general experience with shell scripting, Lua language or, know what they are doing then they may skip this section. But it advised to take a good understanding of the file structure before making any changes.
```
nvim
|
โโโ bin
โย ย โโโ friendly-snippets
โย ย โโโ luasnip_snippets
โย ย โโโ snippets
โโโ colors
โโโ init.lua
โโโ lua
โย ย โโโ core
โย ย โย ย โโโ abbreviations.lua
โย ย โย ย โโโ autocmds.lua
โย ย โย ย โโโ colorscheme.lua
โย ย โย ย โโโ colors.lua
โย ย โย ย โโโ constants.lua
โย ย โย ย โโโ maps.lua
โย ย โย ย โโโ options.lua
โย ย โย ย โโโ plugins.lua
โย ย โย ย โโโ user.lua
โย ย โย ย โโโ utils
โย ย โย ย โโโ assistance.lua
โย ย โย ย โโโ docker.lua
โย ย โย ย โโโ init.lua
โย ย โย ย โโโ notify.lua
โย ย โย ย โโโ toggle.lua
โย ย โโโ plug
โย ย โโโ chatgpt.lua
โย ย โโโ cheatsheet.lua
โย ย โโโ cmp
โย ย โย ย โโโ dynamic.lua
โย ย โย ย โโโ init.lua
โย ย โย ย โโโ luasnip.lua
โย ย โย ย โโโ tabnine.lua
โย ย โโโ colorizer.lua
โย ย โโโ fzf.lua
โย ย โโโ hydra
โย ย โย ย โโโ dap.lua
โย ย โย ย โโโ git.lua
โย ย โย ย โโโ init.lua
โย ย โย ย โโโ options.lua
โย ย โย ย โโโ spelling.lua
โย ย โย ย โโโ telescope.lua
โย ย โย ย โโโ windows.lua
โย ย โโโ init.lua
โย ย โโโ lsp
โย ย โย ย โโโ diagnostics-highlight-override.lua
โย ย โย ย โโโ init.lua
โย ย โย ย โโโ lsp-installer.lua
โย ย โย ย โโโ null-ls.lua
โย ย โย ย โโโ servers
โย ย โย ย โโโ bashls.lua
โย ย โย ย โโโ clangd.lua
โย ย โย ย โโโ emmet-ls.lua
โย ย โย ย โโโ gopls.lua
โย ย โย ย โโโ itex.lua
โย ย โย ย โโโ jsonls.lua
โย ย โย ย โโโ marksman.lua
โย ย โย ย โโโ pyright.lua
โย ย โย ย โโโ sqls.lua
โย ย โย ย โโโ sumneko-lua.lua
โย ย โย ย โโโ taplo.lua
โย ย โย ย โโโ texlab.lua
โย ย โย ย โโโ vimls.lua
โย ย โย ย โโโ yamlls.lua
โย ย โโโ lspkind.lua
โย ย โโโ mason.lua
โย ย โโโ nvim-tree.lua
โย ย โโโ other.lua
โย ย โโโ regexp.lua
โย ย โโโ tabout.lua
โย ย โโโ telescope
โย ย โย ย โโโ init.lua
โย ย โย ย โโโ options.lua
โย ย โโโ terminal.lua
โย ย โโโ todo-comments.lua
โย ย โโโ toggle.lua
โย ย โโโ trouble.lua
โย ย โโโ ts-context.lua
โย ย โโโ ui
โย ย โย ย โโโ bufferline.lua
โย ย โย ย โโโ dashboard.lua
โย ย โย ย โโโ git-sign.lua
โย ย โย ย โโโ init.lua
โย ย โย ย โโโ minimap.lua
โย ย โย ย โโโ noice.lua
โย ย โย ย โโโ notify.lua
โย ย โย ย โโโ statusline.lua
โย ย โโโ whichkey.lua
โโโ plugin
```## ๐ Install language servers
### Mostly available via npm
```bash
npm install -g typescript typescript-language-server vscode-langservers-extracted vls @tailwindcss/language-server yaml-language-server @prisma/language-server emmet-ls neovim graphql-language-service-cli graphql-language-service-server @astrojs/language-server bash-language-server
```> TIP: [No sudo on global npm install](https://github.com/sindresorhus/guides/blob/main/npm-global-without-sudo.md)
### Lua, Pyright, Deno, Gopls and rust-analyzer available in Arch/Manjaro repos
```bash
sudo pacman -S lua-language-server pyright deno rust-analyzer gopls shellcheck
```> Check your package manager for availability if not on an Arch based distro -
_brew, apt_ etc.## ๐ Install formatters
[ prettier ](https://prettier.io/) with npm
```bash
npm i -g prettier
```[ shfmt ](https://github.com/mvdan/sh) is in the AUR
```bash
sudo pacman -S shfmt # From the AUR
go install mvdan.cc/sh/v3/cmd/shfmt@latest # With the help of GO
```[ stylua ](https://github.com/JohnnyMorganz/StyLua) is in the AUR
```bash
sudo pacman -S stylua
```> Check your package manager for availability if not on an Arch based distro -
_brew, apt_ etc.[autopep8](https://pypi.org/project/autopep8/) for python is in Manjaro/Arch
repos```bash
sudo pacman -S autopep8
```> Check your package manager for availability if not on an Arch based distro -
_brew, apt_ etc.[yamlfmt](https://pypi.org/project/yamlfmt/) for yaml available with pip
```bash
sudo pip install yamlfmt
```# ๐งจ Installation
```bash
# move to home dir
cd ~
# back up current config
cp -r ~/.config/nvim ~/.config/nvim.backup
# clone repository
git clone https://github.com/adityastomar67/nvstar.git ~/.config
# Launch nvim for the first time with this command to install plugins
nvim +PackerInstall
# exit nvim and Then compile the loader file
nvim +PackerCompile
```## Additionals
### โญ Coding Assistance
With the help `a` you can get a list of all the available assistance actions for the current buffer.#### [Github Copilot](https://github.com/features/copilot)
Provdes code samples and completions and easily be setted up using the command `Copilot auth`
#### [OpenAI Codex](https://openai.com/blog/openai-codex/)
It's a premium service, you need access from OpenAI. Then you need to copy your api key from dashboard and paste it into `$HOME/.config/openai-codex/env"`
#### And Others like [StackOverflow](https://github.com/samtay/so), [Cht.sh](https://cht.sh/), [Navi](https://github.com/denisidoro/navi), [Tokei](https://github.com/XAMPPRocky/tokei), [howdoi](https://github.com/gleitz/howdoi), [howto](https://github.com/blob42/howto), [Neural](https://github.com/dense-analysis/neural), [Shell-GPT](https://github.com/TheR1D/shell_gpt)### โญ Adding custom Snippets
The conifg uses [ luasnip ](https://github.com/saadparwaiz1/cmp_luasnip) paired
with [friendly-snippets](https://github.com/adityastomar67/friendly-snippets), my own fork for VS Code style snippets.
You can add your own snippets to the config [ snippets directory ](./snippets).
You'll also need to edit the [snippets/package.json](./snippets/package.json) to
be able to load your snippets in the correct filetype.
One test snippet is included as an example.## Plugins
For a list of plugins, see the [plugins file](./lua/core/plugins.lua).
## More Info
Looking for my `zsh` and other `cli` configs? See [Dotfiles](https://github.com/adityastomar67/.dotfiles)
## Resources and inspiration
[Nvim Lua guide](https://github.com/nanotee/nvim-lua-guide)
[Ben Frain has a nice setup](https://gist.github.com/benfrain/97f2b91087121b2d4ba0dcc4202d252f)
[Lunar Vim for inspiration](https://github.com/ChristianChiarulli/LunarVim)
[Ui Customization docs](https://github.com/neovim/nvim-lspconfig/wiki/UI-customization#change-diagnostic-symbols-in-the-sign-column-gutter)
[Lua for Programmers](https://ebens.me/post/lua-for-programmers-part-1/)
[LSP config](https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md)
[Awesome list of plugins](https://github.com/rockerBOO/awesome-neovim)
[Plugin Finder](https://neovimcraft.com/)
Noting really, if you have (Neo)vim installed then you can just backup your previous config if any, then just clone this repo and create a symlink of this configuration to your ~/.config/nvim**SUGGESTION**
* Font: Cascursive - Courtesy of [@sainnhe](https://github.com/sainnhe/icursive-nerd-font) **(You can find fonts inside my dotfiles repo)**
* [dot_files](https://github.com/adityastomar67/.dotfiles/)
* [Wallpaper](https://github.com/adityastomar67/Wallpapers)## For Complete Automated install
Run this code snippet in your terminal **(Coming soon...)**
```bash
curl -sL https://bit.ly/Fresh-Install | sh -s -- --vim