CL outline and content assist #224
Replies: 3 comments 5 replies
-
I heard the standard stuff for CL is labels and subroutines. I am going to add variables to our outline too. |
Beta Was this translation helpful? Give feedback.
-
I was also thinking we could use a system API to generate XML for command definitions - this might allows us to provide content assist for CL.
That generates XML, which we can convert to JSON. That looks something like this: {
"QcdCLCmd": {
"$": {
"DTDVersion": "1.0"
},
"Cmd": [
{
"$": {
"CmdName": "CRTBNDDIR",
"CmdLib": "QSYS",
"CCSID": "37",
"HlpPnlGrp": "QHBNCMD",
"HlpPnlGrpLib": "__LIBL",
"HlpID": "CRTBNDDIR",
"MaxPos": "1",
"Prompt": "Create Binding Directory",
"MsgF": "QCPFMSG",
"MsgFLib": "__LIBL",
"ExecBatch": "YES",
"ChgCmdExit": "NO",
"RtvCmdExit": "NO"
},
"Parm": [
{
"$": {
"Kwd": "BNDDIR",
"PosNbr": "1",
"KeyParm": "NO",
"Type": "QUAL",
"Min": "1",
"Max": "1",
"Prompt": "Binding directory",
"Rstd": "NO",
"AlwUnprt": "YES",
"AlwVar": "YES",
"Expr": "YES",
"Full": "NO",
"DspInput": "YES"
},
"Qual": [
{
"$": {
"Type": "NAME",
"Min": "1",
"Max": "1",
"Len": "10",
"Rstd": "NO",
"AlwUnprt": "YES",
"AlwVar": "YES",
"Expr": "YES",
"Full": "NO",
"DspInput": "YES",
"Choice": "Name"
}
},
{
"$": {
"Type": "NAME",
"Min": "0",
"Max": "1",
"Prompt": "Library",
"Len": "10",
"Rstd": "NO",
"Dft": "*CURLIB",
"AlwUnprt": "YES",
"AlwVar": "YES",
"Expr": "YES",
"Full": "NO",
"DspInput": "YES",
"Choice": "Name"
},
"SpcVal": [
{
"Value": [
{
"$": {
"Val": "*CURLIB",
"MapTo": "*CURLIB "
}
}
]
}
]
}
]
},
{
"$": {
"Kwd": "AUT",
"PosNbr": "2",
"KeyParm": "NO",
"Type": "NAME",
"Min": "0",
"Max": "1",
"Prompt": "Authority",
"Len": "10",
"Rstd": "NO",
"Dft": "*LIBCRTAUT",
"AlwUnprt": "YES",
"AlwVar": "YES",
"Expr": "YES",
"Full": "NO",
"DspInput": "YES",
"Choice": "Name"
},
"SpcVal": [
{
"Value": [
{
"$": {
"Val": "*LIBCRTAUT",
"MapTo": "*LIBCRTAUT"
}
},
{
"$": {
"Val": "*CHANGE",
"MapTo": "*CHANGE"
}
},
{
"$": {
"Val": "*ALL",
"MapTo": "*ALL"
}
},
{
"$": {
"Val": "*USE",
"MapTo": "*USE"
}
},
{
"$": {
"Val": "*EXCLUDE",
"MapTo": "*EXCLUDE"
}
}
]
}
]
},
{
"$": {
"Kwd": "TEXT",
"PosNbr": "3",
"KeyParm": "NO",
"Type": "CHAR",
"Min": "0",
"Max": "1",
"Prompt": "Text 'description'",
"Len": "50",
"Rstd": "NO",
"Dft": "*BLANK",
"AlwUnprt": "YES",
"AlwVar": "YES",
"Expr": "YES",
"Full": "NO",
"DspInput": "YES",
"Choice": "Character value"
},
"SpcVal": [
{
"Value": [
{
"$": {
"Val": "*BLANK",
"MapTo": ""
}
}
]
}
]
}
]
}
]
}
} I guess we'd have to figure out how to translate this to a command string.. which looks simple enough. |
Beta Was this translation helpful? Give feedback.
-
Got it prompting for command parameters!!! |
Beta Was this translation helpful? Give feedback.
-
Since the RPGLE outline now exists, I thought it might be useful for CL to have support for some outline functionality.
What items typically show up in an outline view for CL?
Also, would indent assist be useful for CL too?
Beta Was this translation helpful? Give feedback.
All reactions