changeset 28393:aaa13b7caa88

Move provide to end. Doc fixes. (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.
author Dave Love <fx@gnu.org>
date Wed, 29 Mar 2000 18:33:24 +0000 (2000-03-29)
parents d081ca3b6b7a
children 7640cbe85ab7
files lisp/international/iso-cvt.el
diffstat 1 files changed, 166 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/international/iso-cvt.el	Wed Mar 29 16:42:32 2000 +0000
+++ b/lisp/international/iso-cvt.el	Wed Mar 29 18:33:24 2000 +0000
@@ -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
@@ -32,10 +32,9 @@
 ;; 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 @@
  (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 @@
 	  (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