On Thu, 12 Aug 2004, lists wrote:
if [[ -f ~/.zshrc ]]; then . ~/.zshrc ; fi
in my .zprofile
That shouldn't be necessary. The ~/.zshrc is read by all interactive
shells, and the ~/.zprofile by all login shells. Although it's
possible
to create a non-interactive login shell, it's rather unlikely.
So the problem here ...
.zshrc:unalias:181: no such hash table element: run-help
... is that the ~/.zshrc is read _twice_, once when you source it and
then
again when zsh normally would read it, and the second time run-help has
already been unaliased.
The error message goes away when in don't source .zshrc in my
.zprofile.
Yep.
However, at that point the following zstyle from my .zshrc file
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
doesn't work
There must be some kind of order-dependency involved. The normal
sequence
of file reads (where you fail to see colored listings) would be
(ignoring
zshenv and zlogin for now)
/etc/zprofile
~/.zprofile
/etc/zshrc
~/.zshrc
To make colored listings work, you've changed the order to
/etc/zprofile
~/.zprofile + ~/.zshrc
/etc/zshrc
~/.zshrc
When you "exec zsh" chances are it's no longer a login shell, so the
two
zprofile files are not sourced in that case ... since coloring works
then,
that would tend to indicate that something in the ~/.zprofile is
causing
the problem, and it would have to be something that comes after the
point
where you inserted the sourcing of ~/.zshrc.
Does ~/.zprofile perhaps change the value of $LS_COLORS ?