首页 > 解决方案 > 在 PhpStorm 中按下 Enter 按钮后缩进

问题描述

我已经使用 PhpStorm 很长时间了,之前没有遇到过这个问题。问题是,当我键入一些 pare 标记时,例如<div></div>(从行首有缩进)并且光标位于该标记的中间,并且在我按下 Enter 按钮后,结束标记只是转到开头线。

有趣的事实是.php文件中的一切都很好。只有.html扩展的问题。我只是不知道我能做些什么来让 IDE 像这样。

我已经检查了Preferences -> Code style -> HTML.Everything 中的所有调整与 PHP 中的相同(并且我按下了“恢复默认值”按钮)。

它是这样工作的(按下 Enter 按钮后):

      <div>

</div>

我希望它是这样的:

     <div>

     </div>

标签: phpstormphpstorm-2017.2phpstorm-2018.1

解决方案


从你的另一篇文章:

我首先对标签进行了一些缩进,然后按下“输入按钮”。所以标签的第一部分保持在原来的位置,但另一部分转到行首

因此,您需要手动格式化代码,以便缩进与执行Code > Reformat Code时得到的不同。'Smart indent'(缩进代码Enter- Settings | Editor | General | Smart Keys , Enter部分)不关心您的手动缩进,创建的缩进基于代码样式设置而不是您手动创建的缩进。您可以将其关闭 - 在这种情况下,下一行将始终缩进到与上一行相同的级别。

如果使用Code > Reformat Code重新格式化代码没有帮助,那一定是代码格式化首选项或文件关联的问题...您是否安装了任何自定义插件?例如,Svelte.html插件将文件注册为Svelte Html 组件( https://github.com/dschulten/sveltejs-idea-plugin/issues/2 , https://github.com/dschulten/sveltejs-idea-plugin/issues /6),导致类似的问题。

另请检查是否在设置 |中启用了保留空格选项。编辑 | 代码风格 | HTML | 其他- 当它打开时,现有缩进在重新格式化时不会改变


推荐阅读