Giter VIP home page Giter VIP logo

Comments (9)

cormullion avatar cormullion commented on May 27, 2024

Yes, I was a BBEdit user back in the day and it was always a solid application... But I felt they started dropping the ball a bit - particularly when they dropped support for OpenType features such as alternates and ligatures in BBEdit 13 (Rich told me that Apple removed a library they needed, but I felt that since other text editors were able to support them, why couldn't BBEdit....?)

If you display a text file in lots of apps, I wouldn't be that surprised if the only one with glitches is BBEdit. Although to be honest there's so much variability I wonder why pro font designers don't all die young...

So here are a few editors (from the top: BBEdit, SublimeText, Xcode, VSCode, and Atom) showing your file (and showing how every application draws text slightly differently):

Screenshot 2020-10-10 at 08 58 37

Thanks for the well-prepared issue! But I don't think there's anything to do here.

from juliamono.

stale avatar stale commented on May 27, 2024

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions!

from juliamono.

mtconleyuk avatar mtconleyuk commented on May 27, 2024

Thanks for the feedback. There are few bigger fans of BBEdit and Bare Bones than I, but I suppose it's possible they've overlooked something. They do tend to be pretty responsive; any chance you could contact them and see if they have a hint about this (I did file a bug report with them first, (Case 409145) Julia and Tab Spacing)? Or if I sent them a link to this issue and see if they have a suggestion?

from juliamono.

siegel avatar siegel commented on May 27, 2024

Tab spacing in BBEdit is based on a calculation of the width of a nonbreaking space. Other fonts have had issues with tab spacing as well, which their designers were happy to address.

If my recollection is correct, some fonts have had problems with the width specification of the NBSP glyph. (A common error is failing to ensure that NBSP has the same advancement as every other character in a monospaced font.) Therefore you may find it useful to look for a similar issue. (Alas, since I am not a font implementor, I regret that I am unable to speculate as to the precise nature and resolution.)

While you're at it you may find it useful to verify the correct implementation and specification of other glyphs that BBEdit uses (these are for Show Invisibles, and many of them are not often found in user-entered text):

U+00B7,		//	dot
U+2022,		//	bullet
U+2206,		//	delta
U+00AC,	//	not sign
U+00B6,		//	paragraph
U+007C,		//	vertical bar
U+00BF,		//	inverted question mark

from juliamono.

cormullion avatar cormullion commented on May 27, 2024

@siegel I'm so happy to see you reply here, and thanks for the suggestions, I'll try to investigate some time. (I still use BBEdit, of course, but it's not always the frontmost application, sorry, but....😂). I'd be delighted if it was my fault, cos I could fix it.

(But .... ligatures someday?!)

from juliamono.

cormullion avatar cormullion commented on May 27, 2024

I made a quick check of spaces - things look OK to me.

This screen capture reproduces the original problem in BBEdit:

Screenshot 2020-10-20 at 13 28 11

It's using Apple's SF Mono font at 13point , though....

from juliamono.

mtconleyuk avatar mtconleyuk commented on May 27, 2024

I had a back and forth with Rich Siegel and sent him some videos demonstrating the problem in better detail. Here's what he says:-

Here's a quick table (the values are as reported by the debugger at the point where BBEdit is capturing the font metrics):

name-size           advancement         nbsp-width
Hack-13             7.82666015625       7.82666015625
Inconsolata-13      6.5                 6.5
JuliaMono-13        7.7999999999999998  7.8000000000000007
JuliaMono-11(*)     6.5999999999999996  6.5999999999999996
Inconsolata-11      5.5                 5.5
Hack-11             6.62255859375       6.62255859375

The (*) next to JuliaMono-11 indicates the presence of the display anomaly.

I think what you're seeing is the result of accumulated rounding errors involving fractional character widths.

It's dependent not only on rendering (ATSUI still uses Fixed values for calculation, which certainly does not help) but also on the font.

I don't know how any of that stuff is supposed to work, but since there is existence proof of multiple fonts that don't have the issue, the JuliaMono author can probably look at those fonts and see if he's able to identify what they do that he doesn't (or vice versa) and make appropriate adjustments.

Here are links to a couple of QuickTime movies that demonstrate the problems I'm seeing, using different fonts within BBEdit. I think it's pretty clear that something is off within JuliaMono.
FontTest.mov.zip
FontTest2.mov.zip

from juliamono.

cormullion avatar cormullion commented on May 27, 2024

Thanks! You've worked so hard on this issue, I wish I had some good news. Unfortunately there are hardly any "knobs" or "switches" I can flip to change horizontal spacing. Basically, every character has a width, and working on the nonbreaking space looks like this:

Screenshot 2020-10-21 at 10 10 24

😃 I'd love to be able to change something, anything, but there's nothing to change.

In the spirit of Rich's "there is existence proof of multiple fonts that don't have the issue", here's a selection of other (much better) fonts that show the same problem in BBEdit - FIraCode, IBMPlex Mono, JetBrains Mono, Operator Mono, and Source Code Pro.

fontissues

So reluctantly I'd not recommend JuliaMono for use with BBEdit: "Only use BBEdit with Fonts that Don't Suck"!

I'll add a note to the documentation that it's not compatible with BBEdit.

from juliamono.

mtconleyuk avatar mtconleyuk commented on May 27, 2024

Okay, well, thanks for the info. Too bad it hasn't worked out. Sure would be interesting to know what the problem actually is, but, there you go.

from juliamono.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.