summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorAlan Pearce2014-07-10 22:05:45 +0100
committerAlan Pearce2014-07-10 22:05:45 +0100
commit3e15bd32d236180ba5fa5ce5da083d538791a608 (patch)
tree70fc28c6812bd38b1189452bacdad279f0126967
parent8c6c7cdc4c5397d9704b168e93021248f57fdf77 (diff)
downloaddotfiles-3e15bd32d236180ba5fa5ce5da083d538791a608.tar.lz
dotfiles-3e15bd32d236180ba5fa5ce5da083d538791a608.tar.zst
dotfiles-3e15bd32d236180ba5fa5ce5da083d538791a608.zip
Emacs: Add mmm-mode for SQL inside PHP
…assuming I got the regex right.
-rw-r--r--tag-emacs/emacs.d/Cask1
-rw-r--r--tag-emacs/emacs.d/init.el18
2 files changed, 19 insertions, 0 deletions
diff --git a/tag-emacs/emacs.d/Cask b/tag-emacs/emacs.d/Cask
index 78b286c..f3a1dc9 100644
--- a/tag-emacs/emacs.d/Cask
+++ b/tag-emacs/emacs.d/Cask
@@ -45,6 +45,7 @@
 (depends-on "lua-mode")
 (depends-on "magit")
 (depends-on "markdown-mode")
+(depends-on "mmm-mode")
 (depends-on "move-text")
 (depends-on "multi-term")
 (depends-on "multiple-cursors")
diff --git a/tag-emacs/emacs.d/init.el b/tag-emacs/emacs.d/init.el
index 35d63f9..fab42b2 100644
--- a/tag-emacs/emacs.d/init.el
+++ b/tag-emacs/emacs.d/init.el
@@ -1063,6 +1063,24 @@
                 web-mode-comment-style 2
                 web-mode-disable-auto-pairing t))
 
+(req-package mmm-auto
+  :config (progn
+            (defvar php-sql-mmm-submode-enabled nil)
+            (defun php-sql-mmm-submode ()
+              "Provides a very minimal embedding of SQL in PHP, via mmm-mode."
+              (interactive)
+              (when (not php-sql-mmm-submode-enabled)
+                (set-face-background 'mmm-default-submode-face nil)
+                (mmm-add-classes
+                 '((php-sql
+                    :submode sql-mode
+                    :front "\\($\\(sql\\|query\\)\\s-*=\\s-*[\"']\\|<<<SQL\\)"
+                    :back "\\([\"']\\|SQL\\);?"
+                    :face mmm-code-submode-face)))
+                (mmm-add-mode-ext-class 'php-mode "\\.php$" 'php-sql)
+                (setq php-sql-mmm-submode-enabled t))))
+  :init (setq 'mmm-global-mode 'maybe))
+
 ;;;; Windows & Frames
 
 (setq frame-title-format