I looked at the TSCH man page, which said Either output-file or error-file may be '/dev/tty' to send output to the terminal. So if I can redirect to two different locations, that would work. But calling, say,(make foo > /dev/tty) > error.txt leaves me with an empty error.txt. As does make foo | tee error.txt. 
TCSH: I want to display command output and redirect to a file
io redirection;tcsh
You need to do: (command > stdout) >& stderrE.g.: (make foo > /dev/tty) >& error.txtThe first > redirects the stdout to the tty, then the >& redirects whatever's left into error.txt.In your case, it'd go like this:~> (make foo > /dev/tty) >& error.txt~> cat error.txtmake: *** No rule to make target `foo'.  Stop.If you want to both display it, and write it to a file, |& is analogous to >&, i.e.:~> ( python err.py > /dev/tty ) |& tee error.txtThis is stdoutThis is stderr~> cat error.txtThis is stderr