--- __init__old.py	2006-12-09 13:32:00.000000000 +0100
+++ __init__new.py	2007-01-16 00:04:20.000000000 +0100
@@ -478,7 +478,7 @@
 
     def make_icon(self, icon, vars=None):
         """
-        This is the central routine for making <img> tags for icons!
+        Central routine for making <img> tags for icons
         All icons stuff except the top left logo and search field icons are
         handled here.
         
@@ -490,12 +490,18 @@
         if vars is None:
             vars = {}
         alt, img, w, h = self.get_icon(icon)
-        try:
-            alt = alt % vars
-        except KeyError, err:
-            alt = 'KeyError: %s' % str(err)
+        if vars:
+            try:
+                alt = vars['alt']
+            except KeyError, err:
+                try:
+                    alt = alt % vars
+                except KeyError, err:
+                    alt = 'KeyError: %s' % str(err)
+
         if self.request:
             alt = self.request.getText(alt, formatted=False)
+
         try:
             tag = self.request.formatter.image(src=img, alt=alt, width=w, height=h)
         except AttributeError: # XXX FIXME if we have no formatter or no request 
@@ -515,16 +521,16 @@
         @return: html link tag
         """
         querystr, title, icon = self.cfg.page_icons_table[which]
-        d['title'] = title % d
+        d['alt'] = d['title'] = title
         d['i18ntitle'] = self.request.getText(d['title'], formatted=False)
         img_src = self.make_icon(icon, d)
         rev = d['rev']
         if rev and which in ['raw', 'print', ]:
             querystr['rev'] = str(rev)
-        attrs = {'rel': 'nofollow', 'title': d['i18ntitle'], }
+        attrs = {'rel': 'nofollow', 'title': d['i18ntitle'], 'alt': d['i18ntitle'],}
         page = d['page']
         return page.link_to_raw(self.request, text=img_src, querystr=querystr, **attrs)
-
+    
     def msg(self, d):
         """ Assemble the msg display
 
