The command bar is the legacy of the legendary Amiga Directory Opus: a grid of buttons where each one runs whatever shell command you want on the selected files. This manual teaches you to build your own.
echo "$SF_FILES" | while read f; do zip -rq "$f.zip" "$f"; done
Close the editor: your button is on the grid. Select a file, click it, and its .zip appears next to it. That's it.
Each command runs with zsh in the active pane folder, with these variables ready:
| Variable | Contents |
|---|---|
$SF_FILES | Paths of the selected files, one per line |
$SF_DIR | Active pane folder (where the command runs) |
$SF_OTHER_DIR | The other pane folder — gold for moving things "to the other side" |
$SF_APP | Path to the SuperFinder executable, to invoke its built-in engines |
$SF_PROMPT | If your script mentions it, the app asks for a value with a hidden field (passwords) before running |
$SF_ASK | Same, but with a visible field (texts, dates, names…) |
$SF_TRANSLATE_LANG | The target language chosen in Settings → "AI — translate to" |
Visible output: if your script contains the SF_NOTIFY marker (e.g. as a trailing comment # SF_NOTIFY), whatever it prints is shown in a dialog when done. Without the marker, the button works silently and only reports errors.
echo "$SF_FILES" | while read f; do
sips -Z 1600 "$f"
done
Iterates the selection and runs something on each file ($f). The quotes around "$f" are mandatory: names with spaces exist.
files=(); while read f; do files+=("$f"); done <<< "$SF_FILES"
zip -r "paquete.zip" "${files[@]}"
du -sh "$SF_DIR"/* | sort -rh | head -20 | pbcopy # SF_NOTIFY
SuperFinder ships its own engines that depend on nothing being installed. Invoke them with "$SF_APP" --flag files…:
| Flag | What it does |
|---|---|
--to-pdf | Converts documents (docx, rtf, html, txt, odt) and images to PDF |
--merge-pdf | Merges several PDFs into one |
--pdf-to-png | Each PDF page to a 2x PNG image |
--ocr | Extracts text from images (Vision, es/en) to .txt and clipboard |
--remove-bg | Cuts out the image subject to a transparent PNG |
--watermark "texto" | Stamps a watermark |
--filter gray|sepia | Image filters |
--contact-sheet | Thumbnail grid of the selected images |
--transcribe | Transcribes audio to text (macOS dictation) |
--ai <tarea> | AI with your key (Settings): summarize, describe, rename, proofread, table, translate-to "language" |
files=(); while read f; do files+=("$f"); done <<< "$SF_FILES"
zip -rj "$SF_OTHER_DIR/paquete $(date +%H.%M).zip" "${files[@]}"grep -ril "$SF_ASK" "$SF_DIR" | head -50 # SF_NOTIFYecho "$SF_FILES" | while read f; do sips -s format jpeg "$f" --out "${f%.*}.jpg"; doneecho "$SF_FILES" | while read f; do avconvert --preset PresetHighestQuality --source "$f" --output "${f%.*}.mp4"; doneecho "$SF_FILES" | while read f; do open -a "Visual Studio Code" "$f"; donefiles=(); while read f; do files+=("$f"); done <<< "$SF_FILES"
scp "${files[@]}" user@server.com:/path/target/ && echo "Uploaded ${#files[@]} files" # SF_NOTIFYdu -sh "$SF_DIR"/*/ 2>/dev/null | sort -rh # SF_NOTIFYgit -C "$SF_DIR" status --short --branch # SF_NOTIFYecho "$SF_FILES" | while read f; do say -f "$f" -o "${f%.*}.m4a"; doneecho "$SF_FILES" | while read f; do "$SF_APP" --ai translate-to "gallego" "$f"; doneSafety: commands run with your permissions and no safety net: an rm really deletes. Test new buttons on throwaway files, always quote variables ("$f", never $f), and distrust scripts copied from the internet you don't understand.