 (use-package embark-consult
   :straight t
   :after (embark consult)
-  :demand t
   :hook
   (embark-collect-mode . consult-preview-at-point-mode))
 
-;; dropdown completion
+;; dropdown completion (explicitly call with M-TAB)
 (use-package corfu
   :straight t
   :hook
-  (prog-mode . corfu-mode)
-  :config
-  (setq completion-in-region-function 'corfu--completion-in-region))
+  ((prog-mode . corfu-mode)
+   (eshell-mode . corfu-mode))
+  :config
+  ;; Corfu child frames don't display in terminals, so fall back to consult completion
+  (setq completion-in-region-function
+        (lambda (&rest args)
+          (apply (if (display-graphic-p)
+                     #'corfu--completion-in-region
+                   #'consult-completion-in-region)
+                 args))
+        corfu-scroll-margin 0))
 
 ;;;;; Documentation
 

  (which-key-setup-side-window-right-bottom)
  :bind ("C-c h k" . #'which-key-show-top-level))

;;;; Modes

;; HTML browser
(use-package eww

  :bind
  ("C-c n n" . #'org-noter))

;;;;; Programming Modes

;; settings for editing c
(use-package cc-mode
