[Conkeror] Braindump about buffer handling

Jeremy Maitin-Shepard jeremy at jeremyms.com
Wed Mar 25 12:40:51 PDT 2009


Daniel Clemente <dcl441-bugs at yahoo.com> writes:

>   What I would like to see is a dialog to switch buffers, but I mean a
> full-window comfortable dialog, not just little things to do in the minibuffer.
>   Something like ibuffer for Emacs, but adapted to web. Concretely, I would like
> to see a buffer tree where each buffer hangs on the buffer which opened it. Ex:

> - Page 1: Google results
>  - Page 2: the first result you opened from page 1
>  - Page 3: the second result you opened
>   - Page 4: one link from page 3 which you opened in a new tab
> - Page 5: something else you had open before searching the web in page 1

>   Note: history isn't involved here; only the state of the current tab
>   set.

I think it is a bit optimistic to assume that forming a tree based on a
buffer's parent being defined as the current buffer when that buffer was
created will get you anything as nice as this.  In particular:

  - if you manually open a new buffer with C-x C-f, it will show up as a
    parent of something, even though it may not be at all related to
    that something.
  - if you use the "g" binding to browse to a different URL in an
    existing buffer, the edges in the buffer tree that involve that
    buffer may likely no longer make sense either.

It seems like the history "tree"/"forest" is actually what you are
interested in.  If we assume that manually typing in a URL creates a new
root in the history graph, then perhaps it would make sense to display
the history graph, but only show nodes that correspond to (the current
page of) a buffer that is open (and optionally certain ancestor nodes as
well).

It does often seem like it would make more sense if the "current URL" of
a given buffer were immutable, but alas that is only partially
compatible with how the web works.

>   This is useful because normally you have several navigation threads, each one
> comprising many tabs. The tab bar fails to represent this because it uses only
> one line. A buffer selection dialog could show a more descriptive page with
> links that switch to each buffer.
>   This dialog could be activated by just one key.
>   Further enhancements would be: a checkbox near each buffer's name, so that you
> can mark many and click „kill“ to kill several buffers at once; being able to
> change their names, reordering them, …

>   Should I submit this as a request enhancement? :-)

Well, you can try to interest someone enough to implement the idea.  I
think some issues in the design have to be cleared up.  I don't really
have the time or interest to implement it myself.

-- 
Jeremy Maitin-Shepard


More information about the Conkeror mailing list