# HG changeset patch # User Glenn Morris # Date 1189053605 0 # Node ID 90c522bcea4498d245185696e32e20d17ebb8bce # Parent 0300b27abba26166c6fd586bffdabad1f0be0970 Move to ../doc/emacs/, misc/ diff -r 0300b27abba2 -r 90c522bcea44 man/screen.texi --- a/man/screen.texi Thu Sep 06 04:39:59 2007 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,359 +0,0 @@ -@c This is part of the Emacs manual. -@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002, -@c 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. -@c See file emacs.texi for copying conditions. -@node Screen, User Input, Acknowledgments, Top -@chapter The Organization of the Screen -@cindex screen -@cindex parts of the screen - - On a text-only terminal, the Emacs display occupies the whole -screen. On a graphical display, such as on GNU/Linux using the X -Window System, Emacs creates its own windows to use. We use the term -@dfn{frame} to mean the entire text-only screen or an entire -system-level window used by Emacs. Emacs uses both kinds of frames, -in the same way, to display your editing. Emacs normally starts out -with just one frame, but you can create additional frames if you wish. -@xref{Frames}. - - When you start Emacs, the main central area of the frame, all except -for the top and bottom and sides, displays the text you are editing. -This area is called @dfn{the window}. At the top there is normally a -@dfn{menu bar} where you can access a series of menus; then there may -be a @dfn{tool bar}, a row of icons that perform editing commands if -you click on them. Below this, the window begins, often with a -@dfn{scroll bar} on one side. Below the window comes the last line of -the frame, a special @dfn{echo area} or @dfn{minibuffer window}, where -prompts appear and you enter information when Emacs asks for it. See -following sections for more information about these special lines. - - You can subdivide the window horizontally or vertically to make -multiple text windows, each of which can independently display some -file or text (@pxref{Windows}). In this manual, the word ``window'' -refers to the initial large window if not subdivided, or any one of -the multiple windows you have subdivided it into. - - At any time, one window is the @dfn{selected window}. On graphical -displays, the selected window normally shows a more prominent cursor -(usually solid and blinking) while other windows show a weaker cursor -(such as a hollow box). Text terminals have just one cursor, so it -always appears in the selected window. - - Most Emacs commands implicitly apply to the text in the selected -window; the text in unselected windows is mostly visible for -reference. However, mouse commands generally operate on whatever -window you click them in, whether selected or not. If you use -multiple frames on a graphical display, then giving the input focus to -a particular frame selects a window in that frame. - - Each window's last line is a @dfn{mode line}, which describes what -is going on in that window. It appears in different color and/or a ``3D'' -box if the terminal supports them; its contents normally begin with -@w{@samp{--:-- @ *scratch*}} when Emacs starts. The mode line -displays status information such as what buffer is being displayed -above it in the window, what major and minor modes are in use, and -whether the buffer contains unsaved changes. - -@menu -* Point:: The place in the text where editing commands operate. -* Echo Area:: Short messages appear at the bottom of the screen. -* Mode Line:: Interpreting the mode line. -* Menu Bar:: How to use the menu bar. -@end menu - -@node Point -@section Point -@cindex point -@cindex cursor - - Within Emacs, the active cursor shows the location at which -editing commands will take effect. This location is called @dfn{point}. -Many Emacs commands move point through the text, so that you can edit at -different places in it. You can also place point by clicking mouse -button 1 (normally the left button). - - While the cursor appears to be @emph{on} a character, you should -think of point as @emph{between} two characters; it points @emph{before} -the character that appears under the cursor. For example, if your text -looks like @samp{frob} with the cursor over the @samp{b}, then point is -between the @samp{o} and the @samp{b}. If you insert the character -@samp{!} at that position, the result is @samp{fro!b}, with point -between the @samp{!} and the @samp{b}. Thus, the cursor remains over -the @samp{b}, as before. - - Sometimes people speak of ``the cursor'' when they mean ``point,'' or -speak of commands that move point as ``cursor motion'' commands. - - If you are editing several files in Emacs, each in its own buffer, -each buffer has its own point location. A buffer that is not -currently displayed remembers its point location in case you display -it again later. When Emacs displays multiple windows, each window has -its own point location. If the same buffer appears in more than one -window, each window has its own point position in that buffer, and (when -possible) its own cursor. - - A text-only terminal has just one cursor, in the selected window. -The other windows do not show a cursor, even though they do have their -own position of point. When Emacs updates the screen on a text-only -terminal, it has to put the cursor temporarily at the place the output -goes. This doesn't mean point is there, though. Once display -updating finishes, Emacs puts the cursor where point is. - - On graphical displays, Emacs shows a cursor in each window; the -selected window's cursor is solid and blinking, and the other cursors -are just hollow. Thus, the most prominent cursor always shows you the -selected window, on all kinds of terminals. - - @xref{Cursor Display}, for customizable variables that control display -of the cursor or cursors. - - The term ``point'' comes from the character @samp{.}, which was the -command in TECO (the language in which the original Emacs was written) -for accessing the value now called ``point.'' - -@node Echo Area -@section The Echo Area -@cindex echo area - - The line at the bottom of the frame (below the mode line) is the -@dfn{echo area}. It is used to display small amounts of text for -various purposes. - - @dfn{Echoing} means displaying the characters that you type. At the -command line, the operating system normally echoes all your input. -Emacs handles echoing differently. - - Single-character commands do not echo in Emacs, and multi-character -commands echo only if you pause while typing them. As soon as you pause -for more than a second in the middle of a command, Emacs echoes all the -characters of the command so far. This is to @dfn{prompt} you for the -rest of the command. Once echoing has started, the rest of the command -echoes immediately as you type it. This behavior is designed to give -confident users fast response, while giving hesitant users maximum -feedback. You can change this behavior by setting a variable -(@pxref{Display Custom}). - -@cindex error message in the echo area - If a command cannot do its job, it may display an @dfn{error -message} in the echo area. Error messages are accompanied by beeping -or by flashing the screen. The error also discards any input you have -typed ahead. - - Some commands display informative messages in the echo area. These -messages look much like error messages, but they are not announced -with a beep and do not throw away input. Sometimes the message tells -you what the command has done, when this is not obvious from looking -at the text being edited. Sometimes the sole purpose of a command is -to show you a message giving you specific information---for example, -@kbd{C-x =} (hold down @key{CTRL} and type @kbd{x}, then let go of -@key{CTRL} and type @kbd{=}) displays a message describing the -character position of point in the text and its current column in the -window. Commands that take a long time often display messages ending -in @samp{...} while they are working, and add @samp{done} at the end -when they are finished. They may also indicate progress with -percentages. - -@cindex @samp{*Messages*} buffer -@cindex saved echo area messages -@cindex messages saved from echo area - Echo-area informative messages are saved in an editor buffer named -@samp{*Messages*}. (We have not explained buffers yet; see -@ref{Buffers}, for more information about them.) If you miss a message -that appears briefly on the screen, you can switch to the -@samp{*Messages*} buffer to see it again. (Successive progress messages -are often collapsed into one in that buffer.) - -@vindex message-log-max - The size of @samp{*Messages*} is limited to a certain number of -lines. The variable @code{message-log-max} specifies how many lines. -Once the buffer has that many lines, adding lines at the end deletes lines -from the beginning, to keep the size constant. @xref{Variables}, for -how to set variables such as @code{message-log-max}. - - The echo area is also used to display the @dfn{minibuffer}, a window -where you can input arguments to commands, such as the name of a file -to be edited. When the minibuffer is in use, the echo area begins -with a prompt string that usually ends with a colon; also, the cursor -appears in that line because it is the selected window. You can -always get out of the minibuffer by typing @kbd{C-g}. -@xref{Minibuffer}. - -@node Mode Line -@section The Mode Line -@cindex mode line -@cindex top level -@c - - Each text window's last line is a @dfn{mode line}, which describes -what is going on in that window. The mode line starts and ends with -dashes. When there is only one text window, the mode line appears -right above the echo area; it is the next-to-last line in the frame. -On a text-only terminal, the mode line is in inverse video if the -terminal supports that; on a graphics display, the mode line has a 3D -box appearance to help it stand out. The mode line of the selected -window is highlighted if possible; see @ref{Optional Mode Line}, for -more information. - - Normally, the mode line looks like this: - -@example --@var{cs}:@var{ch}@var{R}-@var{fr} @var{buf} @var{pos} @var{line} (@var{major} @var{minor})------ -@end example - -@noindent -This gives information about the window and the buffer it displays: the -buffer's name, what major and minor modes are in use, whether the -buffer's text has been changed, and how far down the buffer you are -currently looking. - - @var{ch} contains two stars @samp{**} if the text in the buffer has -been edited (the buffer is ``modified''), or @samp{--} if the buffer has -not been edited. For a read-only buffer, it is @samp{%*} if the buffer -is modified, and @samp{%%} otherwise. - - @var{R} is @samp{@@} if the default-directory for the current buffer -is on a remote machine, or a hyphen otherwise. - - @var{fr} gives the selected frame name (@pxref{Frames}). It appears -only on text-only terminals. The initial frame's name is @samp{F1}. - - @var{buf} is the name of the window's @dfn{buffer}. Usually this is -the same as the name of a file you are editing. @xref{Buffers}. - - The buffer displayed in the selected window (the window with the -cursor) is the @dfn{current buffer}, where editing happens. When a -command's effect applies to ``the buffer,'' we mean it does those -things to the current buffer. - - @var{pos} tells you whether there is additional text above the top of -the window, or below the bottom. If your buffer is small and it is all -visible in the window, @var{pos} is @samp{All}. Otherwise, it is -@samp{Top} if you are looking at the beginning of the buffer, @samp{Bot} -if you are looking at the end of the buffer, or @samp{@var{nn}%}, where -@var{nn} is the percentage of the buffer above the top of the window. -With Size Indication mode, you can display the size of the buffer as -well. @xref{Optional Mode Line}. - - @var{line} is @samp{L} followed by the current line number of point. -This is present when Line Number mode is enabled (it normally is). -You can display the current column number too, by turning on Column -Number mode. It is not enabled by default because it is somewhat -slower. @xref{Optional Mode Line}. - - @var{major} is the name of the @dfn{major mode} in effect in the -buffer. A buffer can only be in one major mode at a time. The major -modes available include Fundamental mode (the least specialized), Text -mode, Lisp mode, C mode, Texinfo mode, and many others. @xref{Major -Modes}, for details of how the modes differ and how to select -them. - - Some major modes display additional information after the major mode -name. For example, Rmail buffers display the current message number and -the total number of messages. Compilation buffers and Shell buffers -display the status of the subprocess. - - @var{minor} is a list of some of the @dfn{minor modes} that are -turned on at the moment in the window's chosen buffer. For example, -@samp{Fill} means that Auto Fill mode is on. @samp{Abbrev} means that -Word Abbrev mode is on. @samp{Ovwrt} means that Overwrite mode is on. -@xref{Minor Modes}, for more information. - - @samp{Narrow} means that the buffer being displayed has editing -restricted to only a portion of its text. (This is not really a minor -mode, but is like one.) @xref{Narrowing}. @samp{Def} means that a -keyboard macro is being defined. @xref{Keyboard Macros}. - - In addition, if Emacs is inside a recursive editing level, square -brackets (@samp{[@dots{}]}) appear around the parentheses that -surround the modes. If Emacs is in one recursive editing level within -another, double square brackets appear, and so on. Since recursive -editing levels affect Emacs globally, not just one buffer, the square -brackets appear in every window's mode line or not in any of them. -@xref{Recursive Edit}.@refill - - @var{cs} states the coding system used for the file you are editing. -A dash indicates the default state of affairs: no code conversion, -except for end-of-line translation if the file contents call for that. -@samp{=} means no conversion whatsoever. Nontrivial code conversions -are represented by various letters---for example, @samp{1} refers to ISO -Latin-1. @xref{Coding Systems}, for more information. - - On a text-only terminal, @var{cs} includes two additional characters -which describe the coding system for keyboard input and the coding -system for terminal output. They come right before the coding system -used for the file you are editing. - - If you are using an input method, a string of the form -@samp{@var{i}>} is added to the beginning of @var{cs}; @var{i} -identifies the input method. (Some input methods show @samp{+} or -@samp{@@} instead of @samp{>}.) @xref{Input Methods}. - - When multibyte characters are not enabled, @var{cs} does not appear at -all. @xref{Enabling Multibyte}. - -@cindex end-of-line conversion, mode-line indication - The colon after @var{cs} changes to another string in some cases. -Emacs uses newline characters to separate lines in the buffer. Some -files use different conventions for separating lines: either -carriage-return linefeed (the MS-DOS convention) or just -carriage-return (the Macintosh convention). If the buffer's file uses -carriage-return linefeed, the colon changes to either a backslash -(@samp{\}) or @samp{(DOS)}, depending on the operating system. If the -file uses just carriage-return, the colon indicator changes to either -a forward slash (@samp{/}) or @samp{(Mac)}. On some systems, Emacs -displays @samp{(Unix)} instead of the colon for files that use newline -as the line separator. - - @xref{Optional Mode Line}, to add other handy information to the -mode line, such as the size of the buffer, the current column number -of point, and whether new mail for you has arrived. - - The mode line is mouse-sensitive; when you move the mouse across -various parts of it, Emacs displays help text to say what a click in -that place will do. @xref{Mode Line Mouse}. - -@node Menu Bar -@section The Menu Bar -@cindex menu bar - - Each Emacs frame normally has a @dfn{menu bar} at the top which you -can use to perform common operations. There's no need to list them -here, as you can more easily see them yourself. - -@kindex M-` -@kindex F10 -@findex tmm-menubar -@findex menu-bar-open - On a graphical display, you can use the mouse to choose a command -from the menu bar. A right-arrow at the end of the menu item means it -leads to a subsidiary menu; @samp{...} at the end means that the -command invoked will read arguments (further input from you) before it -actually does anything. - - You can also invoke the first menu bar item by pressing @key{F10} (to run -the command @code{menu-bar-open}). You can then navigate the menus with -the arrow keys. You select an item by pressing @key{RET} and cancel menu -navigation with @key{ESC}. - - To view the full command name and documentation for a menu item, type -@kbd{C-h k}, and then select the menu bar with the mouse in the usual -way (@pxref{Key Help}). - - On text-only terminals with no mouse, you can use the menu bar by -typing @kbd{M-`} or @key{F10} (these run the command -@code{tmm-menubar}). This lets you select a menu item with the -keyboard. A provisional choice appears in the echo area. You can use -the up and down arrow keys to move through the menu to different -items, and then you can type @key{RET} to select the item. - - Each menu item also has an assigned letter or digit which designates -that item; it is usually the initial of some word in the item's name. -This letter or digit is separated from the item name by @samp{=>}. You -can type the item's letter or digit to select the item. - - Some of the commands in the menu bar have ordinary key bindings as -well; one such binding is shown in parentheses after the item itself. - -@ignore - arch-tag: 104ba40e-d972-4866-a542-a98be94bdf2f -@end ignore