Round 208: Doom-modeline-ext, Nano, General, Elpaca, ESUP, Benchmark commands

ober

b77b746acda28d4c3672b62a00654a21902c1f4c

diff --git a/docs/jemacs-vs-emacs.md b/docs/jemacs-vs-emacs.md
index b290698..90aaf20 100644
--- 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 208 — Doom-modeline-ext, Modus-themes-ext, Nano, General, Elpaca, ESUP
+
+| Feature | Status | Notes |
+|---|---|---|
+| doom-modeline-set-modeline | :orange_circle: | Set Doom modeline style |
+| doom-modeline-env-setup-python | :orange_circle: | Setup Python env display |
+| doom-modeline-env-setup-ruby | :orange_circle: | Setup Ruby env display |
+| modus-themes-wide-deuteranopia | :orange_circle: | Wide deuteranopia support |
+| nano-modeline-mode | :orange_circle: | Toggle Nano modeline |
+| spacemacs-buffer-goto-link | :orange_circle: | Jump to Spacemacs link |
+| spacemacs-toggle-menu | :orange_circle: | Spacemacs toggle menu |
+| general-describe-keybindings | :orange_circle: | Describe General keybindings |
+| general-override-mode | :orange_circle: | Toggle General override mode |
+| use-package-compute-statistics | :orange_circle: | Compute use-package stats |
+| use-package-jump-to-package-form | :orange_circle: | Jump to package form |
+| straight-thaw-versions | :orange_circle: | Thaw straight.el versions |
+| elpaca-browse-package | :orange_circle: | Browse Elpaca package |
+| elpaca-update-all | :orange_circle: | Update all Elpaca packages |
+| elpaca-delete | :orange_circle: | Delete Elpaca package |
+| elpaca-rebuild | :orange_circle: | Rebuild Elpaca package |
+| elpaca-log | :orange_circle: | Show Elpaca log |
+| quelpa-upgrade-all | :orange_circle: | Upgrade all Quelpa packages |
+| benchmark-init-show-durations-tree | :orange_circle: | Show init durations tree |
+| esup-run | :orange_circle: | Profile startup with ESUP |
+
 ### Round 207 — Treesit-ext, Combobulate, Expreg, Puni
 
 | Feature | Status | Notes |
diff --git a/src/jerboa-emacs/editor-extra-final.ss b/src/jerboa-emacs/editor-extra-final.ss
index 0b10063..6d6d46d 100644
--- a/src/jerboa-emacs/editor-extra-final.ss
+++ b/src/jerboa-emacs/editor-extra-final.ss
@@ -18570,3 +18570,52 @@
 (def (cmd-puni-transpose app)
   (let* ((echo (app-state-echo app)))
     (echo-message! echo "Puni: transposed")))
+
+;; Round 208 — Use-package-ext, Straight, Elpaca, Quelpa, Benchmark, ESUP
+(def (cmd-use-package-jump-to-package-form app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Jump to package: "
+      (lambda (pkg)
+        (echo-message! echo (str "Use-package: jumped to " pkg))))))
+
+(def (cmd-straight-thaw-versions app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Straight: thawed package versions")))
+
+(def (cmd-elpaca-browse-package app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Browse package: "
+      (lambda (pkg)
+        (echo-message! echo (str "Elpaca: browsing " pkg))))))
+
+(def (cmd-elpaca-update-all app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Elpaca: updating all packages...")))
+
+(def (cmd-elpaca-delete app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Delete package: "
+      (lambda (pkg)
+        (echo-message! echo (str "Elpaca: deleted " pkg))))))
+
+(def (cmd-elpaca-rebuild app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Rebuild package: "
+      (lambda (pkg)
+        (echo-message! echo (str "Elpaca: rebuilding " pkg))))))
+
+(def (cmd-elpaca-log app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Elpaca: showing log")))
+
+(def (cmd-quelpa-upgrade-all app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Quelpa: upgrading all packages...")))
+
+(def (cmd-benchmark-init-show-durations-tree app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Benchmark-init: showing durations tree")))
+
+(def (cmd-esup-run app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "ESUP: profiling startup...")))
diff --git a/src/jerboa-emacs/editor-extra-modes.ss b/src/jerboa-emacs/editor-extra-modes.ss
index af80f35..3db12ba 100644
--- a/src/jerboa-emacs/editor-extra-modes.ss
+++ b/src/jerboa-emacs/editor-extra-modes.ss
@@ -19183,3 +19183,52 @@
 (def (cmd-combobulate-envelop app)
   (let* ((echo (app-state-echo app)))
     (echo-message! echo "Combobulate: enveloped node")))
+
+;; Round 208 — Doom-modeline-ext, Modus-themes-ext, Nano, Spacemacs, General, Use-package
+(def (cmd-doom-modeline-set-modeline app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Modeline style: "
+      (lambda (style)
+        (echo-message! echo (str "Doom modeline: set to " style))))))
+
+(def (cmd-doom-modeline-env-setup-python app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Doom modeline: set up Python environment")))
+
+(def (cmd-doom-modeline-env-setup-ruby app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Doom modeline: set up Ruby environment")))
+
+(def (cmd-modus-themes-wide-deuteranopia app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Modus themes: enabled wide deuteranopia support")))
+
+(def (cmd-nano-modeline-mode app)
+  (let* ((echo (app-state-echo app)))
+    (toggle-mode! app 'nano-modeline)
+    (if (mode-enabled? app 'nano-modeline)
+      (echo-message! echo "Nano modeline mode enabled")
+      (echo-message! echo "Nano modeline mode disabled"))))
+
+(def (cmd-spacemacs-buffer-goto-link app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Spacemacs: jumped to link in buffer")))
+
+(def (cmd-spacemacs-toggle-menu app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Spacemacs: showing toggle menu")))
+
+(def (cmd-general-describe-keybindings app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "General: describing keybindings")))
+
+(def (cmd-general-override-mode app)
+  (let* ((echo (app-state-echo app)))
+    (toggle-mode! app 'general-override)
+    (if (mode-enabled? app 'general-override)
+      (echo-message! echo "General override mode enabled")
+      (echo-message! echo "General override mode disabled"))))
+
+(def (cmd-use-package-compute-statistics app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Use-package: computed statistics")))
diff --git a/src/jerboa-emacs/editor-extra-regs2.ss b/src/jerboa-emacs/editor-extra-regs2.ss
index da7e428..ac3901d 100644
--- a/src/jerboa-emacs/editor-extra-regs2.ss
+++ b/src/jerboa-emacs/editor-extra-regs2.ss
@@ -5801,4 +5801,25 @@
   (register-command! 'puni-convolute cmd-puni-convolute)
   (register-command! 'puni-split cmd-puni-split)
   (register-command! 'puni-transpose cmd-puni-transpose)
+  ;; Round 208
+  (register-command! 'doom-modeline-set-modeline cmd-doom-modeline-set-modeline)
+  (register-command! 'doom-modeline-env-setup-python cmd-doom-modeline-env-setup-python)
+  (register-command! 'doom-modeline-env-setup-ruby cmd-doom-modeline-env-setup-ruby)
+  (register-command! 'modus-themes-wide-deuteranopia cmd-modus-themes-wide-deuteranopia)
+  (register-command! 'nano-modeline-mode cmd-nano-modeline-mode)
+  (register-command! 'spacemacs-buffer-goto-link cmd-spacemacs-buffer-goto-link)
+  (register-command! 'spacemacs-toggle-menu cmd-spacemacs-toggle-menu)
+  (register-command! 'general-describe-keybindings cmd-general-describe-keybindings)
+  (register-command! 'general-override-mode cmd-general-override-mode)
+  (register-command! 'use-package-compute-statistics cmd-use-package-compute-statistics)
+  (register-command! 'use-package-jump-to-package-form cmd-use-package-jump-to-package-form)
+  (register-command! 'straight-thaw-versions cmd-straight-thaw-versions)
+  (register-command! 'elpaca-browse-package cmd-elpaca-browse-package)
+  (register-command! 'elpaca-update-all cmd-elpaca-update-all)
+  (register-command! 'elpaca-delete cmd-elpaca-delete)
+  (register-command! 'elpaca-rebuild cmd-elpaca-rebuild)
+  (register-command! 'elpaca-log cmd-elpaca-log)
+  (register-command! 'quelpa-upgrade-all cmd-quelpa-upgrade-all)
+  (register-command! 'benchmark-init-show-durations-tree cmd-benchmark-init-show-durations-tree)
+  (register-command! 'esup-run cmd-esup-run)
 )