Module: Przn

Defined in:
lib/przn.rb,
lib/przn/slide.rb,
lib/przn/theme.rb,
lib/przn/parser.rb,
lib/przn/version.rb,
lib/przn/renderer.rb,
lib/przn/terminal.rb,
lib/przn/controller.rb,
lib/przn/image_util.rb,
lib/przn/kitty_text.rb,
lib/przn/pdf_exporter.rb,
lib/przn/presentation.rb

Defined Under Namespace

Modules: ImageUtil, KittyText, Parser Classes: Controller, Error, PdfExporter, Presentation, Renderer, Slide, Terminal, Theme

Constant Summary collapse

VERSION =
"0.2.0"

Class Method Summary collapse

Class Method Details

.export_pdf(file, output, theme: nil) ⇒ Object



28
29
30
31
32
33
34
# File 'lib/przn.rb', line 28

def self.export_pdf(file, output, theme: nil)
  markdown = File.read(file)
  presentation = Parser.parse(markdown)
  base_dir = File.dirname(File.expand_path(file))
  PdfExporter.new(presentation, base_dir: base_dir, theme: theme).export(output)
  puts "Generated: #{output}"
end

.start(file, theme: nil, start_at: nil) ⇒ Object



18
19
20
21
22
23
24
25
26
# File 'lib/przn.rb', line 18

def self.start(file, theme: nil, start_at: nil)
  markdown = File.read(file)
  presentation = Parser.parse(markdown)
  presentation.go_to(start_at - 1) if start_at
  terminal = Terminal.new
  base_dir = File.dirname(File.expand_path(file))
  renderer = Renderer.new(terminal, base_dir: base_dir, theme: theme)
  Controller.new(presentation, terminal, renderer)
end