polytexnic 1.2.7 → 1.2.8
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/lib/polytexnic/postprocessors/html.rb +25 -2
- data/lib/polytexnic/version.rb +1 -1
- data/spec/fixtures/verbatim_environments.html +1 -1
- data/spec/to_html/asides_spec.rb +1 -1
- data/spec/to_html/chapters_and_sections_spec.rb +8 -8
- data/spec/to_html/codelistings_spec.rb +2 -2
- data/spec/to_html/footnote_spec.rb +6 -6
- data/spec/to_html/graphics_and_figures_spec.rb +2 -2
- data/spec/to_html/literal_environments/code_spec.rb +8 -8
- data/spec/to_html/literal_environments/verbatim_spec.rb +2 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 236a393d1952c7817f2caff587fe407222875cb4
|
4
|
+
data.tar.gz: 1b19fd05f87d6e1e7eacedd9b379ebe5dbdd7ed4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c0676b6b6a055287399ddabd56d081c5c3540765698c4098428458c438d8260760b0abaf5ae689c5acf5b477d034b949102f0b217844d637ebc27eeff53aa825
|
7
|
+
data.tar.gz: 2baadf8881a2dfcab3e925a82a0cf9453732e8853338b5e6b67c0e3525d47a2ae3d8d57a24152302048afce0f0e1d61a414653c4c23ec0efc2eb7ff6a9d08d8f
|
@@ -53,6 +53,7 @@ module Polytexnic
|
|
53
53
|
mainmatter(doc)
|
54
54
|
footnotes(doc)
|
55
55
|
table_of_contents(doc)
|
56
|
+
add_noindent(doc)
|
56
57
|
convert_to_html(doc)
|
57
58
|
end
|
58
59
|
|
@@ -698,7 +699,7 @@ module Polytexnic
|
|
698
699
|
# Converts filesystem path (\filepath) to the proper tag.
|
699
700
|
def filepath(doc)
|
700
701
|
doc.xpath('//filepath').each do |node|
|
701
|
-
node.name = '
|
702
|
+
node.name = 'code'
|
702
703
|
node['class'] = 'filepath'
|
703
704
|
end
|
704
705
|
end
|
@@ -860,7 +861,7 @@ module Polytexnic
|
|
860
861
|
def restore_inline_verbatim(doc)
|
861
862
|
doc.xpath('//inlineverbatim').each do |node|
|
862
863
|
node.content = literal_cache[node.content]
|
863
|
-
node.name = '
|
864
|
+
node.name = 'code'
|
864
865
|
node['class'] = 'inline_verbatim'
|
865
866
|
end
|
866
867
|
end
|
@@ -1356,6 +1357,28 @@ module Polytexnic
|
|
1356
1357
|
html << open << link.to_xhtml << '</li>'
|
1357
1358
|
end
|
1358
1359
|
|
1360
|
+
# Adds a noindent class where appropriate.
|
1361
|
+
# The purpose is to give the designer the option to indent all paragraphs but the first
|
1362
|
+
# one after the beginning of a chapter or section. The method is to add a "noindent" class
|
1363
|
+
# in the first paragraph after each division (chapter, section, etc.).
|
1364
|
+
def add_noindent(doc)
|
1365
|
+
divisions = %w[chapter section subsection subsubsection]
|
1366
|
+
divisions += divisions.map { |division| "#{division}-star"}
|
1367
|
+
divisions.each do |type|
|
1368
|
+
doc.css("div.#{type}").each do |node|
|
1369
|
+
if (first_paragraph = node.at_css('p'))
|
1370
|
+
if first_paragraph['class'] == 'noindent'
|
1371
|
+
next
|
1372
|
+
elsif first_paragraph['class'].nil?
|
1373
|
+
first_paragraph['class'] = 'noindent'
|
1374
|
+
else
|
1375
|
+
first_paragraph['class'] += ' noindent'
|
1376
|
+
end
|
1377
|
+
end
|
1378
|
+
end
|
1379
|
+
end
|
1380
|
+
end
|
1381
|
+
|
1359
1382
|
# Cleans a node by removing all the given attributes.
|
1360
1383
|
def clean_node(node, attributes)
|
1361
1384
|
[*attributes].each { |a| node.remove_attribute a }
|
data/lib/polytexnic/version.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
<p>This is inline verbatim text: <
|
2
|
+
<p>This is inline verbatim text: <code class="inline_verbatim">\LaTeX and a literal $</code>.<span class="intersentencespace"></span> This is non-inline verbatim text:
|
3
3
|
</p><pre class="verbatim"> % \begin{verbatim}
|
4
4
|
% This is verbatim text.
|
5
5
|
% \end{verbatim}</pre>
|
data/spec/to_html/asides_spec.rb
CHANGED
@@ -32,7 +32,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
32
32
|
<span class="number">Box 1.1.</span>
|
33
33
|
<span class="description">Lorem ipsum.</span>
|
34
34
|
</div>
|
35
|
-
<p>lorem ipsum</p>
|
35
|
+
<p class="noindent">lorem ipsum</p>
|
36
36
|
<p>dolor sit amet</p>
|
37
37
|
</div>
|
38
38
|
<p><a href="#aside-lorem" class="hyperref">Box <span class="ref">1.1</span></a></p>
|
@@ -202,7 +202,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
202
202
|
<h2><a href="#foo_baz" class="heading">Foo: baz</a></h2>
|
203
203
|
<div class="subsection-star">
|
204
204
|
<h3><a class="heading">Bar</a></h3>
|
205
|
-
<p>Lorem ipsum</p>
|
205
|
+
<p class="noindent">Lorem ipsum</p>
|
206
206
|
</div>
|
207
207
|
</div>
|
208
208
|
<div id="cid1" data-tralics-id="cid1" class="section" data-number="1">
|
@@ -233,7 +233,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
233
233
|
should resemble <<-'EOS'
|
234
234
|
<div id="cha-foo_bar" data-tralics-id="cid1" class="chapter" data-number="1">
|
235
235
|
<h1><a href="#cha-foo_bar" class="heading"><span class="number">Chapter 1 </span>Foo</a></h1>
|
236
|
-
<p><a href="#cha-foo_bar" class="hyperref">Chapter <span class="ref">1</span></a>
|
236
|
+
<p class="noindent"><a href="#cha-foo_bar" class="hyperref">Chapter <span class="ref">1</span></a>
|
237
237
|
and
|
238
238
|
<a href="#cha-foo_baz" class="hyperref">Chapter <span class="ref">2</span></a>
|
239
239
|
</p>
|
@@ -241,7 +241,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
241
241
|
|
242
242
|
<div id="cha-foo_baz" data-tralics-id="cid2" class="chapter" data-number="2">
|
243
243
|
<h1><a href="#cha-foo_baz" class="heading"><span class="number">Chapter 2 </span>Baz</a></h1>
|
244
|
-
<p><a href="#cha-foo_baz" class="hyperref">Chapter <span class="ref">2</span></a>
|
244
|
+
<p class="noindent"><a href="#cha-foo_baz" class="hyperref">Chapter <span class="ref">2</span></a>
|
245
245
|
and
|
246
246
|
<a href="#cha-foo_bar" class="hyperref">Chapter <span class="ref">1</span></a>
|
247
247
|
</p>
|
@@ -270,13 +270,13 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
270
270
|
it do
|
271
271
|
should resemble <<-'EOS'
|
272
272
|
<div id="sec-foo" data-tralics-id="cid1" class="section" data-number="1"><h2><a href="#sec-foo" class="heading"><span class="number">1 </span>Foo</a></h2>
|
273
|
-
<p>
|
273
|
+
<p class="noindent">
|
274
274
|
<a href="#sec-bar" class="hyperref">Section <span class="ref">1.1</span></a>
|
275
275
|
and
|
276
276
|
<a href="#sec-baz" class="hyperref">Section <span class="ref">1.1.1</span></a>
|
277
277
|
</p>
|
278
278
|
<div id="sec-bar" data-tralics-id="uid1" class="subsection" data-number="1.1"><h3><a href="#sec-bar" class="heading"><span class="number">1.1 </span>Bar</a></h3>
|
279
|
-
<p><a href="#sec-foo" class="hyperref">Section <span class="ref">1</span></a>
|
279
|
+
<p class="noindent"><a href="#sec-foo" class="hyperref">Section <span class="ref">1</span></a>
|
280
280
|
</p>
|
281
281
|
<div id="sec-baz" data-tralics-id="uid2" class="subsubsection" data-number="1.1.1">
|
282
282
|
<h4><a href="#sec-baz" class="heading">Baz</a></h4>
|
@@ -298,7 +298,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
298
298
|
should resemble <<-'EOS'
|
299
299
|
<div id="cha-foo" data-tralics-id="cid1" class="chapter" data-number="1">
|
300
300
|
<h1><a href="#cha-foo" class="heading"><span class="number">Chapter 1 </span>Foo</a></h1>
|
301
|
-
<p><a href="#cha-bar" class="hyperref">Chapter <span class="undefined_ref">cha:bar</span></a>
|
301
|
+
<p class="noindent"><a href="#cha-bar" class="hyperref">Chapter <span class="undefined_ref">cha:bar</span></a>
|
302
302
|
</p>
|
303
303
|
</div>
|
304
304
|
EOS
|
@@ -324,13 +324,13 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
324
324
|
should resemble <<-'EOS'
|
325
325
|
<div id="frontmatter" data-number="0">
|
326
326
|
<div class="chapter-star" id="foo"><h1><a href="#foo" class="heading">Foo</a></h1>
|
327
|
-
<p>Lorem ipsum.<sup id="cha-0_footnote-ref-1" class="footnote"><a href="#cha-0_footnote-1">1</a></sup></p>
|
327
|
+
<p class="noindent">Lorem ipsum.<sup id="cha-0_footnote-ref-1" class="footnote"><a href="#cha-0_footnote-1">1</a></sup></p>
|
328
328
|
</div></div>
|
329
329
|
<div id="cha-0_footnotes">
|
330
330
|
<ol class="footnotes"><li id="cha-0_footnote-1">Foo bar. <a class="arrow" href="#cha-0_footnote-ref-1">↑</a></li>
|
331
331
|
</ol></div>
|
332
332
|
<div id="cha-bar" data-tralics-id="cid1" class="chapter" data-number="1"><h1><a href="#cha-bar" class="heading"><span class="number">Chapter 1 </span>Bar</a></h1>
|
333
|
-
<p><a href="#cha-bar" class="hyperref">Chapter <span class="ref">1</span></a>
|
333
|
+
<p class="noindent"><a href="#cha-bar" class="hyperref">Chapter <span class="ref">1</span></a>
|
334
334
|
</p></div>
|
335
335
|
EOS
|
336
336
|
end
|
@@ -31,7 +31,7 @@ $ subl .gemrc
|
|
31
31
|
<span class="number">Listing 1.1:</span>
|
32
32
|
<span class="description">Creating a <code class="tt">gem</code> configuration file.<span class="intersentencespace"></span>
|
33
33
|
<span class="break"></span>
|
34
|
-
<
|
34
|
+
<code class="filepath">path/to/file</code>
|
35
35
|
</span>
|
36
36
|
</div>
|
37
37
|
<div class="code">
|
@@ -40,7 +40,7 @@ $ subl .gemrc
|
|
40
40
|
</div>
|
41
41
|
</div>
|
42
42
|
</div>
|
43
|
-
<p><a href="#code-create_gemrc" class="hyperref">Listing <span class="ref">1.1</span></a></p>
|
43
|
+
<p class="noindent"><a href="#code-create_gemrc" class="hyperref">Listing <span class="ref">1.1</span></a></p>
|
44
44
|
</div>
|
45
45
|
EOS
|
46
46
|
end
|
@@ -28,7 +28,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
28
28
|
</div>
|
29
29
|
<div id="sec-foobar" data-tralics-id="cid2" class="section" data-number="1.1">
|
30
30
|
<h2><a href="#sec-foobar" class="heading"><span class="number">1.1 </span>Foobar</a></h2>
|
31
|
-
<p>Lorem ipsum.<sup id="cha-1_footnote-ref-1" class="footnote"><a href="#cha-1_footnote-1">1</a></sup></p>
|
31
|
+
<p class="noindent">Lorem ipsum.<sup id="cha-1_footnote-ref-1" class="footnote"><a href="#cha-1_footnote-1">1</a></sup></p>
|
32
32
|
</div>
|
33
33
|
<div id="cha-1_footnotes">
|
34
34
|
<ol class="footnotes">
|
@@ -39,7 +39,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
39
39
|
</div>
|
40
40
|
<div id="cha-bar" data-tralics-id="cid3" class="chapter" data-number="2">
|
41
41
|
<h1><a href="#cha-bar" class="heading"><span class="number">Chapter 2 </span>Bar</a></h1>
|
42
|
-
<p>Dolor sit amet.</p>
|
42
|
+
<p class="noindent">Dolor sit amet.</p>
|
43
43
|
</div>
|
44
44
|
EOS
|
45
45
|
end
|
@@ -74,7 +74,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
74
74
|
</div>
|
75
75
|
<div id="sec-foobar" data-tralics-id="cid2" class="section" data-number="1.1">
|
76
76
|
<h2><a href="#sec-foobar" class="heading"><span class="number">1.1 </span>Foobar</a></h2>
|
77
|
-
<p>Lorem ipsum.<sup id="cha-1_footnote-ref-1" class="footnote"><a href="#cha-1_footnote-1">1</a></sup></p>
|
77
|
+
<p class="noindent">Lorem ipsum.<sup id="cha-1_footnote-ref-1" class="footnote"><a href="#cha-1_footnote-1">1</a></sup></p>
|
78
78
|
</div>
|
79
79
|
<div id="cha-1_footnotes">
|
80
80
|
<ol class="footnotes">
|
@@ -85,7 +85,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
85
85
|
</div>
|
86
86
|
<div id="cha-bar" data-tralics-id="cid3" class="chapter" data-number="2">
|
87
87
|
<h1><a href="#cha-bar" class="heading"><span class="number">Chapter 2 </span>Bar</a></h1>
|
88
|
-
<p>Dolor sit amet.<sup id="cha-2_footnote-ref-1" class="footnote"><a href="#cha-2_footnote-1">1</a></sup></p>
|
88
|
+
<p class="noindent">Dolor sit amet.<sup id="cha-2_footnote-ref-1" class="footnote"><a href="#cha-2_footnote-1">1</a></sup></p>
|
89
89
|
<p>Hey Jude.<sup id="cha-2_footnote-ref-2" class="footnote"><a href="#cha-2_footnote-2">2</a></sup></p>
|
90
90
|
</div>
|
91
91
|
<div id="cha-2_footnotes">
|
@@ -137,7 +137,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
137
137
|
</div>
|
138
138
|
<div id="sec-foobar" data-tralics-id="cid2" class="section" data-number="1.1">
|
139
139
|
<h2><a href="#sec-foobar" class="heading"><span class="number">1.1 </span>Foobar</a></h2>
|
140
|
-
<p>Lorem ipsum.<sup id="cha-1_footnote-ref-1" class="footnote"><a href="#cha-1_footnote-1">*</a></sup></p>
|
140
|
+
<p class="noindent">Lorem ipsum.<sup id="cha-1_footnote-ref-1" class="footnote"><a href="#cha-1_footnote-1">*</a></sup></p>
|
141
141
|
</div>
|
142
142
|
<div id="cha-1_footnotes">
|
143
143
|
<ul class="footnotes nonumbers">
|
@@ -148,7 +148,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
148
148
|
</div>
|
149
149
|
<div id="cha-bar" data-tralics-id="cid3" class="chapter" data-number="2">
|
150
150
|
<h1><a href="#cha-bar" class="heading"><span class="number">Chapter 2 </span>Bar</a></h1>
|
151
|
-
<p>Dolor sit amet.<sup id="cha-2_footnote-ref-1" class="footnote"><a href="#cha-2_footnote-1">*</a></sup></p>
|
151
|
+
<p class="noindent">Dolor sit amet.<sup id="cha-2_footnote-ref-1" class="footnote"><a href="#cha-2_footnote-1">*</a></sup></p>
|
152
152
|
<p>Hey Jude!<sup id="cha-2_footnote-ref-2" class="footnote intersentence"><a href="#cha-2_footnote-2">†</a></sup><span class="intersentencespace"></span>
|
153
153
|
Be afraid.<span class="intersentencespace"></span></p>
|
154
154
|
</div>
|
@@ -250,7 +250,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
250
250
|
<span class="description">This is another caption.</span>
|
251
251
|
</div>
|
252
252
|
</div>
|
253
|
-
<p>
|
253
|
+
<p class="noindent">
|
254
254
|
<a href="#fig-baz" class="hyperref">Figure <span class="ref">2.1</span></a>
|
255
255
|
</p>
|
256
256
|
</div>
|
@@ -268,7 +268,7 @@ describe 'Polytexnic::Pipeline#to_html' do
|
|
268
268
|
<span class="description">Yet another.</span>
|
269
269
|
</div>
|
270
270
|
</div>
|
271
|
-
<p>
|
271
|
+
<p class="noindent">
|
272
272
|
<a href="#fig-foo" class="hyperref">Figure <span class="ref">1.1</span></a>
|
273
273
|
and
|
274
274
|
<a href="#fig-bar" class="hyperref">Figure <span class="ref">1.2</span></a>
|
@@ -209,9 +209,9 @@ describe Polytexnic::Pipeline do
|
|
209
209
|
end
|
210
210
|
let(:output) do <<-'EOS'
|
211
211
|
<p>
|
212
|
-
<
|
212
|
+
<code class="inline_verbatim">
|
213
213
|
ERROR: Could not find section header '#// begin section_that_does_not_exist' in file 'spec/to_html/literal_environments/code_spec.rb'
|
214
|
-
</
|
214
|
+
</code>
|
215
215
|
</p>
|
216
216
|
EOS
|
217
217
|
end
|
@@ -401,9 +401,9 @@ describe Polytexnic::Pipeline do
|
|
401
401
|
end
|
402
402
|
let(:output) do <<-'EOS'
|
403
403
|
<p>
|
404
|
-
<
|
404
|
+
<code class="inline_verbatim">
|
405
405
|
ERROR: Repository 'non_existent_repo' does not exist.
|
406
|
-
</
|
406
|
+
</code>
|
407
407
|
</p>
|
408
408
|
EOS
|
409
409
|
end
|
@@ -434,9 +434,9 @@ describe Polytexnic::Pipeline do
|
|
434
434
|
end
|
435
435
|
let(:output) do <<-'EOS'
|
436
436
|
<p>
|
437
|
-
<
|
437
|
+
<code class="inline_verbatim">
|
438
438
|
ERROR: Tag 'non_existent_tag' does not exist.
|
439
|
-
</
|
439
|
+
</code>
|
440
440
|
</p>
|
441
441
|
EOS
|
442
442
|
end
|
@@ -467,9 +467,9 @@ describe Polytexnic::Pipeline do
|
|
467
467
|
end
|
468
468
|
let(:output) do <<-'EOS'
|
469
469
|
<p>
|
470
|
-
<
|
470
|
+
<code class="inline_verbatim">
|
471
471
|
ERROR: fatal: Path 'path/to/non_existent_file.rb' does not exist in 'v0.9.9'
|
472
|
-
</
|
472
|
+
</code>
|
473
473
|
</p>
|
474
474
|
EOS
|
475
475
|
end
|
@@ -7,8 +7,8 @@ describe Polytexnic::Pipeline do
|
|
7
7
|
describe "\\verb environments" do
|
8
8
|
let(:polytex) { '\verb+\begin{center}+ \verb-$foo-' }
|
9
9
|
let(:output) do
|
10
|
-
'<
|
11
|
-
'<
|
10
|
+
'<code class="inline_verbatim">\begin{center}</code>' +
|
11
|
+
'<code class="inline_verbatim">$foo</code>'
|
12
12
|
end
|
13
13
|
it { should resemble output }
|
14
14
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: polytexnic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Hartl
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2017-04-03 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: nokogiri
|
@@ -293,7 +293,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
293
293
|
version: '0'
|
294
294
|
requirements: []
|
295
295
|
rubyforge_project:
|
296
|
-
rubygems_version: 2.5.1
|
296
|
+
rubygems_version: 2.4.5.1
|
297
297
|
signing_key:
|
298
298
|
specification_version: 4
|
299
299
|
summary: Convert from PolyTeX & Markdown to HTML & LaTeX
|