58 Commits
Author SHA1 Message Date
jdb 0c3d73dc2b Add debug logging when changing the state of an issue. 2024-08-12 10:52:51 -05:00
jdb be7c099b7b Format listed issues plainly when STDOUT is not a TTY 2024-01-01 12:55:01 -06:00
jdb d04797460c Format listed issues plainly when STDIN is not a TTY
When calling pit from other programs or as part of a pipe, the display
style typically used to format listed issues contains a lot of unwanted
output (ANSI escape code, headings, etc.). Now when STDIN is not a TTY,
a plain and consistently formatted version of the issues is listed
without any additional formatting, one issue per line of output.
2024-01-01 12:47:43 -06:00
jdb 8cf0bf5d98 Change how time entries based on PIT issues are logged when using --ptk. 2023-12-17 07:32:46 -06:00
jdb 34ce2b61b9 When creating new recurrences, put them in the TodoToday state, not Todo. 2023-07-06 08:07:22 -05:00
jdb 661d5959c6 Add show-dupes command, fix BareExcept warnings. 2023-05-19 09:24:53 -05:00
jdb 6665f09b7b Fixed missed version bump in cliconstants. 2023-05-19 09:05:02 -05:00
jdb bcb1c7c17c Extract logic for locating the config file to the cliutils library. 2023-05-13 07:30:25 -05:00
jdb b0e3f5a9d8 Expose issue formating functionality. 2023-03-21 11:11:44 -05:00
jdb fee4ba70a6 Update state field when changing an issue's state. 2023-03-21 10:27:25 -05:00
jdb 171adbb59d Make IssueState available as a field on Issue.
* Add `state` on `Issue` to be able to query the state of an issue even
  if you only have a reference to this issue and don't have a reference
  to the context or issues table. This does not change the persisted
  format of the issue. On disk the state of an issue is still
  represented by it's location in the file hierarchy.

* Refactored libpit to use zero_functional instead of sequtils.
2023-03-21 08:30:29 -05:00
jdb d01d6e37f4 Update timeutils version to include support for the shorter ISO8601 date format. 2023-02-28 23:29:06 -06:00
jdb b98596574d Add find utility method for searching for issues among multiple issue states. 2023-02-17 12:12:13 -06:00
jdb ea9f8ea7ac Move issue loading logic into the publicly-exposed library methods. 2023-02-16 11:07:09 -06:00
jdb ae4a943e82 Allow access to pit functionality as a Nim libaray. 2023-02-16 09:07:02 -06:00
jdb 58a5321d95 Rework dependencies using JDB Softwar package repo instead of URLs. 2023-02-13 08:48:40 -06:00
jdb 7215b4969b Re-design output to make skimming easier.
- We now always protect the left margin when printing task details
  (including tags) to make it easier to skim down that line.
- Also made the actual summary always follow immediately after the ID,
  to align to that skimmable line.
- Moved the information about the delegatee to the end of the summary,
  next to the tags, and changed the color of the delegatee to make it
  easier to distinguish.
- Added the `-G` option, to allow filtering out issues matching any of
  the provided tags.
- We now allow options to be passed to both the `delegate` and `help`
  command. Any options are ignored, but this allows the use of tools
  like `cmd_shell` which always wrap commands with the pre-given
  options.
2022-07-31 20:01:39 -05:00
jdb c7891de310 Show Pending in either Today's list of the Future list, but not both at the same time. 2022-07-28 10:48:51 -05:00
jdb a373af0658 Add support for filtering based on property exclusion.
For example, allow commands like:

  # exclude issues from context "abc"
  pit list -C abc

  # exclude issues delegated to John Doe
  pit list -P "delgated-to:John Doe"
2022-07-22 10:39:13 -05:00
jdb de3ee05680 Change logging format. 2022-01-22 10:31:58 -06:00
jdb 6226ff21c5 Fix compile-time message includes when installing via Nimble. 2022-01-21 14:59:22 -06:00
jdb 71e035fdbe Add --show-hidden to ignore hide-until properties. 2022-01-04 22:27:08 -06:00
jdb df854f864c When completing an issue, print info about any new issue created by recurrence. 2021-09-21 10:14:49 -05:00
jdb 7bccd83e23 Add support for issue recurrence. 2021-09-17 13:51:37 -05:00
jdb e0ab3cb401 Include Pending in the 'today' view. Allow listing multiple issues or states. 2021-08-30 11:49:35 -05:00
jdb d93c0cf348 Add the ability to hide tasks until a certain date. 2021-08-24 10:56:47 -05:00
jdb 9606e71cec Add support for binary properties via data URIs. 2021-06-07 18:34:41 -05:00
jdb 98f4dda1ad Reset terminal attributes after printing single issues. 2021-02-01 07:41:01 -06:00
jdb 393be347c9 Default list command no longer includes Done issues. 2020-11-12 14:50:43 -06:00
jdb f8fed9d937 Allow filtering by issue tags. 2020-11-12 07:37:22 -06:00
jdb ef16eafd48 Update to address changes for Nim 1.x (currently 1.4.0). 2020-11-12 04:05:04 -06:00
jdb 071c4b66e5 Explicitly document list contexts subcommand. Sort listed contexts alphabetically. 2020-10-02 12:13:22 -05:00
jdb 57a3af4f2f When moving issues, create target directories if they do not already exist. 2020-07-06 11:47:31 -05:00
jdb 08b9df2086 Update to reflect changes in Nim stdlib in v1.2. 2020-07-06 11:39:57 -05:00
jdb 339e88cddd list contexts command now prints both the listeral context value and the display name. 2020-05-05 09:40:08 -05:00
jdb 0a2249018b Add ptk integration option as a command-line switch. 2020-04-16 10:22:56 -05:00
jdb 10fcc34ea2 Update nim-cli-util dependency version to get a fix to the queryParamsToCli function. 2020-03-23 08:27:30 -05:00
jdb 4127fbe41c Better PTK integration.
- Now includes the context as a PTK tag (if present).
- Add the PIT ID to the PTK notes.
2020-03-16 09:39:17 -05:00
jdb 0671d7728e Add helper to update version easily. 2020-02-16 00:57:58 -06:00
jdb 7b5f26f24a Update dependency references to use full URLs to non-central libs. 2020-02-14 11:21:54 -06:00
jdb 65edc56e08 Add delegate command. 2019-01-18 18:51:51 -06:00
jdb d4db66a71e Updates to compile on Nim 0.19 2019-01-17 13:18:25 -06:00
jdb f8ccc831ef WIP Updates to compile on Nim 0.19. 2019-01-17 11:02:46 -06:00
Jonathan Bernard 93a0a15f12 Refactored to move HTTP query params to CLI arguments translation into the cliutils package. 2018-10-01 21:39:35 -05:00
Jonathan Bernard 08dfbde57f Add the ability to order issues. 2018-06-11 12:11:26 -05:00
Jonathan Bernard 2404f6a3d1 Add the ability to edit all issues in a given state. 2018-06-06 09:43:31 -05:00
Jonathan Bernard 2b5f82203c Add list contexts, refactor display logics.
* Refactor formatting logic to better calculate needed padding between
  issues and sections.
* Add `list contexts` command to list all known contexts according to
  the contexts configuration and the contexts defined in issues.
* Be more intentional about when the default context is used. Don't
  override existing context values in issues when changing their state.
* `edit` now allows multiple issues to be edited.
* Change single-issue display to be more verbose, listing all the
  properties and tags on an issue.
2018-05-29 14:24:18 -05:00
Jonathan Bernard 29959a6a8d Add REST API. Refactor config logic.
The REST API is simply a wrapper around the command line (and actually
invokes the command line). It relies on the command line tool validating
its input.

Currently only the `/list` endpoint is implemented, exposing the `list`
command.
2018-05-18 16:06:58 -05:00
Jonathan Bernard 6f247032a3 Add created property when creating issues. 2018-05-14 17:17:47 -05:00
Jonathan Bernard efd5f6adff Add versbose flag, list specific issue. 2018-05-14 12:21:05 -05:00