Round 198: ERC-ext, EMMS, Bongo media player commands
ober
1b9208c3a6246b72819dbd60db9c4ec6fd85dc86
--- a/docs/jemacs-vs-emacs.md +++ b/docs/jemacs-vs-emacs.md @@ -4583,6 +4583,31 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features | ebib-import-file | :orange_circle: | Import file into Ebib | | ebib-push-citation | :orange_circle: | Push Ebib citation to buffer | +### Round 198 — ERC-ext, EMMS, Bongo + +| Feature | Status | Notes | +|---|---|---| +| erc-track-switch-buffer | :orange_circle: | Switch to tracked ERC buffer | +| emms-play-playlist | :orange_circle: | Play EMMS playlist | +| emms-play-directory-tree | :orange_circle: | Play directory tree | +| emms-toggle-random-playlist | :orange_circle: | Toggle random playlist | +| emms-seek-forward | :orange_circle: | Seek forward in track | +| emms-seek-backward | :orange_circle: | Seek backward in track | +| emms-browser | :orange_circle: | Open EMMS browser | +| emms-metaplaylist-mode | :orange_circle: | Toggle metaplaylist mode | +| emms-bookmarks-add | :orange_circle: | Add EMMS bookmark | +| emms-bookmarks-next | :orange_circle: | Jump to next EMMS bookmark | +| emms-lyrics-mode | :orange_circle: | Toggle EMMS lyrics mode | +| emms-tag-editor-edit | :orange_circle: | Edit track tags | +| emms-streams | :orange_circle: | Show EMMS streams | +| emms-mark-all | :orange_circle: | Mark all tracks | +| emms-score-up-playing | :orange_circle: | Score up current track | +| emms-history-save | :orange_circle: | Save EMMS play history | +| bongo-start | :orange_circle: | Start Bongo playback | +| bongo-stop | :orange_circle: | Stop Bongo playback | +| bongo-pause-resume | :orange_circle: | Toggle Bongo pause/resume | +| bongo-next | :orange_circle: | Play next Bongo track | + ### Round 197 — Copilot-ext, GPTel-ext, LLM, Aider, Codeium, Sourcegraph, ChatGPT, Whisper | Feature | Status | Notes | --- a/src/jerboa-emacs/editor-extra-final.ss +++ b/src/jerboa-emacs/editor-extra-final.ss @@ -18084,3 +18084,47 @@ (echo-read-string echo "Org-AI prompt: " (lambda (p) (echo-message! echo (str "Org-AI: " p)))))) + +;; Round 198 — EMMS-ext, Bongo +(def (cmd-emms-lyrics-mode app) + (let* ((echo (app-state-echo app))) + (toggle-mode! app 'emms-lyrics) + (if (mode-enabled? app 'emms-lyrics) + (echo-message! echo "EMMS lyrics mode enabled") + (echo-message! echo "EMMS lyrics mode disabled")))) + +(def (cmd-emms-tag-editor-edit app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: editing tags"))) + +(def (cmd-emms-streams app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: showing streams"))) + +(def (cmd-emms-mark-all app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: marked all tracks"))) + +(def (cmd-emms-score-up-playing app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: scored up current track"))) + +(def (cmd-emms-history-save app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: saved play history"))) + +(def (cmd-bongo-start app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Bongo: started playback"))) + +(def (cmd-bongo-stop app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Bongo: stopped playback"))) + +(def (cmd-bongo-pause-resume app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Bongo: toggled pause/resume"))) + +(def (cmd-bongo-next app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Bongo: playing next track"))) --- a/src/jerboa-emacs/editor-extra-modes.ss +++ b/src/jerboa-emacs/editor-extra-modes.ss @@ -18729,3 +18729,51 @@ (echo-read-string echo "Architect prompt: " (lambda (p) (echo-message! echo (str "Aider: architect mode '" p "'")))))) + +;; Round 198 — ERC-ext, EMMS +(def (cmd-erc-track-switch-buffer app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "ERC: switched to tracked buffer"))) + +(def (cmd-emms-play-playlist app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Playlist file: " + (lambda (f) + (echo-message! echo (str "EMMS: playing playlist " f)))))) + +(def (cmd-emms-play-directory-tree app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Directory: " + (lambda (dir) + (echo-message! echo (str "EMMS: playing directory tree " dir)))))) + +(def (cmd-emms-toggle-random-playlist app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: toggled random playlist"))) + +(def (cmd-emms-seek-forward app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: seeked forward"))) + +(def (cmd-emms-seek-backward app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: seeked backward"))) + +(def (cmd-emms-browser app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: opened browser"))) + +(def (cmd-emms-metaplaylist-mode app) + (let* ((echo (app-state-echo app))) + (toggle-mode! app 'emms-metaplaylist) + (if (mode-enabled? app 'emms-metaplaylist) + (echo-message! echo "EMMS metaplaylist mode enabled") + (echo-message! echo "EMMS metaplaylist mode disabled")))) + +(def (cmd-emms-bookmarks-add app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: added bookmark at current position"))) + +(def (cmd-emms-bookmarks-next app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "EMMS: jumped to next bookmark"))) --- a/src/jerboa-emacs/editor-extra-regs2.ss +++ b/src/jerboa-emacs/editor-extra-regs2.ss @@ -5591,4 +5591,25 @@ (register-command! 'dall-e-shell-prompt cmd-dall-e-shell-prompt) (register-command! 'whisper-transcribe cmd-whisper-transcribe) (register-command! 'org-ai-prompt cmd-org-ai-prompt) + ;; Round 198 + (register-command! 'erc-track-switch-buffer cmd-erc-track-switch-buffer) + (register-command! 'emms-play-playlist cmd-emms-play-playlist) + (register-command! 'emms-play-directory-tree cmd-emms-play-directory-tree) + (register-command! 'emms-toggle-random-playlist cmd-emms-toggle-random-playlist) + (register-command! 'emms-seek-forward cmd-emms-seek-forward) + (register-command! 'emms-seek-backward cmd-emms-seek-backward) + (register-command! 'emms-browser cmd-emms-browser) + (register-command! 'emms-metaplaylist-mode cmd-emms-metaplaylist-mode) + (register-command! 'emms-bookmarks-add cmd-emms-bookmarks-add) + (register-command! 'emms-bookmarks-next cmd-emms-bookmarks-next) + (register-command! 'emms-lyrics-mode cmd-emms-lyrics-mode) + (register-command! 'emms-tag-editor-edit cmd-emms-tag-editor-edit) + (register-command! 'emms-streams cmd-emms-streams) + (register-command! 'emms-mark-all cmd-emms-mark-all) + (register-command! 'emms-score-up-playing cmd-emms-score-up-playing) + (register-command! 'emms-history-save cmd-emms-history-save) + (register-command! 'bongo-start cmd-bongo-start) + (register-command! 'bongo-stop cmd-bongo-stop) + (register-command! 'bongo-pause-resume cmd-bongo-pause-resume) + (register-command! 'bongo-next cmd-bongo-next) )