From 7f66fffd9799d635504a0d5a2b9c2695e34f5a13 Mon Sep 17 00:00:00 2001 From: Rob Walker Date: Fri, 10 Nov 2023 08:43:06 +0000 Subject: [PATCH 01/11] Small README typo fix --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4e54162..6cb8ce2 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,7 @@ $ bash ./util/install_macos.sh All files with a `.woff` or `.woff2` suffix are intended for use on the web. You do not install them with your operating system, but rather add them to your web development project. -As with the desktop fonts, they are made availabe both as variable and static fonts. +As with the desktop fonts, they are made available both as variable and static fonts. ## Editors From 5060c93ee8a1398201ae5c5ab3a46fbe159e2e23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20B=C3=B6hm?= Date: Fri, 10 Nov 2023 10:38:38 +0100 Subject: [PATCH 02/11] Update README.md --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 4e54162..afc39fc 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,12 @@ There is also a script which automates the deletion of all Monaspace fonts from $ bash ./util/install_macos.sh ``` +You can also use [homebrew](https://brew.sh/) as an alternative: + +```bash +brew install --cask font-monaspace +``` + ### Webfonts All files with a `.woff` or `.woff2` suffix are intended for use on the web. You do not install them with your operating system, but rather add them to your web development project. From a2641c86d96323913f3c5a96c737cad617344f45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20B=C3=B6hm?= Date: Fri, 10 Nov 2023 11:08:14 +0100 Subject: [PATCH 03/11] add `brew tap` command --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index afc39fc..0c5a4ab 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,7 @@ $ bash ./util/install_macos.sh You can also use [homebrew](https://brew.sh/) as an alternative: ```bash +brew tap homebrew/cask-fonts brew install --cask font-monaspace ``` From 60deed03ed2ace471cb23c5efb94cb2e7ff5290a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20B=C3=B6hm?= Date: Fri, 10 Nov 2023 11:12:48 +0100 Subject: [PATCH 04/11] remove obsolete `--cask` flag --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0c5a4ab..925a5b1 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,7 @@ You can also use [homebrew](https://brew.sh/) as an alternative: ```bash brew tap homebrew/cask-fonts -brew install --cask font-monaspace +brew install font-monaspace ``` ### Webfonts From ff6e77fddfb9bc15ecc13ea3b18c5e2983a08a59 Mon Sep 17 00:00:00 2001 From: Andrey Ivanov Date: Fri, 10 Nov 2023 12:51:15 +0100 Subject: [PATCH 05/11] Remove and ignore .vscode folder --- .gitignore | 3 ++- .vscode/settings.json | 5 ----- 2 files changed, 2 insertions(+), 6 deletions(-) delete mode 100644 .vscode/settings.json diff --git a/.gitignore b/.gitignore index b7ff13a..3909b5d 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ -.DS_STORE \ No newline at end of file +.DS_STORE +.vscode \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 2c7ddc5..0000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "deno.enable": true, - "deno.lint": true, - "deno.unstable": true -} \ No newline at end of file From 3b2761657d5cb79208bd2304fc68cb23870f72b3 Mon Sep 17 00:00:00 2001 From: Kunal Kaul Date: Fri, 10 Nov 2023 20:37:37 +0530 Subject: [PATCH 06/11] fixing path: point to parent directory --- util/install_macos.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/util/install_macos.sh b/util/install_macos.sh index ea0cced..5ccc20b 100644 --- a/util/install_macos.sh +++ b/util/install_macos.sh @@ -4,7 +4,7 @@ rm -rf ~/Library/Fonts/Monaspace* # copy all fonts from ./otf to ~/Library/Fonts -cp ./fonts/otf/* ~/Library/Fonts +cp ../fonts/otf/* ~/Library/Fonts # copy variable fonts from ./variable to ~/Library/Fonts -cp ./fonts/variable/* ~/Library/Fonts \ No newline at end of file +cp ../fonts/variable/* ~/Library/Fonts \ No newline at end of file From 8ea06073e16d42c4cf11da675c3308dd365a1421 Mon Sep 17 00:00:00 2001 From: "Keto D. Zhang" Date: Fri, 10 Nov 2023 11:23:22 -0800 Subject: [PATCH 07/11] Add instructions to set VSCode font family --- README.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 6cb8ce2..75f3a2a 100644 --- a/README.md +++ b/README.md @@ -60,12 +60,17 @@ As with the desktop fonts, they are made available both as variable and static f ## Editors ### Visual Studio Code +Set the font family + +```json + "editor.fontFamily": "'Monaspace Neon Var', monospace", +``` Texture healing and coding ligatures are controlled by the same setting. You can enable either, or both. If you only want texture healing and basic coding ligatures, add the following line to your `settings.json`: -``` +```json "editor.fontLigatures": true, ``` @@ -74,7 +79,7 @@ If you only want texture healing and basic coding ligatures, add the following l If you want more coding ligatures, you must customize that setting to specify all of the sets you want enabled: -``` +```json "editor.fontLigatures": "'calt', 'liga', 'dlig', 'ss01', 'ss02', ... (more stylistic sets) ...", ``` > [!NOTE] @@ -82,7 +87,7 @@ If you want more coding ligatures, you must customize that setting to specify al If you want coding ligatures but do _not_ want texture healing, you can elide the `calt` setting: -``` +```json "editor.fontLigatures": "'liga', 'dlig', 'ss01', 'ss02', ... (more stylistic sets) ...", ``` From 03e40a852bd8e9d20dca3edc290a687eb5ce833c Mon Sep 17 00:00:00 2001 From: Idan Gazit Date: Fri, 10 Nov 2023 16:04:46 -0800 Subject: [PATCH 08/11] Add note about VS Code support --- README.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 75f3a2a..321f17a 100644 --- a/README.md +++ b/README.md @@ -60,12 +60,16 @@ As with the desktop fonts, they are made available both as variable and static f ## Editors ### Visual Studio Code -Set the font family + +Set the font family: ```json - "editor.fontFamily": "'Monaspace Neon Var', monospace", + "editor.fontFamily": "'Monaspace Neon', monospace", ``` +> [!NOTE] +> Variable fonts are not yet well-supported in VS Code, and it is not yet possible to mix multiple fonts. Stay tuned, we're talking with the VS Code team about it! + Texture healing and coding ligatures are controlled by the same setting. You can enable either, or both. If you only want texture healing and basic coding ligatures, add the following line to your `settings.json`: From 88ee59dee78f1792be86afacb19e2834edc308fa Mon Sep 17 00:00:00 2001 From: Idan Gazit Date: Fri, 10 Nov 2023 16:11:41 -0800 Subject: [PATCH 09/11] Fix invocation instructions for install_macos.sh --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 321f17a..d3de6a3 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,8 @@ You can manually drag the fonts from the `fonts/otf` and `fonts/variable` direct There is also a script which automates the deletion of all Monaspace fonts from `~/Library/Fonts` and then copies over the latest versions. Invoke it from the root of the repo like: ```bash -$ bash ./util/install_macos.sh +$ cd util +$ bash ./install_macos.sh ``` ### Webfonts From ca42d97738f0915cb2d645ef39c3c8c720e94deb Mon Sep 17 00:00:00 2001 From: Fabian Beiner Date: Fri, 10 Nov 2023 11:48:27 +0100 Subject: [PATCH 10/11] Update README.md Corrected some spelling mistakes, added Windows instructions, and tried to simplify readability. --- README.md | 43 +++++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index d3de6a3..c1cbf0f 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Monaspace -The Monaspace type system: a monospaced type superfamily with some modern tricks up its sleeves. It is comprised of five variable axis typefaces. Each one has a distinct voice, but they are all metrics-compatible with one another, allowing you to mix and match them for a more expressive typographical palette. +The Monaspace type system is a monospaced type superfamily with some modern tricks up its sleeve. It consists of five variable axis typefaces. Each one has a distinct voice, but they are all metrics-compatible with one another, allowing you to mix and match them for a more expressive typographical palette. Letters on a grid is how we see our code. Why not make those letters better? @@ -13,20 +13,20 @@ Letters on a grid is how we see our code. Why not make those letters better? ## Overview -Monaspace is made available as both a variable-axis font and as static builds. You can install them both side-by-side; their family names are distinct. For example: +Monaspace is available as a variable-axis font and a static build. You can install them both side-by-side; their family names are distinct. For example: - `Monaspace _____`: the static family - `Monaspace _____ Var` or `VF`: the variable family -The variable fonts have one file per family (Neon, Argon, etc). Modern and convenient! +The variable fonts have one file per family (Neon, Argon, etc.). Modern and convenient! -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. +The static fonts have one file per cut, per family. The variable axes have named stops for each axe, like `light` or `bold` for weight, `italic` for italics, and `semiwide` or `wide` for width. The combinatorial explosion of all these properties means the complete installation of static fonts involves hundreds of font files. But for situations that don't yet support variable fonts, the static builds give you a wide variety of stops throughout the range of each axis. ## Coding Ligatures -There are eight groups of coding ligatures, separated into stylistic sets. You may be able to selectively enable or disable individual sets: +There are eight groups of coding ligatures, separated into stylistic sets. You may be able to enable or disable individual sets selectively: -* `ss01`: ligatures related to the equals glyph like `!=` and `===`. +* `ss01`: ligatures related to the equals' glyph like `!=` and `===`. * `ss02`: ligatures related to the greater than or less than operators. * `ss03`: ligatures related to arrows like `->` and `=>`. * `ss04`: ligatures related to markup, like ``. @@ -35,7 +35,7 @@ There are eight groups of coding ligatures, separated into stylistic sets. You m * `ss07`: ligatures related to the asterisk like `***`. * `ss08`: ligatures related to combinations like `.=` or `.-`. -You must enable discrectionary ligatures first, often using the `dlig` setting. See below for editor-specific instructions. +You must enable discretionary ligatures first, often using the `dlig` setting. See below for editor-specific instructions. ![A visual glossary of code ligatures available in the Monaspace type system](https://github.com/githubnext/monaspace/assets/22723/49b4f802-265d-414c-94c0-ec712e3c0ecc) @@ -43,20 +43,23 @@ You must enable discrectionary ligatures first, often using the `dlig` setting. ## Desktop Installation ### MacOS -You can manually drag the fonts from the `fonts/otf` and `fonts/variable` directory into Font Book. +You can manually drag the fonts from the `fonts/otf` or `fonts/variable` directory into Font Book. -There is also a script which automates the deletion of all Monaspace fonts from `~/Library/Fonts` and then copies over the latest versions. Invoke it from the root of the repo like: +There is also a script that automates the deletion of all Monaspace fonts from `~/Library/Fonts` and then copies over the latest versions. Invoke it from the root of the repo like: ```bash $ cd util $ bash ./install_macos.sh ``` +### Windows +You can manually drag the fonts from the `fonts/otf` or `fonts/variable` directory into `C:\Windows\Fonts`. Alternatively, right-click the fonts you want and click Install. + ### Webfonts -All files with a `.woff` or `.woff2` suffix are intended for use on the web. You do not install them with your operating system, but rather add them to your web development project. +All files with a `.woff` or `.woff2` suffix are intended for use on the web. You do not install them with your operating system but add them to your web development project. -As with the desktop fonts, they are made available both as variable and static fonts. +As with the desktop fonts, they are available in variable and static versions. ## Editors @@ -71,7 +74,7 @@ Set the font family: > [!NOTE] > Variable fonts are not yet well-supported in VS Code, and it is not yet possible to mix multiple fonts. Stay tuned, we're talking with the VS Code team about it! -Texture healing and coding ligatures are controlled by the same setting. You can enable either, or both. +The same setting controls texture healing and coding ligatures. You can enable either or both. If you only want texture healing and basic coding ligatures, add the following line to your `settings.json`: @@ -80,17 +83,17 @@ If you only want texture healing and basic coding ligatures, add the following l ``` > [!NOTE] -> This setting is not available from the graphical settings editor, you must create it manually. +> This setting is unavailable from the graphical settings editor; you must create it manually. -If you want more coding ligatures, you must customize that setting to specify all of the sets you want enabled: +If you want more coding ligatures, you must customize that setting to specify all the sets you wish to enable: ```json "editor.fontLigatures": "'calt', 'liga', 'dlig', 'ss01', 'ss02', ... (more stylistic sets) ...", ``` > [!NOTE] -> 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. +> You must start the setting with `'calt', 'liga', 'dlig'`! The stylistic sets will only have an effect by enabling contextual alternates, ligatures, and discretionary ligatures. -If you want coding ligatures but do _not_ want texture healing, you can elide the `calt` setting: +If you want coding ligatures but do _not_ want texture healing, you can omit the `calt` setting: ```json "editor.fontLigatures": "'liga', 'dlig', 'ss01', 'ss02', ... (more stylistic sets) ...", @@ -98,11 +101,11 @@ If you want coding ligatures but do _not_ want texture healing, you can elide th ## Contribution -There's no formal contribution guide yet! If you're interested in contributing to the typefaces, you should read the [Texture Healing](https://github.com/githubnext/monaspace/blob/main/docs/Texture%20Healing.md) guide, as it explains how to produce the neccessary alternate glyphs. +There's no formal contribution guide yet! If you're interested in contributing to the typefaces, you should read the [Texture Healing](https://github.com/githubnext/monaspace/blob/main/docs/Texture%20Healing.md) guide, as it explains how to produce the necessary alternate glyphs. ### Renamer utility -This is a convenience utility which renames moves the built fonts into the respective directories. You will need [Deno](https://deno.land) installed, and invoke it thus: +This convenience utility renames and moves the built fonts into their respective directories. You will need [Deno](https://deno.land) installed, and invoke it thus: ```bash $ ./util/renamer.ts --src="~/path/to/the/built/fonts" @@ -114,11 +117,11 @@ SIL OFL. See [LICENSE](https://github.com/githubnext/monaspace/blob/main/LICENSE ## Support -Please file issues on this repo. Monaspace is not a supported product; do not reach out to GitHub support with questions as they do not provide support for GitHub Next explorations. +Please file issues in this repo. Monaspace is not a supported product; do not contact GitHub support with questions, as they do not support GitHub Next explorations. ## Contributors -Monaspace was made with the goal of improving all code, for all developers. [GitHub Next](https://githubnext.com) set out on this journey in 2022, and we were fortunate to find a type foundry that shares our passion for improving software in [Lettermatic](https://lettermatic.com/). The result is a marriage of form and function that opens the door to new developer experiences, and that would not have been possible without the domain expertise and skill of the lettermatic team, and the time they invested to work with GitHub Next on figuring out how typography ought to work for code. +Monaspace was made to improve all code for all developers. [GitHub Next](https://githubnext.com) set out on this journey in 2022, and we were fortunate to find a type foundry that shares our passion for improving software in [Lettermatic](https://lettermatic.com/). The result is a marriage of form and function that opens the door to new developer experiences, and that would not have been possible without the domain expertise and skill of the Lettermatic team and the time they invested in working with GitHub Next on figuring out how typography ought to work for code. #### Lettermatic From 2dc1180e43820534335ac6a3d50ba8feb8607141 Mon Sep 17 00:00:00 2001 From: Idan Gazit Date: Fri, 10 Nov 2023 16:20:07 -0800 Subject: [PATCH 11/11] Tweaks --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c1cbf0f..f9c2969 100644 --- a/README.md +++ b/README.md @@ -20,13 +20,13 @@ Monaspace is available as a variable-axis font and a static build. You can insta The variable fonts have one file per family (Neon, Argon, etc.). Modern and convenient! -The static fonts have one file per cut, per family. The variable axes have named stops for each axe, like `light` or `bold` for weight, `italic` for italics, and `semiwide` or `wide` for width. The combinatorial explosion of all these properties means the complete installation of static fonts involves hundreds of font files. But for situations that don't yet support variable fonts, the static builds give you a wide variety of stops throughout the range of each axis. +The static fonts have one file per cut, per family. The variable axes have named stops for each axis, like `light` or `bold` for weight, `italic` for italics, and `semiwide` or `wide` for width. The combinatorial explosion of all these properties means the complete installation of static fonts involves hundreds of font files. But for situations that don't yet support variable fonts, the static builds give you a wide variety of stops throughout the range of each axis. ## Coding Ligatures There are eight groups of coding ligatures, separated into stylistic sets. You may be able to enable or disable individual sets selectively: -* `ss01`: ligatures related to the equals' glyph like `!=` and `===`. +* `ss01`: ligatures related to the equals glyph like `!=` and `===`. * `ss02`: ligatures related to the greater than or less than operators. * `ss03`: ligatures related to arrows like `->` and `=>`. * `ss04`: ligatures related to markup, like ``.