annotate lisp/term/pc-win.el @ 45098:06120f91eb06

(eshell-modify-global-environment): Added this customization variable, which will cause any "export" commands within any eshell buffer to modify the global Emacs environment. It defaults to nil, which means that such commands will only modify that Eshell buffer's environment. (eshell-var-initialize): Initialize `eshell-modify-global-environment'.
author John Wiegley <johnw@newartisans.com>
date Fri, 03 May 2002 20:43:53 +0000
parents a97674caab35
children 5ade352e8d1c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
38412
253f761ad37b Some fixes to follow coding conventions in files maintained by FSF.
Pavel Janík <Pavel@Janik.cz>
parents: 36513
diff changeset
1 ;;; pc-win.el --- setup support for `PC windows' (whatever that is)
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
2
36513
f022afc9cdcb Update copyright notice.
Eli Zaretskii <eliz@gnu.org>
parents: 36485
diff changeset
3 ;; Copyright (C) 1994, 1996, 1997, 1999, 2001 Free Software Foundation, Inc.
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
4
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
5 ;; Author: Morten Welinder <terra@diku.dk>
14734
20f4c4a078b2 Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 14520
diff changeset
6 ;; Maintainer: FSF
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
7
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
8 ;; This file is part of GNU Emacs.
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
9
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
11 ;; it under the terms of the GNU General Public License as published by
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
12 ;; the Free Software Foundation; either version 2, or (at your option)
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
13 ;; any later version.
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
14
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
15 ;; GNU Emacs is distributed in the hope that it will be useful,
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
18 ;; GNU General Public License for more details.
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
19
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
20 ;; You should have received a copy of the GNU General Public License
14170
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 14040
diff changeset
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 14040
diff changeset
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 14040
diff changeset
23 ;; Boston, MA 02111-1307, USA.
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 14040
diff changeset
24
38412
253f761ad37b Some fixes to follow coding conventions in files maintained by FSF.
Pavel Janík <Pavel@Janik.cz>
parents: 36513
diff changeset
25 ;;; Commentary:
253f761ad37b Some fixes to follow coding conventions in files maintained by FSF.
Pavel Janík <Pavel@Janik.cz>
parents: 36513
diff changeset
26
14170
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 14040
diff changeset
27 ;;; Code:
23cc3f54e536 Update FSF's office address.
Erik Naggum <erik@naggum.no>
parents: 14040
diff changeset
28
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
29 (load "term/internal" nil t)
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
30
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
31 ;;; This is copied from etc/rgb.txt, except that some values were changed
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
32 ;;; a bit to make them consistent with DOS console colors, and the RGB
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
33 ;;; values were scaled up to 16 bits, as `tty-define-color' requires.
25122
2ed76ce5608e (msdos-face-setup): Register standard colors in
Eli Zaretskii <eliz@gnu.org>
parents: 24242
diff changeset
34 ;;;
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
35 ;;; The mapping between the 16 standard EGA/VGA colors and X color names
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
36 ;;; was done by running a Unix version of Emacs inside an X client and a
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
37 ;;; DJGPP-compiled Emacs on the same PC. The names of X colors used to
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
38 ;;; define the pixel values are shown as comments to each color below.
25122
2ed76ce5608e (msdos-face-setup): Register standard colors in
Eli Zaretskii <eliz@gnu.org>
parents: 24242
diff changeset
39 ;;;
2ed76ce5608e (msdos-face-setup): Register standard colors in
Eli Zaretskii <eliz@gnu.org>
parents: 24242
diff changeset
40 ;;; If you want to change the RGB values, keep in mind that various pieces
2ed76ce5608e (msdos-face-setup): Register standard colors in
Eli Zaretskii <eliz@gnu.org>
parents: 24242
diff changeset
41 ;;; of Emacs think that a color whose RGB values add up to less than 0.6 of
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
42 ;;; the values for WHITE (i.e. less than 117963) are ``dark'', otherwise the
25122
2ed76ce5608e (msdos-face-setup): Register standard colors in
Eli Zaretskii <eliz@gnu.org>
parents: 24242
diff changeset
43 ;;; color is ``light''; see `frame-set-background-mode' in lisp/faces.el for
2ed76ce5608e (msdos-face-setup): Register standard colors in
Eli Zaretskii <eliz@gnu.org>
parents: 24242
diff changeset
44 ;;; an example.
2ed76ce5608e (msdos-face-setup): Register standard colors in
Eli Zaretskii <eliz@gnu.org>
parents: 24242
diff changeset
45 (defvar msdos-color-values
42949
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
46 '(("black" 0 0 0 0)
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
47 ("blue" 1 0 0 52480) ; MediumBlue
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
48 ("green" 2 8704 35584 8704) ; ForestGreen
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
49 ("cyan" 3 0 52736 53504) ; DarkTurquoise
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
50 ("red" 4 45568 8704 8704) ; FireBrick
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
51 ("magenta" 5 35584 0 35584) ; DarkMagenta
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
52 ("brown" 6 40960 20992 11520) ; Sienna
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
53 ("lightgray" 7 48640 48640 48640) ; Gray
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
54 ("darkgray" 8 26112 26112 26112) ; Gray40
42949
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
55 ("lightblue" 9 0 0 65535) ; Blue
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
56 ("lightgreen" 10 0 65535 0) ; Green
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
57 ("lightcyan" 11 0 65535 65535) ; Cyan
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
58 ("lightred" 12 65535 0 0) ; Red
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
59 ("lightmagenta" 13 65535 0 65535) ; Magenta
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
60 ("yellow" 14 65535 65535 0) ; Yellow
a97674caab35 (msdos-color-values): Reverse the order of the
Eli Zaretskii <eliz@gnu.org>
parents: 40353
diff changeset
61 ("white" 15 65535 65535 65535))
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
62 "A list of MS-DOS console colors, their indices and 16-bit RGB values.")
24242
2dd79725f0c5 (msdos-approximate-color): New function.
Eli Zaretskii <eliz@gnu.org>
parents: 23461
diff changeset
63
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
64 ;; ---------------------------------------------------------------------------
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
65 ;; We want to delay setting frame parameters until the faces are setup
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
66 (defvar default-frame-alist nil)
15397
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
67 (modify-frame-parameters terminal-frame default-frame-alist)
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
68 (tty-color-clear)
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
69
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
70 (defun msdos-face-setup ()
15397
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
71 (set-face-foreground 'bold "yellow" terminal-frame)
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
72 (set-face-foreground 'italic "red" terminal-frame)
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
73 (set-face-foreground 'bold-italic "lightred" terminal-frame)
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
74 (set-face-foreground 'underline "white" terminal-frame)
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
75
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
76 (make-face 'msdos-menu-active-face)
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
77 (make-face 'msdos-menu-passive-face)
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
78 (make-face 'msdos-menu-select-face)
15397
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
79 (set-face-foreground 'msdos-menu-active-face "white" terminal-frame)
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
80 (set-face-foreground 'msdos-menu-passive-face "lightgray" terminal-frame)
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
81 (set-face-background 'msdos-menu-active-face "blue" terminal-frame)
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
82 (set-face-background 'msdos-menu-passive-face "blue" terminal-frame)
19290
7fb99affa49a (msdos-color-aliases): Remove color names which end with a number.
Richard M. Stallman <rms@gnu.org>
parents: 19211
diff changeset
83 (set-face-background 'msdos-menu-select-face "red" terminal-frame))
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
84
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
85 (add-hook 'before-init-hook 'msdos-face-setup)
15397
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
86
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
87 (defun msdos-handle-reverse-video (frame parameters)
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
88 "Handle the reverse-video frame parameter on MS-DOS frames."
36485
293677d8c530 (msdos-handle-reverse-video): Look for reverse in
Eli Zaretskii <eliz@gnu.org>
parents: 34105
diff changeset
89 (when (cdr (or (assq 'reverse parameters)
293677d8c530 (msdos-handle-reverse-video): Look for reverse in
Eli Zaretskii <eliz@gnu.org>
parents: 34105
diff changeset
90 (assq 'reverse default-frame-alist)))
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
91 (let* ((params (frame-parameters frame))
32547
946f66d4b38b (msdos-handle-reverse-video): Don't remove
Eli Zaretskii <eliz@gnu.org>
parents: 26736
diff changeset
92 (fg (cdr (assq 'foreground-color params)))
946f66d4b38b (msdos-handle-reverse-video): Don't remove
Eli Zaretskii <eliz@gnu.org>
parents: 26736
diff changeset
93 (bg (cdr (assq 'background-color params))))
946f66d4b38b (msdos-handle-reverse-video): Don't remove
Eli Zaretskii <eliz@gnu.org>
parents: 26736
diff changeset
94 (if (equal fg (cdr (assq 'mouse-color params)))
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
95 (modify-frame-parameters frame
32547
946f66d4b38b (msdos-handle-reverse-video): Don't remove
Eli Zaretskii <eliz@gnu.org>
parents: 26736
diff changeset
96 (list (cons 'mouse-color bg))))
946f66d4b38b (msdos-handle-reverse-video): Don't remove
Eli Zaretskii <eliz@gnu.org>
parents: 26736
diff changeset
97 (if (equal fg (cdr (assq 'cursor-color params)))
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
98 (modify-frame-parameters frame
32547
946f66d4b38b (msdos-handle-reverse-video): Don't remove
Eli Zaretskii <eliz@gnu.org>
parents: 26736
diff changeset
99 (list (cons 'cursor-color bg)))))))
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
100
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
101 ;; This must run after all the default colors are inserted into
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
102 ;; tty-color-alist, since msdos-handle-reverse-video needs to know the
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
103 ;; actual frame colors. tty-color-alist is set up by startup.el, but
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
104 ;; only after it runs before-init-hook and after-init-hook.
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
105 (defun msdos-setup-initial-frame ()
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
106 (modify-frame-parameters terminal-frame default-frame-alist)
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
107 ;; This remembers the screen colors after applying default-frame-alist,
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
108 ;; so that all subsequent frames could begin with those colors.
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
109 (msdos-remember-default-colors terminal-frame)
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
110 (modify-frame-parameters terminal-frame initial-frame-alist)
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
111 (msdos-handle-reverse-video terminal-frame
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
112 (frame-parameters terminal-frame))
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
113
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
114 (frame-set-background-mode terminal-frame)
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
115 (face-set-after-frame-default terminal-frame))
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
116
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
117 (add-hook 'term-setup-hook 'msdos-setup-initial-frame)
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
118
15397
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
119 ;; We create frames as if we were a terminal, but with a twist.
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
120 (defun make-msdos-frame (&optional parameters)
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
121 (let ((frame (make-terminal-frame parameters))
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
122 success)
25211
a1527fde7766 (msdos-bg-mode): Remove. Call
Eli Zaretskii <eliz@gnu.org>
parents: 25122
diff changeset
123 (unwind-protect
a1527fde7766 (msdos-bg-mode): Remove. Call
Eli Zaretskii <eliz@gnu.org>
parents: 25122
diff changeset
124 (progn
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
125 (msdos-handle-reverse-video frame (frame-parameters frame))
25211
a1527fde7766 (msdos-bg-mode): Remove. Call
Eli Zaretskii <eliz@gnu.org>
parents: 25122
diff changeset
126 (frame-set-background-mode frame)
a1527fde7766 (msdos-bg-mode): Remove. Call
Eli Zaretskii <eliz@gnu.org>
parents: 25122
diff changeset
127 (face-set-after-frame-default frame)
a1527fde7766 (msdos-bg-mode): Remove. Call
Eli Zaretskii <eliz@gnu.org>
parents: 25122
diff changeset
128 (setq success t))
a1527fde7766 (msdos-bg-mode): Remove. Call
Eli Zaretskii <eliz@gnu.org>
parents: 25122
diff changeset
129 (unless success (delete-frame frame)))
18770
94ca3c126cee (msdos-bg-mode): New function.
Richard M. Stallman <rms@gnu.org>
parents: 17517
diff changeset
130 frame))
15397
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
131
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
132 (setq frame-creation-function 'make-msdos-frame)
f95592fcdb1c (msdos-face-setup): Use `terminal-frame' for initial frame setup.
Richard M. Stallman <rms@gnu.org>
parents: 15315
diff changeset
133
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
134 ;; ---------------------------------------------------------------------------
14040
187735b53d52 Comment fixes.
Karl Heuer <kwzh@gnu.org>
parents: 13924
diff changeset
135 ;; More or less useful imitations of certain X-functions. A lot of the
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
136 ;; values returned are questionable, but usually only the form of the
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
137 ;; returned value matters. Also, by the way, recall that `ignore' is
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
138 ;; a useful function for returning 'nil regardless of argument.
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
139
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
140 ;; From src/xfns.c
19211
e83ac35f9bcb (x-list-fonts): Return "default" when appropriate.
Richard M. Stallman <rms@gnu.org>
parents: 18770
diff changeset
141 (defun x-list-fonts (pattern &optional face frame maximum width)
25264
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
142 (if (or (null width) (and (numberp width) (= width 1)))
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
143 (list "ms-dos")
19211
e83ac35f9bcb (x-list-fonts): Return "default" when appropriate.
Richard M. Stallman <rms@gnu.org>
parents: 18770
diff changeset
144 (list "no-such-font")))
14520
e46b1e676418 (x-display-pixel-height, x-display-pixel-width):
Richard M. Stallman <rms@gnu.org>
parents: 14170
diff changeset
145 (defun x-display-pixel-width (&optional frame) (frame-width frame))
e46b1e676418 (x-display-pixel-height, x-display-pixel-width):
Richard M. Stallman <rms@gnu.org>
parents: 14170
diff changeset
146 (defun x-display-pixel-height (&optional frame) (frame-height frame))
25264
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
147 (defun x-display-planes (&optional frame) 4) ;bg switched to 16 colors as well
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
148 (defun x-display-color-cells (&optional frame) 16)
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
149 (defun x-server-max-request-size (&optional frame) 1000000) ; ???
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
150 (defun x-server-vendor (&optional frame) t "GNU")
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
151 (defun x-server-version (&optional frame) '(1 0 0))
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
152 (defun x-display-screens (&optional frame) 1)
25264
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
153 (defun x-display-mm-height (&optional frame) 245) ; Guess the size of my
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
154 (defun x-display-mm-width (&optional frame) 322) ; monitor, EZ...
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
155 (defun x-display-backing-store (&optional frame) 'not-useful)
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
156 (defun x-display-visual-class (&optional frame) 'static-color)
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
157 (fset 'x-display-save-under 'ignore)
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
158 (fset 'x-get-resource 'ignore)
23461
b84718f930f8 (msdos-color-values): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 21710
diff changeset
159
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
160 ;; From lisp/term/x-win.el
26736
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
161 (defvar x-display-name "pc"
a0674327c167 Changes for automatic remapping of X colors on terminal frames:
Eli Zaretskii <eliz@gnu.org>
parents: 25264
diff changeset
162 "The display name specifying the MS-DOS display and frame type.")
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
163 (setq split-window-keep-point t)
25264
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
164 (defvar x-colors (mapcar 'car msdos-color-values)
13924
36aa12b0ea6a (x-colors): New variable, a list of colors
Richard M. Stallman <rms@gnu.org>
parents: 13628
diff changeset
165 "The list of colors available on a PC display under MS-DOS.")
25122
2ed76ce5608e (msdos-face-setup): Register standard colors in
Eli Zaretskii <eliz@gnu.org>
parents: 24242
diff changeset
166
21710
70d6549a4105 (x-select-text, x-get-selection-value): Replace win16 with w16.
Eli Zaretskii <eliz@gnu.org>
parents: 20033
diff changeset
167 ;; From lisp/term/w32-win.el
13924
36aa12b0ea6a (x-colors): New variable, a list of colors
Richard M. Stallman <rms@gnu.org>
parents: 13628
diff changeset
168 ;
17478
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
169 ;;;; Selections and cut buffers
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
170 ;
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
171 ;;; We keep track of the last text selected here, so we can check the
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
172 ;;; current selection against it, and avoid passing back our own text
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
173 ;;; from x-cut-buffer-or-selection-value.
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
174 (defvar x-last-selected-text nil)
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
175
34105
9f894ba9e808 (x-select-enable-clipboard): Customize (as per the Emacs Lisp manual).
Eli Zaretskii <eliz@gnu.org>
parents: 33011
diff changeset
176 (defcustom x-select-enable-clipboard t
9f894ba9e808 (x-select-enable-clipboard): Customize (as per the Emacs Lisp manual).
Eli Zaretskii <eliz@gnu.org>
parents: 33011
diff changeset
177 "Non-nil means cutting and pasting uses the clipboard.
9f894ba9e808 (x-select-enable-clipboard): Customize (as per the Emacs Lisp manual).
Eli Zaretskii <eliz@gnu.org>
parents: 33011
diff changeset
178 This is the default on this system, since MS-Windows does not
9f894ba9e808 (x-select-enable-clipboard): Customize (as per the Emacs Lisp manual).
Eli Zaretskii <eliz@gnu.org>
parents: 33011
diff changeset
179 support other types of selections."
9f894ba9e808 (x-select-enable-clipboard): Customize (as per the Emacs Lisp manual).
Eli Zaretskii <eliz@gnu.org>
parents: 33011
diff changeset
180 :type 'boolean
9f894ba9e808 (x-select-enable-clipboard): Customize (as per the Emacs Lisp manual).
Eli Zaretskii <eliz@gnu.org>
parents: 33011
diff changeset
181 :group 'killing)
17478
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
182
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
183 (defun x-select-text (text &optional push)
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
184 (if x-select-enable-clipboard
21710
70d6549a4105 (x-select-text, x-get-selection-value): Replace win16 with w16.
Eli Zaretskii <eliz@gnu.org>
parents: 20033
diff changeset
185 (w16-set-clipboard-data text))
17478
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
186 (setq x-last-selected-text text))
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
187
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
188 ;;; Return the value of the current selection.
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
189 ;;; Consult the selection, then the cut buffer. Treat empty strings
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
190 ;;; as if they were unset.
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
191 (defun x-get-selection-value ()
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
192 (if x-select-enable-clipboard
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
193 (let (text)
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
194 ;; Don't die if x-get-selection signals an error.
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
195 (condition-case c
21710
70d6549a4105 (x-select-text, x-get-selection-value): Replace win16 with w16.
Eli Zaretskii <eliz@gnu.org>
parents: 20033
diff changeset
196 (setq text (w16-get-clipboard-data))
70d6549a4105 (x-select-text, x-get-selection-value): Replace win16 with w16.
Eli Zaretskii <eliz@gnu.org>
parents: 20033
diff changeset
197 (error (message "w16-get-clipboard-data:%s" c)))
17478
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
198 (if (string= text "") (setq text nil))
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
199 (cond
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
200 ((not text) nil)
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
201 ((eq text x-last-selected-text) nil)
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
202 ((string= text x-last-selected-text)
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
203 ;; Record the newer string, so subsequent calls can use the 'eq' test.
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
204 (setq x-last-selected-text text)
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
205 nil)
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
206 (t
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
207 (setq x-last-selected-text text))))))
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
208
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
209 ;;; Arrange for the kill and yank functions to set and check the clipboard.
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
210 (setq interprogram-cut-function 'x-select-text)
14989cb202dc * (x-select-enable-clipboard): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 16643
diff changeset
211 (setq interprogram-paste-function 'x-get-selection-value)
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
212
13628
6da84b713ae7 (msdos-color-aliases): Add more aliases.
Richard M. Stallman <rms@gnu.org>
parents: 13484
diff changeset
213 ;; From lisp/faces.el: we only have one font, so always return
6da84b713ae7 (msdos-color-aliases): Add more aliases.
Richard M. Stallman <rms@gnu.org>
parents: 13484
diff changeset
214 ;; it, no matter which variety they've asked for.
6da84b713ae7 (msdos-color-aliases): Add more aliases.
Richard M. Stallman <rms@gnu.org>
parents: 13484
diff changeset
215 (defun x-frob-font-slant (font which)
6da84b713ae7 (msdos-color-aliases): Add more aliases.
Richard M. Stallman <rms@gnu.org>
parents: 13484
diff changeset
216 font)
40353
1e1c2c459774 (x-frob-font-slant, x-frob-font-weight): Add
Eli Zaretskii <eliz@gnu.org>
parents: 38412
diff changeset
217 (make-obsolete 'x-frob-font-slant 'make-face-... "21.1")
25264
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
218 (defun x-frob-font-weight (font which)
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
219 font)
40353
1e1c2c459774 (x-frob-font-slant, x-frob-font-weight): Add
Eli Zaretskii <eliz@gnu.org>
parents: 38412
diff changeset
220 (make-obsolete 'x-frob-font-weight 'make-face-... "21.1")
25264
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
221 (defun x-font-family-list ()
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
222 "Return a list of available font families on FRAME.\n\
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
223 If FRAME is omitted or nil, use the selected frame.\n\
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
224 Value is a list of conses (FAMILY . FIXED-P) where FAMILY\n\
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
225 is a font family, and FIXED-P is non-nil if fonts of that family\n\
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
226 are fixed-pitch."
577683f84100 (x-list-fonts): Return "ms-dos", not "default".
Eli Zaretskii <eliz@gnu.org>
parents: 25211
diff changeset
227 '(("default" . t)))
13628
6da84b713ae7 (msdos-color-aliases): Add more aliases.
Richard M. Stallman <rms@gnu.org>
parents: 13484
diff changeset
228
19211
e83ac35f9bcb (x-list-fonts): Return "default" when appropriate.
Richard M. Stallman <rms@gnu.org>
parents: 18770
diff changeset
229 ;; From src/fontset.c:
e83ac35f9bcb (x-list-fonts): Return "default" when appropriate.
Richard M. Stallman <rms@gnu.org>
parents: 18770
diff changeset
230 (fset 'query-fontset 'ignore)
e83ac35f9bcb (x-list-fonts): Return "default" when appropriate.
Richard M. Stallman <rms@gnu.org>
parents: 18770
diff changeset
231
16643
734b72203ac5 (iconify-or-deiconify-frame): Define to be a
Richard M. Stallman <rms@gnu.org>
parents: 15397
diff changeset
232 ;; From lisp/term/x-win.el: make iconify-or-deiconify-frame a no-op.
734b72203ac5 (iconify-or-deiconify-frame): Define to be a
Richard M. Stallman <rms@gnu.org>
parents: 15397
diff changeset
233 (fset 'iconify-or-deiconify-frame 'ignore)
734b72203ac5 (iconify-or-deiconify-frame): Define to be a
Richard M. Stallman <rms@gnu.org>
parents: 15397
diff changeset
234
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
235 ;; From lisp/frame.el
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
236 (fset 'set-default-font 'ignore)
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
237 (fset 'set-mouse-color 'ignore) ; We cannot, I think.
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
238 (fset 'set-cursor-color 'ignore) ; Hardware determined by char under.
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
239 (fset 'set-border-color 'ignore) ; Not useful.
20033
2c0e89d1488b (x-long-option-alist): New variable.
Eli Zaretskii <eliz@gnu.org>
parents: 19568
diff changeset
240
9571
b37425ecb3f0 Initial revision
Morten Welinder <terra@diku.dk>
parents:
diff changeset
241 ;; ---------------------------------------------------------------------------
17517
8f952e921136 Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 17478
diff changeset
242
8f952e921136 Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 17478
diff changeset
243 ;;; pc-win.el ends here