syntax on filetype plugin indent on " Plugins call plug#begin('~/.vim/plugged') Plug 'neovim/nvim-lspconfig' Plug 'hrsh7th/nvim-cmp' Plug 'neovim/nvim-lspconfig' Plug 'hrsh7th/cmp-nvim-lsp' Plug 'hrsh7th/cmp-buffer' Plug 'hrsh7th/cmp-path' Plug 'hrsh7th/cmp-cmdline' " For vsnip users. Plug 'L3MON4D3/LuaSnip' Plug 'saadparwaiz1/cmp_luasnip' ""Plug 'hrsh7th/vim-vsnip' Plug 'chriskempson/base16-vim' Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} " We recommend updating the parsers on update Plug 'kaicataldo/material.vim', { 'branch': 'main' } Plug 'nvim-lua/popup.nvim' Plug 'nvim-lua/plenary.nvim' Plug 'nvim-telescope/telescope.nvim' Plug 'itchyny/lightline.vim' Plug 'joshdick/onedark.vim' Plug 'rust-lang/rust.vim' call plug#end() lua require('init') " General vim configurations set relativenumber set colorcolumn=80 set updatetime=50 set tabstop=4 softtabstop=4 set expandtab set smartindent set completeopt=menu,menuone,noselect set noswapfile set nobackup set scrolloff=8 set signcolumn=yes set nowrap set nu set hidden set undodir=~/.config/nvim/undodir set undofile " Theme settings " https://github.com/kaicataldo/material.vim if (has('termguicolors')) set termguicolors endif let g:material_theme_style = 'darker' colorscheme material " Lsp configuration for multiple languages " Use and to navigate through popup menu inoremap pumvisible() ? "\" : "\" inoremap pumvisible() ? "\" : "\" " Tree-sitter config lua require'nvim-treesitter.configs'.setup { highlight = { enable = true }, incremental_selection = { enable = true }, textobjects = { enable = true }} " keyboard shortcut options let mapleader = " " nnoremap n gt nnoremap m gT " Telescope shortcuts nnoremap ff Telescope find_files nnoremap fg Telescope live_grep nnoremap fb Telescope buffers nnoremap fh Telescope help_tags