• zarkanian@sh.itjust.works
    link
    fedilink
    arrow-up
    6
    ·
    edit-2
    3 days ago

    Aliasing cat or any other ubiquitous shell utility to a replacement is a mistake. Garuda did this, and it was driving me crazy why cat was giving me errors. Turns out that they had aliased bat to cat, and since bat is a different program, it didn’t work in exactly the same way, and an update had introduced some unexpected behavior.

    Drop-in replacements are dumb. Just learn to use a different command.

    • janAkali@lemmy.sdf.org
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      2 days ago

      I think it’s ok to add this in a personal .zshrc, not on a distro level:

      If it breaks something - I’d probably know why and can easily fix it by removing alias/calling cat directly.

      Also, scripts almost always use bash or sh in shebang, not zsh. So it only triggers if I type cat in terminal.

      • psud@aussie.zone
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 day ago

        It’s better to learn the new command, then it still works when you use a different machine that doesn’t have your alias

        • janAkali@lemmy.sdf.org
          link
          fedilink
          arrow-up
          1
          ·
          52 minutes ago

          If you are me, there is no brain space for remembering new commands. I can already barely hold on to few dozens that I use often. And occasionally when I need “that one that does that niche thing… how was it?” program - I just sit there sifting through logs for couple minutes.

          Today it was od (tbh it’s od almost half the time; not really the best name to memorize (I really need to make a note or something, so I stop forgetting it, lol))

          Also, for this reason I went to great lengths to keep my ~/.zsh_history protected from being randomly deleted/overwritten by mistake, as it happened a couple of times. Currently it’s sitting at around 30_000 lines, oldest command is 2 years old.