• Quartus II的编辑器不支持中文,实在够垃圾的,呵呵。以前我都是在外部编辑器中写代码,再导入到Quartus中,这样实在是麻烦,尤其是在调试时,两边“忙”,很容易出问题。今天好好看了一下Quartus II的选项,原来Quartus II支持外部编辑器,于是把编辑器换成了VIM,哈哈。这下好了,可以在Quartus II中用中文注释了。而且调试时,双击出错的地方会自动调转到VIM编辑器,呵呵。

    怎么设置??直接看图片吧,呵呵。使用的VIM命令是:

    gvim --remote-tab-silent +%l %f



  • 通过vim web发布 - [LBE]

    2007-07-15

    原文:Web Authoring with Vim
    作者:toydi
    译者:gosman(lianmingchang2008#gmail.com)
    来自:http://gosman.blogbus.com
    版本:V 1.0.0
    时间:2007-4-28

    通常vim使用以下命令打开一个文件:

    vim /path/to/file

    vim也可以浏览目录

    vim /path/to/directory

    在vim中,:write命令保存文件,:read命令读取文件到当前缓冲区,:tabnew /path/to/file在标签(tab)窗口中打开文件。

    远程编辑

    远程编辑时,vim使用相同的命令处理远程机器上的文件和目录(这让人很惊讶)。

    例如,打开web服务器上的文件。

    vim ftp://ftp.teohuiming.name/public_html/blog/index.html

    浏览web服务器上的目录,注意URL末尾的正斜杠表明它是目录。

    vim ftp://ftp.teohuiming.name/public_html/

    比如打开index.html文件,在修改后运行:write命令,vim会向服务器发出FTP请求并更新文件。

    除了FTP,vim也支持其他的远程访问协议,如HTTP、WebDAV、SSH(scp,sftp)等。详细信息可以参看帮助:help netrw

    配置vim使用被动FTP

    如果已经成功连接到FTP服务器,发出FTP请求,但无法从服务器接收数据,你可能需要打开FTP的被动模式来解决这个问题。

    要vim使用被动FTP,必须强制vim使用pftp,需要添加以下语句到vim配置文件 ~/.vimrc。

    let g:newrw_ftp_cmd = 'pftp'

    其他提示

    使用 :0r 加载模板。以前我使用以下命令来新建一个基于模板的文件。

    cp html401.tpl tutorial2.html
    vim tutorial2.html

    如果你在vim中的话,更简单的方法是:tabnew 打开一个空白文件,用:0r html401.tpl加载模板。

    插入ISO6801日期格式。在网络世界,撰写标准文档(如Atom)时经常要插入ISO6801格式的时间戳。在vim中插入类似2007-06-18T23:14:02+0800的时间戳,可以使用 :r !date -Iseconds

  • 原文:commenting your source code with combo keys in vim
    作者:mysurface
    译者:gosman(lianmingchang2008#gmail.com)
    来自:http://gosman.blogbus.com
    版本:V 1.0.0
    时间:2007-6-3

    我的同事用 VC++ 时用组合键注释语句,我想vim也有类似功能。Vim的强大之处就在于它的灵活,可以定制组合键。

    vim允许覆盖自身绑定的快捷键。正常模式下的 c 和 cc 组合键,对我的用处不大,因此我使用他们完成注释和去掉注释。

    注释时将可视模式下选定文本的每行开头插入"//"。意味着,要用v键从正常模式切换到可视模式选定文本后,再输入组合键。

    :s/^/\/\//g

    去掉注释执行相反过程。

    :s/^\/\///g

    键绑定,将以下语句添加到 ~/.vimrc。

    :map cc v:s/^/\/\//g
    :map cx v:s/^\/\///g
    :vmap cc :s/^/\/\//g
    :vmap cx :s/^\/\///g

    将 cc 映射到命令 v:s/^/\/\//g ,其余依此类推。其中 :vmap 约束键映射只能在可视模式下有效。

    更新:

    在“评论”中发现了更好的"正则表达式"。

    :map cc v:s!^!//!g
    :map cx v:s!^\s*//!!g v=
    :vmap cc :s!^!//!g
    :vmap cx :s!^\s*//!!g v=

  • 原文:Printing in vim: Using programs to other than the default lpr
    作者:Felix Leong
    译者:gosman(lianmingchang2008#gmail.com)
    来自:http://gosman.blogbus.com
    版本:V 1.0.0
    时间:2007-5-28

    vim 下打印使用:hardcopy(也可用缩写:ha),该命令等价于创建临时Postscript文件,并传递给lpr打印。

    那如果要更改 vim 的打印行为呢?比如使用 a2ps 程序将两页缩放到一页打印。使用:printexpr可以很简单的达到目的。在 ~/.vimrc 添加以下代码。

    (修改自 2. Print options, from VIM Reference Manual, Printing)

    set printexpr=PrintFile(v:fname_in)
    function PrintFile(fname)
    call system("a2ps " . a:fname)
    call delete(a:fname)
    return v:shell_error
    endfunc

    基本上你只要将 call system() 的参数替换成其他打印命令就行了。

    小提醒:在打印时请关注"节约树木"。

    对 vim 脚本的说明

    我们将一行行的解释该脚本,需要具备少量的编程知识。

    set printexpr=PrintFile(v:fname_in) 设置printexpr将打印请求重定向到PrintFile函数。根据《VIM参考手册》在打印章节的说明 “ 打印文件的文件名变量为v:fname_in”,我们使用变量 v:fname_in 作为函数 PrintFile 的参数,该变量是VIM预定义变量表示输入文件名。

    第二行定义函数名 PrintFile和指定参数 fname。第三行调用外部命令“ a2ps [file name]“,system 函数的参数 "a2ps " . a:fname ,用点号将字符串 "a2ps "(有空格)和函数参数(fname)相连接,a: 表示fname是先前定义的函数参数。

    最后,我们删除文件(call delete(a:fname))和返回shell错误信息(return v:shell_error),这样 vim 可以返回该错误信息。用 end func 结束函数定义。

  • VIM学习计划 - [GNU/Linux]

    2006-10-15

    经过将近一年的选择,终于决定放弃emacs而改用VIM。越来越喜欢VIM的小巧漂亮及其设计思想。以下是我草拟的学习计划:

    • 每周看一遍vimtutor,直到自己觉的没必要再看为止;
    • 经常访问VIM online,特别是经常光顾一下tips;
    • 在VIM的基本操作差不多的时候,看 Steve Oualline写的一本VIM的书籍
    • 接下来也许到一年之后了,看VIM的帮助文档;
    • 学习阶段结束,接来就得靠自己在实践中慢慢修炼了。

    以下是一幅VIM学习地图,个人认为非常好。

    vim_outline