; ; mmm-mode config for Mojolicious::Lite perl file. ; mmm-mode lib is from here: https://github.com/purcell/mmm-mode ; font locks of [c]perl-mode and mmm-mode conflict each other. ; (add-to-list 'load-path "~/.emacs.d/packages/mmm-mode") (require 'mmm-auto) (require 'mmm-compat) (require 'mmm-vars) (setq mmm-global-mode 'maybe) (global-set-key "\M-p" 'mmm-parse-buffer) ;(mmm-set-major-mode-preference 'cperl-mode 'perl-mojo) (defun mmm-perl-mojo-get-mode (delimiter) (let ((filename (substring delimiter 3 nil))) (or (assoc-default filename auto-mode-alist #'string-match) 'fundamental-mode (signal 'mmm-no-matching-submode nil)))) (mmm-add-group 'perl-mojo '((perl-mojo-blocks :match-submode mmm-perl-mojo-get-mode :front "^@@ \\(.+\\)$" :front-offset (end-of-line 1) :back "\\(^@@\\|\\'\\)" :back-offset (beginning-of-line -1) :save-matches t :delimiter-mode nil :end-not-begin nil :face mmm-code-submode-face ))) (mmm-add-mode-ext-class 'perl-mode "\\.pl$" 'perl-mojo) (setq mmm-submode-mode-line-format "~M[~m]") (setq mmm-submode-decoration-level 2)