V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
skywind3000
V2EX  ›  Vim

argtextobj.vim 更新了

  •  
  •   skywind3000 · 2018-04-04 00:56:52 +08:00 · 3720 次点击
    这是一个创建于 2433 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有人和我一样的用这玩意儿么?

    老版本 2010 年就停更了,有一些小 bug,比如选中一个参数 via,文件会显示被修改过,还有好多奇奇怪怪的小问题,但是 argtextobj.vim 十分趁手,只有一个文件,我一般就直接扔我自己的 dotfiles 文件夹中,到哪里都直接运行,不需要包管理器 install 一大堆插件。

    https://github.com/gaving/vim-textobj-argument

    下载地址如上。
    第 1 条附言  ·  2018-04-09 15:33:55 +08:00

    又找到一个比较权威的最新版 argtextobj.vim

    https://github.com/blueyed/argtextobj.vim

    blueyed fork的,比之前那个更新更权威,改了更多bug

    这个项目分成了 autoload 和 plugin了,我还是喜欢弄成单文件,所以合并了一下,需要单文件的自取:

    https://github.com/skywind3000/vim/blob/master/site/argtextobj.vim

    下面是更新内容:

    2014-06-02  o [master] ENH: Support repeat of operator-pending text objects.
    2014-05-07  M─┐ Merge pull request #2 from UnrealQuester/master
    2014-05-03  │ o Fixing empty function arguments bug
    2014-05-03  │ o Fixed bug with trailing whitespace
    2014-05-03  │ o Removed debug
    2014-05-03  │ o Return to old position when no matching parenthesis is found
    2014-05-02  │ o Trying to fix empty argument list bug
    2014-05-02  │ o Removed now unused option argument_mapping
    2014-04-30  o─┘ Fixed bug in multiline arguments
    2014-04-30  o Removed debug
    2014-04-30  M─┐ Merge pull request #1 from inkarkat/master
    2014-04-29  │ o Use proper syntax for help tag definitions.
    2014-04-29  │ o Use canonical <Plug>(argtextobj...) mappings to allow remapping.
    2014-04-29  o─┘ Added docs
    2014-03-26  o Put most of the stuff in autoload
    2014-03-26  o Made mapping configurable
    2014-03-25  o Added include guard again
    2012-01-20  o FIX: Don't define text objects for select mode.
    2011-11-15  o ENH: Support whitespace other than <Space> (i.e. <Tab>).
    2011-11-15  o ENH: Support arguments spread over multiple lines.
    2011-11-15  o FIX: Prevent yank message when args are distributed over multi-lines.
    2011-11-15  o ENH: Beep when no or too few arguments found.
    2011-11-15  o ENH: Support [count] to select multiple arguments.
    2011-11-15  o ENH: Avoid clobbering the regtype, selection and clipboard registers.
    2011-11-15  o ENH: Avoid modification of buffer in s:GetOutOfDoubleQuote().
    2011-11-15  o ENH: Handle selection=exclusive.
    2011-11-15  o FIX: Use :normal! everywhere to avoid interference with custom mappings.
    
    第 2 条附言  ·  2018-04-09 15:39:40 +08:00
    最新版本支持多个 argument 选取和删除,比如:


    v2ia 选择接下来两个参数
    c2ia 改写两个参数
    10 条回复    2022-10-05 16:26:55 +08:00
    skywind3000
        1
    skywind3000  
    OP
       2018-04-04 00:57:13 +08:00
    这个 gaving 一直维护到现在。
    skywind3000
        2
    skywind3000  
    OP
       2018-04-04 00:57:46 +08:00
    textobj-user 系列好用是好用,但是要噼里啪啦的下载一大堆东西。
    nG29DOMuRYTWfcSr
        3
    nG29DOMuRYTWfcSr  
       2018-04-04 15:52:37 +08:00
    我想知道你是怎么获取到更新的消息呢?我也在用这个插件,不过用的是 vim-script 仓库的,都不知道有更新。另外吐槽下 V2EX 登录,我登录输入验证码输了 7 次才正确!图片颜色反差太小,看不清楚。
    skywind3000
        4
    skywind3000  
    OP
       2018-04-04 17:13:01 +08:00
    我发现一个小 bug,就是 via 的时候文件显示被修改过了,但是并没有改动任何一个字符,于是搜索解决方案发现有个家伙一直在维护一个 fork。比起 vim-textobj-user 全家桶来说,我更喜欢这个,单个文件,直接放我的配置目录里,作为基础插件使用,不用下载一大堆就默认生效那种。

    还有另外一个 indent 的 text-obj 插件和这个一样好用。可以 vii 选中当前一层 indent,按 o 两头查看范围,确认后按进行复制,或者删除改写,比 vip 好用很多。

    https://github.com/michaeljsmith/vim-indent-object

    两百行的代码,比 vim-textobj-user 全家桶精简多了,也可以直接放我 dotfiles 里面。不过他有个小问题就是 vii 选中以后,光标应该跟 vip 一样停留再最后一行,他停留再选择区域的第一行了,需要我多按一次 o,给他提了个 PR,作者还没回应,我自己就改了个版本:

    https://github.com/michaeljsmith/vim-indent-object/pull/16

    可以用我 PR 的版本,就改了一行。
    skywind3000
        5
    skywind3000  
    OP
       2018-04-04 17:22:08 +08:00
    现在我唯一保留 vim-textobj-user 系列的文本对象就三个了:url,函数,语法对象

    这三个暂时替换不了,也都还是比较有用的。
    nG29DOMuRYTWfcSr
        6
    nG29DOMuRYTWfcSr  
       2018-04-06 16:43:54 +08:00
    我来研究下这个插件
    ivechan
        7
    ivechan  
       2018-04-08 21:39:26 +08:00
    这个插件很不错,收藏了,谢谢~
    skywind3000
        8
    skywind3000  
    OP
       2018-04-09 02:10:44 +08:00
    https://github.com/michaeljsmith/vim-indent-object

    已经 merge 了我的 pr,直接用它的官网版本吧。

    两个文件我都直接放到我的 dotfiles 里了,不需要从网上再更新那种。
    skywind3000
        9
    skywind3000  
    OP
       2018-04-09 15:35:06 +08:00
    又找到一个更新的 fork,blueyed fork 了的版本,见添加内容。
    zhanggang807
        10
    zhanggang807  
       2022-10-05 16:26:55 +08:00
    楼主,感觉你是个 vim 大佬,帮忙看看这个问题 https://www.v2ex.com/t/884675
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1045 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 19:29 · PVG 03:29 · LAX 11:29 · JFK 14:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.