VSCode 中的 .ejs 格式化

3

这是我的问题 - 它难以阅读

unreadable code

为了让.ejs在一般情况下工作,我迄今为止已经添加了以下内容。我还有保存格式和漂亮的设置。我正在寻找提议以获得更好的格式化,以便我可以阅读它。
"files.associations": {
    "*.ejs": "html",
    "*.css": "postcss"
},
"emmet.includeLanguages": {
    "postcss": "css",
    "ejs": "html"
},
"emmet.syntaxProfiles": {
    "postcss": "css",
    "ejs": "html"
}
2个回答

2

我知道这是一个老问题,但在VSCode中使用.ejs仍然是一个问题。但我找到了解决方案(对于?分隔符)

  1. 安装EJS语言支持插件
  2. 现在你有了ejs支持、高亮和片段,但是一些标签比如
<? for( let item of array ) { ?>
(some data)
<? } ?>

默认的HTML格式化程序可能会导致格式错误。

  1. 为了解决这个问题,您可以尝试将自定义分隔符设置为“?” ejs.delimeter = '?' 。现在您可以正确缩进<? ... ?>标签。
  2. 要使用带有我们自定义定界符的代码片段,您需要编辑扩展片段(或添加自己的片段):安装Snippets Ranger插件,然后找到所需的扩展并编辑其文件。 Snippets Ranger 是非常方便的工具。

我希望我能帮助某人为 .ejs 文件设置 VSCode。


重新安装了VSCode,又使用了自己的解决方案,哈哈) - Victor Gorban

0
我建议使用EJS语言支持,根据他们的说法,它包括EJS、Javascript和HTML标签的语法高亮,并且还包括Javascript自动完成功能。如果你对Linter感兴趣,你应该看看EJS-Lint,根据他们的说法。
EJS-Lint解析脚本标签(<%,%&gt;,&lt;%_,_%&gt;和 -%&gt;)。 它忽略所有其他标签(即<%=)。
注意:此linter不尝试检查未关闭的EJS标记,因此如果您收到带有不包含任何脚本标记的行号的Unexpected token错误,则很可能之前忘记了关闭标记。
它还设置为通过忽略它们来处理旧式包含(<% include filename%>)。 无论包含的方法如何,它都不会对包含的文件进行lint。
它可以与自定义分隔符一起使用,只需在选项中传递它(如果使用API),或在CLI上传递--delimiter(-d)标志即可。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接