Some people don't like to put the current directory, hostname, etc.
into their prompts because it makes the screen look cluttered to them.
Here's another idea. If your terminal or window system has a status
line or title bar, you might be able to put the information there.
That's nice because you'll be able to see the information while you
run programs. The bad side is that the information can get
out-of-date if you use a command that takes you to another host or
directory without updating the status line.

When you
cd
, an alias uses the
echo
command to write
special
escape sequences (
5.8
)
(terminal commands) to the terminal or window.

Here's a
cd
alias and other commands for your
.cshrc
file.
If I were logged in to
www.jpeek.com
in the directory
/home/jpeek
,
this alias would put:

www:/home/jpeek

in the status area.
Of course, you can change the format of the status line.
Change the command string below,
${host:h}:${cwd}
, to do what
you need.

If you always use a VT102-type terminal (and many people do), that alias
will work fine.
If you use a different terminal, read its manual or its
termcap
/
terminfo
entry (
41.11
)
and find the escape
sequences that work for it.

People who use more than one type of terminal, that aren't all
VT102-compatible, can add a
case
(
44.5
)
or
switch
(
47.6
)
to test the
terminal type and use a
cd
alias written for that terminal.
(The alias can also put the status information in the shell prompt on
terminals that don't have a status line.)
But you might have some trouble:
if the alias is defined in your
.cshrc
file but your terminal type
is set in your
.login
file, the terminal type may not be set
until after the alias has been read.
There are
workarounds (
2.7
)
.

The status line can also get out of sync with reality if you use
remote logins (
1.33
)
,
subshells (
38.4
)
,
and other things.
These might put a new prompt in the status line but not reset the
original prompt when it should be reset.
The easiest workaround for this is by using the command below to
change directory to
the current directory (
.
) and
reset the status line: