| def_tag(tagname, *attrs_p) | 
# File lib/amrita/node.rb, line 749
    def klass::def_tag(tagname, *attrs_p)
      def_tag2(tagname, tagname, *attrs_p)
    end
| def_tag2(methodname, tagname, *attrs_p) | 
# File lib/amrita/node.rb, line 753
    def klass::def_tag2(methodname, tagname, *attrs_p)
      methodname = methodname.id2name 
      tagname = tagname.id2name 
      attrs = attrs_p.collect { |a| a.id2name }
      if attrs.size > 0
        param = attrs.collect { |a| "#{a}=nil" }.join(", ")
        param += ",*args,&block"
        method_body = "  e(:#{tagname}, "
        method_body += attrs.collect { |a| "A(:#{a}, #{a})"}.join(", ")
        method_body += ", *args, &block)"
      else
        param = "*args, &block"
        method_body = "  e(:#{tagname}, *args, &block) "
      end
      a = "def #{methodname}(#{param}) \n#{method_body}\nend\n"
      #print a
      eval a
    end
# File lib/amrita/xml.rb, line 15
      def convert(s)
        Uconv::u8toeuc(s)
      end
# File lib/amrita/xml.rb, line 19
      def convert(s)
        Uconv::u8tosjis(s)
      end
# File lib/amrita/xml.rb, line 23
      def convert(s)
        s
      end
# File lib/amrita/xml.rb, line 28
    def convert(s)
      s
    end
| e(tagname, *attrs, &block) | 
- e(:hr)
- <hr>
- e(:img src="a.png")
- <img src="a.png">
- e(:p) { "text" }
- <p>text</p>
- e(:span :class=>"fotter") { "bye" } 
- <span class="fotter">bye</span>
 
# File lib/amrita/node.rb, line 698
  def e(tagname, *attrs, &block)
    Element.new(tagname, *attrs, &block)
  end
generate AttrArray object
 
# File lib/amrita/node.rb, line 706
  def a(*x, &block)
    case x.size
    when 1
      x = x[0]
      case x
        when Hash
        when String,Symbol
        x = Attr.new(x)
        when Attr
        else
        raise(TypeError, "Not Attr,String or Symbol: #{x}")
      end
      AttrArray.new(x, &block)
    when 0
      AttrArray.new([], &block)
    else
      a = (0...x.size/2).collect do |i|
        Attr.new(x[i*2], x[i*2+1])
      end
      AttrArray.new(a, &block)
    end
  end
| format_inline(data=true, &block) {|| ...} | 
format a Node object given as block in single line format.
If data was given, expand will be called before
formatting
 
# File lib/amrita/format.rb, line 686
  def format_inline(data=true, &block)
    node = Node::to_node(yield)
    f = SingleLineFormatter.new
    f.format(node.expand1(data))
  end
| format_pretty(data=true, &block) {|| ...} | 
pretty print a Node object given as block
If data was given, expand will be called before
formatting
 
# File lib/amrita/format.rb, line 698
  def format_pretty(data=true, &block)
    node = Node::to_node(yield)
    f = PrettyPrintFormatter.new
    f.format(node.expand1(data))
  end
Usually the <> character in text will be escaped.
    tmpl = TemplateText.new "<p id=x></p>"
    tmpl.expand(STDOUT, {:x => "<tag>"}) # => <p><tag></p>
If the text was wrapped by this method, it will no be escaped.
    tmpl.expand(STDOUT, {:x => noescape {"<tag>"}}) # =>  <p><tag></p>
 
# File lib/amrita/format.rb, line 715
  def noescape(&block) 
    Escape.new(false, &block)
  end
If the text was wrapped by this method, spaces in it will be keeped.
 
# File lib/amrita/format.rb, line 722
  def pre(*attrs, &block) 
    Element.new(:pre, *attrs) { CompactSpace.new(false, &block) }
  end