【问题标题】:IntelliJ: how to force editor to treat a file as javascript?IntelliJ:如何强制编辑器将文件视为 javascript?
【发布时间】:2011-04-26 12:36:51
【问题描述】:

我正在 IntelliJ 10 中创建一个 Grails 应用程序,并有一个动态创建的 javascript 文件,作为 Grails 视图。

因此,javascript 文件不以“.js”结尾。它以 '.gsp' 结尾,因为它是一个输出 javascript 的 Groovy 服务器页面。

IntelliJ 不知道它是一个 javascript 文件,因此它不会给我代码完成或警告。

我希望我的代码完整并进行语法检查!有没有办法强制 IntelliJ 将此特定文件视为 Javascript,而不会弄乱 IntelliJ 在其他任何地方对 .gsp 文件的正确处理?

谢谢!

【问题讨论】:

    标签: javascript intellij-idea code-editor


    【解决方案1】:

    上面的答案有些过时了。您可以通过执行以下操作在 IntelliJ 14 中执行相同操作:

    1. 转到Preferences(Mac OSX:Cmd + 逗号)
    2. Editor -> File Types
    3. Recognized File Types 中突出显示JavaScript files (JavaScript)
    4. Registered Patterns 下按+ 按钮
    5. 输入您的正则表达式模式(例如:*.js.scala.html)并按 OK

    干杯!

    【讨论】:

    • 它可能也适用于其他 Jetbrains 产品...... Jetbrain 的其他 IDE 是 PhpStorm、PyCharm、RubyMine、AppCode 和 CLion(在这里提到它们,这样人们可能会偶然发现这个答案)
    • 另外,如果您不小心为特定文件添加了错误的文件关联(例如忘记扩展名后的纯文本),您可以找到它并将其从文件类型下的列表之一中删除。跨度>
    • 另一种情况:您创建一个没有扩展名的新文件,接受 Intellij 认为是某种新类型文件的默认类型分配(文本)。后来您决定添加扩展名并以某种方式同意添加新文件名以映射到文本类型(很着急......?),您想知道为什么文件不会显示代码格式!将确切的文件名添加到要映射到的文件类型中,Intellij 会询问您是否要从以前的类型设置为(可能是文本)重新映射它,同意,应用,然后您可以根据需要将其删除.
    【解决方案2】:

    您可以在Settings(Mac 上为Preferences)中的JavaScript 中添加额外的扩展| File Types.

    另见Settings | Template Data Languages 您可以在其中将项目中的某些文件配置为生成指定语言的模板,以获得正确的代码完成。

    【讨论】:

    • 谢谢。所以......有问题的扩展名是.gsp。如果我在设置中将 .gsp 链接到 Javascript |文件类型,我不会丢失所有 other .gsp 文件中突出显示的 Groovy Server Page 语法吗?
    • 您可以,但是您可以使用完整的文件名作为模式。
    • 此答案已过时,请参阅下面针对 IntelliJ 14+ 的答案。
    • @monarch 没有过时,我已经添加了当前版本的截图。
    猜你喜欢
    • 1970-01-01
    • 2020-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-12
    • 2021-05-31
    • 1970-01-01
    相关资源
    最近更新 更多