Skip to main content

Crate rfham_markdown

Crate rfham_markdown 

Source
Expand description

Markdown formatting utilities and traits for RF-Ham output.

This crate provides two traits and a set of free formatting functions that write coloured Markdown to any Write sink. Terminal output is styled with ANSI colours via the colored crate; plain writers receive the same text without escape codes.

TraitPurpose
ToMarkdownConvert a value to Markdown without external context
ToMarkdownWithConvert a value to Markdown given a caller-supplied context

Key free functions: header, plain_text, bulleted_list_item, numbered_list_item, bold_to_string, italic_to_string, link_to_string, fenced_code_block_start / fenced_code_block_end.

Table and Column support fixed-width columnar output.

§Examples

use rfham_markdown::{header, plain_text, bulleted_list_item};

let mut out = Vec::new();
header(&mut out, 1, "My Section").unwrap();
plain_text(&mut out, "Some content.").unwrap();
bulleted_list_item(&mut out, 1, "First item").unwrap();
let s = String::from_utf8(out).unwrap();
assert!(s.contains("My Section"));
assert!(s.contains("Some content."));

Re-exports§

pub use error::MarkdownError;
pub use error::MarkdownResult;

Modules§

error
Provides this crate’s Error and Result types.

Structs§

Column
Table

Enums§

ColumnJustification

Traits§

ToMarkdown
ToMarkdownWith

Functions§

blank_line
block_quote
bold
bold_to_string
bulleted_list
bulleted_list_item
code
code_to_string
definition_list_item
fenced_code_block_end
fenced_code_block_start
fenced_code_block_start_for
header
header_to_string
italic
italic_to_string
link
link_to_string
numbered_list
numbered_list_item
plain_text
strikethrough
strikethrough_to_string