From 624a7aaa7777ffe5298181c3521484c287ab6ca9 Mon Sep 17 00:00:00 2001 From: Aaron LI Date: Thu, 15 Nov 2018 23:43:19 +0800 Subject: Move _vimrc to _vim/vimrc --- _vimrc | 336 ----------------------------------------------------------------- 1 file changed, 336 deletions(-) delete mode 100644 _vimrc (limited to '_vimrc') diff --git a/_vimrc b/_vimrc deleted file mode 100644 index 941ccb6..0000000 --- a/_vimrc +++ /dev/null @@ -1,336 +0,0 @@ -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Credit: -" Amir Salihefendic — @amix3k -" https://github.com/amix/vimrc/blob/master/vimrcs/basic.vim -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => General -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Sets how many lines of history VIM has to remember -set history=500 - -" Enable filetype plugins -filetype plugin on -filetype indent on - -" Set to auto read when a file is changed from the outside -set autoread - -" With a map leader it's possible to do extra key combinations -" like w saves the current file -let mapleader = "," - -" Fast saving -nmap w :w! - -" :W sudo saves the file -" (useful for handling the permission-denied error) -command! W w !sudo tee % >/dev/null - - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => VIM user interface -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -set mouse=a -set ignorecase -set smartcase -set hlsearch -set incsearch - -" Set 7 lines to the cursor - when moving vertically using j/k -set scrolloff=7 - -" Turn on the Wild menu -set wildmenu - -" Ignore compiled files -set wildignore=*.o,*~,*.pyc -set wildignore+=*/.git/*,*/.hg/*,*/.svn/*,*/.DS_Store - -" Height of the command bar -set cmdheight=1 - -" A buffer becomes hidden when it is abandoned -set hidden - -" Configure backspace so it acts as it should act -set backspace=eol,start,indent -set whichwrap+=<,>,h,l - -" Don't redraw while executing macros (good performance config) -set lazyredraw - -" For regular expressions turn magic on -set magic - -" Show matching brackets when text indicator is over them -set showmatch -" How many tenths of a second to blink when matching brackets -set matchtime=2 - -" No annoying sound on errors -set noerrorbells -set novisualbell -set t_vb= -set timeoutlen=500 - -" Properly disable sound on errors on MacVim -if has("gui_macvim") - autocmd GUIEnter * set vb t_vb= -endif - -" Add a bit extra margin to the left -set foldcolumn=1 - -" Highlight the current line -set cursorline - - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => Colors and Fonts -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -syntax enable - -set t_Co=256 -if $COLORTERM == 'truecolor' - set termguicolors -endif -if &term =~# '^screen' - " Set terminal sequences for true colors (:help xterm-true-color) - let &t_8f = "\[38;2;%lu;%lu;%lum" - let &t_8b = "\[48;2;%lu;%lu;%lum" -endif - -colorscheme flattened_light - -if has("gui_running") - set guioptions-=T " No toolbar - set guioptions-=e " No GUI tabs - set guioptions-=m " No menu bar - set guioptions-=l " No left scrollbar - set guioptions-=L " No left scrollbar - set guioptions-=r " No right scrollbar - set guioptions-=R " No right scrollbar - set guifont=IBM\ Plex\ Mono\ Medium\ 11 - set guitablabel=%M\ %t - set guicursor+=a:blinkoff0 " Disable cursor blinking -endif - - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => Files, backups and undo -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -set encoding=utf8 -set fileformats=unix,dos,mac - -" Turn backup off -set nobackup -set nowritebackup -set noswapfile - - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => Text, tab and indent related -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -set expandtab -set smarttab -set tabstop=8 -set shiftwidth=4 - -set autoindent -set smartindent -set wrap - -set linebreak -set textwidth=75 -set formatoptions+=m " Break at multi-byte characters (e.g., CJK) - - -"""""""""""""""""""""""""""""" -" => Visual mode related -"""""""""""""""""""""""""""""" -" Visual mode pressing * or # searches for the current selection -" Super useful! From an idea by Michael Naumann -vnoremap * :call VisualSelection('', '')/=@/ -vnoremap # :call VisualSelection('', '')?=@/ - - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => Moving around, tabs, windows and buffers -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -map / -map ? - -" Disable highlight when is pressed -map :noh - -" Smart way to move between windows -map j -map k -map h -map l - -" Close the current buffer -map bd :Bclose:tabclosegT - -" Close all the buffers -map ba :bufdo bd - -map l :bnext -map h :bprevious - -" Useful mappings for managing tabs -map tn :tabnew -map to :tabonly -map tc :tabclose -map tm :tabmove -map t :tabnext - -" Let 'tl' toggle between this and the last accessed tab -let g:lasttab = 1 -nmap tl :exe "tabn ".g:lasttab -autocmd TabLeave * let g:lasttab = tabpagenr() - -" Opens a new tab with the current buffer's path -" Super useful when editing files in the same directory -map te :tabedit =expand("%:p:h")/ - -" Switch CWD to the directory of the open buffer -map cd :cd %:p:h:pwd - -" Specify the behavior when switching between buffers -set switchbuf=useopen,usetab,newtab -set showtabline=2 - -" Return to last edit position when opening files (You want this!) -autocmd BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif - - -"""""""""""""""""""""""""""""" -" => Status line -"""""""""""""""""""""""""""""" -" Always show the status line -set laststatus=2 - -" Returns true if paste mode is enabled -function! HasPaste() - if &paste - return '[PASTE] ' - endif - return '' -endfunction - -" Format the status line -set statusline=\ %{HasPaste()}%f%m%r%h\ %w\ %= -set statusline+=%{&fileencoding?&fileencoding:&encoding}\ %y\ %l,%c%V\ %P -set statusline+=\ " blank space - - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => Editing mappings -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Move a line of text using ALT+[jk] or Command+[jk] on mac -nmap mz:m+`z -nmap mz:m-2`z -vmap :m'>+`mzgv`yo`z -vmap :m'<-2`>my` - nmap - vmap - vmap -endif - -" Delete trailing white space on save, useful for some filetypes ;) -function! CleanExtraSpaces() - let save_cursor = getpos(".") - let old_query = getreg('/') - silent! %s/\s\+$//e - call setpos('.', save_cursor) - call setreg('/', old_query) -endfunction - -autocmd BufWritePre *.txt,*.js,*.py,*.wiki,*.sh,*.coffee :call CleanExtraSpaces() - - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => Spell checking -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -set spelllang=en_us,cjk - -" Pressing ,ss will toggle and untoggle spell checking -map ss :setlocal spell! - -" Shortcuts using -map sn ]s -map sp [s -map sa zg -map s? z= - - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => Misc -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Remove the Windows ^M - when the encodings gets messed up -noremap m mmHmt:%s///ge'tzt'm - -" Quickly open a buffer for scribble -map q :e ~/buffer - -" Quickly open a markdown buffer for scribble -map x :e ~/buffer.md - -" Toggle paste mode on and off -map pp :setlocal paste! - -" Disable F1 to open the help -map -imap - - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" => Helper functions -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Don't close window, when deleting a buffer -command! Bclose call BufcloseCloseIt() -function! BufcloseCloseIt() - let l:currentBufNum = bufnr("%") - let l:alternateBufNum = bufnr("#") - - if buflisted(l:alternateBufNum) - buffer # - else - bnext - endif - - if bufnr("%") == l:currentBufNum - new - endif - - if buflisted(l:currentBufNum) - execute("bdelete! ".l:currentBufNum) - endif -endfunction - -function! CmdLine(str) - call feedkeys(":" . a:str) -endfunction - -function! VisualSelection(direction, extra_filter) range - let l:saved_reg = @" - execute "normal! vgvy" - - let l:pattern = escape(@", "\\/.*'$^~[]") - let l:pattern = substitute(l:pattern, "\n$", "", "") - - if a:direction == 'gv' - call CmdLine("Ack '" . l:pattern . "' " ) - elseif a:direction == 'replace' - call CmdLine("%s" . '/'. l:pattern . '/') - endif - - let @/ = l:pattern - let @" = l:saved_reg -endfunction -- cgit v1.2.2