Qedit 5.9 for HP e3000
User Manual
Doc-To-Help Standard Manual
by Robelle Solutions Technology Inc.
Program
and manual copyright © 1977-2014 Robelle Solutions Technology Inc.
Permission
is granted to reprint this document (but not for profit), provided that
copyright notice is given.
Updated
Monday, January 27, 2014
Qedit
and Suprtool are trademarks of Robelle Solutions Technology Inc. Windows is a
trademark of Microsoft Corporation. Other product and company names mentioned
herein may be the trademarks of their respective owners.
Robelle Solutions Technology Inc.
7360 – 137 Street, Suite 372
Surrey, B.C. Canada V3W 1A3
Phone: 604.501.2001
Fax: 604.501.2003
E-mail: sales@robelle.com
E-mail: support@robelle.com
Web: www.robelle.com
Contents
Welcome to Qedit 1
Introduction........................................................................................................... 1
Documentation....................................................................................................... 2
Change Notice............................................................................................ 2
Printed Documentation................................................................................ 2
Documentation Download............................................................................ 2
Other Documentation............................................................................................... 2
Printdoc Program........................................................................................ 2
Other Manuals of Interest.............................................................................. 2
Customer Support................................................................................................... 3
Robelle Newsletter.................................................................................................. 3
QLIB and Bonus Contributed
Software....................................................................... 3
Notation................................................................................................................ 4
New to Qedit......................................................................................................... 5
Installing Qedit 7
General Installation Notes......................................................................................... 7
Who Should Use These
Instructions?............................................................. 7
Summary of Installation Steps....................................................................... 7
Qedit Compiler Interfaces............................................................................. 7
Important Note About Passwords................................................................... 8
STREAMX Users....................................................................................... 8
Step 1: Install Qedit................................................................................................ 8
Step 2: Install QLIB and Bonus
Programs................................................................... 9
Building the Spell Dictionary...................................................................... 10
Step 3: Install NM Compiler
Interface....................................................................... 10
Installing the Interface................................................................................ 10
Compiling Instructions.............................................................................. 11
Step 4: Install CM Compiler
Interface....................................................................... 11
Choosing a CM Installation
Method............................................................. 11
Integrating CM Compiler Changes............................................................... 11
Isolating CM Compiler Changes.................................................................. 12
Step 5: Saving Disc Space...................................................................................... 12
Purging Obsolete Files............................................................................... 12
Minimal Set of Files.................................................................................. 12
Moving Qedit to Another Account........................................................................... 13
Moving All the Files................................................................................. 13
Redirecting the File Names......................................................................... 14
Moving a "Hooked"
Qedit.......................................................................... 14
Running the MPEXHOOKed Qedit.............................................................. 14
Removing the Compiler Interface............................................................................. 15
Removing the NM Interface......................................................................... 15
Removing the Integral CM
Interface.............................................................. 15
Removing the Isolated CM
Interface............................................................. 16
Getting a Quick Start with HP
Full-Screen Editing 17
Introduction......................................................................................................... 17
Starting Visual Mode............................................................................................. 18
Screen Layout....................................................................................................... 19
Home Line............................................................................................... 19
Status Line.............................................................................................. 19
Text Lines............................................................................................... 19
Template Line.......................................................................................... 19
Special Indicator Columns.......................................................................... 20
Using Your Keyboard............................................................................................ 20
Moving the Cursor.................................................................................... 20
Editing the Text Lines............................................................................... 20
Control Functions..................................................................................... 21
Reflection for DOS Keyboards..................................................................... 21
Other PC Keyboards.................................................................................. 22
Function Keys...................................................................................................... 22
Browsing Through Your File.................................................................................. 23
Cut-and-Paste....................................................................................................... 24
Cutting Operations.................................................................................... 24
Pasting Operations.................................................................................... 25
Resetting Cut-and-Paste............................................................................. 25
Copying a Block of Text............................................................................ 25
Cut-and-Paste Between Files....................................................................... 26
Dividing and Gluing Operations.................................................................. 26
Dividing Lines in Visual Mode................................................................... 26
Gluing Lines in Visual Mode...................................................................... 27
Excluding Lines
From Visual Mode Display.................................................. 27
Justifying Lines in Visual Mode.................................................................. 28
Renumbering Lines................................................................................... 28
Inserting Blank Lines................................................................................. 28
Hold Files............................................................................................... 28
Marking Changes Without Using
Line Numbers............................................. 28
Paste from a Non-Qedit File........................................................................ 29
Home Line Commands.......................................................................................... 29
Finding Strings........................................................................................ 29
Changing Strings...................................................................................... 30
Help on Visual Mode................................................................................. 30
Compile, Link, and Run............................................................................ 30
Formatting Paragraphs............................................................................... 31
Undoing Changes in Visual Mode................................................................ 31
Refreshing the Screen................................................................................. 31
Other Line Mode Commands...................................................................... 31
Truncated Home Line................................................................................ 32
Exit from Visual....................................................................................... 32
Getting a Quick Start with Line
Mode Editing 33
Introduction......................................................................................................... 33
Adding Lines to a File........................................................................................... 33
Looking at the File................................................................................................ 34
Browsing the File................................................................................................. 35
Searching the File................................................................................................. 35
Editing Lines....................................................................................................... 36
Global Changes.................................................................................................... 37
Copying Lines...................................................................................................... 38
Moving Lines....................................................................................................... 38
Deleting Lines...................................................................................................... 39
Help Command.................................................................................................... 39
Saving the File..................................................................................................... 40
Open and Shut for Instant
Access............................................................................. 40
Running Qedit under MPE 41
Introduction......................................................................................................... 41
Edit in Line Mode or in
Full-Screen Mode................................................................ 41
Edit Several Files at Once....................................................................................... 42
Qeditmgr Configuration Files.................................................................................. 42
Limiting Compile Priority.......................................................................... 43
Default Set Commands............................................................................... 43
Using Qedit in Batch............................................................................................. 43
Summary of Parm= Values..................................................................................... 44
From the Posix Shell................................................................................. 44
Exit and Entry Options.......................................................................................... 44
Exit with Verify........................................................................................ 45
Info= First File to Edit............................................................................... 45
Random Name for Primary Scratch
File......................................................... 45
"Discard Changes?" on
Exit........................................................................ 45
Info= "-p 99"
Specifies Parm Value............................................................... 45
Info= "-c cmdstring".................................................................................. 46
Parm 512 to Edit a Single File.................................................................... 46
Info= An Empty File to Fill........................................................................ 47
Info= Temporary File................................................................................. 47
Info= Can Create New Files........................................................................ 47
Parm Values to Suspend or Not................................................................... 47
Info= Commands Only............................................................................... 48
Basicentry Option..................................................................................... 48
JCWs That Drive Qedit......................................................................................... 49
RCRTMODEL JCW................................................................................. 49
RPCVERSION JCW................................................................................. 50
RCRTWIDTH JCW................................................................................. 51
RCRTSTRAPSGH for Handshaking............................................................ 51
RLABELDEFAULT JCW......................................................................... 53
QEDITMGRTRACE JCW......................................................................... 53
QEDPARMBITS JCW.............................................................................. 53
QEDCURWFILE Variable.......................................................................... 54
QEDSTOREDPWD and QEDPROMPTEDPWD
Variables............................. 54
Qedit for Microsoft Windows 55
Introduction......................................................................................................... 55
Server Process...................................................................................................... 55
Logon Sequence........................................................................................ 55
QEDSERVMODE JCW............................................................................. 56
Log Files............................................................................................................. 56
Qedit Issues and Solutions 59
Running Qedit with Reflection................................................................................ 59
RPCVERSION JCW................................................................................. 59
Using a Command File to Start
Up.............................................................. 59
Alt-Y vs. :Reflect...................................................................................... 60
Qedit and Reflection File
Transfers............................................................... 60
Form Feed Causing Return/Line
Feed........................................................... 61
Typeahead and Visual Mode....................................................................... 61
Completion Codes.................................................................................... 61
Controlling the PC.................................................................................... 62
Accidental Exit from Reflection.................................................................... 62
Changing the Exit Keystroke....................................................................... 62
Running Qedit in MPE/iX...................................................................................... 63
Unresolved Externals on MPE/iX
4.0........................................................... 63
Compiling on MPE/iX.............................................................................. 63
XDB: the Symbolic Debugger..................................................................... 63
Command Files and Variables..................................................................... 64
Visual Mode............................................................................................ 64
EOF vs. LIMIT........................................................................................ 64
Disc Space for Files and Xltrim................................................................... 64
Extents.................................................................................................... 64
Qedit as the HPDesk Editor.................................................................................... 65
Configuring HPDesk.................................................................................. 65
Configuring Qedit in HPDesk...................................................................... 65
DeskQed.................................................................................................. 65
Getting Programs to Read Qedit
Files....................................................................... 66
Qinput.................................................................................................... 67
Qcompxl................................................................................................. 67
Qeditaccess Subroutine............................................................................... 67
Qedify..................................................................................................... 67
Qedify and $Include................................................................................... 68
Editing Wide Files................................................................................................ 69
Using the New Command........................................................................... 69
Using the Text Command.......................................................................... 69
Lines, Strings and Ranges...................................................................................... 70
Using Qedit with MPE
Programming Languages 73
Introduction......................................................................................................... 73
Editerr: Trapping Compiler
Errors............................................................................ 73
Limitations and Restrictions....................................................................... 74
Linking PowerHouse with Qedit.............................................................................. 75
Invoking PowerHouse from Qedit................................................................. 75
Configuring Qedit as Your
Editor................................................................. 76
Editing PowerHouse Subfiles...................................................................... 77
COBOL.............................................................................................................. 77
Selecting a Compiler................................................................................. 77
Sequence Numbers and Comments............................................................... 77
Tagging Source Changes............................................................................ 78
Copylib Members..................................................................................... 78
Trapping Syntax Errors.............................................................................. 78
FORTRAN.......................................................................................................... 78
Pascal................................................................................................................. 79
C Language.......................................................................................................... 79
SPL.................................................................................................................... 80
TRANSACT....................................................................................................... 80
RPG................................................................................................................... 80
BASIC................................................................................................................ 81
Segmenter............................................................................................................ 81
Common Uses of Qedit 83
Introduction......................................................................................................... 83
Qedit as Word Processor........................................................................................ 83
QNote UDC for Occasional Memos.............................................................. 83
Justify Capability...................................................................................... 83
Check Spelling......................................................................................... 84
Prose: A Text Processor............................................................................. 85
Using TDP from within Qedit..................................................................... 86
Qedit as a File Utility............................................................................................ 86
Sorting a Range of Lines............................................................................ 86
Searching Groups of Files for
Strings............................................................ 86
Editing Data Files..................................................................................... 87
Editing Program Files................................................................................ 89
Qedit as an Operations Tool.................................................................................... 89
Editing Stream Files.................................................................................. 89
Native-Mode Output Spool Files................................................................. 90
Editing Bells, Tabs and Escapes.................................................................. 90
Aborting All Users to Back Up.................................................................... 90
Qedit Commands 93
Introduction......................................................................................................... 93
General Notes....................................................................................................... 93
Abbreviations........................................................................................... 93
Uppercase or Lowercase.............................................................................. 93
Multiple Commands per Line...................................................................... 94
Comments on Command Lines................................................................... 94
STREAMX Warning................................................................................. 94
Stopping Commands with
Control-Y........................................................... 95
Implicit Commands................................................................................... 95
Function Keys.......................................................................................... 95
Command Files and UDCs......................................................................... 96
MPE Commands...................................................................................... 96
Differences from MPE................................................................................. 96
Calculator Commands................................................................................ 97
QEDITCOUNT JCW................................................................................ 97
QEDCURWFILE Variable.......................................................................... 97
External Program Commands...................................................................... 97
:Activate Command [AC/:A]................................................................................... 98
Add Command [A]................................................................................................ 99
Add (Adding New Lines)............................................................................ 99
Add (Adding a String as a Line)................................................................. 101
Add (Copying Lines within a
File)............................................................. 101
Add (Moving Lines within a
File).............................................................. 102
Add (Copying Lines Between
Files)........................................................... 103
Append Command [AP]....................................................................................... 105
Backward Command [BA/F5]................................................................................ 106
Before Command [B]........................................................................................... 107
:Beginfile and :Endfile
Commands.......................................................................... 109
Change Command [C].......................................................................................... 110
Change (Changing Strings)....................................................................... 110
Change (Changing Columns)..................................................................... 113
Close Command [CL].......................................................................................... 114
Colcopy
Command [COL]................................................................................... 115
Colmove
Command [COLM]............................................................................... 118
:Compile Command [CO/:C]................................................................................ 121
Delete Command [D]........................................................................................... 124
Destroy Command [DES/:D]................................................................................. 126
:Display Command [DISPLAY]............................................................................. 127
Divide Command [DI].......................................................................................... 128
:Do Command [DO]............................................................................................ 129
:Editerror Command [EDITERROR]...................................................................... 130
:Escape Command [ESCAPE]............................................................................... 132
Exit Command [E/F8].......................................................................................... 133
Find Command [F/F4]......................................................................................... 134
Findup Command [FINDU/F3].............................................................................. 136
Form Command [FORM]..................................................................................... 137
Forward Command [FO/F6].................................................................................. 138
Garbage Command [GAR].................................................................................... 139
Glue Command [G]............................................................................................. 140
Help Command [H/?]........................................................................................... 141
Hold Command [HO]........................................................................................... 142
:If, :Endif, :Else, :Elseif
Commands........................................................................ 143
Justify Command [J]............................................................................................ 144
Keep Command [K]............................................................................................. 150
:Kill Command [KI/:K]........................................................................................ 154
List Command [L]............................................................................................... 155
:Listredo Command [LISTREDO/F7]..................................................................... 167
:Listundo Command [LISTU]............................................................................... 168
Lsort Command [LS]........................................................................................... 169
Merge Command [ME]......................................................................................... 170
Modify Command [M]......................................................................................... 172
New Command [N].............................................................................................. 181
Open Command [O]............................................................................................. 182
:Pause Command [PAUSE]................................................................................... 186
:Prep Command [PREP/:P]................................................................................... 187
Proc Command [P].............................................................................................. 189
Q Command [Q]................................................................................................. 191
/Qedit Command................................................................................................. 192
:Qhelp Command [QHELP].................................................................................. 193
:Redo Command [REDO]..................................................................................... 194
:Reflect Command [REFLECT]............................................................................. 196
Renumber Command [REN].................................................................................. 198
Replace Command [R]......................................................................................... 199
:Return Command [RETURN].............................................................................. 201
:Run Command [RU/:R]...................................................................................... 202
Run, Implied...................................................................................................... 205
:Segmenter Command [SEG/:S]............................................................................. 206
Set Command [S]................................................................................................ 207
Account................................................................................................. 209
Alias..................................................................................................... 209
Autocont................................................................................................ 211
Check.................................................................................................... 211
Decimal................................................................................................. 212
DL size.................................................................................................. 212
Editinput............................................................................................... 212
Expandtabs............................................................................................. 213
Extentsize.............................................................................................. 213
Extprog................................................................................................. 214
Filename................................................................................................ 214
FORTRAN............................................................................................ 215
HFS...................................................................................................... 215
Halfbright............................................................................................... 216
Hints..................................................................................................... 216
Hppath.................................................................................................. 216
Increment............................................................................................... 216
Interactive.............................................................................................. 217
Justify................................................................................................... 217
Keep..................................................................................................... 217
Language............................................................................................... 222
Left....................................................................................................... 224
Length................................................................................................... 224
Lib....................................................................................................... 224
Limits................................................................................................... 224
List....................................................................................................... 225
Maxdata................................................................................................. 225
Modify.................................................................................................. 226
Open..................................................................................................... 227
Pattern................................................................................................... 228
Priority.................................................................................................. 228
Prompt.................................................................................................. 229
Redo..................................................................................................... 229
Right.................................................................................................... 230
RL file name........................................................................................... 230
Shift...................................................................................................... 231
Spell..................................................................................................... 231
Statistics................................................................................................ 232
Stringdelimiters...................................................................................... 232
Suspend................................................................................................. 233
Tabs..................................................................................................... 233
Term..................................................................................................... 234
Text...................................................................................................... 235
Totals................................................................................................... 236
UDC..................................................................................................... 236
Undo..................................................................................................... 237
Varsub................................................................................................... 237
Visual................................................................................................... 238
Warnings............................................................................................... 248
Whichcomp............................................................................................ 248
Window................................................................................................ 249
Work.................................................................................................... 250
Wraparound............................................................................................ 251
X.......................................................................................................... 252
YNone................................................................................................... 255
Zip....................................................................................................... 255
Shut Command [SH]........................................................................................... 257
Spell Command [SP]........................................................................................... 258
:Stream Command [STREAM].............................................................................. 260
:Tdpfinal and :Tdpdraft
Commands........................................................................ 261
Text Command [T]............................................................................................. 262
Undo Command [UN].......................................................................................... 269
Up Command [UP/F2]......................................................................................... 271
Use Command [U]............................................................................................... 272
Verify Command [V]............................................................................................ 273
Visual Command [VI/F1]..................................................................................... 274
:While and :Endwhile Commands.......................................................................... 275
Words Command [W].......................................................................................... 276
:Xltrim Command [XLTRIM]............................................................................... 277
Zave Command [Z].............................................................................................. 278
ZZ Command..................................................................................................... 279
User Defined Commands....................................................................................... 280
Command Files.................................................................................................. 285
Calculator Command [=]...................................................................................... 288
POSIX Commands [!].......................................................................................... 291
Troubleshooting and Error
Messages 293
Introduction........................................................................................................ 293
Messages........................................................................................................... 293
System Errors..................................................................................................... 295
Quit Errors......................................................................................................... 295
Errors in Visual................................................................................................... 296
Using Visual with X.25............................................................................ 296
Using Visual on MPE/iX.......................................................................... 296
Accidental Invocation of MPE/iX
CI........................................................... 296
Using Visual on HP-UX........................................................................... 297
Terminals Supported by Visual.................................................................. 297
Problems with 700/9x Terminals............................................................... 297
Visual Error Messages.............................................................................. 297
Analyzing Compiler Problems............................................................................... 299
QCOMPXLTRACE JCW........................................................................ 299
Control-Y and NM Compiles.................................................................... 300
How to Bypass Qcompxl.......................................................................... 300
Problems with HP's C Compiler................................................................ 300
Unresolved External Reference.................................................................... 300
Illegal Characters..................................................................................... 300
Pascal/V Compiler Stack
Overflow............................................................. 300
File Formats 303
Introduction........................................................................................................ 303
Qedit Workfiles................................................................................................... 303
Original Format Workfiles.................................................................................... 303
Jumbo Workfiles................................................................................................. 304
External Files..................................................................................................... 305
Error Files for Editerror......................................................................................... 307
Prefix Characters & Data........................................................................... 307
User Routines 309
Introduction........................................................................................................ 309
Wide Lines and User Procedures............................................................................ 309
"Init" Interface
Procedure....................................................................................... 310
"Com" Interface
Procedure..................................................................................... 311
"Add" Interface
Procedure...................................................................................... 312
"Exit" Interface
Procedure...................................................................................... 312
Installing Your Interface
Procedures......................................................................... 313
Alternate Activation............................................................................................. 313
The Modify User Hook......................................................................................... 314
Writing a User Procedure...................................................................................... 314
DL Space........................................................................................................... 315
Passing Procspace Values...................................................................................... 315
Communication Flags for User
Code....................................................................... 315
Qcopy 317
Introduction........................................................................................................ 317
Accessing Qcopy................................................................................................. 317
Qcopy Documentation.......................................................................................... 317
Qedit-Compatible Software Tools 319
Introduction........................................................................................................ 319
Compare/iX........................................................................................................ 319
OMNIDEX......................................................................................................... 319
Adager............................................................................................................... 320
CCS - Corporate Computer
Systems....................................................................... 320
Reflection........................................................................................................... 320
ROBOT............................................................................................................ 320
PowerHouse....................................................................................................... 320
Splash for Native-Mode SPL................................................................................. 321
Prose Text Formatter........................................................................................... 321
Spell: Spelling Checker........................................................................................ 321
Qhelp Help System.............................................................................................. 321
TRANSACT...................................................................................................... 321
MPEX and STREAMX........................................................................................ 321
SCOMPARE and ANALYZER............................................................................. 322
Xpedit Full-Screen Editor..................................................................................... 322
Nuggets............................................................................................................. 322
Fantasia............................................................................................................. 323
TDP................................................................................................................. 323
Network Engine.................................................................................................. 323
Regular Expressions 325
Introduction........................................................................................................ 325
Metacharacters..................................................................................................... 325
Character Class................................................................................................... 327
Escape Character.................................................................................................. 329
Escaped Sequences in Regular
Expressions............................................................... 329
Backreferences in Regular
Expressions..................................................................... 330
Escaped Characters in
Replacement String................................................................ 331
Qedit Glossary 331
Introduction........................................................................................................ 331
Terms............................................................................................................... 332
Abbreviating........................................................................................... 332
Batch.................................................................................................... 332
Calculator.............................................................................................. 332
Column................................................................................................. 332
Command.............................................................................................. 333
Control Character.................................................................................... 333
Copylib Members.................................................................................... 334
CRT..................................................................................................... 334
Current Line........................................................................................... 334
Defaults................................................................................................. 334
External File........................................................................................... 335
File Names............................................................................................. 335
Full-Screen Editing.................................................................................. 336
Hold File............................................................................................... 336
J Option................................................................................................ 336
Jumbo Files........................................................................................... 337
Keep File............................................................................................... 337
Language............................................................................................... 337
Left....................................................................................................... 337
Length................................................................................................... 337
Line...................................................................................................... 338
Linenum................................................................................................ 338
Looping................................................................................................. 339
Margins................................................................................................. 339
Member................................................................................................. 339
Memory Lock......................................................................................... 339
MPE Command...................................................................................... 339
Patterns................................................................................................. 340
Procedure............................................................................................... 340
Qeditscr................................................................................................. 341
Quiet-Q Option....................................................................................... 341
Range.................................................................................................... 341
Rangelist............................................................................................... 342
Relative Line Numbers............................................................................. 343
Right.................................................................................................... 343
Shifting................................................................................................. 343
Size...................................................................................................... 344
Spool Files............................................................................................ 344
$Stdin / $Stdinx..................................................................................... 344
$Stdlist................................................................................................. 344
String.................................................................................................... 344
Tab....................................................................................................... 345
Template-T Option.................................................................................. 345
UDC..................................................................................................... 345
Visual Editing........................................................................................ 345
Window................................................................................................ 346
Workfile................................................................................................ 347
Special Characters................................................................................................ 347
? Means Help, Nonprinting
Characters, Alphanumeric (in Patterns) or Optional (in Regexp) 347
$ Means Hex, Standard File,
Memory Lock, List Option, Previous File or End-Of-Line (in Regexp) 347
^ Means Findup, Control-Char,
Start-of-line (in Regexp) or Negate (in Regexp).. 348
. Means Nonprinting, Reset,
Decimal Point or Any Character (in Regexp)......... 349
! Means Posix Command or Too
Long....................................................... 349
% Means Octal or String........................................................................... 349
* Means Current, Refresh,
Multiply or Quantifier (in Regexp).......................... 349
\ Means Previous, String,
Literal Match (in Regexp) or Special Characters (in Regexp) 350
/ Means Prompt, Range
Delimiter, Stop, Exit, or Divide................................ 351
[ Means FIRST, [default] or
Start Class (in Regexp)...................................... 351
] Means LAST or End Class (in
Regexp)..................................................... 351
{ } Are for Comments or
Indentation.......................................................... 351
@ Means ALL........................................................................................ 352
& Means Literal Match or
Continue MPE Command..................................... 352
: Means MPE or String............................................................................ 352
; Means Multiple Commands.................................................................... 352
, Means a List......................................................................................... 353
= Means Copy or Calculate....................................................................... 353
< Means Move, I/O
Redirection or Backward Page........................................ 353
> Means Forward Page, I/O
Redirection, Modify or Qhelp.............................. 354
" Means String........................................................................................ 354
( Means Start Parameter,
Member, Command or Subpattern (in Regexp)........... 354
) Means End Parameter, Member,
Command or Subpattern (in Regexp)............ 354
+ Means Ahead Some Lines, Add
or Quantifier (in Regexp)............................ 355
- Means Back Some Lines, Minus
or Range (in Regexp)................................ 355
# Means Numeric Pattern, Spool
File or Previous Result................................ 355
~ Means Spaces (Pattern),
Recent Page or Field............................................ 356
Welcome to Qedit, the fast, full-screen text editor for MPE and HP-UX. To get into Qedit, enter this MPE command:
:run qedit.pub.robelle
Qedit version 5.8 has screen-editing, function keys and commands:
Commands:
Add |
FINDUp |
Open |
ZZ |
Add(=copy) |
FORM |
Proc |
%ext |
Add(<move) |
FORward |
Q |
shell |
Add(=file) |
GARbage |
REDO |
|
Append |
Glue |
RENum |
|
BAckward |
Help |
Replace |
|
Before |
HOld |
Set |
|
Change |
Justify |
SHut |
|
COLcopy |
Keep |
SPell |
|
COLMove |
List |
Text |
|
Delete |
LISTREDO |
UNDo |
COmp |
DEStroy |
LISTUndo |
Use |
RUN |
Divide |
LSort |
Verify |
Mpe |
DO |
MErge |
VIsual |
Udc |
Exit |
Modify |
Words |
Cmdfile |
Find |
New |
Zave |
=calc |
Function Keys:
F1 Upd Next/Visual |
F2 Roll Up |
F3 Findup |
F4 Find |
F5 Backward |
F6 Forward |
F7 Do ===> |
F8 Exit |
Qedit
comes with a User Manual and a Change Notice. You may have received printed
copies of these. If you wish to have printed copies, you can order them by
filling out the form on our web site.
For a complete description of the latest changes made to Qedit, the installation instructions, and any compatibility issues, see the change notice that was included with the release.
The
latest user manual and change notice are available in Adobe PDF format. If you
do not already have the Adobe Acrobat reader, you can get a copy from http://www.adobe.com/prodindex/acrobat/readstep.html.
If you wish to have printed copies, you can order them by filling out the form
on our web site.
You can
download the files from the Robelle web site at http://www.robelle.com/library/manuals/.
In addition to the Qedit User Manual and Qedit Change notice, there are other manuals that come with Qedit. Manuals for bonus programs and the contributed library are available in Robelle's Prose format, not in PDF format. They are found in the Robelle account on the HP e3000, and are printed using the Printdoc program. Printdoc prints the manual on your printer, whether LaserJet or line printer.
To print them on your printer, whether LaserJet or line printer, run the Printdoc program.
:run printdoc.pub.robelle
Printdoc is menu-driven, and very easy to use. Printdoc asks you for information, and if you are not sure of your answer, you can ask for help by typing a question mark (?) and pressing the Return key. There are two steps for printing a manual: first, choose one of the manuals on the menu; second, select a printer. Printdoc supports most types of LaserJet printers and regular line printers.
You may want to print at least one copy of these manuals:
prose.qlibdoc.robelle {text formatter}
spell.doc.robelle {Bonus spelling checker}
contents.qlibdoc.robelle {contributed library}
howmessy.doc.robelle {Bonus database analyzer}
You can print any Robelle document if you know the file name. If you wish, you can include the file name in the :Run command. For example, to print the Spell User Manual, type
:run printdoc.pub.robelle;info="spell.doc.robelle"
When you purchase Qedit, customer support is included for the first year. After the first year, there is a yearly Maintenance fee. If you are a Right-to-Copy user at a branch of a larger company, you have two options. If you pay only the one-time Extra CPU surcharge, then you must obtain your support from your own corporate resources. If you wish to have support at your own location, you may obtain this by also paying the regular Maintenance fee. With this yearly support for Qedit, you are entitled to call with questions. Service also supplies you with a yearly update to Qedit.
Do you receive a copy of What's Up, DOCumentation?, our regular news memo about Robelle, MPE, and HP-UX? We distribute our news memos only to sites with current service. Your copy may be going to your corporate headquarters.
The lastest newsletter is also available from our Web site at www.robelle.com/newsletter/.
Qedit comes with an array of contributed software in the QLIB library (in the QLIB groups of the Robelle account). The tools in QLIB, such as Prose to print manuals, can be extremely handy. As well, your Robelle license may entitle you to receive our Bonus programs: Compare/iX, a file comparison tool, HowMessy, an analyzer for database efficiency, Select, a menu processor, Spell, an English spelling checker, and Xpedit, a VPLUS text editor.
If you have the Bonus programs, you may only use them on appropriately licensed CPUs; you may not give a Bonus program away. However, QLIB programs may be used on any CPU and given away freely.
To browse through the Robelle account, including QLIB, use our Select "menu" program. Select allows you to run programs, get help, and print manuals, all without knowing any MPE commands.
:run select.pub.robelle,qlib
Compare/iX compares two text files (Keep or Qedit format) and prints out the differences. The basic comparison unit is a line. Compare/iX identifies three types of differences: lines that are in the first file but not in the second; lines that are in the second file but not in the first; and lines that are in both files, but don't match. There is no Classic version of Compare/iX for MPE V.
HowMessy analyzes a database and prints a report on its internal efficiency, 10 to 20 times faster than similar programs. To access HowMessy, log on as the database creator in the same group as the database and enter:
:file loadrept;dev=lp;cctl
:run howmessy.pub.robelle
Enter database:CUSTMR
Spell is a spelling checker that reads a file and produces a list of misspelled words. Spell comes with an 80,000 word English dictionary, and you can add your own words into global or local auxiliary dictionaries. Spell reads Qedit files, and has an option to generate an error file that is compatible with the :Editerror command.
This manual uses a standard notation to describe commands. Here is a sample definition:
VERIFY [ @ | ALL ]
[ keyword ...]
1. UPPERCASE - If the commands and keywords are shown in uppercase characters in a syntax statement, they must be entered in the order shown (example: ALL). However, you can enter the characters in either uppercase or lowercase.
2. Lowercase, highlighted - These are "variables" to be filled in by the user (example: keyword). The variables may be highlighted by underlining or italics. Each such "variable" is defined elsewhere (see the "Qedit Glossary" on page 331 when you have trouble). In the Help command, highlighting is not available, so these variables appear simply in lowercase.
3. Brackets - enclose optional fields (example: [ALL]).
4.
Braces - enclose comments which are not part of the
command. However, braces and comments are accepted in actual Qedit commands.
/listq filename {Q means without line numbers}
5. Up lines - separate alternatives from which you select (example: SET CHECK [ON|OFF]). The choices are sometimes listed on several lines without "up lines".
6. Dot-dot-dot (...) - indicates that the variable may be repeated many times in the command.
7. Other special characters - literal symbols that must appear in the command as they appear in the manual (for example, "=" in Add linenum = rangelist).
In examples, there is an implied Return key at the end of each line.
Control characters, generated by holding down Control while striking another key, are either spelled out (e.g., Control-H) or abbreviated with a circumflex prefix (e.g., ^H).
When Qedit asks you a question, the default answer is shown in [brackets]. The default is the answer that Qedit will assume if you press only the Return key.
Here are a few highlights of the new features in Qedit. For a complete list of changes, plus details on how to take advantage of all the new features, see the change notice that accompanied your tape. See the "Documentation" section on page 2 for instructions on how to print the change notice. All changes discussed in the change notice have been incorporated into the user manual and help file, but the change notice gives you everything new in one convenient document.
This section describes the latest enhancements to host-based Qedit and the server portion of Qedit for Windows. For information about enhancements to the client portion of Qedit for Windows, see the Qedit for Windows User Manual.
·
UDC’s.
UDC commands would stop working after a calc command that was longer than 138
characters. (5.9)
·
Text command. The text command would fail with
Integer Divide by Zero error when texting in some variable length or bytestream
files. (5.8)
· Regular Expressions. Qedit would improperly report the error "String longer than maximum allowed" if the expression specified is longer than the window of the rangelist. (5.8)
Here we describe how to install and configure Qedit, and how to integrate it with your compiler tools. The following are general notes about installing Qedit.
Use the following installation instructions if you have just purchased
Qedit and are installing it for the first time. If you already have Qedit on
your system, and are installing an update or pre-release of Qedit, you will
find specific installation instructions in the change notice included with your
tape.
TRIAL USERS: Refer
to the Robelle Trial Handbook that accompanied your trial tape.
To install Qedit, follow these steps:
1. Install Qedit
2. Install the QLIB and/or Bonus programs
3. Fix the NM compilers (XL only)
4. Fix the MPE V compilers (both systems)
5. Save disc space (optional)
Qedit edits compact files of a special format called workfiles. In order to be able to compile these files without doing a Keep command, you must "fix" the MPE compilers. This applies to the Classic 3000 compilers (CM), which might exist on either an MPE V or MPE/iX system, and the NM compilers on MPE/iX only. The methods and installation steps are quite different between the CM and NM Qedit compiler interfaces.
Many third-party tools either read Qedit files already (e.g., PowerHouse, MPEX) or can be altered to read Qedit files (techniques for doing this are discussed here).
None of the jobs that we supply have passwords in them. Before streaming a job, you may have to add your system's passwords to the first line. Users of MPE XL version 3.0 and higher do not have to do this because the operating system prompts for missing passwords. The same is true for some MPE V users who have security software that inserts passwords. Most MPE V users have to edit the jobs. For example, if the system manager logon password is Qwerty, you would do the following:
:editor
HP32201A.07.22 EDIT/3000
/text robelle.job.robelle
FILE UNNUMBERED
/modify 1
MODIFY 1
!job robelle,manager.sys,pub;hipri
i/qwerty
!job robelle,manager.sys/qwerty,pub;hipri
/keep robtemp
/exit
END OF SUBSYSTEM
:stream robtemp
:purge robtemp
Users of STREAMX, a part of SECURITY/3000 from VESOFT Inc., must set a Job Control Word before streaming jobs. This step prevents STREAMX from generating an error if the Robelle account does not yet exist. For example,
:setjcw streamxtempnonest 1
:stream robelle.job.robelle
This step requires three separate procedures: restoring all Robelle files from tape to disc, building (or upgrading) the Robelle account using the job stream that we provide, and streaming the installation job stream. All these procedures can easily be accomplished if you log on as Manager.Sys.
Restore Files
First, you have to restore all the Robelle files from tape.
:hello manager.sys {log on as system manager}
:file rtape;dev=tape {mount Robelle tape}
:restore *rtape; @.@.@; create {=reply on the console}
Check the :Restore listing for files that could not be restored because they were busy for any of the following reasons: someone was using them, they are held as suspended son processes (menu system), they are allocated, or someone was backing them up! Chase away any users and deallocate any busy programs. Then try the :Restore again.
Create/Update
Robelle Account
You must build (or upgrade) the Robelle account with the job stream we provide. Stream the job that builds and updates the Robelle account.
:stream robelle.job.robelle
If the Robelle account already exists on your system, the installation job preserves the current passwords.
If the account does not exist, it is created with the password XXXX. The Mgr.Robelle user does not have a password. You should change the passwords to something that will be hard for outsiders to guess.
:altacct robelle;pass={robelle account password}
:altuser mgr.robelle;pass={mgr.robelle user password}
Please note that during installation, we add OP capability to the Robelle account. When the Qedit installation is complete, you can, if you wish, remove the OP capability.
File Names
The Qedit program files are located in the Pub group of the Robelle account. These are the names of the various files:
Qeditnm |
|
NM Qedit program |
Qeditcm |
Qeditpm |
CM Qedit programs |
Qcompxl |
|
NM compiler interface |
Qedify |
Qcompusl |
CM compiler interface |
Qloadxl |
|
NM Qedit options |
Ederrnm |
Ederrcm |
:Editerror support |
Qmap |
|
reformat MPE V PMAP |
Install Program
Files
Our installation job installs Qedit. No one can be using these programs when you do the installation. Warn people not to use Qedit for a while, and then stream our installation job:
:hello mgr.robelle
:warn @;please exit from Qedit NOW!
:stream install.qeditjob {supply passwords}
Check the installation job $stdlist. If anyone was using Qedit or attempting to back it up, the job will fail. Chase away any users, ensure that backup is not in progress, then stream the installation job again.
The installation job renames your current versions of Qedit to the PubOld group of the Robelle account. If you need to move these versions back into production, use the Previous.QeditJob job stream.
You can now access Qedit by entering
:run Qedit.pub.robelle
If you wish to print manuals, move Qedit to another account, read on in this chapter for instructions.
Qedit comes with an array of contributed software in the QLIB library (in the QLIB groups of the Robelle account). QLIB programs may be used on any CPUs and given away freely. Your Robelle license may also entitle you to receive our Bonus programs: Compare/iX, HowMessy, Select, Spell, and Xpedit. These programs reside in the Pub group of the Robelle account. Bonus programs can only be used on authorized machines, and you may not distribute them to your friends.
If you received Bonus programs with this version of Qedit, use the job stream called Bonus.Job.Robelle to install both the QLIB and Bonus programs. If you did not receive Bonus programs, use the job stream Qlib.Job.Robelle to install the QLIB programs. If you skip this step, you may end up running old versions of these programs.
:hello mgr.robelle
:stream bonus.job.robelle {or Qlib.Job.Robelle}
The Spell Bonus program requires an additional install job to build its main dictionary. This job is required if you want to use Spell, and the Spell and Words commands in Qedit. By default, the American spellings are used. To use British spellings, modify the line that sets the SpellAmerican JCW so that the JCW is set to False. This job stream could take 30 to 60 minutes to complete; there is no reason to wait for it to finish before going on to the next step.
:run qedit.pub.robelle {or use :Editor}
/text dictmain.spjob
/modify "setjcw SpellAmerican" {for British spelling, }
/keep robtemp { change True to False}
/exit
:stream robtemp
:purge robtemp
See the Spell user manual for more information on using Spell.
On MPE/iX, if you use any NM compilers, you will want to install the new NM compiler interface. If you still use the CM compilers as well, you will want to install that compiler interface too, as described under step 4.
Assuming that you have Restored the Robelle files onto your system and that you have not done this step before, stream Savecmdf.Qeditjob to make backup copies of the existing HP command files in the Stdcmd.Sys group. You need to know the Manager.Sys password:
:stream savecmdf.qeditjob.robelle {wait for it to finish}
:listf @.stdcmd.sys
Then stream Qcompxl.Qeditjob to make changes to the Pub.Sys compiler command files.
:stream qcompxl.qeditjob.robelle
This stream makes the following changes to the files:
1. Change the run of the compiler program to
;xl ="qcompxl.pubnew.robelle, qcompxl.pub.robelle",
2. Add ";shr" to the File commands for the text and master files.
At any point, either within Qedit or at the MPE/iX prompt, you now should be able to compile a Qedit file or a Keep file, just by invoking the normal command file:
:pasxl source {from MPE}
:run qedit.pub.robelle
/pasxl source {from Qedit}
Within Qedit, you can specify "*" for the current workfile:
:run qedit.pub.robelle
/text source
/pasxl *
/exit
:pasxl qeditscr
When installing Qedit on MPE/iX, you may have to install the NM compiler interface (described earlier) and the CM compiler interface (described here). MPE V, on the other hand, has only the original "CM" compilers to worry about. After Restoring the files from tape, you have to choose an installation method: integral or isolated.
There are two methods of fixing the compilers on your system: integral into Pub.Sys or isolated in the Robelle account. The isolated method is best for new or trial-period users, because it is faster to install and easier to remove later. You can start with the isolated method and convert easily to the integral method later.
Integral Method. The compilers in Pub.Sys are "fixed" directly and a segment is added to the System SL. The standard :Cobol and :Pascal commands of MPE will then compile Qedit workfiles. :Sysdump is used to make a new cold load tape for the next time you must boot the system.
Isolated Method. The MPE compilers are copied into the Q.Robelle group and the original compilers are left in the Pub.Sys group. No code is added to the System SL. Because the "Qedit" compilers are not in Pub.Sys, you cannot compile Qedit workfiles except from within Qedit.
The job stream Qeditj1.Qeditjob.Robelle makes integral compiler fixes. Use it either to update the fixes to a new version or to re-install the fixes after a MPE update from HP. Because this job modifies the compiler program files in Pub.Sys, you should :Store @.Pub.Sys before starting and save the tape. You need another small tape for a new cold load tape.
Ensure that no one compiles until the installation is complete. Stop all jobs and send an operator warning. Log on as Manager.Sys, modify the first line of the Qeditj1 job to include the passwords, then :Stream the job.
:stream qeditj1.qeditjob.robelle
The job runs Qedify.Pub.Robelle to update the compilers in Pub.Sys and install nonprivileged hooks into them, so that they can access Qedit workfiles. The job adds a code segment from Qcompusl.Pub.Robelle into Sl.Pub.Sys and then requests a tape mount for a new cold load tape.
Mount a tape with a write ring and :Reply. Save this tape and use it for any future cold loads. The CM compiler interface is now installed. Compiles done inside or outside Qedit work on either Qedit workfiles or on regular Keep files.
The job stream Qeditj1a.Qeditjob.Robelle fixes the compilers, but isolates the changes in the Q.Robelle group. Ensure that no one compiles until the installation is complete. Stop all jobs and send an operator warning. Modify the first line of Qeditj1a to include the Robelle password, then stream the job:
:stream qeditj1a.qeditjob.robelle
The job uses Qedify.Pub.Robelle to copy the compilers from Pub.Sys to the Q.Robelle group, then "fix" them to read Qedit files. The original compilers in the Pub.Sys group are not modified. Once this step is completed you can use the CM compilers on Qedit files from within Qedit, but not at the MPE prompt.
There may be obsolete or unnecessary files in the Robelle account that you can remove to save disc space.
If you have been a Qedit user for several years, you may have obsolete files in the Robelle account. For example, the file Qapply.Doc.Robelle is an older version of part of the Qedit User Manual. It should be purged.
To remove all obsolete files that were part of the Qedit product, stream the job Obsolete.Qeditjob.Robelle.
If you are extremely short of disc space, you can purge many files in the Robelle account after you complete all installation steps. The only files you must have to run Qedit are those listed below. Of course, if you have other Robelle products such as Suprtool, you do not want to purge the files needed for them, which are listed in their User Manuals.
Filename |
Purpose |
qedit.pub.robelle |
|
qloadxl.pub.robelle |
optional NM run-time |
qeditpm.pub.robelle |
allows BS priority |
qcompxl.pub.robelle |
MPE/iX only |
qedify.pub.robelle |
CM compiler interface |
qcompusl.pub.robelle |
CM compiler routines |
@.q.robelle |
copies of CM compilers |
qedit.help.robelle |
|
qedhint.help.robelle |
|
qzmodhlp.help.robelle |
|
qmap.pub.robelle |
for QMAP in :Prep command |
prose.qlib.robelle |
to print manuals, you need this |
f92286f.qlibdata.robelle |
and at least one font files |
There are a number of jobs in the Purgejob.Robelle group which can help clean up the Robelle account of unwanted files. One in particular that you may want to use is Cleanup.Purgejob.Robelle. After you have completed the Qedit installation, Cleanup gets rid of all the pre-installation files.
:stream cleanup.purgejob.robelle
Although the Qedit program file is normally installed on the system Qedit.Pub.Robelle, you can move the program to any account and group that has PH and DS capability. There are some file names that are built into Qedit:
Filename |
Purpose |
qedit.help.robelle |
the Qedit help text |
qedhint.help.robelle |
the hint-of-the-day file |
qzmodhlp.help.robelle |
help text for Qzmodify |
qmap.pub.robelle |
for QMAP option of :Prep |
cobol.q.robelle |
etc., the CM compilers |
qeditmgr.pub.robelle |
a configuration file |
qloadxl.pub.robelle |
NM run-time routines |
Qedit follows the location of the program file in deciding what file names to open. If you move the Qedit program to the PUB group of the UTIL account, Qedit looks for the files listed above in that account rather than Robelle. If Qedit resides in a group named Pubnew (or Pubxxx), the three "help" files will be searched for in HELPNEW (or HELPxxx). The Qeditmgr file is always assumed to be in the same group as the Qedit program, while Qmap must be in the Pub group and the CM compilers in the Q group.
:hello mgr.util,pub
:fcopy from=qedit.pub.robelle;to=qedit.pub.util;new
:fcopy from=qloadxl.pub.robelle;to=qloadxl.pub.util;new
:fcopy from=qedit.help.robelle;to=qedit.help.util;new
:fcopy from=qedhint.help.robelle; &
to=qedhint.help.util;new
:fcopy from=qzmodhlp.help.robelle; &
to=qzmodhlp.help.util;new
:fcopy from=qmap.pub.robelle; &
to=qmap.pub.util;new
The Verify Account command shows what account Qedit searches for the Qeditmgr file, Qmap.Pub, and the CM compilers. Use Set Account to override the default. The Verify Filename command shows the names assumed for the "help" files and Set Filename allows you to override them.
Suppose you run Qedit in the Util account, but you don't want to move the rest of the files to that account. You would use Set Account Robelle and Set Filename commands to force Qedit to look back into Robelle for the files instead of in Util.
When you install MPEX and the Vesoft account, they make a copy of Qedit in Pub.Vesoft and "hook" it for closer cooperation with MPEX.
:run qedit.pub.vesoft;lib=p
Since Qedit looks for compilers, help files, and other supporting files in the same account where the program resides, the hooked Qedit looks for those files in the Vesoft account. If you are on MPE/iX and you want I/O redirection of command files, copy the file Qloadxl from Robelle to Vesoft. Put the following Set commands in a configuration file named Qeditmgr.Pub.Vesoft:
/set account robelle {e.g., Cobol.Q.Robelle}
/set filename help qedit.help.robelle
/set filename hint qedhint.help.robelle
/set filename qzmodhlp qzmodhlp.help.robelle
/set extprog mpex.pub.vesoft com on
The Set Extprog command assumes that you want Qedit to explicitly pass % commands to MPEX, rather than have the "hook" intercept all % lines at every prompt in Qedit. It is desirable to handle % commands within Qedit this way, rather than through the hook, because it ensures that your current workfile is properly posted to the disc and it allows you to Add % commands into a file as data without executing them. To achieve this result, you must rehook Qedit with the Nopercent option:
:run mpex.pub.vesoft
%hook qedit.pub.robelle;nopercent {SM or Vesoft logon}
You may not find that you need a hooked Qedit, now that Qedit has a :Listredo stack and accepts the VESOFT-style shorthand ("," for Redo). Some remaining benefits of hooking Qedit are that the System Manager can Keep across account boundaries (but watch out for Creator name), and ACD information is retained from Text to Keep.
The MPEXHOOK procedure, which intercepts file system calls made by Qedit, is activated differently based on whether the program to be executed is a native-mode or a compatibility-mode program. On Classic systems, or on Spectrum systems running compatibility-mode or OCT-mode Qedit, you run the hooked program with lib=p.
:run qedit.pub.vesoft;lib=p
Lib=P works equally well with the native mode version of Qedit. However, with Qedit/iX, you can specify an XL file instead of the Lib parameter:
:run qedit.pub.vesoft;xl="mpexhknl.pub.vesoft"
The hooked version will work version either way. The Lib parameter is there for MPE compatibility reasons (Classic vs PA-RISC). The XL file parameter is the "correct" way of doing it on MPE/iX.
The following sample User Command, which can be used to run the hooked version of Qedit, determines if Qedit is native-mode or compatibility- mode, and invokes it accordingly.
parm runparm=0
if finfo("qedit.pub.vesoft",9)="NMPRG" then
run qedit.pub.vesoft;xl="mpexhknl.pub.vesoft";parm=!runparm
else
run qedit.pub.vesoft;lib=p;parm=!runparm
endif
VESOFT advises that you be running MPEX version 23.11115 or later, so that the Keep-across-accounts feature will work properly with Qedit/iX.
If Qedit/iX aborts with quit parm -50 or -1041, this indicates that the MPEXHOOK support routines are not correctly installed on your system. You will have to stream the VESOFT-supplied job Veproc.Job.Vesoft. If the hooked Qedit/iX still aborts after running this job, you will need to contact VESOFT for a software update.
If you remove Qedit from your system, you will want to revert to the original MPE compilers. Once you remove the compiler interface you can no longer compile Qedit workfiles. you may either Keep them with Qedit, or use the contributed program Qcopy.Qlib.Robelle to convert them to Keep files.
If you did an integral installation of the CM compiler interface, you now do an integral removal. If you did an isolated installation, you now do an isolated removal.
Reverting to the original NM compilers is a simple matter of going back to the original command files. You should have saved those in @.Stdcmd.Sys. Purge the command files in Pub.Sys, such as Pasxl, and Rename or Copy the originals from Stdcmd.Sys.
Qeditj3.Qeditjob.Robelle removes the Qedit CM compiler interface that had been integrated into MPE. The original compilers are Restored and the CM Interface is removed from the system SL. If you are on MPE V, a new cold load tape is created.
Ensure that no one compiles for the next half hour. Stop all jobs and send an operator warning. Log on as Manager.Sys, modify the first line of the Qeditj3 job to include the passwords, then :Stream the job.
Qeditj3 first attempts to :Restore the original compilers from a backup tape (you can use the last Hewlett-Packard update tape). Mount the tape and :Reply on the console. It then removes the Qedit interface segment from Sl.Pub.Sys and requests a tape to make a new cold load tape. Please mount a blank tape with a write ring and :Reply. Save this tape and use it on your next cold load.
Qeditj3a.Qeditjob.Robelle removes the isolated CM compiler interface from the Robelle account, leaving you only the original ones in Pub.Sys. Ensure that no one compiles or uses Qedit until this job finishes. Stop all jobs and send a warning to all users. Modify the first line of Qeditj3a to include the Robelle account password and stream the job.
Qeditj3a purges fixed compilers from the Robelle account, removing the interface.
Qedit aims to provide everything an MPE or HP-UX programmer could need to write COBOL, PowerHouse, or other programs, and to prepare documentation. Therefore, Qedit has Line mode for batch editing and full-screen mode for interactive editing. On HP terminals, Qedit's full-screen mode is called Visual mode.
Qedit's Visual mode is a powerful but friendly full-screen editor designed specifically for programmers. It gives you full access to the editing capabilities of your terminal in block-mode, with low system overhead. You can move, copy, mark and delete blocks of text with Visual's cut-and-paste functions, and page backward and forward through your file with function keys. To use Visual mode, you must have an HP terminal or an HP terminal emulator (e.g., Reflection from WRQ).
NOTE: As of HP-UX 11.0, HP has dropped support for block-mode terminals. For this reason, full-screen editing is only available in Screen mode on HP-UX 11.0 and later.
In Visual mode, you have access to all Line mode commands (including UDCs, command files, compiling, linking and running programs, shell scripts, and string searching and changing). Qedit's search and replace functions aim to be simple, fast and powerful (e.g., ignore embedded words, etc.). The Undo command allows you to cancel any previous edits to your file, working back to the state at which you started. Using the optional Open and Shut feature, you can switch between files instantly. With the Justify command, the Prose text formatter and the Spell checker, you can format documents such as memos and manuals.
Visual mode is a good introduction to the HP operating systems for users who don't work on HP computers all day. Those who may particularly benefit are novice users, or users who run Qedit only to update a report skeleton once a week. These occasional users no longer have to memorize editing commands. Visual mode provides a familiar environment where novices can make changes to the entire screen, just as they do on PC editors. You can even configure some electronic mail packages (HPDesk, elm), to put your users directly into Visual mode when they edit a message.
After you have invoked Qedit, and Texted or Opened a file, you switch from Line mode to Visual mode by typing VI or pressing F1. If you don't have a file open, Qedit opens a scratch file and, if empty, fills it with a screenful of blank lines.
VI [ linenum | "string" ] or press F1
(Default: linenum = *)
Whereas in Line mode you type in command and text lines ending each with a Return, in Visual you edit a full screen of text in block-mode using the terminal keyboard. Since your terminal is off-line from the computer, you can use its cursor and editing keys. You edit by moving the cursor around the screen, inserting and deleting lines and characters. Press Enter to save your changes. To move through the file, you have the convenience of eight function keys, such as F6 Forward One Page.
Visual mode in Reflection for Windows, showing cut-and-paste indicators
You copy, move, hold, and delete blocks of text easily by placing "cut-and-paste" indicators at the start of the line. You may type Line mode commands at the home line ===> and execute them via the Enter or the F7 key. Combining the cut-and-paste functions with the Open and Shut commands, you can also copy and move text quickly between different Qedit files. Use the ZZ cut-and-paste indicator with any command to mark text easily.
The Set Visual command controls how Visual mode operates and allows great latitude in configuring Visual to your own liking. For example, you can choose to have automatic update; decide where the current line or cursor appears; and select how many lines will carry over when you page up or down.
When you are done, exit Visual mode using F8, then Keep or Shut your file. Press F8 again to leave Qedit.
===>
Okay 1691.75 WFILE.DOC.TACCT "verify"(u) Move Ready
* procedure abc;
+1 begin
+2 integer def;
//
....+....10...+....20...+...
The screen starts with the home Line, followed by the status Line, several text Lines, and ends with the template Line. Columns 3 and 4 of text lines sometimes contain special characters and are called the indicator columns.
You type commands, search for strings and for line numbers after the ===> on the home line.
===>
These are executed when the F7 or Enter key is pressed.
The home line is also used by Qedit to print error messages. You must clear the error message by pressing the F7 or Enter key before you can type another command in the home line.
The second line shows the status, the current line number (i.e., that of the * line), the name of the file you are editing, the current string with its window, and any pending cut-and-paste task.
Okay 1691.75 WFILE.DOC.TACCT "verify"(u) Move Ready
If you have Texted a file into Qeditscr, the status line shows the name of the Text file, which is also your default Keep file.
By default you see the * (current) line and 19 lines after it. Each line is prefixed by the relative line number, and two columns for special indicators.
* procedure abc;
+1 begin
+2 integer def;
Use Set Vis Above and Set Vis Below to adjust the number of lines shown above and below the current line.
The last line has // and a column template. The // signals end-of-screen to Qedit and must not be erased.
// ....+....10...+....20...+...
Visual uses more than 76 columns for text on Reflection, Qcterm, a 2393/97, 2626, or 700/9x terminals.
Qedit leaves columns 3 and 4 of the text lines for you to enter cut-and-paste operators (i.e., MM, CC, HH, etc.). Also, Qedit may print one of two special indicators in these columns:
! |
line extends beyond the visible right margin |
? |
line contains control characters, shown as dots |
An ! means the line extends beyond the right terminal margin. To shift the screen image left, type Set Left 55 at the Visual home line and press F7.
A ? means the line contains nonprinting characters such as Nulls, Escapes, Bells, Tabs or possibly Roman-8 extended characters. Qedit replaces these characters with dots (.) in Visual mode, and does not allow you to make changes. These ? lines are not updated when you press Enter.
To edit Bells, Escape sequences, Tabs, ShiftOuts and ShiftIns in Visual, use Set Vis Bell, Set Vis Esc, Set Vis Tab, Set Vis SO and Set Vis SI. All these specify substitute characters to be shown instead of dots. To edit other control codes, use Modify or Change from the ===> line. If you turn Set Editinput Extend Off, Qedit regards Roman-8 characters as nonprinting noise and show them as dots.
In Visual mode, the keyboard gives you the power to move around the screen, edit text, and control the flow of Qedit.
You move around the screen using the cursor keys and others:
Cursor Left |
Move one space to left |
Backspace |
Move one space to left |
Cursor Right |
Move one space to right |
Cursor Up |
Move one space up |
Cursor Down |
Move one space down |
Return |
Down to next line, back to column 5 |
Home Up |
Move to ===> line |
Shift-Home |
Move to bottom of screen |
Tab |
Move to next right Set TAB column |
Shift-Tab |
Move to next left Set TAB column |
Prev Page |
Only moves around terminal memory |
Next Page |
Only moves around terminal memory |
You revise the screen image using these keys:
Space bar |
Move cursor right and erase character |
any char |
Overwrite cursor and move it right |
Del Char |
Remove character at current cursor |
Ins Char |
Enable "insert"; use again to disable |
Ins Line |
Insert blank line above current line |
Del Line |
Delete line at current cursor |
Clear Line |
Erase to the end of the line |
Clear Display |
Avoid! Recovery: Home Up,*,F7 |
To save the changes you have made on the screen,
Enter |
Send screen image to Qedit, update file |
To return from Visual mode to Line mode:
F8 |
exit from Visual |
Some other keys:
Select |
Useless in Qedit |
Stop |
Do not use in Visual |
Break |
Disabled in Visual |
Reset |
Use if screen locks up, press Enter |
Esc |
First key of Escape sequences |
Del |
Does not delete anything! |
If you are using a PC with Reflection for DOS, you need to map the PC keys into the HP keys.
Note that the PC keyboard has two keys labeled Enter, which are used differently in Qedit. The Enter key above the Right Shift key is called the Return key in this manual, and is used to execute commands in Line mode. In Visual mode, this key moves the cursor down by one line. The other Enter key (on the numeric keypad) is called the Enter key, and is used to update the screen in Visual mode.
Here are the default Reflection keystrokes for common functions:
Terminal Keyboard |
Reflection Key Sequence |
Enter |
Enter on the numeric keypad. If that doesn't work, try the "+" on the numeric keypad, or try Shift-F10 |
Home Up |
Control-Home |
Shift-Home |
Control-End |
Ins Line |
Alt-I |
Del Line |
Alt-D |
Clear Line |
Alt-K |
Clear Display |
Alt-J (avoid in Visual!) |
User keys |
F9 |
System keys |
F10 (then F7 for help) |
Additional Functions |
Reflection Key Sequence |
Begin Line (Column 1) |
Home |
End Line |
End |
Help about Reflection |
Alt-H |
Exit |
Alt-X |
AdvanceLink is similar (Alt-H is help, Alt-I is Insert Line, Alt-D is Delete Line), but Clear Line is Alt-L, and Enter is Alt-F3. Other terminal emulators have their own keystrokes for common functions. See your emulator's manual for details.
Much of the convenience of Visual mode is due to the power built into the eight user function keys: F1 through F8.
F1 |
Update and go to next page |
F2 |
Roll Up Screen n lines, as per Set Vis Roll |
F3 |
Findup (search back for current string) |
F4 |
Find (search ahead for current string) |
F5 |
Backward One Page |
F6 |
Forward One Page |
F7 |
Execute command typed in ===> line |
F8 |
Exit from Visual back to Line mode |
Qedit reads the current page and updates the file, then displays the next page. The F1 key combines the Enter key and F6 (Forward) in a single key. However, F1 does not execute any command typed in the home line as the Enter key would.
Qedit clears the screen and displays a new one that is rolled up n lines (default: 6), where n is controlled by Set Vis Roll.
Qedit searches backward in the file, starting from the * line, until it finds a line that contains the current string. Qedit clears the screen and displays a new page, with * positioned at the line that contains the found string. Visual also displays the target string on the Status line.
Before you can use F3, you must establish the string for which to search. Type the string in quotes prefixed by a circumflex (^"string") at the ===> on the home line and press F7, to do the first Findup.
Qedit searches forward in the file, starting from the * line, until it finds a line that contains the current string. Qedit clears the screen and displays a new page, with * positioned at the line that contains the found string. Visual also shows the target string on the Status line.
Before you can use F4, you must enter the target string. Type the string in quotes ("string") at the ===> on the home line and press F7, to do the first Find.
Qedit clears the screen and displays the previous page. By default, the top line of the original screen becomes the bottom line of the new screen. Use Set Vis Carry to change the number of lines carried over to the new screen.
Qedit clears the screen and displays the next page. By default, the bottom line of the original screen becomes the top line of the new screen. Use Set Vis Carry to change the number of lines carried over to the new screen.
Use the F7 key to execute commands. The current screen is not updated, unless you have Set Vis Update On. Type whatever command you want to execute after the ===>. This includes "strings" to find, Qedit Line mode commands such as Open or Justify, MPE commands, calculator commands (=5/6), and special Visual commands (e.g., * for Refresh, ? for Help). Then press F7. Qedit reads only the home line and executes the function. To first save your screen changes and then execute, use Enter instead of F7.
See the section "Home Line Commands" for complete details.
To return from Visual mode to Line mode, use the F8 key. Press F8 again once you are in Line mode to exit Qedit and return to MPE (: prompt). If for some reason F8 fails to exit from Visual, type / at the ===> and press F7 or the Enter key. This should get you back to Line mode.
Line Number. Move to a specific line (e.g., to line 45).
===>45 F7
> and <. Move ahead or back a page. Use with a number to move several pages (e.g., ahead 3 pages).
===>>3 F7
+ and -. Move forward or backward any number of lines (e.g., back 200 lines). If you do not specify a number, the default is the number of lines configured by Set Vis Roll.
===>-200 F7
~ The Tilde Key. Return to the "most recent" screen. If you jump from line 1500 to line 451, ~ sends you back to 1500. This is handy if you jump briefly to another part of your file to check something then want to get back to your original location.
The tilde is also available from line-mode but it has to be enabled by removing it from the list of string delimiters. In order to do this, you could do the following:
/V stringd
Set STRINGDelimiters "|\~{}[]_@?!#>%&:'"
/S stringd "|\{}[]_@?!#>%&:'"
Notice that tilde has been removed from the delimiter list entered on the Set command.
===>~ F7
FIRST and LAST. Move to start or end of file.
===>first F7
Scrollup Character.
This character can be entered in the cut-and-paste columns to scroll up in the
file. A single character scrolls the number of lines defined by Set Visual
Roll. If the character is entered more than once, Qedit scrolls up that many
times the number of Roll lines. For example, enter 4 minus signs anywhere to scroll
4 X Roll lines. The default scrollup character is a minus sign. It can be
changed to something else with Set Visual Scrollup.
It is never necessary to remember line numbers in full-screen mode. Visual allows you to mark, hold, move, copy, replicate, or delete a block of text, all visually. This is called "cut-and-paste" and is done by putting special indicators in the two blank columns at the left of each text line before you press the Enter key. For example, DD indicates a block of text to be deleted.
Order Is Not Important (But One at a Time). You can enter the indicators in any order and on different screens, but 10,000 is the maximum number of lines you can cut. When you have defined a complete cut-and-paste task, Qedit completes the task and removes the indicators. You can only perform one cut-and-paste task at a time.
Single Line |
Block of Text |
Function |
M |
MM |
Move line or block of text |
C |
CC |
Copy line or block of text |
D |
DD |
Delete line or block of text |
H |
HH |
Hold a line or block of text |
|
HJ |
Append block of text to Hold file |
|
JJ |
Justify a block of text |
Z |
ZZ |
Mark a line or block of text |
|
XX |
Exclude a block of text from the
display |
A |
Insert text "after" this line (or use F for "following") |
B |
Insert text "before" this line (or P for "preceding") |
AH |
Insert Hold file after this line (or use FH) |
BH |
Insert Hold file before this line (or use PH) |
A0 |
Insert Hold0 file after this line (or F0) |
B0 |
Insert Hold0 file before this line (or P0) |
R |
A line to be replicated after itself |
Rn |
A line or block to be replicated n times (max. 9). (See "Copying a Block of Text" below.) |
Display Enhanced. When the cut-and-paste task is partly defined, Qedit highlights the indicated lines and adds a warning to the status line.
You can cancel a pending cut-and-paste task (if you have not pressed the final Enter) by entering a period (.) in the ===> line and pressing F7.
===>. F7
Paste One Copy at a Time. Suppose you want to copy a section of text from one place in your file to another. Here is one way to do it. First, locate the screen containing the start of the block that you want to copy, using a string search via the home line. Move the cursor down to the first line you want to copy, then press Cursor Left twice and type "CC" in the blank columns provided. Press Enter and you should see that line highlighted in inverse video.
Second, find the end of the text section and mark the last line with another "CC". After you press Enter, you should see the entire block highlighted.
Third, go to the screen where you want to insert a copy of the text. Move the cursor down to the line before the desired insertion point, Cursor Left once and type "A" (for after). Press Enter and the block should appear.
Paste Multiple
Copies at Once.
When working with a block of text, you can use the same cut-and-paste codes to mark the beginning and the end of the block (i.e., HH on the first line of the block and HH again on the last line). The only exception to this is the block replication code.
In this case, you would use RR to mark the beginning of the block and Rn to mark the end of the block, where n represents the number of times you want that block replicated. For example, to have the same block replicated five times, you would enter R5. The new blocks are inserted immediately after the last line of the copied block.
The original lines marked for replication are written to the Hold0 file.
Using Visual mode's cut-and-paste functions, you can copy and move blocks of text between files.
You can only edit one file at a time in Qedit, but you can switch quickly between different Qedit files by Opening and Shutting them.
/o file1
Open file1 List * = 20
/o file2 {implicitly shuts file1}
Shut file1
Open file2 List * = 48
/o * {open the last file that was shut}
Shut file2
Open file1 List * = 20
/o * {open the second file again}
Shut file1
Open file2 List * = 48
Note: The * shortcut refers to the last Qedit file that was shut.
Now, to copy a block of text from file1 to file2, use HH twice (just as you would use CC) to hold the block in file1. Then, open file2, and use AH or BH to paste in the text from the Hold file. To move a block from file1 to file2, use the DD function to delete the block of text from the first file. The deleted block is stored in a temporary Hold file called Hold0 (Hold-zero). Now immediately open file2 and use A0 or B0 to paste in the text from Hold0.
Single line
V |
a single line to be diVided |
G |
a single line to be glued |
GJ |
a single line to be glued with a space inserted |
Block of text
VV |
begin or end of the block to be diVided |
GG |
begin or end of the block to be glued |
To divide a line, use the V (diVide) cut-and-paste function in column 3 or 4, then insert the special field separator ("~") at each division point in the line. The default field separator is tilde ("~" ), but you can override this with Set Vis Field. If no "~" is found in the line, a blank line is added after the line.
What about dividing all the lines in a range? Use VV to mark the start and the end of the line range, then place the field separators in the first line of the range. Every line of the range is divided at the specified field columns. If no "~" is found, a blank line is added after each line.
When marking several division points, insert them into the first line of the block from right to left. As you insert them, they shift the following text to the right one space each. Otherwise, if you insert them from left to right, it is difficult to select the proper division point for subsequent fields.
To Glue the next line to the current line, use a G in column 3 or 4. To Glue two lines with a space inserted at the joint, use GJ in columns 3 and 4.
To glue "pairs" of lines within a block, use GG to mark the start and end of the block.
By default, G and GG append text after the last nonblank character in a line, but it is also possible to glue text to specific columnar fields. You do this by inserting a field separator at the start of each field (mark the first line only). The default field separator is the tilde ("~"), but you may override this with Set Vis Field. If you specify three fields, G glues the next three lines to the first line. GG glues the next three lines to the first line, and then go on to the next group of four lines. If the precise column number where each field starts is important to you, insert the field separators from right to left, since each one that is inserted shifts the column numbers that follow off by one more.
The XX indicators are used to mark lines that you do not
want displayed in full-screen mode. Once marked, the block of text is replaced
with a single line.
---
Excluded Area --- 10/34.5
This line shows the line numbers
which are currently excluded. An excluded area setting is saved in the workfile
so it's preserved across Open/Shut commands. To reset the excluded area and see the original
lines again, type .xx on the
Homeline and press Enter or F7.
The excluded area can also be
defined using Set
Visual XX. The current excluded area is
displayed on the Verify
Visual output.
Restrictions
The Excluded Area line must not be
removed, altered or used in any way. This also means that you can not enter any
indicators in the cut-and-paste area. If you wish to paste lines before or
after the excluded area, you should use the appropriate cut-and-paste
indicators on the line that immediate precedes or follows the Excluded Area line.
An excluded area can not be
included in any other block operation such as ZZ, CC, MM or other XX.
If any of these rules are
broken, Qedit displays an appropriate error message.
Justification in text alignment is available in full-screen mode. To justify a block of text, simply mark the first and last lines in the block with the JJ indicator. If Qedit uses any justify default settings, they are defined by the Set Justify command. If there are no default settings, Qedit assumes the text should be justified within the current display width.
The justified lines are written to the Hold0 file. A single J indicator is not valid.
When the insertion point is on the current screen, Qedit renumbers the screen if needed (and if Set Vis Renum is ON).
When entering a lot of new text, it is tiresome to keep pressing Ins Line for each new line. To insert a block of 10 blank lines quickly, press Ins Line to create one blank line, Cursor Left twice, type R9, and press Enter. This reproduces nine copies of the blank line immediately after it (as well as updating the paragraph you just finished typing). Repeat as needed.
Visual has both an implicit and an explicit Hold file.
The Implicit Hold0 File. Any block processed by the CC, MM, JJ, RR, or DD indicators is also written to a disc file called Hold0 (Hold-zero). This allows you to copy the lines back into your workfile using A0 or B0 (add from Hold0, After or Before the line on which you place the indicator).
The Explicit Hold File. The HH indicator writes a block to the Hold file without moving or modifying it. Use H for a single line. To copy the line(s) back into your workfile, use AH or BH. You may need a Hold file when creating a file that you want to compile, or when using the Use command. You must use HH (instead of CC) for copying text from one file to another.
When HH is used to mark the beginning and end of a block, it copies the block of text to the explicit Hold file. With the HH indicator, the current contents of the Hold file are erased and replaced with the marked lines.
If you want to append a block of text to the Hold file, you can use the HJ indicator. HH or HJ can be used to mark the first line. However, HJ must be used to mark the last line. You cannot hold-append a single line of text, which means you can append only two or more lines. With the HJ indicator, the current contents of the Hold file are preserved and the block of text is appended to it.
The ZZ indicators mark a group of lines that you want Qedit to remember. Use Z to mark a single line. Note: "Z" for a single line is valid only in Visual mode; in Line mode, use "ZZ" to mark a single line. See the ZZ command in the "Qedit Commands" chapter for further information. Once marked, the lines are displayed at half-bright intensity and you can refer to them in any home line command by using ZZ where the line numbers are expected. This is especially useful when listing lines to the printer, changing or appending strings, and formatting text:
===> list $lp zz F7
===> change
"bob"Robert" zz F7
===> verify zz F7 {check current ZZ range}
===> zz off F7 {cancel ZZ range}
If you want to copy text into your current workfile from another file that is not a Qedit file, you cannot use the methods described above. You cannot Open the second file if it is not in Qedit format. Instead, use the List command to find the portion of text that you want to add from it (without Shutting the first file). Then, use the Add command to paste in the text.
===>list xxx
===>add * = xxx 10.7/22.9
All Qedit commands are supported in Visual mode. To do a command, such as Listf or ls, press the Home Up key to reach the home line, then type your command after the ===> and press F7 or Enter. To execute a command, such as Change, on a subset of the file, first use the ZZ cut-and-paste indicators to mark the subset and then use ZZ in the command. After most ===> commands, Qedit prompts you for more commands ("Next command [Visual]"). Type in more commands, or return to your Visual screen above, by pressing the Enter or Return key.
Qedit accepts each command, executes it and goes back to the "Next command" prompt. There are a few exceptions to this process. By default, when you enter an Open command, Qedit assumes you want to edit the file immediately and switches into full-screen mode automatically. If you wish to disable this feature, enter Set Visual Editonopen Off.
If the tilde has been removed from the list of string delimiters (see Set Stringdelimiters) and you enter a tilde "~" at the "Next command" prompt, Qedit uses the current line number associated with the tilde, makes it the current line and goes back into Visual immediately.
To search for a string, simply type it in quotes at the ===> line and press F7 or Enter.
===>"string" F7
Qedit will find the next line containing that string, display the page around it, and show the target string in the Status line. To find the next occurrence of the same string, press F4.
To find the previous occurrence of a string, prefix the string with a circumflex.
===>^"string" F7
To find the next previous occurrence, press F3.
You may delimit strings with any of the following characters:
~ |
Tilde |
! |
Exclamation mark |
# |
Number sign |
& |
Ampersand |
_ |
Underscore |
| |
Vertical line, Up-line |
" |
Quotation mark |
' |
Apostrophe, Single quote |
\ |
Reverse slant, Backslash |
You may use single quotes (') if you do not have Set Decimal On. Note that, with this syntax, Qedit permits a few less characters in Visual mode than it does in Line mode because Visual mode uses these characters for other purposes. For example, the question mark is used to get quick help about Visual mode, instead of as a string delimiter. If you insist on using other delimiters, you should use the Find command on the ===> line.
===>F :string:
F7
You can change strings on the screen by entering a Change command on the ===> line.
===>c "niether"neither" */*+19 F7
To get help, press Home Up, type ? and press F7 or Enter.
===>? F7
The ? command gives a one-screen summary of Visual mode. For complete on-line help on Qedit, including Visual, type HELP in the ===> line and press F7 or Enter.
===>help F7
For help on a specific command, type HELP [command name]. See the Help command in the "Qedit Commands" chapter. To get out of help, press F8.
You compile your file using the home line. Just type the proper compile command in the ===> line and press F7 or Enter. For example, to compile a current COBOL file:
===>cob85xl * F7
In fact, you can execute any MPE or shell command in the ===> line. You can :Link and :Run, :Listf, :Showjob, ls, and even execute UDC commands or shell scripts, just as you do Qedit commands.
To format a screen paragraph, mark the paragraph with ZZ cut-and-paste indicators, then use a Justify command that includes a ZZ. For example:
===>justify both margin 68 zz F7
If every paragraph ends with a blank line, you can Justify a paragraph by using the relative line number on the screen. Justify will start at that point and continue until it finds a blank line:
===>justify both margin 68 *+2 F7
For more information on Justify, see the Justify command in the "Qedit Commands" chapter.
After you have made some changes to your screen in Visual mode and updated the file by pressing Enter, you may decide you don't want those changes after all. You can use the Undo command to cancel these changes.
All of the changes you make on the screen before pressing Enter, are treated by Qedit as one "undo-able" command, except for cut-and-paste operations. Qedit always executes a cut-and-paste last after updating the file with any other changes, no matter what order the changes were made in. This means that you can choose to undo just the cut-and-paste operation, or undo it and all of the other changes. You can continue undoing your previous changes until the file is back to its original state.
If you make changes to the screen, then decide not to keep them before you press Enter to update your screen, how do you get your original text back? You refresh the screen by typing a * on the home line, then pressing F7, F1 or Enter (or any function key with Set Vis Update On). Use the Undo command if you press Enter and then decide that you don't want to keep your changes.
If you insert so many new lines that you push the column template line right off the bottom of your screen, don't worry -- it's not really gone. Qedit won't update your screen without the template line, however. Press Next Page (Pg Dn) to pull up the next screen of display memory. You have a problem only if you inserted so many lines that you pushed the template line right out of display memory, and even then you can still recover your changes. See the Errors in Visual section of Appendix E, regarding qscreen.
Screen Refresh is particularly useful if you've pressed Clear Display by accident.
===>* F7
When using Set Vis Update On to automatically update the screen, use *> F7 or *< F7 to move ahead or back one page, without updating the current page.
You may enter any Line mode Qedit command in the ===> line, including Opening another file, MPE % commands for an external program such as MPEX, and calculator commands (=). The ZZ cut-and-paste indicator can be used to mark a group of lines for use in any Qedit Line mode command.
===>list $lp $include zz F7
When editing a file with short records (e.g., Set Lang Text, Set Len 20), the right margin of terminal display memory is set to match the record length. This means that when typing home line commands you wrap the status line at the same width as the records (very inconvenient if the record length is 3 bytes!). You can, however, cursor past the right margin to type a longer command. Therefore, Qedit expands the right margin when you use F7 to execute the home line command, making it possible to execute a long command even when the data length is short. Qedit cannot expand the right margin if you press Enter (and may cut short your command).
If your function keys do not work for some reason, you may not be able to use F8 to exit from Visual. Instead, press Home Up, type / and press Enter. This updates your current screen and returns you to Line mode.
===>/ F7
You don't have to learn every command in order to use Qedit. With just a few of the basic functions, you can take care of editing job streams, programs, memos, or big text files. First, find out how to run Qedit on your system. Your system manager may have set up an easy way to access Qedit (try typing qedit). Look for a slash prompt (/ on MPE or qux/ on HP-UX), which tells you Qedit is ready to go.
This introduction will make the following activities familiar to you: adding lines to a file, looking at the contents of files, searching files for specific characters, changing one line or many lines, deleting, moving, and copying lines, and saving files. In the examples to follow, watch for comments on the right-hand side, enclosed in curly braces. Whatever you see in { } is an explanation, not part of the command, although Qedit will accept it. Press Return after each command line. When you finish your session, getting back out of Qedit is easy. Type Exit, and press the Return key:
/exit
You add text with the Add command. Qedit numbers each line you add. Pressing Return at any spot in the line moves you to a new line. This means that you can put a blank line into your text if you press Return twice in a row. Qedit continues to add your lines of text until you type // (two slashes) at the beginning of a new line and press Return. Try typing Add right now, and Qedit moves the cursor and prints some identifying information:
/add {remember to press Return}
QEDITSCR {Qedit displays this line}
Temporary File List * = 1 {and this line too}
1 _ {go on, Qedit is waiting for you}
Continue to "add" by typing in this example:
1 MEMO TO: Drama Staff, News Simulation Dept.
2
3 FROM: Marie Reimer, Publicity Dept.
4
5 Please check your in-baskets daily and
6 respond to your fan mail within a week.
7 // {stop adding for now}
/ {Qedit is waiting again}
You can add lines anywhere in the file by typing Add followed by the line number where you want to start your insertion. For example, if you decide to date this memo, type at the slash prompt:
/add 2
2.1 DATE: November 18, 2000
2.2
2.3 //
/
You have added line 2.1 for the date, and line 2.2, which is blank. Line 2.3 is not put into your file, since typing the double slash stopped the adding. Notice that Qedit used line numbers that would fit between line 2 and line 3. Now, if you want to see what the whole thing looks like, type List ALL at the slash prompt.
/list all
1 MEMO TO: Drama Staff, News Simulation Dept.
2
2.1 DATE: November 18, 2000
2.2
3 FROM: Marie Reimer, Publicity Dept.
4
5 Please check your in-baskets daily and
6 respond to your fan mail within a week.
/
The command for looking at the file is List. But you can do much more than List ALL. For example, you can list a file you're not even working on. Our sample memo is a temporary file, in your group, named Qeditscr, but you could look at a file in another group now without harming the memo by typing, for example:
/list qedhint.help.robelle
The file qedhint.help may be scrolling by on your screen, but don't panic. If you change your mind about looking at it, you can stop the listing by holding down the Control key and pressing "Y".
You may choose to look at just a small part of the file. To prove that the memo, although temporarily gone from your screen, is not lost forever, look at two lines of it:
/list 3/4
3 FROM: Marie Reimer, Publicity Dept.
4
Instead of listing all, you limited the range of lines to be listed. A range of lines, called a rangelist, can have specific line numbers (such as 3 in the above example), words like "first" and "last", relative line numbers such as -3 (means the third line back) or +10 (tenth line ahead), or a combination.
/list first/2,+1,last-2
1 MEMO TO: Drama Staff, News Simulation Dept.
2
2.2
4
The slash / separating the numbers (or words) symbolizes the word "to". Rangelists can also contain strings. See the section on strings (called Searching the File), or the "Glossary" for definitions of rangelist and string.
If you want to browse through the file, the command you need is LJ. LJ stands for List-Jump. Qedit shows you a screen of text, prints
More?[yes]
at the bottom of the screen, and waits for you. If you press Return, Qedit displays the next screen. You can stop browsing by pressing Control-Y, typing NO or just N, or by typing //. Also, you can type any command, and Qedit stops browsing to execute it. To request a List-Jump:
/lj 6 {begin browsing at line 6}
/lj qedhint.help.robelle {browse entire hints file}
So far, you typed line numbers to specify which lines you wanted to see. There is another way to list lines, and that is to specify an identifying string. Put anything in quotes and it's a string. Qedit lists all the lines that contain that exact same "anything".
/list "your"
5 Please check your in-baskets daily and
6 respond to your fan mail within a week.
2
lines found
There are two occurrences of "your" in the file, one on line 5 and one on line 6.
Strings can help you find a particular place in the file quickly.
With the commands Find and Findup, you can go to the next consecutive location of a string. Find searches the file from your current location to the end. Findup searches backwards from where you are to the beginning. So in order to search a file for a date scattered throughout it, type:
/find "January 18" {search forward from current line}
Or, search back through the file with
/findup "January 18"
Qedit displays the next line containing "January 18". To search again for the same string, just type Find (or Findup). You can abbreviate "Find" to "F" and "Findup" to "^".
/f
To search for a different string, just type F "new string".
Suppose you want to change the date of your memo. You could do it the slow way, first deleting the line, then adding a replacement line with the new date. But instead of all that retyping, try the Modify command. Modify has a lot of power. Here's how to use it:
1. Type M and the line number.
2. Qedit displays the line, and you move along on the line below it by pressing the space bar.
3. Stop at the point where you want to make your correction.
4. Type in the change to be inserted and press Return.
5. Qedit displays the entire corrected line for your approval. Make another correction if you want, and when satisfied, press Return again to accept the corrected line and get back to the slash prompt.
An example:
/m2.1
2.1 DATE: November 18, 2000
9 {move with the space bar}
{press Return}
2.1 DATE: November 19, 2000 {press Return again}
Here is a partial list of special things you can do with Modify:
^B |
insert text Before this column |
^D |
DELETE text from this column onward |
^L |
add text after the LAST column in the line |
^O |
OVERWRITE (or replace) columns |
^T |
TRAVEL over the line without changing it |
^G |
GOOFED. Put the line back the way it was, please |
Note: The little symbol ^ is a shorthand way of saying that you hold down the Control key (on some keyboards abbreviated Ctrl) while at the same time pressing the letter. For example, ^B (or Control-B): keep the Control key down with one finger while with another, type a B. These symbols won't show up on your screen.
This command is easy to use but awkward to describe; you'll understand how to use it much faster if you give it a try. Let's take a typical example, and modify line 5 of our memo. Begin by typing "m5" and, of course, pressing Return. Then, to replace "daily" with "every day", our first step is to delete the word. Use the space bar to move to the column under the "d" in "daily". Press ^D (you won't see anything, remember), then space across all the columns you want to delete. Don't press Return yet.
The second step is to insert the two new words. Press ^B and type "every day". Now press Return to see the line with the revisions.
Qedit lets you see your revisions and continue modifying with as many different changes as you can fit into one pass, before you press Return. In order to make changes at different locations in a line, press ^T to space over the intervening characters without disturbing them. If you goofed, press ^G instead: you'll get your original line back.
The final step is to accept the revisions by pressing Return one last time.
If your fingers are so trained to MPE's style of Modify (e.g., D for delete) that you cannot remember to use the Control key, do not despair. As with most things in Qedit, there is a configuration option to solve this problem. The command Set Mod HP instructs Qedit to accept HP-style modifies (i.e., MPE modifies such as D and I), instead of Qedit-style. See the Modify section of the Set command.
There is another way to modify lines in your workfile. The Change command allows you to make changes throughout the entire file, without the bother of working on each line one by one. For example, with one Change command to your memo, you can replace all the colons with dashes.
/change ":"-" all
1 MEMO TO- Drama Staff, News Simulation Dept.
2.1 DATE- November 19, 2000
3 FROM- Marie Reimer, Publicity Dept.
3
lines changed
Using the Change All command is a one-way street. If we now decide we don't like the dashes and want to get the colons back, observe what happens to Line 5.
/change"-":" all
1 MEMO TO: Drama Staff, News Simulation Dept.
2.1 DATE: November 19, 2000
3 FROM: Marie Reimer, Publicity Dept.
5 Please check your in:baskets daily and
4
lines changed
This second Change command has gotten us into hot water. Luckily, Qedit has an Undo command that takes your file step-by-step backwards to put it back to the way it was. See the Undo command in the "Qedit Commands" chapter.
CJ Command
If you're not sure what the consequences of a global change will be, use the CJ command. CJ stands for Change-Jump. Qedit shows you each line it means to change, and waits for you to approve, to change your mind, or to modify that line. Then Qedit jumps to the next occurrence of your string, and repeats its question until you have dealt with all occurrences of the string in the file. To accept the default answer of NO (i.e., don't replace the string), shown in square brackets, just press Return.
/cj":"-" all
1 MEMO TO: Drama Staff, News Simulation Dept.
Change okay (Y,N or Modify) [No]: {press Return}
2.1 DATE: November 19, 2000
Change okay (Y,N or Modify) [No]: {press Return}
3 FROM: Marie Reimer, Publicity Dept.
Change okay (Y,N or Modify) [No]: {press Return}
5 Please check your in:baskets daily and
Change okay (Y,N or Modify) [No]:Yes
1
line changed
You can use the handy ^Y to stop in the midst of change-jumping just as you used it to stop listing.
Rangelist
You can also specify individual lines or a rangelist to Change. For example,
/change "Dept."Department" 1/3
1 MEMO TO: Drama Staff, News Simulation Department
3 FROM: Marie Reimer, Publicity Department
2
lines changed
/change "Drama Staff, "" 1 {changes string to nothing}
{i.e., deletes it}
1 MEMO TO: News Simulation Department
1
line changed
Copying lines is a variation of the Add command. One reason we might want to copy lines is to make a general-purpose form out of our memo. We can keep a sample memo form at the beginning of the file, then copy it to the end of the file and fill it in whenever we need to communicate. This is how to do it:
/add last = first/4
7 MEMO TO: News Simulation Department
8
9 DATE: November 18, 2000
10
11 FROM: Marie Reimer, Publicity Department
12
6
lines COPIED
Qedit copies the rangelist (first/4 = first line to line 4) after the indicated line (here, last line in file). To accomplish our goal of placing the sample memo template at the beginning of the file, we'll have to move the first six lines so they follow our new sample. Before we try moving lines, a last tip on copying: you can copy lines from an external file by including the file name in the command, placed after the equals sign and right before the rangelist.
Moving is very similar to copying; it's another form of the Add command. But, instead of using the equals sign, use the less-than sign. You can specify:
/add 12 < 1/6
13 MEMO TO: News Simulation Department
14
15 DATE: November 18, 2000
16
17 FROM: Marie Reimer, Publicity Department
18
19 Please check your in-baskets daily and
20 respond to your fan mail within a week.
8
lines MOVED
Qedit moves the rangelist (in this case, lines 1 to 6) after the indicated line (in this case, 12). In case you were wondering, we could have used "last" instead of the number "12". You can add, move, or copy lines to any spot. In fact, we could have copied the first six lines to the beginning of the file in the first place, but then we wouldn't have had this fascinating "move" example. The result of this particular move is
/list all
7 MEMO TO: News Simulation Department
8
9 DATE: November 18, 2000
10
11 FROM: Marie Reimer, Publicity Department
12
13 MEMO TO: News Simulation Department
14
15 DATE: November 18, 2000
16
17 FROM: Marie Reimer, Publicity Department
18
19 Please check your in-baskets daily and
20 respond to your fan mail within a week.
To demonstrate the Delete command, we'll get rid of our memo template. On some systems, Qedit asks for confirmation before deleting a large number of lines. If so, you can cancel the deletion just by pressing Return; to confirm the deletion, type "yes" and press Return. The abbreviation for Delete is simply D :
/d first/12
7 _MEMO TO: News Simulation Department
8 _
9 _DATE: November 18, 2000
10 _
11 _FROM: Marie Reimer, Publicity Department
12 _
DELETE 6 lines [no]? yes
If you typed "yes" without due consideration, you now have a chance to take it back. Press Control-Y, and Qedit saves your bacon with the message "Undeleted!" But you must press Control-Y immediately: if you do anything else between the deletion and the rescue, Qedit will commit to the deletion. However, in this situation the Undo command can bring your lines back, even if you have made more changes. You must undo each change to the file in reverse order. See the "Qedit Commands" chapter of the manual for details.
On-line help is available on every topic in Qedit. After you've become an expert with the commands introduced here, you can use Help to teach yourself all sorts of amazing new commands. To get Help, type a question mark or the word HELP.
/help
or
/?
Qedit responds with a list of its commands, and at the bottom of the screen, a list of keywords. Type the keyword of the topic in which you're interested. For example, one of the keywords is "Full-Screen". Get an introduction to full-screen mode by typing:
>full-screen
Did you notice that the Help prompt is different from Qedit's regular prompt?
When you asked for Help, Qedit filled your screen with lists. To learn about some of the commands in the list, (e.g., the Add command), type the keyword:
>commands
and Qedit gives you some general information on the topic of commands. At the bottom of the screen is a list of keywords. Type the one in which you're interested:
>add
Qedit responds with further information. You can backtrack your route and look at all the other possibilities too. Pressing Return takes you back one step at a time.
To exit from Help, press the Return key until you see the regular Qedit slash prompt again.
There are two commands that preserve your work: Keep and Shut. First, invent a name for your file. Naturally, two files cannot have the same name. The name must be a valid MPE file name. We've been working on a temporary file. To save it, name it:
/keep myfile1
When you want to work on Myfile1 again, type:
/text myfile1
and Qedit will copy Myfile1 for you to use. If you make changes to the file, remember to Keep it again before you leave Qedit to make the changes a permanent part of the file.
Only Qedit files can be opened and shut. It is much faster to use the Open command than it is to use the Text command, because you make changes directly to the Open file. With a Text file, you must wait for Qedit to make a copy to which you make your changes.
Using the Shut command converts your file to a Qedit workfile. You can Shut a new file, or a file that you made a copy of (with the Text command). Name the file as described above.
/text myfile1
QEDITSCR {copy of Myfile1}
16 lines in file
/shut myfile1
MYFILE1,OLD Qedit File, # of lines=16
Purge existing file [no]? Yes
File renamed from QEDITSCR to MYFILE1
To run Qedit on MPE, type this command:
:run qedit.pub.robelle
Qedit. Copyright Robelle Solutions Technology Inc. 1977-2001.
(Version 5.0) Type ? for help.
Today's Hint. For full-screen edit, use Visual.
/
Qedit prints its version number and the hint of the day and prompts with "/". You type commands, ending each with Return. For example, to edit a file enter a Text command:
/text filename
To save your edits, use the Keep command.
Initially you are in Line mode (you type command and text lines, ending each with Return). You can backspace over errors with Control-H (holding down Control while you press "H"), or use the Backspace key. Control-X cancels a line. The function keys give you eight quick functions: F1 = Visual, F2 = Roll up, F3 = Findup, F4 = Find, F5 = Browse backward one page, F6 = Browse forward, F7 = Listredo, and F8 = Exit.
Use the /VIsual command or the F1 key to switch to full-screen mode, where you edit a full screen of text using the terminal keys. The Enter key passes the revised screen back to Qedit, and the F7 key executes any Line command that you type on the home line.
To return from full-screen mode to Line mode, press the F8 key. To save changes to your Text file, use the Keep command. To get out of Qedit, type Exit or press F8 again.
/keep
/exit
End of program
If you forget to Keep your changes, Qedit warns that your changes weren't saved, you can rerun Qedit, reopen the temporary workfile (Open with no parameters), and save your changes.
The temporary file called "Qeditscr" is Qedit's primary scratch file. Whenever you use the default options for Opening or Texting a file, your work will be in the Qeditscr scratch file.
How to Edit Several
Files?
What if you want to edit two or more files, and copy lines between them? You could Text the first file, Hold the selected lines, Keep your changes, then Text the second file and insert the lines. However, if you are doing a large number of edits, the constant Text and Keep operations are inconvenient.
A faster method is to Text each file into an extra scratch file of its own. Then use the "Open ?" or the "Open *-n" command to switch quickly between them. By default, Text always copies the file into the Qeditscr scratch file. However, Qedit can supply up to eight extra scratch files. To Text a file called abcd into an extra scratch file, type:
/text abcd,new
When you Exit, Qedit checks whether you have any unsaved edits in any of your extra scratch files. If there are some unsaved edits, Qedit prompts you to "Discard?" them or to stay in Qedit to save them with the Keep command.
Starting a New
Scratch File
Sometimes you start editing a new document and have nothing to Text to create the extra scratch file. In this case, use the New command without parameters.
/new
A new extra scratch file is created and assigned a sequential number (1,2,3...). If you use the Open ? command, you would see "Extra Scratch file #2" in the list of files. If you do a Keep or Set Keep Name, you would then see the Keep file as the Text name in Open ?.
When you run Qedit, it automatically "uses" two configuration files if they exist: Qeditmgr.Pub.Sys and Qeditmgr in the same group and account as the program file (usually Pub.Robelle). The system manager creates either or both of these files and puts Qedit commands in them to set Qedit options, print messages, and execute standard :File commands. To check the options for your site, List these files.
If you want a Qeditmgr file for your logon account or your logon group, run Qedit with Parm=1 or Parm=2. Parm=1 executes Qeditmgr.Pub.logon, while Parm=2 executes Qeditmgr.logon.logon. To execute both, run with Parm=3 (3 is 2 plus 1; you can combine PARM options). These files are in addition to the global Qeditmgr files, which are always executed first.
:run qedit.pub.robelle;parm=1 {uses Qeditmgr.Pub}
When you run Qedit, it attempts to execute commands in global configuration files: Qeditmgr.Pub.Sys and/or Qeditmgr.Pub.Robelle. The Qeditmgr file, which can be a Qedit workfile or a Keep file, may limit Qedit users or do default Set commands. If you move Qedit out of the Robelle account, Qedit looks for the Qeditmgr file in its new location.
If you want to restrict compiles to the DS or ES subqueue, put a COMPPRI command in your Qeditmgr file. The syntax is a little nonstandard, in that it acts like a Set command, but does not use the word Set.
COMPPRI=DS {or COMPPRI=ES}
COMPPRI specifies the highest priority at which you can Compile within Qedit. Any Qedit compile commands automatically "create" the compiler in the lower priority. Qedit itself, and the user, remain in the original higher priority. In no case will the compile occur at a higher priority than that of Qedit. COMPPRI may only be executed via Qeditmgr; it cannot be entered from the keyboard.
Qedit treats the Qeditmgr file exactly like a usefile, so Qeditmgr can include any Qedit commands. The Set commands let you configure Qedit so it has the ideal defaults for your shop (e.g., Set Lang Cobol ...). Here is a typical Qeditmgr file:
{These are default qedit values for all users:}
comppri=ds {force compiles into ds}
set lang cobolx all on
set whichcomp cobol 85 {CM compiles}
set whichcomp fortran 77 {CM compiles}
set x date list off {mark changed lines with date}
set check on {verify delete/format of >5 lines}
set list page on {LP listings interpret $page}
set udc udc.catalog.robelle
z=list */last {define Z command}
For details on Set commands, refer to the "Qedit Commands" chapter.
If one set of defaults is not appropriate for everyone on your system, it is possible to set up account and/or group Qeditmgr files. See the chapter "Running MPE under Qedit" for details. For security reasons, users cannot override the global Qeditmgr files with :File commands. This prevents them from getting around the limits imposed by the system manager.
Qedit in batch is almost identical to Qedit in a session, except for answering questions. When Qedit asks a question in batch, no one is there to answer it. Therefore, Qedit does not expect an answer from $stdinx. Qedit assumes that you want your batch task to complete, so it always selects the option that will complete the command successfully. This is normally a "YES" answer, as in "yes, clear the file" or "yes, upshift the line". Qedit prints the question on $stdlist, and the answer that it has selected for you.
If you run Qedit from a batch job, but redirect $stdinx and $stdlist to the same terminal, Qedit acts as if it were in Session.
If you run Qedit in a REMOTE SESSION that was created from a batch job on the other machine, Qedit is unable to detect that it is really controlled by a job. So, Qedit operates in Session mode and waits for answers to all questions. You can use Set Interactive Off as your first command to override this.
When Qedit encounters an error in batch, it has no one there to correct it. Therefore, Qedit normally aborts. However, you can use Set Autocont On to override this abort, instructing Qedit to keep processing after errors in batch (i.e., automatically insert a :Continue before each command).
1 |
Execute QEDITMGR.PUB.logon |
2 |
Execute QEDITMGR.logongroup.logonacct |
4 |
Execute INFO string once |
8 |
Execute INFO string on each reactivation |
16 |
Unused |
32 |
Don't suspend on exit, terminate |
64 |
Check with user before Exiting |
128 |
Execute Info= string only |
256 |
Suspend on info=file name and single file edit |
512 |
Single file edit only (info= contains name) |
Values may be combined by adding them together. For example, Parm=67 means "execute Qeditmgr files in the Pub group of my logon account and in my logon group (in addition to to the global qeditmgr files) and don't let me Exit without first double-checking".
If you run Qedit from within another tool that does not support Parm= on the :Run command, you can either use Info="-p n" or put the Parm value into the QEDPARMBITS JCW:
:run qedit.pub.robelle;info="-p 64"
:setjcw qedparmbits=64
:run qedit.pub.robelle
The Posix shell does not have the concept of a Parm value. Previous versions of Qedit still try to retrieve the value and are ending up with unpredictable values causing unpredictable behavior. To get around this problem, Qedit tries to determine where it is running from. If it is run from the standard Posix shell, sh.hpbin.sys, Qedit assumes the parm value is entered via the -P argument. For example, to run Qedit with a value of 67 from the Posix shell prompt, one would enter:
/ROBELLE/PUB/QEDIT -p 67
All arguments are retrieved as if they had been entered in the MPE Info= string. So, any feature supported by the Info= mechanism also works from the Posix shell.
Following are explanations and examples of running Qedit with the different parameter and Info strings.
Some users find that they Exit from Qedit inadvertently by pressing F8 too many times. This can be irritating if you have many suspended son processes, which are lost on Exit. To require user approval on Exit, run Qedit with Parm=64.
:run qedit.pub.robelle;parm=64
/e
Okay to exit [no]:
/
Info= can be used to pass Qedit the name of the first file to edit, unless you use Parm 4, 8 or 128 to define Info= as a command string.
:run qedit.pub.robelle;info="myfile"
/visual
If the file named is an existing file, Qedit either Texts a copy of it, or Opens it if the file code is 111. If the file does not exist, Qedit configures the Set Keep Name to create that file when you do a default Keep command (e.g., K with no parameters). To create a new Qedit workfile, use a :File command with Code=111:
:file newwork;code=111
:run qedit.pub.robelle;info="newwork"
Even though you passed in the first file name to Qedit, you can edit other files too.
If you use the Info= file name option or Set Work Random On, Qedit generates a random name for the Qedit scratch file, instead of using Qeditscr. This allows you to have multiple copies of Qedit in the same session without worrying about conflicts over use of Qeditscr. The scratch file is permanent and the name is QEDnnnnn in your current logon group. Even though random scratch files are created in MPE's permanent domain, they are temporary in the sense that Qedit purges them when you exit. For this reason, you must have Set Work Temp ON to be able to use random scratch files.
When you are using random, permanent scratch files, Qedit needs to purge them when it terminates. But you may not have saved your editing work yet. In that case, Qedit asks you "Discard changes?" and will not Exit/Purge unless you answer Yes:
:qedit.pub.robelle myfile
/visual
/exit
Discard your changes [no]:
/
Qedit can supply Extra Scratch Files as well as the Primary Scratch file. These too are checked on Exit to see if you left any edits unsaved.
The Info value can specify the Parm bits as well as the first file name. You precede the file name by -p and a numeric value (e.g., -p 64 or -p %100 or -p $40). For example, to edit "myfile" and confirm "Ok to exit" on the Exit command, you could do the following:
:run qedit.pub.robelle;info="-p 64 myfile"
/visual
/exit
Okay to exit [no]:
In addition to passing the Parm value and the edit file name, Info can specify commands to be executed, with the -c option. The -c is followed by the commands to be executed. If those commands contain a space, they must be enclosed in one of the Qedit quote characters; otherwise, the quotes are optional. Note that the -c must be lowercase, as in UNIX.
The Parm value, if any, is specified before the -c option, and the file name to edit, if specified, must be placed after the -c option. When both -c and a file name occur, the -c commands are executed after the file is accessed for editing. Here are some examples:
qedit "-c visual myfile"
qedit "-c :visual: myfile"
qedit '-c "set vis ab 3 bel 12;visual" myfile'
qedit "-c 'text abc;use fixit;k,y;e'"
qedit "-p 64 -c visual myfile"
The underscore character can be used as a string delimiter and as as valid character in a Posix filename. If you enter a filename containing an underscore in the INFO= string parameter, Qedit interprets the underscore as a string delimiter. This is a known problem and we are working on a permanent fix for it. For example, if you enter:
run qedit.pub.robelle;info='-c "t my_history;vi"'
This command should start up Qedit, have it open the Posix file called my_history and go into full-screen mode automatically. However, since the underscore is seen as a string delimiter, whatever follows is basically ignored during command processing. Thus, the file is opened but Qedit stays at the line-mode prompt.
We hope to have a permanent fix in a future release. In the meantime, the workaround is to explicitly identify the underscore as being part of the filename. You can do this in different ways. Here are two examples.
run qedit.pub.robelle;info='-c t $file \my_history\;vi"'
The $file keyword and the backslash characters are used to clearly identify the filename. The other approach is remove the underscore from the list of valid delimiters using the Set StringDelimiters command.
run qedit.pub.robelle;info='set stringd posix;-c "t my_history;vi"'
The $file approach is simpler as it only affects that particular command. The Set StringDelimiters approach should be used with caution as it might affect other commands during the edit session.
Sometimes you want to invoke Qedit for a specific purpose, such as to edit order notes in a purchase order system. You are using Qedit as a dedicated tool for a specific purpose. In these cases, specify Parm 512 and pass in the file name through Info=. You are able to edit only that file, and it will be saved on exit. You will not be allowed to edit any other file.
:run qedit.pub.robelle;info="-p 512 -c visual myfile"
/exit
Save your changes (yes/no)?
Parm 512 is the same as the Basicentry entry point, except that the file name is specified through Info= rather than through :File Edttext. The functioning is the same, but the primary scratch file will be random instead of Qeditscr. Many tools do not allow you to specify an entry point when running a program, so Parm 512 gives you an alternative.
You can easily start with an empty file, add text to it, and Keep it on Exit. Create the file before entering Qedit and use the single file Parm value:
:build abc.source;rec=-76,10,f,ascii
:run qedit.pub.robelle;info="-p 512 abc.source"
You can edit an existing Temporary file, whether empty or not, and Keep it back into the same file name on Exit. Warning: Never use the ;Temp option on :File commands, only on the :Build command. And don't use ,Oldtemp either. Oldtemp has no effect on the creation of files. Using ;Temp on the :File command overrides the Close disposition of the file and causes Qedit to create unwanted, empty temporary files.
:build message;rec=-80,16,f,ascii;temp
:run qedit.pub.robelle;info="message"
Info= file creates a new Keep file on Exit if one did not exist. To create a new Qedit workfile, use a :File command with Code=111. For example, these commands work whether newfile exists yet or not:
:run qedit.pub.robelle;info="newfile"
/add last=template
/visual
/exit
:file newfile;code=111
:run qedit.pub.robelle;info="newfile"
/add last=template
/visual
/exit
This method cannot be used to create a new temporary file. Build the temporary file before invoking Qedit instead.
When you exit Qedit, it either terminates or suspends, depending upon how you invoked it and what Parm values you specified.
What are the pluses and minuses of suspending? Unfortunately, many tools allow you to run Qedit, but do not notice if Qedit suspends when done rather than terminating. HPDesk has this problem, as well as any program that calls the Hpcicommand intrinsic to execute Run commands (e.g., native-mode PowerHouse). The next time you run Qedit from within the tool, you get a new copy of Qedit. Eventually you will have many suspended copies of Qedit, all consuming system resources. However, if you have a tool, such as Select or MPEX, that can reactivate suspended processes, activating an existing process is much more efficient on MPE than creating a new one.
If you run Qedit without any special options, it suspends on Exit by default; you can suppress this with Parm 32. You can also suppress suspend with Set Suspend Off. If you specified an Info= string (or use the Basicentry entry point), Qedit does not suspend on Exit; it terminates. To force Qedit to suspend, use Parm 256. When Qedit is reactivated, it repeats the steps that it does upon initial entry, except for execution of the configuration files.
:run qedit;info="-p 256 myfile" {suspend}
:run qedit;parm=32 {do not suspend}
If you :Run Qedit with Parm 4, the entire Info= parameter is treated as a string of Qedit commands to be executed (up to 256 characters).
:run qedit.pub.robelle;parm=4;info="use jobfile;exit"
If you use Parm 4 and Info= when you run Qedit from a menu program, Qedit executes the Info= commands only once. If you want Qedit to re-execute those commands every time it is activated, use Parm 8.
If you want Qedit to execute only the Info= commands and not to prompt the user for input, use Parm 128. This is handy when you want to invoke Qedit to perform a specific task without user intervention:
:run qedit.pub.robelle;parm=128;info="reflect dir"
Also, if you want Qedit to suspend and repeat the Info= string (only) each time you activate it, combine Parm 8 and Parm 128 (makes Parm 136).
Remember, if you
don't specify Parm 4, 8 or 128, Info= will be interpreted as a file to edit
unless you precede the commands with the -c option.
Basicentry is on older option that provides the same capabilities as Info=file name. When you run Qedit with the Basicentry entry point, Qedit edits the file "Edttext" that you have defined via a :File command. Basicentry can be combined with Parm 4 and Info="command". For example,
:file edttext=abc.source
:run qedit.pub.robelle,basicentry; &
parm=4;info="visual;exit"
If you are using Qedit from within another program, it is more efficient to have Qedit suspend on Exit so that you don't have to create a new process for each editing task. You can do this by combining Basicentry with Parm 256, which means suspend on Exit, or Basicentry and Parm 8, which means repeat the Info= string each time Qedit is activated.
Basicentry uses the same logic as Info=file name, vis-a-vis empty files, new files, Opening workfiles, temporary files, etc. Remember, never use ;TEMP or =OLDTEMP on you :File commands. You can use Basicentry to create a new temporary file:
:file edttext=message
:run qedit.pub.robelle,basicentry;parm=4; &
info="set keep name *edttext,temp"
Qedit has a number of JCWs (Job Control Words, a feature of MPE) that allow you to configure and direct the execution of Qedit. Most of these have to do with the type of terminal you are using, but QEDITMGRTRACE allows you to see your configuration commands and QEDPARMBITS allows you to specify the Parm= values without a Parm= option on the Run command.
When you run Qedit, it must identify the type of terminal that you are using and determine what function-key labels to display. Qedit does status requests to detect the model number and the current width of display memory. This information is used to enhance the functioning of Qzmodify, Visual, Help and List. Qedit locks the keyboard during terminal identification and discards any user input that manages to get through. However, if you have Reflection typeahead enabled, this is not possible; be careful not to type during terminal identification in this case.
Qedit sets three JCWs to remember your terminal state: RCRTMODEL, RPCVERSION and RCRTWIDTH. If you run Qedit and these JCWs are already set, Qedit does not need to do the status requests of your terminal. To reset these JCWs and force Qedit to re-identify the terminal, use the Set Visual Stop command. You can set a fourth JCW, RCRTSTRAPSGH, to request nondefault handshaking in Line mode. The fifth JCW, RLABELDEFAULT, is described under "Function Key Labels".
This JCW can have any of these values:
0 |