> James, > > You're swimming upstream. Don't do that. Use the system in accordance with > its design. >
Don't listen to him Jim! You pound anything long enough, it'll give! > Parsing command lines based on white-space separators fundamentally entails > the need for escaping or quoting when those separator characters are to be > included in the arguments and not used to separate them. > If you do: VAR='path with spaces' it tab-completes to: path\ with\ spaces\ which is what James wants. Unfortunately, and as I neglected to note in my last post since I didn't realize it til just now, you can't: cd $VAR you must still cd "$VAR" Ah well, more pounding I guess.... > > At 22:09 2002-12-03, James Shaw wrote: > >Hi everyone, > > > >I have been using cygwin for several months, and there is something that I > >haven't been able to figure out how to do: effectively use spaces in bash > >environment variables. > > > >I realize this is basically a bash question and isn't Cygwin specific, but > >I'm sure more Cygwin users have to deal with spaces in bash than the > >typical bash user. > > > >What I want to do is define an environment > >variable so I can easily cd or ls. E.g. > >% PF="/cygdrive/c/Program Files" > >% cd $PF > >% ls $PF/Games > >% ls $PF/G<tab completion!> > > > >The above is close, I can > >% cd "$PF"; ls "$PF"/Games; and even > >ls "$PF"/G<tab> however, the quotes are clunky. > > > >My kludge to avoid the quotes is: > > > >% PF2="/cygdrive/c/Program?Files" > > > >which allows cd $PF; ls $PF/Games, > > > >but stops bash in its tracks on tab completion. > > > >Since I would find this very handy, I've spent some time on trying to make > >this work. I've tried various quoting schemes, but with no luck. > > > >So, I ask the list: > > Can you define $PF so that cd $PF; > > ls $PF/Games; and ls $PF/G<tab> all work??? > > No, No and Yes. Just leave the spaces in the variable and command > completion will insert the necessary escapes when expanding it. If the > variable references is already inside a double-quote (even if it's not yet > closed on the right), then command completion will not insert the backslashes. > > > >I usually like to puzzle these out for myself, but in this case, I'm stumped. > > > >Thanks for your help, > >James > > > Randall Schulz > Mountain View, CA USA > > > -- > Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple > Bug reporting: http://cygwin.com/bugs.html > Documentation: http://cygwin.com/docs.html > FAQ: http://cygwin.com/faq/ > -- Gary R. Van Sickle Brewer. Patriot. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/