• linux基础之vi编辑器设置文件模板


    我们在写程序时,可能有这种需要,每次都要重复写某个东西。
    在写c程序时候,经常写如下:

    #include <stdio.h>
    
    int main(int argv, char *argv[])
    {
    
        return 0;
    }
    

    这样,使用vi的模板,很方便

    • 1.创建模板
    linux@ubuntu:~$ cd /usr/share/vim/vimfiles
    linux@ubuntu:/usr/share/vim/vimfiles$ sudo touch c_template.c
    linux@ubuntu:/usr/share/vim/vimfiles$ ls
    c_template.c  gvimrc  vimrc  vimrc.tiny
    

    我用到"*.c"文件,直接在c_template.c中加入一些内容

    linux@ubuntu:/usr/share/vim/vimfiles$ sudo vi c_template.c
    
    #include <linux/init.h>
    #include <linux/kernel.h>
    #include <linux/module.h>
    
    //入口函数
    static int __init gec6816_led_init (void)
    {
        printk ("gec6816_led_init
    ");
    
        return 0;
    }
    
    //出口函数
    static void __exit gec6818_led_exit (void)
    {
        printk ("gec6818_led_exit
    ");
    }
    
    //驱动程序的入口:insmod led_drv.ko调用module_init,module_init又会去调用gec6818_led_init。
    module_init (gec6816_led_init);
    //驱动程序的出口:rmmod led_drv.ko调用module_exit,module_exit又会去调用gec6818_led_exit。
    module_exit (gec6818_led_exit);
    
    //模块描述
    //作则信息
    MODULE_AUTHOR("pxysource@gec");
    //模块功能描述
    MODULE_DESCRIPTION("gec6818 led driver");
    //模块许可证类型
    MODULE_LICENSE("GPL");                                                               
    

    保存并退出

    • 2.修改vi配置文件
    linux@ubuntu:/usr/share/vim/vimfiles$ sudo vi vimrc
    

    在最后面加上一句

    "c template
    autocmd BufNewFile *.c 0r /usr/share/vim/vimfiles/c_template.c
    

    保存并退出

    • 3.新建一个test.c文件
    linux@ubuntu:~$ vi 1.c
    

    如下:模板导入成功

    #include <linux/init.h>
      2 #include <linux/kernel.h>
      3 #include <linux/module.h>
      4 
      5 //入口函数
      6 static int __init gec6816_led_init (void)
      7 {
      8     printk ("gec6816_led_init
    ");
      9 
     10     return 0;
     11 }
     12 
     13 //出口函数
     14 static void __exit gec6818_led_exit (void)
     15 {
     16     printk ("gec6818_led_exit
    ");
     17 }
     18 
     19 //驱动程序的入口:insmod led_drv.ko调用module_init,module_init又会去调用gec6818_led_init。
     20 module_init (gec6816_led_init);
     21 //驱动程序的出口:rmmod led_drv.ko调用module_exit,module_exit又会去调用gec6818_led_exit。
     22 module_exit (gec6818_led_exit);
     23 
     24 //模块描述
     25 //作则信息
     26 MODULE_AUTHOR("pxysource@gec");
     27 //模块功能描述
     28 MODULE_DESCRIPTION("gec6818 led driver");
     29 //模块许可证类型
     30 MODULE_LICENSE("GPL");
     31 
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    ~                                                                                                                                                                    
    "/usr/share/vim/vimfiles/c_template.c" 30L, 741C                                                                                                   1,1           All
    

    其他文件类似修改就行

  • 相关阅读:
    VTK 9.0.1 vtkContextDevice2D 问题
    VTK 中文
    VTK 剪切
    VTK Color Map
    VTK Camera
    VTK Light
    VTK Read Source Object
    VTK Procedural Source Object
    Qt 布局开发问题记录
    Grafana 系列 (7):圖表是否可以数据追踪 (drill down)?(转)
  • 原文地址:https://www.cnblogs.com/risesource/p/12096941.html
Copyright © 2020-2023  润新知