1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
//! Typst Kit contains useful building blocks for Typst integrations. It is
//! intended as a single source of truth for things like font searching, package
//! loading and more. In particular, it contains various implementations of
//! functionality used in `typst-cli`.
//!
//! # Features flags
//! Crate functionality that incurs additional dependencies is heavily
//! feature-flagged, so that you can pick exactly what you need. By default, all
//! features are disabled. The available feature flags are:
//!
//! - `bundle`: Enables functionality related to [`typst_bundle`].
//! - `embedded-fonts`: Enables loading of embedded fonts via
//! [`fonts::embedded`].
//! - `scan-fonts`: Enables font discovery at paths and from the system via
//! [`fonts::scan`] and [`fonts::system`].
//! - `system-files`: Enables loading of files from standard locations via
//! [`files::SystemFiles`].
//! - `system-packages`: Enables loading of packages from standard locations via
//! [`packages::SystemPackages`].
//! - `universe-packages`: Enables loading of packages from Typst Universe via
//! [`packages::UniversePackages`].
//! - `emit-diagnostics`: Enables emitting terminal-style diagnostics via
//! - `datetime`: Enables obtaining the current date via [`datetime::Time::today`].
//! [`diagnostics::emit`].
//! - `system-downloader`: Enables network requests via
//! [`downloader::SystemDownloader`].
//! - `watcher`: Enables file system watching via [`watcher::Watcher`].
//! - `timer`: Enables performance tracing via [`timer::Timer`].
//! - `http-server`: Enables a live-reloading HTTP serving via [`server::HttpServer`].
//! - `vendor-openssl`: Whether to vendor OpenSSL for the `system-downloader`.
//! Not applicable to Windows and macOS build.