fanera yra šablonas kalbos gramatika, kad atrodo, jaučia ir veikia kaip Python
apkrova (URL)
apkrova ("suspausti")
DOCTYPE (HTML)
HTML:
& Nbsp; aukštis:
& Nbsp; meta (charset = "utf-8")
& Nbsp; meta (vardas = "peržiūros", turinys = "width = prietaisas pločio; pradinis masto = 1,0)
& Nbsp; pavadinimas:
& Nbsp; jei pavadinimas:
& Nbsp; # docstrings * yra * nulupama prieš tarpus (jie turi būti
& Nbsp; # įspaudžiami) ir pirmas ir paskutinis naujos eilutės yra pašalinamas.
& Nbsp; "" "
& Nbsp; {title} |
& Nbsp; "" "# styginių intepolation yra šiek tiek daugiau sunkiųjų nei` .format () `, bet daugiau panašaus nei skirtingi.
& Nbsp; "Welcome" # eilutės, reikalauja citatos: - / * I * galybė pridėti dar vieną būdą, kaip tai padaryti ...
& Nbsp; suspausti ("CSS"):
& Nbsp; ryšys (rel = "stilių", type = "text / css" href = statinė (CSS / reset.css))
& Nbsp; ryšys (rel = "stilių", type = "text / css" href = statinė (CSS / welcome.css))
& Nbsp; scenarijų (src = "// ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type = "text / javascript")
& Nbsp; suspausti (JS):
& Nbsp; scenarijų (src = statinė ("JS / underscore.js"), type = "text / javascript")
& Nbsp; scenarijų (src = statinė ("JS / backbone.js"), type = "text / javascript")
& Nbsp; ieif 'lt IE 9':
& Nbsp; scenarijų (src = "// html5shiv.googlecode.com/svn/trunk/html5.js" type = "text / javascript")
& Nbsp; ryšys (rel = "stilių", type = "text / css" href = statinė (CSS / ie.css))
& Nbsp; blokas ('extra_head) # blokai, ir blokuoti paveldėjimas? žinoma!
& Nbsp; institucija:
& Nbsp; div (class = "įvynioti" id = "įvynioti") # no sutrumpinimas klasės ir id (Neįvertintas)
& Nbsp; antraštė:
& Nbsp; blokas (antraštė):
& Nbsp; p (class = "logotipas"):
& Nbsp; blokas ('header_title):
& Nbsp; jei vartotojas:
& Nbsp; "Sveiki," {user.name} "
& Nbsp; kitur:
& Nbsp; "Sveiki"
& Nbsp; jei current_member:
& Nbsp; p (class = "Prisijungti"):
& Nbsp; "Sveiki, {current_member.preferred_name}"
& Nbsp; (href = url ("atsijungti")): "Atsijungti"
& Nbsp; nav:
& Nbsp; ul:
& Nbsp; blokas (GTV):
& Nbsp; li: (href = url ("prisijungti")): "Jūs turite prisijungti,"
& Nbsp; skirsnyje class = "tinklalapio":
& Nbsp; blokas ("tinklalapio")
& Nbsp; sekcija (class = "pagrindinis"):
& Nbsp; blokas ("pranešimai"):
& Nbsp; jei pranešimų:
& Nbsp; ul (class = "pranešimai"):
& Nbsp; pranešimu pranešimų:
& Nbsp; li (class = message.tags): "{žinutė}"
& Nbsp; scenarijų:
& Nbsp; # kodas literał, kad išminties redaktoriai gali nuspalvinti kodą
& Nbsp; `` `javascript yra
& Nbsp; $ (dokumentas) .ready (function () {
& Nbsp; $ ("ul.messages") addClass ("Gyva").;
& Nbsp; var fade_out = _ (function () {
& Nbsp; this.addClass ("fade-out")
& Nbsp;}.) Įpareigoti ($ ("ul.messages"))
& Nbsp; setTimeout (fade_out, 5000);
& Nbsp;. $ ("Ul.messages") BIND ("click", fade_out);
& Nbsp;});
& Nbsp; `` `
& Nbsp; blokas ("turinį")
& Nbsp; apačia:
& Nbsp; # psl:
& Nbsp; # 'Tai yra komentarų.
& Nbsp; # span: '|'
& Nbsp; # '& kopija; 2012 CrossFit "
ĮRENGIMAS
& Nbsp; PIP įdiegti faneros
& Nbsp; sluoksnių
Sintaksė
Kiekviena eilutė prasideda pareiškimą, kuris gali būti arba funkcija (div, blokas) pažodinis (',' '') arba kontrolės ataskaita (jei kitur, už).
Funkcijos gauti vadinamas su argumentais ir "bloko":
# argumentai (() {}), blokas blokas ()
p
# argumentai ((), {"klasė": "Pa"}), blokas blokas ()
skyrius (class = "Dalintis")
# argumentai ((automatinio fokusavimo), {"id": "bio"}), blokas blokas (pažodinis ("Tai mano bio"),)
circle (automatinis fokusavimas, id = "bio"): "Tai yra mano bio"
Net jei nėra "blokas", gausite ne mažiau kaip per tuščią bloko objektą, galite skambinti block.render toliau. Tai bus "falsey", nors, todėl jūs galite patikrinti, ar blokas egzistavimą. Minimalus "truthy" blokas tuščia eilutė. Tai reiškia, kad div '' duos jums "truthy" bloką, tačiau div bus "falsey" blokas.
Jūs galite išplėsti šūdas iš faneros, nes skyrius, jei blokas, visa partija, visi parašyta kaip faneros plėtinius. Be builtin pratęsimų, kalba tikrai negalėjo nieko daryti, nes tai yra jo esmė tik kalbos gramatikos.
Kodėl!?!?
Manau, kad yra galimybių kitą šablonų kalba.
Haml? Coffekup? Jade? Jie neatrodo pythonic man.
Drobinio Jane HTML? Žinoma, jei norite. Tai, manau, geriausia alternatyva faneros.
Net labai django šablonas kalba yra HTML padarė pavojingesnės įterpiant papildomą ženklinimą. Aš pažvelgė į Jade ir Haml kaip "taip, jūs gaunate ten", bet jie nebuvo prikalti ją.
Aš unapologettically DIY er. Manau, kad kartais ratai tiesiog reikia naujo išrasti! Plius, tai davė man galimybę žaisti su kalbos gramatikas, kurie, manau, yra įdomus. Aš naudoju Modgrammar
Reikalavimai :
- Python
Komentarai nerastas