created: 2024-03-13T08:05:33.916Z

インデントをハードタブで開発しているプロジェクトを触る時の vscode ワークスペースファイルの設定

jQUeryDataTable のバグを見つけたのでなおそうとしたら tab インデントだった。

(as you will see all source files use tabs).

タブインデントでは insertSpaces: false という設定を使うらしいが、 editor.insertSpaces": false を設定したが思うように効かなくて、formatOnSave とかも変更しないといけなかった(ちょっとハマって悔しい)

最終的にワークスペース用のこんなファイルを置いて適応した。

{
  "folders": [
    {
      "path": "."
    }
  ],
  "settings": {
    "editor.insertSpaces": false,
    "editor.formatOnSave": false,
    "editor.formatOnPaste": false
  }
}

原因

editor.insertSpaces": false を設定したが思うように効かなくて

User/settings.json にこんな設定が入っていて、それがタブインデントを妨げていた。

  "[javascript]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode",
    "editor.formatOnSave": true,
    "editor.tabSize": 2
  },
ユーザーの問題解決とプロダクトの成功を導く エンジニアのためのドキュメントライティング
[ad] ユーザーの問題解決とプロダクトの成功を導く エンジニアのためのドキュメントライティング
ジャレッド・バーティ, ザッカリー・サラ・コ―ライセン (単行本)