UTF-8 and ESCAPE=HTML

Mark Alway <[email protected]> Thu, 7 May 2015 01:12:02 -0700
Newsgroups gmane.comp.lang.perl.modules.html-template
Message-ID <[email protected]>
--===============8583568557575993015==
Content-Type: multipart/alternative;
	boundary="Apple-Mail=_B02D14DC-7CCD-4E50-B6B3-7BDCEC70C37E"


--Apple-Mail=_B02D14DC-7CCD-4E50-B6B3-7BDCEC70C37E
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Question about TMPL_VAR and ESCAPE=3DHTML

When using content such as =C3=B1 and a Chinese character like =E2=80=9C=E5=
=AD=97=E2=80=9D they display just fine in the browser when we use a tag =
like:

<!=E2=80=94 TMPL_VAR NAME =E2=80=94>



However, if we use:

<!=E2=80=94 TMPL_VAR NAME ESCAPE=3D=E2=80=9CHTML=E2=80=9D =E2=80=94>

the values do not display as their character but rather the HTML encoded =
value:




According to the documentation of HTML::Template escape HTML should only =
escape 5 characters:

	Replaces the following characters with their HTML entity =
equivalent: &, ", ', <, >

However, it appears that it is doing more than just replacing those 5 =
characters with their HTML entity equivalent. It seems to be changing =
UTF-8 characters as well.


When calling HTML::Template->new() we are specifying:

	utf8 =3D> 1

The server is sending a Content-Type header of text/html; charset=3DUTF-8 =
and we also employ the meta-tag for specifying the charset.

The HTML for the input tag looks like this:

<input type=3D=E2=80=9Ctext=E2=80=9D name=3D=E2=80=9Cmiddlename=E2=80=9D =
value=3D=E2=80=9C<!=E2=80=94 TMPL_VAR NAME=3D=E2=80=98middlename=E2=80=99 =
ESCAPE=3DHTML=E2=80=94>=E2=80=9D title=3D=E2=80=9CMiddle Name=E2=80=9D =
/>

Is this expected behavior?  Is there a work-around?  At this point the =
only solution I see is to do my own escaping of just any double quotes =
and then use the value in my TMPL_VAR without HTML escaping.

By the way, we=E2=80=99ve been using HTML::Template for years and it=E2=80=
=99s become a key part of our software.  We appreciate all that=E2=80=99s =
been done with it so far.

=E2=80=94 Mark=

--Apple-Mail=_B02D14DC-7CCD-4E50-B6B3-7BDCEC70C37E
Content-Type: multipart/related; type="text/html";
	boundary="Apple-Mail=_41851B98-E0C5-4F00-B330-3C854C2BD9AC"


--Apple-Mail=_41851B98-E0C5-4F00-B330-3C854C2BD9AC
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: =
after-white-space;">Question about TMPL_VAR and ESCAPE=3DHTML<div =
class=3D""><br class=3D""></div><div class=3D"">When using content such =
as =C3=B1 and a Chinese character like =E2=80=9C=E5=AD=97=E2=80=9D they =
display just fine in the browser when we use a tag like:</div><div =
class=3D""><br class=3D""></div><div class=3D"">&lt;!=E2=80=94 TMPL_VAR =
NAME =E2=80=94&gt;</div><div class=3D""><br class=3D""></div><div =
class=3D""><img height=3D"42" width=3D"152" apple-width=3D"yes" =
apple-height=3D"yes" apple-inline=3D"yes" =
id=3D"581899BB-E56D-4736-AB27-FC2DC1E09565" =
src=3D"cid:202B76A7-4A11-4450-9EA3-D92F958A7EEB" class=3D""></div><div =
class=3D""><br class=3D""></div><div class=3D"">However, if we =
use:</div><div class=3D""><br class=3D""></div><div class=3D"">&lt;!=E2=80=
=94 TMPL_VAR NAME ESCAPE=3D=E2=80=9CHTML=E2=80=9D =E2=80=94&gt;</div><div =
class=3D""><br class=3D""></div><div class=3D"">the values do not =
display as their character but rather the HTML encoded value:</div><div =
class=3D""><br class=3D""></div><div class=3D""><img height=3D"47" =
width=3D"150" apple-width=3D"yes" apple-height=3D"yes" =
apple-inline=3D"yes" id=3D"D5302D6C-9B0E-4DEF-9CA3-CE3C0487DDB4" =
src=3D"cid:BB594BF1-4FE8-482D-8A62-DBE51EACE648" class=3D""></div><div =
class=3D""><br class=3D""></div><div class=3D""><br class=3D""></div><div =
class=3D"">According to the documentation of HTML::Template escape HTML =
should only escape 5 characters:</div><div class=3D""><br =
class=3D""></div><div class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span>Replaces the following characters =
with their HTML entity =
equivalent:&nbsp;&amp;,&nbsp;",&nbsp;',&nbsp;&lt;,&nbsp;&gt;</div><div =
class=3D""><br class=3D""></div><div class=3D"">However, it appears that =
it is doing more than just replacing those 5 characters with their HTML =
entity equivalent. It seems to be changing UTF-8 characters as =
well.</div><div class=3D""><br class=3D""></div><div class=3D""><br =
class=3D""></div><div class=3D"">When calling HTML::Template-&gt;new() =
we are specifying:</div><div class=3D""><br class=3D""></div><div =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space:pre">	=
</span>utf8&nbsp;=3D&gt; 1</div><div class=3D""><br class=3D""></div><div =
class=3D"">The server is sending a Content-Type header =
of&nbsp;text/html; charset=3DUTF-8 and we also employ the meta-tag for =
specifying the charset.</div><div class=3D""><br class=3D""></div><div =
class=3D"">The HTML for the input tag looks like this:</div><div =
class=3D""><br class=3D""></div><div class=3D"">&lt;input =
type=3D=E2=80=9Ctext=E2=80=9D name=3D=E2=80=9Cmiddlename=E2=80=9D =
value=3D=E2=80=9C&lt;!=E2=80=94 TMPL_VAR NAME=3D=E2=80=98middlename=E2=80=99=
 ESCAPE=3DHTML=E2=80=94&gt;=E2=80=9D title=3D=E2=80=9CMiddle Name=E2=80=9D=
 /&gt;</div><div class=3D""><br class=3D""></div><div class=3D"">Is this =
expected behavior? &nbsp;Is there a work-around? &nbsp;At this point the =
only solution I see is to do my own escaping of just any double quotes =
and then use the value in my TMPL_VAR without HTML escaping.</div><div =
class=3D""><br class=3D""></div><div class=3D"">By the way, we=E2=80=99ve =
been using HTML::Template for years and it=E2=80=99s become a key part =
of our software. &nbsp;We appreciate all that=E2=80=99s been done with =
it so far.</div><div class=3D""><br class=3D""></div><div class=3D"">=E2=80=
=94 Mark</div></body></html>=

--Apple-Mail=_41851B98-E0C5-4F00-B330-3C854C2BD9AC
Content-Transfer-Encoding: base64
Content-Disposition: inline;
	filename="Screen Shot 2015-05-07 at 12.39.55 AM.png"
Content-Type: image/png; x-mac-hide-extension=yes; x-unix-mode=0644;
	name="Screen Shot 2015-05-07 at 12.39.55 AM.png"
Content-Id: <202B76A7-4A11-4450-9EA3-D92F958A7EEB>

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
gI7U+V58NrDIH0oTZpZ6VNaD/4x/AEViACPOivrAAAABnGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAA
AAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUg
NS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIv
MjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgog
ICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAg
ICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4xNTI8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgog
ICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+NDI8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgog
ICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KnUjG2wAA
By5JREFUeAHtWwlMVFcUPeIMDDsOog0VUBAVBYsKFtMSKkvdIlVMJCltilZwa91StUgq6UJZYi2j
UVFiS4ioaFHB4FJREVq0QYmVxVqKCmpaRBAcwIH51L7/hxn+TJlhhsUgvJfw593777vvvvNO7v0z
vD/sBWmgjSLQTwgY9ZNf6pYiwCFACUaJ0K8IUIL1K7zUOSUY5UC/IiDQx/uNGzf0MaM2QxiBGTNm
dLl6vQjGjtTmoEuvVDmkENCVgGiJHFJUePmLpQR7+ZgPqRl7TbCnlZV4ygwpzOhiDUCgBwRjIJVK
uT+GqUXWivEQb84mJJOp9FIZZZwBezCoTfV+yFehIL2OYKtZsImMxCiYwcwzEpEtOfh8bQ4xMQNa
LuLA7yvw7NY6WKoG0c5QRcBwgkGOOiQge/86SKtqAKGQw04oNAXkDETCEDwOuAqaw4YqpdTXbTjB
TD1x8q9JQFUe9iQVQCS2hrV1K9av38553pZ1G8eLN8Fwx+qBUWlwIGA4DwSWcHFhi99cxH4/l0Oh
JHUlPD6Q4GTKOriIBgcwdBV9g4DBBJNVnUPUt+chHiMGTExgglac3XoAs76SIOdAIhobW1H/sB6z
t8QhmLKtb3bpFfZiMMEEVq4IXTYK5uZC8vjF/rWg8dBxuAa9C18b8owvl0Pe3AxrscGuX2EYaeja
EDCYBYIRLvDx4buTwcHWBZOmTAJXOfm3aH/II2AwwfiISasq8eh5FX7Na4An/wbtUwQ6EOjBD62d
2DF/X4CbWwDMJF/Ak/7o1QkM7akQ6FUGG+GzCi9erFI5ox2KgCYCvcpgms6oTBHQRIASTBMRKvcp
AnqXSF2Hyvo0IupsUCEwjL4XOaj2c8AthpbIAbclgysgSrDBtZ8DbjWUYANuSwZXQDoJJi3LhpF3
BGZLitVWrdTvuvkM0ptpxCYNUjULQFaWCaOgIzr1JcmbMTv5tsZILaKsAh+SWBb/wLdvRnJIBBJJ
HLQNTAR0EoycIOSivnIoH5W8E4RFJ05zemPhcJiOfQeFqYEgxw3VG3sOsUFdxUk8Peu9rrULmy5V
igCy9u1E6p/NKos2TWar7tDOQECgG4K1kRid8B7KkFPakSVIJsnIVoTeJm8H87gMCQfL8ZyopHfz
uCzDZr2ZYecAB2POUJte4UVxrS06i8VkHDt26uojqJTx7yr6TRAhwleE5WFpqOIRXmlZciYNUzt8
GAUl4lI1y95mHN6WiOjEJM43q/8pN1cV58b0W9zpW+bJLUR/pJiftTl3t5PESv/003AEuiEYcejg
hk83OGHDsRLO+9PifKR4+SN+MimDRCNvaUBWQS0YphqfhabDbMsmtBQkYHtwx8lDbXp+rE9+w+g1
JzBnbyz+LUpC4rhCuG7M/d+x6wbY4JPtUfgSxVi4ky3bAigoDDDVuXgjpgDfZCRxPk55VyDw6B1u
lmd/VCDunjMeXk7AKe8HWBp1Hssyv8M9iT8kSdm4LXuMuHm7Ue63Gm1FKajYaov5oXvUsjY/XNrX
H4HuCSYVwmPObODCZVSiHQX7ryF++ZsYpSxNiiP5EDQ9QQrJMMsWukEkEmNRWBDwoA2MNj0vRmnN
Q056UHgRiZJsFJQR6l6/QjaeZ8R1ZZCL7BGVEYLS4/uQWlYHK3uFjcAxEDWZWzDi7lUkJx/FjxcA
PytFcGwZjV8ZAHsLMcaNJ8T3XQB/Rys4zfSCHxrR3FCHS6ybR6XYKzmCzKv3iVCBAprFCA69a93/
kt/QDMuRAUiyScXhMz+juNwJO7xfR4GSYMr5GcXzmjLtCEytABtSZrTpleO4T7YUv4Zpns6wIC+O
GE8Jx7QmAWy7iK6NlEaB8zxcX10Ir/A4bnQSuTLVeQhYkg5bXx9EzHfHHN9ryODuKi/tXEdOpnKf
MFqhZNTr7HSPiXC3IDqhI055yDHGsosAlO7op14I6M5gHZyRwxwL1roiJuYEKoPnw4W4/t/3Nhs7
hJGieTq/mtxtR/HZX7gABNr0vPBMLe2I9A8px+6YG/gW7GouY2nsHQh17O/05RsRb9OZ4p7XV6MU
Pji282O8HzgObfeBK7X1Sr7zZiNdzS8WInNMIOp6Yzv4k/m9R9ZhUWwOmoUm6uOoZDACOraQ+GIr
DDkGzTaXt/3gTsrGmpCJRCJZhpz/Um0vayNwxq7UEPiFf424GCI7kFJk76ZdT0xY97ZkD9nyVh5d
hcmhG4iGbTY4lr4ELO34rSOUDpUYmw6G49CSVE62HOuJCOzGaO9rRBYhzItY55O3zslRSMVz2nDO
TmhM4tIgmLHAETvSQxEcFgcjNnbSoqKj4DtS0afXniPQD/+LbIW0iYGlhblGVNr0PDOG2JC3wk3J
WN3M541R67aTuWW9Hi8kGU3UswDUoqEC0A8Eo7BSBDoR0P0M1mlHexSBHiFACdYj2OggfRGgBNMX
KWrXIwQowXoEGx2kLwL/AShDPP3tZaQKAAAAAElFTkSuQmCC
--Apple-Mail=_41851B98-E0C5-4F00-B330-3C854C2BD9AC
Content-Transfer-Encoding: base64
Content-Disposition: inline;
	filename="Screen Shot 2015-05-07 at 12.39.34 AM.png"
Content-Type: image/png; x-mac-hide-extension=yes; x-unix-mode=0644;
	name="Screen Shot 2015-05-07 at 12.39.34 AM.png"
Content-Id: <BB594BF1-4FE8-482D-8A62-DBE51EACE648>

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
gI7U+V58NrDIH0oTZpZ6VNaD/4x/AEViACPOivrAAAABnGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAA
AAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUg
NS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIv
MjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgog
ICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAg
ICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4xNTA8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgog
ICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+NDc8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgog
ICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KwqwBRgAA
Ca9JREFUeAHtWg1sU9cV/kKdLBkEZfyMiQ0odG1FhyktpEPaIhx+REtV5oJUpCVolAkquk0y1dYJ
RwLNDIGjjuW1Wp0JdYlQDQUDwqlas5VAcSbMBI4qQzAdDjWhrsafYTap09js7tz3/GzHP2CCTSv5
Xin2e+ee79x7v/vpnOu8V8aoQTTBQIEZGFHgeCKcYEBmQAhLCKEoDAhhFYVWEVQIS2igKAwIYRWF
VhFUCEtooCgMaHJFdbvdubqEXTAgMzB79uycTOQUFkfcCZgzougoCQbulnhEKSwJGTz4RQphPXjO
S2JEIayS2OYHv0ghrAfPeUmMmLewBi4ewcqyMpTR3/r2E4il0XO6vQnt58K42NGEpn3n4r1XsW/z
ShlTNnMl2k98kUDdOL0vEW/l5l34IhFwKGZXdxIT7j2E9fXKHOpfaUXvgBouN0b1EN8PmAH+dkO2
durUqRRzlNkawbRmFwv6bPxtCOYKpXSzCJO0WuYgm9esZ2Z3RO50mbXka2BOn5+5bSYZZ/NRX8jN
dBTDaHOzgN/NzDowneSRMR6LjvyMzO0PMLedY3RMDhfxsEbCNFo6WSDgY200HxgcLEqonJjUKYrr
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
--Apple-Mail=_41851B98-E0C5-4F00-B330-3C854C2BD9AC--

--Apple-Mail=_B02D14DC-7CCD-4E50-B6B3-7BDCEC70C37E--


--===============8583568557575993015==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
--===============8583568557575993015==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Html-template-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/html-template-users

--===============8583568557575993015==--