aboutsummaryrefslogtreecommitdiffhomepage
path: root/contrib
diff options
context:
space:
mode:
authorGravatar David Aspinall <da@inf.ed.ac.uk>2010-08-27 11:25:01 +0000
committerGravatar David Aspinall <da@inf.ed.ac.uk>2010-08-27 11:25:01 +0000
commit412ab488490575ac3fcd89d7ed8e8016a2104664 (patch)
treed93daf54269c89347b3ddba37cc5fddf530ac546 /contrib
parenta042e89cc0a7c5a8dee2c0b737336ee42e9a1b20 (diff)
Renamed file contrib/mmm/mmm-univ.el, formerly mmm/mmm-univ.el
Diffstat (limited to 'contrib')
-rw-r--r--contrib/mmm/mmm-univ.el64
1 files changed, 64 insertions, 0 deletions
diff --git a/contrib/mmm/mmm-univ.el b/contrib/mmm/mmm-univ.el
new file mode 100644
index 00000000..02504383
--- /dev/null
+++ b/contrib/mmm/mmm-univ.el
@@ -0,0 +1,64 @@
+;;; mmm-univ.el --- The "Universal" Submode Class
+
+;; Copyright (C) 2000 by Free Software Foundation, Inc.
+
+;; Author: Michael Abraham Shulman <mas@kurukshetra.cjb.net>
+
+;;{{{ GPL
+
+;; This file 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 2, or (at your option)
+;; any later version.
+
+;; This file 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 GNU Emacs; see the file COPYING. If not, write to
+;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
+
+;;}}}
+
+;;; Commentary:
+
+;; This file defines the "universal" submode class, the default value
+;; of `mmm-global-classes', which specifies a standard way to indicate
+;; that part of a buffer should be in a different mode--for example,
+;; in an email message.
+
+;;; Code:
+
+(require 'mmm-auto)
+(require 'mmm-vars)
+
+(defun mmm-univ-get-mode (string)
+ (string-match "[a-zA-Z-]+" string)
+ (setq string (match-string 0 string))
+ (let ((modestr (intern (if (string-match "mode\\'" string)
+ string
+ (concat string "-mode")))))
+ (or (mmm-ensure-modename modestr)
+ (signal 'mmm-no-matching-submode nil))))
+
+(mmm-add-classes
+ `((universal
+ :front "{%\\([a-zA-Z-]+\\)%}"
+ :back "{%/~1%}"
+ :insert ((?/ universal "Submode: " @ "{%" str "%}" @ "\n" _ "\n"
+ @ "{%/" str "%}" @))
+ :match-submode mmm-univ-get-mode
+ :save-matches 1
+ )))
+
+(provide 'mmm-univ)
+
+
+;;; Local Variables:
+;;; mmm-global-classes: nil
+;;; End:
+
+;;; mmm-univ.el ends here \ No newline at end of file