From d828d7ccffcdac7ba13912f05b7c82ac667a2b3d Mon Sep 17 00:00:00 2001 From: JSDurand Date: Mon, 12 Jun 2023 21:51:48 +0800 Subject: wgsl: major mode for WGSL files. * init.el (wgsl-mode, auto-mode-alist): Add support for WebGpu Shader Language files. * wgsl-conf.el ("wgsl-mode"): Use a package for syntax-highlighting and basic stuff. --- init.el | 8 ++++++++ wgsl-conf.el | 31 +++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 wgsl-conf.el diff --git a/init.el b/init.el index 32b0b28..ae90b89 100644 --- a/init.el +++ b/init.el @@ -166,6 +166,14 @@ no effect." (add-to-list 'auto-mode-alist (cons "\\.fs$" #'glsl-mode)) (add-to-list 'auto-mode-alist (cons "\\.vs$" #'glsl-mode)) +;;; Prepare for WGSL + +;;;###autoload +(load-after-function wgsl-mode "wgsl-conf.el" + "Fake mode that loads the package." nil (wgsl-mode)) + +(add-to-list 'auto-mode-alist (cons "\\.wgsl$" #'wgsl-mode)) + ;;; rainbow-mode (use-package "rainbow-mode" 'rainbow-mode) diff --git a/wgsl-conf.el b/wgsl-conf.el new file mode 100644 index 0000000..f57a70d --- /dev/null +++ b/wgsl-conf.el @@ -0,0 +1,31 @@ +;;; wgsl-conf.el --- My configurations for Web GPU shader files. -*- lexical-binding: t; -*- + +;; Copyright (C) 2023 Jean Sévère Durand + +;; Author: Jean Sévère Durand +;; Keywords: convenience, languages, tools + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see . + +;;; Commentary: + +;; + +;;; Code: + +(use-package "wgsl-mode" 'wgsl-mode) + + +(provide 'wgsl-conf) +;;; wgsl-conf.el ends here -- cgit v1.2.3-18-g5258