adobe-fonts / source-code-pro

Monospaced font family for user interface and coding environments
https://adobe-fonts.github.io/source-code-pro/
SIL Open Font License 1.1
19.76k stars 1.62k forks source link

Italic 'a' barely distinguishable from italic 'o' #156

Open hube opened 7 years ago

hube commented 7 years ago

Sublime Text renders certain text in italics. Unfortunately, the letter 'a' and letter 'o' are extremely similar in italics and the differences between the two are almost imperceptible even when magnified. Is there a way to use the regular 'a' instead of this one?

avso

The literal text above is:

import cam.example.word;
import com.example.ward;
miguelsousa commented 7 years ago

The italics have a slanted double-story a, which can be accessed thru the OpenType features ss02, cv01, and salt. If Sublime Text doesn't have support for OT features, you can make a custom version of the italics with pyftfeatfreeze which will put the alternate a's in the default slots.

miguelsousa commented 7 years ago

@pauldhunt have you considered swapping the a's? I can see how the current setup creates legibility problems for coders. Swapping the shapes would still allow designers — who usually work with more sophisticated apps — to access both variants.

hube commented 7 years ago

@miguelsousa Thanks for the suggestions. I don't think Sublime has support for such OT features, I will investigate using pyftfeatfreeze

jlanzarotta commented 7 years ago

Are there any plans to make the italic "a" character the same as the regular "a" without using pyftfeatfreeze?

pauldhunt commented 7 years ago

there are no plans to update the fonts in the immediate future. i will likely explore other design solutions for differentiating ‘a’ from ‘o’ before going the route of making the italic form the same as the upright form as i personally am not a fan of the obliqued 2-story form.

jlanzarotta commented 7 years ago

Okay, thanks.

Wolf-SO commented 6 years ago

@pauldhunt thanks for having an eye on the issue.

rioj7 commented 5 years ago

For Windows I managed to get the a glyph with the following procedure

  1. Copy the Source Code Pro Italic TTF fonts from the C:\Windows\Fonts folder to a temporary folder
  2. In the temporary folder create a new folder out: mkdir out
  3. Install python 3.5+
  4. Install python fonttools: C:\Python36\Scripts\pip3.6.exe install fonttools
  5. Copy the file pyftfeatfreeze.py to the temporary directory or some util folder
  6. Convert the TTF fonts (all on 1 line): C:\Python36\python.exe pyftfeatfreeze.py -f 'ss02,cv01,salt' SourceCodePro-It.ttf out\SourceCodePro-It.ttf
  7. Perform the same operation for all the Italic TTF font files
  8. Copy all the files from the out directory to the C:\Windows\Fonts folder
  9. Restart the applications

The a now has a different glyph only it is not as smooth as the other glyph. Only visible for large font size.

averms commented 3 years ago
  1. Convert the TTF fonts (all on 1 line): C:\Python36\python.exe pyftfeatfreeze.py -f 'ss02,cv01,salt' SourceCodePro-It.ttf out\SourceCodePro-It.ttf

The salt option changes more than just the 'a' character. I used just cv01.

The a now has a different glyph only it is not as smooth as the other glyph. Only visible for large font size.

Haven't experienced this personally.

frankrolf commented 3 years ago

Sorry for commenting on an old issue here, this just caught my eye:

I don't think Sublime has support for such OT features

SublimeText indeed supports OT features, wihin the font_options preference. See the as changing here:

Screen Shot 2020-10-27 at 18 15 04 Screen Shot 2020-10-27 at 18 14 53

In the case of Source Code Pro this feels a bit like whack-a-mole, since ss02 changes the a from single- to double-story in the Italic, but does the opposite in the Roman.

I am not aware of special preferences for the secondary font only (which would be ideal in this case).