I’m sure some of you have absolute monstrosities of sigils (I know I do, in my .zshrc alone). Post them without context, and try and guess what other users’s lines are. If you want to provide context or guess, use the markdown editor to spoiler-tag your guesses and explanations!

  • xcjs@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago

    It’s not bash itself that was the complex part exactly, but I have a CI/CD pipeline that generates epub files from markdown. In some cases I have custom designed covers, but where a cover doesn’t exist I have a bash script generate one using Imagemagick.

    I wanted to generate the cover in one command to lessen performance impacts and disk I/O, but it took me a few weeks to figure out how to do it all in a single Imagemagick command:

    convert \
        -size 960x1536 \
        -background "${backgroundColor}" \
        -fill "${textColor}" \
        -font "Liberation-Serif" \
        -pointsize 96 \
        -gravity north \
        caption:"${title}" \
        -bordercolor "rgb(0, 0, 0)" \
        -border 2 \
        -bordercolor "${borderColor}" \
        -border 40 \
        -background none \
        -fill "${textColor}" \
        -font "Liberation-Serif" \
        -pointsize 48 \
        -gravity south \
        -geometry +0-800 \
        -annotate +0+40 "${author}" \
        "${destination}cover.jpg"
    

    Eventually it made an abstract sense to me, and I was able to bring it down to two commands and then finally one. This generates a cover with a selected background color (based on content type) and contains title text that will wrap to an inner border.

    I think I had to give up on the author being wrapped, but it’s much smaller than the title anyway.