branch: externals/corfu commit e3210e0b22098ffbff1f5688896ca8d0998c00ee Author: Daniel Mendler <m...@daniel-mendler.de> Commit: Daniel Mendler <m...@daniel-mendler.de>
Extract buffer parameters --- extensions/corfu-popupinfo.el | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/extensions/corfu-popupinfo.el b/extensions/corfu-popupinfo.el index c5d3e5c62b..89d9385b37 100644 --- a/extensions/corfu-popupinfo.el +++ b/extensions/corfu-popupinfo.el @@ -90,6 +90,16 @@ map) "Additional keymap activated in popupinfo mode.") +(defvar corfu-popupinfo--buffer-parameters + '((line-move-visual . t) + (truncate-partial-width-windows . nil) + (truncate-lines . nil) + (left-margin-width . 1) + (right-margin-width . 1) + (word-wrap . t) + (fringe-indicator-alist (continuation))) + "Buffer parameters.") + (defvar-local corfu-popupinfo--toggle t "Local popupinfo toggle state.") @@ -313,16 +323,10 @@ the candidate popup, its value is 'bottom, 'top, 'right or 'left." (when doc-changed (if-let (doc (funcall corfu-popupinfo--function candidate)) (with-current-buffer (corfu--make-buffer " *corfu-popupinfo*" doc) - ;; TODO extract settings - (setq-local line-move-visual t - truncate-partial-width-windows nil - left-margin-width 1 - right-margin-width 1 - truncate-lines nil - word-wrap t - fringe-indicator-alist '((continuation)) - face-remapping-alist (copy-tree face-remapping-alist)) - (setf (alist-get 'default face-remapping-alist) 'corfu-popupinfo)) + (dolist (var corfu-popupinfo--buffer-parameters) + (set (make-local-variable (car var)) (cdr var))) + (setf face-remapping-alist (copy-tree face-remapping-alist) + (alist-get 'default face-remapping-alist) 'corfu-popupinfo)) (corfu-popupinfo--hide) (setq doc-changed nil edges-changed nil))) (when (or doc-changed edges-changed)