# HG changeset patch # User Dave Love # Date 954354804 0 # Node ID aaa13b7caa881ff6068d2b2d0948f274383e25c0 # Parent d081ca3b6b7a45c14c9aa6f93234254a42c400d2 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. diff -r d081ca3b6b7a -r aaa13b7caa88 lisp/international/iso-cvt.el --- 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 ;; 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 + '(("À" "À") + ("Á" "Á") + ("Â" "Â") + ("Ã" "Ã") + ("Ä" "Ä") + ("Å" "Å") + ("Æ" "Æ") + ("Ç" "Ç") + ("È" "È") + ("É" "É") + ("Ê" "Ê") + ("Ë" "Ë") + ("Ì" "Ì") + ("Í" "Í") + ("Î" "Î") + ("Ï" "Ï") + ("Ð" "Ð") + ("Ñ" "Ñ") + ("Ò" "Ò") + ("Ó" "Ó") + ("Ô" "Ô") + ("Õ" "Õ") + ("Ö" "Ö") + ("Ø" "Ø") + ("Ù" "Ù") + ("Ú" "Ú") + ("Û" "Û") + ("Ü" "Ü") + ("Ý" "Ý") + ("Þ" "Þ") + ("ß" "ß") + ("à" "à") + ("á" "á") + ("â" "â") + ("ã" "ã") + ("ä" "ä") + ("å" "å") + ("æ" "æ") + ("ç" "ç") + ("è" "è") + ("é" "é") + ("ê" "ê") + ("ë" "ë") + ("ì" "ì") + ("í" "í") + ("î" "î") + ("ï" "ï") + ("ð" "ð") + ("ñ" "ñ") + ("ò" "ò") + ("ó" "ó") + ("ô" "ô") + ("õ" "õ") + ("ö" "ö") + ("ø" "ø") + ("ù" "ù") + ("ú" "ú") + ("û" "û") + ("ü" "ü") + ("ý" "ý") + ("þ" "þ") + ("ÿ" "ÿ"))) + +(defvar iso-sgml2iso-trans-tab + '(("À" "À") + ("Á" "Á") + ("Â" "Â") + ("Ã" "Ã") + ("Ä" "Ä") + ("Å" "Å") + ("Æ" "Æ") + ("Ç" "Ç") + ("È" "È") + ("É" "É") + ("Ê" "Ê") + ("Ë" "Ë") + ("Ì" "Ì") + ("Í" "Í") + ("Î" "Î") + ("Ï" "Ï") + ("Ð" "Ð") + ("Ñ" "Ñ") + ("Ò" "Ò") + ("Ó" "Ó") + ("Ô" "Ô") + ("Õ" "Õ") + ("Ö" "Ö") + ("Ø" "Ø") + ("Ù" "Ù") + ("Ú" "Ú") + ("Û" "Û") + ("Ü" "Ü") + ("Ý" "Ý") + ("Þ" "Þ") + ("ß" "ß") + ("à" "à") + ("á" "á") + ("â" "â") + ("ã" "ã") + ("ä" "ä") + ("å" "å") + ("æ" "æ") + ("ç" "ç") + ("è" "è") + ("é" "é") + ("ê" "ê") + ("ë" "ë") + ("ì" "ì") + ("í" "í") + ("î" "î") + ("ï" "ï") + ("ð" "ð") + ("ñ" "ñ") + ("ò" "ò") + ("ó" "ó") + ("ô" "ô") + ("õ" "õ") + ("ö" "ö") + ("ø" "ø") + ("ù" "ù") + ("ú" "ú") + ("û" "û") + ("ü" "ü") + ("ý" "ý") + ("þ" "þ") + ("ÿ" "ÿ"))) + +;;;###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