hemlock 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +3 -1
- data/README.md +16 -0
- data/bin/hemlock +7 -14
- data/hemlock.gemspec +2 -3
- data/lib/hemlock/csv_to_flashcards.rb +8 -2
- data/lib/hemlock/version.rb +1 -1
- data/spec/hemlock/csv_to_flashcards_spec.rb +12 -0
- metadata +4 -8
- data/README.rdoc +0 -6
- data/hemlock-0.0.3.gem +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6737a05a6e8f8ee6e9e6e69749ddfb1a182102eb
|
4
|
+
data.tar.gz: e1b43dfee77e7b83081d9d67c303ad705ff2bcc4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e19fffe9442b3c1f2ce5e69403ce7185a9f15d5e4e8ad1b79a1ef795a9f62b34a5726d43c73bbef29755bd389daf4722029592653d96f71ce7ecd740f3c8f6da
|
7
|
+
data.tar.gz: 7f6083d94fe4dfd458b86d903c90e39d0709d3f8c26b016be47c69b8527bac30918e42b3295c53e69e056333264976aa6e8f3677941d8f9f7d49477220cdc366
|
data/Gemfile.lock
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
hemlock (0.0.
|
4
|
+
hemlock (0.0.5)
|
5
5
|
gli (= 2.9.0)
|
6
|
+
rainbow (= 1.99.1)
|
6
7
|
|
7
8
|
GEM
|
8
9
|
remote: https://rubygems.org/
|
@@ -33,6 +34,7 @@ GEM
|
|
33
34
|
coderay (~> 1.0)
|
34
35
|
method_source (~> 0.8)
|
35
36
|
slop (~> 3.4)
|
37
|
+
rainbow (1.99.1)
|
36
38
|
rb-fsevent (0.9.4)
|
37
39
|
rb-inotify (0.9.3)
|
38
40
|
ffi (>= 0.5.0)
|
data/README.md
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
# Hemlock
|
2
|
+
|
3
|
+
```
|
4
|
+
gem install hemlock
|
5
|
+
hemlock drink ~/Dropbox/flashcards
|
6
|
+
```
|
7
|
+
or whatever folder contains .csv flashcards.
|
8
|
+
|
9
|
+
This was made by me for me to study for the bar. It basically asks me to repeat rules I need to know until they are ingrained in my memory.
|
10
|
+
|
11
|
+
## Usage
|
12
|
+
|
13
|
+
* Don't care about punctuation
|
14
|
+
|
15
|
+
## Why the name?
|
16
|
+
Hemlock is what Socrates was forced to drink to kill himself. As someone who detested writing, I thought I'd dedicate my forced writing practice to him. RIP old guy.
|
data/bin/hemlock
CHANGED
@@ -17,8 +17,13 @@ end
|
|
17
17
|
command :drink do |c|
|
18
18
|
c.desc "Crito, we owe a rooster to Asclepius. Please, don't forget to pay the debt."
|
19
19
|
|
20
|
-
c.action do
|
21
|
-
|
20
|
+
c.action do |global_options, options, args|
|
21
|
+
if args.empty?
|
22
|
+
puts printf Rainbow("Using Nick's Dropbox folder").blue
|
23
|
+
args = []
|
24
|
+
end
|
25
|
+
flashcards = Hemlock::CSVtoFlashcards.create_flashcards(args.join)
|
26
|
+
exit_now!('There are no flashcards in this folder') if flashcards.empty?
|
22
27
|
5.times do
|
23
28
|
seed = rand(0..(flashcards.length - 1))
|
24
29
|
flashcard = flashcards[seed]
|
@@ -45,16 +50,4 @@ command :drink do |c|
|
|
45
50
|
end
|
46
51
|
end
|
47
52
|
|
48
|
-
post do |global,command,options,args|
|
49
|
-
# Post logic here
|
50
|
-
# Use skips_post before a command to skip this
|
51
|
-
# block on that command only
|
52
|
-
end
|
53
|
-
|
54
|
-
on_error do |exception|
|
55
|
-
# Error logic here
|
56
|
-
# return false to skip default error handling
|
57
|
-
true
|
58
|
-
end
|
59
|
-
|
60
53
|
exit run(ARGV)
|
data/hemlock.gemspec
CHANGED
@@ -4,7 +4,7 @@ spec = Gem::Specification.new do |s|
|
|
4
4
|
s.name = 'hemlock'
|
5
5
|
s.version = Hemlock::VERSION
|
6
6
|
s.author = 'Nicholas Shook'
|
7
|
-
s.email = '
|
7
|
+
s.email = 'nicholas.shook@gmail.com'
|
8
8
|
s.homepage = 'https://github.com/shicholas/hemlock'
|
9
9
|
s.platform = Gem::Platform::RUBY
|
10
10
|
s.summary = 'Memorization through written repetition - Socrates is not amused'
|
@@ -12,8 +12,7 @@ spec = Gem::Specification.new do |s|
|
|
12
12
|
")
|
13
13
|
s.require_paths << 'lib'
|
14
14
|
s.has_rdoc = true
|
15
|
-
s.
|
16
|
-
s.rdoc_options << '--title' << 'hemlock' << '--main' << 'README.rdoc' << '-ri'
|
15
|
+
s.rdoc_options << '--title' << 'hemlock' << '--main' << '-ri'
|
17
16
|
s.bindir = 'bin'
|
18
17
|
s.executables << 'hemlock'
|
19
18
|
s.add_development_dependency('guard-rspec')
|
@@ -4,9 +4,11 @@ require 'csv'
|
|
4
4
|
module Hemlock
|
5
5
|
class CSVtoFlashcards
|
6
6
|
|
7
|
-
def self.create_flashcards(folder_name
|
7
|
+
def self.create_flashcards(folder_name)
|
8
|
+
folder_name = "~/Dropbox/bar_flashcards" if folder_name.empty?
|
9
|
+
folder_name = self.replace_tildes(folder_name)
|
8
10
|
flashcards = []
|
9
|
-
Dir[
|
11
|
+
Dir["#{folder_name}/*.csv"].each do |file|
|
10
12
|
flashcards << self.from_file(file)
|
11
13
|
end
|
12
14
|
return flashcards.flatten
|
@@ -19,5 +21,9 @@ module Hemlock
|
|
19
21
|
end
|
20
22
|
return flashcards
|
21
23
|
end
|
24
|
+
|
25
|
+
def self.replace_tildes(folder_name)
|
26
|
+
folder_name.sub(/~/, Dir.home)
|
27
|
+
end
|
22
28
|
end
|
23
29
|
end
|
data/lib/hemlock/version.rb
CHANGED
@@ -13,4 +13,16 @@ describe Hemlock::CSVtoFlashcards do
|
|
13
13
|
specify { expect(flashcards.first.question).to eq 'do' }
|
14
14
|
specify { expect(flashcards.last.answer).to eq 'a name I call myself' }
|
15
15
|
end
|
16
|
+
|
17
|
+
context '#create_flashcards' do
|
18
|
+
specify { expect(subject.create_flashcards(nil)).to_not eq [] }
|
19
|
+
end
|
20
|
+
|
21
|
+
context "#replace_tildes" do
|
22
|
+
let(:dropbox) { "~/dropbox/" }
|
23
|
+
let(:ohmy) { "~/ohmy~/" }
|
24
|
+
|
25
|
+
specify { expect(subject.replace_tildes(dropbox)).to eq "#{Dir.home}/dropbox/" }
|
26
|
+
specify { expect(subject.replace_tildes(ohmy)).to eq "#{Dir.home}/ohmy~/" }
|
27
|
+
end
|
16
28
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hemlock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nicholas Shook
|
@@ -53,22 +53,19 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 1.99.1
|
55
55
|
description:
|
56
|
-
email:
|
56
|
+
email: nicholas.shook@gmail.com
|
57
57
|
executables:
|
58
58
|
- hemlock
|
59
59
|
extensions: []
|
60
|
-
extra_rdoc_files:
|
61
|
-
- README.rdoc
|
62
|
-
- hemlock.rdoc
|
60
|
+
extra_rdoc_files: []
|
63
61
|
files:
|
64
62
|
- ".gitignore"
|
65
63
|
- ".rspec"
|
66
64
|
- Gemfile
|
67
65
|
- Gemfile.lock
|
68
66
|
- Guardfile
|
69
|
-
- README.
|
67
|
+
- README.md
|
70
68
|
- bin/hemlock
|
71
|
-
- hemlock-0.0.3.gem
|
72
69
|
- hemlock.gemspec
|
73
70
|
- hemlock.rdoc
|
74
71
|
- lib/hemlock.rb
|
@@ -88,7 +85,6 @@ rdoc_options:
|
|
88
85
|
- "--title"
|
89
86
|
- hemlock
|
90
87
|
- "--main"
|
91
|
-
- README.rdoc
|
92
88
|
- "-ri"
|
93
89
|
require_paths:
|
94
90
|
- lib
|
data/README.rdoc
DELETED
data/hemlock-0.0.3.gem
DELETED
Binary file
|