all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Latin-7 support
@ 2003-02-25 11:48 Albertas Agejevas
  2003-02-25 12:13 ` Kenichi Handa
  0 siblings, 1 reply; 6+ messages in thread
From: Albertas Agejevas @ 2003-02-25 11:48 UTC (permalink / raw)



[-- Attachment #1.1.1: Type: text/plain, Size: 317 bytes --]

Hello,

Latin-7 (ISO-8859-13) is used as a de iure and de facto standart 8-bit
encoding in Lithuania for at least two years now.  Unfortunately
Emacs did not support it, so I hacked up the support for it.

Attached is a patch against Emacs 21.2.

Albertas
-- 
Si hoc legere scis, nimium eruditionis habes.

[-- Attachment #1.1.2: emacs-lat-7-patch --]
[-- Type: text/plain, Size: 11524 bytes --]

diff -rubN emacs-21.2-21.2.orig/lisp/international/characters.el emacs-21.2-21.2/lisp/international/characters.el
--- emacs-21.2-21.2.orig/lisp/international/characters.el	Sun Jul 15 21:53:53 2001
+++ emacs-21.2-21.2/lisp/international/characters.el	Wed Dec  4 11:30:04 2002
@@ -463,6 +463,7 @@
 (modify-category-entry (make-char 'latin-iso8859-3) ?l)
 (modify-category-entry (make-char 'latin-iso8859-4) ?l)
 (modify-category-entry (make-char 'latin-iso8859-9) ?l)
+(modify-category-entry (make-char 'latin-iso8859-13) ?l)
 (modify-category-entry (make-char 'latin-iso8859-14) ?l)
 (modify-category-entry (make-char 'latin-iso8859-15) ?l)
 
@@ -471,6 +472,7 @@
 (modify-category-entry (make-char 'latin-iso8859-3 160) ?\ )
 (modify-category-entry (make-char 'latin-iso8859-4 160) ?\ )
 (modify-category-entry (make-char 'latin-iso8859-9 160) ?\ )
+(modify-category-entry (make-char 'latin-iso8859-13 160) ?\ )
 (modify-category-entry (make-char 'latin-iso8859-14 160) ?\ )
 (modify-category-entry (make-char 'latin-iso8859-15 160) ?\ )
 
@@ -807,6 +809,7 @@
 	   (chinese-cns11643-7	. iso-2022-cn)
 	   (indian-2-column	. devanagari)
 	   (tibetan		. tibetan)
+	   (latin-iso8859-13	. iso-latin-7)
 	   (latin-iso8859-14	. iso-latin-8)
 	   (latin-iso8859-15	. iso-latin-9))))
   (while l
diff -rubN emacs-21.2-21.2.orig/lisp/international/fontset.el emacs-21.2-21.2/lisp/international/fontset.el
--- emacs-21.2-21.2.orig/lisp/international/fontset.el	Wed Oct 24 13:07:58 2001
+++ emacs-21.2-21.2/lisp/international/fontset.el	Thu Dec  5 10:36:33 2002
@@ -81,6 +81,7 @@
 	   (lao . ("*" . "MuleLao-1"))
 	   (tibetan . ("proportional" . "MuleTibetan-2"))
 	   (tibetan-1-column . ("*" . "MuleTibetan-1"))
+	   (latin-iso8859-13 . (nil . "ISO8859-13"))
 	   (latin-iso8859-14 . (nil . "ISO8859-14"))
 	   (latin-iso8859-15 . (nil . "ISO8859-15"))
 	   (mule-unicode-0100-24ff . (nil . "ISO10646-1"))
@@ -160,6 +161,7 @@
     ("iso8859-6" ascii arabic-iso8859-6)
     ("iso8859-7" ascii greek-iso8859-7)
     ("iso8859-8" ascii hebrew-iso8859-8)
+    ("iso8858-13" ascii latin-iso8859-13)
     ("iso8859-14" ascii latin-iso8859-14)
     ("iso8859-15" ascii latin-iso8859-15)
     ("tis620" ascii thai-tis620)
diff -rubN emacs-21.2-21.2.orig/lisp/international/latin-7.el emacs-21.2-21.2/lisp/international/latin-7.el
--- emacs-21.2-21.2.orig/lisp/international/latin-7.el	Thu Jan  1 03:00:00 1970
+++ emacs-21.2-21.2/lisp/international/latin-7.el	Thu Dec  5 10:30:00 2002
@@ -0,0 +1,114 @@
+;;; latin-7.el --- set up case-conversion and syntax tables for ISO Latin-7
+
+;; Copyright (C) 1988,1997,1999,2002 Free Software Foundation, Inc.
+
+;; Author: Albertas Agejevas
+;; Maintainer: FSF
+;; Keywords: i18n
+
+;; This file is part of GNU Emacs.
+
+;; 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.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; 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., 59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
+
+;;; Commentary:
+
+;; Case-conversion and syntax tables for ISO-8859-13 (Latin-7),
+;; adapted from latin-7.el.
+
+;; <URL:http://czyborra.com/charsets/iso8859.html> (edited to remove
+;;   non-ASCII characters!):
+;; Latin7 is going to cover the Baltic Rim and re-establish the
+;; Latvian (lv) support lost in Latin6 and may introduce the local
+;; quotation marks. It resembles WinBaltic.
+
+;;; Code:
+
+(require 'case-table)
+
+(let ((tbl (standard-case-table))
+      (set-case-syntax-offset
+       (if set-case-syntax-set-multibyte
+	   (- (make-char 'latin-iso8859-13) 128)
+	 0)))
+  (set-case-syntax 160 " " tbl)		;no-break space
+  (set-case-syntax 161 "_" tbl)		;right double quotation mark
+  (set-case-syntax 162 "w" tbl)		;cent sign
+  (set-case-syntax 163 "w" tbl)		;pound sign
+  (set-case-syntax 164 "w" tbl)		;currency sign
+  (set-case-syntax-delims 165 180 tbl)	;double low-9 quotation mark
+					;left double quotation mark
+  (set-case-syntax 166 "_" tbl)		;broken bar
+  (set-case-syntax 167 "." tbl)		;section sign
+  (set-case-syntax 169 "_" tbl)		;copyright sign
+  (set-case-syntax-delims 171 187 tbl)	;left-pointing double angle quotation mark
+  (set-case-syntax 172 "_" tbl)		;not sign
+  (set-case-syntax 173 "_" tbl)		;soft hyphen
+  (set-case-syntax 174 "_" tbl)		;registered sign
+  (set-case-syntax 176 "_" tbl)		;degree sign
+  (set-case-syntax 177 "_" tbl)		;plus-minus sign
+  (set-case-syntax 178 "w" tbl)		;superscript two
+  (set-case-syntax 179 "w" tbl)		;superscript three
+  (set-case-syntax 181 "_" tbl)		;micro sign
+  (set-case-syntax 182 "w" tbl)		;pilcrow sign
+  (set-case-syntax 183 "_" tbl)		;middle dot
+  (set-case-syntax 185 "w" tbl)		;superscript one
+  (set-case-syntax 188 "_" tbl)		;vulgar fraction one quarter
+  (set-case-syntax 189 "_" tbl)		;vulgar fraction one half
+  (set-case-syntax 190 "_" tbl)		;vulgar fraction three quarters
+  (set-case-syntax-pair 168 184 tbl)	;letter o with stroke
+  (set-case-syntax-pair 170 186 tbl)	;letter r with cedilla
+  (set-case-syntax-pair 175 191 tbl)	;letter ae
+  (set-case-syntax-pair 192 224 tbl)	;letter a with ogonek
+  (set-case-syntax-pair 193 225 tbl)	;letter i with ogonek
+  (set-case-syntax-pair 194 226 tbl)	;letter a with macron
+  (set-case-syntax-pair 195 227 tbl)	;letter c with acute
+  (set-case-syntax-pair 196 228 tbl)	;letter a with diaeresis
+  (set-case-syntax-pair 197 229 tbl)	;letter a with ring above
+  (set-case-syntax-pair 198 230 tbl)	;letter e with ogonek
+  (set-case-syntax-pair 199 231 tbl)	;letter e with macron
+  (set-case-syntax-pair 200 232 tbl)	;letter c with caron
+  (set-case-syntax-pair 201 233 tbl)	;letter e with acute
+  (set-case-syntax-pair 202 234 tbl)	;letter z with acute
+  (set-case-syntax-pair 203 235 tbl)	;letter e with dot above
+  (set-case-syntax-pair 204 236 tbl)	;letter g with cedilla
+  (set-case-syntax-pair 205 237 tbl)	;letter k with cedilla
+  (set-case-syntax-pair 206 238 tbl)	;letter i with macron
+  (set-case-syntax-pair 207 239 tbl)	;letter l with cedilla
+  (set-case-syntax-pair 208 240 tbl)	;letter s with caron
+  (set-case-syntax-pair 209 241 tbl)	;letter n with acute
+  (set-case-syntax-pair 210 242 tbl)	;letter n with cedilla
+  (set-case-syntax-pair 211 243 tbl)	;letter o with acute
+  (set-case-syntax-pair 212 244 tbl)	;letter o with macron
+  (set-case-syntax-pair 213 245 tbl)	;letter o with tilde
+  (set-case-syntax-pair 214 246 tbl)	;letter o with diaeresis
+  (set-case-syntax 215 "_" tbl)		;multiplication sign
+  (set-case-syntax-pair 216 248 tbl)	;letter u with ogonek
+  (set-case-syntax-pair 217 249 tbl)	;letter l with stroke
+  (set-case-syntax-pair 218 250 tbl)	;letter s with acute
+  (set-case-syntax-pair 219 251 tbl)	;letter u with macron
+  (set-case-syntax-pair 220 252 tbl)	;letter u with diaeresis
+  (set-case-syntax-pair 221 253 tbl)	;letter z with dot above
+  (set-case-syntax-pair 222 254 tbl)	;letter z with caron
+  (set-case-syntax 223 "w" tbl)		;letter sharp s
+  (set-case-syntax 247 "_" tbl)		;division sign
+  (set-case-syntax 255 "w" tbl))       	;right single quotation mark
+
+;; When preloading this file, don't provide the feature.
+;; Explicit `require' is used to load this for 8-bit characters.
+(or set-case-syntax-set-multibyte
+    (provide 'latin-7))
+
+;;; latin-7.el ends here
diff -rubN emacs-21.2-21.2.orig/lisp/international/mule-cmds.el emacs-21.2-21.2/lisp/international/mule-cmds.el
--- emacs-21.2-21.2.orig/lisp/international/mule-cmds.el	Thu Nov  1 00:45:52 2001
+++ emacs-21.2-21.2/lisp/international/mule-cmds.el	Thu Dec  5 10:30:31 2002
@@ -1730,7 +1730,7 @@
     ("la" . "Latin-1") ; Latin
     ; ln Lingala
     ("lo" . "Lao") ; Laothian
-    ("lt" . "Latin-4") ; Lithuanian
+    ("lt" . "Latin-7") ; Lithuanian
     ("lv" . "Latin-4") ; Latvian, Lettish
     ; mg Malagasy
     ; mi Maori
@@ -1836,6 +1836,7 @@
     (".*8859[-_]?3\\>" . "Latin-3")
     (".*8859[-_]?4\\>" . "Latin-4")
     (".*8859[-_]?9\\>" . "Latin-5")
+    (".*8859[-_]?13\\>" . "Latin-7")
     (".*8859[-_]?14\\>" . "Latin-8")
     (".*8859[-_]?15\\>" . "Latin-9")
     (".*@euro\\>" . "Latin-9")
diff -rubN emacs-21.2-21.2.orig/lisp/international/mule-conf.el emacs-21.2-21.2/lisp/international/mule-conf.el
--- emacs-21.2-21.2.orig/lisp/international/mule-conf.el	Wed Mar 13 21:51:55 2002
+++ emacs-21.2-21.2/lisp/international/mule-conf.el	Thu Dec  5 10:29:21 2002
@@ -77,7 +77,9 @@
   [1 94 1 0 ?J 0 "JISX0201 Roman" "Japanese Roman (JISX0201.1976)"
      "Roman Part of JISX0201.1976"])
 
-;; CHARSET-ID is not used 139.
+(define-charset 139 'latin-iso8859-13
+  [1 96 1 0 ?K 1 "RHP of Latin-7" "RHP of Latin-7 (ISO 8859-13): ISO-IR-100"
+     "Right-Hand Part of Latin Alphabet 7 (ISO/IEC 8859-13): ISO-IR-100"])
 
 (define-charset 140 'cyrillic-iso8859-5
   [1 96 1 0 ?L 1 "RHP of ISO8859/5" "RHP of Cyrillic (ISO 8859-5): ISO-IR-144"
@@ -424,6 +426,7 @@
 (defvar non-standard-icccm-encodings-alist
   '(("ISO8859-15" . latin-iso8859-15)
     ("ISO8859-14" . latin-iso8859-14)
+    ("ISO8859-13" . latin-iso8859-13)
     ("KOI8-R" . koi8-r)
     ("BIG5-0" . big5))
   "Alist of font charset names defined by XLFD, and the corresponding Emacs
diff -rubN emacs-21.2-21.2.orig/lisp/language/european.el emacs-21.2-21.2/lisp/language/european.el
--- emacs-21.2-21.2.orig/lisp/language/european.el	Wed Mar 13 21:51:55 2002
+++ emacs-21.2-21.2/lisp/language/european.el	Thu Dec  5 10:29:42 2002
@@ -1,4 +1,4 @@
-;;; european.el --- support for European languages -*- coding: iso-2022-7bit; -*-
+;; european.el --- support for European languages -*- coding: iso-2022-7bit; -*-
 
 ;; Copyright (C) 1995, 1997, 2001 Electrotechnical Laboratory, JAPAN.
 ;; Licensed to the Free Software Foundation.
@@ -184,6 +184,33 @@
 These languages are supported with the Latin-5 (ISO-8859-9) character set:
 Bulgarian, Byelorussian, (Slavic) Macedonian, Russian, Serbian and
 Ukranian."))				; says ISO 8859-1
+ '("European"))
+
+\f
+;; Latin-7 (ISO-8859-13)
+
+(make-coding-system
+ 'iso-latin-7 2 ?7
+ "ISO 2022 based 8-bit encoding (MIME:ISO-8859-13)"
+ '(ascii latin-iso8859-13 nil nil
+   nil nil nil nil nil nil nil)
+ '((safe-charsets ascii latin-iso8859-13)
+   (mime-charset . iso-8859-13)))
+
+(define-coding-system-alias 'iso-8859-13 'iso-latin-7)
+(define-coding-system-alias 'latin-7 'iso-latin-7)
+
+(set-language-info-alist
+ "Latin-7" '((charset ascii latin-iso8859-13)
+	     (coding-system iso-8859-13)
+	     (coding-priority iso-8859-13)
+	     (nonascii-translation . latin-iso8859-13)
+	     (unibyte-syntax . "latin-7")
+	     (unibyte-display . iso-8859-13)
+	     (input-method . "latin-13-postfix")
+	     (documentation . "\
+These languages are supported with the Latin-7 (ISO-8859-13) character set:
+ Estonian, Latvian, Lithuanian"))
  '("European"))
 
 \f

[-- Attachment #1.2: Type: application/pgp-signature, Size: 232 bytes --]

[-- Attachment #2: Type: text/plain, Size: 148 bytes --]

_______________________________________________
Bug-gnu-emacs mailing list
Bug-gnu-emacs@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-gnu-emacs

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Latin-7 support
  2003-02-25 11:48 Latin-7 support Albertas Agejevas
@ 2003-02-25 12:13 ` Kenichi Handa
  2003-06-19 16:31   ` Albertas Agejevas
       [not found]   ` <mailman.8255.1056040793.21513.bug-gnu-emacs@gnu.org>
  0 siblings, 2 replies; 6+ messages in thread
From: Kenichi Handa @ 2003-02-25 12:13 UTC (permalink / raw)
  Cc: bug-gnu-emacs

In article <20030225114849.GA24561@codeworks.lt>, Albertas Agejevas <alga@codeworks.lt> writes:
> Latin-7 (ISO-8859-13) is used as a de iure and de facto standart 8-bit
> encoding in Lithuania for at least two years now.  Unfortunately
> Emacs did not support it, so I hacked up the support for it.

> Attached is a patch against Emacs 21.2.

Thank you for the contribution.  But, to use your code, FSF
needs an assignment of your work.  Have you already sent a
signed "ASSIGNMENT" paper to FSF?  If not, please consult
with Richard <rms@gnu.org>.

---
Ken'ichi HANDA
handa@m17n.org

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Latin-7 support
       [not found] <mailman.2362.1046173910.21513.bug-gnu-emacs@gnu.org>
@ 2003-02-25 16:48 ` Benjamin Riefenstahl
  0 siblings, 0 replies; 6+ messages in thread
From: Benjamin Riefenstahl @ 2003-02-25 16:48 UTC (permalink / raw)


Hi Albertas,

Albertas Agejevas <alga@codeworks.lt> writes:
> Latin-7 (ISO-8859-13) is used as a de iure and de facto standart
> 8-bit encoding in Lithuania for at least two years now.
> Unfortunately Emacs did not support it, so I hacked up the support
> for it.

Actually there seems to be support for this in CVS in
lisp/international/code-pages.el.  Maybe you can check if that is what
you need or even improve it if there are problems?

so long, benny

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Latin-7 support
  2003-02-25 12:13 ` Kenichi Handa
@ 2003-06-19 16:31   ` Albertas Agejevas
  2003-06-23  8:13     ` Kenichi Handa
       [not found]   ` <mailman.8255.1056040793.21513.bug-gnu-emacs@gnu.org>
  1 sibling, 1 reply; 6+ messages in thread
From: Albertas Agejevas @ 2003-06-19 16:31 UTC (permalink / raw)
  Cc: bug-gnu-emacs


[-- Attachment #1.1.1: Type: text/plain, Size: 988 bytes --]

On Tue, Feb 25, 2003 at 09:13:12PM +0900, Kenichi Handa wrote:
> In article <20030225114849.GA24561@codeworks.lt>, Albertas Agejevas <alga@codeworks.lt> writes:
> > Latin-7 (ISO-8859-13) is used as a de iure and de facto standard 8-bit
> > encoding in Lithuania for at least two years now.  Unfortunately
> > Emacs did not support it, so I hacked up the support for it.
> 
> > Attached is a patch against Emacs 21.2.
> 
> Thank you for the contribution.  But, to use your code, FSF
> needs an assignment of your work.  Have you already sent a
> signed "ASSIGNMENT" paper to FSF?  If not, please consult
> with Richard <rms@gnu.org>.

A couple of weeks ago I received a confirmation of my assignment
(Subject: [gnu.org #22677] Albertas Agejevas - Emacs assignment).
Taking a quick look at the CVS repository in Savannah I haven't
noticed my changes.  Do I need to resend my patch?  I'm attaching it
anyway.

Albertas
-- 
Si hoc legere scis, nimium eruditionis habes.

[-- Attachment #1.1.2: emacs-lat-7-patch --]
[-- Type: text/plain, Size: 11524 bytes --]

diff -rubN emacs-21.2-21.2.orig/lisp/international/characters.el emacs-21.2-21.2/lisp/international/characters.el
--- emacs-21.2-21.2.orig/lisp/international/characters.el	Sun Jul 15 21:53:53 2001
+++ emacs-21.2-21.2/lisp/international/characters.el	Wed Dec  4 11:30:04 2002
@@ -463,6 +463,7 @@
 (modify-category-entry (make-char 'latin-iso8859-3) ?l)
 (modify-category-entry (make-char 'latin-iso8859-4) ?l)
 (modify-category-entry (make-char 'latin-iso8859-9) ?l)
+(modify-category-entry (make-char 'latin-iso8859-13) ?l)
 (modify-category-entry (make-char 'latin-iso8859-14) ?l)
 (modify-category-entry (make-char 'latin-iso8859-15) ?l)
 
@@ -471,6 +472,7 @@
 (modify-category-entry (make-char 'latin-iso8859-3 160) ?\ )
 (modify-category-entry (make-char 'latin-iso8859-4 160) ?\ )
 (modify-category-entry (make-char 'latin-iso8859-9 160) ?\ )
+(modify-category-entry (make-char 'latin-iso8859-13 160) ?\ )
 (modify-category-entry (make-char 'latin-iso8859-14 160) ?\ )
 (modify-category-entry (make-char 'latin-iso8859-15 160) ?\ )
 
@@ -807,6 +809,7 @@
 	   (chinese-cns11643-7	. iso-2022-cn)
 	   (indian-2-column	. devanagari)
 	   (tibetan		. tibetan)
+	   (latin-iso8859-13	. iso-latin-7)
 	   (latin-iso8859-14	. iso-latin-8)
 	   (latin-iso8859-15	. iso-latin-9))))
   (while l
diff -rubN emacs-21.2-21.2.orig/lisp/international/fontset.el emacs-21.2-21.2/lisp/international/fontset.el
--- emacs-21.2-21.2.orig/lisp/international/fontset.el	Wed Oct 24 13:07:58 2001
+++ emacs-21.2-21.2/lisp/international/fontset.el	Thu Dec  5 10:36:33 2002
@@ -81,6 +81,7 @@
 	   (lao . ("*" . "MuleLao-1"))
 	   (tibetan . ("proportional" . "MuleTibetan-2"))
 	   (tibetan-1-column . ("*" . "MuleTibetan-1"))
+	   (latin-iso8859-13 . (nil . "ISO8859-13"))
 	   (latin-iso8859-14 . (nil . "ISO8859-14"))
 	   (latin-iso8859-15 . (nil . "ISO8859-15"))
 	   (mule-unicode-0100-24ff . (nil . "ISO10646-1"))
@@ -160,6 +161,7 @@
     ("iso8859-6" ascii arabic-iso8859-6)
     ("iso8859-7" ascii greek-iso8859-7)
     ("iso8859-8" ascii hebrew-iso8859-8)
+    ("iso8858-13" ascii latin-iso8859-13)
     ("iso8859-14" ascii latin-iso8859-14)
     ("iso8859-15" ascii latin-iso8859-15)
     ("tis620" ascii thai-tis620)
diff -rubN emacs-21.2-21.2.orig/lisp/international/latin-7.el emacs-21.2-21.2/lisp/international/latin-7.el
--- emacs-21.2-21.2.orig/lisp/international/latin-7.el	Thu Jan  1 03:00:00 1970
+++ emacs-21.2-21.2/lisp/international/latin-7.el	Thu Dec  5 10:30:00 2002
@@ -0,0 +1,114 @@
+;;; latin-7.el --- set up case-conversion and syntax tables for ISO Latin-7
+
+;; Copyright (C) 1988,1997,1999,2002 Free Software Foundation, Inc.
+
+;; Author: Albertas Agejevas
+;; Maintainer: FSF
+;; Keywords: i18n
+
+;; This file is part of GNU Emacs.
+
+;; 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.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; 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., 59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
+
+;;; Commentary:
+
+;; Case-conversion and syntax tables for ISO-8859-13 (Latin-7),
+;; adapted from latin-7.el.
+
+;; <URL:http://czyborra.com/charsets/iso8859.html> (edited to remove
+;;   non-ASCII characters!):
+;; Latin7 is going to cover the Baltic Rim and re-establish the
+;; Latvian (lv) support lost in Latin6 and may introduce the local
+;; quotation marks. It resembles WinBaltic.
+
+;;; Code:
+
+(require 'case-table)
+
+(let ((tbl (standard-case-table))
+      (set-case-syntax-offset
+       (if set-case-syntax-set-multibyte
+	   (- (make-char 'latin-iso8859-13) 128)
+	 0)))
+  (set-case-syntax 160 " " tbl)		;no-break space
+  (set-case-syntax 161 "_" tbl)		;right double quotation mark
+  (set-case-syntax 162 "w" tbl)		;cent sign
+  (set-case-syntax 163 "w" tbl)		;pound sign
+  (set-case-syntax 164 "w" tbl)		;currency sign
+  (set-case-syntax-delims 165 180 tbl)	;double low-9 quotation mark
+					;left double quotation mark
+  (set-case-syntax 166 "_" tbl)		;broken bar
+  (set-case-syntax 167 "." tbl)		;section sign
+  (set-case-syntax 169 "_" tbl)		;copyright sign
+  (set-case-syntax-delims 171 187 tbl)	;left-pointing double angle quotation mark
+  (set-case-syntax 172 "_" tbl)		;not sign
+  (set-case-syntax 173 "_" tbl)		;soft hyphen
+  (set-case-syntax 174 "_" tbl)		;registered sign
+  (set-case-syntax 176 "_" tbl)		;degree sign
+  (set-case-syntax 177 "_" tbl)		;plus-minus sign
+  (set-case-syntax 178 "w" tbl)		;superscript two
+  (set-case-syntax 179 "w" tbl)		;superscript three
+  (set-case-syntax 181 "_" tbl)		;micro sign
+  (set-case-syntax 182 "w" tbl)		;pilcrow sign
+  (set-case-syntax 183 "_" tbl)		;middle dot
+  (set-case-syntax 185 "w" tbl)		;superscript one
+  (set-case-syntax 188 "_" tbl)		;vulgar fraction one quarter
+  (set-case-syntax 189 "_" tbl)		;vulgar fraction one half
+  (set-case-syntax 190 "_" tbl)		;vulgar fraction three quarters
+  (set-case-syntax-pair 168 184 tbl)	;letter o with stroke
+  (set-case-syntax-pair 170 186 tbl)	;letter r with cedilla
+  (set-case-syntax-pair 175 191 tbl)	;letter ae
+  (set-case-syntax-pair 192 224 tbl)	;letter a with ogonek
+  (set-case-syntax-pair 193 225 tbl)	;letter i with ogonek
+  (set-case-syntax-pair 194 226 tbl)	;letter a with macron
+  (set-case-syntax-pair 195 227 tbl)	;letter c with acute
+  (set-case-syntax-pair 196 228 tbl)	;letter a with diaeresis
+  (set-case-syntax-pair 197 229 tbl)	;letter a with ring above
+  (set-case-syntax-pair 198 230 tbl)	;letter e with ogonek
+  (set-case-syntax-pair 199 231 tbl)	;letter e with macron
+  (set-case-syntax-pair 200 232 tbl)	;letter c with caron
+  (set-case-syntax-pair 201 233 tbl)	;letter e with acute
+  (set-case-syntax-pair 202 234 tbl)	;letter z with acute
+  (set-case-syntax-pair 203 235 tbl)	;letter e with dot above
+  (set-case-syntax-pair 204 236 tbl)	;letter g with cedilla
+  (set-case-syntax-pair 205 237 tbl)	;letter k with cedilla
+  (set-case-syntax-pair 206 238 tbl)	;letter i with macron
+  (set-case-syntax-pair 207 239 tbl)	;letter l with cedilla
+  (set-case-syntax-pair 208 240 tbl)	;letter s with caron
+  (set-case-syntax-pair 209 241 tbl)	;letter n with acute
+  (set-case-syntax-pair 210 242 tbl)	;letter n with cedilla
+  (set-case-syntax-pair 211 243 tbl)	;letter o with acute
+  (set-case-syntax-pair 212 244 tbl)	;letter o with macron
+  (set-case-syntax-pair 213 245 tbl)	;letter o with tilde
+  (set-case-syntax-pair 214 246 tbl)	;letter o with diaeresis
+  (set-case-syntax 215 "_" tbl)		;multiplication sign
+  (set-case-syntax-pair 216 248 tbl)	;letter u with ogonek
+  (set-case-syntax-pair 217 249 tbl)	;letter l with stroke
+  (set-case-syntax-pair 218 250 tbl)	;letter s with acute
+  (set-case-syntax-pair 219 251 tbl)	;letter u with macron
+  (set-case-syntax-pair 220 252 tbl)	;letter u with diaeresis
+  (set-case-syntax-pair 221 253 tbl)	;letter z with dot above
+  (set-case-syntax-pair 222 254 tbl)	;letter z with caron
+  (set-case-syntax 223 "w" tbl)		;letter sharp s
+  (set-case-syntax 247 "_" tbl)		;division sign
+  (set-case-syntax 255 "w" tbl))       	;right single quotation mark
+
+;; When preloading this file, don't provide the feature.
+;; Explicit `require' is used to load this for 8-bit characters.
+(or set-case-syntax-set-multibyte
+    (provide 'latin-7))
+
+;;; latin-7.el ends here
diff -rubN emacs-21.2-21.2.orig/lisp/international/mule-cmds.el emacs-21.2-21.2/lisp/international/mule-cmds.el
--- emacs-21.2-21.2.orig/lisp/international/mule-cmds.el	Thu Nov  1 00:45:52 2001
+++ emacs-21.2-21.2/lisp/international/mule-cmds.el	Thu Dec  5 10:30:31 2002
@@ -1730,7 +1730,7 @@
     ("la" . "Latin-1") ; Latin
     ; ln Lingala
     ("lo" . "Lao") ; Laothian
-    ("lt" . "Latin-4") ; Lithuanian
+    ("lt" . "Latin-7") ; Lithuanian
     ("lv" . "Latin-4") ; Latvian, Lettish
     ; mg Malagasy
     ; mi Maori
@@ -1836,6 +1836,7 @@
     (".*8859[-_]?3\\>" . "Latin-3")
     (".*8859[-_]?4\\>" . "Latin-4")
     (".*8859[-_]?9\\>" . "Latin-5")
+    (".*8859[-_]?13\\>" . "Latin-7")
     (".*8859[-_]?14\\>" . "Latin-8")
     (".*8859[-_]?15\\>" . "Latin-9")
     (".*@euro\\>" . "Latin-9")
diff -rubN emacs-21.2-21.2.orig/lisp/international/mule-conf.el emacs-21.2-21.2/lisp/international/mule-conf.el
--- emacs-21.2-21.2.orig/lisp/international/mule-conf.el	Wed Mar 13 21:51:55 2002
+++ emacs-21.2-21.2/lisp/international/mule-conf.el	Thu Dec  5 10:29:21 2002
@@ -77,7 +77,9 @@
   [1 94 1 0 ?J 0 "JISX0201 Roman" "Japanese Roman (JISX0201.1976)"
      "Roman Part of JISX0201.1976"])
 
-;; CHARSET-ID is not used 139.
+(define-charset 139 'latin-iso8859-13
+  [1 96 1 0 ?K 1 "RHP of Latin-7" "RHP of Latin-7 (ISO 8859-13): ISO-IR-100"
+     "Right-Hand Part of Latin Alphabet 7 (ISO/IEC 8859-13): ISO-IR-100"])
 
 (define-charset 140 'cyrillic-iso8859-5
   [1 96 1 0 ?L 1 "RHP of ISO8859/5" "RHP of Cyrillic (ISO 8859-5): ISO-IR-144"
@@ -424,6 +426,7 @@
 (defvar non-standard-icccm-encodings-alist
   '(("ISO8859-15" . latin-iso8859-15)
     ("ISO8859-14" . latin-iso8859-14)
+    ("ISO8859-13" . latin-iso8859-13)
     ("KOI8-R" . koi8-r)
     ("BIG5-0" . big5))
   "Alist of font charset names defined by XLFD, and the corresponding Emacs
diff -rubN emacs-21.2-21.2.orig/lisp/language/european.el emacs-21.2-21.2/lisp/language/european.el
--- emacs-21.2-21.2.orig/lisp/language/european.el	Wed Mar 13 21:51:55 2002
+++ emacs-21.2-21.2/lisp/language/european.el	Thu Dec  5 10:29:42 2002
@@ -1,4 +1,4 @@
-;;; european.el --- support for European languages -*- coding: iso-2022-7bit; -*-
+;; european.el --- support for European languages -*- coding: iso-2022-7bit; -*-
 
 ;; Copyright (C) 1995, 1997, 2001 Electrotechnical Laboratory, JAPAN.
 ;; Licensed to the Free Software Foundation.
@@ -184,6 +184,33 @@
 These languages are supported with the Latin-5 (ISO-8859-9) character set:
 Bulgarian, Byelorussian, (Slavic) Macedonian, Russian, Serbian and
 Ukranian."))				; says ISO 8859-1
+ '("European"))
+
+\f
+;; Latin-7 (ISO-8859-13)
+
+(make-coding-system
+ 'iso-latin-7 2 ?7
+ "ISO 2022 based 8-bit encoding (MIME:ISO-8859-13)"
+ '(ascii latin-iso8859-13 nil nil
+   nil nil nil nil nil nil nil)
+ '((safe-charsets ascii latin-iso8859-13)
+   (mime-charset . iso-8859-13)))
+
+(define-coding-system-alias 'iso-8859-13 'iso-latin-7)
+(define-coding-system-alias 'latin-7 'iso-latin-7)
+
+(set-language-info-alist
+ "Latin-7" '((charset ascii latin-iso8859-13)
+	     (coding-system iso-8859-13)
+	     (coding-priority iso-8859-13)
+	     (nonascii-translation . latin-iso8859-13)
+	     (unibyte-syntax . "latin-7")
+	     (unibyte-display . iso-8859-13)
+	     (input-method . "latin-13-postfix")
+	     (documentation . "\
+These languages are supported with the Latin-7 (ISO-8859-13) character set:
+ Estonian, Latvian, Lithuanian"))
  '("European"))
 
 \f

[-- Attachment #1.2: Type: application/pgp-signature, Size: 232 bytes --]

[-- Attachment #2: Type: text/plain, Size: 148 bytes --]

_______________________________________________
Bug-gnu-emacs mailing list
Bug-gnu-emacs@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-gnu-emacs

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Latin-7 support
       [not found]   ` <mailman.8255.1056040793.21513.bug-gnu-emacs@gnu.org>
@ 2003-06-19 17:26     ` Stefan Monnier
  0 siblings, 0 replies; 6+ messages in thread
From: Stefan Monnier @ 2003-06-19 17:26 UTC (permalink / raw)
  Cc: emacs-devel

The following message is a courtesy copy of an article
that has been posted to gnu.emacs.bug as well.

> A couple of weeks ago I received a confirmation of my assignment
> (Subject: [gnu.org #22677] Albertas Agejevas - Emacs assignment).
> Taking a quick look at the CVS repository in Savannah I haven't
> noticed my changes.  Do I need to resend my patch?  I'm attaching it
> anyway.

I have no idea about the status of your code, but I just would like to
mention, that I don't think it's a good idea at this point to introduce
yet-another-latin-N charset.  I think it should be implemented as
a coding-system only.  I.e. like mac-roman rather than like latin-9.

Of course, that's only possible if all the chars can already be represented
in some other charset (typically a mixture of latin-1,
mule-unicode-NNNN-MMMM) and I have no idea whether that's the case or not.


        Stefan

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Latin-7 support
  2003-06-19 16:31   ` Albertas Agejevas
@ 2003-06-23  8:13     ` Kenichi Handa
  0 siblings, 0 replies; 6+ messages in thread
From: Kenichi Handa @ 2003-06-23  8:13 UTC (permalink / raw)
  Cc: bug-gnu-emacs

In article <20030619163132.GA8463@codeworks.lt>, Albertas Agejevas <alga@codeworks.lt> writes:
> A couple of weeks ago I received a confirmation of my assignment
> (Subject: [gnu.org #22677] Albertas Agejevas - Emacs assignment).
> Taking a quick look at the CVS repository in Savannah I haven't
> noticed my changes.  Do I need to resend my patch?  I'm attaching it
> anyway.

??? Latin-7 support is already in CVS HEAD.  I remember you
also confirmed that it works well except for a minor input
method problem.  So, I thought that there's no need of
installing your patch.

---
Ken'ichi HANDA
handa@m17n.org

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2003-06-23  8:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-02-25 11:48 Latin-7 support Albertas Agejevas
2003-02-25 12:13 ` Kenichi Handa
2003-06-19 16:31   ` Albertas Agejevas
2003-06-23  8:13     ` Kenichi Handa
     [not found]   ` <mailman.8255.1056040793.21513.bug-gnu-emacs@gnu.org>
2003-06-19 17:26     ` Stefan Monnier
     [not found] <mailman.2362.1046173910.21513.bug-gnu-emacs@gnu.org>
2003-02-25 16:48 ` Benjamin Riefenstahl

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.