class Minireq::Gitbook::Writer

Writer is a class for GitBook folder creation

end

Constants

BOOKJN

TODO extract git tag from minireq repository

README
REQDOC

Public Class Methods

new(gitbook_folder) click to toggle source
# File lib/minireq/gitbook/writer.rb, line 43
def initialize(gitbook_folder)
  @gitbook_folder = gitbook_folder
end
write(gitbook_folder) click to toggle source
# File lib/minireq/gitbook/writer.rb, line 15
def self.write(gitbook_folder)
  writer = Writer.new(gitbook_folder)
  writer.create_gitbook
end

Public Instance Methods

create_gitbook() click to toggle source
# File lib/minireq/gitbook/writer.rb, line 20
def create_gitbook
  init_gitbook
  write_document
  write_summary
end

Private Instance Methods

escape(text) click to toggle source
# File lib/minireq/gitbook/writer.rb, line 74
def escape(text)
  text
    .gsub(/{{/, "{% raw %} {{ {% endraw %}")
    .gsub(/}}/, "{% raw %} }} {% endraw %}")
end
init_gitbook() click to toggle source
# File lib/minireq/gitbook/writer.rb, line 47
def init_gitbook
  Dir.mkdir(@gitbook_folder) unless Dir.exist?(@gitbook_folder)
  Dir.chdir(@gitbook_folder) do
    File.write('book.json', BOOKJN)
    File.write('README.md', README)
  end
end
write_document() click to toggle source
# File lib/minireq/gitbook/writer.rb, line 67
def write_document
  out = @gitbook_folder + '/' + File.basename(REQDOC)
  File.open(out, 'w') do |f|
    File.foreach(REQDOC){|l| f.write escape(l)}
  end
end
write_summary() click to toggle source

we are in Minireq project folder! TODO ask Mnireq about output document?

# File lib/minireq/gitbook/writer.rb, line 57
def write_summary
  # build minireq requirememnt.md
  `minireq doc`
  # parse and write summary
  txt = File.read(REQDOC)
  doc = Reader.read(txt)
  summary_file = @gitbook_folder + '/SUMMARY.md'
  Summary.write(doc, REQDOC, summary_file)
end