Gikor 2016-04-07 05:11 采纳率: 33.3%
浏览 1888

关于vim配置的问题,无法识别.h文件

我想把vim配置的适用一点,识别不同文件的后缀,然后在文件开头加上相应的头文件什么的。
可是配置好了发现一直识别不出来*.h 和*.cpp文件不知道具体是什么原因
源码如下:

 autocmd BufNewFile *.c,*.h,*.cpp,*.sh,*.java exec ":call SetTitle()" 
""定义函数SetTitle,自动插入文件头 
func SetTitle() 
    "如果文件类型为.sh文件 
    if &filetype == 'sh' 
        call setline(1,"\#########################################################################") 
        call append(line("."), "\# File Name: ".expand("%")) 
        call append(line(".")+1, "\# Author: Wa") 
        call append(line(".")+2, "\# mail: aaaaaaa@126.com") 
        call append(line(".")+3, "\# Created Time: ".strftime("%c")) 
        call append(line(".")+4, "\#########################################################################") 
        call append(line(".")+5, "\#!/bin/bash") 
        call append(line(".")+6, "") 
    else 
        call setline(1, "/*************************************************************************") 
        call append(line("."), "    > File Name: ".expand("%")) 
        call append(line(".")+1, "  > Author: Wa") 
        call append(line(".")+2, "  > Mail: aaaaaa@126.com ") 
        call append(line(".")+3, "  > Created Time: ".strftime("%c")) 
        call append(line(".")+4, " ************************************************************************/") 
        call append(line(".")+5, "")
    endif
    if &filetype == 'c'
        call append(line(".")+6, "#include<stdio.h>")
        call append(line(".")+7, "")

    elseif &filetype == 'h'
        call append(line(".")+6, "#include<stdio.h>")
        call append(line(".")+7, "")

    elseif &filetype == 'cpp'
        call append(line(".")+6, "#include<iostream>")
        call append(line(".")+7, "using namespace std;")
        call append(line(".")+8, "")
    elseif &filetype == 'java'
            call append(line(".")+6,"public class ".expand("%"))
            call append(line(".")+7,"")
    endif
    "新建文件后,自动定位到文件末尾
    autocmd BufNewFile * normal G
endfunc 

图片说明
图片说明
图片说明
图片说明
把配置文件copy到别的主机上也出现同样的问题,a.java都可以识别后自动插入,但总是无法识别*.h文件。
求指导

  • 写回答

2条回答 默认 最新

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算