Loading ...
Sorry, an error occurred while loading the content.
 

extracting information from files without opening them

Expand Messages
  • Don - HtmlFixIt.com
    I know I can use search disk to search a group of files and open them if they have my search term. In this case I don t want to actually open the files, I just
    Message 1 of 15 , Sep 6, 2008
      I know I can use search disk to search a group of files and open them if
      they have my search term.

      In this case I don't want to actually open the files, I just want to
      extract the found term (I'm using regex).

      Can this be done with a clip? I'm looking through help diligently, but
      not finding it.

      I presume I can generate a list of the files and then open them one at a
      time, but that would seem overly burdensome perhaps.

      Thanks all,

      Don

      p.s. I just downloaded clipcode syntax 5.7R2. Sherri, thanks so much
      for making this available. If you don't use it, you are missing the
      best tool for helping write clips. Go get it everybody! It's under
      files when logged into yahoo groups. I have been using it for a long
      time, but this one is up to date.
    • Flo
      ... Hi Don, Unfortunately, we have seen no solution for this so far. I ve experienced this problem quite often. Just to show a small example: We ve got the
      Message 2 of 15 , Sep 7, 2008
        --- In ntb-clips@yahoogroups.com, "Don - HtmlFixIt.com" <don@...>
        wrote:
        >
        > I know I can use search disk to search a group of files and open
        > them if they have my search term. In this case I don't want to
        > actually open the files, I just want to extract the found term...

        Hi Don,

        Unfortunately, we have seen no solution for this so far. I've
        experienced this problem quite often. Just to show a small example:

        We've got the following table...

        AL|Alabama
        AK|Alaska
        AZ|Arizona
        AR|Arkansas
        CA|California
        CO|Colorado
        CT|Connecticut
        DE|Delaware
        FL|Florida
        GA|Georgia

        Running...

        ^!SetDelimiter "|"
        ^!Set %Code%=^?{Enter code:==AL|AK|AZ|AR|CA|CO|CT|DE|FL|GA}
        ^!Jump 1
        ^!Find ^%Code% S
        ^!Info ^%Code% is the code for ^$GetField(^$GetRow$;2)$

        ...we can search this table and output the state for every ZIP code.

        So far, this works inside an open document only which contains that
        table. The question is: Is there a way to store this table in a
        TABLE.TXT file and to run the clip without opening that file?

        Well, in this case, we could do something with ^$GetFileText$, ^!
        SetArray etc since we are dealing with a limited amount of defined
        items. But this doesn't match the problem in general. So still a
        solution is missing that would search any file without opening it...

        Regards,
        Flo
      • Axel Berger
        ... Why? You need not open the file yourself, you can let the clip do that and close it afterwards too. I ve probably misunderstood the real issue here. Axel
        Message 3 of 15 , Sep 7, 2008
          Flo wrote:
          > Is there a way to store this table in a
          > TABLE.TXT file and to run the clip without opening that file?

          Why? You need not open the file yourself, you can let the clip do
          that and close it afterwards too. I've probably misunderstood the
          real issue here.

          Axel
        • Don - HtmlFixIt.com
          ... Right for the moment the way I ve skinned this cat is in fact to open a scratch.txt file, use getfiletext to put my files on it, one at a time, extract the
          Message 4 of 15 , Sep 7, 2008
            Flo wrote:
            > --- In ntb-clips@yahoogroups.com, "Don - HtmlFixIt.com" <don@...>
            > wrote:
            >> I know I can use search disk to search a group of files and open
            >> them if they have my search term. In this case I don't want to
            >> actually open the files, I just want to extract the found term...
            >
            > Hi Don,
            >
            > Unfortunately, we have seen no solution for this so far. I've
            > experienced this problem quite often. Just to show a small example:
            >
            > We've got the following table...
            >
            > AL|Alabama
            > AK|Alaska
            > AZ|Arizona
            > AR|Arkansas
            > CA|California
            > CO|Colorado
            > CT|Connecticut
            > DE|Delaware
            > FL|Florida
            > GA|Georgia
            >
            > Running...
            >
            > ^!SetDelimiter "|"
            > ^!Set %Code%=^?{Enter code:==AL|AK|AZ|AR|CA|CO|CT|DE|FL|GA}
            > ^!Jump 1
            > ^!Find ^%Code% S
            > ^!Info ^%Code% is the code for ^$GetField(^$GetRow$;2)$
            >
            > ...we can search this table and output the state for every ZIP code.
            >
            > So far, this works inside an open document only which contains that
            > table. The question is: Is there a way to store this table in a
            > TABLE.TXT file and to run the clip without opening that file?
            >
            > Well, in this case, we could do something with ^$GetFileText$, ^!
            > SetArray etc since we are dealing with a limited amount of defined
            > items. But this doesn't match the problem in general. So still a
            > solution is missing that would search any file without opening it...
            >
            > Regards,
            > Flo
            >
            Right for the moment the way I've skinned this cat is in fact to open a
            scratch.txt file, use getfiletext to put my files on it, one at a time,
            extract the data I want (using a regex) and pulling a subpattern out of
            the middle of that regex and appending it to an open file and then
            delete the content of that file and load the next one, rinse and repeat.
            I am dealing with hundreds of files and to open and close each one
            takes a bit of time, plus I want to be absolutely sure I don't
            mistakenly alter one of those files. By not opening them, I cannot
            change them (say the operator hit a key in the middle of the effort).
            It just seems that you should be able to work on read files like some
            other programs can.
          • Jeff Scism
            Here is a clip Jody wrote for me concerning (searching directories) and listing teh files which contain the search criteria. Franlky I don t understand the
            Message 5 of 15 , Sep 7, 2008
              Here is a clip Jody wrote for me concerning (searching directories) and
              listing teh files which contain the search criteria.

              Franlky I don't understand the process, but perhaps there is something
              in here you can modify to get to where you want to go.

              This was used to find duplicated lines in directory files.

              Perhaps selecting the results in the file and getting them would allow
              them be appended to a new doc?

              Jeff
              ~~

              ^!ClearVariables
              ^!SetHintInfo Working...
              ^!SetScreenUpdate Off

              ^!Set %FileList%=^?{(T=D)Search directory=C:\}; %DoSubs%=^?{Also check
              in subdirectories=Yes^=+|_No^=}; %Search4%=^?{Search for what
              duplicate=_<body|^=}; %Case%=^?{Ignore character case=_Yes^=I|No^=};
              %BoxChecked%=^?{Check boxes in duplicated list wizard automatically=_Yes|No}
              ^!SetListDelimiter ^p
              ^!SetArray %FileList%=^$GetFiles("^%DoSubs%^%FileList%";*.htm*)$
              ^!Set %Count%=^%FileList0%
              ^!Set %Index%=0

              :Loop1
              ^!Inc %Index%
              ^!If ^%Index% > ^%Count% ShowList
              ^!Open "^%FileList^%Index%%"
              ^!Find "^%Search4%" S^%Case%
              ^!IfError CloseFile
              ^!Find "^%Search4%" S^%Case%
              ^!IfError CloseFile
              ^!Set %FoundTwice%=^##
              ^!Append %DupList%=^%FoundTwice%|
              ^!Close "^%FileList^%Index%%"
              ^!Goto Loop1

              :CloseFile
              ^!Close "^%FileList^%Index%%"
              ^!Goto Loop1

              :ShowList
              ^!IfTrue ^%BoxChecked% Next else Skip
              ^!Set %DupList%=_^$StrReplace("|";"|_";"^%DupList%";0;0)$
              ^!Set %DupList%=^$StrDelete("^%DupList%";^$StrSize("^%DupList%")$;1)$
              ^!IfTrue ^$IsEmpty(^%DupList%)$ Error
              ^!SetWizardTitle Check boxes of files that you want to open
              ^!Set %DupList%=^?{(T=A;H=20)==^%DupList%}
              ^!SetListDelimiter ^p
              ^!SetArray %DupList%=^%DupList%
              ^!Set %Count2%=^%DupList0%
              ^!Set %Index2%=0

              :Loop2
              ^!Inc %Index2%
              ^!If ^%Index2% > ^%Count2% End
              ^!Open "^%DupList^%Index2%%"
              ^!Find "^%Search4%" S^%Case%
              ^!SetView ^$GetRow$:^$GetCol$
              ^!Jump Select_Start
              ^!Goto Loop2

              :Error
              ^!Info No files were found with duplicates in them.
            • Flo
              ... Eb, That s an interesting approach. But - if I m not mistaken - it doesn t avoid the opening of the files. It just automates the selection of the files -
              Message 6 of 15 , Sep 9, 2008
                --- In ntb-clips@yahoogroups.com, "ebbtidalflats" <ebbtidalflats@...>
                wrote:

                > Here is what you need to write the clip: In the favorites
                > folder NoteTab saves the most recent list of disk files found....

                Eb,

                That's an interesting approach. But - if I'm not mistaken - it
                doesn't avoid the opening of the files. It just automates the
                selection of the files - isn't it? (Also Jody's clip presented by
                Jeff Scism doesn't avoid the opening.)

                Obviously, there is no way to search a file on disk without opening
                it (or grabbing its contents with ^$GetFileText$ and inserting it
                into an open document). All we could possibly do is to speed up Don's
                proceeding a little bit as follows...

                ; Start in an empty document
                ^!SetScreenUpdate Off
                ^!ClearVariable %Hits%
                ^!SetArray %OpenFiles%=file1.txt;file2.txt;file3.txt
                ^!Set %Nr%=1

                :Loop
                ^!Open "^%OpenFiles^%Nr%%"
                ^!Find "Any search criteria with RegEx" RIS
                ^!Set %Hits%=^%Hits%^$GetSelection$^P
                ^!Close Discard
                ^!Inc %Nr%
                ^!If ^%Nr% > ^%OpenFiles0% Out
                ^!Goto Loop

                :Out
                ^!InsertText ^%Hits%

                According with Eb's proposal the array may be created using the
                Favorites menu.

                Due to "^!SetScreenUpdate Off" the processing is almost invisible. So
                there is no chance to change the files as Don feared it. It would
                also be prevented by "^!Close Discard".

                Maybe another work-around could be to merge all the selected files in
                an open document and to run a search on that document...

                Flo
                 

                P.S. Cf #16793. This thread deals with a similar problem and mentions
                some tools like Agent Ransack etc which might be useful in this
                context.
              • Don - HtmlFixIt.com
                ... I believe that is correct. ... That was my conclusion in the end. But search disk obviously DOES search unopened files. Too bad that it cannot extract
                Message 7 of 15 , Sep 9, 2008
                  Flo wrote:

                  > Eb,
                  >
                  > That's an interesting approach. But - if I'm not mistaken - it
                  > doesn't avoid the opening of the files. It just automates the
                  > selection of the files - isn't it? (Also Jody's clip presented by
                  > Jeff Scism doesn't avoid the opening.)
                  I believe that is correct.

                  >
                  > Obviously, there is no way to search a file on disk without opening
                  > it (or grabbing its contents with ^$GetFileText$ and inserting it
                  > into an open document). All we could possibly do is to speed up Don's
                  > proceeding a little bit as follows...
                  That was my conclusion in the end. But search disk obviously DOES
                  search unopened files. Too bad that it cannot extract the info I want
                  while it's in there.


                  > According with Eb's proposal the array may be created using the
                  > Favorites menu.
                  That was most interesting. But is there a limit? I am grabbing
                  hundreds of documents. What I did was to get all files from the
                  directory and then load them in an array. I used a modified copy of
                  Jody's Dir Stuff open files bit. I run through the array one file at a
                  time.

                  >
                  > Due to "^!SetScreenUpdate Off" the processing is almost invisible. So
                  > there is no chance to change the files as Don feared it. It would
                  > also be prevented by "^!Close Discard".
                  What if the user changes focus to another program? When I am searching
                  I could grab from the wrong place. It won't change the file, but is
                  there a way to overcome that issue?

                  >
                  > Maybe another work-around could be to merge all the selected files in
                  > an open document and to run a search on that document...
                  >
                  I thought about that one. My concern is that I actually have no idea
                  how many files will be opened or involved as it is a directory search.
                  It could easily become HUGE. It might even exceed physical limits of
                  the machine.

                  Is it worth using search disk so that I only touch files that contain my
                  term at least? That could cut the opened files in half. How do you
                  initiate search disk from a clip and how to you grap the output? Can I
                  load that into an array.

                  I am specifically looking for a notetab solution to this particular
                  issue, so other alternatives won't satisfy this one such as agent
                  ransack, even if they fit the bill more cleanly.
                • ebbtidalflats
                  Flo, Don, After testing the method I described, I must confess, that it doesn t work. The favorites category Search Disk.fvr doesn t get re-written unless
                  Message 8 of 15 , Sep 9, 2008
                    Flo, Don,

                    After testing the method I described, I must confess, that it doesn't
                    work.

                    The favorites category "Search Disk.fvr" doesn't get re-written unless
                    you OPEN the matching files. Which you wanted to avoid in the first place.

                    That only leaves Don's method of fetching a file-list from the entire
                    directory, then searching each file for the target string.

                    That theoretically you can do with

                    ^!IfMatch "regexp" "^%filespecarray^%x%%" OPEN else LOOP


                    Perhaps we can lobby Eric for a means of collecting the FOUND filelist
                    WITHOUT opening the files? And/or initiating a search disk from a
                    clip. Of course there are always external utilities. Even the DOS FIND
                    command.


                    Cheers,


                    Eb


                    --- In ntb-clips@yahoogroups.com, "Don - HtmlFixIt.com" <don@...> wrote:
                    >
                    > Flo wrote:
                    >
                    > > Eb,
                    > >
                    > > That's an interesting approach. But - if I'm not mistaken - it
                    > > doesn't avoid the opening of the files. It just automates the
                    > > selection of the files - isn't it? (Also Jody's clip presented by
                    > > Jeff Scism doesn't avoid the opening.)
                    > I believe that is correct.
                    >
                    > >
                    > > Obviously, there is no way to search a file on disk without opening
                    > > it (or grabbing its contents with ^$GetFileText$ and inserting it
                    > > into an open document). All we could possibly do is to speed up Don's
                    > > proceeding a little bit as follows...
                    > That was my conclusion in the end. But search disk obviously DOES
                    > search unopened files. Too bad that it cannot extract the info I want
                    > while it's in there.
                    >
                    >
                    > > According with Eb's proposal the array may be created using the
                    > > Favorites menu.
                    > That was most interesting. But is there a limit? I am grabbing
                    > hundreds of documents. What I did was to get all files from the
                    > directory and then load them in an array. I used a modified copy of
                    > Jody's Dir Stuff open files bit. I run through the array one file at a
                    > time.
                    >
                    > >
                    > > Due to "^!SetScreenUpdate Off" the processing is almost invisible. So
                    > > there is no chance to change the files as Don feared it. It would
                    > > also be prevented by "^!Close Discard".
                    > What if the user changes focus to another program? When I am searching
                    > I could grab from the wrong place. It won't change the file, but is
                    > there a way to overcome that issue?
                    >
                    > >
                    > > Maybe another work-around could be to merge all the selected files in
                    > > an open document and to run a search on that document...
                    > >
                    > I thought about that one. My concern is that I actually have no idea
                    > how many files will be opened or involved as it is a directory search.
                    > It could easily become HUGE. It might even exceed physical limits of
                    > the machine.
                    >
                    > Is it worth using search disk so that I only touch files that
                    contain my
                    > term at least? That could cut the opened files in half. How do you
                    > initiate search disk from a clip and how to you grap the output? Can I
                    > load that into an array.
                    >
                    > I am specifically looking for a notetab solution to this particular
                    > issue, so other alternatives won't satisfy this one such as agent
                    > ransack, even if they fit the bill more cleanly.
                    >
                  • Alec Burgess
                    ... Flo - thanks for mentioning this great tool again. I had downloaded it one of the previous times its been mentioned on the Clips list (dating back to 2002)
                    Message 9 of 15 , Sep 9, 2008
                      Flo (flo.gehrke@...) wrote (in part) (on 2008-09-09 at 07:47):
                      >
                      > P.S. Cf #16793. This thread deals with a similar problem and mentions
                      > some tools like Agent Ransack etc which might be useful in this
                      > context.

                      Flo - thanks for mentioning this great tool again. I had downloaded it
                      one of the previous times its been mentioned on the Clips list (dating
                      back to 2002) but somehow never given it the attention it deserves and
                      hadn't reinstalled it after having to rebuild and reinstall my system
                      earlier this year.

                      I wanted to rename and move some folders referenced in countless (I
                      thought) INI files on my system. It very quickly scanned the 250K files
                      on my hard drive (across both D:\ drive and C:\Drive) and identified the
                      80 INI files that contained the names of the folders I want to rename -
                      generating both a list of files matching my criteria and identifying the
                      lines in the INI files that will have to be changed.

                      For those who've never looked at it, it has command-line options so once
                      familiar with its GUI it can instead be run from inside Notetab - if
                      desired the $GetDosOutput()$ function we discussed putting on the
                      clipbar could be (not yet tested) used to capture its results directly
                      into a notetab buffer.

                      Caveat: It appears the last update was made in 2003 so I'm not sure how
                      exactly its regular expression syntax matches that of current Notetab
                      5.x. It's sure as shooting a heck of a lot faster than Notetab's 4.9x
                      regex implementation :-)

                      --
                      Regards ... Alec (buralex@gmail & WinLiveMess - alec.m.burgess@skype)




                      [Non-text portions of this message have been removed]
                    • Flo
                      ... Alec, ... That s interesting! I ve never tried that. I just use Save results to clipboard from time to time in order to copy the results to NT5. I like
                      Message 10 of 15 , Sep 10, 2008
                        --- In ntb-clips@yahoogroups.com, Alec Burgess <buralex@...> wrote:

                        Alec,

                        > it can instead be run from inside Notetab - if desired the
                        > $GetDosOutput()$ function we discussed putting on the clipbar
                        > could be (not yet tested) used...

                        That's interesting! I've never tried that. I just use "Save results
                        to clipboard" from time to time in order to copy the results to NT5.
                        I like this tool for a quick and easy search of multiple files. It's
                        extremely fast although it doesn't create index files like many
                        indexers (X1, dtSearch, Wilma etc).

                        > I'm not sure how exactly its regular expression syntax matches that
                        > of current Notetab 5.x.

                        There are some differences and restrictions but it's easy to find
                        out. Some metacharacters don't work, for example \d doesn't represent
                        a digit but a literal d only; no {} quantifiers etc...

                        Flo
                         
                      • Flo
                        ... wrote: Hi Eb, ... You are right. I m sorry for my inaccuracy. Actually, the point is to grab the match of any search criteria from a file stored on the
                        Message 11 of 15 , Sep 10, 2008
                          --- In ntb-clips@yahoogroups.com, "ebbtidalflats" <ebbtidalflats@...>
                          wrote:

                          Hi Eb,

                          > Opening a file is all a matter of semantics.

                          You are right. I'm sorry for my inaccuracy. Actually, the point is to
                          grab the match of any search criteria from a file stored on the disk
                          and to insert that result into an open document. When executing this,
                          we try to avoid opening the source file(s) with ^!Open -- whatever
                          NT5 will do invisibly in the background.

                          I'm uncertain about the way you are using ^!IfMatch in this context.
                          Example: If searching for "year" followed by a space and any four-
                          digit number we could execute...

                          ^!IfMatch "^(?s).*year\x20\d{4}.*\Z" "^$GetFileText(filename.txt)$"
                          Next Else End
                          ^!Info It's in the file!

                          ^!IfMatch returns a true or false here but it doesn't output the
                          match. So I understand this as a method to pre-select the matching
                          files only. Later on, these files will be opened with ^!Open in order
                          to extract the data we are searching. Correct?

                          > After testing the method I described, I must confess, that it
                          > doesn't work. The favorites category "Search Disk.fvr" doesn't
                          > get re-written unless you OPEN the matching files.

                          Are you sure? For me, "Search Disk" also re-writes that file when
                          cancelling the command. So we could do it in two steps:

                          1. First, start "Search Disk", enter search criteria, and click
                          on "Cancel". Now all matching files have been written into "Search
                          Disk.fvr". (Maybe this is what you described as "initiating the
                          search by hand" in your first message?)

                          2. Now start a clip containing...

                          ^!SetListDelimiter ^%NL%
                          ^!SetArray %OpenFiles%=^$GetFileText("[PATH]/Favorites/Search
                          Disk.fvr")$

                          So, in principle, this array could be used for opening and searching
                          all matching files (even if we could imagine a more elegant solution).


                          Flo
                           
                        • ebbtidalflats
                          Hi Flo, Roller Coaster time: I ll address points below in context. ... This step is unnecessary if you know the file to contain the match. ... Yes, this is the
                          Message 12 of 15 , Sep 10, 2008
                            Hi Flo,

                            Roller Coaster time:

                            I'll address points below in context.

                            --- In ntb-clips@yahoogroups.com, "Flo" <flo.gehrke@...> wrote:
                            > ...
                            > I'm uncertain about the way you are using ^!IfMatch in this context.
                            > ...
                            > ^!IfMatch "^(?s).*year\x20\d{4}.*\Z" "^$GetFileText(filename.txt)$"
                            > Next Else End

                            This step is unnecessary if you know the file to contain the match.

                            > ... I understand this as a method to pre-select the matching
                            > files only. Later on, these files will be opened with ^!Open in order
                            > to extract the data we are searching. Correct?


                            Yes, this is the most flexible one option.

                            However, depending on the target of the search, you can pin down a
                            match in repeated tests of progressively smaller test objects.

                            Furthermore, knowledge of the file type may aid in how you fashion the
                            search.

                            If searching an html file for some body content, there is no need to
                            search the head. Etc.

                            If you know the target be a single line, loading the entire file into
                            an array delimited by newlines, you can isolate the target by finding
                            the correct line (perhaps by other than a regexp).


                            The original problem was too avoid opening too many files at once.



                            > > After testing the method I described, I must confess, that it
                            > > doesn't work. The favorites category "Search Disk.fvr" doesn't
                            > > get re-written unless you OPEN the matching files.
                            >
                            > Are you sure? For me, "Search Disk" also re-writes that file when
                            > cancelling the command.

                            I tried it again, same results. My favorites folder is on a USB stick,
                            which MAY make a difference.

                            However, in the mean time I have discovered a way to FORCE a refresh
                            of the favorites file. Perhaps a bit iffy.

                            FAKE a disk-replace: replace the search term with itself!
                            This does a replace on disk, without loading the files as documents,
                            and REFFRESHES the favorites file "Search Disk.fvr" with a list of
                            matching files. Perhaps this step is not necessary if running on the
                            hard disk (may have something to do with the refresh cycle of Windows).


                            > So we could do it in two steps:
                            >
                            > 1. First, start "Search Disk", enter search criteria, and click
                            > on "Cancel". Now all matching files have been written into "Search
                            > Disk.fvr". (Maybe this is what you described as "initiating the
                            > search by hand" in your first message?)

                            Yes.

                            >
                            > 2. Now start a clip containing...
                            >
                            > ^!SetListDelimiter ^%NL%
                            > ^!SetArray %OpenFiles%=^$GetFileText("[PATH]/Favorites/Search
                            > Disk.fvr")$


                            Yes, or open the file (one at a time) if the search criteria don't
                            lend themselves to arrays.


                            > ... (even if we could imagine a more elegant solution).


                            Elegance is in the eye of the beholder <g>. I for one like to watch
                            NoteTab working its butt off, refreshing its screen, while I work on
                            soemthing else on the other screen.


                            In any case, we should lobby Eric for a Regular Expression StrReplace
                            function, as well as function or command alternatives to EVERY menu
                            dialog, including search disk.

                            Eric, are you lurking?


                            Cheers,


                            Eb
                            Stop smoking and drink a glass of Red Wine a day!
                            Red Wine stains teeth better than tobacco smoke.
                          • Linda Guss
                            Is there a way to add a menu command to a clipbar or the clipbook? I use Compress ALOT, and would like to be able to click once rather than navigate through
                            Message 13 of 15 , Sep 16, 2009
                              Is there a way to add a menu command to a clipbar or the clipbook?

                              I use "Compress" ALOT, and would like to be able to click once rather than navigate through the "Modify" menu.

                              Thank you,

                              Linda

                              [Non-text portions of this message have been removed]
                            • loro
                              Hi Linda, ... Sure. I have a button for that myself. Look up ^!Menu in Clip help. ... h= Compress Lines ^!Menu Modify/Lines/Compress ... Add it to a library
                              Message 14 of 15 , Sep 16, 2009
                                Hi Linda,

                                > Is there a way to add a menu command to a clipbar or the clipbook?
                                >I use "Compress" ALOT, and would like to be able to click once
                                >rather than navigate through the "Modify" menu.

                                Sure. I have a button for that myself. Look up ^!Menu in Clip help.

                                -----
                                h="Compress Lines
                                ^!Menu Modify/Lines/Compress
                                -----

                                Add it to a library and then drag it to a clipbar.

                                Lotta
                              • loro
                                ... Forgot a quote. ... h= Compress Lines ^!Menu Modify/Lines/Compress ... Why does this always happen to me? Lotta
                                Message 15 of 15 , Sep 17, 2009
                                  Alas I wrote:
                                  -----
                                  >h="Compress Lines
                                  >^!Menu Modify/Lines/Compress
                                  >-----

                                  Forgot a quote.
                                  -----
                                  h="Compress Lines"
                                  ^!Menu Modify/Lines/Compress
                                  -----

                                  Why does this always happen to me?

                                  Lotta
                                Your message has been successfully submitted and would be delivered to recipients shortly.