VSCode 没有自动完成 HTML

VSCode not auto completing HTML

我在 Windows 7 上新安装的 Visual Studio 代码遇到问题。 在 Mac 上,编辑器会自动关闭 html 标签,但在我的 Win7 上不会。我想一定有一些选项可以打开它,但我找不到。

我说的是什么时候。写入 <html 会弹出智能感知,然后单击回车,通常它会自动输入 </html> 我的不起作用。 (IntelliSense 弹出,但是当您 select 选项之一时它不会自动关闭标签:<h1> -> </h1>

来自0.3.0 release notes

HTML auto closing of tags has now been removed and replaced with smarter IntelliSense on </.

键入标签名称(不开始 <)然后按 Tab

例如键入 div 然后按 Tab 键,VS 会将其转换为 <div></div>

或输入开始标签,然后按 Tab 键两次

例如:

  1. 输入<div
  2. 按 Tab
  3. 按 Tab

它将添加结束标记

您可以尝试 extension VS Code。已经实现自动关闭标签功能,满足您的要求:

  • 当您输入开始标记的右括号时自动添加结束标记
  • 插入结束标签后,光标在开始和结束标签之间

这里有一个很酷的技巧(实际上是 Emmet 的缩写) :

  • 写标签名称 | 例如h1
  • 在其后添加一个星号 | 例如h1*
  • Tab |(将得到 <h1></h1>

PS: 这也适用于自闭合标签,例如 - inputimg 等.

文件 > 首选项 > 键盘映射, 搜索 'Auto close' 并单击安装。 如果不起作用,请重新加载插件。

我遇到了同样的问题,然后我在 vs code 的右下角看到了一些东西。我没有使用 HTML,而是使用 Django-HTML,所以我更改了语言至 html,Boom 一切正常。see image

我在 Mac Sierra (10.12.6) 和 VSCode (1.30.2) 上编辑 HTML 文件时遇到了同样的问题。根据 vscode 文档 https://code.visualstudio.com/docs/languages/html,智能感知应该开箱即用。

原来"Language Detection"(屏幕底部编辑器状态栏右上角)设置为自动检测,识别文件为django-html。当手动切换回普通 Html 时,一切正常。

我遇到了同样的问题,然后我从 VS Code 中卸载了不必要的扩展以及 JavaScript (SE) 扩展,它对我有用。

  1. Ctrl + Shift + P打开命令面板。
  2. 在搜索器中输入'Change Language Mode'
  3. Select 'Change Language Mode'.
  4. 在搜索器中输入'HTML'
  5. 和select'HTML'(大概是设置成'django-html)

Ctrl + Shift + P打开命令。 然后,键入 Change Language Mode 和 select HTML 或任何其他所需的语言。

只需检查 vscode 的底部并将语言模式更改为 HTML 它可能一直在显示 django-html 或单击 ctrl + shift + p 更改语言模式 Screenshot

现在点击 [!] + TAB 瞧,完成了!!!

++ --> 输入 --> 然后 select

对我有用。

如果你输入

div.class

然后按TAB,VS code会自动用给定的关闭DIV标签CLASS

但我认为你想通过按 ENTER 键来执行此操作。

在这种情况下,转到您的 VS Code 用户设置并粘贴以下代码:

"emmet.includeLanguages": {
    "javascript": "javascriptreact",
    "vue-html": "html",
    "razor": "html",
    "plaintext": "jade"
}

现在如果你输入

div.class

&然后按ENTER键,就可以看到神奇了。

但是,上面的代码将使您的 VS Code 使用 ENTER 键自动完成,而不仅仅是正常的 HTML还有 React 的 JSX,Vue.js 片段 也将被覆盖。

但是如果你只想为 HTML 文件做这件事,下面一行就足够了:

"emmet.includeLanguages": { "javascript": "html" }

干杯..

  1. 列表项转到设置:文件 -> 首选项 -> 设置(Ubuntu 中的 CTRL + COMMA 快捷键)。
  2. 在搜索栏中输入 Emmet
  3. 找到选项卡上的触发器扩展并检查它。

从 Django-html 更改为 html .

如果你想保留“Django HTML”作为文件语言并且仍然有自动关闭标签,只需将以下内容添加到 settings.json(前提是你有 auto close tag已安装扩展):

  "auto-close-tag.activationOnLanguage": [
    "django-html",
    (...other languages if needed)
  ],