(rmail-current-message, rmail-message-vector): Remove unneeded declarations.
[bpt/emacs.git] / lisp / language / ethio-util.el
index 8f00571..6004c13 100644 (file)
@@ -1,22 +1,23 @@
-;;; ethio-util.el --- utilities for Ethiopic   -*- coding: utf-8-emacs; -*-
+;;; ethio-util.el --- utilities for Ethiopic   -*- coding: utf-8; -*-
 
-;; Copyright (C) 1997, 1998, 2002
+;; Copyright (C) 1997, 1998, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
 ;;   Free Software Foundation, Inc.
-;; Copyright (C) 1997, 1998, 1999, 2001, 2004, 2005
+;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+;;   2006, 2007, 2008, 2009
 ;;   National Institute of Advanced Industrial Science and Technology (AIST)
 ;;   Registration Number H14PRO021
-;; Copyright (C) 2005
+;; Copyright (C) 2005, 2006
 ;;   National Institute of Advanced Industrial Science and Technology (AIST)
-;;   Registration Number: H15PRO 110
+;;   Registration Number: H15PRO110
 
 ;; Keywords: mule, multilingual, Ethiopic
 
 ;; This file is part of GNU Emacs.
 
-;; GNU Emacs is free software; you can redistribute it and/or modify
+;; GNU Emacs 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.
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -24,9 +25,7 @@
 ;; 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., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;; Author: TAKAHASHI Naoto <ntakahas@m17n.org>
 
@@ -36,9 +35,6 @@
 
 (require 'robin)
 
-(defvar rmail-current-message)
-(defvar rmail-message-vector)
-
 ;; Information for exiting Ethiopic environment.
 (defvar exit-ethiopic-environment-data nil)
 
@@ -796,7 +792,7 @@ The 2nd and 3rd arguments BEGIN and END specify the region."
     ;; Special treatment for geminated characters.
     ;; Geminated characters la", etc. change into \geminateG{\laG}, etc.
     (goto-char (point-min))
-    (while (search-forward "" nil t)
+    (while (re-search-forward "፟\\|" nil t)
       (setq comp (find-composition (match-beginning 0)))
       (if (null comp)
          (replace-match "\\\\geminateG{}" t)
@@ -845,7 +841,7 @@ The 2nd and 3rd arguments BEGIN and END specify the region."
     ;; compose geminated characters
     (goto-char (point-min))
     (while (re-search-forward "\\\\geminateG{\\(\\ce?\\)}" nil t)
-      (replace-match "\\1"))
+      (replace-match "\\1"))
 
     ;; remove redundant braces, if any
     (goto-char (point-min))
@@ -863,7 +859,7 @@ The 2nd and 3rd arguments BEGIN and END specify the region."
 (defun ethio-fidel-to-java-buffer nil
   "Convert Ethiopic characters into the Java escape sequences.
 
-Each escape sequence is of the form \uXXXX, where XXXX is the
+Each escape sequence is of the form \\uXXXX, where XXXX is the
 character's codepoint (in hex) in Unicode.
 
 If `ethio-java-save-lowercase' is non-nil, use [0-9a-f].
@@ -1019,9 +1015,9 @@ With ARG, insert that many delimiters."
 ;;
 
 ;;;###autoload
-(defun ethio-composition-function (pos &optional string)
+(defun ethio-composition-function (pos to font-object string)
   (setq pos (1- pos))
-  (let ((pattern "\\ce"))
+  (let ((pattern "\\ce\\(፟\\|\\)"))
     (if string
        (if (and (>= pos 0)
                 (eq (string-match pattern string pos) pos))
@@ -2008,6 +2004,66 @@ mark."
  ("\\lquoteG" ?) ("\\lquoteG" "«")
  ("\\rquoteG" ?) ("\\rquoteG" "»")
  ("\\qmarkG" ?) ("\\qmarkG" "?")
+
+ ;;
+ ;; New characters in Unicode 4.1.
+ ;;
+ ;; In forward conversion, these characters override the old private
+ ;; extensions above.  The old private extensions still keep their
+ ;; reverse conversion.
+ ;;
+
+ ("\\ornamentG" ?፠)
+ ("\\yWaG" ?ዯ)
+ ("\\GWaG" ?ጟ)
+ ("\\MWeG" ?ᎀ)
+ ("\\mWiG" ?ᎁ)
+ ("\\mWEG" ?ᎂ)
+ ("\\mWG" ?ᎃ)
+ ("\\bWeG" ?ᎄ)
+ ("\\bWiG" ?ᎅ)
+ ("\\bWEG" ?ᎆ)
+ ("\\bWG" ?ᎇ)
+ ("\\fWeG" ?ᎈ)
+ ("\\fWiG" ?ᎉ)
+ ("\\fWEG" ?ᎊ)
+ ("\\fWG" ?ᎋ)
+ ("\\pWeG" ?ᎌ)
+ ("\\pWiG" ?ᎍ)
+ ("\\pWEG" ?ᎎ)
+ ("\\pWG" ?ᎏ)
+ ("\\GWeG" ?ⶓ)
+ ("\\GWiG" ?ⶔ)
+ ("\\GWEG" ?ⶕ)
+ ("\\GWG" ?ⶖ)
+ ("\\qqeG" ?ⷀ)
+ ("\\qquG" ?ⷁ)
+ ("\\qqiG" ?ⷂ)
+ ("\\qqaG" ?ⷃ)
+ ("\\qqEG" ?ⷄ)
+ ("\\qqG" ?ⷅ)
+ ("\\qqoG" ?ⷆ)
+ ("\\kkeG" ?ⷈ)
+ ("\\kkuG" ?ⷉ)
+ ("\\kkiG" ?ⷊ)
+ ("\\kkaG" ?ⷋ)
+ ("\\kkEG" ?ⷌ)
+ ("\\kkG" ?ⷍ)
+ ("\\kkoG" ?ⷎ)
+ ("\\XeG" ?ⷐ)
+ ("\\XuG" ?ⷑ)
+ ("\\XiG" ?ⷒ)
+ ("\\XaG" ?ⷓ)
+ ("\\XEG" ?ⷔ)
+ ("\\XG" ?ⷕ)
+ ("\\XoG" ?ⷖ)
+ ("\\ggeG" ?ⷘ)
+ ("\\gguG" ?ⷙ)
+ ("\\ggiG" ?ⷚ)
+ ("\\ggaG" ?ⷛ)
+ ("\\ggEG" ?ⷜ)
+ ("\\ggG" ?ⷝ)
+ ("\\ggoG" ?ⷞ)
  )
 
 ;; The ethiopic-tex package is not used for keyboard input, therefore
@@ -2017,5 +2073,5 @@ mark."
 
 ;;; ethio-util.el ends here
 
-;;; arch-tag: c8feb3d6-39bf-4b0a-b6ef-26f03fbc8140
+;; arch-tag: c8feb3d6-39bf-4b0a-b6ef-26f03fbc8140
 ;;; ethio-util.el ends here