yoshimario / nvim

Neovim config

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

HINELL/nvim

Neovim config preview Neovim config preview Neovim config preview Neovim config preview

Install

Install dependencies

This config depends on packer for plugin management and installation. I don't use lazyvim cause it has serious drawbacks (despite better UX).

Clibpoard

Nvim doesn't provide builtin clipboard support so you have to install clipboard provider. I suggset to use xclip.

Searching

ripgrep - This one is used by Telescope

Fonts

Nerd fonts

# Example of a shell script installing nerdfont JetBrainsMono

local FONTNAME="JetBrainsMono"
fc-list -q "${FONTNAME} Nerd Font Mono" || {
    local TEMPDIR=$(mktemp -d)
    git clone --depth 1 --filter=blob:none \
        --sparse git@github.com:ryanoasis/nerd-fonts.git "$TEMPDIR"
    pushd "$TEMPDIR"
    git sparse-checkout add patched-fonts/${FONTNAME}
    fc-list -q %s
    ./install.sh -s -S ${FONTNAME}
    popd
}

LSP Servers

You may use williamboman/mason.nvim to install LSP servers & other tools. See lsp-config/server_configurations.md for the list of LSP servers. Every LSP serever listed below requries a separate installation of the binary or script. Check out setup.sh executable next to this file.

Languages, LSP name Summary
c/c++ clangd
lua luals
sh,bash,zsh bashls Basic shell LSP server; quirky when works with zsh
* mattn/efm-languageserver General purpose server; see configs at creativenull/efmls-configs-nvim
javascript, typescript tsserver TypeScript server from Micro$$oft; pretty slow
json vscode-langservers-extracted Requires Node.js installation; checkout nvm manager for *nix platforms
css, scss, less vscode-langservers-extracted Requires Node.js; use npm to install
html vscode-langservers-extracted Requires Node.js; use npm to install
sql sqlls Requires Node.js; use npm to install
yamlls yamlls Requires Node.js; use npm to install

Troubleshooting

Run :checkhealth command to see if something wrong with your installation.

Usage

" ~/.config/nvim/init.vim
lua require("hinell")

Plugins

Plugin name Summary
wbthomason/packer.nvim Packaging manager
williamboman/mason.nvim Package manager to install LSP & DAP servers, linters, and formatters
williamboman/mason-lspconfig.nvim Integration with lspconfig
hrsh7th/nvim-cmp Completion engine
L3MON4D3/LuaSnip Snippet Engine for Neovim written in Lua. Supports TextMate (VS Code) snippets.
lukas-reineke/cmp-under-comparator Better nvim-cmp sorting function
taybart/b64.nvim Base64 conversion nvim command
sindrets/diffview.nvim Diffviewer
mrjones2014/legendary.nvim Command pallette
gaborvecsei/memento.nvim Upon startup put the cursor on the last editing place
simrat39/symbols-outline.nvim A tree view of symbols/outline code structure (see also aaeral.nvim
nvim-lua/plenary.nvim Utils library
stevearc/dressing.nvim UI library for salect, input etc .
nvim-lualine/lualine.nvim Statusline
luukvbaal/statuscol.nvim Statuscolumn
lukas-reineke/indent-blankline.nvim Display thin lines of indentation.
lukas-reineke/virt-column.nvim Display dots for indent columns
akinsho/bufferline.nvim Tabline
karb94/neoscroll.nvim Not used; the plugin may slow down nvim
axieax/urlview.nvim Navigate across URLs inside buffer
numToStr/Comment.nvim Toggle comment
utilyre/barbecue.nvim Context status line under tab (VS Code like winbar)
wintermute-cell/gitignore.nvim Scaffold .gitignore
aca/emmet-ls Emmet html-expansion engine
akinsho/git-conflict.nvim Visualise and resolve merge conflicts in neovim
iamcco/markdown-preview.nvim Preview markdown files in browser

Plugins: Editor

Plugin name Summary
andymass/vim-matchup Navigate and highlight matching words; modern matchit and matchparen (%)

Plugins: LSP integration

Plugin name Summary
neovim/nvim-lspconfig) Diagnostics from LSP
nvim-lua/lsp-status.nvim Diagnostics from LSP

Plugins: Telescope

Plugin name Summary
nvim-telescope/telescope.nvim UI palettes for various actions
nvim-telescope/telescope-fzf-native.nvim Telescope extension using fzf search lib
benfowler/telescope-luasnip.nvim Telescope luasnip integration
olacin/telescope-cc.nvim Telescope integration for conventional Commits
folke/todo-comments.nvim Telescope extension for listing Todo comments

Plugins: Trees-itter

Plugin name Summary
nvim-treesitter/nvim-treesitter tree-sitter configs for different language parsers
theHamsta/crazy-node-movement nvim-treesitter module for navigation across AST (multiple languages)
nvim-treesitter/nvim-treesitter-textobjects nvim-treesitter module for custom textobjects
windwp/nvim-ts-autotag nvim-treesitter module for html auto tag closing

Plugins: Themes

Theme plugin name Summary
shaunsingh/nord.nvim Theme
marko-cerovac/material.nvim Theme
Mofiqul/vscode.nvim VS Code like theme
AlexvZyl/nordic.nvim 🌒 Nord for Neovim, but warmer and darker. Supports a variety of plugins and other platforms
folke/tokyonight.nvim Theme
catppuccin Theme
catppuccin-frappe Default
Yazeed1s/oh-lucy.nvim Inspired by oh-lucy theme in vscodium, with few tweaks!
rebelot/kanagawa.nvim Theme

Plugins by Hinell

These plugins are written & maintained by me.

Plugin name Summary
hinell/move.nvim Move selected chunks of text or lines
hinell/tabs-history.nvim Track history of close tabs and focuse the last one
hinell/lsp-timeout.nvim Halt unused LSP servers & restart them on demand automatically

See also


February 1, 2023
September 28, 2023

About

Neovim config

License:Other


Languages

Language:Lua 98.7%Language:Vim Script 1.3%