【问题标题】:How to fix Vim (win32) colors when run from powershell?从powershell运行时如何修复Vim(win32)颜色?
【发布时间】:2011-12-25 09:53:42
【问题描述】:

好的,我已经搜索了一段时间,但似乎无法找到答案,所以我希望有人能直接指出我这里......

我安装了 (g)Vim 7.3 for windows 并尝试从 powershell 提示符 (v2.0/Win 7-amd64) 运行它。 Vim 开始很好,但颜色都被顶了。通常我为 gVim 使用沙漠主题。对于 POSIX shell,我通常使用 CSApprox.vim 插件在 vim 中获取 gVim 颜色,并且效果很好(我在 .vimrc 中设置的只是设置 t_Co=256)。无论如何,我已经尝试过使用和不使用 256 和 CApprox 插件的 vim,但是当从 powershell (和 cmd,但为了简单起见,请坚持使用 powershell)启动时,仍然会得到错误的颜色。如何在不永久更改 Vim 外部的 powershell 颜色的情况下让 powershell vim 看起来像 gVim 沙漠?

【问题讨论】:

  • 我遇到了完全相同的问题
  • 我认为这是 PowerShell 使用的调色板的问题。必须修改此调色板以匹配默认 xterm。我还没有放弃希望。
  • 比较ps、cmd和直接启动的用户环境(?无论颜色正确的方法)。从不同的来源向vim呈现的东西是不同的。我怀疑它正在存储相对于起始路径的配置文件信息。如果您查看开始菜单或桌面中的快捷方式,请找到“开始于”属性。然后进入powershell或者cmd,切换到那个路径,然后启动vim,它会拾取颜色吗?

标签: vim powershell colors cmd


【解决方案1】:

这似乎是不可能的。

【讨论】:

  • 找到合适的替代品了吗?只是想知道在 powershell 下可以承受什么......
  • 很遗憾没有。我最终还是留在了 Cygwin,因为无论如何我都能在那里完成 99% 的任务。
【解决方案2】:

你有没有将colorscheme desert 添加到你的_vimrc 中?当我从 powershell 或 cmd 调用时,它会设置 gvim 颜色。添加它时我遇到的唯一问题是找到“正确的” _vimrc 但运行 :set 运行时路径?在 vim 中处理了这一点。

【讨论】:

  • 是的,我在 Vim 的主目录中只有一个 _vimrc 文件(在我的配置文件中没有)。它由 gVim 读取。运行 :set runtimepath 会按预期显示程序文件 vim73 目录,这就是我的 _vimrc 文件所在的位置。是否有其他或其他需要注意或查看的内容?
  • 我能想到的唯一另一件事是启动 gvim,然后在菜单中单击 Edit -> Startup Settings。它将打开它在启动时读取的 _vimrc。确保“colorscheme Desert”在那里,并寻找其他可以改变/覆盖它的东西。如果这没有帮助,除了将我的 _vimrc 发送给您进行比较/测试之外,我没有其他想法。
  • 这不是问题的确切场景,但是当使用 Powershell ssh 进入 Linux 机器时,知道修复 vi 中令人讨厌的颜色真是太好了。蓝色背景上不再有看不见的蓝色字母。谢谢。
【解决方案3】:

与所有终端一样,PowerShell 定义了一组有限的颜色,供在其中运行的应用程序使用。请参阅this answer 了解如何找出哪些。因此,如果您想准确地重新创建沙漠主题,则需要修改您的 PowerShell 颜色。

【讨论】:

    【解决方案4】:

    你可以在启动 vim 之前尝试:$Host.UI.RawUI.BackgroundColor = 'black'...

    【讨论】:

      猜你喜欢
      • 2013-05-18
      • 1970-01-01
      • 2019-10-17
      • 1970-01-01
      • 2019-11-29
      • 2020-04-29
      • 1970-01-01
      • 1970-01-01
      • 2013-06-25
      相关资源
      最近更新 更多