From a6831bb06715245a580f409bb9cc2e53cf63ee94 Mon Sep 17 00:00:00 2001 From: Timmy Keller Date: Sun, 17 Apr 2022 11:00:18 -0500 Subject: asdf --- nvim/init.vim.old | 121 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100755 nvim/init.vim.old (limited to 'nvim') diff --git a/nvim/init.vim.old b/nvim/init.vim.old new file mode 100755 index 0000000..bc23e31 --- /dev/null +++ b/nvim/init.vim.old @@ -0,0 +1,121 @@ +" Manage plugins using vim-plug +if ! filereadable(system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/plug.vim"')) + echo "Downloading junegunn/vim-plug to manage plugins..." + silent !mkdir -p ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/ + silent !curl "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/plug.vim + autocmd VimEnter * PlugInstall +endif + +call plug#begin(system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/plugged"')) +Plug 'jiangmiao/auto-pairs' +Plug 'junegunn/goyo.vim' +Plug 'alvan/vim-closetag' +Plug 'ap/vim-css-color' +Plug 'vimwiki/vimwiki' +call plug#end() + +" Basic options +set autochdir " Always change directory to current file +set autoindent " Keeps indentation on new lines +set hlsearch " Highlight search hits +set ignorecase " Case-insensitive search... +set linebreak " Word wrap +set mouse=a " Because sometimes it's just easier to use the mouse +set number relativenumber " Enable relative line numbers +set smartcase " ...Unless the search term is capital +set splitbelow splitright " Open splits on bottom/right instead of top/left +set termguicolors " Enable GUI colors for the terminal to get truecolor +set wildmode=longest,list,full " Enable file auto-complete +syntax on " Enable syntax highlighting + +" VimWiki options +let g:vimwiki_list = [{'path': '~/docs/school/docs/wiki/', 'path_html': '~/docs/school/docs/wiki/site/'}] + +" Keybindings + " Set leader-key to comma +let mapleader ="," + " Invoke goyo with comma-m +nmap m :Goyo + " Invoke spellcheck mode with comma-o +nmap l :setlocal spell! spelllang=en_us + " Invoke spellcheck mode with comma-o +nmap c :set cursorcolumn! + " Send cursor to top or bottom currently visible line with ctrl-jk +" map :call cursor(line('w$'),col('.')) +" map :call cursor(line('w0'),col('.')) + " Navigate faster than hjkl with ctrl-hjlk +nmap 0 +nmap +nmap +nmap $ + " Faster split navigation (alt-hjlk, as opposed to ctrl-w + hjlk) +"map h +"map j +"map k +"map l + " Streamlined tab navigation with chromium inspired keybindings +nmap gt +nmap gT +nmap :tabnew + " Copy, paste, and cut with standard bindings +map "+y +"map "+gp +map "+x + +" Colorscheme for root and normal users (since vimrc is just symlinked to the root user's home) +if ($USER) == 'root' + colorscheme zellner +else + if empty($DISPLAY) + colorscheme default + else + set bg=dark + let g:gruvbox_contrast_dark = 'hard' + colorscheme gruvbox-timmy + endif +endif + +" Behaviors exclusive to either the tty or a terminal emulator in a graphical environment +if empty($DISPLAY) + " Clear the tty screen after exiting vim + "autocmd QuitPre * :!clear +else + set cursorline " Highlight current line + " Change the terminal emulator's window title and class name to vim + autocmd BufEnter * :set title + autocmd VimEnter * :silent exec "!/home/timmy/scripts/st/settitle Vim" + autocmd VimLeave * :silent exec "!/home/timmy/scripts/st/settitle st" + let &titleold="st" +endif + +" Set the cursor on a per-mode basis (Not needed in NVIM) +"let &t_SI.="\[6 q" " Insert mode +"let &t_SR.="\[4 q" " Replace mode +"let &t_EI.="\[2 q" " Normal mode +"let &t_ti.="\[2 q" " Cursor on startup + +" Automatically deletes all trailing whitespace on save +function DelWS() + :let ccc=col('.') " Set current cursor column + :let ccl=line('.') " Set current cursor line + :%s/\s\+$//e " Find and remove trailing whitespace on each line + :call cursor(ccl,ccc) " Move cursor to previous position +endfunction +autocmd BufWritePre * call DelWS() + +" Disables automatic commenting on newline: + autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o +" Perform dot commands over visual blocks: + vnoremap . :normal . +" Save file as sudo on files that require root permission + cnoremap w!! execute 'silent! write !sudo tee % >/dev/null' edit! +" LaTeX syntax highlighting + autocmd BufRead,BufNewFile *.tex set filetype=tex + +" Plugin options + " closetag +let g:closetag_filenames = '*.html,*.xhtml,*.phtml' + +" Get rid of the pointless .viminfo files that clutter the home directory +let skip_defaults_vim=1 +set viminfo="" -- cgit v1.2.3