Make language registry optional in parse_markdown
(#23221)
Motivation for this is using markdown for keymap error notifications in #23113 Release Notes: - N/A
This commit is contained in:
parent
0dbe34d2ae
commit
55e1e831a1
5 changed files with 14 additions and 10 deletions
|
@ -256,7 +256,7 @@ pub async fn prepare_completion_documentation(
|
|||
}
|
||||
|
||||
lsp::MarkupKind::Markdown => {
|
||||
let parsed = parse_markdown(value, language_registry, language).await;
|
||||
let parsed = parse_markdown(value, Some(language_registry), language).await;
|
||||
Documentation::MultiLineMarkdown(parsed)
|
||||
}
|
||||
},
|
||||
|
|
|
@ -121,7 +121,7 @@ impl Link {
|
|||
/// Parses a string of Markdown.
|
||||
pub async fn parse_markdown(
|
||||
markdown: &str,
|
||||
language_registry: &Arc<LanguageRegistry>,
|
||||
language_registry: Option<&Arc<LanguageRegistry>>,
|
||||
language: Option<Arc<Language>>,
|
||||
) -> ParsedMarkdown {
|
||||
let mut text = String::new();
|
||||
|
@ -151,7 +151,7 @@ pub async fn parse_markdown(
|
|||
/// Parses a Markdown block.
|
||||
pub async fn parse_markdown_block(
|
||||
markdown: &str,
|
||||
language_registry: &Arc<LanguageRegistry>,
|
||||
language_registry: Option<&Arc<LanguageRegistry>>,
|
||||
language: Option<Arc<Language>>,
|
||||
text: &mut String,
|
||||
highlights: &mut Vec<(Range<usize>, MarkdownHighlight)>,
|
||||
|
@ -247,10 +247,13 @@ pub async fn parse_markdown_block(
|
|||
Tag::CodeBlock(kind) => {
|
||||
new_paragraph(text, &mut list_stack);
|
||||
current_language = if let CodeBlockKind::Fenced(language) = kind {
|
||||
language_registry
|
||||
.language_for_name_or_extension(language.as_ref())
|
||||
.await
|
||||
.ok()
|
||||
match language_registry {
|
||||
None => None,
|
||||
Some(language_registry) => language_registry
|
||||
.language_for_name_or_extension(language.as_ref())
|
||||
.await
|
||||
.ok(),
|
||||
}
|
||||
} else {
|
||||
language.clone()
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue