qb101 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7d5e8fd3277a726283e04cc958f8d5e4cd80f69c80a3b04d884236ecdc709d8d
4
- data.tar.gz: d88cd27c2554b8721597b18b7bc8d4aeb29c2d0aac8edd1b2bcd7b395e9898c0
3
+ metadata.gz: 6b2005b433458222ad7b9a661d2192441b12bb13523f5b965e49856cc08ca9f2
4
+ data.tar.gz: 3964fbed3a74638293d9cd715addd70d96a139bafafc24bf6253d8fddb98f1b9
5
5
  SHA512:
6
- metadata.gz: b4dec04806442a4e9fa95fc2d994b87b40da1dd123b79095d565e85e5b1dd2a43f336f4bf38ab69f5143538d5c4dfd60bfbe4ea28e0bb7a1a4c2e856e038cfa0
7
- data.tar.gz: 6ef29045aee502fbaeffe6bd829ecd6e17fb7a37ba8144dddaa89dba5462a417e21a1402a8cffbf097aa2a50329e914f855601faece76ec856877f99f9cd0fdb
6
+ metadata.gz: 4be36da8feac7cf9e982504189d9ffe18dd2542e5f5918cd206702a7eed1aa6302bf7ce6d0fc0c09e228d7ef9675a0a61bc8b992f5d9f09bc772658b8e911d04
7
+ data.tar.gz: 667ae1300ba19b874e79b0b84e31bc631a17b89ab4f98bde85000c316d0cc43af410ea842a2a6a2c76a3fdb09985c42701257b95bd4750256bacd4c3d2f780dc
checksums.yaml.gz.sig CHANGED
Binary file
data/lib/qb101.rb CHANGED
@@ -9,6 +9,7 @@
9
9
 
10
10
  require 'yatoc'
11
11
  require 'polyrex-headings'
12
+ require 'kramdown'
12
13
 
13
14
 
14
15
  # This file contains 2 classes, the question book class and
@@ -84,11 +85,15 @@ class Ab101
84
85
 
85
86
  # note: the ab_xml file can be in CGRecorder log XML format
86
87
 
87
- def initialize(qb_txt, ab_xml=nil, filepath: '.', debug: false)
88
+ def initialize(qb, ab_xml=nil, filepath: '.', debug: false)
88
89
 
89
90
  @debug = debug
90
91
 
91
- @qb = Qb101.new(qb_txt)
92
+ @qb = if qb.is_a?(String) and qb.lines.length < 2 then
93
+ Qb101.new(qb)
94
+ elsif qb.kind_of?(Qb101)
95
+ qb
96
+ end
92
97
 
93
98
  @dx = Dynarex.new('book[title, tags]/item(question, answer)')
94
99
  @dx.title = @qb.title
@@ -153,9 +158,21 @@ class Ab101
153
158
  puts 'answers: ' + answers.inspect if @debug
154
159
 
155
160
  doc.root.xpath('//p').each.with_index do |para, i|
161
+
162
+
163
+ s = answers[i].strip
156
164
 
157
- e = Rexle::Element.new('p', attributes: {class: 'answer'})\
158
- .add_text answers[i]
165
+ e = if s.lines.length > 1 then
166
+
167
+ html = "<span>%s</span>" % Kramdown::Document.new(s).to_html
168
+ Rexle.new(html).root
169
+
170
+ else
171
+
172
+ Rexle::Element.new('p', attributes: {class: 'answer'})\
173
+ .add_text s
174
+
175
+ end
159
176
  para.insert_after e
160
177
 
161
178
  end
@@ -168,4 +185,3 @@ class Ab101
168
185
  end
169
186
 
170
187
  end
171
-
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qb101
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -58,6 +58,26 @@ dependencies:
58
58
  - - ">="
59
59
  - !ruby/object:Gem::Version
60
60
  version: 0.3.5
61
+ - !ruby/object:Gem::Dependency
62
+ name: kramdown
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '2.4'
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: 2.4.0
71
+ type: :runtime
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - "~>"
76
+ - !ruby/object:Gem::Version
77
+ version: '2.4'
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: 2.4.0
61
81
  description:
62
82
  email: digital.robertson@gmail.com
63
83
  executables: []
metadata.gz.sig CHANGED
Binary file