metanorma-csa 1.4.8 → 1.4.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/macos.yml +0 -10
- data/.github/workflows/ubuntu.yml +12 -10
- data/.github/workflows/windows.yml +0 -11
- data/lib/asciidoctor/csa/biblio.rng +107 -32
- data/lib/asciidoctor/csa/isodoc.rng +28 -1
- data/lib/isodoc/csa/csa.standard.xsl +4013 -0
- data/lib/isodoc/csa/html/scripts.html +4 -20
- data/lib/isodoc/csa/pdf_convert.rb +13 -44
- data/lib/metanorma/csa/processor.rb +4 -0
- data/lib/metanorma/csa/version.rb +1 -1
- metadata +3 -2
@@ -1,24 +1,8 @@
|
|
1
1
|
<script>
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
'smoothScrolling': true, //enable or disable smooth scrolling on click
|
7
|
-
'prefix': 'toc', //prefix for anchor tags and class names
|
8
|
-
'onHighlight': function(el) {}, //called when a new section is highlighted
|
9
|
-
'highlightOnScroll': true, //add class to heading that is currently in focus
|
10
|
-
'highlightOffset': 100, //offset to trigger the next headline
|
11
|
-
'anchorName': function(i, heading, prefix) { //custom function for anchor name
|
12
|
-
return prefix+i;
|
13
|
-
},
|
14
|
-
'headerText': function(i, heading, $heading) { //custom function building the header-item text
|
15
|
-
return $heading.text();
|
16
|
-
},
|
17
|
-
'itemClass': function(i, heading, $heading, prefix) { // custom function for item class
|
18
|
-
return $heading[0].tagName.toLowerCase();
|
19
|
-
}
|
20
|
-
});
|
21
|
-
|
2
|
+
$("#toc").on('click', 'li', function(e) {
|
3
|
+
$(this).parent().find('li.toc-active').removeClass('toc-active');
|
4
|
+
$(this).addClass('toc-active');
|
5
|
+
});
|
22
6
|
</script>
|
23
7
|
|
24
8
|
<script>
|
@@ -1,62 +1,31 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative 'base_convert'
|
4
3
|
require 'isodoc'
|
5
4
|
|
6
5
|
module IsoDoc
|
7
6
|
module Csa
|
8
7
|
# A {Converter} implementation that generates CSA output, and a document
|
9
8
|
# schema encapsulation of the document for validation
|
10
|
-
|
9
|
+
|
10
|
+
class PdfConvert < IsoDoc::XslfoPdfConvert
|
11
11
|
def initialize(options)
|
12
12
|
@libdir = File.dirname(__FILE__)
|
13
13
|
super
|
14
14
|
end
|
15
15
|
|
16
|
-
def
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
monospacefont: '"Space Mono",monospace'
|
24
|
-
}
|
25
|
-
end
|
26
|
-
|
27
|
-
def default_file_locations(options)
|
28
|
-
{
|
29
|
-
htmlstylesheet: html_doc_path('htmlstyle.scss'),
|
30
|
-
htmlcoverpage: html_doc_path('html_csa_titlepage.html'),
|
31
|
-
htmlintropage: html_doc_path('html_csa_intro.html'),
|
32
|
-
scripts_pdf: html_doc_path('scripts.pdf.html')
|
33
|
-
}
|
34
|
-
end
|
35
|
-
|
36
|
-
def googlefonts()
|
37
|
-
<<~HEAD.freeze
|
38
|
-
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i|Space+Mono:400,700" rel="stylesheet">
|
39
|
-
<link href="https://fonts.googleapis.com/css?family=Rubik:300,300i,500" rel="stylesheet">
|
40
|
-
<link href="https://fonts.googleapis.com/css?family=Overpass:100,300,300i,600,900" rel="stylesheet">
|
41
|
-
<link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,300i,400,700,900" rel="stylesheet">
|
42
|
-
HEAD
|
43
|
-
end
|
44
|
-
|
45
|
-
def make_body(xml, docxml)
|
46
|
-
body_attr = { lang: 'EN-US', link: 'blue', vlink: '#954F72',
|
47
|
-
'xml:lang': 'EN-US', class: 'container' }
|
48
|
-
xml.body **body_attr do |body|
|
49
|
-
make_body1(body, docxml)
|
50
|
-
make_body2(body, docxml)
|
51
|
-
make_body3(body, docxml)
|
16
|
+
def convert(filename, file = nil, debug = false)
|
17
|
+
file = File.read(filename, encoding: "utf-8") if file.nil?
|
18
|
+
docxml, outname_html, dir = convert_init(file, filename, debug)
|
19
|
+
/\.xml$/.match(filename) or
|
20
|
+
filename = Tempfile.open([outname_html, ".xml"], encoding: "utf-8") do |f|
|
21
|
+
f.write file
|
22
|
+
f.path
|
52
23
|
end
|
24
|
+
FileUtils.rm_rf dir
|
25
|
+
::Metanorma::Output::XslfoPdf.new.convert(
|
26
|
+
filename, outname_html + ".pdf",
|
27
|
+
File.join(@libdir, "csa.standard.xsl"))
|
53
28
|
end
|
54
|
-
|
55
|
-
def html_toc(docxml)
|
56
|
-
docxml
|
57
|
-
end
|
58
|
-
|
59
|
-
include BaseConvert
|
60
29
|
end
|
61
30
|
end
|
62
31
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-csa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-05-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: htmlentities
|
@@ -284,6 +284,7 @@ files:
|
|
284
284
|
- lib/asciidoctor/csa/reqt.rng
|
285
285
|
- lib/asciidoctor/csa/validate.rb
|
286
286
|
- lib/isodoc/csa/base_convert.rb
|
287
|
+
- lib/isodoc/csa/csa.standard.xsl
|
287
288
|
- lib/isodoc/csa/html/csa-logo-white.png
|
288
289
|
- lib/isodoc/csa/html/csa.png
|
289
290
|
- lib/isodoc/csa/html/csa.scss
|