I have a strange problem with (t)csh since the latest opensuse/tumbleweed upgrade. csh and tcsh don't source the init files completely. They seem to terminate after sourcing the first nested file.
They process the code in /etc/csh.cshrc
until they find a command like source /etc/profile.d/bindkey.tcsh
. Then they process this file (which is expected) but after that processing stops, i.e. the rest of /etc/csh.cshrc
is not executed. Any idea what goes wrong? tcsh version is 6.21.00.
For debugging it, run
tcsh -X
What happens if you temporarily rename the suspicious file?
mv /etc/profile.d/bindkey.tcsh /etc/profile.d/bindkey.tcsh.disabled
Thanks for your answer. tcsh -X shows exactly the commands until the end of the bindkey.tcsh. Anyway, I think it's not a peculiarity of these files. I tested with two toy files
# file1
echo "entering file 1"
source file2
echo "leaving file 1"
# file2
echo "entering file 2"
set x=1
echo "leaving file 2"
And this is what happens:
heiko>source file1
entering file 1
entering file 2
leaving file 2
heiko>
That looks like a severe bug in tcsh.
Downgrade It!
(I wonder why they still do changes to that dead horse.)