From: Mischa POSLAWSKY Date: Sat, 13 Sep 2008 08:48:38 +0000 (+0000) Subject: digraphs: mark reversed matches X-Git-Tag: v1.2~50 X-Git-Url: http://git.shiar.nl/sheet.git/commitdiff_plain/0521f436ed93fcfee1073656b425522cef34b204 digraphs: mark reversed matches At undefined digraph points, at least Vim also recognizes another digraph with its characters swapped if it exists. Style these cases differently, to say it might actually do something as well. Also hover the code, but do not show any additional information to discourage actual usage instead of the original. --- diff --git a/digraphs.css b/digraphs.css index 60c0a56..dc62529 100644 --- a/digraphs.css +++ b/digraphs.css @@ -70,7 +70,14 @@ td { background: #DDD; } -td.X {background: #FFF} /* unidentified */ +/* properties */ +td.X {background: #FFF} /* unidentified */ +td.Xr {background: #EEE} /* reverse */ +td.Xa {color: #0A0} /* ascii */ +td.Xl {color: #070} /* latin1 */ +td.Co {color: #800} /* private */ +td.Xz {color: #D00} /* proposed */ + td.Lm, td.Mc, td.Me, td.Zl, td.Zp, td.Cs {background: #F00} /* unstyled */ /* letter scripts */ @@ -96,12 +103,6 @@ td.Cc {color: #666; background: #BBB} /* control */ td.Zs {background: #ACB} /* space */ td.Zs span {background: #EEE} -/* properties */ -td.Xa {color: #0A0} /* ascii */ -td.Xl {color: #070} /* latin1 */ -td.Co {color: #800} /* private */ -td.Xz {color: #D00} /* proposed */ - /* hover effects */ td.X:hover {cursor: help} td.Greek:hover {background: #FA9} diff --git a/digraphs.inc.pl b/digraphs.inc.pl index 271d464..79d09ec 100644 --- a/digraphs.inc.pl +++ b/digraphs.inc.pl @@ -1,4 +1,5 @@ -{ ++{ +(map {$_=>0} qw{!! )! *! -! 2! :! ! I! b! c! q! x! !" "" '" (" +" ," -" ." /" 0" 1" 3" 5" 6" 9" :" ;" <" =" >" ?" _" d" i" p" "% '% 0% 2% 5% 6% !' "' %' '' (' +' ,' -' .' 0' 6' 9' :' ;' <' >' ?' G' m' n' !( "( '( -( A( C( I( S( U( _( s( ") ') >) C) I) S) U) _) s) ** -* 1* 2* 5* 6* >* P* X* _* s* "+ ++ -+ 5+ 6+ S+ Z+ _+ s+ !, ', +, ,, G, _, !- )- +- -- 1- 2- 3- 6- :- >- ?- L- M- N- S- T- V- X- a- o- s- v- .. 3. 6. 9. :. M. P. S. _. +/ -/ // 0/ =/ >/ c/ f/ (0 +0 .0 00 20 50 L0 M0 R0 S0 U0 _0 a0 m0 o0 s0 u0 "1 '1 +1 .1 21 31 41 51 61 81 H1 M1 N1 R1 S1 T1 a1 c1 h1 j1 r1 s1 "2 %2 '2 .2 /2 32 52 R2 S2 a2 c2 h2 j2 r2 s2 !3 "3 '3 *3 +3 -3 .3 /3 43 53 83 M3 R3 S3 _3 a3 c3 h3 j3 r3 s3 !4 -4 .4 /4 54 M4 R4 S4 _4 a4 c4 h4 j4 r4 s4 %5 .5 65 85 R5 S5 a5 c5 r5 s5 %6 .6 M6 R6 S6 a6 c6 r6 s6 .7 87 <7 >7 R7 S7 a7 c7 r7 s7 .8 R8 S8 a8 c8 r8 s8 "9 '9 .9 R9 S9 a9 c9 r9 s9 (: ): +: .: 3: 9: :: R: S: X: !; '; +; ;; S; _; "< '< (< *< +< -< /< 1< 3< 7< << =< >< H< "= '= += 2= 3= <= == >= ?= S= T= _= e= s= "> '> +> 1> 7> => >> H> V> !? *? +? ,? -? .? /? 1? 2? :? ;? =? I? S? !A %A 'A (A )A *A +A -A .A 0A 1A 2A 3A 5A 6A 7A 8A :A ;A A ?A AA CA EA KA NA OA tA *B +B -B .B /B 2B =B BB DB HB LB SB _B aB dB eB iB oB uB %C 'C *C ,C .C 2C 3C C CC GC IC NC RC aC iC oC tC uC %D *D +D ,D -D .D /D 1D 2D 3D 4D ;D E ?E BE CE DE GE ME QE SE TE XE ZE hE uE *F .F 2F 3F =F AF BF DF FF IF SF dF lF mF %G 'G (G *G +G ,G -G .G /G 2G 3G G CG FG SG aG eG iG oG uG 'H *H +H ,H .H /H :H =H >H HH IH JH OH SH TH WH aH eH iH oH uH !I %I 'I (I )I *I -I .I /I 2I 5I 6I 8I :I ;I I ?I EI II JI NI OI SI cI lI nI oI uI %J *J +J /J J AJ EJ UJ %K 'K *K +K ,K 2K 3K O ?O CO EO IO KO RO SO bO mO rO %P 'P *P +P .P /P 1P 2P 3P =P AP DP IP LP MP OP PP RP UP aP dP eP iP oP tP uP *Q +Q ;Q 'R )R *R +R ,R .R /R 8R ;R S AS BS CS ES GS HS IS MS OS RS SS TS US XS YS aS bS cS eS hS iS nS oS uS *T +T ,T .T /T 2T 3T ;T U ?U AU BU DU HU LU RU SU TU hU lU rU %V *V 2V 3V =V ?V HV IV LV RV SV TV VV aV eV hV iV lV oV rV sV uV !W %W 'W *W +W .W :W =W >W AW WW aW eW iW oW *X +X .X :X XX !Y %Y 'Y *Y -Y .Y /Y 2Y 3Y :Y ;Y =Y >Y ?Y AY IY OY UY YY aY eY oY uY %Z 'Z *Z +Z .Z /Z 2Z Z JZ _Z aZ eZ iZ jZ oZ uZ !a %a 'a (a )a *a +a -a .a 0a 1a 2a 3a 4a 5a 6a 7a 8a :a ;a a ?a Ha Ia Ma Na Ra Sa aa ca ea ha ia ma na ra sa ua *b +b -b .b /b 2b 3b 4b =b ?b Rb _b ab eb ib ob rb ub %c 'c *c +c ,c .c 2c 3c 4c 9c c Cc Dc Hc Rc Sc hc oc rc uc %d *d +d ,d -d .d /d 2d 4d 9d ;d e ?e Ie Ne de ie ne re ze (f *f +f .f 2f 3f 4f =f ?f If Sf ff if lf tf %g 'g (g *g +g ,g -g .g /g 2g 3g 4g g Ig ag eg fg ig ng og ug *h +h ,h .h /h 2h 4h :h =h >h Ih _h ah eh hh ih kh oh uh wh !i %i 'i (i )i *i +i -i .i /i 2i 3i 4i 5i 6i 8i :i ;i i ?i Ii ei ii ji oi ui %j *j +j .j /j 3j 4j j aj ej uj 'k *k +k ,k 2k 3k 4k o ?o Co Fo Io eo io uo 'p *p +p .p /p 2p 3p 4p =p ?p ap ep ip mp op up *q +q 2q 4q ;q pq 'r )r *r +r ,r .r /r 4r 8r ;r s ?s Bs as cs es hs is ns os ss ts us *t +t ,t .t /t 2t 3t 4t 9t :t ;t u ?u Hu Lu Ru Tu hu lu ru %v *v +v 2v 3v 4v 9v =v ?v Hv Iv Lv Rv hv lv rv uv vv !w %w 'w *w +w .w 0w :w >w Aw Hw Iw aw ew iw ow ww *x +x .x 4x :x !y %y 'y *y +y -y .y /y 0y 2y 3y :y ;y =y >y ?y Ay Hy Iy Oy Uy ay iy oy ry uy yy %z 'z *z +z .z /z 2z 4z 9z ;z z ?z Hz _z az ez hz iz oz uz}), q{!!}=>[124,'VERTICAL LINE','Sm Xa','Common'], q{!)}=>[125,'RIGHT CURLY BRACKET','Pe Xa','Common'], q{!*}=>[57382,'','Co','Common'], diff --git a/digraphs.plp b/digraphs.plp index b62b577..075a398 100644 --- a/digraphs.plp +++ b/digraphs.plp @@ -57,6 +57,10 @@ for my $c1group (@chars) { print ''; next; } + if (ref $di->{$mnem} ne 'ARRAY') { + printf '', quote($mnem); + next; + } my ($codepoint, $name, $prop, $script) = @{ $di->{$mnem} }; my $glyph = chr $codepoint; diff --git a/rfc1345convert b/rfc1345convert index d33377f..c5a3e80 100644 --- a/rfc1345convert +++ b/rfc1345convert @@ -90,7 +90,10 @@ for (keys %di) { # output perl code of hash # (assume no backslashes or curlies, so we can just q{} w/o escaping) -print "{\n"; +print "+{\n"; +printf '(map {$_=>0} qw{%s}),'."\n", join(' ', + map { substr($_, 1, 1).substr($_, 0, 1) } sort keys %di +); printf "q{%s}=>[%s],\n", $_, join(',', $di{$_}, # glyph code point $info{$_} # optional additional arguments