Brandon Castillo Asked: 2020-05-24 10:54:10 +0800 CST 2020-05-24 10:54:10 +0800 CST 2020-05-24 10:54:10 +0800 CST 大括号设置 - Visual Studio Code 772 我正在使用扩展PHP Formatter并订购我使用 Shift + Alt + F 的代码,结果如下: 我需要的是这样的: 当我执行自动排序时,如何使代码中的花括号不换行PHP Formatter? 首先,谢谢。 vscode 2 Answers Voted Best Answer user128841 2020-06-18T14:27:17+08:002020-06-18T14:27:17+08:00 您可以通过以下方式编辑PHP Formatter扩展的转换配置: 文件 > 首选项 >设置 您要更改的样式名为 Allman,扩展名中的名称为AllmanStyleBraces。 有趣的是,除了Allman ,还有更多的写法: 除了PHP Formatter 中的AllmanStyleBraces之外,您可以在此处查看有关您想要更改的首选项的更多信息。 在Stack Overflow 的另一个领域,他们也遇到了同样的问题,但情况正好相反。 Orici 2020-06-18T14:58:10+08:002020-06-18T14:58:10+08:00 如果扩展名是我的想法, sophisticcode的 php-formatter ,看到描述: Sensiolabs PHP CS Fixer 的包装器。分析一些 PHP 源代码并尝试修复编码标准问题(PSR-1 和 PSR-2 兼容)。 我会告诉你,PHP 方法/函数声明的下一行的大括号是 PSR-2 标准的规范之一,通常默认应用。 如果您不想使用工具应用的“规则”,则必须更改它们。配置说明页面如下:https ://github.com/Dickurt/vscode-php-formatter/wiki/Configuration 。对于您想要的用途,您必须创建一个配置文件,其中指定要应用的规则,从列表中选择您需要的。 作为示例提供的配置文件是这样的: <?php $finder = Symfony\Component\Finder\Finder::create() ->files() ->in(__DIR__) ->exclude('vendor') ->exclude('resources/views') ->exclude('storage') ->exclude('public') ->notName("*.txt") ->ignoreDotFiles(true) ->ignoreVCS(true); $fixers = [ '-psr0', '-php_closing_tag', 'blankline_after_open_tag', 'double_arrow_multiline_whitespaces', 'duplicate_semicolon', 'empty_return', 'extra_empty_lines', 'include', 'join_function', 'list_commas', 'multiline_array_trailing_comma', 'namespace_no_leading_whitespace', 'no_blank_lines_after_class_opening', 'no_empty_lines_after_phpdocs', 'object_operator', 'operators_spaces', 'phpdoc_indent', 'phpdoc_no_access', 'phpdoc_no_package', 'phpdoc_scalar', 'phpdoc_short_description', 'phpdoc_to_comment', 'phpdoc_trim', 'phpdoc_type_to_var', 'phpdoc_var_without_name', 'remove_leading_slash_use', 'remove_lines_between_uses', 'return', 'self_accessor', 'single_array_no_trailing_comma', 'single_blank_line_before_namespace', 'single_quote', 'spaces_before_semicolon', 'spaces_cast', 'standardize_not_equal', 'ternary_spaces', 'trim_array_spaces', 'no_useless_else', 'unalign_equals', 'unary_operators_spaces', 'whitespacy_lines', 'multiline_spaces_before_semicolon', 'short_array_syntax', 'short_echo_tag', 'concat_with_spaces', 'ordered_use', ]; return Symfony\CS\Config\Config::create() ->level(Symfony\CS\FixerInterface::PSR2_LEVEL) ->fixers($fixers) ->finder($finder) ->setUsingCache(true); 您应该从尽可能完整的文件开始,并丢弃您不想使用的文件。执行您要避免的行为的规则是:大括号,所以不要将它添加到规则列表中。
您可以通过以下方式编辑PHP Formatter扩展的转换配置:
您要更改的样式名为 Allman,扩展名中的名称为AllmanStyleBraces。
有趣的是,除了Allman ,还有更多的写法:
除了PHP Formatter 中的AllmanStyleBraces之外,您可以在此处查看有关您想要更改的首选项的更多信息。
在Stack Overflow 的另一个领域,他们也遇到了同样的问题,但情况正好相反。
如果扩展名是我的想法, sophisticcode的 php-formatter ,看到描述:
我会告诉你,PHP 方法/函数声明的下一行的大括号是 PSR-2 标准的规范之一,通常默认应用。
如果您不想使用工具应用的“规则”,则必须更改它们。配置说明页面如下:https ://github.com/Dickurt/vscode-php-formatter/wiki/Configuration 。对于您想要的用途,您必须创建一个配置文件,其中指定要应用的规则,从列表中选择您需要的。
作为示例提供的配置文件是这样的:
您应该从尽可能完整的文件开始,并丢弃您不想使用的文件。执行您要避免的行为的规则是:大括号,所以不要将它添加到规则列表中。