/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 1 7 . Ġtang zx ( love . tang zx @ qq . com ) Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . tang . intellij . lua . editor . formatter Ċ Ċ import Ġcom . intellij . application . options . Code Style Abstract Panel Ċ import Ġcom . intellij . application . options . Indent Options Editor Ċ import Ġcom . intellij . application . options . Smart Indent Options Editor Ċ import Ġcom . intellij . psi . code Style . Code Style Settings Custom izable Ċ import Ġcom . intellij . psi . code Style . Code Style Settings Custom izable . SP ACES _ OTHER Ċ import Ġcom . intellij . psi . code Style . Common Code Style Settings Ċ import Ġcom . intellij . psi . code Style . Language Code Style Settings Provider Ċ import Ġcom . tang . intellij . lua . lang . Lua Language Ċ Ċ /** ĊĊ Ġ* ĠCreated Ġby Ġtang zx Ġon Ġ 2 0 1 7 / 2 / 2 2 . Ċ Ġ*/ Ċ class ĠLua Language Code Style Settings Provider Ġ: ĠLanguage Code Style Settings Provider () Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġget Language (): ĠLua Language Ġ= ĠLua Language . INSTANCE ĊĊĠĠĠ Ġoverride Ġfun Ġget Code Sample ( settings Type : ĠLanguage Code Style Settings Provider . Settings Type ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠCode Style Abstract Panel . read FromFile ( this . java Class , Ġ" preview . lua . template ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Indent Options Editor (): ĠInd ent Options Editor Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠSmart Indent Options Editor () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetDefault Common Settings (): ĠCommon Code Style Settings Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcommon Settings Ġ= ĠCommon Code Style Settings ( language ) ĊĠĠĠĠĠĠĠ Ġcommon Settings . init Indent Options () ĊĠĠĠĠĠĠĠ Ġreturn Ġcommon Settings ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcustomize Settings ( consumer : ĠCode Style Settings Custom izable , Ġsettings Type : ĠLanguage Code Style Settings Provider . Settings Type ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( settings Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLanguage Code Style Settings Provider . Settings Type . SPACING _ SETTINGS Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconsumer . show Custom Option ( Lua Code Style Settings :: class . java , Ġ" SPACE _ AFTER _ TABLE _ FIELD _ SEP ", Ġ" After Ġfield Ġsep ", ĠSP ACES _ OTHER ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconsumer . show Custom Option ( Lua Code Style Settings :: class . java , Ġ" SPACE _ AR O UND _ BINARY _ OPERATOR ", Ġ" Around Ġbinary Ġoperator ", ĠSP ACES _ OTHER ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconsumer . show Custom Option ( Lua Code Style Settings :: class . java , Ġ" SPACE _ INS IDE _ INLINE _ TABLE ", Ġ" Inside Ġinline Ġtable ", ĠSP ACES _ OTHER ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconsumer . show Standard Options (" SPACE _ AR O UND _ ASSIGN MENT _ OPER ATORS ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" SPACE _ BEFORE _ COMMA ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" SPACE _ AFTER _ COMMA ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLanguage Code Style Settings Provider . Settings Type . WR APP ING _ AND _ BR ACES _ SETTINGS Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconsumer . show Standard Options ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" METHOD _ PARAMETERS _ WRAP ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ALIGN _ MULT IL INE _ PARAMETERS ", ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" CALL _ PARAMETERS _ WRAP ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ALIGN _ MULT IL INE _ PARAMETERS _ IN _ CALL S ", ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġkeep Ġwhen Ġre formatting ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" KEEP _ SIMPLE _ BLOCKS _ IN _ ONE _ LINE ", ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// align Ġgroup Ġdeclarations ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ALIGN _ CON SEC UT IVE _ VARIABLE _ DECL AR ATIONS " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconsumer . show Custom Option ( Lua Code Style Settings :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ALIGN _ TABLE _ FIELD _ ASSIGN ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Align Ġtable Ġfield Ġassign ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Table ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ