18 Star 39 Fork 1

mathmhb / Makefile

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
mhb.vim 4.19 KB
一键复制 编辑 原始数据 按行查看 历史
mathmhb 提交于 2023-07-14 14:29 . changes errorformat
" settings from archwiki
filetype plugin on
syntax on
autocmd FileType python set breakindentopt=shift:4
set whichwrap=b,s,<,>,[,]
set number
autocmd FileType tex setlocal spell spelllang=en_us
set incsearch
set hlsearch
set ruler
" settings on quickfix errorformat
autocmd FileType tex set errorformat=%f:%l:%c:%m
autocmd FileType c set errorformat=%f:%l:%c:\ error:\ %m
autocmd FileType cpp set errorformat=%f:%l:%c:\ error:\ %m
" auto load changed file
set autoread
" show command
set showcmd
" auto change dir to file folder
" set autochdir
" nnoremap cd :cd "%:p:h"<CR> :pwd<CR>
autocmd BufEnter * silent! lcd %:p:h
" set tabsize
set ts=4
set softtabstop=4
set shiftwidth=4
set noexpandtab
" highlight cursorline
set cursorline
" indent auto
set cindent
set cinoptions=g0,:0,N-s,(0
set autoindent
set smartindent
filetype indent on
" set pair baket
inoremap ( ()<left>
inoremap [ []<left>
inoremap { {}<left>
cnoremap ( ()<left>
cnoremap [ []<left>
cnoremap { {}<left>
" fuzzy find for :find
set path+=**
set wildmenu
" <F2> to show map of keys
noremap <F2> :map<CR>
" <F8> to show terminal in vim
noremap <F8> :term<CR>
" <Ctrl+Q> to quit current buffer
nnoremap <c-q> :q<CR>
inoremap <c-q> <c-o>:q<CR>
" <Ctrl+S> to save
nnoremap <c-s> :w<CR>
inoremap <c-s> <c-o>:w<CR>
" <Ctrl+A> to select all
nnoremap <c-a> ggVG
inoremap <c-a> <c-o>ggVG
" <Ctrl+C> to copy selection to system clipboard
vnoremap <c-c> "+y
nnoremap <c-c> "+y
" <Ctrl+P> to paste from system clipboard
vnoremap <c-p> "+p
nnoremap <c-p> "+p
" default Leader key is \
" let mapleader = "\"
" switch between buffers and maximize window
nnoremap <Leader>- :bp<CR>:res<CR>
nnoremap <Leader>+ :bn<CR>:res<CR>
" open and switch tabs
if has('gui_running')
nnoremap <Leader>e :browse tabe<CR>
else
nnoremap <Leader>e :tabe<CR>:Ex<CR>
endif
nnoremap <Leader>9 :tabprev<CR>
nnoremap <Leader>0 :tabnext<CR>
" quick open alternative file defined by filetype
nnoremap <Leader>= :exec ':tabe '.expand("%:r").a_ext<CR>
autocmd FileType c let a_ext='.h'
autocmd FileType cpp let a_ext='.hpp'
autocmd FileType tex let a_ext='.log'
" Makefile.mhb commands
let $mkfile=fnamemodify(resolve(expand(expand('<sfile>:p'))),':h')."/Makefile.mhb"
set makeprg=$mkfile
nnoremap <Leader>[ :cprev<CR>
nnoremap <Leader>] :cnext<CR>
nnoremap <Leader><CR> :clist<CR>
nnoremap <Leader>\ :w<CR>:make FILE="%"<CR>
nnoremap <Leader>b :w<CR>:exec ':!make -f $mkfile FILE="%" DEBUG=1'<CR>
nnoremap <Leader>c :w<CR>:exec ':!make -f $mkfile clean'<CR>
nnoremap <Leader>l :w<CR>:exec ':!make -f $mkfile _lint FILE="%"'<CR>
nnoremap <Leader>f :w<CR>:exec ':!make -f $mkfile _format FILE="%"'<CR>
nnoremap <Leader>s :w<CR>:exec ':!make -f $mkfile _spell FILE="%"'<CR>
nnoremap <Leader>r :w<CR>:exec ':!make -f $mkfile _run FILE="%" ARGS=""'
nnoremap <Leader>` :w<CR>:exec ':!make -f $mkfile _run_remote FILE="%" ARGS="" USER="" PORT="" HOST="" '
nnoremap <Leader>d :w<CR>:exec ':!make -f $mkfile _gdb FILE="%" ARGS=""'
nnoremap <Leader>p :w<CR>:exec ':!make -f $mkfile _prof FILE="%" ARGS=""'
nnoremap <Leader>u :w<CR>:exec ':!make -f $mkfile _update'<CR>
nnoremap <Leader>m :w<CR>:exec ':!make -f $mkfile _commit FILE="%" MSG="changes"'
nnoremap <Leader>i :w<CR>:exec ':!make -f $mkfile _gitconfig NAME="" PASS="" EMAIL="" OPT="--global"'
map <F7> <Leader>\
map <S-F7> <Leader>c
map <A-F8> <Leader>l
map <S-F8> <Leader>f
map <C-F8> <Leader>s
map <F9> <Leader>r
map <C-F9> <Leader>`
map <S-F9> <Leader>d
map <A-F9> <Leader>p
map <F10> <Leader>u
map <S-F10> <Leader>m
map <A-F10> <Leader>i
"terminal-debug sincevim 8.1+
if v:version>800
autocmd Filetype c :packadd termdebug
let g:termdebug_wide=1
nnoremap <Leader>t :Termdebug %:r<CR>
nnoremap <F5> :Break<CR>
nnoremap <F6> :Over<CR>
nnoremap <S-F6> :Step<CR>
endif
"mouse
if has('mouse')
set mouse=a
set selection=exclusive
set selectmode=mouse,key
endif
" netrw
let g:netrw_banner = 1
let g:netrw_liststyle = 3
"let g:netrw_browse_split = 4
"let g:netrw_altv = 1
"let g:netrw_winsize = 25
nnoremap <Leader>, :Le<CR>
nnoremap <Leader>. :Ve<CR>
" vim tags (recursively up)
set tags=tags;/
nnoremap <Leader>T :!ctags -R .<CR>
" vim-taglist
let Tlist_Compact_Format = 1
let Tlist_GainFocus_On_ToggleOpen = 1
let Tlist_Close_On_Select = 1
" nnoremap <C-l> :TlistToggle<CR>
其他
1
https://gitee.com/imbit_mathmhb/Makefile.git
git@gitee.com:imbit_mathmhb/Makefile.git
imbit_mathmhb
Makefile
Makefile
master

搜索帮助