summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2025-09-14 22:20:38 +0300
committerPaul Buetow <paul@buetow.org>2025-09-14 22:20:38 +0300
commitdd37bd5304f827c2ff2f81b7945fe8f62d0199d7 (patch)
tree09e1e555e1cd4040d879558717c2fe2ee5a1f65c
parent3d4177f82473fc09798d48f2678eac4127a0875f (diff)
make it a projet when it is a capital letter foo
-rw-r--r--dotfiles/scripts/taskwarriorfeeder.rb11
1 files changed, 9 insertions, 2 deletions
diff --git a/dotfiles/scripts/taskwarriorfeeder.rb b/dotfiles/scripts/taskwarriorfeeder.rb
index a007ada..52e00cf 100644
--- a/dotfiles/scripts/taskwarriorfeeder.rb
+++ b/dotfiles/scripts/taskwarriorfeeder.rb
@@ -26,7 +26,7 @@ end
def notes(notes_dirs, prefix, dry)
notes_dirs.each do |notes_dir|
Dir["#{notes_dir}/#{prefix}-*"].each do |notes_file|
- match = File.read(notes_file).strip.match(/(?<due>\d+)? *(?<tag>[A-Z]?[a-z,-:]+) *(?<body>.*)/m)
+ match = File.read(notes_file).strip.match(/(?<due[A-Z]?[a-z,-:]+) *(?<body>.*)/m)
next unless match
tags = match[:tag].downcase.split(',') + [prefix]
@@ -126,8 +126,15 @@ def task_add!(tags, quote, due, dry)
if tags.include?('task')
run! "task #{quote}", dry
else
+ project = tags.find { |t| t =~ /^[A-Z]/ }
+ project = if project.nil?
+ ''
+ else
+ tags.delete!(project)
+ " project:#{project.downcase}"
+ end
priority = tags.include?('high') ? 'H' : ''
- run! "task add due:#{due} priority:#{priority} +#{tags.join(' +')} '#{quote.gsub("'", '"')}'", dry
+ run! "task add due:#{due} priority:#{priority}#{project} +#{tags.join(' +')} '#{quote.gsub("'", '"')}'", dry
end
end