doing 2.1.34 → 2.1.37

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -4912
  3. data/Gemfile.lock +1 -5
  4. data/README.md +1 -1
  5. data/bin/commands/config.rb +2 -2
  6. data/bin/commands/done.rb +5 -5
  7. data/bin/commands/meanwhile.rb +3 -3
  8. data/bin/commands/note.rb +2 -2
  9. data/bin/commands/now.rb +3 -3
  10. data/bin/commands/on.rb +2 -1
  11. data/bin/commands/open.rb +2 -2
  12. data/bin/doing +7 -0
  13. data/docs/doc/Array.html +1 -1
  14. data/docs/doc/BooleanTermParser/Clause.html +1 -1
  15. data/docs/doc/BooleanTermParser/Operator.html +1 -1
  16. data/docs/doc/BooleanTermParser/Query.html +1 -1
  17. data/docs/doc/BooleanTermParser/QueryParser.html +1 -1
  18. data/docs/doc/BooleanTermParser/QueryTransformer.html +1 -1
  19. data/docs/doc/BooleanTermParser.html +1 -1
  20. data/docs/doc/Doing/Color.html +1 -1
  21. data/docs/doc/Doing/Completion.html +1 -1
  22. data/docs/doc/Doing/Configuration.html +1 -1
  23. data/docs/doc/Doing/Errors/DoingNoTraceError.html +1 -1
  24. data/docs/doc/Doing/Errors/DoingRuntimeError.html +1 -1
  25. data/docs/doc/Doing/Errors/DoingStandardError.html +1 -1
  26. data/docs/doc/Doing/Errors/EmptyInput.html +1 -1
  27. data/docs/doc/Doing/Errors/NoResults.html +1 -1
  28. data/docs/doc/Doing/Errors/PluginException.html +1 -1
  29. data/docs/doc/Doing/Errors/UserCancelled.html +1 -1
  30. data/docs/doc/Doing/Errors/WrongCommand.html +1 -1
  31. data/docs/doc/Doing/Errors.html +1 -1
  32. data/docs/doc/Doing/Hooks.html +1 -1
  33. data/docs/doc/Doing/Item.html +1 -1
  34. data/docs/doc/Doing/Items.html +1 -1
  35. data/docs/doc/Doing/Logger.html +1 -1
  36. data/docs/doc/Doing/Note.html +1 -1
  37. data/docs/doc/Doing/Pager.html +1 -1
  38. data/docs/doc/Doing/Plugins.html +1 -1
  39. data/docs/doc/Doing/Prompt.html +1 -1
  40. data/docs/doc/Doing/Section.html +1 -1
  41. data/docs/doc/Doing/TemplateString.html +1 -1
  42. data/docs/doc/Doing/Types.html +1 -1
  43. data/docs/doc/Doing/Util/Backup.html +1 -1
  44. data/docs/doc/Doing/Util.html +1 -1
  45. data/docs/doc/Doing/WWID.html +1 -1
  46. data/docs/doc/Doing.html +2 -2
  47. data/docs/doc/FalseClass.html +1 -1
  48. data/docs/doc/GLI/Commands/Help.html +1 -1
  49. data/docs/doc/GLI/Commands/MarkdownDocumentListener.html +1 -1
  50. data/docs/doc/GLI/Commands.html +1 -1
  51. data/docs/doc/GLI.html +1 -1
  52. data/docs/doc/Hash.html +1 -1
  53. data/docs/doc/Object.html +1 -1
  54. data/docs/doc/PhraseParser/Operator.html +1 -1
  55. data/docs/doc/PhraseParser/PhraseClause.html +1 -1
  56. data/docs/doc/PhraseParser/Query.html +1 -1
  57. data/docs/doc/PhraseParser/QueryParser.html +1 -1
  58. data/docs/doc/PhraseParser/QueryTransformer.html +1 -1
  59. data/docs/doc/PhraseParser/TermClause.html +1 -1
  60. data/docs/doc/PhraseParser.html +1 -1
  61. data/docs/doc/Status.html +1 -1
  62. data/docs/doc/String.html +1 -1
  63. data/docs/doc/Symbol.html +1 -1
  64. data/docs/doc/Time.html +1 -1
  65. data/docs/doc/TrueClass.html +1 -1
  66. data/docs/doc/_index.html +1 -1
  67. data/docs/doc/file.README.html +2 -2
  68. data/docs/doc/index.html +2 -2
  69. data/docs/doc/top-level-namespace.html +1 -1
  70. data/doing.gemspec +0 -1
  71. data/doing.rdoc +1 -1
  72. data/lib/doing/chronify/string.rb +5 -4
  73. data/lib/doing/prompt.rb +3 -1
  74. data/lib/doing/version.rb +1 -1
  75. data/lib/doing.rb +1 -1
  76. metadata +2 -22
data/CHANGELOG.md CHANGED
@@ -1,3 +1,28 @@
1
+ ### 2.1.37
2
+
3
+ 2022-03-12 11:37
4
+
5
+ #### FIXED
6
+
7
+ - Recognize STDIN input on non-Mac systems. I don't know if this will translate to Windows or not. Resolves #136, thanks @sjsrey for the pointer
8
+ - Recongnition of 'today' as a date input, e.g. `doing on today`, converts to 'current date 12am to 11:59pm'
9
+
10
+ ### 2.1.36
11
+
12
+ 2022-02-25 08:44
13
+
14
+ #### FIXED
15
+
16
+ - Warning when using `doing done --took`
17
+
18
+ ### 2.1.35
19
+
20
+ 2022-02-21 14:53
21
+
22
+ #### FIXED
23
+
24
+ - Revert switch to sys-uname, hopefully solve crash
25
+
1
26
  ### 2.1.34
2
27
 
3
28
  2022-02-20 09:32
@@ -1284,4915 +1309,3 @@ presented
1284
1309
  - allows multi-line entries, anything after first line is considered a note
1285
1310
  - assumed when no input is provided (`doing now`)
1286
1311
 
1287
- doing### 2.1.30
1288
-
1289
- 2022-02-16 07:18
1290
-
1291
- #### IMPROVED
1292
-
1293
- - `doing changes` does a better job of parsing a lookup string like '>= 2.1.10 < 2.1.15'
1294
-
1295
- #### FIXED
1296
-
1297
- - System agnostic platform detection, so commands that check for Darwin won't error out on other systems
1298
- - `doing completions` debugging code
1299
-
1300
- ### 2.1.29
1301
-
1302
- 2022-02-14 12:42
1303
-
1304
- #### IMPROVED
1305
-
1306
- - `doing changes --interactive` will load up a changelog viewer using fzf. Because it makes me happy, that's why.
1307
-
1308
- ### 2.1.28
1309
-
1310
- 2022-02-14 11:39
1311
-
1312
- #### FIXED
1313
-
1314
- - Lines merging in `doing changes --changes` output
1315
-
1316
- ### 2.1.27
1317
-
1318
- 2022-02-14 06:04
1319
-
1320
- #### NEW
1321
-
1322
- - `doing finish --update` will overwrite any existing @done tag with a new date (current time or set with `--at` or `--back`)
1323
-
1324
- #### IMPROVED
1325
-
1326
- - Code refactoring and cleanup
1327
- - Include release dates in `doing changes` output when available
1328
- - Allow various naming conventions for %color strings in templates. Now `boldwhite`, `brightwhite`, `bg_bold_cyan`, and `bold_bg_cyan` all work (for example)
1329
- - Common flags (e.g. --search, --tag) found on multiple commands consolidated and help descriptions matched
1330
- - `commands_accepting` now accepts multiple arguments and a `--bool` flag
1331
- - `changes` command can now output changes only (no version numbers) and defaults to raw Markdown if not a TTY or the `--md` flag is used
1332
- - `doing archive` now accepts `--after` and `--from` date filters
1333
-
1334
- #### FIXED
1335
-
1336
- - Some flag descriptions in help
1337
- - Editor detection
1338
-
1339
- ### 2.1.26
1340
-
1341
- 2022-01-23 16:14
1342
-
1343
- #### NEW
1344
-
1345
- - Use plugins.hidden_commands in configuration to disable any command (array of command names). Note that some commands use aliases and the first name should be used.
1346
- - `doing commands [add|remove]` allows interactive enabling and disabling of default and custom commands
1347
-
1348
- #### IMPROVED
1349
-
1350
- - Moved all commands into separate files for management
1351
-
1352
- #### FIXED
1353
-
1354
- - Changelog command regex too greedy when parsing changelog
1355
-
1356
- ### 2.1.25
1357
-
1358
- 2022-01-23 09:25
1359
-
1360
- ### 2.1.24
1361
-
1362
- 2022-01-22 17:27
1363
-
1364
- #### IMPROVED
1365
-
1366
- - Minor update to Fish completion script
1367
-
1368
- #### FIXED
1369
-
1370
- - Changelog formatting issue
1371
-
1372
- ### 2.1.23
1373
-
1374
- 2022-01-22 15:52
1375
-
1376
- #### NEW
1377
-
1378
- - All display commands (except view) now accept `--config_template TEMPLATE_KEY` to override that commands default template.
1379
- - Display commands accept `--template`, which takes a template string containing %placeholders and overrides the commands default template output. Affects grep, last, on, recent, show, since, today, yesterday
1380
-
1381
- #### IMPROVED
1382
-
1383
- - With complete examples in the help output for most commands, `doing help` almost always requires scrolling up. It now automatically paginates using your system $PAGER (or best detected option).
1384
- - `doing tags` takes a MAX_COUNT argument to limit results when searching
1385
- - `doing tags --line` flag to output tags in a single line
1386
- - Mostly for my own use, `doing changes` (which views the changelog) now accepts `--lookup VERSION` and `--search SEARCH_PATTERN`
1387
- - `doing changes --lookup` accepts `"< 2.1 > 2.0"`, `"2.1.10-2.2"`, a specific version, or a version number with wildcards
1388
- - When registering hooks, you can pass an array to register a block for multiple events, assuming the events provide the same block arguments (like post_entry_added and post_entry_updated)
1389
-
1390
- #### FIXED
1391
-
1392
- - Running `--tag "@doing"` wouldn't work where `--tag "doing"` would. Now properly ignoring @ symbols
1393
-
1394
- ### 2.1.22
1395
-
1396
- 2022-01-21 14:53
1397
-
1398
- ### 2.1.21
1399
-
1400
- 2022-01-20 12:05
1401
-
1402
- #### FIXED
1403
-
1404
- - Custom types not available to custom commands
1405
-
1406
- ### 2.1.20
1407
-
1408
- 2022-01-20 11:49
1409
-
1410
- #### NEW
1411
-
1412
- - Autotag option for interactive `doing select` menu
1413
- - (Breaking change) Made the later command an optional plugin, see wiki for how to install (and create) custom commands
1414
- - Config setting doing_file_sort (asc or desc) determines the sort order of entries in the actual Doing file. Has no effect on other operations, just allows you to store the file with newest entries at top (desc) or bottom (asc).
1415
-
1416
- #### IMPROVED
1417
-
1418
- - Autotag improvements
1419
- - If doing is run without a command but with arguments, execute it as if you'd run `doing now`, passing the arguments to that. So you can just write "doing this thing" instead of "doing now this thing", as long as the first word of the arguments is not a recognized command.
1420
-
1421
- #### FIXED
1422
-
1423
- - `doing again` should only mark the original repeating entry @done, not search for the last unfinished entry
1424
- - Error when using `doing finish --auto`
1425
- - `doing on wed` when today is wednesday not returning results
1426
- - Using `config set` with a false value deleted the key from config
1427
- - `config set` with true or false value was inserting a quoted string
1428
- - Entries were not being sorted (at all) within sections when writing the Doing file
1429
-
1430
- ### 2.1.19
1431
-
1432
- 2022-01-18 08:40
1433
-
1434
- #### FIXED
1435
-
1436
- - Search highlighting error with some pattern searches
1437
- - Reverse sort of items in menu from `--interactive` flags
1438
- - Nil error when `--interactive` was called without search results
1439
-
1440
- ### 2.1.18
1441
-
1442
- Build automation test
1443
-
1444
- ### 2.1.17
1445
-
1446
- 2022-01-18 07:26
1447
-
1448
- #### NEW
1449
-
1450
- - `--hilite` option for `doing search` to highlight matches in search results (terminal output only)
1451
- - `--hilite` flag for `show` and `view` to highlight results when used with `--search`
1452
-
1453
- #### IMPROVED
1454
-
1455
- - Show preview of up to 5 items when confirming a delete operation so you actually know what you're deleting
1456
- - Allow `--ask` when creating new entry via STDIN pipe
1457
- - Tab completion for known tags when creating an entry interactively
1458
- - Add purple as an alias for magenta in template colors
1459
-
1460
- #### FIXED
1461
-
1462
- - Clear STDIN before requesting input
1463
-
1464
- ### 2.1.16
1465
-
1466
- 2022-01-18 02:45
1467
-
1468
- #### NEW
1469
-
1470
- - `doing done --from "3pm to 3:15pm"` to set start and end times with natural language string
1471
-
1472
- #### IMPROVED
1473
-
1474
- - Running `doing tag` without arguments takes command line input
1475
- - If `doing now` or `doing later` are run without arguments, interactively request necessary information (you can still use `--editor` to edit in your preferred editor)
1476
- - Tab completion for tags when entering at prompt
1477
- - Use readline when requesting input text, better editing features
1478
- - `doing done --at` no longer overrides `--back`
1479
-
1480
- #### FIXED
1481
-
1482
- - `doing select` -> output formatted empty output
1483
- - Sort items by date when using `doing select --editor` (was loading in selection order instead)
1484
- - Ruby 2.7 error in template output (.empty? on FalseClass)
1485
- - Don't add empty entry when cancelling `--editor`
1486
- - Batch editing bugs
1487
-
1488
- ### 2.1.15
1489
-
1490
- 2022-01-17 07:25
1491
-
1492
- #### NEW
1493
-
1494
- - When completing an entry, if the elapsed time would be greater than a (configurable) amount, doing will now ask for confirmation and allow you to enter a new duration before setting the @done date
1495
-
1496
- #### IMPROVED
1497
-
1498
- - When entering intervals, you can now use 1h30m in addition to 1.5h or 90m
1499
- - Date expansion works in more circumstances
1500
- - You can include date tags with natural language values when adding tags via `doing select`
1501
-
1502
- #### FIXED
1503
-
1504
- - Tags containing values with spaces no longer cause errors
1505
-
1506
- ### 2.1.14
1507
-
1508
- #### NEW
1509
-
1510
- - All commands that accept `--note` now accept `--ask`, which requests input via readline after creating the note. Multiple lines are allowed, hit return twice to end editing. Works alongside `--note` and `--editor`
1511
-
1512
- #### IMPROVED
1513
-
1514
- - Implement `--search` and `--from` filtering for import plugins
1515
- - UTC format date strings in select menus for consistency (was relative date formatting)
1516
- - Don't populate the fzf search with `--search`, it's already filtered. Separated `--query` from `--search` if you do want to populate the query string in addition to `--search` filtering
1517
- - When showing relative dates, don't include the year if the date is the previous year but a later month than the current month (less than a year old)
1518
- - When using `--editor` while adding an entry, include any note specified on the command line or via `--ask` for further editing
1519
-
1520
- ### 2.1.13
1521
-
1522
- #### NEW
1523
-
1524
- - `--val` flag for all display commands, allows tag value queries. Tag values are contained in parenthesis after the tag, e.g. @progress(50). Queries look like `--val "done < two weeks ago"`, "project *= oracle" or "progress >= 50". Wildcards allowed in value, comparators can be <, >, <=, >=, ==, *= (contains), ^= (begins with), $= (ends with). Numeric and date comparisons are detected automatically. Text comparisons are case insensitive. `--val` can be used multiple times in a command and you can use `--bool` to specify AND, OR, or NOT (default AND)
1525
- - `doing tag` now accepts a `--value` flag to define a value for a single tag, e.g. @tag(value)
1526
-
1527
- #### FIXED
1528
-
1529
- - `doing last --editor` errors
1530
-
1531
- ### 2.1.12
1532
-
1533
- #### NEW
1534
-
1535
- - Tag_dir command creates/updates .doingrc files in the current directory with default_tags values. Then all entries created within that directory (or subdirs) get tagged with that value.
1536
- - Synonym triggers allow `*` and `?` wildcards
1537
- - Add `--delete` flag for `doing last` to delete last entry
1538
- - `--delete` and `--editor` flags for `doing search`, batch edit and delete
1539
- - Example hook to add new entries containing a certain tag to Day One
1540
- - New hooks: pre_entry_add, post_entry_added, post_entry_updated, post_entry_removed, pre_export
1541
-
1542
- #### IMPROVED
1543
-
1544
- - If you need to use a colon in an autotag transform pattern, you can split with double colon, e.g. pattern::replacement
1545
- - Arrays defined in local configurations merge with main config instead of overwriting
1546
-
1547
- #### FIXED
1548
-
1549
- - `doing tags --interactive` wasn't showing menu
1550
-
1551
- ### 2.1.10
1552
-
1553
- #### NEW
1554
-
1555
- - `--age` (oldest|newest) option for view command
1556
-
1557
- ### 2.1.9
1558
-
1559
- #### IMPROVED
1560
-
1561
- - Only attempt to install fzf if it doesn't exist on the system. In case of errors, this means a user can manually install fzf and still be able to access `--interactive` options
1562
-
1563
- #### FIXED
1564
-
1565
- - Rotate command only archiving half of requested items
1566
- - Frozen string error in doing import plugin
1567
-
1568
- ### 2.1.8
1569
-
1570
- #### NEW
1571
-
1572
- - Hidden command `doing commands_accepting` which shows all commands that accept a given option, e.g. `doing commands_accepting search` shows all commands that take a search filter
1573
- - Hidden command `doing changelog` which outputs a paginated, formatted version of the change history.
1574
-
1575
- #### IMPROVED
1576
-
1577
- - The output of `doing template --list` now shows the file type of each template
1578
- - Output templates can now be saved to a default location/filename using `doing template html --save`
1579
-
1580
- #### FIXED
1581
-
1582
- - Error running `doing recent` on certain older ruby versions
1583
-
1584
- ### 2.1.6
1585
-
1586
- #### NEW
1587
-
1588
- - `doing redo` undoes a redo
1589
- - `doing undo -i` offers a list of available versions for selection
1590
- - Multiple undo. Every time a command modifies the doing file, a backup is written. Running `doing undo` repeatedly steps back through history, `doing undo 5` jumps back 5 versions
1591
- - When resetting via `doing select`, prompt for a date string
1592
- - `doing reset` accepts a date string argument to use as start date instead of current time if provided
1593
- - `doing tags` lists tags used in any/all sections, sortable, with or without frequency counts
1594
- - `doing show --menu` offers an interactive menu for selecting section and tag filters
1595
- - All commands that accept a `--tag` filter can now handle wildcards in the tag names. * to match any number of characters, ? to match a single character.
1596
- - New boolean type for tag searches, PATTERN (which is now the default). Combine tags using symbols to create more complex boolean searches, e.g. "doing +coding -work"
1597
- - You can now define `date_tags` in config, an array of tags/patterns that will be recognized when parsing for natural language dates which are converted when saving new entries
1598
- - `--search` strings can contain quoted phrases and use +/- to require or ban terms, e.g. `--search 'doing +coding -writing'
1599
- - Interactive option for redo command
1600
- - Plugins for Day One export
1601
-
1602
- #### IMPROVED
1603
-
1604
- - Better diff output for fzf preview of `doing undo` history
1605
- - Fall back to good ol' sed for colorizing diffs when no good tool is available
1606
- - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
1607
- - Matching algorithm can be configured in settings
1608
- - All template placeholders can now use the "printf" formatting that %title and %note have, allowing for padding, prefixes, etc.
1609
- - Move default locations for doing file and backups to ~/.local/share/doing
1610
- - `doing show --menu` will only offer tags that exist after any tag/search filters have been run
1611
- - `doing show @tag` with `--menu` will first filter by the @tag, then do an OR search for tags selected from the menu
1612
-
1613
- #### FIXED
1614
-
1615
- - `doing reset` without filter not automatically affecting most recent entry
1616
- - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
1617
- - Preserve colors when wrapping text to new lines
1618
- - Tag highlighting errors
1619
- - Template options specified in views were being overriden by options in templates. View config now has precedence, but will fall back to template config for missing keys
1620
-
1621
- #### IMPROVED
1622
-
1623
- - Better diff output for fzf preview of `doing undo` history
1624
- - Fall back to good ol' sed for colorizing diffs when no good tool is available
1625
- - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
1626
-
1627
- #### FIXED
1628
-
1629
- - `doing reset` without filter not automatically affecting most recent entry
1630
- - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
1631
-
1632
- ### 2.1.3
1633
-
1634
- #### NEW
1635
-
1636
- - BREAKING CHANGE: custom classes for Section (hash) and Items (Array). @content is still a regular Hash. Sections have methods :original and :items. This will affect plugins as wwid.content[section][:items] is now wwid[section].items (same for :original)
1637
- - `doing config set -r key.path` will delete a key from any config file, removing empty parent keys
1638
- - `config list` will list detected .doingrc files and the main config file in order of precedence - refactoring
1639
- - When modifying start dates or @done dates via an editor command, natural language strings can be used and will be parsed into doing-formatted dates automatically
1640
- - When editor is invoked, entry titles include start date, which can be modified
1641
- - `--before`, `--after`, and `--from` date filters for select command
1642
- - `--from` flag for `doing today` and `doing yesterday`, filter by time range
1643
- - `--from` flag for `doing search`, filter by date/time range
1644
- - Commands that accept `--before`, `--after`, and `--from` can now filter on time ranges. If the date string given contains only a time (no day or date), it will be interpreted as a time range, meaning the date isn't filtered, but only entries within the time range are shown/processed
1645
- - Add %duration placeholder to template variables
1646
- - Add `interval_format` setting to config (applies to root or any view/template) to set intervals/durations to human (2h 15m) or text (00:02:15)
1647
- - Add `duration` key to config (root or view/template). If set to true, will display durations by default (no need for `--duration`)
1648
- - Most display commands now have a `--duration` flag that will display an elapsed time if the entry is not marked @done
1649
-
1650
- #### IMPROVED
1651
-
1652
- - Config -o raw outputs value as YAML if result is a Hash/mapping, unquoted string if a single value, comma-separated list if it's an Array.
1653
- - Config -o json no longer includes key, only value.
1654
- - System agnostic method for checking available executables (pager, editor)
1655
- - Using `config set` and selecting a local config will no longer write the entire config to the local .doingrc. Instead, a nested path to the particular setting will be added to the config file.
1656
- - Config set will create missing keys. Fuzzy matching will work until the path fails, then path elements after that point will be added as verbatim keys to the specified configuration (with confirmation)
1657
- - Make menus only as tall as needed, so 5 options don't take up the whole screen
1658
- - Better word wrap for long note lines
1659
-
1660
- #### FIXED
1661
-
1662
- - `finish --took 60m` is supposed to backdate the start date if needed to finish at the current time and maintain an elapsed time
1663
- - If an editor was specified for config (or default as fallback) with command line options (e.g. `emacs -nw`), Doing would fail to recognize that the executable was available.
1664
-
1665
- ### 2.0.25
1666
-
1667
- #### NEW
1668
-
1669
- - `doing config set` to set single config values from command line
1670
- - BREAKING CHANGE: Moves ~/.doingrc to ~/.config/doing/config.yml
1671
- - BREAKING CHANGE: convert config flags to subcommands, e.g. `doing config --udpate` => `doing config update`, and `doing config --dump` => `doing config dump`
1672
-
1673
- ### 2.0.24
1674
-
1675
- - include fzf source directly, in case git isn't installed
1676
- - fall back to installing fzf with sudo on error
1677
-
1678
- ### 2.0.20
1679
-
1680
- #### IMPROVED
1681
-
1682
- - completion script generator refactor and progress bars
1683
-
1684
- #### FIXED
1685
-
1686
- - compile fzf for current operating system
1687
-
1688
- ### 2.0.19
1689
-
1690
- #### FIXED
1691
-
1692
- - Remove any coloring before writing to doing file
1693
-
1694
- ### 2.0.18
1695
-
1696
- #### FIXED
1697
-
1698
- - Escape codes being included in doing file
1699
-
1700
- ### 2.0.17
1701
-
1702
- #### IMPROVED
1703
-
1704
- - Improvements to %title formatting and wrapping
1705
-
1706
- ### 2.0.16
1707
-
1708
- - Test release to validate git flow automation
1709
-
1710
- ### 2.0.13
1711
-
1712
- #### FIXED
1713
-
1714
- - Remove amatch gem dependency due to compatibility issues with Windows systems (also removes `--fuzzy` option from all search commands)
1715
-
1716
- ### 2.0.11
1717
-
1718
- #### NEW
1719
-
1720
- - Append `/r` to tag transforms to replace original tag
1721
-
1722
- #### FIXED
1723
-
1724
- - Autotag tag transform fixes
1725
-
1726
- ### 2.0.10
1727
-
1728
- #### NEW
1729
-
1730
- - Add 'timer_format' config with 'human' option for tag totals
1731
- - If `doing view` and `doing show` are confused, offer option to run the other command
1732
- - `doing completion` to generate shell completion scripts for zsh, bash, and fish
1733
- - `--search` and `--not` for cancel command
1734
- - `--case` flag for commands with `--search`. Can be (c)ase-sensitive, (i)nsensitive, or (s)mart (default smart, case insensitive unless search string contains uppercase letters)
1735
- - Add `--exact` flag to all commands with `--search` flag to force exact matching without requiring single quote prefix
1736
- - Add `--not` flag to all commands with filters (`--tag`, `--search`, `--before`, etc.) to negate the filter and return entries NOT matched
1737
-
1738
- #### IMPROVED
1739
-
1740
- - More command line feedback
1741
- - Error formatting and output
1742
- - Add subcommand completion for `doing help` in fish shell
1743
- - Logging and error handling
1744
-
1745
- #### FIXED
1746
-
1747
- - Zsh completion not outputting results
1748
- - Remove `--[no]` from non-negatable options
1749
- - `doing plugins -t export -c` not outputting columns
1750
- - View config not respecting tag_order setting
1751
-
1752
- ### 2.0.3.pre
1753
-
1754
- #### NEW
1755
-
1756
- - Import calendar events from Calendar.app on macOS
1757
- - `doing config --update` will add newly added config keys to your existing config file (handy with plugins that define their own config keys)
1758
- - Add %idnote template placeholder for "indented note" (entire note indented one tab)
1759
- - (loosely printf-esque) formatting options for `%note` template placeholder
1760
- - `--interactive` mode to act on results of `doing grep`
1761
- - Printf formatting for title and date
1762
- - Doing import plugin
1763
- - Plugins command to list plugins
1764
- - `--dump` option for `doing config` to output a key.path config key as JSON, YAML, or raw output
1765
- - `--no-color` global flag
1766
- - Log levels, with `--quiet` and `--verbose` global flags
1767
- - Convert CLI messaging to Logger-based system
1768
- - Use DOING_DEBUG, DOING_QUIET, or DOING_LOG_LEVEL environment variables to specify log levels before configuration is read
1769
- - Hooks, register plugins to run based on events
1770
- - --[no-]pager and paginate: config option to enable paging output
1771
- - Never_finish and never_time config options to prevent items matching tags/sections from ever receiving @done (never_finish) or @done timestamp (never_time) - More configuration refactoring
1772
-
1773
- #### IMPROVED
1774
-
1775
- - Timeline output formatting
1776
- - Major plugin architecture refactoring
1777
- - Fix regression where notes stored in doing file were outdented, breaking TaskPaper compatibility
1778
- - When accepting a date filter, allow end date to be in the future
1779
- - If an edited item has no changes, don't update/output notification - Don't start with query when using grep `--interactive`
1780
- - Select menu item formatting
1781
- - Output wrapping for terminal display
1782
- - Redirect warn to STDOUT when run with `--stdout`
1783
- - Fish autocomplete
1784
- - `--config_file` global flag deprected, now uses $DOING_CONFIG environment variable so that config overrides can be available before the initial configuration is run
1785
- - When `--stdout` or not a TTY, no color or output formatting
1786
- - Highlight tags when showing results. Because it looks nice.
1787
- - `--tag` and `--search` for `doing note`
1788
- - View/section fuzzy guessing
1789
- - Error reporting
1790
- - If `doing config` finds local doingrc files, offers a menu for editing
1791
- - More filtering options for `doing finish`
1792
- - Doing done accepts `--unfinished` flag to finish last entry not marked @done (instead of last entry)
1793
- - Doing done accepts `--note` flag to append a note when completing an entry
1794
-
1795
- #### FIXED
1796
-
1797
- - Multi-word unquoted arguments to add_section being truncated
1798
- - Show `--from` with date span
1799
- - Handling of arbitrary times in natural language dates
1800
- - Backward scope of since command with arbitrary times
1801
- - `doing rotate --keep` wasn't respecting keep value
1802
-
1803
- ### 1.0.93
1804
-
1805
- #### FIXED
1806
-
1807
- - Gemfile error
1808
-
1809
- ### 1.0.91
1810
-
1811
- #### NEW
1812
-
1813
- - "taskpaper" format available for all output options
1814
- - "markdown" format available for all output commands (GFM-style task list, customizable template)
1815
- - `--rename` option for tag command to replace tags
1816
- - `--regex` option for tag command, for `--remove` and `--rename`
1817
-
1818
- ### 1.0.90
1819
-
1820
- #### IMPROVED
1821
-
1822
- - doing finish `--auto` now pulls from all sections, not just the section of the target entry
1823
-
1824
- #### FIXED
1825
-
1826
- - Minor fix for shell command in doing select
1827
- - Fix for doing finish `--auto` when matched item is last in list
1828
-
1829
- ### 1.0.89
1830
-
1831
- #### NEW
1832
-
1833
- - Pretty print JSON output
1834
- - `--no-menu` option for select command to use `--query` as a filter and act on matching entries without displaying menu
1835
-
1836
- ### 1.0.88
1837
-
1838
- #### IMPROVED
1839
-
1840
- - Add `--before` and `--after` time search to yesterday command
1841
- - Add `--before` and `--after` date search to search/grep command
1842
- - Add `--tag_order` to yesterday command
1843
-
1844
- ### 1.0.87
1845
-
1846
- #### IMPROVED
1847
-
1848
- - Add leading spaces to make %shortdate align properly, at least for the last week
1849
- - Add `--tag`, `--bool`, and `--search` to view command
1850
- - Add `--before` and `--after` date search to view command
1851
- - Add `--before` and `--after` date search to show command
1852
- - Add `--before` and `--after` time search to today command
1853
- - Add `--search` filter to show command
1854
- - More alignment/formatting fixes for %shortdate
1855
-
1856
- ### 1.0.86
1857
-
1858
- #### IMPROVED
1859
-
1860
- - Add `count` config option for templates->recent
1861
-
1862
- ### 1.0.85
1863
-
1864
- #### IMPROVED
1865
-
1866
- - Add `--before` DATE_STRING to archive and rotate commands
1867
- - Only create on rotate file per day, merge new entries into existing file
1868
-
1869
- #### FIXED
1870
-
1871
- - Fix `--auto` for finish command
1872
-
1873
- ### 1.0.84
1874
-
1875
- #### NEW
1876
-
1877
- - `rotate` command for archiving entries to new file
1878
-
1879
- #### FIXED
1880
-
1881
- - Fixed current_section config key not being honored in some commands
1882
-
1883
- ### 1.0.83
1884
-
1885
- #### FIXED
1886
-
1887
- - Fixes for `doing view` options, additional config keys for views
1888
-
1889
- ### 1.0.82
1890
-
1891
- #### FIXED
1892
-
1893
- - Bugfixes
1894
-
1895
- ### 1.0.81
1896
-
1897
- #### IMPROVED
1898
-
1899
- - fzf menu improvements
1900
- - allow multiple selections `doing select` action menu
1901
-
1902
- ### 1.0.80
1903
-
1904
- #### IMPROVED
1905
-
1906
- - Convert all menus to fzf screens
1907
-
1908
- ### 1.0.79
1909
-
1910
- #### IMPROVED
1911
-
1912
- - Wildcard tag removal using `doing select -t "tag*" -r`
1913
- - fzf menu display polish
1914
-
1915
- #### FIXED
1916
-
1917
- #### FIXED
1918
-
1919
- - Gem missing fzf
1920
-
1921
- ### 1.0.78
1922
-
1923
- #### IMPROVED
1924
-
1925
- - If no action is specified with select command, an interactive menu is
1926
- presented
1927
- - add output action select command with formatting and save options
1928
- - Don't link URLs in html output that don't have a protocol
1929
-
1930
- ### 1.0.76
1931
-
1932
- #### IMPROVED
1933
-
1934
- - Refine editing multiple selections (doing select)
1935
-
1936
- ### 1.0.74
1937
-
1938
- #### NEW
1939
-
1940
- - Add `--tag` and `--search` flags to tag command to tag all entries matching search terms
1941
- - Add since command, which is the same as `doing on tuesday to now` but `doing since tuesday` just feels more intuitive.
1942
-
1943
- ### 1.0.73
1944
-
1945
- #### FIXED
1946
-
1947
- - Fix for timeline output
1948
-
1949
- ### 1.0.72
1950
-
1951
- #### NEW
1952
-
1953
- - Add `doing select` to show menu of all tasks, searchable with fuzzy matching and the ability to perform certain tasks on multiple selections.
1954
-
1955
- ### 1.0.71
1956
-
1957
- #### FIXED
1958
-
1959
- - Fix for template command not working at all
1960
-
1961
- ### 1.0.70
1962
-
1963
- #### FIXED
1964
-
1965
- - Fix for `doing done --took 30m` setting the wrong @done timestamp when completing previous item
1966
-
1967
- ### 1.0.69
1968
-
1969
- #### IMPROVED
1970
-
1971
- - Add `--unfinished` option to finish and cancel commands
1972
-
1973
- ### 1.0.68
1974
-
1975
- #### FIXED
1976
-
1977
- - Fix error in `doing show --sort` argument parsing
1978
-
1979
- ### 1.0.67
1980
-
1981
- #### FIXED
1982
-
1983
- - Gem packaging error
1984
-
1985
- ### 1.0.66
1986
-
1987
- #### IMPROVED
1988
-
1989
- - More flexible boolean specification, can be: all, and, any, or, not, or none
1990
-
1991
- #### FIXED
1992
-
1993
- - Fix for some long flags being interpreted as arrays instead of strings
1994
- - Fix for archive command not removing original entries from archived section
1995
-
1996
- ### 1.0.65
1997
-
1998
- #### IMPROVED
1999
-
2000
- - Prevent duplicates/overlapping entries when importing
2001
-
2002
- ### 1.0.64
2003
-
2004
- #### NEW
2005
-
2006
- - Initial import feature for Timing.app reports
2007
-
2008
- ### 1.0.63
2009
-
2010
- #### IMPROVED
2011
-
2012
- - If `doing done --took=X` results in completion date greater than current time, use current time as completion date and backdate the entry's timestamp to fit
2013
-
2014
- ### 1.0.62
2015
-
2016
- #### FIXED
2017
-
2018
- - `doing done` with `--took=` and without `--back=` should set end time to start date plus `--took` value
2019
-
2020
- ### 1.0.61
2021
-
2022
- #### IMPROVED
2023
-
2024
- - Add `--search` filter to `doing archive`
2025
-
2026
- ### 1.0.60
2027
-
2028
- #### FIXED
2029
-
2030
- - Default value for `doing again --bool` was ALL, should be AND
2031
-
2032
- ### 1.0.59
2033
-
2034
- #### IMPROVED
2035
-
2036
- - Improvements to `doing again --tag=` functionality
2037
-
2038
- ### 1.0.58
2039
-
2040
- #### IMPROVED
2041
-
2042
- - Finish previous task if `doing again` and not already completed
2043
-
2044
- ### 1.0.57
2045
-
2046
- #### IMPROVED
2047
-
2048
- - Unit tests
2049
-
2050
- ### 1.0.56
2051
-
2052
- #### IMPROVED
2053
-
2054
- - Tag command tests
2055
-
2056
- #### FIXED
2057
-
2058
- - Doing not reading per-directory .doingrc configs
2059
-
2060
- ### 1.0.55
2061
-
2062
- #### NEW
2063
-
2064
- - Added config_editor_app setting to config so you can have
2065
- - A parenthetical at the end of an entry title becomes an attached
2066
- - `--editor` flag for `doing last` to edit last entry
2067
- - `--tag=` flag to filter `doing last` by tag
2068
- - `--search=` to filter `doing last` by text/regex search
2069
- - `--search=` for `doing finish`, finish last X entries matching search
2070
- - Add `tags_color` as a primary config key to highlight @tags in displayed entries
2071
-
2072
- #### IMPROVED
2073
-
2074
- - Clean up command line help
2075
- - `--editor` improvements for all commands that use it
2076
-
2077
- #### FIXED
2078
-
2079
- - Doing finish `--took` throwing error
2080
- - Doing tag `--remove` was adding tags if they didn't exist
2081
- - Creating a meanwhile task with a note resulted in an error
2082
-
2083
- ### 1.0.54
2084
-
2085
- #### FIXED
2086
-
2087
- - Bugfix for `finish --tag=TAG`
2088
-
2089
- ### 1.0.53
2090
-
2091
- #### NEW
2092
-
2093
- - `--tag` and `--bool` filtering for again/resume, cancel
2094
- - `--in` flag for `again`/`resume` to specify to which section the new
2095
- - Finish command accepts `--tag=` flag, finishing last entry
2096
- - `doing cancel` to end X tasks without completion date
2097
-
2098
- #### IMPROVED
2099
-
2100
- - Add `--no-color` option to view command
2101
- - Add `--tag` to show for compatibility
2102
-
2103
- #### FIXED
2104
-
2105
- - Error running finish without `--tag` flag
2106
- - `--archive` flag on finish, done, and cancel causing error
2107
-
2108
- ### 1.0.52
2109
-
2110
- #### NEW
2111
-
2112
- - Finish command accepts `--tag=` flag, finishing last entry
2113
-
2114
- #### FIXED
2115
-
2116
- - `--archive` flag on finish, done, and cancel causing error
2117
-
2118
- ### 1.0.49
2119
-
2120
- #### FIXED
2121
-
2122
- - Fix for missing date on @done tags
2123
-
2124
- ### 1.0.48
2125
-
2126
- #### FIXED
2127
-
2128
- - Fix confirmation dialog for `doing tag -a -c 0` (autotag all)
2129
-
2130
- ### 1.0.47
2131
-
2132
- #### IMPROVED
2133
-
2134
- - Remove check for file existence before attempting to run run_after script
2135
- - Don't autotag entries restarted with `again/resume`
2136
- - Add short flags (`-b`) for `--back` on all commands that support it
2137
-
2138
- ### 1.0.46
2139
-
2140
- #### IMPROVED
2141
-
2142
- - Code cleanup
2143
-
2144
- ### 1.0.45
2145
-
2146
- #### IMPROVED
2147
-
2148
- - Only execute run_after script if changes are written
2149
-
2150
- ### 1.0.44
2151
-
2152
- #### IMPROVED
2153
-
2154
- - Remove unnecessary console logging
2155
-
2156
- ### 1.0.43
2157
-
2158
- #### NEW
2159
-
2160
- - Add `again` command to repeat last entry without @done tag
2161
- - Add `run_after` configuration option to execute external script after any change
2162
-
2163
- ### 1.0.42
2164
-
2165
- #### FIXED
2166
-
2167
- - Fix note indentation in doing file
2168
-
2169
- ### 1.0.41
2170
-
2171
- #### FIXED
2172
-
2173
- - Fix for repeated backreferences in tag transform
2174
-
2175
- ### 1.0.40
2176
-
2177
- #### IMPROVED
2178
-
2179
- - Add `--tag_sort` to all subcommands with `--totals` option
2180
-
2181
- ### 1.0.39
2182
-
2183
- #### NEW
2184
-
2185
- - Tag transforms
2186
- - Option to sort tags by name in `--totals`
2187
-
2188
- ### 1.0.33
2189
-
2190
- #### FIXED
2191
-
2192
- - Gem dependency updates
2193
-
2194
- ### 1.0.30
2195
-
2196
- #### FIXED
2197
-
2198
- - Fix for array comparison error
2199
-
2200
- ### 1.0.29
2201
-
2202
- #### FIXED
2203
-
2204
- - Bugfixes
2205
-
2206
- ### 1.0.28
2207
-
2208
- #### IMPROVED
2209
-
2210
- - Global option `-x` to skip autotags and default_tags from global/local .doingrc
2211
- - Remove extra spaces when creating entry
2212
-
2213
- ### 1.0.27
2214
-
2215
- #### IMPROVED
2216
-
2217
- - More graceful writing of default config (~/.doingrc) on first run
2218
- - Repaired testing setup. Needs moar tests.
2219
-
2220
- ### 1.0.26
2221
-
2222
- #### IMPROVED
2223
-
2224
- - Add `--at` flag for `doing done`, e.g. `doing done --at=1:35pm --took=15m A new task I already finished`
2225
- - Allow decimal quantities when using natural language for hours or days, e.g. `--took=2.5h`
2226
- - Add `did` as a synonym for `done` subcommand
2227
-
2228
- ### 1.0.25
2229
-
2230
- #### IMPROVED
2231
-
2232
- #### IMPROVED
2233
-
2234
- - Smarter method of getting user $HOME
2235
- - Improved avoiding duplicate tags when autotagging
2236
- - Improved autotag reporting
2237
-
2238
- ### 1.0.24
2239
-
2240
- #### IMPROVED
2241
-
2242
- - `doing note` operates on whatever is most recent, not just the last note in Currently
2243
- - `doing tag` with no count specified operates on most recent entry in any section, not just Currently
2244
- - `doing tag` with a count greater than 1 requires a section to be specified
2245
- - Improved results reporting for `doing tag`
2246
- - When removing tag do a whole-word match to avoid removing part of a longer tag
2247
-
2248
- ### 1.0.23
2249
-
2250
- #### IMPROVED
2251
-
2252
- - Apply default_tags after autotagging to avoid tags triggering tags
2253
- - Set `doing recent` to default to All sections instead of Currently
2254
- - Fix error in time reporting
2255
- - improved y/n prompt for TTY
2256
-
2257
- ### 1.0.22
2258
-
2259
- #### IMPROVED
2260
-
2261
- - Allow cascading of local config files
2262
- - Allow `doing today` and `yesterday` to specify a section
2263
-
2264
- #### FIXED
2265
-
2266
- - Fix handling of "local" config files, allowing per-project configurations
2267
-
2268
- ### 1.0.21
2269
-
2270
- #### NEW
2271
-
2272
- - Add legitimate regex search capabilities
2273
- - Synonyms for grep (search) and now (next)
2274
-
2275
- #### FIXED
2276
-
2277
- - CSS fix
2278
-
2279
- ### 1.0.20
2280
-
2281
- #### NEW
2282
-
2283
- - New command `doing templates` to export default templates for HAML and CSS
2284
- - New config options under `html_template` for `haml` and `css`
2285
-
2286
- #### IMPROVED
2287
-
2288
- - Rewrite HTML export templates with responsive layout and typography
2289
- - Ability to customize the HTML output using HAML and CSS
2290
-
2291
- ### 1.0.19
2292
-
2293
- #### IMPROVED
2294
-
2295
- - For `doing note -e` include the entry title so you know what you're adding a note to
2296
- - For any other command that allows `-e` include a comment noting that anything after the first line creates a note
2297
- - Ignore # comments when parsing editor results
2298
- - Add a .md extension to the temp file passed to the editor so you can take advantage of any syntax highlighting and other features in your editor
2299
-
2300
- ### 1.0.18
2301
-
2302
- #### IMPROVED
2303
-
2304
- - Loosened up the template color resetting a bit more
2305
-
2306
- #### FIXED
2307
-
2308
- - Fix `undefined method [] for nil class` error in `doing view`
2309
-
2310
- ### 1.0.17
2311
-
2312
- #### NEW
2313
-
2314
- - Add `--stdout` global option to send reporting to STDOUT instead of STDERR (for use with LaunchBar et al)
2315
-
2316
- ### 1.0.16
2317
-
2318
- #### FIXED
2319
-
2320
- - Fixes overzealous color resetting
2321
-
2322
- ### 1.0.15
2323
-
2324
- #### FIXED
2325
-
2326
- - CLI/text totals block was outputting when HTML output was selected
2327
- - Have all template colors reset bold and background automatically when called
2328
-
2329
- ### 1.0.14
2330
-
2331
- #### IMPROVED
2332
-
2333
- - Fish completion
2334
- - views and sections subcommands have -c option to output single column
2335
- - Fix html title when tag_bool is NONE
2336
- - Fix @from tagging missing closing paren
2337
- - Fix tag coloring
2338
-
2339
- ### 1.0.13
2340
-
2341
- #### FIXED
2342
-
2343
- - Fix gsub error in doing meanwhile
2344
-
2345
- ### 1.0.8pre
2346
-
2347
- #### NEW
2348
-
2349
- - added doing on command
2350
- - Added autotagging to tag command
2351
- - JSON output option to view commands
2352
- - date filtering, improved date language
2353
- - let view templates define output format (csv, json, html, template)
2354
-
2355
- #### IMPROVED
2356
-
2357
- - add `%chompnote` template variable (item note with newlines and extra whitespace stripped)
2358
-
2359
- ### 1.0.7pre
2360
-
2361
- #### IMPROVED
2362
-
2363
- - Slightly fuzzier searching in the grep command
2364
- - cleaner exits, `only_timed` key for view configs
2365
- - making the note command append new notes better, and load existing notes in the editor if `-e` is called
2366
- - handle multiple tag input in `show` tag filter
2367
- - Global tag operations, better reporting
2368
-
2369
- #### FIXED
2370
-
2371
- - fix for `-v` option
2372
-
2373
- ### 1.0.4pre
2374
-
2375
- #### IMPROVED
2376
-
2377
- - Improved HTML output
2378
- - `--only_timed` option for view/show commands that only outputs items with elapsed timers (interval between start and done dates)
2379
- - add seconds for timed items in CSV output, run `--only_timed` before chopping off `--count #`
2380
- - fix for 1.8.7 `Dir.home` issue
2381
- - version bump
2382
- - don't show tag totals with zero times
2383
- - zsh completion for doing
2384
- - HTML styling
2385
- - `--only_timed` option
2386
- - added zsh completion file to `README.md`
2387
- - add zsh completion file
2388
-
2389
- ### 1.0.3pre
2390
-
2391
- #### IMPROVED
2392
-
2393
- - `done` command: making `--took` modify start time if `--back` isn't specified
2394
- - Cleaned up time totals, improved HTML output
2395
- - fixes for `--back` and `--took` parsing
2396
- - Adding more complete terminal reporting to archive command
2397
-
2398
- ### 1.0.0pre
2399
-
2400
- #### IMPROVED
2401
-
2402
- - Skipped ahead in the version numbering. Because I don't care.
2403
- - Added a `note` command and `--note` flags for entry creation commands
2404
-
2405
- ### 0.2.6pre
2406
-
2407
- #### IMPROVED
2408
-
2409
- - `--totals`, `--[no-]times`, `--output [csv,html]` options for `yesterday` command.
2410
- - Add tests for Darwin to hide OS X-only features on other systems
2411
- - `-f` flag to `now` command for finishing last task when starting a new one (Looks back for the last unfinished task in the list)
2412
- - `--took` option for `done` and `finish` for specifying intervals from the start date for the completion date
2413
- - Basic command line reporting
2414
- - `--auto` flag for `finish` and `done` that will automatically set the completion time to 1 minute before the next start time in the list. You can use it retroactively to add times to sequential todos.
2415
- - `doing grep` for searching by text or regex
2416
-
2417
- ### 0.2.5
2418
-
2419
- #### IMPROVED
2420
-
2421
- - Default to showing times #26, show totals even if no tags exist #27, fix indentation #29
2422
- - Add section label to archived tasks automatically, excepting `Currently` section
2423
- - Today outputs and backdate for finish
2424
- - HTML styling and fix for 1.8.7 HAML errors
2425
- - Look, HTML output! (`--output html`)
2426
- - Also, `--output csv`
2427
- - let doing `archive` function on all sections
2428
- - option to exclude date from _@done_,
2429
- - output newlines in sections and views
2430
- - Flagging (`doing mark`)
2431
- - fix for view/section guess error
2432
- - Adding tag filtering to archive command (`doing archive \@done`)
2433
- - `doing yesterday`
2434
- - `doing done -r` to remove last doing tag (optionally from `-s Section`)
2435
- - Add `-f` flag to specify alternate doing file
2436
- - `meanwhile` command
2437
-
2438
- ### 0.2.1
2439
-
2440
- #### IMPROVED
2441
-
2442
- - CSV output for show command (`--csv`)
2443
- - HTML output for show command (`--output html`)
2444
- - fuzzy searching for all commands that specify a view.
2445
- - In the terminal, you'll see "Assume you meant XXX" to show what match it found, but this is output to STDERR (and won't show up if you're redirecting the output or using it in GeekTool, etc.)
2446
- - `tags_color` in view config to highlight tags at the end of the lines. Can be set to any of the `%colors`.
2447
- - Basic time tracking.
2448
- - `-t` on `show` and `view` will turn on time calculations
2449
- - Intervals between timestamps and dated _@done_ tags are calculated for each line, if the tag exists.
2450
- - You must include a `%interval` token in the appropriate template for it to show
2451
- - _@start(date)_ tags can optionally be used to override the timestamp in the calculation
2452
- - Any other tags in the line have that line's total added to them
2453
- - Totals for tags can be displayed at the end of output with `--totals`
2454
-
2455
-
2456
- ### 0.2.0
2457
-
2458
- #### IMPROVED
2459
-
2460
- - `doing done` without argument tags last entry done
2461
- - `-a` archives them
2462
- - `doing finish` or `doing finish X` marks last X entries done
2463
- - `-a` archives them
2464
- - `doing tag tag1 [tag2]` tags last entry or `-c X` entries
2465
- - `doing tag -r tag1 [tag2]` removes said tag(s)
2466
- - custom views additions
2467
- - custom views can include `tags` and `tags_bool`
2468
- - `tags` is a space-separated list of tags to filter the results by
2469
- - `tags_bool` defines `AND` (all tags must exist), `OR` (any tag exists), or `NONE` (none of the tags exist)
2470
- - `order` key (`asc` or `desc`) defines output sort order by date
2471
- - section key can be set to `All` to combine sections
2472
- - `doing show` updates
2473
- - accepts `all` as a section
2474
- - arguments following section name are tags to filter by
2475
- - `-b` sets boolean (`AND`, `OR`, `NONE`) or (`ALL`, `ANY`, `NONE`) (default `OR`/`ANY`)
2476
- - use `-c X` to limit results
2477
- - use `-s` to set sort order (`asc` or `desc`)
2478
- - use `-a` to set age (`newest` or `oldest`)
2479
- - fuzzy section guessing when specified section isn't found
2480
- - fuzzy view guessing for `doing view` command
2481
-
2482
- ### 0.1.9
2483
-
2484
- #### IMPROVED
2485
-
2486
- - colors in templated output
2487
- - `open` command
2488
- - opens in the default app for file type
2489
- - `-a APPNAME` (`doing open -a TaskPaper`)
2490
- - `-b bundle_id` (`doing open -b com.sublimetext.3`)
2491
- - `-e` switch for `now`, `later` and `done` commands
2492
- - save a tmp file and open it in an editor
2493
- - allows multi-line entries, anything after first line is considered a note
2494
- - assumed when no input is provided (`doing now`)
2495
- - `doing views` shows all available custom views
2496
- - `doing view` without a view name will let you choose a view from a menu
2497
- - `doing archive` fixed so that `-k X` works to keep `X` number of entries in the section
2498
-
2499
- ### 0.1.7
2500
-
2501
- #### IMPROVED
2502
-
2503
- - colors in templated output
2504
- - `open` command
2505
- - opens in the default app for file type
2506
- - `-a APPNAME` (`doing open -a TaskPaper`)
2507
- - `-b bundle_id` (`doing open -b com.sublimetext.3`)
2508
- - `-e` switch for `now`, `later`, and `done` commands
2509
- - save a tmp file and open it in an editor
2510
- - allows multi-line entries, anything after first line is considered a note
2511
- - assumed when no input is provided (`doing now`)
2512
-
2513
- and hitting tab will offer completions of subcommands and their options.' command :completion do |c|
2514
- - `doing completion install SHELL` will copy the default completion scripts to your ~/.local/share/doing folder and offer to symlink them to autoload directories. These scripts are generated with each release but will not include any custom commands or plugins in the completions.
2515
-
2516
- #### IMPROVED
2517
-
2518
- - `doing completion` now uses subcommands, `generate` and `install`. The install command will write default scripts to ~/.local/share/doing/completion and link them into the appropriate autoload directory for the shell. The generate command will create new scripts that include any custom commands and plugins. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch develop # Your branch is ahead of 'origin/develop' by 1 commit. # # Changes to be committed: # modified: CHANGELOG.md # modified: bin/commands/completion.rb # modified: lib/doing/completion.rb # # ------------------------ >8 ------------------------ # Do not modify or remove the line above. # Everything below it will be ignored. diff --git a/CHANGELOG.md b/CHANGELOG.md index 9dbe52b..d4321f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,15 @@ +### 2.1.31 + +2022-02-16 10:13 + +#### NEW + +- `doing completion install SHELL` will copy the default completion scripts to your ~/.local/share/doing folder and offer to symlink them to autoload directories. These scripts are generated with each release but will not include any custom commands or plugins in the completions. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # # On branch develop # Your branch is up to date with 'origin/develop'. # # Changes to be committed: # modified: Gemfile.lock # modified: README.md # modified: bin/commands/completion.rb # modified: lib/doing/completion.rb # modified: lib/doing/version.rb # # ------------------------ >8 ------------------------ # Do not modify or remove the line above. # Everything below it will be ignored. diff --git a/Gemfile.lock b/Gemfile.lock index c780406..9261a44 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: + +#### IMPROVED + +- When generating completion scripts using `doing completion --file FILE_PATH`, if the file specified is not in an auto-load directory for the shell type, offer to symlink the output to an appropriate directory + ### 2.1.30 2022-02-16 07:18 diff --git a/bin/commands/completion.rb b/bin/commands/completion.rb index 3d4f479..c3358e5 100644 --- a/bin/commands/completion.rb +++ b/bin/commands/completion.rb @@ -5,36 +5,65 @@ desc 'Generate shell completion scripts' long_desc 'Generates the necessary scripts to add command line completion to various shells, so typing ### 2.1.30
2519
-
2520
- 2022-02-16 07:18
2521
-
2522
- #### IMPROVED
2523
-
2524
- - `doing changes` does a better job of parsing a lookup string like '>= 2.1.10 < 2.1.15'
2525
-
2526
- #### FIXED
2527
-
2528
- - System agnostic platform detection, so commands that check for Darwin won't error out on other systems
2529
- - `doing completions` debugging code
2530
-
2531
- ### 2.1.29
2532
-
2533
- 2022-02-14 12:42
2534
-
2535
- #### IMPROVED
2536
-
2537
- - `doing changes --interactive` will load up a changelog viewer using fzf. Because it makes me happy, that's why.
2538
-
2539
- ### 2.1.28
2540
-
2541
- 2022-02-14 11:39
2542
-
2543
- #### FIXED
2544
-
2545
- - Lines merging in `doing changes --changes` output
2546
-
2547
- ### 2.1.27
2548
-
2549
- 2022-02-14 06:04
2550
-
2551
- #### NEW
2552
-
2553
- - `doing finish --update` will overwrite any existing @done tag with a new date (current time or set with `--at` or `--back`)
2554
-
2555
- #### IMPROVED
2556
-
2557
- - Code refactoring and cleanup
2558
- - Include release dates in `doing changes` output when available
2559
- - Allow various naming conventions for %color strings in templates. Now `boldwhite`, `brightwhite`, `bg_bold_cyan`, and `bold_bg_cyan` all work (for example)
2560
- - Common flags (e.g. --search, --tag) found on multiple commands consolidated and help descriptions matched
2561
- - `commands_accepting` now accepts multiple arguments and a `--bool` flag
2562
- - `changes` command can now output changes only (no version numbers) and defaults to raw Markdown if not a TTY or the `--md` flag is used
2563
- - `doing archive` now accepts `--after` and `--from` date filters
2564
-
2565
- #### FIXED
2566
-
2567
- - Some flag descriptions in help
2568
- - Editor detection
2569
-
2570
- ### 2.1.26
2571
-
2572
- 2022-01-23 16:14
2573
-
2574
- #### NEW
2575
-
2576
- - Use plugins.hidden_commands in configuration to disable any command (array of command names). Note that some commands use aliases and the first name should be used.
2577
- - `doing commands [add|remove]` allows interactive enabling and disabling of default and custom commands
2578
-
2579
- #### IMPROVED
2580
-
2581
- - Moved all commands into separate files for management
2582
-
2583
- #### FIXED
2584
-
2585
- - Changelog command regex too greedy when parsing changelog
2586
-
2587
- ### 2.1.25
2588
-
2589
- 2022-01-23 09:25
2590
-
2591
- ### 2.1.24
2592
-
2593
- 2022-01-22 17:27
2594
-
2595
- #### IMPROVED
2596
-
2597
- - Minor update to Fish completion script
2598
-
2599
- #### FIXED
2600
-
2601
- - Changelog formatting issue
2602
-
2603
- ### 2.1.23
2604
-
2605
- 2022-01-22 15:52
2606
-
2607
- #### NEW
2608
-
2609
- - All display commands (except view) now accept `--config_template TEMPLATE_KEY` to override that commands default template.
2610
- - Display commands accept `--template`, which takes a template string containing %placeholders and overrides the commands default template output. Affects grep, last, on, recent, show, since, today, yesterday
2611
-
2612
- #### IMPROVED
2613
-
2614
- - With complete examples in the help output for most commands, `doing help` almost always requires scrolling up. It now automatically paginates using your system $PAGER (or best detected option).
2615
- - `doing tags` takes a MAX_COUNT argument to limit results when searching
2616
- - `doing tags --line` flag to output tags in a single line
2617
- - Mostly for my own use, `doing changes` (which views the changelog) now accepts `--lookup VERSION` and `--search SEARCH_PATTERN`
2618
- - `doing changes --lookup` accepts `"< 2.1 > 2.0"`, `"2.1.10-2.2"`, a specific version, or a version number with wildcards
2619
- - When registering hooks, you can pass an array to register a block for multiple events, assuming the events provide the same block arguments (like post_entry_added and post_entry_updated)
2620
-
2621
- #### FIXED
2622
-
2623
- - Running `--tag "@doing"` wouldn't work where `--tag "doing"` would. Now properly ignoring @ symbols
2624
-
2625
- ### 2.1.22
2626
-
2627
- 2022-01-21 14:53
2628
-
2629
- ### 2.1.21
2630
-
2631
- 2022-01-20 12:05
2632
-
2633
- #### FIXED
2634
-
2635
- - Custom types not available to custom commands
2636
-
2637
- ### 2.1.20
2638
-
2639
- 2022-01-20 11:49
2640
-
2641
- #### NEW
2642
-
2643
- - Autotag option for interactive `doing select` menu
2644
- - (Breaking change) Made the later command an optional plugin, see wiki for how to install (and create) custom commands
2645
- - Config setting doing_file_sort (asc or desc) determines the sort order of entries in the actual Doing file. Has no effect on other operations, just allows you to store the file with newest entries at top (desc) or bottom (asc).
2646
-
2647
- #### IMPROVED
2648
-
2649
- - Autotag improvements
2650
- - If doing is run without a command but with arguments, execute it as if you'd run `doing now`, passing the arguments to that. So you can just write "doing this thing" instead of "doing now this thing", as long as the first word of the arguments is not a recognized command.
2651
-
2652
- #### FIXED
2653
-
2654
- - `doing again` should only mark the original repeating entry @done, not search for the last unfinished entry
2655
- - Error when using `doing finish --auto`
2656
- - `doing on wed` when today is wednesday not returning results
2657
- - Using `config set` with a false value deleted the key from config
2658
- - `config set` with true or false value was inserting a quoted string
2659
- - Entries were not being sorted (at all) within sections when writing the Doing file
2660
-
2661
- ### 2.1.19
2662
-
2663
- 2022-01-18 08:40
2664
-
2665
- #### FIXED
2666
-
2667
- - Search highlighting error with some pattern searches
2668
- - Reverse sort of items in menu from `--interactive` flags
2669
- - Nil error when `--interactive` was called without search results
2670
-
2671
- ### 2.1.18
2672
-
2673
- Build automation test
2674
-
2675
- ### 2.1.17
2676
-
2677
- 2022-01-18 07:26
2678
-
2679
- #### NEW
2680
-
2681
- - `--hilite` option for `doing search` to highlight matches in search results (terminal output only)
2682
- - `--hilite` flag for `show` and `view` to highlight results when used with `--search`
2683
-
2684
- #### IMPROVED
2685
-
2686
- - Show preview of up to 5 items when confirming a delete operation so you actually know what you're deleting
2687
- - Allow `--ask` when creating new entry via STDIN pipe
2688
- - Tab completion for known tags when creating an entry interactively
2689
- - Add purple as an alias for magenta in template colors
2690
-
2691
- #### FIXED
2692
-
2693
- - Clear STDIN before requesting input
2694
-
2695
- ### 2.1.16
2696
-
2697
- 2022-01-18 02:45
2698
-
2699
- #### NEW
2700
-
2701
- - `doing done --from "3pm to 3:15pm"` to set start and end times with natural language string
2702
-
2703
- #### IMPROVED
2704
-
2705
- - Running `doing tag` without arguments takes command line input
2706
- - If `doing now` or `doing later` are run without arguments, interactively request necessary information (you can still use `--editor` to edit in your preferred editor)
2707
- - Tab completion for tags when entering at prompt
2708
- - Use readline when requesting input text, better editing features
2709
- - `doing done --at` no longer overrides `--back`
2710
-
2711
- #### FIXED
2712
-
2713
- - `doing select` -> output formatted empty output
2714
- - Sort items by date when using `doing select --editor` (was loading in selection order instead)
2715
- - Ruby 2.7 error in template output (.empty? on FalseClass)
2716
- - Don't add empty entry when cancelling `--editor`
2717
- - Batch editing bugs
2718
-
2719
- ### 2.1.15
2720
-
2721
- 2022-01-17 07:25
2722
-
2723
- #### NEW
2724
-
2725
- - When completing an entry, if the elapsed time would be greater than a (configurable) amount, doing will now ask for confirmation and allow you to enter a new duration before setting the @done date
2726
-
2727
- #### IMPROVED
2728
-
2729
- - When entering intervals, you can now use 1h30m in addition to 1.5h or 90m
2730
- - Date expansion works in more circumstances
2731
- - You can include date tags with natural language values when adding tags via `doing select`
2732
-
2733
- #### FIXED
2734
-
2735
- - Tags containing values with spaces no longer cause errors
2736
-
2737
- ### 2.1.14
2738
-
2739
- #### NEW
2740
-
2741
- - All commands that accept `--note` now accept `--ask`, which requests input via readline after creating the note. Multiple lines are allowed, hit return twice to end editing. Works alongside `--note` and `--editor`
2742
-
2743
- #### IMPROVED
2744
-
2745
- - Implement `--search` and `--from` filtering for import plugins
2746
- - UTC format date strings in select menus for consistency (was relative date formatting)
2747
- - Don't populate the fzf search with `--search`, it's already filtered. Separated `--query` from `--search` if you do want to populate the query string in addition to `--search` filtering
2748
- - When showing relative dates, don't include the year if the date is the previous year but a later month than the current month (less than a year old)
2749
- - When using `--editor` while adding an entry, include any note specified on the command line or via `--ask` for further editing
2750
-
2751
- ### 2.1.13
2752
-
2753
- #### NEW
2754
-
2755
- - `--val` flag for all display commands, allows tag value queries. Tag values are contained in parenthesis after the tag, e.g. @progress(50). Queries look like `--val "done < two weeks ago"`, "project *= oracle" or "progress >= 50". Wildcards allowed in value, comparators can be <, >, <=, >=, ==, *= (contains), ^= (begins with), $= (ends with). Numeric and date comparisons are detected automatically. Text comparisons are case insensitive. `--val` can be used multiple times in a command and you can use `--bool` to specify AND, OR, or NOT (default AND)
2756
- - `doing tag` now accepts a `--value` flag to define a value for a single tag, e.g. @tag(value)
2757
-
2758
- #### FIXED
2759
-
2760
- - `doing last --editor` errors
2761
-
2762
- ### 2.1.12
2763
-
2764
- #### NEW
2765
-
2766
- - Tag_dir command creates/updates .doingrc files in the current directory with default_tags values. Then all entries created within that directory (or subdirs) get tagged with that value.
2767
- - Synonym triggers allow `*` and `?` wildcards
2768
- - Add `--delete` flag for `doing last` to delete last entry
2769
- - `--delete` and `--editor` flags for `doing search`, batch edit and delete
2770
- - Example hook to add new entries containing a certain tag to Day One
2771
- - New hooks: pre_entry_add, post_entry_added, post_entry_updated, post_entry_removed, pre_export
2772
-
2773
- #### IMPROVED
2774
-
2775
- - If you need to use a colon in an autotag transform pattern, you can split with double colon, e.g. pattern::replacement
2776
- - Arrays defined in local configurations merge with main config instead of overwriting
2777
-
2778
- #### FIXED
2779
-
2780
- - `doing tags --interactive` wasn't showing menu
2781
-
2782
- ### 2.1.10
2783
-
2784
- #### NEW
2785
-
2786
- - `--age` (oldest|newest) option for view command
2787
-
2788
- ### 2.1.9
2789
-
2790
- #### IMPROVED
2791
-
2792
- - Only attempt to install fzf if it doesn't exist on the system. In case of errors, this means a user can manually install fzf and still be able to access `--interactive` options
2793
-
2794
- #### FIXED
2795
-
2796
- - Rotate command only archiving half of requested items
2797
- - Frozen string error in doing import plugin
2798
-
2799
- ### 2.1.8
2800
-
2801
- #### NEW
2802
-
2803
- - Hidden command `doing commands_accepting` which shows all commands that accept a given option, e.g. `doing commands_accepting search` shows all commands that take a search filter
2804
- - Hidden command `doing changelog` which outputs a paginated, formatted version of the change history.
2805
-
2806
- #### IMPROVED
2807
-
2808
- - The output of `doing template --list` now shows the file type of each template
2809
- - Output templates can now be saved to a default location/filename using `doing template html --save`
2810
-
2811
- #### FIXED
2812
-
2813
- - Error running `doing recent` on certain older ruby versions
2814
-
2815
- ### 2.1.6
2816
-
2817
- #### NEW
2818
-
2819
- - `doing redo` undoes a redo
2820
- - `doing undo -i` offers a list of available versions for selection
2821
- - Multiple undo. Every time a command modifies the doing file, a backup is written. Running `doing undo` repeatedly steps back through history, `doing undo 5` jumps back 5 versions
2822
- - When resetting via `doing select`, prompt for a date string
2823
- - `doing reset` accepts a date string argument to use as start date instead of current time if provided
2824
- - `doing tags` lists tags used in any/all sections, sortable, with or without frequency counts
2825
- - `doing show --menu` offers an interactive menu for selecting section and tag filters
2826
- - All commands that accept a `--tag` filter can now handle wildcards in the tag names. * to match any number of characters, ? to match a single character.
2827
- - New boolean type for tag searches, PATTERN (which is now the default). Combine tags using symbols to create more complex boolean searches, e.g. "doing +coding -work"
2828
- - You can now define `date_tags` in config, an array of tags/patterns that will be recognized when parsing for natural language dates which are converted when saving new entries
2829
- - `--search` strings can contain quoted phrases and use +/- to require or ban terms, e.g. `--search 'doing +coding -writing'
2830
- - Interactive option for redo command
2831
- - Plugins for Day One export
2832
-
2833
- #### IMPROVED
2834
-
2835
- - Better diff output for fzf preview of `doing undo` history
2836
- - Fall back to good ol' sed for colorizing diffs when no good tool is available
2837
- - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
2838
- - Matching algorithm can be configured in settings
2839
- - All template placeholders can now use the "printf" formatting that %title and %note have, allowing for padding, prefixes, etc.
2840
- - Move default locations for doing file and backups to ~/.local/share/doing
2841
- - `doing show --menu` will only offer tags that exist after any tag/search filters have been run
2842
- - `doing show @tag` with `--menu` will first filter by the @tag, then do an OR search for tags selected from the menu
2843
-
2844
- #### FIXED
2845
-
2846
- - `doing reset` without filter not automatically affecting most recent entry
2847
- - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
2848
- - Preserve colors when wrapping text to new lines
2849
- - Tag highlighting errors
2850
- - Template options specified in views were being overriden by options in templates. View config now has precedence, but will fall back to template config for missing keys
2851
-
2852
- #### IMPROVED
2853
-
2854
- - Better diff output for fzf preview of `doing undo` history
2855
- - Fall back to good ol' sed for colorizing diffs when no good tool is available
2856
- - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
2857
-
2858
- #### FIXED
2859
-
2860
- - `doing reset` without filter not automatically affecting most recent entry
2861
- - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
2862
-
2863
- ### 2.1.3
2864
-
2865
- #### NEW
2866
-
2867
- - BREAKING CHANGE: custom classes for Section (hash) and Items (Array). @content is still a regular Hash. Sections have methods :original and :items. This will affect plugins as wwid.content[section][:items] is now wwid[section].items (same for :original)
2868
- - `doing config set -r key.path` will delete a key from any config file, removing empty parent keys
2869
- - `config list` will list detected .doingrc files and the main config file in order of precedence - refactoring
2870
- - When modifying start dates or @done dates via an editor command, natural language strings can be used and will be parsed into doing-formatted dates automatically
2871
- - When editor is invoked, entry titles include start date, which can be modified
2872
- - `--before`, `--after`, and `--from` date filters for select command
2873
- - `--from` flag for `doing today` and `doing yesterday`, filter by time range
2874
- - `--from` flag for `doing search`, filter by date/time range
2875
- - Commands that accept `--before`, `--after`, and `--from` can now filter on time ranges. If the date string given contains only a time (no day or date), it will be interpreted as a time range, meaning the date isn't filtered, but only entries within the time range are shown/processed
2876
- - Add %duration placeholder to template variables
2877
- - Add `interval_format` setting to config (applies to root or any view/template) to set intervals/durations to human (2h 15m) or text (00:02:15)
2878
- - Add `duration` key to config (root or view/template). If set to true, will display durations by default (no need for `--duration`)
2879
- - Most display commands now have a `--duration` flag that will display an elapsed time if the entry is not marked @done
2880
-
2881
- #### IMPROVED
2882
-
2883
- - Config -o raw outputs value as YAML if result is a Hash/mapping, unquoted string if a single value, comma-separated list if it's an Array.
2884
- - Config -o json no longer includes key, only value.
2885
- - System agnostic method for checking available executables (pager, editor)
2886
- - Using `config set` and selecting a local config will no longer write the entire config to the local .doingrc. Instead, a nested path to the particular setting will be added to the config file.
2887
- - Config set will create missing keys. Fuzzy matching will work until the path fails, then path elements after that point will be added as verbatim keys to the specified configuration (with confirmation)
2888
- - Make menus only as tall as needed, so 5 options don't take up the whole screen
2889
- - Better word wrap for long note lines
2890
-
2891
- #### FIXED
2892
-
2893
- - `finish --took 60m` is supposed to backdate the start date if needed to finish at the current time and maintain an elapsed time
2894
- - If an editor was specified for config (or default as fallback) with command line options (e.g. `emacs -nw`), Doing would fail to recognize that the executable was available.
2895
-
2896
- ### 2.0.25
2897
-
2898
- #### NEW
2899
-
2900
- - `doing config set` to set single config values from command line
2901
- - BREAKING CHANGE: Moves ~/.doingrc to ~/.config/doing/config.yml
2902
- - BREAKING CHANGE: convert config flags to subcommands, e.g. `doing config --udpate` => `doing config update`, and `doing config --dump` => `doing config dump`
2903
-
2904
- ### 2.0.24
2905
-
2906
- - include fzf source directly, in case git isn't installed
2907
- - fall back to installing fzf with sudo on error
2908
-
2909
- ### 2.0.20
2910
-
2911
- #### IMPROVED
2912
-
2913
- - completion script generator refactor and progress bars
2914
-
2915
- #### FIXED
2916
-
2917
- - compile fzf for current operating system
2918
-
2919
- ### 2.0.19
2920
-
2921
- #### FIXED
2922
-
2923
- - Remove any coloring before writing to doing file
2924
-
2925
- ### 2.0.18
2926
-
2927
- #### FIXED
2928
-
2929
- - Escape codes being included in doing file
2930
-
2931
- ### 2.0.17
2932
-
2933
- #### IMPROVED
2934
-
2935
- - Improvements to %title formatting and wrapping
2936
-
2937
- ### 2.0.16
2938
-
2939
- - Test release to validate git flow automation
2940
-
2941
- ### 2.0.13
2942
-
2943
- #### FIXED
2944
-
2945
- - Remove amatch gem dependency due to compatibility issues with Windows systems (also removes `--fuzzy` option from all search commands)
2946
-
2947
- ### 2.0.11
2948
-
2949
- #### NEW
2950
-
2951
- - Append `/r` to tag transforms to replace original tag
2952
-
2953
- #### FIXED
2954
-
2955
- - Autotag tag transform fixes
2956
-
2957
- ### 2.0.10
2958
-
2959
- #### NEW
2960
-
2961
- - Add 'timer_format' config with 'human' option for tag totals
2962
- - If `doing view` and `doing show` are confused, offer option to run the other command
2963
- - `doing completion` to generate shell completion scripts for zsh, bash, and fish
2964
- - `--search` and `--not` for cancel command
2965
- - `--case` flag for commands with `--search`. Can be (c)ase-sensitive, (i)nsensitive, or (s)mart (default smart, case insensitive unless search string contains uppercase letters)
2966
- - Add `--exact` flag to all commands with `--search` flag to force exact matching without requiring single quote prefix
2967
- - Add `--not` flag to all commands with filters (`--tag`, `--search`, `--before`, etc.) to negate the filter and return entries NOT matched
2968
-
2969
- #### IMPROVED
2970
-
2971
- - More command line feedback
2972
- - Error formatting and output
2973
- - Add subcommand completion for `doing help` in fish shell
2974
- - Logging and error handling
2975
-
2976
- #### FIXED
2977
-
2978
- - Zsh completion not outputting results
2979
- - Remove `--[no]` from non-negatable options
2980
- - `doing plugins -t export -c` not outputting columns
2981
- - View config not respecting tag_order setting
2982
-
2983
- ### 2.0.3.pre
2984
-
2985
- #### NEW
2986
-
2987
- - Import calendar events from Calendar.app on macOS
2988
- - `doing config --update` will add newly added config keys to your existing config file (handy with plugins that define their own config keys)
2989
- - Add %idnote template placeholder for "indented note" (entire note indented one tab)
2990
- - (loosely printf-esque) formatting options for `%note` template placeholder
2991
- - `--interactive` mode to act on results of `doing grep`
2992
- - Printf formatting for title and date
2993
- - Doing import plugin
2994
- - Plugins command to list plugins
2995
- - `--dump` option for `doing config` to output a key.path config key as JSON, YAML, or raw output
2996
- - `--no-color` global flag
2997
- - Log levels, with `--quiet` and `--verbose` global flags
2998
- - Convert CLI messaging to Logger-based system
2999
- - Use DOING_DEBUG, DOING_QUIET, or DOING_LOG_LEVEL environment variables to specify log levels before configuration is read
3000
- - Hooks, register plugins to run based on events
3001
- - --[no-]pager and paginate: config option to enable paging output
3002
- - Never_finish and never_time config options to prevent items matching tags/sections from ever receiving @done (never_finish) or @done timestamp (never_time) - More configuration refactoring
3003
-
3004
- #### IMPROVED
3005
-
3006
- - Timeline output formatting
3007
- - Major plugin architecture refactoring
3008
- - Fix regression where notes stored in doing file were outdented, breaking TaskPaper compatibility
3009
- - When accepting a date filter, allow end date to be in the future
3010
- - If an edited item has no changes, don't update/output notification - Don't start with query when using grep `--interactive`
3011
- - Select menu item formatting
3012
- - Output wrapping for terminal display
3013
- - Redirect warn to STDOUT when run with `--stdout`
3014
- - Fish autocomplete
3015
- - `--config_file` global flag deprected, now uses $DOING_CONFIG environment variable so that config overrides can be available before the initial configuration is run
3016
- - When `--stdout` or not a TTY, no color or output formatting
3017
- - Highlight tags when showing results. Because it looks nice.
3018
- - `--tag` and `--search` for `doing note`
3019
- - View/section fuzzy guessing
3020
- - Error reporting
3021
- - If `doing config` finds local doingrc files, offers a menu for editing
3022
- - More filtering options for `doing finish`
3023
- - Doing done accepts `--unfinished` flag to finish last entry not marked @done (instead of last entry)
3024
- - Doing done accepts `--note` flag to append a note when completing an entry
3025
-
3026
- #### FIXED
3027
-
3028
- - Multi-word unquoted arguments to add_section being truncated
3029
- - Show `--from` with date span
3030
- - Handling of arbitrary times in natural language dates
3031
- - Backward scope of since command with arbitrary times
3032
- - `doing rotate --keep` wasn't respecting keep value
3033
-
3034
- ### 1.0.93
3035
-
3036
- #### FIXED
3037
-
3038
- - Gemfile error
3039
-
3040
- ### 1.0.91
3041
-
3042
- #### NEW
3043
-
3044
- - "taskpaper" format available for all output options
3045
- - "markdown" format available for all output commands (GFM-style task list, customizable template)
3046
- - `--rename` option for tag command to replace tags
3047
- - `--regex` option for tag command, for `--remove` and `--rename`
3048
-
3049
- ### 1.0.90
3050
-
3051
- #### IMPROVED
3052
-
3053
- - doing finish `--auto` now pulls from all sections, not just the section of the target entry
3054
-
3055
- #### FIXED
3056
-
3057
- - Minor fix for shell command in doing select
3058
- - Fix for doing finish `--auto` when matched item is last in list
3059
-
3060
- ### 1.0.89
3061
-
3062
- #### NEW
3063
-
3064
- - Pretty print JSON output
3065
- - `--no-menu` option for select command to use `--query` as a filter and act on matching entries without displaying menu
3066
-
3067
- ### 1.0.88
3068
-
3069
- #### IMPROVED
3070
-
3071
- - Add `--before` and `--after` time search to yesterday command
3072
- - Add `--before` and `--after` date search to search/grep command
3073
- - Add `--tag_order` to yesterday command
3074
-
3075
- ### 1.0.87
3076
-
3077
- #### IMPROVED
3078
-
3079
- - Add leading spaces to make %shortdate align properly, at least for the last week
3080
- - Add `--tag`, `--bool`, and `--search` to view command
3081
- - Add `--before` and `--after` date search to view command
3082
- - Add `--before` and `--after` date search to show command
3083
- - Add `--before` and `--after` time search to today command
3084
- - Add `--search` filter to show command
3085
- - More alignment/formatting fixes for %shortdate
3086
-
3087
- ### 1.0.86
3088
-
3089
- #### IMPROVED
3090
-
3091
- - Add `count` config option for templates->recent
3092
-
3093
- ### 1.0.85
3094
-
3095
- #### IMPROVED
3096
-
3097
- - Add `--before` DATE_STRING to archive and rotate commands
3098
- - Only create on rotate file per day, merge new entries into existing file
3099
-
3100
- #### FIXED
3101
-
3102
- - Fix `--auto` for finish command
3103
-
3104
- ### 1.0.84
3105
-
3106
- #### NEW
3107
-
3108
- - `rotate` command for archiving entries to new file
3109
-
3110
- #### FIXED
3111
-
3112
- - Fixed current_section config key not being honored in some commands
3113
-
3114
- ### 1.0.83
3115
-
3116
- #### FIXED
3117
-
3118
- - Fixes for `doing view` options, additional config keys for views
3119
-
3120
- ### 1.0.82
3121
-
3122
- #### FIXED
3123
-
3124
- - Bugfixes
3125
-
3126
- ### 1.0.81
3127
-
3128
- #### IMPROVED
3129
-
3130
- - fzf menu improvements
3131
- - allow multiple selections `doing select` action menu
3132
-
3133
- ### 1.0.80
3134
-
3135
- #### IMPROVED
3136
-
3137
- - Convert all menus to fzf screens
3138
-
3139
- ### 1.0.79
3140
-
3141
- #### IMPROVED
3142
-
3143
- - Wildcard tag removal using `doing select -t "tag*" -r`
3144
- - fzf menu display polish
3145
-
3146
- #### FIXED
3147
-
3148
- #### FIXED
3149
-
3150
- - Gem missing fzf
3151
-
3152
- ### 1.0.78
3153
-
3154
- #### IMPROVED
3155
-
3156
- - If no action is specified with select command, an interactive menu is
3157
- presented
3158
- - add output action select command with formatting and save options
3159
- - Don't link URLs in html output that don't have a protocol
3160
-
3161
- ### 1.0.76
3162
-
3163
- #### IMPROVED
3164
-
3165
- - Refine editing multiple selections (doing select)
3166
-
3167
- ### 1.0.74
3168
-
3169
- #### NEW
3170
-
3171
- - Add `--tag` and `--search` flags to tag command to tag all entries matching search terms
3172
- - Add since command, which is the same as `doing on tuesday to now` but `doing since tuesday` just feels more intuitive.
3173
-
3174
- ### 1.0.73
3175
-
3176
- #### FIXED
3177
-
3178
- - Fix for timeline output
3179
-
3180
- ### 1.0.72
3181
-
3182
- #### NEW
3183
-
3184
- - Add `doing select` to show menu of all tasks, searchable with fuzzy matching and the ability to perform certain tasks on multiple selections.
3185
-
3186
- ### 1.0.71
3187
-
3188
- #### FIXED
3189
-
3190
- - Fix for template command not working at all
3191
-
3192
- ### 1.0.70
3193
-
3194
- #### FIXED
3195
-
3196
- - Fix for `doing done --took 30m` setting the wrong @done timestamp when completing previous item
3197
-
3198
- ### 1.0.69
3199
-
3200
- #### IMPROVED
3201
-
3202
- - Add `--unfinished` option to finish and cancel commands
3203
-
3204
- ### 1.0.68
3205
-
3206
- #### FIXED
3207
-
3208
- - Fix error in `doing show --sort` argument parsing
3209
-
3210
- ### 1.0.67
3211
-
3212
- #### FIXED
3213
-
3214
- - Gem packaging error
3215
-
3216
- ### 1.0.66
3217
-
3218
- #### IMPROVED
3219
-
3220
- - More flexible boolean specification, can be: all, and, any, or, not, or none
3221
-
3222
- #### FIXED
3223
-
3224
- - Fix for some long flags being interpreted as arrays instead of strings
3225
- - Fix for archive command not removing original entries from archived section
3226
-
3227
- ### 1.0.65
3228
-
3229
- #### IMPROVED
3230
-
3231
- - Prevent duplicates/overlapping entries when importing
3232
-
3233
- ### 1.0.64
3234
-
3235
- #### NEW
3236
-
3237
- - Initial import feature for Timing.app reports
3238
-
3239
- ### 1.0.63
3240
-
3241
- #### IMPROVED
3242
-
3243
- - If `doing done --took=X` results in completion date greater than current time, use current time as completion date and backdate the entry's timestamp to fit
3244
-
3245
- ### 1.0.62
3246
-
3247
- #### FIXED
3248
-
3249
- - `doing done` with `--took=` and without `--back=` should set end time to start date plus `--took` value
3250
-
3251
- ### 1.0.61
3252
-
3253
- #### IMPROVED
3254
-
3255
- - Add `--search` filter to `doing archive`
3256
-
3257
- ### 1.0.60
3258
-
3259
- #### FIXED
3260
-
3261
- - Default value for `doing again --bool` was ALL, should be AND
3262
-
3263
- ### 1.0.59
3264
-
3265
- #### IMPROVED
3266
-
3267
- - Improvements to `doing again --tag=` functionality
3268
-
3269
- ### 1.0.58
3270
-
3271
- #### IMPROVED
3272
-
3273
- - Finish previous task if `doing again` and not already completed
3274
-
3275
- ### 1.0.57
3276
-
3277
- #### IMPROVED
3278
-
3279
- - Unit tests
3280
-
3281
- ### 1.0.56
3282
-
3283
- #### IMPROVED
3284
-
3285
- - Tag command tests
3286
-
3287
- #### FIXED
3288
-
3289
- - Doing not reading per-directory .doingrc configs
3290
-
3291
- ### 1.0.55
3292
-
3293
- #### NEW
3294
-
3295
- - Added config_editor_app setting to config so you can have
3296
- - A parenthetical at the end of an entry title becomes an attached
3297
- - `--editor` flag for `doing last` to edit last entry
3298
- - `--tag=` flag to filter `doing last` by tag
3299
- - `--search=` to filter `doing last` by text/regex search
3300
- - `--search=` for `doing finish`, finish last X entries matching search
3301
- - Add `tags_color` as a primary config key to highlight @tags in displayed entries
3302
-
3303
- #### IMPROVED
3304
-
3305
- - Clean up command line help
3306
- - `--editor` improvements for all commands that use it
3307
-
3308
- #### FIXED
3309
-
3310
- - Doing finish `--took` throwing error
3311
- - Doing tag `--remove` was adding tags if they didn't exist
3312
- - Creating a meanwhile task with a note resulted in an error
3313
-
3314
- ### 1.0.54
3315
-
3316
- #### FIXED
3317
-
3318
- - Bugfix for `finish --tag=TAG`
3319
-
3320
- ### 1.0.53
3321
-
3322
- #### NEW
3323
-
3324
- - `--tag` and `--bool` filtering for again/resume, cancel
3325
- - `--in` flag for `again`/`resume` to specify to which section the new
3326
- - Finish command accepts `--tag=` flag, finishing last entry
3327
- - `doing cancel` to end X tasks without completion date
3328
-
3329
- #### IMPROVED
3330
-
3331
- - Add `--no-color` option to view command
3332
- - Add `--tag` to show for compatibility
3333
-
3334
- #### FIXED
3335
-
3336
- - Error running finish without `--tag` flag
3337
- - `--archive` flag on finish, done, and cancel causing error
3338
-
3339
- ### 1.0.52
3340
-
3341
- #### NEW
3342
-
3343
- - Finish command accepts `--tag=` flag, finishing last entry
3344
-
3345
- #### FIXED
3346
-
3347
- - `--archive` flag on finish, done, and cancel causing error
3348
-
3349
- ### 1.0.49
3350
-
3351
- #### FIXED
3352
-
3353
- - Fix for missing date on @done tags
3354
-
3355
- ### 1.0.48
3356
-
3357
- #### FIXED
3358
-
3359
- - Fix confirmation dialog for `doing tag -a -c 0` (autotag all)
3360
-
3361
- ### 1.0.47
3362
-
3363
- #### IMPROVED
3364
-
3365
- - Remove check for file existence before attempting to run run_after script
3366
- - Don't autotag entries restarted with `again/resume`
3367
- - Add short flags (`-b`) for `--back` on all commands that support it
3368
-
3369
- ### 1.0.46
3370
-
3371
- #### IMPROVED
3372
-
3373
- - Code cleanup
3374
-
3375
- ### 1.0.45
3376
-
3377
- #### IMPROVED
3378
-
3379
- - Only execute run_after script if changes are written
3380
-
3381
- ### 1.0.44
3382
-
3383
- #### IMPROVED
3384
-
3385
- - Remove unnecessary console logging
3386
-
3387
- ### 1.0.43
3388
-
3389
- #### NEW
3390
-
3391
- - Add `again` command to repeat last entry without @done tag
3392
- - Add `run_after` configuration option to execute external script after any change
3393
-
3394
- ### 1.0.42
3395
-
3396
- #### FIXED
3397
-
3398
- - Fix note indentation in doing file
3399
-
3400
- ### 1.0.41
3401
-
3402
- #### FIXED
3403
-
3404
- - Fix for repeated backreferences in tag transform
3405
-
3406
- ### 1.0.40
3407
-
3408
- #### IMPROVED
3409
-
3410
- - Add `--tag_sort` to all subcommands with `--totals` option
3411
-
3412
- ### 1.0.39
3413
-
3414
- #### NEW
3415
-
3416
- - Tag transforms
3417
- - Option to sort tags by name in `--totals`
3418
-
3419
- ### 1.0.33
3420
-
3421
- #### FIXED
3422
-
3423
- - Gem dependency updates
3424
-
3425
- ### 1.0.30
3426
-
3427
- #### FIXED
3428
-
3429
- - Fix for array comparison error
3430
-
3431
- ### 1.0.29
3432
-
3433
- #### FIXED
3434
-
3435
- - Bugfixes
3436
-
3437
- ### 1.0.28
3438
-
3439
- #### IMPROVED
3440
-
3441
- - Global option `-x` to skip autotags and default_tags from global/local .doingrc
3442
- - Remove extra spaces when creating entry
3443
-
3444
- ### 1.0.27
3445
-
3446
- #### IMPROVED
3447
-
3448
- - More graceful writing of default config (~/.doingrc) on first run
3449
- - Repaired testing setup. Needs moar tests.
3450
-
3451
- ### 1.0.26
3452
-
3453
- #### IMPROVED
3454
-
3455
- - Add `--at` flag for `doing done`, e.g. `doing done --at=1:35pm --took=15m A new task I already finished`
3456
- - Allow decimal quantities when using natural language for hours or days, e.g. `--took=2.5h`
3457
- - Add `did` as a synonym for `done` subcommand
3458
-
3459
- ### 1.0.25
3460
-
3461
- #### IMPROVED
3462
-
3463
- #### IMPROVED
3464
-
3465
- - Smarter method of getting user $HOME
3466
- - Improved avoiding duplicate tags when autotagging
3467
- - Improved autotag reporting
3468
-
3469
- ### 1.0.24
3470
-
3471
- #### IMPROVED
3472
-
3473
- - `doing note` operates on whatever is most recent, not just the last note in Currently
3474
- - `doing tag` with no count specified operates on most recent entry in any section, not just Currently
3475
- - `doing tag` with a count greater than 1 requires a section to be specified
3476
- - Improved results reporting for `doing tag`
3477
- - When removing tag do a whole-word match to avoid removing part of a longer tag
3478
-
3479
- ### 1.0.23
3480
-
3481
- #### IMPROVED
3482
-
3483
- - Apply default_tags after autotagging to avoid tags triggering tags
3484
- - Set `doing recent` to default to All sections instead of Currently
3485
- - Fix error in time reporting
3486
- - improved y/n prompt for TTY
3487
-
3488
- ### 1.0.22
3489
-
3490
- #### IMPROVED
3491
-
3492
- - Allow cascading of local config files
3493
- - Allow `doing today` and `yesterday` to specify a section
3494
-
3495
- #### FIXED
3496
-
3497
- - Fix handling of "local" config files, allowing per-project configurations
3498
-
3499
- ### 1.0.21
3500
-
3501
- #### NEW
3502
-
3503
- - Add legitimate regex search capabilities
3504
- - Synonyms for grep (search) and now (next)
3505
-
3506
- #### FIXED
3507
-
3508
- - CSS fix
3509
-
3510
- ### 1.0.20
3511
-
3512
- #### NEW
3513
-
3514
- - New command `doing templates` to export default templates for HAML and CSS
3515
- - New config options under `html_template` for `haml` and `css`
3516
-
3517
- #### IMPROVED
3518
-
3519
- - Rewrite HTML export templates with responsive layout and typography
3520
- - Ability to customize the HTML output using HAML and CSS
3521
-
3522
- ### 1.0.19
3523
-
3524
- #### IMPROVED
3525
-
3526
- - For `doing note -e` include the entry title so you know what you're adding a note to
3527
- - For any other command that allows `-e` include a comment noting that anything after the first line creates a note
3528
- - Ignore # comments when parsing editor results
3529
- - Add a .md extension to the temp file passed to the editor so you can take advantage of any syntax highlighting and other features in your editor
3530
-
3531
- ### 1.0.18
3532
-
3533
- #### IMPROVED
3534
-
3535
- - Loosened up the template color resetting a bit more
3536
-
3537
- #### FIXED
3538
-
3539
- - Fix `undefined method [] for nil class` error in `doing view`
3540
-
3541
- ### 1.0.17
3542
-
3543
- #### NEW
3544
-
3545
- - Add `--stdout` global option to send reporting to STDOUT instead of STDERR (for use with LaunchBar et al)
3546
-
3547
- ### 1.0.16
3548
-
3549
- #### FIXED
3550
-
3551
- - Fixes overzealous color resetting
3552
-
3553
- ### 1.0.15
3554
-
3555
- #### FIXED
3556
-
3557
- - CLI/text totals block was outputting when HTML output was selected
3558
- - Have all template colors reset bold and background automatically when called
3559
-
3560
- ### 1.0.14
3561
-
3562
- #### IMPROVED
3563
-
3564
- - Fish completion
3565
- - views and sections subcommands have -c option to output single column
3566
- - Fix html title when tag_bool is NONE
3567
- - Fix @from tagging missing closing paren
3568
- - Fix tag coloring
3569
-
3570
- ### 1.0.13
3571
-
3572
- #### FIXED
3573
-
3574
- - Fix gsub error in doing meanwhile
3575
-
3576
- ### 1.0.8pre
3577
-
3578
- #### NEW
3579
-
3580
- - added doing on command
3581
- - Added autotagging to tag command
3582
- - JSON output option to view commands
3583
- - date filtering, improved date language
3584
- - let view templates define output format (csv, json, html, template)
3585
-
3586
- #### IMPROVED
3587
-
3588
- - add `%chompnote` template variable (item note with newlines and extra whitespace stripped)
3589
-
3590
- ### 1.0.7pre
3591
-
3592
- #### IMPROVED
3593
-
3594
- - Slightly fuzzier searching in the grep command
3595
- - cleaner exits, `only_timed` key for view configs
3596
- - making the note command append new notes better, and load existing notes in the editor if `-e` is called
3597
- - handle multiple tag input in `show` tag filter
3598
- - Global tag operations, better reporting
3599
-
3600
- #### FIXED
3601
-
3602
- - fix for `-v` option
3603
-
3604
- ### 1.0.4pre
3605
-
3606
- #### IMPROVED
3607
-
3608
- - Improved HTML output
3609
- - `--only_timed` option for view/show commands that only outputs items with elapsed timers (interval between start and done dates)
3610
- - add seconds for timed items in CSV output, run `--only_timed` before chopping off `--count #`
3611
- - fix for 1.8.7 `Dir.home` issue
3612
- - version bump
3613
- - don't show tag totals with zero times
3614
- - zsh completion for doing
3615
- - HTML styling
3616
- - `--only_timed` option
3617
- - added zsh completion file to `README.md`
3618
- - add zsh completion file
3619
-
3620
- ### 1.0.3pre
3621
-
3622
- #### IMPROVED
3623
-
3624
- - `done` command: making `--took` modify start time if `--back` isn't specified
3625
- - Cleaned up time totals, improved HTML output
3626
- - fixes for `--back` and `--took` parsing
3627
- - Adding more complete terminal reporting to archive command
3628
-
3629
- ### 1.0.0pre
3630
-
3631
- #### IMPROVED
3632
-
3633
- - Skipped ahead in the version numbering. Because I don't care.
3634
- - Added a `note` command and `--note` flags for entry creation commands
3635
-
3636
- ### 0.2.6pre
3637
-
3638
- #### IMPROVED
3639
-
3640
- - `--totals`, `--[no-]times`, `--output [csv,html]` options for `yesterday` command.
3641
- - Add tests for Darwin to hide OS X-only features on other systems
3642
- - `-f` flag to `now` command for finishing last task when starting a new one (Looks back for the last unfinished task in the list)
3643
- - `--took` option for `done` and `finish` for specifying intervals from the start date for the completion date
3644
- - Basic command line reporting
3645
- - `--auto` flag for `finish` and `done` that will automatically set the completion time to 1 minute before the next start time in the list. You can use it retroactively to add times to sequential todos.
3646
- - `doing grep` for searching by text or regex
3647
-
3648
- ### 0.2.5
3649
-
3650
- #### IMPROVED
3651
-
3652
- - Default to showing times #26, show totals even if no tags exist #27, fix indentation #29
3653
- - Add section label to archived tasks automatically, excepting `Currently` section
3654
- - Today outputs and backdate for finish
3655
- - HTML styling and fix for 1.8.7 HAML errors
3656
- - Look, HTML output! (`--output html`)
3657
- - Also, `--output csv`
3658
- - let doing `archive` function on all sections
3659
- - option to exclude date from _@done_,
3660
- - output newlines in sections and views
3661
- - Flagging (`doing mark`)
3662
- - fix for view/section guess error
3663
- - Adding tag filtering to archive command (`doing archive \@done`)
3664
- - `doing yesterday`
3665
- - `doing done -r` to remove last doing tag (optionally from `-s Section`)
3666
- - Add `-f` flag to specify alternate doing file
3667
- - `meanwhile` command
3668
-
3669
- ### 0.2.1
3670
-
3671
- #### IMPROVED
3672
-
3673
- - CSV output for show command (`--csv`)
3674
- - HTML output for show command (`--output html`)
3675
- - fuzzy searching for all commands that specify a view.
3676
- - In the terminal, you'll see "Assume you meant XXX" to show what match it found, but this is output to STDERR (and won't show up if you're redirecting the output or using it in GeekTool, etc.)
3677
- - `tags_color` in view config to highlight tags at the end of the lines. Can be set to any of the `%colors`.
3678
- - Basic time tracking.
3679
- - `-t` on `show` and `view` will turn on time calculations
3680
- - Intervals between timestamps and dated _@done_ tags are calculated for each line, if the tag exists.
3681
- - You must include a `%interval` token in the appropriate template for it to show
3682
- - _@start(date)_ tags can optionally be used to override the timestamp in the calculation
3683
- - Any other tags in the line have that line's total added to them
3684
- - Totals for tags can be displayed at the end of output with `--totals`
3685
-
3686
-
3687
- ### 0.2.0
3688
-
3689
- #### IMPROVED
3690
-
3691
- - `doing done` without argument tags last entry done
3692
- - `-a` archives them
3693
- - `doing finish` or `doing finish X` marks last X entries done
3694
- - `-a` archives them
3695
- - `doing tag tag1 [tag2]` tags last entry or `-c X` entries
3696
- - `doing tag -r tag1 [tag2]` removes said tag(s)
3697
- - custom views additions
3698
- - custom views can include `tags` and `tags_bool`
3699
- - `tags` is a space-separated list of tags to filter the results by
3700
- - `tags_bool` defines `AND` (all tags must exist), `OR` (any tag exists), or `NONE` (none of the tags exist)
3701
- - `order` key (`asc` or `desc`) defines output sort order by date
3702
- - section key can be set to `All` to combine sections
3703
- - `doing show` updates
3704
- - accepts `all` as a section
3705
- - arguments following section name are tags to filter by
3706
- - `-b` sets boolean (`AND`, `OR`, `NONE`) or (`ALL`, `ANY`, `NONE`) (default `OR`/`ANY`)
3707
- - use `-c X` to limit results
3708
- - use `-s` to set sort order (`asc` or `desc`)
3709
- - use `-a` to set age (`newest` or `oldest`)
3710
- - fuzzy section guessing when specified section isn't found
3711
- - fuzzy view guessing for `doing view` command
3712
-
3713
- ### 0.1.9
3714
-
3715
- #### IMPROVED
3716
-
3717
- - colors in templated output
3718
- - `open` command
3719
- - opens in the default app for file type
3720
- - `-a APPNAME` (`doing open -a TaskPaper`)
3721
- - `-b bundle_id` (`doing open -b com.sublimetext.3`)
3722
- - `-e` switch for `now`, `later` and `done` commands
3723
- - save a tmp file and open it in an editor
3724
- - allows multi-line entries, anything after first line is considered a note
3725
- - assumed when no input is provided (`doing now`)
3726
- - `doing views` shows all available custom views
3727
- - `doing view` without a view name will let you choose a view from a menu
3728
- - `doing archive` fixed so that `-k X` works to keep `X` number of entries in the section
3729
-
3730
- ### 0.1.7
3731
-
3732
- #### IMPROVED
3733
-
3734
- - colors in templated output
3735
- - `open` command
3736
- - opens in the default app for file type
3737
- - `-a APPNAME` (`doing open -a TaskPaper`)
3738
- - `-b bundle_id` (`doing open -b com.sublimetext.3`)
3739
- - `-e` switch for `now`, `later`, and `done` commands
3740
- - save a tmp file and open it in an editor
3741
- - allows multi-line entries, anything after first line is considered a note
3742
- - assumed when no input is provided (`doing now`)
3743
-
3744
- doing### 2.1.30
3745
-
3746
- 2022-02-16 07:18
3747
-
3748
- #### IMPROVED
3749
-
3750
- - `doing changes` does a better job of parsing a lookup string like '>= 2.1.10 < 2.1.15'
3751
-
3752
- #### FIXED
3753
-
3754
- - System agnostic platform detection, so commands that check for Darwin won't error out on other systems
3755
- - `doing completions` debugging code
3756
-
3757
- ### 2.1.29
3758
-
3759
- 2022-02-14 12:42
3760
-
3761
- #### IMPROVED
3762
-
3763
- - `doing changes --interactive` will load up a changelog viewer using fzf. Because it makes me happy, that's why.
3764
-
3765
- ### 2.1.28
3766
-
3767
- 2022-02-14 11:39
3768
-
3769
- #### FIXED
3770
-
3771
- - Lines merging in `doing changes --changes` output
3772
-
3773
- ### 2.1.27
3774
-
3775
- 2022-02-14 06:04
3776
-
3777
- #### NEW
3778
-
3779
- - `doing finish --update` will overwrite any existing @done tag with a new date (current time or set with `--at` or `--back`)
3780
-
3781
- #### IMPROVED
3782
-
3783
- - Code refactoring and cleanup
3784
- - Include release dates in `doing changes` output when available
3785
- - Allow various naming conventions for %color strings in templates. Now `boldwhite`, `brightwhite`, `bg_bold_cyan`, and `bold_bg_cyan` all work (for example)
3786
- - Common flags (e.g. --search, --tag) found on multiple commands consolidated and help descriptions matched
3787
- - `commands_accepting` now accepts multiple arguments and a `--bool` flag
3788
- - `changes` command can now output changes only (no version numbers) and defaults to raw Markdown if not a TTY or the `--md` flag is used
3789
- - `doing archive` now accepts `--after` and `--from` date filters
3790
-
3791
- #### FIXED
3792
-
3793
- - Some flag descriptions in help
3794
- - Editor detection
3795
-
3796
- ### 2.1.26
3797
-
3798
- 2022-01-23 16:14
3799
-
3800
- #### NEW
3801
-
3802
- - Use plugins.hidden_commands in configuration to disable any command (array of command names). Note that some commands use aliases and the first name should be used.
3803
- - `doing commands [add|remove]` allows interactive enabling and disabling of default and custom commands
3804
-
3805
- #### IMPROVED
3806
-
3807
- - Moved all commands into separate files for management
3808
-
3809
- #### FIXED
3810
-
3811
- - Changelog command regex too greedy when parsing changelog
3812
-
3813
- ### 2.1.25
3814
-
3815
- 2022-01-23 09:25
3816
-
3817
- ### 2.1.24
3818
-
3819
- 2022-01-22 17:27
3820
-
3821
- #### IMPROVED
3822
-
3823
- - Minor update to Fish completion script
3824
-
3825
- #### FIXED
3826
-
3827
- - Changelog formatting issue
3828
-
3829
- ### 2.1.23
3830
-
3831
- 2022-01-22 15:52
3832
-
3833
- #### NEW
3834
-
3835
- - All display commands (except view) now accept `--config_template TEMPLATE_KEY` to override that commands default template.
3836
- - Display commands accept `--template`, which takes a template string containing %placeholders and overrides the commands default template output. Affects grep, last, on, recent, show, since, today, yesterday
3837
-
3838
- #### IMPROVED
3839
-
3840
- - With complete examples in the help output for most commands, `doing help` almost always requires scrolling up. It now automatically paginates using your system $PAGER (or best detected option).
3841
- - `doing tags` takes a MAX_COUNT argument to limit results when searching
3842
- - `doing tags --line` flag to output tags in a single line
3843
- - Mostly for my own use, `doing changes` (which views the changelog) now accepts `--lookup VERSION` and `--search SEARCH_PATTERN`
3844
- - `doing changes --lookup` accepts `"< 2.1 > 2.0"`, `"2.1.10-2.2"`, a specific version, or a version number with wildcards
3845
- - When registering hooks, you can pass an array to register a block for multiple events, assuming the events provide the same block arguments (like post_entry_added and post_entry_updated)
3846
-
3847
- #### FIXED
3848
-
3849
- - Running `--tag "@doing"` wouldn't work where `--tag "doing"` would. Now properly ignoring @ symbols
3850
-
3851
- ### 2.1.22
3852
-
3853
- 2022-01-21 14:53
3854
-
3855
- ### 2.1.21
3856
-
3857
- 2022-01-20 12:05
3858
-
3859
- #### FIXED
3860
-
3861
- - Custom types not available to custom commands
3862
-
3863
- ### 2.1.20
3864
-
3865
- 2022-01-20 11:49
3866
-
3867
- #### NEW
3868
-
3869
- - Autotag option for interactive `doing select` menu
3870
- - (Breaking change) Made the later command an optional plugin, see wiki for how to install (and create) custom commands
3871
- - Config setting doing_file_sort (asc or desc) determines the sort order of entries in the actual Doing file. Has no effect on other operations, just allows you to store the file with newest entries at top (desc) or bottom (asc).
3872
-
3873
- #### IMPROVED
3874
-
3875
- - Autotag improvements
3876
- - If doing is run without a command but with arguments, execute it as if you'd run `doing now`, passing the arguments to that. So you can just write "doing this thing" instead of "doing now this thing", as long as the first word of the arguments is not a recognized command.
3877
-
3878
- #### FIXED
3879
-
3880
- - `doing again` should only mark the original repeating entry @done, not search for the last unfinished entry
3881
- - Error when using `doing finish --auto`
3882
- - `doing on wed` when today is wednesday not returning results
3883
- - Using `config set` with a false value deleted the key from config
3884
- - `config set` with true or false value was inserting a quoted string
3885
- - Entries were not being sorted (at all) within sections when writing the Doing file
3886
-
3887
- ### 2.1.19
3888
-
3889
- 2022-01-18 08:40
3890
-
3891
- #### FIXED
3892
-
3893
- - Search highlighting error with some pattern searches
3894
- - Reverse sort of items in menu from `--interactive` flags
3895
- - Nil error when `--interactive` was called without search results
3896
-
3897
- ### 2.1.18
3898
-
3899
- Build automation test
3900
-
3901
- ### 2.1.17
3902
-
3903
- 2022-01-18 07:26
3904
-
3905
- #### NEW
3906
-
3907
- - `--hilite` option for `doing search` to highlight matches in search results (terminal output only)
3908
- - `--hilite` flag for `show` and `view` to highlight results when used with `--search`
3909
-
3910
- #### IMPROVED
3911
-
3912
- - Show preview of up to 5 items when confirming a delete operation so you actually know what you're deleting
3913
- - Allow `--ask` when creating new entry via STDIN pipe
3914
- - Tab completion for known tags when creating an entry interactively
3915
- - Add purple as an alias for magenta in template colors
3916
-
3917
- #### FIXED
3918
-
3919
- - Clear STDIN before requesting input
3920
-
3921
- ### 2.1.16
3922
-
3923
- 2022-01-18 02:45
3924
-
3925
- #### NEW
3926
-
3927
- - `doing done --from "3pm to 3:15pm"` to set start and end times with natural language string
3928
-
3929
- #### IMPROVED
3930
-
3931
- - Running `doing tag` without arguments takes command line input
3932
- - If `doing now` or `doing later` are run without arguments, interactively request necessary information (you can still use `--editor` to edit in your preferred editor)
3933
- - Tab completion for tags when entering at prompt
3934
- - Use readline when requesting input text, better editing features
3935
- - `doing done --at` no longer overrides `--back`
3936
-
3937
- #### FIXED
3938
-
3939
- - `doing select` -> output formatted empty output
3940
- - Sort items by date when using `doing select --editor` (was loading in selection order instead)
3941
- - Ruby 2.7 error in template output (.empty? on FalseClass)
3942
- - Don't add empty entry when cancelling `--editor`
3943
- - Batch editing bugs
3944
-
3945
- ### 2.1.15
3946
-
3947
- 2022-01-17 07:25
3948
-
3949
- #### NEW
3950
-
3951
- - When completing an entry, if the elapsed time would be greater than a (configurable) amount, doing will now ask for confirmation and allow you to enter a new duration before setting the @done date
3952
-
3953
- #### IMPROVED
3954
-
3955
- - When entering intervals, you can now use 1h30m in addition to 1.5h or 90m
3956
- - Date expansion works in more circumstances
3957
- - You can include date tags with natural language values when adding tags via `doing select`
3958
-
3959
- #### FIXED
3960
-
3961
- - Tags containing values with spaces no longer cause errors
3962
-
3963
- ### 2.1.14
3964
-
3965
- #### NEW
3966
-
3967
- - All commands that accept `--note` now accept `--ask`, which requests input via readline after creating the note. Multiple lines are allowed, hit return twice to end editing. Works alongside `--note` and `--editor`
3968
-
3969
- #### IMPROVED
3970
-
3971
- - Implement `--search` and `--from` filtering for import plugins
3972
- - UTC format date strings in select menus for consistency (was relative date formatting)
3973
- - Don't populate the fzf search with `--search`, it's already filtered. Separated `--query` from `--search` if you do want to populate the query string in addition to `--search` filtering
3974
- - When showing relative dates, don't include the year if the date is the previous year but a later month than the current month (less than a year old)
3975
- - When using `--editor` while adding an entry, include any note specified on the command line or via `--ask` for further editing
3976
-
3977
- ### 2.1.13
3978
-
3979
- #### NEW
3980
-
3981
- - `--val` flag for all display commands, allows tag value queries. Tag values are contained in parenthesis after the tag, e.g. @progress(50). Queries look like `--val "done < two weeks ago"`, "project *= oracle" or "progress >= 50". Wildcards allowed in value, comparators can be <, >, <=, >=, ==, *= (contains), ^= (begins with), $= (ends with). Numeric and date comparisons are detected automatically. Text comparisons are case insensitive. `--val` can be used multiple times in a command and you can use `--bool` to specify AND, OR, or NOT (default AND)
3982
- - `doing tag` now accepts a `--value` flag to define a value for a single tag, e.g. @tag(value)
3983
-
3984
- #### FIXED
3985
-
3986
- - `doing last --editor` errors
3987
-
3988
- ### 2.1.12
3989
-
3990
- #### NEW
3991
-
3992
- - Tag_dir command creates/updates .doingrc files in the current directory with default_tags values. Then all entries created within that directory (or subdirs) get tagged with that value.
3993
- - Synonym triggers allow `*` and `?` wildcards
3994
- - Add `--delete` flag for `doing last` to delete last entry
3995
- - `--delete` and `--editor` flags for `doing search`, batch edit and delete
3996
- - Example hook to add new entries containing a certain tag to Day One
3997
- - New hooks: pre_entry_add, post_entry_added, post_entry_updated, post_entry_removed, pre_export
3998
-
3999
- #### IMPROVED
4000
-
4001
- - If you need to use a colon in an autotag transform pattern, you can split with double colon, e.g. pattern::replacement
4002
- - Arrays defined in local configurations merge with main config instead of overwriting
4003
-
4004
- #### FIXED
4005
-
4006
- - `doing tags --interactive` wasn't showing menu
4007
-
4008
- ### 2.1.10
4009
-
4010
- #### NEW
4011
-
4012
- - `--age` (oldest|newest) option for view command
4013
-
4014
- ### 2.1.9
4015
-
4016
- #### IMPROVED
4017
-
4018
- - Only attempt to install fzf if it doesn't exist on the system. In case of errors, this means a user can manually install fzf and still be able to access `--interactive` options
4019
-
4020
- #### FIXED
4021
-
4022
- - Rotate command only archiving half of requested items
4023
- - Frozen string error in doing import plugin
4024
-
4025
- ### 2.1.8
4026
-
4027
- #### NEW
4028
-
4029
- - Hidden command `doing commands_accepting` which shows all commands that accept a given option, e.g. `doing commands_accepting search` shows all commands that take a search filter
4030
- - Hidden command `doing changelog` which outputs a paginated, formatted version of the change history.
4031
-
4032
- #### IMPROVED
4033
-
4034
- - The output of `doing template --list` now shows the file type of each template
4035
- - Output templates can now be saved to a default location/filename using `doing template html --save`
4036
-
4037
- #### FIXED
4038
-
4039
- - Error running `doing recent` on certain older ruby versions
4040
-
4041
- ### 2.1.6
4042
-
4043
- #### NEW
4044
-
4045
- - `doing redo` undoes a redo
4046
- - `doing undo -i` offers a list of available versions for selection
4047
- - Multiple undo. Every time a command modifies the doing file, a backup is written. Running `doing undo` repeatedly steps back through history, `doing undo 5` jumps back 5 versions
4048
- - When resetting via `doing select`, prompt for a date string
4049
- - `doing reset` accepts a date string argument to use as start date instead of current time if provided
4050
- - `doing tags` lists tags used in any/all sections, sortable, with or without frequency counts
4051
- - `doing show --menu` offers an interactive menu for selecting section and tag filters
4052
- - All commands that accept a `--tag` filter can now handle wildcards in the tag names. * to match any number of characters, ? to match a single character.
4053
- - New boolean type for tag searches, PATTERN (which is now the default). Combine tags using symbols to create more complex boolean searches, e.g. "doing +coding -work"
4054
- - You can now define `date_tags` in config, an array of tags/patterns that will be recognized when parsing for natural language dates which are converted when saving new entries
4055
- - `--search` strings can contain quoted phrases and use +/- to require or ban terms, e.g. `--search 'doing +coding -writing'
4056
- - Interactive option for redo command
4057
- - Plugins for Day One export
4058
-
4059
- #### IMPROVED
4060
-
4061
- - Better diff output for fzf preview of `doing undo` history
4062
- - Fall back to good ol' sed for colorizing diffs when no good tool is available
4063
- - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
4064
- - Matching algorithm can be configured in settings
4065
- - All template placeholders can now use the "printf" formatting that %title and %note have, allowing for padding, prefixes, etc.
4066
- - Move default locations for doing file and backups to ~/.local/share/doing
4067
- - `doing show --menu` will only offer tags that exist after any tag/search filters have been run
4068
- - `doing show @tag` with `--menu` will first filter by the @tag, then do an OR search for tags selected from the menu
4069
-
4070
- #### FIXED
4071
-
4072
- - `doing reset` without filter not automatically affecting most recent entry
4073
- - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
4074
- - Preserve colors when wrapping text to new lines
4075
- - Tag highlighting errors
4076
- - Template options specified in views were being overriden by options in templates. View config now has precedence, but will fall back to template config for missing keys
4077
-
4078
- #### IMPROVED
4079
-
4080
- - Better diff output for fzf preview of `doing undo` history
4081
- - Fall back to good ol' sed for colorizing diffs when no good tool is available
4082
- - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
4083
-
4084
- #### FIXED
4085
-
4086
- - `doing reset` without filter not automatically affecting most recent entry
4087
- - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
4088
-
4089
- ### 2.1.3
4090
-
4091
- #### NEW
4092
-
4093
- - BREAKING CHANGE: custom classes for Section (hash) and Items (Array). @content is still a regular Hash. Sections have methods :original and :items. This will affect plugins as wwid.content[section][:items] is now wwid[section].items (same for :original)
4094
- - `doing config set -r key.path` will delete a key from any config file, removing empty parent keys
4095
- - `config list` will list detected .doingrc files and the main config file in order of precedence - refactoring
4096
- - When modifying start dates or @done dates via an editor command, natural language strings can be used and will be parsed into doing-formatted dates automatically
4097
- - When editor is invoked, entry titles include start date, which can be modified
4098
- - `--before`, `--after`, and `--from` date filters for select command
4099
- - `--from` flag for `doing today` and `doing yesterday`, filter by time range
4100
- - `--from` flag for `doing search`, filter by date/time range
4101
- - Commands that accept `--before`, `--after`, and `--from` can now filter on time ranges. If the date string given contains only a time (no day or date), it will be interpreted as a time range, meaning the date isn't filtered, but only entries within the time range are shown/processed
4102
- - Add %duration placeholder to template variables
4103
- - Add `interval_format` setting to config (applies to root or any view/template) to set intervals/durations to human (2h 15m) or text (00:02:15)
4104
- - Add `duration` key to config (root or view/template). If set to true, will display durations by default (no need for `--duration`)
4105
- - Most display commands now have a `--duration` flag that will display an elapsed time if the entry is not marked @done
4106
-
4107
- #### IMPROVED
4108
-
4109
- - Config -o raw outputs value as YAML if result is a Hash/mapping, unquoted string if a single value, comma-separated list if it's an Array.
4110
- - Config -o json no longer includes key, only value.
4111
- - System agnostic method for checking available executables (pager, editor)
4112
- - Using `config set` and selecting a local config will no longer write the entire config to the local .doingrc. Instead, a nested path to the particular setting will be added to the config file.
4113
- - Config set will create missing keys. Fuzzy matching will work until the path fails, then path elements after that point will be added as verbatim keys to the specified configuration (with confirmation)
4114
- - Make menus only as tall as needed, so 5 options don't take up the whole screen
4115
- - Better word wrap for long note lines
4116
-
4117
- #### FIXED
4118
-
4119
- - `finish --took 60m` is supposed to backdate the start date if needed to finish at the current time and maintain an elapsed time
4120
- - If an editor was specified for config (or default as fallback) with command line options (e.g. `emacs -nw`), Doing would fail to recognize that the executable was available.
4121
-
4122
- ### 2.0.25
4123
-
4124
- #### NEW
4125
-
4126
- - `doing config set` to set single config values from command line
4127
- - BREAKING CHANGE: Moves ~/.doingrc to ~/.config/doing/config.yml
4128
- - BREAKING CHANGE: convert config flags to subcommands, e.g. `doing config --udpate` => `doing config update`, and `doing config --dump` => `doing config dump`
4129
-
4130
- ### 2.0.24
4131
-
4132
- - include fzf source directly, in case git isn't installed
4133
- - fall back to installing fzf with sudo on error
4134
-
4135
- ### 2.0.20
4136
-
4137
- #### IMPROVED
4138
-
4139
- - completion script generator refactor and progress bars
4140
-
4141
- #### FIXED
4142
-
4143
- - compile fzf for current operating system
4144
-
4145
- ### 2.0.19
4146
-
4147
- #### FIXED
4148
-
4149
- - Remove any coloring before writing to doing file
4150
-
4151
- ### 2.0.18
4152
-
4153
- #### FIXED
4154
-
4155
- - Escape codes being included in doing file
4156
-
4157
- ### 2.0.17
4158
-
4159
- #### IMPROVED
4160
-
4161
- - Improvements to %title formatting and wrapping
4162
-
4163
- ### 2.0.16
4164
-
4165
- - Test release to validate git flow automation
4166
-
4167
- ### 2.0.13
4168
-
4169
- #### FIXED
4170
-
4171
- - Remove amatch gem dependency due to compatibility issues with Windows systems (also removes `--fuzzy` option from all search commands)
4172
-
4173
- ### 2.0.11
4174
-
4175
- #### NEW
4176
-
4177
- - Append `/r` to tag transforms to replace original tag
4178
-
4179
- #### FIXED
4180
-
4181
- - Autotag tag transform fixes
4182
-
4183
- ### 2.0.10
4184
-
4185
- #### NEW
4186
-
4187
- - Add 'timer_format' config with 'human' option for tag totals
4188
- - If `doing view` and `doing show` are confused, offer option to run the other command
4189
- - `doing completion` to generate shell completion scripts for zsh, bash, and fish
4190
- - `--search` and `--not` for cancel command
4191
- - `--case` flag for commands with `--search`. Can be (c)ase-sensitive, (i)nsensitive, or (s)mart (default smart, case insensitive unless search string contains uppercase letters)
4192
- - Add `--exact` flag to all commands with `--search` flag to force exact matching without requiring single quote prefix
4193
- - Add `--not` flag to all commands with filters (`--tag`, `--search`, `--before`, etc.) to negate the filter and return entries NOT matched
4194
-
4195
- #### IMPROVED
4196
-
4197
- - More command line feedback
4198
- - Error formatting and output
4199
- - Add subcommand completion for `doing help` in fish shell
4200
- - Logging and error handling
4201
-
4202
- #### FIXED
4203
-
4204
- - Zsh completion not outputting results
4205
- - Remove `--[no]` from non-negatable options
4206
- - `doing plugins -t export -c` not outputting columns
4207
- - View config not respecting tag_order setting
4208
-
4209
- ### 2.0.3.pre
4210
-
4211
- #### NEW
4212
-
4213
- - Import calendar events from Calendar.app on macOS
4214
- - `doing config --update` will add newly added config keys to your existing config file (handy with plugins that define their own config keys)
4215
- - Add %idnote template placeholder for "indented note" (entire note indented one tab)
4216
- - (loosely printf-esque) formatting options for `%note` template placeholder
4217
- - `--interactive` mode to act on results of `doing grep`
4218
- - Printf formatting for title and date
4219
- - Doing import plugin
4220
- - Plugins command to list plugins
4221
- - `--dump` option for `doing config` to output a key.path config key as JSON, YAML, or raw output
4222
- - `--no-color` global flag
4223
- - Log levels, with `--quiet` and `--verbose` global flags
4224
- - Convert CLI messaging to Logger-based system
4225
- - Use DOING_DEBUG, DOING_QUIET, or DOING_LOG_LEVEL environment variables to specify log levels before configuration is read
4226
- - Hooks, register plugins to run based on events
4227
- - --[no-]pager and paginate: config option to enable paging output
4228
- - Never_finish and never_time config options to prevent items matching tags/sections from ever receiving @done (never_finish) or @done timestamp (never_time) - More configuration refactoring
4229
-
4230
- #### IMPROVED
4231
-
4232
- - Timeline output formatting
4233
- - Major plugin architecture refactoring
4234
- - Fix regression where notes stored in doing file were outdented, breaking TaskPaper compatibility
4235
- - When accepting a date filter, allow end date to be in the future
4236
- - If an edited item has no changes, don't update/output notification - Don't start with query when using grep `--interactive`
4237
- - Select menu item formatting
4238
- - Output wrapping for terminal display
4239
- - Redirect warn to STDOUT when run with `--stdout`
4240
- - Fish autocomplete
4241
- - `--config_file` global flag deprected, now uses $DOING_CONFIG environment variable so that config overrides can be available before the initial configuration is run
4242
- - When `--stdout` or not a TTY, no color or output formatting
4243
- - Highlight tags when showing results. Because it looks nice.
4244
- - `--tag` and `--search` for `doing note`
4245
- - View/section fuzzy guessing
4246
- - Error reporting
4247
- - If `doing config` finds local doingrc files, offers a menu for editing
4248
- - More filtering options for `doing finish`
4249
- - Doing done accepts `--unfinished` flag to finish last entry not marked @done (instead of last entry)
4250
- - Doing done accepts `--note` flag to append a note when completing an entry
4251
-
4252
- #### FIXED
4253
-
4254
- - Multi-word unquoted arguments to add_section being truncated
4255
- - Show `--from` with date span
4256
- - Handling of arbitrary times in natural language dates
4257
- - Backward scope of since command with arbitrary times
4258
- - `doing rotate --keep` wasn't respecting keep value
4259
-
4260
- ### 1.0.93
4261
-
4262
- #### FIXED
4263
-
4264
- - Gemfile error
4265
-
4266
- ### 1.0.91
4267
-
4268
- #### NEW
4269
-
4270
- - "taskpaper" format available for all output options
4271
- - "markdown" format available for all output commands (GFM-style task list, customizable template)
4272
- - `--rename` option for tag command to replace tags
4273
- - `--regex` option for tag command, for `--remove` and `--rename`
4274
-
4275
- ### 1.0.90
4276
-
4277
- #### IMPROVED
4278
-
4279
- - doing finish `--auto` now pulls from all sections, not just the section of the target entry
4280
-
4281
- #### FIXED
4282
-
4283
- - Minor fix for shell command in doing select
4284
- - Fix for doing finish `--auto` when matched item is last in list
4285
-
4286
- ### 1.0.89
4287
-
4288
- #### NEW
4289
-
4290
- - Pretty print JSON output
4291
- - `--no-menu` option for select command to use `--query` as a filter and act on matching entries without displaying menu
4292
-
4293
- ### 1.0.88
4294
-
4295
- #### IMPROVED
4296
-
4297
- - Add `--before` and `--after` time search to yesterday command
4298
- - Add `--before` and `--after` date search to search/grep command
4299
- - Add `--tag_order` to yesterday command
4300
-
4301
- ### 1.0.87
4302
-
4303
- #### IMPROVED
4304
-
4305
- - Add leading spaces to make %shortdate align properly, at least for the last week
4306
- - Add `--tag`, `--bool`, and `--search` to view command
4307
- - Add `--before` and `--after` date search to view command
4308
- - Add `--before` and `--after` date search to show command
4309
- - Add `--before` and `--after` time search to today command
4310
- - Add `--search` filter to show command
4311
- - More alignment/formatting fixes for %shortdate
4312
-
4313
- ### 1.0.86
4314
-
4315
- #### IMPROVED
4316
-
4317
- - Add `count` config option for templates->recent
4318
-
4319
- ### 1.0.85
4320
-
4321
- #### IMPROVED
4322
-
4323
- - Add `--before` DATE_STRING to archive and rotate commands
4324
- - Only create on rotate file per day, merge new entries into existing file
4325
-
4326
- #### FIXED
4327
-
4328
- - Fix `--auto` for finish command
4329
-
4330
- ### 1.0.84
4331
-
4332
- #### NEW
4333
-
4334
- - `rotate` command for archiving entries to new file
4335
-
4336
- #### FIXED
4337
-
4338
- - Fixed current_section config key not being honored in some commands
4339
-
4340
- ### 1.0.83
4341
-
4342
- #### FIXED
4343
-
4344
- - Fixes for `doing view` options, additional config keys for views
4345
-
4346
- ### 1.0.82
4347
-
4348
- #### FIXED
4349
-
4350
- - Bugfixes
4351
-
4352
- ### 1.0.81
4353
-
4354
- #### IMPROVED
4355
-
4356
- - fzf menu improvements
4357
- - allow multiple selections `doing select` action menu
4358
-
4359
- ### 1.0.80
4360
-
4361
- #### IMPROVED
4362
-
4363
- - Convert all menus to fzf screens
4364
-
4365
- ### 1.0.79
4366
-
4367
- #### IMPROVED
4368
-
4369
- - Wildcard tag removal using `doing select -t "tag*" -r`
4370
- - fzf menu display polish
4371
-
4372
- #### FIXED
4373
-
4374
- #### FIXED
4375
-
4376
- - Gem missing fzf
4377
-
4378
- ### 1.0.78
4379
-
4380
- #### IMPROVED
4381
-
4382
- - If no action is specified with select command, an interactive menu is
4383
- presented
4384
- - add output action select command with formatting and save options
4385
- - Don't link URLs in html output that don't have a protocol
4386
-
4387
- ### 1.0.76
4388
-
4389
- #### IMPROVED
4390
-
4391
- - Refine editing multiple selections (doing select)
4392
-
4393
- ### 1.0.74
4394
-
4395
- #### NEW
4396
-
4397
- - Add `--tag` and `--search` flags to tag command to tag all entries matching search terms
4398
- - Add since command, which is the same as `doing on tuesday to now` but `doing since tuesday` just feels more intuitive.
4399
-
4400
- ### 1.0.73
4401
-
4402
- #### FIXED
4403
-
4404
- - Fix for timeline output
4405
-
4406
- ### 1.0.72
4407
-
4408
- #### NEW
4409
-
4410
- - Add `doing select` to show menu of all tasks, searchable with fuzzy matching and the ability to perform certain tasks on multiple selections.
4411
-
4412
- ### 1.0.71
4413
-
4414
- #### FIXED
4415
-
4416
- - Fix for template command not working at all
4417
-
4418
- ### 1.0.70
4419
-
4420
- #### FIXED
4421
-
4422
- - Fix for `doing done --took 30m` setting the wrong @done timestamp when completing previous item
4423
-
4424
- ### 1.0.69
4425
-
4426
- #### IMPROVED
4427
-
4428
- - Add `--unfinished` option to finish and cancel commands
4429
-
4430
- ### 1.0.68
4431
-
4432
- #### FIXED
4433
-
4434
- - Fix error in `doing show --sort` argument parsing
4435
-
4436
- ### 1.0.67
4437
-
4438
- #### FIXED
4439
-
4440
- - Gem packaging error
4441
-
4442
- ### 1.0.66
4443
-
4444
- #### IMPROVED
4445
-
4446
- - More flexible boolean specification, can be: all, and, any, or, not, or none
4447
-
4448
- #### FIXED
4449
-
4450
- - Fix for some long flags being interpreted as arrays instead of strings
4451
- - Fix for archive command not removing original entries from archived section
4452
-
4453
- ### 1.0.65
4454
-
4455
- #### IMPROVED
4456
-
4457
- - Prevent duplicates/overlapping entries when importing
4458
-
4459
- ### 1.0.64
4460
-
4461
- #### NEW
4462
-
4463
- - Initial import feature for Timing.app reports
4464
-
4465
- ### 1.0.63
4466
-
4467
- #### IMPROVED
4468
-
4469
- - If `doing done --took=X` results in completion date greater than current time, use current time as completion date and backdate the entry's timestamp to fit
4470
-
4471
- ### 1.0.62
4472
-
4473
- #### FIXED
4474
-
4475
- - `doing done` with `--took=` and without `--back=` should set end time to start date plus `--took` value
4476
-
4477
- ### 1.0.61
4478
-
4479
- #### IMPROVED
4480
-
4481
- - Add `--search` filter to `doing archive`
4482
-
4483
- ### 1.0.60
4484
-
4485
- #### FIXED
4486
-
4487
- - Default value for `doing again --bool` was ALL, should be AND
4488
-
4489
- ### 1.0.59
4490
-
4491
- #### IMPROVED
4492
-
4493
- - Improvements to `doing again --tag=` functionality
4494
-
4495
- ### 1.0.58
4496
-
4497
- #### IMPROVED
4498
-
4499
- - Finish previous task if `doing again` and not already completed
4500
-
4501
- ### 1.0.57
4502
-
4503
- #### IMPROVED
4504
-
4505
- - Unit tests
4506
-
4507
- ### 1.0.56
4508
-
4509
- #### IMPROVED
4510
-
4511
- - Tag command tests
4512
-
4513
- #### FIXED
4514
-
4515
- - Doing not reading per-directory .doingrc configs
4516
-
4517
- ### 1.0.55
4518
-
4519
- #### NEW
4520
-
4521
- - Added config_editor_app setting to config so you can have
4522
- - A parenthetical at the end of an entry title becomes an attached
4523
- - `--editor` flag for `doing last` to edit last entry
4524
- - `--tag=` flag to filter `doing last` by tag
4525
- - `--search=` to filter `doing last` by text/regex search
4526
- - `--search=` for `doing finish`, finish last X entries matching search
4527
- - Add `tags_color` as a primary config key to highlight @tags in displayed entries
4528
-
4529
- #### IMPROVED
4530
-
4531
- - Clean up command line help
4532
- - `--editor` improvements for all commands that use it
4533
-
4534
- #### FIXED
4535
-
4536
- - Doing finish `--took` throwing error
4537
- - Doing tag `--remove` was adding tags if they didn't exist
4538
- - Creating a meanwhile task with a note resulted in an error
4539
-
4540
- ### 1.0.54
4541
-
4542
- #### FIXED
4543
-
4544
- - Bugfix for `finish --tag=TAG`
4545
-
4546
- ### 1.0.53
4547
-
4548
- #### NEW
4549
-
4550
- - `--tag` and `--bool` filtering for again/resume, cancel
4551
- - `--in` flag for `again`/`resume` to specify to which section the new
4552
- - Finish command accepts `--tag=` flag, finishing last entry
4553
- - `doing cancel` to end X tasks without completion date
4554
-
4555
- #### IMPROVED
4556
-
4557
- - Add `--no-color` option to view command
4558
- - Add `--tag` to show for compatibility
4559
-
4560
- #### FIXED
4561
-
4562
- - Error running finish without `--tag` flag
4563
- - `--archive` flag on finish, done, and cancel causing error
4564
-
4565
- ### 1.0.52
4566
-
4567
- #### NEW
4568
-
4569
- - Finish command accepts `--tag=` flag, finishing last entry
4570
-
4571
- #### FIXED
4572
-
4573
- - `--archive` flag on finish, done, and cancel causing error
4574
-
4575
- ### 1.0.49
4576
-
4577
- #### FIXED
4578
-
4579
- - Fix for missing date on @done tags
4580
-
4581
- ### 1.0.48
4582
-
4583
- #### FIXED
4584
-
4585
- - Fix confirmation dialog for `doing tag -a -c 0` (autotag all)
4586
-
4587
- ### 1.0.47
4588
-
4589
- #### IMPROVED
4590
-
4591
- - Remove check for file existence before attempting to run run_after script
4592
- - Don't autotag entries restarted with `again/resume`
4593
- - Add short flags (`-b`) for `--back` on all commands that support it
4594
-
4595
- ### 1.0.46
4596
-
4597
- #### IMPROVED
4598
-
4599
- - Code cleanup
4600
-
4601
- ### 1.0.45
4602
-
4603
- #### IMPROVED
4604
-
4605
- - Only execute run_after script if changes are written
4606
-
4607
- ### 1.0.44
4608
-
4609
- #### IMPROVED
4610
-
4611
- - Remove unnecessary console logging
4612
-
4613
- ### 1.0.43
4614
-
4615
- #### NEW
4616
-
4617
- - Add `again` command to repeat last entry without @done tag
4618
- - Add `run_after` configuration option to execute external script after any change
4619
-
4620
- ### 1.0.42
4621
-
4622
- #### FIXED
4623
-
4624
- - Fix note indentation in doing file
4625
-
4626
- ### 1.0.41
4627
-
4628
- #### FIXED
4629
-
4630
- - Fix for repeated backreferences in tag transform
4631
-
4632
- ### 1.0.40
4633
-
4634
- #### IMPROVED
4635
-
4636
- - Add `--tag_sort` to all subcommands with `--totals` option
4637
-
4638
- ### 1.0.39
4639
-
4640
- #### NEW
4641
-
4642
- - Tag transforms
4643
- - Option to sort tags by name in `--totals`
4644
-
4645
- ### 1.0.33
4646
-
4647
- #### FIXED
4648
-
4649
- - Gem dependency updates
4650
-
4651
- ### 1.0.30
4652
-
4653
- #### FIXED
4654
-
4655
- - Fix for array comparison error
4656
-
4657
- ### 1.0.29
4658
-
4659
- #### FIXED
4660
-
4661
- - Bugfixes
4662
-
4663
- ### 1.0.28
4664
-
4665
- #### IMPROVED
4666
-
4667
- - Global option `-x` to skip autotags and default_tags from global/local .doingrc
4668
- - Remove extra spaces when creating entry
4669
-
4670
- ### 1.0.27
4671
-
4672
- #### IMPROVED
4673
-
4674
- - More graceful writing of default config (~/.doingrc) on first run
4675
- - Repaired testing setup. Needs moar tests.
4676
-
4677
- ### 1.0.26
4678
-
4679
- #### IMPROVED
4680
-
4681
- - Add `--at` flag for `doing done`, e.g. `doing done --at=1:35pm --took=15m A new task I already finished`
4682
- - Allow decimal quantities when using natural language for hours or days, e.g. `--took=2.5h`
4683
- - Add `did` as a synonym for `done` subcommand
4684
-
4685
- ### 1.0.25
4686
-
4687
- #### IMPROVED
4688
-
4689
- #### IMPROVED
4690
-
4691
- - Smarter method of getting user $HOME
4692
- - Improved avoiding duplicate tags when autotagging
4693
- - Improved autotag reporting
4694
-
4695
- ### 1.0.24
4696
-
4697
- #### IMPROVED
4698
-
4699
- - `doing note` operates on whatever is most recent, not just the last note in Currently
4700
- - `doing tag` with no count specified operates on most recent entry in any section, not just Currently
4701
- - `doing tag` with a count greater than 1 requires a section to be specified
4702
- - Improved results reporting for `doing tag`
4703
- - When removing tag do a whole-word match to avoid removing part of a longer tag
4704
-
4705
- ### 1.0.23
4706
-
4707
- #### IMPROVED
4708
-
4709
- - Apply default_tags after autotagging to avoid tags triggering tags
4710
- - Set `doing recent` to default to All sections instead of Currently
4711
- - Fix error in time reporting
4712
- - improved y/n prompt for TTY
4713
-
4714
- ### 1.0.22
4715
-
4716
- #### IMPROVED
4717
-
4718
- - Allow cascading of local config files
4719
- - Allow `doing today` and `yesterday` to specify a section
4720
-
4721
- #### FIXED
4722
-
4723
- - Fix handling of "local" config files, allowing per-project configurations
4724
-
4725
- ### 1.0.21
4726
-
4727
- #### NEW
4728
-
4729
- - Add legitimate regex search capabilities
4730
- - Synonyms for grep (search) and now (next)
4731
-
4732
- #### FIXED
4733
-
4734
- - CSS fix
4735
-
4736
- ### 1.0.20
4737
-
4738
- #### NEW
4739
-
4740
- - New command `doing templates` to export default templates for HAML and CSS
4741
- - New config options under `html_template` for `haml` and `css`
4742
-
4743
- #### IMPROVED
4744
-
4745
- - Rewrite HTML export templates with responsive layout and typography
4746
- - Ability to customize the HTML output using HAML and CSS
4747
-
4748
- ### 1.0.19
4749
-
4750
- #### IMPROVED
4751
-
4752
- - For `doing note -e` include the entry title so you know what you're adding a note to
4753
- - For any other command that allows `-e` include a comment noting that anything after the first line creates a note
4754
- - Ignore # comments when parsing editor results
4755
- - Add a .md extension to the temp file passed to the editor so you can take advantage of any syntax highlighting and other features in your editor
4756
-
4757
- ### 1.0.18
4758
-
4759
- #### IMPROVED
4760
-
4761
- - Loosened up the template color resetting a bit more
4762
-
4763
- #### FIXED
4764
-
4765
- - Fix `undefined method [] for nil class` error in `doing view`
4766
-
4767
- ### 1.0.17
4768
-
4769
- #### NEW
4770
-
4771
- - Add `--stdout` global option to send reporting to STDOUT instead of STDERR (for use with LaunchBar et al)
4772
-
4773
- ### 1.0.16
4774
-
4775
- #### FIXED
4776
-
4777
- - Fixes overzealous color resetting
4778
-
4779
- ### 1.0.15
4780
-
4781
- #### FIXED
4782
-
4783
- - CLI/text totals block was outputting when HTML output was selected
4784
- - Have all template colors reset bold and background automatically when called
4785
-
4786
- ### 1.0.14
4787
-
4788
- #### IMPROVED
4789
-
4790
- - Fish completion
4791
- - views and sections subcommands have -c option to output single column
4792
- - Fix html title when tag_bool is NONE
4793
- - Fix @from tagging missing closing paren
4794
- - Fix tag coloring
4795
-
4796
- ### 1.0.13
4797
-
4798
- #### FIXED
4799
-
4800
- - Fix gsub error in doing meanwhile
4801
-
4802
- ### 1.0.8pre
4803
-
4804
- #### NEW
4805
-
4806
- - added doing on command
4807
- - Added autotagging to tag command
4808
- - JSON output option to view commands
4809
- - date filtering, improved date language
4810
- - let view templates define output format (csv, json, html, template)
4811
-
4812
- #### IMPROVED
4813
-
4814
- - add `%chompnote` template variable (item note with newlines and extra whitespace stripped)
4815
-
4816
- ### 1.0.7pre
4817
-
4818
- #### IMPROVED
4819
-
4820
- - Slightly fuzzier searching in the grep command
4821
- - cleaner exits, `only_timed` key for view configs
4822
- - making the note command append new notes better, and load existing notes in the editor if `-e` is called
4823
- - handle multiple tag input in `show` tag filter
4824
- - Global tag operations, better reporting
4825
-
4826
- #### FIXED
4827
-
4828
- - fix for `-v` option
4829
-
4830
- ### 1.0.4pre
4831
-
4832
- #### IMPROVED
4833
-
4834
- - Improved HTML output
4835
- - `--only_timed` option for view/show commands that only outputs items with elapsed timers (interval between start and done dates)
4836
- - add seconds for timed items in CSV output, run `--only_timed` before chopping off `--count #`
4837
- - fix for 1.8.7 `Dir.home` issue
4838
- - version bump
4839
- - don't show tag totals with zero times
4840
- - zsh completion for doing
4841
- - HTML styling
4842
- - `--only_timed` option
4843
- - added zsh completion file to `README.md`
4844
- - add zsh completion file
4845
-
4846
- ### 1.0.3pre
4847
-
4848
- #### IMPROVED
4849
-
4850
- - `done` command: making `--took` modify start time if `--back` isn't specified
4851
- - Cleaned up time totals, improved HTML output
4852
- - fixes for `--back` and `--took` parsing
4853
- - Adding more complete terminal reporting to archive command
4854
-
4855
- ### 1.0.0pre
4856
-
4857
- #### IMPROVED
4858
-
4859
- - Skipped ahead in the version numbering. Because I don't care.
4860
- - Added a `note` command and `--note` flags for entry creation commands
4861
-
4862
- ### 0.2.6pre
4863
-
4864
- #### IMPROVED
4865
-
4866
- - `--totals`, `--[no-]times`, `--output [csv,html]` options for `yesterday` command.
4867
- - Add tests for Darwin to hide OS X-only features on other systems
4868
- - `-f` flag to `now` command for finishing last task when starting a new one (Looks back for the last unfinished task in the list)
4869
- - `--took` option for `done` and `finish` for specifying intervals from the start date for the completion date
4870
- - Basic command line reporting
4871
- - `--auto` flag for `finish` and `done` that will automatically set the completion time to 1 minute before the next start time in the list. You can use it retroactively to add times to sequential todos.
4872
- - `doing grep` for searching by text or regex
4873
-
4874
- ### 0.2.5
4875
-
4876
- #### IMPROVED
4877
-
4878
- - Default to showing times #26, show totals even if no tags exist #27, fix indentation #29
4879
- - Add section label to archived tasks automatically, excepting `Currently` section
4880
- - Today outputs and backdate for finish
4881
- - HTML styling and fix for 1.8.7 HAML errors
4882
- - Look, HTML output! (`--output html`)
4883
- - Also, `--output csv`
4884
- - let doing `archive` function on all sections
4885
- - option to exclude date from _@done_,
4886
- - output newlines in sections and views
4887
- - Flagging (`doing mark`)
4888
- - fix for view/section guess error
4889
- - Adding tag filtering to archive command (`doing archive \@done`)
4890
- - `doing yesterday`
4891
- - `doing done -r` to remove last doing tag (optionally from `-s Section`)
4892
- - Add `-f` flag to specify alternate doing file
4893
- - `meanwhile` command
4894
-
4895
- ### 0.2.1
4896
-
4897
- #### IMPROVED
4898
-
4899
- - CSV output for show command (`--csv`)
4900
- - HTML output for show command (`--output html`)
4901
- - fuzzy searching for all commands that specify a view.
4902
- - In the terminal, you'll see "Assume you meant XXX" to show what match it found, but this is output to STDERR (and won't show up if you're redirecting the output or using it in GeekTool, etc.)
4903
- - `tags_color` in view config to highlight tags at the end of the lines. Can be set to any of the `%colors`.
4904
- - Basic time tracking.
4905
- - `-t` on `show` and `view` will turn on time calculations
4906
- - Intervals between timestamps and dated _@done_ tags are calculated for each line, if the tag exists.
4907
- - You must include a `%interval` token in the appropriate template for it to show
4908
- - _@start(date)_ tags can optionally be used to override the timestamp in the calculation
4909
- - Any other tags in the line have that line's total added to them
4910
- - Totals for tags can be displayed at the end of output with `--totals`
4911
-
4912
-
4913
- ### 0.2.0
4914
-
4915
- #### IMPROVED
4916
-
4917
- - `doing done` without argument tags last entry done
4918
- - `-a` archives them
4919
- - `doing finish` or `doing finish X` marks last X entries done
4920
- - `-a` archives them
4921
- - `doing tag tag1 [tag2]` tags last entry or `-c X` entries
4922
- - `doing tag -r tag1 [tag2]` removes said tag(s)
4923
- - custom views additions
4924
- - custom views can include `tags` and `tags_bool`
4925
- - `tags` is a space-separated list of tags to filter the results by
4926
- - `tags_bool` defines `AND` (all tags must exist), `OR` (any tag exists), or `NONE` (none of the tags exist)
4927
- - `order` key (`asc` or `desc`) defines output sort order by date
4928
- - section key can be set to `All` to combine sections
4929
- - `doing show` updates
4930
- - accepts `all` as a section
4931
- - arguments following section name are tags to filter by
4932
- - `-b` sets boolean (`AND`, `OR`, `NONE`) or (`ALL`, `ANY`, `NONE`) (default `OR`/`ANY`)
4933
- - use `-c X` to limit results
4934
- - use `-s` to set sort order (`asc` or `desc`)
4935
- - use `-a` to set age (`newest` or `oldest`)
4936
- - fuzzy section guessing when specified section isn't found
4937
- - fuzzy view guessing for `doing view` command
4938
-
4939
- ### 0.1.9
4940
-
4941
- #### IMPROVED
4942
-
4943
- - colors in templated output
4944
- - `open` command
4945
- - opens in the default app for file type
4946
- - `-a APPNAME` (`doing open -a TaskPaper`)
4947
- - `-b bundle_id` (`doing open -b com.sublimetext.3`)
4948
- - `-e` switch for `now`, `later` and `done` commands
4949
- - save a tmp file and open it in an editor
4950
- - allows multi-line entries, anything after first line is considered a note
4951
- - assumed when no input is provided (`doing now`)
4952
- - `doing views` shows all available custom views
4953
- - `doing view` without a view name will let you choose a view from a menu
4954
- - `doing archive` fixed so that `-k X` works to keep `X` number of entries in the section
4955
-
4956
- ### 0.1.7
4957
-
4958
- #### IMPROVED
4959
-
4960
- - colors in templated output
4961
- - `open` command
4962
- - opens in the default app for file type
4963
- - `-a APPNAME` (`doing open -a TaskPaper`)
4964
- - `-b bundle_id` (`doing open -b com.sublimetext.3`)
4965
- - `-e` switch for `now`, `later`, and `done` commands
4966
- - save a tmp file and open it in an editor
4967
- - allows multi-line entries, anything after first line is considered a note
4968
- - assumed when no input is provided (`doing now`)
4969
-
4970
- and hitting tab will offer completions of subcommands and their options.' command :completion do |c|
4971
- - When generating completion scripts using `doing completion --file FILE_PATH`, if the file specified is not in an auto-load directory for the shell type, offer to symlink the output to an appropriate directory
4972
-
4973
- ### 2.1.30
4974
-
4975
- 2022-02-16 07:18
4976
-
4977
- #### IMPROVED
4978
-
4979
- - `doing changes` does a better job of parsing a lookup string like '>= 2.1.10 < 2.1.15'
4980
-
4981
- #### FIXED
4982
-
4983
- - System agnostic platform detection, so commands that check for Darwin won't error out on other systems
4984
- - `doing completions` debugging code
4985
-
4986
- ### 2.1.29
4987
-
4988
- 2022-02-14 12:42
4989
-
4990
- #### IMPROVED
4991
-
4992
- - `doing changes --interactive` will load up a changelog viewer using fzf. Because it makes me happy, that's why.
4993
-
4994
- ### 2.1.28
4995
-
4996
- 2022-02-14 11:39
4997
-
4998
- #### FIXED
4999
-
5000
- - Lines merging in `doing changes --changes` output
5001
-
5002
- ### 2.1.27
5003
-
5004
- 2022-02-14 06:04
5005
-
5006
- #### NEW
5007
-
5008
- - `doing finish --update` will overwrite any existing @done tag with a new date (current time or set with `--at` or `--back`)
5009
-
5010
- #### IMPROVED
5011
-
5012
- - Code refactoring and cleanup
5013
- - Include release dates in `doing changes` output when available
5014
- - Allow various naming conventions for %color strings in templates. Now `boldwhite`, `brightwhite`, `bg_bold_cyan`, and `bold_bg_cyan` all work (for example)
5015
- - Common flags (e.g. --search, --tag) found on multiple commands consolidated and help descriptions matched
5016
- - `commands_accepting` now accepts multiple arguments and a `--bool` flag
5017
- - `changes` command can now output changes only (no version numbers) and defaults to raw Markdown if not a TTY or the `--md` flag is used
5018
- - `doing archive` now accepts `--after` and `--from` date filters
5019
-
5020
- #### FIXED
5021
-
5022
- - Some flag descriptions in help
5023
- - Editor detection
5024
-
5025
- ### 2.1.26
5026
-
5027
- 2022-01-23 16:14
5028
-
5029
- #### NEW
5030
-
5031
- - Use plugins.hidden_commands in configuration to disable any command (array of command names). Note that some commands use aliases and the first name should be used.
5032
- - `doing commands [add|remove]` allows interactive enabling and disabling of default and custom commands
5033
-
5034
- #### IMPROVED
5035
-
5036
- - Moved all commands into separate files for management
5037
-
5038
- #### FIXED
5039
-
5040
- - Changelog command regex too greedy when parsing changelog
5041
-
5042
- ### 2.1.25
5043
-
5044
- 2022-01-23 09:25
5045
-
5046
- ### 2.1.24
5047
-
5048
- 2022-01-22 17:27
5049
-
5050
- #### IMPROVED
5051
-
5052
- - Minor update to Fish completion script
5053
-
5054
- #### FIXED
5055
-
5056
- - Changelog formatting issue
5057
-
5058
- ### 2.1.23
5059
-
5060
- 2022-01-22 15:52
5061
-
5062
- #### NEW
5063
-
5064
- - All display commands (except view) now accept `--config_template TEMPLATE_KEY` to override that commands default template.
5065
- - Display commands accept `--template`, which takes a template string containing %placeholders and overrides the commands default template output. Affects grep, last, on, recent, show, since, today, yesterday
5066
-
5067
- #### IMPROVED
5068
-
5069
- - With complete examples in the help output for most commands, `doing help` almost always requires scrolling up. It now automatically paginates using your system $PAGER (or best detected option).
5070
- - `doing tags` takes a MAX_COUNT argument to limit results when searching
5071
- - `doing tags --line` flag to output tags in a single line
5072
- - Mostly for my own use, `doing changes` (which views the changelog) now accepts `--lookup VERSION` and `--search SEARCH_PATTERN`
5073
- - `doing changes --lookup` accepts `"< 2.1 > 2.0"`, `"2.1.10-2.2"`, a specific version, or a version number with wildcards
5074
- - When registering hooks, you can pass an array to register a block for multiple events, assuming the events provide the same block arguments (like post_entry_added and post_entry_updated)
5075
-
5076
- #### FIXED
5077
-
5078
- - Running `--tag "@doing"` wouldn't work where `--tag "doing"` would. Now properly ignoring @ symbols
5079
-
5080
- ### 2.1.22
5081
-
5082
- 2022-01-21 14:53
5083
-
5084
- ### 2.1.21
5085
-
5086
- 2022-01-20 12:05
5087
-
5088
- #### FIXED
5089
-
5090
- - Custom types not available to custom commands
5091
-
5092
- ### 2.1.20
5093
-
5094
- 2022-01-20 11:49
5095
-
5096
- #### NEW
5097
-
5098
- - Autotag option for interactive `doing select` menu
5099
- - (Breaking change) Made the later command an optional plugin, see wiki for how to install (and create) custom commands
5100
- - Config setting doing_file_sort (asc or desc) determines the sort order of entries in the actual Doing file. Has no effect on other operations, just allows you to store the file with newest entries at top (desc) or bottom (asc).
5101
-
5102
- #### IMPROVED
5103
-
5104
- - Autotag improvements
5105
- - If doing is run without a command but with arguments, execute it as if you'd run `doing now`, passing the arguments to that. So you can just write "doing this thing" instead of "doing now this thing", as long as the first word of the arguments is not a recognized command.
5106
-
5107
- #### FIXED
5108
-
5109
- - `doing again` should only mark the original repeating entry @done, not search for the last unfinished entry
5110
- - Error when using `doing finish --auto`
5111
- - `doing on wed` when today is wednesday not returning results
5112
- - Using `config set` with a false value deleted the key from config
5113
- - `config set` with true or false value was inserting a quoted string
5114
- - Entries were not being sorted (at all) within sections when writing the Doing file
5115
-
5116
- ### 2.1.19
5117
-
5118
- 2022-01-18 08:40
5119
-
5120
- #### FIXED
5121
-
5122
- - Search highlighting error with some pattern searches
5123
- - Reverse sort of items in menu from `--interactive` flags
5124
- - Nil error when `--interactive` was called without search results
5125
-
5126
- ### 2.1.18
5127
-
5128
- Build automation test
5129
-
5130
- ### 2.1.17
5131
-
5132
- 2022-01-18 07:26
5133
-
5134
- #### NEW
5135
-
5136
- - `--hilite` option for `doing search` to highlight matches in search results (terminal output only)
5137
- - `--hilite` flag for `show` and `view` to highlight results when used with `--search`
5138
-
5139
- #### IMPROVED
5140
-
5141
- - Show preview of up to 5 items when confirming a delete operation so you actually know what you're deleting
5142
- - Allow `--ask` when creating new entry via STDIN pipe
5143
- - Tab completion for known tags when creating an entry interactively
5144
- - Add purple as an alias for magenta in template colors
5145
-
5146
- #### FIXED
5147
-
5148
- - Clear STDIN before requesting input
5149
-
5150
- ### 2.1.16
5151
-
5152
- 2022-01-18 02:45
5153
-
5154
- #### NEW
5155
-
5156
- - `doing done --from "3pm to 3:15pm"` to set start and end times with natural language string
5157
-
5158
- #### IMPROVED
5159
-
5160
- - Running `doing tag` without arguments takes command line input
5161
- - If `doing now` or `doing later` are run without arguments, interactively request necessary information (you can still use `--editor` to edit in your preferred editor)
5162
- - Tab completion for tags when entering at prompt
5163
- - Use readline when requesting input text, better editing features
5164
- - `doing done --at` no longer overrides `--back`
5165
-
5166
- #### FIXED
5167
-
5168
- - `doing select` -> output formatted empty output
5169
- - Sort items by date when using `doing select --editor` (was loading in selection order instead)
5170
- - Ruby 2.7 error in template output (.empty? on FalseClass)
5171
- - Don't add empty entry when cancelling `--editor`
5172
- - Batch editing bugs
5173
-
5174
- ### 2.1.15
5175
-
5176
- 2022-01-17 07:25
5177
-
5178
- #### NEW
5179
-
5180
- - When completing an entry, if the elapsed time would be greater than a (configurable) amount, doing will now ask for confirmation and allow you to enter a new duration before setting the @done date
5181
-
5182
- #### IMPROVED
5183
-
5184
- - When entering intervals, you can now use 1h30m in addition to 1.5h or 90m
5185
- - Date expansion works in more circumstances
5186
- - You can include date tags with natural language values when adding tags via `doing select`
5187
-
5188
- #### FIXED
5189
-
5190
- - Tags containing values with spaces no longer cause errors
5191
-
5192
- ### 2.1.14
5193
-
5194
- #### NEW
5195
-
5196
- - All commands that accept `--note` now accept `--ask`, which requests input via readline after creating the note. Multiple lines are allowed, hit return twice to end editing. Works alongside `--note` and `--editor`
5197
-
5198
- #### IMPROVED
5199
-
5200
- - Implement `--search` and `--from` filtering for import plugins
5201
- - UTC format date strings in select menus for consistency (was relative date formatting)
5202
- - Don't populate the fzf search with `--search`, it's already filtered. Separated `--query` from `--search` if you do want to populate the query string in addition to `--search` filtering
5203
- - When showing relative dates, don't include the year if the date is the previous year but a later month than the current month (less than a year old)
5204
- - When using `--editor` while adding an entry, include any note specified on the command line or via `--ask` for further editing
5205
-
5206
- ### 2.1.13
5207
-
5208
- #### NEW
5209
-
5210
- - `--val` flag for all display commands, allows tag value queries. Tag values are contained in parenthesis after the tag, e.g. @progress(50). Queries look like `--val "done < two weeks ago"`, "project *= oracle" or "progress >= 50". Wildcards allowed in value, comparators can be <, >, <=, >=, ==, *= (contains), ^= (begins with), $= (ends with). Numeric and date comparisons are detected automatically. Text comparisons are case insensitive. `--val` can be used multiple times in a command and you can use `--bool` to specify AND, OR, or NOT (default AND)
5211
- - `doing tag` now accepts a `--value` flag to define a value for a single tag, e.g. @tag(value)
5212
-
5213
- #### FIXED
5214
-
5215
- - `doing last --editor` errors
5216
-
5217
- ### 2.1.12
5218
-
5219
- #### NEW
5220
-
5221
- - Tag_dir command creates/updates .doingrc files in the current directory with default_tags values. Then all entries created within that directory (or subdirs) get tagged with that value.
5222
- - Synonym triggers allow `*` and `?` wildcards
5223
- - Add `--delete` flag for `doing last` to delete last entry
5224
- - `--delete` and `--editor` flags for `doing search`, batch edit and delete
5225
- - Example hook to add new entries containing a certain tag to Day One
5226
- - New hooks: pre_entry_add, post_entry_added, post_entry_updated, post_entry_removed, pre_export
5227
-
5228
- #### IMPROVED
5229
-
5230
- - If you need to use a colon in an autotag transform pattern, you can split with double colon, e.g. pattern::replacement
5231
- - Arrays defined in local configurations merge with main config instead of overwriting
5232
-
5233
- #### FIXED
5234
-
5235
- - `doing tags --interactive` wasn't showing menu
5236
-
5237
- ### 2.1.10
5238
-
5239
- #### NEW
5240
-
5241
- - `--age` (oldest|newest) option for view command
5242
-
5243
- ### 2.1.9
5244
-
5245
- #### IMPROVED
5246
-
5247
- - Only attempt to install fzf if it doesn't exist on the system. In case of errors, this means a user can manually install fzf and still be able to access `--interactive` options
5248
-
5249
- #### FIXED
5250
-
5251
- - Rotate command only archiving half of requested items
5252
- - Frozen string error in doing import plugin
5253
-
5254
- ### 2.1.8
5255
-
5256
- #### NEW
5257
-
5258
- - Hidden command `doing commands_accepting` which shows all commands that accept a given option, e.g. `doing commands_accepting search` shows all commands that take a search filter
5259
- - Hidden command `doing changelog` which outputs a paginated, formatted version of the change history.
5260
-
5261
- #### IMPROVED
5262
-
5263
- - The output of `doing template --list` now shows the file type of each template
5264
- - Output templates can now be saved to a default location/filename using `doing template html --save`
5265
-
5266
- #### FIXED
5267
-
5268
- - Error running `doing recent` on certain older ruby versions
5269
-
5270
- ### 2.1.6
5271
-
5272
- #### NEW
5273
-
5274
- - `doing redo` undoes a redo
5275
- - `doing undo -i` offers a list of available versions for selection
5276
- - Multiple undo. Every time a command modifies the doing file, a backup is written. Running `doing undo` repeatedly steps back through history, `doing undo 5` jumps back 5 versions
5277
- - When resetting via `doing select`, prompt for a date string
5278
- - `doing reset` accepts a date string argument to use as start date instead of current time if provided
5279
- - `doing tags` lists tags used in any/all sections, sortable, with or without frequency counts
5280
- - `doing show --menu` offers an interactive menu for selecting section and tag filters
5281
- - All commands that accept a `--tag` filter can now handle wildcards in the tag names. * to match any number of characters, ? to match a single character.
5282
- - New boolean type for tag searches, PATTERN (which is now the default). Combine tags using symbols to create more complex boolean searches, e.g. "doing +coding -work"
5283
- - You can now define `date_tags` in config, an array of tags/patterns that will be recognized when parsing for natural language dates which are converted when saving new entries
5284
- - `--search` strings can contain quoted phrases and use +/- to require or ban terms, e.g. `--search 'doing +coding -writing'
5285
- - Interactive option for redo command
5286
- - Plugins for Day One export
5287
-
5288
- #### IMPROVED
5289
-
5290
- - Better diff output for fzf preview of `doing undo` history
5291
- - Fall back to good ol' sed for colorizing diffs when no good tool is available
5292
- - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
5293
- - Matching algorithm can be configured in settings
5294
- - All template placeholders can now use the "printf" formatting that %title and %note have, allowing for padding, prefixes, etc.
5295
- - Move default locations for doing file and backups to ~/.local/share/doing
5296
- - `doing show --menu` will only offer tags that exist after any tag/search filters have been run
5297
- - `doing show @tag` with `--menu` will first filter by the @tag, then do an OR search for tags selected from the menu
5298
-
5299
- #### FIXED
5300
-
5301
- - `doing reset` without filter not automatically affecting most recent entry
5302
- - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
5303
- - Preserve colors when wrapping text to new lines
5304
- - Tag highlighting errors
5305
- - Template options specified in views were being overriden by options in templates. View config now has precedence, but will fall back to template config for missing keys
5306
-
5307
- #### IMPROVED
5308
-
5309
- - Better diff output for fzf preview of `doing undo` history
5310
- - Fall back to good ol' sed for colorizing diffs when no good tool is available
5311
- - `doing redo` (a.k.a. `doing undo --redo`) can be run multiple times, stepping forward through undo history. Can also take a count to jump
5312
-
5313
- #### FIXED
5314
-
5315
- - `doing reset` without filter not automatically affecting most recent entry
5316
- - `config set` now preserves value type (string, array, mapping) of previous value, coercing new value if needed
5317
-
5318
- ### 2.1.3
5319
-
5320
- #### NEW
5321
-
5322
- - BREAKING CHANGE: custom classes for Section (hash) and Items (Array). @content is still a regular Hash. Sections have methods :original and :items. This will affect plugins as wwid.content[section][:items] is now wwid[section].items (same for :original)
5323
- - `doing config set -r key.path` will delete a key from any config file, removing empty parent keys
5324
- - `config list` will list detected .doingrc files and the main config file in order of precedence - refactoring
5325
- - When modifying start dates or @done dates via an editor command, natural language strings can be used and will be parsed into doing-formatted dates automatically
5326
- - When editor is invoked, entry titles include start date, which can be modified
5327
- - `--before`, `--after`, and `--from` date filters for select command
5328
- - `--from` flag for `doing today` and `doing yesterday`, filter by time range
5329
- - `--from` flag for `doing search`, filter by date/time range
5330
- - Commands that accept `--before`, `--after`, and `--from` can now filter on time ranges. If the date string given contains only a time (no day or date), it will be interpreted as a time range, meaning the date isn't filtered, but only entries within the time range are shown/processed
5331
- - Add %duration placeholder to template variables
5332
- - Add `interval_format` setting to config (applies to root or any view/template) to set intervals/durations to human (2h 15m) or text (00:02:15)
5333
- - Add `duration` key to config (root or view/template). If set to true, will display durations by default (no need for `--duration`)
5334
- - Most display commands now have a `--duration` flag that will display an elapsed time if the entry is not marked @done
5335
-
5336
- #### IMPROVED
5337
-
5338
- - Config -o raw outputs value as YAML if result is a Hash/mapping, unquoted string if a single value, comma-separated list if it's an Array.
5339
- - Config -o json no longer includes key, only value.
5340
- - System agnostic method for checking available executables (pager, editor)
5341
- - Using `config set` and selecting a local config will no longer write the entire config to the local .doingrc. Instead, a nested path to the particular setting will be added to the config file.
5342
- - Config set will create missing keys. Fuzzy matching will work until the path fails, then path elements after that point will be added as verbatim keys to the specified configuration (with confirmation)
5343
- - Make menus only as tall as needed, so 5 options don't take up the whole screen
5344
- - Better word wrap for long note lines
5345
-
5346
- #### FIXED
5347
-
5348
- - `finish --took 60m` is supposed to backdate the start date if needed to finish at the current time and maintain an elapsed time
5349
- - If an editor was specified for config (or default as fallback) with command line options (e.g. `emacs -nw`), Doing would fail to recognize that the executable was available.
5350
-
5351
- ### 2.0.25
5352
-
5353
- #### NEW
5354
-
5355
- - `doing config set` to set single config values from command line
5356
- - BREAKING CHANGE: Moves ~/.doingrc to ~/.config/doing/config.yml
5357
- - BREAKING CHANGE: convert config flags to subcommands, e.g. `doing config --udpate` => `doing config update`, and `doing config --dump` => `doing config dump`
5358
-
5359
- ### 2.0.24
5360
-
5361
- - include fzf source directly, in case git isn't installed
5362
- - fall back to installing fzf with sudo on error
5363
-
5364
- ### 2.0.20
5365
-
5366
- #### IMPROVED
5367
-
5368
- - completion script generator refactor and progress bars
5369
-
5370
- #### FIXED
5371
-
5372
- - compile fzf for current operating system
5373
-
5374
- ### 2.0.19
5375
-
5376
- #### FIXED
5377
-
5378
- - Remove any coloring before writing to doing file
5379
-
5380
- ### 2.0.18
5381
-
5382
- #### FIXED
5383
-
5384
- - Escape codes being included in doing file
5385
-
5386
- ### 2.0.17
5387
-
5388
- #### IMPROVED
5389
-
5390
- - Improvements to %title formatting and wrapping
5391
-
5392
- ### 2.0.16
5393
-
5394
- - Test release to validate git flow automation
5395
-
5396
- ### 2.0.13
5397
-
5398
- #### FIXED
5399
-
5400
- - Remove amatch gem dependency due to compatibility issues with Windows systems (also removes `--fuzzy` option from all search commands)
5401
-
5402
- ### 2.0.11
5403
-
5404
- #### NEW
5405
-
5406
- - Append `/r` to tag transforms to replace original tag
5407
-
5408
- #### FIXED
5409
-
5410
- - Autotag tag transform fixes
5411
-
5412
- ### 2.0.10
5413
-
5414
- #### NEW
5415
-
5416
- - Add 'timer_format' config with 'human' option for tag totals
5417
- - If `doing view` and `doing show` are confused, offer option to run the other command
5418
- - `doing completion` to generate shell completion scripts for zsh, bash, and fish
5419
- - `--search` and `--not` for cancel command
5420
- - `--case` flag for commands with `--search`. Can be (c)ase-sensitive, (i)nsensitive, or (s)mart (default smart, case insensitive unless search string contains uppercase letters)
5421
- - Add `--exact` flag to all commands with `--search` flag to force exact matching without requiring single quote prefix
5422
- - Add `--not` flag to all commands with filters (`--tag`, `--search`, `--before`, etc.) to negate the filter and return entries NOT matched
5423
-
5424
- #### IMPROVED
5425
-
5426
- - More command line feedback
5427
- - Error formatting and output
5428
- - Add subcommand completion for `doing help` in fish shell
5429
- - Logging and error handling
5430
-
5431
- #### FIXED
5432
-
5433
- - Zsh completion not outputting results
5434
- - Remove `--[no]` from non-negatable options
5435
- - `doing plugins -t export -c` not outputting columns
5436
- - View config not respecting tag_order setting
5437
-
5438
- ### 2.0.3.pre
5439
-
5440
- #### NEW
5441
-
5442
- - Import calendar events from Calendar.app on macOS
5443
- - `doing config --update` will add newly added config keys to your existing config file (handy with plugins that define their own config keys)
5444
- - Add %idnote template placeholder for "indented note" (entire note indented one tab)
5445
- - (loosely printf-esque) formatting options for `%note` template placeholder
5446
- - `--interactive` mode to act on results of `doing grep`
5447
- - Printf formatting for title and date
5448
- - Doing import plugin
5449
- - Plugins command to list plugins
5450
- - `--dump` option for `doing config` to output a key.path config key as JSON, YAML, or raw output
5451
- - `--no-color` global flag
5452
- - Log levels, with `--quiet` and `--verbose` global flags
5453
- - Convert CLI messaging to Logger-based system
5454
- - Use DOING_DEBUG, DOING_QUIET, or DOING_LOG_LEVEL environment variables to specify log levels before configuration is read
5455
- - Hooks, register plugins to run based on events
5456
- - --[no-]pager and paginate: config option to enable paging output
5457
- - Never_finish and never_time config options to prevent items matching tags/sections from ever receiving @done (never_finish) or @done timestamp (never_time) - More configuration refactoring
5458
-
5459
- #### IMPROVED
5460
-
5461
- - Timeline output formatting
5462
- - Major plugin architecture refactoring
5463
- - Fix regression where notes stored in doing file were outdented, breaking TaskPaper compatibility
5464
- - When accepting a date filter, allow end date to be in the future
5465
- - If an edited item has no changes, don't update/output notification - Don't start with query when using grep `--interactive`
5466
- - Select menu item formatting
5467
- - Output wrapping for terminal display
5468
- - Redirect warn to STDOUT when run with `--stdout`
5469
- - Fish autocomplete
5470
- - `--config_file` global flag deprected, now uses $DOING_CONFIG environment variable so that config overrides can be available before the initial configuration is run
5471
- - When `--stdout` or not a TTY, no color or output formatting
5472
- - Highlight tags when showing results. Because it looks nice.
5473
- - `--tag` and `--search` for `doing note`
5474
- - View/section fuzzy guessing
5475
- - Error reporting
5476
- - If `doing config` finds local doingrc files, offers a menu for editing
5477
- - More filtering options for `doing finish`
5478
- - Doing done accepts `--unfinished` flag to finish last entry not marked @done (instead of last entry)
5479
- - Doing done accepts `--note` flag to append a note when completing an entry
5480
-
5481
- #### FIXED
5482
-
5483
- - Multi-word unquoted arguments to add_section being truncated
5484
- - Show `--from` with date span
5485
- - Handling of arbitrary times in natural language dates
5486
- - Backward scope of since command with arbitrary times
5487
- - `doing rotate --keep` wasn't respecting keep value
5488
-
5489
- ### 1.0.93
5490
-
5491
- #### FIXED
5492
-
5493
- - Gemfile error
5494
-
5495
- ### 1.0.91
5496
-
5497
- #### NEW
5498
-
5499
- - "taskpaper" format available for all output options
5500
- - "markdown" format available for all output commands (GFM-style task list, customizable template)
5501
- - `--rename` option for tag command to replace tags
5502
- - `--regex` option for tag command, for `--remove` and `--rename`
5503
-
5504
- ### 1.0.90
5505
-
5506
- #### IMPROVED
5507
-
5508
- - doing finish `--auto` now pulls from all sections, not just the section of the target entry
5509
-
5510
- #### FIXED
5511
-
5512
- - Minor fix for shell command in doing select
5513
- - Fix for doing finish `--auto` when matched item is last in list
5514
-
5515
- ### 1.0.89
5516
-
5517
- #### NEW
5518
-
5519
- - Pretty print JSON output
5520
- - `--no-menu` option for select command to use `--query` as a filter and act on matching entries without displaying menu
5521
-
5522
- ### 1.0.88
5523
-
5524
- #### IMPROVED
5525
-
5526
- - Add `--before` and `--after` time search to yesterday command
5527
- - Add `--before` and `--after` date search to search/grep command
5528
- - Add `--tag_order` to yesterday command
5529
-
5530
- ### 1.0.87
5531
-
5532
- #### IMPROVED
5533
-
5534
- - Add leading spaces to make %shortdate align properly, at least for the last week
5535
- - Add `--tag`, `--bool`, and `--search` to view command
5536
- - Add `--before` and `--after` date search to view command
5537
- - Add `--before` and `--after` date search to show command
5538
- - Add `--before` and `--after` time search to today command
5539
- - Add `--search` filter to show command
5540
- - More alignment/formatting fixes for %shortdate
5541
-
5542
- ### 1.0.86
5543
-
5544
- #### IMPROVED
5545
-
5546
- - Add `count` config option for templates->recent
5547
-
5548
- ### 1.0.85
5549
-
5550
- #### IMPROVED
5551
-
5552
- - Add `--before` DATE_STRING to archive and rotate commands
5553
- - Only create on rotate file per day, merge new entries into existing file
5554
-
5555
- #### FIXED
5556
-
5557
- - Fix `--auto` for finish command
5558
-
5559
- ### 1.0.84
5560
-
5561
- #### NEW
5562
-
5563
- - `rotate` command for archiving entries to new file
5564
-
5565
- #### FIXED
5566
-
5567
- - Fixed current_section config key not being honored in some commands
5568
-
5569
- ### 1.0.83
5570
-
5571
- #### FIXED
5572
-
5573
- - Fixes for `doing view` options, additional config keys for views
5574
-
5575
- ### 1.0.82
5576
-
5577
- #### FIXED
5578
-
5579
- - Bugfixes
5580
-
5581
- ### 1.0.81
5582
-
5583
- #### IMPROVED
5584
-
5585
- - fzf menu improvements
5586
- - allow multiple selections `doing select` action menu
5587
-
5588
- ### 1.0.80
5589
-
5590
- #### IMPROVED
5591
-
5592
- - Convert all menus to fzf screens
5593
-
5594
- ### 1.0.79
5595
-
5596
- #### IMPROVED
5597
-
5598
- - Wildcard tag removal using `doing select -t "tag*" -r`
5599
- - fzf menu display polish
5600
-
5601
- #### FIXED
5602
-
5603
- #### FIXED
5604
-
5605
- - Gem missing fzf
5606
-
5607
- ### 1.0.78
5608
-
5609
- #### IMPROVED
5610
-
5611
- - If no action is specified with select command, an interactive menu is
5612
- presented
5613
- - add output action select command with formatting and save options
5614
- - Don't link URLs in html output that don't have a protocol
5615
-
5616
- ### 1.0.76
5617
-
5618
- #### IMPROVED
5619
-
5620
- - Refine editing multiple selections (doing select)
5621
-
5622
- ### 1.0.74
5623
-
5624
- #### NEW
5625
-
5626
- - Add `--tag` and `--search` flags to tag command to tag all entries matching search terms
5627
- - Add since command, which is the same as `doing on tuesday to now` but `doing since tuesday` just feels more intuitive.
5628
-
5629
- ### 1.0.73
5630
-
5631
- #### FIXED
5632
-
5633
- - Fix for timeline output
5634
-
5635
- ### 1.0.72
5636
-
5637
- #### NEW
5638
-
5639
- - Add `doing select` to show menu of all tasks, searchable with fuzzy matching and the ability to perform certain tasks on multiple selections.
5640
-
5641
- ### 1.0.71
5642
-
5643
- #### FIXED
5644
-
5645
- - Fix for template command not working at all
5646
-
5647
- ### 1.0.70
5648
-
5649
- #### FIXED
5650
-
5651
- - Fix for `doing done --took 30m` setting the wrong @done timestamp when completing previous item
5652
-
5653
- ### 1.0.69
5654
-
5655
- #### IMPROVED
5656
-
5657
- - Add `--unfinished` option to finish and cancel commands
5658
-
5659
- ### 1.0.68
5660
-
5661
- #### FIXED
5662
-
5663
- - Fix error in `doing show --sort` argument parsing
5664
-
5665
- ### 1.0.67
5666
-
5667
- #### FIXED
5668
-
5669
- - Gem packaging error
5670
-
5671
- ### 1.0.66
5672
-
5673
- #### IMPROVED
5674
-
5675
- - More flexible boolean specification, can be: all, and, any, or, not, or none
5676
-
5677
- #### FIXED
5678
-
5679
- - Fix for some long flags being interpreted as arrays instead of strings
5680
- - Fix for archive command not removing original entries from archived section
5681
-
5682
- ### 1.0.65
5683
-
5684
- #### IMPROVED
5685
-
5686
- - Prevent duplicates/overlapping entries when importing
5687
-
5688
- ### 1.0.64
5689
-
5690
- #### NEW
5691
-
5692
- - Initial import feature for Timing.app reports
5693
-
5694
- ### 1.0.63
5695
-
5696
- #### IMPROVED
5697
-
5698
- - If `doing done --took=X` results in completion date greater than current time, use current time as completion date and backdate the entry's timestamp to fit
5699
-
5700
- ### 1.0.62
5701
-
5702
- #### FIXED
5703
-
5704
- - `doing done` with `--took=` and without `--back=` should set end time to start date plus `--took` value
5705
-
5706
- ### 1.0.61
5707
-
5708
- #### IMPROVED
5709
-
5710
- - Add `--search` filter to `doing archive`
5711
-
5712
- ### 1.0.60
5713
-
5714
- #### FIXED
5715
-
5716
- - Default value for `doing again --bool` was ALL, should be AND
5717
-
5718
- ### 1.0.59
5719
-
5720
- #### IMPROVED
5721
-
5722
- - Improvements to `doing again --tag=` functionality
5723
-
5724
- ### 1.0.58
5725
-
5726
- #### IMPROVED
5727
-
5728
- - Finish previous task if `doing again` and not already completed
5729
-
5730
- ### 1.0.57
5731
-
5732
- #### IMPROVED
5733
-
5734
- - Unit tests
5735
-
5736
- ### 1.0.56
5737
-
5738
- #### IMPROVED
5739
-
5740
- - Tag command tests
5741
-
5742
- #### FIXED
5743
-
5744
- - Doing not reading per-directory .doingrc configs
5745
-
5746
- ### 1.0.55
5747
-
5748
- #### NEW
5749
-
5750
- - Added config_editor_app setting to config so you can have
5751
- - A parenthetical at the end of an entry title becomes an attached
5752
- - `--editor` flag for `doing last` to edit last entry
5753
- - `--tag=` flag to filter `doing last` by tag
5754
- - `--search=` to filter `doing last` by text/regex search
5755
- - `--search=` for `doing finish`, finish last X entries matching search
5756
- - Add `tags_color` as a primary config key to highlight @tags in displayed entries
5757
-
5758
- #### IMPROVED
5759
-
5760
- - Clean up command line help
5761
- - `--editor` improvements for all commands that use it
5762
-
5763
- #### FIXED
5764
-
5765
- - Doing finish `--took` throwing error
5766
- - Doing tag `--remove` was adding tags if they didn't exist
5767
- - Creating a meanwhile task with a note resulted in an error
5768
-
5769
- ### 1.0.54
5770
-
5771
- #### FIXED
5772
-
5773
- - Bugfix for `finish --tag=TAG`
5774
-
5775
- ### 1.0.53
5776
-
5777
- #### NEW
5778
-
5779
- - `--tag` and `--bool` filtering for again/resume, cancel
5780
- - `--in` flag for `again`/`resume` to specify to which section the new
5781
- - Finish command accepts `--tag=` flag, finishing last entry
5782
- - `doing cancel` to end X tasks without completion date
5783
-
5784
- #### IMPROVED
5785
-
5786
- - Add `--no-color` option to view command
5787
- - Add `--tag` to show for compatibility
5788
-
5789
- #### FIXED
5790
-
5791
- - Error running finish without `--tag` flag
5792
- - `--archive` flag on finish, done, and cancel causing error
5793
-
5794
- ### 1.0.52
5795
-
5796
- #### NEW
5797
-
5798
- - Finish command accepts `--tag=` flag, finishing last entry
5799
-
5800
- #### FIXED
5801
-
5802
- - `--archive` flag on finish, done, and cancel causing error
5803
-
5804
- ### 1.0.49
5805
-
5806
- #### FIXED
5807
-
5808
- - Fix for missing date on @done tags
5809
-
5810
- ### 1.0.48
5811
-
5812
- #### FIXED
5813
-
5814
- - Fix confirmation dialog for `doing tag -a -c 0` (autotag all)
5815
-
5816
- ### 1.0.47
5817
-
5818
- #### IMPROVED
5819
-
5820
- - Remove check for file existence before attempting to run run_after script
5821
- - Don't autotag entries restarted with `again/resume`
5822
- - Add short flags (`-b`) for `--back` on all commands that support it
5823
-
5824
- ### 1.0.46
5825
-
5826
- #### IMPROVED
5827
-
5828
- - Code cleanup
5829
-
5830
- ### 1.0.45
5831
-
5832
- #### IMPROVED
5833
-
5834
- - Only execute run_after script if changes are written
5835
-
5836
- ### 1.0.44
5837
-
5838
- #### IMPROVED
5839
-
5840
- - Remove unnecessary console logging
5841
-
5842
- ### 1.0.43
5843
-
5844
- #### NEW
5845
-
5846
- - Add `again` command to repeat last entry without @done tag
5847
- - Add `run_after` configuration option to execute external script after any change
5848
-
5849
- ### 1.0.42
5850
-
5851
- #### FIXED
5852
-
5853
- - Fix note indentation in doing file
5854
-
5855
- ### 1.0.41
5856
-
5857
- #### FIXED
5858
-
5859
- - Fix for repeated backreferences in tag transform
5860
-
5861
- ### 1.0.40
5862
-
5863
- #### IMPROVED
5864
-
5865
- - Add `--tag_sort` to all subcommands with `--totals` option
5866
-
5867
- ### 1.0.39
5868
-
5869
- #### NEW
5870
-
5871
- - Tag transforms
5872
- - Option to sort tags by name in `--totals`
5873
-
5874
- ### 1.0.33
5875
-
5876
- #### FIXED
5877
-
5878
- - Gem dependency updates
5879
-
5880
- ### 1.0.30
5881
-
5882
- #### FIXED
5883
-
5884
- - Fix for array comparison error
5885
-
5886
- ### 1.0.29
5887
-
5888
- #### FIXED
5889
-
5890
- - Bugfixes
5891
-
5892
- ### 1.0.28
5893
-
5894
- #### IMPROVED
5895
-
5896
- - Global option `-x` to skip autotags and default_tags from global/local .doingrc
5897
- - Remove extra spaces when creating entry
5898
-
5899
- ### 1.0.27
5900
-
5901
- #### IMPROVED
5902
-
5903
- - More graceful writing of default config (~/.doingrc) on first run
5904
- - Repaired testing setup. Needs moar tests.
5905
-
5906
- ### 1.0.26
5907
-
5908
- #### IMPROVED
5909
-
5910
- - Add `--at` flag for `doing done`, e.g. `doing done --at=1:35pm --took=15m A new task I already finished`
5911
- - Allow decimal quantities when using natural language for hours or days, e.g. `--took=2.5h`
5912
- - Add `did` as a synonym for `done` subcommand
5913
-
5914
- ### 1.0.25
5915
-
5916
- #### IMPROVED
5917
-
5918
- #### IMPROVED
5919
-
5920
- - Smarter method of getting user $HOME
5921
- - Improved avoiding duplicate tags when autotagging
5922
- - Improved autotag reporting
5923
-
5924
- ### 1.0.24
5925
-
5926
- #### IMPROVED
5927
-
5928
- - `doing note` operates on whatever is most recent, not just the last note in Currently
5929
- - `doing tag` with no count specified operates on most recent entry in any section, not just Currently
5930
- - `doing tag` with a count greater than 1 requires a section to be specified
5931
- - Improved results reporting for `doing tag`
5932
- - When removing tag do a whole-word match to avoid removing part of a longer tag
5933
-
5934
- ### 1.0.23
5935
-
5936
- #### IMPROVED
5937
-
5938
- - Apply default_tags after autotagging to avoid tags triggering tags
5939
- - Set `doing recent` to default to All sections instead of Currently
5940
- - Fix error in time reporting
5941
- - improved y/n prompt for TTY
5942
-
5943
- ### 1.0.22
5944
-
5945
- #### IMPROVED
5946
-
5947
- - Allow cascading of local config files
5948
- - Allow `doing today` and `yesterday` to specify a section
5949
-
5950
- #### FIXED
5951
-
5952
- - Fix handling of "local" config files, allowing per-project configurations
5953
-
5954
- ### 1.0.21
5955
-
5956
- #### NEW
5957
-
5958
- - Add legitimate regex search capabilities
5959
- - Synonyms for grep (search) and now (next)
5960
-
5961
- #### FIXED
5962
-
5963
- - CSS fix
5964
-
5965
- ### 1.0.20
5966
-
5967
- #### NEW
5968
-
5969
- - New command `doing templates` to export default templates for HAML and CSS
5970
- - New config options under `html_template` for `haml` and `css`
5971
-
5972
- #### IMPROVED
5973
-
5974
- - Rewrite HTML export templates with responsive layout and typography
5975
- - Ability to customize the HTML output using HAML and CSS
5976
-
5977
- ### 1.0.19
5978
-
5979
- #### IMPROVED
5980
-
5981
- - For `doing note -e` include the entry title so you know what you're adding a note to
5982
- - For any other command that allows `-e` include a comment noting that anything after the first line creates a note
5983
- - Ignore # comments when parsing editor results
5984
- - Add a .md extension to the temp file passed to the editor so you can take advantage of any syntax highlighting and other features in your editor
5985
-
5986
- ### 1.0.18
5987
-
5988
- #### IMPROVED
5989
-
5990
- - Loosened up the template color resetting a bit more
5991
-
5992
- #### FIXED
5993
-
5994
- - Fix `undefined method [] for nil class` error in `doing view`
5995
-
5996
- ### 1.0.17
5997
-
5998
- #### NEW
5999
-
6000
- - Add `--stdout` global option to send reporting to STDOUT instead of STDERR (for use with LaunchBar et al)
6001
-
6002
- ### 1.0.16
6003
-
6004
- #### FIXED
6005
-
6006
- - Fixes overzealous color resetting
6007
-
6008
- ### 1.0.15
6009
-
6010
- #### FIXED
6011
-
6012
- - CLI/text totals block was outputting when HTML output was selected
6013
- - Have all template colors reset bold and background automatically when called
6014
-
6015
- ### 1.0.14
6016
-
6017
- #### IMPROVED
6018
-
6019
- - Fish completion
6020
- - views and sections subcommands have -c option to output single column
6021
- - Fix html title when tag_bool is NONE
6022
- - Fix @from tagging missing closing paren
6023
- - Fix tag coloring
6024
-
6025
- ### 1.0.13
6026
-
6027
- #### FIXED
6028
-
6029
- - Fix gsub error in doing meanwhile
6030
-
6031
- ### 1.0.8pre
6032
-
6033
- #### NEW
6034
-
6035
- - added doing on command
6036
- - Added autotagging to tag command
6037
- - JSON output option to view commands
6038
- - date filtering, improved date language
6039
- - let view templates define output format (csv, json, html, template)
6040
-
6041
- #### IMPROVED
6042
-
6043
- - add `%chompnote` template variable (item note with newlines and extra whitespace stripped)
6044
-
6045
- ### 1.0.7pre
6046
-
6047
- #### IMPROVED
6048
-
6049
- - Slightly fuzzier searching in the grep command
6050
- - cleaner exits, `only_timed` key for view configs
6051
- - making the note command append new notes better, and load existing notes in the editor if `-e` is called
6052
- - handle multiple tag input in `show` tag filter
6053
- - Global tag operations, better reporting
6054
-
6055
- #### FIXED
6056
-
6057
- - fix for `-v` option
6058
-
6059
- ### 1.0.4pre
6060
-
6061
- #### IMPROVED
6062
-
6063
- - Improved HTML output
6064
- - `--only_timed` option for view/show commands that only outputs items with elapsed timers (interval between start and done dates)
6065
- - add seconds for timed items in CSV output, run `--only_timed` before chopping off `--count #`
6066
- - fix for 1.8.7 `Dir.home` issue
6067
- - version bump
6068
- - don't show tag totals with zero times
6069
- - zsh completion for doing
6070
- - HTML styling
6071
- - `--only_timed` option
6072
- - added zsh completion file to `README.md`
6073
- - add zsh completion file
6074
-
6075
- ### 1.0.3pre
6076
-
6077
- #### IMPROVED
6078
-
6079
- - `done` command: making `--took` modify start time if `--back` isn't specified
6080
- - Cleaned up time totals, improved HTML output
6081
- - fixes for `--back` and `--took` parsing
6082
- - Adding more complete terminal reporting to archive command
6083
-
6084
- ### 1.0.0pre
6085
-
6086
- #### IMPROVED
6087
-
6088
- - Skipped ahead in the version numbering. Because I don't care.
6089
- - Added a `note` command and `--note` flags for entry creation commands
6090
-
6091
- ### 0.2.6pre
6092
-
6093
- #### IMPROVED
6094
-
6095
- - `--totals`, `--[no-]times`, `--output [csv,html]` options for `yesterday` command.
6096
- - Add tests for Darwin to hide OS X-only features on other systems
6097
- - `-f` flag to `now` command for finishing last task when starting a new one (Looks back for the last unfinished task in the list)
6098
- - `--took` option for `done` and `finish` for specifying intervals from the start date for the completion date
6099
- - Basic command line reporting
6100
- - `--auto` flag for `finish` and `done` that will automatically set the completion time to 1 minute before the next start time in the list. You can use it retroactively to add times to sequential todos.
6101
- - `doing grep` for searching by text or regex
6102
-
6103
- ### 0.2.5
6104
-
6105
- #### IMPROVED
6106
-
6107
- - Default to showing times #26, show totals even if no tags exist #27, fix indentation #29
6108
- - Add section label to archived tasks automatically, excepting `Currently` section
6109
- - Today outputs and backdate for finish
6110
- - HTML styling and fix for 1.8.7 HAML errors
6111
- - Look, HTML output! (`--output html`)
6112
- - Also, `--output csv`
6113
- - let doing `archive` function on all sections
6114
- - option to exclude date from _@done_,
6115
- - output newlines in sections and views
6116
- - Flagging (`doing mark`)
6117
- - fix for view/section guess error
6118
- - Adding tag filtering to archive command (`doing archive \@done`)
6119
- - `doing yesterday`
6120
- - `doing done -r` to remove last doing tag (optionally from `-s Section`)
6121
- - Add `-f` flag to specify alternate doing file
6122
- - `meanwhile` command
6123
-
6124
- ### 0.2.1
6125
-
6126
- #### IMPROVED
6127
-
6128
- - CSV output for show command (`--csv`)
6129
- - HTML output for show command (`--output html`)
6130
- - fuzzy searching for all commands that specify a view.
6131
- - In the terminal, you'll see "Assume you meant XXX" to show what match it found, but this is output to STDERR (and won't show up if you're redirecting the output or using it in GeekTool, etc.)
6132
- - `tags_color` in view config to highlight tags at the end of the lines. Can be set to any of the `%colors`.
6133
- - Basic time tracking.
6134
- - `-t` on `show` and `view` will turn on time calculations
6135
- - Intervals between timestamps and dated _@done_ tags are calculated for each line, if the tag exists.
6136
- - You must include a `%interval` token in the appropriate template for it to show
6137
- - _@start(date)_ tags can optionally be used to override the timestamp in the calculation
6138
- - Any other tags in the line have that line's total added to them
6139
- - Totals for tags can be displayed at the end of output with `--totals`
6140
-
6141
-
6142
- ### 0.2.0
6143
-
6144
- #### IMPROVED
6145
-
6146
- - `doing done` without argument tags last entry done
6147
- - `-a` archives them
6148
- - `doing finish` or `doing finish X` marks last X entries done
6149
- - `-a` archives them
6150
- - `doing tag tag1 [tag2]` tags last entry or `-c X` entries
6151
- - `doing tag -r tag1 [tag2]` removes said tag(s)
6152
- - custom views additions
6153
- - custom views can include `tags` and `tags_bool`
6154
- - `tags` is a space-separated list of tags to filter the results by
6155
- - `tags_bool` defines `AND` (all tags must exist), `OR` (any tag exists), or `NONE` (none of the tags exist)
6156
- - `order` key (`asc` or `desc`) defines output sort order by date
6157
- - section key can be set to `All` to combine sections
6158
- - `doing show` updates
6159
- - accepts `all` as a section
6160
- - arguments following section name are tags to filter by
6161
- - `-b` sets boolean (`AND`, `OR`, `NONE`) or (`ALL`, `ANY`, `NONE`) (default `OR`/`ANY`)
6162
- - use `-c X` to limit results
6163
- - use `-s` to set sort order (`asc` or `desc`)
6164
- - use `-a` to set age (`newest` or `oldest`)
6165
- - fuzzy section guessing when specified section isn't found
6166
- - fuzzy view guessing for `doing view` command
6167
-
6168
- ### 0.1.9
6169
-
6170
- #### IMPROVED
6171
-
6172
- - colors in templated output
6173
- - `open` command
6174
- - opens in the default app for file type
6175
- - `-a APPNAME` (`doing open -a TaskPaper`)
6176
- - `-b bundle_id` (`doing open -b com.sublimetext.3`)
6177
- - `-e` switch for `now`, `later` and `done` commands
6178
- - save a tmp file and open it in an editor
6179
- - allows multi-line entries, anything after first line is considered a note
6180
- - assumed when no input is provided (`doing now`)
6181
- - `doing views` shows all available custom views
6182
- - `doing view` without a view name will let you choose a view from a menu
6183
- - `doing archive` fixed so that `-k X` works to keep `X` number of entries in the section
6184
-
6185
- ### 0.1.7
6186
-
6187
- #### IMPROVED
6188
-
6189
- - colors in templated output
6190
- - `open` command
6191
- - opens in the default app for file type
6192
- - `-a APPNAME` (`doing open -a TaskPaper`)
6193
- - `-b bundle_id` (`doing open -b com.sublimetext.3`)
6194
- - `-e` switch for `now`, `later`, and `done` commands
6195
- - save a tmp file and open it in an editor
6196
- - allows multi-line entries, anything after first line is considered a note
6197
- - assumed when no input is provided (`doing now`)
6198
-