Karron's profile咸鱼翻身还是咸鱼(技术,软件,linux,vim...PhotosBlogListsMore Tools Help

Blog


    July 02

    一个日本人的vim的截图

    令人发指阿,这玩意儿能用吗?


    May 16

    今天用checkinstall学着打了一个vim7的deb包

    配置了gtk2,多字节支持,输入法支持,python,cscope,feature为huge.
    如果懒得自己编译的话可以试试:)
    这里下载.

    安装使用 sudo dpkg -i vim7_vim7-1_i386.deb
    卸载使用 sudo dpkg -r vim7,卸载的时候有些警告信息,没有关系.
    May 08

    貌似vim7正式版发布了

    http://www.vim.org/download.php

    可是我的svn不能更新了,报错信息如下:
    svn: Unrecognized URL scheme for 'https://svn.sourceforge.net/svnroot/vim/vim7'

    搜索了一下说是不能load插件,但是不知道怎么解决……如果有谁知道望告知,谢谢。

    April 12

    VIM7.0d release

    昨天的消息.尝鲜的可以试试.

    顺便说一句,昨天升级了dapper核心,导致进不了X了..说是nvidia驱动版本和核心版本不一致..


    Announcing: Vim (Vi IMproved) version 7.0d BETA


    This is the third BETA release of Vim 7. It appears to be quite stable
    and about ready for daily use, but I would like to do some more testing
    to be sure.


    Since the second BETA release quite a few things were improved, here is
    a summary:
    - $MYVIMRC is set to to the first found .vimrc file and $MYGVIMRC to the
    first found .gvimrc file. Added menu item "Startup Settings" that
    edits the $MYVIMRC file
    - Added matcharg().
    - The tab page labels are shortened, directory names are reduced to a
    single letter by default. Added the pathshorten() function to allow a
    user to do the same.
    - Added CTRL-W gf: open file name under the cursor in a new tab page.
    - "New tab" item in the GUI tabline menu opens tab left of the click.
    - Added "usetab" to 'switchbuf': jump to window in other tab page.
    - Added tabpage-local variables t:var.
    - 'cmdheight' now works local to a tab page.
    - Motif: Added GUI tab pages line. (Yegappan Lakshmanan)
    - Win32: The font used for the tab page labels was too big. Use the
    system menu font. (George Reilly)
    - Use of the Enter key for the popup menu works differently, hopefully
    better.
    - Win32: Set the default for 'isprint' back to the wrong default
    "@,~-255", because many people use Windows-1252 while 'encoding' is
    "latin1".
    - When init_spellfile() finds a writable directory in 'runtimepath' but
    it doesn't contain a "spell" directory, create one.
    - A series of bug fixes, see the end of ":help version7".

    Since Vim 6.4 many new features have been added. To mention a few:

    - Spell checking support for about 50 languages
    - Intelligent completion: Omni completion
    - Tab pages, each containing multiple windows
    - Undo branches: never accidentally lose text again
    - Vim script supports Lists and Dictionaries (similar to Python)
    - Vim script profiling
    - Improved Unicode support
    - Highlighting of matching parens, cursor line and cursor column
    - Translated manual pages support.
    - Internal grep; works on all platforms, searches compressed files
    - Browsing of remote directories, zip and tar archives
    - Printing multi-byte text

    Once you have installed Vim 7.0d BETA you can find details about the
    changes since Vim 6.4 with ":help version7". There are also a lot of
    bug fixes.


    Testing
    -------

    This is a BETA test version. Please give it a good test and report
    anything that isn't right. That includes a crash but also a typo in the
    documentation.

    A known problem is that generating the Hungarian spell file doesn't
    work.

    I will not make an Amiga or OS/2 binary for Vim 7. A Mac version should
    be available soon on http://macvim.org/


    Where to get it
    ---------------

    Information about which files to download for what system:
    http://www.vim.org/download.php

    All files can be found below this directory:
    ftp://ftp.vim.org/pub/vim/unstable/

    A list of mirror sites can be found here:
    http://www.vim.org/mirrors.php

    Vim 7.0d is also available from CVS and with Aap:
    http://www.vim.org/develop.php


    Happy Vimming!
    March 30

    在同一个VIM7实例中打开多个文件

    当然,我们在gvim中可以使用:tabe命令在新的tab中打开新文件。但是有的时候我们会在控制台中输入新的命令也想在之前的gvim中打开,怎么办呢?
    gvim也提供了这样的参数
    gvim --remote-tab-silent file.txt
    就可以在原来已经打开的gvim创建一个新的tab来打开file.txt。还是很方便的。
    March 26

    在windows利用VC2005编译VIM7

    之前在我的ubuntu上成功编译了VIM7,很顺利,周五在公司用的windows上的vim还是很早之前别人编译的版本,于是想自己编译一个,没想到更加顺利。
    首先要把VC的编译什么的加入到环境变量里面,在vc的目录里面有个bat文件可以做到这个。
    然后进入src目录,修改Make_mvc.mak文件,修改地方和我的上篇在ubuntu中编译vim7的差不多。增加了OLE等支持。
    然后运行命令
    nmake -f Make_mvc.mak

    过一会儿就结束了。然后把编译出拉的exe文件拷贝出去,外面还有一个runtime目录,放到里面就可以运行了。之前我还象ubuntu里面一样运行nmake install,结果不支持,哈哈。

    March 25

    VIM7 beta发布以及VIM的作者Bram Moolenaar将会到google工作

    今天上午收到Bram的邮件,公布了两个消息,第一个就是VIM7beta发布(难怪我昨天晚上无法连上vim的cvs服务器)。
    另外一个消息就是Bram接受了google的offer,不再靠捐助生活了,当然大家还可以继续捐赠,但是Bram会把捐赠的金钱全部转交给救助uganda(乌干达)的儿童们。另外一个稍微不好的消息是由于Bram有了自己的全职工作所以就没有太多的时间在vim上了,以前是150%的时间都在vim上。

    恭喜Bram,恭喜vim,只有作者在没有后顾之忧的情况下,项目才会很好的发展。

    谢谢google。google现在已经笼络了很多开源世界的大牛,比如python的老大,现在的Bram。

    snapshot5
    March 22

    VIM中文文档更新为0.9.0,所有文档都已经翻译了.

    今天在vim的maillist中看到的消息,感谢vimcdoc团队的工作.


    [ANN] Vim documentation Chinese translation 0.9.0
      vim



    Wenzhi Liang 
    <wenzhi.liang AT gmail.com> to vim
     More options  3:24 am (5 hours ago)
    This is a major milestone release! All Vim documentation are now
    translated and updated against Vim 6.4. This release is almost
    single-handedly made possible by Willis, who has only joined us for no
    more than a month. Everybody is encouraged to upgrade (hint: read the
    INSTALL file). Online HTML version will be updated shortly.

    Available at http://vimcdoc.sourceforge.net/

    Rgds,


    lang2
    March 19

    尝试翻译vim7的帮助

        首先翻译的tabpage,当翻译了60%的时候,我想试试能否集成到vim的帮助中,结果拷贝到.vim/doc/中不行(我安装了vim6.4的中文翻译文档,就是拷贝到这里的),于是就想看看到底是怎么回事,发现里面有个tags-cn文件,打开一看原来是一些标签,表示各个帮助的中文文档的对应关系,于是我就想自己编辑一下这个文件,发现不行,老是说格式错误。怎么都不行,很打击信心。
        刚才看了vim手册,发现有个命令helptags,就是用来生成tags的,我们中文翻译的文档后缀名为cnx,使用:helptags .vim/doc,就会自动生成tags-cn文件,就可以使用中文翻译文档了。我试了一下,果然行,哈哈,不错,就是我排版还不行,有的地方有点儿乱。应该是tab的问题,老人们的教诲是对的呀,一定要把tab转换成空格,不然空格和tab混排的时候,格式乱得一塌糊涂阿。
        另外,翻译文档的时候一定要注意的地方是第一行一定要翻译,里面必须包含中文,不然在使用helptags命令的时候会报错,说里面有多种编码。看帮助里面说,vim的doc只支持latin和utf8,如果是多字节文字第一行必须也翻译,不然就认不出来。

       
    March 18

    [VIM]ubuntu编译VIM7指南

    vim7的alpha版本已经出来很久了,增加了很多特性,比如tabpage,自动完成,拼写检查等,改善特别大,为了尝鲜,我们可以自己获取源代码来编译.
    今天终于编译成功了,非常顺利,真是会者不难,难者不会.
    我把我的编译过程列在下面,希望能够给想自己编译vim7的朋友提供一些帮助.(注,这是我第一次在linux编译成功软件,也是自己编译的第一个软件,连我都会了,想来大家更是没有问题)

    • 首先第一步是安装编译工具 sudo apt-get install build-essential 这没什么好说的.

    • 然后修改源,把源代码加上.我添加了如下的源
    deb-src http://ubuntu.cn99.com/ubuntu/ breezy main restricted universe multiverse
    deb-src http://ubuntu.cn99.com/ubuntu/ breezy-updates main restricted universe multiverse
    deb-src http://ubuntu.cn99.com/ubuntu/ breezy-security main restricted universe multiverse
    deb-src http://ubuntu.cn99.com/ubuntu/ breezy-backports main restricted universe multiverse

    • 更新包索引. sudo apt-get update
    • 然后安装编译vim-gtk的依赖包,sudo apt-get build-dep vim-gtk  ,这一步是关键,我最开始尝试编译vim7始终不成功的原因就是不知道vim7依赖哪些包,导致始终编译不成功.
    • 前面几步成功之后,我们开始进入正题,获取vim7的源代码 cvs -z3 -d:pserver:anonymous@cvs-pserver.sf.net:80/cvsroot/vim checkout vim7


      这个命令会在你的个人目录里面建立一个vim7的目录.里面就是vim7的最新的源代码.如果执行命令出错,说找不到命令cvs,便是你没有安装cvs,可以使用sudo apt-get install cvs来安装
    • 现在进入vim7的目录  cd vim7/src .
    • 修改makefile文件,配置编译选项 gvim Makefile.其实就是把一些配置项反注释掉.我总共修改了如下几个部分.大家可以参考
      1. CONF_OPT_GUI = --enable-gui=gtk2 #gtk2支持,也可以使用gnome
      2. CONF_OPT_CSCOPE = --enable-cscope #cscope支持
      3. CONF_OPT_PYTHON = --enable-pythoninterp #python支持
      4. CONF_OPT_MULTIBYTE = --enable-multibyte #双字符支持
      5. CONF_OPT_INPUT = --enable-xim #输入法支持
      6. CONF_OPT_OUTPUT = --enable-fontset #双字符支持
      7. CONF_OPT_FEAT = --with-features=huge #最大特性支持
      8. CONF_OPT_COMPBY = "--with-compiledby=Karron Qiu<KarronQiu#gmail.com>" #编译人
    • 保存之后就可以开始编译了.输入make就行了,等一会儿吧,喝口茶.
    • 大概几分钟之后(根据机器配置不一样时间可能有长短),编译完成.
    • 好安装.make install
    • 如上几步如果成功的话,恭喜你,现在可以进入vim7的世界了.
    • 输入gvim,可以看到版本号变成了7.0aa.然后就可以用命令:help version7看看vim7的新功能了.

    下面是几张截图.







    [VIM]VIM替换文字II

    前几天我记录一下如何在vim中替换文字。只是很简单的给出了两个命令。其实还只是初级功能,今天来看看稍微复杂一点的。
    用:%s/from/to 命令只替换每行的第一个匹配字符,如果要替换每行的所有匹配项,需要在后面加上g命令。如: :%s/from/to/g

    另外,我们往往在替换的时候需要很小心,不能够这样就全部替换了,需要我们一个个的确认,那么我们可以加上c命令,意思就是confirm。如: :%s/from/to/gc 输入这个命令之后,vim会把所有匹配的文字高亮,并会询问你 replace with to (y/n/a/q/l/^E/^Y) ,输入y表示替换当前这个,n表示这个不要替换,a表示全部替换,q表示退出,不替换了,l表示把当前这个替换后就退出,^E(ctrl+e,好像大小写都可以)表示向下滚动一行,^Y表示向上滚动一行.

    上次我们说了可以在s前面加上范围,比如:1,5s/from/to表示替换1到5行的from,在vim中有些字符可以很方便的表示一些特殊行,比如.表示当前行,$表示最后一行,第一行当然就是1了.所以我们可以用:.s/from/to命令替换当前行的from,用:.,$s/from/to替换从当前行到结束行的每行的第一个匹配的from.

    好了现在对于vim的文字替换功能有了更一步的了解了.其实这样的替换还是最简单的,并且很容易出错,因为它并不会断词,会把fromxxx也当成匹配项,这当然是错误的,我们可以加上\<来表示匹配一个单词的开始,\>来表示单词的结束, 命令看起来就像这个样子:%s/\<from\>/to/g

    其他更高级的匹配替换,我们必须要用到正则表达式.这个留到以后再说,因为我也不会.....



    March 17

    我公司电脑上的GVIM

    左边是文件列表,中间是编辑区,右边是Taglist.用到了tabbar,taglist,winfileexplorer,intellisense
    并做了按键映射,F5编译,F8 Taglist,F7文件列表.并写了默认的nant的build文件,可以方便使用nant进行编译,运行.不过目前还没有达到使用gvim进行项目开发的地步,只能有时候写写测试小程序.


    vim


    vim1
    March 12

    VIM替换文字

    :1,5s/from/to   表示把1到5行的from替换成to
    :%s/from/to 表示把所有的from替换成to
    February 19

    [VIM Tips]改变VIM的工作目录

    今天用vim写程序的时候发现有点不爽的地方,vim的默认工作目录是在个人目录里~/,而我的程序是在几层目录下面,虽说vim可以命令自动补齐,但是还是非常不方便,我希望能够改变vim的工作目录,我知道pwd是显示当前目录的,于是:h pwd,发现里面果然讲解了怎样改变目录,就是一个简单的命令 :cd,我真是聪明反被聪明误,我一直使用:!cd来改变目录,而:!cd是外部命令,对vim的工作目录没有任何用处。
    February 18

    VIM中替换文本文件中的^M,转换windows换行格式

    今天把在windows下面用的很好的一个文本文件的语法高亮文件拷贝到我的ubuntu中的vim中来使用,结果一起动vim就报错报告有不认识的命令'^M',我就知道是windows和*nix的换行格式不一样造成的.到水木的vim版看了看faq,发现只需要一条命令就好了
    :set fileformat=unix  然后保存文件就好了.
    February 15

    怎样快速设置VIM的colorscheme

    今天在水木的vim版又学到一招.
    输入:color ,然后按tab键就可以补齐你安装的colorscheme了,注意color后面有个空格.
    其实最好的是输入:color ,之后,按ctrl+d,就更好了,会在屏幕上列出所有的colorscheme,当然如果你的colorscheme很多就是个灾难了.MS有人下载了几百个...
    February 13

    这两天折腾ubuntu的一些琐碎的记录

    这几天一直在ubuntu下鼓捣,没进过windows,搞来搞去把ubuntu屡次搞得进不了桌面,貌似都是因为同时安装Ubuntu和KUbuntu两个desktop的缘故(我本来比较喜欢gnome,界面比较简洁,KDE感觉比较花,但是很多软件还是不错的,所以即使是只有gnome的时候也安装了几个KDE里面的软件).原因是我弟弟嫌gnome不够漂亮,就安装了kubuntu-desktop,还在里面搞起了美化,也搞出了一些成果,但是不知道是不是ubuntu-desktop与kubuntu-desktop两个有什么问题,莫名其妙就进不了桌面了,症状是能够启动到登陆界面,但是一登陆,就没反应了,如果是kdm做的桌面管理器的话就会跳回登陆界面,如果是gdm的话就一直死在哪里.
    搞了好久都修复不了,我的linux水平还是远远不够呀.不过比较有意思的是学会了在console下面使用w3m上网,在上篇blog中有提到.
    另外就是很久没有怎么使用vim了,结果在这几天中发现好多命令都忘记了,只记得一些简单的命令,搞得效率很低.要加强学习和使用呀.
    还有在修复ubuntu无果的情况下,我还尝试着升级为6.4版(dapper drake,优雅的雄鸭),结果居然要下载600多M,在等待了一个多小时之后,出现了很多错误,安装还是以失败告终........

    这段时间一直在折腾ubuntu,发现虽然ubuntu的可用性已经很高了,但是做为中国的用户还是很可怜,安装好后还要配置很多东西才能使用,什么输入法,字体什么的,特别是字体,很不满意.不过现在我有个经验,安装的时候选择英文,安装好后把中文字体拷贝过去,再设置一下fonts.conf,我用的是园体,直接拷贝里面自带的fonts.conf,就行了,这样做虽然中文还是有残破感,但是英文非常漂亮,英文我是使用的是Bitstream Vera Sans字体,具体的名字忘记了.如果安装中文界面的话,好像连英文都很丑了...

    不过看到ubuntu-cn上面的消息,已经有两个中国人加入到ubuntu的开发维护人员行列,将致力于中文化的工作,这是一个天大的好事呀.

    December 24

    水木VIM版的投票

    注意投票一的最后一个选项,笑死我了.

    投票一
    ===============================================
    ⊙ 投票开启于:Sun Dec 11 10:37:12 2005  类别:单选
    ⊙ 主题:关于本版的访问频度调查
    ⊙ 票选题目描述:

    衷心希望本版能够为大家学习和使用 Vim 带来一些帮助!那么,大家一般多长时间访问
    一次本版呢?
    ** 投票结果:

    (A) 第一次经过这里                               0 票  约占 0%
    (B) 偶尔有空时过来看看                           9 票  约占 15%
    (C) 经常过来看                                  15 票  约占 26%
    (D) 每天至少访问一次                             7 票  约占 12%
    (E) 加入收藏夹随时关注                          26 票  约占 45%
    (F) 哪个版叫做“本版”?                         0 票  约占 0%

    投票总人数 = 57 人
    投票总票数 = 57 票

    ==========================================================
    投票二

    ⊙ 投票开启于:Sat Dec 17 20:44:07 2005  类别:单选
    ⊙ 主题:Vim 用户性别调查
    ⊙ 票选题目描述:

    Vim 的使用者很多,
    在这些使用者中,
    性别都是如何分布的呢?
    根据网友建议,
    本版特展开这一调查,
    请各位网友踊跃配合。
    ** 投票结果:

    (A) 男                                          54 票  约占 98%
    (B) 女                                           1 票  约占 1%

    投票总人数 = 55 人
    投票总票数 = 55 票
    December 19

    VIM的Windows用户要注意的事情

    第一条就是把自带的_vimrc中的source mswin.vim去掉,这个里面主要是模拟windows的一些操作,比如把ctrl+ v映射成粘贴,但是实际上ctrl+v在vim中另有用途,就是进入可视化模式.
    这样好像和普通windows的应用程序的操作一致了,但是会给你在使用vim过程中带来无穷无尽的麻烦,因为在所有的vim的教程,文档中都是按照正规的快捷键进行讲述的,而你使用了windows的这种快捷键之后就会发现怎么都不行了,我在初学vim的时候就遇到了这个问题,很不爽,后来就干脆把这句话删除了.这样就学习正统的vim的操作方式,无论是windows还是linux都操作一致,降低了学习的成本.并且,由于vim本身的操作和普通windows就非常不同,不存在过渡的问题,本来过渡就很困难,就不在乎保留那几个快捷键了...
    December 01

    梦寐以求的功能,让GVIM支持成员提示(Intellisense In GVIM)

    今天在逛vim的邮件列表中看到有一个插件可以支持成员提示,立马下载下来,哇,还真的很好用.目前这个插件支持C#(需要.Net Framework),C++(需要ActivePerl),Java(需要java sdk,java doc),Jsp(需要java插件,html插件),html,sql,xml.非常爽啊.

    软件的主页.强烈推荐所有希望有成员提示的人士使用,目前版本好像是1.3,1.4更新了C++的支持,是一个patch,所以首先要下载1.3

    Screen Shots

    Here there are a few screen shots.

    Methods list           

     

     

    XML tags list

    XML attributes list