fix(jbm): do not include entire code blocks in single line mode
Signed-off-by: Infi <infi@infi.sh>
This commit is contained in:
parent
f47b21aeec
commit
498338d9de
|
|
@ -877,7 +877,32 @@ private fun JBMBlock(node: ASTNode, modifier: Modifier, nestingCounter: Int = 0)
|
|||
}
|
||||
|
||||
MarkdownElementTypes.CODE_FENCE -> {
|
||||
JBMCodeBlockContent(node, modifier)
|
||||
if (LocalJBMarkdownTreeState.current.singleLine) {
|
||||
Text(
|
||||
text = buildAnnotatedString {
|
||||
withStyle(SpanStyle(fontFamily = FragmentMono)) {
|
||||
val codeFenceLanguage =
|
||||
node.children.firstOrNull { it.type == MarkdownTokenTypes.FENCE_LANG }
|
||||
?.getTextInNode(state.sourceText)?.toString()
|
||||
val languageName = languageDisplayNamedResource[
|
||||
languageAliases[codeFenceLanguage]
|
||||
?: SyntaxLanguage.getByName(codeFenceLanguage ?: "")
|
||||
]?.let {
|
||||
stringResource(it)
|
||||
}
|
||||
|
||||
append(languageName?.let {
|
||||
stringResource(R.string.programming_language_snippet, it)
|
||||
} ?: stringResource(R.string.programming_language_snippet_default))
|
||||
}
|
||||
},
|
||||
maxLines = if (state.singleLine) 1 else Int.MAX_VALUE,
|
||||
overflow = if (state.singleLine) TextOverflow.Ellipsis else TextOverflow.Clip,
|
||||
modifier = modifier
|
||||
)
|
||||
} else {
|
||||
JBMCodeBlockContent(node, modifier)
|
||||
}
|
||||
}
|
||||
|
||||
MarkdownElementTypes.BLOCK_QUOTE -> {
|
||||
|
|
|
|||
|
|
@ -308,6 +308,10 @@
|
|||
<string name="programming_language_go" translatable="false">Go</string>
|
||||
<string name="programming_language_php" translatable="false">PHP</string>
|
||||
|
||||
<!-- Used to describe a snippet of code in a specific programming language -->
|
||||
<string name="programming_language_snippet">[%1$s snippet]</string>
|
||||
<string name="programming_language_snippet_default">[Code snippet]</string>
|
||||
|
||||
<string name="server_flag_official">Official Server</string>
|
||||
<string name="server_flag_verified">Verified Server</string>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue