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
  },
Efficient Linuxコマンドライン ―開発と自分に磨きをかけるLinuxのテクノロジー
[ad] Efficient Linuxコマンドライン ―開発と自分に磨きをかけるLinuxのテクノロジー
Daniel J. Barrett, 大嶋 真一 (単行本(ソフトカバー))