Luaのコーディング規約と整形ツール(StyLuaの設定とベストプラクティス)
Lua プログラミング ゲーム開発 StyLua
Roblox、Neovim、LÖVE2D、MoonSharp(Unity)などで使用される Lua スクリプトの標準スタイルガイドと自動整形ツール(StyLua)のガイドです。
1. オンライン Lua フォーマッター
ブラウザ上で Lua スクリプトのインデント調整や構文チェックが行えます。
🌙 この場でLuaを整形する
2. Lua特有の罠とコーディング規約
| ルール | 正しい記述(OK) | 避けるべき記述(NG) | 理由 |
|---|---|---|---|
必ず local を宣言 | local count = 0 | count = 0 | local なしはグローバル変数になり汚染・バグの原因となる |
配列インデックスは 1 始まり | local item = list[1] | local item = list[0] | Luaのテーブル配列要素は 1 が先頭 |
文字連結は .. を使用 | local msg = "Hello " .. name | local msg = "Hello " + name | + は数値加算のため型エラーになる |
否定は ~= | if status ~= "success" then | if status != "success" then | Luaの不等号演算子は ~= |
3. 業界標準フォーマッター:StyLua の使い方
現代の Lua 開発では JohnnyMorganz 氏が開発する StyLua が標準ツールとして広く採用されています。
① インストール (Cargo / Homebrew / npm)
brew install stylua
# または
cargo install stylua
② 設定ファイル (stylua.toml)
プロジェクトルートに stylua.toml を配置します。
column_width = 120
line_endings = "Unix"
indent_type = "Spaces"
indent_width = 4
quote_style = "AutoPreferDouble"
call_parentheses = "Always"
③ CLI実行コマンド
# 特定のファイルを整形
stylua script.lua
# src ディレクトリ配下を一括整形
stylua src/