Gvim配置(Windows and Linux)for C/C++

转载 2013年12月03日 07:46:03

转载于 http://mawenhao19930620.blog.163.com/blog/static/12857536120112991818242/


Windows下gvim配置文件_vimrc

首先配置g++到环境变量(配置g++,具体是将devc++的g++.exe的路径比如说:c:/deVC++/bin..加入到环境变量path里面) , 然后将下面的代码复制并保存为_vimrc , 替换掉vim安装文件夹中的_vimrc文件(或者是打开Vim

的启动设定,然后复制下面的代码并保存即可)

  1. "Version: 1.0 by momodi@whuacm  
  2. "Modified by ghostboyzone@gmail.com  
  3.   
  4. source $VIMRUNTIME/mswin.vim  
  5. behave mswin  
  6. imap <c-d> <c-o>dd  
  7. imap <cr> <cr><left><right>  
  8. map o o<left><right>  
  9. imap <c-]> {<cr>}<c-o>O<left><right>  
  10. noremap <f6> =a{  
  11. syn on  
  12. colo desert  
  13. filetype indent on  
  14. se ru nu ar sw=4 ts=4 noswf et sta nowrap ww=<,>,[,] gfn=Consolas:h12  
  15. autocmd BufEnter * lcd %:p:h  
  16. map <c-t> :tabnew<CR>  
  17. map <f9> :call CR()<CR><CR>  
  18. func CR()  
  19. exec 'update'  
  20. if filereadable(expand('%<').'.in')  
  21.     exec '!start cmd /c _run %< < %<.in & pause'  
  22. else  
  23.     exec '!start cmd /c _run %< & pause'  
  24. endif  
  25. endfunc  
  26. map <f2> :call SetTitle()<CR>Gkkk  
  27. func SetTitle()  
  28. let l = 0  
  29. let l = l + 1 | call setline(l, '/*')  
  30. let l = l + 1 | call setline(l, ' * Author:  mybestwishes')  
  31. let l = l + 1 | call setline(l, ' * Created Time:  '.strftime('%c'))  
  32. let l = l + 1 | call setline(l, ' * File Name: '.expand('%'))  
  33. let l = l + 1 | call setline(l, ' */')  
  34. let l = l + 1 | call setline(l, '#include <iostream>')  
  35. let l = l + 1 | call setline(l, '#include <cstdio>')  
  36. let l = l + 1 | call setline(l, '#include <cstdlib>')  
  37. let l = l + 1 | call setline(l, '#include <cstring>')  
  38. let l = l + 1 | call setline(l, '#include <cmath>')  
  39. let l = l + 1 | call setline(l, '#include <algorithm>')  
  40. let l = l + 1 | call setline(l, '#include <string>')  
  41. let l = l + 1 | call setline(l, '#include <vector>')  
  42. let l = l + 1 | call setline(l, '#include <stack>')  
  43. let l = l + 1 | call setline(l, '#include <queue>')  
  44. let l = l + 1 | call setline(l, '#include <set>')  
  45. let l = l + 1 | call setline(l, '#include <time.h>')  
  46. let l = l + 1 | call setline(l, 'using namespace std;')  
  47. let l = l + 1 | call setline(l, 'const int maxint = -1u>>1;')  
  48. let l = l + 1 | call setline(l, '')  
  49. let l = l + 1 | call setline(l, 'int main() {')  
  50. let l = l + 1 | call setline(l, '    return 0;')  
  51. let l = l + 1 | call setline(l, '}')  
  52. let l = l + 1 | call setline(l, '')  
  53. endfunc  
  54.   
  55. map<f4> :call AddComment()<cr>  
  56. func AddComment()  
  57.     if matchstr(getline('.'), '[^ ]') == '/'  
  58.         normal ^xx  
  59.     else  
  60.         normal ^i//  
  61.     endif  
  62. endfunc  
  63.   
  64. set printoptions=syntax:n,number:y,portrait:y  
  65.   
  66.   
  67. "设置水平滚动条  
  68. set guioptions+=b  
  69.   
  70. "set encoding=utf-8  
  71. "set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1 " 如果你要打开的文件编码不在此列,那就添加进去  
  72. "set termencoding=utf-8  




---------------------------------------------------------------------------------------------------------------

然后将下面代码编译, 修改产生的exe文件名为_run.exe

#include <cstdio>

#include <cstdlib>

#include <ctime>

int main(int argc, char **argv) {

    char compiler[50] = {};

    sprintf(compiler, "g++ %s.cpp -o %s.exe", argv[1], argv[1]);

    char runcommand[50] = {};

    sprintf(runcommand, "%s.exe", argv[1]);

    if (system(compiler) == 0) {

        int t = clock();

        if (system(runcommand) == 0) {

            printf("\nRun Time: %dms\n", clock() - t);

        }

    }

    return 0;

}


将_run.exe放到和gvim.exe同一个目录下  。windows下的gvim即配置完毕 。

 

Linux下gvim配置文件_vimrc

打开Vim的启动设定,然后复制下面的代码并保存即可

"Vim for linux

source $VIMRUNTIME/mswin.vim

behave mswin

imap <c-d> <c-o>dd

imap <cr> <cr><left><right>

map o o<left><right>

imap <c-]> {<cr>}<c-o>O<left><right>

noremap <f6> =a{

syn on

colo desert

"colo torte

filetype indent on

set gfn=Courier10Pitch12

set ru nu et sta nowrap ar acd ww=<,>,[,] sw=4 ts=4 cin noswf

"se ru nu ar sw=4 ts=4 noswf et sta nowrap ww=<,>,[,] gfn=Consolas:h12

autocmd BufEnter * lcd %:p:h

map <c-t> :tabnew<CR>

map <f9> :call CR()<CR><CR>

func CR()

exec "update"

exec "!xterm -fn 10*20 -e \"g++ %<.cpp -Wall -%< && time ./%< < %<.in ; read -1\""

endfunc

map <f10> :call CR2()<cr><space>

func CR2()

exec "update"

exec "!xterm -fn 10*20 -e \"g++ %<.cpp -Wall -%< && time ./%< ; read -1\""

endfunc

map <f2> :call SetTitle()<CR>Gkkk

func SetTitle()

let l = 0

let l = l + 1 | call setline(l, '/*')

let l = l + 1 | call setline(l, ' * Author:  mybestwishes')

let l = l + 1 | call setline(l, ' * Created Time:  '.strftime('%c'))

let l = l + 1 | call setline(l, ' * File Name: '.expand('%'))

let l = l + 1 | call setline(l, ' */')

let l = l + 1 | call setline(l, '#include <iostream>')

let l = l + 1 | call setline(l, '#include <cstdio>')

let l = l + 1 | call setline(l, '#include <cstdlib>')

let l = l + 1 | call setline(l, '#include <cstring>')

let l = l + 1 | call setline(l, '#include <cmath>')

let l = l + 1 | call setline(l, '#include <algorithm>')

let l = l + 1 | call setline(l, '#include <string>')

let l = l + 1 | call setline(l, '#include <vector>')

let l = l + 1 | call setline(l, '#include <stack>')

let l = l + 1 | call setline(l, '#include <queue>')

let l = l + 1 | call setline(l, '#include <set>')

let l = l + 1 | call setline(l, '#include <time.h>')

let l = l + 1 | call setline(l, 'using namespace std;')

let l = l + 1 | call setline(l, 'const int maxint = -1u>>1;')

let l = l + 1 | call setline(l, '')

let l = l + 1 | call setline(l, 'int main() {')

let l = l + 1 | call setline(l, '    return 0;')

let l = l + 1 | call setline(l, '}')

let l = l + 1 | call setline(l, '')

endfunc

map<f4> :call AddComment()<cr>

func AddComment()

    if (getline('.')[0] == '/')

        normal ^xx

    else

        normal 0i//

    endif

endfunc

set printoptions=syntax:n,number:y,portrait:y

set guioptions+=b

set encoding=utf-8

set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1 

set termencoding=utf-8



上面的_vimrc配置文件可以根据自己的需求添加和删除相应的内容。


在Windows平台上,是按[F9]编译并执行; 在Linux平台上,是按[F9]或[F10]执行,一个是带输入文件,一个是不带输入文件。

gvim 下实现c/c++ 编辑环境

0.准备软件及插件。 (a)gvim72.exe 地址ftp://ftp.vim.org/pub/vim/pc/gvim72.exe。 (b)vimcdoc-1.7.0-setup.exe...
  • yunxian_19
  • yunxian_19
  • 2015年04月16日 10:30
  • 1765

Windows下c/c++开发环境配置

这篇文章主要满足那些向牛人进发的programmer,想要抛弃用之已久的IDE(visual studio),改用像linux下的命令行形式。 高手请绕过。 另:这篇文章会慢慢完善。 一,安装编...
  • dobest9014
  • dobest9014
  • 2010年10月15日 20:32
  • 3969

windows配置gvim高效率编程(c&c++)带自动补全代码

对vim的配置足以处理一般的比赛获其他编程项目要求,如自动缩进,自动补全等等。先上几张截图,看看效果: 可以看见vim简洁高效的界面和不错的缩进功能。debug功能 一、安装gvim 下载资源并...
  • carryheart
  • carryheart
  • 2016年08月30日 15:35
  • 3377

在gVIM中编译运行c/c++文件

找了很久,百度了很久一直都没有解决,最后谷歌了一次,一下就解决了! 貌似需要安装一个叫做cvim的插件,可以在这里下载: http://download.csdn.net/detail/u...
  • u014772182
  • u014772182
  • 2015年02月02日 11:14
  • 742

gvim常用的配置及插件 -windows

gvim常用的配置及插件  接触vim也已经有一年多了,期间也用过一段时间的SourceInsight,SourceInsight是Windows下一款不错的查看代码的软件。利用它可以迅速的了解...
  • u014805066
  • u014805066
  • 2017年03月15日 20:52
  • 1068

Vim 一键编译、连接、运行 C/C++ 单文件(Windows 与 Linux通用)

本代码是对vim下一键保存/编译/链接/运行的配置,放在vimrc文件内即可 "-----------------------------------------------------------...
  • caishenfans
  • caishenfans
  • 2015年03月02日 15:27
  • 3996

【 Vim 配置详解 】强大的vim配置文件,让编程更随意

花了很长时间整理的,感觉用起来很方便,共享一下。 我的vim配置主要有以下优点: 1.按F5可以直接编译并执行C、C++、java代码以及执行shell脚本,按“F8”可进行C、C++代码的调试 ...
  • wilson1068
  • wilson1068
  • 2014年12月09日 09:48
  • 7337

Gvim配置(Windows and Linux)for C++

Windows下gvim配置文件_vimrc(页面底部附下载地址) 首先配置g++到环境变量 , 然后将下面的代码复制并保存为_vimrc , 替换掉vim安装文件夹中的_vimrc文件(或者是打开...
  • vipyhd
  • vipyhd
  • 2012年06月04日 08:17
  • 235

解决win平台下gvim打开utf-8编码档案乱码问题

这里只说说简单的让gvim正确识别各种编码的方法: 出于方便,用win平台下的gvim去编程配置文件,发觉一打开utf-8文档只能显示乱码,google一下,发觉很多是在_vimrc加入这几个参...
  • jdksym
  • jdksym
  • 2013年10月11日 16:56
  • 1130

vundle+window+GVim的配置笔记

本来想在windows xp下搭建GVim+Python+YouCompleteMe的开发环境,可惜YouCompleteMe太复杂难用了,还得自己编译,对windows支持的不好,从作者官网下载的编...
  • zfsword
  • zfsword
  • 2014年04月02日 16:32
  • 2472
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Gvim配置(Windows and Linux)for C/C++
举报原因:
原因补充:

(最多只允许输入30个字)