Commit graph

128 commits

Author SHA1 Message Date
Owen Clarke
9fb015f72c Portability
- Added new 'format' overload to resolve compiler warnings on Solaris.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-26 18:49:13 -05:00
Ralph Bean
36ed70ad93 Exports
- Provided sample sqlite3 export script in Python, to serve as a
  starting point for anyone wanting to migrate taskwarrior data into
  a SQL database.  Illustrates JSON parsing and separation of the
  relational data.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-01-10 17:58:34 -05:00
Paul Beckingham
6580095002 Copyright
- Year change.
2012-01-02 23:32:10 -05:00
Federico Hernandez
8116c6a103 License
- moving task from GPL to MIT license
  top level src directory
2011-10-08 00:04:01 +02:00
Paul Beckingham
038687b801 Helpers
- Forced the format(double) helper function to not use scientific notation,
  which was causing problems.
2011-09-11 01:02:43 -04:00
Paul Beckingham
562fd8ce3c Helpers
- Implemented isTokenEnd, as a special case of isWordEnd, but considers
  consecutive punctuation to be a set of individual tokens.
2011-09-10 13:24:54 -04:00
Paul Beckingham
1c2a4981ac Helper functions
- Rescued the str_replace function from Att.
2011-08-27 10:22:40 -04:00
Paul Beckingham
013061803f Helper Functions
- Implemented rightJustifyZero for zero-padded integer strings.
2011-08-22 22:24:43 -04:00
Paul Beckingham
7dd3e081c7 Bug #804 - URL link and break line
- Addressed bug #804 by allowing rc.hyphenate to control whether hyphens are
  inserted when long lines are broken.  This may help prevent xterm from
  mis-parsing URLs in task annotations, when wrapped (thanks to Yann Davin).
- Added unit tests.
2011-08-17 22:39:28 -04:00
Paul Beckingham
fb9e82ed0e TDB2 parsing
- TDB2::load_lines was splitting the text on \n, but because the last
  line contains \n, there was an additional blank line.  This is what
  split_minimal is for.
- split_minimal contained a copy/paste bug that added the extra line
  if the input was non-trivial, instead of if the remainder was non-
  trivial.
- Fixed incorrect unit test accordingly.
2011-08-13 23:19:11 -04:00
Paul Beckingham
e238b94d1b Urgency
- Urgency recalc was not properly set with the task was modified.
- Corrected urgency formatting.
- Cleaned up some code in A3 and E9.
2011-08-12 23:08:54 -04:00
Paul Beckingham
197524a5fc Expression
- Added configurable 'abbreviation.minimum' (default:2) setting to
  control how auto-completion works.
2011-07-20 10:51:13 -04:00
Paul Beckingham
2ce0b5a1ab closeEnough
- Implemented closeEnough, which does a truncated, caseless compare
  between two strings.  For example, "FoO" is cloneEnough to "food."
  to be a match.  Used to allow mixed case and abbreviated arguments.
2011-07-07 01:33:43 -04:00
Paul Beckingham
45a757832a Feature #559
- Added feature #559, which implements a new configuration variable,
  rc.exit.on.missing.db, which causes taskwarrior to exit if the
  rc.data.location is missing (thanks to Sander Marechal).
2011-06-27 23:23:28 -04:00
Paul Beckingham
b63835757f I18N
- Localized more files.
2011-06-21 18:05:17 -04:00
Paul Beckingham
69fc2c3be8 View
- Modified layout algorithm to not attempt to distribute negative
  overage.
- Modified wrapText to enforce a minimum wrap width of 1.
2011-06-13 00:57:04 -04:00
Paul Beckingham
76b30d8d10 L10N
- More file conversions.
2011-06-11 14:57:11 -04:00
Paul Beckingham
56ccd16730 Helpers
- Implemented longestLine, which finds the longest line in a string.
2011-05-30 21:22:26 -04:00
Paul Beckingham
32e7af4610 i18n
- Added several overloaded positional string formatters.  May need
  more.
2011-05-26 21:56:23 -04:00
Paul Beckingham
d892a0cbd2 Code Cleanup
- Fixed comments, compilation warnings.
- Decomposed Context::initialize into several, single-purpose methods.
- Replaced Context::initialize with Context::initialize2.
2011-05-24 19:37:03 -04:00
Paul Beckingham
f0f3e55cc6 Text Handling
- Implemented nontrivial (), which detemines whether a string contains
  any non-space characters.  Used to detect strings with no content.
2011-05-23 20:08:33 -04:00
Paul Beckingham
690fa6e206 JSON
- Replaced old Tree-based parser with a faster, leaner parser.
  Currently lacking good error handling and a large test suite.
- Integrated new parser into Task object, for encode/decode.
- Replicated same basic unit tests.  Needs more.
- Fixed bug in handleShell that failed to call the new Context::initialize2.
- Removed debugging code from CmdInstall.
- Implemented format() that does not require width and precision args.
2011-05-20 00:18:36 -04:00
Paul Beckingham
05b3fa0bb6 Text Processing
- Implemented splitq, which can handle quoted and oddly-quoted string
  splits.
2011-05-16 00:22:14 -04:00
Paul Beckingham
902ed48243 Commands
- Implemented the ability to iterate over installed Command objects,
  to augment the '_commands' command.
- Renamed verbosity tokens, to de-pluralize them.
2011-05-14 15:45:52 -04:00
Paul Beckingham
291818c33d i18n
- Added function utf8_text_length which calculates the length of
  text in characters, not bytes, and excludes color control codes.
2011-05-13 18:02:20 -04:00
Paul Beckingham
5fa77a36de Verbose
- Implemented rc.verbose=on|off|list...
- Migrated rc.blanklines to a verbosity token.
- Updated documentation.
2011-05-11 21:49:31 -04:00
Paul Beckingham
4584da8895 Sorting
- Sorting implemented using a non-relocatable task list, a stable
  sort, and type-specific comparisons.
2011-05-05 22:37:54 -04:00
Paul Beckingham
1d0ad3838b Text Handling
- Implemented longestWord, a UTF8-aware helper for word-wrapping.
2011-05-05 19:45:09 -04:00
Paul Beckingham
b0ff1ff55b I18N
- Renamed text.cpp/characters to utf8.cpp/utf8_length, which is more
  appropriate.
2011-05-01 11:10:32 -04:00
Paul Beckingham
a722064d80 I18N
- Reviewed UTF8-safety.
2011-04-29 19:41:18 -04:00
Paul Beckingham
66afc7c057 Enhancement
- Modified leftJustify and rightJustify to handle UTF8.
2011-04-29 01:10:58 -04:00
Paul Beckingham
937f2d9c8f Enhancement
- Added integer versions of leftJustify, rightJustify.
2011-04-29 01:01:08 -04:00
Paul Beckingham
d0a91acf28 Enhancement
- Implemented leftJustify, rightJustify for composing justified strings.
2011-04-29 00:49:05 -04:00
Paul Beckingham
462caf5bd4 Copyright
- Updated copyright to 2011.
2010-12-31 22:03:05 -05:00
Paul Beckingham
a6cf99a83c Code Cleanup
- Migrated format helper functions over from taskd.
- Converted much of the sprintf usage to format calls.
2010-12-27 16:31:11 -05:00
Paul Beckingham
31cf470cc8 Copyright
- Made all the copyright notices consistent.  It was bothering me.
2010-11-27 09:13:09 -05:00
Johannes Schlatow
af490fb634 Sync
- added description substrings to output of merge command
2010-10-20 22:41:45 +02:00
Paul Beckingham
58d678f927 Bug #480 - @ Symbol in context not returning
- Fixed bug #480, which didn't properly support @ characters in tags.
  The problem was that the ctype.h ispunct() function considers @,
  # and $ to be punctuation, which I don't.  An override now allows
  these characters in tags, and specificallt '+@context' style tags.
- Added unit tests.
2010-08-24 19:08:08 -04:00
Paul Beckingham
44fe227595 Product Name Change
- Converted all (appropriate) uses of 'task' to 'taskwarrior'.
2010-08-21 12:31:00 -04:00
Paul Beckingham
448f865cf1 Code Cleanup
- Fixed compiler warning in text.cpp.
2010-08-03 22:55:08 -04:00
Paul Beckingham
70bf3099ee Bug
- Fixed bug in extractLine that performed std::string::length when it
  should have use the new characters function.  The problem was incorrect
  hyphenation with utf8 text in narrow fields.
2010-08-02 17:58:55 -04:00
Paul Beckingham
2f1c582d7d Code Cleanup
- Relocated the Table::getCharLength() from Johannes to text.cpp/characters()
  because it is a general-purpose function, and will be the start of the UTF8
  conversion of all text.cpp code.
- Added unit tests for characters().
2010-08-01 13:05:53 -04:00
Paul Beckingham
e886f7635b Enhancement
- When presenting lists of ambiguous command, attributes and modifiers
  to the user, it is now a sorted list.
2010-07-28 17:47:58 -04:00
Paul Beckingham
90c40dbebf Dependencies
- Added 'depends' as a valid report column.
- Added 'depends' to the 'long' report.
- Updated hook.format*t unit tests to accommodate new long report.
- Added new join () function that handles std::vector<int>.
- Updated text.t unit tests.
2010-07-12 01:42:52 -04:00
Paul Beckingham
844c980bce Enhancement - strippedLength
- Added a text method that calculates a string length but does not
  include color control codes.
2010-07-05 15:55:50 -04:00
Paul Beckingham
99bce308e6 Bug #414 - Tags filtering not working with unicode characters
- Fixed bug #414, that caused filtering on the presence or absence of tags
  containing Unicode characters to fail (thanks to Michal Josífko).
+ + Fixed bug #414, that caused filtering on the presence or absence of tags
+   containing Unicode characters to fail (thanks to Michal Josífko).

 ------ old releases ------------------------------
2010-06-20 20:10:20 -04:00
Paul Beckingham
9b80017323 Portability - Solaris
- Added include of auto.h to allow #ifdef SOLARIS to work.
- Put #ifdef around glob arguments that aren't supported on Solaris.
- Fixed uninitialized variable that only gcc on Solaris spotted.
2010-02-12 20:58:56 -05:00
Paul Beckingham
4f1183a358 Enhancement - caseless compare
- Fixed bug in text.cpp:find that failed to locate a substring if it occurred
  at the end of the string.
2010-01-27 16:28:57 -05:00
Paul Beckingham
9cab749016 Enhancement - caseless find
- Fixed bug that didn't properly consider the starting offset in find.
2010-01-27 10:38:38 -05:00
Paul Beckingham
06ecef76d3 Enhancement - caseless find
- Added support for a starting offset.
2010-01-27 09:50:10 -05:00