Module: JekyllPageBoilerplate::Msg

Defined in:
lib/jekyll_page_boilerplate/msg.rb

Constant Summary collapse

SUMMARY =
"A jekyll plugin that allows you to create new pages or posts from a boilerplate through the terminal."

Class Method Summary collapse

Class Method Details

.descriptionObject



10
11
12
# File 'lib/jekyll_page_boilerplate/msg.rb', line 10

def self.description
  self.read_file('description.md')
end

.error(**msgs) ⇒ Object



18
19
20
# File 'lib/jekyll_page_boilerplate/msg.rb', line 18

def self.error(**msgs)
  msgs.each {|k,v| puts(k.to_s.capitalize!+': '+v)}
end

.file(name) ⇒ Object



6
7
8
# File 'lib/jekyll_page_boilerplate/msg.rb', line 6

def self.file name
  puts self.read_file name
end

.info(msg) ⇒ Object



22
23
24
# File 'lib/jekyll_page_boilerplate/msg.rb', line 22

def self.info msg
  puts msg
end

.read_file(name) ⇒ Object



14
15
16
# File 'lib/jekyll_page_boilerplate/msg.rb', line 14

def self.read_file name
  File.read(File.join(__dir__, 'msg', name))
end

.try_and_report(&block) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
# File 'lib/jekyll_page_boilerplate/msg.rb', line 26

def self.try_and_report &block
  begin
    self.info block.call
  rescue => e
    if e.kind_of?(JekyllPageBoilerplate::Error)
      self.error fatal: e.message
    else
      self.error fatal: e.message, full: e.full_message
    end
  end
end