[wingide-users] Tiny feature request
Martin Frankel
martin_d_frankel at yahoo.com
Thu Jun 22 20:11:20 EDT 2006
Your original complaint was that you edited the wrong file of many with
the same name. The full file path is in the window title bar. You don't
have to touch your mouse or wait for any tool tip to know what file
you're working on.
Now you're talking about selecting which tab to click on to edit one of
many files with the same name. You claim that "anything is better than
the current solution." So let's examine that assertion.
1) Any solution which increases the size of the tabs in the common case
in order to give a small benefit in the uncommon case is a terrible
design tradeoff. This includes non-adaptive paths of any sort in the
tab. I think we agree on this.
2) The number provides a mnemonic that is better than nothing, and far
more compact than a full path. It costs nothing in the common case where
files have descriptive names. It costs very little in the uncommon case,
just a few characters in the tab. Users often remember the sequence in
which files were opened, so this has good mnemonic value for just a few
characters. I find this the correct tradeoff as do (for example) the
authors and users of Emacs over the 20 year history of that editor.
3) For those who don't like remembering numbers, the tooltips work fine
as a reminder. Since you're using the mouse to click on the tab anyway,
you've already spent the time to move your hands from the keyboard to
the mouse, and maneuver to the correct button. All you have to do is
wait a half second. This method also has no cost in the common case.
4) There are various possibilities for adaptive paths to resolve
ambiguities. "Eclipse" and "ellipses" seem to be the two proposals on
the table. It is easy to come up with corner cases that are misleading
with either scheme. For example "bar/baz/baz/foo.py" and
"bar/baz/foo.py" are misleading with both schemes. Neither scheme scales
well to large projects. Both schemes violate common pathname
conventions. Neither seems appropriate as a default, although they could
be valuble to users who habitually edit many files with identical names.
As you pointed out, feature creep and excess configurability have their
own costs, which needs to be weighed against the marginal advantage in a
generally uncommon use case.
It's interesting that you bring up Apple's UI design which has always
placed high value on consistency and orthogonality, and much lower value
on specialized tweaks for power users with rare use cases. I would argue
that these values have been instrumental to Apple's success.
The real solution of course is to choose unique file names. It's not
like this is a big hardship. __init__.py's can and (arguably) should
contain just a few lines of imports.
Martin
More information about the wingide-users
mailing list