 (use-package rtf-mode :mode "\\.rtf$")
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; rust-mode ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(use-package rust-mode :mode "\\.rs$")
+(use-package rust-mode :mode "\\.rs$"
+  :init
+  (add-hook 'rust-mode-hook 'eglot-ensure)
+  )
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; qt-pro-mode ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 (use-package qt-pro-mode :mode ("\\.pr[oi]$"))

;; Copyright (C) 2015-2022  Dan Harms (dharms)
;; Author: Dan Harms <danielrharms@gmail.com>
;; Created: Friday, February 27, 2015
;; Modified Time-stamp: <2022-10-28 17:35:32 dharms>
;; Modified by: Dan Harms
;; Keywords:


(add-to-list 'completion-styles 'initials t)
(setq completion-auto-help nil)
(setq completion-cycle-threshold t)     ;always cycle
;; Don't ignore case when completing file names
(setq read-file-name-completion-ignore-case nil)
(setq uniquify-recentf-func 'uniquify-recentf-ivy-recentf-open)

;; (defun harmsway-dabbrev-complete-at-point ()
;;   "Complete dabbrev at point."
;;   (dabbrev--reset-global-variables)
;;   (let* ((abbrev (dabbrev--abbrev-at-point))
;;          (cands (dabbrev--find-all-expansions abbrev t))
;;          (bnd (bounds-of-thing-at-point 'symbol)))
;;     (list (car bnd) (cdr bnd) cands)))
;; (defun harmsway-add-ivy-completion-at-point ()
;;   "Add completion at point for ivy."
;;   (require 'dabbrev)
;;   (add-hook 'completion-at-point-functions 'harmsway-dabbrev-complete-at-point))
;(add-hook 'after-init-hook 'harmsway-add-ivy-completion-at-point)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; company ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
