diff --git a/org_mode_samples/lesser_element/lesser_block/comment/name.org b/org_mode_samples/lesser_element/lesser_block/comment/name.org new file mode 100644 index 00000000..ad25dbd6 --- /dev/null +++ b/org_mode_samples/lesser_element/lesser_block/comment/name.org @@ -0,0 +1,4 @@ +#+NAME: foo +#+begin_comment text +bar +#+end_comment diff --git a/org_mode_samples/lesser_element/lesser_block/export/name.org b/org_mode_samples/lesser_element/lesser_block/export/name.org new file mode 100644 index 00000000..cfba5df2 --- /dev/null +++ b/org_mode_samples/lesser_element/lesser_block/export/name.org @@ -0,0 +1,4 @@ +#+NAME: foo +#+begin_export text +bar +#+end_export diff --git a/org_mode_samples/lesser_element/lesser_block/verse/name.org b/org_mode_samples/lesser_element/lesser_block/verse/name.org new file mode 100644 index 00000000..94e58779 --- /dev/null +++ b/org_mode_samples/lesser_element/lesser_block/verse/name.org @@ -0,0 +1,4 @@ +#+NAME: foo +#+begin_verse text +bar +#+end_verse diff --git a/src/compare/diff.rs b/src/compare/diff.rs index f377c892..6883c3b8 100644 --- a/src/compare/diff.rs +++ b/src/compare/diff.rs @@ -1499,6 +1499,8 @@ fn compare_verse_block<'b, 's>( let this_status = DiffStatus::Good; let message = None; + // TODO: Compare :name + for (_emacs_child, _rust_child) in children.iter().skip(2).zip(rust.children.iter()) {} Ok(DiffResult { @@ -1520,6 +1522,8 @@ fn compare_comment_block<'b, 's>( let mut this_status = DiffStatus::Good; let mut message = None; + // TODO: Compare :name + // Compare value let contents = get_property_quoted_string(emacs, ":value")?.unwrap_or(String::new()); if contents != rust.contents { @@ -1715,7 +1719,7 @@ fn compare_export_block<'b, 's>( let this_status = DiffStatus::Good; let message = None; - // TODO: Compare :type :value + // TODO: Compare :type :value :name Ok(DiffResult { status: this_status, @@ -1736,6 +1740,8 @@ fn compare_src_block<'b, 's>( let mut this_status = DiffStatus::Good; let mut message = None; + // TODO: Compare :name + // Compare language let language = get_property_quoted_string(emacs, ":language")?; if language.as_ref().map(String::as_str) != rust.language { diff --git a/src/parser/lesser_block.rs b/src/parser/lesser_block.rs index 17b239c5..0aa14878 100644 --- a/src/parser/lesser_block.rs +++ b/src/parser/lesser_block.rs @@ -93,7 +93,7 @@ pub(crate) fn verse_block<'b, 'g, 'r, 's>( remaining, VerseBlock { source: source.into(), - name: name.into(), + name: None, // TODO data: parameters.map(|parameters| Into::<&str>::into(parameters)), children, }, @@ -129,6 +129,7 @@ pub(crate) fn comment_block<'b, 'g, 'r, 's>( remaining, CommentBlock { source: source.into(), + name: None, // TODO contents: contents.into(), }, )) @@ -182,6 +183,7 @@ pub(crate) fn example_block<'b, 'g, 'r, 's>( remaining, ExampleBlock { source: source.into(), + name: None, // TODO switches, number_lines, preserve_indent, @@ -227,7 +229,7 @@ pub(crate) fn export_block<'b, 'g, 'r, 's>( remaining, ExportBlock { source: source.into(), - name: name.into(), + name: None, // TODO data: parameters.map(|parameters| Into::<&str>::into(parameters)), contents: contents.into(), }, @@ -287,6 +289,7 @@ pub(crate) fn src_block<'b, 'g, 'r, 's>( remaining, SrcBlock { source: source.into(), + name: None, // TODO language: language.map(Into::<&str>::into), switches, parameters: parameters.map(Into::<&str>::into), diff --git a/src/types/lesser_element.rs b/src/types/lesser_element.rs index eed50829..92302e35 100644 --- a/src/types/lesser_element.rs +++ b/src/types/lesser_element.rs @@ -24,7 +24,7 @@ pub struct TableCell<'s> { #[derive(Debug)] pub struct VerseBlock<'s> { pub source: &'s str, - pub name: &'s str, + pub name: Option<&'s str>, pub data: Option<&'s str>, pub children: Vec>, } @@ -32,6 +32,7 @@ pub struct VerseBlock<'s> { #[derive(Debug)] pub struct CommentBlock<'s> { pub source: &'s str, + pub name: Option<&'s str>, pub contents: &'s str, } @@ -48,6 +49,7 @@ pub enum RetainLabels { #[derive(Debug)] pub struct ExampleBlock<'s> { pub source: &'s str, + pub name: Option<&'s str>, pub switches: Option<&'s str>, pub number_lines: Option, pub preserve_indent: Option, @@ -60,7 +62,7 @@ pub struct ExampleBlock<'s> { #[derive(Debug)] pub struct ExportBlock<'s> { pub source: &'s str, - pub name: &'s str, + pub name: Option<&'s str>, pub data: Option<&'s str>, pub contents: &'s str, } @@ -68,6 +70,7 @@ pub struct ExportBlock<'s> { #[derive(Debug)] pub struct SrcBlock<'s> { pub source: &'s str, + pub name: Option<&'s str>, pub language: Option<&'s str>, pub switches: Option<&'s str>, pub parameters: Option<&'s str>,