I have ubuntu 16.04 installed on my local pc and I'm trying to make my work environment as similar to the way it is configured at my job
to achieve that I wanted to use the same tcshrc file (yes, we use tcsh, not sure why...)
anyway, when I try to open a tcsh terminal (or to source ~/.tcshrc for the matter) I'm getting an error:
set: Variable name must begin with a letter.
trying to isolate the cause I found out that the next lines are enough to cause it
#!/bin/tcsh
echo 0
set history = 2000 # this line is not the cause, verified by echoing
echo 1
set savehist = (2000 merge)
echo 2
output:
0
1
set: Variable name must begin with a letter.
when i try to run set savehist = (2000 merge) as a regular shell command the terminal doesn't show any error.
ofcourse that at my job the tcshrc is working fine. in both I have tcsh 6.18.01 installed
any help is welcome
thanks
as answered by ilkkachu here, the reason for my .tcshrc not working was that few hidden characters were added to my original .tcshrc that I sent over an email. using
od -c .tcshrc
clearly showed the sneaky characters and once removed everything worked as expected