我在桂林的日子 » 日志 » [收藏]vim支持QT特定的语法加亮
[收藏]vim支持QT特定的语法加亮
tingxx 发表于 2008-02-25 19:59:36
从云帆在线上看到的,非常不错,哈哈,马上收藏一下:
首先是一个来自于KDE官方的文章:
http://techbase.kde.org/index.php?title=Policies/Kdelibs_Coding_Style
里面提到了一个VIM的脚本
http://websvn.kde.org/*checkout*/trunk/KDE/kdesdk/scripts/kde-devel-vim.vim
到这里只是让VIM自持了QT的关键字,没有完成自动缩进,这里需要运用一个VIM的补丁了。呵呵,如下:
首先是一个来自于KDE官方的文章:
http://techbase.kde.org/index.php?title=Policies/Kdelibs_Coding_Style
里面提到了一个VIM的脚本
http://websvn.kde.org/*checkout*/trunk/KDE/kdesdk/scripts/kde-devel-vim.vim
到这里只是让VIM自持了QT的关键字,没有完成自动缩进,这里需要运用一个VIM的补丁了。呵呵,如下:
diff -urN vim71.orig/src/misc1.c vim71/src/misc1.c
--- vim71.orig/src/misc1.c 2007-05-08 03:49:03.000000000 +0800
+++ vim71/src/misc1.c 2008-01-25 20:04:31.000000000 +0800
@@ -5038,6 +5038,7 @@
{
int i;
+ i = 0;
s = cin_skipcomment(s);
if (STRNCMP(s, "public", 6) == 0)
i = 6;
@@ -5045,9 +5046,20 @@
i = 9;
else if (STRNCMP(s, "private", 7) == 0)
i = 7;
- else
+ else if ( STRNCMP( s, "signals", 7 ) == 0)
+ i = 7;
+ else
return FALSE;
- return (*(s = cin_skipcomment(s + i)) == ':' && s[1] != ':');
+
+ if( (*(s = cin_skipcomment(s + i)) == ':' && s[1] != ':'))
+ return TRUE;
+ else
+ {
+ i = 0;
+ if ( STRNCMP( s, "slots", 5 ) == 0)
+ i = 5;
+ return(*(s = cin_skipcomment(s + i)) == ':' && s[1] != ':');
+ }
}
原帖子位置:http://www.myswear.net/forum/viewthread.php?tid=8993&extra=page%3D1
--- vim71.orig/src/misc1.c 2007-05-08 03:49:03.000000000 +0800
+++ vim71/src/misc1.c 2008-01-25 20:04:31.000000000 +0800
@@ -5038,6 +5038,7 @@
{
int i;
+ i = 0;
s = cin_skipcomment(s);
if (STRNCMP(s, "public", 6) == 0)
i = 6;
@@ -5045,9 +5046,20 @@
i = 9;
else if (STRNCMP(s, "private", 7) == 0)
i = 7;
- else
+ else if ( STRNCMP( s, "signals", 7 ) == 0)
+ i = 7;
+ else
return FALSE;
- return (*(s = cin_skipcomment(s + i)) == ':' && s[1] != ':');
+
+ if( (*(s = cin_skipcomment(s + i)) == ':' && s[1] != ':'))
+ return TRUE;
+ else
+ {
+ i = 0;
+ if ( STRNCMP( s, "slots", 5 ) == 0)
+ i = 5;
+ return(*(s = cin_skipcomment(s + i)) == ':' && s[1] != ':');
+ }
}
相关日志:
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
