1
1
mirror of https://github.com/i-tu/Hasklig.git synced 2024-09-17 13:37:21 +03:00
Hasklig - a code font with monospaced ligatures
Go to file
2015-12-28 21:10:43 +02:00
Roman beta stuff 2014-11-13 19:41:11 +02:00
RomanMM beta stuff 2014-11-13 19:41:11 +02:00
target beta stuff 2014-11-13 19:41:11 +02:00
.gitignore Add binary font files to gitignore 2015-12-28 21:10:43 +02:00
all.rtf add |>, <|, enable && (still under work) 2014-08-23 21:44:18 +03:00
build.cmd add windows build script 2015-10-26 11:00:50 +09:00
build.sh add |>, <|, enable && (still under work) 2014-08-23 21:44:18 +03:00
buildAll.cmd add windows build script 2015-10-26 11:00:50 +09:00
buildAll.sh gearing up to release 0.4 2014-07-28 22:20:04 +03:00
features.family add |>, <|, enable && (still under work) 2014-08-23 21:44:18 +03:00
features.tables first release 2012-09-20 17:06:26 -07:00
FontMenuNameDB Name change to hasklig 2014-04-20 05:01:00 +03:00
GlyphOrderAndAliasDB Add custom unicode code points for ligatures 2014-11-13 19:41:10 +02:00
GlyphOrderAndAliasDB_TT Updates design of asterisk and hyphen to accommodate coders' preferences. Realigns math and punctuation glyphs. Adds a stylistic set <ss01> for typographic alternates. Adds a stylistic set <ss04> for alternate dollar sign. Adds a small number of IPA characters. Adds box drawing characters and block elements. 2012-12-06 13:34:09 -08:00
hasklig_example.png pic 2014-04-20 05:03:34 +03:00
Hasklig_relnotes.txt gearing up to release 0.4 2014-07-28 22:20:04 +03:00
LICENSE.txt first release 2012-09-20 17:06:26 -07:00
ReadMe.html first release 2012-09-20 17:06:26 -07:00
README.md Add MacVim 2015-11-05 17:42:38 +02:00
relnotes.txt add <>, +++, <<< and >>> 2014-04-26 23:34:34 +03:00
Roadmap.txt first release 2012-09-20 17:06:26 -07:00
SourceCodePro.enc gearing up to release 0.4 2014-07-28 22:20:04 +03:00
SourceCodeProLSample.png fix ext link 2014-04-20 15:20:43 +03:00
SourceCodeProSample.png upload sample images 2014-04-19 20:52:24 +03:00
widthsAdjust.mark first release 2012-09-20 17:06:26 -07:00

N.B. This is a fork of the Source Code Pro repository

Hasklig - Ligatures for Haskell code

Programming languages are limited to relatively few characters. As a result, combined character operators surfaced quite early, such as the widely used arrow (->), comprised of a hyphen and greater sign. It looks like an arrow if you know the analogy and squint a bit.

Composite glyphs are problematic in languages such as Haskell which utilize these complicated operators (=> -< >>= etc.) extensively. The readability of such complex code improves with pretty printing. Academic articles featuring Haskell code often use lhs2tex to achieve an appealing rendering, but it is of no use when programming.

Some Haskellers have resorted to Unicode symbols (, etc.), which are valid in the ghc. However they are one-character-wide and therefore eye-strainingly small. Furthermore, when displayed as substitutes to the underlying multi-character representation, as [vim2hs] (https://github.com/dag/vim2hs) does, the characters go out of alignment.

Hasklig solves the problem the way typographers have always solved ill-fitting characters which co-occur often: ligatures. The underlying code stays the same — only the representation changes.

Not only can multi-character glyphs be rendered more vividly, other problematic things in monospaced fonts, such as spacing can be corrected.

Download Hasklig Font Family v0.4

Hasklig

Hasklig Sample

Source Code Pro

Source Code Pro Sample

Release notes

  • v0.4: New ligatures: <* <*> <+> <$> *** <|> !! || === ==>, Powerline symbol support
  • v0.3: New ligatures: <<< >>> <> and +++
  • v0.2: Lengthened == and /= to match other equals signs
  • v0.1: Ligatures <- -> => >> << >>= =<< .. ... :: -< >- -<< >>- ++ /= and ==

Currently implemented symbols

<* <*> <+> <$> *** <|> !! || === ==> <<< >>> <> +++ <- -> => >> << >>= =<< .. ... :: -< >- -<< >>- ++ /= ==

Editor Support

Reports on the current state of support for code editors and terminals are much appreciated.

  • Atom (fixed in v1.1.0)
  • BBEdit 11 (Instructions)
  • Chocolat
  • Geany
  • gEdit
  • Kate
  • Konsole
  • KWrite
  • Leksah (x64 W8 reported not working)
  • Light Table (Instructions)
  • MacVim (Since release 79. See Issue 32)
  • QtCreator (v.3.2.2 on GNU/Linux x64)
  • Smultron
  • TextEdit
  • TextMate (from version 2.0-alpha.9549 onwards)
  • Vico
  • RStudio

No support

Credits

Original idea, design and implementation of code ligatures by Ian Tuomi 2014-2015. This typeface extends Source Code Pro with ligatures.