zoukankan      html  css  js  c++  java
  • 用c.vim插件打造C/C++集成编辑器

    利用c.vim插件,你可以实现

    • 添加文件头 
    • 添加注释 
    • 插入一些代码片段 
    • 语法检查 
    • 读函数文档 
    • 注释代码块

    这一插件的作者是 Fritz Mehner, 目标就是打造程序员流畅的编辑环境。
     
    这一插件还能完成:

    • Statement oriented editing of C / C++ programs
    • Speed up writing new code considerably.
    • Write code and comments with a professional appearance from the beginning.
    • Use code snippets


    接下来我们对这一插件详细介绍.

    3 安装插件

    Step 1: 下载c.vim

    $ cd /usr/src

    $ wget http://www.vim.org/scripts/download_script.php?src_id=9679

    Step 2: 安装

    $ mkdir ~/.vim

    $ cd ~/.vim

    $ unzip /usr/src/cvim.zip

    Step 3: 启用这一插件

    $ vim ~/.vimrc

    filetype plugin on

    8 c.vim的使用

    Feature 1: Add Automatic Header to *.c file

    当你新建一个扩展名.c的文件时候,自动在文件头部增加头部注释

    $ vim myprogram.c

    /*

    * =================================================

    * Filename: myprogram.c

    *

    * Description:

    *

    * Version: 1.0

    * Created: 01/19/09 20:23:25

    * Revision: none

    * Compiler: gcc

    *

    * Author: Dr. Fritz Mehner (mn), mehner@fh-swf.de

    * Company: FH S??dwestfalen, Iserlohn

    *

    * =================================================

    */


    其中如果你要改变 AUTHOR 和 COMPANY的值, 要修改模板文件 ~/.vim/c-support/templates/Templates

    $ vim ~/.vim/c-support/templates/Templates

    |AUTHOR| = geekstuff

    |AUTHORREF| = gk

    |EMAIL| = subscribe@geekstuff

    |COMPANY| = thegeekstuff.com


    现在编辑一个新文件,看看你的作者和公司名称改变了没有。

    $ vim myprogram.c

    /*

    * =================================================

    *

    * Filename: myprogram.c

    *

    * Description:

    *

    * Version: 1.0

    * Created: 01/19/09 20:26:43

    * Revision: none

    * Compiler: gcc

    *

    * Author: geekstuff (gk), subscribe@geekstuff

    * Company: thegeekstuff.com

    *

    * =================================================

    */

    Feature 2: 用\if 添加c函数

    键入\if 加函数名称 (as shown in Fig1 below) 就会在文件中自动完成函数的定义,就像图二那样。
     

    Vim C/C++ IDE - Adding C Function - 1

    Fig1:Insert C Function Automatically
     
    Vim C/C++ IDE - Adding C Function - 2

    Fig 2:Insert C Function Automatically

    Feature 3: 用\im 添加main函数

    添加的效果如下:  

    Fig 3: Insert C main function automatically

    Feature 4: 用 \cfu 添加函数注释
     

    Vim C/C++ IDE - Insert C Function Header - 1

    Fig 4: Insert C Function Header Automatically
     
    Vim C/C++ IDE - Insert C Function Header - 1

    Fig 5: Insert C Function Header Automatically

    Feature 5:  用\cfr添加注释框架

    Vim C/C++ IDE - Insert Frame Comment

    Fig 6: Insert a Frame Comment Automatically

    Feature 6: 用\p<包含头文件

    Type \p< in the normal mode, which will include the text “#include <>”, and places the cursor in the < symbol in Insert mode where you can type the header file name.

    Feature 7: 保存编译文件.

    保存并编译文件 \rc.

    运行 \rr.

    Feature 8: 用\nr 插入预定义的代码片段

    The plugin comes with few pre-defined code snippets that you can insert into your code. Following are the default code snippets that comes with the plugin.

    $ ls ~/.vim/c-support/codesnippets

    Makefile calloc_double_matrix.c main.c print_double_array.c.noindent

    Makefile.multi-target.template calloc_int_matrix.c main.cc print_int_array.c.noindent

    For example, if you want to create a function that will Allocate a dynamic int-matrix of size rows*columns; return a pointer, you can re-use it from the existing code snippets. Following is the content of the calloc_int_matrix.c pre-defined code snippets.

    /*

    * === FUNCTION ======================================================================

    * Name: calloc_int_matrix

    * Description: Allocate a dynamic int-matrix of size rows*columns; return a pointer.

    * =====================================================================================

    */

    int**

    calloc_int_matrix ( int rows, int columns )

    {

    int i;

    int **m;

    m = calloc ( rows, sizeof(int*) ); /* allocate pointer array */

    assert( m != NULL ); /* abort if allocation failed */

    *m = calloc ( rows*columns, sizeof(int) ); /* allocate data array */

    assert(*m != NULL ); /* abort if allocation failed */

    for ( i=1; i

    m[i] = m[i-1] + columns;

    return m;

    } /* ———- end of function calloc_int_matrix ———- */


    如果要插入这段代码,可以键入\nr 文件名称,代码就会自动插入了。

  • 相关阅读:
    winform+c#之窗体之间的传值 Virus
    ASP.NET 2.0 利用 checkbox获得选中行的行号, 在footer中显示 Virus
    .NET中的winform的listview控件 Virus
    我的书橱
    Expert .NET 2.0 IL Assembler·译者序一 写在一稿完成之即
    Verbal Description of Custom Attribute Value
    AddressOfCallBacks in TLS
    下一阶段Schedule
    2008 Oct MVP OpenDay 第二天 博客园聚会
    2008 Oct MVP OpenDay 第二天 颁奖·讲座·晚会
  • 原文地址:https://www.cnblogs.com/hnrainll/p/2026402.html
Copyright © 2011-2022 走看看