unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Jan D." <jan.h.d@swipnet.se>
Cc: emacs-devel@gnu.org
Subject: Re: [rudalics@gmx.at: enlarge-window with preserve-before non-nil]
Date: Sat, 14 May 2005 20:48:59 +0200	[thread overview]
Message-ID: <4286481B.6070702@swipnet.se> (raw)
In-Reply-To: <E1DVFP8-0005Mk-CV@fencepost.gnu.org>

Richard Stallman wrote:

>    I looked a bit, but I am not sure how it shall work.  If I just to three 
>    windows, in the obvious way (C-x 2, C-x 2), I get three windows, one 11 
>    lines, one 12 lines and one 24 lines.  This gives me this window 
>    configuration:
>
>    0x86b6b10: vchild: 0x861d830, hchild: 0x0, next: 0x861d9c8, parent: 0x0, 
>    h: 47
>    0x861d830: vchild: 0x0, hchild: 0x0, next: 0x8694a50, parent: 0x86b6b10, 
>    h: 11
>    0x8694a50: vchild: 0x0, hchild: 0x0, next: 0x86b6ca8, parent: 0x86b6b10, 
>    h: 12
>    0x86b6ca8: vchild: 0x0, hchild: 0x0, next: 0x0, parent: 0x86b6b10, h: 24
>    0x861d9c8: vchild: 0x0, hchild: 0x0, next: 0x0, parent: 0x0, h: 1
>
>That's the correct configuration for such a case.
>
>
>    But if I create the same three windows (11, 12 and 24 lines) with the 
>    method below, I get this window configuration:
>
>    0x8833558: vchild: 0x87f9978, hchild: 0x0, next: 0x861d9c8, parent: 0x0, 
>    h: 47
>    0x87f9978: vchild: 0x86a7a48, hchild: 0x0, next: 0x8820a48, parent: 
>    0x8833558, h: 23
>    0x86a7a48: vchild: 0x0, hchild: 0x0, next: 0x87b6d68, parent: 0x87f9978, 
>    h: 11
>    0x87b6d68: vchild: 0x0, hchild: 0x0, next: 0x0, parent: 0x87f9978, h: 12
>    0x8820a48: vchild: 0x0, hchild: 0x0, next: 0x0, parent: 0x8833558, h: 24
>    0x861d9c8: vchild: 0x0, hchild: 0x0, next: 0x0, parent: 0x0, h: 1
>
>This is a bug.  A window which is a vchild should never have a vchild.
>
>Can you determine at which step the structure first becomes
>incorrect?  That is where the bug is, I think.
>

I think it is correct up to the last delete, but correct me if I'm 
wrong.  Steps in the chain are  represented like this (arrow down = 
next, arrow diagonal = vchild, arrow horizontal = hchild, parent in 
parentesis):

w1 | w2

 i0 -----> w1 (i0)
  |             |
  v             v
minibuf    w2 (i0)



    | W2
W1  |---
    | W3

 i0 ----> w1 (i0)
  |        |
minibuf   i1 (i0)
            \
             w2 (i1)
             |
             w3 (u1) 



 w2
-----
 w3

 i1
  |\
  | \
  |  \
  |   w2 (i1)
  |     |
minibuf w3 (i1)



W2 | W4
--------
   W3

 i1
  |\
  | i2 (i1) --> w2 (i2)
  |   |          |
  |  w3 (i1)    w4 (i2)
  | 
minibuf
  


    | W4
W2  |---
    | W5
- -------
    W3


  i1
  | \
  |  i2 (i1) --> w2 (i2)
  |   |            |
  |  w3 (i1)     i3 (i2)
  |                 \
  |                 w4 (i3)
  |                   |
 minibuf            w5 (i3)




  w4
------
  w5
------
  w3

  i1
  | \
  |  \
  |   i3 (i1)
  |    |    \
  | w3 (i1)  \
  |          w4 (i3)
  |           |
minibuf      w5 (i3)


I think it is correct up to the last delete of w2.  But what the rule should be for eliminating i3 in the last step I don't know.  I think this is the desired last step:

  i1
  | \
  |  \
  |  w4 (i1)
  |     |
  |  w5 (i1)
  |     |
  |  w3 (i1)
  |
minibuf

i1 possibly replaced with i3.



	Jan D.

  reply	other threads:[~2005-05-14 18:48 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-04 16:25 [rudalics@gmx.at: enlarge-window with preserve-before non-nil] Richard Stallman
2005-05-08 20:24 ` Jan D.
2005-05-09 21:03   ` Richard Stallman
2005-05-14 18:48     ` Jan D. [this message]
2005-05-15 15:59       ` Richard Stallman
2005-05-17  4:47         ` Jan D.
2005-05-17 11:58         ` Stefan Monnier
2005-06-06 10:43         ` Jan D.
2005-06-06 16:37           ` Richard Stallman
2005-06-27  8:35           ` martin rudalics

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=4286481B.6070702@swipnet.se \
    --to=jan.h.d@swipnet.se \
    --cc=emacs-devel@gnu.org \
    /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).