larsenwork / monoid

Customisable coding font with alternates, ligatures and contextual positioning. Crazy crisp at 12px/9pt. http://larsenwork.com/monoid/
7.85k stars 170 forks source link

make font compatible with IntelliJ IDEs #148

Closed JB-Dmitry closed 8 years ago

JB-Dmitry commented 8 years ago

IntelliJ IDEs are Java-based applications. Java SE currently uses ICU text layout engine (http://userguide.icu-project.org/layoutengine) internally, which doesn't support DFLT script tag, as required by the latest version of OpenType specification. So OpenType features (like ligatures), mapped to DFLT script, won't be properly recognized in all cases for Monoid and similar fonts, when they are used in Java applications.

ICU engine is officially deprecated and JDK developers are working on a migration to Harfbuzz, which doesn't have such issues. But this change won't be released earlier than in spring 2017, and then some time will definitely pass before that release could be adopted by IntelliJ platform. So the proposal is to make a change to the font, so that it will be available to IntelliJ users much faster.

This change replaces DFLT tag in features mapping with tags of scripts actually supported by font. I'm not aware of any negative effects of such a change. I've done a smoke test of patched font in the following editors/applications and didn't notice anything bad happening: Atom, Coda, gEdit, Smultron, Xcode, TextEdit, LibreOffice Writer.

If you wish, I can add modifications to impacted files (font.props and *.glyph) to the pull request.

JB-Dmitry commented 8 years ago

Just in case, it's also possible to keep DFLT tag along with added tags, it shouldn't necessarily be replaced.

santagada commented 8 years ago

This seems like such a good feature, what happened?

santagada commented 8 years ago

I found this: https://github.com/JB-Dmitry/monoid

JB-Dmitry commented 8 years ago

Latest versions of IntelliJ IDEs (2016.2, preview builds available currently) should work fine with Monoid as it is, patching the font is not required anymore. So this PR is not longer needed. (Users of previous versions of IDEs can use patched variant mentioned above).

larsenwork commented 8 years ago

cheers, sorry I've been busy so haven't had the time to update and look at pr