Qedit 6.1 for HP e3000

User Manual

Doc-To-Help Standard Manual

by Robelle Solutions Technology Inc.

qed-ybo


 

Program and manual copyright © 1977-2016 Robelle Solutions Technology Inc.

Permission is granted to reprint this document (but not for profit), provided that copyright notice is given.

Updated on January 5, 2016

 

 

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

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

User Manual.......................................................................................... 2

Printed Documentation........................................................................... 2

Other Documentation............................................................................................... 2

Printdoc Program................................................................................... 2

Other Manuals of Interest...................................................................... 3

Customer Support................................................................................................... 3

Robelle Newsletter.................................................................................................. 3

QLIB and Bonus Contributed Software....................................................................... 3

Notation................................................................................................................ 4

Highlights                                                                                                                     6

Highlights In Version 6.1......................................................................................... 6

Highlights In Version 6.0......................................................................................... 6

Highlights In Version 5.9......................................................................................... 6

Highlights In Version 5.8......................................................................................... 6

Highlights In Version 5.7......................................................................................... 7

Installing Qedit                                                                                                            9

General Installation Notes......................................................................................... 9

Who Should Use These Instructions?.................................................... 9

Summary of Installation Steps............................................................... 9

Qedit Compiler Interfaces...................................................................... 9

Important Note About Passwords........................................................ 10

STREAMX Users............................................................................... 10

Step 1: Install Qedit.............................................................................................. 10

Step 2: Install QLIB and Bonus Programs................................................................. 12

Building the Spell Dictionary............................................................... 12

Step 3: Install NM Compiler Interface....................................................................... 13

Installing the Interface.......................................................................... 13

Compiling Instructions......................................................................... 13

Step 4: Install CM Compiler Interface....................................................................... 14

Choosing a CM Installation Method.................................................... 14

Integrating CM Compiler Changes...................................................... 14

Isolating CM Compiler Changes.......................................................... 15

Step 5: Saving Disc Space...................................................................................... 15

Purging Obsolete Files......................................................................... 15

Minimal Set of Files............................................................................. 15

Moving Qedit to Another Account........................................................................... 16

Moving All the Files............................................................................ 17

Redirecting the File Names.................................................................. 17

Moving a "Hooked" Qedit................................................................... 17

Running the MPEXHOOKed Qedit.................................................... 18

Removing the Compiler Interface............................................................................. 19

Removing the NM Interface................................................................. 19

Removing the Integral CM Interface.................................................... 19

Removing the Isolated CM Interface.................................................... 20

Getting a Quick Start with HP Full-Screen Editing                                          21

Introduction......................................................................................................... 21

Starting Visual Mode............................................................................................. 22

Screen Layout....................................................................................................... 23

Home Line........................................................................................... 23

Status Line........................................................................................... 23

Text Lines............................................................................................ 24

Template Line....................................................................................... 24

Special Indicator Columns................................................................... 24

Using Your Keyboard............................................................................................ 25

Moving the Cursor............................................................................... 25

Editing the Text Lines.......................................................................... 25

Control Functions................................................................................ 26

Reflection for DOS Keyboards............................................................ 26

Other PC Keyboards............................................................................ 27

Function Keys...................................................................................................... 27

Browsing Through Your File.................................................................................. 29

Cut-and-Paste....................................................................................................... 30

Cutting Operations............................................................................... 30

Pasting Operations............................................................................... 30

Resetting Cut-and-Paste....................................................................... 31

Copying a Block of Text...................................................................... 31

Cut-and-Paste Between Files............................................................... 32

Dividing and Gluing Operations.......................................................... 32

Dividing Lines in Visual Mode............................................................ 32

Gluing Lines in Visual Mode............................................................... 33

Excluding Lines From Visual Mode Display....................................... 33

Justifying Lines in Visual Mode.......................................................... 34

Renumbering Lines.............................................................................. 34

Inserting Blank Lines........................................................................... 34

Hold Files............................................................................................ 34

Marking Changes Without Using Line Numbers................................. 35

Paste from a Non-Qedit File................................................................ 35

Home Line Commands.......................................................................................... 36

Finding Strings.................................................................................... 36

Changing Strings................................................................................. 37

Help on Visual Mode........................................................................... 37

Compile, Link, and Run....................................................................... 37

Formatting Paragraphs......................................................................... 38

Undoing Changes in Visual Mode....................................................... 38

Refreshing the Screen.......................................................................... 38

Other Line Mode Commands............................................................... 39

Truncated Home Line........................................................................... 39

Exit from Visual................................................................................... 39

Getting a Quick Start with Line Mode Editing                                                   41

Introduction......................................................................................................... 41

Adding Lines to a File........................................................................................... 41

Looking at the File................................................................................................ 42

Browsing the File................................................................................................. 43

Searching the File................................................................................................. 43

Editing Lines....................................................................................................... 44

Global Changes.................................................................................................... 45

Copying Lines...................................................................................................... 47

Moving Lines....................................................................................................... 47

Deleting Lines...................................................................................................... 48

Help Command.................................................................................................... 48

Saving the File..................................................................................................... 49

Open and Shut for Instant Access............................................................................. 49

Running Qedit under MPE                                                                                     51

Introduction......................................................................................................... 51

Edit in Line Mode or in Full-Screen Mode................................................................ 51

Edit Several Files at Once....................................................................................... 52

Qeditmgr Configuration Files.................................................................................. 52

Limiting Compile Priority.................................................................... 53

Default Set Commands........................................................................ 53

Using Qedit in Batch............................................................................................. 54

Summary of Parm= Values..................................................................................... 54

From the Posix Shell............................................................................ 55

Exit and Entry Options.......................................................................................... 55

Exit with Verify................................................................................... 55

Info= First File to Edit......................................................................... 56

Random Name for Primary Scratch File.............................................. 56

"Discard Changes?" on Exit................................................................. 56

Info= "-p 99" Specifies Parm Value.................................................... 57

Info= "-c cmdstring"............................................................................ 57

Parm 512 to Edit a Single File.............................................................. 58

Info= An Empty File to Fill................................................................. 58

Info= Temporary File........................................................................... 58

Info= Can Create New Files................................................................ 59

Parm Values to Suspend or Not........................................................... 59

Info= Commands Only........................................................................ 59

Basicentry Option................................................................................ 60

JCWs That Drive Qedit.......................................................................................... 60

RCRTMODEL JCW........................................................................... 61

RPCVERSION JCW........................................................................... 63

RCRTWIDTH JCW............................................................................ 63

RCRTSTRAPSGH for Handshaking.................................................. 64

RLABELDEFAULT JCW.................................................................. 66

QEDITMGRTRACE JCW.................................................................. 66

QEDPARMBITS JCW....................................................................... 67

QEDCURWFILE Variable.................................................................. 67

QEDSTOREDPWD and QEDPROMPTEDPWD Variables............. 67

Qedit for Microsoft Windows                                                                                69

Introduction......................................................................................................... 69

Server Process...................................................................................................... 69

Logon Sequence................................................................................... 69

QEDSERVMODE JCW..................................................................... 70

Log Files............................................................................................................. 71

Qedit Issues and Solutions                                                                                   73

Running Qedit with Reflection................................................................................ 73

RPCVERSION JCW........................................................................... 73

Using a Command File to Start Up...................................................... 73

Alt-Y vs. :Reflect................................................................................. 74

Qedit and Reflection File Transfers...................................................... 74

Form Feed Causing Return/Line Feed................................................. 75

Typeahead and Visual Mode................................................................ 76

Completion Codes................................................................................ 76

Controlling the PC............................................................................... 76

Accidental Exit from Reflection........................................................... 76

Changing the Exit Keystroke............................................................... 77

Running Qedit in MPE/iX...................................................................................... 78

Unresolved Externals on MPE/iX 4.0.................................................. 78

Compiling on MPE/iX......................................................................... 78

XDB: the Symbolic Debugger............................................................. 78

Command Files and Variables............................................................. 79

Visual Mode........................................................................................ 79

EOF vs. LIMIT.................................................................................... 79

Disc Space for Files and Xltrim........................................................... 79

Extents................................................................................................. 80

Qedit as the HPDesk Editor.................................................................................... 80

Configuring HPDesk........................................................................... 80

Configuring Qedit in HPDesk............................................................. 81

DeskQed.............................................................................................. 81

Getting Programs to Read Qedit Files....................................................................... 82

Qinput.................................................................................................. 82

Qcompxl.............................................................................................. 82

Qeditaccess Subroutine........................................................................ 83

Qedify.................................................................................................. 83

Qedify and $Include............................................................................. 84

Editing Wide Files................................................................................................ 85

Using the New Command.................................................................... 85

Using the Text Command.................................................................... 85

Lines, Strings and Ranges...................................................................................... 86

Using Qedit with MPE Programming Languages                                            89

Introduction......................................................................................................... 89

Editerr: Trapping Compiler Errors............................................................................ 89

Limitations and Restrictions................................................................. 90

Linking PowerHouse with Qedit.............................................................................. 91

Invoking PowerHouse from Qedit....................................................... 92

Configuring Qedit as Your Editor........................................................ 93

Editing PowerHouse Subfiles.............................................................. 94

COBOL.............................................................................................................. 94

Selecting a Compiler............................................................................ 94

Sequence Numbers and Comments...................................................... 94

Tagging Source Changes..................................................................... 95

Copylib Members................................................................................ 95

Trapping Syntax Errors........................................................................ 96

FORTRAN.......................................................................................................... 96

Pascal................................................................................................................. 96

C Language.......................................................................................................... 97

SPL.................................................................................................................... 97

TRANSACT........................................................................................................ 98

RPG................................................................................................................... 98

BASIC................................................................................................................ 99

Segmenter............................................................................................................ 99

Common Uses of Qedit                                                                                       101

Introduction........................................................................................................ 101

Qedit as Word Processor....................................................................................... 101

QNote UDC for Occasional Memos.................................................. 101

Justify Capability............................................................................... 102

Check Spelling................................................................................... 102

Prose: A Text Processor.................................................................... 103

Using TDP from within Qedit........................................................... 104

Qedit as a File Utility.......................................................................................... 104

Sorting a Range of Lines.................................................................... 105

Searching Groups of Files for Strings............................................... 105

Editing Data Files............................................................................... 106

Editing Program Files........................................................................ 109

Qedit as an Operations Tool.................................................................................. 109

Editing Stream Files........................................................................... 109

Native-Mode Output Spool Files....................................................... 109

Editing Bells, Tabs and Escapes......................................................... 110

Aborting All Users to Back Up......................................................... 110

Qedit Commands                                                                                                  113

Introduction........................................................................................................ 113

General Notes..................................................................................................... 113

Abbreviations..................................................................................... 113

Uppercase or Lowercase.................................................................... 114

Multiple Commands per Line............................................................. 114

Comments on Command Lines.......................................................... 114

STREAMX Warning......................................................................... 115

Stopping Commands with Control-Y................................................ 115

Implicit Commands............................................................................ 115

Function Keys.................................................................................... 116

Command Files and UDCs................................................................ 116

MPE Commands................................................................................ 117

Differences from MPE....................................................................... 117

Calculator Commands........................................................................ 118

QEDITCOUNT JCW........................................................................ 118

QEDCURWFILE Variable................................................................ 118

External Program Commands............................................................ 118

:Activate Command [AC/:A]................................................................................. 119

Add Command [A].............................................................................................. 120

Add (Adding New Lines).................................................................. 120

Add (Adding a String as a Line)........................................................ 122

Add (Copying Lines within a File).................................................... 123

Add (Moving Lines within a File)..................................................... 124

Add (Copying Lines Between Files).................................................. 125

Append Command [AP]....................................................................................... 126

Backward Command [BA/F5]................................................................................ 127

Before Command [B]........................................................................................... 128

:Beginfile and :Endfile Commands......................................................................... 130

Change Command [C].......................................................................................... 131

Change (Changing Strings)................................................................ 131

Change (Changing Columns)............................................................. 134

Close Command [CL].......................................................................................... 136

Colcopy Command  [COL]................................................................................... 137

Colmove Command  [COLM]............................................................................... 140

:Compile Command [CO/:C]................................................................................ 143

Delete Command [D]........................................................................................... 147

Destroy Command [DES/:D]................................................................................. 149

:Display Command [DISPLAY]............................................................................. 150

Divide Command [DI].......................................................................................... 151

:Do Command [DO]............................................................................................ 152

:Editerror Command [EDITERROR]....................................................................... 153

:Escape Command [ESCAPE]............................................................................... 155

Exit Command [E/F8].......................................................................................... 156

Find Command [F/F4]......................................................................................... 157

Findup Command [FINDU/F3].............................................................................. 159

Form Command [FORM]..................................................................................... 160

Forward Command [FO/F6].................................................................................. 161

Garbage Command [GAR].................................................................................... 162

Glue Command [G]............................................................................................. 164

Help Command [H/?]........................................................................................... 166

Hold Command [HO]........................................................................................... 168

:If, :Endif, :Else, :Elseif Commands....................................................................... 169

Justify Command [J]............................................................................................ 170

Keep Command [K]............................................................................................. 177

:Kill Command [KI/:K]........................................................................................ 181

List Command [L]............................................................................................... 182

:Listredo Command [LISTREDO/F7]..................................................................... 197

:Listundo Command [LISTU]................................................................................ 198

Lsort Command [LS]........................................................................................... 199

Merge Command [ME]......................................................................................... 200

Modify Command [M]......................................................................................... 202

New Command [N].............................................................................................. 215

Open Command [O]............................................................................................. 217

:Pause Command [PAUSE]................................................................................... 221

:Prep Command [PREP/:P]................................................................................... 222

Proc Command [P].............................................................................................. 224

Q Command [Q]................................................................................................. 227

/Qedit Command................................................................................................. 228

:Qhelp Command [QHELP].................................................................................. 229

:Redo Command [REDO]..................................................................................... 230

:Reflect Command [REFLECT]............................................................................. 232

Renumber Command [REN].................................................................................. 235

Replace Command [R]......................................................................................... 236

:Return Command [RETURN]............................................................................... 238

:Run Command [RU/:R]...................................................................................... 239

Run, Implied...................................................................................................... 243

:Segmenter Command [SEG/:S]............................................................................. 244

Set Command [S]................................................................................................ 245

Account.............................................................................................. 247

Alias................................................................................................... 248

Autocont............................................................................................ 250

Check................................................................................................. 250

Decimal.............................................................................................. 251

DL size............................................................................................... 251

Editinput............................................................................................. 252

Expandtabs......................................................................................... 253

Extentsize........................................................................................... 253

Extprog.............................................................................................. 253

Filename............................................................................................. 254

FORTRAN........................................................................................ 254

HFS................................................................................................... 255

Halfbright........................................................................................... 256

Hints.................................................................................................. 256

Hppath............................................................................................... 256

Increment........................................................................................... 256

Interactive........................................................................................... 257

Justify................................................................................................ 257

Keep................................................................................................... 258

Language............................................................................................ 263

Left..................................................................................................... 266

Length................................................................................................ 267

Lib...................................................................................................... 267

Limits................................................................................................. 267

List..................................................................................................... 268

Maxdata............................................................................................. 269

Modify............................................................................................... 269

Open.................................................................................................. 271

Pattern................................................................................................ 272

Priority............................................................................................... 272

Prompt............................................................................................... 273

Redo................................................................................................... 273

Right.................................................................................................. 275

RL file name....................................................................................... 275

Shift................................................................................................... 275

Spell................................................................................................... 276

Statistics............................................................................................. 277

Stringdelimiters.................................................................................. 277

Suspend............................................................................................. 278

Tabs................................................................................................... 279

Term................................................................................................... 279

Text.................................................................................................... 280

Totals................................................................................................. 282

UDC.................................................................................................. 282

Undo.................................................................................................. 283

Varsub............................................................................................... 283

Visual................................................................................................. 284

Warnings............................................................................................ 297

Whichcomp........................................................................................ 297

Window............................................................................................. 298

Work.................................................................................................. 299

Wraparound....................................................................................... 301

X........................................................................................................ 302

YNone............................................................................................... 306

Zip...................................................................................................... 306

Shut Command [SH]........................................................................................... 308

Spell Command [SP]........................................................................................... 310

:Stream Command [STREAM].............................................................................. 312

:Tdpfinal and :Tdpdraft Commands........................................................................ 313

Text Command [T].............................................................................................. 314

Undo Command [UN].......................................................................................... 322

Up Command [UP/F2]......................................................................................... 324

Use Command [U]............................................................................................... 325

Verify Command [V]........................................................................................... 326

Visual Command [VI/F1]..................................................................................... 327

:While and :Endwhile Commands.......................................................................... 329

Words Command [W].......................................................................................... 330

:Xltrim Command [XLTRIM]............................................................................... 331

Zave Command [Z].............................................................................................. 332

ZZ Command..................................................................................................... 333

User Defined Commands...................................................................................... 334

Command Files.................................................................................................. 339

Calculator Command [=]...................................................................................... 343

POSIX Commands [!].......................................................................................... 346

Troubleshooting and Error Messages                                                             347

Introduction........................................................................................................ 347

Messages........................................................................................................... 347

System Errors..................................................................................................... 350

Quit Errors......................................................................................................... 351

Errors in Visual................................................................................................... 351

Using Visual with X.25..................................................................... 351

Using Visual on MPE/iX................................................................... 351

Accidental Invocation of MPE/iX CI................................................. 351

Using Visual on HP-UX................................................................... 352

Terminals Supported by Visual.......................................................... 352

Problems with 700/9x Terminals....................................................... 352

Visual Error Messages....................................................................... 353

Analyzing Compiler Problems............................................................................... 355

QCOMPXLTRACE JCW................................................................. 356

Control-Y and NM Compiles............................................................ 356

How to Bypass Qcompxl................................................................... 356

Problems with HP's C Compiler........................................................ 356

Unresolved External Reference.......................................................... 357

Illegal Characters................................................................................ 357

Pascal/V Compiler Stack Overflow................................................... 357

File Formats                                                                                                           359

Introduction........................................................................................................ 359

Qedit Workfiles................................................................................................... 359

Original Format Workfiles.................................................................................... 359

Jumbo Workfiles................................................................................................. 360

External Files..................................................................................................... 361

Error Files for Editerror........................................................................................ 364

Prefix Characters & Data................................................................... 364

User Routines                                                                                                        367

Introduction........................................................................................................ 367

Wide Lines and User Procedures............................................................................. 367

"Init" Interface Procedure....................................................................................... 368

"Com" Interface Procedure..................................................................................... 369

"Add" Interface Procedure...................................................................................... 370

"Exit" Interface Procedure...................................................................................... 371

Installing Your Interface Procedures........................................................................ 371

Alternate Activation............................................................................................. 372

The Modify User Hook......................................................................................... 373

Writing a User Procedure...................................................................................... 373

DL Space........................................................................................................... 374

Passing Procspace Values...................................................................................... 374

Communication Flags for User Code...................................................................... 375

Qcopy                                                                                                                       377

Introduction........................................................................................................ 377

Accessing Qcopy................................................................................................. 377

Qcopy Documentation.......................................................................................... 378

Qedit-Compatible Software Tools                                                                     379

Introduction........................................................................................................ 379

Compare/iX........................................................................................................ 379

OMNIDEX......................................................................................................... 380

Adager............................................................................................................... 380

CCS - Corporate Computer Systems....................................................................... 380

Reflection.......................................................................................................... 380

ROBOT............................................................................................................. 381

PowerHouse....................................................................................................... 381

Splash for Native-Mode SPL................................................................................. 381

Documentation/3000............................................................................................ 381

Prose Text Formatter............................................................................................ 381

Spell: Spelling Checker........................................................................................ 382

Qhelp Help System.............................................................................................. 382

TRANSACT...................................................................................................... 382

MPEX and STREAMX........................................................................................ 382

SCOMPARE and ANALYZER............................................................................. 383

Xpedit Full-Screen Editor..................................................................................... 383

Nuggets............................................................................................................. 383

Fantasia............................................................................................................. 384

TDP.................................................................................................................. 384

Network Engine.................................................................................................. 384

Regular Expressions                                                                                           385

Introduction........................................................................................................ 385

Metacharacters..................................................................................................... 385

Character Class................................................................................................... 387

Escape Character.................................................................................................. 389

Escaped Sequences in Regular Expressions............................................................... 390

Backreferences in Regular Expressions..................................................................... 391

Escaped Characters in Replacement String................................................................ 392

Qedit Glossary                                                                                                       393

Introduction........................................................................................................ 393

Terms................................................................................................................ 393

Abbreviating...................................................................................... 393

Batch.................................................................................................. 393

Calculator........................................................................................... 394

Column.............................................................................................. 394

Command........................................................................................... 395

Control Character............................................................................... 395

Copylib Members.............................................................................. 396

CRT................................................................................................... 396

Current Line....................................................................................... 396

Defaults.............................................................................................. 397

External File....................................................................................... 397

File Names......................................................................................... 398

Full-Screen Editing............................................................................ 399

Hold File............................................................................................ 399

J Option............................................................................................. 399

Jumbo Files........................................................................................ 399

Keep File............................................................................................ 400

Language............................................................................................ 400

Left..................................................................................................... 400

Length................................................................................................ 400

Line.................................................................................................... 401

Linenum............................................................................................. 401

Looping.............................................................................................. 402

Margins.............................................................................................. 402

Member.............................................................................................. 402

Memory Lock.................................................................................... 402

MPE Command................................................................................. 403

Patterns.............................................................................................. 403

Procedure........................................................................................... 404

Qeditscr.............................................................................................. 404

Quiet-Q Option.................................................................................. 405

Range................................................................................................. 405

Rangelist............................................................................................ 406

Relative Line Numbers....................................................................... 407

Right.................................................................................................. 408

Shifting.............................................................................................. 408

Size.................................................................................................... 408

Spool Files......................................................................................... 408

$Stdin / $Stdinx................................................................................. 409

$Stdlist............................................................................................... 409

String................................................................................................. 409

Tab..................................................................................................... 410

Template-T Option............................................................................. 410

UDC.................................................................................................. 410

Visual Editing.................................................................................... 410

Window............................................................................................. 410

Workfile............................................................................................. 412

Special Characters................................................................................................ 412

? Means Help, Nonprinting Characters, Alphanumeric (in Patterns) or Optional (in Regexp).......................................................................... 412

$ Means Hex, Standard File, Memory Lock, List Option, Previous File or End-Of-Line (in Regexp)................................................................... 413

^ Means Findup, Control-Char, Start-of-line (in Regexp) or Negate (in Regexp).............................................................................................. 414

. Means Nonprinting, Reset, Decimal Point or Any Character (in Regexp)........................................................................................................... 414

! Means Posix Command or Too Long.............................................. 415

% Means Octal or String.................................................................... 415

* Means Current, Refresh, Multiply or Quantifier (in Regexp)......... 415

\ Means Previous, String, Literal Match (in Regexp) or Special Characters (in Regexp).............................................................................................. 416

/ Means Prompt, Range Delimiter, Stop, Exit, or Divide................... 417

[ Means FIRST, [default] or Start Class (in Regexp)......................... 417

] Means LAST or End Class (in Regexp).......................................... 417

{ } Are for Comments or Indentation................................................ 418

@ Means ALL................................................................................... 418

& Means Literal Match or Continue MPE Command........................ 418

: Means MPE or String...................................................................... 419

; Means Multiple Commands............................................................. 419

, Means a List..................................................................................... 419

= Means Copy or Calculate................................................................ 420

< Means Move, I/O Redirection or Backward Page.......................... 420

> Means Forward Page, I/O Redirection, Modify or Qhelp.............. 420

" Means String................................................................................... 421

( Means Start Parameter, Member, Command or Subpattern (in Regexp) 421

) Means End Parameter, Member, Command or Subpattern (in Regexp) 421

+ Means Ahead Some Lines, Add or Quantifier (in Regexp)............ 422

- Means Back Some Lines, Minus or Range (in Regexp).................. 422

# Means Numeric Pattern, Spool File or Previous Result.................. 423

~ Means Spaces (Pattern), Recent Page or Field................................ 423

How to Contact Robelle                                                                                       425

Introduction........................................................................................................ 425

Index                                                                                                                         427

 


Welcome to Qedit

Introduction

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 6.1 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 ===>
/LISTREDO

F8 Exit

 

Documentation

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.

They are also available as PDF or HTML files. You can download the files from the Robelle web site at: http://www.robelle.com/library/manuals/.

User Manual

The user manual contains the full description of all the Qedit commands, as well as usage tips. The manual is up-to-date with all the latest changes incorporated in Qedit.

Printed Documentation

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.

Other Documentation

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.

Printdoc Program

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.

Other Manuals of Interest

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"

Customer Support

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.

Robelle Newsletter

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/.

QLIB and Bonus Contributed Software

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.

Notation

This manual uses a standard notation to describe commands. Here is a sample definition:

            VERIFY         [ @ | ALL ]

            [ keyword ...]

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.

1.     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 393 when you have trouble). In the Help command, highlighting is not available, so these variables appear simply in lowercase.

2.     Brackets - enclose optional fields (example: [ALL]).

3.     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}

4.     Up lines - separate alternatives from which you select (example: SET CHECK [ON|OFF]). The choices are sometimes listed on several lines without "up lines".

5.     Dot-dot-dot (...) - indicates that the variable may be repeated many times in the command.

6.     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.


 

Highlights

 

 Highlights In Version 6.1

This is an overview of all the changes implemented in this version.

á    The Verify command incorrectly parsed certain entries near the end of the verb table such as ZZ, String etc.

á      The Calendar intrinsic is being phased out of Qedit and all Robelle products, which will help all products run past 2028.

 

 

 Highlights In Version 6.0

á      UDCÕs would stop working properly if a Calc command longer than 138 characters was entered.

 Highlights In Version 5.9

á      UDCÕs would stop working properly if a Calc command longer than 138 characters was entered.

 

Highlights In Version 5.8

á        Text command. The text command would fail with Integer Divide by Zero error when texting in some variable length or bytestream files.

 

á        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.

 

Highlights In Version 5.7

á      MPE commands with long Info= string do not cause stack corruption anymore.

á      A rangelist can now have an AND keyword with up to 10 search strings. All strings must be found on a single line for the line to be selected. Each string can have its own search window.

The following enhancements have been implemented in the Qedit for Windows server.

á      The server correctly returns error 90 when the modified record length is greater than the maximum allowed in the current workfile.

 


Installing Qedit

General Installation Notes

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.

Who Should Use These Instructions?

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.

Summary of Installation Steps

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 Compiler Interfaces

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).

Important Note About Passwords

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

STREAMX Users

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

Step 1: Install Qedit

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.

Step 2: Install QLIB and Bonus Programs

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}

Building the Spell Dictionary

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.

Step 3: Install NM Compiler Interface

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.

Installing the Interface

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.

Compiling Instructions

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

Step 4: Install CM Compiler Interface

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.

Choosing a CM Installation Method

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.

Integrating CM Compiler Changes

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.

Isolating CM Compiler Changes

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.

Step 5: Saving Disc Space

There may be obsolete or unnecessary files in the Robelle account that you can remove to save disc space.

Purging Obsolete Files

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.

Minimal Set of Files

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

Moving Qedit to Another Account

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

 

Moving All the Files

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

Redirecting the File Names

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.

Moving a "Hooked" Qedit

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.

Running the MPEXHOOKed Qedit

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.

Removing the Compiler Interface

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.

Removing the NM Interface

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.

Removing the Integral CM Interface

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.

Removing the Isolated CM Interface

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.


Getting a Quick Start with HP Full-Screen Editing

Introduction

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.

Starting Visual Mode

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.

reflection-visual-screen-shot

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.

Screen Layout

===>

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.

Home Line

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.

Status 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.

Text Lines

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.

Template 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.

Special Indicator Columns

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.

Using Your Keyboard

In Visual mode, the keyboard gives you the power to move around the screen, edit text, and control the flow of Qedit.

Moving the Cursor

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

 

Editing the Text Lines

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

 

Control Functions

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!

 

Reflection for DOS Keyboards

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

 

Other PC Keyboards

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.

Function Keys

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

 

F1: Update and Go to Next Page

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.

F2: Roll Up Screen

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.

F3: Findup - Previous String

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.

F4: Find - Next String

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.

F5: Backward One Page

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.

F6: Forward One Page

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.

F7: Execute a Command

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.

F8: Exit from Visual

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.

Browsing Through Your File

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.

Cut-and-Paste

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.

Cutting Operations

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

 

Pasting Operations

 

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.

Resetting Cut-and-Paste

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

Copying a Block of Text

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.

Cut-and-Paste Between Files

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.

Dividing and Gluing Operations

 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

 

Dividing Lines in Visual Mode

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.

Gluing Lines in Visual Mode

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.

Excluding Lines From Visual Mode Display

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.

Justifying Lines in Visual Mode

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.

Renumbering Lines

When the insertion point is on the current screen, Qedit renumbers the screen if needed (and if Set Vis Renum is ON).

Inserting Blank Lines

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.

Hold Files

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.

Marking Changes Without Using Line Numbers

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}

 

Paste from a Non-Qedit File

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

Home Line Commands

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.

Finding Strings

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

Changing Strings

You can change strings on the screen by entering a Change command on the ===> line.

===>c "niether"neither" */*+19  F7

Help on Visual Mode

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.

Compile, Link, and Run

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.

Formatting Paragraphs

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.

Undoing Changes in Visual Mode

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.

Refreshing the Screen

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.

Other Line Mode Commands

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

Truncated Home Line

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).

Exit from Visual

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


Getting a Quick Start with Line Mode Editing

Introduction

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

Adding Lines to a File

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.

/

Looking at the File

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.

Browsing the File

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}

Searching the 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".

Editing Lines

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.

Global Changes

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

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 Lines

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.

Deleting Lines

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.

Help Command

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.

Saving the File

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.

Open and Shut for Instant Access

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


Running Qedit under MPE

Introduction

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.

Edit in Line Mode or in Full-Screen Mode

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.

Edit Several Files at Once

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 ?.

Qeditmgr Configuration Files

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.

Limiting Compile Priority

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.

Default Set Commands

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.

Using Qedit in Batch

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).

Summary of Parm= Values

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

From the Posix Shell

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.

Exit and Entry Options

Following are explanations and examples of running Qedit with the different parameter and Info strings.

Exit with Verify

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= First File to Edit

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.

Random Name for Primary Scratch File

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.

"Discard Changes?" on Exit

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.

Info= "-p 99" Specifies Parm Value

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]:

Info= "-c cmdstring"

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.

Parm 512 to Edit a Single File

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.

Info= An Empty File to Fill

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"

Info= Temporary File

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= Can Create New Files

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.

Parm Values to Suspend or Not

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}

Info= Commands Only

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 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"

JCWs That Drive Qedit

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".

RCRTMODEL JCW

This JCW can have any of these values:

 

0

Don't know terminal model yet, will check it

1

This is not an HP terminal, won't bother checking it

1234

This terminal or emulator is not fully-compatible with an HP terminal

2645

This is an old HP terminal without function key labels

2392,etc.

This is a newer HP terminal with labels

2393/2397

This terminal can have up to 160 columns of display

7009

A 700/9x terminal with 132-column ability

 

If you are using a 2645, you can save one status-request timeout by doing setjcw rcrtmodel = 2645 before you :Run Qedit. If you are not using an HP-compatible terminal, you can avoid all timeouts by doing setjcw rcrtmodel = 1 before entering Qedit.

Type 1234 Terminal or Emulator

Set the RCRTMODEL to 1234 if the terminal or emulator you are using does not support all the standard HP terminal features. For example, you should use this setting with hpterm. hpterm is a UNIX terminal emulator running under the X window system. It's a basic 2392 emulator. hpterm can not identify itself to Qedit, nor let Qedit change the display width by escape sequence (although you can configure the display width manually).

When RCRTMODEL is set to 1234 before you run Qedit, Qedit functions in the following manner:

1.     It accepts the terminal as a terminal that is capable of more than 80 columns of display memory and of doing full-screen mode.

2.     If you set RCRTWIDTH to some value between 81 and 256, Qedit accepts it as the manually set display width.

3.     If you do not set RCRTWIDTH, Qedit attempts to sense the current display width and sets the jcw accordingly. The maximum width is 256 columns. Qedit can support up to 999 columns but, in these instances, the width has to be entered using the RCRTWIDTH variable or the Set Term Columns command.

4.     Qedit sets the option that eliminates changes to display width: Set MarginFixed On.

This option also ensures that the right margin is always set at the right edge of the display width. Normally the right margin is set at the last valid column of the file, which might be less than the display width. You can use this option with other emulators if you wish to stop Qedit from changing the display width.

Please read the section on Set Visual Marginfixed to learn about its advantages and disadvantages.

5.     If you use the Set Term Columns command to specify a new width, Qedit does not attempt to change the terminal with an escape sequence. Instead, it displays the following message and waits for you to change the width manually:

Please change display width and press Enter:

Qedit does not verify that you have done this correctly, so if you make a mistake, do another Set Term Columns command to fix the width.

6.     Set Visual Stop normally resets all the jcws to their default state, forcing Qedit to re-identify the terminal. However, for hpterm, the RCRTMODEL and RCRTWIDTH jcws are not reset, since the terminal cannot  be identified automatically. If you wish to stop using 1234 mode, you must reset RCRTMODEL to 0 manually.

7.     Set Visual Widen should normally be set to 76 or 80 (default) with hpterm. Otherwise you will not be able to use the extra columns beyond 80.

RPCVERSION JCW

RPCVERSION can have any of these values:

 

0

 

don't know if this is Reflection, will check it

1

 

this is not Reflection, or it is too old

wXyyy, where

 

 

 

w=0

for display width can be expanded