wkcheck 0.0.2 → 0.0.3
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/wkcheck +16 -2
- data/lib/wkcheck.rb +29 -7
- data/wkcheck.gemspec +4 -3
- metadata +18 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9cf348abcab7fc7a871c41df6b38c2af361a3d6b
|
4
|
+
data.tar.gz: d5d8d98142696987d3be9660b0806715da1f754c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b45b50f1dcfa3ee1bc059f892c44b3bb337625f9b3e07e535486807bfaa8299069dec5d37f84d21d6432fb682af4a438a1797386de62c39b74c7b9e1f304c951
|
7
|
+
data.tar.gz: 0805c370e163c0ddf522fa434d9720e99ba8873868a9251561b41d68c45d94d4667d861f3fbffe8c5015318f50d27c2e67ceed2089bcd890268bb5711a1fad62
|
data/bin/wkcheck
CHANGED
@@ -10,7 +10,8 @@ opts = Slop.parse(help: true) do
|
|
10
10
|
banner "Usage: wkcheck [options]"
|
11
11
|
|
12
12
|
on "api-key=", "Saves your WaniKani API Key to #{WKCheck::CONFIG_FILE}"
|
13
|
-
|
13
|
+
on "q", "queue", "Displays your current study queue (new lessons / pending reviews)"
|
14
|
+
on "l", "level", "Displays your current level progression (radicals / Kanji)"
|
14
15
|
on "v", "version", "Show version number and quit" do
|
15
16
|
puts "wkcheck #{WKCheck::VERSION}"
|
16
17
|
exit
|
@@ -35,4 +36,17 @@ end
|
|
35
36
|
|
36
37
|
Wanikani.api_key = api_key
|
37
38
|
|
38
|
-
|
39
|
+
if opts.queue?
|
40
|
+
stats = WKCheck::Stats.new
|
41
|
+
puts stats.study_queue
|
42
|
+
exit
|
43
|
+
end
|
44
|
+
|
45
|
+
if opts.level?
|
46
|
+
stats = WKCheck::Stats.new
|
47
|
+
puts stats.level_progression
|
48
|
+
exit
|
49
|
+
end
|
50
|
+
|
51
|
+
# No flags / Invalid flags - Display the help.
|
52
|
+
puts opts.help
|
data/lib/wkcheck.rb
CHANGED
@@ -1,24 +1,46 @@
|
|
1
1
|
require 'wanikani'
|
2
|
+
require 'rainbow'
|
2
3
|
|
3
4
|
module WKCheck
|
4
|
-
VERSION = "0.0.
|
5
|
+
VERSION = "0.0.3"
|
5
6
|
CONFIG_FILE = "#{Dir.home}/.wkcheck.yml"
|
6
7
|
|
7
|
-
class
|
8
|
-
def
|
8
|
+
class Stats
|
9
|
+
def study_queue
|
9
10
|
queue = Wanikani::StudyQueue.queue
|
10
11
|
lessons = queue["lessons_available"]
|
11
12
|
reviews = queue["reviews_available"]
|
12
13
|
next_review_date = Time.at(queue["next_review_date"]).utc.strftime("%A, %B %-d at %-l:%M %p")
|
14
|
+
queue_message(lessons, reviews, next_review_date)
|
15
|
+
end
|
16
|
+
|
17
|
+
def level_progression
|
18
|
+
progress = Wanikani::Level.progression
|
19
|
+
progression_message(progress)
|
20
|
+
end
|
13
21
|
|
22
|
+
private
|
23
|
+
|
24
|
+
def queue_message(lessons, reviews, next_review_date)
|
14
25
|
if lessons.zero? && reviews.zero?
|
15
|
-
message = "You have no lessons or reviews now! You'll have some more on #{next_review_date}."
|
26
|
+
message = "You have no lessons or reviews now! You'll have some more on #{next_review_date.bright}.".color(:green)
|
16
27
|
else
|
17
|
-
|
18
|
-
|
28
|
+
lessons_msg = lessons.zero? ? "no".color(:green) : lessons.to_s.color(:red)
|
29
|
+
reviews_msg = reviews.zero? ? "no".color(:green) : reviews.to_s.color(:red)
|
30
|
+
message = "You have #{lessons_msg} lessons pending"
|
31
|
+
message += "\nYou have #{reviews_msg} reviews pending"
|
19
32
|
end
|
33
|
+
end
|
34
|
+
|
35
|
+
def progression_message(progress)
|
36
|
+
radicals_percent = (progress["radicals_progress"].to_f / progress["radicals_total"].to_f) * 100
|
37
|
+
kanji_percent = (progress["kanji_progress"].to_f / progress["kanji_total"].to_f) * 100
|
20
38
|
|
21
|
-
message
|
39
|
+
message = "Your progress for level #{progress["current_level"]}:\n".color(:green)
|
40
|
+
message += "#{progress["radicals_progress"]} out of #{progress["radicals_total"]} radicals".color(:cyan)
|
41
|
+
message += " (#{radicals_percent.round(1)}%)\n"
|
42
|
+
message += "#{progress["kanji_progress"]} out of #{progress["kanji_total"]} Kanji".color(:cyan)
|
43
|
+
message += " (#{kanji_percent.round(1)}%)\n"
|
22
44
|
end
|
23
45
|
end
|
24
46
|
end
|
data/wkcheck.gemspec
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = "wkcheck"
|
3
|
-
s.version = "0.0.
|
4
|
-
s.date = "2013-05-
|
3
|
+
s.version = "0.0.3"
|
4
|
+
s.date = "2013-05-22"
|
5
5
|
s.summary = "Check your WaniKani stats from the command line"
|
6
6
|
s.description = "Check your pending lessons and reviews of your WaniKani account (http://www.wanikani.com/) from the command line"
|
7
7
|
s.authors = ["Dennis Martinez"]
|
@@ -18,8 +18,9 @@ Gem::Specification.new do |s|
|
|
18
18
|
|
19
19
|
s.required_ruby_version = '>= 1.9.2'
|
20
20
|
|
21
|
-
s.add_runtime_dependency "wanikani", "~> 0.0.
|
21
|
+
s.add_runtime_dependency "wanikani", "~> 0.0.4"
|
22
22
|
s.add_runtime_dependency "slop", "~> 3.4.4"
|
23
|
+
s.add_runtime_dependency "rainbow", "~> 1.1.4"
|
23
24
|
|
24
25
|
s.add_development_dependency "aruba", "~> 0.5.2"
|
25
26
|
s.add_development_dependency "mocha", "~> 0.13.3"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wkcheck
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dennis Martinez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-05-
|
11
|
+
date: 2013-05-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: wanikani
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ~>
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.0.
|
19
|
+
version: 0.0.4
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ~>
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.0.
|
26
|
+
version: 0.0.4
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: slop
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - ~>
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 3.4.4
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rainbow
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 1.1.4
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 1.1.4
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: aruba
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|