Class: Posto::Todo

Inherits:
Object
  • Object
show all
Defined in:
lib/posto/todo.rb

Constant Summary collapse

MD_LIST_TODO =
/^(\*|\d+\.) /

Class Method Summary collapse

Class Method Details

.compare_sorted_todos(x, y) ⇒ Object



6
7
8
9
10
11
# File 'lib/posto/todo.rb', line 6

def compare_sorted_todos(x, y)
  x = x.to_i
  y = y.to_i
  return nil if (x == 0 or y == 0)
  x <=> y
end

.create(todo) ⇒ Object



29
30
31
# File 'lib/posto/todo.rb', line 29

def create(todo)
  todo.sub(/^(\* )?/, "* ")
end

.hide_markdown(todo) ⇒ Object



13
14
15
# File 'lib/posto/todo.rb', line 13

def hide_markdown(todo)
  todo.sub(MD_LIST_TODO, "")
end

.mark_quick(todo) ⇒ Object



33
34
35
# File 'lib/posto/todo.rb', line 33

def mark_quick(todo)
  todo.sub(/( \(quick\))?$/, " (quick)")
end

.number(todo, n) ⇒ Object



21
22
23
# File 'lib/posto/todo.rb', line 21

def number(todo, n)
  todo.sub MD_LIST_TODO, "#{n}. "
end

.numbered?(todo) ⇒ Boolean

Returns:

  • (Boolean)


41
42
43
# File 'lib/posto/todo.rb', line 41

def numbered?(todo)
  /^\d+\. / =~ todo
end

.star(todo) ⇒ Object



17
18
19
# File 'lib/posto/todo.rb', line 17

def star(todo)
  todo.sub MD_LIST_TODO, "* "
end

.starred?(todo) ⇒ Boolean

Returns:

  • (Boolean)


37
38
39
# File 'lib/posto/todo.rb', line 37

def starred?(todo)
  /^\* / =~ todo
end

.todo?(line) ⇒ Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/posto/todo.rb', line 25

def todo?(line)
  MD_LIST_TODO =~ line
end