[PATCH] hgweb: fix tab alignment in file view

Brodie Rao dackze at gmail.com
Thu May 14 15:19:21 CDT 2009


Just to note:

I haven't tested this with IE (don't have it handy). For IE6 and  
older, it should render as it did before. I believe it should work in  
IE7 and IE8 as it does in other browsers.

On May 14, 2009, at 4:09 PM, Brodie Rao wrote:

> # HG changeset patch
> # User Brodie Rao <me+hg at dackz.net>
> # Date 1242331656 14400
> # Node ID f59baf8f314e1ae5e1ab9bc75053e59dcf4c7518
> # Parent  a00a4db76a15b79019e9078e15df0eaf6e7af312
> hgweb: fix tab alignment in file view
>
> With the switch from table-based to div-based file output, line  
> numbers were
> counting towards tab stop alignment, throwing off the alignment of  
> all output.
>
> CSS 2 specifies that tab stop calculation starts at the left edge of  
> an
> element's content area. By wrapping each line in <tt> and setting a  
> style of
> display: inline-block, the content area is effectively reset.
>
> diff --git a/templates/coal/map b/templates/coal/map
> --- a/templates/coal/map
> +++ b/templates/coal/map
> @@ -52,7 +52,7 @@ filerevision = ../paper/filerevision.tmp
> fileannotate = ../paper/fileannotate.tmpl
> filediff = ../paper/filediff.tmpl
> filelog = ../paper/filelog.tmpl
> -fileline = '<div class="parity{parity} source"><a href="#{lineid}"  
> id="{lineid}">{linenumber}</a> {line|escape}</div>'
> +fileline = '<div class="parity{parity} source"><a href="#{lineid}"  
> id="{lineid}">{linenumber}</a> <tt>{line|escape}</tt></div>'
> filelogentry = ../paper/filelogentry.tmpl
>
> annotateline = '
> diff --git a/templates/gitweb/map b/templates/gitweb/map
> --- a/templates/gitweb/map
> +++ b/templates/gitweb/map
> @@ -70,7 +70,7 @@ filerevision = filerevision.tmpl
> fileannotate = fileannotate.tmpl
> filediff = filediff.tmpl
> filelog = filelog.tmpl
> -fileline = '<div style="font-family:monospace"  
> class="parity#parity#"><pre><a class="linenr" href="##lineid#"  
> id="#lineid#">#linenumber#</a> #line|escape#</pre></div>'
> +fileline = '<div style="font-family:monospace"  
> class="parity#parity# source"><a class="linenr" href="##lineid#"  
> id="#lineid#">#linenumber#</a> <tt>#line|escape#</tt></div>'
> annotateline = '
>   <tr style="font-family:monospace" class="parity#parity#">
>     <td class="linenr" style="text-align: right;">
> diff --git a/templates/monoblue/map b/templates/monoblue/map
> --- a/templates/monoblue/map
> +++ b/templates/monoblue/map
> @@ -61,7 +61,7 @@ filerevision = filerevision.tmpl
> fileannotate = fileannotate.tmpl
> filediff = filediff.tmpl
> filelog = filelog.tmpl
> -fileline = '<div style="font-family:monospace"  
> class="parity#parity#"><pre><a class="linenr" href="##lineid#"  
> id="#lineid#">#linenumber#</a> #line|escape#</pre></div>'
> +fileline = '<div style="font-family:monospace"  
> class="parity#parity# source"><a class="linenr" href="##lineid#"  
> id="#lineid#">#linenumber#</a> <tt>#line|escape#</tt></div>'
> annotateline = '
>   <tr class="parity{parity}">
>     <td class="linenr">
> diff --git a/templates/paper/map b/templates/paper/map
> --- a/templates/paper/map
> +++ b/templates/paper/map
> @@ -52,7 +52,7 @@ filerevision = filerevision.tmpl
> fileannotate = fileannotate.tmpl
> filediff = filediff.tmpl
> filelog = filelog.tmpl
> -fileline = '<div class="parity{parity} source"><a href="#{lineid}"  
> id="{lineid}">{linenumber}</a> {line|escape}</div>'
> +fileline = '<div class="parity{parity} source"><a href="#{lineid}"  
> id="{lineid}">{linenumber}</a> <tt>{line|escape}</tt></div>'
> filelogentry = filelogentry.tmpl
>
> annotateline = '
> diff --git a/templates/spartan/map b/templates/spartan/map
> --- a/templates/spartan/map
> +++ b/templates/spartan/map
> @@ -42,7 +42,7 @@ filerevision = filerevision.tmpl
> fileannotate = fileannotate.tmpl
> filediff = filediff.tmpl
> filelog = filelog.tmpl
> -fileline = '<div class="parity#parity#"><a class="lineno"  
> href="##lineid#" id="#lineid#">#linenumber#</a>#line|escape#</div>'
> +fileline = '<div class="parity#parity# source"><a class="lineno"  
> href="##lineid#" id="#lineid#">#linenumber#</a> <tt>#line|escape#</ 
> tt></div>'
> filelogentry = filelogentry.tmpl
> annotateline = '
>   <tr class="parity#parity#">
> diff --git a/templates/static/style-coal.css b/templates/static/ 
> style-coal.css
> --- a/templates/static/style-coal.css
> +++ b/templates/static/style-coal.css
> @@ -192,6 +192,7 @@ h3 {
> .sourcefirst { border-bottom: 1px solid #999; font-weight: bold;  
> font-size: smaller; }
> .sourcelast { border-top: 1px solid #999; }
> .source a { color: #999; font-size: smaller; font-family: monospace;}
> +.source tt { display: inline-block; }
> .bottomline { border-bottom: 1px solid #999; }
>
> .fileline { font-family: monospace; }
> diff --git a/templates/static/style-gitweb.css b/templates/static/ 
> style-gitweb.css
> --- a/templates/static/style-gitweb.css
> +++ b/templates/static/style-gitweb.css
> @@ -48,7 +48,12 @@ div.pre { font-family:monospace; font-si
> div.diff_info { font-family:monospace; color:#000099; background- 
> color:#edece6; font-style:italic; }
> div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px;  
> padding:12px 8px; }
> div.search { margin:4px 8px; position:absolute; top:56px; right:12px }
> +
> .linenr { color:#999999; text-decoration:none }
> +.source { font-family: monospace; white-space: pre; }
> +.source a { display: block; float: left; font-family: monospace; }
> +.source tt { display: inline-block; }
> +
> div.rss_logo { float: right; white-space: nowrap; }
> div.rss_logo a {
> 	padding:3px 6px; line-height:10px;
> diff --git a/templates/static/style-monoblue.css b/templates/static/ 
> style-monoblue.css
> --- a/templates/static/style-monoblue.css
> +++ b/templates/static/style-monoblue.css
> @@ -279,6 +279,8 @@ div.parity1:hover {
>   color: #999;
>   text-align: right;
> }
> +.source { font-family: monospace; white-space: pre; }
> +.source tt { display: inline-block; }
> .lineno {
>   text-align: right;
> }
> diff --git a/templates/static/style-paper.css b/templates/static/ 
> style-paper.css
> --- a/templates/static/style-paper.css
> +++ b/templates/static/style-paper.css
> @@ -180,7 +180,8 @@ h3 {
> }
> .sourcefirst { border-bottom: 1px solid #999; font-weight: bold;  
> font-size: smaller; }
> .sourcelast { border-top: 1px solid #999; }
> -.source a { color: #999; font-size: smaller; font-family: monospace;}
> +.source a { color: #999; font-size: smaller; font-family:  
> monospace; }
> +.source tt { display: inline-block; }
> .bottomline { border-bottom: 1px solid #999; }
>
> .fileline { font-family: monospace; }
> diff --git a/templates/static/style.css b/templates/static/style.css
> --- a/templates/static/style.css
> +++ b/templates/static/style.css
> @@ -5,7 +5,9 @@ a { text-decoration:none; }
> .parity0 { background-color: #dddddd; }
> .parity1 { background-color: #eeeeee; }
> .lineno { width: 60px; color: #aaaaaa; font-size: smaller;
> -          text-align: right; padding-right:1em; }
> +          text-align: right; }
> +.source { font-family: monospace; white-space: pre; }
> +.source tt { display: inline-block; }
> .plusline { color: green; }
> .minusline { color: red; }
> .atline { color: purple; }
> diff --git a/tests/test-hgweb-commands.out b/tests/test-hgweb- 
> commands.out
> index  
> d25fe897d40f628adc63cf9c5f0182f7db1d09a3 
> ..d93bf6d37a37ed0a7570201e1c8f956994766409
> GIT binary patch
> literal 29180
> zc%1D$32-FUbxSaYog~f at C<r*je_PhBcBPq~8Qs^ghs55yili;P2qAi=|I9S%>7I1=
> zNUJ?uU@&D9V%Clg4kkctxD4h<Y|6$MimPlALokOE3RB#$<NyLTp(qnO at BQE1)7{fE
> z8i{3>LqceJ{(t|y|KEH6UH!Yak&IA_l#0a4Q)1Af9+6~O(Q-tV#H{Xq!^?tXOj4Ol
> z>&7GlPz;)}bYq4{CP^ETmdO*-lF}-TG?LAF&Lom1lT2RHa at 33@<8d;QF_fZ3^paI9
> zS%6Yi^=UH_={t32K_yevFcn?v7ZS0!K&Y0{k#N5tnHfb9PEAGnvJ|KTsAl#HdCMyH
> zh+-ny8H>Yz2@&wOi>ocYAfzIsZ)r42)-uYfo+HsHwkdL|VpN|9t<a|`+9a%A?H5d{
> zW(ATrXf}k11o)$XQ4sxuB-NsZCRw!VNIt?+ES07#YFg#l^@+R{x=TeFaLB1dcV|2r
> zPr&bJJl?~8o7vw!(E*77IMpm;2F5vfxeUtq!k64&ON3g{gq%#$j`nOk*-6`_ct^au
> zwY`&e%3ZXxJ>Hd(lWD14PG+giC40qHR%p;Ev0j9X8>CMvS$W;SOVX!F1<sj1kzKMz
> zT96bqwX7kL=;(#N at dW-&wD<CsK9Tn$DzS`fPHY75VkxaEX1?}-G7t{Q=$ZxGC)P}n
> z_6s}nRzVf`jAdo2s){DMySqgXFpxGVLid<ODFcY$t4WP1D!8JA7LHd0#C)MPZPXXh
> z(SQn7SS`!2S1c(<U^l@|Gl(m7lBC(Vl<92imJ)4qP!_2z+nuCxvbDP_nWpjfj&yfd
> zds3$Da+Y>=wo(ajX5(`G%2F at F1!b8<S?U+|eAOu}nRE`S;w4JkvhAHxyVR9Twso{g
> z@$Pss(~<4WwzYL->sFO|5iY38Y<7hSvOYD4^oi(kQwy$p!F4aV?giJq;JO!F_k!zQ
> zaNX5icbINDeiu}*hy{gtx@~88&>8n&WrE}t6AKXs(H}4DnuT2xx@(pWY+F0JV`z{d
> zc`~$p&E^eji4YaV(_7by;=t$t`NI0qEt|ofCq!{@t3aITPft(BrdwmWkrPLU`Ro%3
> z9N=8XWJ`wi^fAQ#rF+JD*3MR}O1NFA7TrF=22%+Z;MrXYEY#UuqG?H%k`ePcY>gGQ
> zoM3ZaDM&dgvIfwoz5=x*g4)wB7<yW_Oo7<^0#Hq+J6njRbDr=4p51KCs1)Q&tsqs_
> z6D>+bYQ!?8>5#VQPD^CpMHGQ|YkNcN at Q|IOkcvfB$p8^uV+Nxc7$cy(?FqQCKViuF
> z1+-X%88&peNG!OFnlud443dB*ABEwOkuU<HEuXY5GlfGf&#00KqDBTwibf3-qo=(<
> zwNju72<g})`ArCF2^dqVDVbPCFNg(dWJ-o2sUiX^g&Z-Bj8_W~57z=%E>g1Lajswp
> zaK3E6^p#Y`9EZM?u at u}~Og^f@`cm#}#GD}&^S*>aNU=7=88!goA5%!--)ay%sHUb9
> zUQ;im$fjq{(K9HR)(9!rVppS+Ra6=nlQv-E(@=8GHRqCFY9LCsACn&Jf^C-(6?8yv
> zE9W76!f;TPf-~Nvl99=SU@{hS&mt-p0u at tziiRf1-kx+yAd2h^NO*UZKul#9T(`!#
> zK#R5(A$VTVEFqOu$`yKQnIt_!xcP5^T`;9!WY7{po|r8J^mtk~WRoZwyH@}jR!}Tb
> zpr#47!_gEG7ZKovCQT_h+)61xN|HUK%n=i4S?J!q4o^rm#aAGg!T=!-05&Q`-tTap
> z-F9&3rIj4}&SDaayD}^9DsK)t*o>`wu#2r7df8_PfJ{y17Jx58%Janrg%5+%bOsb9
> zL$PM!0>>l!=1`Ed88QQ616{V{AcQ>?t}qqdzKPV*cqbbLl>^_Xxh!JMXpDpuzh~1Y
> zVn49d3kF-#X13kQXHspQi9 at +gZw@+_M5+cSWSW&qs#WJ|52;lB`-4X{ft4^}!RkY&
> z4?B~I`A~07|3?Jp!F?YXJ&0kTX(8D9a0FYSwWUD7@==Och~KkUQD^3U9oJ66;ut at C
> zAdVrk2Qp+{kqik5w>;5H2x3E;j#gR<XstRG7VHEJOZ8xf%pUF35$=?&a=gb&nuItW
> zpDp`%he$rl&#k*JvcdVdlNiKw6}O1(mukl^A?~Mo9RNKBcNi7OW#%UEZzW>hH<~Yz
> zjUdB#f;d?}!Abyu+#fER%C3<}Iei7AR)v@|Q}DE42hHkBsX1i_D3e!I84y)RLu$nq
> z-fvu+YtUq>fNG=CkZIe!HTIy$&)p!WdAZEzYb(JStPAL!S*XL;r>K!dPvW=Grd~2K
> zG^-epsHPyR1s6k!tYoucyPX3Qa8-~-Ge|ce!a_`Wbqy*wX1 at 2>6=EjntodZU8@`}u
> zB@=N8sc1AxL>Z)@l~i?cZKaCX2Es=&>5@#kB$JgSi>gDhxw)C7ZN|@sV5>{8)g{<k
> zNl>ylxmBx3G~NOT6D<j{YE>x8HWy`^i?Xfe8t{acgNYTqxajH;T%uBNNmp=5S8&M>
> zR&YsIa7kBi$$A7gFR3M6sU=;hCEuUalCIQ}uGEtAlUmu!2IA+rgwK%%vVNT>4=PGl
> zCJ&9<P0DLha6JH)o5V>RF1PA3B^w4vy*Kw@$PhEn#1}i(DpyD9P17QgIVls at gIGR?
> zq1SA{K|waxJA0gSB+^Ju10xKfmWqY%TKq at Z))EhjU{##m!NAO at Cai2s?=+(LOJpe$
> zH6YfD;xB1yC-%C1tv1qy<m$tbTzU5tVct4C!TLyLSXB}%fAHi>u)^{yKltIQ6Z>aT
> zU!B-HMy#1Tg(P!`Aq+DHU4G0w8f39p_+%ta(?NhVWSG-cZD>$lb~p)hBQ*qvsb(by
> z*ic`-c at WCuQwp7Cw|G~PM2|lZ{{&@(^;b7P8Cm0O3E!bg8*AJ+;@iR7Qjwv(pA?Nn
> z at 4U&;A`h&ckJ$i%FST$I3n#7M)3U4-4 at Kc31R+NR*Orh9t?bUPz&oEPua0QHBEoYb
> ztVXg8n2R>$P(P4zuuiZt7dYo5tmRSOpoBY8_sEP{DikDRhM#doTjQRpae5-|NfUm`
> zWQ!9Xkdd`p?Bgb$10?VF5Du&VmCxYJWx?|}Llb($2iP$8!##)k*bH-9oLe98S+M$3
> z1|Ve_O2+bM4rR`|iGwF^h?;CjjqD-x2v9}xKn{B*F}Fk_r&!Z8T|JZVrxI)2!1iFB
> zjA7QH#?hGfe=^2Lq4H?VEGJ`%AcqO;=9!RGZPR<Q8;91GastD6-7kP=m4J(elFM7Y
> zLfM3|u(O=ZaEo^;AH)Sz4o`_lob)0zx at 8mAq$%%gtDv-78P+|K%4{kKZZ}uJSAu5B
> zPbmaoS&kKecJnSDB+4zw13UWyIEM$mAr*m8V7y%z$5b+Hh~e1*6CMPdTG}l3Ist}#
> z#Dl6T9`a*`Db9lXu>11CyYhWX${$C9v37z$ybB?@iL_#RcBzxn)>uzpIuPWgQ=WSS
> z at W(k`VSg_Z(k6ZS;RfopsQD7ppaRT3FiacfATWQ>TzU56AamWD?p1Q#p9}`M?jGf+
> zpY1is)n at yw1FN#V#>gsc56u{uy at 43lswfqCdM0?7z-?GXfDcxBB3MLn4>hL1Wb>&=
> zKF7iO&|&yWLurH8znsKi4(B}%Q5X_dz?@SYQfC$O;~j{MIIimuozVTD59q$HD5OTE
> z^#hMZYyhVi7N~yNl`qbuydujKRF10;!zhp`NiD%Q8#B`}Z|cvBY5_#NROTtCk+Ls$
> z>RGddM)tHna$!$pwK)LmEj=IB*a$0I+!=aLs>-abq)lr2v=%sofj!Vl4Hs@%LuZ^7
> z`V#Kn)+GGtz*1m$Cu?kT8yRRk85q#UV7vSSI at -#$#AMv<i+3{!h9chOf^ZbwWyB1w
> zBiS3W04!741yXkzqxn(`mW!}z#41H at -H4TpyjXlL7Wbi_^|Pp|9V+l><Pb!zifswJ
> zjgcymRq%LlVCtZC?s?%feDmJ2hK2IGFCm9#@vxR-<V^eIb?rmN-Vx<fqs~z;_8IZU
> zK7sfR{M$5aTwkbCdui1JxWgF!&Q)|ZqD2&4{Wl5bD_lFM4ml`2Uy;o#=ALKhd^mQS
> zm+xV_jh*zXPaJ`5gTb-?gyei>P-Bj>$e_l^S!JMN&?BVS9Cb8|5V5ogv*m;VDzRA1
> zP5Y`@?@;4i!^0oOdc!Qzz)}MWJdo>FO>O5b+~6_kxh1s+TPs?tYDI_?=c^G7!4m at u
> zMW=<L(?Zdy%Kmg7TdHBW%lpc^C4*(Gg(}uU73=U;vDWblz{jYDwKN(XQ?g{k;5Y=3
> zTtz)>I7gb2c&p$){6}|YBn|pv=V0V1a+p-#(lM&ZN_HGy#P!iEkFgq0xt8)FtC1b{
> z+lJz7?t}5~!&x5-KC0(~Uj{tS=p`^H2|R~NO*3HqYY%FNkglK`?ATUh52+YdJ<6?o
> zM0VC8(PZcdODP8V>^xpOrvhQ5Pt)xUJ<4A5%a1AYtwD56ondeFHOaJM<;g}c5!|;$
> zsfK=9Cj4xxVS*=jF-6J;BQdQk@{M0oS&OF2G|h5Yeg>4=7S_dx3P4J>^8G?G*#>5u
> z;vNTIne4_99Jq{(jX;cLe9pS&VBi=QzjbrQbE`>U=Tl;1w4G5TG9?*AmcUu{ld&<u
> z_jG*=8H=}&#5jE71-phXcI5=R1!k1tvmBA)Ag4;!LM)?1aX71jjk7D?N#tr2>aF$E
> zn1fTyDNlma4-9wdvxP|}tqWyVQcb=v41dPQ$9owcxxV!ijZSmN+q9yW+n1P`kyP5$
> z+6 at hM3zc&eV6!ES8SAE<Fq0Yhe`f+d;eUuebz=qD9a$V%Y~>Xb9E`OV+nQJpa4Uu^
> zi*>XEP7aZ=cE-{)r)Wcx#b}qC3;Glt)omia9z1G^J&dfc2O=zek}^Dzy<AgZYcc=c
> zPnP4MZ`+eijEwHsJQyhGU{zj7E$@vuW14YL^~%7+)@=iW8wUIa!SSAUCreT$1_npg
> zI at w7Ozg;ex7+t+?B-rPjouXwSjGh=+JvxX<R0|$+p4dJzIP5;Hq$-Hq78ZoNu={-C
> z0(RL#YO$X)gRdo@#46>%-~mk)fhODWZ>L|P;CpRqh9oN`lkJl&fH5|-fvhA+uHn8R
> z;7L?2x5X&6bj}f&Q~S)>Q(jJ*?JKxgF1X8P!&I8JU|<tRtE;7gW&&7Z1yE&e>D&Z2
> zZT0|-$qs21`Fqu)h at yue6^0CG6nFMI_!Wy50N9pM%%DY8%Frf}tCQGb<HL2>p!nf|
> z8(KZQVRQ!oE)TAz`WUWAB9qlveEc8)qB`1Otu??<xoohuTG&7%ZLs$7vIsE%LG=aR
> zBKsf!ZbFdG at fbv%Iq+(G_VAXDahNPw3UIc$T8>?IPhxxp)6c~obm6sGB;r!xBiTTA
> zWW|oEtf!+m%2Q(c#n5_j`1+mQ%b at lW3PzUT9G1G1Aj_7K@Kw$>Jw-d{6ZCM%m4iJE
> zbXiSIZun>fhp at XGagu(!easqXM61u;u8pT~zBn>C6E>B-kpKn`fdG3^i^A0n?Ift1
> zJrMQHpjOGy$XGhp!hpwZ^Un>T0qGJonlNHOS0;+!1N0(>7Wi)_*ue!)ru=bKtt8+R
> z7v5GsJMd8{5H*sFRFu++s#r?xfBr(%^~qAv4&ZWzUMiZUGzM}dEnU)N;LiGWiTJuR
> zTJU2H|Jc5 at kzlf26LGz-bcVU|In+WHC(9 at 4%yNKrkG>uR(se&MOyYI^)D4IdDzm)S
> zVs>6}*XWk at +gBfd_YLp<_fyN39J}&IUpepZ?#{mQuXj!V^eyRx!OtE$*7)s*ZoTB<
> zckX%TOOdu?Hw`5V- at 19_O@l|R9{R<7$uo|B_sBcW`G at a({+cZtf3WYK%fGWNzU0~C
> z_Mi7B7k1}f*>m8EH!h|--r2ut+haf6bix<U)c)h<ebX1-^tY#f?b+LmGk3h+(X at ZX
> z|9<PIN4#|Mu5*W9o!t8E1H;#RchjopmahK6<n`NE7LGjn$#0zU*gs!$%6+f2T>DV-
> z=iaz=Ag8=>(<!I?@bUv=r~fu{$urT15B$rn at 85aS<L50&Wm3m1625TkeHW~H?7*6p
> zn-?81^r_+dSN(WR{8wEK=l7hyKmU{dho2gGen-pZ$FF|thHq}{dF9FT{_?q3<?9<>
> zXnFLO;gzqEYmYeYi0l3+{bKLkx4yS&?5ycc&u_i;&dFETJo=k^kN*BmV at v*TvM at EB
> zS##YrPpo at j;J)J%H-CM}qGL9m_w&84FMhrG^dDbz?!G-wT>WoXKQa2u^MBv6^o85M
> z+xFstUtaa;Kl{0Kq%`!S?8BcrdE(6OH(z_{%9pQu^s%dsyk5U$-}+zw_Kn}KZ at qak
> za@)RdeC3Ygg->_g_ZO=c-FeZ9$CrP(J95Lh7mSc=?~3M*JNu=l?_Yn`voG8;y5(oT
> zS+nhtXKs1<mWIz6TbedqcJ^r}onRidZs3k1?p at S;@t&)S_a^@5_(fN2{8Ha at e|puu
> z`+o8EgD0hij2r*+^tT_l<<a*}d}R4?rGLEg;q}_u&pdSYgI6#6-e=z2bMcbTKXCE>
> z;!$TmeGEDGfqx%1qTgJyB>9 at s`|IqRyH2?9S5L|>ANcFH|K^W(760jX-+TM5$A9<U
> z<h1#kb!qyS>YxANmv28Ye#x;H+;+)HS1(#TarDWV{r7+Mj02axOCH*KTJC43-FQ*+
> z<yT}TPW<eNSB~#$?drR%`Suo}<-rF}J at f0oKQZ>j?U!EmcH=W!`@Z(}WsL{UdSvr!
> zUwrD)$)}^K3;*DJ;nMZjy?CS9AN{Y+m!G=iCyn553 at Q~SK#ObcP|*LZ1m+36l4EG_
> z0mi>7DF!vk(6*6L_6=VX&=zkeTd0-SWwKSb$ZAAEWv~g6V#&-`8PrHdSl&%o)uz@|
> zB(j^J)sD(EqZ_RH*`w(i?In97F|h2=J)H+n8)a{I?csN^StmY3Q at xj!kuh>MtHU@?
> z%Izj;DKm+tK$D{^-RL0=GW+qsCBoq-`(bdHENVK^!}3NC>4-x-PaHsr{q(}pH7knG
> znf4H~AgL-fdf9ty`48iTq$)YhDSjem`{f<G`QWTnP}G?oQqVP>EvnbILQ*uSca&wp
> zKv^*%s)0d at hSQ9uRXsDwS7*PF0)XtP<_t<T*5|(9qugmw&J_M?jB<OiWE53fZ1#i4
> z&V2og4O^m<5wWj5BtZ)dQMzPVI;2&gB*3B&=6A3k<e!b9ha`&@ezzeQU+}w+ai*l1
> zZsRoNMANz|_d+ZebKZ+rooptP38NWG!yc1{ka7~y15+t52Ljb9$h+82*cvJshxo*m
> zWUXERT_7vP2)+w>Hz`O4<kdYSj$8!2grJ8}^A**RfJ!AJh|8$}i}<Pw{AW1uSuzM?
> z5Iv$|&k~oFJQ0sKa_x7zoNa6Ow+Ff*9oy~ayrvtV8=;DUr3ED;sZKM5(?M)Vu7&to
> z*n_gRdREFfINl5GodPE1z0NWeEl<G;Fopt`M(m=xk2z)y?wD2B(`BoAx!;oO;SZl&
> zHTHP1#rQLsUWss;xQ<cDw*-9VanSy{n_v|x%3^e!1KMPdV!6uCl*~IYW?#?D4Mkb`
> zF#cr^FtRE6A7Tfbdn?+it5o>@DjVf&HXEvUVKid)bNwMbo<p`UlPXfd1>&A!@75yh
> z<p#Ju#ELDR<@uXFh}Gd-SP>Sd07*=PUB$;Nyr`QB^TUL_=SG<V<FmLdHUKEg4UL9f
> z-uI1^(x$GK&}=Q<6=lA-hqPl6PA~S5Xgt;dD(FKBcuH!6edhpi1vLkDpot}VrbYfa
> z_$KF2=tK$}Yxx!e=wl1<&`}j6mABd2+714?a?Gp?OL*yawX>zoVfrDHBrz<(B4yWa
> rbB7&S?D43bU|Xt)i_a#(*V9M_hljTfkC4HwYqxFRIyyK!I1u at NDNO4~
>



More information about the Mercurial-devel mailing list