fewald-worklog 0.2.26 → 0.2.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/.version +1 -1
  3. data/lib/cli.rb +8 -2
  4. data/lib/worklog.rb +17 -0
  5. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 36b9165b88874b753ed10bbb1a337626257db5de478fc56c15a475212836879a
4
- data.tar.gz: fe0e5c279c1fb166876892e9642f85761bc6fdbd7d6e24c14b707bd34bd99668
3
+ metadata.gz: 1f5d2936c205d022b512f27dba2b197c789a718be8e16e2f16a8e16a1ca9b845
4
+ data.tar.gz: ff15975240c49b93d59796e8f20ac9e1eb1afde3d6b1c48468a592e184cf4d02
5
5
  SHA512:
6
- metadata.gz: 5a9fafe519688f3b9258aa9b5d433dbec01ea6259fc199e3e302791acfb64a3c2159081b4d749ad86b118da0c5fbca990170c9b42dc986ef0e8bf22ec9e81ddf
7
- data.tar.gz: a15669d9d071af3ef4124f0c60de3d41a47fb6c1684b90a523c35cfe53576ef9eca9030bed21f8c2b095279327ed84b6e1bde062beb428225bae888f65fc65f7
6
+ metadata.gz: 5a23fd91469659a76fd9bd6d0bb7d4479f60527bb2dd9a32e5c46d37d39615b44232dcab5b223dbb072e3a26d203b13efdfb8af8584fd4feca8e943dab8c98fe
7
+ data.tar.gz: 4648476ae4f62e5a0dce5ac5cd3eecf2f1e1519783962d999e6891fe197733f45e8aa3cd410159ed2b1265fee5a348d9369bcc7e91e653521075676c530bb974
data/.version CHANGED
@@ -1 +1 @@
1
- 0.2.26
1
+ 0.2.27
data/lib/cli.rb CHANGED
@@ -105,9 +105,15 @@ class WorklogCLI < Thor
105
105
  end
106
106
 
107
107
  desc 'projects', 'Show all projects defined in the work log'
108
- def projects(options = {})
108
+ option :oneline, type: :boolean, default: false, desc: 'Show only project titles and keys in a single line format'
109
+ def projects
109
110
  worklog = Worklog::Worklog.new
110
- worklog.projects(options)
111
+
112
+ if options[:oneline]
113
+ worklog.projects_oneline(options)
114
+ else
115
+ worklog.projects(options)
116
+ end
111
117
  end
112
118
 
113
119
  desc 'tags', 'Show all tags used in the work log'
data/lib/worklog.rb CHANGED
@@ -200,6 +200,23 @@ module Worklog
200
200
  end
201
201
  end
202
202
 
203
+ # Show all projects, one line per project.
204
+ # This is a compact view showing only project names and keys.
205
+ def projects_oneline(_options = {})
206
+ project_storage = ProjectStorage.new(@config)
207
+ projects = project_storage.load_projects
208
+
209
+ # Find longest project name for formatting
210
+ max_len = projects.values.map { |p| p.name.length }.max || 0
211
+
212
+ projects.each_value do |project|
213
+ puts "#{Rainbow(project.name.ljust(max_len)).gold} #{project.key}"
214
+ end
215
+ end
216
+
217
+ # Show all projects with details and recent activity.
218
+ # This method loads all projects and their associated log entries.
219
+ # It also calculates the last activity date for each project based on log entries.
203
220
  def projects(_options = {})
204
221
  project_storage = ProjectStorage.new(@config)
205
222
  projects = project_storage.load_projects
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fewald-worklog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.26
4
+ version: 0.2.27
5
5
  platform: ruby
6
6
  authors:
7
7
  - Friedrich Ewald