On 05/13/12 07:25, Polytropon wrote:
On Sun, 13 May 2012 14:56:31 +0200, Jos Chrispijn wrote:
In cshell I use this prompt: set prompt = "%B[%@]%b %m[%/]>  "
The problem I face now is that if I use this prompt with symbolic links,
the presented location is displaying the symbolic link rather than the
real directory name.
Is there a way of preventin this?
Yes, a very ugly way which I just found out:

        alias precmd 'set WD=`pwd`; set prompt = "%B[%@]%b %m[$WD]>  "'

Example:

        [3:21pm] r56[/]>  cd /sys
        [3:21pm] r56[/usr/src/sys]>  _

It redefines the whole prompt at any command that could
affect the current working directory (not only "cd" can
do that). This is needed as any call to `pwd` stored into
a variable will only affect $prompt once - this is when
it's set, only at this time $WD would be evaluated. So
that's why this strange command. :-)

Oh, and I just improved it. How about this?

        alias precmd 'set prompt = "%B[%@]%b %m[`pwd`]>  "'

Much better. :-)

I've butchered it further, but thanks for doing the *real* work:

user:
alias precmd 'set prompt = "\n%{\033[32m%}%m [%h] [%@]%b%{\033[0m%} [`pwd`]$ "'

root:
alias precmd 'set prompt = "\n%{\033[31m%}%m [%h] [%@]%b%{\033[0m%} [`pwd`]$ "'

Regards,

r





_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

Reply via email to