【问题标题】:How can I make hard-coded strings heinous-looking in VIM?如何在 VIM 中使硬编码的字符串看起来令人发指?
【发布时间】:2009-02-16 01:46:17
【问题描述】:

我受到this(第 2 号)的启发,让我的硬编码字符串变得丑陋。

如何在 VIM 中做到这一点?

【问题讨论】:

  • 只是想知道;你讨厌字符串变量类型吗?
  • @Suroot:应该避免硬编码字符串,就像避免源代码中的“魔术”数字一样。使硬编码的字符串变得丑陋只会让它们脱颖而出,这样您就可以更轻松地发现它们并删除它们。
  • 我不同意,比尔。硬编码的字符串有时不利于翻译,但它们没有幻数那么糟糕,因为它们在内容中包含了定义。字符串“无法打开文件”与 ERR_CANNOT_OPEN_FILE 一样好。
  • 即使是国际节目,也只需要翻译用户希望看到的那些字符串。对于只有(例如说英语的)开发人员才能查看的日志消息,这样做没有意义。

标签: colors vim


【解决方案1】:

基于语言的文件存储在$VIMRUNTIME/syntax 中,每种语言一个.vim 文件,因此您需要去那里进行更改。

例如,我的 C 文件存储在 C:\Program Files\Vim\vim70\syntax\c.vim 中,如果您在接近结尾处添加以下行,在 let b:current_syntax = "c" 之前,您将获得您需要的确切效果:

hi String guifg=#ff0000 guibg=#ffff00

对于基于文本的 VIM,需要使用 ctermfg 和 ctermbg 选项,例如:

hi String ctermfg=Red ctermbg=Yellow

我没有测试过这些,因为我现在只使用 gvim。

【讨论】:

    【解决方案2】:

    在你的 .vimrc 中:

    highlight String guifg=1 guibg=11
    

    【讨论】:

    • hm... 这可能取决于设置。这对我不起作用。不过,您可能已经给了我足够的资源来狩猎和啄食。谢谢!
    • 假设gvim。对于命令行版本,使用 ctermfg 和 ctermbg。另外,你需要调整语法高亮。
    • 唷!太可恶了!谢谢:)
    【解决方案3】:
    highlight clear String
    highlight link String Error
    

    有点过头了 IMO,所以你可能不想让它永久化。

    【讨论】:

      猜你喜欢
      • 2013-01-23
      • 2018-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多