diff options
Diffstat (limited to 'user')
-rw-r--r-- | user/emacs/init.el | 22 | ||||
-rw-r--r-- | user/modules/tabnine.nix | 6 |
2 files changed, 21 insertions, 7 deletions
diff --git a/user/emacs/init.el b/user/emacs/init.el index a90973c1..9317968a 100644 --- a/user/emacs/init.el +++ b/user/emacs/init.el @@ -558,12 +558,26 @@ _p_rev _u_pper _=_: upper/lower _r_esolve (setq company-shell-clean-manpage t) (add-to-list 'company-backends '(company-shell company-shell-env)))) -(use-package company-tabnine +(use-package tabnine :after (company) - :config (setq company-tabnine-binaries-folder "~/.local/tabnine") + :config (progn + (delq 'company-preview-if-just-one-frontend company-frontends) + (setq tabnine-binaries-folder "~/.local/tabnine") + (global-tabnine-mode) + + (define-key tabnine-completion-map (kbd "TAB") #'tabnine-accept-completion) + (define-key tabnine-completion-map (kbd "<tab>") #'tabnine-accept-completion) + + (define-key tabnine-completion-map (kbd "M-f") #'tabnine-accept-completion-by-word) + (define-key tabnine-completion-map (kbd "M-<return>") #'tabnine-accept-completion-by-line) + + (define-key tabnine-completion-map (kbd "C-g") #'tabnine-clear-overlay) + (define-key tabnine-completion-map (kbd "M-[") #'tabnine-next-completion) + (define-key tabnine-completion-map (kbd "M-]") #'tabnine-previous-completion)) :init (progn - (advice-add 'company-tabnine-start-process :around #'quiet) - (add-to-list 'company-backends #'company-tabnine))) + (advice-add 'tabnine-start-process :around #'quiet) + + (add-hook 'kill-emacs-hook #'tabnine-kill-process))) ;;; Documentation diff --git a/user/modules/tabnine.nix b/user/modules/tabnine.nix index e4b80ad9..a702cf29 100644 --- a/user/modules/tabnine.nix +++ b/user/modules/tabnine.nix @@ -81,11 +81,11 @@ in }; programs.emacs.extraPackages = epkgs: [ - epkgs.company-tabnine + epkgs.tabnine ]; programs.emacs.extraConfig = '' - (with-eval-after-load 'company-tabnine - (advice-add 'company-tabnine--executable-path :around + (with-eval-after-load 'tabnine + (advice-add 'tabnine--executable-path :around (lambda (original-function &rest args) "${pkgs.tabnine}/bin/TabNine"))) ''; |