From bf453117ccd93cf8afd5499781b4e732da7a6533 Mon Sep 17 00:00:00 2001 From: dahrub Date: Tue, 27 Dec 2022 12:28:10 +0000 Subject: [PATCH] Add '.vimrc' --- .vimrc | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 .vimrc diff --git a/.vimrc b/.vimrc new file mode 100644 index 0000000..1023363 --- /dev/null +++ b/.vimrc @@ -0,0 +1,116 @@ +set cursorline +set wildmenu +set incsearch +set hlsearch +set nu rnu +set tabstop=4 +set softtabstop=4 +set shiftwidth=4 +set autoindent +set textwidth=80 +set noshowmode +set expandtab +set smarttab +set smartindent +set smartcase +set ignorecase +set backspace=indent,eol,start +syntax on +set nocompatible +let mapleader=" " +filetype off + +set rtp+=~/.vim/bundle/Vundle.vim +call vundle#begin() + +Plugin 'VundleVim/Vundle.vim' +Plugin 'preservim/nerdtree' +Plugin 'preservim/nerdcommenter' +Plugin 'joshdick/onedark.vim' +Plugin 'w0rp/ale' +Plugin 'tiagofumo/vim-nerdtree-syntax-highlight' +Plugin 'ryanoasis/vim-devicons' +Plugin 'airblade/vim-gitgutter' +Plugin 'ctrlpvim/ctrlp.vim' +Plugin 'github/copilot.vim' +Plugin 'itchyny/lightline.vim' + +call vundle#end() + +filetype plugin indent on + +" NERDTree +autocmd StdinReadPre * let s:std_in=1 +autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | exe 'NERDTree' | wincmd p | ene | exe 'cd '.argv()[0] | endif + +autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif + +function! IsNERDTreeOpen() + return exists("t:NERDTreeBufName") && (bufwinnr(t:NERDTreeBufName) != -1) +endfunction + +set hidden +set updatetime=300 +set signcolumn=yes + +let g:NERDTreeGitStatusWithFlags = 1 +let g:NERDTreeIgnore = ['^node_modules$'] +" Create default mappings +let g:NERDCreateDefaultMappings = 1 + +" Add spaces after comment delimiters by default +let g:NERDSpaceDelims = 1 + +" Use compact syntax for prettified multi-line comments +let g:NERDCompactSexyComs = 1 + +" Align line-wise comment delimiters flush left instead of following code indentation +let g:NERDDefaultAlign = 'left' + +" Set a language to use its alternate delimiters by default +let g:NERDAltDelims_java = 1 + +" Add your own custom formats or override the defaults +let g:NERDCustomDelimiters = { 'c': { 'left': '/**','right': '*/' } } + +" Allow commenting and inverting empty lines (useful when commenting a region) +let g:NERDCommentEmptyLines = 1 + +" Enable trimming of trailing whitespace when uncommenting +let g:NERDTrimTrailingWhitespace = 1 + +" Enable NERDCommenterToggle to check all selected lines is commented or not +let g:NERDToggleCheckAllLines = 1 + + +let g:ctrlp_user_command = ['.git/', 'git --git-dir=%s/.git ls-files -oc --exclude-standard'] + +let g:ale_linters_explicit = 1 +let g:ale_linters = { 'cpp': ['g++'], 'c': ['gcc'] } +let g:ale_cpp_cc_options = "-std=c++17" + +inoremap jk +vmap NERDCommenterToggle +nmap NERDCommenterToggle + +if (has("nvim")) + "For Neovim 0.1.3 and 0.1.4 < https://github.com/neovim/neovim/pull/2198 > + let $NVIM_TUI_ENABLE_TRUE_COLOR=1 +endif + "For Neovim > 0.1.5 and Vim > patch 7.4.1799 < https://github.com/vim/vim/commit/61be73bb0f965a895bfb064ea3e55476ac175162 > + "Based on Vim patch 7.4.1770 (`guicolors` option) < https://github.com/vim/vim/commit/8a633e3427b47286869aa4b96f2bfc1fe65b25cd > + " < https://github.com/neovim/neovim/wiki/Following-HEAD#20160511 > +if (has("termguicolors")) + set termguicolors +endif + +let g:onedark_hide_endofbuffer = 1 +let g:onedark_termcolors = 256 +let g:onedark_terminal_italics = 1 + +let g:lightline = { + \ 'colorscheme': 'onedark', + \ } + +syntax on +colorscheme onedark \ No newline at end of file