mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-10-01 11:31:15 +00:00
highlight rustdoc
This commit is contained in:
parent
1c9bb31970
commit
0380d982f9
54
editors/code/language-configuration-rustdoc.json
Normal file
54
editors/code/language-configuration-rustdoc.json
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
{
|
||||||
|
"comments": {
|
||||||
|
"blockComment": [
|
||||||
|
"<!--",
|
||||||
|
"-->"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"brackets": [
|
||||||
|
["{", "}"],
|
||||||
|
["[", "]"],
|
||||||
|
["(", ")"]
|
||||||
|
],
|
||||||
|
"colorizedBracketPairs": [
|
||||||
|
],
|
||||||
|
"autoClosingPairs": [
|
||||||
|
{
|
||||||
|
"open": "{",
|
||||||
|
"close": "}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"open": "[",
|
||||||
|
"close": "]"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"open": "(",
|
||||||
|
"close": ")"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"open": "<",
|
||||||
|
"close": ">",
|
||||||
|
"notIn": [
|
||||||
|
"string"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"surroundingPairs": [
|
||||||
|
["(", ")"],
|
||||||
|
["[", "]"],
|
||||||
|
["`", "`"],
|
||||||
|
["_", "_"],
|
||||||
|
["*", "*"],
|
||||||
|
["{", "}"],
|
||||||
|
["'", "'"],
|
||||||
|
["\"", "\""]
|
||||||
|
],
|
||||||
|
"folding": {
|
||||||
|
"offSide": true,
|
||||||
|
"markers": {
|
||||||
|
"start": "^\\s*<!--\\s*#?region\\b.*-->",
|
||||||
|
"end": "^\\s*<!--\\s*#?endregion\\b.*-->"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"wordPattern": { "pattern": "(\\p{Alphabetic}|\\p{Number}|\\p{Nonspacing_Mark})(((\\p{Alphabetic}|\\p{Number}|\\p{Nonspacing_Mark})|[_])?(\\p{Alphabetic}|\\p{Number}|\\p{Nonspacing_Mark}))*", "flags": "ug" },
|
||||||
|
}
|
@ -1729,6 +1729,13 @@
|
|||||||
"rs"
|
"rs"
|
||||||
],
|
],
|
||||||
"configuration": "language-configuration.json"
|
"configuration": "language-configuration.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "rustdoc",
|
||||||
|
"extensions": [
|
||||||
|
".rustdoc"
|
||||||
|
],
|
||||||
|
"configuration": "./language-configuration-rustdoc.json"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"grammars": [
|
"grammars": [
|
||||||
@ -1736,6 +1743,27 @@
|
|||||||
"language": "ra_syntax_tree",
|
"language": "ra_syntax_tree",
|
||||||
"scopeName": "source.ra_syntax_tree",
|
"scopeName": "source.ra_syntax_tree",
|
||||||
"path": "ra_syntax_tree.tmGrammar.json"
|
"path": "ra_syntax_tree.tmGrammar.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"language": "rustdoc",
|
||||||
|
"scopeName": "text.html.markdown.rustdoc",
|
||||||
|
"path": "rustdoc.json",
|
||||||
|
"embeddedLanguages": {
|
||||||
|
"meta.embedded.block.html": "html",
|
||||||
|
"meta.embedded.block.markdown": "markdown",
|
||||||
|
"meta.embedded.block.rust": "rust"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"injectTo": [
|
||||||
|
"source.rust"
|
||||||
|
],
|
||||||
|
"scopeName": "comment.markdown-cell-inject.rustdoc",
|
||||||
|
"path": "rustdoc-inject.json",
|
||||||
|
"embeddedLanguages": {
|
||||||
|
"meta.embedded.block.rustdoc": "rustdoc",
|
||||||
|
"meta.embedded.block.rust": "rust"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"problemMatchers": [
|
"problemMatchers": [
|
||||||
|
93
editors/code/rustdoc-inject.json
Normal file
93
editors/code/rustdoc-inject.json
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
{
|
||||||
|
"injectionSelector": "L:source.rust -string -comment -meta.embedded.block.rustdoc.md",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "#triple-slash"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#double-slash-exclamation"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#slash-start-exclamation"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#slash-double-start"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"repository": {
|
||||||
|
"triple-slash": {
|
||||||
|
"begin": "(^|\\G)\\s*(///) ?",
|
||||||
|
"captures": {
|
||||||
|
"2": {
|
||||||
|
"name": "comment.line.double-slash.rust"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"name": "comment.quote_code.triple-slash.rust",
|
||||||
|
"contentName": "meta.embedded.block.rustdoc",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "text.html.markdown.rustdoc"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"while": "(^|\\G)\\s*(///) ?"
|
||||||
|
},
|
||||||
|
"double-slash-exclamation": {
|
||||||
|
"begin": "(^|\\G)\\s*(//!) ?",
|
||||||
|
"captures": {
|
||||||
|
"2": {
|
||||||
|
"name": "comment.line.double-slash.rust"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"name": "comment.quote_code.double-slash-exclamation.rust",
|
||||||
|
"contentName": "meta.embedded.block.rustdoc",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "text.html.markdown.rustdoc"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"while": "(^|\\G)\\s*(//!) ?"
|
||||||
|
},
|
||||||
|
"slash-start-exclamation": {
|
||||||
|
"begin": "(^)(/\\*!) ?$",
|
||||||
|
"captures": {
|
||||||
|
"2": {
|
||||||
|
"name": "comment.block.rust"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"name": "comment.quote_code.slash-start-exclamation.rust",
|
||||||
|
"contentName": "meta.embedded.block.rustdoc",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "text.html.markdown.rustdoc"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"end": "( ?)(\\*/)"
|
||||||
|
},
|
||||||
|
"slash-double-start": {
|
||||||
|
"name": "comment.quote_code.slash-double-start-quote-star.rust",
|
||||||
|
"begin": "(?:^)\\s*/\\*\\* ?$",
|
||||||
|
"end": "\\*/",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "#quote-star"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"quote-star": {
|
||||||
|
"begin": "(^|\\G)\\s*(\\*(?!/)) ?",
|
||||||
|
"captures": {
|
||||||
|
"2": {
|
||||||
|
"name": "comment.punctuation.definition.quote_code.slash-star.MR"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"contentName": "meta.embedded.block.rustdoc",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "text.html.markdown.rustdoc"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"while": "(^|\\G)\\s*(\\*(?!/)) ?"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"scopeName": "comment.markdown-cell-inject.rustdoc"
|
||||||
|
}
|
82
editors/code/rustdoc.json
Normal file
82
editors/code/rustdoc.json
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
{
|
||||||
|
"name": "rustdoc",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "#fenced_code_block"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#markdown"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"scopeName": "text.html.markdown.rustdoc",
|
||||||
|
"repository": {
|
||||||
|
"markdown":{
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "text.html.markdown"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"fenced_code_block":{
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "#fenced_code_block_rust"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#fenced_code_block_unknown"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"fenced_code_block_rust": {
|
||||||
|
"begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?i:(rust|not run|not_run)?((\\s+|:|,|\\{|\\?)[^`~]*)?$)",
|
||||||
|
"name": "markup.fenced_code.block.markdown",
|
||||||
|
"end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
|
||||||
|
"beginCaptures": {
|
||||||
|
"3": {
|
||||||
|
"name": "punctuation.definition.markdown"
|
||||||
|
},
|
||||||
|
"4": {
|
||||||
|
"name": "fenced_code.block.language.markdown"
|
||||||
|
},
|
||||||
|
"5": {
|
||||||
|
"name": "fenced_code.block.language.attributes.markdown"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"endCaptures": {
|
||||||
|
"3": {
|
||||||
|
"name": "punctuation.definition.markdown"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"begin": "(^|\\G)(\\s*)(.*)",
|
||||||
|
"while": "(^|\\G)(?!\\s*([`~]{3,})\\s*$)",
|
||||||
|
"contentName": "meta.embedded.block.rust",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "source.rust"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"fenced_code_block_unknown": {
|
||||||
|
"begin": "(^|\\G)(\\s*)(`{3,}|~{3,})\\s*(?=([^`~]+)?$)",
|
||||||
|
"beginCaptures": {
|
||||||
|
"3": {
|
||||||
|
"name": "punctuation.definition.markdown"
|
||||||
|
},
|
||||||
|
"4": {
|
||||||
|
"name": "fenced_code.block.language"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"end": "(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$",
|
||||||
|
"endCaptures": {
|
||||||
|
"3": {
|
||||||
|
"name": "punctuation.definition.markdown"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"name": "markup.fenced_code.block.markdown"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user