2015-02-11 335 views
7

在CheckStyle中有一个模块(File Tab Character),用于检查源代码中是否有制表符。他们的理由是:如何使用CheckStyle要求制表符缩进?

  • 开发商不应该需要配置的文本编辑器的标签宽度,以便能够读取源代码。
  • 从Apache jakarta编码标准:在分布式开发环境中,当提交消息被发送到邮件列表时,如果您使用选项卡,则几乎不可能读取它们。

为了确保有空格正确的号码,有一个附加模块(Indentation)。

我更喜欢使用制表符缩进,并希望将此要求添加到我的CheckStyle文件。我的理由:

  • 开发人员应该配置用于缩进
  • 标签是缩进一个逻辑和可配置的单位空间的机会,n spaces是空间只是一个任意号码。

不幸的是我找不到用CheckStyle做到这一点的一种方法。

回答

7

没有这样做的现成检查,但您可以相应地配置RegexpSinglelineJava检查。下面的配置进入你checkstyle.xmlTreeWalker下:

<module name="RegexpSinglelineJava"> 
    <property name="format" value="^\t* "/> 
    <property name="message" value="Indent must use tab characters"/> 
    <property name="ignoreComments" value="true"/> 
</module> 

它检查是否有缩进空间。设置ignoreComments消除了Javadoc评论在星号前至少有一个空格的问题。

+3

顺便说一句,如果你想查询的Javadoc压痕,太,你可以使用'^ \ t *(?! \ *)'(注意最后的空格!)作为'format'正则表达式并移除'ignoreComments'属性。味道的问题。 – 2015-02-17 19:39:45

0

我们还可以用下面的正则表达式的第一个字之前配置RegexpSinglelineJava检查格式现场

<property name="format" value="^[\t]*[" "]+([\t]*|[" "]+)[a-zA-Z0-9]"/> 

此检查所有空格

相关问题