• MinGW+MSYS+gVim的搭建


    让vim运行c/c++

    1.安装MinGW
             下载,mingw提供了gcc、g++、g77等编译工具

    2.安装MSYS

            下载,msys提供了ls、rm、mkdir等Linux下一些常用shell命令,下载列表中的Current - MSYS 即为 MSYS 的安装程序,下载其二进制版本(bin),并将其安装到D:\msys\1.0 下。中途需要指定MinGW的位置。

    3.修改MSYS配置文件 参考
            修改D:\msys\1.0\etc\profile,在其末尾添加如下几行:
                    export PS1='[\u@msys \W]$ '
                    export PS2='> '
                    export PS4='+ '
                    export LANG=en
                    alias l='/bin/ls --show-control-chars --color=tty'
                    alias la='/bin/ls -aF --show-control-chars --color=tty'
                    alias ll='/bin/ls -alF --show-control-chars --color=tty'
                    alias ls='/bin/ls --show-control-chars -F --color=tty'
            然后修改D:\msys\1.0\msys.bat,找到 :startrxvt 一节,修改为如下:
                    if "x%MINGW32BGCOLOR%" == "x" set MINGW32BGCOLOR=Black
                    if "x%MINGW32FGCOLOR%" == "x" set MINGW32FGCOLOR=White
            最后修改:
                    start rxvt -sl 2500 -fg %FGCOLOR% -bg %BGCOLOR% -sr -fn "MS Gothic"-24 -tn msys -geometry 90x30 -e

                    /bin/sh --login -i
                    exit
            注意:不要带-backspacekey ^H,这样会使得shell不能退格...

    4.VIM安装 参考1 参考2

    5.安装Ctags(代码定位) 参考

           下载,解压至任一目录(如D:\ctags58),并将Ctags的安装路径(D:\ctags58)添加到系统环境变量path中,并编辑_vimrc文件,添加如下内容:    

           set tags=tags;
           set autochdir

           "设置tags目录,可以根据自己的设置自动调整
           set tags+=C:\ctags56\stltags
           set tags+=C:\ctags56\cpptags

           打开cmd命令行,切换到你要查看源代码的根目录下,运行 ctags -R ./*。将会在此目录出生成一个tags文件,用GVim打开一个代码文件,将光标放在某一函数名上,按下”ctrl+]”,光标会自动跳转到定义处,按下”ctrl+T”会调回到原来的位置。注意:方法函数增加或改变时,需要重新生成tags文件才能正确跳转到改变了的函数定义上。

     

    6.安装TagList(窗口管理)

           下载,解压后包含一个doc文件夹和一个plugin文件夹,复制到Vim\Vim72下的doc及plugin中,在_vimrc文件中加入以下内容:

           let Tlist_Show_One_File=1
           let Tlist_Exit_OnlyWindow=1

           用GVim打开代码文件(已生成过tags文件),使用命令”:Tlist”来打开或关闭TagList窗口。

     

    7.安装OmniCppComplete(自动补全功能)

           下载,解压可得到三个文件夹(autoload,after,doc),分别复制到gvim的安装目录下的vimfiles文件夹中,在_vimrc文件中加入以下内容:

           "setting for omnicppcomplete

           set nocp
           filetype plugin on

           "下面的设置用于当用户预先声明namespace时也能自动补全代码(如使用using std::string) 
           let OmniCpp_DefaultNamespaces = ["std"]

           " 设置代码提示窗口的颜色(默认为粉红色,如附图1,下面的设置的效果如附图2) 
           highlight Pmenu ctermbg=13 guibg=LightGray 
           highlight PmenuSel ctermbg=7 guibg=DarkBlue guifg=White 
           highlight PmenuSbar ctermbg=7 guibg=DarkGray 
           highlight PmenuThumb guibg=Black

           "打开文件类型检测, 加了这句才可以用智能补全
           filetype plugin indent on
           "关掉智能补全时的预览窗口
           set completeopt=longest,menu

           使用方法:

           :set tags=/home/wooin/vim71/tags 随便找一个有成员变量的对象, 比如”parmp”, 进入Insert模式, 将光标放在”->”后面, 然后按下”Ctrl+X Ctrl+O”, 此时会弹出一个下列菜单, 显示所有匹配的标签。

    8.安装SuperTab(自动补全功能)

           下载,SuperTab插件会记住你上次所使用的补全方式,下次再补全时,直接使用Tab就可以重复这种类型的补全。比如,上次你使用CTRL-X CTRL-F进行了文件名补全,接下来,你就可以使用Tab来继续进行文件名补全,直到你进行了其它形式的补全。
           安装:将supertab.vim复制到 $VIM/vimfiles/plugin 文件夹即可。
           配置:可以对下面两个选项进行配置,以调整SuperTab的缺省行为:

                  g:SuperTabRetainCompletionType 缺省值为1,意为记住你上次的补全方式,直到使用其它的补全命令改变它;如果设为2,意为记住上次的补全方式,直到按ESC退出插入模式为止;如果设为0,意为不记录上次的补全方式。

                  g:SuperTabDefaultCompletionType 设置缺省的补全方式,缺省为CTRL-P。

    可以在vimrc中设置这两个变量,例如:

                  let g:SuperTabRetainCompletionType = 2
                  let g:SuperTabDefaultCompletionType = "<C-X><C-O>"

    9.配置环境变量:
            PATH D:\MinGW\bin;
            LIBRARY_PATH D:\MinGW\lib
            C_INCLUDED_PATH D:\MinGW\include
            CPLUS_INCLUDE_PATH D:\MinGW\include\c++\3.4.5


    10.gVim安装后,安装目录下_vimrc文件
            添加:
                    set number
                    set filetype=c
                    colorscheme torte
                    set guifont=lucida_console:h16 等等
            具体参见:http://edyfox.codecarver.org/html/_vimrc.html


            一点小技巧是可以通过在_vimrc中写cd使得一打开gvim就进入程序目录,如我gvim安装目录为的是D:\gVim\Vim\vim71,而程序目录为D:\Ubuntu\program(方便在Ubuntu中编程共享)
            添加:
            cd ..
            cd ..
            cd ..
            cd /Ubuntu/program.
    同理,Ubuntu中的vimrc中也可添加相应语句,设到/Ubuntu/program下,则会省去很多切换目录的时间

    11.双击桌面上的MSYS图标,敲入命令 gvim hello.cpp & 即可像在Linux下一样写编辑C++程序(如果说gvim命令不存在,记得把vim安装目录加入到环境变量中)

    12.最后编译g++ -Wall -c hello.cpp得到hello.o

    13.生成g++ -Wall hello.o -o hello得到可执行文件hello.exe

    14.执行./hello.exe

    vim java

    1.javacomplete下载,将javacomplete.rar中autoload内的文件放到d:/vim72/vimfiles/autoload中,然后重新编译Reflection.java,将生成的class文件放到d:/vim72/vimfiles/autoload中,将javacomplete.rar中doc放到d:/vim72/vimfiles/doc中.并将d:/vim72添加到classpath环境变量中.修改_vimrc,在其中添加setlocal omnifunc=javacomplete#Complete,样在VIM中编辑Java代码,就可以用ctrl-x, ctrl-o智能补全了,如果要实现outline效果,需要安装taglist插件,到vim.sf.net上找。

    //--------------------------------------Ubuntu下配置VIM c/c++开发环境-------------------------------------------

    apt-get install vim-full安装后在/etc/vim下,并编辑.vimrc文件输入以下配置:

    "语法高亮度显示
    syntax on
    "不使用vi默认键盘布局-否则在编辑模式下按方向键会输入字符
    set nocompatible
    "显示行号
    set number
    "检测文件的类型
    filetype on
    "记录历史的行数
    set history=1000
    "背景使用黑色
    set background=dark
    "vim使用自动对齐,也就是把当前行的对齐格式应用到下一行
    set autoindent
    "依据上面的对齐格式,智能的选择对齐方式,对于类似C语言编
    set smartindent
    "设置Windows风格的C/C++自动缩进,第一行设置tab键为4个空格,第二行设置当行之间交错时使用4个空格
    set tabstop=4
    set shiftwidth=4
    "设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号
    set showmatch
    "去除vim的GUI版本中的toolbar
    set guioptions-=T
    "在编辑过程中,在右下角显示光标位置的状态行
    set ruler
    "默认情况下,寻找匹配是高亮度显示的,该设置关闭高亮显示
    set nohls
    "使用此设置会快速找到答案,当你找要匹配的单词时,别忘记回车
    set incsearch
    if &term=="xterm"
      set t_Co=8
      set t_Sb=^[[4%dm
      set t_Sf=^[[3%dm
    endif

    参考

    http://os.51cto.com/art/201001/176900.htm

    http://www.51testing.com/?uid-225738-action-viewspace-itemid-216939

    http://www.linuxidc.com/Linux/2011-08/41265.htm

    http://www.cppblog.com/tdweng/articles/113026.html

  • 相关阅读:
    选择结构
    算法和流程图
    存储信息和信息运算
    计算机组成原理
    计算机硬件组装
    认识计算机硬件
    认识操作系统
    DOS简介
    计算机软件知识
    易企cms截取字段方法
  • 原文地址:https://www.cnblogs.com/wen12128/p/2063988.html
Copyright © 2020-2023  润新知