ホームページ  >  記事  >  ウェブフロントエンド  >  一貫性を保つためのフォーマットとリンティング

一貫性を保つためのフォーマットとリンティング

DDD
DDDオリジナル
2024-11-07 15:30:02867ブラウズ

このアクティビティには、コードの品質と一貫性を向上させるために、統計分析ツールをオープンソース プロジェクト GENEREADME に実装することが含まれます。

Formatting and Linting for consistency クレオブントラ / ジェネリードミー

GENEREADME は、ソース コード ファイルを取り込み、LLM を利用してファイル内のコードを説明する README.md ファイルを生成するコマンド ライン ツールです。

投稿

GENEREADME への貢献は大歓迎です!環境のセットアップ、ツールの実行とテストの方法、変更の送信に関するガイドラインについては、CONTRIBUTING.md を確認してください。

ジェネレーションリードメ

GENEREADME は、ファイルを取り込んで処理し、ファイルの内容の説明やドキュメントを含む README ファイルを生成するコマンドライン ツールです。このツールは OpenAI チャット補完を利用してファイルを分析し、コンテンツを生成します。

Formatting and Linting for consistency

使用法

このツールは現在、Groq と OpenRouter をサポートしており、デフォルトで Groq を使用します。適切なプロバイダーの有効な API キーを指定する必要があります。

.env ファイルを作成するか、コマンドの使用時に -a または --api-key フラグを使用して、有効な API キーを指定します。

API_KEY=API_KEY

or

genereadme <files> -a API_KEY
genereadme <files> --api-key API_KEY

依存関係をインストールします:

npm install -g

既存のサンプル ファイルを使用してツールを実行するか、独自のサンプル ファイルを使用して開始します。

genereadme <files&gt
genereadme examples/sum.js
genereadme examples/createUser.js
GitHub で表示

フォーマッタ

フォーマッタとして、Prettier を使用することを選択しました。これを選択した理由は簡単で、基本的な機能を以前に使用したことがあり、さらに詳しく学ぶつもりです。

技術的には、デフォルトで prettier を使用するように IDE をセットアップ済みなので、最初からフォーマッタがすでにありました。ただし、プロジェクト自体のセットアップがより適切になったため、寄稿者もフォーマッタを使用できるようになり、フォーマットの点でプロジェクトのコードの一貫性が保たれます。

私は、.prettierrc ファイルにコードをどのようにフォーマットするかに関するルールを追加しただけです。また、保存時のフォーマットなどのオプションについては、.vscode/ の下の settings.json にいくつかの設定を追加しました。

リンター

リンターとして、ESLint を使用することにしました。私は JavaScript を使用しているため、人気のあるリンターの 1 つを使用しました。これも以前に使用した経験がありますが、実際に自分でセットアップしたわけではありません。そのため、私は ESLinter を選びました。

ESLinter のセットアップはそれほど複雑ではありませんでした。リンターを機能させるには、簡単なインストールと eslint.config.js でのルールの設定だけで十分です。ただし、フォーマッタとリンターを同時に使用しているため、両方が適切に連携できることを確認する必要があります。これには基本的に、リンターやフォーマッタと競合しないようにするための追加ルールが含まれています。

ツールの使用方法

プロジェクト内でツールを使用する方法はたくさんありますが、私は個人的にこれらの特定の構成を好みます。保存時にフォーマットしてより美しく、タイプ時に実行して eslint にします。こうすることで、リンターは開発者が入力するときにリンティングの問題を常にチェックし、保存がトリガーされるとフォーマッタが変更を自動フォーマットします。

今週のタスクでは、ユーザーが CLI を介して手動でフォーマッタとリンターを実行できるようにするスクリプトも追加しました。リポジトリにコミットされたコードがプロジェクトのフォーマットとリンティングの標準を確実に満たすようにするために、コミット前フックも実装されています。このフックを追加すると、各コミットの前に Prettier と ESLint を自動的に実行できるため、問題を早期に発見し、コントリビューション間でコードの一貫性を維持できます。この設定により、軽微な書式設定の問題がすり抜ける可能性が減り、プロジェクトに携わるすべての人にとってコードの読みやすさが向上します。

以上が一貫性を保つためのフォーマットとリンティングの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。