annotate lisp/language/thai.el @ 72550:666bd542be19

(get_window_cursor_type): Replace BOX cursor on images with a hollow box cursor if image is larger than 32x32 (or the default frame font if that is bigger). Replace any other cursor on images with hollow box cursor, as redisplay doesn't support bar and hbar cursors on images.
author Kim F. Storm <storm@cua.dk>
date Sun, 27 Aug 2006 22:23:07 +0000
parents 18a818a2ee7c
children 43cc94d955c2 f9a65d7ebd29
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
47726
33d53d287ee4 Add "no-byte-compile: t" in first line.
Juanma Barranquero <lekktu@gmail.com>
parents: 47714
diff changeset
1 ;;; thai.el --- support for Thai -*- coding: iso-2022-7bit; no-byte-compile: t -*-
17052
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
2
61081
a8dfe0dc2ae7 ("Thai"): Set setup-function and exit-function
Kenichi Handa <handa@m17n.org>
parents: 60709
diff changeset
3 ;; Copyright (C) 1995, 1997, 1998, 1999, 2000, 2002, 2005
60709
cd964c0f3549 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 60702
diff changeset
4 ;; National Institute of Advanced Industrial Science and Technology (AIST)
cd964c0f3549 *** empty log message ***
Kenichi Handa <handa@m17n.org>
parents: 60702
diff changeset
5 ;; Registration Number H14PRO021
61081
a8dfe0dc2ae7 ("Thai"): Set setup-function and exit-function
Kenichi Handa <handa@m17n.org>
parents: 60709
diff changeset
6 ;; Copyright (C) 1997, 1998, 2000, 2001, 2002 Free Software Foundation, Inc.
17052
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
7
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
8 ;; Keywords: multilingual, Thai
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
9
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
10 ;; This file is part of GNU Emacs.
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
11
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
12 ;; GNU Emacs is free software; you can redistribute it and/or modify
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
13 ;; it under the terms of the GNU General Public License as published by
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
14 ;; the Free Software Foundation; either version 2, or (at your option)
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
15 ;; any later version.
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
16
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
17 ;; GNU Emacs is distributed in the hope that it will be useful,
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
20 ;; GNU General Public License for more details.
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
21
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
22 ;; You should have received a copy of the GNU General Public License
17071
70194012fb3a Fix FSF address in comment.
Karl Heuer <kwzh@gnu.org>
parents: 17052
diff changeset
23 ;; along with GNU Emacs; see the file COPYING. If not, write to the
64085
18a818a2ee7c Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 61081
diff changeset
24 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18a818a2ee7c Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 61081
diff changeset
25 ;; Boston, MA 02110-1301, USA.
17052
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
26
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
27 ;;; Commentary:
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
28
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
29 ;; For Thai, the character set TIS620 is supported.
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
30
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
31 ;;; Code:
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
32
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
33 (make-coding-system
18203
0745f30aec66 Adjusted for coding system name change.
Kenichi Handa <handa@m17n.org>
parents: 17993
diff changeset
34 'thai-tis620 2 ?T
42152
e3ae5ef41293 Improving doc strings.
Werner LEMBERG <wl@gnu.org>
parents: 41962
diff changeset
35 "8-bit encoding for ASCII (MSB=0) and Thai TIS620 (MSB=1)."
20739
5f2c7f919bbf Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents: 20156
diff changeset
36 '(ascii thai-tis620 nil nil
48392
ca2088b6c38c (thai-tis620): Make it safe.
Kenichi Handa <handa@m17n.org>
parents: 47726
diff changeset
37 nil nil nil nil nil nil nil nil nil nil nil t)
20739
5f2c7f919bbf Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents: 20156
diff changeset
38 '((safe-charsets ascii thai-tis620)
47714
39f78ce51bd3 (thai-tis620): Add `mime-charset' property.
Kenichi Handa <handa@m17n.org>
parents: 42152
diff changeset
39 (mime-charset . tis-620)
26895
5562243fdd2b Register thai-composition-function in
Kenichi Handa <handa@m17n.org>
parents: 24461
diff changeset
40 (post-read-conversion . thai-post-read-conversion)))
17098
8917133b7e82 Remove prefix "coding-system-" from coding system symbol names.
Kenichi Handa <handa@m17n.org>
parents: 17071
diff changeset
41
18519
b6badf3614ea Fix calls to define-coding-system-alias.
Richard M. Stallman <rms@gnu.org>
parents: 18377
diff changeset
42 (define-coding-system-alias 'th-tis620 'thai-tis620)
b6badf3614ea Fix calls to define-coding-system-alias.
Richard M. Stallman <rms@gnu.org>
parents: 18377
diff changeset
43 (define-coding-system-alias 'tis620 'thai-tis620)
24461
477d5b1ea759 (tis-620): New alias coding system for thai-tis620.
Kenichi Handa <handa@m17n.org>
parents: 23158
diff changeset
44 (define-coding-system-alias 'tis-620 'thai-tis620)
17052
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
45
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
46 (set-language-info-alist
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
47 "Thai" '((tutorial . "TUTORIAL.th")
20739
5f2c7f919bbf Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents: 20156
diff changeset
48 (charset thai-tis620)
5f2c7f919bbf Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents: 20156
diff changeset
49 (coding-system thai-tis620)
5f2c7f919bbf Adjusted for the change of make-coding-system. Register
Kenichi Handa <handa@m17n.org>
parents: 20156
diff changeset
50 (coding-priority thai-tis620)
22983
7a010b8c0d99 ("LANUGAGE-ENVIRONMENT"): Delete property setup-function or change
Kenichi Handa <handa@m17n.org>
parents: 20739
diff changeset
51 (nonascii-translation . thai-tis620)
7a010b8c0d99 ("LANUGAGE-ENVIRONMENT"): Delete property setup-function or change
Kenichi Handa <handa@m17n.org>
parents: 20739
diff changeset
52 (input-method . "thai-kesmanee")
7a010b8c0d99 ("LANUGAGE-ENVIRONMENT"): Delete property setup-function or change
Kenichi Handa <handa@m17n.org>
parents: 20739
diff changeset
53 (unibyte-display . thai-tis620)
7a010b8c0d99 ("LANUGAGE-ENVIRONMENT"): Delete property setup-function or change
Kenichi Handa <handa@m17n.org>
parents: 20739
diff changeset
54 (features thai-util)
61081
a8dfe0dc2ae7 ("Thai"): Set setup-function and exit-function
Kenichi Handa <handa@m17n.org>
parents: 60709
diff changeset
55 (setup-function . setup-thai-language-environment-internal)
a8dfe0dc2ae7 ("Thai"): Set setup-function and exit-function
Kenichi Handa <handa@m17n.org>
parents: 60709
diff changeset
56 (exit-function . exit-thai-language-environment-internal)
49598
0d8b17d428b5 Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 48392
diff changeset
57 (sample-text
33225
1b0435120e67 ("Thai"): Set a lisp form that produces
Kenichi Handa <handa@m17n.org>
parents: 26895
diff changeset
58 . (thai-compose-string
1b0435120e67 ("Thai"): Set a lisp form that produces
Kenichi Handa <handa@m17n.org>
parents: 26895
diff changeset
59 (copy-sequence "Thai (,T@RIRd7B(B) ,TJ0GQ1J04U1$0CQ1:(B, ,TJ0GQ1J04U10$h1P(B")))
17841
084d922fcd78 Coding system names changed as follows:
Kenichi Handa <handa@m17n.org>
parents: 17772
diff changeset
60 (documentation . t)))
17052
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
61
26895
5562243fdd2b Register thai-composition-function in
Kenichi Handa <handa@m17n.org>
parents: 24461
diff changeset
62
5562243fdd2b Register thai-composition-function in
Kenichi Handa <handa@m17n.org>
parents: 24461
diff changeset
63 ;; Register a function to compose Thai characters.
60702
8ae87ebc392b Fix patterns to be registered in composition-function-table.
Kenichi Handa <handa@m17n.org>
parents: 52401
diff changeset
64 (let ((patterns '(("\\c0?\\(\\c2\\|\\c3\\|\\c4\\)+"
41962
68d5182dd369 Add Unicode
Dave Love <fx@gnu.org>
parents: 38414
diff changeset
65 . thai-composition-function))))
68d5182dd369 Add Unicode
Dave Love <fx@gnu.org>
parents: 38414
diff changeset
66 (aset composition-function-table (make-char 'thai-tis620) patterns)
68d5182dd369 Add Unicode
Dave Love <fx@gnu.org>
parents: 38414
diff changeset
67 (dotimes (i (1+ (- #xe7f #xe00)))
68d5182dd369 Add Unicode
Dave Love <fx@gnu.org>
parents: 38414
diff changeset
68 (aset composition-function-table (decode-char 'ucs (+ i #xe00)) patterns)))
26895
5562243fdd2b Register thai-composition-function in
Kenichi Handa <handa@m17n.org>
parents: 24461
diff changeset
69
33778
6d966e8b4bbe Use provide.
Dave Love <fx@gnu.org>
parents: 33225
diff changeset
70 (provide 'thai)
6d966e8b4bbe Use provide.
Dave Love <fx@gnu.org>
parents: 33225
diff changeset
71
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49598
diff changeset
72 ;;; arch-tag: c7eb0e91-4db0-4619-81f8-8762e7d51e15
17052
d0d7b244b1d0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
73 ;;; thai.el ends here