From b135c1a5f357a2f00302b58b32b330103484abae Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Thu, 6 Jul 2017 12:44:03 +0200 Subject: [PATCH] lang/cc: reorganize; add company-glsl --- modules/lang/cc/config.el | 40 ++++++++++++++++++++++++------------- modules/lang/cc/packages.el | 1 + 2 files changed, 27 insertions(+), 14 deletions(-) diff --git a/modules/lang/cc/config.el b/modules/lang/cc/config.el index 167ffff29..100993217 100644 --- a/modules/lang/cc/config.el +++ b/modules/lang/cc/config.el @@ -145,18 +145,6 @@ (def-package! disaster :commands disaster) -;; -;; Plugins -;; - -(when (featurep! :completion company) - (def-package! company-cmake :after cmake-mode) - - (def-package! company-irony :after irony) - - (def-package! company-irony-c-headers :after company-irony)) - - ;; ;; Major modes ;; @@ -166,8 +154,6 @@ :config (set! :company-backend 'cmake-mode '(company-cmake company-yasnippet))) -(def-package! glsl-mode :mode ("\\.glsl$" "\\.vert$" "\\.frag$" "\\.geom$")) - (def-package! cuda-mode :mode "\\.cuh?$") (def-package! opencl-mode :mode "\\.cl$") @@ -175,3 +161,29 @@ (def-package! demangle-mode :commands demangle-mode :init (add-hook 'llvm-mode-hook #'demangle-mode)) + +(def-package! glsl-mode + :mode "\\.glsl$" + :mode "\\.vert$" + :mode "\\.frag$" + :mode "\\.geom$") + + +;; +;; Plugins +;; + +(when (featurep! :completion company) + (def-package! company-cmake :after cmake-mode) + + (def-package! company-irony :after irony) + + (def-package! company-irony-c-headers :after company-irony) + + (def-package! company-glsl + :when (featurep! :completion company) + :after glsl-mode + :config + (if (executable-find "glslangValidator") + (warn "glsl-mode: couldn't find glslangValidator, disabling company-glsl") + (set! :company-backend 'glsl-mode '(company-glsl))))) diff --git a/modules/lang/cc/packages.el b/modules/lang/cc/packages.el index f0a6ba78e..8109c1886 100644 --- a/modules/lang/cc/packages.el +++ b/modules/lang/cc/packages.el @@ -15,6 +15,7 @@ (package! flycheck-irony)) (when (featurep! :completion company) + (package! company-glsl :recipe (:fetcher github :repo "Kaali/company-glsl")) (package! company-irony) (package! company-irony-c-headers))