[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
mentor for user friendly and intelligent shell project
I have idea about making intelligent and user friendly shell.I will be
very thankful if your organisation can mentor my project during GSOC.
For a novice user remembering all commands is not possible ,Converting
simple written English into shell
commands can help an un experienced users to use and learn shell
commands .Secondly,Terminal uses exact command matching model .Some user might
forget exact command ,in such cases approximate matching capability of
shell can suggest commands to user,from which user can select
appropriate command .
English text can be processed using lexical,semantic , syntatic
knowledge and real world information of the language (NLP) and hence
commands can be generated .Applying these concepts in shell can help
novice user to get commands coresponding to written english text.
1. Suppose someone want to connect to internet using dial up .
He/She has to first configure wvdial.conf where he/she has to write
modem type, user name ,password and then execute wvdial command to
start connection .For an inexperienced user, it will be good if system
can support him/her for performing these tasks by either guiding or
executing commands for user. By making a new command for this purpose
say “help me” command can help user.
@root# help me “connect to net".
it automatically finds that wvdial.conf has to be configured and
prompt user to configure it and then give a message telling "wvdial"
should be used to connect to net or shell automatically execute the
For correcting commands, Listance model a variation of Longest Common
Subsequence Model can be used. In this model two words are considered
to be same if there Listance is not more then a predefined number k.
Suppose that length of two words A and B is m and n respectively, then
the listance between them is defined as max(m,n)-Least Common
SubSequence(A,B).By storing a collection of SubSequences extracted
from actual command in a table and performing the similar
transformation when user type incorrect command to get approximate
command will result into more user friendly shell.
1.Example if k is 1 and command is ifconfig then
(fconfig ,iconfig ,ifonfig ,ifcnfig ,ifconif ,ifconfg,ifconfi) will be
stored in Sub Sequence Command Table for ifconfig command by deleting
one character from ifconfig.
If user types ipconfig as there is no command like this available so
correcting algorithm wiil be called which will generates the sub
sequenences (pocnfig,iconfig,ipcnfig,ipcofig,ipconfg,ipconfi) .
iconfig is there in both set of sequences so ifconfig is suggested as
approximate command to user.
Main Index |
Thread Index |