Commit | Line | Data |
---|---|---|
6bf7aab6 | 1 | @c This is part of the Emacs manual. |
b65d8176 | 2 | @c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002, |
8d99e09d | 3 | @c 2003, 2004, 2005, 2006 Free Software Foundation, Inc. |
6bf7aab6 DL |
4 | @c See file emacs.texi for copying conditions. |
5 | @node Mark, Killing, Help, Top | |
6 | @chapter The Mark and the Region | |
7 | @cindex mark | |
8 | @cindex setting a mark | |
9 | @cindex region | |
10 | ||
11 | Many Emacs commands operate on an arbitrary contiguous part of the | |
12 | current buffer. To specify the text for such a command to operate on, | |
13 | you set @dfn{the mark} at one end of it, and move point to the other | |
14 | end. The text between point and the mark is called @dfn{the region}. | |
15 | Emacs highlights the region whenever there is one, if you enable | |
16 | Transient Mark mode (@pxref{Transient Mark}). | |
17 | ||
401aa479 RS |
18 | Certain Emacs commands set the mark; other editing commands do not |
19 | affect it, so the mark remains where you set it last. Each Emacs | |
20 | buffer has its own mark, and setting the mark in one buffer has no | |
a9749dab RS |
21 | effect on other buffers' marks. When you return to a buffer that was |
22 | current earlier, its mark is at the same place as before. | |
401aa479 RS |
23 | |
24 | The ends of the region are always point and the mark. It doesn't | |
25 | matter which of them was put in its current place first, or which one | |
26 | comes earlier in the text---the region starts from point or the mark | |
27 | (whichever comes first), and ends at point or the mark (whichever | |
28 | comes last). Every time you move point, or set the mark in a new | |
29 | place, the region changes. | |
6bf7aab6 DL |
30 | |
31 | Many commands that insert text, such as @kbd{C-y} (@code{yank}) and | |
401aa479 RS |
32 | @kbd{M-x insert-buffer}, position point and the mark at opposite ends |
33 | of the inserted text, so that the region consists of the text just | |
34 | inserted. | |
6bf7aab6 DL |
35 | |
36 | Aside from delimiting the region, the mark is also useful for | |
37 | remembering a spot that you may want to go back to. To make this | |
38 | feature more useful, each buffer remembers 16 previous locations of the | |
39 | mark in the @dfn{mark ring}. | |
40 | ||
41 | @menu | |
42 | * Setting Mark:: Commands to set the mark. | |
43 | * Transient Mark:: How to make Emacs highlight the region-- | |
44 | when there is one. | |
37281adb | 45 | * Momentary Mark:: Enabling Transient Mark mode momentarily. |
6bf7aab6 DL |
46 | * Using Region:: Summary of ways to operate on contents of the region. |
47 | * Marking Objects:: Commands to put region around textual units. | |
48 | * Mark Ring:: Previous mark positions saved so you can go back there. | |
49 | * Global Mark Ring:: Previous mark positions in various buffers. | |
50 | @end menu | |
51 | ||
52 | @node Setting Mark | |
53 | @section Setting the Mark | |
54 | ||
55 | Here are some commands for setting the mark: | |
56 | ||
6bf7aab6 DL |
57 | @table @kbd |
58 | @item C-@key{SPC} | |
59 | Set the mark where point is (@code{set-mark-command}). | |
60 | @item C-@@ | |
61 | The same. | |
62 | @item C-x C-x | |
63 | Interchange mark and point (@code{exchange-point-and-mark}). | |
64 | @item Drag-Mouse-1 | |
65 | Set point and the mark around the text you drag across. | |
66 | @item Mouse-3 | |
67 | Set the mark where point is, then move point to where you click | |
68 | (@code{mouse-save-then-kill}). | |
69 | @end table | |
70 | ||
71 | For example, suppose you wish to convert part of the buffer to | |
72 | upper case, using the @kbd{C-x C-u} (@code{upcase-region}) command, | |
73 | which operates on the text in the region. You can first go to the | |
74 | beginning of the text to be capitalized, type @kbd{C-@key{SPC}} to put | |
75 | the mark there, move to the end, and then type @kbd{C-x C-u}. Or, you | |
76 | can set the mark at the end of the text, move to the beginning, and then | |
77 | type @kbd{C-x C-u}. | |
78 | ||
79 | @kindex C-SPC | |
80 | @findex set-mark-command | |
81 | The most common way to set the mark is with the @kbd{C-@key{SPC}} command | |
82 | (@code{set-mark-command}). This sets the mark where point is. Then you | |
83 | can move point away, leaving the mark behind. | |
84 | ||
85 | There are two ways to set the mark with the mouse. You can drag mouse | |
86 | button one across a range of text; that puts point where you release the | |
87 | mouse button, and sets the mark at the other end of that range. Or you | |
88 | can click mouse button three, which sets the mark at point (like | |
87c190c7 | 89 | @kbd{C-@key{SPC}}) and then moves point where you clicked (like |
7125ef59 RS |
90 | @kbd{Mouse-1}). |
91 | ||
92 | Using the mouse to mark a region copies the region into the kill | |
87c190c7 | 93 | ring in addition to setting the mark; that gives behavior consistent |
7125ef59 | 94 | with other window-driven applications. If you don't want to modify |
87c190c7 RS |
95 | the kill ring, you must use keyboard commands to set the mark. |
96 | @xref{Mouse Commands}. | |
6bf7aab6 DL |
97 | |
98 | @kindex C-x C-x | |
99 | @findex exchange-point-and-mark | |
87c190c7 RS |
100 | When Emacs was developed, terminals had only one cursor, so Emacs |
101 | does not show where the mark is located--you have to remember. If you | |
102 | enable Transient Mark mode (see below), then the region is highlighted | |
103 | when it is active; you can tell mark is at the other end of the | |
104 | highlighted region. But this only applies when the mark is active. | |
105 | ||
106 | The usual solution to this problem is to set the mark and then use | |
107 | it soon, before you forget where it is. Alternatively, you can see | |
108 | where the mark is with the command @kbd{C-x C-x} | |
109 | (@code{exchange-point-and-mark}) which puts the mark where point was | |
110 | and point where the mark was. The extent of the region is unchanged, | |
111 | but the cursor and point are now at the previous position of the mark. | |
112 | In Transient Mark mode, this command also reactivates the mark. | |
6bf7aab6 DL |
113 | |
114 | @kbd{C-x C-x} is also useful when you are satisfied with the position | |
115 | of point but want to move the other end of the region (where the mark | |
116 | is); do @kbd{C-x C-x} to put point at that end of the region, and then | |
58fa012d | 117 | move it. Using @kbd{C-x C-x} a second time, if necessary, puts the mark at |
6bf7aab6 DL |
118 | the new position with point back at its original position. |
119 | ||
3508c523 EZ |
120 | For more facilities that allow you to go to previously set marks, see |
121 | @ref{Mark Ring}. | |
122 | ||
6bf7aab6 | 123 | @kindex C-@@ |
87c190c7 RS |
124 | There is no such character as @kbd{C-@key{SPC}} in @acronym{ASCII}; |
125 | when you type @key{SPC} while holding down @key{CTRL} on a text | |
126 | terminal, what you get is the character @kbd{C-@@}. This key is also | |
127 | bound to @code{set-mark-command}--so unless you are unlucky enough to | |
128 | have a text terminal where typing @kbd{C-@key{SPC}} does not produce | |
6bf7aab6 | 129 | @kbd{C-@@}, you might as well think of this character as |
87c190c7 | 130 | @kbd{C-@key{SPC}}. |
6bf7aab6 DL |
131 | |
132 | @node Transient Mark | |
133 | @section Transient Mark Mode | |
134 | @cindex mode, Transient Mark | |
135 | @cindex Transient Mark mode | |
136 | @cindex highlighting region | |
137 | @cindex region highlighting | |
138 | ||
37281adb RS |
139 | On a terminal that supports colors, Emacs has the ability to |
140 | highlight the current region. But normally it does not. Why not? | |
141 | ||
464dfe8f RS |
142 | In the normal mode of use, every command that sets the mark also |
143 | activates it, and nothing ever deactivates it. Thus, once you have | |
144 | set the mark in a buffer, there is @emph{always} a region in that | |
145 | buffer. Highlighting the region all the time would be a nuisance. So | |
146 | normally Emacs highlights the region only immediately after you have | |
147 | selected one with the mouse. | |
37281adb RS |
148 | |
149 | If you want region highlighting, you can use Transient Mark mode. | |
464dfe8f RS |
150 | This is a more rigid mode of operation in which the region ``lasts'' |
151 | only until you use it; operating on the region text deactivates the | |
152 | mark, so there is no region any more. Therefore, you must explicitly | |
153 | set up a region for each command that uses one. | |
154 | ||
155 | When Transient Mark mode is enabled, Emacs highlights the region, | |
156 | whenever there is a region. In Transient Mark mode, most of the time | |
157 | there is no region; therefore, highlighting the region when it exists | |
158 | is useful and not annoying. | |
6bf7aab6 DL |
159 | |
160 | @findex transient-mark-mode | |
161 | To enable Transient Mark mode, type @kbd{M-x transient-mark-mode}. | |
37281adb RS |
162 | This command toggles the mode; you can use the same command to turn |
163 | the mode off again. | |
6bf7aab6 DL |
164 | |
165 | Here are the details of Transient Mark mode: | |
166 | ||
167 | @itemize @bullet | |
168 | @item | |
169 | To set the mark, type @kbd{C-@key{SPC}} (@code{set-mark-command}). | |
a9749dab RS |
170 | This makes the mark active and thus begins highlighting of the region. |
171 | As you move point, you will see the highlighted region grow and | |
172 | shrink. | |
6bf7aab6 | 173 | |
177c0ea7 | 174 | @item |
6bf7aab6 DL |
175 | The mouse commands for specifying the mark also make it active. So do |
176 | keyboard commands whose purpose is to specify a region, including | |
177 | @kbd{M-@@}, @kbd{C-M-@@}, @kbd{M-h}, @kbd{C-M-h}, @kbd{C-x C-p}, and | |
178 | @kbd{C-x h}. | |
179 | ||
37281adb RS |
180 | @item |
181 | You can tell that the mark is active because the region is highlighted. | |
182 | ||
6bf7aab6 DL |
183 | @item |
184 | When the mark is active, you can execute commands that operate on the | |
185 | region, such as killing, indenting, or writing to a file. | |
186 | ||
187 | @item | |
188 | Any change to the buffer, such as inserting or deleting a character, | |
189 | deactivates the mark. This means any subsequent command that operates | |
190 | on a region will get an error and refuse to operate. You can make the | |
191 | region active again by typing @kbd{C-x C-x}. | |
192 | ||
87c190c7 RS |
193 | @item |
194 | If Delete Selection mode is also enabled, some commands delete the | |
195 | region when used while the mark is active. @xref{Graphical Kill}. | |
196 | ||
37281adb RS |
197 | @item |
198 | Quitting with @kbd{C-g} deactivates the mark. | |
199 | ||
6bf7aab6 | 200 | @item |
a9749dab | 201 | Commands like @kbd{M->} and @kbd{C-s}, that ``leave the mark behind'' in |
58fa012d | 202 | addition to some other primary purpose, do not activate the new mark. |
6bf7aab6 DL |
203 | You can activate the new region by executing @kbd{C-x C-x} |
204 | (@code{exchange-point-and-mark}). | |
205 | ||
206 | @item | |
93e8fd61 JL |
207 | Commands that normally set the mark before moving long distances (like |
208 | @kbd{M-<} and @kbd{C-s}) do not alter the mark in Transient Mark mode | |
209 | when the mark is active. | |
6bf7aab6 DL |
210 | |
211 | @item | |
37281adb RS |
212 | Some commands operate on the region if a region is active. For |
213 | instance, @kbd{C-x u} in Transient Mark mode operates on the region, | |
214 | when there is a region. (Outside Transient Mark mode, you must type | |
215 | @kbd{C-u C-x u} if you want it to operate on the region.) | |
216 | @xref{Undo}. Other commands that act this way are identified in their | |
217 | own documentation. | |
6bf7aab6 DL |
218 | @end itemize |
219 | ||
58fa012d EZ |
220 | The highlighting of the region uses the @code{region} face; you can |
221 | customize the appearance of the highlighted region by changing this | |
222 | face. @xref{Face Customization}. | |
6bf7aab6 DL |
223 | |
224 | @vindex highlight-nonselected-windows | |
225 | When multiple windows show the same buffer, they can have different | |
226 | regions, because they can have different values of point (though they | |
227 | all share one common mark position). Ordinarily, only the selected | |
228 | window highlights its region (@pxref{Windows}). However, if the | |
229 | variable @code{highlight-nonselected-windows} is non-@code{nil}, then | |
230 | each window highlights its own region (provided that Transient Mark mode | |
a9749dab | 231 | is enabled and the mark in the window's buffer is active). |
6bf7aab6 | 232 | |
6bf7aab6 DL |
233 | @vindex mark-even-if-inactive |
234 | If the variable @code{mark-even-if-inactive} is non-@code{nil} in | |
235 | Transient Mark mode, then commands can use the mark and the region | |
37281adb | 236 | even when it is inactive. Region highlighting appears and disappears |
6bf7aab6 | 237 | just as it normally does in Transient Mark mode, but the mark doesn't |
37281adb RS |
238 | really go away when the highlighting disappears, so you can still use |
239 | region commands. | |
6bf7aab6 DL |
240 | |
241 | @cindex Zmacs mode | |
242 | Transient Mark mode is also sometimes known as ``Zmacs mode'' | |
243 | because the Zmacs editor on the MIT Lisp Machine handled the mark in a | |
244 | similar way. | |
245 | ||
37281adb RS |
246 | @node Momentary Mark |
247 | @section Using Transient Mark Mode Momentarily | |
248 | ||
249 | If you don't like Transient Mark mode in general, you might still | |
250 | want to use it once in a while. To do this, type @kbd{C-@key{SPC} | |
251 | C-@key{SPC}} or @kbd{C-u C-x C-x}. These commands set or activate the | |
252 | mark, and enable Transient Mark mode only until the mark is | |
253 | deactivated. | |
254 | ||
255 | @table @kbd | |
256 | @item C-@key{SPC} C-@key{SPC} | |
257 | @kindex C-@key{SPC} C-@key{SPC} | |
258 | Set the mark at point (like plain @kbd{C-@key{SPC}}), and enable | |
259 | Transient Mark mode just once until the mark is deactivated. (This is | |
260 | not really a separate command; you are using the @kbd{C-@key{SPC}} | |
261 | command twice.) | |
262 | ||
263 | @item C-u C-x C-x | |
264 | @kindex C-u C-x C-x | |
a401596d RS |
265 | Activate the mark without changing it; enable Transient Mark mode just |
266 | once, until the mark is deactivated. (This is the @kbd{C-x C-x} | |
267 | command, @code{exchange-point-and-mark}, with a prefix argument.) | |
37281adb RS |
268 | @end table |
269 | ||
270 | One of the secondary features of Transient Mark mode is that certain | |
a401596d RS |
271 | commands operate only on the region, when there is an active region. |
272 | If you don't use Transient Mark mode, the region once set never | |
273 | becomes inactive, so there is no way for these commands to make such a | |
37281adb RS |
274 | distinction. Enabling Transient Mark mode momentarily gives you a way |
275 | to use these commands on the region. | |
276 | ||
a401596d RS |
277 | Momentary use of Transient Mark mode is also a way to highlight the |
278 | region for the time being. | |
37281adb | 279 | |
6bf7aab6 DL |
280 | @node Using Region |
281 | @section Operating on the Region | |
282 | ||
283 | @cindex operations on a marked region | |
284 | Once you have a region and the mark is active, here are some of the | |
285 | ways you can operate on the region: | |
286 | ||
287 | @itemize @bullet | |
288 | @item | |
289 | Kill it with @kbd{C-w} (@pxref{Killing}). | |
290 | @item | |
291 | Save it in a register with @kbd{C-x r s} (@pxref{Registers}). | |
292 | @item | |
293 | Save it in a buffer or a file (@pxref{Accumulating Text}). | |
294 | @item | |
295 | Convert case with @kbd{C-x C-l} or @kbd{C-x C-u} (@pxref{Case}). | |
296 | @item | |
297 | Indent it with @kbd{C-x @key{TAB}} or @kbd{C-M-\} (@pxref{Indentation}). | |
298 | @item | |
299 | Fill it as text with @kbd{M-x fill-region} (@pxref{Filling}). | |
300 | @item | |
cb4a6fe1 | 301 | Print hardcopy with @kbd{M-x print-region} (@pxref{Printing}). |
6bf7aab6 DL |
302 | @item |
303 | Evaluate it as Lisp code with @kbd{M-x eval-region} (@pxref{Lisp Eval}). | |
f69ecc21 | 304 | @item |
7125ef59 | 305 | Undo changes within it using @kbd{C-u C-x u} (@pxref{Undo}). |
6bf7aab6 DL |
306 | @end itemize |
307 | ||
7da970c0 | 308 | Most commands that operate on the text in the region have the word |
58fa012d | 309 | @code{region} in their names. |
6bf7aab6 DL |
310 | |
311 | @node Marking Objects | |
312 | @section Commands to Mark Textual Objects | |
313 | ||
314 | @cindex marking sections of text | |
315 | Here are the commands for placing point and the mark around a textual | |
316 | object such as a word, list, paragraph or page. | |
317 | ||
318 | @table @kbd | |
319 | @item M-@@ | |
a9749dab | 320 | Set mark after end of next word (@code{mark-word}). This command and |
6bf7aab6 DL |
321 | the following one do not move point. |
322 | @item C-M-@@ | |
a9749dab | 323 | Set mark after end of following balanced expression (@code{mark-sexp}). |
6bf7aab6 | 324 | @item M-h |
a9749dab | 325 | Put region around current paragraph (@code{mark-paragraph}). |
6bf7aab6 | 326 | @item C-M-h |
a9749dab | 327 | Put region around current defun (@code{mark-defun}). |
6bf7aab6 | 328 | @item C-x h |
58fa012d | 329 | Put region around the entire buffer (@code{mark-whole-buffer}). |
6bf7aab6 | 330 | @item C-x C-p |
a9749dab | 331 | Put region around current page (@code{mark-page}). |
6bf7aab6 DL |
332 | @end table |
333 | ||
366c721e RS |
334 | @kbd{M-@@} (@code{mark-word}) puts the mark at the end of the next |
335 | word, while @kbd{C-M-@@} (@code{mark-sexp}) puts it at the end of the | |
336 | next balanced expression (@pxref{Expressions}). These commands handle | |
cad113ae | 337 | arguments just like @kbd{M-f} and @kbd{C-M-f}. If you repeat these |
87c190c7 RS |
338 | commands, that extends the region. For example, you can type either |
339 | @kbd{C-u 2 M-@@} or @kbd{M-@@ M-@@} to mark the next two words. This | |
340 | command also extends the region when the mark is active in Transient | |
341 | Mark mode, regardless of the last command. | |
6bf7aab6 DL |
342 | |
343 | @kindex C-x h | |
344 | @findex mark-whole-buffer | |
345 | Other commands set both point and mark, to delimit an object in the | |
346 | buffer. For example, @kbd{M-h} (@code{mark-paragraph}) moves point to | |
564b1f76 EZ |
347 | the beginning of the paragraph that surrounds or follows point, and |
348 | puts the mark at the end of that paragraph (@pxref{Paragraphs}). It | |
349 | prepares the region so you can indent, case-convert, or kill a whole | |
350 | paragraph. With prefix argument, if the argument's value is positive, | |
e7c210cc RS |
351 | @kbd{M-h} marks that many paragraphs starting with the one surrounding |
352 | point. If the prefix argument is @minus{}@var{n}, @kbd{M-h} also | |
353 | marks @var{n} paragraphs, running back form the one surrounding point. | |
354 | In that last case, point moves forward to the end of that paragraph, | |
87c190c7 | 355 | and the mark goes at the start of the region. Repeating the @kbd{M-h} |
7125ef59 | 356 | command extends the region to subsequent paragraphs. |
6bf7aab6 | 357 | |
58fa012d | 358 | @kbd{C-M-h} (@code{mark-defun}) similarly puts point before, and the |
a9749dab | 359 | mark after, the current (or following) major top-level definition, or |
7125ef59 RS |
360 | defun (@pxref{Moving by Defuns}). Repeating @kbd{C-M-h} extends |
361 | the region to subsequent defuns. | |
87c190c7 RS |
362 | |
363 | @kbd{C-x C-p} (@code{mark-page}) puts point before the current page, | |
364 | and mark at the end (@pxref{Pages}). The mark goes after the | |
365 | terminating page delimiter (to include it in the region), while point | |
366 | goes after the preceding page delimiter (to exclude it). A numeric | |
367 | argument specifies a later page (if positive) or an earlier page (if | |
368 | negative) instead of the current page. | |
6bf7aab6 DL |
369 | |
370 | Finally, @kbd{C-x h} (@code{mark-whole-buffer}) sets up the entire | |
371 | buffer as the region, by putting point at the beginning and the mark at | |
372 | the end. | |
373 | ||
374 | In Transient Mark mode, all of these commands activate the mark. | |
375 | ||
376 | @node Mark Ring | |
377 | @section The Mark Ring | |
378 | ||
379 | @kindex C-u C-SPC | |
380 | @cindex mark ring | |
381 | @kindex C-u C-@@ | |
382 | Aside from delimiting the region, the mark is also useful for | |
383 | remembering a spot that you may want to go back to. To make this | |
384 | feature more useful, each buffer remembers 16 previous locations of the | |
385 | mark, in the @dfn{mark ring}. Commands that set the mark also push the | |
386 | old mark onto this ring. To return to a marked location, use @kbd{C-u | |
4125ceb0 | 387 | C-@key{SPC}} (or @kbd{C-u C-@@}); this is the command |
6bf7aab6 DL |
388 | @code{set-mark-command} given a numeric argument. It moves point to |
389 | where the mark was, and restores the mark from the ring of former | |
37281adb RS |
390 | marks. |
391 | ||
f6b8e4e7 RS |
392 | @vindex set-mark-command-repeat-pop |
393 | If you set @code{set-mark-command-repeat-pop} to non-@code{nil}, | |
44e21b24 | 394 | then when you repeat the character @kbd{C-@key{SPC}} after typing |
f6b8e4e7 RS |
395 | @kbd{C-u C-@key{SPC}}, each repetition moves point to a previous mark |
396 | position from the ring. The mark positions you move through in this | |
397 | way are not lost; they go to the end of the ring. | |
6bf7aab6 DL |
398 | |
399 | Each buffer has its own mark ring. All editing commands use the current | |
400 | buffer's mark ring. In particular, @kbd{C-u C-@key{SPC}} always stays in | |
401 | the same buffer. | |
402 | ||
403 | Many commands that can move long distances, such as @kbd{M-<} | |
404 | (@code{beginning-of-buffer}), start by setting the mark and saving the | |
405 | old mark on the mark ring. This is to make it easier for you to move | |
93e8fd61 JL |
406 | back later. Searches set the mark if they move point. However, in |
407 | Transient Mark mode, these commands do not set the mark when the mark | |
408 | is already active. You can tell when a command sets the mark because | |
409 | it displays @samp{Mark set} in the echo area. | |
6bf7aab6 DL |
410 | |
411 | If you want to move back to the same place over and over, the mark | |
412 | ring may not be convenient enough. If so, you can record the position | |
96a48d43 RS |
413 | in a register for later retrieval (@pxref{RegPos,, Saving Positions in |
414 | Registers}). | |
6bf7aab6 DL |
415 | |
416 | @vindex mark-ring-max | |
417 | The variable @code{mark-ring-max} specifies the maximum number of | |
418 | entries to keep in the mark ring. If that many entries exist and | |
58fa012d | 419 | another one is pushed, the earliest one in the list is discarded. Repeating |
6bf7aab6 DL |
420 | @kbd{C-u C-@key{SPC}} cycles through the positions currently in the |
421 | ring. | |
422 | ||
423 | @vindex mark-ring | |
424 | The variable @code{mark-ring} holds the mark ring itself, as a list of | |
425 | marker objects, with the most recent first. This variable is local in | |
426 | every buffer. | |
427 | ||
428 | @node Global Mark Ring | |
429 | @section The Global Mark Ring | |
430 | @cindex global mark ring | |
431 | ||
432 | In addition to the ordinary mark ring that belongs to each buffer, | |
433 | Emacs has a single @dfn{global mark ring}. It records a sequence of | |
434 | buffers in which you have recently set the mark, so you can go back | |
435 | to those buffers. | |
436 | ||
437 | Setting the mark always makes an entry on the current buffer's mark | |
438 | ring. If you have switched buffers since the previous mark setting, the | |
439 | new mark position makes an entry on the global mark ring also. The | |
440 | result is that the global mark ring records a sequence of buffers that | |
441 | you have been in, and, for each buffer, a place where you set the mark. | |
442 | ||
443 | @kindex C-x C-@key{SPC} | |
444 | @findex pop-global-mark | |
445 | The command @kbd{C-x C-@key{SPC}} (@code{pop-global-mark}) jumps to | |
446 | the buffer and position of the latest entry in the global ring. It also | |
447 | rotates the ring, so that successive uses of @kbd{C-x C-@key{SPC}} take | |
448 | you to earlier and earlier buffers. | |
449 | ||
ab5796a9 MB |
450 | @ignore |
451 | arch-tag: f35e4d82-911b-4cfc-a3d7-3c87b2abba20 | |
452 | @end ignore |