]> code.delx.au - gnu-emacs/blob - lisp/language/european.el
Initial revision
[gnu-emacs] / lisp / language / european.el
1 ;;; european.el --- Support for European languages
2
3 ;; Copyright (C) 1995 Free Software Foundation, Inc.
4 ;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN.
5
6 ;; Keywords: multilingual, European
7
8 ;; This file is part of GNU Emacs.
9
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
11 ;; it under the terms of the GNU General Public License as published by
12 ;; the Free Software Foundation; either version 2, or (at your option)
13 ;; any later version.
14
15 ;; GNU Emacs is distributed in the hope that it will be useful,
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 ;; GNU General Public License for more details.
19
20 ;; You should have received a copy of the GNU General Public License
21 ;; along with GNU Emacs; see the file COPYING. If not, write to
22 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
23
24 ;;; Commentary:
25
26 ;; For Europeans, five character sets ISO8859-1,2,3,4,9 are supported.
27
28 ;;; Code:
29
30 (make-coding-system
31 'coding-system-iso-8859-1 2 ?X
32 "Coding-system used in X as Compound Text Encoding."
33 '((ascii t) (latin-iso8859-1 t) nil nil
34 nil ascii-eol ascii-cntl))
35
36 ;; CTEXT is an alias for ISO-8859-1
37 (put 'coding-system-ctext 'coding-system 'coding-system-iso-8859-1)
38
39 (make-coding-system
40 'coding-system-iso-8859-2 2 ?2 "MIME ISO-8859-2"
41 '((ascii t) (latin-iso8859-2 t) nil nil
42 nil ascii-eol ascii-cntl nil nil nil nil))
43
44 (make-coding-system
45 'coding-system-iso-8859-3 2 ?3 "MIME ISO-8859-3"
46 '((ascii t) (latin-iso8859-3 t) nil nil
47 nil ascii-eol ascii-cntl nil nil nil nil))
48
49 (make-coding-system
50 'coding-system-iso-8859-4 2 ?4 "MIME ISO-8859-4"
51 '((ascii t) (latin-iso8859-4 t) nil nil
52 nil ascii-eol ascii-cntl nil nil nil nil))
53
54 (make-coding-system
55 'coding-system-iso-8859-9 2 ?9 "MIME ISO-8859-9"
56 '((ascii t) (latin-iso8859-9 t) nil nil
57 nil ascii-eol ascii-cntl nil nil nil nil))
58
59 (register-input-method "European"
60 '("quail-latin-1" quail-use-package "quail/latin"))
61 (register-input-method "European"
62 '("quail-latin-2" quail-use-package "quail/latin"))
63 (register-input-method "European"
64 '("quail-latin-3" quail-use-package "quail/latin"))
65 (register-input-method "European"
66 '("quail-latin-4" quail-use-package "quail/latin"))
67 (register-input-method "European"
68 '("quail-latin-5" quail-use-package "quail/latin"))
69
70 (defun setup-european-environment ()
71 (setq coding-category-iso-8-1 'coding-system-iso-8859-1)
72
73 (set-coding-priority
74 '(coding-category-iso-7
75 coding-category-iso-8-1
76 coding-category-iso-8-2))
77
78 (setq-default buffer-file-coding-system 'coding-system-iso-8859-1)
79 (set-terminal-coding-system 'coding-system-iso-8859-1)
80 (set-keyboard-coding-system 'coding-system-iso-8859-1)
81
82 (setq default-input-method '("European" . "quail-latin-1"))
83 )
84
85 (set-language-info "English" 'tutorial "TUTORIAL")
86
87 (register-input-method "French"
88 '("quail-latin-1" quail-use-package "quail/latin"))
89 (register-input-method "French"
90 '("quail-latin-1" quail-use-package "quail/latin"))
91
92 (set-language-info-alist
93 "European" '((setup-function . setup-european-environment)
94 (charset . (ascii latin-iso8859-1 latin-iso8859-2
95 latin-iso8859-3 latin-iso8859-4 latin-iso8859-9))
96 (coding-system . (coding-system-iso-8859-1
97 coding-system-iso-8859-2
98 coding-system-iso-8859-3
99 coding-system-iso-8859-4
100 coding-system-iso-8859-9))
101 (documentation . t)
102 (sample-text
103 . "Hello, Hej, Tere, Hei, Bonjour, Gr\e,A|_\e(B Gott, Ciao, \e,A!\e(BHola!")))
104
105 ;;; european.el ends here