ankirb 0.4.0 → 0.4.1
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/Rakefile +11 -0
- data/lib/ankirb/anki/card.rb +20 -4
- data/lib/ankirb/anki/deck.rb +6 -2
- data/lib/ankirb/export/apkg.rb +4 -4
- data/lib/ankirb/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c00eab04e2fb61ba26cce1eff7ae2bf507d4c9ee
|
4
|
+
data.tar.gz: 59cab4bf81b2a06e25d44eb94f42b899ced8b382
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6e6720f27ad14f7a3f27253bb839c8e70bc55e9fe422de336e8cb46aaa491fb2a9643b267fbf8539410827570b6b90601f27053b4e84fbbdea1fb4d82fd04e38
|
7
|
+
data.tar.gz: eae980b79aaecd6d0be1cc4cb802d491d7d48a80662aa969de70ff3b2b529e14b9abaf37cdfcd0e217d059f52fd4c93adce08656d523298a0464e1250f7e5f43
|
data/Rakefile
CHANGED
@@ -1,10 +1,21 @@
|
|
1
1
|
require "bundler/gem_tasks"
|
2
2
|
require "rake/testtask"
|
3
3
|
|
4
|
+
gemspec_file = Dir['*.gemspec'].first
|
5
|
+
gemspec = eval File.read(gemspec_file), binding, gemspec_file
|
6
|
+
info = "#{gemspec.name} | #{gemspec.version} | " \
|
7
|
+
"#{gemspec.runtime_dependencies.size} dependencies | " \
|
8
|
+
"#{gemspec.files.size} files"
|
9
|
+
|
4
10
|
Rake::TestTask.new(:test) do |t|
|
5
11
|
t.libs << "test"
|
6
12
|
t.libs << "lib"
|
7
13
|
t.test_files = FileList['test/**/*_test.rb']
|
8
14
|
end
|
9
15
|
|
16
|
+
desc "#{gemspec.name} | IRB"
|
17
|
+
task :irb do
|
18
|
+
exec "irb -I ./lib -r #{gemspec.name.gsub '-','/'}"
|
19
|
+
end
|
20
|
+
|
10
21
|
task :default => :test
|
data/lib/ankirb/anki/card.rb
CHANGED
@@ -22,8 +22,8 @@ module Anki
|
|
22
22
|
# returns a new card with the front and back of the original inverted
|
23
23
|
def invert
|
24
24
|
c = Anki::Card.new(front: @back.to_s, back: @front.to_s)
|
25
|
-
c.front
|
26
|
-
c.back
|
25
|
+
c.front = @back.dup
|
26
|
+
c.back = @front.dup
|
27
27
|
c
|
28
28
|
end
|
29
29
|
|
@@ -38,11 +38,25 @@ module Anki
|
|
38
38
|
end
|
39
39
|
|
40
40
|
def front= value
|
41
|
-
|
41
|
+
if value.is_a? String
|
42
|
+
@front.content = value
|
43
|
+
else
|
44
|
+
@front = value
|
45
|
+
end
|
42
46
|
end
|
43
47
|
|
44
48
|
def back= value
|
45
|
-
|
49
|
+
if value.is_a? String
|
50
|
+
@back.content = value
|
51
|
+
else
|
52
|
+
@back = value
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def initialize_copy orig
|
57
|
+
super
|
58
|
+
@front = Marshal.load(Marshal.dump(orig.front))
|
59
|
+
@back = Marshal.load(Marshal.dump(orig.back))
|
46
60
|
end
|
47
61
|
|
48
62
|
alias :question :front
|
@@ -60,6 +74,8 @@ module Anki
|
|
60
74
|
end
|
61
75
|
|
62
76
|
def << thing
|
77
|
+
return unless thing and not thing.empty?
|
78
|
+
|
63
79
|
if File.exists?(thing)
|
64
80
|
@media << thing
|
65
81
|
else
|
data/lib/ankirb/anki/deck.rb
CHANGED
@@ -6,6 +6,10 @@ module Anki
|
|
6
6
|
def initialize name
|
7
7
|
@name = name
|
8
8
|
@id = Anki::Helper.get_id
|
9
|
+
initialize_cards
|
10
|
+
end
|
11
|
+
|
12
|
+
def initialize_cards
|
9
13
|
@cards = {}
|
10
14
|
|
11
15
|
#change @cards#to_s to prevent recursive output via parent / child relationship
|
@@ -49,8 +53,8 @@ module Anki
|
|
49
53
|
|
50
54
|
def initialize_copy(orig)
|
51
55
|
super
|
52
|
-
|
53
|
-
|
56
|
+
initialize_cards
|
57
|
+
orig.cards.each { |c| add_card c.dup }
|
54
58
|
end
|
55
59
|
end
|
56
60
|
|
data/lib/ankirb/export/apkg.rb
CHANGED
@@ -11,15 +11,15 @@ module Anki
|
|
11
11
|
|
12
12
|
# exports the provided deck object to an apkg file at the specified path
|
13
13
|
def self.export deck, path
|
14
|
-
|
14
|
+
export_deck = deck.dup
|
15
15
|
|
16
16
|
Dir.mktmpdir do |dir|
|
17
17
|
db = DB.create File.join(dir,'collection.anki2')
|
18
18
|
|
19
|
-
export_media
|
20
|
-
export_deck
|
19
|
+
export_media export_deck, dir
|
20
|
+
export_deck export_deck, db
|
21
21
|
|
22
|
-
filename =
|
22
|
+
filename = export_deck.name + '.apkg'
|
23
23
|
archive = Zip::File.open(File.join(dir,filename), Zip::File::CREATE)
|
24
24
|
|
25
25
|
Dir.glob(File.join(dir,'*')).each do |file|
|
data/lib/ankirb/version.rb
CHANGED