GithubHelp home page GithubHelp logo

Non-retina text rendering is bad about hyper HOT 17 CLOSED

vercel avatar vercel commented on April 27, 2024 16
Non-retina text rendering is bad

from hyper.

Comments (17)

zpao avatar zpao commented on April 27, 2024 76

In case anybody else comes across this and it's not "fixed" the way you want, you can use ~/.hyperterm.js to override.

    termCSS: `
      x-screen {
        -webkit-font-smoothing: subpixel-antialiased !important;
      }
    `,

from hyper.

rmnbrd avatar rmnbrd commented on April 27, 2024 28

To edit the font smoothing setting at application-level and not system-wide,
here's the trick:

defaults write co.zeit.hyper CGFontRenderingFontSmoothingDisabled 0
defaults write co.zeit.hyper.helper CGFontRenderingFontSmoothingDisabled 0
defaults write co.zeit.hyper.helper.EH CGFontRenderingFontSmoothingDisabled 0
defaults write co.zeit.hyper.helper.NP CGFontRenderingFontSmoothingDisabled 0

from hyper.

ali avatar ali commented on April 27, 2024 6

Hey all. I noticed this same issue at work today after customizing the fonts in my hyperterm config. My fonts looked great on my laptop's retina display, but looked kinda 💩 on my external monitor. I played around in the devtools and can confirm the above fix worked out for me.

Anyway, here's a theme I made that adds subpixel-antialiased font smoothing: https://github.com/ali/hyper-font-smoothing

Edit (10/23) renamed package to hyper-font-smoothing from hyperterm-subpixel-antialiased

from hyper.

leo avatar leo commented on April 27, 2024 3

People without retina displays will have to use this package: https://github.com/ali/hyperterm-subpixel-antialiased

from hyper.

kompot avatar kompot commented on April 27, 2024 2

-webkit-font-smoothing: subpixel-antialiased !important; hack does not seem to work on Hyper 2.

Any suggestions?

from hyper.

albinekb avatar albinekb commented on April 27, 2024 2

Hyper 2 uses https://github.com/xtermjs/xterm.js instead of hterm like we did previously. @kompot I'd recommend you to go over there and search through the issues 👍

🚨warning in the upcoming 3.0 release of xterm, they're changing from DOM-based representation to rendering with webgl/canvas, don't know how font smoothing is handled in there.
Hyper will adopt it in the future when it's released. I think VS Code is already testing this code so if you want to try how it will be in the future you could test it there.

from hyper.

bgw avatar bgw commented on April 27, 2024 2

@kompot

-webkit-font-smoothing: subpixel-antialiased !important; hack does not seem to work on Hyper 2.

Setting body { -webkit-backface-visibility: unset; } seems to do the trick for me.

The backface-visibility change was added in #1602 to work around some cases where Blink would enable/disable subpixel antialiasing due to animations (#1490). Unfortunately, it does this is by breaking subpixel antialiasing.

from hyper.

johanbrook avatar johanbrook commented on April 27, 2024 1

I actually think antialiasing looks bad on Retina too. Compare screens below.

skarmavbild 2016-07-06 kl 01 57 00

skarmavbild 2016-07-06 kl 01 57 07

The non antialiased one has clearer colours and more legible typography imo (might only be me). The antialiased text looks a bit weak: the black from the background sort of bleeds into the glyphs. Compare with iTerm:

skarmavbild 2016-07-06 kl 02 00 00

from hyper.

zpao avatar zpao commented on April 27, 2024 1

@johanbrook I agree. I've lost the "just use subpixel-antialiasing all the time" argument too many times though so I hedged my bets 😛

from hyper.

samishchandra avatar samishchandra commented on April 27, 2024 1

None of the above things worked for me. Type this in the command line and reboot. This setting also stays between reboots.

defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO

from hyper.

rauchg avatar rauchg commented on April 27, 2024

@zpao +1000. I've been seeing some screenshots from non-retina that have wanted to make me cry.

from hyper.

tuxracer avatar tuxracer commented on April 27, 2024

Even on a retina display this default looks awful on macOS

from hyper.

kompot avatar kompot commented on April 27, 2024

Unfortunately doesn't seem to change much on macOS.

Here are three windows. Top is hyper, terminal.app in the middle, vs code on the bottom 3rd.
Hyper's font rendering produces thin and unpleasant lines ;( * i know some people prefer that, yes, but could not find a way to get rendering like in terminal.app or iTerm2 *

image

from hyper.

 avatar commented on April 27, 2024

Same problem here, too. Looks fine on the built-in retina display of the MacBook; unusable with an external non-retina monitor. Any suggestions? (Top window: iTerm2 with use thin stokes for ani-aliased text set to Always, bottom window: Hyper)

screen shot 2018-02-27 at 13 40 52

from hyper.

jq-87 avatar jq-87 commented on April 27, 2024

bgw/dotfiles@25bb078

This fix does not work for me. I am on version 2 on OSX 10.12.6

Anyone know of a fix?

from hyper.

albinekb avatar albinekb commented on April 27, 2024

Can you try setting fontWeight to 100 or lighter, it should accept any valid css-font-weight value 👍

from hyper.

TinyChief-zz avatar TinyChief-zz commented on April 27, 2024

None of the above things worked for me. Type this in the command line and reboot. This setting also stays between reboots.

defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO

Here is the actual problem explained: https://ahmadawais.com/fix-macos-mojave-font-rendering-issue/

Now fonts look smoother, but another problem appears after rebooting - gaps between glyphs:

изображение
изображение

from hyper.

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.