call plug#begin() "Plug 'ctrlpvim/ctrlp.vim' Plug 'ThePrimeagen/vim-be-good' Plug 'vimwiki/vimwiki' Plug 'mhinz/vim-startify' Plug 'liuchengxu/vim-which-key' Plug 'morhetz/gruvbox' Plug 'vim-airline/vim-airline' Plug 'vim-airline/vim-airline-themes' Plug 'folke/twilight.nvim' Plug 'folke/zen-mode.nvim' "Plug 'hoob3rt/lualine.nvim' Plug 'windwp/nvim-autopairs' Plug 'sindrets/diffview.nvim' Plug 'kyazdani42/nvim-web-devicons' " for file icons Plug 'kyazdani42/nvim-tree.lua' Plug 'akinsho/nvim-bufferline.lua' Plug 'L3MON4D3/LuaSnip' Plug 'lewis6991/gitsigns.nvim' Plug 'nekonako/xresources-nvim' Plug 'tpope/vim-obsession' Plug 'p00f/cphelper.nvim' " Wal theme Plug 'dylanaraps/wal.vim' " LSP Plug 'neovim/nvim-lspconfig' Plug 'hrsh7th/nvim-compe' Plug 'simrat39/symbols-outline.nvim' Plug 'glepnir/lspsaga.nvim' " Telescope Plug 'nvim-lua/popup.nvim' Plug 'nvim-lua/plenary.nvim' Plug 'nvim-telescope/telescope.nvim' Plug 'nvim-telescope/telescope-fzy-native.nvim' " Neovim Tree Sitter Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} Plug 'nvim-treesitter/playground' Plug 'lervag/vimtex' " debugging Plug 'puremourning/vimspector' " ziglang Plug 'ziglang/zig.vim' call plug#end() " Debugger Remaps fun! GotoWindow(id) call win_gotoid(a:id) MaximizerToggle endfun " VimspectorStop " VimspectorPause " VimspectorAddFunctionBreakpoint " Setup lua lua require("altffour") " General filetype plugin on set noswapfile set nobackup set nomodeline set nocompatible set noequalalways set wrap set textwidth=80 set wrapmargin=80 set ttimeoutlen=0 set clipboard+=unnamed set autoread set backspace=indent,eol,start set ignorecase set smartcase set incsearch set magic set ruler set wildmenu set wildchar= set nosmd set hidden set nomodeline setlocal spell spelllang=en_us " vimtex let g:vimtex_view_method="zathura" " LSP " Set completeopt to have a better completion experience " :help completeopt " menuone: popup even when there's only one match " noinsert: Do not insert text until a selection is made " noselect: Do not select, force user to select one from the menu set completeopt=menuone,noinsert,noselect " LuaSnip imap luasnip#expand_or_jumpable() ? 'luasnip-expand-or-jump' : '' inoremap lua require'luasnip'.jump(-1) snoremap lua require('luasnip').jump(1) snoremap lua require('luasnip').jump(-1) imap luasnip#choice_active() ? 'luasnip-next-choice' : '' smap luasnip#choice_active() ? 'luasnip-next-choice' : '' " Appearance set number " toggle invisible characters set showbreak=↪ set list "set listchars=tab:→\ ,eol:¬,trail:⋅,extends:❯,precedes:❮,space:· set listchars=tab:→\ ,eol:¬,trail:⋅,extends:❯,precedes:❮ set ttyfast " Setup theme. set t_Co=256 "let g:gruvbox_termcolors=16 let g:gruvbox_contrast_light="hard" let g:gruvbox_contrast_dark="hard" "colorscheme koehler colorscheme wal "set background=dark "set termguicolors hi Pmenu ctermbg=black hi PmenuSel ctermbg=white hi PmenuSbar ctermbg=black hi PmenuThumb ctermbg=black set cursorline highlight Cursor ctermbg=NONE ctermfg=white " Default Colors for CursorLine highlight CursorLine ctermbg=Black ctermfg=White " Change Color when entering Insert Mode autocmd InsertEnter * highlight CursorLine ctermbg=Gray ctermfg=Black " Revert Color to default when leaving Insert Mode autocmd InsertLeave * highlight CursorLine ctermbg=Black ctermfg=White " Leader keys let mapleader = " " map e :bufdo e! nnoremap :WhichKey '' nnoremap Y y$ nnoremap n nzzzv nnoremap N nzzzv nnoremap J mzJ`z inoremap , ,u inoremap . .u inoremap ! !u inoremap ? ?u vnoremap J :m '>+1gv=gv vnoremap K :m '<-1gv=gv vnoremap :m .+1== nnoremap j :m .+1== vnoremap :m .-1== nnoremap k :m .-1== nnoremap ac :center nnoremap ar :right nnoremap al :left nnoremap bb :buffers nnoremap bn :bn nnoremap bp :bp nnoremap bd :bd nnoremap ws :split nnoremap wvs :vsplit nnoremap wc :close noremap noremap noremap noremap inoremap inoremap inoremap inoremap vnoremap vnoremap vnoremap vnoremap "" Debugger remaps nnoremap m :MaximizerToggle! nnoremap dd :call vimspector#Launch() nnoremap dc :call GotoWindow(g:vimspector_session_windows.code) nnoremap dt :call GotoWindow(g:vimspector_session_windows.tagpage) nnoremap dv :call GotoWindow(g:vimspector_session_windows.variables) nnoremap dw :call GotoWindow(g:vimspector_session_windows.watches) nnoremap ds :call GotoWindow(g:vimspector_session_windows.stack_trace) nnoremap dtcb :call vimspector#CleanLineBreakpoint() nmap dl VimspectorStepInto nmap dj VimspectorStepOver nmap dk VimspectorStepOut nmap d_ VimspectorRestart nnoremap d :call vimspector#Continue() nmap drc VimspectorRunToCursor nmap dbp VimspectorToggleBreakpoint nmap dcbp VimspectorToggleConditionalBreakpoint "" Telescope remaps nnoremap ff :Telescope find_files nnoremap fg :Telescope live_grep nnoremap fb :Telescope buffers nnoremap fh :Telescope help_tags " Custom settings. set mouse=a set encoding=utf-8 set backspace=indent,eol,start "set timeoutlen=50 syntax on set rnu