> .. if you're JQt,  it's easy to select all the unwanted lines and switch
on comments with ctrl-/ .  You can later uncomment all those lines with
another ctrl-/ on the same selection.

Another way is to use ctrl-shift-/ which toggles on a Note. I often prefer
this as the lines remain uncommented and so can be executed with the usual
Run commands.

On Tue, Aug 31, 2021 at 7:13 AM 'Michael Day' via Programming <
[email protected]> wrote:

> I sometimes need this too.  If so,  and if you're JQt,  it's easy to
> select all the unwanted
> lines and switch on comments with ctrl-/ .  You can later uncomment all
> those lines with
> another ctrl-/ on the same selection.
>
> However,  that can be a bit awkward,  and thanks to your message I've
> just written
> this fairly verbose and none-too elegant if not disgraceful function,
> loadtomark,  to do what
> I often need,  and which might fit your requirement.
>
> The idea is to place one or more marker/s in your script,  starting in
> the first column.  I've tried )))
> but that raises an error if/when you load the whole script;
> "NB. )))" would be ok,  but you'd need to specify that exact string as
> I've written it, ie with the NB. .
> Alternatively,  plant a number of markers,  eg 0001,  0002 ... 1234
> etc;  the search string would be
> whichever marker you wish to stop at.  The load doesn't include the marker.
>
> It can be tedious to type the script's name in full,  but it's easy
> enough to first do a load
> of the whole script using ctrl-L,  and capture the terminal message
>     load '....'   ,
> then copy and modify it in the terminal session to read
>     search-string loadtomark  '....'
>
> As I've only just written this in response to your enquiry,  it's hardly
> tested;  no doubt some problems
> will arise with experience!  I'll embed it in my startup script, and try
> to remember to use it when I
> need to do a partial load.
>
> NB. ====================================================================
> NB. selective script load from y - up to but not including a left
> justified marker in x
> NB. not as convenient as ctrl-L etc,  but needs minimal modification in
> script
>
> loadtomark =: 3 : 0
> load y   NB. nothing to look for - just load script as is
> :
> assert. fexist y
> require'files'
> NB. look for first string x at beginning of lines of script
> mark=. x
> q   =. fread y
> iq  =. mark {.@:I.@E. q, mark
>
> if. iq >: # q do.  NB. mark not found,  so load script as is
>     echo mark,' not found;  loading script as is'
>     echo 'load ', y
>     load y
>     return.
> end.
>
> q   =. iq {. q
> NB. string found;  create temporary script; should work!!!
> while. fexist rsc =. '~user/temp/', '.ijs',~ a.{~ 97 + 26?26 do.
> end.
> try.  NB. if something goes wrong,  keeps the temporary script
> q fwrite rsc
> scr =. 'load''', rsc, ''''
> echo scr    NB.  not very useful as temp script will be erased!
> ". scr
> ferase rsc  NB.  should be ok unless script is extremely long
> catch.
>     echo 'failed... scratch file = ',rsc
> end.
> )
> NB. ==============================================================
> Any use?
>
> Mike
>
>
> On 31/08/2021 13:27, 'Rudolf Sykora' via Programming wrote:
> > Dear list,
> >
> >
> > if I load a (longer) script, I sometimes want to ignore a part of it
> > beyond a certain line. Is there a way to achieve that gracefully? (I
> > sometimes just add something syntactically wrong to stop there, on an
> > error).
> >
> >
> > Thank you.
> > Ruda
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
>
>
> --
> This email has been checked for viruses by Avast antivirus software.
> https://www.avast.com/antivirus
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to