|
Post by Stefan on Jan 14, 2021 13:08:24 GMT -5
George,
You might consider some changes to the 'new installation' key mapping on PF-keys.
I often find that I press a key instinctively multiple times because it didn't do what I expected the first time. (and end up with several RCHANGE or RFIND commands 'stacked' on the command line)
Usually the reason SPFLite didn't do what I expected is because the command line had some data already in it which the PFK command didn't like. Hence I found it useful to add the "!" before some commands and remove the repeat tick for a number of keys.
Key Current Proposed Repeat Reason
------ ------- -------- ------ ------------------------------------------------------------------------------------------------------
F1 -N !HELP HELP No If you have issues with a command, PF1 will take you straight to HELP for that command (if available) F3 -N END !END No END takes no operands anyway and may be picky about redundant data in future F5 -N RFind !RFIND No Avoids 'stacking' commands in the command line if, for any reason, line isn't blank or an error occurs F6 -N RChange !RCHANGE No --- ditto --- F12 -N CRETRIEV !CRETRIEV No --- ditto --- F12 -S (NULL) !RETF No Very useful when you've 'overshot' the command you were after with CRETRIEV
PAUSE (NULL) (PA1) No There's no key for this by default
RALT (NULL) !KEYMAP No --- ditto ---
|
|
|
Post by George on Jan 14, 2021 13:41:00 GMT -5
They seem reasonable to me. Anyone else have comments? I'm about to start packaging an actual release, so speak up.
George
|
|
|
Post by Stefan on Jan 14, 2021 15:04:10 GMT -5
OOPS! There's a side effect which trumps the intended advantage in the case of PF5The !RFIND construct instead of plain RFIND interferes with the use case where the user types CHANGE AAAA BBBB into the command line and then presses PF5 instead of pressing ENTER. Without the ! prefix, the effect of the above process is to align the cursor with the first occurrence of AAAA, allowing selective change via PF6 or moving on to the next occurrence via PF5. With the ! prefix, this no longer works.
It's odd that I've had PF5 mapped to !RFIND for a few weeks and only just noticed it today. Still - just in time...!
|
|
|
Post by George on Jan 14, 2021 15:21:03 GMT -5
Thanks for the heads up. The RFIND/RCHANGE handling when a full set of operands is entered is quite involved, I'm not surprised this occurred.
George
|
|
|
Post by Stefan on Jan 15, 2021 4:09:31 GMT -5
George A question about the Keymap Table in the CFG file... The CFGMaint -EXPORT of the keymap table doesn't show the 'Key Repeat' setting. Should it do so? How is this setting restored on CFGMaint -IMPORT?
Also a suggestion of a documentation change at a suitable point in the KEYMAP help pages... Using the ! command prefix is advised for all key maps which specify a 'complete' command.
A 'complete' command is one where you do not wish/expect the key-action to preface something you've already entered in the Command line.
For example: The 'complete' command UP MAX assigned to a key will fail if the command line is not blank when you press the key. Using !UP MAX avoids this error because the ! character causes the command line to be cleared before inserting the UP MAX command.
Exceptions to this conventions are key maps which deliberately allow one or more operands to be specified by the user. For example:
UP, DOWN, LEFT and RIGHT
Allows the user to temporarily override the usual scroll amount by typing a number (of lines) or the letter M (max) in the command line before pressing the mapped key. HELP
Allows direct access to help information about the command currently on the command line RFIND
Allows the mapped key to find the first occurrence of the <from> string in a CHANGE command which is already present on the command line,
|
|
|
Post by George on Jan 15, 2021 12:25:46 GMT -5
Stefan: The repeat is the 1st character after the = sign. U = No repeat, . = repeat. Don't ask why U and . --- historic baggage.
I'll update the Doc, thanks for the suggestions.
|
|
|
Post by Stefan on Jan 15, 2021 12:29:19 GMT -5
Stefan: The repeat is the 1st character after the = sign. U = No repeat, . = repeat. Don't ask why U and . --- historic baggage. I'll update the Doc, thanks for the suggestions. Thx George,
Whoops! I hadn't spotted THAT correlation.
Probably because I 'decided' early on that 'U' flagged those entries which a user had modified from the standard setup.
Assumption - mother of all screw-ups!
|
|
|
Post by George on Jan 15, 2021 12:37:40 GMT -5
Stefan: I can't even remember the history of . and U. The KB mapping has gone through a couple of major overhauls. They just keep getting carried forward so as not to mess up user's KB definitions.
|
|