#はじめに
たびたび、ターミナルに何かしらを出力する際、ESC[ という文字列が出力結果に散りばめられ、非常に見にくい表示になっていました。
私の場合は、git diff
の出力結果にこのような問題が見られ、解決策がわからないままでしたが、ある英語サイトにソリューションが掲載されていましたので、日本語版として同じ問題に遭遇した人の一助になればと思い、本記事を投稿します。
#ソリューション
最初に解決策を示します (❯コマンドプロンプトですので、入力しないで下さい)。
❯ export LESS="-iRMXS"
上記のコマンドを実行するだけです。
こちらの英語サイトによると、less コマンドに問題があったとか。環境変数 $LESS が誤って設定されていることに原因があったそうです。
Rオプションをつけることで、ANSI カラーエスケープシーケンスを解するようにできます。
ですので、実は、次のコマンドでも問題は解決できます。
❯ export LESS="-R"
ただ、Rオプションに加えて、iMXSのオプションをつけることで、幾分幸せになることができますよ(理由は補足に示します)。
#変化
私の場合、以下のように見やすくなりました。
苦しみながら、解読していた時が懐かしいです。笑
・before
❯ git diff
ESC[1mdiff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erbESC[m
ESC[1mindex 3295719..2feb624 100644ESC[m
ESC[1m--- a/app/views/users/show.html.erbESC[m
ESC[1m+++ b/app/views/users/show.html.erbESC[m
ESC[36m@@ -118,7 +118,6 @@ESC[m
</div>ESC[m
</div>ESC[m
ESC[m
ESC[31m-ESC[m
<script>ESC[m
$(".tab").on("click", function() {ESC[m
console.log(this);ESC[m
・after
❯ git diff
diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb
index 3295719..2feb624 100644
--- a/app/views/users/show.html.erb
+++ b/app/views/users/show.html.erb
@@ -118,7 +118,6 @@
</div>
</div>
-
<script>
$(".tab").on("click", function() {
console.log(this);
#補足
私が設定しているless
コマンドの便利なオプションを表にまとめました。
オプション | 意味 |
---|---|
-i | 検索時に全部小文字で入力した時だけ、大文字小文字を無視する |
-M | 詳しいプロンプトを表示する(現在の表示位置を%で表示する等) |
-X | less 終了時に画面をクリアしない |
-S | 一行の長さが画面幅を超える場合でも改行しない |
#参考資料