1
0
Fork 0
mirror of synced 2024-05-17 11:03:33 +12:00

Version 0.4

This commit is contained in:
Nikita Prokopov 2015-05-26 01:52:15 +06:00
parent 36fa31f2b8
commit 2cf4cf5448
22 changed files with 337 additions and 55 deletions

View file

@ -1,4 +1,7 @@
feature liga {
sub asciitilde equal by asciitilde_equal;
sub asciitilde asciitilde by asciitilde_asciitilde;
sub numbersign bracketleft by numbersign_bracketleft;
sub numbersign question by numbersign_question;
sub asciitilde at by asciitilde_at;
sub equal colon equal by equal_colon_equal;

View file

@ -3,13 +3,96 @@
<advance width="1200"/>
<outline>
<contour>
<point x="850" y="62" type="line"/>
<point x="637" y="465" type="line"/>
<point x="563" y="465" type="line"/>
<point x="350" y="62" type="line"/>
<point x="439" y="62" type="line"/>
<point x="599" y="391" type="line"/>
<point x="759" y="62" type="line"/>
<point x="1044" y="81" type="curve"/>
<point x="1044" y="354" type="line"/>
<point x="1133" y="354" type="line"/>
<point x="1133" y="419" type="line"/>
<point x="855" y="419" type="line" smooth="yes"/>
<point x="786" y="419"/>
<point x="732" y="473"/>
<point x="732" y="534" type="curve" smooth="yes"/>
<point x="732" y="594"/>
<point x="767" y="636"/>
<point x="838" y="636" type="curve" smooth="yes"/>
<point x="888" y="636"/>
<point x="921" y="617"/>
<point x="956" y="579" type="curve"/>
<point x="1006" y="624" type="line"/>
<point x="951" y="684"/>
<point x="898" y="699"/>
<point x="839" y="699" type="curve" smooth="yes"/>
<point x="722" y="699"/>
<point x="650" y="622"/>
<point x="650" y="534" type="curve" smooth="yes"/>
<point x="650" y="491"/>
<point x="665" y="448"/>
<point x="704" y="419" type="curve"/>
<point x="335" y="419" type="line" smooth="yes"/>
<point x="266" y="419"/>
<point x="212" y="473"/>
<point x="212" y="534" type="curve" smooth="yes"/>
<point x="212" y="594"/>
<point x="247" y="636"/>
<point x="318" y="636" type="curve" smooth="yes"/>
<point x="368" y="636"/>
<point x="401" y="617"/>
<point x="436" y="579" type="curve"/>
<point x="486" y="624" type="line"/>
<point x="431" y="684"/>
<point x="378" y="699"/>
<point x="319" y="699" type="curve" smooth="yes"/>
<point x="202" y="699"/>
<point x="130" y="622"/>
<point x="130" y="534" type="curve" smooth="yes"/>
<point x="130" y="472"/>
<point x="160" y="411"/>
<point x="251" y="390" type="curve"/>
<point x="251" y="387" type="line"/>
<point x="150" y="366"/>
<point x="94" y="298"/>
<point x="94" y="195" type="curve" smooth="yes"/>
<point x="94" y="92"/>
<point x="161" y="-11"/>
<point x="316" y="-11" type="curve" smooth="yes"/>
<point x="432" y="-11"/>
<point x="494" y="43"/>
<point x="524" y="81" type="curve"/>
<point x="524" y="354" type="line"/>
<point x="690" y="354" type="line"/>
<point x="641" y="320"/>
<point x="614" y="266"/>
<point x="614" y="195" type="curve" smooth="yes"/>
<point x="614" y="92"/>
<point x="681" y="-11"/>
<point x="836" y="-11" type="curve" smooth="yes"/>
<point x="952" y="-11"/>
<point x="1014" y="43"/>
</contour>
<contour>
<point x="843" y="354" type="curve" smooth="yes"/>
<point x="968" y="354" type="line"/>
<point x="968" y="109" type="line"/>
<point x="941" y="75"/>
<point x="894" y="56"/>
<point x="839" y="56" type="curve" smooth="yes"/>
<point x="737" y="56"/>
<point x="695" y="125"/>
<point x="695" y="198" type="curve" smooth="yes"/>
<point x="695" y="269"/>
<point x="739" y="354"/>
</contour>
<contour>
<point x="323" y="354" type="curve" smooth="yes"/>
<point x="448" y="354" type="line"/>
<point x="448" y="109" type="line"/>
<point x="421" y="75"/>
<point x="374" y="56"/>
<point x="319" y="56" type="curve" smooth="yes"/>
<point x="217" y="56"/>
<point x="175" y="125"/>
<point x="175" y="198" type="curve" smooth="yes"/>
<point x="175" y="269"/>
<point x="219" y="354"/>
</contour>
</outline>
<lib>

View file

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8"?>
<glyph name="asciitilde_asciitilde" format="1">
<advance width="1200"/>
<outline>
<contour>
<point x="886" y="228" type="curve" smooth="yes"/>
<point x="974" y="228"/>
<point x="1018" y="298"/>
<point x="1047" y="354" type="curve"/>
<point x="988" y="385" type="line"/>
<point x="962" y="338"/>
<point x="930" y="300"/>
<point x="889" y="300" type="curve" smooth="yes"/>
<point x="827" y="300"/>
<point x="797" y="400"/>
<point x="696" y="400" type="curve" smooth="yes"/>
<point x="641" y="400"/>
<point x="604" y="374"/>
<point x="576" y="340" type="curve" smooth="yes"/>
<point x="574" y="338" type="line"/>
<point x="557" y="317"/>
<point x="534" y="300"/>
<point x="507" y="300" type="curve" smooth="yes"/>
<point x="445" y="300"/>
<point x="415" y="400"/>
<point x="314" y="400" type="curve" smooth="yes"/>
<point x="225" y="400"/>
<point x="182" y="331"/>
<point x="153" y="273" type="curve"/>
<point x="212" y="243" type="line"/>
<point x="238" y="291"/>
<point x="268" y="328"/>
<point x="311" y="328" type="curve" smooth="yes"/>
<point x="375" y="328"/>
<point x="410" y="228"/>
<point x="504" y="228" type="curve" smooth="yes"/>
<point x="562" y="228"/>
<point x="601" y="258"/>
<point x="629" y="295" type="curve"/>
<point x="646" y="314"/>
<point x="667" y="328"/>
<point x="693" y="328" type="curve" smooth="yes"/>
<point x="757" y="328"/>
<point x="792" y="228"/>
</contour>
</outline>
<lib>
<dict>
<key>com.typemytype.robofont.layerData</key>
<dict>
</dict>
</dict>
</lib>
</glyph>

View file

@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<glyph name="asciitilde_equal" format="1">
<advance width="1200"/>
<outline>
<contour>
<point x="267" y="397" type="curve" smooth="yes"/>
<point x="178" y="397"/>
<point x="135" y="328"/>
<point x="106" y="270" type="curve"/>
<point x="165" y="240" type="line"/>
<point x="191" y="288"/>
<point x="221" y="325"/>
<point x="264" y="325" type="curve" smooth="yes"/>
<point x="328" y="325"/>
<point x="363" y="225"/>
<point x="457" y="225" type="curve" smooth="yes"/>
<point x="545" y="225"/>
<point x="589" y="295"/>
<point x="618" y="351" type="curve"/>
<point x="621" y="355"/>
<point x="626" y="370"/>
<point x="641" y="370" type="curve"/>
<point x="645" y="442" type="line"/>
<point x="597" y="442"/>
<point x="566" y="396"/>
<point x="559" y="382" type="curve"/>
<point x="533" y="335"/>
<point x="501" y="297"/>
<point x="460" y="297" type="curve" smooth="yes"/>
<point x="398" y="297"/>
<point x="368" y="397"/>
</contour>
<contour>
<point x="1094" y="370" type="line"/>
<point x="1094" y="442" type="line"/>
<point x="645" y="442" type="line"/>
<point x="641" y="370" type="line"/>
</contour>
<contour>
<point x="1094" y="180" type="line"/>
<point x="1094" y="252" type="line"/>
<point x="681" y="252" type="line"/>
<point x="681" y="180" type="line"/>
</contour>
</outline>
<lib>
<dict>
<key>com.typemytype.robofont.layerData</key>
<dict>
</dict>
</dict>
</lib>
</glyph>

View file

@ -2,15 +2,8 @@
<glyph name="bar_bar" format="1">
<advance width="1200"/>
<outline>
<contour>
<point x="350" y="464" type="line"/>
<point x="563" y="61" type="line"/>
<point x="637" y="61" type="line"/>
<point x="850" y="464" type="line"/>
<point x="761" y="464" type="line"/>
<point x="601" y="135" type="line"/>
<point x="441" y="464" type="line"/>
</contour>
<component base="bar" xOffset="463"/>
<component base="bar" xOffset="138"/>
</outline>
<lib>
<dict>

View file

@ -412,8 +412,12 @@
<string>asciitilde.glif</string>
<key>asciitilde.tosf</key>
<string>asciitilde.tosf.glif</string>
<key>asciitilde_asciitilde</key>
<string>asciitilde_asciitilde.glif</string>
<key>asciitilde_at</key>
<string>asciitilde_at.glif</string>
<key>asciitilde_equal</key>
<string>asciitilde_equal.glif</string>
<key>asterisk</key>
<string>asterisk.glif</string>
<key>asterisk_slash</key>
@ -986,6 +990,8 @@
<string>numbersign.glif</string>
<key>numbersign.tosf</key>
<string>numbersign.tosf.glif</string>
<key>numbersign_bracketleft</key>
<string>numbersign_bracketleft.glif</string>
<key>numbersign_parenleft</key>
<string>numbersign_parenleft.glif</string>
<key>numbersign_question</key>

View file

@ -3,16 +3,22 @@
<advance width="1800"/>
<outline>
<contour>
<point x="1694" y="370" type="line"/>
<point x="1694" y="442" type="line"/>
<point x="106" y="442" type="line"/>
<point x="106" y="370" type="line"/>
<point x="1640" y="466" type="line"/>
<point x="1640" y="537" type="line"/>
<point x="160" y="537" type="line"/>
<point x="160" y="466" type="line"/>
</contour>
<contour>
<point x="1694" y="180" type="line"/>
<point x="1694" y="252" type="line"/>
<point x="106" y="252" type="line"/>
<point x="106" y="180" type="line"/>
<point x="1640" y="276" type="line"/>
<point x="1640" y="348" type="line"/>
<point x="160" y="348" type="line"/>
<point x="160" y="276" type="line"/>
</contour>
<contour>
<point x="1640" y="86" type="line"/>
<point x="1640" y="158" type="line"/>
<point x="160" y="158" type="line"/>
<point x="160" y="86" type="line"/>
</contour>
</outline>
<lib>

View file

@ -22,7 +22,8 @@
<point x="159" y="370" type="line"/>
<point x="714" y="370" type="line"/>
<point x="786" y="381" type="line"/>
<point x="652" y="313" type="line"/>
<point x="737" y="356" type="line"/>
<point x="737" y="270" type="line"/>
<point x="796" y="240" type="line"/>
<point x="715" y="252" type="line"/>
<point x="159" y="252" type="line"/>

View file

@ -3,26 +3,34 @@
<advance width="1800"/>
<outline>
<contour>
<point x="672" y="370" type="line"/>
<point x="1640" y="370" type="line"/>
<point x="1640" y="442" type="line"/>
<point x="715" y="442" type="line"/>
<point x="824" y="624" type="line"/>
<point x="754" y="659" type="line"/>
<point x="625" y="442" type="line"/>
<point x="160" y="442" type="line"/>
<point x="160" y="370" type="line"/>
<point x="582" y="370" type="line"/>
<point x="512" y="252" type="line"/>
<point x="160" y="252" type="line"/>
<point x="160" y="180" type="line"/>
<point x="469" y="180" type="line"/>
<point x="366" y="10" type="line"/>
<point x="438" y="-26" type="line"/>
<point x="560" y="180" type="line"/>
<point x="1640" y="180" type="line"/>
<point x="1640" y="252" type="line"/>
<point x="603" y="252" type="line"/>
<point x="1640" y="86" type="line"/>
<point x="1640" y="158" type="line"/>
<point x="850" y="158" type="line"/>
<point x="920" y="276" type="line"/>
<point x="1640" y="276" type="line"/>
<point x="1640" y="348" type="line"/>
<point x="963" y="348" type="line"/>
<point x="1033" y="466" type="line"/>
<point x="1640" y="466" type="line"/>
<point x="1640" y="537" type="line"/>
<point x="1075" y="537" type="line"/>
<point x="1128" y="624" type="line"/>
<point x="1058" y="659" type="line"/>
<point x="986" y="537" type="line"/>
<point x="160" y="537" type="line"/>
<point x="160" y="466" type="line"/>
<point x="944" y="466" type="line"/>
<point x="873" y="348" type="line"/>
<point x="160" y="348" type="line"/>
<point x="160" y="276" type="line"/>
<point x="830" y="276" type="line"/>
<point x="759" y="158" type="line"/>
<point x="160" y="158" type="line"/>
<point x="160" y="86" type="line"/>
<point x="716" y="86" type="line"/>
<point x="670" y="10" type="line"/>
<point x="742" y="-26" type="line"/>
<point x="808" y="86" type="line"/>
</contour>
</outline>
<lib>

View file

@ -17,7 +17,8 @@
<point x="1641" y="252" type="line"/>
<point x="1085" y="252" type="line"/>
<point x="1004" y="240" type="line"/>
<point x="1148" y="313" type="line"/>
<point x="1057" y="266" type="line"/>
<point x="1057" y="359" type="line"/>
<point x="1014" y="381" type="line"/>
<point x="1086" y="370" type="line"/>
<point x="1641" y="370" type="line"/>

View file

@ -0,0 +1,59 @@
<?xml version="1.0" encoding="UTF-8"?>
<glyph name="numbersign_bracketleft" format="1">
<advance width="1200"/>
<outline>
<contour>
<point x="1034" y="-115" type="line"/>
<point x="1034" y="-45" type="line"/>
<point x="863" y="-45" type="line"/>
<point x="863" y="744" type="line"/>
<point x="1034" y="744" type="line"/>
<point x="1034" y="815" type="line"/>
<point x="784" y="815" type="line"/>
<point x="784" y="521" type="line"/>
<point x="524" y="521" type="line"/>
<point x="548" y="688" type="line"/>
<point x="477" y="688" type="line"/>
<point x="455" y="521" type="line"/>
<point x="307" y="521" type="line"/>
<point x="331" y="688" type="line"/>
<point x="260" y="688" type="line"/>
<point x="238" y="521" type="line"/>
<point x="148" y="521" type="line"/>
<point x="148" y="456" type="line"/>
<point x="229" y="456" type="line"/>
<point x="199" y="234" type="line"/>
<point x="111" y="234" type="line"/>
<point x="111" y="170" type="line"/>
<point x="191" y="170" type="line"/>
<point x="168" y="0" type="line"/>
<point x="239" y="0" type="line"/>
<point x="261" y="170" type="line"/>
<point x="407" y="170" type="line"/>
<point x="385" y="0" type="line"/>
<point x="456" y="0" type="line"/>
<point x="477" y="170" type="line"/>
<point x="784" y="170" type="line"/>
<point x="784" y="-115" type="line"/>
</contour>
<contour>
<point x="486" y="234" type="line"/>
<point x="516" y="456" type="line"/>
<point x="784" y="456" type="line"/>
<point x="784" y="234" type="line"/>
</contour>
<contour>
<point x="416" y="234" type="line"/>
<point x="270" y="234" type="line"/>
<point x="299" y="456" type="line"/>
<point x="446" y="456" type="line"/>
</contour>
</outline>
<lib>
<dict>
<key>com.typemytype.robofont.layerData</key>
<dict>
</dict>
</dict>
</lib>
</glyph>

View file

@ -15,7 +15,7 @@
<key>com.typemytype.robofont.compileSettings.generateFormat</key>
<integer>0</integer>
<key>com.typemytype.robofont.compileSettings.path</key>
<string>/Users/prokopov/Desktop/FiraCode-Regular.otf</string>
<string>/Users/prokopov/Dropbox/Public/Fonts/FiraCode/FiraCode-Regular.otf</string>
<key>com.typemytype.robofont.compileSettings.releaseMode</key>
<integer>1</integer>
<key>com.typemytype.robofont.layerOrder</key>
@ -1198,6 +1198,12 @@
<string>equal_greater_greater</string>
<string>less_hyphen_hyphen</string>
<string>hyphen_hyphen_greater</string>
<string>asciitilde_at</string>
<string>numbersign_question</string>
<string>equal_colon_equal</string>
<string>asciitilde_equal</string>
<string>numbersign_bracketleft</string>
<string>asciitilde_asciitilde</string>
</array>
<key>type</key>
<string>glyphList</string>
@ -2378,6 +2384,9 @@
<string>asciitilde_at</string>
<string>numbersign_question</string>
<string>equal_colon_equal</string>
<string>asciitilde_equal</string>
<string>numbersign_bracketleft</string>
<string>asciitilde_asciitilde</string>
</array>
</dict>
</plist>

Binary file not shown.

Binary file not shown.

View file

@ -1,6 +1,6 @@
## Fira Code: monospaced font with programming ligatures
#### [Download Fira Code v0.3](https://github.com/tonsky/FiraCode/releases/download/0.3/FiraCode-Regular.otf)
#### [Download Fira Code v0.4](https://github.com/tonsky/FiraCode/releases/download/0.4/FiraCode-Regular.otf)
### Problem
@ -12,11 +12,11 @@ Fira Code is a Fira Mono font extended with a set of ligatures for common progra
### Fira Code (with ligatures):
<img src="./showcases/all_ligatures.png" style="width: 728px; height: 175px;"/>
<img src="./showcases/all_ligatures.png" />
Compare to Fira Mono (without ligatures):
<img src="./showcases/no_ligatures.png" style="width: 728px; height: 175px;"/>
<img src="./showcases/no_ligatures.png" />
### Editor support
@ -28,23 +28,23 @@ _Note:_ Im not a font designer, and Fira Code is built in sort of [a hacky wa
Erlang:
<img src="./showcases/erlang.png" width="405" height="433" />
<img src="./showcases/erlang.png" />
Go:
<img src="./showcases/go.png" width="274" height="171"/>
<img src="./showcases/go.png" />
Haskell:
<img src="./showcases/haskell.png" width="319" height="265"/>
<img src="./showcases/haskell.png" />
JavaScript:
<img src="./showcases/javascript.png" width="361" height="183"/>
<img src="./showcases/javascript.png" />
Ruby:
<img src="./showcases/ruby.png" width="464" height="143"/>
<img src="./showcases/ruby.png" />
### Credits
@ -55,6 +55,12 @@ Fira Code was inspired by [Hasklig font](https://github.com/i-tu/Hasklig): Ligat
### Changelog
**0.4**:
- Added `~=` `~~` `#[`
- Rolled back `&&` and `||` to more traditional look
- `===` and `!==` are now rendered with 3 horisontal bars
**0.3**: `~@` `#?` `=:=` `=<`
**0.2.1**: Fixed width of `&&` and `||`

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 56 KiB