网上的一张VIM的使用图,觉得不错就贴在这里(并无盗用之意,只是实在不知道出处是哪),看看各位VIMER们能看出他是怎么实现的不?
呵呵,相信Vimer们就心照不宣啦~~我只吐个槽-----那就是,配色是desertEx,嘿嘿
作者是 Vim.
发布于 in最后更新于 .
网上的一张VIM的使用图,觉得不错就贴在这里(并无盗用之意,只是实在不知道出处是哪),看看各位VIMER们能看出他是怎么实现的不?
呵呵,相信Vimer们就心照不宣啦~~我只吐个槽-----那就是,配色是desertEx,嘿嘿
作者是 Vim.
发布于 in最后更新于 .
前几天,依云兄在我博客上推荐了一款插件gui2term.py,用了之后立马叫好,苦于一直没有时间,所以今天特意推荐一下。
这款插件实现了将gvim的配色转化成终端配色的解决方案。下载链接
相信不少朋友和我一样,需要在windows和终端下同时工作,而工具都是vim,所以,保持配色的相同就显得非常重要啦!
我们拿著名的desert配色来测试一下:
1.把desert.vim改成 test.vim,和gui2term.py放到同一目录。打开test.vim,将let g:colors_name="desert" 改为 let g:colors_name="test",并删除掉它的终端配色。
2.将vim根目录下的rgb.txt放到和gui2term.py同一目录。
3.执行./gui2term.py test.vim test2.vim
4.打开test2.vim,将会发现终端配色代码已经生成啦
放最终效果图 windows下gvim:
xshell下vim:
好吧,我甚至觉得xshell下的vim要比windows下的gvim好看…… ...
作者是 Vim.
发布于 in最后更新于 .
新年伊始,首先祝大家新年快乐~~ 今天和朋友看了一下flash对3D的支持,需要用到扩展名为.as的actionscript文件(虽然我暂时确实不知道怎么写它……),于是就尝试着用vim来编辑它。 首先,下载actionscript着色文件:actionscript.vim,放到syntax目录下。然后打开一个.as文件。 结果事与愿违,由于atlas和actionscript都可以用as扩展名,而vim却将.as文件认做是atlas文件,所以着色完全不对。解决方法有三,其中第三种是最好的,但是作为思路,还是3中方案全部记录在这里:
1.修改filetype.vim文件 在vim72目录下有一个filetype.vim文件,找到
Atlas au BufNewFile,BufRead *.atl,*.as setf atlas
修改为
au BufNewFile,BufRead *.atl setf atlas
au BufNewFile,BufRead *.as setf actionscript
这样就可以了。
---------------------------------我是华丽的分割线---------------------------------
在说明后两种方法之前 ...
作者是 Vim.
发布于 in最后更新于 .
最近准备已久的模板载入插件 load_template 终于搞定了,现在正式放出下载大家使用.www.vim.org上已经放出了下载链接,如下: http://www.vim.org/scripts/script.php?script_id=2957 注:不好意思,由于之前我的疏忽,部分在vimrc中的变量没有放到插件中,已经修正,在www.vimer.cn和www.vim.org均可下载 就不多废话了,直接把写的中文介绍文档贴到这里啦
1.简单介绍
该插件主要实现了自动载入各种模板的功能(如类模板,html模板,makefile模板等等),并且支持动态模版的功能,即能够通过脚本动态的实现文件名,类名的替换。(默认已经提供了简单main函数模板、单体类模板、html标准模板、xml标准模板)
2.使用说明
1)下载load_template.vim插件,并放在plugin的目录下 ...
作者是 Vim.
发布于 in最后更新于 .
各位在终端下用vim的朋友们~~我想我绝对给大家带来了一个福音~~哈哈 想必每个人都受不了终端下vim那阴暗、简陋的配色吧,而且就算用 :color xxx 来选择那些支持终端配色的配色方案也不能改变什么,是不是很郁闷?! 先给大家上个图,哈哈,感觉怎么样?
(注:请尽量在XShell或者putty下使用,secureCRT由于自身颜色显示问题不是很完美,但也是可以用滴!~) 嗯嗯,其实很简单啦,只需要在vimrc中配置上这样一句话,来指定配色方案是256色就可以啦
set t_Co=256
这个配色方案的名字叫 darkburn.vim ,他的配色在windows下gvim的表现并不怎样,但是在终端下的表现反而非常出色,大家可以去试试哦 版权所有,转载请注明出处.https://www.vimer.cn
作者是 Vim.
发布于 in最后更新于 .
最近正在忙着做一个新的vim插件,功能可以说是完全为技术用家准备的,当然非技术用户也可以非常好的使用,代码已经写完了,中文介绍文档也已经ok了,剩下的就是老婆大人那边帮忙翻译出英文版的啦~ OK,废话不多好,为了过几天就会端出来的正餐,今天先给大家一些小甜点吧 今天主要是想实现在cpp文件中,自动添加.h文件的引用. 即在一个class1.cpp中,能够自动的添加一行代码
#include "class1.h"
其实这个功能可以说是很简单了,但是习惯偷懒的我,确实忍受不了每次都要去写一遍代码: vim脚本如下(特别说一下,有朋友反映我的vim脚本代码总是不高亮,结果换成高亮的html代码之后,总是保存出现问题,郁闷了,看样子还是继续调整一下):
function InsertIncludeFileI()
let sourcefilename=expand("%:t")
let outfilename=substitute(sourcefilename,'\(\.[^.]*\)$','.h','g')
call setline('.','#include "'.outfilename.'"')
endfunction
imap <c-b><c-h> <ESC>:call InsertIncludeFileI()<CR>
function InsertIncludeFileN()
let ...
作者是 Vim.
发布于 in最后更新于 .
呃,真不知道是我推广有误,还是别的原因。至今组里还是我一个人用vim做开发环境,大家倒是对vim的正则表达式更感兴趣,当然,实际上是,对让我帮忙操作更感兴趣…… 今天小组有一次大的对外数据迁移,同事有个需求,要在一个300多万行的文本文件中,将前150多万删掉…… 于是,我打开vim,到150多万行,然后dgg。 结果,可想而知……死机…… 同事转而求其他,用awk命令…… 脚本如下:
awk 'NR>1759668 {print $1" "$2}' uin_newopenid_0 >uin_newopenid_0_haha
上面命令的意思就是,将大于1759668行的号码,从 uin_newopenid_0 中写入到 uin_newopenid_0_haha,相当于间接实现了删除操作。 整个过程不到5秒…… 唉,果然用正确的工具做正确的事情才是王道啊。 不过我还是强烈推荐大家用vim做代码编辑器,IDE~~~~~ 哈哈,就这样啦~ 版权所有,转载请注明出处.https://www.vimer.cn
作者是 Vim.
发布于 in最后更新于 .
在使用C++时,我们经常会使用到STL,相信很多人都想过,如果vim能实现stl库自动补全就好啦,这篇文章,我们就来实现这一点。 (文中所有操作均在windows下进行,在linux也一样可以实现,笔者就不写了)
1.请确保安装好了ctags,和omnicppcomplete;如果你还没有安装好,请参考这两篇文章:把VIM打造成一个真正的IDE(2) , 把VIM打造成一个真正的IDE(3)
2.下载STL库的头文件和实现。下载路径如下: http://www.vim.org/scripts/script.php?script_id=2358
OK,现在工具已经准备齐了,接下来就是生成tags啦。 去刚下载的STL目录,用ctags命令生成tags文件,命令如下:
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .
(如果你看了我之前的文章,那么直接用F12生成就行)
有了tags之后,你可以把这个tags换个名字,比如叫stl_tags,然后放到C盘,通过命令
set tags ...
作者是 Vim.
发布于 in最后更新于 .
这几天在写一个项目,其中有用到打包和解包的网络通信,相信有过网络编程经验的朋友应该都知道,无非就是 将一个结构体打包成一段buff,以及反向的过程。(这里我们不考虑直接memcpy的情况,因为结构体里的字段有可能只是指针,当然如果都是定长数据的话,那么memcpy当然是最快的) 而在这个过程中,很多代码只是改了很少一部分,但是却要分别写两个函数,严重浪费了人力,而且容易出错。现在让我们看一下,能否用vim来替我们自动完成这件枯燥的事情。 我们来看这样一段示例代码:
int Output( unsigned int ver, char* & buf, int & iLen, int iMaxLen )
{
int needLen = sizeof(char) * 3 + sizeof(short) + sizeof(int);
if( needLen > iMaxLen )
{
return FBErrSystemNoMem;
}
char *t_Buff = buff;
*(unsigned char *) t_Buff = placeId;
t_Buff += sizeof ...
作者是 Vim.
发布于 in最后更新于 .
这几天给vim写了许多新功能,包括自动添加#ifndef,#define,#endif,以及在变更代码时自动对代码进行相关操作时间和操作人等,我就慢慢来写吧~~ 首先说一下自动添加宏定义的这个功能,其实在自己写之前,我在网上google过一次,试图找出一份前辈们已经有的代码,结果最终还是失望而回。可能因为我输入的关键词不对,可能是搜索引擎不准,总之,我最后还是得自己写啦,希望我写的每一篇文章都能对大家起到帮助吧~~~ 首先说一下实现的功能 1.自动根据文件名,生成 宏定义的名字,例如 temp.h ,就生成 _TEMP_H_ 2.由于我通常在源代码中会加入这样的作者信息:
/*=============================================================================
# FileName:
# Desc:
# Author: dantezhu - https://www.vimer.cn
# Email: zny2008@gmail.com
# Version: 0.0.1
# LastChange: 2011-02-21 18:06:30
# History:
=============================================================================*/
所以希望能在生成时加上判断,一旦发现有这样的定义,那么宏定义是要放在作者信息之后的。 至于怎样生成作者信息 ...