• macniel@feddit.de
      link
      fedilink
      arrow-up
      14
      arrow-down
      4
      ·
      8 months ago

      What’s wrong with Ligatures? It makes reading code a bit more tolerable.

      • Ephera@lemmy.ml
        link
        fedilink
        arrow-up
        13
        arrow-down
        2
        ·
        8 months ago

        I mean, I certainly wouldn’t give someone else shit for using ligatures, but personally, I don’t like them, because:

        • they break with monospacedness. Everything is in a nice grid and you’ve randomly got these character combinations that needlessly stick out.
        • they sometimes happen in places where they really shouldn’t.
        • they hide what the actual characters are. Especially, if go to edit that code, my brain will really struggle for a split-second when there’s a ‘≠’, then I delete one character and rather than the whole thing disappearing, I’m left with a ‘!’.
        • Faresh@lemmy.ml
          link
          fedilink
          English
          arrow-up
          2
          ·
          8 months ago

          they break with monospacedness

          The IDEs I’ve used had the ligatures be of the same character width as the original operator.

          • Ephera@lemmy.ml
            link
            fedilink
            arrow-up
            1
            ·
            8 months ago

            Oh, yeah, I meant that it makes two characters into one big one, visually reaching across two or three widths, or just having one of the characters larger than the usual grid, e.g. in := the equals sign reaches into the width of the colon.

            This reminds me of a recent Microsoft font¹, so naturally here’s a rant about that: They developed a feature, called “texture-healing”, which basically allows characters that normally need to cramp into one monospace width, like m or w, to reach into the space of neighboring characters, if those neighboring characters are narrow, like an i.

            In theory, not a terrible idea, but then you get this kind of hate crime:

            Obviously, might just be me again, but not having these letters align, just looks so much worse to me.

            ¹: It’s this font: https://monaspace.githubnext.com/

        • redfellow@sopuli.xyz
          link
          fedilink
          arrow-up
          2
          arrow-down
          1
          ·
          8 months ago

          Do you also get surprised when you backspace a tab and suddenly it removes more whitespace than 1 characters worth?

          Or did you learn it fast and really never think about it?

          I think it’s more a “getting used to” thing, that once learned, you don’t think about, but it makes things more readable.

          • Ephera@lemmy.ml
            link
            fedilink
            arrow-up
            4
            arrow-down
            1
            ·
            8 months ago

            Sure, I could get used to it. But it being more readable is not even true for me, because the thing I got used to instead, is that != is the unequals-operator. I see that much more often than .

            • redfellow@sopuli.xyz
              link
              fedilink
              arrow-up
              4
              arrow-down
              1
              ·
              8 months ago

              Studies show that ligatures improve readability, but I acknowledge that it’s likely untrue for outliers.

              • Ephera@lemmy.ml
                link
                fedilink
                arrow-up
                2
                ·
                8 months ago

                For monospace fonts? I’ve heard of such research for proportional fonts, where ligatures definitely make sense to me. But yeah, I wouldn’t assume such research to automatically translate to monospace.

    • redfellow@sopuli.xyz
      link
      fedilink
      arrow-up
      8
      arrow-down
      2
      ·
      8 months ago

      I mean, we read code more than we write it. You just vomitted over something that increases readability. Maybe a time for a rethink?