summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/kotlin/moe/nea/blog/md/ItalicsParser.kt7
-rw-r--r--src/test/kotlin/moe/nea/blog/md/test/TestItalics.kt6
2 files changed, 11 insertions, 2 deletions
diff --git a/src/main/kotlin/moe/nea/blog/md/ItalicsParser.kt b/src/main/kotlin/moe/nea/blog/md/ItalicsParser.kt
index 6fce529..5448f5f 100644
--- a/src/main/kotlin/moe/nea/blog/md/ItalicsParser.kt
+++ b/src/main/kotlin/moe/nea/blog/md/ItalicsParser.kt
@@ -2,7 +2,7 @@ package moe.nea.blog.md
object ItalicsParser : InlineParser {
override fun detect(lookback: MarkdownFormat, rest: String): Boolean {
- return (lookback is Whitespace || lookback is Begin) && "\\*+[^* ].*".toRegex().matches(rest)
+ return "\\*+[^* ].*".toRegex().matches(rest)
}
override val specialSyntax: Set<Char>
@@ -43,7 +43,10 @@ object ItalicsParser : InlineParser {
}
// TODO: better begin
- val (secondSequence, _remainingText) = parser.parseInlineTextUntil(remainingText, Begin()) { lookback, remaining ->
+ val (secondSequence, _remainingText) = parser.parseInlineTextUntil(
+ remainingText,
+ Begin()
+ ) { lookback, remaining ->
lookback !is Whitespace && remaining.startsWith("*")
}
remainingText = _remainingText
diff --git a/src/test/kotlin/moe/nea/blog/md/test/TestItalics.kt b/src/test/kotlin/moe/nea/blog/md/test/TestItalics.kt
index dee92bd..01bd49e 100644
--- a/src/test/kotlin/moe/nea/blog/md/test/TestItalics.kt
+++ b/src/test/kotlin/moe/nea/blog/md/test/TestItalics.kt
@@ -15,6 +15,12 @@ class TestItalics : MarkdownTest() {
}
@Test
+ fun testBeginningInTheMiddleOfTheWord() {
+ assertInlineFormat("inoneword<i>italic</i>", "inoneword*italic*")
+ assertInlineFormat("<i>multiple</i>inoneword<i>italic</i>", "*multiple*inoneword*italic*")
+ }
+
+ @Test
fun otherMarkdownInItalics() {
assertInlineFormat(
"<i><link target=https://nea.moe><b>test</b></link></i>",