Highlight doc tests in rust
Feels a big laggy when system overloaded
This commit is contained in:
parent
479790633b
commit
4ccb5fd315
|
@ -34,9 +34,34 @@ add-highlighter shared/rust regions
|
|||
add-highlighter shared/rust/code default-region group
|
||||
add-highlighter shared/rust/string region %{(?<!')"} (?<!\\)(\\\\)*" fill string
|
||||
add-highlighter shared/rust/raw_string region -match-capture %{(?<!')r(#*)"} %{"(#*)} fill string
|
||||
add-highlighter shared/rust/comment region -recurse "/\*" "/\*" "\*/" fill comment
|
||||
add-highlighter shared/rust/documentation region "//[!/]" "$" fill documentation
|
||||
add-highlighter shared/rust/line_comment region "//" "$" fill comment
|
||||
|
||||
add-highlighter shared/rust/line_doctest region ^\h*//[!/]\h*```($|should_panic|no_run|ignore|allow_fail|rust|test_harness|compile_fail|E\d{4}|edition201[58]) ^\h*//[!/]\h*```$ regions
|
||||
add-highlighter shared/rust/line_doctest/marker region ```.* $ group
|
||||
add-highlighter shared/rust/line_doctest/marker/fence regex ``` 0:meta
|
||||
add-highlighter shared/rust/line_doctest/marker/keywords regex [\d\w] 0:meta # already matched above, just ignore comma
|
||||
add-highlighter shared/rust/line_doctest/inner region '^\h*//[!/]\h+#' ' ' group
|
||||
add-highlighter shared/rust/line_doctest/inner/comment regex //[!/] 0:documentation
|
||||
add-highlighter shared/rust/line_doctest/inner/hidden regex '#' 0:meta
|
||||
add-highlighter shared/rust/line_doctest/comment region ^\h*//[!/] ' ' fill documentation
|
||||
add-highlighter shared/rust/line_doctest/code default-region ref rust
|
||||
add-highlighter shared/rust/line_code_rest region ^\h*//[!/]\h*``` ^\h*//[!/]\h*```$ fill documentation # reset invalid doctest
|
||||
add-highlighter shared/rust/line_comment2 region //[!/]{2} $ fill comment
|
||||
add-highlighter shared/rust/line_doc region //[!/] $ fill documentation
|
||||
add-highlighter shared/rust/line_comment1 region // $ fill comment
|
||||
|
||||
add-highlighter shared/rust/block_comment2 region -recurse /\*\*\* /\*\*\* \*/ fill comment
|
||||
add-highlighter shared/rust/block_doc region -recurse /\*\* /\*\* \*/ regions
|
||||
add-highlighter shared/rust/block_doc/doctest region ```($|should_panic|no_run|ignore|allow_fail|rust|test_harness|compile_fail|E\d{4}|edition201[58]) ```$ regions
|
||||
add-highlighter shared/rust/block_doc/doctest/marker region ```.* $ group
|
||||
add-highlighter shared/rust/block_doc/doctest/marker/fence regex ``` 0:meta
|
||||
add-highlighter shared/rust/block_doc/doctest/marker/keywords regex [\d\w] 0:meta # already matched above, just ignore comma
|
||||
add-highlighter shared/rust/block_doc/doctest/inner default-region group
|
||||
add-highlighter shared/rust/block_doc/doctest/inner/hidden regex '^\h*\**\h*#' 0:meta
|
||||
add-highlighter shared/rust/block_doc/doctest/inner/comment regex ^\h*\* 0:documentation
|
||||
add-highlighter shared/rust/block_doc/doctest/inner/code ref rust
|
||||
add-highlighter shared/rust/block_doc/code_rest region ``` ``` fill documentation
|
||||
add-highlighter shared/rust/block_doc/doc default-region fill documentation
|
||||
add-highlighter shared/rust/block_comment1 region -recurse /\* /\* \*/ fill comment
|
||||
|
||||
add-highlighter shared/rust/macro_attributes region -recurse "\[" "#!?\[" "\]" regions
|
||||
add-highlighter shared/rust/macro_attributes/ default-region fill meta
|
||||
|
|
1
test/highlight/rust/comment/cmd
Normal file
1
test/highlight/rust/comment/cmd
Normal file
|
@ -0,0 +1 @@
|
|||
|
88
test/highlight/rust/comment/in
Normal file
88
test/highlight/rust/comment/in
Normal file
|
@ -0,0 +1,88 @@
|
|||
//! # Hello World
|
||||
//!
|
||||
//! ```shell
|
||||
//! $ cargo install
|
||||
//! ```
|
||||
//!
|
||||
//! ```
|
||||
//! # use foo;
|
||||
//! foo::bar("Hello world");
|
||||
//! ```
|
||||
|
||||
//!! ```
|
||||
//!! foo::bar("Hello world");
|
||||
//!! ```
|
||||
|
||||
//// ```
|
||||
//// foo::bar("Hello world");
|
||||
//// ```
|
||||
|
||||
// ```
|
||||
// foo::bar("Hello world");
|
||||
// ```
|
||||
|
||||
// make sure the color does not break
|
||||
/// ```
|
||||
/// # use foo;
|
||||
/// foo::bar("Hello world");
|
||||
/// ```
|
||||
fn bar(s: &str) {
|
||||
println!("{}", s);
|
||||
}
|
||||
|
||||
/// ```shell
|
||||
/// $ cargo install
|
||||
/// ```
|
||||
///
|
||||
/// ```edition2018,no_run
|
||||
/// # use foo;
|
||||
/// foo::bar("Hello world");
|
||||
/// ```
|
||||
///
|
||||
/// ```
|
||||
/// # use foo;
|
||||
/// foo::bar("Hello world");
|
||||
/// ```
|
||||
|
||||
//!! ```
|
||||
//!! foo::bar("Hello world");
|
||||
//!! ```
|
||||
|
||||
//// ```
|
||||
//// foo::bar("Hello world");
|
||||
//// ```
|
||||
|
||||
// ```
|
||||
// foo::bar("Hello world");
|
||||
// ```
|
||||
|
||||
/**
|
||||
* ```shell
|
||||
* $ cargo install
|
||||
* ```
|
||||
*
|
||||
* ```edition2018,no_run
|
||||
* # use foo;
|
||||
* foo::bar("Hello world");
|
||||
* ```
|
||||
*/
|
||||
|
||||
/**
|
||||
```
|
||||
# use foo;
|
||||
foo::bar("Hello world");
|
||||
```
|
||||
*/
|
||||
|
||||
/***
|
||||
* ```
|
||||
* foo::bar("Hello world");
|
||||
* ```
|
||||
*/
|
||||
|
||||
/*
|
||||
* ```
|
||||
* foo::bar("Hello world");
|
||||
* ```
|
||||
*/
|
||||
|
3
test/highlight/rust/comment/rc
Normal file
3
test/highlight/rust/comment/rc
Normal file
|
@ -0,0 +1,3 @@
|
|||
source "%val{runtime}/colors/default.kak"
|
||||
source "%val{runtime}/rc/filetype/rust.kak"
|
||||
set buffer filetype rust
|
7
test/highlight/rust/comment/script
Normal file
7
test/highlight/rust/comment/script
Normal file
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user