我希望我的.ejs文件具有html语法,但是,它总是以纯文本形式打开文件。
在崇高中,您可以选择“打开所有当前扩展名为...”,然后选择您的语法。
我发现您可以更改左下角
中的语法如何使用特定语法打开具有特定类型的文件?
答案 0 :(得分:6)
如果你的语言真的只是HTML,你可以设置一个简单的包来处理这个问题。
创建一个名为langugage-ejs
的软件包,在grammars/ejs.cson
中,您可以将HTML包含为您关注的模式:
'fileTypes': [
'ejs'
]
'name': 'Embedded JavaScript'
'patterns': [
{
'include': 'source.html'
}
]
'scopeName': 'source.ejs'
language-ipynb肯定是通过扩展JSON来实现的。
实际上,您可以在HTML之上添加模板标签,以便编辑器识别。我能找到的最好的例子是erb (Embedded Ruby templates)。它来自HTML,但也添加了其他标签,如下面的代码段所示:
...
'patterns': [
{
'begin': '<%+#'
'captures':
'0':
'name': 'punctuation.definition.comment.erb'
'end': '%>'
'name': 'comment.block.erb'
}
{
'begin': '<%+(?!>)[-=]?'
'captures':
'0':
'name': 'punctuation.section.embedded.ruby'
'end': '-?%>'
'name': 'source.ruby.rails.embedded.html'
'patterns': [
{
'captures':
'1':
'name': 'punctuation.definition.comment.ruby'
'match': '(#).*?(?=-?%>)'
'name': 'comment.line.number-sign.ruby'
}
{
'include': 'source.ruby.rails'
}
]
}
{
'include': 'text.html.basic'
}
]
...
答案 1 :(得分:5)
对于单个文件,您可以使用语法选择器; Ctrl + Shift + L 设置您在该文件上使用的语言。与自动检测不同,但在您使用不想为其设置默认值的文件时非常有用。
答案 2 :(得分:5)
编辑:自我撰写此答案以来,此功能已添加到Atom核心,有关详细信息,请参阅this answer。
(https://atom.io/packages/file-types)
它完全符合标题问题:您可以通过简单编辑config.cson
文件为现有语言定义新的文件扩展名。
答案 3 :(得分:3)
看起来好像已经为此发布了一个全新的软件包。 https://atom.io/packages/language-ejs
答案 4 :(得分:3)
例如,如果您要使用javascript语法打开所有kitchen verify
个文件,则需要将其添加到UIKit
.jsx
这会将所有.jsx文件映射为使用js语法打开。
答案 5 :(得分:2)
正如Dave Andersen在一篇埋藏的评论中提到的那样,现在可以在没有任何额外包裹的情况下做到这一点并且记录在案here。