StyLuaは、プロジェクト全体で単一の決定論的なLuaコードスタイルを強制します。
解析されたASTから決定論的スタイルにLuaソースをフォーマットし、元のスペースや改行に関係なく同じ出力を生成します。デスクトップ開発のためにJohnnyMorganzによって作成されたこのツールは、Lua、Luau、およびLuaJITプロジェクトを対象としており、エディタまたはCIレベルで統合されます。LSP統合、チェックおよび差分モードを持つCLI、プロジェクトごとのTOML設定を提供し、予測可能で自動化されたフォーマットが必要な開発者やRobloxクリエイターに適しています。
それが何をするか、誰が利益を得るか
StyLuaは解析された表現からLuaコードを再構築します。そのため、ファイルはフォーマット後に単一の意見に基づいたスタイルに従います。LuauやLuaJITを含む複数のLua方言をサポートし、エディタ統合のためにCLIとLanguage Server Protocolサポートを公開します。単一の強制スタイルを望むチームは、インデント、列幅、引用の好みを定義するためにプロジェクトレベルのTOMLファイルまたは.editorconfigを追加できます。
それが開発システムとどのように相互作用するか
このツールは、ローカルおよび自動化されたワークフローでの迅速で繰り返し可能な実行のために設計されています。そのRust実装は、保存時のエディタアクションやリポジトリ全体のジョブに適した低遅延フォーマットを提供します。CIのためのチェックおよびdiffモードを提供し、パスを除外するための.styluaignoreをサポートします。範囲フォーマットは選択されたコード領域への編集を制限し、増分編集中の大きなファイルでの変更を減らします。
安全性、設定、および使いやすさ
StyLuaは決定論的に動作し、手動ステップを減らすためのエディタフックを提供します。LSPオプションは、サポートされているエディタ内でリアルタイムフォーマットを提供し、CLIフラグを使用するとファイルを変更せずにスタイルを確認できます。stylua.tomlを介した設定はプロジェクトのルートにルールを保持し、無視ファイルは意図しない再書き込みを防ぎます。Luaの経験がほとんどないユーザーはデフォルトに依存でき、パワーユーザーはTOMLスキーマを通じてルールを調整できます。
自動的で繰り返し可能なLuaフォーマットが必要なチームに推奨
StyLuaは、コードベース全体で一貫したフォーマットと、エディタやCIワークフローのための迅速なツールを必要とする開発者やRobloxクリエイターに適しています。好みのスタイルに合わせるための一度きりの設定作業を期待し、その後はコミット前またはCIステップとしてフォーマットを自動化して強制します。推奨。





