AIBash is a project which aims to make Bash act more intelligently. It features typing error-correction and the ability to learn that certain file suffixes are associated with certain programs so that other programs are filtered out while pressing TAB. Other features are planned for the future.
| Tags | Utilities Terminals Terminal Emulators/X Terminals Scientific/Engineering Artificial Intelligence |
|---|---|
| Licenses | GPL |
| Operating Systems | POSIX Linux |
| Implementation | C++ C |
Recent releases


Changes: Program correction now uses information about the suffixes of filenames. To decide which program to use, the system determines which is normally used with files with the given suffix by using statistics from commands entered earlier. CTRL-O now allows command (filename and Java classname) completion, using these statistics. Double suffixes (like ps.gz) are treated specially.


No changes have been submitted for this release.
- All comments
Recent commentsHow do we go about to start a basic small shell
can anybody plz tell me how do we start writing a new small shell . or else if i would like to participate in devlopment of this AIbash, what can i do ,what are the modules.
this is what i know about shell is that it has to recognise its parameter the command and call the approtiate function or executable.
i think we need to write parser for that can we use lex and yacc there
Re: Why not just use zsh?
> Hi, one thing that would interest me if
> zsh also creates a statistics about
> which program is
> associated with which suffix (e.g. latex
> with .tex) and path trees to use this
> information for path names the user
> wants to enter at some later time.
No, zsh uses preprogrammed rules for that type of thing. Sounds like an interesting idea though. Would probably be easier to do for zsh without hacking C code: you can get at commands executed from the preexec() special function and by changing the default completion function, you could have it lookup your statistics to decide what to do.
I think you'd get more interest using zsh as a basis for your ideas. Having made a concious decision on their shell instead of using the default, zsh users tend to be more interested in interesting improvements. It also has dynamic modules so bloating the main binary is less of an issue. Zsh is a much more open project: Bash has no mailing list other than for bug reporting and no public access to development sources in CVS.
Re: Why not just use zsh?
> Most of what is mentioned on the web
> page can already be done in zsh. Even
> tcsh can do basic spelling correction.
> With the zsh completion it is possible
> to correct typos and complete partial or
> approximate things.
Hi, one thing that would interest me if zsh also creates a statistics about which program is
associated with which suffix (e.g. latex with .tex) and path trees to use this information for path names the user wants to enter at some later time.
By the way, I could need some
people to further improve this project.
Example for Path Tree
home
+heinz
++data
++statistics
++prog
++doc
+holger
The tree was messed up in the previous mail.
Re: Why not just use zsh?
> Most of what is mentioned on the web
> page can already be done in zsh. Even
> tcsh can do basic spelling correction.
> With the zsh completion it is possible
> to correct typos and complete partial or
> approximate things.
Hi, one thing that would interest me if zsh also creates a statistics about which program is
associated with which suffix (e.g. latex with .tex) and path trees to use this information for path names the user wants to enter at some later time.
By the way, I could need some
people to further improve this project.
Example for Path Tree
home
heinz
data
statistics
prog
doc
holger
Why not just use zsh?
Most of what is mentioned on the web page can already be done in zsh. Even tcsh can do basic spelling correction. With the zsh completion it is possible to correct typos and complete partial or approximate things.