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

Vim 的 statusline 像 spacemacs 一样

  •  
  •   Taigacute · 2019-07-02 22:12:07 +08:00 · 4219 次点击
    这是一个创建于 1969 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Statusline Plugin

    • 盘点下现在比较流行的 statusline plugin,airline,lightline,eleline。基本上这 3 个用的比较多吧。说下优缺点。

      • airline 优点:集成了一大堆插件支持,简单配置下就能用.缺点:集成太多东西,笨重,启动耗时。对于我这种追求极致启动时间的人来说无法忍受。
      • lightline 优点: 自定义,每个功能都需要你自己实现,比 airline 自定义程度高一些,启动时间也快一点。缺点:新手用着费劲,自定义程度也还是不够。
      • eleline 作者国人 liuchengxu。简单易用轻量。Nice。
    • 我之前用的是 lightline。基本上市面的 statusline 插件的分隔符都是统一的 左边全一样右边全一样。没意思,玩 vim 就是追求自由,被插件束缚了手脚那怎么行,看不下去就动手自己做一个。其实你对状态栏没啥特别的需求简单做一个就行了,轻巧易用。

    动手

    • 思来想去的,一直比较喜欢 spacemacs 的状态栏 spaceline,最新的那个凹凸的圆 terminal 显示不出来没辙。照着老版本的做了一个

    • 依赖 coc,coc-git 和 nerdfonts 支持符号(也许不需要?符号我没有使用编码)

    • 支持活动窗口不活动窗口,支持 defx tagbar denite vistia 等一些常用插件 filetype 下的显示。启动也超级快,之前我配置 60 插件启动 65ms,现在去掉 lightline 和 bufferline,用了自己的,启动时间 50ms.

    • left:bufnumber-filename-filesize-vimmode/cocdiagnostic-git-cocextensions

    • right:fileencode-fileformat-lineinfo image

    • 当有 coc 错误或者警告的时候,vimmode 模式区域会被替换成会心跳+错误 /警告 image

    总结

    • 基本上大成功了。等哪年审美疲劳了在来折腾。我单独把 statusline 从我配置里拿出来放到 plugin 里,不算是个完整的插件,不过也能用吧。
    • 净瞎几把折腾,代码都没好好写。强波正哎不喜欢的就一定要搞到我满意为止,就酱吧,有空在继续完善。
    • spaceline.vim
    第 1 条附言  ·  2019-07-03 18:01:55 +08:00
    完善了一下。支持自定义设置每一个符号。准备提供一些分隔符组。目前是只有斜杠组,箭头组,半圆组。有些符号字体不支持就没办法了。提了个 issue 希望 nerdfonts 作者能支持多一些分隔符。后续只能再看了
    第 2 条附言  ·  2019-07-04 17:37:20 +08:00
    附一张完善过后的。详细的文档可以到 github 主页看看。比较华丽不太适合喜欢简单素雅的人。
    ![]( )
    6 条回复    2019-07-04 09:10:27 +08:00
    qcts33
        1
    qcts33  
       2019-07-02 23:45:34 +08:00
    首先支持一下
    话说楼主是不是日常用英文比较多,这个标题的语序是英文……
    Taigacute
        2
    Taigacute  
    OP
       2019-07-02 23:58:58 +08:00
    @qcts33 ...好像是有点。
    sorel
        3
    sorel  
       2019-07-03 10:46:17 +08:00
    @Taigacute 楼主 README 里面的安装方式有点小错误,应该是 Plug 'taigacute/spaceline.vim'
    Taigacute
        4
    Taigacute  
    OP
       2019-07-03 11:35:37 +08:00
    @sorel ok fixed 少了'
    May725
        5
    May725  
       2019-07-03 12:51:29 +08:00
    @qcts33 我思考了一下,没觉得语序哪里不对😂
    qcts33
        6
    qcts33  
       2019-07-04 09:10:27 +08:00
    @May725 您可能是英文语法的受害者😉😉😉
    虽然我也是渣语法,但现代中文应该是不能定语后置的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2795 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 51ms · UTC 15:06 · PVG 23:06 · LAX 07:06 · JFK 10:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.