An open API service indexing awesome lists of open source software.

https://github.com/phoenixr-codes/syntect_minecraft_highlighting

Highlight code with Minecraft formatting
https://github.com/phoenixr-codes/syntect_minecraft_highlighting

bedrock-edition highlighting java-edition minecraft syntect

Last synced: 18 days ago
JSON representation

Highlight code with Minecraft formatting

Awesome Lists containing this project

README

          

# syntect Minecraft Highlighting

This crate contains a function for highlighting styled fragments created by [syntect][] with
[Minecraft Formatting][].

![Example of highlighting in a book](./screenshots/book.jpg)

## Example

```rust
use syntect::easy::HighlightLines;
use syntect::highlighting::{Style, ThemeSet};
use syntect::parsing::SyntaxSet;
use syntect::util::LinesWithEndings;
use syntect_minecraft_highlighting::as_minecraft_bedrock_escaped;

fn main() {
let ps = SyntaxSet::load_defaults_newlines();
let ts = ThemeSet::load_defaults();

let syntax = ps.find_syntax_by_extension("rs").unwrap();
let s = "pub struct Wow { hi: u64 }\nfn blah() -> u64 { 42 }\n";

let mut h = HighlightLines::new(syntax, &ts.themes["base16-ocean.light"]);
for line in LinesWithEndings::from(s) {
let ranges: Vec<(Style, &str)> = h.highlight_line(line, &ps).unwrap();
let escaped = as_minecraft_bedrock_escaped(&ranges[..]);
println!("{}", escaped);
}
}
```

[Minecraft Formatting]: https://minecraft.wiki/w/Formatting_codes
[syntect]: https://github.com/trishume/syntect