Mercurial > emacs
comparison man/frames.texi @ 83464:49f9dd4bb117
Merged from
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-32
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-33
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-34
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-35
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-36
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-37
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-8
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-9
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-10
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-11
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-12
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-13
Merge from emacs--devo--0
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-504
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Fri, 03 Feb 2006 13:58:41 +0000 |
parents | ec395f552d45 49007330e598 |
children | d04d8ccb3c41 |
comparison
equal
deleted
inserted
replaced
83463:38c49afb29d9 | 83464:49f9dd4bb117 |
---|---|
1 @c This is part of the Emacs manual. | 1 @c This is part of the Emacs manual. |
2 @c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1999, 2000, | 2 @c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1999, 2000, |
3 @c 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | 3 @c 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
4 @c See file emacs.texi for copying conditions. | 4 @c See file emacs.texi for copying conditions. |
5 @node Frames, International, Windows, Top | 5 @node Frames, International, Windows, Top |
6 @chapter Frames and X Windows | 6 @chapter Frames and Graphical Displays |
7 @cindex frames | 7 @cindex frames |
8 | 8 |
9 When using the X Window System, you can create multiple windows at the | 9 When using a graphical display, you can create multiple windows at |
10 X level in a single Emacs session. Each X window that belongs to Emacs | 10 the system in a single Emacs session. Each system-level window that |
11 displays a @dfn{frame} which can contain one or several Emacs windows. | 11 belongs to Emacs displays a @dfn{frame} which can contain one or |
12 A frame initially contains a single general-purpose Emacs window which | 12 several Emacs windows. A frame initially contains a single |
13 you can subdivide vertically or horizontally into smaller windows. A | 13 general-purpose Emacs window which you can subdivide vertically or |
14 frame normally contains its own echo area and minibuffer, but you can | 14 horizontally into smaller windows. A frame normally contains its own |
15 make frames that don't have these---they use the echo area and | 15 echo area and minibuffer, but you can make frames that don't have |
16 minibuffer of another frame. | 16 these---they use the echo area and minibuffer of another frame. |
17 | 17 |
18 Editing you do in one frame also affects the other frames. For | 18 To avoid confusion, we reserve the word ``window'' for the |
19 subdivisions that Emacs implements, and never use it to refer to a | |
20 frame. | |
21 | |
22 Editing you do in one frame affects the other frames. For | |
19 instance, if you put text in the kill ring in one frame, you can yank it | 23 instance, if you put text in the kill ring in one frame, you can yank it |
20 in another frame. If you exit Emacs through @kbd{C-x C-c} in one frame, | 24 in another frame. If you exit Emacs through @kbd{C-x C-c} in one frame, |
21 it terminates all the frames. To delete just one frame, use @kbd{C-x 5 | 25 it terminates all the frames. To delete just one frame, use @kbd{C-x 5 |
22 0} (that is zero, not @kbd{o}). | 26 0} (that is zero, not @kbd{o}). |
23 | 27 |
24 To avoid confusion, we reserve the word ``window'' for the | 28 Emacs compiled for MS-DOS emulates some windowing functionality, |
25 subdivisions that Emacs implements, and never use it to refer to a | |
26 frame. | |
27 | |
28 Emacs compiled for MS-DOS emulates some aspects of the window system | |
29 so that you can use many of the features described in this chapter. | 29 so that you can use many of the features described in this chapter. |
30 @xref{MS-DOS Mouse}, for more information. | 30 @xref{MS-DOS Mouse}, for more information. |
31 | 31 |
32 @menu | 32 @menu |
33 * Mouse Commands:: Moving, cutting, and pasting, with the mouse. | 33 * Mouse Commands:: Moving, cutting, and pasting, with the mouse. |
183 @code{mouse-yank-at-point} is non-@code{nil}, @kbd{Mouse-2} yanks at | 183 @code{mouse-yank-at-point} is non-@code{nil}, @kbd{Mouse-2} yanks at |
184 point. Then it does not matter where you click, or even which of the | 184 point. Then it does not matter where you click, or even which of the |
185 frame's windows you click on. The default value is @code{nil}. This | 185 frame's windows you click on. The default value is @code{nil}. This |
186 variable also affects yanking the secondary selection. | 186 variable also affects yanking the secondary selection. |
187 | 187 |
188 @cindex cutting and X | 188 @cindex cutting |
189 @cindex pasting and X | 189 @cindex pasting |
190 @cindex X cutting and pasting | 190 @cindex X cutting and pasting |
191 To copy text to another X window, kill it or save it in the kill ring. | 191 To copy text to another windowing application, kill it or save it in |
192 Under X, this also sets the @dfn{primary selection}. Then use the | 192 the kill ring. Then use the ``paste'' or ``yank'' command of the |
193 ``paste'' or ``yank'' command of the program operating the other window | 193 other application to insert the text. |
194 to insert the text from the selection. | 194 |
195 | 195 To copy text from another windowing application, use its ``cut'' or |
196 To copy text from another X window, use the ``cut'' or ``copy'' | 196 ``copy'' command to select the text you want. Then yank it in Emacs |
197 command of the program operating the other window, to select the text | 197 with @kbd{C-y} or @kbd{Mouse-2}. |
198 you want. Then yank it in Emacs with @kbd{C-y} or @kbd{Mouse-2}. | |
199 | |
200 The standard coding system for X selections is | |
201 @code{compound-text-with-extensions}. To specify another coding | |
202 system for X selections, use @kbd{C-x @key{RET} x} or @kbd{C-x | |
203 @key{RET} X}. @xref{Specify Coding}. | |
204 | 198 |
205 @cindex primary selection | 199 @cindex primary selection |
206 @cindex cut buffer | 200 @cindex cut buffer |
207 @cindex selection, primary | 201 @cindex selection, primary |
208 @vindex x-cut-buffer-max | 202 @vindex x-cut-buffer-max |
209 When Emacs puts text into the kill ring, or rotates text to the front | 203 When Emacs puts text into the kill ring, or rotates text to the |
210 of the kill ring, it sets the @dfn{primary selection} in the X server. | 204 front of the kill ring, it sets the @dfn{primary selection} in the |
211 This is how other X clients can access the text. Emacs also stores the | 205 window system. This is how other windowing applications can access |
212 text in the cut buffer, but only if the text is short enough | 206 the text. On the X Window System, emacs also stores the text in the |
213 (the value of @code{x-cut-buffer-max} specifies the maximum number of | 207 cut buffer, but only if the text is short enough (the value of |
214 characters); putting long strings in the cut buffer can be slow. | 208 @code{x-cut-buffer-max} specifies the maximum number of characters); |
209 putting long strings in the cut buffer can be slow. | |
215 | 210 |
216 The commands to yank the first entry in the kill ring actually check | 211 The commands to yank the first entry in the kill ring actually check |
217 first for a primary selection in another program; after that, they check | 212 first for a primary selection in another program; after that, they check |
218 for text in the cut buffer. If neither of those sources provides text | 213 for text in the cut buffer. If neither of those sources provides text |
219 to yank, the kill ring contents are used. | 214 to yank, the kill ring contents are used. |
220 | 215 |
216 The standard coding system for X Window System selections is | |
217 @code{compound-text-with-extensions}. To specify another coding | |
218 system for selections, use @kbd{C-x @key{RET} x} or @kbd{C-x @key{RET} | |
219 X}. @xref{Communication Coding}. | |
220 | |
221 @node Secondary Selection | 221 @node Secondary Selection |
222 @section Secondary Selection | 222 @section Secondary Selection |
223 @cindex secondary selection | 223 @cindex secondary selection |
224 | 224 |
225 The @dfn{secondary selection} is another way of selecting text using | 225 The @dfn{secondary selection} is another way of selecting text using |
226 X. It does not use point or the mark, so you can use it to kill text | 226 the X Window System. It does not use point or the mark, so you can |
227 without setting point or the mark. | 227 use it to kill text without setting point or the mark. |
228 | 228 |
229 @table @kbd | 229 @table @kbd |
230 @findex mouse-set-secondary | 230 @findex mouse-set-secondary |
231 @kindex M-Drag-Mouse-1 | 231 @kindex M-Drag-Mouse-1 |
232 @item M-Drag-Mouse-1 | 232 @item M-Drag-Mouse-1 |
273 yanks at point. Then it does not matter precisely where you click; all | 273 yanks at point. Then it does not matter precisely where you click; all |
274 that matters is which window you click on. @xref{Mouse Commands}. | 274 that matters is which window you click on. @xref{Mouse Commands}. |
275 | 275 |
276 @node Clipboard | 276 @node Clipboard |
277 @section Using the Clipboard | 277 @section Using the Clipboard |
278 @cindex X clipboard | |
279 @cindex clipboard | 278 @cindex clipboard |
280 @vindex x-select-enable-clipboard | 279 @vindex x-select-enable-clipboard |
281 @findex menu-bar-enable-clipboard | 280 @findex menu-bar-enable-clipboard |
282 @cindex OpenWindows | 281 @cindex OpenWindows |
283 @cindex Gnome | 282 @cindex Gnome |
284 | 283 |
285 Apart from the primary and secondary selection types, X supports a | 284 Apart from the primary and secondary selection types, Emacs can |
286 @dfn{clipboard} selection type which is used by some applications, | 285 handle the @dfn{clipboard} selection type which is used by some |
287 particularly under OpenWindows and Gnome. | 286 applications, particularly under OpenWindows and Gnome. |
288 | 287 |
289 The command @kbd{M-x menu-bar-enable-clipboard} makes the @code{Cut}, | 288 The command @kbd{M-x menu-bar-enable-clipboard} makes the @code{Cut}, |
290 @code{Paste} and @code{Copy} menu items, as well as the keys of the same | 289 @code{Paste} and @code{Copy} menu items, as well as the keys of the same |
291 names, all use the clipboard. | 290 names, all use the clipboard. |
292 | 291 |
293 You can customize the variable @code{x-select-enable-clipboard} to make | 292 You can customize the variable @code{x-select-enable-clipboard} to make |
294 the Emacs yank functions consult the clipboard before the primary | 293 the Emacs yank functions consult the clipboard before the primary |
295 selection, and to make the kill functions to store in the clipboard as | 294 selection, and to make the kill functions to store in the clipboard as |
296 well as the primary selection. Otherwise they do not access the | 295 well as the primary selection. Otherwise they do not access the |
297 clipboard at all. Using the clipboard is the default on MS-Windows, | 296 clipboard at all. Using the clipboard is the default on MS-Windows, |
298 unlike most systems. | 297 but not on other systems. |
299 | 298 |
300 @node Mouse References | 299 @node Mouse References |
301 @section Following References with the Mouse | 300 @section Following References with the Mouse |
302 @kindex Mouse-1 @r{(selection)} | 301 @kindex Mouse-1 @r{(selection)} |
303 @kindex Mouse-2 @r{(selection)} | 302 @kindex Mouse-2 @r{(selection)} |
340 where the mouse already is), never, or only immediately after you move | 339 where the mouse already is), never, or only immediately after you move |
341 the mouse. | 340 the mouse. |
342 | 341 |
343 @vindex mouse-1-click-follows-link | 342 @vindex mouse-1-click-follows-link |
344 In Emacs versions before 22, only @kbd{Mouse-2} follows links and | 343 In Emacs versions before 22, only @kbd{Mouse-2} follows links and |
345 @kbd{Mouse-1} always sets points. If you prefer this behavior, set | 344 @kbd{Mouse-1} always sets point. If you prefer this older behavior, |
346 the variable @code{mouse-1-click-follows-link} to @code{nil}. This | 345 set the variable @code{mouse-1-click-follows-link} to @code{nil}. |
347 variable also lets you choose various other alternatives for following | 346 This variable also lets you choose various other alternatives for |
348 links with the mouse. Type @kbd{C-h v mouse-1-click-follows-link @key{RET}} | 347 following links with the mouse. Type @kbd{C-h v |
349 for more details. | 348 mouse-1-click-follows-link @key{RET}} for more details. |
350 | 349 |
351 @node Menu Mouse Clicks | 350 @node Menu Mouse Clicks |
352 @section Mouse Clicks for Menus | 351 @section Mouse Clicks for Menus |
353 | 352 |
354 Mouse clicks modified with the @key{CTRL} and @key{SHIFT} keys | 353 Several mouse clicks with the @key{CTRL} and @key{SHIFT} modifiers |
355 bring up menus. | 354 bring up menus. |
356 | 355 |
357 @table @kbd | 356 @table @kbd |
358 @item C-Mouse-1 | 357 @item C-Mouse-1 |
359 @kindex C-Mouse-1 | 358 @kindex C-Mouse-1 |
380 Menu-bar mode is off, this menu contains all the items which would be | 379 Menu-bar mode is off, this menu contains all the items which would be |
381 present in the menu bar---not just the mode-specific ones---so that | 380 present in the menu bar---not just the mode-specific ones---so that |
382 you can access them without having to display the menu bar. | 381 you can access them without having to display the menu bar. |
383 | 382 |
384 @item S-Mouse-1 | 383 @item S-Mouse-1 |
385 This menu is for specifying the frame's principal font. | 384 This menu is for specifying the frame's default font. |
386 @end table | 385 @end table |
387 | 386 |
388 @node Mode Line Mouse | 387 @node Mode Line Mouse |
389 @section Mode Line Mouse Commands | 388 @section Mode Line Mouse Commands |
390 @cindex mode line, mouse | 389 @cindex mode line, mouse |
394 windows. | 393 windows. |
395 | 394 |
396 Some areas of the mode line, such as the buffer name and the major | 395 Some areas of the mode line, such as the buffer name and the major |
397 mode name, have their own special mouse bindings. These areas are | 396 mode name, have their own special mouse bindings. These areas are |
398 highlighted when you hold the mouse over them, and information about | 397 highlighted when you hold the mouse over them, and information about |
399 the special bindings will be displayed (@pxref{Tooltips}). | 398 the special bindings will be displayed (@pxref{Tooltips}). This |
400 | 399 section's commands do not apply in those areas. |
401 You can also click on areas of the mode line that do not have | |
402 special mouse bindings of their own. This has the following effects: | |
403 | 400 |
404 @table @kbd | 401 @table @kbd |
405 @item Mouse-1 | 402 @item Mouse-1 |
406 @kindex Mouse-1 @r{(mode line)} | 403 @kindex Mouse-1 @r{(mode line)} |
407 @kbd{Mouse-1} on a mode line selects the window it belongs to. By | 404 @kbd{Mouse-1} on a mode line selects the window it belongs to. By |
408 dragging @kbd{Mouse-1} on the mode line, you can move it, thus | 405 dragging @kbd{Mouse-1} on the mode line, you can move it, thus |
409 changing the height of the windows above and below. | 406 changing the height of the windows above and below. Changing heights |
407 with the mouse in this way never deletes windows, it just refuses to | |
408 make any window smaller than the minimum height. | |
410 | 409 |
411 @item Mouse-2 | 410 @item Mouse-2 |
412 @kindex Mouse-2 @r{(mode line)} | 411 @kindex Mouse-2 @r{(mode line)} |
413 @kbd{Mouse-2} on a mode line expands that window to fill its frame. | 412 @kbd{Mouse-2} on a mode line expands that window to fill its frame. |
414 | 413 |
423 @kbd{C-Mouse-2} on a mode line splits the window above | 422 @kbd{C-Mouse-2} on a mode line splits the window above |
424 horizontally, above the place in the mode line where you click. | 423 horizontally, above the place in the mode line where you click. |
425 @end table | 424 @end table |
426 | 425 |
427 @kindex C-Mouse-2 @r{(scroll bar)} | 426 @kindex C-Mouse-2 @r{(scroll bar)} |
428 @kbd{C-Mouse-2} on a scroll bar splits the corresponding window | 427 @kindex Mouse-1 @r{(scroll bar)} |
428 Using @kbd{Mouse-1} on the divider between two side-by-side mode | |
429 lines, you can move the vertical boundary left or right. Using | |
430 @kbd{C-Mouse-2} on a scroll bar splits the corresponding window | |
429 vertically. @xref{Split Window}. | 431 vertically. @xref{Split Window}. |
430 | 432 |
431 @node Creating Frames | 433 @node Creating Frames |
432 @section Creating Frames | 434 @section Creating Frames |
433 @cindex creating frames | 435 @cindex creating frames |
636 | 638 |
637 @node Special Buffer Frames | 639 @node Special Buffer Frames |
638 @section Special Buffer Frames | 640 @section Special Buffer Frames |
639 | 641 |
640 @vindex special-display-buffer-names | 642 @vindex special-display-buffer-names |
641 You can make certain chosen buffers, for which Emacs normally creates | 643 You can make certain chosen buffers, which Emacs normally displays |
642 a second window when you have just one window, appear in special frames | 644 in ``another window,'' appear in special frames of their own. To do |
643 of their own. To do this, set the variable | 645 this, set the variable @code{special-display-buffer-names} to a list |
644 @code{special-display-buffer-names} to a list of buffer names; any | 646 of buffer names; any buffer whose name is in that list automatically |
645 buffer whose name is in that list automatically gets a special frame, | 647 gets a special frame, when an Emacs command wants to display it ``in |
646 when an Emacs command wants to display it ``in another window.'' | 648 another window.'' |
647 | 649 |
648 For example, if you set the variable this way, | 650 For example, if you set the variable this way, |
649 | 651 |
650 @example | 652 @example |
651 (setq special-display-buffer-names | 653 (setq special-display-buffer-names |
662 | 664 |
663 @vindex special-display-regexps | 665 @vindex special-display-regexps |
664 More generally, you can set @code{special-display-regexps} to a list | 666 More generally, you can set @code{special-display-regexps} to a list |
665 of regular expressions; then a buffer gets its own frame if its name | 667 of regular expressions; then a buffer gets its own frame if its name |
666 matches any of those regular expressions. (Once again, this applies only | 668 matches any of those regular expressions. (Once again, this applies only |
667 to buffers that normally get displayed for you in a separate window.) | 669 to buffers that normally get displayed for you in ``another window.'') |
668 | 670 |
669 @vindex special-display-frame-alist | 671 @vindex special-display-frame-alist |
670 The variable @code{special-display-frame-alist} specifies the frame | 672 The variable @code{special-display-frame-alist} specifies the frame |
671 parameters for these frames. It has a default value, so you don't need | 673 parameters for these frames. It has a default value, so you don't need |
672 to set it. | 674 to set it. |
705 @node Frame Parameters | 707 @node Frame Parameters |
706 @section Setting Frame Parameters | 708 @section Setting Frame Parameters |
707 @cindex Auto-Raise mode | 709 @cindex Auto-Raise mode |
708 @cindex Auto-Lower mode | 710 @cindex Auto-Lower mode |
709 | 711 |
710 This section describes commands for altering the display style and | 712 @kindex S-Mouse-1 |
711 window management behavior of the selected frame. | 713 You can specify the font and colors used for text display, and the |
712 | 714 colors for the frame borders, the cursor, and the mouse cursor, by |
713 @findex set-foreground-color | 715 customizing the faces @code{default}, @code{border}, @code{cursor} and |
714 @findex set-background-color | 716 @code{mouse}. @xref{Face Customization}. You can also set a frame's |
715 @findex set-cursor-color | 717 default font through a pop-up menu. Press @kbd{S-Mouse-1} to activate |
716 @findex set-mouse-color | 718 this menu. |
717 @findex set-border-color | 719 |
720 These commands are available for controlling the window management | |
721 behavior of the selected frame. | |
722 | |
723 @table @kbd | |
718 @findex auto-raise-mode | 724 @findex auto-raise-mode |
719 @findex auto-lower-mode | |
720 @cindex colors | |
721 @table @kbd | |
722 @item M-x set-foreground-color @key{RET} @var{color} @key{RET} | |
723 Specify color @var{color} for the foreground of the selected frame. | |
724 (This also changes the foreground color of the default face.) You can | |
725 specify @var{color} either by its symbolic name or by its RGB | |
726 numerical specification@footnote{ | |
727 See the X Window System documentation for more details. On a typical | |
728 GNU or Unix system, the command @kbd{man 7 X} or @kbd{man -s 7 X} will | |
729 display the X manual page that explains how to specify colors.}. | |
730 | |
731 @item M-x set-background-color @key{RET} @var{color} @key{RET} | |
732 Specify color @var{color} for the background of the selected frame. | |
733 (This also changes the background color of the default face.) | |
734 | |
735 @item M-x set-cursor-color @key{RET} @var{color} @key{RET} | |
736 Specify color @var{color} for the cursor of the selected frame. | |
737 | |
738 @item M-x set-mouse-color @key{RET} @var{color} @key{RET} | |
739 Specify color @var{color} for the mouse cursor when it is over the | |
740 selected frame. | |
741 | |
742 @item M-x set-border-color @key{RET} @var{color} @key{RET} | |
743 Specify color @var{color} for the border of the selected frame. | |
744 | |
745 @item M-x list-colors-display | |
746 Display the defined color names and show what the colors look like. | |
747 This command is somewhat slow. @xref{Colors, list-colors-display, | |
748 Display available colors}. | |
749 | |
750 @item M-x auto-raise-mode | 725 @item M-x auto-raise-mode |
751 Toggle whether or not the selected frame should auto-raise. Auto-raise | 726 Toggle whether or not the selected frame should auto-raise. Auto-raise |
752 means that every time you move the mouse onto the frame, it raises the | 727 means that every time you move the mouse onto the frame, it raises the |
753 frame. | 728 frame. |
754 | 729 |
755 Note that this auto-raise feature is implemented by Emacs itself. Some | 730 Some window managers also implement auto-raise. If you enable |
756 window managers also implement auto-raise. If you enable auto-raise for | 731 auto-raise for Emacs frames in your window manager, it will work, but |
757 Emacs frames in your X window manager, it should work, but it is beyond | 732 it is beyond Emacs' control, so @code{auto-raise-mode} has no effect |
758 Emacs's control and therefore @code{auto-raise-mode} has no effect on | 733 on it. |
759 it. | 734 |
760 | 735 @findex auto-lower-mode |
761 @item M-x auto-lower-mode | 736 @item M-x auto-lower-mode |
762 Toggle whether or not the selected frame should auto-lower. | 737 Toggle whether or not the selected frame should auto-lower. |
763 Auto-lower means that every time you move the mouse off the frame, | 738 Auto-lower means that every time you move the mouse off the frame, |
764 the frame moves to the bottom of the stack of X windows. | 739 the frame moves to the bottom of the stack on the screen. |
765 | 740 |
766 The command @code{auto-lower-mode} has no effect on auto-lower | 741 The command @code{auto-lower-mode} has no effect on auto-lower |
767 implemented by the X window manager. To control that, you must use | 742 implemented by the window manager. To control that, you must use the |
768 the appropriate window manager features. | 743 appropriate window manager features. |
769 | |
770 @findex set-frame-font | |
771 @item M-x set-frame-font @key{RET} @var{font} @key{RET} | |
772 @cindex font (principal) | |
773 Specify font @var{font} as the principal font for the selected frame. | |
774 The principal font controls several face attributes of the | |
775 @code{default} face (@pxref{Faces}). For example, if the principal font | |
776 has a height of 12 pt, all text will be drawn in 12 pt fonts, unless you | |
777 use another face that specifies a different height. @xref{Font X}, for | |
778 ways to list the available fonts on your system. | |
779 | |
780 @kindex S-Mouse-1 | |
781 You can also set a frame's principal font through a pop-up menu. | |
782 Press @kbd{S-Mouse-1} to activate this menu. | |
783 @end table | 744 @end table |
784 | 745 |
785 In Emacs versions that use an X toolkit, the color-setting and | 746 In Emacs versions that use an X toolkit, the color-setting and |
786 font-setting functions don't affect menus and the menu bar, since they | 747 font-setting functions don't affect menus and the menu bar, since they |
787 are displayed by their own widget classes. To change the appearance of | 748 are displayed by their own widget classes. To change the appearance of |
798 @node Scroll Bars | 759 @node Scroll Bars |
799 @section Scroll Bars | 760 @section Scroll Bars |
800 @cindex Scroll Bar mode | 761 @cindex Scroll Bar mode |
801 @cindex mode, Scroll Bar | 762 @cindex mode, Scroll Bar |
802 | 763 |
803 When using X, Emacs normally makes a @dfn{scroll bar} at the left of | 764 On graphical displays, Emacs normally makes a @dfn{scroll bar} at |
804 each Emacs window.@footnote{Placing it at the left is usually more | 765 the left of each Emacs window.@footnote{Placing it at the left is |
805 useful with overlapping frames with text starting at the left margin.} | 766 usually more useful with overlapping frames with text starting at the |
806 The scroll bar runs the height of the window, and shows a moving | 767 left margin.} The scroll bar runs the height of the window, and shows |
807 rectangular inner box which represents the portion of the buffer | 768 a moving rectangular inner box which represents the portion of the |
808 currently displayed. The entire height of the scroll bar represents the | 769 buffer currently displayed. The entire height of the scroll bar |
809 entire length of the buffer. | 770 represents the entire length of the buffer. |
810 | 771 |
811 You can use @kbd{Mouse-2} (normally, the middle button) in the scroll | 772 You can use @kbd{Mouse-2} (normally, the middle button) in the scroll |
812 bar to move or drag the inner box up and down. If you move it to the | 773 bar to move or drag the inner box up and down. If you move it to the |
813 top of the scroll bar, you see the top of the buffer. If you move it to | 774 top of the scroll bar, you see the top of the buffer. If you move it to |
814 the bottom of the scroll bar, you see the bottom of the buffer. | 775 the bottom of the scroll bar, you see the bottom of the buffer. |
824 window vertically. The split occurs on the line where you click. | 785 window vertically. The split occurs on the line where you click. |
825 | 786 |
826 @findex scroll-bar-mode | 787 @findex scroll-bar-mode |
827 @vindex scroll-bar-mode | 788 @vindex scroll-bar-mode |
828 You can enable or disable Scroll Bar mode with the command @kbd{M-x | 789 You can enable or disable Scroll Bar mode with the command @kbd{M-x |
829 scroll-bar-mode}. With no argument, it toggles the use of scroll bars. | 790 scroll-bar-mode}. With no argument, it toggles the use of scroll |
830 With an argument, it turns use of scroll bars on if and only if the | 791 bars. With an argument, it turns use of scroll bars on if and only if |
831 argument is positive. This command applies to all frames, including | 792 the argument is positive. This command applies to all frames, |
832 frames yet to be created. Customize the variable @code{scroll-bar-mode} | 793 including frames yet to be created. Customize the variable |
833 to control the use of scroll bars at startup. You can use it to specify | 794 @code{scroll-bar-mode} to control the use of scroll bars at startup. |
834 that they are placed at the right of windows if you prefer that. You | 795 You can use it to specify that they are placed at the right of windows |
835 have to set this variable through the @samp{Customize} interface | 796 if you prefer that. You have to set this variable through the |
836 (@pxref{Easy Customization}). Otherwise, it will not work properly. | 797 @samp{Customize} interface (@pxref{Easy Customization}), or it will |
837 You can use the X resource @samp{verticalScrollBars} to control the | 798 not work properly. |
838 initial setting of Scroll Bar mode similarly. @xref{Resources}. | 799 |
800 You can also use the X resource @samp{verticalScrollBars} to control | |
801 the initial setting of Scroll Bar mode. @xref{Resources}. | |
839 | 802 |
840 @findex toggle-scroll-bar | 803 @findex toggle-scroll-bar |
841 To enable or disable scroll bars for just the selected frame, use the | 804 To enable or disable scroll bars for just the selected frame, use the |
842 command @kbd{M-x toggle-scroll-bar}. | 805 command @kbd{M-x toggle-scroll-bar}. |
843 | 806 |
885 @vindex dnd-open-file-other-window | 848 @vindex dnd-open-file-other-window |
886 Dropping a file normally visits it in the window you drop it on. If | 849 Dropping a file normally visits it in the window you drop it on. If |
887 you prefer to visit the file in a new window in such cases, customize | 850 you prefer to visit the file in a new window in such cases, customize |
888 the variable @code{dnd-open-file-other-window}. | 851 the variable @code{dnd-open-file-other-window}. |
889 | 852 |
890 @ignore | 853 The XDND and Motif drag and drop protocols, and the old KDE 1.x |
891 @c ??? To Lisp manual | 854 protocol, are currently supported. |
892 @vindex x-dnd-test-function | |
893 @vindex x-dnd-known-types | |
894 When a user drags something from another application over Emacs, that other | |
895 application expects Emacs to tell it if Emacs can handle the data that is | |
896 dragged. The variable @code{x-dnd-test-function} is used by Emacs to determine | |
897 what to reply. The default value is @code{x-dnd-default-test-function} | |
898 which accepts drops if the type of the data to be dropped is present in | |
899 @code{x-dnd-known-types}. You can customize @code{x-dnd-test-function} and/or | |
900 @code{x-dnd-known-types} if you want Emacs to accept or reject drops based | |
901 on some other criteria. | |
902 | |
903 @vindex x-dnd-types-alist | |
904 If you want to change the way Emacs handles drop of different types | |
905 or add a new type, customize @code{x-dnd-types-alist}. This requires | |
906 detailed knowledge of what types other applications use for drag and | |
907 drop. | |
908 | |
909 @vindex dnd-protocol-alist | |
910 When an URL is dropped on Emacs it may be a file, but it may also be | |
911 another URL type (ftp, http, etc.). Emacs first checks | |
912 @code{dnd-protocol-alist} to determine what to do with the URL. If | |
913 there is no match there and if @code{browse-url-browser-function} is | |
914 an alist, Emacs looks for a match there. If no match is found the | |
915 text for the URL is inserted. If you want to alter Emacs behavior, | |
916 you can customize these variables. | |
917 @end ignore | |
918 | |
919 The drag and drop protocols XDND, Motif and the | |
920 old KDE 1.x protocol are currently supported. | |
921 | 855 |
922 @node Menu Bars | 856 @node Menu Bars |
923 @section Menu Bars | 857 @section Menu Bars |
924 @cindex Menu Bar mode | 858 @cindex Menu Bar mode |
925 @cindex mode, Menu Bar | 859 @cindex mode, Menu Bar |
939 with @kbd{C-Mouse-3} on a display which supports pop-up menus. | 873 with @kbd{C-Mouse-3} on a display which supports pop-up menus. |
940 @xref{Menu Mouse Clicks}. | 874 @xref{Menu Mouse Clicks}. |
941 | 875 |
942 @xref{Menu Bar}, for information on how to invoke commands with the | 876 @xref{Menu Bar}, for information on how to invoke commands with the |
943 menu bar. @xref{X Resources}, for how to customize the menu bar | 877 menu bar. @xref{X Resources}, for how to customize the menu bar |
944 menus. | 878 menus' visual appearance. |
945 | 879 |
946 @node Tool Bars | 880 @node Tool Bars |
947 @section Tool Bars | 881 @section Tool Bars |
948 @cindex Tool Bar mode | 882 @cindex Tool Bar mode |
949 @cindex mode, Tool Bar | 883 @cindex mode, Tool Bar |
978 You can customize the variable @code{use-dialog-box} to suppress the | 912 You can customize the variable @code{use-dialog-box} to suppress the |
979 use of dialog boxes. This also controls whether to use file selection | 913 use of dialog boxes. This also controls whether to use file selection |
980 windows (but those are not supported on all platforms). | 914 windows (but those are not supported on all platforms). |
981 | 915 |
982 @vindex use-file-dialog | 916 @vindex use-file-dialog |
983 A file selection window is a special kind of dialog box for asking for | 917 A file selection window is a special kind of dialog box for asking |
984 file names. | 918 for file names. You can customize the variable @code{use-file-dialog} |
985 | 919 to suppress the use of file selection windows, even if you still want |
986 You can customize the variable @code{use-file-dialog} to suppress the | 920 other kinds of dialogs. This variable has no effect if you have |
987 use of file selection windows even if you still want other kinds | 921 suppressed all dialog boxes with the variable @code{use-dialog-box}. |
988 of dialogs. This variable has no effect if you have suppressed all dialog | 922 |
989 boxes with the variable @code{use-dialog-box}. | 923 @vindex x-gtk-show-hidden-files |
924 For Gtk+ version 2.4 and newer, Emacs use the Gtk+ file chooser | |
925 dialog. Emacs adds a toggle button that enables and disables showing | |
926 of hidden files (files starting with a dot) in that dialog. The | |
927 variable @code{x-gtk-show-hidden-files} controls whether to show | |
928 hidden files by default. | |
990 | 929 |
991 @vindex x-use-old-gtk-file-dialog | 930 @vindex x-use-old-gtk-file-dialog |
992 For Gtk+ version 2.4 and 2.6, you can make Emacs use the old file dialog | 931 For Gtk+ version 2.4 and 2.6, you can make Emacs use the old file dialog |
993 by setting the variable @code{x-use-old-gtk-file-dialog} to a non-@code{nil} | 932 by setting the variable @code{x-use-old-gtk-file-dialog} to a non-@code{nil} |
994 value. If Emacs is built with a Gtk+ version that has only one file dialog, | 933 value. If Emacs is built with a Gtk+ version that has only one file dialog, |
995 the setting of this variable has no effect. | 934 the setting of this variable has no effect. |
996 | 935 |
997 @vindex x-gtk-show-hidden-files | |
998 For Gtk+ version 2.4 and newer, Emacs use the Gtk+ file chooser dialog. | |
999 Emacs adds a toggle button that enables and disables showing of hidden files | |
1000 (files starting with a dot) in that dialog. This variable controls if | |
1001 hidden files should be shown by default or not. | |
1002 | |
1003 @node Tooltips | 936 @node Tooltips |
1004 @section Tooltips | 937 @section Tooltips |
1005 @cindex tooltips | 938 @cindex tooltips |
1006 | 939 |
1007 @dfn{Tooltips} are small windows that display text information at the | 940 @dfn{Tooltips} are small windows that display text information at the |
1008 current mouse position. They activate when there is a pause in mouse | 941 current mouse position. They activate when there is a pause in mouse |
1009 movement. There are two types of tooltip: help tooltips and GUD | 942 movement. There are two types of tooltip: help tooltips and GUD |
1010 tooltips. | 943 tooltips. |
1011 | 944 |
1012 @dfn{Help tooltips} typically display over text---including the mode | 945 @dfn{Help tooltips} typically display over text---including the mode |
1013 line---but may be also available for many other parts of the Emacs | 946 line---but are also available for other parts of the Emacs frame, such |
1014 frame such as the tool bar and menu items. | 947 as the tool bar and menu items. |
1015 | 948 |
1016 @findex tooltip-mode | 949 @findex tooltip-mode |
1017 You can toggle help tooltips (Tooltip mode) with the command | 950 You can toggle display of help tooltips (Tooltip mode) with the |
1018 @kbd{M-x tooltip-mode}. When Tooltip mode is disabled, the help text | 951 command @kbd{M-x tooltip-mode}. When Tooltip mode is disabled, the |
1019 is displayed in the echo area instead. | 952 help text is displayed in the echo area instead. |
1020 | 953 |
1021 @dfn{GUD tooltips} show values of variables. They are useful when | 954 @dfn{GUD tooltips} show values of variables. They are useful when |
1022 you are debugging a program. @xref{Debugger Operation}. | 955 you are debugging a program. @xref{Debugger Operation}. |
1023 | 956 |
1024 @vindex tooltip-delay | 957 @vindex tooltip-delay |
1064 @node Non-Window Terminals | 997 @node Non-Window Terminals |
1065 @section Non-Window Terminals | 998 @section Non-Window Terminals |
1066 @cindex non-window terminals | 999 @cindex non-window terminals |
1067 @cindex single-frame terminals | 1000 @cindex single-frame terminals |
1068 | 1001 |
1069 If your terminal does not have a window system that Emacs supports, | 1002 On a text-only terminal, Emacs can display only one Emacs frame at a |
1070 then it can display only one Emacs frame at a time. However, you can | 1003 time. However, you can still create multiple Emacs frames, and switch |
1071 still create multiple Emacs frames, and switch between them. Switching | 1004 between them. Switching frames on these terminals is much like |
1072 frames on these terminals is much like switching between different | 1005 switching between different window configurations. |
1073 window configurations. | |
1074 | 1006 |
1075 Use @kbd{C-x 5 2} to create a new frame and switch to it; use @kbd{C-x | 1007 Use @kbd{C-x 5 2} to create a new frame and switch to it; use @kbd{C-x |
1076 5 o} to cycle through the existing frames; use @kbd{C-x 5 0} to delete | 1008 5 o} to cycle through the existing frames; use @kbd{C-x 5 0} to delete |
1077 the current frame. | 1009 the current frame. |
1078 | 1010 |
1081 appears near the beginning of the mode line, in the form | 1013 appears near the beginning of the mode line, in the form |
1082 @samp{F@var{n}}. | 1014 @samp{F@var{n}}. |
1083 | 1015 |
1084 @findex set-frame-name | 1016 @findex set-frame-name |
1085 @findex select-frame-by-name | 1017 @findex select-frame-by-name |
1086 @samp{F@var{n}} is actually the frame's name. You can also specify a | 1018 @samp{F@var{n}} is in fact the frame's initial name. You can give |
1087 different name if you wish, and you can select a frame by its name. Use | 1019 frames more meaningful names if you wish, and you can select a frame |
1088 the command @kbd{M-x set-frame-name @key{RET} @var{name} @key{RET}} to | 1020 by its name. Use the command @kbd{M-x set-frame-name @key{RET} |
1089 specify a new name for the selected frame, and use @kbd{M-x | 1021 @var{name} @key{RET}} to specify a new name for the selected frame, |
1090 select-frame-by-name @key{RET} @var{name} @key{RET}} to select a frame | 1022 and use @kbd{M-x select-frame-by-name @key{RET} @var{name} @key{RET}} |
1091 according to its name. The name you specify appears in the mode line | 1023 to select a frame according to its name. The name you specify appears |
1092 when the frame is selected. | 1024 in the mode line when the frame is selected. |
1093 | 1025 |
1094 @node XTerm Mouse | 1026 @node XTerm Mouse |
1095 @section Using a Mouse in Terminal Emulators | 1027 @section Using a Mouse in Terminal Emulators |
1096 @cindex xterm, mouse support | 1028 @cindex xterm, mouse support |
1097 @cindex terminal emulators, mouse support | 1029 @cindex terminal emulators, mouse support |
1098 | 1030 |
1099 Some terminal emulators under X support mouse clicks in the terminal | 1031 Some terminal emulators under X support mouse clicks in the terminal |
1100 window. In a terminal emulator which is compatible with @code{xterm}, | 1032 window. In a terminal emulator which is compatible with @code{xterm}, |
1101 you can use @kbd{M-x xterm-mouse-mode} to give Emacs control over | 1033 you can use @kbd{M-x xterm-mouse-mode} to give Emacs control over |
1102 simple use of the mouse---basically, only non-modified single clicks | 1034 simple use of the mouse---basically, only non-modified single clicks |
1103 are supported. The normal @code{xterm} mouse functionality for such | 1035 are supported. The normal @code{xterm} mouse functionality for such |
1104 clicks is still available by holding down the @kbd{SHIFT} key when you | 1036 clicks is still available by holding down the @kbd{SHIFT} key when you |