1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

directory alias bug?

Discussion in 'Support' started by Péter Köves, Nov 25, 2009.

  1. Péter Köves

    Joined:
    Jun 1, 2008
    Messages:
    58
    Likes Received:
    0
    I have a directory alias:

    alias hu*tils:=c:\_\HUtils\

    The definition is accepted, but when I use it only the full form (e.g., dir hutils:) works; the abbreviated (e.g., dir hu:) versions do not. I don't see anything in the help saying that abbreviation cannot be used in directory aliases.
     
  2. Jay Sage

    Joined:
    Jun 2, 2008
    Messages:
    284
    Likes Received:
    1
    > the abbreviated (e.g., dir hu:) versions do not. I
    > don't see anything in the help saying that
    > abbreviation cannot be used in directory aliases.

    In fact, abbreviations don't work because of the requirement to have a
    colon. With your definition, "hu*tils:=c:\_\HUtils\", you would have to
    issue the command as "dir hu" with no colon, since "hu:" does not match
    the beginning characters of "hutils:".

    I wish that Rex had made directory aliases distinct from command aliases
    (loaded into a separate memory space). Then one could define a directory
    alias

    diralias hu*tils=c:\_\HUtils\ (note: no colon in the alias name)

    Then the expressions hu:, hut:, hutil:, etc. would all match that
    abbreviated directory alias, with the terminating colon being the signal
    to check the directory alias definitions. By storing the directory
    aliases together with the command aliases, I suspect it is really hard
    to deal with abbreviations of directory aliases.

    What I do is define a whole series of directory aliases:

    hu:=dirname
    hut:=dirname
    huti:dirname
    (etc.)

    It's slightly tedious, but it works.

    -- Jay
     
  3. rconn

    rconn Administrator
    Staff Member

    Joined:
    May 14, 2008
    Messages:
    9,732
    Likes Received:
    81
    You cannot use abbreviations in directory aliases. (There's nothing in the
    help that says you *can* use abbreviations!)

    If I could do it over, I would eliminate all abbreviated alias support, as
    IMO it provides a miniscule benefit for a miniscule number of users, while
    greatly complicating expansion.

    Rex Conn
    JP Software
     
  4. vefatica

    Joined:
    May 20, 2008
    Messages:
    7,792
    Likes Received:
    29
    On Wed, 25 Nov 2009 19:31:09 -0600, rconn <> wrote:

    |---Quote---
    |> I have a directory alias:
    |>
    |> alias hu*tils:=c:\_\HUtils\
    |>
    |> The definition is accepted, but when I use it only the full form (e.g.,
    |> dir hutils:) works; the abbreviated (e.g., dir hu:) versions do not. I
    |> don't see anything in the help saying that abbreviation cannot be used
    |> in directory aliases.
    |---End Quote---
    |You cannot use abbreviations in directory aliases. (There's nothing in the
    |help that says you *can* use abbreviations!)
    |
    |If I could do it over, I would eliminate all abbreviated alias support, as
    |IMO it provides a miniscule benefit for a miniscule number of users, while
    |greatly complicating expansion.

    I've never used it in fifteen years or so. What's the point? Why use (and
    remember) anything longer than the shortest form?
    --
    - Vince
     
  5. Jay Sage

    Joined:
    Jun 2, 2008
    Messages:
    284
    Likes Received:
    1
    > I've never used it in fifteen years or so.

    I, on the other hand, have used it extensively.

    > What's the point? Why use (and remember) anything
    > longer than the shortest form?

    I find it's easier and more reliable to remember long, self-descriptive
    command names, and then to use shorter forms. If I'm not sure I remember
    the short form, I can always use the long one.

    On the other hand, I think that Rex is correct: we really could do
    without them. Today's computers have tons of memory, so who cares if we
    have to define several versions of an alias. So instead of defining, for
    example

    plugl*oad=*plugin /L ...

    one can define

    plugload=*plugin /L ...
    plugl=plugload

    Not only do we have tons of memory, but computers are so fast that the
    extra processing time to handle the larger number of aliases is negligible.

    -- Jay

    P.S. I should have used that same approach in my previous directory
    alias example.

    hu:=c:\_\HUtils\
    hut:=hu:
    huti:=hu:
    hutil:=hu:
    hutils:=hu:

    This way the whole set of definitions can be changed on one line.
     

Share This Page