Changes:
# Version 2.019 (release build)
ttf, otf, webfont builds
- removed SVG from webfont releases
- Corrected U+2588 glyph shape in regular set (had inappropriately small
width and height)
- decreased width U+2580 all sets
- decreased width U+2581 all sets
- decreased width U+2582 all sets
- decreased width U+2583 all sets
- decreased width U+2584 all sets
- decreased width U+2585 all sets
- decreased width U+2586 all sets
- decreased width U+2857 all sets
- adjusted left sidebearing U+2589 all sets
- adjusted left sidebearing U+258A all sets
- adjusted left sidebearing U+258B all sets
- adjusted left sidebearing U+258C all sets
- adjusted left sidebearing U+258D all sets
- adjusted left sidebearing U+258E all sets
- adjusted left sidebearing U+258F all sets
- adjusted right sidebearing U+2590 all sets
- decreased width of U+2594 all sets
- adjusted right sidebearing U+2595 all sets
- adjusted left sidebearing U+2596 all sets
- adjusted right sidebearing U+2597 all sets
- adjusted left sidebearing U+2598 all sets
- decreased width of U+2599 all sets
- decreased width of U+259A all sets
- decreased width of U+259B all sets
- decreased width of U+259C all sets
- adjusted right sidebearing U+259D all sets
- decreased width of U+259E all sets
- decreased width of U+259F all sets
- increased upper terminal position to 1950 units U+2580 all sets
- increased upper terminal position to 1950 units U+2588 all sets
- increased upper terminal position to 1950 units U+2589 all sets
- increased upper terminal position to 1950 units U+258A all sets
- increased upper terminal position to 1950 units U+258B all sets
- increased upper terminal position to 1950 units U+258C all sets
- increased upper terminal position to 1950 units U+258D all sets
- increased upper terminal position to 1950 units U+258E all sets
- increased upper terminal position to 1950 units U+258F all sets
- increased upper terminal position to 1950 units U+2590 all sets
- increased upper terminal position to 1950 units U+2594 all sets
- increased upper terminal position to 1950 units U+2595 all sets
- increased upper terminal position to 1950 units U+2598 all sets
- increased upper terminal position to 1950 units U+2599 all sets
- increased upper terminal position to 1950 units U+259A all sets
- increased upper terminal position to 1950 units U+259B all sets
- increased upper terminal position to 1950 units U+259C all sets
- increased upper terminal position to 1950 units U+259D all sets
- increased upper terminal position to 1950 units U+259E all sets
- increased upper terminal position to 1950 units U+259F all sets
- reverted Cyrillic lower case es glyph (U+0441) to Latin lower case c shape
- reverted Cyrillic upper case es glyph (U+0421) to Latin upper case C shape
Version 2.018 (release build)
ttf, otf, webfont builds
Patch for missing glyphs in regular set:
added U+016C (upper case U breve), regular set - Issue #21
added U+016D (lower case u breve), regular set - Issue #21
Version 2.017 (release build)
ttf, otf, webfont builds
Changes vs. release v2.015:
increased vertical position of the tilde (U+007E) to improve alignment with other glyphs - Issue #23
increased width of the vertical stroke on the dollar symbol (U+0024) - Issue #92
modified Cyrillic upper case C (U+0421) to differentiate from Latin C - Issues #22 & #29
modified Cyrillic lower case c (U+0441) to differentiate from Latin c - Issues #22 & #29
modified upper case theta (U+0398) to differentiate from lower case theta - Issue #36
added U+0132 (IJ) glyph - Issue #52
added U+0133 (ij) glyph - Issue #52
added U+013F (upper case L dot) glyph - Issue #52
added U+0140 (lower case l dot) glyph - Issue #52
added U+0162 (upper case T cedilla) glyph - Issue #52
added U+0163 (lower case t cedilla) glyph - Issue #52
added U+0138 (kgreenlandic) glyph - Issue #52
added U+266A (musical note) glyph - Issue #52
added U+0149 (lower case n apostrophe) - Issue #52
added U+1EF9 (lower case y tilde) glyph - Issue #102
added U+1EF8 (upper case Y tilde) glyph - Issue #102
added U+1EBD (lower case e tilde) glyph - Issue #102
added U+1EBC (upper case E tilde) glyph - Issue #102
added U+2116 (numero) glyph - Issues #22 & #114
added U+01A4 (p hook) glyph - Issue #105
added U+0108 (upper case C circumflex) - Issue #21
added U+0109 (lower case c circumflex) - Issue #21
added U+011C (upper case G circumflex) - Issue #21
added U+011D (lower case g circumflex) - Issue #21
added U+0124 (upper case H circumflex) - Issue #21
added U+0125 (lower case h circumflex) - Issue #21
added U+0134 (upper case J circumflex) - Issue #21
added U+0135 (lower case j circumflex) - Issue #21
added U+015C (upper case S circumflex) - Issue #21
added U+015D (lower case s circumflex) - Issue #21
added U+016C (upper case U breve) - Issue #21
added U+016D (lower case u breve) - Issue #21
added U+20B7 (spesmilo) - Issue #21
fixed missing null glyph (U+0000) in regular, italic, bolditalic sets
removed duplicate CR glyph (U+000D) in all sets - Issue #149
updated ttfautohint to version 1.4.1 for TrueType (.ttf) build instruction sets
Version 2.016 (testing build)
increased vertical position of the tilde (U+007E) to improve alignment with other glyphs - Issue #23
increased width of the vertical stroke on the dollar symbol (U+0024) - Issue #92
modified Cyrillic upper case C (U+0421) to differentiate from Latin C - Issues #22 & #29
modified Cyrillic lower case c (U+0441) to differentiate from Latin c - Issues #22 & #29
modified upper case theta (U+0398) to differentiate from lower case theta - Issue #36
added U+1EF9 (lower case y tilde) glyph - Issue #102
added U+1EF8 (upper case Y tilde) glyph - Issue #102
added U+1EBD (lower case e tilde) glyph - Issue #102
added U+1EBC (upper case E tilde) glyph - Issue #102
added U+2116 (numero) glyph - Issues #22 & #114
added U+01A4 (p hook) glyph - Issue #105
added U+0108 (upper case C circumflex) - Issue #21
added U+0109 (lower case c circumflex) - Issue #21
added U+011C (upper case G circumflex) - Issue #21
added U+011D (lower case g circumflex) - Issue #21
added U+0124 (upper case H circumflex) - Issue #21
added U+0125 (lower case h circumflex) - Issue #21
added U+0134 (upper case J circumflex) - Issue #21
added U+0135 (lower case j circumflex) - Issue #21
added U+015C (upper case S circumflex) - Issue #21
added U+015D (lower case s circumflex) - Issue #21
added U+016C (upper case U breve) - Issue #21
added U+016D (lower case u breve) - Issue #21
added U+20B7 (spesmilo) - Issue #21
updated ttfautohint to version 1.4 for TrueType (.ttf) build instruction sets
pkgsrc changes (no functional changes intended):
o unset USE_LANGUAGES
o use NO_BUILD instead of defining an empty do-build target
Changes:
# Version 2.015 (release build)
Changes vs. release v2.013:
- new vertical metrics = decreased line spacing height - Issues #28, #32, #39,
#41, #95, #103
- adjusted vertical position of the colon to a higher position, improves
alignment with other punctuation glyphs (U+003A) - Issue #66
- changed vertical position of the dash (U+002D) so that regular and oblique,
bold and bold oblique are properly aligned - Issue #107
- updated hinting algorithm for bold set (improved point position over stem of
lowercase j/i for some text sizes) - Issue #84
- underscore (U+005F) centered, increased width, increased height & aligned
vertical position closer to baseline - Issues #97, #98, #100, 103,
- increased vertical position of dieresis mark on lowercase u dieresis
(U+00FC) - Issue #61
- increased vertical position of dieresis mark on lowercase i dieresis (U+00EF)
- increased vertical position of dieresis mark on lowercase e dieresis (U+00EB)
- decreased vertical position of the asterisk (U+002A) - Issue #34
- new design for ascii tilde - broader curves, taller glyph with goal to
improve appearance at small text sizes where it tended to render like a dash
(U+007E) - Issue #37
- new ttf build autohinting script
(./postbuild_processing/tt-hinting/autohint.sh)
- new ttf build autohinting Control Instructions File - bold set
(./postbuild_processing/tt-hinting/Hack-Bold-TA.txt)
- new ttf build release script (./postbuild_processing/tt-hinting/release.sh)
- new web font release script
(./postbuild_processing/webfonts/releasewebfonts.sh)
- new vfb to UFO source file conversion script (./tools/makeufo.sh)
- new UFO source file types - includes separate source files for TrueType
(`*-TT.ufo`) and PostScript (`*-PS.ufo`) releases
- source file path changes: now includes separate `ufo` and `vfb` directories
under the `./source` repository directory
- Hack Open Font license updated to version 2.0. The license changes better
define the Hack project as a derivative project of the Bitstream Vera Sans
Mono typeface project and are intended to make the license more consistent
with the Bitstream Vera libre, open source license under which Hack is
co-licensed. There are no new restrictions on use of the fonts with these
license changes. Embedding permissions are made explicit in this version
of the Hack Open Font license.
# Version 2.013 (release build)
Changes vs. release v2.010:
- Fixed missing middle dot glyph (U+00B7), adjusted width of U+00B7 em box to
address spacing issues in editors that highlight empty spaces
(Issues #27 & #46)
- Powerline glyph alignment and size adjustments (Issue #33)
- Fixed name tables to address:
- incorrect oblique rendering with Java type renderers on OS X (Issue #26)
- incorrect italic + bold + bold oblique rendering in some syntax
highlighters (Issues #42, #50, #60)
- backslash character took inappropriate vertical alignment because of
incorrect slant angle in some editors (Issue #67)
- Changed oblique and bold oblique font names to "Hack Italic" and "Hack Bold
Italic" to address Windows listings
- Changed oblique and bold oblique webfont names to "hack-italic-webfont.[xxx]"
and "hack-bolditalic-webfont.[xxx]"
- Changed oblique and bold oblique basic Latin + Latin-1 webfont subsets to the
names "hack-italic-latin-webfont.[xxx]" and
"hack-bolditalic-latin-webfont.[xxx]"
- Changed license name from "Modified SIL Open Font License" to "Hack Open Font
License" to comply with SIL regulations for SIL Open Font License
modifications
- Removed all license references to SIL to comply with SIL regulations for
modifications of the SIL Open Font License
- Removed SIL Open Font License preamble from the Hack Open Font License to
comply with SIL regulations for modifications of the SIL Open Font License
- Removed the following statement from Hack Open Font License condition #3:
"This restriction only applies to the primary font name as presented to the
users." to address a reserved font name conflict with the Bitstream Vera
license
- Modified the build directory structure for the Hack web fonts
- Added Hack webfont CSS files to the build directory
Hack is hand groomed and optically balanced to be a workhorse face
for code.
It has deep roots in the libre, open source typeface community and
expands upon the contributions of the Bitstream Vera & DejaVu
projects. The face has been re-designed with a larger glyph set,
modifications of the original glyph shapes (including distinct
point styles and semi-bold punctuation weight in the regular set
to make analphabetic characters less transparent), and meticulous
attention to metrics (including numerous spacing adjustments to
improve the rhythm of the face and the legibility of code at small
text sizes). The large x-height + wide aperture + low contrast
design combined with PostScript hinting/hint replacement programs
and a TrueType instruction set make it highly legible at commonly
used source code text sizes with a sweet spot that runs in the 8px
- 12px range on modern desktop and laptop monitors. Combine it with
an HD monitor and you can comfortably work at 6 or 7px sizes.