 |
Home | Changes | Index | Search | Go
Introduction
Ever wondered where the window you were using to compose the mail went, in which desktop it was or is it closed ? Ever wished you had an apprentice to manage your desktop, who understands your commands like close all editors, log me out, start some song and executes them on the desktop just as you would have done it. Here we bring Next generation Desktop closer to the Next generation User Interaction, where the desktop understands the user as a real friend.
Launching the NLC
Click on the NLC icon on the taskbar. This will launch NLC in background. System can become slow for 2-3 seconds as NLC is loading the parser in the memory.
Now whenever you want to type the command in natural language enter F12. F12 is the hotkey for brining in the mascot that takes the input. You should see a text panel with the
message Please enter your command in natural language. Focus on it and start typing your command. Press Enter. You should see the desired action.
Grammar
Engine understands imperative sentences in Natural Language. An imperative sentence is a sentence that
instructs or commands. For example, "go there", "open the window", "close all windows", etc. You can even simply
say "hide", "close" or directly the application "helper", "game", etc.
Some Sample Commands
- helper This launches the Lg3DHelp? application.
- hide the helper This minimizes the Lg3DHelper? application.
- show the helper This again brings back the same Lg3DHelper? window.
- open another helper This launches another Lg3DHelp? application.
- hide This hides the focussed helper.
- close all helpers*/*close all windows This will close both the helper applications.
Knowledge
NLC gets the knowledge (helper means Lg3DHelp?), (game means the TableTennis? game) etc from the config files nlc/conf/apps.xml or nlc/conf/base.xml.
Any unknown application will be recognized just as application, unless some entries about it are added to the config file. Take for example the table tennis
application. If we dont define anything in the config file about this application. Following will be the behavior.
- Launch Tabletennis game by clicking on its icon.
- Type command hide the window ---> game is hidden.
- Type command focus on game ----> NOTHING HAPPENS
This is because NLC does not know what a game is.
Now create following entries in base.xml and apps.xml.
In base.xml
<entity>
<name>game</name>
<parent>application</parent>
<synonyms>
<synonym>game</synonym>
<synonym>play</synonym>
<synonym>fun</synonym>
</synonyms>
</entity>
In apps.xml
<application>
<name>Table Tennis</name>
<entity>game</entity>
<command>java fullclassName</command>
<synonyms>
<synonym>table</synonym>
<synonym>tennis</synonym>
<synonym>tt</synonym>
</synonyms>
</application>
Now try the command I want to play some game. It will launch the table tennis game.
|