Vim

在Vim中使用omni completion补全Qt

Vim 7.3已经内置了Omni Completion插件,使用Vim开发C++程序可以自动补全。 Qt作为一个C++库,自然也是可以被补全的,不过需要进行一些配置,下面是主要步骤: 配置Vim的C++补全: 在.vimrc文件中加入: au BufNewFile,BufRead,BufEnter *.cpp,*.hpp set omnifunc=omni#cpp#complete#Main 然后安装ctags:http://ctags.sourceforge.net/,并将ctags加入path中(windows)。 接着使用ctags生成Qt的tag: cd ~/.vim/tags ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f qt4 /usr/include/qt4/ 最后在.vimrc中加入: set tags+=~/.vim/tags/qt4 之后Vim就可以补全Qt了。

配置Django的Vim补全(使用Pydiction)

如今Django已经有不少好用的IDE,不过IDE写起代码来总不够流畅,因此还是希望使用Vim来写Django程序。 但是一想到Django一大堆Field,没有代码提示还是非常难过的。 网上解决的方法大多是使用PySmell,不过那东西需要安装,不够绿色环保,而且速度也实在不快,几经搜索,在万能的StackOverflow找到一种使用Pydiction进行补全的方法。 首先自然要安装Pydiction,不赘述,详情可以请教谷歌。 Pydiction使用的是字典补全,默认的字典包括了Python自带的包,因此想要补全Django就需要生成Django的字典。 不过在生成Django字典需要进行一些设置,不然会生成失败。原因是Django的一些模块依赖于项目的setting。 先用django-admin.py生成一个Django项目 接着配置环境变量 Linux: export DJANGO_SETTINGS_MODULE=settings export PYTHONPATH=/path/to/parent/of/settings Windows(未测试): DJANGO_SETTINGS_MODULE=settings ::这个就是需要import的包 set PYTHONPATH=%CD%/project/;%PYTHONPATH% ::将刚才生成的project目录路径加入到PYTHONPATH中 然后在项目目录下使用 python pydiction.py django django.conf django.contrib django.core django.db django.dispatch django.forms django.http django.middleware django.shortuts django.template django.templatetags django.utils django.views 创建Django字典(如果把原字典放在该目录下则可以添加到原字典的头面) 以上是网上搜索到的,不过只是这样还是不能补全XXXField,因为上面的目录不包含XXXField的定义。 执行 python pydiction.py django.db.models 即可创建models的字典。 以此类推,如果还有哪个模块不能补全,就这样生成模块字典即可。 配置好Pydiction,就可以补全Django啦~

更好的管理VIM插件(续) pathogen

上次写博文推荐了一个管理Vim插件的插件,Vim Addon Manager,经过一个月的使用,发现了不少问题。有人推荐使用pathogen来管理插件,试用了一下,感觉不错。 首先说说Vim Addon Manager的问题: 1、在windows下使用时,其数据库文件无法正常使用(其实就是个txt,因为一些作者的名字无法正常使用),不过可以通过将文件以UTF-8格式保存来解决。 2、个别插件需要手动修改后才能正常运行(c.vim),当然这个问题使用pathogen时也存在。 3、个别插件需要手动创建plugin目录后才能正常使用。 4、需要安装git,svn,甚至是curl才能正常使用 5,必须插件名称完全与数据库中相同才能正常安装,甚至连大小写都不能错,数据库中有些插件的名字甚至与官方不同,让人费解。 当然pathogen的功能不如Vim Addon Manager那样丰富(他不能自动安装插件),不过符合KISS原则的这个插件还是十分好用。 使用方法: 1、下载pathogen.vim,并放到autoload中(当然还有其他的安装方法,详见下文)。 2、在.vimrc(windows是_vimrc)中添加: call pathogen#infect() 3、将所有的插件放到~/.vim/bundle 中(windows是/vimfiles/bundle),比如安装ZenCoding这个插件,在官网上下载插件后,进入bundle文件夹,新建文件夹,命名为ZenCoding(当然名字不是强制为插件名称的,可以设置为任何容易识别的名称),然后将压缩包内容全部解压到该文件夹中即可。 4、打开Vim,Enjoy~ 如果需要生成文档,只需要在Vim中输入 :call pathogen#helptags() 即可。 定制: 如果不想以/bundle作为插件的路径,比如想以~/.vim/addons作为插件目录,那么只需将 call pathogen#infect() 替换为 call pathogen#infect("addons") 即可,当然,如果不想将插件放在~/.vim目录中,也可以在括号内填入完整路径: call pathogen#infect('~/src/vim/bundle') 这样,如果将插件放入~/src/vim/bundle中,pathogen就可以找到了。 其他: 既然其他插件能够被安装到别的目录下,那么pathogen本身作为一个插件是否也可以安装到别的目录下呢? 当然可以。 如果希望pathogen和其他插件一样安装在~/.vim/bundle中,只需在.vimrc中加入: source ~/.vim/bundle/vim-pathogen/autoload/pathogen.vim 即可。 其他更详细的内容可以在这里找到。

更好的管理Vim插件 vim-addon-manager

Vim是一个非常优秀的编辑器,但是没装插件的Vim就始终只是个编辑器而已,是插件让Vim变得更加强大。 但是插件装得多了,管理就成了问题,Vim本身并没有提供插件管理功能,往往时间一长,.vim/vimfile 文件夹下就变得杂乱不堪。 vim-addon-manager这个插件就是为了管理Vim插件的插件。 介绍: This plugin allows users to install and uninstall plugins with a minimum of work. Features: - Separate directories for each plugins - Dependency resolution - Popular VCS support: plugin supports fetching from Git, Mercurial, Subversion and Bazaar repositories 简单来说就是可以非常方便的安装和卸载插件。依赖关系: - Curl, wget or other program that can output URL contents to stdout (in order to get http protocol support) - Git, Mercurial, Subversion and Bazaar (if you want to install plugins from appropriate repositories) - vcs_checkouts plugin (comes with this addon) - Either tar, gzip and zip or 7-zip (required for unpacking some addons) - Vimball plugin (required for installing some addons) (in latest vim it is included by default) linux下基本上安装下git和Mercural就可以开始安装了,windows下就比较麻烦,需要自行下载Curl,7z并将路径加入系统path,并安装msysgit。

在Ubuntu 10.10中编译GVim7.3时遇到问题

还是先写下编译的一般方法: 下载源代码: hg lone htts:vim.googleode.omhg vim 安装依赖库: sudo at-get install g lib6-dev linux-kernel-headers gawk sed libnurses5-dev libgtk2.0-dev libx11-dev x-dev libsm-dev xorg-dev libgtk2.0-dev libgnome2-dev sudo at-get build-de vim-gtk 3. d vimsr, 修改Makefile refix = usr CONF_OPT_GUI = --enable-gnome2-hek CONF_OPT_GUI = --enable-gui=gnome2 CONF_OPT_PYTHON = --enable-ythoninter CONF_OPT_PYTHON3 = --enable-ython3inter CONF_OPT_CSCOPE = --enable-soe CONF_OPT_MULTIBYTE = --enable-multibyte CONF_OPT_INPUT = --enable-xim CONF_OPT_OUTPUT = --enable-fontset CONF_OPT_FEAT = --with-features=huge make make &am;&am; sudo make install

【转】badapple字符版,windows版制作教程

windows版: 1,下载一个 mplayer 把它随便解压到一个目录就可以运行了,(需要注意的是第一次运行的时候会非常慢,是正常的,他要读取本机的字体信息) 普通的运行的方法是在命令行下输入 mplayer filename (注意这东西的本体是没有图形界面的,后面要用到的mencoder也是一样的喵),(不普通的运行方法可以用 mplayer -vo caca直接看的喵~~(参见我上一张帖子))不过我们不是要用他放电影,我们要转视频,所以我们用的是这样: 把你要转换的视频单独放到一个文件夹下面,运行cmd,cd到那个目录。 运行:mplayer -vo jpeg -ao pcm:file=temp.wav 比如 E:VideosMV>d:MPlayer-rtm-svn-29851mplayer.exe “お嫁にしなさいっ!.flv” -vo png -ao pcm:file=temp.wav 注意上面E:VideosMV>表示当前目录是在E:VideosMV,后面d:MPlayer-rtm-svn-29851 mplayer.exe 就是mplayer完整的路径 -vo jpeg表示把视频的每一帧以jpeg的格式输出出来~~后面那个 -ao pcm:file=temp.wav 表示把音频以wav输出来 (这 里顺便就把这个wav压成mp3吧,提取出来随身听) 现在我们就得到了所有这个视频的单帧图片,一般几分钟的MV有几千张吧~~(很占空间,折腾电脑,小心) 2,接下来我们要用到第二个工具:ascgen 解压之后运行,点file菜单下面的batch conversion,表示批量转换,调好参数,注意把output as 选成jpeg,把下面的color也点上。 接下来就得到了一堆ascii art形式的图片咯。 3,最后要做的就是把这对东西压回去 刚才不是下了个mplayer吗?这东西的目录下还有个东西叫mencoder, 按照mplayer的方式执行 mencoder mf://*.jpg -mf w=:h=:fps=:type=jpg -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell -oac copy -audiofile -o output.avi OK~~ 搞定收工~~ 对咯,如果你装了那个啥mediacoder的话,那么不用下mplayer了,它已经在mediacoder下面那个codec还是什么文件夹下面咯,mencoder 也一样的喵

【转】Vim as Python IDE on windows

下载安装Python。 从Vim的网站 [vim.org]下载vim,建议下Self-installing executable的版本。 编辑vim的配置文件_vimrc 拷贝vimrc_example里面的东东到_vimrc 去掉_vimrc里面的source $VIMRUNTIME/vimrc_example.vim 设置中文支持 " 设置编码自动识别, 中文引号显示 "set fileencodings=utf-8,cp936,big5,euc-jp,euc-kr,latin1,ucs-bom set fileencodings=utf-8,gbk set ambiwidth=double 设置ColorScheme,我选择的是desert,你可以在GVim的Edit–>Color Scheme看到其他的Color Scheme。 "ColorScheme colorscheme desert 设置tab插入空格,缩进,删除键删除缩进,页面文字宽度 " 允许退格键删除和tab操作 set smartindent set smarttab set expandtab set tabstop=4 set softtabstop=4 set shiftwidth=4 set backspace=2 set textwidth=79 启用鼠标,启用行号 " 启用鼠标 set mouse=a " 启用行号 set nu 完成以上步骤后用GVim打开Python代码的样子。 启用omni-completion的代码补全功能 ,这个系列的组件是随着Vim一起安装好的,我顺便把Ruby等其他语言的支持也加上了。现在按Ctrl-X,Ctrl-O可以补全代码 如下修改_vimrc "自动补全 filetype plugin indent on set completeopt=longest,menu "自动补全命令时候使用菜单式匹配列表 set wildmenu autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete autocmd FileType python set omnifunc=pythoncomplete#Complete autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS autocmd FileType html set omnifunc=htmlcomplete#CompleteTags autocmd FileType css set omnifunc=csscomplete#CompleteCSS autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags autocmd FileType java set omnifunc=javacomplete#Complet omni-completion实现代码补全的效果