gpt4 book ai didi

vim - 在新的(GUI)窗口中打开 vim 选项卡?

转载 作者:行者123 更新时间:2023-12-04 12:13:10 25 4
gpt4 key购买 nike

我想将当前选项卡移动到 MacVim 中的新(可视/真实)窗口中。

这可能很困难,因为:

  • vim 帮助中没有任何内容,只有很少 - 没有帮助 - 在 google 上点击
  • MacVim 不支持 ( link , 2009)

  • 所以我想知道是否有人找到了实现这一目标的方法?

    最佳答案

    我认为您可以使用的最接近的方法是使用 mksession
    这将有几个缺点(例如,最初的辅助 session 将打开比最终所需的更多的缓冲区)。
    但是,它会保留您的映射、设置、历史记录、窗口布局(如果当前选项卡中有多个窗口,它们都会被克隆)。

    如果这个想法激起了您的兴趣,您可以考虑创建一个脚本来过滤 session 文件中的部分(Yust Another Vim Text Script)

    :mksession! $HOME/detach.vim
    :tabclose
    :silent! !gvim remote --servername Detach -nR +'silent! source H:\detach.vim' +tabonly
  • 保存所有当前窗口、映射、设置 ( :he mksession )
  • 关闭我们即将分离的选项卡
  • 将 session (detach.vim) 克隆到远程 vim
  • :silent! (尽量不要说太多)
  • !gvim remote --servername Detach ;如果它不存在,启动一个新的远程 Vim 服务器,或者与名为 Detach 的现有服务器交谈。
  • -nR TODO 修复 这是为了避免使用交换文件(因为我发现没有办法抑制可怕的 ATTENTION 消息[1])。但是,根据您的情况,这可能是不安全的建议,这就是为什么我还包括 -R 的原因。只读模式
  • +'silent! source H:\detach.vim' +tabonly -- 在远程 vim 中,获取要克隆的 session ,并仅保留事件选项卡(已在步骤 1 中关闭。)

  • 边缘有点粗糙,当然,但我觉得非常接近你的意图。
    如果觉得舒服,可以放下 -nR标志,只需单击一些烦人的交换文件注意消息(键盘:Q)。

    [1] :he ATTENTION
    后脚本:
  • 在 Windows 上你可能想使用 :silent! !start /b gvim ....如果您的终端窗口粘在周围
  • 同样在 Windows 上,如果生成的 gvim 窗口太小,您可能会出现烦人的行为。 :simalt ~x sequence 是最大化窗口的一种hacky 方法(假设是英文UI,因为x 是Ma x imize 的加速器)
  • 作为锦上添花,vim 7.3 具有“持久撤消”功能。见例如:se undofile
  • 关于vim - 在新的(GUI)窗口中打开 vim 选项卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6123424/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com