aboutsummaryrefslogtreecommitdiff
path: root/tests/test-external-open-commands.el
Commit message (Collapse)AuthorAgeFilesLines
* feat(external-open): open videos in a looping playerCraig Jennings8 days1-4/+81
| | | | Opening a video from dirvish routed through cj/xdg-open to the OS default handler, which plays it once. I pulled the video extensions into their own cj/video-extensions list and route them through a new cj/open-video-looping, which launches mpv with --loop-file=inf (the player and its args are both customizable) detached, so the video plays on repeat. Audio and office docs still use the OS default handler. The find-file advice already covers dirvish RET, so this applies wherever a video is opened.
* test(external-open): cover xdg-open, open-this-file-with, find-file-autoCraig Jennings2026-05-141-0/+120
Sibling tests in `test-external-open-lib-*.el` covered the pure helpers (`cj/external-open-command`, `cj/external-open-launcher-p`). This batch covers the user-facing wrappers: - `cj/xdg-open`: posix path triggers `call-process` with the open program; errors when no file is associated; errors when no command resolves on the host. - `cj/open-this-file-with`: errors outside a file-visiting buffer; posix path spawns a detached process via `call-process-shell-command` with `nohup ... >/dev/null 2>&1 &`. - `cj/find-file-auto`: routes a `.mp4` (in `default-open-extensions`) to `cj/xdg-open`, passes `.txt` through to the original `find-file`, and falls through cleanly for a nil filename argument. Host predicates, call-process, and the underlying `cj/xdg-open` are stubbed throughout.