   (cl-defmethod eglot-initialization-options :around ((server eglot-cquery))
     (let* ((root (expand-file-name (car (project-roots (eglot--project server)))))
            (root-hashed (replace-regexp-in-string "\/" "!" (directory-file-name root) t t nil 1))
-           (cache-path (expand-file-name "cquery-cache.d" me:emacs-cache-directory))
+           (cache-path (expand-file-name "cquery-cache.d" no-littering-var-directory))
            (cache (expand-file-name root-hashed cache-path)))
       (append (list :cacheDirectory (file-name-as-directory cache)
                     :index '(:comments 2)

(defconst me:data-directory (or (getenv "XDG_DATA_HOME") "~/.local/share"))
(defconst me:cache-directory (or (getenv "XDG_CACHE_HOME")  "~/.cache"))
(defconst me:config-directory (or (getenv "XDG_CONFIG_HOME")  "~/.config"))
;; emacs directories
(defconst me:emacs-cache-directory (expand-file-name "emacs" me:cache-directory))
(defconst me:emacs-backup-directory (expand-file-name "backups" me:emacs-cache-directory))
;; fonts in order of preference
(defconst me:preferred-fonts #'(("Hack" . "Hack-10:autohint=true")
                                ("Fantasque Sans Mono" . "Fantasque Sans Mono-12")


;; save buffer positions
(use-package saveplace
  :after no-littering
  :init
  (setq-default save-place t)
  :config
  (setq save-place-forget-unreadable-files nil)
  (save-place-mode t)
  :defer 1)

;; modal window resizing
(use-package windresize
