writ 0.18.0

A hybrid markdown editor combining raw text editing with live inline rendering
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "writ"
version = "0.18.0"
authors = ["Wilfred Denton <wilfred@hey.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A hybrid markdown editor combining raw text editing with live inline rendering"
homepage = "https://github.com/wilfreddenton/writ"
documentation = "https://docs.rs/writ"
readme = "README.md"
license = "MIT"
repository = "https://github.com/wilfreddenton/writ"

[package.metadata.docs.rs]
all-features = true

[features]
_net = [
    "dep:tokio",
    "dep:reqwest",
    "dep:rustls",
    "dep:serde_json",
]
app = [
    "editor",
    "remote-images",
    "mermaid",
    "math",
    "dep:winit",
    "dep:arboard",
    "dep:open",
    "dep:clap",
    "dep:toml",
    "dep:dirs",
]
default = ["app"]
editor = [
    "git",
    "github",
    "watch",
]
ghosttext = [
    "app",
    "dep:tokio-tungstenite",
    "dep:futures",
]
git = ["dep:gix"]
github = ["_net"]
math = [
    "dep:ratex-parser",
    "dep:ratex-layout",
    "dep:ratex-render",
    "dep:ratex-types",
]
mermaid = ["dep:mermaid-rs-renderer"]
remote-images = ["_net"]
watch = [
    "dep:notify",
    "dep:notify-debouncer-full",
]

[lib]
name = "writ"
path = "src/lib.rs"

[[bin]]
name = "writ"
path = "src/bin/writ_next.rs"
required-features = ["app"]

[[bin]]
name = "writd"
path = "src/writd.rs"
required-features = ["ghosttext"]

[[example]]
name = "streaming_markdown"
path = "examples/streaming_markdown.rs"

[dependencies.anyhow]
version = "1"

[dependencies.arboard]
version = "3"
features = ["wayland-data-control"]
optional = true
default-features = false

[dependencies.clap]
version = "4.5"
features = [
    "derive",
    "env",
]
optional = true

[dependencies.dirs]
version = "5"
optional = true

[dependencies.fontique]
version = "0.11"
features = ["fontconfig-dlopen"]

[dependencies.futures]
version = "0.3"
optional = true

[dependencies.gix]
version = "0.84"
features = ["sha1"]
optional = true
default-features = false

[dependencies.image]
version = "0.25"
features = [
    "png",
    "jpeg",
    "gif",
    "webp",
]
default-features = false

[dependencies.imara-diff]
version = "0.2"

[dependencies.mermaid-rs-renderer]
version = "0.3"
optional = true
default-features = false

[dependencies.notify]
version = "8.2"
optional = true

[dependencies.notify-debouncer-full]
version = "0.5"
optional = true

[dependencies.open]
version = "5"
optional = true

[dependencies.parley]
version = "0.11"

[dependencies.pollster]
version = "0.4"

[dependencies.ratex-layout]
version = "0.1.12"
optional = true

[dependencies.ratex-parser]
version = "0.1.12"
optional = true

[dependencies.ratex-render]
version = "0.1.12"
features = ["embed-fonts"]
optional = true

[dependencies.ratex-types]
version = "0.1.12"
optional = true

[dependencies.regex]
version = "1.12.2"

[dependencies.reqwest]
version = "0.13"
features = [
    "http2",
    "rustls",
    "json",
]
optional = true
default-features = false

[dependencies.resvg]
version = "0.46"

[dependencies.ropey]
version = "1.6"

[dependencies.rustls]
version = "0.23.36"
features = ["ring"]
optional = true

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"
optional = true

[dependencies.tokio]
version = "1"
features = ["full"]
optional = true

[dependencies.tokio-tungstenite]
version = "0.29"
optional = true

[dependencies.toml]
version = "0.8"
optional = true

[dependencies.tree-sitter]
version = "0.26"

[dependencies.tree-sitter-bash]
version = "0.25"

[dependencies.tree-sitter-highlight]
version = "0.26"

[dependencies.tree-sitter-md]
version = "0.5"

[dependencies.tree-sitter-rust]
version = "0.24"

[dependencies.undo]
version = "0.52"

[dependencies.unicode-segmentation]
version = "1.13"

[dependencies.vello]
version = "0.9"

[dependencies.winit]
version = "0.30"
optional = true

[dev-dependencies.vello]
version = "0.9"

[lints.clippy]
too_many_arguments = "allow"

[profile.dev.package."*"]
opt-level = 2

[profile.release]
lto = "thin"
codegen-units = 1

[profile.release-fast]
lto = false
codegen-units = 16
inherits = "release"