[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-usability
Subject:    Automatic completion mode
From:       Rafael =?utf-8?q?Fern=C3=A1ndez_L=C3=B3pez?= <ereslibre () kde ! org>
Date:       2008-11-16 15:15:47
Message-ID: 200811161615.50058.ereslibre () kde ! org
[Download RAW message or body]

[Attachment #2 (multipart/signed)]

[Attachment #4 (multipart/mixed)]


Hi all,

We have been discussing on kde-core-devel this issue, but it would be great to 
have some usability input to get a nice decision.

- The problem

When a lineedit has been set with "automatic completion mode" when the user 
writes for instance "kons" it gets suggested "konsole". From this point I will 
refer to this as "kons#ole". Because the left chunk of word before the '#' was 
written by the user while the 'ole' on its right has been suggested by the 
completion mode (and this latter part is gray). (look at completion.png 
attachment).

The screenshot is about krunner, but this is applicable to a higher number of 
apps and use cases.

As you might now what happens is that it "saves" previously entered commands. 
What is the problem ? Let's see:

= Story 1 =

Joe really loves autocompletion feature, it is really useful, however he found 
a not very nice problem. He wrote manually:

websvn.kde.org/trunk/KDE/kdelibs/kdeui/widgets and pressed enter in krunner.

After that, he wanted to open another URL, child of the one he just opened, so 
he manually writes:

websvn.kde.org/trunk/KDE/kdelibs

Before he presses enter he notices that on the lineedit there is shown:

websvn.kde.org/trunk/KDE/kdelibs#/kdeui/widgets (as shown on completion2.png), 
but he doesn't worry, because he can see that it is a suggestion. After all, 
he wanted to get to the URL he wrote.

For his own surprise, websvn.kde.org/trunk/KDE/kdelibs/kdeui/widgets is opened 
when he presses enter. He wonders why, since he wrote a certain URL, and he 
wanted to get to _that_ URL.

Anyway, he still loves autocompletion mode because he will get "kon#sole" and 
will be able to press enter and open his favourite terminal emulator, konsole, 
so he doesn't want to turn it off, he wishes developers would fix this 
annoyance instead.

= Story 2 =

Ann can type really fast. She always prefers to give paths to the applications 
she runs because is faster than opening the open/save dialog. Her friends 
usually say she has 11 fingers, but that is out of matter atm. Now, she opened 
krunner for the first time and was amazed how nice it was. She typed something 
like:

kwrite ~/listofinvitations.txt

and she started to edit her next birthday party friend invitation list. She 
was done, and she left her session opened. Her brother came and sit on the 
computer, he was surfing the internet and got some information of his interest 
that he wanted to save. He fired krunner and wrote:

kwrite

Well, he could see "kwrite# ~/listofinvitations.txt" but anyway, he wanted to 
_fastly_ fire up kwrite to paste that important information for him. For his 
surprise when he pressed enter he was reading the list of people his sister 
was going to invite to her birthday, and for even being worse, was that stupid 
guy what wanted to go out with his sister.

= Story N =

I think I can invent like N stories where N is a random positive number less 
than infinite.


- The solution

I don't think changing the completion mode is the best and smartest thing we 
can do here. People usually _love_ automatic completion mode, but with some 
small details improved it would be even better.

My suggestions for this being fixed:

- You wrote "kons" and you get "kons#ole". If you press the right arrow, you 
get "konsole" (nothing in gray) as if you were 'accepted' the suggestion. This 
isn't that critical, since anyway you were going to press enter, and your hand 
already moved from the main part of the keyboard. We actually use this when we 
are editing text on KWrite/Kate/Emacs/XEmacs/Vim/place here your favourite 
editor. Nobody has been known to be dead for this matter.

- You can accept the suggestion and the dialog itself by pressing shift + 
enter. In this case if you have "kons#ole" and press shift + enter, you get 
"konsole" running.

- You can accent the dialog and reject the suggestion by pressing a direct 
enter. In this case if you have 
"websvn.kde.org/trunk/KDE/kdelibs#/kdeui/widgets" you visit 
"websvn.kde.org/trunk/KDE/kdelibs".

- You can go back into what you write, making the suggestion being 
reconsidered. This means: I have "kon#sole". If I backspace what I can get is 
"ko#oka", since this match is closer.

So for suming up:

- You always have something like "foo#bar" (with bar in gray, or as a 
suggestion, depending on the current color scheme of the system). In general, 
if you dont 'accept' the suggestion, you go for 'foo'. Accepting the 
suggestion (this means, pressing right arrow, or shift+enter) would make you 
go for 'foobar'.

Ideas ? Opinions ? Suggestions ?


Regards,
Rafael Fernández López.

["completion.png" (image/png)]
["completion2.png" (image/png)]
["signature.asc" (application/pgp-signature)]

_______________________________________________
kde-usability mailing list
kde-usability@kde.org
https://mail.kde.org/mailman/listinfo/kde-usability


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic