annotate man/xemacs/new.texi @ 1633:baca156a450b

[xemacs-hg @ 2003-08-19 02:11:46 by james] Make modules build and run on Cygwin and MinGW. This is the second commit to get the toplevel files that were not committed the first time.
author james
date Tue, 19 Aug 2003 02:11:49 +0000
parents abe6d1db359e
children b7b90f750a78
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2 @iftex
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 @unnumbered XEmacs Features
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 This section describes the difference between Emacs Version 18 and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 @unnumberedsec General Changes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10 @itemize @bullet
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 @ignore
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 XEmacs has a new vi emulation mode called evi mode. To
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14 start evi mode in Emacs, type the command @kbd{M-x evi}. If you want
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15 Emacs to automatically put you in evi-mode all the time, include this
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
16 line in your init file:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 (setq term-setup-hook 'evi)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 @xref{evi Mode} for a brief discussion.
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
21 @xref{Init File}.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 @end ignore
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 XEmacs has a new vi emulation mode called ``viper'' mode. To start
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 viper mode in XEmacs, type the command @kbd{M-x viper-mode}. If you
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 want XEmacs to automatically put you in viper-mode all the time, include
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
28 this line in your init file:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 (viper-mode)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 @end example
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
32 @xref{Init File}.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 Earlier versions of Emacs only allowed keybindings to ASCII character
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36 sequences. XEmacs has greatly expanded this by allowing you to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 use a vector of key sequences which are in turn composed of a modifier
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 and a keysym. @xref{Keystrokes} for more information.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 The keymap data structure has been reimplemented to allow the use of a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 character set larger than ASCII. Keymaps are no longer alists and/or
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43 vectors; they are a new primary data type. Consequently, code which
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 manipulated keymaps with list or array manipulation functions will no
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 longer work. It must use the functions @code{define-key} or
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 @code{map-keymap} and @code{set-keymap-parent} (the new keymap
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 functions). @xref{Key Bindings} for more information.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 Input and display of all ISO-8859-1 characters is supported.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 Multiple fonts, including variable-width fonts, and fonts of differing
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54 heights, are supported.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57 There is a new @file{tags} package and a new UNIX manual browsing
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 package. They are similar to earlier versions; for more information look
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 at the source code.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 There is a new implementation of Dired, with many new features. The
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63 online info for Dired, @i{not} the Dired node of Emacs info, provides
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 more detail.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67 GNUS (a network news reader), VM (an alternative mail reader), ILISP (a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 package for interacting with inferior Lisp processes), ANGE-FTP (a package
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69 for making FTP-accessible files appear just like files on the local disk,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 even to Dired), Calendar (an Emacs-based calendar and appointment-
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 management tool), and W3 (an interface to the World Wide Web) are a part
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 of the XEmacs Lisp library. See the related documentation in the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 online info browser.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 Emacs now supports floating-point numbers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 When you send mail, mail aliases are now expanded in the buffer. In
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 earlier versions, they were expanded after the mail-sending command was
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81 executed.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 The initial value of @code{load-path} is computed when Emacs starts up,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85 instead of being hardcoded in when Emacs is compiled. As a result, you
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 can now move the Emacs executable and Lisp library to a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 different location in the file system without having to recompile.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90 Any existing subdirectories of the Emacs Lisp directory are now added to the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91 @code{load-path} by default.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 On some machines, you can change the audible bell using the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95 @code{sound-alist} variable. @xref{Audible Bell} for more information.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 You can use multiple X windows to display multiple Emacs frames.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101 You can use the X selection mechanism to copy material from other
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 applications and into other applications. You can also use all Emacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103 region commands on a region selected with the mouse. @xref{Mouse
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104 Selection} for more information.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
106 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
107 By default, the variable @code{zmacs-regions} is set to highlight the region
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
108 between point and the mark. This unifies X selection and Emacs selection
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
109 behavior.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
112 XEmacs has a menu bar for mouse-controlled operations in addition to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113 keystrokes. @xref{Pull-down Menus}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116 You can look in the file @file{/usr/local/lib/xemacs-19.11/etc/Emacs.ad} for
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117 a list of Emacs X resources. You can set these resources in your X
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
118 environment to set your preferences for color, fonts, location, and the size
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119 of XEmacs frames. Refer to your X documentation for more information
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120 about resources.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
121
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
122 @unnumberedsec New Commands and Variables
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
123
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
124 There are many new functions in XEmacs, and many existing functions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
125 whose semantics have been expanded. Most of these are only of interest
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
126 to the Emacs-Lisp programmer; see the NEWS file @kbd{C-h n} for a complete
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
127 list. What follows is a partial list of the new interactive commands:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
128
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
129 @findex byte-compile-and-load-file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
130 @findex byte-compile-buffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132 @code{byte-compile-and-load-file} and @code{byte-compile-buffer}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133 byte-compile the contents of a file or buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
134
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
135 @findex conx
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136 The new @code{conx} function lets you generate random sentences for your
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137 amusement.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
138
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
139 @findex compile-defun
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
140 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
141 @code{compile-defun} compiles and evaluates the current top-level
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
142 form.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
143
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
144 @findex find-this-file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
145 @findex find-this-file-other-window
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
146 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
147 @code{find-this-file} and @code{find-this-file-other-window} can be used
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
148 interactively with a prefix argument to switch to the filename at point
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
149 in the buffer. @code{find-this-file-other-window} displays the file in
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
150 another window.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
151
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
152 @findex invert-face
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
153 @findex make-face-bold
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
154 @findex make-face-bold-italic
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
155 @findex make-face-italic
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
156 @findex make-face-unbold
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
157 @findex make-face-unitalic
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
158 @findex set-face-background
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
159 @findex set-face-background-pixmap
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
160 @findex set-face-font
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
161 @findex set-face-foreground
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
162 @findex set-face-underline-p
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
163 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
164 Several new functions have been added that allow you to customize the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
165 color and font attributes of a region of text: @code{invert-face},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
166 @code{make-face-bold}, @code{make-face-bold-italic},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
167 @code{make-face-italic}, @code{make-face-unbold},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
168 @code{make-face-unitalic}, @code{set-face-background},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
169 @code{set-face-background-pixmap}, @code{set-face-font},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
170 @code{set-face-foreground}, and @code{set-face-underline-p}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
171
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
172 @findex load-default-sounds
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
173 @findex load-sound-file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
174 @findex play-sound
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
175 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
176 @code{load-default-sounds} and @code{load-sound-file} allow you to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
177 customize the audible bell sound. @code{load-default-sounds} loads and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
178 installs sound files. @code{load-sound-file} reads in audio files and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
179 adds them to the sound alist. @code{play-sound} plays the specified
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
180 sound type.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
181
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
182 @findex locate-library
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
183 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
184 @code{locate-library} finds the file that the function
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
185 @code{load-library} loads, and it displays the file's full pathname.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
186
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
187 @findex make-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
188 @findex remove-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
189 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
190 @code{make-directory} creates a directory, while @code{remove-directory}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
191 removes a directory.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
192
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
193 @findex mark-beginning-of-buffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
194 @findex mark-end-of-buffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
195 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
196 @code{mark-beginning-of-buffer} and @code{mark-end-of-buffer} push the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
197 mark to the beginning or end of a buffer, respectively.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
198
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
199 @findex mouse-del-char
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
200 @findex mouse-delete-window
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
201 @findex mouse-keep-one-window
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
202 @findex mouse-kill-line
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
203 @findex mouse-line-length
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
204 @findex mouse-scroll
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
205 @findex mouse-select
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
206 @findex mouse-select-and-split
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
207 @findex mouse-set-mark
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
208 @findex mouse-set-point
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
209 @findex mouse-track
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
210 @findex mouse-track-adjust
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
211 @findex mouse-track-and-copy-to-cutbuffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
212 @findex mouse-track-delete-and-insert
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
213 @findex mouse-track-insert
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
214 @findex mouse-window-to-region
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
215 Several functions have been added that allow you to perform various
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
216 editing, region, and window operations using the mouse:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
217 @code{mouse-del-char}, @code{mouse-delete-window},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
218 @code{mouse-keep-one-window}, @code{mouse-kill-line},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
219 @code{mouse-line-length}, @code{mouse-scroll}, @code{mouse-select},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
220 @code{mouse-select-and-split}, @code{mouse-set-mark},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
221 @code{mouse-set-point}, @code{mouse-track}, @code{mouse-track-adjust},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
222 @code{mouse-track-and-copy-to-cutbuffer},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
223 @code{mouse-track-delete-and-insert}, @code{mouse-track-insert}, and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
224 @code{mouse-window-to-region}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
225
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
226 @findex compare-windows
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
227 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
228 @code{compare-windows} takes an argument @var{ignore-whitespace}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
229 The argument means ignore changes in whitespace.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
230
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
231 @end itemize
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
232
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
233 You can conditionalize your @file{.emacs} file as follows so that XEmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
234 commands are invoked only when you are in XEmacs:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
235
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
236 @cindex version number
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
237 @example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
238 (cond ((string-match "Lucid" emacs-version)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
239 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
240 ;; Code for any version of Lucid Emacs or XEmacs goes here
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
241 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
242 ))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
243
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
244 (cond ((and (string-match "XEmacs" emacs-version)
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
245 (or (> emacs-major-version 19)
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
246 (>= emacs-minor-version 12)))
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
247 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
248 ;; Code which requires XEmacs version 19.12 or newer goes here
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
249 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
250 ))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
251
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
252 (cond ((>= emacs-major-version 19)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
253 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
254 ;; Code for any vintage-19 emacs goes here
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
255 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
256 ))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
257
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
258 (cond ((and (not (string-match "Lucid" emacs-version))
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
259 (= emacs-major-version 19))
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
260 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
261 ;; Code specific to FSF Emacs 19 (not XEmacs) goes here
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
262 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
263 ))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
264
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
265 (cond ((< emacs-major-version 19)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
266 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
267 ;; Code specific to emacs 18 goes here
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
268 ;;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
269 ))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
270 @end example
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
271
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
272 Alternatively, use @file{.xemacs/init.el} for an init file. @xref{Init File}.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
273
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
274 Of particular interest for use in files are:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
275
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
276 @itemize @bullet
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
277 @findex add-menu
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
278 @findex add-menu-item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
279 @findex delete-menu-item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
280 @findex disable-menu-item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
281 @findex enable-menu-item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
282 @findex relabel-menu-item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
283 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
284 @code{add-menu} lets you add a new menu to the menubar or a submenu to a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
285 pull-down menu. @code{add-menu-item}, @code{disable-menu-item},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
286 @code{delete-menu-item}, @code{enable-menu-item}, and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
287 @code{relabel-menu-item} allow you to customize the XEmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
288 pull-down menus.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
289
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
290 @findex make-frame
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
291 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
292 @code{make-frame} creates a new Emacs frame (X window).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
293
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
294 @end itemize
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
295
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
296 These new variables are only present in XEmacs:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
297
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
298 @itemize @bullet
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
299
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
300 @vindex minibuffer-confirm-incomplete
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
301 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
302 @code{minibuffer-confirm-incomplete} prompts for confirmation in
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
303 contexts where @code{completing-read} allows answers that are not valid
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
304 completions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
305
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
306 @vindex x-mode-pointer-shape
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
307 @vindex x-nontext-pointer-shape
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
308 @vindex x-pointer-background-color
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
309 @vindex x-pointer-foreground-color
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
310 @vindex x-pointer-shape
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
311 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
312 Several variables have been added that allow you to customize the color
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
313 and shape of the mouse pointer: @code{x-pointer-background-color},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
314 @code{x-pointer-foreground-color}, @code{x-mode-pointer-shape},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
315 @code{x-pointer-shape}, and @* @code{x-nontext-pointer-shape}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
316
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
317 @vindex zmacs-regions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
318 @item
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
319 @code{zmacs-regions} determines whether LISPM-style active regions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
320 should be used.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
321 @end itemize
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
322
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
323 @unnumberedsec Changes in Key Bindings
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
324
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
325 XEmacs has the following new default function keybindings:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
326
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
327 @table @kbd
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
328 @item @key{HELP}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
329 Same as @kbd{C-h}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
330
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
331 @item @key{UNDO}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
332 Same as @kbd{M-x undo}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
333
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
334 @item @key{CUT}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
335 Same as the Cut menu item; that is, it copies the selected text to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
336 the X Clipboard selection.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
337
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
338 @item @key{COPY}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
339 Same as the Copy menu item.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
340
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
341 @item @key{PASTE}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
342 Same as the Paste menu item.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
343
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
344 @item @key{PGUP}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
345 Same as @kbd{M-v}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
346
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
347 @item @key{PGDN}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
348 Same as @kbd{C-v}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
349
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
350 @item @key{HOME}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
351 Same as @kbd{M-<}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
352
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
353 @item @key{END}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
354 Same as @kbd{M->}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
355
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
356 @item @key{LEFT-ARROW}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
357 Same as the function @code{backward-char}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
358
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
359 @item @key{RIGHT-ARROW}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
360 Same as the function @code{forward-char}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
361
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
362 @item @key{UP-ARROW}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
363 Same as the function @code{previous-line}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
364
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
365 @item @key{DOWN-ARROW}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
366 Same as the function @code{next-line}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
367
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
368 @end table
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
369
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
370
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
371 @end iftex