「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > 数キロバイトの JavaScript によるコンソールのスタイル設定

数キロバイトの JavaScript によるコンソールのスタイル設定

2024 年 8 月 1 日に公開
ブラウズ:135

Console Styling in JavaScript with a few kilobytes

あなたのことは知りませんが、私は JavaScript プロジェクトのコンソール ログをきれいに保ちたいと思っています。そして、すべての端末が絵文字をサポートしているわけではないので、コンソール出力に色を付ける以外に良い方法はないでしょうか?

そうですね、必要なコンソール スタイルごとに ANSI エスケープ コードをグーグルで検索することで解決できます。あるいは、W3Docs などのページからいくつかを覚えておくこともできます。しかし、私はログを見栄え良くするのが大好きです。私は決してたくさんのことを覚えられる人間ではありません。そして、どこでも機能する 1 つの方法を好むのです。

そうですね、私は通常、JS の色付きログのみを使用するため、文字通りどこでも機能するものは必要ありません。しかし、少なくとも JavaScript が関係する場所であればどこでも機能します。

そこで私は、必要になる可能性のあるすべての ANSI エスケープ コードを関数の形式で含む独自のスクリプトを作成することにしました。しかし、すべてのプロジェクトで同じスクリプトを何度もコピーするのは煩わしいことに気づきました。そこで、npm i と init 以外に npm コマンドを使用したことがない私は、さらに詳しく学び、自分のプロジェクトにインストールできる (または、NodeJS 以外のプロジェクトの場合は GitHub リポジトリのクローンを作成できる) プライベート NPM パッケージを作成することにしました。
パッケージをインストールするたびに NPM 認証を処理したくなかったので、パッケージを公開しただけです。

そして、それが今日の目的です。javascript-console-styling は、このプロセスを容易にするために私が作成したパッケージです。

確かに、私と似たようなパッケージは以前にも作られたことがあります(これは私が作って初めて気づいた事実です)。しかし、私自身の解決策の方が私や私のような人にとってはまだ良いことに気づきました:

  • npm によると、私のパッケージに必要なスペースはわずか 14KB でした。一方、他の同様のパッケージは同じ量 (500 キロバイト以上) を最大 50 倍 必要としました。どちらも 1 メガバイト未満ではありますが、すべてのファイルを簡単に管理できる (または、必要に応じてフォークして簡単に変更することもできる) ため、パッケージは小さい方が良い

  • 私のパッケージは関数であるため、異なるスタイルと装飾をネストできます...そして、異なるスタイルの部分文字列を含むスタイル付き文字列全体がある場合でも、部分文字列(内部の部分文字列を含む)を連結するだけで済みます各スタイル関数がリセットするため、親文字列はその後のスタイルの適用を停止します)

  • 私のパッケージには、ユーザーが端末で出力を確認できるように、考えられるすべての色と装飾の組み合わせを示す簡単なテスト ツールがありました (テスト機能はデフォルトのパッケージには含まれていませんが、NPM ページとGitHub)

全体的に、私は独自のコードを使用することを好みます。しかし、公開パッケージを所有することの一部は、それがどのように役立つかを人々に知らせ、必要な場合に自分で選択できるようにすることです。

これが私が作成する最後の NPM パッケージになるとは思いませんが、NPM 全体についてやる気を引き出す良い方法でした!

パッケージを必ずチェックして、ハッキングを楽しんでください!

リリースステートメント この記事は次の場所に転載されています: https://dev.to/proman4713/console-styling-in-javascript-with-a-few-kilobytes-2gjn?1 侵害がある場合は、削除するために[email protected]に連絡してください。それ
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3