最近开始考虑从经常使用的 Dev-Cpp 和 Visual Studio 开发环境中转到gvim+gcc+gdb。shell
我一直以为IDE很好方便,不是很明白别人这样的配置。但仍是开始有意识的去尝试更换环境。vim
更换环境的缘由有如下几个方面吧:编辑器
1.迟早要去使用LINUX的,迟早要去趟这一趟浑水的。(尽管目前我还不知道为何我这一行都要求熟练LINUX,不明白LINUX相比WIN的优势)函数
2. 用笔记本写代码的时候,上下左右键太远太不舒服太影响效率了,因此决定换高效率的VIM……ui
3. 有些时候须要用到gdb的一些功能,有些时候用gcc直接查看预处理、汇编、连接等各步骤的代码方便清晰,更有利于深刻了解计算机原理……spa
4. 这玩意儿装B啊!插件
厚着脸皮从朋友那里要来了一份vim_rc,通过本身微调后(也就是把朋友vim的PYTHON和一些我这里没有的插件,打开会报错的那些代码删掉了)调试
vim_rc以下:code
source $VIMRUNTIME/vimrc_example.vim source $VIMRUNTIME/mswin.vim behave mswin set diffexpr=MyDiff() function MyDiff() let opt = '-a --binary ' if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif let arg1 = v:fname_in if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif let arg2 = v:fname_new if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif let arg3 = v:fname_out if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif if $VIMRUNTIME =~ ' ' if &sh =~ '\<cmd' if empty(&shellxquote) let l:shxq_sav = '' set shellxquote& endif let cmd = '"' . $VIMRUNTIME . '\diff"' else let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"' endif else let cmd = $VIMRUNTIME . '\diff' endif silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 if exists('l:shxq_sav') let &shellxquote=l:shxq_sav endif endfunction set nu filetype plugin indent on set cindent set smartindent set autoindent colo evening syntax on set helplang=cn set autoread filetype plugin on set clipboard+=unnamed set nobackup set autowrite set ruler set cursorline set nocompatible set noeb set confirm set tabstop=8 set softtabstop=8 set shiftwidth=8 set noexpandtab set smarttab set nobackup set noswapfile set ignorecase set cmdheight=2 filetype on filetype plugin on filetype indent on set mouse=a set selection=exclusive set selectmode=mouse,key set showmatch set matchtime=3 set scrolloff=3 set guifont=Fixedsys:h15:b:cGB2312 au BufRead,BufNewFile,BufEnter * cd %:p:h :cd Desktop
大多数语句我基本不知道什么意思……对我来讲有代码高亮、语法缩进基本就能写写代码了,等之后须要作项目在去搞一下函数跳转类和项目管理等插件吧……遗憾的是这个没有代码补全,朋友以为代码补全影响节奏。但我我的以为代码补全有的时候能方便写长代码名和函数等……,尤为是我函数参数忘了的时候能提醒我参数……目前不太清楚用什么语句实现代码补全。blog
而后调整了麻烦的环境变量等等……去参阅了VIMTUTOR,大概用了一天时间成功学会使用VIM的基本编辑功能并经过!:g++ 1.cpp -g -o 1.exe 和!:gdb 1.exe 成功运行了第一个程序……
目前深入感受到VIM的功能强大,用好了真的是个神器,然而调教他须要很长时间很麻烦,调教很差还不如大多数IDE,不少IDE点点鼠标就能简单实现的功能在这里会变得好麻烦。目前本身仍是各类不适应…平时写写简单代码还罢了,可是打CF等比赛的话仍是会考虑优先使用之前的IDE……
代码编辑器不习惯对我来讲不是最大的问题,最大的问题是gdb下的调试环境我很不适应,这让我调代码简直爆炸……
走一步看一步吧,慢慢来。VIM这种东西能够说是平时玩一玩,用好了锦上添花的东西,为了调教好他而付出太多时间影响了其余的事情就有些得不偿失了(好比让我拖了两天其余做业233)我也不是很想为了用而用。
最后,像神的编辑器VIM致敬。