File tree 1 file changed +12
-0
lines changed
1 file changed +12
-0
lines changed Original file line number Diff line number Diff line change @@ -14,6 +14,7 @@ class MarkdownShortener {
14
14
15
15
def shorten (node : Node , maxLen : Int = 150 ): Node = {
16
16
var len = 0
17
+ var didUnlinkBullets = false
17
18
18
19
def count (node : Node , length : => Int , shortenOrUnlink : Int => Unit ) = {
19
20
val remaining = math.max(maxLen - len, 0 )
@@ -48,6 +49,17 @@ class MarkdownShortener {
48
49
}),
49
50
new VisitHandler (classOf [Image ], new Visitor [Image ] {
50
51
override def visit (node : Image ) = count(node, maxLen, _ => node.unlink())
52
+ }),
53
+ new VisitHandler (classOf [BulletListItem ], new Visitor [BulletListItem ] {
54
+ override def visit (node : BulletListItem ) = count(
55
+ node,
56
+ if (didUnlinkBullets) maxLen
57
+ else node.getSegments.map(_.length).reduceLeft(_ + _),
58
+ _ => {
59
+ node.unlink()
60
+ didUnlinkBullets = true // unlink all following bullets
61
+ }
62
+ )
51
63
})
52
64
)
53
65
You can’t perform that action at this time.
0 commit comments