NetBeans 10:如何设置接口方法自动换行的Alt+Shift+F格式化?
我太懂你的烦恼了——NetBeans 10的Alt+Shift+F自动格式化在类定义里能乖乖给方法插入换行,可到了接口里就完全没反应,翻遍Options > Editor > Formatting > PHP > Blank Lines也找不到对应的设置项。别慌,咱们可以通过自定义格式化配置来解决这个问题,具体步骤如下:
导出当前格式化配置(推荐)
先打开NetBeans,进入Tools > Options > Editor > Formatting,在语言下拉框选PHP,点击右下角的Export...按钮,把当前的格式化规则导出成XML文件。这么做是为了在你现有习惯的基础上修改,避免从头配置所有规则。修改XML配置文件
打开刚才导出的XML文件,找到和类方法换行相关的规则块,比如你之前生效的类方法换行规则可能长这样:<rule name="BLANK_LINES_BEFORE_CLASS_METHOD" value="1"/> <rule name="METHOD_DECLARATION_BEFORE_BODY" option="NEW_LINE"/>接下来你要添加对应的接口方法规则,只需要把规则名里的
CLASS替换成INTERFACE就行,比如:<!-- 给接口方法前添加空行 --> <rule name="BLANK_LINES_BEFORE_INTERFACE_METHOD" value="1"/> <!-- 接口方法声明和方法体之间换行 --> <rule name="INTERFACE_METHOD_DECLARATION_BEFORE_BODY" option="NEW_LINE"/>如果你要调整空行数量,把
value="1"改成你想要的数字就行(比如0就是不留空行)。导入修改后的配置
回到NetBeans的Formatting设置页面,点击Import...,选择你修改好的XML文件,点击OK保存配置。测试效果
打开一个PHP接口文件,写一段测试代码:interface Foo1 { public function bar(); public function baz(); }按下
Alt+Shift+F,看看是不是接口里的方法已经按照你的要求自动插入换行/空行了~
要是你找不到对应的规则名,可以在NetBeans的内置帮助里搜索「PHP Formatting Rules」,里面会列出所有可用的规则名称,找和接口方法相关的就行,命名逻辑和类方法基本一致。
内容的提问来源于stack exchange,提问作者IMB

