【问题标题】:Upper case HTML tags in omni completion for vimvim 全方位补全中的大写 HTML 标记
【发布时间】:2013-11-20 15:53:26
【问题描述】:

目前我不得不写很多 HTML 的东西(很遗憾)。 Vim 是我最喜欢的几乎所有东西的编辑器/IDE。我正在使用 'omni completion' 插件来完成代码,它与 python 和 php 一起工作得很好。它也适用于 HTML,但是它使用大写的 HTML 标签,这真的很烦人。

有没有办法告诉 vim 或 omni 完成大写 HTML 完全没有限制。

【问题讨论】:

  • 这不是我正在寻找的解决方案。我也想用大写字母写文本。更重要的是,这将在故障发生后改变情况。谢谢。
  • 我无法重现这个。除非我明确地以大写字符开头标签名称,否则建议总是小写。有关您的设置的更多信息吗?

标签: html vim omnicomplete


【解决方案1】:

如果您键入的标签以大写字符开头,它应该只提供大写标签名称。

$VIMRUNTIME/autoload/htmlcomplete.vim中有如下代码:

if &filetype == 'html' && exists("uppercase_tag")

因此一种解决方法是将文件类型切换为xml(但它不知道所有HTML标签,只存在于文档中),或者您可以修改脚本并将您的副本放入~/.vim/autoload/htmlcomplete.vim,这样它将覆盖默认值。

【讨论】:

  • 我会冒昧地猜测,如果自动加载脚本设置为使用大写,它也缺少 html 5 的新标签。是否有自定义自动完成脚本的开放存储库OP 可能想要考虑的更现代的?
  • @Anthony:维护者的电子邮件地址在脚本的标题中 - 去向他询问 HTML 5 支持(也许还有一个配置变量来关闭大写),最新(已发布)版本可以在Vim 的 Mercurial 存储库。
  • 我的问答修复是:sed -i '' 's/toupper(/tolower(/g' ~/.vim/autoload/htmlcomplete.vim
【解决方案2】:

我刚刚发现为什么我的设置中会出现同样的问题。我曾经认为它一定是远程插件之一。事实上,它是忽略大小写选项。您是否启用了 smartcase 并不重要。只需运行 se noicset noignorecase

【讨论】:

    猜你喜欢
    • 2010-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-07
    相关资源
    最近更新 更多