Skip to content

Commit 716fca1

Browse files
authored
Add texture healing / ligature docs to README
1 parent cb72e9e commit 716fca1

1 file changed

Lines changed: 47 additions & 1 deletion

File tree

README.md

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,24 @@ The variable fonts have one file per family (Neon, Argon, etc). Modern and conve
1919

2020
The static fonts have one file per cut per family. The variable axes have named stops for each of the axes, like `light` or `bold` for weight, `italic` for italics, and `semiwide` and `wide` for width. The combinatoric explosion of all these properties means that the full installation of static fonts involves hundreds of font files. But for situations which don't yet support variable fonts, the static builds give you a wide variety of stops throughout the range of each axis.
2121

22+
## Coding Ligatures
23+
24+
There are eight groups of coding ligatures, separated into stylistic sets. You may be able to selectively enable or disable individual sets:
25+
26+
* `ss01`: ligatures related to the equals glyph like `!=` and `===`.
27+
* `ss02`: ligatures related to the greater than or less than operators.
28+
* `ss03`: ligatures related to arrows like `->` and `=>`.
29+
* `ss04`: ligatures related to markup, like `</` and `/>`.
30+
* `ss05`: ligatures related to the F♯ programming language, like `|>`.
31+
* `ss06`: ligatures related to repeated uses of `#` such as `##` or `###`.
32+
* `ss07`: ligatures related to the asterisk like `***`.
33+
* `ss08`: ligatures related to combinations like `.=` or `.-`.
34+
35+
You must enable discrectionary ligatures first, often using the `dlig` setting. See below for editor-specific instructions.
36+
37+
![image](https://github.com/githubnext/monaspace/assets/22723/785c03e1-0c9c-421c-ae3c-c107a3c08c33)
38+
39+
2240
## Desktop Installation
2341

2442
### MacOS
@@ -40,6 +58,34 @@ As with the desktop fonts, they are made availabe both as variable and static fo
4058
TODO: add more instructions about usage of fonts on the web, and include sample CSS for loading fonts in web projects
4159
```
4260

61+
## Editors
62+
63+
### Visual Studio Code
64+
65+
Texture healing and coding ligatures are controlled by the same setting. You can enable either, or both.
66+
67+
If you only want texture healing and basic coding ligatures, add the following line to your `settings.json`:
68+
69+
```
70+
"editor.fontLigatures": true,
71+
```
72+
73+
> 👉 Note that this setting is not available from the graphical settings editor, you must create it manually.
74+
75+
If you want more coding ligatures, you must customize that setting to specify all of the sets you want enabled:
76+
77+
```
78+
"editor.fontLigatures": "'calt', 'liga', 'dlig', 'ss01', 'ss02', ... (more stylistic sets) ...",
79+
```
80+
81+
> 👉 Note that you must start the setting with `'calt', 'liga', 'dlig'`! The stylistic sets will not have any effect without enabling contextual alternates, ligatures, and discretionary ligatures.
82+
83+
If you want coding ligatures but do _not_ want texture healing, you can elide the `calt` setting:
84+
85+
```
86+
"editor.fontLigatures": "'liga', 'dlig', 'ss01', 'ss02', ... (more stylistic sets) ...",
87+
```
88+
4389
## Utilities
4490

4591
### Renamer utility
@@ -48,4 +94,4 @@ This is a convenience utility which renames moves the built fonts into the respe
4894

4995
```bash
5096
$ ./util/renamer.ts --src="~/path/to/the/built/fonts"
51-
```
97+
```

0 commit comments

Comments
 (0)