26 Commits

Author SHA1 Message Date
kiliman 93d4d03ef5 🚀 Deploy 2.2.8 with profiles fix 2020-03-09 17:13:26 -04:00
kiliman 59435e4ee8 😍 Add @Jakob6174 as a contributor 2020-03-09 17:12:36 -04:00
kiliman cad9759288 📝 Add comment for family name value 2020-03-09 17:10:52 -04:00
kiliman d3940070ed 🐛 Fix multiple font generation using profiles 2020-03-09 17:08:59 -04:00
Kiliman 320fb069f7 Merge pull request #130 from Jakob6174/master
Minor inconsistency in newly generated font names
2020-03-09 17:07:53 -04:00
Jakob6174 d6c1df83ed Minor inconsistency in newly generated fontnames, original font doesn't specify 'font weight' for this particular 'namerecord' 2020-03-09 16:23:33 +00:00
Amit Parekh 0b29866a3e Merge pull request #127 from leshow/master
output -> build
2020-01-10 02:26:43 +00:00
Evan Cameron 9a70d50924 Fix typo 2020-01-09 17:11:05 -05:00
kiliman 68741971f1 ⬆️ Update serialize-javascript to 2.1.2 2020-01-09 11:07:35 -05:00
Kiliman bfae141c75 Merge pull request #126 from kiliman/dependabot/npm_and_yarn/npm-6.13.4
⬆️ Bump npm from 5.7.1 to 6.13.4
2020-01-07 10:23:43 -05:00
Amit Parekh 844b55f7b2 GitBook: [master] 4 pages modified 2019-12-21 23:55:36 +00:00
Amit Parekh 0c226a60bc GitBook: [master] 5 pages modified 2019-12-21 23:54:58 +00:00
Amit Parekh 2dd2079309 GitBook: [master] 2 pages modified 2019-12-20 14:44:28 +00:00
Amit Parekh 6f14cd709a GitBook: [master] 4 pages and 11 assets modified 2019-12-20 14:40:43 +00:00
dependabot[bot] 06b5464fd6 Bump npm from 5.7.1 to 6.13.4
Bumps [npm](https://github.com/npm/cli) from 5.7.1 to 6.13.4.
- [Release notes](https://github.com/npm/cli/releases)
- [Changelog](https://github.com/npm/cli/blob/latest/CHANGELOG.md)
- [Commits](https://github.com/npm/cli/compare/v5.7.1...v6.13.4)

Signed-off-by: dependabot[bot] <support@github.com>
2019-12-13 19:32:26 +00:00
Mark Skelton dc2d35f1c5 Comment out single ligature request line 2019-11-09 11:48:50 -06:00
Mark Skelton 0823ed98af Create new ligature template 2019-11-09 11:46:35 -06:00
Amit Parekh 7b6eb72e66 GitBook: [master] 4 pages and 6 assets modified 2019-11-02 22:00:53 +00:00
Mark Skelton 53e9951957 Remove assets from docs 2019-11-01 18:05:20 -05:00
Mark Skelton 44fc9b5ead GitBook: [master] 2 pages and 6 assets modified 2019-11-01 23:04:39 +00:00
Mark Skelton a86034b38d Update gitbook config 2019-11-01 18:04:06 -05:00
Mark Skelton c1bb4a9197 Revert "GitBook: [master] 2 pages and 3 assets modified"
This reverts commit 77244583f0.
2019-11-01 18:02:42 -05:00
Mark Skelton 77244583f0 GitBook: [master] 2 pages and 3 assets modified 2019-11-01 23:01:38 +00:00
Kiliman f26cecc4bf Merge pull request #119 from kiliman/gitbook
Create gitbook.yml
2019-11-01 18:56:21 -04:00
Mark Skelton 732a29a79f Create gitbook.yml 2019-11-01 17:43:20 -05:00
kiliman 258531d577 😍 Add @CandySunPlus as a contributor 2019-10-31 14:15:45 -04:00
38 changed files with 2590 additions and 3191 deletions
+18
View File
@@ -48,6 +48,24 @@
"doc",
"design"
]
},
{
"login": "CandySunPlus",
"name": "NikSun",
"avatar_url": "https://avatars0.githubusercontent.com/u/502700?v=4",
"profile": "https://github.com/CandySunPlus",
"contributions": [
"design"
]
},
{
"login": "Jakob6174",
"name": "Jakob Pearson",
"avatar_url": "https://avatars3.githubusercontent.com/u/40262817?v=4",
"profile": "https://github.com/Jakob6174",
"contributions": [
"code"
]
}
],
"contributorsPerLine": 7
+1
View File
@@ -0,0 +1 @@
root: ./docs
+47
View File
@@ -0,0 +1,47 @@
---
name: New ligature
about: Use this template for requesting new ligatures.
title: "Create `[LIGATURE NAME]` ligature"
labels: enhancement
---
<!-- Please only request a single ligature per issue, unless you would like something which has both symmetrical pairs (e.g. {{ and }}) -->
## Request preferences
* Weight requested: _State which weight you would like, and whether it is for SSm or not._
## Ligature description
_Please descirbe the ligature here as best you can. Feel free to use images/screenshots to help us get ideas of how to implement it._
---
### Ligature variations
Due to how development is handled, not all ligatures are created at the same time. However, we will get to them all eventually. If you would like to help us develop ligatures, please reach out to us via email at kiliman@gmail.com
#### Operator Mono
- [ ] XLight
- [ ] XLight Italic
- [ ] Light
- [ ] Light Italic
- [ ] Book
- [ ] Book Italic
- [ ] Medium
- [ ] Medium Italic
- [ ] Bold
- [ ] Bold Italic
#### Operator Mono SSm
- [ ] SSm Light
- [ ] SSm Light Italic
- [ ] SSm Book
- [ ] SSm Book Italic
- [ ] SSm Medium
- [ ] SSm Medium Italic
- [ ] SSm Bold
- [ ] SSm Bold Italic
+1
View File
@@ -1,4 +1,5 @@
build
node_modules
.idea
.vscode/launch.json
.DS_Store
+4 -2
View File
@@ -1,6 +1,6 @@
# Operator Mono Ligatures
[![All Contributors](https://img.shields.io/badge/all_contributors-4-orange.svg?style=flat-square)](#contributors-)
[![All Contributors](https://img.shields.io/badge/all_contributors-6-orange.svg?style=flat-square)](#contributors-)
<img src="./images/operator-mono-lig.png" />
@@ -94,7 +94,7 @@ If you use Docker, you can also use the executable Docker image [here](https://g
docker-compose run --rm operator-mono-lig
```
The image will build and execute the conversion. The new font files will be generated into the `output` folder.
The image will build and execute the conversion. The new font files will be generated into the `build` folder.
## Configure Your Code Editor
@@ -156,6 +156,8 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
<td align="center"><a href="https://github.com/mskelton"><img src="https://avatars3.githubusercontent.com/u/25914066?v=4" width="100px;" alt="Mark Skelton"/><br /><sub><b>Mark Skelton</b></sub></a><br /><a href="#design-mskelton" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/drod3763"><img src="https://avatars2.githubusercontent.com/u/7785716?v=4" width="100px;" alt="Derick Rodriguez"/><br /><sub><b>Derick Rodriguez</b></sub></a><br /><a href="https://github.com/kiliman/operator-mono-lig/commits?author=drod3763" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/amitkparekh"><img src="https://avatars3.githubusercontent.com/u/7276308?v=4" width="100px;" alt="Amit Parekh"/><br /><sub><b>Amit Parekh</b></sub></a><br /><a href="https://github.com/kiliman/operator-mono-lig/commits?author=amitkparekh" title="Documentation">📖</a> <a href="#design-amitkparekh" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/CandySunPlus"><img src="https://avatars0.githubusercontent.com/u/502700?v=4" width="100px;" alt="NikSun"/><br /><sub><b>NikSun</b></sub></a><br /><a href="#design-CandySunPlus" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/Jakob6174"><img src="https://avatars3.githubusercontent.com/u/40262817?v=4" width="100px;" alt="Jakob Pearson"/><br /><sub><b>Jakob Pearson</b></sub></a><br /><a href="https://github.com/kiliman/operator-mono-lig/commits?author=Jakob6174" title="Code">💻</a></td>
</tr>
</table>
+1 -1
View File
@@ -24,5 +24,5 @@ if not exist .\ligature\%lig%\glyphs\* exit /b
@echo Building %lig%
ttx -f .\original\%otf%.otf
node index.js %otf%
ttx -f .\build\%lig%.ttx
for %%f in (.\build\%lig%*.ttx) do ttx -f %%f
exit /b
+4 -1
View File
@@ -18,7 +18,10 @@ build_font() {
echo Building $1
ttx -f "./original/$otf.otf"
node index.js $otf
ttx -f ./build/$1.ttx
for f in ./build/$1*.ttx ; do
ttx -f $f
done
}
if [ -n "$1" ]
Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 273 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 378 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

+4
View File
@@ -0,0 +1,4 @@
# Introduction
Testing
+19
View File
@@ -0,0 +1,19 @@
# Table of contents
* [Introduction](README.md)
* [Installation instructions](installation-instructions.md)
* [Changelog](changelog.md)
## Developing ligatures
* [Setting up your development environment](developing-ligatures/setting-up-your-development-environment.md)
* [Designing your first ligature](developing-ligatures/designing-your-first-ligature.md)
* [Committing your Glyphs file](developing-ligatures/committing-your-glyphs-file.md)
* [Ensuring ligatures work at small sizes](developing-ligatures/ensuring-ligatures-work-at-small-sizes.md)
## Ligature Recipes
* [www](ligature-recipes/www.md)
* [Double-braces](ligature-recipes/double-braces/README.md)
* [Roman variant](ligature-recipes/double-braces/roman-variant.md)
+26
View File
@@ -0,0 +1,26 @@
---
description: See what has changed each release.
---
# Changelog
###
## 15.0.0 - 2042-12-0
### Fixed
* Removed humans, they weren't doing fine with animals.
### Changed
* Animals are now super cute, all of them.
## 14.0.0 - 2042-10-06
### Added
* Introduced animals into the world, we believe they're going to be a neat addition.
@@ -0,0 +1,21 @@
# Committing your Glyphs file
The Glyphs file is very difficult to merge, so standard tools like `git rebase` don't work well. I have created some tools that will allow you to update your existing Glyphs file on top of the current.
{% hint style="warning" %}
Make sure you have created a separate branch for your changes and you've committed all your changes to the branch.
{% endhint %}
1. When you're ready to issue a PR for your changes, you need to run the `./tools/glyphysrebase.sh` tool.
2. You can now create your PR, or continue making changes and running the rebase tool periodically to keep up-to-date with master.
## How the tool works
1. Checks out a clean copy of `master` in a temporary folder.
2. Copies your current working copy to a backup folder.
3. Copies the master copy into your working copy \(basically resetting everything back before your changes\).
4. Runs the `./tools/copyallglyphs.sh` script to copy ligatures from your backup folder to the current master in your working copy.
5. At this point, you now have a glyphs file that includes your custom ligatures on top of the current master.
6. The "rebased" files are then committed.
7. You can now issue a PR. This should easily merge into master.
@@ -0,0 +1,23 @@
# Designing your first ligature
## Getting Super Powers
Becoming a super hero is a fairly straight forward process:
```
$ give me super-powers
```
{% hint style="info" %}
Super-powers are granted randomly so please submit an issue if you're not happy with yours.
{% endhint %}
Once you're strong enough, save the world:
```
// Ain't no code for that yet, sorry
echo 'You got to trust me on this, I saved the world'
```
@@ -0,0 +1,6 @@
# Ensuring ligatures work at small sizes
After creating each ligature, you going to need to make sure it works at very small sizes. Ensure the brace works at very small sizes by looking at it when its very small, by dragging up from the bottom of the editor. This need to be done because as [ScreenSmart fonts are guaranteed to work at a minimum of 9px](https://www.typography.com/fonts/operator/how-to-use#setting_text_and_headlines):
![](../.gitbook/assets/image%20%288%29.png)
@@ -0,0 +1,27 @@
---
description: Things you will need to create additional ligatures.
---
# Setting up your development environment
## Getting Super Powers
Becoming a super hero is a fairly straight forward process:
```
$ give me super-powers
```
{% hint style="info" %}
Super-powers are granted randomly so please submit an issue if you're not happy with yours.
{% endhint %}
Once you're strong enough, save the world:
```
// Ain't no code for that yet, sorry
echo 'You got to trust me on this, I saved the world'
```
+6
View File
@@ -0,0 +1,6 @@
---
description: How to install the ligatures
---
# Installation instructions
@@ -0,0 +1,43 @@
---
description: Recipe for the double-brace ligature
---
# Double-braces
## Creating the ligature \(Roman\)
1.
![Settings for the middle guide for the Roman ligature](../../.gitbook/assets/image%20%281%29.png)
For whichever brace is the "inner-brace", change the dimensions as so, changing only the size \(the `%` in the middle column\) and the rotation \(the right most setting\):
![Settings for the dimensions of the inner-brace](../../.gitbook/assets/image%20%283%29.png)
Move the left-most brace to the left and the right-most brace to the left so the top/bottom parts cross the middle guide and the numbers are like so:
![](../../.gitbook/assets/image%20%287%29.png)
Create a new guide and move the guide so it intersects the pointy inner-corner of the larger brace
![](../../.gitbook/assets/image%20%286%29.png)
Move the smaller brace vertically \(up/down\) so the two pointy inner-corner bits cross like so:
![](../../.gitbook/assets/image.png)
## Creating the italic ligature
Repeat all the steps as above ligature above **BUT set the middle guide** **to**:
![Middle-guide settings for the italic ligature](../../.gitbook/assets/image%20%289%29.png)
## Final ligatures
![\`{{\` roman ligature](../../.gitbook/assets/image%20%284%29.png)
![\`}}\` roman ligature](../../.gitbook/assets/image%20%282%29.png)
![\`{{\` italic ligature](../../.gitbook/assets/image%20%2810%29.png)
![\`}}\` italic ligature](../../.gitbook/assets/image%20%285%29.png)
@@ -0,0 +1,14 @@
---
description: How to create the Roman variant of the double-brace ligature
---
# Roman variant
{% hint style="info" %}
{% endhint %}
1. Add the `braceleft` component twice, or `braceright` component twice.
2. Create a guide \(Right-click -&gt; Add Guide\)
3. Set the settings on the guide as so:
+2
View File
@@ -0,0 +1,2 @@
# www
+6 -6
View File
@@ -36,9 +36,7 @@ function main() {
const buildFont = profile => {
// add suffix to dstFileName if present
const dstFileName = `./build/${ligFontName}${
profile.suffixWithLeadingHyphen
}.ttx`;
const dstFileName = `./build/${ligFontName}${profile.suffixWithLeadingHyphen}.ttx`;
console.log(
`Building ligature font file ${dstFileName} name = ${profile.name}`
);
@@ -87,7 +85,7 @@ const getProfiles = () => {
const content = fs.readFileSync(profilePath, 'utf-8');
content
.split(os.EOL)
.split(/\r|\r\n|\n/g)
.filter(line => /^[#]/.test(line) === false && line.length > 0)
.forEach(line => {
const ch = line.trim()[0];
@@ -103,7 +101,7 @@ const getProfiles = () => {
profiles.push(profile);
} else {
if (!profile) {
throw new Error('You must profile a profile name in []');
throw new Error('You must provide a profile name in []');
}
profile.ligatures.push(line);
}
@@ -216,7 +214,8 @@ const patchNames = (dom, ligatures, profile) => {
setAttribute(cffFont, 'FamilyName', 'value', familyNamePlat);
// update existing names with new names
updateName(PlatformId.mac, NameId.familyName, familyName);
// mac family name does not include style
updateName(PlatformId.mac, NameId.familyName, familyNamePlat);
updateName(PlatformId.mac, NameId.fontStyle, names.fontStyle);
updateName(PlatformId.mac, NameId.uniqueId, uniqueId);
updateName(PlatformId.mac, NameId.fullName, fullName);
@@ -224,6 +223,7 @@ const patchNames = (dom, ligatures, profile) => {
updateName(PlatformId.mac, NameId.windowsFamilyName, familyNamePlat);
updateName(PlatformId.mac, NameId.fontStyleName, names.fontStyle);
// windows family name includes style
updateName(PlatformId.win, NameId.familyName, familyName);
updateName(PlatformId.win, NameId.fontStyle, names.windowsFontStyle);
updateName(PlatformId.win, NameId.uniqueId, uniqueId);
+2314 -3179
View File
File diff suppressed because it is too large Load Diff
+3 -2
View File
@@ -1,6 +1,6 @@
{
"name": "operator-mono-lig",
"version": "2.2.7",
"version": "2.2.8",
"description": "Patch Operator Mono font to include ligatures",
"main": "index.js",
"scripts": {
@@ -12,7 +12,8 @@
"license": "ISC",
"dependencies": {
"hash.js": "^1.1.3",
"npm": "^5.7.1",
"npm": "^6.13.4",
"serialize-javascript": "^2.1.2",
"xml-formatter": "^1.0.1",
"xmldom": "^0.1.27",
"xpath": "0.0.24"