Mercurial > pidgin.yaz
view po/l10n.xsl @ 18088:c138916a49b3
I think it's reasonable to search through a haystack that is the
empty string. This gets rid of the following assertion failure
for me:
#0 0x00002b7f5ebdccab in raise () from /lib/libc.so.6
#1 0x00002b7f5ebde660 in abort () from /lib/libc.so.6
#2 0x00002b7f5e046b1b in g_logv () from /usr/lib/libglib-2.0.so.0
#3 0x00002b7f5e046bb3 in g_log () from /usr/lib/libglib-2.0.so.0
#4 0x00002b7f5e326746 in purple_markup_find_tag (needle=0x2b7f5e33fb89 "img",
haystack=0x11fcf6c "", start=0x7fff51043070, end=0x7fff51043068,
attributes=0x7fff51043060) at util.c:1016
#5 0x00002b7f5e2fa9f4 in convert_image_tags (log=0x931a80,
msg=0x11fcf60 "<IMG ID=\"1\">") at log.c:709
#6 0x00002b7f5e2fba15 in html_logger_write (log=0x931a80, type=4097,
from=0x778e00 "lk80z", time=1181547027, message=0x11fcf60 "<IMG ID=\"1\">")
at log.c:1339
#7 0x00002b7f5e2f8fee in purple_log_write (log=0x931a80, type=4097,
from=0x778e00 "lk80z", time=1181547027, message=0x11fcf60 "<IMG ID=\"1\">")
at log.c:155
#8 0x00002b7f5e2eca6c in purple_conversation_write (conv=0x1041500,
who=0xf50ba0 "giantpucepanda", message=0x11ec670 "<IMG ID=\"1\">",
flags=4097, mtime=1181547027) at conversation.c:883
#9 0x0000000000452ca5 in pidgin_conv_write_im (conv=0x1041500, who=0x0,
message=0x11ec670 "<IMG ID=\"1\">", flags=4097, mtime=1181547027)
at gtkconv.c:4827
#10 0x00002b7f5e2ed21e in purple_conv_im_write (im=0x111b170, who=0x0,
message=0x11ec670 "<IMG ID=\"1\">", flags=4097, mtime=1181547027)
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Mon, 11 Jun 2007 07:45:19 +0000 |
parents | c586c2ffaaab |
children | 161d9bdcca3c |
line wrap: on
line source
<?xml version='1.0' ?> <xsl:stylesheet version='2.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'> <xsl:template match='/project'> <html> <head> <title><xsl:value-of select='@name'/> translation statistics</title> <!-- <link rel="Stylesheet" href="/gaim.css" type="text/css" media="screen" /> --> <style> .bargraph { width: 200px; height: 20px; background: black; border-collapse: collapse; border-spacing: 0px; margin: 0px; border: 0px; padding: 0px; } </style> </head> <body> <!-- <div id="content"> --> <h1><xsl:value-of select='@name' /> translation statistics</h1> <table> <tr><th>Language</th><th colspan='2'>Translated</th><th colspan='2'>Fuzzy</th><th colspan='2'>Untranslated</th></tr> <xsl:for-each select="lang"> <xsl:sort select='@code' /> <tr> <td><a><xsl:attribute name='href'><xsl:value-of select='@code'/>.po</xsl:attribute><xsl:value-of select='@name'/> (<xsl:value-of select='@code'/>)</a></td> <td><xsl:value-of select='@translated'/></td><td><xsl:value-of select="format-number(@translated div ../@strings * 100,'#.##')"/> %</td> <td><xsl:value-of select='@fuzzy'/></td><td><xsl:value-of select="format-number(@fuzzy div ../@strings * 100,'#.##')"/> %</td> <td><xsl:value-of select='../@strings - (@translated + @fuzzy)'/></td><td><xsl:value-of select="format-number((../@strings - (@translated + @fuzzy)) div ../@strings * 100,'#.##')"/> %</td> <td> <table class='bargraph'><tr> <td bgcolor='green'><xsl:attribute name='width'><xsl:value-of select='round(@translated div ../@strings * 200)'/>px;</xsl:attribute></td> <td bgcolor='blue'><xsl:attribute name='width'><xsl:value-of select='round(@fuzzy div ../@strings * 200)'/>px;</xsl:attribute></td> <!-- <td bgcolor='red'><xsl:attribute name='width'><xsl:value-of select='200 - round((@translated + @fuzzy) div ../@strings * 200)'/>px;</xsl:attribute></td> --> <td bgcolor='red'></td> </tr></table> </td> </tr> </xsl:for-each> </table> <a><xsl:attribute name='href'><xsl:value-of select='@pofile'/></xsl:attribute><xsl:value-of select='@pofile'/></a> generated on <xsl:value-of select='@generated'/> <!-- </div> --> </body> </html> </xsl:template> </xsl:stylesheet>