Paul Beckingham
1ec029be9b
Lexer: Relocated instantiation closer to first use
2015-07-13 16:44:55 -04:00
Paul Beckingham
a7eb32272c
TW-1419: On add '-tag' is considered a tag removal, which makes no sense.
2015-07-13 14:24:24 -04:00
Paul Beckingham
326367a36e
TW-1488: You have more urgent tasks
...
- Thanks to Stefan Betz, Denis Kasak.
2015-07-13 11:40:42 -04:00
Paul Beckingham
0990b0d582
TW-1575: task log
mangles URLs when quoted
...
- Thanks to Luke Macken.
2015-07-13 10:41:55 -04:00
Paul Beckingham
78bfe98070
TW-1632: Japanese translation for Taskwarrior(150713)
...
- Thanks to ribbon.
2015-07-13 09:43:28 -04:00
Paul Beckingham
43e7aace46
Improvement: TW-1615
...
- TW-1615 Japanese translation for Taskwarrior(150513) (thanks to ribbon).
2015-07-13 08:15:27 -04:00
Paul Beckingham
a09a2bc241
CLI2: Added conditional expression eval
...
- Only non-'string' type attributes ('numeric', 'date', 'duration') support the
evaluation of values in FILTER arguments, for example:
due.before:now+1d
If evaluation is supported, values need to be lexed into tokens, and if there
are multiple tokens, parenthesize the set.
2015-07-13 01:09:11 -04:00
Paul Beckingham
9f2efa67c2
CLI2: Reduced verbosity of debug output
2015-07-13 00:22:19 -04:00
Paul Beckingham
d2f5937344
CLI2: Fixed bug that allowed numbers to be interpreted as IDs
...
- For a WRITECMD with no FILTER args, if a Lexer::Type::number exists as a
MODIFICATION, and that number is an unsigned integer, then promote it to
an ID. Added eceptions for the 'add' and 'log' command.
This feature allows for the continued use of 'task done 1', which should
be deprecated.
2015-07-12 23:32:26 -04:00
Paul Beckingham
012affa46a
CmdUnique: New helper command to generate unique value lists
2015-07-12 22:03:00 -04:00
Paul Beckingham
f0c8330ebf
Filter: Added a mechanism to override ::safety
2015-07-12 22:02:11 -04:00
Paul Beckingham
694323a8f1
CLI2: Implemented ::lexFilterArgs
...
- Now spots filter elements that need to be Lexed.
2015-07-12 17:57:52 -04:00
Paul Beckingham
c2c53fa668
CLI2: Tags args 'UNKNOWN' to help spot an worthless use case
2015-07-12 17:56:59 -04:00
Paul Beckingham
f09a39f043
CLI2: Cleaned up formatting
2015-07-12 17:56:40 -04:00
Paul Beckingham
b7c1658a6e
CLI2: Trim incoming raw args
2015-07-12 17:32:10 -04:00
Paul Beckingham
6b78abced2
CLI2: Tightened selection of MODIFICATION Lexer::Type::number upgrade to ID
...
- When a write command contains no ID/UUID, looking for Lexer::Type::number
arguments that are tagged as MODIFICATIONS is now limited to only positive
integers that are found.
2015-07-12 16:12:32 -04:00
Paul Beckingham
81fc158dc9
CLI2: Better algorithm for ::desugarFilterPlainArgs which appears to work well
2015-07-12 14:07:48 -04:00
Paul Beckingham
f240c783cb
Config: The 'completed' report haѕ a column labeled 'took'!?
...
- Good grief.
2015-07-11 22:34:27 -04:00
Paul Beckingham
e930bb0ba9
Columns: Removed _fixed_width for indicator columns
...
- Column indicator formats (depends.indicator, for example), should not set the
::_fixed_width flag because then the column does not have the opportunity to
be suppressed via rc.print.empty.colums=1.
2015-07-11 22:09:15 -04:00
Paul Beckingham
29d6eceda1
CLI2: ::desugarFilterAttributes now relies on earlier parsing
2015-07-11 17:13:18 -04:00
Paul Beckingham
3f3d698a28
CLI2: Integrated Lexer::decomposePattern
2015-07-11 17:10:10 -04:00
Paul Beckingham
d0e4f4ca10
Lexer: Implemented ::decomposePattern
2015-07-11 17:09:29 -04:00
Paul Beckingham
1f8a66b7f3
CLI2: Integrated Lexer::decomposeSubstitution
...
- Task::modify now considers the 'g' at the end of a substitution to be a
string of characters, which may contain 'g'. No other flags are currently
supported.
2015-07-11 16:44:13 -04:00
Paul Beckingham
1bef45ff47
Lexer: Added ::decomposeSubstitution and more flexible ::dequote
...
- ::dequote can now be given a string of valid quote characters, which defaults
to '".
- ::decomposeSubstitution properly parses the /from/to/g construct allowing for
escaped characters (\/).
- The 'g' at the end of a substitution is now considered to be a string of flag
characters, which may contain 'g'. No other flag values are currently
supported.
2015-07-11 16:40:52 -04:00
Paul Beckingham
d6d01ee1bf
CLI2: Fixed bug where only the first lexeme was used
...
- For quoted Lexer::Type::pair arguments, use the whole quoted arg, not merely
the first lexeme.
2015-07-11 14:31:09 -04:00
Paul Beckingham
6d9d896a37
CLI2: ::lexArguments auto-quotes orignally quoted args, but didn't dequote after
2015-07-11 13:47:26 -04:00
Paul Beckingham
642f378462
Lexer:: Implemented ::isHardBoundary to detect filter tokens
2015-07-11 13:12:09 -04:00
Tomas Babej
15dea00eeb
Task: Do not include recurring tasks into OVERDUE virtual tag
2015-07-11 11:46:51 -04:00
Paul Beckingham
8afc7443e4
Lexer: Fixed bug that allowed unterminated quotes strings, again
2015-07-11 11:25:24 -04:00
Paul Beckingham
d3971d2384
Lexer: Replaced ::isString implementation with a call to ::readWord
2015-07-11 11:06:43 -04:00
Paul Beckingham
b7438edfd5
Lexer: Fixed bug that allowed unterminated quotes strings
2015-07-11 10:56:55 -04:00
Paul Beckingham
daba36860b
Lexer: Modified ::isSubstitution to use ::readWord
2015-07-11 10:27:23 -04:00
Paul Beckingham
096737bd02
Lexer: Modified ::isPattern to use ::readWord
2015-07-11 10:27:06 -04:00
Paul Beckingham
4d82dd7985
Task: Lexer::Type::word arguments are dequoted before being stored
2015-07-10 13:15:42 -04:00
Paul Beckingham
21be6862db
CLI2: ::lexArguments now uses ::readWord to expand escapes
2015-07-10 13:15:16 -04:00
Paul Beckingham
a86edaa6b2
Lexer: Converted ::isPair to use ::readWord
...
- With ::isPair using ::readWord, attribute values may now contain escaped
entities such as \t, \uNNNN, and U+NNNN.
- Removed distinct handling for <name><sep><value>, rc<sep><value> and
rc.<name><sep><value> - all generic now.
2015-07-10 11:24:57 -04:00
Paul Beckingham
45aaa530ac
Lexer: Skipping whitespace on ::readWord at SOL was a mistake
2015-07-10 11:23:57 -04:00
Paul Beckingham
e55528e21e
Lexer: ::readWord now skips leading whiteSpace
2015-07-08 11:24:46 -04:00
Paul Beckingham
5a21945a0d
CLI2: Integrated Lexer::decomposePair
2015-07-08 09:48:15 -04:00
Paul Beckingham
e6c4f48a48
Lexer: readWords for quoted strings now retains the quotes
2015-07-08 09:03:48 -04:00
Paul Beckingham
1fed8c55f1
Lexer: Collapsed two ::isString calls into one
2015-07-06 16:40:18 -04:00
Paul Beckingham
7a6d546a0d
Lexer:: Added polymorphic ::readWord for quoteѕ and unquoted strings
2015-07-06 16:37:46 -04:00
Paul Beckingham
abaf326855
CLI2: Added note about path exclusion
2015-07-06 16:03:24 -04:00
Paul Beckingham
d82da280cb
Lexer: Implemented ::readWord
...
- Lexer::readWord is a general-purpose text parser, for finding plain words and
quoted strings. It supports \uNNNN and U+NNNN unicode sequences, and general
escapes, \t, \', \" etc.
2015-07-06 15:32:12 -04:00
Paul Beckingham
0ee26a0cae
CLI2: No longer attempts to canonicalize rc:<file> and rc.<name>:<value>
2015-07-06 12:14:52 -04:00
Paul Beckingham
dcb13bd2b4
CLI2: Integrated Lexer::decomposePair into A2::decompose
2015-07-06 12:13:46 -04:00
Paul Beckingham
e36fb2f10c
Lexer: Switched argument order for ::decomposePair
2015-07-06 12:10:50 -04:00
Paul Beckingham
81599071e7
Lexer: Implemented ::decomposePair
2015-07-06 11:28:39 -04:00
Paul Beckingham
023fd9d38a
CLI2: Removed obsolete ::decomposeModSubstitutions
2015-07-05 16:31:30 -04:00
Paul Beckingham
af71af1085
CLI2: Removed obsolete ::decomposeModTags
2015-07-05 16:30:59 -04:00