summaryrefslogtreecommitdiff
path: root/support/albatross/README.md
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-01-28 03:02:00 +0000
committerNorbert Preining <norbert@preining.info>2023-01-28 03:02:00 +0000
commit261f52e7813eade06f278eda62023fda3d266980 (patch)
tree0d56bc08c2c97b37eda3497b1ed29eff56d02a1e /support/albatross/README.md
parent924dfac8358e4caeec54b5bce18848ee52f36eac (diff)
CTAN sync 202301280301
Diffstat (limited to 'support/albatross/README.md')
-rw-r--r--support/albatross/README.md57
1 files changed, 54 insertions, 3 deletions
diff --git a/support/albatross/README.md b/support/albatross/README.md
index 1f00d4325f..9d7a3bac2c 100644
--- a/support/albatross/README.md
+++ b/support/albatross/README.md
@@ -1,13 +1,18 @@
# Albatross
![Language: Kotlin](https://img.shields.io/badge/Language-Kotlin-blue.svg?style=flat-square)
-![Minimum JRE: 8.0](https://img.shields.io/badge/Minimum_JRE-8.0-blue.svg?style=flat-square)
+![Minimum JRE: 9](https://img.shields.io/badge/Minimum_JRE-9-blue.svg?style=flat-square)
![Current version](https://img.shields.io/badge/dynamic/json.svg?color=blue&label=Latest%20release&query=%24.0.name&url=https%3A%2F%2Fgitlab.com%2Fapi%2Fv4%2Fprojects%2F22437260%2Frepository%2Ftags&style=flat-square)
Albatross is a command line tool for finding fonts that contain a given
(Unicode) glyph. It relies on [Fontconfig](https://www.fontconfig.org),
a library for configuring and customizing font access.
+> If you came here looking for a download option, please consider using your
+> TeX distribution (the tool comes with TeX Live and MikTeX) to install
+> Albatross. Alternatively, visit our [CTAN page](https://ctan.org/pkg/albatross)
+> for the latest release.
+
## Basic use
The tool is a typical command line application, so we need to invoke it by
@@ -27,9 +32,11 @@ Options:
-d, --detailed Show a detailed font list
-a, --ansi-level [n|a16|a256|tc]
Set the default ANSI level
- -b, --border-style [1|2|3|4|5|6]
+ -b, --border-style [0|1|2|3|4|5|6]
Set the border style
-o, --or Look for each glyph separately
+ -t, --include-tex-fonts Include fonts from the TeX tree
+ -c, --clear-cache Clear the font cache
-V, --version Show the version and exit
-h, --help Show this message and exit
```
@@ -53,6 +60,33 @@ Albatross takes a list of glyphs as input. Three formats are supported:
`U+DF`. The `U+` prefix is mandatory. Be mindful that this notation expects
an uppercase `U`.
+It is worth noting that the tool also provides proper grapheme support. According
+to [this SO answer](https://stackoverflow.com/a/27331885) (reproduced verbatim):
+
+> A _grapheme_ is a sequence of one or more code points that are displayed as
+> a single, graphical unit that a reader recognizes as a single element of the writing
+> system. For example, both `a` and `ä` are graphemes, but they may consist
+> of multiple code points (e.g. `ä` may be two code points, one for the base
+> character `a` followed by one for the diaeresis; but there's also an alternative,
+> legacy, single code point representing this grapheme). Some code points are never part
+> of any grapheme (e.g. the zero-width non-joiner, or directional overrides).
+
+Along these lines, in that same answer, we have a proper definition of a glyph is:
+
+> A _glyph_ is an image, usually stored in a font (which is a collection of glyphs),
+> used to represent graphemes or parts thereof. Fonts may compose multiple glyphs into a
+> single representation, for example, if the above `ä` is a single code point, a font
+> may choose to render that as two separate, spatially overlaid glyphs.
+
+When providing a glyph, the tool will break it into multiple code points:
+
+```bash
+$ albatross y̆
+```
+
+Since `y̆` is composed of two code points, the tool will query all fonts that
+have both `U+79` and `U+306`.
+
When a list of glyphs is provided, the tool will take a conjunctive approach and
look for fonts that contain all elements in such list (default behaviour). Use
the `-o` flag (or `--or` for the long flag) to look for each glyph separately.
@@ -237,10 +271,18 @@ makes control characters to be displayed) or disable colours altogether
### Table styles
-Albatross provides 6 table styles. Include the `-b` option (or `--border-style`
+Albatross provides 7 table styles. Include the `-b` option (or `--border-style`
for the long option) followed by the corresponding border style. The following
styles are available:
+- Style 0 (basically no borders):
+
+ ```
+ Name: 3270Medium Nerd Font
+ Styles: Medium
+ ...
+ ```
+
- Style 1:
```
@@ -314,6 +356,7 @@ These are the keys to be used as option values:
| Key | Description |
|-----|-----------------------------------|
+| `0` | Style 0 (no borders) |
| `1` | Style 1 (ASCII) |
| `2` | Style 2 (rounded corners) |
| `3` | Style 3 (blank) |
@@ -321,6 +364,14 @@ These are the keys to be used as option values:
| `5` | Style 5 (square corners, default) |
| `6` | Style 6 (heavy lines) |
+### TeX fonts
+
+Albatross can include fonts from the TeX tree in the query via the `t` option
+(or `--include-tex-fonts` for the long option). Please note that the font indexing
+might take a while for the first time. For subsequent calls, the tool will use a
+cache instead. To clear this cache, use the `-c` option (or `--clear-cache` for the
+long option).
+
## License
This application is licensed under the