asciidoctor-pdf 2.3.14 → 2.3.16
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.adoc +33 -0
- data/README.adoc +1 -1
- data/asciidoctor-pdf.gemspec +2 -0
- data/lib/asciidoctor/pdf/converter.rb +3 -0
- data/lib/asciidoctor/pdf/ext/prawn-svg/loaders/data.rb +1 -1
- data/lib/asciidoctor/pdf/text_transformer.rb +10 -1
- data/lib/asciidoctor/pdf/version.rb +1 -1
- data/lib/asciidoctor/pdf.rb +6 -0
- metadata +31 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ef03e65243bd010af78e16303283d08498c81752a6509c02022250179383b2cb
|
4
|
+
data.tar.gz: 200b495ef4176f018a4869b6663ec767e906ad1559b2788e5e9da09d0f8e7b89
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: acee2946bb7c7cb633446820ddc3462874fe8b1ac52d38cb938cdd949155a28b18f95e480c507fe99ff14f14737394a8286238c92fd7f7dbf0d42f5d5f751f19
|
7
|
+
data.tar.gz: f5f73ab782a0bd6f69653b22eed054b0442e1f42c11ce1c2e0f0921290639b545abc4beb7179e00333e6a298c9bb69e91cc87c97342b92beb8ae39d714d71523
|
data/CHANGELOG.adoc
CHANGED
@@ -5,6 +5,39 @@
|
|
5
5
|
This document provides a high-level view of the changes to the {project-name} by release.
|
6
6
|
For a detailed view of what has changed, refer to the {url-repo}/commits/main[commit history] on GitHub.
|
7
7
|
|
8
|
+
== 2.3.16 (2024-05-31) - @mojavelinux
|
9
|
+
|
10
|
+
Improvements::
|
11
|
+
|
12
|
+
* don't hyphenate autolink when hyphenation is enabled (#2521) (*@meonkeys*)
|
13
|
+
* add support for base64-encoded SVG image reference in SVG (#2512)
|
14
|
+
|
15
|
+
Bug Fixes::
|
16
|
+
|
17
|
+
* duplicate attributes on table when wrapping table in breakable or unbreakable container (#2520)
|
18
|
+
|
19
|
+
Compliance::
|
20
|
+
|
21
|
+
* lock version of rexml (pulled in by asciidoctor-diagram and prawn-svg) to fix incompatibility
|
22
|
+
|
23
|
+
=== Details
|
24
|
+
|
25
|
+
{url-repo}/releases/tag/v2.3.16[git tag] | {url-repo}/compare/v2.3.15\...v2.3.16[full diff]
|
26
|
+
|
27
|
+
== 2.3.15 (2024-03-12) - @mojavelinux
|
28
|
+
|
29
|
+
Improvements::
|
30
|
+
|
31
|
+
* drop links from entries in TOC (#2505)
|
32
|
+
|
33
|
+
Compliance::
|
34
|
+
|
35
|
+
* lock ttfunk to 1.7.x to avoid requiring Ruby headers (i.e., development libraries) to install gem (#2508)
|
36
|
+
|
37
|
+
=== Details
|
38
|
+
|
39
|
+
{url-repo}/releases/tag/v2.3.15[git tag] | {url-repo}/compare/v2.3.14\...v2.3.15[full diff]
|
40
|
+
|
8
41
|
== 2.3.14 (2024-03-08) - @mojavelinux
|
9
42
|
|
10
43
|
Improvements::
|
data/README.adoc
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
= Asciidoctor PDF: A native PDF converter for AsciiDoc
|
2
2
|
Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>
|
3
|
-
v2.3.
|
3
|
+
v2.3.16, 2024-05-31
|
4
4
|
// Settings:
|
5
5
|
:experimental:
|
6
6
|
:idprefix:
|
data/asciidoctor-pdf.gemspec
CHANGED
@@ -35,12 +35,14 @@ Gem::Specification.new do |s|
|
|
35
35
|
|
36
36
|
s.add_runtime_dependency 'asciidoctor', '~> 2.0'
|
37
37
|
s.add_runtime_dependency 'prawn', '~> 2.4.0'
|
38
|
+
s.add_runtime_dependency 'ttfunk', '~> 1.7.0' # pin ttfunk for compatiblity; prawn gem only pins it to major version
|
38
39
|
s.add_runtime_dependency 'matrix', '~> 0.4' # required until prawn >= 2.5.0 is released
|
39
40
|
s.add_runtime_dependency 'prawn-table', '~> 0.2.0'
|
40
41
|
s.add_runtime_dependency 'prawn-templates', '~> 0.1.0'
|
41
42
|
s.add_runtime_dependency 'prawn-svg', '~> 0.34.0'
|
42
43
|
s.add_runtime_dependency 'prawn-icon', '~> 3.0.0'
|
43
44
|
s.add_runtime_dependency 'concurrent-ruby', '~> 1.1'
|
45
|
+
s.add_runtime_dependency 'rexml', '3.2.6' # lock rexml to 3.2.6 since 3.2.7 and up breaks Ruby
|
44
46
|
s.add_runtime_dependency 'treetop', '~> 1.6.0'
|
45
47
|
|
46
48
|
s.add_development_dependency 'rake', '~> 13.0.0'
|
@@ -1989,6 +1989,8 @@ module Asciidoctor
|
|
1989
1989
|
if !at_page_top? && ((unbreakable = node.option? 'unbreakable') || ((node.option? 'breakable') && (node.id || node.title?)))
|
1990
1990
|
# NOTE: we use the current node as the parent so we can navigate back into the document model
|
1991
1991
|
(table_container = Block.new node, :open) << (table_dup = node.dup)
|
1992
|
+
# NOTE: we need to duplicate the attributes so that the unbreakable/breakable option is preserved on subsequent conversions
|
1993
|
+
table_dup.instance_variable_set :@attributes, node.attributes.dup
|
1992
1994
|
if unbreakable
|
1993
1995
|
table_dup.remove_attr 'unbreakable-option'
|
1994
1996
|
table_container.set_attr 'unbreakable-option'
|
@@ -3917,6 +3919,7 @@ module Asciidoctor
|
|
3917
3919
|
theme_font :toc, level: entry_level do
|
3918
3920
|
entry_title = entry.context == :section ? entry.numbered_title : (entry.title? ? entry.title : (entry.xreftext 'basic'))
|
3919
3921
|
next if entry_title.empty?
|
3922
|
+
entry_title = entry_title.gsub DropAnchorRx, '' if entry_title.include? '<a'
|
3920
3923
|
entry_title = transform_text entry_title, @text_transform if @text_transform
|
3921
3924
|
pgnum_label_placeholder_width = rendered_width_of_string '0' * @toc_max_pagenum_digits
|
3922
3925
|
# NOTE: only write title (excluding dots and page number) if this is a dry run
|
@@ -8,6 +8,7 @@ module Asciidoctor
|
|
8
8
|
TagFilterRx = /(<[^>]+>)|([^<]+)/
|
9
9
|
ContiguousCharsRx = /\p{Graph}+/
|
10
10
|
WordRx = /\p{Word}+/
|
11
|
+
BareClassRx = / class="bare[" ]/
|
11
12
|
Hyphen = '-'
|
12
13
|
SoftHyphen = ?\u00ad
|
13
14
|
LowerAlphaChars = 'a-z'
|
@@ -31,7 +32,15 @@ module Asciidoctor
|
|
31
32
|
|
32
33
|
def hyphenate_words_pcdata string, hyphenator
|
33
34
|
if XMLMarkupRx.match? string
|
34
|
-
|
35
|
+
skipping = false
|
36
|
+
string.gsub PCDATAFilterRx do
|
37
|
+
if $2
|
38
|
+
skipping ? $2 : (hyphenate_words $2, hyphenator)
|
39
|
+
else
|
40
|
+
skipping = skipping ? $1 != '</a>' : ($1.start_with? '<a ') && (BareClassRx.match? $1)
|
41
|
+
$1
|
42
|
+
end
|
43
|
+
end
|
35
44
|
else
|
36
45
|
hyphenate_words string, hyphenator
|
37
46
|
end
|
data/lib/asciidoctor/pdf.rb
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
proc do
|
4
|
+
old_verbose, $VERBOSE = $VERBOSE, nil
|
5
|
+
require 'bigdecimal' # eagerly require bigdecimal without warnings to avoid warning caused by ttfunk 1.7.0
|
6
|
+
$VERBOSE = old_verbose
|
7
|
+
end.call
|
8
|
+
|
3
9
|
autoload :Set, 'set'
|
4
10
|
autoload :StringIO, 'stringio'
|
5
11
|
autoload :Tempfile, 'tempfile'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: asciidoctor-pdf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.16
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dan Allen
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2024-
|
12
|
+
date: 2024-05-31 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: asciidoctor
|
@@ -39,6 +39,20 @@ dependencies:
|
|
39
39
|
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
41
|
version: 2.4.0
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: ttfunk
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - "~>"
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 1.7.0
|
49
|
+
type: :runtime
|
50
|
+
prerelease: false
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - "~>"
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 1.7.0
|
42
56
|
- !ruby/object:Gem::Dependency
|
43
57
|
name: matrix
|
44
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -123,6 +137,20 @@ dependencies:
|
|
123
137
|
- - "~>"
|
124
138
|
- !ruby/object:Gem::Version
|
125
139
|
version: '1.1'
|
140
|
+
- !ruby/object:Gem::Dependency
|
141
|
+
name: rexml
|
142
|
+
requirement: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - '='
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: 3.2.6
|
147
|
+
type: :runtime
|
148
|
+
prerelease: false
|
149
|
+
version_requirements: !ruby/object:Gem::Requirement
|
150
|
+
requirements:
|
151
|
+
- - '='
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: 3.2.6
|
126
154
|
- !ruby/object:Gem::Dependency
|
127
155
|
name: treetop
|
128
156
|
requirement: !ruby/object:Gem::Requirement
|
@@ -336,7 +364,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
336
364
|
- !ruby/object:Gem::Version
|
337
365
|
version: '0'
|
338
366
|
requirements: []
|
339
|
-
rubygems_version: 3.5.
|
367
|
+
rubygems_version: 3.5.9
|
340
368
|
signing_key:
|
341
369
|
specification_version: 4
|
342
370
|
summary: Converts AsciiDoc documents to PDF using Asciidoctor and Prawn
|