Module: Pangrid::RedditWriter

Included in:
RedditBlank, RedditFilled
Defined in:
lib/pangrid/plugins/reddit.rb

Instance Method Summary collapse

Instance Method Details

#format_clues(numbers, clues, indent) ⇒ Object



18
19
20
# File 'lib/pangrid/plugins/reddit.rb', line 18

def format_clues(numbers, clues, indent)
  numbers.zip(clues).map {|n, c| " "*indent + "#{n}\\. #{c}"}.join("\n\n")
end

#write_clues(xw, across, down) ⇒ Object



22
23
24
25
26
# File 'lib/pangrid/plugins/reddit.rb', line 22

def write_clues(xw, across, down)
  ac = "**Across**\n\n" + format_clues(across, xw.across_clues, 2)
  dn = "**Down**\n\n" + format_clues(down, xw.down_clues, 2)
  ac + "\n\n" + dn
end

#write_line(row) ⇒ Object



6
7
8
# File 'lib/pangrid/plugins/reddit.rb', line 6

def write_line(row)
  '|' + row.join('|') + '|'
end

#write_table(grid) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/pangrid/plugins/reddit.rb', line 10

def write_table(grid)
  width = grid[0].length
  out = grid.map {|row| write_line(row)}
  sep = write_line(["--"] * width)
  out = [out[0], sep] + out[1..-1]
  out.join("\n") + "\n"
end

#write_xw(xw) ⇒ Object



28
29
30
31
# File 'lib/pangrid/plugins/reddit.rb', line 28

def write_xw(xw)
  across, down = xw.number
  write_table(grid(xw)) + "\n\n" + write_clues(xw, across, down) + "\n"
end