如何在自动保存时向 Dart 代码添加分号?

kip*_*ipe 11 dart visual-studio-code automatic-semicolon-insertion

我来自默认不使用分号的语言,而且我总是忘记添加分号。而且打字也很烦人;每时每刻。

有没有 VS Code 插件可以在保存时自动添加分号?

如果在 VS Code 中不可能,那么在其他编辑器(如 IntelliJ 或其他编辑器)中是否可以?

小智 28

对于任何寻找此问题答案的人,请将其添加到 VSCode 中的 settings.json 中:

"editor.codeActionsOnSave": {
  "quickfix.insertSemicolon": true,
},
Run Code Online (Sandbox Code Playgroud)


Gpa*_*ack 0

目前这还不能直接实现。您可以尝试此扩展:https://marketplace.visualstudio.com/items?itemName =vmsynkov.colonize

  • 正如 @julemand101 所说,不可能自动将缺少的分号添加到 Dart 文件中,并且确保不会破坏其他正确的程序。语法与分号无关,不足以实现这一点。在某些地方,您可以*安全地*插入分号,程序在使用分号和使用分号时都是“正确的”(语法上和静态类型分析),但如果添加分号,*含义*就会改变。如果您对“我应该在此处插入分号”算法中的潜在误报感到满意,我确信可以启发式地做*某事*。 (3认同)
  • @kipkipe Dart 中的分号是语言语义的一部分,它是根据你有分号的事实来设计的,因此你不能在所有情况下自动确定分号应该放在哪里,因为它可以改变程序的执行方式。 (2认同)