== Bash as login Shell == We made a serious effort to make bash a '''supported''' login shell, but it's impossible. There is no way to reliably give bash users a working environment identical to that of zsh users, due to bash's limited functionality w.r.t. startup files processing. '''Notice this does not prevent users from writing or using bash scripts in any way.''' To illustrate what we mean by that let's take the '''ini''' function as an example, which is defined within our centrally provided start procedures as {{{ ini () { eval "`/usr/share/NAF_profiles/ini.pl -b $*`" } }}} The only way to make that function available for bash users is to put that into an arbitrary file (e.g. /etc/bashrc) and source that file from .bashrc. Any user who is importing his environment, especially a .bashrc file from other computers would have to follow that convention to source the above mentioned file. There is no way from a system point of view to enforce that, therefore every bash user would have to be teached to obey rules that hold true on the NAF, but not necessarily elsewhere. We do believe that zsh is a bash replacement that does behave almost identically to bash and most users should be as comfortable as if using bash. == Tips for the interactive use of zsh == Apart from the (huge) man page {{{ man zshall }}} there is a nice [[http://grml.org/zsh/zsh-lovers.html|zsh lovers]] page with lots of practical hints that is worth reading. To give former bash users better support, we have collected here complaints from users together with possible solutions to make zsh more bash like === zsh completion prints below the prompt, not above it === please try {{{ unsetopt ALWAYS_LAST_PROMPT }}} === zsh completion does not work properly === * The command {{{links -dump -no-references file}}} refuses to complete file names. That is the effect of the completion function /usr/share/zsh/4.2.6/functions/_links, which does not recognize {{{-no-references}}} as an option. The redefinition of _links with the lines {{{ '(-help)-no-references[runs links bla2]' \ '(-help)-no-numbering[runs links bla bla]' \ }}} would fix that. === zsh does not correctly display 2 byte UTF-8 characters === The currently installed version is not yet UTF-8 aware. Newer UTF-8 capable versions do exist but they are not yet provided by SL3/4/5. If the cursor seems to be placed improperly due to UTF-8 chars typed, then erasing the line (CTRL-A CTRL-K) and/or clearing the screen (CTRL-L) should help. We believe that there should be no urgent need to type UTF-8 chars on the command line, therefore we regard that as a minor problem.