Date UT
[elisp/mu-cite.git] / mu-cite.el
index c125289..0d92d77 100644 (file)
@@ -1,5 +1,5 @@
 ;;; mu-cite.el --- yet another citation tool for GNU Emacs
-;; Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001
+;; Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2005, 2007
 ;;        Free Software Foundation, Inc.
 
 ;; Author: MORIOKA Tomohiko <tomo@m17n.org>
@@ -21,8 +21,8 @@
 
 ;; 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.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
 
 ;;; Commentary:
 
 (defmacro mu-cite-remove-text-properties (string)
   "Remove text properties from STRING which is read from minibuffer."
   (cond ((featurep 'xemacs)
-        (` (let ((string (copy-sequence (, string))))
-             (map-extents (function (lambda (extent maparg)
-                                      (delete-extent extent))
-                                    string 0 (length string)))
-             string)))
+        `(let ((string (copy-sequence ,string)))
+           (map-extents (function (lambda (extent maparg)
+                                    (delete-extent extent)))
+                        string 0 (length string))
+           string))
        ((or (boundp 'minibuffer-allow-text-properties);; Emacs 20.1 or later.
             (not (fboundp 'set-text-properties)));; under Emacs 19.7.
         string)
        (t
-        (` (let ((string (copy-sequence (, string))))
-             (set-text-properties 0 (length string) nil string)
-             string)))))
+        `(let ((string (copy-sequence ,string)))
+           (set-text-properties 0 (length string) nil string)
+           string))))
 
 
 ;;; @ set up
@@ -364,7 +364,8 @@ function according to the agreed upon standard."
       (insert top)
       (setq last-point (point))
       (while (< (point)(mark t))
-       (or (looking-at mu-cite-cited-prefix-regexp)
+       (or (and mu-cite-cited-prefix-regexp
+                (looking-at mu-cite-cited-prefix-regexp))
            (insert prefix))
        (forward-line 1))
       (goto-char last-point))
@@ -385,17 +386,16 @@ function according to the agreed upon standard."
   :group 'mu-cite)
 
 (eval-and-compile
-  ;; Force redefine the function `char-category' which may have been
-  ;; defined by emu.el.  They can be distinguished by the number of
-  ;; arguments.  Anyway, that is the best way not to use emu.el.
+  ;; Don't use the function `char-category' which may have been
+  ;; defined by emu.el.  Anyway, the best way is not to use emu.el.
   (if (and (fboundp 'char-category)
           (subrp (symbol-function 'char-category)))
-      nil
-    (fmakunbound 'char-category)
-    (defun-maybe-cond char-category (character &optional table)
-      "Return a string of category mnemonics for CHAR in TABLE.
-CHAR can be any multilingual characters,
-TABLE defaults to the current buffer's category table."
+      (defalias 'mu-cite-char-category 'char-category)
+    (defun-maybe-cond mu-cite-char-category (character &optional table)
+      "Return a string of category mnemonics for CHARACTER in TABLE.
+CHARACTER can be any multilingual characters,
+TABLE defaults to the current buffer's category table (it is currently
+ignored)."
       ((and (subr-fboundp 'char-category-set)
            (subr-fboundp 'category-set-mnemonics))
        (category-set-mnemonics (char-category-set character)))
@@ -467,9 +467,11 @@ TABLE defaults to the current buffer's category table."
 
 (defcustom fill-column-for-fill-cited-region nil
   "Integer to override `fill-column' while `fill-cited-region' is being
-executed."
-  :type (` (choice (const :tag "Off" nil)
-                  (integer (, default-fill-column))))
+executed.  If you wish people call you ****-san, you may set the value
+of `fill-column' to 60 in the buffer for message sending and set this
+to 70. :-)"
+  :type `(choice (const :tag "Off" nil)
+                (integer ,default-fill-column))
   :group 'mu-cite)
 
 ;;;###autoload
@@ -495,8 +497,7 @@ executed."
                (e (match-end 0)))
            (delete-region b e)
            (if (and (> b (point-min))
-                    (let ((cat (char-category
-                                (char-before b))))
+                    (let ((cat (mu-cite-char-category (char-before b))))
                       (or (string-match "a" cat)
                           (string-match "l" cat))))
                (insert " "))))