Sha256: a010dc26d46a8181769de09aaee29ae4d4bd7776aa32a0a727369595b4fa3283

Contents?: true

Size: 1.07 KB

Versions: 1

Compression:

Stored size: 1.07 KB

Contents

require 'clerq'
require 'thor'

class Promo < Thor
  include Thor::Actions
  namespace :promo

  desc "publish", "Publish document"
  def publish
    doc = Clerq.settings.document
    tmp = '.publish.md'
    `clerq build -o #{tmp}`
    Dir.chdir(Clerq.settings.bin) do
      `pandoc -s --toc #{tmp} -o "#{doc}.docx"`
      File.delete(tmp)
    end
  end

  desc "toc", "Print TOC"
  def toc
    node = Clerq::Interactors::JoinNodes.()
    puts "% #{node.title}"
    node.to_a.drop(1).each do |n|
      puts  "#{'  ' * (n.nesting_level - 1)}[#{n.id}] #{n.title}"
    end
  end

  desc "mm", "Create meeting minutes"
  def mm
    minutes = "meeting minutes #{Time.new.strftime('%Y-%m-%d')}.md"
    content = "% #{minutes.capitalize}\n\n" + MINUTES_TEMPLATE
    Dir.mkdir('mm') unless Dir.exist?('mm')
    File.write("mm/#{minutes}", content)
    say "'mm/#{minutes}' created!"
  end

  MINUTES_TEMPLATE = <<~EOF
    # Attendants

    1.
    2.
    3.

    # Questions

    1.
    2.
    3.

    # Resolutions

    1.
    2.
    3.
  EOF


end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
clerq-0.3.4 lib/assets/promo/promo.thor