> You should continue the conversation over on the VM list.

I could see cross posting, but z/VM is as on topic here as z/OS. Why not 
continue here?

> I use a system that generates the AUX files 

For those not familiar with VM, the combination of XEDIT and UPDATE is a nice 
start for a development environment in which multiple people can update the 
same source file with little interference unless they need to hit the same 
lines. BTDT,GTTS (no scars, just the T shirt.)


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Tony Thigpen [t...@vse2pdf.com]
Sent: Wednesday, February 23, 2022 7:11 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: XEDIT equivalent to ISPF C - OO/OO (copy overlay)

You should continue the conversation over on the VM list.

I use a system that generates the AUX files dynamically for each "xedit
with update function". There is only one CTRL file, which has:
TEXT MACS
FIXES AUXLIST

My personal source control system uses SFS with program level locks
which require check-out and check-in. I wrote it back somewhere around
1990 and have used it in several shops since then.


Tony Thigpen

Binyamin Dissen wrote on 2/23/22 03:21:
> Thanks to all.
>
> SIDCODE does the job.
>
> Now I have to remember how to make AUX files. I can make CNTRL files, but
> multi-source fixes would eventually drive me to a separate CNTRL per source.
>
> On Mon, 21 Feb 2022 18:49:22 -0500 Phil Smith III <li...@akphs.com> wrote:
>
> :>I think I misread the requirement. Try this version, which also handles
> :>block commands.
> :>
> :>
> :>
> :>/*
> :>   PREFIXO
> :>   K  -- Kopy prefix subcommand
> :>   O  -- Overlay prefix subcommand
> :>   OO -- Overlay block prefix subcommand
> :>
> :>   Designed to be used with:
> :>
> :>   COMMAND SET PREFIX SYNONYM K  PREFIXO
> :>   COMMAND SET PREFIX SYNONYM O  PREFIXO
> :>   COMMAND SET PREFIX SYNONYM OO PREFIXO
> :>*/
> :>   arg p f l rest
> :>   if f = 'CLEAR' | p <> 'PREFIX' then exit  /* Nothing to do, great */
> :>   parse source . . . . . pcmd .
> :>   if rest <> '' then signal Error     /* Operand, we don't do those */
> :>   if index('KOO', pcmd) = 0 then signal Error   /* Not ours?? error */
> :>   'COMMAND LOCATE :'l              /* Go to the line we're handling */
> :>   if pcmd = 'K' then signal JustWait      /* Kopying, go Wait for O */
> :>   'EXTRACT /PENDING K'                    /* Is there a pending K?? */
> :>   if pending.0 = 0 then signal JustWait            /* No, just wait */
> :>   kline = pending.1                /* Remember where Kopied line is */
> :>   'COMMAND LOCATE :'pending.1 'COMMAND EXTRACT /CURLINE'      /* Go */
> :>   kopy = curline.3                           /* Get the Kopied data */
> :>   'COMMAND EXTRACT /PENDING BLOCK OO :0' l     /* See if OO pending */
> :>   select
> :>      when pcmd = 'O' then do
> :>         call Overlay l l                       /* Simple O, do that */
> :>         'COMMAND LOCATE :'kline 'SET PENDING OFF'    /* And clear K */
> :>      end
> :>      when pending.0 = 0 then                /* OO and not pending?? */
> :>      'COMMAND LOCATE :'l 'COMMAND SET PENDING BLOCK OO'     /* Wait */
> :>      otherwise     /* OO and already a pending K and OO, process it */
> :>      call Overlay pending.1 l                 /* Go do the overlays */
> :>      'COMMAND LOCATE :'pending.1 'SET PENDING OFF'      /* Clear OO */
> :>      'COMMAND LOCATE :'kline 'SET PENDING OFF'       /* And clear K */
> :>   end
> :>   exit
> :>
> :>/* Do overlays: Build replacement lines, overlaying only blanks */
> :>Overlay:
> :>   arg s e                                    /* Start and end lines */
> :>   do n = s to e                                /* Spin through them */
> :>      'COMMAND LOCATE :'n 'COMMAND EXTRACT /CURLINE'     /* Get data */
> :>      r = ''                                   /* No replacement yet */
> :>      do i = 1 to length(kopy)     /* Only care about overlay length */
> :>         c = substr(curline.3, i, 1)      /* Get character from line */
> :>         if c = '' then r = r || substr(kopy, i, 1) /* Overlay blank */
> :>         else r = r || c               /* Don't overlay if not blank */
> :>      end
> :>      if r <> '' then 'COMMAND REPLACE' r     /* Replace if not null */
> :>   end
> :>   return
> :>
> :>JustWait:                   /* Reset pending command, either K or OO */
> :>   'COMMAND SET PENDING ON' pcmd
> :>   exit
> :>
> :>Error:                                 /* Invalid, show prefix error */
> :>   'COMMAND SET PENDING ERROR' pcmd rest
> :>   exit
> :>
> :>
> :>
> :>
> :>----------------------------------------------------------------------
> :>For IBM-MAIN subscribe / signoff / archive access instructions,
> :>send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
> --
> Binyamin Dissen <bdis...@dissensoftware.com>
> http://secure-web.cisco.com/1IyjoHTsloL8IwnhrLgsz67vK5JWY5VY9XePTBgVVUl_hRhzzMFo-HO9a9n1r_DNgmgPe3YgX_oktSpwFwZugHgZyDeqhDCqZQPxTnV1Y5M0THoX6C9VAeZ9gLHy8-b-zTGHk7vQr8cx0leuHIKXC5jR6vk-Ux-9-C8pHd4weLSU4W1bZ3SpxZd13Ph0xvgJNbmLhGQLzfWDniEcgsvteI8JBD65s-t5ielpakzODROPC7W2rUf8VedHGtSAWt5bmNAZRheNgEJbuh26mMgUfUtI_jyV7KOs0F_mxJasoUqppU27_o3YxM1SGSPzmzieSr946PjLEQa9H8SojxnmCqUYn0mPsGyNVxsueSDD2W3xzQUmccXeGQY0c6XhGT2wPrJmhpjsNB3GucWv8Np1wOYWFIsRNUVInJjLax7xn7BS-5IeHfcuDFuK04LlE-Gqd/http%3A%2F%2Fwww.dissensoftware.com
>
> Director, Dissen Software, Bar & Grill - Israel
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to