emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] master 297bf01 063/433: Created file defining `universal' submode


From: Dmitry Gutov
Subject: [elpa] master 297bf01 063/433: Created file defining `universal' submode.
Date: Thu, 15 Mar 2018 19:43:35 -0400 (EDT)

branch: master
commit 297bf015fff71387f1b157490817adfc0a8098d1
Author: mas <mas>
Commit: mas <mas>

    Created file defining `universal' submode.
---
 mmm-univ.el | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/mmm-univ.el b/mmm-univ.el
new file mode 100644
index 0000000..9abb06d
--- /dev/null
+++ b/mmm-univ.el
@@ -0,0 +1,55 @@
+;;; mmm-univ.el --- The "Universal" Submode Class
+
+;; Copyright (C) 2000 by Free Software Foundation, Inc.
+
+;; Author: Michael Abraham Shulman <address@hidden>
+
+;;{{{ 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)
+
+(mmm-add-classes
+ `((universal
+    :front "%\\[\\([^]]+\\)\\]%"
+    :back "%\\[/~1\\]%"
+    :insert ((?/ universal "Submode: " @ "%[" str "]%" @ "\n" _ "\n"
+                 @ "%[/" str "]%" @))
+    :match-submode ,#'(lambda (str)
+                        (string-match "[a-zA-Z-]+" str)
+                        (let ((modestr (match-string 0 str)))
+                          (unless modestr (error "Something is screwy."))
+                          (if (equal (substring modestr -5) "-mode")
+                              (intern modestr)
+                            (intern (concat modestr "-mode")))))
+    :save-matches 1
+    )))
+
+(provide 'mmm-univ)
+
+;;; mmm-univ.el ends here
\ No newline at end of file



reply via email to

[Prev in Thread] Current Thread [Next in Thread]