当我在Visual Studio code中保存文件时,我想使用内置格式化器自动格式化TypeScript代码。

我知道下面的选项,但没有一个足够好:

格式手动Shift + Alt + F 格式输入“编辑器”。formatOnType”:真正的 当你按回车键时,它会格式化行。不幸的是,当您用鼠标单击另一行或按上下箭头时,它会保持未格式化。 使用现有扩展 我试过这个方法,但效果不太好。 使用美化“美化”。onSave”:真正的 它不适用于TypeScript 编写自定义扩展 如果你想正确地处理自动保存和构建,这是很棘手的。


2016年9月(VSCode 1.6),现在正式支持。

将以下内容添加到设置中。json文件:

"editor.formatOnSave": true

如果你想在保存Javascript源代码时自动格式化,请将此添加到用户设置中(按CmdShiftP或CtrlShiftP,然后键入打开设置(JSON)来打开设置。json文件)

"[javascript]": { "editor.formatOnSave": true }

对于MAC用户, 将这一行添加到默认设置中

文件路径为:/Users/USER_NAME/Library/Application Support/Code/User/settings.json

“tslint。autoFixOnSave”:真正的

该文件的示例如下:

{
    "window.zoomLevel": 0,
    "workbench.iconTheme": "vscode-icons",
    "typescript.check.tscVersion": false,
    "vsicons.projectDetection.disableDetect": true,
    "typescript.updateImportsOnFileMove.enabled": "always",
    "eslint.autoFixOnSave": true,
    "tslint.autoFixOnSave": true
}

不再需要添加命令。对于那些刚接触Visual Studio Code并正在寻找保存时格式化代码的简单方法的人,请遵循以下步骤。

在Mac中按[Cmd+,](或在Windows/Linux中按[Ctrl+,])或使用下面的截图打开设置。

在搜索框中输入“format”,并启用“format On Save”选项。

你完成了。谢谢你!


eslint:

"editor.codeActionsOnSave": { "source.fixAll.eslint": true }

对于任何语言的neet格式,您都可以使用更漂亮的代码格式化器。 应用后,你可以格式化代码Alt + Shift + f


经过几个小时的挣扎……以下步骤是有效的。 详情如下。

安装这个扩展

https://marketplace.visualstudio.com/items?itemName=pucelle.run-on-save

添加以下json到下面的文件:

文件:

<your-project-directory>\.vscode\settings.json
    OR
%UserProfile%\AppData\Roaming\Code\User\settings.json

JSON:

注意:请确保在下块之前和之后使用逗号。

    "files.autoSave": "afterDelay",
    "files.autoSaveDelay": 1000,
    "runOnSave.statusMessageTimeout": 3000,
    "runOnSave.commands": [
        {
            "match": ".*\\.*",
            "command": "editor.action.formatDocument",
            "runIn": "vscode"
        }
    ],

现在,当代码被更改时,1秒后,它会被自动格式化和保存。


对我来说,formatOnSave不起作用,因为我已经安装了更漂亮的格式器,还没有在内置和更漂亮的默认格式器之间做出选择。

为了触发选择对话框,我必须在json文件上按Alt + Shift + f。


除了启用保存格式设置,对于python开发人员,您可能需要安装autopep8包,这是vscode默认使用的,用于保存python代码时格式化代码。

pip install autopep8

然后,按CTRL + s查看更改。


首先,您需要选择刚刚作为扩展添加的格式化程序。 按ctrl + alt + f并从下拉菜单中选择你想要的格式化程序。 张贴与每次保存它将自动格式化。


避免冲突的最好方法是为每种语言定义单独的格式化器,例如,如果我使用Rust和Typescript,我想分别使用扩展Rust- analyzer和pretty来格式化代码,因此在我的.vscode/settings.json中:

{
  "editor.defaultFormatter": null,
  "[rust]": {
    "editor.defaultFormatter": "rust-lang.rust-analyzer",
    "editor.formatOnSave": true
  },
  "[typescript]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode",
    "editor.formatOnSave": true
  }
}

请记住,必须首先安装Prettier和rust-analyzer扩展。


转到设置和搜索格式 检查编辑器:格式保存

或者遵循以下步骤


如果你用pretty和这条线

“编辑器。formatOnSave”:真正的

在保存时不能格式化,您可能需要在settings.json中添加另一个命令

“editor.defaultFormatter”: “esbenp.prettier-vscode”,