Skip to content

Commit f17a1f4

Browse files
author
tjk
committed
Rename things to conform with pulldown-cmark naming conventions
1 parent 0b6cf4a commit f17a1f4

File tree

7 files changed

+94
-94
lines changed

7 files changed

+94
-94
lines changed

cli/src/main.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use clap::Parser;
2-
use pulldown_html_ext::RendererConfig;
2+
use pulldown_html_ext::HtmlConfig;
33
use std::fs;
44
use std::io::{self, Read};
55
use std::path::PathBuf;
@@ -48,11 +48,11 @@ fn main() -> io::Result<()> {
4848
)
4949
})?
5050
}
51-
None => RendererConfig::default(),
51+
None => HtmlConfig::default(),
5252
};
5353

5454
// Convert markdown to HTML
55-
let html = pulldown_html_ext::render_markdown(&input, &config);
55+
let html = pulldown_html_ext::push_html(&input, &config);
5656

5757
// Write output
5858
match args.output {

lib/src/config.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ use std::collections::HashMap;
33

44
/// Main configuration struct for the HTML renderer
55
#[derive(Debug, Clone, Deserialize)]
6-
pub struct RendererConfig {
6+
pub struct HtmlConfig {
77
/// HTML-specific rendering options
88
pub html: HtmlOptions,
99
/// Options for different Markdown elements
@@ -74,9 +74,9 @@ pub struct AttributeMappings {
7474
pub element_attributes: HashMap<String, HashMap<String, String>>,
7575
}
7676

77-
impl Default for RendererConfig {
77+
impl Default for HtmlConfig {
7878
fn default() -> Self {
79-
RendererConfig {
79+
HtmlConfig {
8080
html: HtmlOptions {
8181
escape_html: false,
8282
break_on_newline: true,
@@ -180,7 +180,7 @@ mod tests {
180180

181181
#[test]
182182
fn test_default_config() {
183-
let config = RendererConfig::default();
183+
let config = HtmlConfig::default();
184184
assert!(!config.html.escape_html);
185185
assert!(config.html.break_on_newline);
186186
assert!(!config.html.xhtml_style);

lib/src/default_handler.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
use crate::config::RendererConfig;
1+
use crate::config::HtmlConfig;
22
use crate::renderer_state::RendererState;
3-
use crate::tag_handler::TagHandler;
3+
use crate::tag_handler::HtmlWriter;
44

5-
pub struct DefaultTagHandler<'a> {
5+
pub struct DefaultHtmlWriter<'a> {
66
pub(crate) state: RendererState,
7-
pub(crate) config: &'a RendererConfig,
7+
pub(crate) config: &'a HtmlConfig,
88
pub(crate) output: &'a mut String,
99
}
1010

11-
impl<'a> DefaultTagHandler<'a> {
12-
pub fn new(output: &'a mut String, config: &'a RendererConfig) -> Self {
11+
impl<'a> DefaultHtmlWriter<'a> {
12+
pub fn new(output: &'a mut String, config: &'a HtmlConfig) -> Self {
1313
Self {
1414
state: RendererState::new(),
1515
config,
@@ -18,8 +18,8 @@ impl<'a> DefaultTagHandler<'a> {
1818
}
1919
}
2020

21-
impl<'a> TagHandler for DefaultTagHandler<'a> {
22-
fn get_config(&self) -> &RendererConfig {
21+
impl<'a> HtmlWriter for DefaultHtmlWriter<'a> {
22+
fn get_config(&self) -> &HtmlConfig {
2323
self.config
2424
}
2525

lib/src/lib.rs

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
//!
77
//! # Example
88
//! ```rust
9-
//! use pulldown_html_ext::{RendererConfig, render_markdown};
9+
//! use pulldown_html_ext::{HtmlConfig, push_html};
1010
//!
11-
//! let config = RendererConfig::default();
11+
//! let config = HtmlConfig::default();
1212
//! let markdown = "# Hello\nThis is *markdown*";
13-
//! let html = render_markdown(markdown, &config);
13+
//! let html = push_html(markdown, &config);
1414
//! assert!(html.contains("<h1"));
1515
//! ```
1616
@@ -22,13 +22,13 @@ mod tag_handler;
2222
pub mod utils;
2323

2424
pub use config::{
25-
AttributeMappings, CodeBlockOptions, ElementOptions, HeadingOptions, HtmlOptions, LinkOptions,
26-
RendererConfig,
25+
AttributeMappings, CodeBlockOptions, ElementOptions, HeadingOptions, HtmlConfig, HtmlOptions,
26+
LinkOptions,
2727
};
28-
pub use default_handler::DefaultTagHandler;
28+
pub use default_handler::DefaultHtmlWriter;
2929
pub use renderer::Renderer;
3030
pub use renderer_state::RendererState;
31-
pub use tag_handler::TagHandler;
31+
pub use tag_handler::HtmlWriter;
3232

3333
use pulldown_cmark::Parser;
3434

@@ -42,16 +42,16 @@ use pulldown_cmark::Parser;
4242
/// # Example
4343
///
4444
/// ```rust
45-
/// use pulldown_html_ext::{RendererConfig, render_markdown};
45+
/// use pulldown_html_ext::{HtmlConfig, push_html};
4646
///
47-
/// let config = RendererConfig::default();
47+
/// let config = HtmlConfig::default();
4848
/// let markdown = "# Title\nHello *world*!";
49-
/// let html = render_markdown(markdown, &config);
49+
/// let html = push_html(markdown, &config);
5050
/// ```
51-
pub fn render_markdown(markdown: &str, config: &RendererConfig) -> String {
51+
pub fn push_html(markdown: &str, config: &HtmlConfig) -> String {
5252
let mut output = String::new();
5353
let parser = Parser::new(markdown);
54-
let handler = default_handler::DefaultTagHandler::new(&mut output, config);
54+
let handler = default_handler::DefaultHtmlWriter::new(&mut output, config);
5555
let mut renderer = renderer::Renderer::new(handler);
5656
renderer.run(parser);
5757
output
@@ -67,25 +67,25 @@ pub fn render_markdown(markdown: &str, config: &RendererConfig) -> String {
6767
///
6868
/// ```rust
6969
/// use std::iter::Peekable;
70-
/// use pulldown_html_ext::{TagHandler, Renderer, RendererConfig, RendererState};
70+
/// use pulldown_html_ext::{HtmlWriter, Renderer, HtmlConfig, RendererState};
7171
/// use pulldown_cmark::{Event, LinkType};
7272
///
7373
/// struct CustomHandler{
74-
/// config: RendererConfig,
74+
/// config: HtmlConfig,
7575
/// output: String,
7676
/// state: RendererState
7777
/// };
78-
/// impl TagHandler for CustomHandler {
78+
/// impl HtmlWriter for CustomHandler {
7979
/// // Implement required methods...
80-
/// # fn get_config(&self) -> &RendererConfig { &self.config }
80+
/// # fn get_config(&self) -> &HtmlConfig { &self.config }
8181
/// # fn get_output(&mut self) -> &mut String{ &mut self.output }
8282
/// # fn get_state(&mut self) -> &mut RendererState { &mut self.state }
8383
/// }
8484
///
85-
/// let mut handler = CustomHandler{ config: RendererConfig::default(), output: String::new(), state: RendererState::new() };
85+
/// let mut handler = CustomHandler{ config: HtmlConfig::default(), output: String::new(), state: RendererState::new() };
8686
/// let renderer = Renderer::new(handler);
8787
/// ```
88-
pub fn create_renderer<H: TagHandler>(handler: H) -> Renderer<H> {
88+
pub fn create_renderer<H: HtmlWriter>(handler: H) -> Renderer<H> {
8989
Renderer::new(handler)
9090
}
9191

@@ -96,9 +96,9 @@ mod tests {
9696

9797
#[test]
9898
fn test_basic_markdown() {
99-
let config = RendererConfig::default();
99+
let config = HtmlConfig::default();
100100
let markdown = "# Hello\nThis is a test.";
101-
let html = render_markdown(markdown, &config);
101+
let html = push_html(markdown, &config);
102102
assert!(html.contains("<h1"));
103103
assert!(html.contains("Hello"));
104104
assert!(html.contains("<p>"));
@@ -107,7 +107,7 @@ mod tests {
107107

108108
#[test]
109109
fn test_custom_heading_classes() {
110-
let mut config = RendererConfig::default();
110+
let mut config = HtmlConfig::default();
111111
config.elements.headings.level_classes = {
112112
let mut map = HashMap::new();
113113
map.insert(1, "title".to_string());
@@ -116,38 +116,38 @@ mod tests {
116116
};
117117

118118
let markdown = "# Main Title\n## Subtitle";
119-
let html = render_markdown(markdown, &config);
119+
let html = push_html(markdown, &config);
120120
assert!(html.contains(r#"<h1 id="heading-1" class="title""#));
121121
assert!(html.contains(r#"<h2 id="heading-2" class="subtitle""#));
122122
}
123123

124124
#[test]
125125
fn test_code_blocks() {
126-
let mut config = RendererConfig::default();
126+
let mut config = HtmlConfig::default();
127127
config.elements.code_blocks.default_language = Some("text".to_string());
128128

129129
let markdown = "```python\nprint('hello')\n```";
130-
let html = render_markdown(markdown, &config);
130+
let html = push_html(markdown, &config);
131131
assert!(html.contains(r#"<code class="language-python">"#));
132132

133133
let markdown = "```\nplain text\n```";
134-
let html = render_markdown(markdown, &config);
134+
let html = push_html(markdown, &config);
135135
assert!(html.contains(r#"<code class="language-text">"#));
136136
}
137137

138138
#[test]
139139
fn test_external_links() {
140-
let mut config = RendererConfig::default();
140+
let mut config = HtmlConfig::default();
141141
config.elements.links.nofollow_external = true;
142142
config.elements.links.open_external_blank = true;
143143

144144
let markdown = "[External](https://example.com)";
145-
let html = render_markdown(markdown, &config);
145+
let html = push_html(markdown, &config);
146146
assert!(html.contains(r#"rel="nofollow""#));
147147
assert!(html.contains(r#"target="_blank""#));
148148

149149
let markdown = "[Internal](/local)";
150-
let html = render_markdown(markdown, &config);
150+
let html = push_html(markdown, &config);
151151
assert!(!html.contains(r#"rel="nofollow""#));
152152
assert!(!html.contains(r#"target="_blank""#));
153153
}

0 commit comments

Comments
 (0)