The Kalem Book GitHub

This Book describes Kalem's main branch, which may be ahead of the latest release.

Licenses

1. Kalem

Kalem is free software under the MIT license or the Apache License, version 2.0, at your choice (LICENSE-MIT and LICENSE-APACHE in the repository). Contributions are accepted under the same terms.

2. This book

The text of this book is part of the repository and is under the same licenses as the code.

3. Test corpus

The files of tests/corpus come from other projects under their own licenses: the Org manual (GNU FDL 1.3 or later), Org's example files and ORG-NEWS (GPL 3 or later), Worg's Org Syntax (GNU FDL 1.3 or later), the READMEs of eleven projects (MIT, Apache-2.0 or the Unlicense, as each project is), Foam's documentation (MIT), formulas of the Open Logic Project (CC BY 4.0) and the HoTT book (CC BY-SA 3.0), arXiv papers' LaTeX sources (CC BY 4.0), and files written for Kalem (MIT or Apache-2.0). tests/corpus/LICENSES.md records each source, its revision and its license. The corpus is for the tests; none of it is in Kalem's binaries.

4. Components

THIRD-PARTY-LICENSES.md, beside the program in every release archive and made by tools/third-party-licenses.sh, gives the license of everything the binaries are built from or embed, with its text: the Rust crates of Cargo.lock and of the plugins built in, among them gpui (Zed's, Apache-2.0), Wasmtime (Apache-2.0 with the LLVM exception), IronCalc (MIT or Apache-2.0) and comrak (BSD-2-Clause), through Kalem's forks getkalem/ironcalc and getkalem/comrak, and hayro (MIT or Apache-2.0); and the works that are not code. Of these:

  • the KaTeX fonts for formulas (SIL Open Font License 1.1);
  • PDFium's Foxit fonts for PDF's standard fonts (PDFium's BSD-style license), two colour profiles (one CC0 1.0, one generated with Little CMS) and Adobe's character maps (Adobe's BSD-style license), embedded by hayro for PDF files and LaTeX's PDF figures;
  • Vim's table of digraphs, as :digraphs lists it, for the Vim keys (Vim's license).

The highlighter embeds Sublime Text syntax definitions through the two-face crate (MIT or Apache-2.0): the default set that the syntect crate (MIT) ships, from Sublime Text's Packages repository under its MIT-style license, and the further syntaxes of bat, each under the license its source repository gives: MIT for most, Apache-2.0 or a BSD license for some. bat's assets/syntaxes and two-face's acknowledgements (its acknowledgement module) list each one with its license.

The citation styles Kalem ships for #+CITE_EXPORT: csl (apa, ieee, chicago-author-date and the others) and their locales are Citation Style Language styles from the CSL project, under the Creative Commons Attribution-ShareAlike 3.0 license (CC BY-SA 3.0). They come embedded in the hayagriva crate (MIT or Apache-2.0), whose archive records each style's authors.

The table of Org's entities (\alpha, \nbsp: 412 names with their LaTeX, HTML, ASCII, Latin-1 and UTF-8 renderings), in crates/org-syntax/src/tables/entities.rs, is made by tools/gen-entities.py from standards rather than from Org (decision D18): the HTML Standard's named character references (WHATWG, CC BY 4.0), HTML 4.01's names first (of its character entity sets, W3C, only which names they hold is read), LaTeX's math symbols and text encodings and unicode-math's symbol table (LPPL 1.3c), and the Unicode Character Database; only the names, which decide what Org reads as an entity, are Org's. See D18: Entity table provenance.