emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [GNU ELPA] New package proposal: aggressive-completion.el


From: Gabriel
Subject: Re: [GNU ELPA] New package proposal: aggressive-completion.el
Date: Sat, 03 Apr 2021 17:02:06 -0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

FWIW, this is something I have in my init.el. It ain't much, but it's
honest work. Just 'emacs -q', 'M-x eval-buffer' and have fun.

;;;;;;;;;;;;;;;;;
  (defun auto-completion-list--setup ()
    "Setup minibuffer for `auto-completion-mode'."
    (when minibuffer-completion-table
      (add-hook 'after-change-functions 
'auto-completion-list--display-completions nil t)
      (minibuffer-completion-help)))

  (defun auto-completion-list--display-completions (beg end len)
    "Display completions."
    (minibuffer-completion-help))

  (defun auto-completion-list--complete ()
    "Complete the minibuffer contents."
    (interactive)
    (minibuffer-complete)
    (minibuffer-completion-help))

  (defun turn-on-auto-completion-list-mode ()
    "Turn on `auto-completion-list-mode'."
    (add-hook 'minibuffer-setup-hook 'auto-completion-list--setup)
    (define-key minibuffer-local-must-match-map (kbd "<tab>") 
'auto-completion-list--complete)
    (define-key minibuffer-local-must-match-map (kbd "SPC") 
'auto-completion-list--complete)
    (define-key minibuffer-local-completion-map (kbd "<tab>") 
'auto-completion-list--complete)
    (define-key minibuffer-local-completion-map (kbd "SPC") 
'auto-completion-list--complete))

  (defun turn-off-auto-completion-list-mode ()
    "Turn off `auto-completion-list-mode'."
    (remove-hook 'minibuffer-setup-hook 'auto-completion-list-setup)
    (define-key minibuffer-local-must-match-map (kbd "<tab>") 
'minibuffer-complete)
    (define-key minibuffer-local-must-match-map (kbd "SPC") 
'minibuffer-complete-word)
    (define-key minibuffer-local-completion-map (kbd "<tab>") 
'minibuffer-complete)
    (define-key minibuffer-local-completion-map (kbd "SPC") 
'minibuffer-complete-word))

  (define-minor-mode auto-completion-list-mode
    "Toggle `auto-completion-list-mode'."
    :init-value t
    :global t
    (if auto-completion-list-mode
        (turn-on-auto-completion-list-mode)
      (turn-off-auto-completion-list-mode)))

  (auto-completion-list-mode 1)
;;;;;;;;;;;;;;;;;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]