【问题标题】:How to Disable the Insertion of semicolon in PhpStorm Upon Code Completion如何在代码完成后禁用在 PhpStorm 中插入分号
【发布时间】:2019-01-11 06:24:45
【问题描述】:

在编写 CSS 属性时,PhpStorm 的代码完成功能会自动在行尾插入分号。当我映射网格区域和其他长值属性时,我发现这很烦人..

是否有防止代码完成自动插入分号的选项?

【问题讨论】:

  • AFAIK 这是不可能的。附言据我了解,您正在谈论这样的事情(简化版本,假设整个内容在一行上):color: dark 并且您选择完成(例如darkred)所以它变成color: darkred; 或者它可能是别的什么?在这种情况下,欢迎提供一些代码示例。
  • 这正是我的意思,例如 gta 解析为 grid-template-areas 这真的很酷,但令人讨厌的部分是我要么必须删除自动分号,要么在长途旅行中将它拖到我身边同时定义其余区域名称
  • 使用gta 作为缩写创建自定义实时模板,可以扩展为您想要的任何内容。现在gta 建议grid-template-areas 属性(标准完成搜索AFAIK,因为它匹配目标属性名称部分的第一个字母)并使用与目标语言相同的标准方式完成它。
  • 会尝试并报告..
  • 所以..你试过吗?好用吗?

标签: intellij-idea phpstorm webstorm jetbrains-ide


【解决方案1】:

尝试更改实时模板设置(编辑器 > 实时模板)并打开“Zen CSS”部分。
每个缩写都有一个模板文本,
在这里,您可以删除您遇到此问题的缩写的分号。

据我所知,没有一揽子选项可以删除内置实时模板中的所有分号。
此外,据我所知,Zen CSS 模板用于常规 CSS 文件,但我不知道 Zen CSS 是常规 CSS 还是特定语言/样式。

【讨论】:

  • 仅供参考:“Zen CSS”基本上是 Emmet 的标准缩写(至少在这个 IDE 中是这样处理/实现它们的——在 Emmet 出现之前,实时模板已经存在了很长一段时间)。它们不涵盖完成的所有可能方面(例如值.. 或者如果您已经输入了缩写词——那么提供的是实际属性而不是实时模板条目)
  • 我禁用了整个 Zen CSS 部分,但编辑器仍然能够将我提供的缩写转换为代码/属性.. 无论如何感谢您的回复
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-30
  • 1970-01-01
  • 2012-10-18
  • 2016-10-28
  • 2015-08-19
  • 1970-01-01
相关资源
最近更新 更多