修复zsh svn1.7 自动完成的问题

更新svn(subversion)到1.7后 zsh 的svn自动完成就傻X了。

错误: _arguments:comparguments:312: invalid argument: [–cl]:arg:

修改方法

打开文件:/usr/share/zsh/4.3.11/functions/_subversion

找到35行左右

${=${${${(M)${(f)”$(LC_ALL=C _call_program options svn help $cmd)”#(*Valid options:|(#e))}:#* :*}%% #:*}/ (arg|ARG)/:arg:}/(#b)-([[:alpha:]]) \[–([a-z-]##)\](:arg:)#/(–$match[2])-    $match[1]$match[3] (-$match[1])–$match[2]$match[3]}

改为

${=${${${(M)${(f)”$(LC_ALL=C _call_program options svn help $cmd)”#(*Valid options:|(#e))}:#* :*}%% #:*}/ (arg|ARG)/:arg:}/(#b)(-##)([[:alpha:]]##) \[–([a-z-]##)\](:arg:)#/(-    -$match[3])$match[1]$match[2]$match[4] ($match[1]$match[2])–$match[3]$match[4]}

 

参考资料:

http://www.zsh.org/mla/workers/2011/msg01448.html

Read: 281

3 thoughts on “修复zsh svn1.7 自动完成的问题

  1. 潇洒

    刚才没看评论…… 实测确实这招不灵鸟…. 现在试试删掉….
    自动完成其实用不上…

    回复
  2. Hessian 文章作者

    zsh更新了以后这招又不好用了,不过这一句其实没有什么用,其实可以直接注释掉。

    从代码上看好像是用来自动补完svn 参数的

    回复

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注