× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Hi Buck

I tried a little more on this, as well. It does seem that the "Type filter text" is just that, a filter on the entire text.

So if you type a 'z', you get absolutely nothing.

In Duane's example, I think typing an 'l' gives you things like "Fields", and then the stuff that goes under that line. There is an "el" in "Fields".

There seem to be some design choices on what is displayed in the outline within certain "found" items. An 'm', for example, picks up the indication that a variable has been modified. I notice that the outline is opened up to show these items - their parent items do NOT have an "em" so are not really "found".

So maybe the rule is, when an item is found, show everything under it.

Clearly, now, the filter is not a "variable-name" filter, it is only a text filter, essentially going through the entirety of a compile listing and looking for instances of the filter text.

So what should Duane (and the rest of us) do? Change his code to align with something the filter is not intended to do? I'd say no - rather, find, for now, a way to use the outline with all valid code.

So there are no reserved words in play here - a good thing to look at, of course. And there are no "restrictions" or "limitations", as I see it, in RDi - as you said, Buck, it will likely help to know how that part of RDi works.

Now the next thing might be to submit an RFE to modify the behavior of the outline filtering.

Regards
Vern

On 11/12/2015 9:25 AM, Buck Calabro wrote:
On 11/10/2015 12:51 PM, Duane Scott wrote:

I am using RDi 9.1 and was wondering why, when filtering the Outline for the letter M, the outline does not show occurrences of source where M is uses as an array index. Is this also a feature of more recent versions?
I'm not a heavy user of Outline View so this post was an eye opener.
First, on my 9.5, filtering on 'm' (without quotes) does return a
reference to the declaration of m:

dcl-s m int(10);

It also does show array references using m as an index:

var = arr(m);

It also shows every single place that any variable is modified:

saveLabCouncil : Character (3)
230 (M)

It turns out that I only ever use single character variables locally,
things like array indexes which are declared and used within a few lines
of each other. I never need to filter to look for them, because they're
everywhere and finding them all is mostly meaningless to me.

However.

I started looking at how Outline View does filtering, and it seems like
a very simple regexp over the entire text of the presentation within the
view. So, filtering for 'char' returns a list of all variables defined
as character. Filtering for 'param' returns all the lines which are
parameters. Filtering for 'ext' gives you variables with 'ext' in them
along with anything declared EXTPROC and EXTPGM. Filtering on '('
returns just about everything. Filtering on '18' returns all the
variables which are 18 long, all the variables used on lines 189, 218,
and 2180.

I can't tell if that's intentional or not. I'm also not sure I'd want
it changed. Knowing that it will filter on every bit of the text in the
View may be good enough to be able to use the View better.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.