     :ensure t
     :config
     (global-company-mode))
-
-  ;; ;; Language Server Protocol Plugin.
-  ;; ;; The actual plugin used to communicate with cquery.
-  ;; ;; https://github.com/emacs-lsp/lsp-mode
-  ;; (use-package lsp-mode
-  ;;   :ensure t
-  ;;   :config
-  ;;   (setq lsp-prefer-flymake nil)
-  ;;   )
-
-  ;; ;; Flycheck and other IDE-feature support for LSP.
-  ;; ;; This has the "fancy features" and should be customized.
-  ;; ;; Personally, I turned the symbol highlighting off.
-  ;; ;; https://github.com/emacs-lsp/lsp-ui
-  ;; (use-package lsp-ui
-  ;;   :ensure t
-  ;;   :config
-  ;;   (setq lsp-ui-sideline-ignore-duplicate t)
-  ;;   (add-hook 'lsp-mode-hook #'lsp-ui-mode))
-
-  ;; ;; LSP backend for Company.
-  ;; ;; https://github.com/tigersoldier/company-lsp
-  ;; (use-package company-lsp
-  ;;   :ensure t
-  ;;   :config
-  ;;   (setq company-lsp-enable-recompletion t)
-  ;;   (add-to-list 'company-backends 'company-lsp))
-
-  ;; Client to configure and auto-start cquery.
-  ;; https://github.com/cquery-project/emacs-cquery
-  ;; (use-package cquery
-  ;;   :ensure t
-  ;;   :config
-  ;;   (setq cquery-executable "/home/linuxbrew/.linuxbrew/bin/cquery")
-  ;;   (setq cquery-extra-init-params '(:completion (:detailedLabel t))))
-
-  ;; (require 'lsp-clients)
-  ;; (require 'cquery)
-  ;; (setq cquery-executable "/home/linuxbrew/.linuxbrew/bin/cquery")
-  ;; ;; (require 'ccls)
-  ;; ;; (setq ccls-executable "/home/aschmitz/.local/bin/ccls")
-  ;; (add-hook 'python-mode-hook 'lsp)
-  ;; (add-hook 'c++-mode-hook 'lsp)
-
-  ;; (lsp-register-client
-  ;;  (make-lsp-client :new-connection (lsp-stdio-connection "~/bin/clojure-lsp")
-  ;;                   :major-modes '(clojure-mode)
-  ;;                   :server-id 'clojure-lsp))
-
+  (use-package company-rtags
+    :ensure t
+    :config
+    (push 'company-rtags company-backends)
+    )
+  
   ;;
   ;; Helm mode
   ;;

  ;;
  ;; C++/C stuff
  ;;
  ;; (add-hook 'c-mode-common-hook
  ;;           (lambda ()
  ;;             (when (and (derived-mode-p 'c-mode 'c++-mode 'java-mode) (require 'ggtags nil 'noerror))
  ;;       	(ggtags-mode 1))))
  (add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))
  (add-to-list 'auto-mode-alist '("\\.inl\\'" . c++-mode))
  (add-hook 'c-mode-hook 'rtags-start-process-unless-running)
  (add-hook 'c++-mode-hook 'rtags-start-process-unless-running)
  (add-hook 'objc-mode-hook 'rtags-start-process-unless-running)

    :ensure t
    :config
    (global-flycheck-mode))
  (use-package flycheck-rtags
    :ensure t)
  
  ;; Auto-completions.
  ;; There's also `C-M-i`, but this is async.
