 fs = require('fs')
 Canvas = require('canvas')
 
-show_hidden_strings = false  # render invisible CF (between G and B)
-
 strings = [1..6]
-hidden_strings = []
-if show_hidden_strings
-  strings = [1..12]
-  hidden_strings = [3..8]
 string_count = strings.length
 
 frets = [0..4]  # includes nut

ctx = null

string_note_numbers = ((string_count - n) * 5 for n in strings)
unless show_hidden_strings
  string_note_numbers[0] -= 1
  string_note_numbers[1] -= 1

intervals = ['P8', 'm2', 'M2', 'm3', 'M3', 'P4', 'TT', 'P5', 'm6', 'M6', 'm7', 'M7']
long_intervals_names = [

grid = (cols, rows, cell_width, cell_height, header_height, draw_page) ->
  page cols * cell_width, header_height + rows * cell_height, (ctx) ->
    i = 0
    draw_page (draw_cell) ->
      ctx.save()
      ctx.translate (i % cols) * cell_width, header_height + Math.floor(i / cols) * cell_height
      draw_cell()
      ctx.restore()
      i += 1

NoteNames = "E F F# G G# A A# B C C# D D#".split(/\s/)

chord_page = (chord) ->
  diagram_gutter = 20
  header_height = 40
  diagram_title_height = 30
