Sha256: 25a0c4a547df23606e3dde4b989501a68e7310c6d9ba33838f48f587f5362d08

Contents?: true

Size: 1.86 KB

Versions: 35

Compression:

Stored size: 1.86 KB

Contents

require 'cgi'

def title
  h1
end

def section
  h3
end

def code
  _puts "<pre>"
  _body {|line| _puts "   #{::CGI.escape_html(line)}" }   # indentation
  _puts "</pre>"
end

def rx(str)
  ::Regexp.compile(::Regexp.escape(str))
end

def inout
  src, out = _args
  t1 = ::File.readlines(src) rescue (abort "t1 = #{src}")
  t2 = ::File.readlines(out) rescue (abort "t2 = #{out}")
  # To pacify markdown for README (FIXME later)
  t1 = t1.map {|x| " " + x.sub(/ +$/,"").gsub(/_/, "\\_") }.join
  t2 = t2.map {|x| " " + x.sub(/ +$/,"").gsub(/_/, "\\_") }.join

  puts <<-HTML
    <center>
    <table width=80% cellpadding=4>
    <tr>
      <td width=50%><b>Input</b></td>
      <td width=50%><b>Output</b></td>
    </tr>
    <tr>
      <td width=50% bgcolor=#fec0fe valign=top>
        <pre>#{t1}</pre>
      </td>
      <td width=50% bgcolor=lightgray valign=top>
        <pre>#{t2}</pre>
      </td>
    </tr>
    </table>
    </center>
  HTML
end

def put_table(src, exp)
  t1 = ::File.readlines(src) rescue (abort "t1 = #{src}")
  t2 = ::File.readlines(exp) rescue (abort "t2 = #{out}")
  t1 = t1.map {|x| " " + x.sub(/ +$/,"").gsub(/_/, "\\_") }.join
  t2 = t2.map {|x| " " + x.sub(/ +$/,"").gsub(/_/, "\\_") }.join

  puts <<-HTML
    <center>
    <table width=80% cellpadding=4>
    <tr>
      <td width=50%><b>Input</b></td>
      <td width=50%><b>Output</b></td>
    </tr>
    <tr>
      <td width=50% bgcolor=#fec0fe valign=top>
        <pre>#{t1}</pre>
      </td>
      <td width=50% bgcolor=lightgray valign=top>
        <pre>#{t2}</pre>
      </td>
    </tr>
    </table>
    </center>
  HTML
end

def testcase
  name = _args.first
  _puts "\n<font size=+1><b>Test: </font><font size=+2><tt>#{name}</tt></font></b></h3><br>"
  src, exp = "#{Data}/#{name}/source.lt3", "{Data}/#{name}/expected-output.txt"
  @_args = [src, exp]   # Better way to do this??
  put_table(src, exp)
  _puts "<br>"
end

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
livetext-0.8.20 dsl/tutorial.rb
livetext-0.8.19 dsl/tutorial.rb
livetext-0.8.18 dsl/tutorial.rb
livetext-0.8.17 dsl/tutorial.rb
livetext-0.8.16 dsl/tutorial.rb
livetext-0.8.15 dsl/tutorial.rb
livetext-0.8.14 dsl/tutorial.rb
livetext-0.8.13 dsl/tutorial.rb
livetext-0.8.12 dsl/tutorial.rb
livetext-0.8.11 dsl/tutorial.rb
livetext-0.8.10 dsl/tutorial.rb
livetext-0.8.9 dsl/tutorial.rb
livetext-0.8.8 dsl/tutorial.rb
livetext-0.8.7 dsl/tutorial.rb
livetext-0.8.6 dsl/tutorial.rb