From 4271d1edf7e1e3b0cdcba4d91ace9dfc8ed2718c Mon Sep 17 00:00:00 2001 From: Tyler Perkins Date: Wed, 29 Nov 2023 21:40:39 -0500 Subject: [PATCH] Add vimrc --- .vimrc | 143 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 .vimrc diff --git a/.vimrc b/.vimrc new file mode 100644 index 0000000..b4a6528 --- /dev/null +++ b/.vimrc @@ -0,0 +1,143 @@ +""""""""""""""""""""""""""""""""""""""" +" Tyler Perkins +" .vimrc +" +""""""""""""""""""" +" Vundle Prep/Vundle +" set to ward off unexpected things that gentoo might do, and reset all +" options when reading this file +set nocompatible + +" attempt to figure out the file type and apply +filetype off + +" set run time path to include vundle +set rtp+=~/.vim/bundle/Vundle.vim +call vundle#begin() +"""" Begin Plugins + +"let Vundle manage Vundle +Plugin 'VundleVim/Vundle.vim' + +""" General Plugins +Plugin 'wincent/command-t' +Plugin 'jamessan/vim-gnupg' +Plugin 'tpope/vim-surround' +Plugin 'jiangmiao/auto-pairs' +Plugin 'preservim/nerdtree' + +""" Developer Plugins +" Git plugin +Plugin 'tpope/vim-fugitive' +Plugin 'github/copilot.vim' +Plugin 'ap/vim-css-color' +Plugin 'preservim/tagbar' +"Plugin 'Xuyuanp/nerdtree-git-plugin' +Plugin 'ryanoasis/vim-devicons' +Plugin 'PhilRunninger/nerdtree-visual-selection' +Plugin 'airblade/vim-gitgutter' +Plugin 'ycm-core/YouCompleteMe' + +""" Rice +Plugin 'itchyny/lightline.vim' +"Plugin 'vim-airline/vim-airline' + +""" Syntax plugins +Plugin 'chr4/nginx.vim' +Plugin 'chr4/sslsecure.vim' +Plugin 'ekalinin/Dockerfile.vim' +Plugin 'vim-latex/vim-latex' +Plugin 'posva/vim-vue' +Plugin 'bfrg/vim-cpp-modern' + + +call vundle#end() +filetype plugin indent on +filetype plugin on +""""" End Plugins + +""""""""""""""""""" +" Plugin Config + +""" Command T +let g:CommandTPreferredImplementation='ruby' +let g:CommandTMaxFiles=500000 +let g:CommandTMaxDepth=15 + +""" Lightline +set noshowmode +let g:lightline = { + \ 'colorscheme': 'powerline', + \ 'active': { + \ 'left': [ [ 'mode', 'paste' ], + \ [ 'gitbranch', 'readonly', 'filename', 'modified'] ] + \ }, + \ 'component_function': { + \ 'gitbranch': 'FugitiveHead', + \ }, + \ } + +""" tagbar +nmap :TagbarToggle + +""" NERDTree +" open NERDTree on startup +autocmd vimenter * NERDTree | wincmd p +nnoremap :NERDTreeToggle +" Exit Vim if NERDTree is the only window remaining in the only tab. +autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif + +""""" End Plugin Config + +""""""""""""""""""" +" Generic vim config +" UTF-8 encoding +set encoding=utf-8 + +" Syntax highlighting +syntax on + +" Better command line completion +set wildmenu + +" show partial commands +set showcmd + +" highlight searches +set hlsearch +" +" use case insensitve search +set ignorecase +set smartcase + +" allow backspace over autoindent +set backspace=indent,eol,start + +" use autoindent +set autoindent + +" show the cursor positon at bottom of screen +set ruler + +" always show status line +set laststatus=2 + +" dont fail commands due to unsaved, show dialouge asking if want to save +set confirm + +" allow use of the mouse +set mouse=a + +" set command window to 2 lines, so we can see complete options +set cmdheight=1 + +" display editor numbers +set number relativenumber + +" set tab size +set shiftwidth=4 +set softtabstop=4 +set expandtab + +" Bind leader to '\' +let mapleader="\\"