unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* binding ibuffer to C-x C-b by default
@ 2010-10-07 15:17 Dan Nicolaescu
  2010-10-07 15:46 ` Drew Adams
                   ` (3 more replies)
  0 siblings, 4 replies; 46+ messages in thread
From: Dan Nicolaescu @ 2010-10-07 15:17 UTC (permalink / raw)
  To: emacs-devel


This was discussed briefly a few years ago and Stefan (and other
people) agreed with it: how about we map ibuffer to C-x C-b by default
in Emacs-24?

ibuffer is a superset of list-buffers, and it provides many things
that list-buffers does not.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* RE: binding ibuffer to C-x C-b by default
  2010-10-07 15:17 Dan Nicolaescu
@ 2010-10-07 15:46 ` Drew Adams
  2010-10-07 20:54   ` Deniz Dogan
  2010-10-07 23:29 ` Juri Linkov
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 46+ messages in thread
From: Drew Adams @ 2010-10-07 15:46 UTC (permalink / raw)
  To: 'Dan Nicolaescu', emacs-devel

> This was discussed briefly a few years ago and Stefan (and other
> people) agreed with it: how about we map ibuffer to C-x C-b by default
> in Emacs-24?
> 
> ibuffer is a superset of list-buffers, and it provides many things
> that list-buffers does not.

I disagree, for one.  And no, it is not a superset.
But yes, it does provides things that list-buffers does not.

And please reference the specific past thread you are referring to.




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-07 15:46 ` Drew Adams
@ 2010-10-07 20:54   ` Deniz Dogan
  2010-10-08  0:29     ` Miles Bader
  0 siblings, 1 reply; 46+ messages in thread
From: Deniz Dogan @ 2010-10-07 20:54 UTC (permalink / raw)
  To: Drew Adams; +Cc: Dan Nicolaescu, emacs-devel

2010/10/7 Drew Adams <drew.adams@oracle.com>:
>> This was discussed briefly a few years ago and Stefan (and other
>> people) agreed with it: how about we map ibuffer to C-x C-b by default
>> in Emacs-24?
>>
>> ibuffer is a superset of list-buffers, and it provides many things
>> that list-buffers does not.
>
> I disagree, for one.  And no, it is not a superset.
> But yes, it does provides things that list-buffers does not.
>

Why do you disagree?

-- 
Deniz Dogan



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-07 15:17 Dan Nicolaescu
  2010-10-07 15:46 ` Drew Adams
@ 2010-10-07 23:29 ` Juri Linkov
  2010-10-08  3:05   ` Dan Nicolaescu
  2010-10-08  9:23 ` Deniz Dogan
  2010-10-08  9:54 ` René Kyllingstad
  3 siblings, 1 reply; 46+ messages in thread
From: Juri Linkov @ 2010-10-07 23:29 UTC (permalink / raw)
  To: emacs-devel

> This was discussed briefly a few years ago and Stefan (and other
> people) agreed with it: how about we map ibuffer to C-x C-b by default
> in Emacs-24?
>
> ibuffer is a superset of list-buffers, and it provides many things
> that list-buffers does not.

Maybe making `list-buffers' an alias of `ibuffer' would be a better thing to do?
Because `list-buffers' is a more descriptive name for a core command.
So we could just change its semantics to do more than its old implementation.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-07 20:54   ` Deniz Dogan
@ 2010-10-08  0:29     ` Miles Bader
  2010-10-08  0:34       ` Lars Magne Ingebrigtsen
                         ` (3 more replies)
  0 siblings, 4 replies; 46+ messages in thread
From: Miles Bader @ 2010-10-08  0:29 UTC (permalink / raw)
  To: Deniz Dogan; +Cc: Dan Nicolaescu, Drew Adams, emacs-devel

Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:
> Why do you disagree?

Drew is technically correct, in that it's not a _perfect_ superset.

But it's so damned close that 99% of the users will never even notice
that something's changed, and I'd guess that the number of people that
will benefit from the additional functionality/features will vastly
outstrip those who are devastated that their favorite list-buffers
keybinding has changed.

Some of the differences are fairly easy to fix -- e.g., list-buffers
uses whizzy new-style header-line headers, whereas ibuffer uses
oldskool simple fixed-width headers.  Some of the keybinding
differences can also easily be resolved; the only hard cases are a few
keybindings that can't be made compatible because ibuffer uses those
keys for something else.

Anyway, as I say, while the differences exist, they're for the most
part simply irrelevant.  The right thing to do is to simply switch to
ibuffer, and then fix stuff up as the need arises (or somebody gets
the itch to do so).

-Miles

-- 
Everywhere is walking distance if you have the time.  -- Steven Wright



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  0:29     ` Miles Bader
@ 2010-10-08  0:34       ` Lars Magne Ingebrigtsen
  2010-10-08  0:46         ` Miles Bader
  2010-10-08  0:57       ` Drew Adams
                         ` (2 subsequent siblings)
  3 siblings, 1 reply; 46+ messages in thread
From: Lars Magne Ingebrigtsen @ 2010-10-08  0:34 UTC (permalink / raw)
  To: emacs-devel

Miles Bader <miles@gnu.org> writes:

> Anyway, as I say, while the differences exist, they're for the most
> part simply irrelevant.  The right thing to do is to simply switch to
> ibuffer, and then fix stuff up as the need arises (or somebody gets
> the itch to do so).

Before making ibuffer the default, I'd apply this patch:

=== modified file 'lisp/ibuffer.el'
*** lisp/ibuffer.el	2010-09-25 21:42:48 +0000
--- lisp/ibuffer.el	2010-10-08 00:32:45 +0000
***************
*** 1053,1059 ****
  one window."
    (interactive "P")
    (let ((buf (ibuffer-current-buffer t)))
-     (bury-buffer (current-buffer))
      (switch-to-buffer buf)
      (when single
        (delete-other-windows))))
--- 1053,1058 ----

That was the only difference between list-buffers and ibuffer mode
that annoyed me after playing with it for 30 seconds.

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  0:34       ` Lars Magne Ingebrigtsen
@ 2010-10-08  0:46         ` Miles Bader
  2010-10-08  0:51           ` Lars Magne Ingebrigtsen
  0 siblings, 1 reply; 46+ messages in thread
From: Miles Bader @ 2010-10-08  0:46 UTC (permalink / raw)
  To: emacs-devel

Lars Magne Ingebrigtsen <larsi@gnus.org> writes:
> Before making ibuffer the default, I'd apply this patch:
>
> *** lisp/ibuffer.el	2010-09-25 21:42:48 +0000
> *** 1053,1059 ****
> -     (bury-buffer (current-buffer))

I agree -- that's probably ibuffer's most annoying habit.

[If anyone disagrees, speak up soon.]

-miles

-- 
Laughter, n. An interior convulsion, producing a distortion of the features
and accompanied by inarticulate noises. It is infectious and, though
intermittent, incurable.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  0:46         ` Miles Bader
@ 2010-10-08  0:51           ` Lars Magne Ingebrigtsen
  2010-10-08  1:32             ` Óscar Fuentes
                               ` (2 more replies)
  0 siblings, 3 replies; 46+ messages in thread
From: Lars Magne Ingebrigtsen @ 2010-10-08  0:51 UTC (permalink / raw)
  To: emacs-devel

Miles Bader <miles@gnu.org> writes:

> I agree -- that's probably ibuffer's most annoying habit.

After playing with it a few more seconds, I discovered (to my horror!)
that it binds <left> and <right> to something totally odd that makes
point jump to the start of the buffer.

That's even more annoying.  I hate having my cursor keys rebound to
surprising actions.

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen




^ permalink raw reply	[flat|nested] 46+ messages in thread

* RE: binding ibuffer to C-x C-b by default
  2010-10-08  0:29     ` Miles Bader
  2010-10-08  0:34       ` Lars Magne Ingebrigtsen
@ 2010-10-08  0:57       ` Drew Adams
  2010-10-08  1:30         ` Miles Bader
  2010-10-08  1:03       ` Juanma Barranquero
  2010-10-09  4:01       ` Chong Yidong
  3 siblings, 1 reply; 46+ messages in thread
From: Drew Adams @ 2010-10-08  0:57 UTC (permalink / raw)
  To: 'Miles Bader', 'Deniz Dogan'
  Cc: 'Dan Nicolaescu', emacs-devel

> Drew is technically correct, in that it's not a _perfect_ superset.
> 
> But it's so damned close that 99% of the users will never even notice
> that something's changed, and I'd guess that the number of people that
> will benefit from the additional functionality/features will vastly
> outstrip those who are devastated that their favorite list-buffers
> keybinding has changed.
> 
> Some of the differences are fairly easy to fix -- e.g., list-buffers
> uses whizzy new-style header-line headers, whereas ibuffer uses
> oldskool simple fixed-width headers.  Some of the keybinding
> differences can also easily be resolved; the only hard cases are a few
> keybindings that can't be made compatible because ibuffer uses those
> keys for something else.
> 
> Anyway, as I say, while the differences exist, they're for the most
> part simply irrelevant.  The right thing to do is to simply switch to
> ibuffer, and then fix stuff up as the need arises (or somebody gets
> the itch to do so).

Miles, you were the one who proposed previously that we switch `C-x C-b' to
ibuffer, so this is no surprise.  We went through all of this before.  What's
new that implies we should change what was concluded before about it?

I asked for a reference to the thread or threads that Dan hinted at, but none
has been presented so far.  Let's at least be able to see what was said and
decided, if we're compelled to go through this all over again.  Seriously, can
someone point us to the thread(s)?  It's not so easy to search for the topic,
perhaps, since "ibuffer" is a substring of "minibuffer".

I seem to recall that there was consensus that we should add missing features to
one or the other, instead of simply switching.  But I don't recall the details.


I don't agree with the characterization you make wrt the features, but I do
agree that much of the functionality of ibuffer would be good to make available
to the buffer menu.  Most of those features are simply commands, IIRC, and
should thus be relatively easy to add to buff-menu.el, while keeping the basic
UI of the latter.

I've made other, orthogonal, extensions to buff-menu.el, which could also be
included.  I much prefer the buffer-menu UI, especially as I extended it, to the
UI of ibuffer.  I have no problem with addition of ibuffer commands (regexp
markings etc.) to buff-menu, however.  On the contrary, they would be a welcome
addition.  I'm in favor of thus giving the buffer menu more Dired-like behavior.
I'm not in favor of simply swapping the buffer menu (`C-x C-b') for ibuffer. 

Let's start with a refresher of what was said before about this topic, if
someone can point to the thread.  For those interested, a description of my
extensions to the buffer menu is here:
http://www.emacswiki.org/emacs/BufferMenuPlus.




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  0:29     ` Miles Bader
  2010-10-08  0:34       ` Lars Magne Ingebrigtsen
  2010-10-08  0:57       ` Drew Adams
@ 2010-10-08  1:03       ` Juanma Barranquero
  2010-10-08  1:34         ` Miles Bader
  2010-10-09  4:01       ` Chong Yidong
  3 siblings, 1 reply; 46+ messages in thread
From: Juanma Barranquero @ 2010-10-08  1:03 UTC (permalink / raw)
  To: Miles Bader; +Cc: Dan Nicolaescu, emacs-devel, Drew Adams, Deniz Dogan

On Fri, Oct 8, 2010 at 02:29, Miles Bader <miles@gnu.org> wrote:

> Some of the differences are fairly easy to fix -- e.g., list-buffers
> uses whizzy new-style header-line headers, whereas ibuffer uses
> oldskool simple fixed-width headers.

Ibuffer already uses the header line to show filtering status.

    Juanma



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  0:57       ` Drew Adams
@ 2010-10-08  1:30         ` Miles Bader
  2010-10-08  2:57           ` Drew Adams
  0 siblings, 1 reply; 46+ messages in thread
From: Miles Bader @ 2010-10-08  1:30 UTC (permalink / raw)
  To: Drew Adams; +Cc: 'Dan Nicolaescu', emacs-devel, 'Deniz Dogan'

"Drew Adams" <drew.adams@oracle.com> writes:
> Miles, you were the one who proposed previously that we switch `C-x C-b' to
> ibuffer, so this is no surprise.

Yeah and you're the one who complained so endlessly (and voluminously)
the last time, so it's no surprise you're against (the fact that you're
also flogging your personal extensions to list-buffers is a new one though).

But switching to ibuffer is the right thing.  Enough with the idiotic
bike-shedding.

[yeah I know, this is emacs-devel, bike-shedding central... but man does
it get tiring sometimes...]

-Miles

-- 
Quack, n. A murderer without a license.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  0:51           ` Lars Magne Ingebrigtsen
@ 2010-10-08  1:32             ` Óscar Fuentes
  2010-10-08  1:38               ` Lars Magne Ingebrigtsen
  2010-10-08  1:43               ` Miles Bader
  2010-10-08  7:57             ` Sergei Organov
  2010-10-09  4:02             ` Chong Yidong
  2 siblings, 2 replies; 46+ messages in thread
From: Óscar Fuentes @ 2010-10-08  1:32 UTC (permalink / raw)
  To: emacs-devel

Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

> After playing with it a few more seconds, I discovered (to my horror!)
> that it binds <left> and <right> to something totally odd that makes
> point jump to the start of the buffer.

It jumps from one filtering group to another.

> That's even more annoying.  I hate having my cursor keys rebound to
> surprising actions.

What would be the unsurprising (and not useless) behavior here?




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  1:03       ` Juanma Barranquero
@ 2010-10-08  1:34         ` Miles Bader
  2010-10-08  9:12           ` Juanma Barranquero
  0 siblings, 1 reply; 46+ messages in thread
From: Miles Bader @ 2010-10-08  1:34 UTC (permalink / raw)
  To: Juanma Barranquero; +Cc: Dan Nicolaescu, Deniz Dogan, Drew Adams, emacs-devel

Juanma Barranquero <lekktu@gmail.com> writes:
>> Some of the differences are fairly easy to fix -- e.g., list-buffers
>> uses whizzy new-style header-line headers, whereas ibuffer uses
>> oldskool simple fixed-width headers.
>
> Ibuffer already uses the header line to show filtering status.

That is not sacred.

[Nor is list-buffer's use for the header, of course -- sometimes I think
that using the header-line for table headers like that is _bad_, because
it can obscure the fact that the buffer is scrolled (I occasionally find
myself confused because of such usage).  Perhaps a better solution would
be to simply apply the nice face stylings to ibuffer's header, but keep
it in the buffer.]

-miles

-- 
Corporation, n. An ingenious device for obtaining individual profit without
individual responsibility.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  1:32             ` Óscar Fuentes
@ 2010-10-08  1:38               ` Lars Magne Ingebrigtsen
  2010-10-08  2:26                 ` Óscar Fuentes
  2010-10-08  1:43               ` Miles Bader
  1 sibling, 1 reply; 46+ messages in thread
From: Lars Magne Ingebrigtsen @ 2010-10-08  1:38 UTC (permalink / raw)
  To: emacs-devel

Óscar Fuentes <ofv@wanadoo.es> writes:

>> That's even more annoying.  I hate having my cursor keys rebound to
>> surprising actions.
>
> What would be the unsurprising (and not useless) behavior here?

Leaving the cursor keys to behave like normal, for instance?  That would
be very unsurprising, but the usefulness is debatable.  Sometimes
avoiding driving the user crazy is better than maximum usefulness. 

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  1:32             ` Óscar Fuentes
  2010-10-08  1:38               ` Lars Magne Ingebrigtsen
@ 2010-10-08  1:43               ` Miles Bader
  1 sibling, 0 replies; 46+ messages in thread
From: Miles Bader @ 2010-10-08  1:43 UTC (permalink / raw)
  To: Óscar Fuentes; +Cc: emacs-devel

Óscar Fuentes <ofv@wanadoo.es> writes:
>> That's even more annoying.  I hate having my cursor keys rebound to
>> surprising actions.
>
> What would be the unsurprising (and not useless) behavior here?

I assume he expects them to move the cursor left or right, at least
kinda approximately ... :]

I think that rebinding arrow keys (and other "basic" keys) is often done
badly, in that any new bindings should somehow have a similar "feel" to
the default bindings, even if the action is not strictly the same.

[A binding that changed left/right to do per-character horizontal
scrolling would be a big change, but it still preserves the "feel" to
some extent, so it might be acceptable for a read-only buffer.]

ibuffer's binding does seem pretty dodgy in this respect; with the
default display, hitting left/right simply appears to jump to the
beginning of the buffer!

-Miles

-- 
Bride, n. A woman with a fine prospect of happiness behind her.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  1:38               ` Lars Magne Ingebrigtsen
@ 2010-10-08  2:26                 ` Óscar Fuentes
  2010-10-08  2:33                   ` Lars Magne Ingebrigtsen
                                     ` (2 more replies)
  0 siblings, 3 replies; 46+ messages in thread
From: Óscar Fuentes @ 2010-10-08  2:26 UTC (permalink / raw)
  To: emacs-devel

Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

>>> That's even more annoying.  I hate having my cursor keys rebound to
>>> surprising actions.
>>
>> What would be the unsurprising (and not useless) behavior here?
>
> Leaving the cursor keys to behave like normal, for instance?  That would
> be very unsurprising, but the usefulness is debatable.  Sometimes
> avoiding driving the user crazy is better than maximum usefulness. 

Moving the cursor left and right adds zero convenience while using
ibuffer, it is wasting two keys. OTOH, by assigning them for jumping
from one filtering group to another they become somewhat useful. I agree
with you and Miles about the "surprisingness", but after two minutes of
using ibuffer you are no longer surprised and later maybe you will
appreciate having two extra keys that actually do some work.

If you say that it not only is surprising but also annoying, I'll have
to ask why you feel compelled to use left/right cursor movements on
ibuffer.

[Not really arguing with you. I'm trying to understand your reaction as
a new ibuffer user who *also* is an experienced Emacs user.]




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  2:26                 ` Óscar Fuentes
@ 2010-10-08  2:33                   ` Lars Magne Ingebrigtsen
  2010-10-08  3:16                     ` Óscar Fuentes
  2010-10-08  6:48                   ` David Kastrup
  2010-10-08 13:53                   ` Ted Zlatanov
  2 siblings, 1 reply; 46+ messages in thread
From: Lars Magne Ingebrigtsen @ 2010-10-08  2:33 UTC (permalink / raw)
  To: emacs-devel

Óscar Fuentes <ofv@wanadoo.es> writes:

> If you say that it not only is surprising but also annoying, I'll have
> to ask why you feel compelled to use left/right cursor movements on
> ibuffer.

I have a tendency to just tap up/down/left/right aimlessly.  :-)
Putting the cursor somewhere near what I'm looking for sort of focuses
me on what I'm looking for, and in a buffer like the buffer view buffer
it's more relevant than most.  "Which of the four epa-related buffers was
it that I saw that function I vaguely remember looking at?"

Not very useful, but having point go to the top of the buffer when I tap
<right> innocently is jarring.

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen




^ permalink raw reply	[flat|nested] 46+ messages in thread

* RE: binding ibuffer to C-x C-b by default
  2010-10-08  1:30         ` Miles Bader
@ 2010-10-08  2:57           ` Drew Adams
  0 siblings, 0 replies; 46+ messages in thread
From: Drew Adams @ 2010-10-08  2:57 UTC (permalink / raw)
  To: 'Miles Bader'
  Cc: 'Dan Nicolaescu', emacs-devel, 'Deniz Dogan'

> Yeah and you're the one who complained so endlessly
> (and voluminously) the last time, so it's no surprise
> you're against (the fact that you're also flogging your
> personal extensions to list-buffers is a new one though).

Are you sure?  Point us to the thread, please.  I don't decide things here, and
I doubt that my arguments, voluminous or not, made much difference to the
decision not to change the binding.  Very unlikely.

Seriously, tell us - what's new about this?  If the decision before (by Richard,
IIRC) was to keep the `C-x C-b' binding as it was, what has changed since then?
Is ibuffer a lot better now than it was?  Is buffer menu a lot worse now than it
was?

> But switching to ibuffer is the right thing.  Enough with the
> idiotic bike-shedding. [yeah I know, this is emacs-devel,
> bike-shedding central...but man does it get tiring sometimes...]

No one is bikeshedding about this, that I can see.  And no one has been
name-calling until your rant above.  Please don't be so dismissive.  No one here
is idiotic or deserves to be treated as such.




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-07 23:29 ` Juri Linkov
@ 2010-10-08  3:05   ` Dan Nicolaescu
  0 siblings, 0 replies; 46+ messages in thread
From: Dan Nicolaescu @ 2010-10-08  3:05 UTC (permalink / raw)
  To: Juri Linkov; +Cc: emacs-devel

Juri Linkov <juri@jurta.org> writes:

>> This was discussed briefly a few years ago and Stefan (and other
>> people) agreed with it: how about we map ibuffer to C-x C-b by default
>> in Emacs-24?
>>
>> ibuffer is a superset of list-buffers, and it provides many things
>> that list-buffers does not.
>
> Maybe making `list-buffers' an alias of `ibuffer' would be a better thing to do?

IMHO yes, that would have been step 2 in my plan...




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  2:33                   ` Lars Magne Ingebrigtsen
@ 2010-10-08  3:16                     ` Óscar Fuentes
  0 siblings, 0 replies; 46+ messages in thread
From: Óscar Fuentes @ 2010-10-08  3:16 UTC (permalink / raw)
  To: emacs-devel

Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

[snip]

> Putting the cursor somewhere near what I'm looking for sort of focuses
> me on what I'm looking for, and in a buffer like the buffer view buffer
> it's more relevant than most.  "Which of the four epa-related buffers was
> it that I saw that function I vaguely remember looking at?"

I see. On most read-only modes the user can move the cursor to anywhere
on the buffer. Ibuffer is different here. It places the cursor on the
leftmost column and can be difficult to see which file corresponds to
the current line. This can be solved by highlighting the current line,
but allowing arbitrary cursor movement seems reasonable too.

[snip]




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
@ 2010-10-08  4:13 Roland Winkler
  2010-10-08  8:27 ` Deniz Dogan
  0 siblings, 1 reply; 46+ messages in thread
From: Roland Winkler @ 2010-10-08  4:13 UTC (permalink / raw)
  To: miles; +Cc: emacs-devel

> I think that rebinding arrow keys (and other "basic" keys) is
> often done badly, in that any new bindings should somehow have a
> similar "feel" to the default bindings, even if the action is not
> strictly the same.

In general, I like to use ibuffer, but some of its key bindings for
handling marks (quite orthogonal to dired's keybindings) regularly
drive me nuts.

I'd much appreciate if ibuffer's keybindings were more consistent
with dired.

Roland



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  2:26                 ` Óscar Fuentes
  2010-10-08  2:33                   ` Lars Magne Ingebrigtsen
@ 2010-10-08  6:48                   ` David Kastrup
  2010-10-08 13:53                   ` Ted Zlatanov
  2 siblings, 0 replies; 46+ messages in thread
From: David Kastrup @ 2010-10-08  6:48 UTC (permalink / raw)
  To: emacs-devel

Óscar Fuentes <ofv@wanadoo.es> writes:

> Lars Magne Ingebrigtsen <larsi@gnus.org> writes:
>
>>>> That's even more annoying.  I hate having my cursor keys rebound to
>>>> surprising actions.
>>>
>>> What would be the unsurprising (and not useless) behavior here?
>>
>> Leaving the cursor keys to behave like normal, for instance?  That would
>> be very unsurprising, but the usefulness is debatable.  Sometimes
>> avoiding driving the user crazy is better than maximum usefulness. 
>
> Moving the cursor left and right adds zero convenience while using
> ibuffer, it is wasting two keys.

Miles did not discover their binding by throwing the cat at the
keyboard, I presume.  Obviously he _did_ want to do something with the
cursor movement keys (like moving to a file name part in order to cut
and paste), and that did not work.  So "wasting" is clearly hyperbole.

-- 
David Kastrup




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  0:51           ` Lars Magne Ingebrigtsen
  2010-10-08  1:32             ` Óscar Fuentes
@ 2010-10-08  7:57             ` Sergei Organov
  2010-10-08  8:51               ` Stephen J. Turnbull
  2010-10-09  4:02             ` Chong Yidong
  2 siblings, 1 reply; 46+ messages in thread
From: Sergei Organov @ 2010-10-08  7:57 UTC (permalink / raw)
  To: emacs-devel

Lars Magne Ingebrigtsen <larsi@gnus.org> writes:
> Miles Bader <miles@gnu.org> writes:
>
>> I agree -- that's probably ibuffer's most annoying habit.
>
> After playing with it a few more seconds, I discovered (to my horror!)
> that it binds <left> and <right> to something totally odd that makes
> point jump to the start of the buffer.

Yeah, feels crazy!

Another annoyance is that pushing <down> at the end of ibuffer wraps
around to the beginning of it (and <up> also wraps at the beginning to
the end). No other mode of emacs behaves like this, right?

-- 
Sergei.




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  4:13 binding ibuffer to C-x C-b by default Roland Winkler
@ 2010-10-08  8:27 ` Deniz Dogan
  0 siblings, 0 replies; 46+ messages in thread
From: Deniz Dogan @ 2010-10-08  8:27 UTC (permalink / raw)
  To: Roland Winkler; +Cc: emacs-devel, miles

2010/10/8 Roland Winkler <winkler@gnu.org>:
>> I think that rebinding arrow keys (and other "basic" keys) is
>> often done badly, in that any new bindings should somehow have a
>> similar "feel" to the default bindings, even if the action is not
>> strictly the same.
>
> In general, I like to use ibuffer, but some of its key bindings for
> handling marks (quite orthogonal to dired's keybindings) regularly
> drive me nuts.
>
> I'd much appreciate if ibuffer's keybindings were more consistent
> with dired.
>

We discussed that on this mailing list relatively recently. IIRC, we
are waiting for someone to work on it.

-- 
Deniz Dogan



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  7:57             ` Sergei Organov
@ 2010-10-08  8:51               ` Stephen J. Turnbull
  2010-10-08 11:22                 ` Sergei Organov
  0 siblings, 1 reply; 46+ messages in thread
From: Stephen J. Turnbull @ 2010-10-08  8:51 UTC (permalink / raw)
  To: Sergei Organov; +Cc: emacs-devel

Sergei Organov writes:

 > Another annoyance is that pushing <down> at the end of ibuffer wraps
 > around to the beginning of it (and <up> also wraps at the beginning to
 > the end). No other mode of emacs behaves like this, right?

Depends on how close "like" needs to be.  Specifically, isearch wraps
if you repeat a search immediately after getting a buffer-boundary
error.  That's not an arrow key, and you do have to "insist" to get
the wrapping behavior, but for my money that's similar behavior.  In
the case of search it's very useful.  Rings (kill rings, completion
history) are another example.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  1:34         ` Miles Bader
@ 2010-10-08  9:12           ` Juanma Barranquero
  0 siblings, 0 replies; 46+ messages in thread
From: Juanma Barranquero @ 2010-10-08  9:12 UTC (permalink / raw)
  To: Miles Bader; +Cc: Dan Nicolaescu, Deniz Dogan, Drew Adams, emacs-devel

On Fri, Oct 8, 2010 at 03:34, Miles Bader <miles@gnu.org> wrote:

> That is not sacred.

Of course. I pointed it out because you said that the differences are
"fairly easy to fix", and that one will require at least a bit of
thought.

I wasn't commenting on switching / not-switching to ibuffer because I
have no opinion. I use neither list-buffers nor ibuffer. I have C-x
C-b bound to `buffer-menu-other-window', and even that I hardly ever
use it.

    Juanma



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-07 15:17 Dan Nicolaescu
  2010-10-07 15:46 ` Drew Adams
  2010-10-07 23:29 ` Juri Linkov
@ 2010-10-08  9:23 ` Deniz Dogan
  2010-10-08 11:26   ` David Kastrup
  2010-10-08  9:54 ` René Kyllingstad
  3 siblings, 1 reply; 46+ messages in thread
From: Deniz Dogan @ 2010-10-08  9:23 UTC (permalink / raw)
  To: emacs-devel

2010/10/7 Dan Nicolaescu <dann@gnu.org>:
>
> This was discussed briefly a few years ago and Stefan (and other
> people) agreed with it: how about we map ibuffer to C-x C-b by default
> in Emacs-24?
>
> ibuffer is a superset of list-buffers, and it provides many things
> that list-buffers does not.
>
>

If a significant majority of experienced Emacs users prefer to use
ibuffer instead of list-buffers (which is what I believe) what is the
problem with making this change?

-- 
Deniz Dogan



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-07 15:17 Dan Nicolaescu
                   ` (2 preceding siblings ...)
  2010-10-08  9:23 ` Deniz Dogan
@ 2010-10-08  9:54 ` René Kyllingstad
  2010-10-08 16:06   ` Drew Adams
  3 siblings, 1 reply; 46+ messages in thread
From: René Kyllingstad @ 2010-10-08  9:54 UTC (permalink / raw)
  To: emacs-devel

On Thu, Oct 7, 2010 at 5:17 PM, Dan Nicolaescu <dann@gnu.org> wrote:
>
> This was discussed briefly a few years ago and Stefan (and other
> people) agreed with it: how about we map ibuffer to C-x C-b by default
> in Emacs-24?

The most recent time seems to be March 2008, where you asked the
maintainers for suggestions on the following defaults:

"Here are some examples of changes that could be made:
- transient-mark, selection with Shift-arrow keys

- show-paren-mode on by default
- iswitchb-mode on by default
- bind ibuffer to C-x C-b
- hide-ifdef-mode on by default for C/C++/objc
- flyspell-mode on by default for text-mode"

Concerning ibuffer Stefan answered:

"I added many months ago the following entry in etc/TODO

** Merge ibuffer.el and buff-menu.el.
   More specifically do what's needed to make ibuffer.el the default,
   or just an extension of buff-menu.el."

http://lists.gnu.org/archive/html/emacs-devel/2008-03/msg00405.html
http://lists.gnu.org/archive/html/emacs-devel/2008-03/msg00450.html

Similar exchanges also came up in 2003, 2006 and 2007. Stefan 2003:

"Hadn't it been decided to make Ibuffer the default (i.e. replacing
list-buffers) ?  Did I dream it ?
Also I see that list-buffers uses the header-line whereas Ibuffer
doesn't. "

http://lists.gnu.org/archive/html/emacs-devel/2003-03/msg00200.html


-- René



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  8:51               ` Stephen J. Turnbull
@ 2010-10-08 11:22                 ` Sergei Organov
  0 siblings, 0 replies; 46+ messages in thread
From: Sergei Organov @ 2010-10-08 11:22 UTC (permalink / raw)
  To: emacs-devel

"Stephen J. Turnbull" <stephen@xemacs.org> writes:

> Sergei Organov writes:
>
>  > Another annoyance is that pushing <down> at the end of ibuffer wraps
>  > around to the beginning of it (and <up> also wraps at the beginning to
>  > the end). No other mode of emacs behaves like this, right?
>
> Depends on how close "like" needs to be.

Yeah, I meant I never experienced any other buffer where pressing <down>
at the end of buffer brings me to the beginning of the buffer.

Actually, it's wrapping on "mark" commands that really annoys me.
Probably I should learn something like
`ibuffer-mark-to-the-end-of-buffer', that doesn't seem to exist, but I
used to do it by just holding corresponding key (e.g., 'D'). (Yes, I
know about 'ibuffer-mark-old-buffers').

BTW, there is another inconsistency in ibuffer: C-n and <down> are
bound to different functions that also seems to be unique property of
ibuffer.

> Specifically, isearch wraps if you repeat a search immediately after
> getting a buffer-boundary error. That's not an arrow key, and you do
> have to "insist" to get the wrapping behavior, but for my money that's
> similar behavior.

Yes it's similar, but not similarly annoying, as one pays much more
attention to the screen at every key-press during search compared to
simple <down> in the buffer.

> In the case of search it's very useful.

Exactly. But it's useless and annoying in ibuffer as if I want to get to
the beginning (or end) of the buffer, I always know how to do it, while
'isearch' doesn't have a way to get to the first/last occurrence in the
buffer easily.

> Rings (kill rings, completion history) are another example.

Yes, but they are not buffers either, though 'yank-pop' wrapping is also
annoying, IMHO, and neither *Completions* buffer nor minibuffer history
wraps for me.

-- 
Sergei.




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  9:23 ` Deniz Dogan
@ 2010-10-08 11:26   ` David Kastrup
  2010-10-08 11:43     ` Deniz Dogan
  0 siblings, 1 reply; 46+ messages in thread
From: David Kastrup @ 2010-10-08 11:26 UTC (permalink / raw)
  To: emacs-devel

Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:

> 2010/10/7 Dan Nicolaescu <dann@gnu.org>:
>>
>> This was discussed briefly a few years ago and Stefan (and other
>> people) agreed with it: how about we map ibuffer to C-x C-b by default
>> in Emacs-24?
>>
>> ibuffer is a superset of list-buffers, and it provides many things
>> that list-buffers does not.
>>
>>
>
> If a significant majority of experienced Emacs users prefer to use
> ibuffer instead of list-buffers (which is what I believe) what is the
> problem with making this change?

Thinking like a suitor rather than a programmer.

Making a choice between two different feature sets that both have
deficiencies is the wrong thing to do if we can instead create a version
that does not contain the particular weaknesses of either.

A bit more of the Frankenstein spirit, if you please.

-- 
David Kastrup




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 11:26   ` David Kastrup
@ 2010-10-08 11:43     ` Deniz Dogan
  2010-10-08 11:51       ` David Kastrup
  0 siblings, 1 reply; 46+ messages in thread
From: Deniz Dogan @ 2010-10-08 11:43 UTC (permalink / raw)
  To: David Kastrup; +Cc: emacs-devel

2010/10/8 David Kastrup <dak@gnu.org>:
> Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:
>
>> 2010/10/7 Dan Nicolaescu <dann@gnu.org>:
>>>
>>> This was discussed briefly a few years ago and Stefan (and other
>>> people) agreed with it: how about we map ibuffer to C-x C-b by default
>>> in Emacs-24?
>>>
>>> ibuffer is a superset of list-buffers, and it provides many things
>>> that list-buffers does not.
>>>
>>>
>>
>> If a significant majority of experienced Emacs users prefer to use
>> ibuffer instead of list-buffers (which is what I believe) what is the
>> problem with making this change?
>
> Thinking like a suitor rather than a programmer.
>
> Making a choice between two different feature sets that both have
> deficiencies is the wrong thing to do if we can instead create a version
> that does not contain the particular weaknesses of either.
>

Binding C-x C-b only changes a key binding. This has nothing to do
with modifying list-buffers or ibuffer, neither does it affect anyone
with the intentions of doing that.

-- 
Deniz Dogan



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 11:43     ` Deniz Dogan
@ 2010-10-08 11:51       ` David Kastrup
  2010-10-08 12:13         ` Deniz Dogan
  0 siblings, 1 reply; 46+ messages in thread
From: David Kastrup @ 2010-10-08 11:51 UTC (permalink / raw)
  To: emacs-devel

Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:

> 2010/10/8 David Kastrup <dak@gnu.org>:
>> Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:
>>
>>> 2010/10/7 Dan Nicolaescu <dann@gnu.org>:
>>>>
>>>> This was discussed briefly a few years ago and Stefan (and other
>>>> people) agreed with it: how about we map ibuffer to C-x C-b by default
>>>> in Emacs-24?
>>>>
>>>> ibuffer is a superset of list-buffers, and it provides many things
>>>> that list-buffers does not.
>>>>
>>>>
>>>
>>> If a significant majority of experienced Emacs users prefer to use
>>> ibuffer instead of list-buffers (which is what I believe) what is the
>>> problem with making this change?
>>
>> Thinking like a suitor rather than a programmer.
>>
>> Making a choice between two different feature sets that both have
>> deficiencies is the wrong thing to do if we can instead create a version
>> that does not contain the particular weaknesses of either.
>>
>
> Binding C-x C-b only changes a key binding.

And marriage only changes a soul binding.

> This has nothing to do with modifying list-buffers or ibuffer, neither
> does it affect anyone with the intentions of doing that.

You propose a divorce from C-x C-b with list-buffers, and a remarriage
with ibuffer.  Namely making a choice rather than an improvement to
either.

-- 
David Kastrup




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 11:51       ` David Kastrup
@ 2010-10-08 12:13         ` Deniz Dogan
  2010-10-08 12:19           ` Deniz Dogan
  0 siblings, 1 reply; 46+ messages in thread
From: Deniz Dogan @ 2010-10-08 12:13 UTC (permalink / raw)
  To: David Kastrup; +Cc: emacs-devel

2010/10/8 David Kastrup <dak@gnu.org>:
> Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:
>
>> 2010/10/8 David Kastrup <dak@gnu.org>:
>>> Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:
>>>
>>>> 2010/10/7 Dan Nicolaescu <dann@gnu.org>:
>>>>>
>>>>> This was discussed briefly a few years ago and Stefan (and other
>>>>> people) agreed with it: how about we map ibuffer to C-x C-b by default
>>>>> in Emacs-24?
>>>>>
>>>>> ibuffer is a superset of list-buffers, and it provides many things
>>>>> that list-buffers does not.
>>>>>
>>>>>
>>>>
>>>> If a significant majority of experienced Emacs users prefer to use
>>>> ibuffer instead of list-buffers (which is what I believe) what is the
>>>> problem with making this change?
>>>
>>> Thinking like a suitor rather than a programmer.
>>>
>>> Making a choice between two different feature sets that both have
>>> deficiencies is the wrong thing to do if we can instead create a version
>>> that does not contain the particular weaknesses of either.
>>>
>>
>> Binding C-x C-b only changes a key binding.
>
> And marriage only changes a soul binding.
>
>> This has nothing to do with modifying list-buffers or ibuffer, neither
>> does it affect anyone with the intentions of doing that.
>
> You propose a divorce from C-x C-b with list-buffers, and a remarriage
> with ibuffer.  Namely making a choice rather than an improvement to
> either.
>

Don't dramatize the change of a key binding by comparing it to divorce
and marriage.

Nothing stops anyone from changing (or possibly even merging) ibuffer
or buffer-menu if we change C-x C-b to ibuffer.

It appears that this topic has been discussed back and forth for at
least seven years already, but you are still hoping that someone
actually makes the effort to merge the two into a "Frankenstein". I
can't see that happening any time soon, so let's be pragmatic about
it.

-- 
Deniz Dogan



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 12:13         ` Deniz Dogan
@ 2010-10-08 12:19           ` Deniz Dogan
  2010-10-08 12:27             ` David Kastrup
  2010-10-08 15:17             ` Lennart Borgman
  0 siblings, 2 replies; 46+ messages in thread
From: Deniz Dogan @ 2010-10-08 12:19 UTC (permalink / raw)
  To: David Kastrup; +Cc: emacs-devel

2010/10/8 Deniz Dogan <deniz.a.m.dogan@gmail.com>:
> 2010/10/8 David Kastrup <dak@gnu.org>:
>> Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:
>>
>>> 2010/10/8 David Kastrup <dak@gnu.org>:
>>>> Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:
>>>>
>>>>> 2010/10/7 Dan Nicolaescu <dann@gnu.org>:
>>>>>>
>>>>>> This was discussed briefly a few years ago and Stefan (and other
>>>>>> people) agreed with it: how about we map ibuffer to C-x C-b by default
>>>>>> in Emacs-24?
>>>>>>
>>>>>> ibuffer is a superset of list-buffers, and it provides many things
>>>>>> that list-buffers does not.
>>>>>>
>>>>>>
>>>>>
>>>>> If a significant majority of experienced Emacs users prefer to use
>>>>> ibuffer instead of list-buffers (which is what I believe) what is the
>>>>> problem with making this change?
>>>>
>>>> Thinking like a suitor rather than a programmer.
>>>>
>>>> Making a choice between two different feature sets that both have
>>>> deficiencies is the wrong thing to do if we can instead create a version
>>>> that does not contain the particular weaknesses of either.
>>>>
>>>
>>> Binding C-x C-b only changes a key binding.
>>
>> And marriage only changes a soul binding.
>>
>>> This has nothing to do with modifying list-buffers or ibuffer, neither
>>> does it affect anyone with the intentions of doing that.
>>
>> You propose a divorce from C-x C-b with list-buffers, and a remarriage
>> with ibuffer.  Namely making a choice rather than an improvement to
>> either.
>>
>
> Don't dramatize the change of a key binding by comparing it to divorce
> and marriage.
>
> Nothing stops anyone from changing (or possibly even merging) ibuffer
> or buffer-menu if we change C-x C-b to ibuffer.
>
> It appears that this topic has been discussed back and forth for at
> least seven years already

In fact, I just found this from 2001:

http://lists.gnu.org/archive/html/emacs-devel/2001-12/msg00546.html

So it seems that the intention back then was to obsolete buff-menu in
favor of ibuffer (and in doing so change C-x C-b to ibuffer, of
course). I'm not sure that this ever happened.

-- 
Deniz Dogan



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 12:19           ` Deniz Dogan
@ 2010-10-08 12:27             ` David Kastrup
  2010-10-08 15:17             ` Lennart Borgman
  1 sibling, 0 replies; 46+ messages in thread
From: David Kastrup @ 2010-10-08 12:27 UTC (permalink / raw)
  To: emacs-devel

Deniz Dogan <deniz.a.m.dogan@gmail.com> writes:

> In fact, I just found this from 2001:
>
> http://lists.gnu.org/archive/html/emacs-devel/2001-12/msg00546.html
>
> So it seems that the intention back then was to obsolete buff-menu in
> favor of ibuffer (and in doing so change C-x C-b to ibuffer, of
> course). I'm not sure that this ever happened.

I don't think that the reasons for not making it happen are better now
than previously.

-- 
David Kastrup




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  2:26                 ` Óscar Fuentes
  2010-10-08  2:33                   ` Lars Magne Ingebrigtsen
  2010-10-08  6:48                   ` David Kastrup
@ 2010-10-08 13:53                   ` Ted Zlatanov
  2010-10-08 13:56                     ` Ted Zlatanov
  2010-10-08 14:06                     ` Lars Magne Ingebrigtsen
  2 siblings, 2 replies; 46+ messages in thread
From: Ted Zlatanov @ 2010-10-08 13:53 UTC (permalink / raw)
  To: emacs-devel

On Fri, 08 Oct 2010 04:26:18 +0200 Óscar Fuentes <ofv@wanadoo.es> wrote: 

ÓF> Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

>> Leaving the cursor keys to behave like normal, for instance?  That would
>> be very unsurprising, but the usefulness is debatable.  Sometimes
>> avoiding driving the user crazy is better than maximum usefulness. 

ÓF> Moving the cursor left and right adds zero convenience while using
ÓF> ibuffer, it is wasting two keys. OTOH, by assigning them for jumping
ÓF> from one filtering group to another they become somewhat useful. I agree
ÓF> with you and Miles about the "surprisingness", but after two minutes of
ÓF> using ibuffer you are no longer surprised and later maybe you will
ÓF> appreciate having two extra keys that actually do some work.

ÓF> If you say that it not only is surprising but also annoying, I'll have
ÓF> to ask why you feel compelled to use left/right cursor movements on
ÓF> ibuffer.

The convention is to use TAB and M-TAB to move between groups of items
(which would apply here).

I need to use left/right cursor movement all the time to copy things.
It's really annoying when they are rebound.  w3m-mode does that too IIRC.

Ted




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 13:53                   ` Ted Zlatanov
@ 2010-10-08 13:56                     ` Ted Zlatanov
  2010-10-08 14:06                     ` Lars Magne Ingebrigtsen
  1 sibling, 0 replies; 46+ messages in thread
From: Ted Zlatanov @ 2010-10-08 13:56 UTC (permalink / raw)
  To: emacs-devel

On Fri, 08 Oct 2010 08:53:16 -0500 Ted Zlatanov <tzz@lifelogs.com> wrote: 

TZ> The convention is to use TAB and M-TAB to move between groups of items
TZ> (which would apply here).

Sorry, I meant S-TAB AKA "backtab".

Ted




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 13:53                   ` Ted Zlatanov
  2010-10-08 13:56                     ` Ted Zlatanov
@ 2010-10-08 14:06                     ` Lars Magne Ingebrigtsen
  2010-10-08 14:09                       ` Miles Bader
  2010-10-08 16:45                       ` Dan Nicolaescu
  1 sibling, 2 replies; 46+ messages in thread
From: Lars Magne Ingebrigtsen @ 2010-10-08 14:06 UTC (permalink / raw)
  To: emacs-devel

Ted Zlatanov <tzz@lifelogs.com> writes:

> The convention is to use TAB and M-TAB to move between groups of items
> (which would apply here).
>
> I need to use left/right cursor movement all the time to copy things.
> It's really annoying when they are rebound.  w3m-mode does that too IIRC.

Yup.

How about if we just change <left>/<right> to the more common TAB
things, and drop the <up>/<down> special wrapping bindings, drop the
(bury-buffer), and make it the default?  After getting the major
annoyances out of the way, we can then see how people like the new
mode.  

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 14:06                     ` Lars Magne Ingebrigtsen
@ 2010-10-08 14:09                       ` Miles Bader
  2010-10-08 16:45                       ` Dan Nicolaescu
  1 sibling, 0 replies; 46+ messages in thread
From: Miles Bader @ 2010-10-08 14:09 UTC (permalink / raw)
  To: emacs-devel

Lars Magne Ingebrigtsen <larsi@gnus.org> writes:
> How about if we just change <left>/<right> to the more common TAB
> things, and drop the <up>/<down> special wrapping bindings, drop the
> (bury-buffer), and make it the default?  After getting the major
> annoyances out of the way, we can then see how people like the new
> mode.  

Sounds good to me.

-Miles

-- 
Love is the difficult realization that something other than oneself is real.
[Iris Murdoch]



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 12:19           ` Deniz Dogan
  2010-10-08 12:27             ` David Kastrup
@ 2010-10-08 15:17             ` Lennart Borgman
  1 sibling, 0 replies; 46+ messages in thread
From: Lennart Borgman @ 2010-10-08 15:17 UTC (permalink / raw)
  To: Deniz Dogan; +Cc: David Kastrup, emacs-devel

On Fri, Oct 8, 2010 at 2:19 PM, Deniz Dogan <deniz.a.m.dogan@gmail.com> wrote:
>
> http://lists.gnu.org/archive/html/emacs-devel/2001-12/msg00546.html
>
> So it seems that the intention back then was to obsolete buff-menu in
> favor of ibuffer (and in doing so change C-x C-b to ibuffer, of
> course). I'm not sure that this ever happened.

It looks to me that it does not happened because some things have to
be changed in ibuffer first. Why not try to fix these things and merge
into ibuffer whatever is needed from buff-menu?



^ permalink raw reply	[flat|nested] 46+ messages in thread

* RE: binding ibuffer to C-x C-b by default
  2010-10-08  9:54 ` René Kyllingstad
@ 2010-10-08 16:06   ` Drew Adams
  0 siblings, 0 replies; 46+ messages in thread
From: Drew Adams @ 2010-10-08 16:06 UTC (permalink / raw)
  To: 'René Kyllingstad', emacs-devel

> The most recent time seems to be March 2008, where you [Dan] asked
> the maintainers for suggestions on the following defaults:
> 
> "Here are some examples of changes that could be made:
> - transient-mark, selection with Shift-arrow keys
> - show-paren-mode on by default
> - iswitchb-mode on by default
> - bind ibuffer to C-x C-b
> - hide-ifdef-mode on by default for C/C++/objc
> - flyspell-mode on by default for text-mode"
> 
> Concerning ibuffer Stefan answered:
> "I added many months ago the following entry in etc/TODO
> ** Merge ibuffer.el and buff-menu.el.
>    More specifically do what's needed to make ibuffer.el the default,
>    or just an extension of buff-menu.el."
> 
> http://lists.gnu.org/archive/html/emacs-devel/2008-03/msg00405.html
> http://lists.gnu.org/archive/html/emacs-devel/2008-03/msg00450.html
> 
> Similar exchanges also came up in 2003, 2006 and 2007. Stefan 2003:
> "Hadn't it been decided to make Ibuffer the default (i.e. replacing
> list-buffers) ?  Did I dream it ? Also I see that list-buffers uses
> the header-line whereas Ibuffer doesn't. "
> 
> http://lists.gnu.org/archive/html/emacs-devel/2003-03/msg00200.html

Thanks for the URLs, Rene.

FWIW, bad old Drew, who supposedly "complained so _endlessly_ (and
_voluminously_) the last time" contributed in fact 0 posts the last time (Miles:
1), and only 3 short posts the previous time (Miles: 3 also).  (That's
subracting posts in that thread that had nothing to do with the C-x C-b question
- counting all posts: Drew 10, Miles 18. ;-))

For the record, here is all that Verbose Old Drew said previously on the topic.
It previews the ultimate outcome of the discussion, BTW, which was essentially
that ibuffer and buffer menu should probably be merged (still my position):

D> I don't agree that ibuffer subsumes list-buffers, and I don't
D> want ibuffer to replace list-buffers as the binding of C-x C-b.
D>
D> I would prefer that we discuss some of the features that you or
D> others like from ibuffer, and we then adapt list-buffers to
D> include those features that we agree on.  list-buffers has a better
D> UI, IMO. If we want some of the ibuffer features, then list-buffers
D> is the place to add them.  I'm not against merging the two, keeping
D> the best of each.

But there was subsequently _no_ such discussion of the features that people
might like from ibuffer and how to add them to the buffer menu. Zero. Nada.

And to Stefan's TODO post cited above, I replied:

D> FWIW, I'm OK with the last part, "just an extention of
D> buff-menu.el", assuming that buff-menu.el features are
D> not lost in the process.

We are today exactly where we were previously.  I still believe that the buffer
menu is a better UI overall but that ibuffer has useful features which could be
added to the buffer menu.  I think that some if not most of those features are
simply commands that could easily be added - but I'm no expert on ibuffer.

Why doesn't someone who is familiar with ibuffer (Miles?) try adding some of the
more useful commands to buff-menu.el, as a start?

Ideally (deja vu), we would _discuss_ those features first and decide which
should be added, but I'm OK with someone directly adding ibuffer features to
buff-menu.el, as long as nothing gets taken away.  If a potential addition does
present a conflict then we should discuss it before making a change.




^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08 14:06                     ` Lars Magne Ingebrigtsen
  2010-10-08 14:09                       ` Miles Bader
@ 2010-10-08 16:45                       ` Dan Nicolaescu
  1 sibling, 0 replies; 46+ messages in thread
From: Dan Nicolaescu @ 2010-10-08 16:45 UTC (permalink / raw)
  To: emacs-devel

Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

> Ted Zlatanov <tzz@lifelogs.com> writes:
>
>> The convention is to use TAB and M-TAB to move between groups of items
>> (which would apply here).
>>
>> I need to use left/right cursor movement all the time to copy things.
>> It's really annoying when they are rebound.  w3m-mode does that too IIRC.
>
> Yup.
>
> How about if we just change <left>/<right> to the more common TAB
> things, and drop the <up>/<down> special wrapping bindings, drop the
> (bury-buffer), and make it the default?  After getting the major
> annoyances out of the way, we can then see how people like the new
> mode.  

Seconded, sounds like a good and easily workable plan.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  0:29     ` Miles Bader
                         ` (2 preceding siblings ...)
  2010-10-08  1:03       ` Juanma Barranquero
@ 2010-10-09  4:01       ` Chong Yidong
  3 siblings, 0 replies; 46+ messages in thread
From: Chong Yidong @ 2010-10-09  4:01 UTC (permalink / raw)
  To: Miles Bader; +Cc: Dan Nicolaescu, emacs-devel, Drew Adams, Deniz Dogan

Miles Bader <miles@gnu.org> writes:

> list-buffers uses whizzy new-style header-line headers, whereas
> ibuffer uses oldskool simple fixed-width headers.

Yeah, this is a pretty important difference.  Patches welcome.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-08  0:51           ` Lars Magne Ingebrigtsen
  2010-10-08  1:32             ` Óscar Fuentes
  2010-10-08  7:57             ` Sergei Organov
@ 2010-10-09  4:02             ` Chong Yidong
  2010-10-09 14:51               ` Dan Nicolaescu
  2 siblings, 1 reply; 46+ messages in thread
From: Chong Yidong @ 2010-10-09  4:02 UTC (permalink / raw)
  To: emacs-devel

Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

> After playing with it a few more seconds, I discovered (to my horror!)
> that it binds <left> and <right> to something totally odd that makes
> point jump to the start of the buffer.
>
> That's even more annoying.  I hate having my cursor keys rebound to
> surprising actions.

Yeah, this is pretty unacceptable.  For one thing, users might want to
copy the text in the buffer.



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-09  4:02             ` Chong Yidong
@ 2010-10-09 14:51               ` Dan Nicolaescu
  2010-10-09 15:44                 ` Lars Magne Ingebrigtsen
  0 siblings, 1 reply; 46+ messages in thread
From: Dan Nicolaescu @ 2010-10-09 14:51 UTC (permalink / raw)
  To: Chong Yidong; +Cc: emacs-devel

Chong Yidong <cyd@stupidchicken.com> writes:

> Lars Magne Ingebrigtsen <larsi@gnus.org> writes:
>
>> After playing with it a few more seconds, I discovered (to my horror!)
>> that it binds <left> and <right> to something totally odd that makes
>> point jump to the start of the buffer.
>>
>> That's even more annoying.  I hate having my cursor keys rebound to
>> surprising actions.
>
> Yeah, this is pretty unacceptable.  For one thing, users might want to
> copy the text in the buffer.

This can be fixed by using TAB/S-TAB for navigation to filter groups
as proposed elsewhere in this thread.

=== modified file 'lisp/ibuffer.el'
--- lisp/ibuffer.el     2010-09-25 21:42:48 +0000
+++ lisp/ibuffer.el     2010-10-09 14:48:04 +0000
@@ -477,9 +477,9 @@ directory, like `default-directory'."
     (define-key map (kbd "/ /") 'ibuffer-filter-disable)
 
     (define-key map (kbd "M-n") 'ibuffer-forward-filter-group)
-    (define-key map (kbd "<right>") 'ibuffer-forward-filter-group)
+    (define-key map "\t" 'ibuffer-forward-filter-group)
     (define-key map (kbd "M-p") 'ibuffer-backward-filter-group)
-    (define-key map (kbd "<left>") 'ibuffer-backward-filter-group)
+    (define-key map [backtab] 'ibuffer-backward-filter-group)
     (define-key map (kbd "M-j") 'ibuffer-jump-to-filter-group)
     (define-key map (kbd "C-k") 'ibuffer-kill-line)
     (define-key map (kbd "C-y") 'ibuffer-yank)

How about the main topic here: binding C-x C-b to ibuffer by default?



^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: binding ibuffer to C-x C-b by default
  2010-10-09 14:51               ` Dan Nicolaescu
@ 2010-10-09 15:44                 ` Lars Magne Ingebrigtsen
  0 siblings, 0 replies; 46+ messages in thread
From: Lars Magne Ingebrigtsen @ 2010-10-09 15:44 UTC (permalink / raw)
  To: emacs-devel

Dan Nicolaescu <dann@gnu.org> writes:

> This can be fixed by using TAB/S-TAB for navigation to filter groups
> as proposed elsewhere in this thread.

I applied this and removed the <up>/<down> bindings, too.

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen




^ permalink raw reply	[flat|nested] 46+ messages in thread

end of thread, other threads:[~2010-10-09 15:44 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-10-08  4:13 binding ibuffer to C-x C-b by default Roland Winkler
2010-10-08  8:27 ` Deniz Dogan
  -- strict thread matches above, loose matches on Subject: below --
2010-10-07 15:17 Dan Nicolaescu
2010-10-07 15:46 ` Drew Adams
2010-10-07 20:54   ` Deniz Dogan
2010-10-08  0:29     ` Miles Bader
2010-10-08  0:34       ` Lars Magne Ingebrigtsen
2010-10-08  0:46         ` Miles Bader
2010-10-08  0:51           ` Lars Magne Ingebrigtsen
2010-10-08  1:32             ` Óscar Fuentes
2010-10-08  1:38               ` Lars Magne Ingebrigtsen
2010-10-08  2:26                 ` Óscar Fuentes
2010-10-08  2:33                   ` Lars Magne Ingebrigtsen
2010-10-08  3:16                     ` Óscar Fuentes
2010-10-08  6:48                   ` David Kastrup
2010-10-08 13:53                   ` Ted Zlatanov
2010-10-08 13:56                     ` Ted Zlatanov
2010-10-08 14:06                     ` Lars Magne Ingebrigtsen
2010-10-08 14:09                       ` Miles Bader
2010-10-08 16:45                       ` Dan Nicolaescu
2010-10-08  1:43               ` Miles Bader
2010-10-08  7:57             ` Sergei Organov
2010-10-08  8:51               ` Stephen J. Turnbull
2010-10-08 11:22                 ` Sergei Organov
2010-10-09  4:02             ` Chong Yidong
2010-10-09 14:51               ` Dan Nicolaescu
2010-10-09 15:44                 ` Lars Magne Ingebrigtsen
2010-10-08  0:57       ` Drew Adams
2010-10-08  1:30         ` Miles Bader
2010-10-08  2:57           ` Drew Adams
2010-10-08  1:03       ` Juanma Barranquero
2010-10-08  1:34         ` Miles Bader
2010-10-08  9:12           ` Juanma Barranquero
2010-10-09  4:01       ` Chong Yidong
2010-10-07 23:29 ` Juri Linkov
2010-10-08  3:05   ` Dan Nicolaescu
2010-10-08  9:23 ` Deniz Dogan
2010-10-08 11:26   ` David Kastrup
2010-10-08 11:43     ` Deniz Dogan
2010-10-08 11:51       ` David Kastrup
2010-10-08 12:13         ` Deniz Dogan
2010-10-08 12:19           ` Deniz Dogan
2010-10-08 12:27             ` David Kastrup
2010-10-08 15:17             ` Lennart Borgman
2010-10-08  9:54 ` René Kyllingstad
2010-10-08 16:06   ` Drew Adams

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).