Aion-Format

 view release on metacpan or  search on metacpan

lib/Aion/Format/Html.pm  view on Meta::CPAN

package Aion::Format::Html;

use common::sense;

use Exporter qw/import/;
our @EXPORT = our @EXPORT_OK = grep {
	*{$Aion::Format::Html::{$_}}{CODE} && !/^(_|(NaN|import)\z)/n
} keys %Aion::Format::Html::;

# Экранирует символы html
my %HTML_SIM = (qw/< &lt; > &gt; & &amp; \' &apos; " &quot;/, "\n" => '<br>', "\t" => '&emsp;');
sub to_html (;$) {
	my ($s) = @_? @_: $_;
	$s =~ s/[<>&\'\"]/$HTML_SIM{$&}/ge;
	$s
}

our %ENTITIES = (
#
# Управляющие символы C0 и основная латиница
# U+0000—U+007F
# Данный диапазон Юникода полностью соответствует стандарту ASCII за исключением соглашения о наложении литер через возврат на шаг.[3]
# Символ	Назначение	Мнемоника	HTML	Код
#
# U+0000—U+001F — управляющие символы C0
# табуляция — HT (ANSI), ГТ (ГОСТ)	&Tab;	5.0	U+0009 &#9;
Tab => 9,
# перевод строки — LF (ANSI), ПС (ГОСТ)	&NewLine;	5.0	U+000A &#10;
NewLine => 10,
#
# U+0032—U+007E — основная латиница
#
# пробел			U+0020 &#32;
# !	восклицательный знак	&excl;	5.0	U+0021 &#33;
excl => 33,
# "	двойная кавычка[4]	&QUOT;	5.0	U+0022 &#34; &quot;	2.0
quot => 34,
QUOT => 34,
# #	знак номера («решётка» или «диез»)	&num;	5.0	U+0023 &#35;
num => 35,
# $	знак доллара	&dollar;	5.0	U+0024 &#36;
dollar => 36,
# %	знак процента	&percnt;	5.0	U+0025 &#37;
percnt => 37,
# &	амперсанд	&AMP;	5.0	U+0026 &#38;  &amp;	1.0/2.0
amp => 38,
AMP => 38,
# '	одинарная кавычка (занимающий позицию апостроф)[5]	&apos;	5.0	U+0027 &#39;
apos => 39,
# (	левая круглая скобка	&lpar;	5.0	U+0028 &#40;
lpar => 40,
# )	правая круглая скобка	&rpar;	5.0	U+0029 &#41;
rpar => 41,
# *	звёздочка (может быть как высоко, так и среднерасположенной)[6][7]	&ast;	5.0	U+002A &#42; &midast;
ast => 42,
midast => 42,
# +	знак плюс	&plus;	5.0	U+002B &#43;
plus => 43,
# ,	запятая[8]	&comma;	5.0	U+002C &#44;
comma => 44,
# -	чёрточка-минус (не рекомендован к использованию)[9][10]			U+002D &#45;
# .	точка[11]	&period;	5.0	U+002E &#46;
period => 46,
# /	косая черта (солидус)[12][13]	&sol;	5.0	U+002F &#47;
sol => 47,
#
#



( run in 0.907 second using v1.01-cache-2.11-cpan-0bb4e1dffa6 )