;;; ethio-util.el --- utilities for Ethiopic -*- coding: iso-2022-7bit; -*-
-;; Copyright (C) 1997, 2001 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
+;; Copyright (C) 1997, 1998, 2002, 2003, 2004, 2005, 2006, 2007
+;; Free Software Foundation, Inc.
+;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+;; National Institute of Advanced Industrial Science and Technology (AIST)
+;; Registration Number H14PRO021
;; Keywords: mule, multilingual, Ethiopic
;; 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.
;; Author: TAKAHASHI Naoto <ntakahas@m17n.org>
;;; Code:
+(defvar rmail-current-message)
+(defvar rmail-message-vector)
+
;; Information for exiting Ethiopic environment.
(defvar exit-ethiopic-environment-data nil)
(defvar ethio-use-three-dot-question nil
"*Non-nil means associate ASCII question mark with Ethiopic old style question mark (three vertically stacked dots).
-If nil, associate ASCII question mark with Ethiopic stylised question
+If nil, associate ASCII question mark with Ethiopic stylized question
mark. All SERA <--> FIDEL converters refer this variable.")
(defvar ethio-quote-vowel-always nil
;; To avoid byte-compiler warnings. It should never be set globally.
(defvar ethio-sera-being-called-by-w3)
+;; This variable will be bound by some third-party package.
+(defvar sera-being-called-by-w3)
;;;###autoload
(defun ethio-sera-to-fidel-region (beg end &optional secondary force)
and `ethio-secondary-language' specifies the secondary.
If the 3rd parameter SECONDARY is given and non-nil, assume the region
-begins begins with the secondary language; otherwise with the primary
+begins with the secondary language; otherwise with the primary
language.
If the 4th parameter FORCE is given and non-nil, perform conversion
(cond
;; skip from "<" to ">" (or from "&" to ";") if in w3-mode
- ((and (boundp 'ethio-sera-being-called-by-w3)
- ethio-sera-being-called-by-w3
- (or (= ch ?<) (= ch ?&)))
+ ((and (or (= ch ?<) (= ch ?&))
+ (or (and (boundp 'ethio-sera-being-called-by-w3)
+ ethio-sera-being-called-by-w3)
+ (and (boundp 'sera-being-called-by-w3)
+ sera-being-called-by-w3)))
(search-forward (if (= ch ?<) ">" ";")
nil 0))
(defun ethio-tilde-escape nil
"Handle a SERA tilde escape in Ethiopic section and delete it.
-Delete the escape even it is not recognised."
+Delete the escape even it is not recognized."
(let ((p (point)) command)
(skip-chars-forward "^ \t\n\\\\")
;;;###autoload
(defun ethio-sera-to-fidel-mail-or-marker (&optional arg)
- "Execute ethio-sera-to-fidel-mail or ethio-sera-to-fidel-marker depending on the current major mode.
+ "Execute `ethio-sera-to-fidel-mail' or `ethio-sera-to-fidel-marker' depending on the current major mode.
If in rmail-mode or in mail-mode, execute the former; otherwise latter."
(interactive "P")
(goto-char (1+ (match-end 0)))) ; because we inserted one byte (\)
;; skip from "<" to ">" (or from "&" to ";") if called from w3
- ((and (boundp 'ethio-sera-being-called-by-w3)
- ethio-sera-being-called-by-w3
- (or (= ch ?<) (= ch ?&)))
+ ((and (or (= ch ?<) (= ch ?&))
+ (or (and (boundp 'ethio-sera-being-called-by-w3)
+ ethio-sera-being-called-by-w3)
+ (and (boundp 'sera-being-called-by-w3)
+ sera-being-called-by-w3)))
(search-forward (if (= ch ?<) ">" ";")
nil 0))
;;;###autoload
(defun ethio-fidel-to-sera-mail-or-marker (&optional arg)
- "Execute ethio-fidel-to-sera-mail or ethio-fidel-to-sera-marker depending on the current major mode.
+ "Execute `ethio-fidel-to-sera-mail' or `ethio-fidel-to-sera-marker' depending on the current major mode.
If in rmail-mode or in mail-mode, execute the former; otherwise latter."
(interactive "P")
(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].