:t Remove all leading pathname components, leaving the tail. :r Remove a filename extension ‘.xxx’, leaving the root name.So as an example, we can remove everything but the base word of a full path (no path or postfix) with something like this:
% alias word 'echo word is \!^:t:r'But unfortunately at some point recently the :t started to fail when there was no path. This is not consistent with :r, which does just fine without a postfix.
# Current version of tcsh is 6.24.12: % echo $tcsh 6.24.12 # :t only works if we have a path % alias base 'echo base is \!^:t' % base /foo/bar base is bar % base bar Modifier failed. # :r works fine either way % alias nopost 'echo nopost is \!^:r' % nopost foo.bar nopost is foo % nopost foo nopost is fooI am confident that this was not the case previously (possibly back as far as 6.14.00, though I am unable to compile that version currently)