In my decade-plus of maintaining my dotfiles, I’ve written a lot of little shell scripts. Here’s a big list of my personal favorites.

  • Evan Hahn
  • e0qdk@reddthat.com
    link
    fedilink
    arrow-up
    3
    ·
    1 hour ago

    Here’s one of mine. I got annoyed at the complexity of other command line spellcheckers I tried and replaced them with this simple python script for when I just want to check if a single word is correct:

    #!/usr/bin/env python3
    
    import sys
    
    try:
      query = sys.argv[1].lower()
    except Exception:
      print("Usage: spellcheck <word>")
      exit(1)
    
    with open("/usr/share/dict/words") as f:
      words = f.readlines()
    
    words = [x.strip().lower() for x in words if len(x.strip()) > 0]
    
    if not query in words:
      print("Not in dictionary -- probably a typo")
      exit(1)
    else:
      print("OK")
      exit(0)
    
  • cr1cket@sopuli.xyz
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    13 hours ago

    Some nice ideas in there.

    Only the “markdownquote” thing is kinda pointless, especially since they mention it’s mainly used in vim. Because vim can do exactly that already without the need of an external script. Do ctrl+v, mark the lines you want, press “I” (capital i), insert the desired thing, press esc and voila… all the selected lines are now prepended with the desired thing.

    edited to make my comment sound less harsh: Nothing wrong with building your own solution if that feels better to oneself though :-)

  • esa@discuss.tchncs.de
    link
    fedilink
    arrow-up
    1
    ·
    12 hours ago

    re: mksh I have snippets in my editor for shebangs++. E.g. #!<tab><enter> nets me

    #!/bin/bash
    set -euo pipefail
    

    or

    #!/usr/bin/env python3
    # pyright: strict
    

    etc