unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Alan Mackenzie <acm@muc.de>
Subject: Documentation for "Clone Buffers" (corrected version)
Date: Wed, 25 Feb 2004 10:15:48 +0000 (GMT)	[thread overview]
Message-ID: <Pine.LNX.3.96.1040225101236.307C-100000@acm.acm> (raw)

Hi, guys!

[Sorry, forgot to include the patch to emacs.texi.  It's here now.
Please ignore my previous post.]

Currently, `clone-buffer' is not documented in the Emacs manual.  The
following patch fixes this.

I've also tidied up and corrected the "Indirect Buffers" section a bit.
In particular, creating an indirect buffer is _not_ a suitable way to get
two indpendent *info* or *help* buffers.  (At least, it isn't for me on
Emacs 21.3.)

Also "cloned buffer" is a most unfortunate term.  It could refer to the
buffer to which the process of cloning has just been applied (i.e. the
original).  It could equally well refer to the buffer just created by the
process of cloning (i.e. the copy).  I've purged it from buffers.texi.

As a matter of interest, is there any reason why `clone-buffer' has no
binding in the pertinent help keymaps (e.g. the one you get with C-h f
<foo>)?  It seems a bit inconsistent that you can use M-n on an info
page, but not a help text.


2004-02-25  Alan Mackenzie  <acm@muc.de>

	* buffers.texi.  New section "Cloning Buffers".  Tidied up
	section "Indirect Buffers"
	* emacs.texi.  Insert menu entry.


*** buffers-1.26.texi	Tue Feb 24 19:34:49 2004
--- buffers-1.26.acm.texi	Wed Feb 25 09:50:41 2004
***************
*** 55,60 ****
--- 55,61 ----
  * Several Buffers::     How to go through the list of all buffers
  			  and operate variously on several of them.
  * Indirect Buffers::    An indirect buffer shares the text of another buffer.
+ * Cloning Buffers::     Cloning a buffer makes a copy of its text.
  * Buffer Convenience::  Convenience and customization features for
                            buffer handling.
  @end menu
***************
*** 438,445 ****
  @cindex base buffer
  
    An @dfn{indirect buffer} shares the text of some other buffer, which
! is called the @dfn{base buffer} of the indirect buffer.  In some ways it
! is the analogue, for buffers, of a symbolic link between files.
  
  @table @kbd
  @findex make-indirect-buffer
--- 439,448 ----
  @cindex base buffer
  
    An @dfn{indirect buffer} shares the text of some other buffer, which
! is called the @dfn{base buffer} of the indirect buffer.  In some ways
! it is the analogue, for buffers, of a symbolic link between files.  (A
! clone buffer, by contrast, is a @emph{copy} of its original.
! @xref{Cloning Buffers}.)
  
  @table @kbd
  @findex make-indirect-buffer
***************
*** 456,462 ****
  select it in another window (@code{clone-indirect-buffer-other-window}).
  @end table
  
!   The text of the indirect buffer is always identical to the text of its
  base buffer; changes made by editing either one are visible immediately
  in the other.  But in all other respects, the indirect buffer and its
  base buffer are completely separate.  They have different names,
--- 459,465 ----
  select it in another window (@code{clone-indirect-buffer-other-window}).
  @end table
  
!   The text of an indirect buffer is always identical to the text of its
  base buffer; changes made by editing either one are visible immediately
  in the other.  But in all other respects, the indirect buffer and its
  base buffer are completely separate.  They have different names,
***************
*** 471,492 ****
    One way to use indirect buffers is to display multiple views of an
  outline.  @xref{Outline Views}.
  
- @cindex multiple @samp{*info*} and @samp{*Help*} buffers
    A quick and handy way to make an indirect buffer is with the command
  @kbd{M-x clone-indirect-buffer}.  It creates and selects an indirect
  buffer whose base buffer is the current buffer.  With a numeric
  argument, it prompts for the name of the indirect buffer; otherwise it
  defaults to the name of the current buffer, modifying it by adding a
! @samp{<@var{n}>} prefix if required.  @kbd{C-x 4 c}
  (@code{clone-indirect-buffer-other-window}) works like @kbd{M-x
! clone-indirect-buffer}, but it selects the cloned buffer in another
! window.  These commands come in handy if you want to create new
! @samp{*info*} or @samp{*Help*} buffers, for example.
! 
!   The more general way is with the command @kbd{M-x
! make-indirect-buffer}.  It creates an indirect buffer from buffer
! @var{base-buffer}, under the name @var{indirect-name}.  It prompts for
! both @var{base-buffer} and @var{indirect-name} using the minibuffer.
  
  @node Buffer Convenience
  @section Convenience Features and Customization of Buffer Handling
--- 474,527 ----
    One way to use indirect buffers is to display multiple views of an
  outline.  @xref{Outline Views}.
  
    A quick and handy way to make an indirect buffer is with the command
  @kbd{M-x clone-indirect-buffer}.  It creates and selects an indirect
  buffer whose base buffer is the current buffer.  With a numeric
  argument, it prompts for the name of the indirect buffer; otherwise it
  defaults to the name of the current buffer, modifying it by adding a
! @samp{<@var{n}>} suffix if required.  @kbd{C-x 4 c}
  (@code{clone-indirect-buffer-other-window}) works like @kbd{M-x
! clone-indirect-buffer}, but it selects the new buffer in another
! window.  These commands are unsuitable for creating new @samp{*info*}
! or @samp{*Help*} buffers; instead, use @code{clone-buffer} to do this.
! @xref{Cloning Buffers}.
! 
!   The most general way to get an indirect buffer is with the command
! @kbd{M-x make-indirect-buffer}.  It creates an indirect buffer from
! buffer @var{base-buffer}, under the name @var{indirect-name}.  It
! prompts for both @var{base-buffer} and @var{indirect-name} using the
! minibuffer.
! 
! @node Cloning Buffers
! @section Cloning Buffers
! @cindex clone buffer
! 
!   A @dfn{clone buffer} is one whose text is a copy of some other
! buffer's text.  Buffers which are visiting files can't be cloned.
! 
! @table @asis
! @item @kbd{M-n} (Info mode) or M-x clone-buffer @key{RET}
! @kindex M-n (Info mode)
! @findex clone-buffer
! Create a new buffer which is a clone of the current buffer, and select
! it in another window.
! @end table
! 
! @cindex multiple @samp{*info*} and @samp{*Help*} buffers
!   @code{clone-buffer} (@kbd{M-n} in Info Mode) creates a clone buffer,
! a distinct copy of the current buffer, and selects it in another
! window.  If given a numeric argument, it prompts for the name of the
! new buffer.  Otherwise, its name is formed by appending @samp{<1>} to
! the original buffer's name (or incrementing @var{n} if it already ends
! in @samp{<@var{n}>}).
! 
!   This command is the way to create a new @samp{*info*} or
! @samp{*Help*} buffer, so that you can look at two (or more) info pages
! or help texts at once.
! 
!   You cannot clone a buffer which is visiting a file, though you can
! create an indirect buffer which is a copy of it.  @xref{Indirect
! Buffers}.
  
  @node Buffer Convenience
  @section Convenience Features and Customization of Buffer Handling


*** emacs-1.77.texi	Wed Feb 25 09:20:38 2004
--- emacs-1.77.acm.texi	Wed Feb 25 09:23:37 2004
***************
*** 389,394 ****
--- 389,395 ----
  * Several Buffers::     How to go through the list of all buffers
  			  and operate variously on several of them.
  * Indirect Buffers::    An indirect buffer shares the text of another buffer.
+ * Cloning Buffers::     Cloning a buffer makes a copy of its text.
  
  Multiple Windows
  

-- 
Alan Mackenzie (Munich, Germany)

             reply	other threads:[~2004-02-25 10:15 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-02-25 10:15 Alan Mackenzie [this message]
     [not found] <E1Ax1Br-0005C3-OL@fencepost.gnu.org>
2004-03-05 10:05 ` Documentation for "Clone Buffers" (corrected version) Alan Mackenzie
2004-03-09 15:40   ` David Kastrup
2004-03-10 11:29     ` Alan Mackenzie
2004-03-12  5:12       ` Luc Teirlinck
2004-03-12 16:34         ` Karl Berry
2004-03-14  2:32           ` Luc Teirlinck
2004-03-14  7:36             ` Eli Zaretskii
2004-03-14 18:17               ` Luc Teirlinck
2004-03-14 18:24                 ` Eli Zaretskii
2004-03-14 18:37                   ` Luc Teirlinck
2004-03-14 19:58                 ` Karl Berry
2004-03-15  3:14                   ` Luc Teirlinck
2004-03-15  6:46                     ` Eli Zaretskii
2004-03-15 23:35                       ` Luc Teirlinck
2004-03-16  5:37                         ` Eli Zaretskii
2004-03-15 23:41                       ` Luc Teirlinck
2004-03-16 12:09                   ` Richard Stallman
2004-03-14 13:39             ` Karl Berry
2004-03-14 16:57               ` Eli Zaretskii
2004-03-15  4:57             ` Richard Stallman
2004-03-12  5:22       ` Luc Teirlinck
2004-03-12  1:24     ` Luc Teirlinck
2004-03-15  5:05       ` Juri Linkov
2004-03-15 13:27         ` Stefan Monnier
2004-03-15 17:06           ` Miles Bader
2004-03-15 17:08           ` David Kastrup
2004-03-16  7:02           ` Juri Linkov
2004-03-12  2:45     ` Miles Bader
2004-03-09 23:40   ` Alex Schroeder
2004-03-12 10:57     ` Kai Grossjohann
2004-04-25  4:32       ` Juri Linkov
2004-04-25 13:37         ` Karl Berry
2004-03-14 21:55     ` Stefan Monnier
2004-03-16 12:09       ` Richard Stallman
2004-03-15  6:28     ` Juri Linkov
2004-03-16 19:03       ` Richard Stallman
2004-03-10  3:37   ` Miles Bader
2004-03-10 18:45   ` Richard Stallman
2004-03-10 18:45   ` Richard Stallman
2004-03-11 14:55     ` Alan Mackenzie
2004-03-14  5:53       ` Eli Zaretskii
2004-03-14  9:48         ` David Kastrup
2004-03-14 16:50           ` Eli Zaretskii
2004-03-16 12:09             ` Richard Stallman
2004-03-15 18:18           ` Matthew Mundell
2004-03-15  5:18         ` Juri Linkov
2004-03-15  6:52           ` Eli Zaretskii
2004-03-15 13:34             ` Stefan Monnier
2004-03-15 14:35               ` Luc Teirlinck
2004-03-15 20:03                 ` Eli Zaretskii
2004-03-15 20:40                   ` Luc Teirlinck
2004-03-15 19:55               ` Eli Zaretskii
2004-03-16 19:02               ` Richard Stallman
2004-03-16  7:05             ` Juri Linkov
2004-03-16 19:43               ` Eli Zaretskii
2004-03-18  7:21                 ` Juri Linkov
2004-03-19  5:01                 ` Richard Stallman
2004-03-18 18:37               ` Karl Berry
2004-03-18 18:53                 ` Stefan Monnier
2004-03-19 14:11                   ` Karl Berry
2004-03-19 17:13                     ` Stefan Monnier
2004-03-21  4:58                       ` Richard Stallman
2004-03-19 14:59                   ` Eli Zaretskii
2004-03-19 17:31                     ` Stefan Monnier
2004-03-19 17:47                       ` Karl Berry
2004-03-20 14:04                         ` Eli Zaretskii
2004-03-21  5:00                           ` Richard Stallman
2004-03-21  6:19                             ` Eli Zaretskii
2004-03-22  5:24                               ` Richard Stallman
2004-03-22  6:40                                 ` Eli Zaretskii
2004-03-22  5:24                               ` Richard Stallman
2004-03-22  6:33                                 ` Eli Zaretskii
2004-03-23  3:04                                   ` Richard Stallman
2004-03-21 17:18                             ` Karl Berry
2004-03-22  5:25                               ` Richard Stallman
2004-03-22  7:26                                 ` Eli Zaretskii
2004-03-23  3:04                                   ` Richard Stallman
2004-03-23  3:04                                   ` Richard Stallman
2004-03-23  6:10                                     ` Eli Zaretskii
2004-03-24  5:34                                       ` Richard Stallman
2004-03-22 16:13                           ` Stefan Monnier
2004-03-22 16:10                         ` Stefan Monnier
2004-03-23  0:20                           ` Kim F. Storm
2004-03-23  2:26                             ` Stefan Monnier
2004-03-23  6:19                               ` Eli Zaretskii
2004-03-20 14:37                       ` Eli Zaretskii
2004-03-20 18:01                   ` Richard Stallman
2004-03-19 15:01                 ` Eli Zaretskii
2004-03-19 15:15                   ` Karl Berry
2004-03-20 14:07                     ` Eli Zaretskii
2004-03-20 14:15                       ` Karl Berry
2004-03-20 15:15                         ` Eli Zaretskii
2004-03-20 19:27                           ` Miles Bader
2004-03-21  5:55                             ` Eli Zaretskii
2004-03-22  5:25                               ` Richard Stallman
2004-03-22  6:12                                 ` Eli Zaretskii
2004-03-21  5:00                           ` Richard Stallman
2004-03-21  6:28                             ` Eli Zaretskii
2004-03-20 18:01                 ` Richard Stallman
2004-03-21  5:51                   ` Eli Zaretskii
2004-03-22  5:25                     ` Richard Stallman
2004-03-22  6:29                       ` Eli Zaretskii
2004-03-15  4:56       ` Richard Stallman
2004-03-10 18:45   ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.3.96.1040225101236.307C-100000@acm.acm \
    --to=acm@muc.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).