Move provide to end. Doc fixes.
authorDave Love <fx@gnu.org>
Wed, 29 Mar 2000 18:33:24 +0000 (18:33 +0000)
committerDave Love <fx@gnu.org>
Wed, 29 Mar 2000 18:33:24 +0000 (18:33 +0000)
(iso-iso2sgml-trans-tab, iso-sgml2iso-trans-tab): New variables.
(iso-iso2sgml, iso-sgml2iso): New functions.
(iso-cvt-define-menu): Fix some entries and use backquote for
clarity.

lisp/international/iso-cvt.el

index a862a89..c05bda7 100644 (file)
@@ -1,7 +1,7 @@
-;;; iso-cvt.-el -- translate ISO 8859-1 from/to various encodings
+;;; iso-cvt.-el -- translate ISO 8859-1 from/to various encodings -*- coding: iso-latin-1 -*-
 ;; This file was formerly called gm-lingo.el.
 
-;; Copyright (C) 1993, 1994, 1995, 1996, 1998 Free Software Foundation, Inc.
+;; Copyright (C) 1993, 1994, 1995, 1996, 1998, 2000 Free Software Foundation, Inc.
 
 ;; Author: Michael Gschwind <mike@vlsivie.tuwien.ac.at>
 ;; Keywords: tex, iso, latin, i18n
 ;; Note that many translations use the GNU recode tool to do the actual
 ;; conversion.  So you might want to install that tool to get the full
 ;; benefit of iso-cvt.el
-;
 
 ; TO DO:
-; Cover more cases for translation (There is an infinite number of ways to
+; Cover more cases for translation (There is an infinite number of ways to
 ; represent accented characters in TeX)
 
 ;; SEE ALSO:
@@ -46,7 +45,6 @@
 
 ;;; Code:
 
-(provide 'iso-cvt)
 (require 'format)
 
 (defvar iso-spanish-trans-tab
@@ -681,6 +679,152 @@ Optional arg BUFFER is ignored (so that the function can can be used in
  (interactive "*r")
  (iso-translate-conventions from to iso-iso2duden-trans-tab))
 
+(defvar iso-iso2sgml-trans-tab
+  '(("À" "&Agrave;")
+    ("Á" "&Aacute;")
+    ("Â" "&Acirc;")
+    ("Ã" "&Atilde;")
+    ("Ä" "&Auml;")
+    ("Å" "&Aring;")
+    ("Æ" "&AElig;")
+    ("Ç" "&Ccedil;")
+    ("È" "&Egrave;")
+    ("É" "&Eacute;")
+    ("Ê" "&Ecirc;")
+    ("Ë" "&Euml;")
+    ("Ì" "&Igrave;")
+    ("Í" "&Iacute;")
+    ("Î" "&Icirc;")
+    ("Ï" "&Iuml;")
+    ("Ð" "&ETH;")
+    ("Ñ" "&Ntilde;")
+    ("Ò" "&Ograve;")
+    ("Ó" "&Oacute;")
+    ("Ô" "&Ocirc;")
+    ("Õ" "&Otilde;")
+    ("Ö" "&Ouml;")
+    ("Ø" "&Oslash;")
+    ("Ù" "&Ugrave;")
+    ("Ú" "&Uacute;")
+    ("Û" "&Ucirc;")
+    ("Ü" "&Uuml;")
+    ("Ý" "&Yacute;")
+    ("Þ" "&THORN;")
+    ("ß" "&szlig;")
+    ("à" "&agrave;")
+    ("á" "&aacute;")
+    ("â" "&acirc;")
+    ("ã" "&atilde;")
+    ("ä" "&auml;")
+    ("å" "&aring;")
+    ("æ" "&aelig;")
+    ("ç" "&ccedil;")
+    ("è" "&egrave;")
+    ("é" "&eacute;")
+    ("ê" "&ecirc;")
+    ("ë" "&euml;")
+    ("ì" "&igrave;")
+    ("í" "&iacute;")
+    ("î" "&icirc;")
+    ("ï" "&iuml;")
+    ("ð" "&eth;")
+    ("ñ" "&ntilde;")
+    ("ò" "&ograve;")
+    ("ó" "&oacute;")
+    ("ô" "&ocirc;")
+    ("õ" "&otilde;")
+    ("ö" "&ouml;")
+    ("ø" "&oslash;")
+    ("ù" "&ugrave;")
+    ("ú" "&uacute;")
+    ("û" "&ucirc;")
+    ("ü" "&uuml;")
+    ("ý" "&yacute;")
+    ("þ" "&thorn;")
+    ("ÿ" "&yuml;")))
+
+(defvar iso-sgml2iso-trans-tab
+  '(("&Agrave;" "À")
+    ("&Aacute;" "Á")
+    ("&Acirc;" "Â")
+    ("&Atilde;" "Ã")
+    ("&Auml;" "Ä")
+    ("&Aring;" "Å")
+    ("&AElig;" "Æ")
+    ("&Ccedil;" "Ç")
+    ("&Egrave;" "È")
+    ("&Eacute;" "É")
+    ("&Ecirc;" "Ê")
+    ("&Euml;" "Ë")
+    ("&Igrave;" "Ì")
+    ("&Iacute;" "Í")
+    ("&Icirc;" "Î")
+    ("&Iuml;" "Ï")
+    ("&ETH;" "Ð")
+    ("&Ntilde;" "Ñ")
+    ("&Ograve;" "Ò")
+    ("&Oacute;" "Ó")
+    ("&Ocirc;" "Ô")
+    ("&Otilde;" "Õ")
+    ("&Ouml;" "Ö")
+    ("&Oslash;" "Ø")
+    ("&Ugrave;" "Ù")
+    ("&Uacute;" "Ú")
+    ("&Ucirc;" "Û")
+    ("&Uuml;" "Ü")
+    ("&Yacute;" "Ý")
+    ("&THORN;" "Þ")
+    ("&szlig;" "ß")
+    ("&agrave;" "à")
+    ("&aacute;" "á")
+    ("&acirc;" "â")
+    ("&atilde;" "ã")
+    ("&auml;" "ä")
+    ("&aring;" "å")
+    ("&aelig;" "æ")
+    ("&ccedil;" "ç")
+    ("&egrave;" "è")
+    ("&eacute;" "é")
+    ("&ecirc;" "ê")
+    ("&euml;" "ë")
+    ("&igrave;" "ì")
+    ("&iacute;" "í")
+    ("&icirc;" "î")
+    ("&iuml;" "ï")
+    ("&eth;" "ð")
+    ("&ntilde;" "ñ")
+    ("&ograve;" "ò")
+    ("&oacute;" "ó")
+    ("&ocirc;" "ô")
+    ("&otilde;" "õ")
+    ("&ouml;" "ö")
+    ("&oslash;" "ø")
+    ("&ugrave;" "ù")
+    ("&uacute;" "ú")
+    ("&ucirc;" "û")
+    ("&uuml;" "ü")
+    ("&yacute;" "ý")
+    ("&thorn;" "þ")
+    ("&yuml;" "ÿ")))
+
+;;;###autoload
+(defun iso-iso2sgml (from to &optional buffer)
+ "Translate ISO 8859-1 characters in the region to SGML entities.
+The entities used are from \"ISO 8879:1986//ENTITIES Added Latin 1//EN\".
+Optional arg BUFFER is ignored (so that the function can can be used in
+`format-alist')."
+ (interactive "*r")
+ (iso-translate-conventions from to iso-iso2sgml-trans-tab))
+
+;;;###autoload
+(defun iso-sgml2iso (from to &optional buffer)
+ "Translate SGML entities in the region to ISO 8859-1 characters.
+The entities used are from \"ISO 8879:1986//ENTITIES Added Latin 1//EN\".
+Optional arg BUFFER is ignored (so that the function can can be used in
+`format-alist')."
+ (interactive "*r")
+ (iso-translate-conventions from to iso-sgml2iso-trans-tab))
+
 ;;;###autoload
 (defun iso-cvt-read-only ()
   "Warn that format is read-only."
@@ -733,24 +877,30 @@ Optional arg BUFFER is ignored (so that the function can can be used in
          (progn
            (define-key load-as-menu-map (vector name)
              (cons str-name
-                   (list 'lambda '(file) (list 'interactive (format "FFind file (as %s): " name))
-                         (list 'format-find-file 'file (list 'quote name)))))
+                   `(lambda (file)
+                      (interactive (format "FFind file (as %s): " ,name))
+                      (format-find-file file ',name))))
            (define-key insert-as-menu-map (vector name)
              (cons str-name
-                   (list 'lambda '(file) (list 'interactive (format "FInsert file (as %s): " name))
-                         (list 'format-insert-file 'file (list 'quote name)))))
+                   `(lambda (file)
+                      (interactive (format "FInsert file (as %s): " ,name))
+                      (format-insert-file file ',name))))
            (define-key write-as-menu-map (vector name)
              (cons str-name
-                   (list 'lambda '(file) (list 'interactive (format "FWrite file (as %s): " name))
-                         (list 'format-write-file 'file (list 'quote (list name))))))
+                   `(lambda (file)
+                      (interactive (format "FWrite file (as %s): " ,name))
+                         (format-write-file file ',name))))
            (define-key translate-to-menu-map (vector name)
              (cons str-name
-                   (list 'lambda '() '(interactive)
-                         (list 'format-encode-buffer (list 'quote name)))))
+                   `(lambda ()
+                      (interactive)
+                         (format-encode-buffer ',name))))
            (define-key translate-from-menu-map (vector name)
              (cons str-name
-                   (list 'lambda '() '(interactive)
-                         (list 'format-decode-buffer (list 'quote (list name))))))
-           )))))
+                   `(lambda ()
+                      (interactive)
+                      (format-decode-buffer ',name)))))))))
+
+(provide 'iso-cvt)
 
 ;;; iso-cvt.el ends here