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

vimrc 里怎么判断 NERDTree 是否打开的状态?

  •  
  •   rupert · 2017-01-09 13:24:52 +08:00 · 2228 次点击
    这是一个创建于 2665 天前的主题,其中的信息可能已经有所发展或是发生改变。
    9 条回复    2017-01-10 09:51:35 +08:00
    chemzqm
        1
    chemzqm  
       2017-01-09 14:00:02 +08:00
    能不能多花点时间把问题描述清楚?
    rupert
        2
    rupert  
    OP
       2017-01-09 15:19:15 +08:00
    @chemzqm

    我需要写个东西,在 vimrc 做个流程控制,就是 if .. else 流程判断, if (NERDTree_is_open) else ... 这样

    找文档都没有看到 NERDTree_is_open 这个状态的写法,就不知道你们有没有写过类似的。
    bp0
        3
    bp0  
       2017-01-09 15:40:28 +08:00
    在 google 上搜索一下 NERDTree 的自动关闭,也许有你想要的东西。
    chemzqm
        4
    chemzqm  
       2017-01-09 15:42:49 +08:00
    它默认不会自动打开的啊,除非你自己做了配置,要怎么判定还要看你配置怎么写的
    iCyMind
        5
    iCyMind  
       2017-01-09 16:39:13 +08:00
    bufdo, 然后再检查每个 buffer 的 filetype 等不等于 nerdtree?
    pright
        6
    pright  
       2017-01-09 17:01:51 +08:00   ❤️ 1
    if exists("t:NERDTreeBufName")
    " NERDTree is open
    else
    " NERDTree is closed
    endif
    rupert
        7
    rupert  
    OP
       2017-01-09 17:14:03 +08:00
    @pright 赞!
    yuuko
        8
    yuuko  
       2017-01-09 22:14:10 +08:00
    if g:NERDTree.IsOpen()
    " open
    else
    " close
    endif
    rupert
        9
    rupert  
    OP
       2017-01-10 09:51:35 +08:00
    @yuuko 也可以哈哈
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3021 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 13:42 · PVG 21:42 · LAX 06:42 · JFK 09:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.