On Thu, 2005-07-07 at 22:07 +0100, Nicolas Roard wrote:
> Hi,
>
> Just putting together a few ideas discussed with david and jesse..
>
> Remember theses recent articles, "{ jabber | the url field } is the
> new command line" ?
> Well, they contain a lot of truth :-D
>
> Basically, I think that command line, while it shouldn't be
> obligatory, should be
> available easily to enter commands on the desktop -- simply because
> it's really powerful :-)
>
> Though, instead of opening an xterm, what we should do is to have a
> textfield either
> opened all the time or opened by a shortcut (like on tiger,
> command-space open the spotlight search field) -- anyway the user can
> open an xterm if he needs it.
>
> But having an always-present or easily present textfield/command line
> would be great.
Yes, that was one of intentions of StepTalk - to be able to have shared
place for "talking to all objects available to the user". Back-end is
there, only GUI is missing.
> Imagine that we have "backends" for this command-line, separate
> programs that can do something with what you type. Example of
> backends:
> - a search backend :-)
> - an help backend, searching in the help ..
> - an "open url" backend (type an url, it opens it in the browser)
> - an "open directory" backend (type a path, it opens the filemanager..)
> - an "assistant" backend (type "remember seb's birthday", it will add
> an entry on your todo list, etc. See NewtonOS for more ideas...)
> - a jabber backend (type "how are you ?", choose the person and send
> it through jabber)
> - etc.
>
Perhaps STEngine? :) Object names are in STContext/STEnvironment.
Changing languages in a conversation is easy: [conversation
setLanguage:aLanguage].
> I think it's rather clear that having a command line would be really handy.
>
> Now, how to choose which backend will execute what you typed ?
> Well, I don't think there's only one answer, but likely a mix of theses:
>
> - have a pull-down menu listing all the backends, you click on the one you
> want
Get all language bundles?
> - use keyboard shortcuts (indicated on the menu)
> - have intelligent, context-sensitive tab completion (and thus you
> could derive the right action too, as well as providing help to the
> user with the completion)
Like in stshell? :)
> - prefix your "order" with something (eg, "david: how are you ?",
> "assistant: meeting tomorrow at 10 with my advisor")
>
Pre-parse text before passing it into the STConversation instance?
> Thoughts ?
StepTalk can be used for that for the very beginning as it already
contains appropriate tools:
- context container with dictionary of named obects
- conversation mechanism
- language bundles
Later language autodetection can be used. Unimplemented StepTalk API is
there (see STEngine.h).
Stefan Urbanek
--
http://stefan.agentfarms.net
First they ignore you, then they laugh at you, then they fight you, then
you win.
- Mahatma Gandhi