1. 22 Jul, 2017 2 commits
  2. 20 Jul, 2017 5 commits
  3. 19 Jul, 2017 3 commits
  4. 18 Jul, 2017 1 commit
  5. 16 Jul, 2017 1 commit
  6. 13 Jul, 2017 2 commits
  7. 12 Jul, 2017 2 commits
  8. 10 Jul, 2017 4 commits
    • Jacek Sowiński's avatar
      Add completion box and full completion support · 1fbf62a3
      Jacek Sowiński authored
      - completion box pops out for multiple candidates
      - <Tab> and <Shift-Tab> will navigate through the list of candidates
      - any other key than <Tab> and <Shift-Tab> will close the box
      - completion box is glued to cursor and is trimmed to max 4 lines
      - +projects, @contexts, dates and commands (with aliases) are supported
      1fbf62a3
    • Jacek Sowiński's avatar
      Reorganize code for completers · cfd66d5f
      Jacek Sowiński authored
      1.Rename completers
      
      topydo.ui.prompt.TopydoCompleter is now topydo.ui.prompt.PromptCompleter
      topydo.lib.Completer is now topydo.ui.CompleterBase
      
      2. Reuse CompleterBase code in prompt completer.
      3. Sort completion suggestions
      4. Introduce completion of due: dates in column completer.
      5. Store subcommands for completers in cache (via lru_cache).
      cfd66d5f
    • Jacek Sowiński's avatar
      Implement simple completion into the Column UI · 0e2bbbb7
      Jacek Sowiński authored
      Currently it works only with single completion candidate and works for:
      contexts, projects, subcommands.
      0e2bbbb7
    • Bram Schoenmakers's avatar
      Better handling of invalid dates · 8d5f43ba
      Bram Schoenmakers authored
      The postpone subcommand would crash when postponing a todo item with an
      invalid due date (e.g. due:2017-06-31).
      
      When postponing, the due date serves as an offset. With an invalid due
      date, no proper offset can be found. Instead of (silently) falling back
      to today's due date, show an error instead.
      
      Moreover, invalid creation/completion dates are also ignored.
      8d5f43ba
  9. 29 Jun, 2017 1 commit
  10. 28 Jun, 2017 1 commit
  11. 09 Jun, 2017 1 commit
  12. 08 Jun, 2017 3 commits
  13. 10 Mar, 2017 1 commit
  14. 27 Feb, 2017 3 commits
  15. 24 Feb, 2017 3 commits
  16. 22 Feb, 2017 3 commits
    • Bram Schoenmakers's avatar
    • Bram Schoenmakers's avatar
      Fix generic help and usage of invalid subcommands in aliases · 6faf0ded
      Bram Schoenmakers authored
      Plain 'help' would crash the column UI, as would the usage of an invalid
      command in an alias.
      
      This case should be handled properly, as the CLI and Prompt mode do.
      
      For this purpose, the generic help text was extracted, such that it can
      be printed in column mode (and also in prompt mode, while I was at it).
      6faf0ded
    • Bram Schoenmakers's avatar
      Apply LimitFilter after HiddenTagFilter · d0342c58
      Bram Schoenmakers authored
      The LimitFilter should be performed at the very last step. Instead of
      complicating ExpressionCommand and ListCommand to cough up a well
      ordered set of filters, order the filters when updating the view. Each
      filter is assigned an order number, where filters with a higher order
      are applied later.
      
      This fixes the output when using the ls -n flag, where the truncation
      appears before the hide tag filter. This results in possibly less items
      to be printed than specified (or worse: nothing is printed).
      d0342c58
  17. 21 Feb, 2017 2 commits
  18. 20 Feb, 2017 2 commits
    • Jacek Sowiński's avatar
      Print empty output of `dep ls` · 67975f4b
      Jacek Sowiński authored
      Lack of printing empty result was especially confusing in column UI
      (console wasn't opened and user could think that command wasn't
      executed).
      67975f4b
    • Jacek Sowiński's avatar
      Don't crash on duplicates in config · 0759b54a
      Jacek Sowiński authored
      Use last definition of an option instead. Section duplicates are also
      supported from now.
      
      Example:
      
      '''
      [column_keymap]
      a = foo
      a = bar
      
      [column_keymap]
      b = foobar
      '''
      
      is equivalent of:
      
      '''
      [column_keymap]
      a = bar
      b = foobar
      '''
      0759b54a