#xml #dom #css #pretty-print #mlem

xmlem

具有美化打印功能的 XML DOM 实现

13 个版本

0.2.3 2023 年 3 月 12 日
0.2.2 2023 年 2 月 18 日
0.2.1 2022 年 12 月 5 日
0.2.0 2022 年 11 月 22 日
0.0.1 2021 年 11 月 28 日

#1716 in Web 编程

Download history 52/week @ 2024-03-13 22/week @ 2024-03-20 23/week @ 2024-03-27 38/week @ 2024-04-03 23/week @ 2024-04-10 13/week @ 2024-04-17 118/week @ 2024-04-24 19/week @ 2024-05-01 23/week @ 2024-05-08 35/week @ 2024-05-15 31/week @ 2024-05-22 27/week @ 2024-05-29 32/week @ 2024-06-05 29/week @ 2024-06-12 29/week @ 2024-06-19 29/week @ 2024-06-26

每月 122 次下载
用于 5 crates

Apache-2.0 OR MIT

67KB
2K SLoC

xmlem

Rust 的 XML DOM 操作。

快速入门

let mut doc = Document::from_str("<root><potato /></root>").unwrap();
let root = doc.root();

let potato = root.query_selector(&doc, Selector::new("potato").unwrap()).unwrap();
potato.append_new_element(&mut doc, (
    "wow",
    [
        ("easy", "true"),
        ("x", "200"),
        ("a-null", "\0"),
    ],
));

let decl = Declaration::v1_1();
doc.set_declaration(Some(decl));
doc.set_doctype(Some("not-html"));

println!("{}", doc.to_string_pretty());

/*
Prints:

<?xml version="1.1" encoding="utf-8" ?>
<!DOCTYPE not-html>
<root>
  <potato>
    <wow easy="true" x="200" a-null="&#x0000;" />
  </potato>
</root>
*/

您可以使用以下命令运行此示例: cargo run --example readme,并查看 examples/readme.rs 文件。

使用 xmlem 的项目

  • kbdgen:一个用于少数民族和土著语言社区键盘布局生成的工具
  • xml-pretty:一个命令行 XML 美化打印器

许可证

此项目许可采用以下其中一种

您可选择。

依赖项

~7MB
~124K SLoC