拿起画笔,描绘你心中的Vim(来自Ame的倡议)


[image]
我有一个梦想!
我梦想有一天,Vim不再仅仅是程序员的宠儿,而成为尽人皆知的编辑器。当我打开国内软件下载站的页面时,能看到右图这样的画面。

这不可能吗?现在的Vim的确不可能。但一个完全面向普通人的Vim呢?

1. 所谓的文本编辑器

维基百科中“文本编辑器”一词定义如下:文本编辑器是用来编写纯文本的计算机软件。操作系统和软件开发包往往都提供文本编辑器,用以修改配置文件和程序的源代码。百度百科则说的更直白:文本编辑器(或称文字编辑器)是用作编写普通文字的应用软件,它与文档编辑器(或称文字处理器)不同之处在于它并非用作桌面排版(例如文档格式处理)。它常用来编写程序的源代码

看到了吗?文本编辑器原本就是程序员的禁脔,想用它们编辑纯文档的普通用户,就像误入童话王国的Alice一样,不是那么受欢迎的。

但Vimer的心胸依然宽大,煞费苦心在桌面上放置了easy模式,还翻译了准确的中文帮助——这一切对程序员来说都不是必须的。我们要感谢Vim社区的良苦用心,但同时也要看到,(即使经过种种努力)Vim依然是一个面向程序员,而非普通用户定制的程序。

2. 普通用户和程序员的需求差异

普通用户和程序员对编辑器的要求南辕北辙。程序员写代码,一般人写文档。程序员用英文多,一般人用中文多。程序员需要IDE整合,语法高亮,编译支持。而一般人仅仅期望通过可自定制的vimrc,快捷键,宏和少许插件提高工作效率,并且没有太多时间花费在处理软件问题上。不同需求,自然需要不同的整合方案来解决。
就像下图所示:
[image]

熟悉Vim的老手都知道,Vim.org提供的整合安装包(即Vim73.exe)只是一个大众化的BIG版本,其中很多功能没有开启。他们鼓励程序员下载源码编译出适合自己的程序。例如Vim一直为人诟病的等宽字体问题,实际只需要改动make文件中的一个选项,重新编译一遍即可。既然个性化定制Vim可行,为什么不把它改造成适合大多数人的程序呢?这并不等于失去Vim最重要的特性——高度自由,事实上在谈论自由之前,我希望它能做好一个软件应尽的本分。

3. 我的建议

因此我提议搜集整合大家的意见,塑成一个大伙心目中完美的Vim模型,然后提交开源社区,招募志愿者编译代码。项目可以维护在code.google.com上,随着意见的不断丰富,完善,同时随着Vim主版本的升级可以不断推出升级版本。其核心围绕两点展开:

1. 面向普通用户优化。
2. 中文支持优化。

一些需求,例如中文分词问题,连google都不能完美解决。可以把它写在项目首页上,留待技术的进步。

先说说我想要什么样的Vim吧!

? 在任何系统下完美显示微软雅黑
? 不要再问我设置什么cp936和utf-8,即使不研究这些东西,我的脑袋也快炸了 : X
? 精简安装包,除HTML外去掉其他语法支持。
? 进入插入模式自动切换成中文输入法,退出到编辑模式时自动切换成英文输入法。

切换模式自动切换输入法,似乎改动vimrc就可以,但假如我不写这篇文章,即使过去十年,二十年,可能依然会傻呵呵的Esc之后ctrl+space。为什么?因为Vim的源程序是面向程序员定制的,程序员写代码根本就不存在切换输入法的问题。但对普通用户来说这却是最棘手,最麻烦的问题。因为它完全抹杀掉了双模式操作的优点。几乎是致命的。假如我们面向普通用户制作的Vim天生就集成这一功能,就能让新上手的用户也能体验到Vim的强大!

那么还等什么,让我们拿起画笔,描绘自己心中的Vim,把大家的愿望化为现实吧!好Vim,不做吗?XD

xbeta注: Ame的热情可嘉,我很支持。因为我自己就是一个非编程用户,最早的一篇Vim文章 《普通人的编辑利器——Vim》,也是为了纠正“只有程序员才适合用vim“的偏见;只是限于个人能力,多取适应vim的策略,没敢像Ame这样激进,准备改造Vim。但只要行动起来,还是有希望的。


《 “拿起画笔,描绘你心中的Vim(来自Ame的倡议)” 》 有 81 条评论

  1. yxx41 的头像
    yxx41

    个人现在用的是雅黑mono,中文显示不是太糟糕,或者说还是很不错的。
    你的建议还是很赞啊,但是无奈我是菜鸟,只会vimtutor上学到的一些操作……

    1. Ame 的头像
      Ame

      我也用过雅黑mono,感觉和系统自带的还是有点差距 : )

  2. Platinum 的头像
    Platinum

    说说我的建议吧(主要针对gVim):
    1、有个GUI的配置界面,不求所有功能,只要些常用的即可;
    2、插件管理器;
    第1、2主要解决上手困难的问题,老鸟也可以简化操作,类似firefox。
    3、默认增强对中文字体和编码的兼容性;
    4、默认开启标签页;
    5、默认支持最小化托盘;
    6、常用功能的开关,如切换16进制显示,而不是通过复杂的命令。

    1. Platinum 的头像
      Platinum

      7、可以自定义安装项的安装包。

    2. Ame 的头像
      Ame

      多谢您的建议 : )

  3. 塞壬 的头像
    塞壬

    我也提一条:希望能支持中文按字符和词组等的快捷键直接跳转。

    1. Ame 的头像
      Ame

      这是不是涉及到分词问题,中文是很复杂的…

      1. 塞壬 的头像
        塞壬

        如果不涉及分词,比如这|句话里头,能否支持一个快捷键直接把比如这后面的光标直接移动到及分词,后面,或者直接把光标移动到话里头前面?

        1. Ame 的头像
          Ame

          距离短的可以直接用hjkl解决,距离长的我想是不是就只能靠标点符号了呢?

        2. 塞壬 的头像
          塞壬

          呵呵,这个且不去管它了。Ame发起这个倡议也算是功德无量的好事了,希望大家能够群策群力,早日梦想成真!

  4. AthensBird 的头像
    AthensBird

    是的,最大的问题是输入法切换的问题。用vim输入中文,每次模式切换间要增加一次ctrl+space,这带来的麻烦是vim崇尚的高效的致命杀手。

    1. avikf 的头像
      avikf

      关于输入中文的问题,使用插件VIMIM,支持你能使用到的所有输入法,只有两个文件,一个是插件文件VIMIM.VIM,另一个是VIMIM.*TXT词库文件,只要把这两个文件放到plugin文件夹内就可以使用了。两个快捷键:
      Ctrl+6,可以在中英混输入的情况下,把输入的英文变成中文;
      Ctrl+,就是正常的不间断中文输入;

      1. AthensBird 的头像
        AthensBird

        VIMM的确是一个很有创意的插件,可是我觉得它的适应性不是很强,一般来讲中文用户都有自己常用的输入法,如果为了使用vim而去适应一个新的输入法,有时候很难办到,尤其是像我这种习惯了搜狗这样的自能输入法的,因为它的智能组词组句的能力不是简单一个词库可以解决的。当然,对于五笔或是某些拼音用户,VIMM还是很有价值的。

  5. JLY 的头像
    JLY

    倡议不错,这样的话当我编辑中文的时候就会更愿意使用了(虽然现在也一直在使用)。。不过在使用中也没有遇到太多的不适应的地方,不过这两天遇到一个问题,就是编码的问题,简单点说就是“怎样在一个文件中设置不同的 行 为不同的字符编码,例如第一行显示为cp936第二行显示为latin1”,这个问题搞了半天没有搞定

    1. megax 的头像
      megax

      我很感兴趣你为什么有这种需求。一般的来说,你需要编辑一个文件,而一个文件的编码是固定的,只有一个。你需要不同的行显示不同的编码,你为什么不用unicode,这样都可以显示了。假如不用unicode,那么如何保存呢?难道要在每一行的开头加上codepage, 那还是纯文本吗

      1. JLY 的头像
        JLY

        我有一个GB2312编码的文件,里面我通过十六进制的方式强行插入了一些latin字母,这个时候如果我设置文件为latin格式的话,那么汉字显示就不会正确,如果我设置为cp936的话,那么latin显示就不会正确了。所以我同时就只能看一种是种确的了。就是设置为cp936,然后让latin部分爱显示什么就显示什么,不过貌似vim不会认为这样的文件是cp936,fileencoding打开文件会没有,除非我强行设置它的类型

        1. megax 的头像
          megax

          unicode里面包含了latin字符,可以先转换成unicode,在插入latin字符。VIM应该是不具有这种功能的。不过,EMACS可以,EMACS每个字符前面都有一个字节,标志了他的encoding,不过最多只能存储256个。可以看看是不是同时映射了932和latin所属的那个encoding.

        2. JLY 的头像
          JLY

          我这个文件就是从unicode转换过来的,然后让我转换成了GB2312的,我用的madEdit转的,然后再用查找替换把里面的latin转换成了我想要的,emacs果真强大,可惜偶不会用,等我研究一下。。

        3. avikf 的头像
          avikf

          我认为可以在文件最底部加入文件标签:

          vim:filetype=txt:fileencoding=cp936:

          前面要有空格;

  6. 老杨 的头像

    光标上下移动时按“可视行”移动而不是按照“内容行”

    1. Ryan Lee 的头像
      Ryan Lee

      你说的应该是wrap之后一行变多行, 按j/k会跳很多行的问题吧?
      用gj/gk 就可以了

  7. 云卷 的头像
    云卷

    加油,期待尽快看到成果。
    作为非程序员,刚刚学习vim一段时间,因为学习曲线过陡,且没有带来效率的提升(因为还不熟悉)正准备放弃呢。

  8. Gareth 的头像
    Gareth

    强烈支持,由于工作的原因,每天使用SSH编辑程序代码,是能用VIM,正好也想把Win下的编辑器换成VIM。

  9. 小骆驼商队 的头像
    小骆驼商队

    “退出到编辑模式时自动切换成英文输入法”这个很好
    “进入插入模式自动切换成中文输入法”,这个不如“自动恢复成退出之前的状态”,之前是中文状态就恢复成中文状态,之前是英文状态就恢复成英文状态

    1. 解烟客 的头像
      解烟客

      完全同意!

    2. Ame 的头像
      Ame

      对,的确这样会比较好~也许可以在切换状态前把当前状态写入寄存器。

  10. zeus2615 的头像
    zeus2615

    切换模式自动切换输入法,似乎改动vimrc就可以,但假如我不写这篇文章,即使过去十年,二十年,可能依然会傻呵呵的Esc之后ctrl+space。

    内牛满面……我一直都是这么做的。

    1. sobergray 的头像
      sobergray

      能否具体说一下, 谢谢

    2. AthensBird 的头像
      AthensBird

      能否具体说一下,谢谢

  11. zecy 的头像
    zecy

    切换模式更换输入法这个确实是从来没有想过,实际上现在的拼音输入法,除去搜狗,似乎都是可以在normal模式下实现操作而不是进行输入的,比如QQ拼音和紫光拼音(有的时候会失灵进入输入状态,但切换一下模式后就好了)。

    1. Ame 的头像
      Ame

      我用google输入法,在normal下键入会显示输入框,回车后就能作为英文字符产生命令输入,但这样的话每次输入命令都要回车,反而不如ctrl+space来的方便。紫光和QQ没用过,惭愧。

      1. zecy 的头像
        zecy

        能否支持vim是我选择输入法的一个指标,不使用Google输入法的一个原因就是不能支持Vim的操作(另一个是强制安装在C盘让我无法接受)。对我而言vim比输入法重要。

  12. oversky 的头像
    oversky

    列印 utf-8 下的中文。

  13. megax 的头像
    megax

    如果需要同时输入中英,然后再加上删除粘贴拷贝查找等复杂操作的话,用VIM我觉得很痛苦.需要不断的按ESC. 当然也可以在编辑模式下定制快捷键,使其使用起来就像普通的文本编辑器。。。。。。那么又何必使用VIM呢?按照我个人的测验,VIM并不能提高我的工作效率(仅仅对于我而言,不要喷),目前VIM对于我用处最大的就是使用终端的时候操作服务器上的文本。
    VIM的一些特性(或者称之为优点?缺点?)会限制它始终只能在一个群体内流行,不可能成为5块钱盗版盘中安装必备的推荐列表里面的一员的。也就是说,VIM是不大可能普及成为大众软件的。

    1. Ame 的头像
      Ame

      为什么需要不断的按Esc呢?…我有点想象不出来:( 一般来说正常操作应该是录入一段比较长的文字,在需要大的调整的时候再返回normal…不是这样吗?如果说有问题,那应该是双模式操作方式本身的问题,我觉得似乎和中英混合关系不大。

      至于Vim在编辑一般文档时相对普通文本编辑器的优点,善用佳软以前的文章就说得很好了 : )可以找出来看看。

      1. megax 的头像
        megax

        大多数人的操作习惯是,如果录入的过程中发生了错误,会马上进行调整。而不是等全部录入完毕了,再回头看看哪个录入错了或者漏了,不是吗?双模式本身没有太大问题,如果不作编辑模式下的快捷键定制的话,你需要在中,英,命令模式,编辑模式,之间反复切换。。。。。对吧!

        1. avikf 的头像
          avikf

          这是被Notepad等Windows软件的单模式软件养成的一个习惯,所以接触到多模式软件后,面临一个重新培养习惯的问题,不是模式本身有问题,而是使用都的习惯问题。

          这个问题没有讨论的必要,就像是刚从Windows转到Ubuntu下一样,各种各样的不习惯…

  14. 流星天空 的头像

    其实vim给我的感觉,就和Ubuntu一样,都很有兴趣,但却对我来说又太过高端复杂,可远观却不可近品。
    支持这个提议。

  15. SoberGGG 的头像
    SoberGGG

    一直没能适应vim。。。仔细考虑,是因为很少花时间去写东西,需要写的话也是word搞定。。。萝卜白菜,各有所爱。。。

  16. 善用佳软 的头像

    确实,作为“文本”编辑器,其实没有太多需求。Vim对我有效率,是因为我用它来处理html、加密的通讯录,用熟之后,顺手代替了notepad。

    我现在对软件比较自由了。TC、Vim也可以永续折腾;只有Win98+IE5的机器也能应用无怨言。

    1. SoberGGG 的头像
      SoberGGG

      是啊,我也一样,逐渐离不开的,竟然是TC。。。在Linux下面,虽然也有很多软件,但是觉得麻烦,做什么都得配置半天。。。MAC系统虽然简单,但是常用软件都有点半残,比如QQ视频,MSN分组等等。。。windows下面软件选择多很多,反而变得简单了,还是简简单单的好。。。

  17. yuccatoo 的头像
    yuccatoo

    把选择vim插件变成选择vim分支,有意义吗?减少编译需求就可以了。没必要和qq一样搞那么多定制版本,再说定制版的代码回不回归vim主线,都成问题,回归吧,只是些配置或界面改进,没多大意思,不回归吧,又违反GPL,导致分裂,与其推定制版vim,还不如推必备插件合辑和简易安装配置脚本

    1. Ame 的头像
      Ame

      你说的有道理。但是Vim.exe不重新编译是不能满足我所说的要求的。: )

      我也不想搞什么分裂版本,可以采取定制一个Vim.exe搭配建议配置脚本的形式,形式并不重要,我们需要的是最后的结果——提高Vim的易用性。

      1. Ryan Lee 的头像
        Ryan Lee

        如果不需要改代码的话, 加一个makefile定制一下就可以了, 本来就有很多对应不同系统的makefile, 多一个无所谓

    2. Ame 的头像
      Ame

      我不懂GPL,但我想如果有争议的话,可以给Bram(原作者)或者Sven发封邮件问一下。

  18. catbox 的头像
    catbox

    非常支持!

    普通人被吓到后,懒于看帮助手册研究……于是一直丢着没用……偶尔要编辑文档的时候会想起,要是我会vim,只要几个按键就解决问题了……

  19. wukunpeng858 的头像
    wukunpeng858

    其实我的建议还是做一个配置_vimrc的工具,集成一些插件的介绍,类似firefox的插件自动安装卸载(中文化一些常用插件),减少使用门槛!最好多发一些高手操作的视频,毕竟使用的人不多自学很浪费时间的!

  20. tc 的头像
    tc

    这里提有效果吗?
    感谢佳软有此举动,支持下

    1. Ame 的头像
      Ame

      我的想法是设立一个专门的社区或者邮件讨论列表什么的 : ) 因为真运作起来的话可能不是个小项目(也有可能很简单,我不懂编程),可老大还没发话,暂时就先在这里讨论吧。

  21. Ame 的头像
    Ame

    我也用过雅黑mono,感觉和系统自带的雅黑还是有点差距

  22. Vimer 的头像

    可能做程序员久了,没有办法理解普通用户对于vim的需求。
    不过我还是觉得,Linux下的东西的好玩之处,就在于,由于其高度可配置性,你能享受到这个东西只属于你自己,只适合你自己的那种感觉,你用他做什么都随你的信息。

    而统一化标准会抹杀这种独特性。

    只是随便说说,还是觉得,如果真的爱Vim,那么就学着去用他,感受他的美。

  23. vgod 的头像
    vgod

    我觉得一般用户使用vim做文本处理,要求过高,因为学习的时间很长,而类似文本处理的任务对于一般人只是临时性的工作,难以激发他们的兴趣。
    另外,一般处理文档是需要图文混合的,纯文本的处理方式本身就很挑战用户习惯。实际上xbeta一直在说普通人也可以用vim,vim也是普通人的编辑利器,但是vim的使用本身需要太多计算机的知识,比如编码,比如冒号命令调用外界可执行文件执行如sort之类。
    对于文章中的建议,我确实很建议有一些志愿者可以组建一个小组,进行中文用户的编译优化。目前我觉得对于我们一般国内的使用者比较大的问题是:
    1。字体选择
    2。屏幕取词
    这两项都可以通过编译解决,但是很难找到这样编译的版本。dieken原来做了一个gvim.exe,但是版本很旧了

  24. micate 的头像
    micate

    我最近很想把 vim 用作 IDE,可是你知道的,NERD Tree 真的不好用。
    Vim 可以像 gedit 一样么?

  25. 淡淡 的头像
    淡淡

    想法很好,我也很支持这样的举动

  26. ˇムˇ 的头像
    ˇムˇ

    没必要。多少适合普通用户的文本编辑器,用都用不过来。那有这个必要啊。

    1. sobergray 的头像
      sobergray

      如果能用一个软件解决那是最好不过了.

  27. Harnack 的头像
    Harnack

    菜鸟问下如何修改vimrc实现“切换模式自动切换输入法”?

    1. Ame 的头像
      Ame

      这个我是在豆瓣Vim小组看到的,你可以站内搜一下,或者直接在豆瓣问问,我也忘了具体网址

      1. Harnack 的头像
        Harnack

        非常感谢,我去豆瓣找找看。

  28. Igotit 的头像

    泼点冷水,不同的东西就是有不同的适用场景,多样化的供给才能满足多样化的需求,希望一瓢水舀尽,不现实也没有必要。提出这样一个命题,本身就是站在程序员的角度在思考,没有真正去了解小白用户需要什么。

    但很佩服作者这种充满理想主义的激情,有这样的激情就有无限可能,但愿你能成功。

  29. yeii 的头像
    yeii

    适合新手的编辑器大把,何苦来折腾Vim,它的定位本来就不在于此。
    对于中文的支持倒是还有许多需要改进的地方。

  30. polaris 的头像
    polaris

    期待这样的计划能够实现,让一般人都能很好的掌握Vim,使用上这个强大的文本编辑器。

  31. yeii 的头像
    yeii

    才想起来个项目:Cream
    它就是为了让Vim简单易用的

    1. yeii 的头像
      yeii

      刚才又试用了一下,感觉很崩溃,完全无从下手!
      不伦不类的,还不如直接用PSPad、Notepad++之类

    2. Ame 的头像
      Ame

      多谢!我正在测试Cream这个程序

  32. ciV 的头像
    ciV

    无用功啊无用功
    我还想有一种糖,想吃红烧肉的时候嚼它就像吃红烧肉,想吃面条的时候嚼它就像吃面条。怎么没有人发明这种糖?
    缺乏基础的认识就想要追求完美的效果完全是缘木求鱼
    对着空白的画纸,我会练习自己的画技,而不是希望它能自己现出我想要的画面

    何不让上帝归上帝凯撒归凯撒。

  33. 咖啡小冰 的头像

    刚接触vim
    不知道怎么做查找替换时使用剪贴板中的内容:
    比如

    v 选择字符串 y 复制
    :/这里怎么把刚复制的内容弄进来/替换成/gc

    1. avikf 的头像
      avikf

      有两种方式:
      第一种:y 复制完以后,使用:reg查看你复制的内容在哪个寄存器里,这里刚复制完的内容在0寄存器里(vim有多个寄存器,应该理解吧);然后按/,再按CTRL+R,屏幕上出现一个”,这时再按0
      (数字0),你刚才复制的内容就上去了;
      第二种:按q:进入EX模式,在这里就跟在正常内容输入一样,i后写%s/Ctrl+R 0/…./

      不知道说的明白不

  34. Ame 的头像
    Ame

    有几个问题需要说明一下。

    我承认我有点标题党了 : ( 写了个挺夸张的开头,也许这种吸引目光的做法带来了理解上的偏差,那么我说声sorry,其实我也是为了把文章的主题表达的更清楚。

    Vim当然是不可能成为“路边5块钱盗版盘的必备软件的”,提出这个想法的时候我和站长在邮件里谈的很清楚,面向的受众是“了解一定电脑知识,有兴趣为改善效率付出一定时间和精力,有使用纯文本编辑器的需要,但不懂编程,也没有大量时间耗费在编译和调整上的人群”,这部分人喜欢Vim,夸张点说,爱Vim,Vim粉(就跟果粉似的),喜欢折腾,但是没有能力编译代码。

    但是我非常不喜欢ciV的说法,你说的这种东西怎么没有呢?有,它已经有了,不过是在科幻电影里。可翻出一部19世纪,20世纪初的科幻作品,又有多少创意是今天没有被实现的呢。

    人类科技发展的动力是什么,是懒惰。假如卡尔·本茨步行觉得累的时候说,啊,这是我自己的问题,我应该锻炼肌肉,而不是发明汽车,那我们今天就没车开了。

    我的确不是程序员,也不懂多少Vim,我提出这个提案只因为自己在使用中感到不方便,而且没有google到合适的解决方案(这是重点!),假如大家也有相同问题的话,就把力量拧成一股绳,把问题解决了,假如大家没有类似的问题,那就pass,我去找我程序员朋友。

    这只是一个小人物提出的小提案,希望大家别把它看的太大了。我自己也没有解决的能力,要完成它,需要更多更杰出人物的共同努力,我只是建议罢了 : )

  35. poboat 的头像

    看到右边那张照片我想起来了游侠那张logo~

  36. Zac 的头像
    Zac

    “例如Vim一直为人诟病的等宽字体问题,实际只需要改动make文件中的一个选项,重新编译一遍即可。”
    请问是哪个参数啊?

  37. avikf 的头像
    avikf

    “=========
    (Windows IME 支持) *multibyte-ime* *IME*

    {仅对 Windows GUI 有效,而且编译时需加入 |+multi_byte_ime| 特性}

    要在 Windows 上输入多字节字符,你可以使用输入法编辑器 Input Method Editor
    (IME)。在输入的过程中,你必须多次打开/关闭 IME。因为在打开状态的 IME 对任何的
    输入动作都起作用,你不能在 Vim 中直接使用 ‘j’,’k’ 等几乎所有的键。

    |+multi_byte_ime| 特性在这个问题上很有用。它减少了手动切换 IME 状态的次数。
    Vim 在普通状态下几乎不需要 IME,即使是在编辑多字节文本也是如此。因此当你用 ESC
    离开插入模式时,Vim 会记住 IME 的状态并强制关闭 IME。当再次进入插入模式时,Vim
    会自动的恢复上次的 IME 状态。

    这不仅对插入-普通模式有效,同时也对查找命令的输入和替换模式有效。
    设置 ‘iminsert’,’imsearch’ 和 ‘imcmdline’ 可以选择不同的输入方法,也可以临时
    禁用它们。
    ===============”
    节选自:h mbyte-IME

    根据说明,好像能实现输入法状态的自动切换,大家有什么意见,讨论下…

  38. avikf 的头像
    avikf

    我编译成功了,可以实现插入模式时使用中文输入法,按ESC进入Normal模式后,转入英文状态,再回到插入模式时自动进入中文输入法状态。如果在:version中有 +multi_byte_ime/dyn 这个的话,就表明成功了。
    使用的编译选项为
    nmake -f Make_mvc.mak GUI=yes OLE=no DEBUG=no IME=yes DYNAMIC_IME=yes GIME=yes
    同时也修改了feature.h文件,关闭下面()中的选项。
    在Windows下我不使用python2/3、sniff、tcl、lua、perl、mzscheme、sun_workshop。如是有使用的,就得自己动手编译了。
    这是网盘地址:http://www.brsbox.com/filebox/down/fc/699881db1e9f4232f86e1ebc9609e4bc
    “=======================================
    VIM – Vi IMproved 7.3 (2010 Aug 15, compiled Sep 18 2010 01:06:28)
    MS-Windows 32-bit GUI version
    Compiled by AVIKF@126.COM
    Big version with GUI. Features included (+) or not (-):
    (-arabic) +autocmd +balloon_eval +browse ++builtin_terms +byte_offset +cindent
    +clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments
    +conceal +cryptv +cscope +cursorbind +cursorshape +dialog_con_gui +diff
    +digraphs -dnd -ebcdic (-emacs_tags) +eval +ex_extra +extra_search (-farsi)
    +file_in_path +find_in_path +float +folding -footer +gettext/dyn -hangul_input
    +iconv/dyn +insert_expand +jumplist (-keymap -langmap) +libcall +linebreak
    +lispindent +listcmds +localmap -lua +menu +mksession +modify_fname +mouse
    +mouseshape [[[+multi_byte_ime/dyn]]] +multi_lang -mzscheme +netbeans_intg -ole
    -osfiletype +path_extra -perl +persistent_undo -postscript +printer +profile
    -python -python3 +quickfix +reltime +rightleft -ruby +scrollbind +signs
    +smartindent -sniff +startuptime +statusline -sun_workshop +syntax +tag_binary
    +tag_old_static -tag_any_white -tcl -tgetent -termresponse +textobjects +title
    (-toolbar) +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo
    +vreplace +wildignore +wildmenu +windows +writebackup -xfontset -xim
    -xterm_save -xpm_w32
    system vimrc file: “$VIMvimrc”
    user vimrc file: “$HOME_vimrc”
    2nd user vimrc file: “$VIM_vimrc”
    user exrc file: “$HOME_exrc”
    2nd user exrc file: “$VIM_exrc”
    system gvimrc file: “$VIMgvimrc”
    user gvimrc file: “$HOME_gvimrc”
    2nd user gvimrc file: “$VIM_gvimrc”
    system menu file: “$VIMRUNTIMEmenu.vim”
    Compilation: cl -c /W3 /nologo -I. -Iproto -DHAVE_PATHDEF -DWIN32 -DFEAT_CSCOPE
    -DFEAT_NETBEANS_INTG -DWINVER=0x0400 -D_WIN32_WINNT=0x0400 /Fo.ObjG/ /Ox /GL
    -DNDEBUG /Zl /MT -DFEAT_MBYTE_IME -DDYNAMIC_IME -DGLOBAL_IME -DFEAT_MBYTE
    -DFEAT_GUI_W32 -DDYNAMIC_ICONV -DDYNAMIC_GETTEXT -DFEAT_BIG /Fd.ObjG/ /Zi
    Linking: link /RELEASE /nologo /subsystem:windows /LTCG:STATUS oldnames.lib kernel32.lib
    advapi32.lib shell32.lib gdi32.lib comdlg32.lib ole32.lib uuid.lib /machine:i386 /nodefaultlib gdi32.lib
    version.lib winspool.lib comctl32.lib advapi32.lib shell32.lib /machine:i386 /nodefaultlib libcmt.lib
    user32.lib WSock32.lib /PDB:gvim.pdb -debug
    =======================================”
    今天就做这么多了,下次开始研究字体…
    有了解的童鞋们给我发个信qjavikf@126.com

    1. avikf 的头像
      avikf

      刚发现一个乌龙:原版里就有这个选项,能够自动切换输入法状态;

      使用方法:按i/o/s/a后再按Ctrl+Space,切换到中文;而不是先Ctrl+Space切换到中文后再换模式…冏

      1. JLY 的头像
        JLY

        哈哈,这个晕死,一直都是这么用的啊。。

        1. yx_wh 的头像
          yx_wh

          @JLY,

          进入插入模式自动切换成中文输入法,退出到编辑模式时自动切换成英文输入法。
          我用的微软拼音就是这样的啊。不用什么额外的设置

          至于encoding,学呗。大一计算机入门课里面就有。看帮助……
          至于取词,习惯goldendict(for linux)……

  39. […] 关于更适合中文用户、更适合非编程用户的vim的讨论(1、2)终于取得了一点实质性结果:支持非等款字体、支持金山词霸、有道词典取词的 windows gvim.exe v7.3 终于出现了。感谢 Dieken、湖间小筑的技术研究、动手制作。 […]

  40. skystar 的头像
    skystar

    Xmind这么玩还挺有意思的嘛

  41. linusware 的头像
    linusware

    LZ说的所有问题,vimim都已经解决了。水木上一个人写的针对中国人的vim improver。

    大家去看看吧。

    http://code.google.com/p/gvimim/

  42. kingmq 的头像

    使用tabnew打开多个文件后,各个tab上的文件名显示不全,应该使用多行标签页,也就是在一行无法容纳多个tab后,再增加一行放置多出的tab页。

发表回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据