配置vim,打造自己的C IDE


      在网上看到大神们玩Vim,顿时产生兴趣,想要模仿一下,目的是要转至linux下学习C编程

1.下载vim及基本配置

          终端下

          $sudo apt-get install vim

          输入命令

          $vim ~/.vimrc  

          创建vim环境设置文件

          基本配置如下:

          :set nu "设置显示行号
          :set backspace=2 "能使用backspace回删
          :syntax on "语法检测
          :set ruler "显示最后一行的状态
          :set bg=dark "背景色设置
          :set hlsearch "高亮度反白
          :set laststatus=2 "两行状态行+一行命令行
          :set cindent "设置c语言自动对齐
          :set t_Co=256 "指定配色方案为256
          :set mouse=a "设置可以在VIM使用鼠标
          :set tabstop=4 "设置TAB宽度
          :set history=1000 "设置历史记录条数
          :set nocompatible "设置不兼容

          更多设置可以再vim中输入:set all 查阅,可以设置的很多,我只需要设置部分就好了

2.选择一个插件管理软件

          有两种比较流行的插件管理,分别是Vundle和Pathogen.

          我选择的是:Pathogen

          pathogen使用简单方便,有效,安装插件方式:

          先创建两个文件夹:

          mkdir -p ~/.vim/autoload ~/.vim/bundle

           curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim


          安装成功,在./vimrc中加入:

          "PATHOGEN配置
          :execute pathogen#infect()
          :filetype plugin on "允许插件
          :filetype plugin indent on "启动智能补全

          再github中直接添加插件的方法:

          如:

          $cd ~/.vim/bundle     #进入目录
          $git clone git://github.com/tpope/vim-sensible.git     #从github上下载

         接着,在vim中输入:Helptags 生成帮助文件,就能够输入:help vim-sensible 查看帮助文档

         如此就安装好了插件,打开帮助文档,再进行下一步 的详细配置

3.安装NERDTREE插件

          管理一个大的项目时,把代码分散到不同的文件里面是非常好的主意。也是一个基本的编码原则。NERDTree 是一个不错的可以直接在Vim里使用的文件浏览器,它可以让你随时想到所有的文件。

          安装,在终端输入命令:

          $cd ~/.vim/bundle
          $git clone https://github.com/scrooloose/nerdtree.git

          安装完后,重新开启vim,输入:helptags 再打开 :help NERD_tree.txt  可以配置.vimrc了

          在vim中输入命令: NERDTree就可以浏览文件了

          我的.vimrc文件添加了以下代码:

          "快捷键:使用F3打开关闭
          map <F3> :NERDTreeMirror <CR> 
          map <F3> :NERDTreeToggle <CR>  
         "NERDTree配置  
          let NERDChristmasTree=1 "显示增强
          let NERDTreeAutoCenter=1 "自动调整焦点
          let NERDTreeShowFiles=1 "显示文件
          let NERDTreeShowLineNumbers=1 "显示行号
          let NERDTreeHightCursorline=1 "高亮当前文件
          let NERDTreeShowHidden=0 "显示隐藏文件
          let NERDTreeMinimalUI=0 "不显示'Bookmarks' label 'Press ? for help'
          let NERDTreeWinSize=31 "窗口宽度

          Nerdtree快捷键
          o 打开关闭文件或者目录
          t 在标签页中打开
          T 在后台标签页中打开
          ! 执行此文件
          p 到上层目录
          P 到根目录
          K 到第一个节点
          J 到最后一个节点
          u 打开上层目录
          m 显示文件系统菜单(添加、删除、移动操作)
          ? 帮助
          q 关闭

          常常用到的是:ctrl+]  ctrl+t o

4.自动补全:supertab插件

          用过vs2010和code::blocks ,它们的自动补全功能确实强大 ,supertab就有很好的语法补全功能(链接:supertab)

          安装命令:

          $cd ~/.vim/bundle
          $git clone https://github.com/ervandew/supertab

          安装完成后,在.vimrc中加入代码:

          "配置Supertab
          let g:SuperTabRetainCompletionType=2 "记住上次的补全方式,直到按Esc退出插入模式位置
          let g:SuperTabDefaultCompletionType="<c-x><c-o>"  "按下tab后默认补全方式为<c-p>,现在改为<c-x><c-o>

          还有很多补全方式,可以输入 :help ins-completion 或:help compl-omni 查看更多

          打开vim后输入想输入的词的首几个字母,按下Tab键就能补全.更多还是请参考手册

5.Ctags和Taglist插件

         Ctags工具是用来遍历源代码文件生成tags文件,这些tags文件能被编辑器或其它工具用来快速查找定位源代码中的符号(tag/symbol),如变量名,函数名等。比如,tags文件就是Taglist和OmniCppComplete工作的基础.ctags程序其是叫"Exuberant Ctags".

         为了方便使用Vim阅读源代码,Tag List 这个Vim插件不可或缺。这是一个用来浏览源代码的Vim插件,使用它我们可以概览源代码的结构并在各个源文件中跳转浏览,非常方便。Tag List插件需要Ctags这个程序的支持(动态生成tag file).

        安装ctags方式有两种:

        输入命令安装: sudo apt-get install ctags

        下载安装:http://ctags.sourceforge.net 

        下载成功后解压文件编译安装:

        进入文件夹,终端中依次输入:

         $./configure
         $make
         $sudo make install

        使用方法:

        在你的工程的源码文件夹内输入命令:

        $ctags -R 

       “$ ctags –R *”:“-R”表示递归创建,也就包括源代码根目录(当前目录)下的所有子目录。“*”表示所有文件。这条命令会在当前目录下产生一个“tags”文件,当用户在当前目录中运行vi时,会自动载入此tags文件。

        安装taglist :下载地址http://www.vim.org/scripts/script.php?script_id=273

        解压后直接放在~/.vim/bundle之下,(遇到的问题是打开不了:helptags) 可以打开taglist.txt根据里面的信息进行配置

        同样的在.vimrc加上如下配置代码

            "taglist配置信息
             let Tlist_Auto_Open=1 " Let the tag list open automatically
             let Tlist_Auto_Update=1 " Update the tag list automatically
             let Tlist_Compact_Format=1 " Hide help menu
             let Tlist_Ctags_Cmd='ctags' " Location of ctags
             let Tlist_Enable_Fold_Column=0 "do show folding tree
             let Tlist_Process_File_Always=1 " Always process the source file
             let Tlist_Show_One_File=1 " Only show the tag list of current file
             let Tlist_Exist_OnlyWindow=1 " If you are the last, kill yourself
             let Tlist_File_Fold_Auto_Close=0 " Fold closed other trees
             let Tlist_Sort_Type="name" " Order by name
             let Tlist_WinWidth=30 " Set the window 40 cols wide.
             let Tlist_Close_On_Select=1 " Close the list when a item is selected
             let Tlist_Use_SingleClick=1 "Go To Target By SingleClick
             let Tlist_Use_Right_Window=1 "在右侧显示

             "打开关闭快捷键
             map <silent> <F2> :TlistToggle<CR> 


         这样使用起来就很方便:使用命令:$ctags -R  进入vim打开关闭 F2

         今天就先配置到这里,编程水平不高,还未到改进IDE来提高效率的阶段,还是先去学编程,先挖坑有空再回来填........

6.我的.vimrc文件和实际效果图

         我的.vimrc文件:

           

:set nu	 "设置显示行号
:set backspace=2 "能使用backspace回删
:syntax on "语法检测
:set ruler "显示最后一行的状态
:set bg=dark "背景色设置
:set hlsearch "高亮度反白
:set laststatus=2 "两行状态行+一行命令行
:set cindent "设置c语言自动对其
:set t_Co=256 "指定配色方案为256
:set mouse=a "设置可以在VIM使用鼠标
:set tabstop=4 "设置TAB宽度
:set history=1000 "设置历史记录条数
"PATHOGEN配置
:execute pathogen#infect() 
:filetype  plugin on "允许插件
:filetype  plugin indent on  "启动智能补全

"配置nerdtree使用F3打开关闭
map <F3> :NERDTreeMirror <CR>
map <F3> :NERDTreeToggle <CR>
"NERDTree配置
let NERDChristmasTree=1       "显示增强
let NERDTreeAutoCenter=1      "自动调整焦点
let NERDTreeShowFiles=1       "显示文件
let NERDTreeShowLineNumbers=1 "显示行号
let NERDTreeHightCursorline=1 "高亮当前文件
let NERDTreeShowHidden=0      "显示隐藏文件
let NERDTreeMinimalUI=0       "不显示'Bookmarks' label 'Press ? for help'
let NERDTreeWinSize=31        "窗口宽度
"配置Supertab
let g:SuperTabRetainCompletionType=2 "记住上次的补全方式,直到按Esc退出插入模式位置
"let g:SuperTabDefaultCompletionType="<c-x><c-o>" "按下tab后默认补全方式为<c-p>,现在改为<c-x><c-o> 

"默认最大化窗口打开
au GUIEnter * simalt ~x 
"taglist配置信息
 let Tlist_Auto_Open=1 " Let the tag list open automatically
 let Tlist_Auto_Update=1 " Update the tag list automatically
 let Tlist_Compact_Format=1 " Hide help menu
 let Tlist_Ctags_Cmd='ctags' " Location of ctags
 let Tlist_Enable_Fold_Column=0 "do show folding tree
 let Tlist_Process_File_Always=1 " Always process the source file
 let Tlist_Show_One_File=1 " Only show the tag list of current file
 let Tlist_Exist_OnlyWindow=1 " If you are the last, kill yourself
 let Tlist_File_Fold_Auto_Close=0 " Fold closed other trees
 let Tlist_Sort_Type="name" " Order by name
 let Tlist_WinWidth=30 " Set the window 40 cols wide.
 let Tlist_Close_On_Select=1 " Close the list when a item is selected
 let Tlist_Use_SingleClick=1 "Go To Target By SingleClick
 let Tlist_Use_Right_Window=1 "在右侧显示
 map <silent> <F2> :TlistToggle<CR>   
 "打开关闭快捷键

实际效果图如下,热键F2,F3(打开关闭目录树和taglist),tab键(自动补全)

       

     

        还有很多优秀的插件,此坑待填,等水平上来了再修改

        更多的指令可以在vim 中输入:help 查看各种manual  reference

        一些参考的博文:

        所需即所获:像 IDE 一样使用 vim

        手把手教你把Vim改装成一个IDE编程环境(图文)

        安装Exuberant Ctags及Tag List插件

        vim 中Ctags的安装和使用 

        Vim常用插件及其安装

        我的vim插件及使用

        终端至上!将Vim打造成全新的集成开发环境!

        如何将Vim打造成一个成熟的IDE 

         C编程vim初步配置            

       推荐学习vim指令资料:鸟哥的linux私房菜,网易云课堂上的鱼C工作室             

智能推荐

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
© 2014-2019 ITdaan.com 粤ICP备14056181号  

赞助商广告