]> code.delx.au - gnu-emacs/blob - lisp/language/lao.el
Merge from emacs--rel--22
[gnu-emacs] / lisp / language / lao.el
1 ;;; lao.el --- support for Lao -*- coding: iso-2022-7bit; no-byte-compile: t -*-
2
3 ;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
4 ;; Free Software Foundation, Inc.
5 ;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
6 ;; 2007, 2008
7 ;; National Institute of Advanced Industrial Science and Technology (AIST)
8 ;; Registration Number H14PRO021
9
10 ;; Keywords: multilingual, Lao
11
12 ;; This file is part of GNU Emacs.
13
14 ;; GNU Emacs is free software; you can redistribute it and/or modify
15 ;; it under the terms of the GNU General Public License as published by
16 ;; the Free Software Foundation; either version 3, or (at your option)
17 ;; any later version.
18
19 ;; GNU Emacs is distributed in the hope that it will be useful,
20 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
21 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 ;; GNU General Public License for more details.
23
24 ;; You should have received a copy of the GNU General Public License
25 ;; along with GNU Emacs; see the file COPYING. If not, write to the
26 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
27 ;; Boston, MA 02110-1301, USA.
28
29 ;;; Commentary:
30
31 ;;; Code:
32
33 (make-coding-system
34 'lao 2 ?L
35 "8-bit encoding for ASCII (MSB=0) and LAO (MSB=1)."
36 '(ascii lao nil nil
37 nil nil nil nil nil nil nil nil nil nil nil t)
38 '((safe-charsets ascii lao)
39 (post-read-conversion . lao-post-read-conversion)))
40
41 (set-language-info-alist
42 "Lao" '((charset lao)
43 (coding-system lao)
44 (coding-priority lao)
45 (input-method . "lao")
46 (nonascii-translation . lao)
47 (unibyte-display . lao)
48 (features lao-util)
49 (documentation . t)))
50
51 (aset use-default-ascent ?\e(1;\e(B t)
52 (aset use-default-ascent ?\e$,1D;\e(B t)
53 (aset use-default-ascent ?\e(1=\e(B t)
54 (aset use-default-ascent ?\e$,1D=\e(B t)
55 (aset use-default-ascent ?\e(1?\e(B t)
56 (aset use-default-ascent ?\e$,1D?\e(B t)
57 (aset use-default-ascent ?\e(1B\e(B t)
58 (aset use-default-ascent ?\e$,1DB\e(B t)
59 (aset ignore-relative-composition ?\e(1\\e(B t)
60 (aset ignore-relative-composition ?\e$,1D\\e(B t)
61
62 ;; Register a function to compose Lao characters.
63 (let ((patterns '(("\\c0\\c9?\\(\\(\\c2\\|\\c3\\)\\c4?\\|\\c4\\)?"
64 . lao-composition-function))))
65 (aset composition-function-table (make-char 'lao) patterns)
66 (dotimes (i (1+ (- #xeff #xe80)))
67 (aset composition-function-table (decode-char 'ucs (+ i #xe80)) patterns)))
68
69 (provide 'lao)
70
71 ;;; arch-tag: ba540fd9-6352-4449-a9cd-669afd21fa57
72 ;;; lao.el ends here