Seite 2 von 2
Verfasst: Dienstag 6. März 2007, 14:08
von jens
Mit fällt zuerst das |e im ersten Beispiel auf. Weiter unten erklärt es sich dann, das |e ein Alias für |escape ist... Ich würde allerdings in dem ersten Beispiel lieber escape ausschreiben.
Schön wäre es, wenn die Überschriften Anker sind.
IMHO würde ich "Macro" umbenennen. Wie hier im Thread schon mal erwähnt wurde, hat das Wort alleine schon ein negativen Beigeschmack.
Wie wäre es mit subroutine oder einfach nur "def" ?
Der Unterschied zwischen include und extends ist mir nicht so ganz klar. Kann man das nicht vereinheitlichen?
Beim Abschnitt "Scopes", sagt mit foil ehr weniger was. IMHO passt Layer da besser.
Ansonsten, schöne Seite!
Was ist eigentlich mit dem JavaScript Zeug???
Verfasst: Mittwoch 7. März 2007, 07:41
von mitsuhiko
jens hat geschrieben:Mit fällt zuerst das |e im ersten Beispiel auf. Weiter unten erklärt es sich dann, das |e ein Alias für |escape ist... Ich würde allerdings in dem ersten Beispiel lieber escape ausschreiben.
Gute idee, werd ich machen,
Schön wäre es, wenn die Überschriften Anker sind.
Sind sie ja.
IMHO würde ich "Macro" umbenennen. Wie hier im Thread schon mal erwähnt wurde, hat das Wort alleine schon ein negativen Beigeschmack.
Wie wäre es mit subroutine oder einfach nur "def" ?
1.) enddef schaut seltsam aus, 2.) def ist ein Blöder name für solche aufrufbaren Blöcke, mir ist nichtmal klar für was es bei Python/Ruby steht. Und was ist so negativ am Wort macro?
Der Unterschied zwischen include und extends ist mir nicht so ganz klar. Kann man das nicht vereinheitlichen?
Nein. extends aktiviert die Inheritance. Include binded ein anderes Template file an einer Stelle ein als wäre es hier geschrieben worden.
Beim Abschnitt "Scopes", sagt mit foil ehr weniger was. IMHO passt Layer da besser.
mit "stack of foils" hab ich versucht bei einem Beispiel aus dem realen Leben zu bleiben
Was ist eigentlich mit dem JavaScript Zeug???
Weil ein Teil der Semantik im Translator steckt fang ich den JS Translator erst an, wenn sich am Python Translator nichts mehr ändert.
Verfasst: Mittwoch 7. März 2007, 13:51
von rafael
blackbird hat geschrieben:
Schön wäre es, wenn die Überschriften Anker sind.
Sind sie ja.
Ich glaube er meint, dass ein "#" oder so hinter jeder Überschrift steht wie im Wiki. Fände ich auch gut

Verfasst: Mittwoch 7. März 2007, 13:57
von jens
Ne, ich hab das Menü übersehen und nur auf die Überschriften selber geschaut, diese verweisen aber nicht per Anker auf sich selber...
Verfasst: Mittwoch 7. März 2007, 20:27
von mq
blackbird hat geschrieben:def ist ein Blöder name für solche aufrufbaren Blöcke, mir ist nichtmal klar für was es bei Python/Ruby steht.
Blind geraten: define?
Verfasst: Mittwoch 7. März 2007, 21:05
von mitsuhiko
lumax hat geschrieben:blackbird hat geschrieben:def ist ein Blöder name für solche aufrufbaren Blöcke, mir ist nichtmal klar für was es bei Python/Ruby steht.
Blind geraten: define?
Wirds wohl auch sein. Allerdings definiert man eben nicht nur Funktionen. Von daher finde ich es ein nettes Keyword für Python, aber sicher nicht für eine Template Engine.
Verfasst: Montag 12. März 2007, 20:04
von mitsuhiko
So. Unabhängig von dieser Diskussion schreitet Jinja voran

Letzte wichtige Neuerung:
Debugging Support. Unabhängig vom Framework

Verfasst: Dienstag 13. März 2007, 08:54
von jens
Das ist ja super! Die django Jungs sollten wirklich mal überlegen auf jinja zu setzten
Der passende Blog Eintrag:
http://pocoo.org/blog/jinja-progress/
Verfasst: Dienstag 13. März 2007, 18:35
von Leonidas
jens hat geschrieben:Das ist ja super! Die django Jungs sollten wirklich mal überlegen auf jinja zu setzten

Ich zweifle nicht an, dass Jinja sicher toll ist, aber die Django-Leute wissen,
warum sie ihr System einsetzen und eben so weit wie möglich von anderen Systemen unabhängig bleiben wollen. Und ja, die Tracebacks in den Django-Templates dürften besser sein - die auszubessern ist aber einfacher als auf ein ganzes neues Templete-System zu setzen.
Verfasst: Dienstag 13. März 2007, 23:53
von mitsuhiko
jens hat geschrieben:Das ist ja super! Die django Jungs sollten wirklich mal überlegen auf jinja zu setzten

Für django ist die django Template Engine denke ich ideal. Jinja ist ganz anders aufgebaut und die Templates sind nicht ganz kompatibel. Ein Wechsel für die Entwickler wäre eine schlechte Idee.
Verfasst: Mittwoch 14. März 2007, 09:56
von EnTeQuAk
Schon weil dann die Kompatibilität extrem schrumpfen würde... denn in Jinja 1 ist ja nun einiges anders, als in Django, wenn ich das richtig bemerkt habe oder?
Und ohne eine Hundertprozentige (oder nahezu) Rückwertskompatibilität denke ich, werden die solche Änderungen nicht einfügen... dafür ist Django seit zu langer Zeit recht stabil und wird zu gut und oft genutzt, als das sie durch eine solche Änderung etliche Leute verärgern könnten

(vor allem, da empfohlen wird, die jeweils letzte SVN Version zu nutzen

)
MfG EnTeQuAk
Verfasst: Mittwoch 14. März 2007, 10:53
von Y0Gi
Bin ich der einzige, dem diese ewigen Vergleiche und "X sollte lieber Y benutzen" auf die Nerven gehen?
Verfasst: Mittwoch 14. März 2007, 11:23
von EnTeQuAk
*meld*
sind wir schon zwei... und sicherlich noch einige mehr hier im Forum.
Aber das steht hier nun wirklich
nicht zur debatte
Back To Jinja
Gibet schon nen Plan, wann Jinja 1 "offiziell" rauskommen wird?
Und wie schauts mit der Umstellung von 'pocoo' aus? -- -- wirds gleich dannach umgestellt oder erst nach dem 0.2dev Release?
MfG EnTeQuAk
Verfasst: Mittwoch 14. März 2007, 13:08
von BlackJack
Mach mindestens drei daraus. Und diesen Geschwindigkeitswahn bei Templatesystemen kann ich auch nicht so recht verstehen. Kann mir nur schwer Vorstellen, dass die Zeit im Vergleich zur Datenübetragung und Datenbankabfrage so stark ins Gewicht fällt.
Mit Templatesystemen ist es ja noch schlimmer als mit Webframeworks. Jeder will anscheinend sein eigenes haben.

Verfasst: Mittwoch 14. März 2007, 16:30
von mitsuhiko
BlackJack hat geschrieben:Mach mindestens drei daraus. Und diesen Geschwindigkeitswahn bei Templatesystemen kann ich auch nicht so recht verstehen. Kann mir nur schwer Vorstellen, dass die Zeit im Vergleich zur Datenübetragung und Datenbankabfrage so stark ins Gewicht fällt.
Also wenn pocoo 0.2 Sekunden im Template verscheißt ist das verdammt schlecht. Ohne Grund wurde Jinja nicht neu geschrieben
Mit Templatesystemen ist es ja noch schlimmer als mit Webframeworks. Jeder will anscheinend sein eigenes haben.

Weder das eine noch das andere stört mich. Hab ich schonmal WSGI erwähnt?

Verfasst: Mittwoch 14. März 2007, 16:38
von EnTeQuAk
Mit Templatesystemen ist es ja noch schlimmer als mit Webframeworks. Jeder will anscheinend sein eigenes haben.
Ich sage mal so... Solange eine "neuerfindung" gerechtfertigt ist gibt es keinerlei Probleme... bei Colubrid oder Jinja ist das in meinen Augen gerechtfertigt, da sie gute Verwendung in pocoo haben und Jinja nebenbei eine standalone-Variante der Django-Templates ist/war
MfG EnTeQuAk
Verfasst: Mittwoch 14. März 2007, 16:49
von Leonidas
BlackJack hat geschrieben:Mit Templatesystemen ist es ja noch schlimmer als mit Webframeworks. Jeder will anscheinend sein eigenes haben.

Am schluss heißt es "nehmt Buffet oder Turbo*". Aber das hat auch Nachteile, wenn
jede TG-App ein anderes Templatesystem nutzt.
Verfasst: Dienstag 20. März 2007, 09:32
von mitsuhiko
Auf das mit dem gernellen template interface
gehe ich jetzt nicht näher ein, aber es gibt jetzt zumindest noch ein Update betreffend Jinja
Seit dem letzten Update gibts doch ein paar neue Sachen:
- Verbessertes Escaping durch Hinzufügen der {% raw %} Direktive. Jetzt kann man auch Jinja Code in Jinja Code haben ohne auf Hilfkonstrukte wie {{ "{{ mein jinja code hier }}" }} zurückgreifen zu müssen.
- Mit debug() bekommt man den aktuellen Template Context ins Template
- range() wurde hinzugefügt mit einem Schutz gegen zu große Listen
- Einige neue Filter
- i18n wird jetzt direkt in Jinja behandelt und zwar auf eine Weise, wie man es tatsächlich einfach in das eigene Programm einbinden kann ohne beschränkt zu werden (nicht so wie bei formencode ^^)
- Fehler in der Inheritance wurden behoben
- Jede Menge unittests
- Drei Neue Loader: ein Loader, der Templates via setuptools aus Python Packages laden kann, ein Loader der mehrere Loader durchprobiert und einer, der Templates aus einem Dict läd
- {% set %} und {% macros %} haben jetzt eine semantische Sonderbehandlung: Sie werden auch definiert wenn sie außerhalb sichtbarer Blöcks sind. Damit lassen sich jetzt ein paar praktische Dinge basteln

- Die unbenutzen Python Keywords wie "def", "class", "import" und co sind nun gültige Bezeichner
- diverse API Änderungen, die es einfacher machen, eigene Loader zu basteln.
- Deferred objects: Objekte die bei Zugriff erst aufgelöst werden. Brauchbar für globale Objekte die aus Datenbanken kommen und nicht immer benötigt werden.

Verfasst: Mittwoch 21. März 2007, 22:42
von mitsuhiko
So. Ich mach den Thread mal zu. Weiter gehts
hier.