//! Weaver renderer //! //! This crate works with the weaver-markdown crate to render and optionally upload markdown notebooks to your Atproto PDS. //! use markdown_weaver::CowStr; use markdown_weaver::Event; use markdown_weaver::Tag; use n0_future::Stream; use yaml_rust2::Yaml; use yaml_rust2::YamlLoader; #[cfg(not(all(target_family = "wasm", target_os = "unknown")))] use regex::Regex; #[cfg(all(target_family = "wasm", target_os = "unknown"))] use regex_lite::Regex; use std::iter::Iterator; use std::ops::Range; use std::path::PathBuf; use std::pin::Pin; use std::sync::Arc; use std::sync::LazyLock; use std::sync::RwLock; use std::task::Poll; pub mod atproto; pub mod base_html; #[cfg(feature = "syntax-highlighting")] pub mod code_pretty; #[cfg(feature = "syntax-css")] pub mod css; pub mod facet; pub mod leaflet; pub mod math; #[cfg(feature = "pckt")] pub mod pckt; #[cfg(all(not(target_family = "wasm"), feature = "syntax-highlighting"))] pub mod static_site; pub mod theme; #[cfg(feature = "themes")] pub mod colour_gen; #[cfg(feature = "themes")] pub mod themes; pub mod types; pub mod utils; #[cfg(not(target_family = "wasm"))] pub mod walker; pub static OBSIDIAN_NOTE_LINK_RE: LazyLock = LazyLock::new(|| { Regex::new(r"^(?P[^#|]+)??(#(?P
.+?))??(\|(?P