Ja, mimo czasu jaki minął od wspomnianego tematu - podtrzymuję swoje tezy, choć z racji pracy mam ostatnimi czasy z twigiem wiele do czynienia. Każdy kto ma do wykombinowania w S2 coś mniej trywialnego, może szykować sobie od razu pistolet

Przykład? Miałem niedawno do ogarnięcia formularz, który nakładał na siebie relację 1 do wielu z relacją wiele do wielu z parametrem jako element dynamiczny formularza. Relacja 1 do wielu była zależna od jednego z pól formularza, zaś wiele do wielu z parametrem musiała się dynamicznie do niej dostosowywać, a by było wesoło, wybór pwego decydującego elementu nie mógł być zapamiętany od razu do encji, gdyż mógł zniszzyć isniejącą już relację. Twig głupiał, zaś samo S2 miało problemy z ogarnięciem walidacji tego. Event listenery w połączeniu z customowymi form_themes z danymi dodatkowymi rzucanymi przez includowanie podszablonów z parametrami. A by jeszcze było na złość, to niektóre elementy nie mogły mieć zgodnego z innymi wyświetlania, czylipwne elementy dziedziczyły po globalnych customowych form_themes, a inne nie. Zgranie tego do kupy to był horror. O takich drobiazgach jak fakt, że tworzenie customowych form themes w postaci mocno zaawansowanej w sieci jest tyle co kot napłakał - nie piszę. Gdy przychodzi co do czego, to musisz cały kod odpowiedzialny za daną funkcjonalność analizować i rozgryzać. Przykład? Jak twig przyjmuje pary klucz wartość, gdy musi je obliczyć dynamicznie lub przykładowo klucz jest obiektem, z którego wybieramy jedną z własności? Ja się z tym zderzyłem dla generowania path

Kod
path( route_name, { argument.here_name: argument.here_value } )
Takie coś sypnie wam exceptionem o nieoczekiwanej kropce, ponieważ twig nie przyjmuje jako klucza czegokolwiek innego niż bezpośrednio string. Ja grzebiąc w bebechach i niejedną stronę przejrzawszy w końcu znalazłem obejście. Trzeba w twigu wymusić wykonanie tego działania poprzez ujęcie w nawiasy okrągłe:
Kod
path( route_name, { (argument.here_name): argument.here_value } )
Ale ile osób w twigu pracujących z takim czymś się spotkała? Nie sądzę by wielu, bo inaczej w google odpowiedź byłaby od razu do znalezienia. A im głębiej w las, tym więcej drzew...
EDIT: Żeby nie było, że hejt sam... Uważam i tak twig za prawdopodobnie najmilszy w użytkowaniu system szablonów dla php, aczkolwiek nie do końca zgodzę się z punktem o wspieraniu przez IDE. Bardziej zagnieżdżone konstrukcje powodują przykładowo w NetBeans "głupienie klamerek". Gdy jest odwołanie do odwołania bądź zagnieżdżona tablica, to podpowiadanie składni siada i zwyczajnie jest ono niepoprawne, ale to już błąd IDE, a nie samego twiga