]> code.delx.au - gnu-emacs/blobdiff - lisp/term/internal.el
(mac-ae-open-documents): Adjust selection range parameter origins.
[gnu-emacs] / lisp / term / internal.el
index adf0583b1ba6a1e2a16d396db5ee946b261018b1..c990b0949c2bd7e81eb772e898d494ee56010622 100644 (file)
@@ -1,6 +1,7 @@
-;;; internal.el --- support for PC internal terminal -*- coding: raw-text; -*-
+;;; internal.el --- support for PC internal terminal -*- coding: raw-text; no-byte-compile: t -*-
 
-;; Copyright (C) 1993, 1994, 1998, 1999, 2001 Free Software Foundation, Inc.
+;; Copyright (C) 1993, 1994, 1998, 1999, 2001, 2002, 2003, 2004,
+;;   2005, 2006, 2007, 2008 Free Software Foundation, Inc.
 
 ;; Author: Morten Welinder <terra@diku.dk>
 
@@ -8,7 +9,7 @@
 
 ;; 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)
+;; the Free Software Foundation; either version 3, or (at your option)
 ;; any later version.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
@@ -18,8 +19,8 @@
 
 ;; 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.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
 
 ;;; Commentary:
 
        "p*" "r*" "*s" "s*" "t*" 117 "f*" "x*" "q*" "w*"
        "\"i" "\"u" "'o" "'u" "'w" nil]
      )
+    ;; Note: some of the characters undefined according to ISO 8859-8
+    ;; in the ranges 190..220 and 250..255 are replaced with SI 1311-1
+    ;; points (Niqud) and bidi formatting characters
     (hebrew-iso8859-8
      . [255 nil "|c" "Pd" "$$" "Ye" "|" "SE" "\"" "(c)"
        "*x" "<<" "~" "--" "(R)" "'-" "^o" "+-" "^2" "^3"
        "'" "u" ".P" "^." "'," "^1" "-:" ">>" "1/4" "1/2"
-       "3/4" nil nil nil nil nil nil nil nil nil
-       nil nil nil nil nil nil nil nil nil nil
-       nil nil nil nil nil nil nil nil nil nil
-       nil nil nil "=2" "A+" "B+" "G+" "D+" "H+" "W+"
+       "3/4" nil ":'" "v:" "-:" "-':" ".'" ".." "v'" "-'"
+       "-," "`." nil "\\." "(.)" "|'" "`-" "`=" "||" nil
+       nil "::" nil nil nil nil nil nil nil "LRO"
+       "RLO" "PDF" nil "=2" "A+" "B+" "G+" "D+" "H+" "W+"
        "Z+" "X+" "Tj" "J+" "K%" "K+" "L+" "M%" "M+" "N%"
        "N+" "S+" "E+" "P%" "P+" "Zj" "ZJ" "Q+" "R+" "Sh"
-       "T+" nil nil nil nil nil]
+       "T+" "LRE" "RLE" "LRM" "RLM" nil]
      )
     (latin-iso8859-9
      . [255 "!I" "|c" "Pd" "$$" "Ye" "|" "SE" "\"" "(c)"
@@ -258,10 +262,10 @@ If TABLE is nil or omitted, `standard-display-table' is used."
             glyph)
        (while (< i veclen)
          (setq glyph (aref vector i))
-         (if (and glyph
-                  (or (not (equal chset built-in-set))
-                      (>= i cp-decoder-len)
-                      (null (aref cp-decoder i))))
+         (or glyph (setq glyph dos-unsupported-char-glyph))
+         (if (or (not (equal chset built-in-set))
+                 (>= i cp-decoder-len)
+                 (null (aref cp-decoder i)))
              (aset disp-tab (make-char chset (+ i (logand offset 127)))
                    (vconcat
                     (if (numberp glyph)
@@ -341,8 +345,12 @@ If TABLE is nil or omitted, `standard-display-table' is used."
 
     (mule-unicode-0100-24ff            ; charset
      256                               ; base
-     1488 1645                         ; first, last
-     [ "A+" "B+" "G+" "D+" "H+" "W+" "Z+" "X+" "Tj" "J+" ; Hebrew
+     1454 1645                         ; first, last
+     [ nil nil ":'" "v:" "-:" "-':" ".'" ".." "v'" "-'"
+       "-," "`." nil "\\." "(.)" "|'" "`-" nil "||" nil
+       nil "::"  nil nil nil nil nil nil nil nil
+       nil nil nil nil
+       "A+" "B+" "G+" "D+" "H+" "W+" "Z+" "X+" "Tj" "J+" ; Hebrew
        "K%" "K+" "L+" "M%" "M+" "N%" "N+" "S+" "E+" "P%"
        "P+" "Zj" "ZJ" "Q+" "R+" "Sh" "T+" nil nil nil
        nil nil "WW+" "WJ+" "JJ+" "'+" "\"+" nil nil nil
@@ -569,15 +577,15 @@ is used."
             glyph)
        (while (<= i (- last first))
          (setq glyph (aref table i))
-         (if glyph
-             (aset disp-tab (make-char chset
-                                       (+ (/ this 96) 32)
-                                       (+ (% this 96) 32))
-                   (vconcat
-                    (if (numberp glyph)
-                        (char-to-string glyph)
-                      (if (> (length glyph) 1) (concat "{" glyph "}")
-                        glyph)))))
+         (or glyph (setq glyph dos-unsupported-char-glyph))
+         (aset disp-tab (make-char chset
+                                   (+ (/ this 96) 32)
+                                   (+ (% this 96) 32))
+               (vconcat
+                (if (numberp glyph)
+                    (char-to-string glyph)
+                  (if (> (length glyph) 1) (concat "{" glyph "}")
+                    glyph))))
          (setq i (1+ i) this (1+ this)))))))
 
 (defun dos-cpNNN-setup (codepage)
@@ -600,6 +608,9 @@ display tables, and the language environment options as appropriate."
      (setq default-terminal-coding-system (intern (concat cp
                                                          "-unix"))))
     (IT-display-table-setup cp)
+    ;; It's time: too many input methods in leim/quail produce
+    ;; Unicode characters.  Let the user see them.
+    (IT-setup-unicode-display)
     (prefer-coding-system (intern (concat cp "-dos")))
     (if default-enable-multibyte-characters
        ;; We want this in multibyte version only, since unibyte version
@@ -616,7 +627,7 @@ display tables, and the language environment options as appropriate."
       ;; which are supported on all platforms.)
       (let* ((i 128)
             (modify (function
-                     (lambda (ch sy) 
+                     (lambda (ch sy)
                        (modify-syntax-entry ch sy text-mode-syntax-table)
                        (if (boundp 'tex-mode-syntax-table)
                            (modify-syntax-entry ch sy tex-mode-syntax-table))
@@ -698,6 +709,9 @@ list.  You can (and should) also run it whenever the value of
       ;; Assume they support non-ASCII Latin characters like the IBM
       ;; codepage 437 does.
       (IT-display-table-setup "cp437")
+      ;; It's time: too many input methods in leim/quail produce
+      ;; Unicode characters.  Let the user see them.
+      (IT-setup-unicode-display)
       (prefer-coding-system coding-dos)
       (if default-enable-multibyte-characters
          (setq unibyte-display-via-language-environment t))
@@ -715,4 +729,5 @@ list.  You can (and should) also run it whenever the value of
 ;; characters to arrive at our display code verbatim.
 (standard-display-8bit 127 255)
 
+;;; arch-tag: eea04c06-7311-4b5a-b531-3c1be1b070af
 ;;; internal.el ends here