> # build msglist > data = Hash.new{|h,k| h[k] = []} > messages = %w(one two three) > messages.inject(data){|data, msg| data[:list] << {:msg => msg}; data} > msglist = it.expand('', data) > > # build main page > data = Hash.new > data[:msglist] = noescape{ msglist } > ot.expand(STDOUT, data) By the way, on this first example, my installation of ruby/amrita did not recognize the "noescape" method. Did you try this out? Thanks, Carl