Idea I had once: to have ^-not-followed-by-slash interpreted according to a config file, e.g.,
% cat ~/.subversion/config [shorthands] svn16 = https://svn.eu.apache.org/repos/asf/subversion/branches/1.6.x % svn info ^svn16/README | grep URL URL: https://svn.eu.apache.org/repos/asf/subversion/branches/1.6.x/README % Orthogonally to that, agreed that ':' would be better than '^', because * it doesn't have to be escaped in zsh and in cmd.exe * it looks a bit like a URL or an scp(1) syntax ... but it was too late to change when I suggested it last time, and it's certainly too late to change now. Daniel Tino Schwarze wrote on Fri, 8 Oct 2010 at 12:01 -0000: > Hi Karl Heinz, > > On Fri, Oct 08, 2010 at 11:25:56AM +0200, Karl Heinz Marbaise wrote: > > > i've a suggestion about the caret notation which is very handy in daily > > work. > > > > The caret syntax is very helpfull if you're working with a repository > > which contains only a single project and of course makes life easier. > > > > svn cp ^/trunk ^/tags/RELEASE-1.0.0 -m"- Tagging" > > > > > > But unfortunately i don't have often the pleasure to work with such > > repositories. The usual case is to have multiple projects inside a > > repository. The result of this is the following: > > > > svn cp ^/path/trunk ^/path/tags/RELEASE-1.0.0 -m"- Tagging" > > > > The part "path" becomes longer and longer the more projects are > > contained in such a repository or depending of the structure of the > > projects/modules. > > > > > > So i would like to suggest to introduce an enhancement of the > > caret syntax to get to a shorter way of writing the things for > > tagging/branching. > > > > svn cp ^^/trunk ^^/tags/RELEASE-1.0.0 -m"- Tagging" > > > > The usage of the doubled ^ is just as an example, cause i know > > on Windows you already have to type the doubled ^ because of the shell. > > So what should ^^ (or however it turns out) mean, exactly? > > I always wanted something like "repository path of current working copy" > - is that what you mean? Maybe ^: could be used as the anchor for > "repository path of current working copy", if you are in a copy of > /some/path/to/project/branch/whatever you might use > > svn cp ^: ^:../../tags/newtag > > to copy that path to /some/path/to/project/tags/newtag. > > Might be difficult to implement, I suppose but IANAD ;). > > Tino. > >