Round 206: Corfu-ext, Cape-ext, Company-ext, Hippie-ext, Pabbrev, Abbrev-suggest commands

ober

f120cc1e3f6172e00a7f1bf76cad055fb35e8630

diff --git a/docs/jemacs-vs-emacs.md b/docs/jemacs-vs-emacs.md
index bd58d38..54b3a89 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 206 — Corfu-ext, Cape-ext, Company-ext, Hippie-ext, Pabbrev, Abbrev-suggest
+
+| Feature | Status | Notes |
+|---|---|---|
+| corfu-quick-complete | :orange_circle: | Quick complete with Corfu |
+| corfu-indexed-mode | :orange_circle: | Toggle Corfu indexed mode |
+| corfu-separator-insert | :orange_circle: | Insert Corfu separator |
+| cape-wrap-buster | :orange_circle: | Cape cache buster wrapper |
+| cape-wrap-super | :orange_circle: | Cape super completion wrapper |
+| cape-wrap-purify | :orange_circle: | Cape purify wrapper |
+| cape-interactive | :orange_circle: | Cape interactive completion |
+| kind-icon-margin-formatter | :orange_circle: | Configure kind-icon formatter |
+| nerd-icons-corfu-formatter | :orange_circle: | Configure nerd-icons Corfu formatter |
+| company-show-doc-buffer | :orange_circle: | Show Company documentation |
+| company-search-candidates | :orange_circle: | Search Company candidates |
+| company-filter-candidates | :orange_circle: | Filter Company candidates |
+| company-select-next-or-abort | :orange_circle: | Select next or abort Company |
+| company-complete-common-or-cycle | :orange_circle: | Complete common or cycle Company |
+| company-yasnippet | :orange_circle: | Company yasnippet backend |
+| hippie-expand-undo | :orange_circle: | Undo hippie expansion |
+| dabbrev-expand-all | :orange_circle: | Expand from all buffers |
+| pabbrev-mode | :orange_circle: | Toggle predictive abbreviation |
+| abbrev-suggest-mode | :orange_circle: | Toggle abbreviation suggestions |
+| corfu-candidate-overlay-mode | :orange_circle: | Toggle Corfu candidate overlay |
+
 ### Round 205 — Evil-ext, Meow, Boon, God-mode-ext, Transient-ext, Casual
 
 | Feature | Status | Notes |
diff --git a/src/jerboa-emacs/editor-extra-final.ss b/src/jerboa-emacs/editor-extra-final.ss
index 37a3910..e67d42d 100644
--- a/src/jerboa-emacs/editor-extra-final.ss
+++ b/src/jerboa-emacs/editor-extra-final.ss
@@ -18479,3 +18479,53 @@
 (def (cmd-casual-bookmarks-tmenu app)
   (let* ((echo (app-state-echo app)))
     (echo-message! echo "Casual: showing bookmarks transient menu")))
+
+;; Round 206 — Company-ext, Hippie-ext, Dabbrev-ext, Pabbrev, Abbrev-suggest, Corfu-overlay
+(def (cmd-company-search-candidates app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Company: searching candidates")))
+
+(def (cmd-company-filter-candidates app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Company: filtering candidates")))
+
+(def (cmd-company-select-next-or-abort app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Company: selected next or aborted")))
+
+(def (cmd-company-complete-common-or-cycle app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Company: completed common or cycled")))
+
+(def (cmd-company-yasnippet app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Company: yasnippet completion")))
+
+(def (cmd-hippie-expand-undo app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Hippie: undid last expansion")))
+
+(def (cmd-dabbrev-expand-all app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Dabbrev: expanded from all buffers")))
+
+(def (cmd-pabbrev-mode app)
+  (let* ((echo (app-state-echo app)))
+    (toggle-mode! app 'pabbrev)
+    (if (mode-enabled? app 'pabbrev)
+      (echo-message! echo "Pabbrev mode enabled")
+      (echo-message! echo "Pabbrev mode disabled"))))
+
+(def (cmd-abbrev-suggest-mode app)
+  (let* ((echo (app-state-echo app)))
+    (toggle-mode! app 'abbrev-suggest)
+    (if (mode-enabled? app 'abbrev-suggest)
+      (echo-message! echo "Abbrev suggest mode enabled")
+      (echo-message! echo "Abbrev suggest mode disabled"))))
+
+(def (cmd-corfu-candidate-overlay-mode app)
+  (let* ((echo (app-state-echo app)))
+    (toggle-mode! app 'corfu-candidate-overlay)
+    (if (mode-enabled? app 'corfu-candidate-overlay)
+      (echo-message! echo "Corfu candidate overlay mode enabled")
+      (echo-message! echo "Corfu candidate overlay mode disabled"))))
diff --git a/src/jerboa-emacs/editor-extra-modes.ss b/src/jerboa-emacs/editor-extra-modes.ss
index 3123ca3..0cfdbe1 100644
--- a/src/jerboa-emacs/editor-extra-modes.ss
+++ b/src/jerboa-emacs/editor-extra-modes.ss
@@ -19095,3 +19095,47 @@
 (def (cmd-boon-set-insert-state app)
   (let* ((echo (app-state-echo app)))
     (echo-message! echo "Boon: entered insert state")))
+
+;; Round 206 — Corfu-ext, Cape-ext, Company-ext, Kind-icon, Nerd-icons-corfu
+(def (cmd-corfu-quick-complete app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Corfu: quick completed")))
+
+(def (cmd-corfu-indexed-mode app)
+  (let* ((echo (app-state-echo app)))
+    (toggle-mode! app 'corfu-indexed)
+    (if (mode-enabled? app 'corfu-indexed)
+      (echo-message! echo "Corfu indexed mode enabled")
+      (echo-message! echo "Corfu indexed mode disabled"))))
+
+(def (cmd-corfu-separator-insert app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Corfu: inserted separator")))
+
+(def (cmd-cape-wrap-buster app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Cape: wrapped with cache buster")))
+
+(def (cmd-cape-wrap-super app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Cape: wrapped with super completion")))
+
+(def (cmd-cape-wrap-purify app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Cape: wrapped with purify")))
+
+(def (cmd-cape-interactive app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Cape: interactive completion")))
+
+(def (cmd-kind-icon-margin-formatter app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Kind-icon: margin formatter configured")))
+
+(def (cmd-nerd-icons-corfu-formatter app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Nerd-icons: Corfu formatter configured")))
+
+(def (cmd-company-show-doc-buffer app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Company: showing documentation buffer")))
diff --git a/src/jerboa-emacs/editor-extra-regs2.ss b/src/jerboa-emacs/editor-extra-regs2.ss
index d94383c..da591ff 100644
--- a/src/jerboa-emacs/editor-extra-regs2.ss
+++ b/src/jerboa-emacs/editor-extra-regs2.ss
@@ -5759,4 +5759,25 @@
   (register-command! 'casual-isearch-tmenu cmd-casual-isearch-tmenu)
   (register-command! 'casual-avy-tmenu cmd-casual-avy-tmenu)
   (register-command! 'casual-bookmarks-tmenu cmd-casual-bookmarks-tmenu)
+  ;; Round 206
+  (register-command! 'corfu-quick-complete cmd-corfu-quick-complete)
+  (register-command! 'corfu-indexed-mode cmd-corfu-indexed-mode)
+  (register-command! 'corfu-separator-insert cmd-corfu-separator-insert)
+  (register-command! 'cape-wrap-buster cmd-cape-wrap-buster)
+  (register-command! 'cape-wrap-super cmd-cape-wrap-super)
+  (register-command! 'cape-wrap-purify cmd-cape-wrap-purify)
+  (register-command! 'cape-interactive cmd-cape-interactive)
+  (register-command! 'kind-icon-margin-formatter cmd-kind-icon-margin-formatter)
+  (register-command! 'nerd-icons-corfu-formatter cmd-nerd-icons-corfu-formatter)
+  (register-command! 'company-show-doc-buffer cmd-company-show-doc-buffer)
+  (register-command! 'company-search-candidates cmd-company-search-candidates)
+  (register-command! 'company-filter-candidates cmd-company-filter-candidates)
+  (register-command! 'company-select-next-or-abort cmd-company-select-next-or-abort)
+  (register-command! 'company-complete-common-or-cycle cmd-company-complete-common-or-cycle)
+  (register-command! 'company-yasnippet cmd-company-yasnippet)
+  (register-command! 'hippie-expand-undo cmd-hippie-expand-undo)
+  (register-command! 'dabbrev-expand-all cmd-dabbrev-expand-all)
+  (register-command! 'pabbrev-mode cmd-pabbrev-mode)
+  (register-command! 'abbrev-suggest-mode cmd-abbrev-suggest-mode)
+  (register-command! 'corfu-candidate-overlay-mode cmd-corfu-candidate-overlay-mode)
 )