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

List:       kde-panel-devel
Subject:    Re: GSoC: command and get obeyed !
From:       "Jordi Polo" <mumismo () gmail ! com>
Date:       2008-03-19 11:13:38
Message-ID: a4162420803190413q58435c7wef6fbc087a917ae3 () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Rereading this message, please understand that all I am talking about is
about a fast interface that does not need mouse picking the correct choice.

I was very concentrated thinking about this problem (in the toilet, you know
...) and had a thought both trivial and illuminating.
Even if they may seem the same the following two are very different cases:
- http://whatever
- =2+2

In the first case, we have _plain text_ that happens to be an URL
In the second case, we have a _domain specific language_ '=' is not likely
to be found in most document in that position.

I think both are really cool and both have very good uses not only in
krunner but for the desktop.
The main advantage of the first approach (other than less typing) is that
anything becomes krunnable, any konqueror word, any Localizer sentence, any
equation.
To achieve it we just need a shortcut that runs krunner in whatever you last
put in your clipboard and launch the most relevant action. Even the
applications can give tips to krunner to choose the runner?
And Imagine a shortcut that do the above and takes the information back to
your application (maybe this can be managed with drag and drop or something
similar and get a lot of power with little effort).
Also is the way to go if you don't know the commands.

The main advantage of the second approach is that it lets you make complex
things with a very natural interface and in an unified way all over the
desktop.
"translate"
"map"
"send to bugs@kde.org"
"svn up"

All those commands will be applied again to the last thing you entered in
the clipboard (or run them in Krunner as "command data")
It will be very possible but not so general to select the word "Madrid" (or
write it in krunner) and get the top rank runner a map service runner.
And almost imposible get the translation service in the first place given
any general word.
So commands can specify!

I argue that both modes (plain text and command line) are useful not only in
krunner but beyond.
But they must be differentiate (you may want to look for the word
"translate" in your HD).
The fastest thing I can think is using an special character like ':' or '='
that will not be likely to appear in a natural text at the beginning of a
sentence.
So:
translate  -> feed runners and get their results (the user select or launch
the top ranking)
:translate -> The command is parser and only the "translate" service runner
is called

I hope all this make sense for you as it does for me and see how the big
picture can make it a really powerful feature in KDE. I think that at least
the krunner and runners work is attainable in one SoC. Using it in
applications ... You know better than me how hard it can become.

Please let me know your thoughts. Sorry for the horrible long email... I may
be too verbose explaining myself ...



2008/3/19 Aaron J. Seigo <aseigo@kde.org>:

> On Tuesday 18 March 2008, Jordi Polo wrote:
> > If you write:
> > http://www.domain.com
> > Surely you want to open a browser with that
> > But it will be possible (if it is not working yet) that the files
> > downloaded from internet are annotated with the page from where they
> were
> > downloaded. Then you may mean search for that in your metainformation.
>
> which is one reason we have relevancy ranking and the ability to have
> multiple
> returns.
>
> > So, what I thought was create domain specific runners as you said (the
> > current swith user, logout, etc. Functionality is a good example) and a
> > language to avoid ambiguities. ("search  2+2"  or "calc 2+2" for
> instance).
>
> the calc runner actually use '=' to denote a calculation. so 2+2 won't
> produce
> a calculation, but =2+2 will. so we're mostly on the same page here. we
> could
> easily add "calc" to it the calc runner if we wanted, of course =)
>
> but yes, i agree with the concept.
>
> that said, krunner supports the idea of multiple answers, so even if you
> got
> two returns it's also ok. being able to rank them properly is pretty
> important, of course.
>
> > Also, it can be a good idea to make the commands eventually produce
> > information that could be inserted in other applications.
>
> the translation runner sort of does this already, actually, by putting its
> answer into the clipboard when selected.
>
> > But the "parse high level language and give the parsed information to
> one
> > domain specific runner" is pretty different and I'd say that even
> > incompatible with the "give the info to the runners and get the results"
> > that I think is how the current krunner works.
>
> i'm not sure i follow you here.
>
> there are two places the parsing can happen:
>
> * in individual runners
> * before hitting the runners
>
> if the latter, that just means we need to expose another data structure in
> addition to the raw search term to runners that care that contains the
> results of the parsing.
>
> --
> Aaron J. Seigo
> humru othro a kohnu se
> GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA  EE75 D6B7 2EB1 A7F1 DB43
>
> KDE core developer sponsored by Trolltech
>
> _______________________________________________
> Panel-devel mailing list
> Panel-devel@kde.org
> https://mail.kde.org/mailman/listinfo/panel-devel
>
>


-- 
Jordi Polo Carres
NLP laboratory - NAIST
http://www.bahasara.org

[Attachment #5 (text/html)]

<br>Rereading this message, please understand that all I am talking about is about a fast \
interface that does not need mouse picking the correct choice. <br><br>I was very concentrated \
thinking about this problem (in the toilet, you know ...) and had a thought both trivial and \
illuminating. <br> Even if they may seem the same the following two are very different \
cases:<br>- <a href="http://whatever">http://whatever</a><br>- =2+2 <br><br>In the first case, \
we have _plain text_ that happens to be an URL <br>In the second case, we have a _domain \
specific language_ &#39;=&#39; is not likely to be found in most document in that position.<br> \
<br>I think both are really cool and both have very good uses not only in krunner but for the \
desktop. <br>The main advantage of the first approach (other than less typing) is that anything \
becomes krunnable, any konqueror word, any Localizer sentence, any equation.<br> To achieve it \
we just need a shortcut that runs krunner in whatever you last put in your clipboard and launch \
the most relevant action. Even the applications can give tips to krunner to choose the \
runner?<br>And Imagine a shortcut that do the above and takes the information back to your \
application (maybe this can be managed with drag and drop or something similar and get a lot of \
power with little effort). <br> Also is the way to go if you don&#39;t know the \
commands.<br><br>The main advantage of the second approach is that it lets you make complex \
things with a very natural interface and in an unified way all over the desktop. <br> \
&quot;translate&quot; <br>&quot;map&quot;<br>&quot;send to <a \
href="mailto:bugs@kde.org">bugs@kde.org</a>&quot;<br>&quot;svn up&quot;<br><br>All those \
commands will be applied again to the last thing you entered in the clipboard (or run them in \
Krunner as &quot;command data&quot;)<br> It will be very possible but not so general to select \
the word &quot;Madrid&quot; (or write it in krunner) and get the top rank runner a map service \
runner. <br>And almost imposible get the translation service in the first place given any \
general word. <br> So commands can specify!<br><br>I argue that both modes (plain text and \
command line) are useful not only in krunner but beyond.<br>But they must be differentiate (you \
may want to look for the word &quot;translate&quot; in your HD).<br> The fastest thing I can \
think is using an special character like &#39;:&#39; or &#39;=&#39; that will not be likely to \
appear in a natural text at the beginning of a sentence.<br>So:<br>translate&nbsp; -&gt; feed \
runners and get their results (the user select or launch the top ranking)<br> :translate -&gt; \
The command is parser and only the &quot;translate&quot; service runner is called<br><br>I hope \
all this make sense for you as it does for me and see how the big picture can make it a really \
powerful feature in KDE. I think that at least the krunner and runners work is attainable in \
one SoC. Using it in applications ... You know better than me how hard it can become. <br> \
<br>Please let me know your thoughts. Sorry for the horrible long email... I may be too verbose \
explaining myself ...<br><br><br><br><div class="gmail_quote">2008/3/19 Aaron J. Seigo &lt;<a \
href="mailto:aseigo@kde.org">aseigo@kde.org</a>&gt;:<br> <blockquote class="gmail_quote" \
style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: \
1ex;"><div class="Ih2E3d">On Tuesday 18 March 2008, Jordi Polo wrote:<br> </div><div \
class="Ih2E3d">&gt; If you write:<br> &gt; <a href="http://www.domain.com" \
target="_blank">http://www.domain.com</a><br> &gt; Surely you want to open a browser with \
that<br> &gt; But it will be possible (if it is not working yet) that the files<br>
&gt; downloaded from internet are annotated with the page from where they were<br>
&gt; downloaded. Then you may mean search for that in your metainformation.<br>
<br>
</div>which is one reason we have relevancy ranking and the ability to have multiple<br>
returns.<br>
<div class="Ih2E3d"><br>
&gt; So, what I thought was create domain specific runners as you said (the<br>
&gt; current swith user, logout, etc. Functionality is a good example) and a<br>
&gt; language to avoid ambiguities. (&quot;search &nbsp;2+2&quot; &nbsp;or &quot;calc 2+2&quot; \
for instance).<br> <br>
</div>the calc runner actually use &#39;=&#39; to denote a calculation. so 2+2 won&#39;t \
produce<br> a calculation, but =2+2 will. so we&#39;re mostly on the same page here. we \
could<br> easily add &quot;calc&quot; to it the calc runner if we wanted, of course =)<br>
<br>
but yes, i agree with the concept.<br>
<br>
that said, krunner supports the idea of multiple answers, so even if you got<br>
two returns it&#39;s also ok. being able to rank them properly is pretty<br>
important, of course.<br>
<div class="Ih2E3d"><br>
&gt; Also, it can be a good idea to make the commands eventually produce<br>
&gt; information that could be inserted in other applications.<br>
<br>
</div>the translation runner sort of does this already, actually, by putting its<br>
answer into the clipboard when selected.<br>
<div class="Ih2E3d"><br>
&gt; But the &quot;parse high level language and give the parsed information to one<br>
&gt; domain specific runner&quot; is pretty different and I&#39;d say that even<br>
&gt; incompatible with the &quot;give the info to the runners and get the results&quot;<br>
&gt; that I think is how the current krunner works.<br>
<br>
</div>i&#39;m not sure i follow you here.<br>
<br>
there are two places the parsing can happen:<br>
<br>
* in individual runners<br>
* before hitting the runners<br>
<br>
if the latter, that just means we need to expose another data structure in<br>
addition to the raw search term to runners that care that contains the<br>
results of the parsing.<br>
<div><div></div><div class="Wj3C7c"><br>
--<br>
Aaron J. Seigo<br>
humru othro a kohnu se<br>
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA &nbsp;EE75 D6B7 2EB1 A7F1 DB43<br>
<br>
KDE core developer sponsored by Trolltech<br>
</div></div><br>_______________________________________________<br>
Panel-devel mailing list<br>
<a href="mailto:Panel-devel@kde.org">Panel-devel@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/panel-devel" \
target="_blank">https://mail.kde.org/mailman/listinfo/panel-devel</a><br> \
<br></blockquote></div><br><br clear="all"><br>-- <br>Jordi Polo Carres<br>NLP laboratory - \
NAIST<br><a href="http://www.bahasara.org">http://www.bahasara.org</a><br>



_______________________________________________
Panel-devel mailing list
Panel-devel@kde.org
https://mail.kde.org/mailman/listinfo/panel-devel


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

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