emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Emacs-diffs] trunk r115470: eww: exit and close actions


From: Ted Zlatanov
Subject: Re: [Emacs-diffs] trunk r115470: eww: exit and close actions
Date: Fri, 13 Dec 2013 09:36:10 -0500
User-agent: Gnus/5.130008 (Ma Gnus v0.8) Emacs/24.3.50 (gnu/linux)

On Thu, 12 Dec 2013 17:14:28 -0500 Stefan Monnier <address@hidden> wrote: 

>> I think `close' and `exit' in the context of a web browser are very
>> clear concepts.

SM> But they don't map cleanly to the use of eww, i.e. with Emacs.

OK, we have to disagree there.  Explanation below.

>> Do you think any users are unfamiliar with web browsers?

SM> I think all users of eww are first and foremost Emacs users rather than
SM> "browser users" (at least for foreseeable future), so they will be
SM> familiar with quit-window and with the notion of killing a buffer,
SM> whereas they won't know (without looking at the code) whether `close'
SM> actually kills the buffer, or deletes the window, or both, or whether
SM> it's eww-exit which does it, and in which cases.

(I will try to answer, but please remember I am not trying to dictate
the direction of eww.  It's not my package and I'm OK with reverting my
changes if you and Lars feel it's necessary.  My intent is only to make
the user experience better.)

Web browsing is a separate UI domain from the other UI domains Emacs
covers.  The UI for navigation, input, and even scrolling is different.
It's most like an Info file but there are fundamental differences (no
clear hierarchy, interactive, etc.)  So my idea was to make web browsing
in Emacs more like web browsing outside Emacs, and I thought my changes
were a step in that direction.

>> Or do you want to give Emacs-specific names to these concepts?

SM> Your commands don't really do what they do in a web-browser.  I guess in
SM> some case, depending on how you look at it, and how you configured your
SM> display-buffer-alist and your dedicated windows, and how you started
SM> ewww, etc... they may occasionally behave similarly to Firefox's "close"
SM> and "exit" (tho it also depends on the window-manager in which you run
SM> firefox).  But in the general case they don't.

The idea was to separate "close" from "exit" even if the current
implementation doesn't do it perfectly, because tha separation is
typical in the "web browsing" UI domain.

If we agree on that piece, we can discuss how the implementations of
"close" and "exit" should differ in theory and in practice.  If we
don't, there's no point in analyzing the specific implementations and
you and Lars can choose to revert them.

SM> I'm not sure how (setq eww-history nil) fits in there, because I don't
SM> know why it's there, so I can't comment on how best to go about it in
SM> this respect.
>> It ensures that the browsing history is erased,

SM> That part was clear, the question is why do it here rather than elsewhere.

>> which `kill-buffer' may not do.

SM> Why not?  If the variable is buffer-local, kill-buffer will do it, and
SM> if the variable is global, then we have a problem since it's then shared
SM> between all eww buffers, right?

Right.  Lars?  Can you clarify?

Ted




reply via email to

[Prev in Thread] Current Thread [Next in Thread]