minad / corfu

:desert_island: corfu.el - COmpletion in Region FUnction
GNU General Public License v3.0
1.11k stars 43 forks source link

symbol's function definition is void use-package. #411

Closed yigitako closed 8 months ago

yigitako commented 8 months ago

Greetings, I have successfully installed the Corfu package with package-install. Then, I opened a new buffer with a Python script. Afterwards, I executed the command M-x global-corfu-mode RET, and it returned the confirmation that the global-corfu-mode is now enabled, but the autocompletion feature didn't worked.

So, Following this, I added the example configuration to my initialization file and proceeded to restart Emacs. However, upon restarting, Emacs generated an error stating, "symbol's function definition is void use-package."

To address this issue, I have taken the following steps: -- I have added (require 'corfu) at the beginning of the config. Didn't work and throw the same error -- I have verified that the corfu is installed correctly by checking the package-list-pacakges. corfu 1.1 installed COmpletion in Region FUnction -- Restarted emascs several times.

-- TECHNICAL INFO EMACS VERSION :: GNU Emacs 27.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.33, cairo version 1.16.0) of 2023-08-24, modified by Debian

OS :: Trisquel GNU/Linux Aramo (11.0) x86_64](url)

Kernel :: 5.15.0-91-generic -- EMACS init.el --

(use-package corfu
  ;; Optional customizations
  ;; :custom
  ;; (corfu-cycle t)                ;; Enable cycling for `corfu-next/previous'
  (corfu-auto t)                 ;; Enable auto completion
  ;; (corfu-separator ?\s)          ;; Orderless field separator
  ;; (corfu-quit-at-boundary nil)   ;; Never quit at completion boundary
  ;; (corfu-quit-no-match nil)      ;; Never quit, even if there is no match
  ;; (corfu-preview-current nil)    ;; Disable current candidate preview
  ;; (corfu-preselect 'prompt)      ;; Preselect the prompt
  ;; (corfu-on-exact-match nil)     ;; Configure handling of exact matches
  ;; (corfu-scroll-margin 5)        ;; Use scroll margin

  ;; Enable Corfu only for certain modes.
  ;; :hook ((prog-mode . corfu-mode)
  ;;        (shell-mode . corfu-mode)
  ;;        (eshell-mode . corfu-mode))

  ;; Recommended: Enable Corfu globally.  This is recommended since Dabbrev can
  ;; be used globally (M-/).  See also the customization variable
  ;; `global-corfu-modes' to exclude certain modes.
  :init
  (global-corfu-mode))

;; A few more useful configurations...
(use-package emacs
  :init
  ;; TAB cycle if there are only few candidates
  (setq completion-cycle-threshold 3)

  ;; Emacs 28: Hide commands in M-x which do not apply to the current mode.
  ;; Corfu commands are hidden, since they are not supposed to be used via M-x.
  ;; (setq read-extended-command-predicate
  ;;       #'command-completion-default-include-p)

  ;; Enable indentation+completion using the TAB key.
  ;; `completion-at-point' is often bound to M-TAB.
  (setq tab-always-indent 'complete))