Skip to content

Commit 9cd4bbd

Browse files
fix link title w. quote, multiple headings in link
1 parent d5f4e55 commit 9cd4bbd

File tree

7 files changed

+53
-5
lines changed

7 files changed

+53
-5
lines changed

commonmark.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ var commonmark = []Rule{
115115
insideLink := selec.ParentsFiltered("a").Length() > 0
116116
if insideLink {
117117
text := opt.StrongDelimiter + content + opt.StrongDelimiter
118+
text = AddSpaceIfNessesary(selec, text)
118119
return &text
119120
}
120121

@@ -219,6 +220,8 @@ var commonmark = []Rule{
219220
var title string
220221
if t, ok := selec.Attr("title"); ok {
221222
t = strings.Replace(t, "\n", " ", -1)
223+
// escape all quotes
224+
t = strings.Replace(t, `"`, `\"`, -1)
222225
title = fmt.Sprintf(` "%s"`, t)
223226
}
224227

testdata/TestCommonmark/link/input.html

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,3 +82,22 @@
8282
<!--links directly next to each other-->
8383
<p>Before<a href="http://example_close.com">close</a>After</p>
8484
<br />
85+
86+
87+
<!--link with headings-->
88+
<a href="/page.html">
89+
<h4>Heading A</h4>
90+
<h3>Heading B</h3>
91+
</a>
92+
<br />
93+
94+
95+
<!--link with quotes in title-->
96+
<a
97+
href="/page.html"
98+
title="&quot;Vermögenssteuer ist aus wirtschaftlicher Sicht klug&quot;"
99+
>
100+
<span class="teaser__kicker">DIW-Chef zum Grünen-Programm</span>
101+
<span class="teaser__headline"> "Vermögenssteuer ist aus wirtschaftlicher Sicht klug"</span>
102+
</a>
103+
<br />

testdata/TestCommonmark/link/output.inlined.golden

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,8 @@ Second Text](http://multi.org/)
2525

2626
[first left](http://first_next.com) [second right](http://second_next.com)
2727

28-
Before [close](http://example_close.com) After
28+
Before [close](http://example_close.com) After
29+
30+
[**Heading A** **Heading B**](http://example.com/page.html)
31+
32+
[DIW-Chef zum Grünen-Programm "Vermögenssteuer ist aus wirtschaftlicher Sicht klug"](http://example.com/page.html "\"Vermögenssteuer ist aus wirtschaftlicher Sicht klug\"")

testdata/TestCommonmark/link/output.referenced_collapsed.golden

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ Second Text][]
2727

2828
Before [close][] After
2929

30+
[**Heading A** **Heading B**][]
31+
32+
[DIW-Chef zum Grünen-Programm "Vermögenssteuer ist aus wirtschaftlicher Sicht klug"][]
33+
3034
[Simple Absolute Link]: http://simple.org/
3135
[Simple Relative Link]: http://example.com/page.html
3236
[Link with Space]: http://space.org/
@@ -45,4 +49,6 @@ Second Text]: http://list.org/
4549
[second below]: http://second_under.com
4650
[first left]: http://first_next.com
4751
[second right]: http://second_next.com
48-
[close]: http://example_close.com
52+
[close]: http://example_close.com
53+
[**Heading A** **Heading B**]: http://example.com/page.html
54+
[DIW-Chef zum Grünen-Programm "Vermögenssteuer ist aus wirtschaftlicher Sicht klug"]: http://example.com/page.html "\"Vermögenssteuer ist aus wirtschaftlicher Sicht klug\""

testdata/TestCommonmark/link/output.referenced_full.golden

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ Second Text][7]
2727

2828
Before [close][14] After
2929

30+
[**Heading A** **Heading B**][15]
31+
32+
[DIW-Chef zum Grünen-Programm "Vermögenssteuer ist aus wirtschaftlicher Sicht klug"][16]
33+
3034
[1]: http://simple.org/
3135
[2]: http://example.com/page.html
3236
[3]: http://space.org/
@@ -40,4 +44,6 @@ Before [close][14] After
4044
[11]: http://second_under.com
4145
[12]: http://first_next.com
4246
[13]: http://second_next.com
43-
[14]: http://example_close.com
47+
[14]: http://example_close.com
48+
[15]: http://example.com/page.html
49+
[16]: http://example.com/page.html "\"Vermögenssteuer ist aus wirtschaftlicher Sicht klug\""

testdata/TestCommonmark/link/output.referenced_shortcut.golden

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ Second Text]
2727

2828
Before [close] After
2929

30+
[**Heading A** **Heading B**]
31+
32+
[DIW-Chef zum Grünen-Programm "Vermögenssteuer ist aus wirtschaftlicher Sicht klug"]
33+
3034
[Simple Absolute Link]: http://simple.org/
3135
[Simple Relative Link]: http://example.com/page.html
3236
[Link with Space]: http://space.org/
@@ -45,4 +49,6 @@ Second Text]: http://list.org/
4549
[second below]: http://second_under.com
4650
[first left]: http://first_next.com
4751
[second right]: http://second_next.com
48-
[close]: http://example_close.com
52+
[close]: http://example_close.com
53+
[**Heading A** **Heading B**]: http://example.com/page.html
54+
[DIW-Chef zum Grünen-Programm "Vermögenssteuer ist aus wirtschaftlicher Sicht klug"]: http://example.com/page.html "\"Vermögenssteuer ist aus wirtschaftlicher Sicht klug\""

testdata/TestCommonmark/link/output.relative.golden

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,8 @@ Second Text](http://multi.org/)
2525

2626
[first left](http://first_next.com) [second right](http://second_next.com)
2727

28-
Before [close](http://example_close.com) After
28+
Before [close](http://example_close.com) After
29+
30+
[**Heading A** **Heading B**](/page.html)
31+
32+
[DIW-Chef zum Grünen-Programm "Vermögenssteuer ist aus wirtschaftlicher Sicht klug"](/page.html "\"Vermögenssteuer ist aus wirtschaftlicher Sicht klug\"")

0 commit comments

Comments
 (0)