Markdownのインデントは半角スペース4つ
Obsidianでブログ記事を触っていると、TABキーでのインデントが半角スペース4つ。
VS Codeだと半角スペース2つなんですよね。
Obsidian気持ち悪いなと思って、ネットで4つにする方法を調べていたら、
Markdownのインデントは
正式には半角スペース4つ
だそうで・・・。
たしかに半角スペース2つで改行の意味を持つしね。
ということで、VS Code側を直しましょう。
VS Codeのインデント設定
ん?
ところがですよ、設定をチェックしたら4つなんです。
ネットやAIを駆使して、情報収集しながら、あーでもないこーでもないと試しまくりましたが、記事のファイルでインデントすると半角スペース2つ・・・。
厳密にはステータスバーに「スペース:2」って出ているので、その時点で結果は分かります。
VS Codeが持つデフォルト設定、ワークスペース設定、ユーザー設定、言語ごとの設定、すべてチェックしたのにさ・・・。
今日、settings.json
と友達になりましたよ。
新規に作成したMarkdownは「スペース:4」って出ます。
そこに記事データを貼り付けてから開き直すと、「スペース:2」ってなります。
あっ
Markdown形式のファイルですが、フロントマターがYaml形式だから、Yamlの設定が怪しい!
ついに気付いちゃったね。
デフォルト設定を見ると、Yamlのインデントは半角スペース2つになっています。
直接この設定はイジれないので、ユーザー設定のほうで半角スペースを4つに上書きするよう変更!(たぶんユーザー設定が優先されると思う)
変化なし!
ああっ
やっと分かりました。
新規で作ると4つで、記事になったあとは4つになる理由。
ファイル内のインデント優先。
フロントマター部分はTemplateで使いまわしなんですけど、その中で半角スペース2つのインデントが存在していたんです。
disableShare: false
cover:
image: "images/it.webp" ←ココ、行頭半角スペース2つ
alt: "itのイメージ画像" ←ココ、行頭半角スペース2つ
comments: true
するとVS Codeはお利口なので、「本当は半角スペース4つがインデントだけど、このヒトは2つでインデントしているからそれに合わせてあげよう・・・」となるようです。
ということで諸悪の根源であるTemplateのインデントはすべて半角スペース4つに直しました。
あとはイジくりまわった関係のない設定を元に・・・。
さて
いまは、これまでに作成したファイルのインデントを直すのか、見なかったことにするのかを考えるフェーズです。
「行頭の半角スペースが2つだったら4つに」という置換コマンド一発でいけるとは思いますが、疲れたのでまた今度考えよう。
そのまま放置でも、自分が若干気持ち悪いだけで動作に支障はないのよね。