mieki256's diary



2018/09/17(月) [n年前の日記]

#3 [prog] Visual Studio Codeの自動整形関係の拡張機能を少し試したり

Microsoft Visual Studio Code に、自動整形をしてくれる拡張機能をインストールして試用。

Prettierを試用。 :

_Prettier - Code formatter を入れてみたけど、Markdownが妙な整形をされてしまうので無効化したり。設定ファイルに以下を追加して、Markdownファイルを保存した際に、勝手にフォーマットされないようにした。
"[markdown]": {
    "editor.formatOnSave": false
  },

フォーマットのルールを細かく指定できればいいのだけど、ググっても設定方法が分からず。利用は諦めるか…。

Remarkを試用。 :

以下の記事で、Remark という拡張機能があることを知った。

_VSCodeでMarkdownの自動フォーマット&整形ルールを自由に設定
_Remark - Visual Studio Marketplace

こちらは、Markdown の自動整形フォーマットルールを細かく指定できるらしい。

試しに入れてみたけど、やはり見出しが「#」に書き換えられてしまった。何なの、お前等。

しかし、以下の設定をすることで、見出しの整形を、「=====」「-----」を使った形に変えてくれるらしい。素晴らしい。ちゃんと分かってる。
  "remark.format": {
    "rules": {
      "setext": true,
    }
  }

ただ、日本語文字列の長さを、漢字1文字=1文字として認識するようで…。「=====」「-----」の文字個数が、日本語を使った見出し文字列の、見た目の半分の個数になってしまう。処理としては正しいのだけど、見た目ではよろしくない。

でもまあ、このあたり、使ってるフォントによっても見た目の長さが変わるし…。英語圏を前提にした拡張機能だから、こういうのは、どうしようもないのかもしれないなと。

ついでに、以下のように設定してみた。
  "remark.format": {
    "rules": {
      "gfm": true,
      "setext": true,
      "bullet": "*",
      "listItemIndent": 1,
      "fences": true
    }
  }
  • gfm で、GFM(GitHub Flavored Markdown)を指定。
  • setext で、見出しレベル1〜2の書き方を、「====」「----」を使った形にする。
  • bullet で、リストの行頭として使う文字を指定。
  • listItemIndent で、「* リスト内容」の空白インデント文字数を指定。デフォルトでは2個の空白文字が入る。
このあたり、前述の記事で紹介されてた、以下のページが参考になった。

_remark/packages/remark-stringify at master - remarkjs/remark

ただ、テーブルがグチャグチャになってしまう…。これも、日本語文字列が含まれてる際に、漢字1文字=1文字として扱うせいだな…。

日本語文字列が含まれている Markdown を自動整形すること自体が間違い、かもしれない。利用は諦めよう…。

以上です。

過去ログ表示

Prev - 2018/09 - Next
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project