work-md 0.4.9 → 0.4.91
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.
- checksums.yaml +4 -4
- data/bin/work-md.rb +1 -1
- data/lib/work/md/cli.rb +2 -1
- data/lib/work/md/commands/daily.rb +70 -0
- data/lib/work/md/config.rb +9 -3
- data/lib/work/md/date_file.rb +3 -3
- data/lib/work/md/file.rb +1 -1
- data/lib/work/md/version.rb +1 -1
- data/lib/work/md.rb +1 -0
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a55beb3be3c6aa6e71b58f7522f0a78fb6093370f89b6a631a3478e62623078b
|
4
|
+
data.tar.gz: bdc684d99630d3b4b41f1f9cc2fe958bc607ef3907f75c300d504764890fdf18
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 528f98fa5f6275186ee7057dbcf165f8a5d30edfd012d2ae86fd394511055bbddc4f3405574e205bc60e742d8c8e2dbc031de864e2b669226e4c09d9128a006f
|
7
|
+
data.tar.gz: 291f52d9d0bfba1ddd6fa09fba96c54a44aeb012fcf4c664384c92c45ad97dbb74561da14da03e13508bc5ecc86eab5a64e80f4f0776ac4cc68cc9b61e6be189
|
data/bin/work-md.rb
CHANGED
data/lib/work/md/cli.rb
CHANGED
@@ -21,7 +21,7 @@ module Work
|
|
21
21
|
'tl' => 'tlast'
|
22
22
|
}.freeze
|
23
23
|
|
24
|
-
def self.execute(argv)
|
24
|
+
def self.execute(argv, development: false)
|
25
25
|
first_argv_argument = argv.shift
|
26
26
|
tag = fetch_argv_keys(argv)['tag']
|
27
27
|
|
@@ -70,6 +70,7 @@ module Work
|
|
70
70
|
'- work-md parse',
|
71
71
|
'- work-md plast',
|
72
72
|
'- work-md annotations',
|
73
|
+
'- work-md daily',
|
73
74
|
'- work-md open',
|
74
75
|
'- work-md config',
|
75
76
|
'',
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Work
|
4
|
+
module Md
|
5
|
+
module Commands
|
6
|
+
class Daily
|
7
|
+
class << self
|
8
|
+
def execute(_argv = [])
|
9
|
+
last_date = Date.today.prev_day
|
10
|
+
work_dir = Work::Md::Config.work_dir
|
11
|
+
last_file_name = nil
|
12
|
+
|
13
|
+
(1..160).each do
|
14
|
+
last_file_name = "#{last_date.strftime('%Y/%m/%d')}.md"
|
15
|
+
break if ::File.exist?("#{work_dir}/#{last_file_name}")
|
16
|
+
|
17
|
+
last_date = last_date.prev_day
|
18
|
+
end
|
19
|
+
|
20
|
+
today_file_name = Work::Md::DateFile.create_if_not_exist(DateTime.now)
|
21
|
+
|
22
|
+
parser_today = Work::Md::Parser::Engine.new
|
23
|
+
parser_today.add_file("#{work_dir}/#{today_file_name}")
|
24
|
+
parser_today.freeze
|
25
|
+
|
26
|
+
parser_last_day = Work::Md::Parser::Engine.new
|
27
|
+
parser_last_day.add_file("#{work_dir}/#{last_file_name}")
|
28
|
+
parser_last_day.freeze
|
29
|
+
|
30
|
+
daily_file_path = work_dir + '/daily.md'
|
31
|
+
::File.delete(daily_file_path) if ::File.exist? daily_file_path
|
32
|
+
|
33
|
+
t = Work::Md::Config.translations
|
34
|
+
|
35
|
+
ajust_line = lambda do |line|
|
36
|
+
get_first_line = ->(multiline_string) do
|
37
|
+
lines = multiline_string.split("\n")
|
38
|
+
first_line = lines.first
|
39
|
+
return first_line
|
40
|
+
end
|
41
|
+
|
42
|
+
get_first_line.call(line.sub('x]', '-').sub(']', '-'))
|
43
|
+
end
|
44
|
+
|
45
|
+
::File.open(daily_file_path, 'w+') do |f|
|
46
|
+
f.puts("📅 Daily\n\n")
|
47
|
+
f.puts("#{t[:did]}:\n")
|
48
|
+
parser_last_day.tasks.each do |task|
|
49
|
+
f.puts("#{ajust_line.call(task)}\n") if task != ' ]'
|
50
|
+
end
|
51
|
+
parser_last_day.meetings.each do |meeting|
|
52
|
+
f.puts("#{ajust_line.call(meeting)}\n") if meeting != ' ]'
|
53
|
+
end
|
54
|
+
f.puts("\n")
|
55
|
+
f.puts("#{t[:todo]}:\n")
|
56
|
+
parser_today.tasks.each do |task|
|
57
|
+
f.puts("#{ajust_line.call(task)}\n") if task != ' ]'
|
58
|
+
end
|
59
|
+
parser_today.meetings.each do |meeting|
|
60
|
+
f.puts("#{ajust_line.call(meeting)}\n") if meeting != ' ]'
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
Work::Md::File.open_in_editor([daily_file_path])
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
data/lib/work/md/config.rb
CHANGED
@@ -17,7 +17,9 @@ module Work
|
|
17
17
|
pomodoros: 'Pomodoros / Ciclos',
|
18
18
|
per_day: 'por dia',
|
19
19
|
total: 'total',
|
20
|
-
days_bars: 'Resumo'
|
20
|
+
days_bars: 'Resumo',
|
21
|
+
did: 'Feito',
|
22
|
+
todo: 'Planejado'
|
21
23
|
},
|
22
24
|
'en' =>
|
23
25
|
{
|
@@ -29,7 +31,9 @@ module Work
|
|
29
31
|
pomodoros: 'Pomodoros / Cycles',
|
30
32
|
per_day: 'per day',
|
31
33
|
total: 'all',
|
32
|
-
days_bars: 'Summary'
|
34
|
+
days_bars: 'Summary',
|
35
|
+
did: 'Done',
|
36
|
+
todo: 'To do'
|
33
37
|
},
|
34
38
|
'es' =>
|
35
39
|
{
|
@@ -41,7 +45,9 @@ module Work
|
|
41
45
|
pomodoros: 'Pomodoros / Ciclos',
|
42
46
|
per_day: 'por dÃa',
|
43
47
|
total: 'total',
|
44
|
-
days_bars: 'Abstracto'
|
48
|
+
days_bars: 'Abstracto',
|
49
|
+
did: 'Hecho',
|
50
|
+
todo: 'Planificado'
|
45
51
|
}
|
46
52
|
}.freeze
|
47
53
|
|
data/lib/work/md/date_file.rb
CHANGED
@@ -12,7 +12,7 @@ module Work
|
|
12
12
|
def self.list_file_paths_by_argv_query(argv, create_inexistent: false)
|
13
13
|
file_paths = []
|
14
14
|
|
15
|
-
argv_keys_to_files =
|
15
|
+
argv_keys_to_files = lambda { |argv_keys, acc_file_paths|
|
16
16
|
year = argv_keys['y'] || Time.new.year
|
17
17
|
month = argv_keys['m'] || Time.new.month
|
18
18
|
|
@@ -43,8 +43,8 @@ module Work
|
|
43
43
|
acc_file_paths
|
44
44
|
}
|
45
45
|
|
46
|
-
argv.join('#').split('#and#').map { |v| v.split(
|
47
|
-
argv_keys_to_files.(Work::Md::Cli.fetch_argv_keys(args), file_paths)
|
46
|
+
argv.join('#').split('#and#').map { |v| v.split('#') }.each do |args|
|
47
|
+
argv_keys_to_files.call(Work::Md::Cli.fetch_argv_keys(args), file_paths)
|
48
48
|
end
|
49
49
|
|
50
50
|
file_paths
|
data/lib/work/md/file.rb
CHANGED
@@ -6,7 +6,7 @@ module Work
|
|
6
6
|
def self.create_and_open_parsed(parser)
|
7
7
|
parser.freeze
|
8
8
|
|
9
|
-
parsed_file_path = Work::Md::Config.work_dir
|
9
|
+
parsed_file_path = "#{Work::Md::Config.work_dir}/parsed.md"
|
10
10
|
t = Work::Md::Config.translations
|
11
11
|
|
12
12
|
::File.delete(parsed_file_path) if ::File.exist? parsed_file_path
|
data/lib/work/md/version.rb
CHANGED
data/lib/work/md.rb
CHANGED
@@ -17,6 +17,7 @@ require_relative 'md/commands/delete'
|
|
17
17
|
require_relative 'md/parser/engine'
|
18
18
|
require_relative 'md/commands/parse'
|
19
19
|
require_relative 'md/commands/plast'
|
20
|
+
require_relative 'md/commands/daily'
|
20
21
|
require_relative 'md/cli'
|
21
22
|
require 'date'
|
22
23
|
require 'fileutils'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: work-md
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.91
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Henrique Fernandez Teixeira
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: tty-box
|
@@ -68,6 +68,7 @@ files:
|
|
68
68
|
- lib/work/md/cli.rb
|
69
69
|
- lib/work/md/commands/annotations.rb
|
70
70
|
- lib/work/md/commands/config.rb
|
71
|
+
- lib/work/md/commands/daily.rb
|
71
72
|
- lib/work/md/commands/delete.rb
|
72
73
|
- lib/work/md/commands/last.rb
|
73
74
|
- lib/work/md/commands/open.rb
|
@@ -103,7 +104,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
103
104
|
- !ruby/object:Gem::Version
|
104
105
|
version: '0'
|
105
106
|
requirements: []
|
106
|
-
rubygems_version: 3.
|
107
|
+
rubygems_version: 3.3.7
|
107
108
|
signing_key:
|
108
109
|
specification_version: 4
|
109
110
|
summary: Track your work activities, write annotations, recap what you did for a week,
|