Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: directory alias



Ah, of course. Thanks for the idea... I feel stupid.

On Tue, Dec 3, 2013 at 11:41 PM, TJ Luoma <luomat@xxxxxxxxx> wrote:
>

> function cd {
>
> if [ "$#" = "0" ]
> then
> # if no arg, go to $HOME
> chdir "$HOME"
> else
> if [ -d "$@" ]
> then
> # if the arg is a valid directory, go there
> chdir "$@"

elsif [ -n "${$@}" ] && [ -d "${$@}" ]
then
  chdir "${$@}"
else

> echo "chdir: no such file or directory: $@"
> return 1
> ;;
> esac
> fi

> }

If I could only inject variables into the function like:
local $cd::foo="/usr/local/foo"

so I could do that from the command line and wouldn't have any
namespace conflicts, that'd be perfect. But, I can live with global I
guess....

>
>
>
>
> On Tue, Dec 3, 2013 at 10:21 PM, shawn wilson <ag4ve.us@xxxxxxxxx> wrote:
>>
>> not sure if this is really a 'zsh thing' but I'm looking for a way to
>> create aliases for a command. I don't want a bunch of symlinks in my
>> home directory, and I don't want a universal alias for each directory
>> I commonly cd into. What I want is a way to do:
>> cd foo
>> and it go to ~/some/deep/directory/tree/foo
>> and
>> cd bar
>> and it go to /usr/local/some/path/bar
>>
>> Is there some zsh-ism (or better bash-ism that also works in zsh so
>> that this works on systems I maintain without zsh) to do this without
>> symlinks?
>
>



Messages sorted by: Reverse Date, Date, Thread, Author