idea配置html和javascript的格式化文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了idea配置html和javascript的格式化文件?相关的知识,希望对你有一定的参考价值。

希望类似于eclipse内使用xml配置文件,使得按照配置文件来格式化。目前有eclipse下的配置文件,使用的方案是eclipse code format插件,仅可以格式化java文件,htmljavascript的格式化怎么配置

参考技术A

追问

我这边有一个eclipse下格式化JavaScript的xml配置文件。我想使用这个配置文件。

    当我在图上“方案”处导入xml配置文件,并且选择使用该配置时,全局的配置都会变成我设置的这个

    “制表符和缩进”到“排列”这些tab上设置,和我使用配置文件的意图不一致

请文字结合图片说明下怎么设置。

如何配置 intellij-idea 不格式化代码的某些部分?

【中文标题】如何配置 intellij-idea 不格式化代码的某些部分?【英文标题】:How to config intellij-idea not format some part of the code? 【发布时间】:2012-12-10 19:23:48 【问题描述】:

在一个html文件中,有一些代码使用了自定义模板语言:

<script type="text/javascript">
    function ($scope, JsRoutes) 
        $scope.rows = [
            $"#list rows, as: 'row', separator: ','"
            
            #list fieldConfigs, as: 'f', separator: ','
            $f.name : $'$'row.$f.name.toJson()#/list
            
            $'#/list'
        ]
    
</script>

是否可以将 intellij-idea 配置为不格式化(但格式化文档的其他部分)?由于idea在格式化后会让人难以阅读:

<script type="text/javascript">
    function ($scope, JsRoutes) 
        $scope.rows = [
            $"#list rows, as: 'row', separator: ','"
            
    #list fieldConfigs, as: 'f', separator: ','
    $f.name :
        $'$'
            row.$f.name.toJson()
        #/list
    
    $'#/list'
    ]
    
</script>

【问题讨论】:

How to disable code formatter for some part of the code? 的可能重复项 【参考方案1】:

此功能已实现,您现在可以使用特殊 cmets 禁用代码区域的格式化。

在设置中启用此功能后,在您所在区域的开头添加//@formatter:off,并在其末尾添加//@formatter:on

这些是默认标记,它们是可配置的。

你可以找到more details and examples in the documentation:

Skipping a region when reformatting source code Example of using formatting markers

2012 年的原始答案:

目前还不可能,请为这个功能请求投票:

IDEA-56995 使用 cmets 禁用每个区域的代码格式化

【讨论】:

我不想在我的代码中使用 cmets 只是为了让 intellij 不破坏我的缩进,我一直在努力对齐,例如定义属性。此设置应在整个项目中可用,无需评论。但是当我说格式或缩进时,我希望能够重新格式化。现在我可能会通过遍历 Java 代码样式和复选框来完全关闭该功能。 此问题已修复 - 请参阅下文了解如何启用它。【参考方案2】:

值得注意的是,格式化程序控件似乎在 javadoc cmets 中不起作用。它必须是常规的 C 或 C++ 风格的注释。所以// @formatter:off 有效,/* @formatter:off */ 也有效,但 /** @formatter:off */ 无效。

【讨论】:

【参考方案3】:

在我的 EAP 13.1 版本中,您必须在设置中启用以下选项,

Preferences -> Code Style -> General -> Formatter Control -> Enable formatter markers in comments

在您可以使用这些 cmets 之前,

// @formatter:off

// @formatter:on 

或这些(取决于语言):

<!--@formatter:off-->

<!--@formatter:on-->

截图:

【讨论】:

这对我有用,谢谢!我认为这应该是公认的答案,因为它同时作为 IntelliJ IDE 的一项功能添加。【参考方案4】:

由于EAP 13,您可以使用以下 cmets 触发格式化程序:

// @formatter:off
...
// @formatter:on 

要在“环绕”中启用它,您可以在“环绕”部分中定义一个实时模板:

// @formatter:off
$SELECTION$
// @formatter:off

您可以在Settings -> Code Style -> General 中找到这些设置并设置您自己的触发词。

【讨论】:

以上是关于idea配置html和javascript的格式化文件?的主要内容,如果未能解决你的问题,请参考以下文章

IDEA插件开发(11)---插件配置文件

IDEA配置 及 快捷键

hijson配置jdk

file mask 是什么idea 配置file mask​html include

IDEA全局配置

黑科技:通过 Google Java Style 文件配置 IDEA 和 Ecplise 代码风格