【问题标题】:How to get different colorschemes in Vim split window?如何在 Vim 拆分窗口中获得不同的配色方案?
【发布时间】:2012-08-21 20:24:23
【问题描述】:

我更喜欢为 python 设置不同的colorscheme,而为其余文件设置不同的colorscheme

所以,我所做的是在我的vimrc 中添加以下两行:

"for python file
autocmd! BufEnter,BufNewFile *.py colo badwolf
autocmd! BufLeave *.py colo badwolf

"for rest of the files
colo molokai

当我使用vim test.py 在vim 中打开new/pre-exixting 文件时一切正常,但是当我使用:split .scripts/test.sh 将我的vim 窗口分成两个时出现问题。

当我的光标移动到新的分割窗口(.sh)分割窗口后,我的 python 文件得到了molokai colorscheme,当我将光标移动到旧的窗口(.py)时,我得到了badwolf 我的.sh window 中的颜色方案。所以,正如你最终看到的那样,我的窗口中有相同的颜色方案,具体取决于焦点所在的文件类型。

如果是Vim-Tab,只要我打开一个具有预定义颜色方案的文件(通过 autocmd),所有选项卡都会应用该颜色方案。

那么,有什么方法可以让我在 vim 拆分窗口和选项卡中使用不同的 colorschemes

【问题讨论】:

  • Vim 的配色方案,一般来说,是全局的。对于不同的拆分等,您不能有不同的配色方案。在这个主题上你能做的最好的事情可能是为语法的不同部分定制匹配,但这似乎比它的价值更麻烦。
  • @idigas:但至少应该有一个功能可以为选项卡提供不同的配色方案。
  • 就我个人而言,我喜欢 Vim 的一个原因是你不能自定义太多(比如 emacs;不同的字体、颜色、图像),所以它总是看起来很熟悉。
  • @ldigas: 对不起小写 L。下次我会记住的:)

标签: vim color-scheme


【解决方案1】:

我认为不可能同时可靠地激活不同的配色方案。

事实上,我非常惊讶您能够为不同的窗口加载不同的颜色方案。 :colorscheme molokai 是一个适用于每个缓冲区的全局命令。

【讨论】:

  • 可能有不同的配色方案according to filetype in vim,但是是的,它不可能有 OP 想要的不同配色方案。如果添加到 Vim 中,我会喜欢这个功能。
  • 你真的尝试过这个答案吗?我刚刚在 vsplit 中处理了一个 HTML 文件,在另一个中处理了一个 JS 文件:从一个窗口切换到另一个会改变颜色方案,是的,但是对于两个窗口。这是没有意义的。
【解决方案2】:

这不是您想要的,但是这个tab page color scheme vim plugin 让您可以使用:Tcolorscheme 为每个选项卡分配不同的颜色方案。

【讨论】:

  • 根据您的描述听起来很有趣。由于该项目甚至没有 README,因此对入门非常不友好,我想很多人(比如我)会跳过它。
【解决方案3】:

这确实是一个不受欢迎的非 vim 解决方法,但您可以使用 tmuxscreen 窗格来分隔具有不同颜色方案的两个 vim 实例。

【讨论】:

  • 在同一个 Vim 实例中打开多个文件有一定的好处,例如能够使用 Vim 命令轻松地在文件之间复制粘贴。使用 tmux 或 screen 时如何处理?
  • 如前所述,这是一种非 vim 解决方法,它失去了在同一个 vim 实例中加载文件的许多好处。我建议将其作为一种解决方法来满足 OP 的要求。但是,如果您必须在 tmux 窗格之间复制和粘贴,那么您可以阅读我在 this question 上的回答。
  • @Dennis,你有它这样 vim 中的 yanks 也总是复制到系统剪贴板,然后 yy p 将在 tmux vim 实例中工作。很方便,我觉得。在某种程度上缓解了多个 tmux vim 实例的问题。不幸的是,它似乎只适用于 Linux(我认为 Mac 版本的 Vim 太旧了)。放入你的 vimrc set clipboard=unnamed
猜你喜欢
  • 2014-05-08
  • 2013-08-15
  • 2011-06-16
  • 2010-12-06
  • 1970-01-01
  • 1970-01-01
  • 2019-07-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多