рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдлреНрд░рдВрдЯ-рдПрдВрдб рдЕрд╕реЗрдВрдмрд▓реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ "рдФрд░ рд╕реЗ" рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред
рдореИрдВ рдЖрдкрдХреЛ рдПрдХ
рдкрд░рд┐рдЪрдпрд╛рддреНрдордХ рд▓реЗрдЦ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ, рдЕрдЧрд░ рдХреЛрдИ рдкрдврд╝рд╛ рдирд╣реАрдВ рд╣реИред
рд╡рд╣рд╛рдВ рдореИрдВрдиреЗ рдЪрд╛рдп рд╕реАрдПрд╕рдПрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд╕реБрдкрд░рд╕реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╛рдд рдХреА, рдФрд░ рдпрд╣ рд╕рдЪ рдирд╣реАрдВ рдерд╛ред рдЕрдзрд┐рдХ рд╕рдЯреАрдХ - рдЖрдзрд╛ рд╕рдЪред рдФрд░ рдЗрд╕рд▓рд┐рдП рд╡рд╣ рдЕрдкрдиреА рд░рдЪрдирд╛ (рдЗрд╕рд▓рд┐рдП рдирд╛рдо) рдХреЗ рд╕рдордп рдерд╛ред
рдЕрдм рдпрд╣ рд╕рд╛рдордЧреНрд░реА рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдШреЛрд╖рдгрд╛рддреНрдордХ рдзрд╛рддреБ-рдЪрд┐рддреНрд░рдг рд╣реИ, рдХреНрдпреВрдПрдордПрд▓, рд▓рд┐рд╕реНрдк, рдХреНрд▓реЛрдЬрд░, рдиреЗрдореЗрд░реНрд▓реЗ рд╕реЗ рдЗрд╕рдХреА рдкреНрд░реЗрд░рдгрд╛ рдХрд╛ рдЕрдзрд┐рдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред
рдЖрд╡рд╢реНрдпрдХ рд╢рд░реНрддреЗрдВ
рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╣реЛрд▓реА рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдмрд╛рддреЛрдВ рдкрд░ рд╕рд╣рдордд рд╣реЛрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛:
- рднрд╛рд╖рд╛ рдХрд╛ рдкреНрд░рдХрд╛рд░ рдпрд╛ рдЕрднрд┐рд╡рд┐рдиреНрдпрд╛рд╕ рдЗрд╕рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рдЯреНрдпреВрд░рд┐рдВрдЧ рднрд╛рд╖рд╛ рдкреВрд░реНрдг рд╣реИ, рддреЛ рдЗрд╕ рдкрд░ рдХреБрдЫ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
- рднрд╛рд╖рд╛ рдФрд░ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХрд╛ рдкреНрд░рдХрд╛рд░ рд╡рд┐рд╖рдп рдХреНрд╖реЗрддреНрд░ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдХреЗрд╡рд▓ рдбреЗрд╡рд▓рдкрд░ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ
- рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЖрдорддреМрд░ рдкрд░ рдЗрдВрдкреАрд░рд┐рдпрд▓ рднрд╛рд╖рд╛рдПрдВ рдмреЗрд╣рддрд░ рд╣реЛрддреА рд╣реИрдВред рд╡реЗ рдмреБрдирд┐рдпрд╛рджреА рд╕рдВрд╕реНрдерд╛рдУрдВ (рд▓рд╛рдЗрдиреЛрдВ, рд╕рдВрдЦреНрдпрд╛рдУрдВ, рд╕рдВрд░рдЪрдирд╛рдУрдВ, рдХрдХреНрд╖рд╛рдУрдВ) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдирд╕реЗ рдИрдВрдЯреЛрдВ рдХреА рддрд░рд╣, рд╡реЗ рдЖрдкрдХреЛ рдШрд░ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред
- рд╕рдорд╛рдкреНрдд рд╡рд┐рд╖рдп рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП, рдШреЛрд╖рдгрд╛рддреНрдордХ рднрд╛рд╖рд╛рдПрдБ рдмреЗрд╣рддрд░ рд╣реИрдВ (рдлрд┐рд░ рд╕реЗ, рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ) рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрдм рдЗрдорд╛рд░рдд рдмрдирд╛рдиреЗ рдХреА рддрд░рд╣ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рддреИрдпрд╛рд░ рдЬрдЯрд┐рд▓ рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реИред
рдпрд╣ "рдХреНрд╖рдорддрд╛рдУрдВ" рдХреЗ рдЗрд╕ рдкреГрдердХреНрдХрд░рдг рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рддреГрддреАрдп-рдкрдХреНрд╖ рдбреАрдПрд╕рдПрд▓ (рдбреЛрдореЗрди рд╡рд┐рд╢рд┐рд╖реНрдЯ рднрд╛рд╖рд╛), рдШреЛрд╖рд┐рдд рдбреАрдПрд╕рдПрд▓ рднрд╛рд╖рд╛ (рд░реВрдмрд▓, рд▓рд┐рд╕реНрдк, рдЖрджрд┐) рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рд╣реИрдВ, рдЕрдм рдЦрд┐рд▓ рд░рд╣реЗ рд╣реИрдВред рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ, рдкрд░реАрдХреНрд╖рдг, рдЗрдВрдЯрд░рдлреЗрд╕, рдЙрдкрд╕реНрдерд┐рддрд┐ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ - рдЕрд░реНрдерд╛рдд рд╕рдм рдХреБрдЫ рдЬрд╣рд╛рдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЗрдХрд╛рдИ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИред рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рд╕рдВрд╕реНрдерд╛рдПрдВ "рдкреНрд░реЛрдЬреЗрдХреНрдЯ", "рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛", "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдирдкреБрдЯ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╡реНрдпрд╡рд╣рд╛рд░" рдФрд░ "рдЙрд╕ рд╡рд┐рд╖рдп рдХрд╛ рдкреНрд░рдХрд╛рд░ рдЬрд┐рд╕рдХрд╛ рд╕реНрд╡рд░реВрдк рд╡рд░реНрдгрд┐рдд рд╣реИ"ред
TeaCSS рдХреНрдпрд╛ рд╣реИ
рдпрд╣ рдШреЛрд╖рдгрд╛рддреНрдордХ DSL рдХреЗ рд▓рд┐рдП рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реИ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╣реИред рдФрд░ рд╢реИрд▓рд┐рдпреЛрдВ, рд▓рд┐рдкрд┐рдпреЛрдВ, рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдФрд░ рдЖрдЙрдЯ-рдСрдл-рдж-рдмреЙрдХреНрд╕ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдбреАрдПрд╕рдПрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиред
рдпрд╣ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд▓реЗрддрд╛ рд╣реИ, рд╕рд╛рдордЧреНрд░реА рдмрдирд╛рдиреЗ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛
PEG.js рдФрд░
Jison рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ - рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рдордп рд╣реИ, рддреЛ рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЖрдк рдЦреБрдж рдХреЛ рдкрд░рд┐рдЪрд┐рдд рдХрд░реЗрдВред
рдФрд░ рдЕрдЧрд░ рдХреЛрдИ рдЗрдЪреНрдЫрд╛ рд╣реИ, рддреЛ рдореИрдВ рдкрд╛рд░реНрд╕рд░ рдФрд░ рд╕рдВрдХрд▓рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд▓реЗрдЦ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реВрдВ, рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
TeaCSS рдХрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЕрдкрдорд╛рди рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рд╣реИ:
[] _ {
рдпрд╣ рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рдШреЛрд╖рд┐рдд рднрд╛рд╖рд╛ рдХреЛ рдиреЗрд╕реНрдЯреЗрдб рдирд┐рдпрдореЛрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЬреЗрдПрд╕ рдЖрдкрдХреЛ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдЕрдирд┐рд╡рд╛рд░реНрдп рддрддреНрд╡ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдЪрд░, рд╕реНрдерд┐рддрд┐рдпрд╛рдВ, рд▓реВрдк, рдФрд░ рдмрд╣реБрдд рдХреБрдЫред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд▓реЗрд╕ рдЬреИрд╕реА рднрд╛рд╖рд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЛрдб рдХреА рдХреЗрд╡рд▓ 150 рд▓рд╛рдЗрдиреЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИрдВред
github.com/boomyjee/teacss/blob/master/src/teacss/core.js#L309рдпрд╣ рд╡рд╣ рд╣реИ рдЬреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреАрдврд╝реА рдХреА рднрд╛рд╖рд╛ (рд╕реНрдЯрд╛рдЗрд▓) рд╣реИред
рдХрд┐рд╕реА рдЕрдиреНрдп рднрд╛рд╖рд╛ рдореЗрдВ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕рдХреЗ рд╕рд╛рде рдЪрдпрдирдХрд░реНрддрд╛ рдХреЛ рд╢реБрд░реВ рдХрд░реЗрдВ:
SomeLang {
рдПрдХ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд░реВрдк рдореЗрдВ TeaCSS
рдЯреАрдХреЗрдЬрд╝ рдореЗрдВ рджреВрд╕рд░реА рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рднрд╛рд╖рд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╕рд░рд▓ рд╣реИ:
Script some_name { @append "some/script/path.js"; @append { function bla() { }
рдпрд╛рдиреА рд░реИрдЦрд┐рдХ рддрддреНрд╡ рдХреЗрд╡рд▓ рддреГрддреАрдп-рдкрдХреНрд╖ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИрдВ; рдмреНрд▓реЙрдХ рддрддреНрд╡ рдХреЗрд╡рд▓ рдХреЛрдб рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдЕрд▓рдЧ рд╕реЗ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЙрддреНрдкрд╛рджрди рдореЗрдВ, рд╕рднреА рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ рдХреБрдЫ_рдирд╛рдо рджреНрд╡рд╛рд░рд╛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЕрд░реНрдерд╛рдд рдЖрдк рдЬреИрд╕реЗ рдЪрд╛рд╣реЗрдВ рдЬреЗрдПрд╕ рдХреЛ рдЧреНрд░реБрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
TeaCSS рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реНрд╡рдпрдВ рджреНрд╡рд╛рд░рд╛ рд╣реА рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣рд╛рдБ рдЗрд╕рдХреА "рдореЗрдХрдлрд╛рдЗрд▓" рд╣реИ:
github.com/boomyjee/teacss/blob/master/src/build.teaрдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде, TeaCSS рдореЙрдбреНрдпреВрд▓рд░ рд╡рд┐рдХрд╛рд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рд╣реИ рдФрд░ рдПрдХ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореБрдЦреМрдЯрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рд╣реИред
рд╡рд╣ рдХреНрдпрд╛
рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдкрд░ рдХрд░рддрд╛ рд╣реИ рдпрд╛
StealJS рдХрд░рддреЗ рд╣реИрдВ ред
рдореИрдВрдиреЗ рдЗрди 2 рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ AFAIK рдЙрдирдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ рджреЛ рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЗ рдЙрддреНрдкрд╛рджрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рд╡реЗ (рд╢рд╛рдпрдж рд╕реНрд╡рдпрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рднреА рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реА) рдХрдИ рдЧрдВрднреАрд░ рдХрдорд┐рдпрд╛рдВ рд╣реИрдВ:
- рд╡реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдХреЗ рд╕рд╛рде рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдорд┐рд▓рд╛рддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреНред рдЙрддреНрдкрд╛рджрди рдХреЛрдб рдХреЗ рдЕрдВрджрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдмрд┐рд▓реНрдб рдПрдкреАрдЖрдИ рдХреЙрд▓ рдЫреЛрдбрд╝ рджреЗрдВред рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрдкрдирд╛ рдХреЛрдб рд╡рд┐рд╢реЗрд╖ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рдЪреЛрд░реА рдореЗрдВ рдПрдХ рдкреНрд▓рдЧрдЗрди рд╡рд┐рдзрд┐ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╕ рдЫреЛрдЯреА рдЧрд╛рдбрд╝реА рд╣реИ рдФрд░ рдЪреЛрд░реА рдХреЗ рдорд┐рдиреА-рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рд╕реЗ рдХреЛрдб рдХреЛ рдХрд╛рдЯрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рд╣реИ рдЬрдм рдЪреЛрд░реА рдПрдХ рдорд┐рдиреА-рдлрд╝рд╛рдЗрд▓ рд╣реИред
- рдЖрд╡рд╢реНрдпрдХрддрд╛ CSS рдХреЗ рдЕрдиреБрдХреВрд▓ рдирд╣реАрдВ рд╣реИ
- рдЕрд╕реЗрдВрдмрд▓реА рдФрд░ рдХреЛрдб рдХреЛ рдорд┐рд▓рд╛рдиреЗ рдХрд╛ рдмрд╣реБрдд рд╣реА рддрд╛рддреНрдкрд░реНрдп рдЕрд╕реЗрдВрдмрд▓реА рдкрд░ рдереЛрдбрд╝рд╛ рдирд┐рдпрдВрддреНрд░рдг рдпрд╛ рдХреЛрдб рдХреЛ рдЕрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рд╕реЗ рд╣реИред рдпреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЗрдХрд╛рдЗрдпрд╛рдБ рд╣реИрдВ рдФрд░ рдЬреЛ рдХреЛрдб рдПрдХрддреНрд░ рдХрд░рддрд╛ рд╣реИ рд╡рд╣ рдореЙрдбреНрдпреВрд▓рд░рд┐рдЯреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЖрджрд┐ред рдЪреАрдЬреЛрдВ рдХреЛ рдХреЛрдб рд╕реЗ рдЕрд▓рдЧ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЕрдВрддрд┐рдо рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИред
- рдЪреЛрд░реА рдЖрдкрдХреЛ рд▓рдЪреАрд▓реЗ рдврдВрдЧ рд╕реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рд░рд╛рд╕реНрддреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рдирд╣реАрдВ рд╣реИ (рдорд┐рдирд┐рдлрд╝реЗрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдореИрдиреБрдЕрд▓ рдЦреБрджрд╛рдИ рдХреЗ рдЕрд▓рд╛рд╡рд╛)ред
рдЗрд╕рд▓рд┐рдП, рдпрд╣ рддреБрд░рдВрдд рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдирд┐рдпрдореЛрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рд╕реНрдерд╛рди (рд╕реА рд╡рд┐рдХрд╛рд╕ рдореЗрдВ, рдпрд╣ рдПрдХ рдореЗрдХрдлрд╛рдЗрд▓ рд╣реИ) рдореЗрдВ рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдХреА рдорд╛рдВрдЧ рдХрд░рддрд╛ рд╣реИред
рдЗрд╕ рддрд░рд╣ рдХреЗ рдореЗрдХрдлрд╛рдЗрд▓ рдХреА рднреВрдорд┐рдХрд╛ Teacss.Script рджреНрд╡рд╛рд░рд╛ рд▓реА рдЧрдИ рд╣реИред
рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕рдорд╛рди рд╣реИред
<? if ($applicationMode=="development") ?> <link tea="scripts.tea"> <script src="teacss.js"></script> <? else ?> <script src="production.js"> <? endif ?>
рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдФрд░ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛
TeaCSS рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдПрдХ рдореЙрдбреНрдпреВрд▓рд░ рдФрд░ рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рдЕрд╕реЗрдВрдмрд▓реА рдкреНрд░рдгрд╛рд▓реА рд╣реИред рдореВрд▓ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдирдИ рднрд╛рд╖рд╛ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рднрд╛рд╖рд╛ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдПрдХ рдЖрдпрд╛рдд рдЬреЛрдбрд╝реЗрдВред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
@import "some_language_definition.js"; @import "some_tea_file.tea";
рдЯреАрдХреЗрдПрд╕рдПрд╕ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдореЗрдВ рдПрдХ рдирдИ рднрд╛рд╖рд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдореИрдВ рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рд▓рд┐рдЦреВрдВрдЧрд╛ред рдЗрд╕ рдмреАрдЪ, рдореИрдВ рдРрд╕реА рднрд╛рд╖рд╛ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рдКрдВрдЧрд╛ред
TeaCSS рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрдереИрддрд┐рдХ рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдПрдирд╛рд▓реЙрдЧреНрд╕
Jekyll рд╣реИрдВ рдФрд░ рдпрд╣рд╛рдВ рдПрдХ рд╕реВрдЪреА рд╣реИ, рдмрд╣реБрдд рд╕рд╛рд░реЗ
iwantmyname.com/blog/2011/02/list-static-website-generators.htmlрддрд░рд▓ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рд╣рдЬ рд╣реИред
Template layout { html { head { meta[http-equiv="Content-Type"][content="text/html; charset=utf-8"]; title TeaCSS; } body { #header { .item(url,text) { % if path == "@{url}" { a.active[href="@{url}"] @text; } % else { a[href="@{url}"] @text; } } div { .item('index.htm','Intro'); .item('canvas.htm','Canvas'); a[href="download.htm"][target="_blank"] Download; } } #content { % block content {} } } } }
рдпрд╣ рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
teacss.org рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
рдпрд╣рд╛рдБ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рд╛рдЗрдЯ рд╕реНрд╡рдпрдВ рдФрд░ рдЙрд╕рдХреЗ рдЬрдирд░реЗрдЯрд░ рдЭреВрда -
github.com/boomyjee/teacss-docsрдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЙрджрд╛рд╣рд░рдг
github.com/boomyjee/teacss-docs/blob/master/build/templates/pages/index.tea рд╣реИрдХрдВрд╕реНрдЯреНрд░рдХреНрд╢рди рдЬреИрд╕реЗ
Highlight xml { <link tea="style.tea"> <script src="teacss.js"></script> }
рдЬреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдП рдЧрдП рдХреЛрдб рдХреЗ рд▓рд┐рдП рдЖрдЙрдЯрдкреБрдЯ HTML рджреЗрддреЗ рд╣реИрдВред
рдореИрдВрдиреЗ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЦреЗрд▓ рдХрд╛ рдореИрджрд╛рди рдмрдирд╛рдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрдк рдЗрд╕ рдмрд╛рдд рдкрд░ рдХрд░реАрдм рд╕реЗ рдирдЬрд╝рд░ рд░рдЦ рд╕рдХреЗрдВ рдХрд┐ HTML рдкреАрдврд╝реА рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ -
teacss.org/template.htm
рдирд┐рд╖реНрдХрд░реНрд╖
TeaCSS рдПрдХ рдШреЛрд╖рдгрд╛рддреНрдордХ рдореЗрдЯрд╛-рдбреАрдПрд╕рдПрд▓ рд╣реИ рдЬрд┐рд╕реЗ рдореВрд▓ рд░реВрдк рд╕реЗ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдФрд░ рдЕрд╕реЗрдВрдмрд▓реА рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдШреЛрд╖рд┐рдд-рдЖрдзрд╛рд░рд┐рдд рд╕рд╛рдордЧреНрд░реА рдЬрдирд░реЗрдЯрд░ рд╣реИ рдЬреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░-рдЖрдзрд╛рд░рд┐рдд JS рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдЕрдиреБрдХреВрд▓ рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░рддрд╛ рд╣реИред
рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╢реБрд░реВ рдХрд░рдиреЗ рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рд╕реАрдзреЗ рдПрдХ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдмрдирд╛рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЗрдЦреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ред
рдкреБрдирд╢реНрдЪ
рдореБрдЭреЗ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рдирд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕ рд▓реЗрдЦ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдирд╡реАрдирддрдо рдПрдбреЛрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯ - рдмреНрд░реИрдХреЗрдЯреНрд╕ рдФрд░ рдХрд┐рдХрд╕реНрдЯрд╛рд░реНрдЯрд░ рд▓рд╛рдЗрдЯ-рдЯреЗрдмрд▓ рдкрд░ рдмрд╣реБрдд рд╕рдорд╛рди рдЪреАрдЬреЗрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдХрдИ рдЕрдВрддрд░ рд╣реИрдВ, рдФрд░ рдпрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд░рддреА рд╣реИ - рдЯреАрдХреЗред рдореБрдЭреЗ рдЗрд╕ рдмрдбрд╝реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рд╕рдорд╛рди рд╡рд┐рдЪрд╛рд░рдзрд╛рд░рд╛ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдФрд░ рд╕рд╣рд╛рдпрдХреЛрдВ / рд╕рд╛рдЭреЗрджрд╛рд░реЛрдВ рдХреА рддрд▓рд╛рд╢ рд╣реИред