如何在Atom文本编辑器中通过filetype创build默认语法?
我希望我的.ejs文件具有html语法,但是,它始终以纯文本forms打开文件。
在崇高,你可以select“打开所有与当前扩展为…”,然后select你的语法。
我看到你可以改变左下angular的语法
如何用特定的语法打开某种types的文件?
简单模式:包括
如果你的语言真的只是HTML,你可以设置一个简单的包来处理这个问题。
创build一个名为langugage-ejs
的包,在grammars/ejs.cson
您可以将HTML包含为您关心的模式:
'fileTypes': [ 'ejs' ] 'name': 'Embedded JavaScript' 'patterns': [ { 'include': 'source.html' } ] 'scopeName': 'source.ejs'
语言ipynb当然通过扩展JSON来做到这一点。
那么我的模板标签呢?
但事实上,你可以在HTML的顶部使用模板标签来使编辑器识别。 我能find的最好的例子是erb(embedded式Ruby模板) 。 它来源于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' } ] ...
这是Atom核心,你不需要那个文件types包。
在我工作的地方,我们使用.phl作为某种types的PHP文件。 为了告诉Atom这个,像这样编辑config.cson
:
core: customFileTypes: "text.html.php": [ "phl" ] themes: [ // snip
你可以在~/.atom/config.cson
find这个文件,或者在Settings窗口中点击“Open Config Folder”button。
很容易出错,正如人们在GitHub上针对该function所做的许多错误所certificate的那样。
编辑:自从我写这个答案的时候,这个function已经添加到Atom核心,看到这个答案的细节。
文件types的Atom包
( https://atom.io/packages/file-types )
它完全符合标题问题要求:您可以通过简单编辑config.cson
文件来为现有语言定义新的文件扩展名。
对于单个文件,您可以使用语法select器; Ctrl + Shift + L来设置你在那个文件上使用哪种语言。 与自动检测不同,但在您使用不需要设置默认值的文件时有用。
看起来好像有一个全新的包已经发布了。 https://atom.io/packages/language-ejs 。
例如,如果要使用JavaScript语法打开所有.jsx
文件,则需要将其添加到config.cson
"*": core: customFileTypes: "source.js": [ "jsx" ]
这将所有.jsx文件映射为使用js语法打开。
正如戴夫·安德森(Dave Andersen)在埋葬评论中提到的那样,现在可以在没有任何额外的软件包的情况下做到这一点, 这里logging下来 。
- RichFaces Vs PrimeFaces(用于性能)
- 在<ui:repeat>中的<p:graphicImage>中显示数据库blob图像
- PrimeFaces 4.0 / JSF 2.2.x中的AJAX无法使用file upload – javax.servlet.ServletException:请求内容types不是多部分/表单数据
- 什么时候最好在Java中使用volatile布尔值而不是AtomicBoolean?
- 如何在ui:repeat中使用DefaultStreamedContent的<p:graphicImage>?
- 推迟加载和parsingPrimeFaces JavaScript文件
- 什么是构build的Visual Studio代码编辑器
- 如何在PrimeFaces中使用jQuery和jQuery插件
- 通过PrimeFacesinput组件检索的Unicodeinput已损坏