don't parse lines starting with @ as KDoc tags if they're inside a Markdown code fence
#KT-11789 Fixed
This commit is contained in:
+14
@@ -0,0 +1,14 @@
|
||||
/**
|
||||
* @foo This is text.
|
||||
* ``` kotlin
|
||||
* @foo This is code block.
|
||||
* ```
|
||||
* @foo This is text.
|
||||
* ~~~
|
||||
* @foo This is code block
|
||||
* With multiple lines.
|
||||
* ~~~
|
||||
* @foo This is yet more text.
|
||||
* ```
|
||||
* @foo This is an unclosed code block.
|
||||
*/
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
KDOC_START ('/**')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' ')
|
||||
KDOC_TAG_NAME ('@foo')
|
||||
WHITE_SPACE (' ')
|
||||
KDOC_TEXT ('This is text.')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' ``` kotlin')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' @foo This is code block.')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' ```')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' ')
|
||||
KDOC_TAG_NAME ('@foo')
|
||||
WHITE_SPACE (' ')
|
||||
KDOC_TEXT ('This is text.')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' ~~~')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' @foo This is code block')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' With multiple lines.')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' ~~~')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' ')
|
||||
KDOC_TAG_NAME ('@foo')
|
||||
WHITE_SPACE (' ')
|
||||
KDOC_TEXT ('This is yet more text.')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' ```')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_LEADING_ASTERISK ('*')
|
||||
KDOC_TEXT (' @foo This is an unclosed code block.')
|
||||
WHITE_SPACE ('\n ')
|
||||
KDOC_END ('*/')
|
||||
Vendored
+3
@@ -1,5 +1,8 @@
|
||||
/**
|
||||
* @tag
|
||||
* text @notATag
|
||||
* ```
|
||||
* @notATag and some description
|
||||
* ```
|
||||
* @
|
||||
*/
|
||||
+10
-1
@@ -16,6 +16,15 @@ JetFile: AtTags.kt
|
||||
PsiElement(KDOC_TEXT)(' text @notATag')
|
||||
PsiWhiteSpace('\n ')
|
||||
PsiElement(KDOC_LEADING_ASTERISK)('*')
|
||||
PsiElement(KDOC_TEXT)(' ```')
|
||||
PsiWhiteSpace('\n ')
|
||||
PsiElement(KDOC_LEADING_ASTERISK)('*')
|
||||
PsiElement(KDOC_TEXT)(' @notATag and some description')
|
||||
PsiWhiteSpace('\n ')
|
||||
PsiElement(KDOC_LEADING_ASTERISK)('*')
|
||||
PsiElement(KDOC_TEXT)(' ```')
|
||||
PsiWhiteSpace('\n ')
|
||||
PsiElement(KDOC_LEADING_ASTERISK)('*')
|
||||
PsiElement(KDOC_TEXT)(' @')
|
||||
PsiWhiteSpace('\n ')
|
||||
PsiElement(KDOC_END)('*/')
|
||||
PsiElement(KDOC_END)('*/')
|
||||
Reference in New Issue
Block a user