Rozdílné escapování translatoru

elnathan
Člen | 19
+
0
-

Zdravím, je v pořádku (chtěné), že překlad pomocí {_'text &amp; <strong>bold</strong>'} je escapován, zatímco {translate}text &amp; <strong>bold</strong>{/translate} escapován není?
Ukázka: https://fiddle.nette.org/latte/#…

Je možné nějak globálně vynutit, aby se překlady z kratšího zápisu {_'...'} taky neescapovali jako je tomu u {translate}...{/translate}, bez nutnosti přidávat všude |noescape (zároveň nechci vypnout escapování všech proměnných)? Děkuji.

elnathan
Člen | 19
+
0
-

@DavidGrudl Je toto rozdílné chování u obou překladových značek v pořádku/cílené?

Editoval elnathan (14. 2. 10:30)

David Grudl
Nette Core | 8258
+
+1
-

Mě to takto dává smysl.

elnathan
Člen | 19
+
0
-

@DavidGrudl Já že v dokumentaci to že jeden je escapován a druhý ne, tak jsem nenašel. Je dost možné, že budou někteří lidé překvapeni = očekávají, že v Nette je vše automaticky escapováno a najednou ne. Nicméně já to tedy beru tak, že to je schválně a přizpůsobím se tomu, děkuji.

David Grudl
Nette Core | 8258
+
0
-

V dokumentaci se píše, že při vypisování se escapuju výstup. Ale jestli máš pocit, že by to mělo být někde konkrétně zmíněno, klidně pošli PR do dokumentace.

Marek Bartoš
Nette Blogger | 1298
+
+3
-

Může to být trochu matoucí v tom, že jsou to dvě funkce řešící totéž, ale výsledek je jiný, i když je zdánlivě stejný vstup.

V jednom případě ale předáváš jako vstup string, který může přijít v proměnné od uživatele, v druhém případě předáváš HTML kód, který píšeš do šablony. A HTML které píšeš do šablony se přece nikdy neascapuje, nejde o vstup od uživatele.

Když do translate předáš proměnnou, tak výstup bude stejný https://fiddle.nette.org/latte/#…