GNU bug report logs -
#1165
23.0.60; doc of make-frame-command
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 1165 in the body.
You can then email your comments to 1165 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
"Drew Adams" <drew.adams <at> oracle.com>
:
New bug report received and forwarded. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):
The doc string of `make-frame-command' (`C-x 5 2') says:
"Make a new frame, and select it if the terminal displays only one
frame."
The Emacs manual says:
"Create a new frame" (node Creating Frames)
"Use `C-x 5 2' to create a new frame and switch to it" (node
Non-Window Terminals)
The code does this:
(if (and window-system (not (eq window-system 'pc)))
(make-frame)
(select-frame (make-frame)))
1. Why the difference for `pc'?
2. What does the doc string mean by "terminal" and "if the terminal
displays only one frame"? If "terminal" refers only to emacs -nw, then
nothing is said about the window-manager case. If "terminal" refers to
both -nw and window mgr cases, then it seems false for the latter -
whether the new frame is selected has nothing to do with whether there
is only one frame.
3. Node Creating Frames of the manual should say also that the frame
is selected for a non-window system.
4. Somewhere, we should say that the current buffer is what is
displayed (alone) in the new frame.
5. However, we should also mention this apparent exception to #4: If
the current frame is a standalone minibuffer frame, then the buffer
displayed in the new frame is *scratch*. Are there other exceptions?
In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
of 2008-10-03 on LENNART-69DE564
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --no-opt --cflags -Ic:/g/include
-fno-crossjumping'
Information forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
Eli Zaretskii <eliz <at> gnu.org>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Message #10 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):
> From: "Drew Adams" <drew.adams <at> oracle.com>
> Date: Tue, 14 Oct 2008 10:42:43 -0700
> Cc:
>
> (if (and window-system (not (eq window-system 'pc)))
> (make-frame)
> (select-frame (make-frame)))
>
> 1. Why the difference for `pc'?
`pc' is the value of window-system for the MS-DOS build of Emacs. The
MS-DOS build behaves like a text terminal, but its window-system has a
non-nil value; thus the difference.
Although correct, that code should actually be rewritten using
display-graphic-p to become cleaner.
> 2. What does the doc string mean by "terminal" and "if the terminal
> displays only one frame"?
It means the text-only terminals, which can only display one frame at
a time.
> If "terminal" refers only to emacs -nw, then nothing is said about
> the window-manager case.
Well, I think it does say something about the windowed terminals: it
says that on those terminals, a new frame is created, but it is not
selected.
Information forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
Eli Zaretskii <eliz <at> gnu.org>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Information forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
Eli Zaretskii <eliz <at> gnu.org>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Information forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
Eli Zaretskii <eliz <at> gnu.org>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Message #25 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):
> From: "Drew Adams" <drew.adams <at> oracle.com>
> Date: Tue, 14 Oct 2008 10:42:43 -0700
> Cc:
>
> 2. What does the doc string mean by "terminal" and "if the terminal
> displays only one frame"?
Sorry, what I wrote originally was probably unclear. Here's a better
version:
"Terminal" is any terminal, whether graphics (a.k.a. windowed) or
text-only. A terminal "that can only display one frame" is a
text-only terminal.
Information forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
Eli Zaretskii <eliz <at> gnu.org>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Information forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
Eli Zaretskii <eliz <at> gnu.org>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Information forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
"Drew Adams" <drew.adams <at> oracle.com>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Message #40 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):
> > (if (and window-system (not (eq window-system 'pc)))
> > (make-frame)
> > (select-frame (make-frame)))
> >
> > 1. Why the difference for `pc'?
>
> `pc' is the value of window-system for the MS-DOS build of Emacs. The
> MS-DOS build behaves like a text terminal, but its window-system has a
> non-nil value; thus the difference.
>
> Although correct, that code should actually be rewritten using
> display-graphic-p to become cleaner.
>
> > 2. What does the doc string mean by "terminal" and "if the terminal
> > displays only one frame"?
>
> It means the text-only terminals, which can only display one frame at
> a time.
In that case, that's what it should say. There is a difference between (1) a
terminal that _can only_ display one frame at a time and (2) a terminal that is
currently displaying only one frame. The way it is written, it sounds as if that
occurs whenever Emacs (even with a window manager) shows only one frame.
> > If "terminal" refers only to emacs -nw, then nothing is said about
> > the window-manager case.
>
> Well, I think it does say something about the windowed terminals: it
> says that on those terminals, a new frame is created, but it is not
> selected.
Unless only one frame is displayed. That's what it seems to say.
If the distinction in behavior is really due to emacs -nw versus emacs with a
window manager, then that's what should be said. Saying "if the terminal
displays only one frame" is misleading or, at best, not clear, IMO.
And the manual should be at least as specific about this distinction as the doc
string. In node Creating Frames it says nothing about it.
Information forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
"Drew Adams" <drew.adams <at> oracle.com>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Information forwarded to
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:
bug#1165
; Package
emacs
.
Full text and
rfc822 format available.
Acknowledgement sent to
"Drew Adams" <drew.adams <at> oracle.com>
:
Extra info received and forwarded to list. Copy sent to
Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
Full text and
rfc822 format available.
Reply sent to
Chong Yidong <cyd <at> stupidchicken.com>
:
You have taken responsibility.
Full text and
rfc822 format available.
Notification sent to
"Drew Adams" <drew.adams <at> oracle.com>
:
bug acknowledged by developer.
Full text and
rfc822 format available.
Message #55 received at 1165-done <at> emacsbugs.donarmstrong.com (full text, mbox):
> > (if (and window-system (not (eq window-system 'pc)))
> > (make-frame)
> > (select-frame (make-frame)))
> >
> > 1. Why the difference for `pc'?
>
> `pc' is the value of window-system for the MS-DOS build of Emacs. The
> MS-DOS build behaves like a text terminal, but its window-system has a
> non-nil value; thus the difference.
>
> Although correct, that code should actually be rewritten using
> display-graphic-p to become cleaner.
Indeed. I've changed it to use display-graphic-p.
> > 2. What does the doc string mean by "terminal" and "if the terminal
> > displays only one frame"?
>
> It means the text-only terminals, which can only display one frame at
> a time.
I tweaked the doc-string to make this clearer.
bug archived.
Request was from
Debbugs Internal Request <don <at> donarmstrong.com>
to
internal_control <at> emacsbugs.donarmstrong.com
.
(Thu, 20 Nov 2008 15:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 16 years and 209 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.