IBM / zopeneditor-about

IBM Z Open Editor: File issues here!
https://ibm.github.io/zopeneditor-about
Apache License 2.0
49 stars 21 forks source link

Provide ISPF language support #64

Open me00266 opened 4 years ago

me00266 commented 4 years ago

Description of the enhancement requested

Thank you

phaumer commented 4 years ago

@me00266 can you provide a few more details? Have you tried Zowe Explorer? That is the extension we invest in right now to accomplish many of these things. This is extension focuses on support the languages COBOL, PL/I, JCL, Assembler etc. Anything for that you had in mind?

me00266 commented 4 years ago

@phaumer : In terms of Z/os, all the menus that we navigate are build using the "ISPF Dialog Manager " and is used/called thru REXX programs and has its proper language; Example :

*A code for a simple menu using ISPF Dialog Manage panel_code

*The REXX to call it:

 /*REXX*/                                                      
 ISPEXEC CONTROL DISPLAY REFRESH                               
 "ISPEXEC LIBDEF ISPPLIB DATASET ID ('IBMUSER.ISPF.ISPPROF')"  
 TIM = ""                                                      
 DAT = ""                                                      
 "ISPEXEC VGET (TIM,DAT) PROFILE";                             
 "ISPEXEC DISPLAY PANEL (menu)"                                
 TIM = TIME()                                                  
 DAT = DATE()                                                  
 "ISPEXEC VPUT (TIM,DAT) PROFILE";                             
 "ISPEXEC DISPLAY PANEL (menu)"                                
 /* menu is the panel PDS member name */                      
 EXIT   

*The execution: result_panel

FALLAI-Denis commented 4 years ago

ISPF applications are made up of several elements, each with its own syntax:

There are also "table" components but they are not directly editable.

PANELs can contain non-displayable characters, used as field delimiters and carrying the characteristics of the field (editable, padding, underline, intensity ...). EBCDIC / ASCII conversion of these characters could be tricky.

It is more often engineering teams that are concerned with the development of ISPF applications.

There are also debugging tools specific to ISPF applications.

phaumer commented 4 years ago

Thanks @me00266 and @FALLAI-Denis. Not sure that this will be an immediate priority for us. There is also a separate REXX item here https://github.com/IBM/zopeneditor-about/issues/15.

FALLAI-Denis commented 3 years ago

I think that the treatment of skeleton and panel type sources may be difficult because these languages are partly "self-declarative", which seems to be difficult to manage by a simple grammar file, and even maybe with a language server. .

For example, for skeletons, the declaration )DEFAULT abcdef defines the characters to be used in the rest of the source code to identify information, (and in particular the other commands if the character ")" is replaced by another character) .

The same problem exists with panels and the )ATTR section which declares zone markers in the )BODY section.

The analysis of a range of code is dependent on information declared outside this range, which makes it necessary to re-analyze all the source code of the document.