From af1a266670d040d2f4083ff309d732d648afba2a Mon Sep 17 00:00:00 2001 From: Angelos Mouzakitis Date: Tue, 10 Oct 2023 14:33:42 +0000 Subject: Add submodule dependency files Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec --- meson/data/syntax-highlighting/emacs/meson.el | 31 +++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 meson/data/syntax-highlighting/emacs/meson.el (limited to 'meson/data/syntax-highlighting/emacs') diff --git a/meson/data/syntax-highlighting/emacs/meson.el b/meson/data/syntax-highlighting/emacs/meson.el new file mode 100644 index 000000000..a640bbe71 --- /dev/null +++ b/meson/data/syntax-highlighting/emacs/meson.el @@ -0,0 +1,31 @@ +;; keywords for syntax coloring +(setq meson-keywords + `( + ( ,(regexp-opt '("elif" "if" "else" "endif" "foreach" "endforeach") 'word) . font-lock-keyword-face) + ) + ) + +;; syntax table +(defvar meson-syntax-table nil "Syntax table for `meson-mode'.") +(setq meson-syntax-table + (let ((synTable (make-syntax-table))) + + ;; bash style comment: “# …” + (modify-syntax-entry ?# "< b" synTable) + (modify-syntax-entry ?\n "> b" synTable) + + synTable)) + +;; define the major mode. +(define-derived-mode meson-mode prog-mode + "meson-mode is a major mode for editing Meson build definition files." + :syntax-table meson-syntax-table + + (setq font-lock-defaults '(meson-keywords)) + (setq mode-name "meson") + (setq-local comment-start "# ") + (setq-local comment-end "")) + +(add-to-list 'auto-mode-alist '("meson.build" . meson-mode)) +(provide 'meson) +;;; meson.el ends here -- cgit