Bare-bones setup for my development environment — currently focused on Neovim.
The install script (install.sh) is synced to a Gist. This allows for installing the configs before even cloning the repo, as such:
curl -fsSL https://gist.github.com/sinancang/4899d6b67ffa7c808343cfcbf57bcd81/raw/install.sh | bashThis will:
- Install tmux and fzf
- Apply the Neovim config by setting up some symlinks
- Alias
vitonvim
Configs are best when highly personalized, but feel free to borrow and adapt
neovim/nvim-lspconfig– LSP support forclangdandlua_lsfolke/neodev.nvim– Better Lua completions for Neovim configswilliamboman/mason.nvim– Install/manage LSPs and toolswilliamboman/mason-lspconfig.nvim– Auto-setup for installed LSPsmrcjkb/rustaceanvim– Native Rust support viarust-analyzerhrsh7th/nvim-cmp– Completion frameworkcmp-nvim-lsp– LSP source fornvim-cmpLuaSnip+cmp_luasnip– Snippet support in completionnvim-treesitter/nvim-treesitter– Tree-sitter-based syntax highlighting (Rust enabled)mhartington/oceanic-next– Oceanic Next colorscheme with truecolor + italic/bold
-
<leader>set to space -
jjto exit insert mode -
<Tab>/<S-Tab>to indent/un-indent in visual mode -
<C-Right>/<C-Left>to jump word-wise -
+to go up (k) -
LSP shortcuts:
gd: go to definitionK: hovergr: references<leader>rn: rename<leader>ca: code action<leader>f: format<leader>e: diagnostics<leader>W: warnings only<leader>H: hints only
neovimversion >= 11rust-analyzerclangd