4 title => 'unicode glyph cheat sheet',
7 "Common Unicode characters with digraph or code point, layed out for quick location.",
8 "Includes general symbols, arrows, drawing characters, and IPA letters.",
11 unicode glyph char character reference common ipa symbol sign mark table digraph
13 stylesheet => [qw'light dark mono circus red'],
14 data => [qw'unicode-table.inc.pl unicode-char.inc.pl'],
18 <h1>Common Unicode</h1>
21 Glyphs are followed by
22 <a href="/digraphs">digraph</a> or <a href="/charset">code point</a>,
23 i^k or i^vu respectively in <a href="/vi">Vim</a>.
30 use Shiar_Sheet::FormatChar;
31 my $glyphs = Shiar_Sheet::FormatChar->new;
33 if (exists $get{di}) {
34 $glyphs->{anno} = [ (!defined $get{di} || $get{di}) && 'di', 'hex' ];
39 if (exists $get{html}) {
40 $glyphs->{anno} = ['html', 'xml'];
41 $glyphs->{style} = 'html';
44 our $verbose = exists $get{v};
50 symbols/binary?symbols/binary=-5
121 splice @config, 4, 2, qw(
122 latin/vowels=-5?latin/vowels
125 ) if exists $get{html};
127 $_ and m{/*+(.+)} and @config = split /[ ]/, $1 for $ENV{PATH_INFO}, $get{q};
129 my $tables = do 'unicode-table.inc.pl' or die $@ || $!;
132 my $_ = /(.*)\?(.*)/ ? ($verbose ? $2 : $1) : $_;
142 $group = $1 if s{^([^/]+)/}{};
143 my @select = s/=(.*)// ? split(/=/, $1) : ();
144 my $table = $tables->{$group}->{$_}
145 or die "Unknown table specified: $group/$_";
149 for ($rowlen = 1; $rowlen++; $rowlen <= $#$table) {
150 last if $table->[$rowlen] =~ /\./;
153 my $end = (s/-(.+)?// ? ($1 // @$table / $rowlen - 1) : $_) + 1;
154 $_ * $rowlen .. $end * $rowlen - 1;
156 $table = [ @$table[@cells] ];
165 <table class="glyphs"><tr>
166 <td class="X l5">ascii
167 <td class="X l4"><:= $glyphs->{style} eq 'di' ? 'digraph' : 'latin1' :>
168 <td class="X l3"><:= $glyphs->{style} eq 'di' ? 'proposed' : 'HTML4' :>
169 <td class="X l2">unicode ≤6.0
170 <td class="X l1">other unicode
171 <td class="X ex">discouraged
175 <script type="text/javascript" src="/clipboard.js"></script>