Date: Sun, 13 May 2012 15:25:09 +0200 From: Polytropon <freebsd@edvax.de> To: Jos Chrispijn <jos@webrz.net> Cc: freebsd-questions@freebsd.org Subject: Re: CSH prompt Message-ID: <20120513152509.09dbfc10.freebsd@edvax.de> In-Reply-To: <4FAFAF7F.4010409@webrz.net> References: <4FAFAF7F.4010409@webrz.net>
next in thread | previous in thread | raw e-mail | index | archive | help
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. :-) -- Polytropon Magdeburg, Germany Happy FreeBSD user since 4.0 Andra moi ennepe, Mousa, ...
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120513152509.09dbfc10.freebsd>