diff --git a/CHANGELOG.md b/CHANGELOG.md index 8a518e6e..9e7772e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +### 2.1.84 + +2023-08-17 09:49 + +#### NEW + +- Shortdate format config options (run `doing config update` and see the new `shortdate_format` section in your config file) + ### 2.1.83 2023-07-01 12:49 diff --git a/Gemfile.lock b/Gemfile.lock index 21a177ac..5e3dc9cd 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - doing (2.1.83) + doing (2.1.84) chronic (~> 0.10, >= 0.10.2) deep_merge (~> 1.2, >= 1.2.1) gli (~> 2.20, >= 2.20.1) diff --git a/README.md b/README.md index 74642b7a..f3e3152f 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ _If you're one of the rare people like me who find this useful, feel free to -The current version of `doing` is 2.1.82. +The current version of `doing` is 2.1.83. Find all of the documentation in the [doing wiki][wiki]. diff --git a/docs/doc/Array.html b/docs/doc/Array.html index 5fc2a510..448d7f34 100644 --- a/docs/doc/Array.html +++ b/docs/doc/Array.html @@ -350,7 +350,7 @@

diff --git a/docs/doc/BooleanTermParser.html b/docs/doc/BooleanTermParser.html index 2519baf8..6a8d0230 100644 --- a/docs/doc/BooleanTermParser.html +++ b/docs/doc/BooleanTermParser.html @@ -105,7 +105,7 @@

Defined Under Namespace

diff --git a/docs/doc/BooleanTermParser/Clause.html b/docs/doc/BooleanTermParser/Clause.html index a9221793..fd7e92dc 100644 --- a/docs/doc/BooleanTermParser/Clause.html +++ b/docs/doc/BooleanTermParser/Clause.html @@ -283,7 +283,7 @@

diff --git a/docs/doc/BooleanTermParser/Operator.html b/docs/doc/BooleanTermParser/Operator.html index 4ab45be3..5165d116 100644 --- a/docs/doc/BooleanTermParser/Operator.html +++ b/docs/doc/BooleanTermParser/Operator.html @@ -162,7 +162,7 @@

diff --git a/docs/doc/BooleanTermParser/Query.html b/docs/doc/BooleanTermParser/Query.html index 0b9cd521..d2c619c3 100644 --- a/docs/doc/BooleanTermParser/Query.html +++ b/docs/doc/BooleanTermParser/Query.html @@ -407,7 +407,7 @@

diff --git a/docs/doc/BooleanTermParser/QueryParser.html b/docs/doc/BooleanTermParser/QueryParser.html index 7d90c49e..d4a5b915 100644 --- a/docs/doc/BooleanTermParser/QueryParser.html +++ b/docs/doc/BooleanTermParser/QueryParser.html @@ -125,7 +125,7 @@

Overview

diff --git a/docs/doc/BooleanTermParser/QueryTransformer.html b/docs/doc/BooleanTermParser/QueryTransformer.html index fa3118f8..b817091d 100644 --- a/docs/doc/BooleanTermParser/QueryTransformer.html +++ b/docs/doc/BooleanTermParser/QueryTransformer.html @@ -114,7 +114,7 @@ diff --git a/docs/doc/Doing.html b/docs/doc/Doing.html index 72556bfc..fcc4eada 100644 --- a/docs/doc/Doing.html +++ b/docs/doc/Doing.html @@ -122,7 +122,7 @@

VERSION =
-
'2.1.83'
+
'2.1.84'
@@ -138,7 +138,7 @@

diff --git a/docs/doc/Doing/ArrayCleanup.html b/docs/doc/Doing/ArrayCleanup.html index f0bb1f80..f27ff16c 100644 --- a/docs/doc/Doing/ArrayCleanup.html +++ b/docs/doc/Doing/ArrayCleanup.html @@ -306,7 +306,7 @@

diff --git a/docs/doc/Doing/ArrayNestedHash.html b/docs/doc/Doing/ArrayNestedHash.html index a30339f4..e934d7d7 100644 --- a/docs/doc/Doing/ArrayNestedHash.html +++ b/docs/doc/Doing/ArrayNestedHash.html @@ -188,7 +188,7 @@

diff --git a/docs/doc/Doing/ArrayTags.html b/docs/doc/Doing/ArrayTags.html index 23ce1922..9e9207fb 100644 --- a/docs/doc/Doing/ArrayTags.html +++ b/docs/doc/Doing/ArrayTags.html @@ -414,7 +414,7 @@

diff --git a/docs/doc/Doing/ByDayExport.html b/docs/doc/Doing/ByDayExport.html index 52945455..a50fdf7c 100644 --- a/docs/doc/Doing/ByDayExport.html +++ b/docs/doc/Doing/ByDayExport.html @@ -196,7 +196,7 @@

diff --git a/docs/doc/Doing/CSVExport.html b/docs/doc/Doing/CSVExport.html index 9669d1e5..2f2dcf3b 100644 --- a/docs/doc/Doing/CSVExport.html +++ b/docs/doc/Doing/CSVExport.html @@ -256,7 +256,7 @@

diff --git a/docs/doc/Doing/CalendarImport.html b/docs/doc/Doing/CalendarImport.html index f4707db6..5bff2079 100644 --- a/docs/doc/Doing/CalendarImport.html +++ b/docs/doc/Doing/CalendarImport.html @@ -222,7 +222,7 @@

diff --git a/docs/doc/Doing/Change.html b/docs/doc/Doing/Change.html index afedc28d..3f252922 100644 --- a/docs/doc/Doing/Change.html +++ b/docs/doc/Doing/Change.html @@ -678,7 +678,7 @@

diff --git a/docs/doc/Doing/Changes.html b/docs/doc/Doing/Changes.html index 84a9a2a2..6baf26e9 100644 --- a/docs/doc/Doing/Changes.html +++ b/docs/doc/Doing/Changes.html @@ -458,7 +458,7 @@

diff --git a/docs/doc/Doing/ChronifyArray.html b/docs/doc/Doing/ChronifyArray.html index 411216e8..29b20825 100644 --- a/docs/doc/Doing/ChronifyArray.html +++ b/docs/doc/Doing/ChronifyArray.html @@ -337,7 +337,7 @@

diff --git a/docs/doc/Doing/ChronifyNumeric.html b/docs/doc/Doing/ChronifyNumeric.html index 89f8a41d..95c6e894 100644 --- a/docs/doc/Doing/ChronifyNumeric.html +++ b/docs/doc/Doing/ChronifyNumeric.html @@ -261,7 +261,7 @@

diff --git a/docs/doc/Doing/ChronifyString.html b/docs/doc/Doing/ChronifyString.html index f8e7049d..872c5dd6 100644 --- a/docs/doc/Doing/ChronifyString.html +++ b/docs/doc/Doing/ChronifyString.html @@ -672,7 +672,7 @@

diff --git a/docs/doc/Doing/Color.html b/docs/doc/Doing/Color.html index c2e51bc5..c69d31e9 100644 --- a/docs/doc/Doing/Color.html +++ b/docs/doc/Doing/Color.html @@ -687,7 +687,7 @@

diff --git a/docs/doc/Doing/Completion.html b/docs/doc/Doing/Completion.html index 6dfa0747..c36f4bd6 100644 --- a/docs/doc/Doing/Completion.html +++ b/docs/doc/Doing/Completion.html @@ -540,7 +540,7 @@

diff --git a/docs/doc/Doing/Completion/BashCompletions.html b/docs/doc/Doing/Completion/BashCompletions.html index b2510cb7..f615133b 100644 --- a/docs/doc/Doing/Completion/BashCompletions.html +++ b/docs/doc/Doing/Completion/BashCompletions.html @@ -435,7 +435,7 @@

diff --git a/docs/doc/Doing/Completion/FigCompletions.html b/docs/doc/Doing/Completion/FigCompletions.html index b25ddffd..6e27ac44 100644 --- a/docs/doc/Doing/Completion/FigCompletions.html +++ b/docs/doc/Doing/Completion/FigCompletions.html @@ -435,7 +435,7 @@

- Generated on Sat Jul 1 13:11:47 2023 by + Generated on Thu Aug 17 09:53:02 2023 by yard 0.9.34 (ruby-3.2.0). diff --git a/docs/doc/Doing/Completion/FishCompletions.html b/docs/doc/Doing/Completion/FishCompletions.html index 5ae7e20f..805e793a 100644 --- a/docs/doc/Doing/Completion/FishCompletions.html +++ b/docs/doc/Doing/Completion/FishCompletions.html @@ -435,7 +435,7 @@

- Generated on Sat Jul 1 13:11:47 2023 by + Generated on Thu Aug 17 09:53:02 2023 by yard 0.9.34 (ruby-3.2.0). diff --git a/docs/doc/Doing/Completion/StringUtils.html b/docs/doc/Doing/Completion/StringUtils.html index 2c3ededa..4799011a 100644 --- a/docs/doc/Doing/Completion/StringUtils.html +++ b/docs/doc/Doing/Completion/StringUtils.html @@ -277,7 +277,7 @@

diff --git a/docs/doc/Doing/Completion/ZshCompletions.html b/docs/doc/Doing/Completion/ZshCompletions.html index 7f8ec8de..3b4f3f40 100644 --- a/docs/doc/Doing/Completion/ZshCompletions.html +++ b/docs/doc/Doing/Completion/ZshCompletions.html @@ -435,7 +435,7 @@

- Generated on Sat Jul 1 13:11:47 2023 by + Generated on Thu Aug 17 09:53:02 2023 by yard 0.9.34 (ruby-3.2.0). diff --git a/docs/doc/Doing/Configuration.html b/docs/doc/Doing/Configuration.html index d1fc753e..0117e93c 100644 --- a/docs/doc/Doing/Configuration.html +++ b/docs/doc/Doing/Configuration.html @@ -155,6 +155,15 @@

'timer_format' => 'text', 'interval_format' => 'text', + 'order' => 'asc', + + 'shortdate_format' => { + 'today' => '%_I:%M%P', + 'this_week' => '%a %_I:%M%P', + 'this_month' => '%m/%d %_I:%M%P', + 'older' => '%m/%d/%y %_I:%M%P' + }, + 'templates' => { 'default' => { 'date_format' => '%Y-%m-%d %H:%M', @@ -556,7 +565,7 @@

  • - #resolve_key_path(keypath, create: false, distance: 2) ⇒ Array + #resolve_key_path(keypath, create: false, distance: 2, exact: false) ⇒ Array @@ -1013,7 +1022,7 @@

    - #resolve_key_path(keypath, create: false, distance: 2) ⇒ Array + #resolve_key_path(keypath, create: false, distance: 2, exact: false) ⇒ Array @@ -1219,7 +1228,7 @@

    diff --git a/docs/doc/Doing/DayOneRenderer.html b/docs/doc/Doing/DayOneRenderer.html index ce81a48a..a66227c8 100644 --- a/docs/doc/Doing/DayOneRenderer.html +++ b/docs/doc/Doing/DayOneRenderer.html @@ -373,7 +373,7 @@

    diff --git a/docs/doc/Doing/DayoneExport.html b/docs/doc/Doing/DayoneExport.html index b9402185..b42278cd 100644 --- a/docs/doc/Doing/DayoneExport.html +++ b/docs/doc/Doing/DayoneExport.html @@ -280,7 +280,7 @@

    diff --git a/docs/doc/Doing/DoingExport.html b/docs/doc/Doing/DoingExport.html index 270f4351..78c867f2 100644 --- a/docs/doc/Doing/DoingExport.html +++ b/docs/doc/Doing/DoingExport.html @@ -196,7 +196,7 @@

    diff --git a/docs/doc/Doing/DoingImport.html b/docs/doc/Doing/DoingImport.html index ba9d841c..ec82af11 100644 --- a/docs/doc/Doing/DoingImport.html +++ b/docs/doc/Doing/DoingImport.html @@ -381,7 +381,7 @@

    diff --git a/docs/doc/Doing/Entry.html b/docs/doc/Doing/Entry.html index 45fe3098..e532f092 100644 --- a/docs/doc/Doing/Entry.html +++ b/docs/doc/Doing/Entry.html @@ -476,7 +476,7 @@

    diff --git a/docs/doc/Doing/Errors.html b/docs/doc/Doing/Errors.html index 9b0d11a7..db2ef9e8 100644 --- a/docs/doc/Doing/Errors.html +++ b/docs/doc/Doing/Errors.html @@ -181,7 +181,7 @@

    diff --git a/docs/doc/Doing/Errors/DoingNoTraceError.html b/docs/doc/Doing/Errors/DoingNoTraceError.html index 9e30b284..8c039f09 100644 --- a/docs/doc/Doing/Errors/DoingNoTraceError.html +++ b/docs/doc/Doing/Errors/DoingNoTraceError.html @@ -180,7 +180,7 @@

    diff --git a/docs/doc/Doing/Errors/DoingRuntimeError.html b/docs/doc/Doing/Errors/DoingRuntimeError.html index 471a40ea..56e6a8cb 100644 --- a/docs/doc/Doing/Errors/DoingRuntimeError.html +++ b/docs/doc/Doing/Errors/DoingRuntimeError.html @@ -180,7 +180,7 @@

    diff --git a/docs/doc/Doing/Errors/DoingStandardError.html b/docs/doc/Doing/Errors/DoingStandardError.html index 394d6c0b..c8d5c2aa 100644 --- a/docs/doc/Doing/Errors/DoingStandardError.html +++ b/docs/doc/Doing/Errors/DoingStandardError.html @@ -176,7 +176,7 @@

    diff --git a/docs/doc/Doing/Errors/EmptyInput.html b/docs/doc/Doing/Errors/EmptyInput.html index 093853e3..bde495ac 100644 --- a/docs/doc/Doing/Errors/EmptyInput.html +++ b/docs/doc/Doing/Errors/EmptyInput.html @@ -184,7 +184,7 @@

    diff --git a/docs/doc/Doing/Errors/HistoryLimitError.html b/docs/doc/Doing/Errors/HistoryLimitError.html index 4dece4d2..38a2f7e7 100644 --- a/docs/doc/Doing/Errors/HistoryLimitError.html +++ b/docs/doc/Doing/Errors/HistoryLimitError.html @@ -184,7 +184,7 @@

    diff --git a/docs/doc/Doing/Errors/InvalidPlugin.html b/docs/doc/Doing/Errors/InvalidPlugin.html index f4a9d4c5..43d973ab 100644 --- a/docs/doc/Doing/Errors/InvalidPlugin.html +++ b/docs/doc/Doing/Errors/InvalidPlugin.html @@ -184,7 +184,7 @@

    diff --git a/docs/doc/Doing/Errors/MissingBackupFile.html b/docs/doc/Doing/Errors/MissingBackupFile.html index 64e8c781..3cf3b477 100644 --- a/docs/doc/Doing/Errors/MissingBackupFile.html +++ b/docs/doc/Doing/Errors/MissingBackupFile.html @@ -184,7 +184,7 @@

    diff --git a/docs/doc/Doing/Errors/NoResults.html b/docs/doc/Doing/Errors/NoResults.html index fbbb1a15..0cef4972 100644 --- a/docs/doc/Doing/Errors/NoResults.html +++ b/docs/doc/Doing/Errors/NoResults.html @@ -184,7 +184,7 @@

    diff --git a/docs/doc/Doing/Errors/PluginException.html b/docs/doc/Doing/Errors/PluginException.html index 19cba53f..ec1839a4 100644 --- a/docs/doc/Doing/Errors/PluginException.html +++ b/docs/doc/Doing/Errors/PluginException.html @@ -238,7 +238,7 @@

    diff --git a/docs/doc/Doing/Errors/UserCancelled.html b/docs/doc/Doing/Errors/UserCancelled.html index 719d0d49..fe112100 100644 --- a/docs/doc/Doing/Errors/UserCancelled.html +++ b/docs/doc/Doing/Errors/UserCancelled.html @@ -184,7 +184,7 @@

    diff --git a/docs/doc/Doing/Errors/WrongCommand.html b/docs/doc/Doing/Errors/WrongCommand.html index c936caad..2c2d515f 100644 --- a/docs/doc/Doing/Errors/WrongCommand.html +++ b/docs/doc/Doing/Errors/WrongCommand.html @@ -184,7 +184,7 @@

    diff --git a/docs/doc/Doing/HTMLExport.html b/docs/doc/Doing/HTMLExport.html index ee351d18..af957e00 100644 --- a/docs/doc/Doing/HTMLExport.html +++ b/docs/doc/Doing/HTMLExport.html @@ -246,7 +246,7 @@

    diff --git a/docs/doc/Doing/Hooks.html b/docs/doc/Doing/Hooks.html index c8fe0b94..83c1731d 100644 --- a/docs/doc/Doing/Hooks.html +++ b/docs/doc/Doing/Hooks.html @@ -354,7 +354,7 @@

    diff --git a/docs/doc/Doing/Item.html b/docs/doc/Doing/Item.html index e017b791..6103d043 100644 --- a/docs/doc/Doing/Item.html +++ b/docs/doc/Doing/Item.html @@ -991,7 +991,7 @@

    diff --git a/docs/doc/Doing/ItemDates.html b/docs/doc/Doing/ItemDates.html index 6dc09729..c16a10d6 100644 --- a/docs/doc/Doing/ItemDates.html +++ b/docs/doc/Doing/ItemDates.html @@ -554,7 +554,7 @@

    diff --git a/docs/doc/Doing/ItemQuery.html b/docs/doc/Doing/ItemQuery.html index 1061a34c..b4391e48 100644 --- a/docs/doc/Doing/ItemQuery.html +++ b/docs/doc/Doing/ItemQuery.html @@ -685,7 +685,7 @@

    diff --git a/docs/doc/Doing/ItemState.html b/docs/doc/Doing/ItemState.html index 04bdf1e3..32f84fd8 100644 --- a/docs/doc/Doing/ItemState.html +++ b/docs/doc/Doing/ItemState.html @@ -377,7 +377,7 @@

    diff --git a/docs/doc/Doing/ItemTags.html b/docs/doc/Doing/ItemTags.html index e89cf585..a97c3330 100644 --- a/docs/doc/Doing/ItemTags.html +++ b/docs/doc/Doing/ItemTags.html @@ -488,7 +488,7 @@

    diff --git a/docs/doc/Doing/Items.html b/docs/doc/Doing/Items.html index 5d445524..27e4e4c1 100644 --- a/docs/doc/Doing/Items.html +++ b/docs/doc/Doing/Items.html @@ -1792,7 +1792,7 @@

    diff --git a/docs/doc/Doing/JSONExport.html b/docs/doc/Doing/JSONExport.html index 6fd722e5..f54247e8 100644 --- a/docs/doc/Doing/JSONExport.html +++ b/docs/doc/Doing/JSONExport.html @@ -212,7 +212,7 @@

    diff --git a/docs/doc/Doing/JSONImport.html b/docs/doc/Doing/JSONImport.html index cd7c64dc..5e959bfb 100644 --- a/docs/doc/Doing/JSONImport.html +++ b/docs/doc/Doing/JSONImport.html @@ -285,7 +285,7 @@

    diff --git a/docs/doc/Doing/Logger.html b/docs/doc/Doing/Logger.html index 495b8679..add8743e 100644 --- a/docs/doc/Doing/Logger.html +++ b/docs/doc/Doing/Logger.html @@ -1797,7 +1797,7 @@

    diff --git a/docs/doc/Doing/MarkdownExport.html b/docs/doc/Doing/MarkdownExport.html index 8f8095f2..fe9c32f7 100644 --- a/docs/doc/Doing/MarkdownExport.html +++ b/docs/doc/Doing/MarkdownExport.html @@ -256,7 +256,7 @@

    diff --git a/docs/doc/Doing/Note.html b/docs/doc/Doing/Note.html index 4a5dce8e..1a6004a5 100644 --- a/docs/doc/Doing/Note.html +++ b/docs/doc/Doing/Note.html @@ -747,7 +747,7 @@

    diff --git a/docs/doc/Doing/Pager.html b/docs/doc/Doing/Pager.html index 521bc334..683cb7f2 100644 --- a/docs/doc/Doing/Pager.html +++ b/docs/doc/Doing/Pager.html @@ -296,7 +296,7 @@

    diff --git a/docs/doc/Doing/Plugins.html b/docs/doc/Doing/Plugins.html index 8b3c403f..40874844 100644 --- a/docs/doc/Doing/Plugins.html +++ b/docs/doc/Doing/Plugins.html @@ -1340,7 +1340,7 @@

    diff --git a/docs/doc/Doing/Prompt.html b/docs/doc/Doing/Prompt.html index 9cbb844a..14268b12 100644 --- a/docs/doc/Doing/Prompt.html +++ b/docs/doc/Doing/Prompt.html @@ -326,7 +326,7 @@

    diff --git a/docs/doc/Doing/PromptChoose.html b/docs/doc/Doing/PromptChoose.html index dc222547..c9eb97cb 100644 --- a/docs/doc/Doing/PromptChoose.html +++ b/docs/doc/Doing/PromptChoose.html @@ -474,7 +474,7 @@

    diff --git a/docs/doc/Doing/PromptFZF.html b/docs/doc/Doing/PromptFZF.html index b4e41409..b9df9005 100644 --- a/docs/doc/Doing/PromptFZF.html +++ b/docs/doc/Doing/PromptFZF.html @@ -381,7 +381,7 @@

    diff --git a/docs/doc/Doing/PromptInput.html b/docs/doc/Doing/PromptInput.html index 641ef877..175e704e 100644 --- a/docs/doc/Doing/PromptInput.html +++ b/docs/doc/Doing/PromptInput.html @@ -562,7 +562,7 @@

    diff --git a/docs/doc/Doing/PromptSTD.html b/docs/doc/Doing/PromptSTD.html index 0cce00c3..33cc92ae 100644 --- a/docs/doc/Doing/PromptSTD.html +++ b/docs/doc/Doing/PromptSTD.html @@ -283,7 +283,7 @@

    diff --git a/docs/doc/Doing/PromptYN.html b/docs/doc/Doing/PromptYN.html index cc2a3815..cc66e048 100644 --- a/docs/doc/Doing/PromptYN.html +++ b/docs/doc/Doing/PromptYN.html @@ -227,7 +227,7 @@

    diff --git a/docs/doc/Doing/Section.html b/docs/doc/Doing/Section.html index 30ce6ce6..b1211e2f 100644 --- a/docs/doc/Doing/Section.html +++ b/docs/doc/Doing/Section.html @@ -400,7 +400,7 @@

    diff --git a/docs/doc/Doing/StringHighlight.html b/docs/doc/Doing/StringHighlight.html index 824dd8e8..2d60e0b0 100644 --- a/docs/doc/Doing/StringHighlight.html +++ b/docs/doc/Doing/StringHighlight.html @@ -523,7 +523,7 @@

    diff --git a/docs/doc/Doing/StringNormalize.html b/docs/doc/Doing/StringNormalize.html index a597a3d4..ae0b0520 100644 --- a/docs/doc/Doing/StringNormalize.html +++ b/docs/doc/Doing/StringNormalize.html @@ -1036,7 +1036,7 @@

    diff --git a/docs/doc/Doing/StringQuery.html b/docs/doc/Doing/StringQuery.html index 35eb16b8..3349122f 100644 --- a/docs/doc/Doing/StringQuery.html +++ b/docs/doc/Doing/StringQuery.html @@ -771,7 +771,7 @@

    diff --git a/docs/doc/Doing/StringTags.html b/docs/doc/Doing/StringTags.html index 0a0fccb8..e38c74c8 100644 --- a/docs/doc/Doing/StringTags.html +++ b/docs/doc/Doing/StringTags.html @@ -874,7 +874,7 @@

    diff --git a/docs/doc/Doing/StringTransform.html b/docs/doc/Doing/StringTransform.html index 5b5af66f..a69facf4 100644 --- a/docs/doc/Doing/StringTransform.html +++ b/docs/doc/Doing/StringTransform.html @@ -589,7 +589,7 @@

    diff --git a/docs/doc/Doing/StringTruncate.html b/docs/doc/Doing/StringTruncate.html index 9bcc8918..6311b417 100644 --- a/docs/doc/Doing/StringTruncate.html +++ b/docs/doc/Doing/StringTruncate.html @@ -438,7 +438,7 @@

    diff --git a/docs/doc/Doing/StringURL.html b/docs/doc/Doing/StringURL.html index 2fc28f88..80afaa24 100644 --- a/docs/doc/Doing/StringURL.html +++ b/docs/doc/Doing/StringURL.html @@ -399,7 +399,7 @@

    diff --git a/docs/doc/Doing/SymbolNormalize.html b/docs/doc/Doing/SymbolNormalize.html index 94e8d065..326061c2 100644 --- a/docs/doc/Doing/SymbolNormalize.html +++ b/docs/doc/Doing/SymbolNormalize.html @@ -331,7 +331,7 @@

    diff --git a/docs/doc/Doing/TaskPaperExport.html b/docs/doc/Doing/TaskPaperExport.html index daf78722..54972ede 100644 --- a/docs/doc/Doing/TaskPaperExport.html +++ b/docs/doc/Doing/TaskPaperExport.html @@ -212,7 +212,7 @@

    diff --git a/docs/doc/Doing/TemplateExport.html b/docs/doc/Doing/TemplateExport.html index 9f102ed9..008cf5eb 100644 --- a/docs/doc/Doing/TemplateExport.html +++ b/docs/doc/Doing/TemplateExport.html @@ -239,7 +239,7 @@

    diff --git a/docs/doc/Doing/TemplateString.html b/docs/doc/Doing/TemplateString.html index 0bea5a13..0c961e44 100644 --- a/docs/doc/Doing/TemplateString.html +++ b/docs/doc/Doing/TemplateString.html @@ -802,7 +802,7 @@

    diff --git a/docs/doc/Doing/TimingImport.html b/docs/doc/Doing/TimingImport.html index d73dcbf1..9f6e9335 100644 --- a/docs/doc/Doing/TimingImport.html +++ b/docs/doc/Doing/TimingImport.html @@ -275,7 +275,7 @@

    diff --git a/docs/doc/Doing/Types.html b/docs/doc/Doing/Types.html index fa583e93..0d92e420 100644 --- a/docs/doc/Doing/Types.html +++ b/docs/doc/Doing/Types.html @@ -241,7 +241,7 @@

    diff --git a/docs/doc/Doing/Util.html b/docs/doc/Doing/Util.html index 101755bb..ca6f157b 100644 --- a/docs/doc/Doing/Util.html +++ b/docs/doc/Doing/Util.html @@ -982,7 +982,7 @@

    diff --git a/docs/doc/Doing/Util/Backup.html b/docs/doc/Doing/Util/Backup.html index 5b95fa0c..8774597e 100644 --- a/docs/doc/Doing/Util/Backup.html +++ b/docs/doc/Doing/Util/Backup.html @@ -684,7 +684,7 @@

    diff --git a/docs/doc/Doing/Version.html b/docs/doc/Doing/Version.html index 8f450ce1..b6d4dd97 100644 --- a/docs/doc/Doing/Version.html +++ b/docs/doc/Doing/Version.html @@ -513,7 +513,7 @@

    diff --git a/docs/doc/Doing/WWID.html b/docs/doc/Doing/WWID.html index f3833f00..8bec648d 100644 --- a/docs/doc/Doing/WWID.html +++ b/docs/doc/Doing/WWID.html @@ -5155,7 +5155,7 @@

    diff --git a/docs/doc/FalseClass.html b/docs/doc/FalseClass.html index 68de8d83..57a31410 100644 --- a/docs/doc/FalseClass.html +++ b/docs/doc/FalseClass.html @@ -235,7 +235,7 @@

    diff --git a/docs/doc/GLI.html b/docs/doc/GLI.html index fdc3f25d..1549780c 100644 --- a/docs/doc/GLI.html +++ b/docs/doc/GLI.html @@ -107,7 +107,7 @@

    Defined Under Namespace

    diff --git a/docs/doc/GLI/Commands.html b/docs/doc/GLI/Commands.html index 246677fa..061ae156 100644 --- a/docs/doc/GLI/Commands.html +++ b/docs/doc/GLI/Commands.html @@ -107,7 +107,7 @@

    Defined Under Namespace

    diff --git a/docs/doc/GLI/Commands/Help.html b/docs/doc/GLI/Commands/Help.html index d6cbdb4b..af66205f 100644 --- a/docs/doc/GLI/Commands/Help.html +++ b/docs/doc/GLI/Commands/Help.html @@ -175,7 +175,7 @@

    diff --git a/docs/doc/GLI/Commands/MarkdownDocumentListener.html b/docs/doc/GLI/Commands/MarkdownDocumentListener.html index 0f971c64..2b9351b2 100644 --- a/docs/doc/GLI/Commands/MarkdownDocumentListener.html +++ b/docs/doc/GLI/Commands/MarkdownDocumentListener.html @@ -753,7 +753,7 @@

    diff --git a/docs/doc/Hash.html b/docs/doc/Hash.html index b4cc89a2..598f82cf 100644 --- a/docs/doc/Hash.html +++ b/docs/doc/Hash.html @@ -1000,7 +1000,7 @@

    diff --git a/docs/doc/Numeric.html b/docs/doc/Numeric.html index 8268508c..254427d7 100644 --- a/docs/doc/Numeric.html +++ b/docs/doc/Numeric.html @@ -214,7 +214,7 @@

    diff --git a/docs/doc/Object.html b/docs/doc/Object.html index 89c0b654..441c9092 100644 --- a/docs/doc/Object.html +++ b/docs/doc/Object.html @@ -193,7 +193,7 @@

    diff --git a/docs/doc/PhraseParser.html b/docs/doc/PhraseParser.html index 7a7fe8be..87125ff8 100644 --- a/docs/doc/PhraseParser.html +++ b/docs/doc/PhraseParser.html @@ -105,7 +105,7 @@

    Defined Under Namespace

    diff --git a/docs/doc/PhraseParser/Operator.html b/docs/doc/PhraseParser/Operator.html index 98a98361..835bda5e 100644 --- a/docs/doc/PhraseParser/Operator.html +++ b/docs/doc/PhraseParser/Operator.html @@ -162,7 +162,7 @@

    diff --git a/docs/doc/PhraseParser/PhraseClause.html b/docs/doc/PhraseParser/PhraseClause.html index a50b18cc..5eddee1f 100644 --- a/docs/doc/PhraseParser/PhraseClause.html +++ b/docs/doc/PhraseParser/PhraseClause.html @@ -293,7 +293,7 @@

    diff --git a/docs/doc/PhraseParser/Query.html b/docs/doc/PhraseParser/Query.html index 58721306..bd4a2f49 100644 --- a/docs/doc/PhraseParser/Query.html +++ b/docs/doc/PhraseParser/Query.html @@ -485,7 +485,7 @@

    diff --git a/docs/doc/PhraseParser/QueryParser.html b/docs/doc/PhraseParser/QueryParser.html index 8b2e1cb6..d50066e1 100644 --- a/docs/doc/PhraseParser/QueryParser.html +++ b/docs/doc/PhraseParser/QueryParser.html @@ -126,7 +126,7 @@

    Overview

    diff --git a/docs/doc/PhraseParser/QueryTransformer.html b/docs/doc/PhraseParser/QueryTransformer.html index b56767f4..74c6048f 100644 --- a/docs/doc/PhraseParser/QueryTransformer.html +++ b/docs/doc/PhraseParser/QueryTransformer.html @@ -114,7 +114,7 @@ diff --git a/docs/doc/PhraseParser/TermClause.html b/docs/doc/PhraseParser/TermClause.html index 22a4edb0..a0ae68af 100644 --- a/docs/doc/PhraseParser/TermClause.html +++ b/docs/doc/PhraseParser/TermClause.html @@ -283,7 +283,7 @@

    diff --git a/docs/doc/Status.html b/docs/doc/Status.html index 9a0ae9f4..4acf93e8 100644 --- a/docs/doc/Status.html +++ b/docs/doc/Status.html @@ -316,7 +316,7 @@

    diff --git a/docs/doc/String.html b/docs/doc/String.html index 5d0ec239..b809e7aa 100644 --- a/docs/doc/String.html +++ b/docs/doc/String.html @@ -679,7 +679,7 @@

    diff --git a/docs/doc/Symbol.html b/docs/doc/Symbol.html index 79c16519..e2c256de 100644 --- a/docs/doc/Symbol.html +++ b/docs/doc/Symbol.html @@ -127,7 +127,7 @@

    Methods included from - Generated on Sat Jul 1 13:11:47 2023 by + Generated on Thu Aug 17 09:53:01 2023 by yard 0.9.34 (ruby-3.2.0). diff --git a/docs/doc/Time.html b/docs/doc/Time.html index 01e9c170..4874edb4 100644 --- a/docs/doc/Time.html +++ b/docs/doc/Time.html @@ -411,7 +411,7 @@

    diff --git a/docs/doc/TrueClass.html b/docs/doc/TrueClass.html index 8e791630..26a4c7cd 100644 --- a/docs/doc/TrueClass.html +++ b/docs/doc/TrueClass.html @@ -235,7 +235,7 @@

    diff --git a/docs/doc/_index.html b/docs/doc/_index.html index 8aa8eb5e..4d07e303 100644 --- a/docs/doc/_index.html +++ b/docs/doc/_index.html @@ -961,7 +961,7 @@

    Namespace Listing A-Z

    diff --git a/docs/doc/file.README.html b/docs/doc/file.README.html index f86986c8..05d68b92 100644 --- a/docs/doc/file.README.html +++ b/docs/doc/file.README.html @@ -71,7 +71,7 @@ -

    The current version of doing is <!--VER-->2.1.82<!--END VER-->.

    +

    The current version of doing is <!--VER-->2.1.83<!--END VER-->.

    Find all of the documentation in the doing wiki.

    @@ -153,7 +153,7 @@

    Changelog

    diff --git a/docs/doc/index.html b/docs/doc/index.html index cc8cf06f..bfef9a66 100644 --- a/docs/doc/index.html +++ b/docs/doc/index.html @@ -71,7 +71,7 @@ -

    The current version of doing is <!--VER-->2.1.82<!--END VER-->.

    +

    The current version of doing is <!--VER-->2.1.83<!--END VER-->.

    Find all of the documentation in the doing wiki.

    @@ -153,7 +153,7 @@

    Changelog

    diff --git a/docs/doc/top-level-namespace.html b/docs/doc/top-level-namespace.html index 295a7c93..603cd73e 100644 --- a/docs/doc/top-level-namespace.html +++ b/docs/doc/top-level-namespace.html @@ -216,7 +216,7 @@

    diff --git a/doing.rdoc b/doing.rdoc index 238c0ece..56e0532d 100644 --- a/doing.rdoc +++ b/doing.rdoc @@ -5,7 +5,7 @@ record of what you've been doing, complete with tag-based time tracking. The command line tool allows you to add entries, annotate with tags and notes, and view your entries with myriad options, with a focus on a "natural" language syntax. -v2.1.83 +v2.1.84 === Global Options === --config_file arg diff --git a/lib/doing.rb b/lib/doing.rb index 6c9b17f8..7ec6d248 100644 --- a/lib/doing.rb +++ b/lib/doing.rb @@ -106,14 +106,14 @@ def original_options ## @param default A default value to return if the ## provided path returns nil result ## - def setting(keypath, default = nil) + def setting(keypath, default = nil, exact: false) cfg = config.settings case keypath when Array cfg.dig(*keypath) || default when String unless keypath =~ /^[.*]?$/ - real_path = config.resolve_key_path(keypath, create: false) + real_path = config.resolve_key_path(keypath, create: false, distance: 0, exact: exact) return default unless real_path&.count&.positive? cfg = cfg.dig(*real_path) diff --git a/lib/doing/configuration.rb b/lib/doing/configuration.rb index 66f87997..fbb32262 100644 --- a/lib/doing/configuration.rb +++ b/lib/doing/configuration.rb @@ -44,6 +44,15 @@ def force_answer 'timer_format' => 'text', 'interval_format' => 'text', + 'order' => 'asc', + + 'shortdate_format' => { + 'today' => '%_I:%M%P', + 'this_week' => '%a %_I:%M%P', + 'this_month' => '%m/%d %_I:%M%P', + 'older' => '%m/%d/%y %_I:%M%P' + }, + 'templates' => { 'default' => { 'date_format' => '%Y-%m-%d %H:%M', @@ -200,7 +209,7 @@ def fetch(*path, default) ## matched, first match wins) ## @return [Array] ordered array of resolved keys ## - def resolve_key_path(keypath, create: false, distance: 2) + def resolve_key_path(keypath, create: false, distance: 2, exact: false) cfg = @settings real_path = [] unless keypath =~ /^[.*]?$/ @@ -211,7 +220,11 @@ def resolve_key_path(keypath, create: false, distance: 2) new_cfg = nil if cfg.is_a?(Hash) - matches = cfg.select { |key, val| key =~ path.to_rx(distance: distance) } + matches = if exact + cfg.select { |key, _| key == path } + else + cfg.select { |key, _| key =~ path.to_rx(distance: distance) } + end if matches.count.positive? shortest = matches.keys.group_by(&:length).min.last[0] real_path << shortest diff --git a/lib/doing/template_string.rb b/lib/doing/template_string.rb index ba1817d0..713c451c 100644 --- a/lib/doing/template_string.rb +++ b/lib/doing/template_string.rb @@ -116,7 +116,8 @@ def fill(placeholder, value, wrap_width: 0, color: '', tags_color: '', reset: '' pad = m['width'].to_i mark = m['mchar'] || '' if placeholder == 'shortdate' && m['width'].nil? - pad = 13 + fmt_string = Doing.setting('shortdate_format.older', '%m/%d/%y %_I:%M%P', exact: true) + pad = Date.today.strftime(fmt_string).length end indent = nil if m['ichar'] diff --git a/lib/doing/time.rb b/lib/doing/time.rb index ef0ceaca..5179487b 100644 --- a/lib/doing/time.rb +++ b/lib/doing/time.rb @@ -12,13 +12,13 @@ class ::Time # def relative_date if self > Date.today.to_time - strftime('%_I:%M%P') + strftime(Doing.setting('shortdate_format.today', '%_I:%M%P', exact: true)) elsif self > (Date.today - 6).to_time - strftime('%a %_I:%M%P') + strftime(Doing.setting('shortdate_format.this_week', '%a %_I:%M%P', exact: true)) elsif year == Date.today.year || (year + 1 == Date.today.year && month > Date.today.month) - strftime('%m/%d %_I:%M%P') + strftime(Doing.setting('shortdate_format.this_month', '%m/%d %_I:%M%P', exact: true)) else - strftime('%m/%d/%y %_I:%M%P') + strftime(Doing.setting('shortdate_format.older', '%m/%d/%y %_I:%M%P', exact: true)) end end diff --git a/lib/doing/version.rb b/lib/doing/version.rb index a324b5f1..e87dacb4 100644 --- a/lib/doing/version.rb +++ b/lib/doing/version.rb @@ -1,3 +1,3 @@ module Doing - VERSION = '2.1.83' + VERSION = '2.1.84' end