Class: ZettelOutline::ZettelInfo

Inherits:
Object
  • Object
show all
Defined in:
lib/zettel_outline/zettel_info.rb

Instance Method Summary collapse

Constructor Details

#initialize(line) ⇒ ZettelInfo

Returns a new instance of ZettelInfo.



4
5
6
# File 'lib/zettel_outline/zettel_info.rb', line 4

def initialize(line)
  @line = line
end

Instance Method Details

#commentObject



16
17
18
# File 'lib/zettel_outline/zettel_info.rb', line 16

def comment
  @line[/[0-9]+ [\d\w_\- ]+\.[ ]*(.*)$/, 1]
end

#idObject



8
9
10
# File 'lib/zettel_outline/zettel_info.rb', line 8

def id
  @line[/[0-9]+/]
end

#infoObject



20
21
22
# File 'lib/zettel_outline/zettel_info.rb', line 20

def info
  { id: id, title: title, comment: comment }
end

#renderObject



24
25
26
27
28
29
30
31
# File 'lib/zettel_outline/zettel_info.rb', line 24

def render
  "".tap do |output|
    output << "\n"
    output << %Q{<!-- §#{id} #{title}-->\n}
    output << %Q{<!-- #{comment}-->\n} unless comment.nil?
    output << "\n"
  end
end

#titleObject



12
13
14
# File 'lib/zettel_outline/zettel_info.rb', line 12

def title
  @line[/[0-9]+ ([\d\w_\- ]+?)(?:\..*)?$/, 1]
end