diff -r 9d161d1dbdfc MoinMoin/macro/Navigation.py
--- a/MoinMoin/macro/Navigation.py	Wed Oct 29 11:49:51 2008 +0100
+++ b/MoinMoin/macro/Navigation.py	Wed Oct 29 13:52:40 2008 +0100
@@ -109,7 +109,7 @@
         return self.do_siblings(root=self.pagename)
 
 
-    def do_siblings(self, root=None):
+    def do_siblings(self, root=None, neighbours=False):
         """ Navigate from a subpage to its siblings.
         """
         _ = self._
@@ -123,8 +123,10 @@
 
         # iterate over children, adding links to all of them
         result = []
-        children = _getPages(request, '^%s/' % re.escape(parent))
+        children = sorted(_getPages(request, '^%s/' % re.escape(parent)))
+        index = 0
         for child in children:
+
             # display short page name, leaving out the parent path
             # (and make sure the name doesn't get wrapped)
             shortname = child[len(parent):]
@@ -135,12 +137,21 @@
 
             if child == self.pagename:
                 # do not link to focus
-                result.append(self.macro.formatter.text(shortname))
+                result.append(self.macro.formatter.text(shortname) + ' &nbsp; ')
+                if neighbours:
+                    this_page_pos = index
             else:
                 # link to sibling / child
-                result.append(Page(request, child).link_to(request, text=shortname, querystr=self.querystr))
-            result.append(' &nbsp; ')
-
+                result.append(Page(request, child).link_to(request, text=shortname, querystr=self.querystr) + ' &nbsp; ')
+            index += 1
+        if neighbours:
+            nb = result[this_page_pos]
+            if this_page_pos - 1 >= 0:
+                nb = result[this_page_pos - 1] + nb
+            if this_page_pos + 1 <= index -1:
+                nb = nb + result[this_page_pos + 1]
+            result = nb
+            print result
         return ''.join(result)
 
 
diff -r 9d161d1dbdfc MoinMoin/parser/text_irssi.py
--- a/MoinMoin/parser/text_irssi.py	Wed Oct 29 11:49:51 2008 +0100
+++ b/MoinMoin/parser/text_irssi.py	Wed Oct 29 13:52:40 2008 +0100
@@ -8,6 +8,8 @@
 """
 
 import re
+from MoinMoin.macro.Navigation import Navigation
+from MoinMoin._tests import make_macro
 
 Dependencies = []
 
@@ -53,6 +55,10 @@
         tbl_style = 'vertical-align:top;'
         write = self.out.write
 
+        m = make_macro(self.request, self.request.page)
+        children = Navigation(m, 'children', 1).do_siblings(neighbours=True)
+        write(children)
+
         def write_tbl_cell(text, code=1, add_style=''):
             write(fmt.table_cell(1, style=tbl_style+add_style))
             if code:
