Welcome to SPFLite
Contents of Article
A Note about Keyboard Functions
A Note about System Compatibility
IBM ISPF Background Information
SPFLite is a Windows text and source-program editor designed for users who are familiar with the mainframe IBM editor known as SPF, ISPF or ISPF/PDF. These original editors function in a significantly different manner than most Windows-based editors, because they are line-oriented and command-driven. If you've had many years of experience using one editor, changing to another one quite often is disruptive and frustrating.
Functions that one is accustomed to are missing or operate totally differently, and the cry is heard, "Where's my good old ISPF ?!"
I went through this frustration years ago, and after trying out just about every Windows PC Editor I could lay my hands on, I realized none of them satisfied what I wanted. I looked for other ISPF clones, and discovered that there just isn't much out there. They were either too expensive and/or were poorly designed and not what I was looking for.
So, as my wife so bluntly put it, "You've been a programmer all your life, create it yourself!" So that's where this came from.
I had toyed with ISPF clones from the very early days of personal computers. My first effort was on a 64K (yes, K) TRS-80 and looking back it was pretty pathetic. Next came a ported version on the early PCs, sort of usable, but very, very limited.
When I retired, I needed something to keep busy with, so I resurrected my old SPF source and started once again. And SPFLite resulted. It is simply the Editor portion of ISPF with as many of the features and functions of the editor as I could manage to duplicate. A simple File Manager option was added to provide basic file selection and Delete and Rename functions.
Along the way I was joined by Robert Hodge, who was, and is, an SPF afficionado. He has contributed many times to the code base, but mainly he has been the "Idea Man" and many of the extra features of SPFLite have come from his fertile mind. Together now for 15+ years, we have been refining and extending SPFLite.
A lot of users might be thinking right now, "Well, an SPF-style editor is great if you are an ex-mainframe developer, but I never was! Why should I care about your editor? What's in it for me?"
The short answer is, a lot. Besides the fact that a line-oriented editor model is actually a very good one when you are writing programs, SPFLite's editing capabilities are now much better, in many ways, than even the most recent mainframe releases of ISPF.
Believe it or not, if you have been keeping up with SPFLite's continually improving capabilities, and if you also have opportunity to work on ISPF on a current IBM z/OS system, you may actually find yourself saying the opposite of what George wrote above: "Where's my SPFLite ?!". It's that much better - RH
So, what's in it for you? Lots.
Starting as a console-mode application, SPFLite progressed through the conversion to a Windows application, and added multi-tabbed editing, and proper Options/Preferences support so manual editing of INI variables was no longer required. Many ISPF commands and features were implemented.
A total keyboard rewrite now allowed almost every keyboard key to be customized. Many new features (Multi-Edit, PowerTyping, Find in Files and Text Highlighting) were added, along with numerous new commands, and keyboard primitives.
Introduction of a true programmable macro capability. This supports creation of both new Primary commands and Line commands to accomplish custom editing functions. More new features and commands. User lines were introduced along with supporting commands. STATE support switched away from using ADS files to normal files in the SPFLite folder.
Continuing addition of many new features: Updated File Manager, Dynamic colorization, command chaining, improved File Manager 'nesting', along with many bug fixes.
Version 9.0
This version was never released. It contained a lot of experimental code which never really worked as expected.
A total revision of screen color handling to integrate basic screen colors and those in colorization files. User control of Status Bar formatting, New commands DO and ALIGN. A new literal type - a delimited literal. This aids finding variable length items like strings inside brackets, braces, parenthesis etc. New support for Backup and Restore of files from within SPFLite.
This version provides several new features including additional Macro support:
- A Profile IMACRO option is provided to specify an Initial macro to be run immediately following loading of the file's data.
- Macro support has been expanded to allow use in the File Manager Tab. Additional macro functions specific to operating in the File Manager Tab have been added.
- A new "Handle" concept added for macro line identification.
- New Command line options were added to allow specification of an initial macro to use against the filename specified in the command line, and a separate option to allow specifying a DO macro to be run when initialization is complete.
- A new Keyboard primitive (PA2) is available. Like the PA2 key on the original 3270 terminals, it allows you to 'throw away' typing done on the current screen, so long as PA2 is entered before entering any other attention key (like Enter, PgUp, PgDn, PFn etc.)
- A new sort option for File Manager - Name* which requests the list be unsorted. i.e. in the sequence file information was retrieved.
- Improved File Manager History to allow moving Backward and Forward through your history of different File Manager views. Supported by two new primitive keys (FMBack) and (FMFwd)
The changes in this 'version' were significant enough to warrant calling this Release 2.
The whole methodology of storing program parameters and preferences was altered. Support was added to provide flexibility in storing this data, as well as support for running multiple Instances of SPFLite, each with their own possibly unique preferences and parameter storage locations. See "Managing SPFLite Instances and Configurations".
Version 2.1 and 2.2 had many bug fixes, but also moved SPFLite2 out of the old folder to separate it from the older V11 modules. DIFF support was added for performing File comparisons.
This release contained significant changes to the File Manager support. Additional data columns were made available, including a subset of the extended properties (MetaData). Many other small improvements to FM capabilities were made.
This release was mainly a cleanup release. The primary command scanning and Find/Change control area were simplified and made more consistent. An extensive improvement to the HELP command was performed to provide a more useful search for appropriate help topics.
Release 2.6
This release introduced Tracking, a new assist in moving around a document. As well, QUERY was replaced with standardized responses from option commands Numerous other 'tweaks' and enhancements.
This release replaced the former Profile USING support with a new Extended File Types support. This provide a much more flexible method of identifying file types and assigning them to an actual Profile. Also enhanced was user control over the appearance of the Status Bar.
This release, along with some minor changes, added support for Vertical ScrollBars on the right of the Edit and File Manager screens. The Extended File Type support was extended to consolidate the DEFAULT SHR list and the Non-Text file list.
This release is also primarily a cleanup release. Over the years, many new functions and features have been added, and honestly, they were not done as properly as they should have. Expediency took hold and many 'kludges' and 'shortcuts' were done to add the new feature. We ended up with many layers of code, each of which independently were 'OK", but in total their 'clutter' made the code very difficult to work with.
So this release cleaned much of this up. The main command parser was re-written, the generalized Search routine revised and simplified and as a byproduct of testing all this, many unreported bugs in various commands have been corrected. Several command functions had outlived their usefullness and were removed.
A Note about Keyboard Functions
As noted above, IBM ISPF is line-oriented and command-driven, and so is SPFLite. However, a major component of SPFLite - and one of its distinguishing features - is its support for Keyboard Customization and Keyboard Macros and Keyboard Primitives. A great deal of SPFLite's power, and what makes it so special, derives from this capability. It is just as important to understand and use this feature as it is to understand and use SPFLite's array of primary and line commands.
If you choose to use SPFLite as if it were "just a PC version of IBM ISPF" without exploring key mapped functions, there is nothing "wrong" with that, of course. However, you would be missing out on a large number of highly useful and very cool features that can save you time and allow you to do things you couldn't otherwise do, or could only do with great difficulty.
Don't miss out! Do yourself a favor, and read up on key mapping and keyboard functions - then try them out. If there's anything you don't understand about these functions, and this Help file isn't clear enough, be sure to send us your feedback on the SPFLite Forum. Whether it's a documentation improvement or a feature enhancement that's needed, we do take everyone's feedback into consideration.
Rest assured - the learning curve is well worth the effort.
P.S. For any of you former Tritus SPF users (I am in that group - RH), who might be familiar with the "keyboard primitives" that Tritus supported, you should be aware that the mappable functions in SPFLite are much more powerful. There are loyal Tritus users who thought they'd "never" give up their favorite editor - which was unquestionably a fine product in its day. If you count yourself among such users, you should know that in terms of sheer editing capability, SPFLite is not only every bit as good as Tritus was, it's better. SPFLite is the successor to Tritus SPF that you have been waiting for!
This document shows a number of screen shots to help explain how SPFLite operates. Many will appear with a very small screen size just large enough to contain the lines being discussed. This is done only for convenience in preparing the Help document, and nothing else is implied. You are free to adjust your SPFLite screen size to anything that is convenient for you.
As well, since there are so many screen shots used throughout this document. you will see snapshots created from several different releases of SPFLite. Replacing each and every screen shot with a sample from the current release would be very time-consuming and labor-intensive, and is not usually necessary anyway. Be assured that the purpose of an 'old' screen shot is not lessened because it is from an older release. These are updated as needed if the contents would be misleading. We do review every screen shot with every release, and anything that changed in any significant way is updated. Don't worry, we've got it covered!
Small Physical Screens
If you are using a very small screen (like on a small Laptop) there are times when some SPFLite pop-up dialogues may not 'fit' on the screen, and the Done and Cancel buttons on the bottom are not visible. So how do you "get out"? The Done and Cancel buttons all have Keyboard Accelerators assigned, so you can just hit D or C to make your choice.
A Note about System Compatibility
SPFLite will operate on Windows 10, Windows 8.0, Windows 8.2, Windows 7, and Windows Vista. Windows XP users must use an older version maintained on the Download page of the SPFLite web site. As with any other aspect of SPFLite, if you ever run into problems, be sure to send your feedback to the SPFLite Forum so we can look into it.
IBM ISPF Background Information
Because the design of SPFLite is largely based on IBM ISPF, it may be helpful to read the specifications for the original mainframe editor for comparison purposes. Documentation of this mainframe software can be found on the Internet. The most important manual for ISPF is the ISPF Edit and Edit Macros Manual. A recent version of this manual online can be found at:
http://publibz.boulder.ibm.com/epubs/pdf/ispzem80.pdf
SPFLite is distributed as Open Source under the GPL3 license terms. All versions are fully functional and the source is available on the SPFLite Web Site.
Created with the Personal Edition of HelpNDoc: Easily create Qt Help files