【问题标题】:Add an empty line at end of file according to PSR-2 on PhpStorm根据 PSR-2 on PhpStorm 在文件末尾添加一个空行
【发布时间】:2016-07-01 09:07:11
【问题描述】:

我使用PSR-2 来设置我的代码样式。

当我大多数时候使用 Codesniffer 检查文件时,我会收到以下错误。

332 | ERROR   | [x] Expected 1 newline at end of file; 0 found

很明显如何解决这个问题。我需要知道的是 PhpStorm 是否有办法添加 1 newline at end of file

我已经从Settings -> Editor -> Code Style -> PHP -> Set From -> PSR-1/PSR-2 加载了预定义的样式,还使用Reformat Code 相应地更改了CS。

除了换行以外,一切都是固定的。我错过了什么吗?

【问题讨论】:

    标签: php phpstorm codesniffer phpcodesniffer psr-2


    【解决方案1】:

    对于如何在 IDE 中为所有文件类型打开它,您已经有了两个答案(简而言之:Settings/Preferences | Editor | General -> Ensure line feed at file end on Save)。

    在现代版本 (2020.3) 中,对该选项进行了一些改写。现在它说Ensure every saved file ends with a line break


    要仅对 .php 文件执行此操作,您可以执行以下操作:

    1. 安装 EditorConfig 插件(如果您还没有安装它)。在现代版本中,它已默认捆绑并启用。
    2. 在您的项目根目录中创建.editorconfig 文件(或您想要应用此类样式的任何文件夹——它将应用于此文件夹及以下文件夹中的文件)。如果您已经有一个 - 打开并检查它
    3. 只为 *.php 文件添加规则 -- 要使用的属性是 insert_final_newline

    一个例子:

    [*.php]
    insert_final_newline = true
    

    链接:

    【讨论】:

    • 对我来说直到我也启用编辑器 -> 常规 -> 虚拟空间 -> 允许在行尾放置插入符号后才能工作
    • 从 PhpStorm 2020.3.2 开始,我看到这个设置的措辞略有不同:Ensure every saved file ends with a line break
    • @KyleTolle 是的,他们似乎不时更改措辞。也可能不是每个人都理解该选项的工作原理......
    • 是的,目前的措辞似乎更清晰,符合我的预期。
    【解决方案2】:

    有人说图片说话声音更大:D

    您需要勾选Ensure line feed at file end on save

    【讨论】:

      【解决方案3】:

      在 PhpStorm 偏好设置中转到:

      编辑器 > 常规

      选中“其他:确保在保存时在文件末尾换行”框。

      请意识到这会影响您在 PhpStorm 中编辑的所有代码文件,而不仅仅是 PHP 文件。

      【讨论】:

        【解决方案4】:

        在设置下:Editor > General点击Ensure line feed at file end on save被选中。

        它会在每个文件(.js、.css、.html)中添加一个新行,但这是我找到的唯一方法,而且它对于允许 PSR-2 来说是一个小成功。

        【讨论】:

          猜你喜欢
          • 2017-10-14
          • 1970-01-01
          • 1970-01-01
          • 2017-10-11
          • 1970-01-01
          • 1970-01-01
          • 2013-10-16
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多