StyLua impone uno stile di codice Lua singolo e deterministico attraverso i progetti
Formatta il codice sorgente Lua in uno stile deterministico a partire da un AST analizzato, producendo la stessa uscita indipendentemente dallo spazio originale o dai ritorni a capo. Creato da JohnnyMorganz per lo sviluppo desktop, lo strumento è destinato a progetti Lua, Luau e LuaJIT e si integra a livello di editor o CI. Offre integrazione LSP, una CLI con modalità di controllo e differenza, e configurazione TOML per progetto, rendendolo adatto per sviluppatori e creatori di Roblox che necessitano di formattazione prevedibile e automatizzata.
Cosa fa e chi ne beneficia
StyLua riscrive il codice Lua da una rappresentazione analizzata, in modo che i file seguano uno stile unico e ben definito dopo la formattazione. Supporta più dialetti Lua, tra cui Luau e LuaJIT, e offre un'interfaccia a riga di comando oltre al supporto per il Language Server Protocol per l'integrazione con l'editor. I team che desiderano uno stile unico imposto possono aggiungere un file TOML a livello di progetto o .editorconfig per definire le preferenze di indentazione, larghezza delle colonne e citazioni.
Come interagisce con i sistemi di sviluppo
Lo strumento è progettato per esecuzioni rapide e ripetibili in flussi di lavoro locali e automatizzati. La sua implementazione in Rust produce una formattazione a bassa latenza adatta per azioni di salvataggio nell'editor o lavori su larga scala nel repository. Fornisce modalità di controllo e differenza per CI e supporta .styluaignore per escludere percorsi. La formattazione per intervallo limita le modifiche alle regioni di codice selezionate, riducendo il churn nei file di grandi dimensioni durante le modifiche incrementali.
Sicurezza, configurazione e facilità d'uso
StyLua opera in modo deterministico e offre hook per l'editor per ridurre i passaggi manuali. L'opzione LSP fornisce formattazione in tempo reale all'interno degli editor supportati, mentre i flag CLI consentono di verificare lo stile senza modificare i file. La configurazione tramite stylua.toml mantiene le regole nella radice del progetto, e i file di ignoranza prevengono riscritture indesiderate. Gli utenti con esperienza minima in Lua possono fare affidamento sui valori predefiniti; gli utenti esperti possono regolare le regole attraverso lo schema TOML.
Consigliato per team che necessitano di formattazione Lua automatica e ripetibile
StyLua è adatto a sviluppatori e creatori di Roblox che richiedono una formattazione coerente in un codice e strumenti rapidi per flussi di lavoro di editor o CI. Aspettati uno sforzo di configurazione una tantum per adattare il tuo stile preferito, quindi automatizza la formattazione come passo pre-commit o CI per farla rispettare. Raccomandato.





