Add vimrc

This commit is contained in:
Tyler Perkins 2023-11-29 21:40:39 -05:00
commit 4271d1edf7
Signed by: tyler
GPG Key ID: 03B27509E17EFDC8

143
.vimrc Normal file
View File

@ -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 <F8> :TagbarToggle<CR>
""" NERDTree
" open NERDTree on startup
autocmd vimenter * NERDTree | wincmd p
nnoremap <F7> :NERDTreeToggle<CR>
" 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="\\"