coursegen 0.9.21 → 0.9.24

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: 6b56c0b807e916341052ecd96905c1bc871865fee63f7c71815fcf9d7814d27b
4
- data.tar.gz: 39f5a5c2f4dbd30a4e0c68c55d02e39dfa53fadaa22a468211fdb44a95216086
3
+ metadata.gz: d88ff591a425c369dbafa9d37f22cb535b3292414a2e02ec8de568b9abf6139d
4
+ data.tar.gz: c3192a4a0e560c12803e281336360c87b4d6b462bbb67967204d2ba18ad8ba23
5
5
  SHA512:
6
- metadata.gz: 251bdf602d00a8cc6ad043768148ccf30fdc7a47b27c22050d2f014ce3c9b61736d4fb2ba1c990e485f33b9eb6ee28041ffe59edb971e87996fdb202e575999b
7
- data.tar.gz: 17bf9af7c79f545d474b4f7b11e7145ed8ada2547443e387d25e04df860d94e501b275429f4301ef02458c53c0566eb1e1e076f81de2f3b8a407fc530a8dcffd
6
+ metadata.gz: dfbea249b45166567c595fe8882b4e9e9a748ca1d8d48eb19e26bd02b96f80d9b4bf65e74c0820854d0253c2bdf0e4462d2dda1fbac9c9a8270368bb23b5b88d
7
+ data.tar.gz: ddb8c0339de535890101fe8294c7faa0829a820efb8cb889e33f33a3b4a54c15282762592d57e006518a8b1d17c896bbabce9f4375f66ec0bc19be799a606bdc
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- coursegen (0.9.21)
4
+ coursegen (0.9.24)
5
5
  activesupport
6
6
  adsf
7
7
  byebug
@@ -80,6 +80,7 @@ GEM
80
80
  lumberjack (1.2.8)
81
81
  memo_wise (1.5.0)
82
82
  method_source (1.0.0)
83
+ mini_portile2 (2.7.1)
83
84
  minitest (5.15.0)
84
85
  nanoc (4.12.4)
85
86
  addressable (~> 2.5)
@@ -119,7 +120,8 @@ GEM
119
120
  nanoc-cli (~> 4.11, >= 4.11.14)
120
121
  nanoc-core (~> 4.11, >= 4.11.14)
121
122
  nenv (0.3.0)
122
- nokogiri (1.13.1-x86_64-darwin)
123
+ nokogiri (1.13.1)
124
+ mini_portile2 (~> 2.7.0)
123
125
  racc (~> 1.4)
124
126
  notiffany (0.1.3)
125
127
  nenv (~> 0.1)
@@ -170,7 +172,11 @@ GEM
170
172
  zeitwerk (2.5.3)
171
173
 
172
174
  PLATFORMS
175
+ arm64-darwin-21
176
+ arm64-darwin-22
177
+ arm64-darwin-23
173
178
  x86_64-darwin-21
179
+ x86_64-darwin-22
174
180
 
175
181
  DEPENDENCIES
176
182
  bundler
@@ -179,4 +185,4 @@ DEPENDENCIES
179
185
  rspec
180
186
 
181
187
  BUNDLED WITH
182
- 2.3.3
188
+ 2.4.10
@@ -1,6 +1,5 @@
1
1
  # ContentHelpers is used to annotate content.
2
2
  module ContentHelpers
3
-
4
3
  def include_topic(item_symbol)
5
4
  incorporated_topic = lookup_nitem('topics', item_symbol.to_s)
6
5
  items[incorporated_topic.identifier.to_s].compiled_content
@@ -75,9 +74,9 @@ module ContentHelpers
75
74
  <p class="lead">#{body}</p></div>)
76
75
  elsif (style == "small")
77
76
  <<~HTMLSTRING
78
- <div class="callout border border-primary rounded p-2 m-3">
79
- <span class="badge badge-pill badge-primary">#{title}</span>#{body}
80
- </div>
77
+ <div class="callout border border-primary rounded p-2 m-3">
78
+ <span class="badge badge-pill badge-primary">#{title}</span>#{body}
79
+ </div>
81
80
  HTMLSTRING
82
81
  else
83
82
  "error in callout call: .#{style}. #{style.class}"
@@ -101,7 +100,6 @@ module ContentHelpers
101
100
  end
102
101
  end
103
102
 
104
-
105
103
  def iconbadge1(icon, tooltip)
106
104
  %(<img src="/bootstrap/bootstrap-icons-1.0.0/#{icon}.svg" title="#{tooltip}" class="iconbadge">)
107
105
  end
@@ -359,11 +357,11 @@ module ContentHelpers
359
357
  end
360
358
 
361
359
  def source_begin(language)
362
- "<pre class=\"#{language}\">"
360
+ "<pre><code class=\"#{language}\">"
363
361
  end
364
362
 
365
363
  def source_end
366
- '</pre>'
364
+ '</code></pre>'
367
365
  end
368
366
 
369
367
  def postit_begin(title)
@@ -0,0 +1,21 @@
1
+ class TableMarkupHelper
2
+ def self.begin properties
3
+ @th = TableHelper.new(properties)
4
+ ""
5
+ end
6
+
7
+ def self.headers(labels)
8
+ @th.headers(*labels.split("\;"))
9
+ ""
10
+ end
11
+
12
+ def self.row(cells)
13
+ @th.row(*cells.split("\;"))
14
+ ""
15
+ end
16
+
17
+ def self.end
18
+ @th.render
19
+ end
20
+ end
21
+
@@ -2,39 +2,55 @@ include VisualHelpers
2
2
 
3
3
  Nanoc::Filter.define(:handle_shortcodes) do |content, _params = {}|
4
4
  prefix = /:/
5
- content
6
- .gsub(Regexp.new(prefix.source + /callout :(\w+), "(.+)", "(.+)"/.source)) { callout($2, $3, $1) }
7
- .gsub(Regexp.new(prefix.source + /deliverable (.+)$/.source)) { deliverable($1) }
8
- .gsub(Regexp.new(prefix.source + /discussion_box "(.+)"/.source)) { discussion_box($1) }
9
- .gsub(Regexp.new(prefix.source + /h1 (.+)$/.source), "# \\1 ")
10
- .gsub(Regexp.new(prefix.source + /h2 (.+)$/.source), "## \\1 ")
11
- .gsub(Regexp.new(prefix.source + /h3 (.+)$/.source), "### \\1 ")
12
- .gsub(Regexp.new(prefix.source + /h4 (.+)$/.source), "#### \\1 ")
13
- .gsub(Regexp.new(prefix.source + /h5 (.+)$/.source)) { "<h5>#{$1}</h5>" }
14
- .gsub(Regexp.new(prefix.source + /image :(\w+)$/.source)) { "<img src=\"/content/topics/images/#{$1}.jpg\" class=\"img-thumbnail d-block mx-auto\" style=\"height:300px;\"/>" }
15
- .gsub(Regexp.new(prefix.source + /image :(\w+), :(\w+)$/.source)) { "<img src=\"/content/topics/images/#{$2}.jpg\" class=\"img-thumbnail d-block mx-auto\" style=\"height:#{$1}px;\"/>" }
16
- .gsub(Regexp.new(prefix.source + /lecture_end/.source), end_of_lecture)
17
- .gsub(Regexp.new(prefix.source + /li (.+)$/.source)) { "<li>#{$1}</li>" }
18
- .gsub(Regexp.new(prefix.source + /partbadge/.source), partbadge)
19
- .gsub(Regexp.new(prefix.source + /pdfbadge/.source), pdfbadge)
20
- .gsub(Regexp.new(prefix.source + /image_random "(\w+)", "(\w+)"/.source)) { "<img src=\"https://picsum.photos/#{$1}/#{$2}.jpg\" /> "}
21
- .gsub(Regexp.new(prefix.source + /image_rnd :(\w+), "(.+)", "(.+)"/.source)) { random_image($1, $2, $3) }
22
- .gsub(Regexp.new(prefix.source + /section_link :(\w+), :(\w+)/.source)) { link_to_section($1, $2) }
23
- .gsub(Regexp.new(prefix.source + /section_include :(\w+), :(\w+)/.source)) { include_from_section($1, $2) }
24
- .gsub(Regexp.new(prefix.source + /slide_bigtitle (.+)$/.source), "<slide_break></slide_break>\n\n## \\1")
25
- .gsub(Regexp.new(prefix.source + /slide_break/.source), "<slide_break></slide_break>")
26
- .gsub(Regexp.new(prefix.source + /slide_subtitle (.+)$/.source), "<slide_break></slide_break>\n\n#### \\1")
27
- .gsub(Regexp.new(prefix.source + /slide_title (.+)$/.source), "<slide_break></slide_break>\n\n### \\1")
28
- .gsub(Regexp.new(prefix.source + /source_begin :(.+)$/.source)) { source_begin( ":language-"+$1) }
29
- .gsub(Regexp.new(prefix.source + /source_end/.source), source_end)
30
- .gsub(Regexp.new(prefix.source + /team_deliverable (.+)$/.source)) { team_deliverable($1) }
31
- .gsub(Regexp.new(prefix.source + /teambadge/.source), teambadge)
32
- .gsub(Regexp.new(prefix.source + /topic_include :(\w+)$/.source)) { include_topic($1) }
33
- .gsub(Regexp.new(prefix.source + /topic_link :(\w+)/.source)) { link_to_topic($1) }
34
- .gsub(Regexp.new(prefix.source + /ul_begin :(\w+)/.source)) { "<ul class=\"#{$1}\">" }
35
- .gsub(Regexp.new(prefix.source + /ul_begin$/.source)) { "<ul>" }
36
- .gsub(Regexp.new(prefix.source + /ul_end$/.source)) { "</ul>" }
37
- .gsub(Regexp.new(prefix.source + /youtube \"(.+)\"$/.source)) { %Q!<iframe width="560" height="315" src="#{$1}"></iframe>! }
38
- .gsub(Regexp.new(prefix.source + /zipbadge/.source), zipbadge)
39
-
40
- end
5
+ content
6
+ .gsub(Regexp.new(prefix.source + /callout :(\w+), "(.+)", "(.+)"/.source)) do
7
+ callout(Regexp.last_match(2),
8
+ Regexp.last_match(3), Regexp.last_match(1))
9
+ end
10
+ .gsub(Regexp.new(prefix.source + /deliverable (.+)$/.source)) { deliverable(Regexp.last_match(1)) }
11
+ .gsub(Regexp.new(prefix.source + /discussion "(.+)"/.source)) { discussion_box(Regexp.last_match(1)) }
12
+ .gsub(Regexp.new(prefix.source + /h1 (.+)$/.source), "# \\1 ")
13
+ .gsub(Regexp.new(prefix.source + /h2 (.+)$/.source), "## \\1 ")
14
+ .gsub(Regexp.new(prefix.source + /h3 (.+)$/.source), "### \\1 ")
15
+ .gsub(Regexp.new(prefix.source + /h4 (.+)$/.source), "#### \\1 ")
16
+ .gsub(Regexp.new(prefix.source + /h5 (.+)$/.source)) { "<h5>#{Regexp.last_match(1)}</h5>" }
17
+ .gsub(Regexp.new(prefix.source + /image :(\w+)$/.source)) { "<img src=\"/content/topics/images/#{Regexp.last_match(1)}.jpg\" class=\"img-thumbnail d-block mx-auto\" style=\"height:300px;\"/>" }
18
+ .gsub(Regexp.new(prefix.source + /image :(\w+), :(\w+)$/.source)) { "<img src=\"/content/topics/images/#{Regexp.last_match(2)}.jpg\" class=\"img-thumbnail d-block mx-auto\" style=\"height:#{Regexp.last_match(1)}px;\"/>" }
19
+ .gsub(Regexp.new(prefix.source + /quote (.+)$/.source), "<blockquote class=\"pretty\">\\1</blockquote>")
20
+ .gsub(Regexp.new(prefix.source + /lecture_end/.source), end_of_lecture)
21
+ .gsub(Regexp.new(prefix.source + /li (.+)$/.source)) { "<li>#{Regexp.last_match(1)}</li>" }
22
+ .gsub(Regexp.new(prefix.source + /partbadge/.source), partbadge)
23
+ .gsub(Regexp.new(prefix.source + /pdfbadge/.source), pdfbadge)
24
+ .gsub(Regexp.new(prefix.source + /image_random "(\w+)", "(\w+)"/.source)) { "<img src=\"https://picsum.photos/#{Regexp.last_match(1)}/#{Regexp.last_match(2)}.jpg\" /> "}
25
+ .gsub(Regexp.new(prefix.source + /image_rnd :(\w+), "(.+)", "(.+)"/.source)) do
26
+ random_image(Regexp.last_match(1),
27
+ Regexp.last_match(2), Regexp.last_match(3))
28
+ end
29
+ .gsub(Regexp.new(prefix.source + /section_link :(\w+), :(\w+)/.source)) do
30
+ link_to_section(Regexp.last_match(1),
31
+ Regexp.last_match(2))
32
+ end
33
+ .gsub(Regexp.new(prefix.source + /section_include :(\w+), :(\w+)/.source)) do
34
+ include_from_section(Regexp.last_match(1),
35
+ Regexp.last_match(2))
36
+ end
37
+ .gsub(Regexp.new(prefix.source + /slide_bigtitle (.+)$/.source), "<slide_break></slide_break>\n\n## \\1")
38
+ .gsub(Regexp.new(prefix.source + /slide_break/.source), "<slide_break></slide_break>")
39
+ .gsub(Regexp.new(prefix.source + /slide_subtitle (.+)$/.source), "<slide_break></slide_break>\n\n#### \\1")
40
+ .gsub(Regexp.new(prefix.source + /slide_title (.+)$/.source), "<slide_break></slide_break>\n\n### \\1")
41
+ .gsub(Regexp.new(prefix.source + /source_begin :(.+)$/.source)) { source_begin("language-" + Regexp.last_match(1)) }
42
+ .gsub(Regexp.new(prefix.source + /source_end/.source), source_end)
43
+ .gsub(Regexp.new(prefix.source + /team_deliverable (.+)$/.source)) { team_deliverable(Regexp.last_match(1)) }
44
+ .gsub(Regexp.new(prefix.source + /teambadge/.source), teambadge)
45
+ .gsub(Regexp.new(prefix.source + /topic_include :(\w+)$/.source)) { include_topic(Regexp.last_match(1)) }
46
+ .gsub(Regexp.new(prefix.source + /topic_link :(\w+)/.source)) { link_to_topic(Regexp.last_match(1)) }
47
+ .gsub(Regexp.new(prefix.source + /ul_begin :(\w+)/.source)) { "<ul class=\"#{Regexp.last_match(1)}\">" }
48
+ .gsub(Regexp.new(prefix.source + /ul_begin$/.source)) { "<ul>" }
49
+ .gsub(Regexp.new(prefix.source + /ul_end$/.source)) { "</ul>" }
50
+ .gsub(Regexp.new(prefix.source + /youtube "(.+)"$/.source)) { %(<iframe width="560" height="315" src="#{Regexp.last_match(1)}"></iframe>) }
51
+ .gsub(Regexp.new(prefix.source + /zipbadge/.source), zipbadge)
52
+ .gsub(Regexp.new(prefix.source + /tbegin "(.+)"$/.source)) { TableMarkupHelper.begin(Regexp.last_match(1));}
53
+ .gsub(Regexp.new(prefix.source + /thead "(.+)"$/.source)) {TableMarkupHelper.headers(Regexp.last_match(1));}
54
+ .gsub(Regexp.new(prefix.source + /trow "(.+)"$/.source)) {TableMarkupHelper.row(Regexp.last_match(1));}
55
+ .gsub(Regexp.new(prefix.source + /tend/.source)) { TableMarkupHelper.end ;}
56
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Coursegen
4
- VERSION = '0.9.21'
4
+ VERSION = '0.9.24'
5
5
  end
data/lib/coursegen.rb CHANGED
@@ -12,6 +12,7 @@ require 'coursegen/course/helpers/list_of_helpers'
12
12
  require 'coursegen/course/helpers/formatting_helpers'
13
13
  require 'coursegen/course/helpers/bootstrap_markup'
14
14
  require 'coursegen/course/helpers/table_helpers'
15
+ require 'coursegen/course/helpers/table_markup_helper'
15
16
  require 'coursegen/course/helpers/navigation_helpers'
16
17
  require 'coursegen/course/data/section'
17
18
  require 'coursegen/course/data/toc'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coursegen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.21
4
+ version: 0.9.24
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pito Salas
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-02 00:00:00.000000000 Z
11
+ date: 2023-09-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -284,6 +284,7 @@ files:
284
284
  - lib/coursegen/course/helpers/navigation_helpers.rb
285
285
  - lib/coursegen/course/helpers/sidebar_helpers.rb
286
286
  - lib/coursegen/course/helpers/table_helpers.rb
287
+ - lib/coursegen/course/helpers/table_markup_helper.rb
287
288
  - lib/coursegen/course/helpers/visual_helpers.rb
288
289
  - lib/coursegen/course/lib/helpers_.rb
289
290
  - lib/coursegen/course/lib/ical_adaptor.rb
@@ -366,7 +367,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
366
367
  - !ruby/object:Gem::Version
367
368
  version: '0'
368
369
  requirements: []
369
- rubygems_version: 3.3.3
370
+ rubygems_version: 3.4.10
370
371
  signing_key:
371
372
  specification_version: 4
372
373
  summary: Use Nanoc to build courses and deploy them to S3