mirror of
https://github.com/tbabej/taskwiki.git
synced 2025-08-23 11:27:46 +02:00
Switch to inteligent block design
This commit is contained in:
parent
f85f7dc18e
commit
3f782fa391
1 changed files with 14 additions and 9 deletions
|
@ -3,17 +3,21 @@ import re
|
||||||
|
|
||||||
from tasklib.task import TaskWarrior, Task
|
from tasklib.task import TaskWarrior, Task
|
||||||
|
|
||||||
|
# Unnamed building blocks
|
||||||
|
UUID_UNNAMED = r'[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'
|
||||||
|
SPACE_UNNAMED = r'\s*'
|
||||||
|
NONEMPTY_SPACE_UNNAMED = r'\s+'
|
||||||
|
FINAL_SEGMENT_SEPARATOR_UNNAMED = r'(\s+|$)'
|
||||||
|
|
||||||
# Building blocks
|
# Building blocks
|
||||||
BRACKET_OPENING = re.escape('* [')
|
BRACKET_OPENING = re.escape('* [')
|
||||||
BRACKET_CLOSING = re.escape('] ')
|
BRACKET_CLOSING = re.escape('] ')
|
||||||
EMPTY_SPACE = r'(?P<space>\s*)'
|
EMPTY_SPACE = r'(?P<space>\s*)'
|
||||||
UUID_UNNAMED = r'[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'
|
|
||||||
UUID = r'(?P<uuid>{0})'.format(UUID_UNNAMED)
|
UUID = r'(?P<uuid>{0})'.format(UUID_UNNAMED)
|
||||||
TEXT = r'(?P<text>.+(?!{0}))'.format(UUID_UNNAMED)
|
TEXT = r'(?P<text>.+(?<!{0}))'.format(UUID_UNNAMED)
|
||||||
DUE = r'(?P<due>\(\d{4}-\d\d-\d\d( \d\d:\d\d)?\))'
|
DUE = r'(?P<due>\(\d{4}-\d\d-\d\d( \d\d:\d\d)?\))'
|
||||||
COMPLETION_MARK = r'(?P<completed>.)'
|
COMPLETION_MARK = r'(?P<completed>.)'
|
||||||
UUID_COMMENT = ' #{0}'.format(UUID)
|
UUID_COMMENT = '#{0}'.format(UUID)
|
||||||
TW_SYNC_MARK = ' #TW'
|
|
||||||
|
|
||||||
# Middle building blocks
|
# Middle building blocks
|
||||||
INCOMPLETE_TASK_PREFIX = EMPTY_SPACE + BRACKET_OPENING + '[^X]' + BRACKET_CLOSING + TEXT
|
INCOMPLETE_TASK_PREFIX = EMPTY_SPACE + BRACKET_OPENING + '[^X]' + BRACKET_CLOSING + TEXT
|
||||||
|
@ -21,9 +25,9 @@ INCOMPLETE_TASK_PREFIX = EMPTY_SPACE + BRACKET_OPENING + '[^X]' + BRACKET_CLOSIN
|
||||||
# Final regexps
|
# Final regexps
|
||||||
TASKS_TO_SAVE_TO_TW = ''.join([
|
TASKS_TO_SAVE_TO_TW = ''.join([
|
||||||
INCOMPLETE_TASK_PREFIX, # any amount of whitespace followed by uncompleted square
|
INCOMPLETE_TASK_PREFIX, # any amount of whitespace followed by uncompleted square
|
||||||
TEXT,
|
FINAL_SEGMENT_SEPARATOR_UNNAMED,
|
||||||
'(', DUE, ')?' # Due is optional
|
'(', DUE, FINAL_SEGMENT_SEPARATOR_UNNAMED, ')?' # Due is optional
|
||||||
'(', UUID_COMMENT, '|', TW_SYNC_MARK, ')' # UUID is not there for new tasks
|
'(', UUID_COMMENT, FINAL_SEGMENT_SEPARATOR_UNNAMED, ')?' # UUID is not there for new tasks
|
||||||
])
|
])
|
||||||
|
|
||||||
GENERIC_TASK = ''.join([
|
GENERIC_TASK = ''.join([
|
||||||
|
@ -32,8 +36,9 @@ GENERIC_TASK = ''.join([
|
||||||
COMPLETION_MARK,
|
COMPLETION_MARK,
|
||||||
BRACKET_CLOSING,
|
BRACKET_CLOSING,
|
||||||
TEXT,
|
TEXT,
|
||||||
'(', DUE, ')?' # Due is optional
|
FINAL_SEGMENT_SEPARATOR_UNNAMED,
|
||||||
'(', UUID_COMMENT, '|', TW_SYNC_MARK, ')' # UUID is not there for new tasks
|
'(', DUE, FINAL_SEGMENT_SEPARATOR_UNNAMED, ')?' # Due is optional
|
||||||
|
'(', UUID_COMMENT, FINAL_SEGMENT_SEPARATOR_UNNAMED, ')?' # UUID is not there for new tasks
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue