Discussion:
Extending nested directory search syntax
Add Reply
Simon Clubley
2021-07-08 17:51:47 UTC
Reply
Permalink
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
an error:

$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name

Would anyone else find such syntax to be useful ?

Simon.
--
Simon Clubley, ***@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
Arne Vajhøj
2021-07-08 17:59:40 UTC
Reply
Permalink
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
Would anyone else find such syntax to be useful ?
Would you also expect:

$ dir SYS$SYSROOT:[SYSHLP.EXAMPLES][...]

to work?

Arne
Simon Clubley
2021-07-08 18:25:36 UTC
Reply
Permalink
Post by Arne Vajhøj
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
Would anyone else find such syntax to be useful ?
$ dir SYS$SYSROOT:[SYSHLP.EXAMPLES][...]
to work?
Yes. I don't see any way in which that would break existing behaviour.

You would still get one directory specification if you use f$parse()
or any of the other lower level parsing routines; it's just that the
VMS filename parser would combine it into one directory specification
before returning it to the user.

As far as I can see, my suggestion is backwards compatible with the
existing syntax and just introduces additional functionality that
does not break existing functionality.

It's annoying not being able to search subdirectories in this way
using logical names when the VMS designers have gone to the effort
to add such detailed logical name functionality and it seems more like
an artificial limitation in the filename specification parser.

Simon.
--
Simon Clubley, ***@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
Arne Vajhøj
2021-07-08 19:14:02 UTC
Reply
Permalink
Post by Simon Clubley
Post by Arne Vajhøj
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
Would anyone else find such syntax to be useful ?
$ dir SYS$SYSROOT:[SYSHLP.EXAMPLES][...]
to work?
Yes. I don't see any way in which that would break existing behaviour.
You would still get one directory specification if you use f$parse()
or any of the other lower level parsing routines; it's just that the
VMS filename parser would combine it into one directory specification
before returning it to the user.
As far as I can see, my suggestion is backwards compatible with the
existing syntax and just introduces additional functionality that
does not break existing functionality.
It's annoying not being able to search subdirectories in this way
using logical names when the VMS designers have gone to the effort
to add such detailed logical name functionality and it seems more like
an artificial limitation in the filename specification parser.
It should not break existing functionality, but it is a big change
to what has to be supported.

[foobar]
[...]
[foobar][...]
[foobar][a][b]
[foobar][a][b][...]
[foobar][...][a][b]

And they need to get it right everywhere.

A directory syntax that work in some contexts but not in other
contexts is not good.

Arne
Simon Clubley
2021-07-09 17:29:36 UTC
Reply
Permalink
Post by Arne Vajhøj
It should not break existing functionality, but it is a big change
to what has to be supported.
[foobar]
[...]
[foobar][...]
[foobar][a][b]
[foobar][a][b][...]
[foobar][...][a][b]
And they need to get it right everywhere.
All those examples above are just variants of the same thing.

Essentially, this is just a process of concatenating the multiple
directory components into one traditional directory specification.
File specification parsing in VMS is done in a central location
(or locations) and the rest of VMS just uses what it is given.

As such, there are not many places in VMS where support for this
needs to be added, and the end result is a single concatenated
directory string that looks the same as if the user had entered
the a full traditional directory string manually.

Simon.
--
Simon Clubley, ***@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
chris
2021-07-08 22:37:54 UTC
Reply
Permalink
Post by Simon Clubley
Post by Arne Vajhøj
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
Would anyone else find such syntax to be useful ?
$ dir SYS$SYSROOT:[SYSHLP.EXAMPLES][...]
to work?
Yes. I don't see any way in which that would break existing behaviour.
You would still get one directory specification if you use f$parse()
or any of the other lower level parsing routines; it's just that the
VMS filename parser would combine it into one directory specification
before returning it to the user.
As far as I can see, my suggestion is backwards compatible with the
existing syntax and just introduces additional functionality that
does not break existing functionality.
It's annoying not being able to search subdirectories in this way
using logical names when the VMS designers have gone to the effort
to add such detailed logical name functionality and it seems more like
an artificial limitation in the filename specification parser.
Simon.
Why not write a one line dcl script and alias to a suitable command
name ?. That's normally how it would be done in unix...
Simon Clubley
2021-07-09 17:34:39 UTC
Reply
Permalink
Post by chris
Why not write a one line dcl script and alias to a suitable command
name ?. That's normally how it would be done in unix...
How would that work ?

We are talking about rewriting directory specifications, not adding
qualifiers to commands (for example). The use of the dir command was
just one example.

My suggestion is also something that could be used in programs if needed
instead of just something to be used at the command line.

Simon.
--
Simon Clubley, ***@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
Phillip Helbig (undress to reply)
2021-07-08 18:28:44 UTC
Reply
Permalink
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
Would anyone else find such syntax to be useful ?
Yes.
Dave Froble
2021-07-08 22:02:18 UTC
Reply
Permalink
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
Would anyone else find such syntax to be useful ?
Yes.
Well, for me, I'd rather do what I need, and let the devs work on
important stuff.

$ SET DEFAULT SYS$EXAMPLES
$ DI [...]
$ HOME

Not so difficult ...
--
David Froble Tel: 724-529-0450
Dave Froble Enterprises, Inc. E-Mail: ***@tsoft-inc.com
DFE Ultralights, Inc.
170 Grimplin Road
Vanderbilt, PA 15486
Simon Clubley
2021-07-09 17:31:46 UTC
Reply
Permalink
Post by Dave Froble
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
Would anyone else find such syntax to be useful ?
Yes.
Well, for me, I'd rather do what I need, and let the devs work on
important stuff.
$ SET DEFAULT SYS$EXAMPLES
$ DI [...]
$ HOME
Not so difficult ...
Oh, David. :-)

If we did things your way we would all still be using 24-line terminals
with a single window editor such as EDT because that's the way it was
done in the past. :-)

Simon.
--
Simon Clubley, ***@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
Dave Froble
2021-07-09 23:49:36 UTC
Reply
Permalink
Post by Simon Clubley
Post by Dave Froble
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
Would anyone else find such syntax to be useful ?
Yes.
Well, for me, I'd rather do what I need, and let the devs work on
important stuff.
$ SET DEFAULT SYS$EXAMPLES
$ DI [...]
$ HOME
Not so difficult ...
Oh, David. :-)
If we did things your way we would all still be using 24-line terminals
with a single window editor such as EDT because that's the way it was
done in the past. :-)
Simon.
Funny ....

I use devices with more than 24 lines, and more than 80 characters on a
line, and when appropriate use multiple windows when editing.

What am I doing wrong? Please help me, I don't want to be wrong ...
--
David Froble Tel: 724-529-0450
Dave Froble Enterprises, Inc. E-Mail: ***@tsoft-inc.com
DFE Ultralights, Inc.
170 Grimplin Road
Vanderbilt, PA 15486
Simon Clubley
2021-07-12 05:36:34 UTC
Reply
Permalink
Post by Dave Froble
Post by Simon Clubley
Post by Dave Froble
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
Would anyone else find such syntax to be useful ?
Yes.
Well, for me, I'd rather do what I need, and let the devs work on
important stuff.
$ SET DEFAULT SYS$EXAMPLES
$ DI [...]
$ HOME
Not so difficult ...
Oh, David. :-)
If we did things your way we would all still be using 24-line terminals
with a single window editor such as EDT because that's the way it was
done in the past. :-)
Simon.
Funny ....
I use devices with more than 24 lines, and more than 80 characters on a
line, and when appropriate use multiple windows when editing.
What am I doing wrong? Please help me, I don't want to be wrong ...
You must admit that you give a very different impression with some
of your comments.

Maybe there's hope for you yet. :-)

Simon.
--
Simon Clubley, ***@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
Stephen Davies
2021-07-12 14:34:40 UTC
Reply
Permalink
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
One thing I have always disliked about VMS is the inability to do
something as simple as "dir SYS$LOGIN:[SOME_DIR]"

In fact, I have gone as far as defining my logicals in pairs,
a regular version MYLOG = "DISK1:[DIR1.DIR2]" and an alternative
version MYLOG_ = "DISK1:[DIR1.DIR2.]". This allow commands such as
"dir MYLOG:*PAT1*" and "dir MYLOG_:[*PAT1*]*PAT2*".
Simon Clubley
2021-07-12 17:44:17 UTC
Reply
Permalink
Post by Stephen Davies
Post by Simon Clubley
If you want to search all directories under sys$examples: (for example),
it would be nice if the following syntax worked instead of giving
$ dir sys$examples:[...]
%DIRECT-E-OPENIN, error opening SYS$EXAMPLES:[...] as input
-RMS-F-DIR, error in directory name
One thing I have always disliked about VMS is the inability to do
something as simple as "dir SYS$LOGIN:[SOME_DIR]"
It is a surprising omission given how well-used such syntax would
be and given how tightly integrated into VMS logical names are.

Simon.
--
Simon Clubley, ***@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
Loading...