Round 200: Pomodoro, Focus, Activities, Burly, Bufler, IBuffer-ext commands
ober
6869b0f44f9ee93e1f6308ab6ac8fe2984a35139
--- 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 200 — Pomodoro, Focus, Activities, Burly, Bufler, IBuffer-ext + +| Feature | Status | Notes | +|---|---|---| +| pomodoro-start | :orange_circle: | Start Pomodoro timer | +| pomodoro-stop | :orange_circle: | Stop Pomodoro timer | +| pomodoro-pause | :orange_circle: | Pause Pomodoro timer | +| pomodoro-resume | :orange_circle: | Resume Pomodoro timer | +| pomodoro-status | :orange_circle: | Show Pomodoro status | +| focus-pin-buffer | :orange_circle: | Pin buffer in focus mode | +| focus-unpin-buffer | :orange_circle: | Unpin buffer from focus mode | +| activities-new | :orange_circle: | Create new activity | +| activities-resume | :orange_circle: | Resume an activity | +| activities-suspend | :orange_circle: | Suspend current activity | +| activities-switch | :orange_circle: | Switch to activity | +| activities-kill | :orange_circle: | Kill current activity | +| burly-bookmark-frames | :orange_circle: | Bookmark frames | +| bufler-list | :orange_circle: | Show Bufler buffer list | +| bufler-switch-buffer | :orange_circle: | Switch buffer with Bufler | +| ibuffer-filter-by-process | :orange_circle: | Filter by process | +| ibuffer-filter-by-used-mode | :orange_circle: | Filter by used mode | +| ibuffer-filter-by-predicate | :orange_circle: | Filter by predicate | +| ibuffer-decompose-filter | :orange_circle: | Decompose filter group | +| ibuffer-nesting-filter-groups | :orange_circle: | Nest filter groups | + ### Round 199 — Denote-ext, Org-roam-ext, Citar-ext, Biblio-ext, Org-ql, Org-sidebar | Feature | Status | Notes | --- a/src/jerboa-emacs/editor-extra-final.ss +++ b/src/jerboa-emacs/editor-extra-final.ss @@ -18184,3 +18184,54 @@ (if (mode-enabled? app 'org-fancy-priorities) (echo-message! echo "Org fancy priorities mode enabled") (echo-message! echo "Org fancy priorities mode disabled")))) + +;; Round 200 — Activities-ext, Burly, Bufler, IBuffer-ext +(def (cmd-activities-switch app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Switch to activity: " + (lambda (name) + (echo-message! echo (str "Activities: switched to '" name "'")))))) + +(def (cmd-activities-kill app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Activities: killed current activity"))) + +(def (cmd-burly-bookmark-frames app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Bookmark name: " + (lambda (name) + (echo-message! echo (str "Burly: bookmarked frames as '" name "'")))))) + +(def (cmd-bufler-list app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Bufler: showing buffer list"))) + +(def (cmd-bufler-switch-buffer app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Switch to buffer: " + (lambda (buf) + (echo-message! echo (str "Bufler: switched to " buf)))))) + +(def (cmd-ibuffer-filter-by-process app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "IBuffer: filtered by process"))) + +(def (cmd-ibuffer-filter-by-used-mode app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Filter by mode: " + (lambda (mode) + (echo-message! echo (str "IBuffer: filtered by mode " mode)))))) + +(def (cmd-ibuffer-filter-by-predicate app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Filter predicate: " + (lambda (pred) + (echo-message! echo (str "IBuffer: filtered by predicate " pred)))))) + +(def (cmd-ibuffer-decompose-filter app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "IBuffer: decomposed filter group"))) + +(def (cmd-ibuffer-nesting-filter-groups app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "IBuffer: nesting filter groups"))) --- a/src/jerboa-emacs/editor-extra-modes.ss +++ b/src/jerboa-emacs/editor-extra-modes.ss @@ -18820,3 +18820,48 @@ (def (cmd-citar-export-local-bib app) (let* ((echo (app-state-echo app))) (echo-message! echo "Citar: exported local bibliography"))) + +;; Round 200 — Pomodoro, Focus, Activities +(def (cmd-pomodoro-start app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Pomodoro: started 25-minute timer"))) + +(def (cmd-pomodoro-stop app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Pomodoro: stopped timer"))) + +(def (cmd-pomodoro-pause app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Pomodoro: paused timer"))) + +(def (cmd-pomodoro-resume app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Pomodoro: resumed timer"))) + +(def (cmd-pomodoro-status app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Pomodoro: showing status"))) + +(def (cmd-focus-pin-buffer app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Focus: pinned current buffer"))) + +(def (cmd-focus-unpin-buffer app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Focus: unpinned current buffer"))) + +(def (cmd-activities-new app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "New activity name: " + (lambda (name) + (echo-message! echo (str "Activities: created '" name "'")))))) + +(def (cmd-activities-resume app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Resume activity: " + (lambda (name) + (echo-message! echo (str "Activities: resumed '" name "'")))))) + +(def (cmd-activities-suspend app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Activities: suspended current activity"))) --- a/src/jerboa-emacs/editor-extra-regs2.ss +++ b/src/jerboa-emacs/editor-extra-regs2.ss @@ -5633,4 +5633,25 @@ (register-command! 'org-edna-mode cmd-org-edna-mode) (register-command! 'org-depend-mode cmd-org-depend-mode) (register-command! 'org-fancy-priorities-mode cmd-org-fancy-priorities-mode) + ;; Round 200 + (register-command! 'pomodoro-start cmd-pomodoro-start) + (register-command! 'pomodoro-stop cmd-pomodoro-stop) + (register-command! 'pomodoro-pause cmd-pomodoro-pause) + (register-command! 'pomodoro-resume cmd-pomodoro-resume) + (register-command! 'pomodoro-status cmd-pomodoro-status) + (register-command! 'focus-pin-buffer cmd-focus-pin-buffer) + (register-command! 'focus-unpin-buffer cmd-focus-unpin-buffer) + (register-command! 'activities-new cmd-activities-new) + (register-command! 'activities-resume cmd-activities-resume) + (register-command! 'activities-suspend cmd-activities-suspend) + (register-command! 'activities-switch cmd-activities-switch) + (register-command! 'activities-kill cmd-activities-kill) + (register-command! 'burly-bookmark-frames cmd-burly-bookmark-frames) + (register-command! 'bufler-list cmd-bufler-list) + (register-command! 'bufler-switch-buffer cmd-bufler-switch-buffer) + (register-command! 'ibuffer-filter-by-process cmd-ibuffer-filter-by-process) + (register-command! 'ibuffer-filter-by-used-mode cmd-ibuffer-filter-by-used-mode) + (register-command! 'ibuffer-filter-by-predicate cmd-ibuffer-filter-by-predicate) + (register-command! 'ibuffer-decompose-filter cmd-ibuffer-decompose-filter) + (register-command! 'ibuffer-nesting-filter-groups cmd-ibuffer-nesting-filter-groups) )