[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Q on frame parameters *border-width
From: |
Eli Zaretskii |
Subject: |
Re: Q on frame parameters *border-width |
Date: |
Sat, 21 Jan 2006 12:01:57 +0200 |
> From: "Drew Adams" <address@hidden>
> Date: Fri, 20 Jan 2006 16:20:54 -0800
>
> 1. Wrt `border-width':
>
> When I try this, I get an error, "Cannot change the border width of a
> window":
>
> (modify-frame-parameters (selected-frame) '((border-width . 20)))
>
> So, think I, perhaps you cannot change this parameter for an existing frame,
> but perhaps you can set it for `default-frame-alist' and it will then affect
> future frames. No such luck either.
In fact, you cannot change this for _any_ window. At least on X, I
think this parameter is under control of the window manager. But even
if I'm wrong, it looks like no one has written code to handle this, on
any windowing system.
> Both the doc string and the error message speak of the "window" border, so I
> guess this is a frame parameter that affects the border of each window in
> the frame. Is that right? Just where is the window border?
I don't know how to explain this better than the manual does. Each
frame has a border--do you know what that border is? If not, perhaps
your problem is not what border-width is, but what is the border.
With typical X window managers this border is clearly visible, because
it has a 3D appearance that makes it stand out. On MS-Windows, this
is less visible, but you should still be able to see a narrow
2-pixel-wide strip between the outer edge of the Emacs frame and the
parts of the frame that Emacs displays: the fringe at the left side,
the title bar's background color on the top side, etc.
> If not, if it is about a frame border, then the doc string and error
> message should say "frame", not "window".
Maybe, I don't know. The confusion between ``window'' and ``frame''
is not a simple one. The parameter is for frames, not for windows.
> What does this parameter do? Setting it doesn't seem to do anything, on
> Windows XP at least (Emacs 20 or 22). Shouldn't the doc explain the
> parameter a little more?
I think this parameter exists so that one could compute the actual
size of the frame.
> 2. Wrt `internal-border-width':
>
> The only difference in this parameter's name and that of the previous
> parameter is "internal-". Does this mean that this too applies to Emacs
> window borders (whatever they are) and not to frame borders?
No, the manual says it explicitly: this is the distance between the
border and the text area of the Emacs display.
> Setting `internal-border-width' actually does change something, but it
> appears to be the internal _frame_ border, not a border around each window.
It _is_ the frame border.
> The `internal-border-width' does not appear to be the distance between text
> and border, if the border when fringe is present - in that case, it is the
> distance between the fringe and the border.
Yes.