Skip to content

Line spacing could be optimised further #146

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
jpluimers opened this issue Oct 31, 2015 · 18 comments
Closed

Line spacing could be optimised further #146

jpluimers opened this issue Oct 31, 2015 · 18 comments
Labels

Comments

@jpluimers
Copy link

I'm using https://github.com/chrissimpkins/Hack/releases/download/v2.015/Hack-v2_015-ttf.zip

Line spacing could be optimised further. Lucida Console displays 63 lines which is 15% more than Hack that displays 55 lines.

With Lucida Console, the lines really touch each other: look at the lower and upper stems in this code fragment at lines 49/50:

  fmShareCompat    = $0000 platform; // DOS compatibility mode is not portable
  fmShareExclusive = $0010;

This is from a Windows 8.1 doing an RDP connection with 32-bit colour depth to my development machine that runs Windows 7 that runs Delphi 2007 but I have similar results in Visual Studio 2013 (Hack vs Lucida Console:

Hack @ 10 points

Hack @ 10 points

Lucida Console @ 10 points

Lucida Console @ 10 points

@burodepeper
Copy link
Member

Hallo meneer @jpluimers ;)

I'll stick to English for the 'official' part.
I am currently working on the usability aspects of Hack, and the default line-height plays a major role in general readability. Besides a matter of personal taste, it is also a matter of identity of the typeface, and I'm afraid we can't service everybody in that aspect. Please note the significant difference in design in the ratio between x-height vs ascender and descenders in your two examples. It is something however that we will look into.

@chrissimpkins
Copy link
Member

Thank you very much for the suggestion Jeroen. I agree with David's (@burodepeper) comments above. Our goal is not necessarily to fit the most code in a single view that is humanly possible. We must balance the legibility of the source with the goal to view more of it. There are users in other issue reports who have requested that the line spacing be further expanded to address the opposite end of this spectrum. There is a balance here and David is leading the work to base our usability decisions on more objective grounds. You will be hearing a great deal more about this down the road when we begin to generate proposals for typeface changes based upon these analyses that are in progress.

@jpluimers
Copy link
Author

It would be soooo cool if in addition to font sizes, line spacing would be configurable in one way or the other by the tools I use. Too bad they don't.

How difficult would it be to build a one-off that have smaller line heights (My knowledge on this is rusty as I've been out of the scalable font industry for like 20 years, but given the work I did for Polyvroom and Mecanorma in the early 90's producing fonts for Monotype and others, it still interests me a lot).

@chrissimpkins
Copy link
Member

simple to create it, the problem is that all vertically aligned glyphs are thrown off. If you don't have a significant concern about box glyphs and line glyphs at this stage we can try some variants. we are still working to get those fixed in the main sets...

@chrissimpkins
Copy link
Member

do you have access to a font editor Jeroen?

@jpluimers
Copy link
Author

I've been out of the business for a long long time. Back then it was Ikarus on a MicroVax and Sun based software by an Israeli company. Part of the network was over serial connections, the rest Windows 3.1 with COAX ethernet. If you can help me kick-start: I am an experienced software developer and Ops person with Windows and Unix backgrounds.

@chrissimpkins
Copy link
Member

Wondering because we could try to explore what line spacing works for you. Maybe FontForge?

@crinklywrappr
Copy link

The Lucida Console line spacing is much too small for my tastes.

@psycha0s
Copy link

Personally, I found Hack's line spacing is close to ideal (I would even prefer to increase it). When line spacing is small, the source code becomes unreadable. I think that suggested optimization will be harmful. If you like line spacing of Lucida Console, then just use it.

@chrissimpkins
Copy link
Member

@Phantom-code @DoubleAgent Thanks for your feedback. Any changes to the line spacing at this stage would likely be in the form of new variant sets. I have been tossing around the idea of a script that will modify the OpenType settings for you so that you can create these on your own and at the spacing that you prefer. The script is not difficult. The problem is that all vertically aligned glyphs (e.g. the box drawing and block element glyphs) would be out of alignment in these sets. Will let you know if/when this is available if it is something of interest to explore different line spacing in more detail with the fonts.

@jpluimers
Copy link
Author

Sorry for having been out of touch that long. I've been on a cramped project, but reserved some time in March to devote on open source projects. Please let me know how I can help by then, and I'll try to schedule some time for it.

The machinery I will have at hand then:

  • Mac OS X machine with homebrew, Xcode and any development tools I need
  • OpenSuSE Tumbleweed VM on which I can install anything I need
  • Windows 8.1 and 10 VMs on which I can install anything I need

Back in the days (early 90s) I was involved in creating scaleable fonts for Mecanorma, but I don't have access to the hardware (MicroVax, table sized digitisers, Sun pizzabox, early Apple Mac and 80386 PCs) or software (Ikarus and some Israelian built custom Sun software), any more. I hope my memory still works well enough for remembering some stuff (hopefully scoring 90 at http://type.method.ac/ helps ).

One day I will dig out the source code for https://www.google.com/search?q="dmpfm151.zip" (:

@chrissimpkins
Copy link
Member

@jpluimers :) love it

Will let you know when we have a script that you can try. You will be able to execute it with Python directly on the font files. Should not require anything special.

@chrissimpkins
Copy link
Member

Started work on an application to address this. It will allow you to easily modify the spacing yourself. Hope to have a version that you can try in the next several days. Will post here when available.

@chrissimpkins
Copy link
Member

The initial release of the new line spacing adjustment tool is now available. Feel free to give it a try and please provide feedback on the tool repository if you encounter any issues.

More details in this new issue report: #191

@chrissimpkins
Copy link
Member

Closing issue report now that the line spacing tool is available. We do not intend to modify the default line spacing at this point. Please reopen if you need and submit any issues with the tool on that repository.

@chrissimpkins
Copy link
Member

Line spacing shell scripts are now available and automate this within the range 10 - 30% UPM size (in 5 percentage point increments). Drop the script in a directory with only your Hack fonts and execute it.

They are available here:

https://github.com/chrissimpkins/Hack/tree/master/tools/line-spacing

@jpluimers
Copy link
Author

It seems the tool moved, but I could not find the commit it moved in. Did it move to https://github.com/source-foundry/font-line ?

@chrissimpkins
Copy link
Member

@jpluimers If you are looking for the shell script it can be found here https://gist.github.com/chrissimpkins/f39e85f5f157d839e46168de1b61a174

The underlying tool is the font-line project that you linked above. Let me know if you have any questions about use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

5 participants