I’ve done something similiar to this over the years for organization purposes and not having to change much between shells except add a path. You can also add cases that check your shell and do something slightly different if needed.

  • Ferk@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    11 hours ago

    It still limits where / how you use them.

    For example, it’s easier / more efficient to call a shell script from sway (or whichever other software that might be running without a bash login session behind) than to try and force it to load a whole shell login session that includes those functions (which might also slow down the startup of the program and make it need a bit more ram without much of a benefit).

    Scripts can reliably be run from everywhere (specially if placed somewhere in $PATH), functions require some preloading for every single new shell process and making sure the program invoking the shell (be it a terminal emulator or something else) is actually loading it. So as someone who likes to automate everything and often assigns hotkeys to particular commandline oneliners, scripts are much better… even a symlink might be more reliable than an alias.