Category : Word Processors
Archive   : AMAC43B.ZIP
Filename : DELSP11.QM

 
Output of file : DELSP11.QM contained in archive : AMAC43B.ZIP
* DELSP11.QM
* Macros To Delete Leading Spaces From Lines
* Written by John Goodman
* July 28, 1991
* ================================================================
*
* The following macros may be used to delete leading spaces from
* various lines in the file currently being edited. The following
* macros are provided:
* -Bytes-
* @(1) Delete Leading Spaces from Current Line (11) |chg
* @(2) Delete Leading Spaces from Lines Delineated by Any (22)
* Block (or Current Line if No Blocks Marked)
* @(3) Delete Leading Spaces from Current Paragraph (15)
* @(4) Delete Leading Spaces from Current Paragraph and (18)
* Reformat Paragraph to Right Margin
* @(5) Reformat Current Paragraph Ignoring AutoIndent Mode (20)
* @(6) Delete Leading Spaces from All Lines in File (13)
* @(7) Delete Leading Spaces from All Lines in File and (19)
* Reformat All Paragraphs to Right Margin
*
* (@2 is probably the most versatile of the set)
*
* (Version) History
*
*-- eoi

* Each of the macros should operate correctly regardless of QConfig
* or QEdit mode settings (Insert mode, WordWrap mode, etc.). Most
* of the macros work by creating a column block that is 2
* characters wide at the beginning of each line from which leading
* spaces are to be deleted. When the "CenterLine" command is
* executed, with the cursor in the 2-column block, QEdit tries to
* center the line within the 2 columns. This results in all
* leading spaces being deleted from the line(s).
*
* Another excellent technique for deleting leading characters from
* non-blank lines (i.e., test for a non-blank line first) is as
* follows:
*
* BegLine * Go to 1st character of line
* ShiftRight * Create at least 1 space at beginning of line
* DelRtWord * DelRtWord deletes all space characters up
* * to the first non-blank character
* * (including "non-word" characters)
*
* Be aware that if lines other than the current line are blocked,
* the ShiftRight command will shift all of them. (Thanks to Tim
* Farley of SemWare for the ideas behind this technique.)

* 
* ---------------------------------------------
* @(1) Delete Leading Spaces from Current Line
* ---------------------------------------------
* This macro deletes all space characters from the beginning of the
* current line. The cursor is positioned on the following line
* after macro execution so that the macro can be invoked repeatedly
* to delete the leading spaces from a series of lines.
*

@1 MacroBegin
BegLine * Go to beginning of line
SplitLine * Split line at beginning
CursorRight * Move to col 2
JoinLine * Re-join the line
CursorLeft * Move back to col 1
DelRtWord * Delete leading spaces
CursorDown * Move to next line to do again
*
* 12 bytes Tue 06-25-1991 15:13:57 (JG)
* 11 bytes Sun 07-28-1991 17:21:41 (JG)

* 
* ----------------------------------------------------------------
* @(2) Delete Leading Spaces from Line(s) Delineated by any Block
* (or Current Line if no Blocks Marked)
* ----------------------------------------------------------------
* This macro will delete the space characters from the beginning of
* each line that is bound by a block begin and end point. Any type
* of block (character, line, or column) may be used to delineate
* the line(s) and only one block marker need be set. If no block
* markers are set, the current line is acted upon. The cursor will
* be placed on the line following the last one acted upon so that
* the macro can be invoked repeatedly to delete the leading spaces
* from a series of lines.
*
@2 MacroBegin
CursorRight * Needed for single line block
GotoBlockEnd * Try going to block end, retain pos.
JTrue BLK: * Determine if a completed block
DropAnchor * If not, DropAnchor will finish it
* or mark current line if none started
GotoBlockEnd * Go to block end to retain position
MarkLine * Mark first line
BLK: * Line block now set
BegLine * Go to begin of last line
GotoBlockBeg * Go straight up to 1st line of block
MarkColumn * Start column block
PrevPosition * Return to last line of block
BegLine * Make sure we're in col 1
CursorRight * Move to column 2 (block now 2 cols)
CenterLine * Centerline will now del leading spaces
UnmarkBlock * Unmark the block
BegLine * Go to begin of last line
CursorDown * Move to next line to do again!
*
* 22 bytes Tue 06-25-1991 12:52:01 (JG)

* (THH added from QEdit docs, June 25, 1991)...
* [CenterLine] <^CL>
* ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
* If the cursor is inside a column block, the lines encompassed by the
* block are centered using the left and right columns of the block as
* the margins.
*
* If the cursor is inside a line block, the lines encompassed by the
* block are centered using column 1 and the right margin as the margins.
*
* Otherwise, the line the cursor is on is centered, using column 1 and
* the right margin as the margins.

* 
* --------------------------------------------------
* @(3) Delete Leading Spaces from Current Paragraph
* --------------------------------------------------
* This macro deletes all space characters from the beginning of the
* lines in the paragraph in which the cursor is currently
* positioned. If the cursor is on a blank line (not in a
* paragraph), then the previous paragraph will be acted upon. The
* cursor will be positioned at the beginning of the next paragraph
* after macro execution so that the macro can be invoked repeatedly
* to format a series of paragraphs.
*
@3 MacroBegin
UnmarkBlock * Ensure no blocks marked
CursorDown * Move down one line
PrevPara * Go to begin of curr para
BegLine * Start in col 1
MarkColumn * Start Column block
EndPara * Go to last line of para
BegLine * Go to line begin
CursorRight * Create 2 column block
CenterLine * Centerline dels leading spaces
UnmarkBlock * Unmark the block
NextPara * Move to next para to do again!
*
* 15 bytes Tue 06-25-1991 16:28:15 (JG)

* 
* ------------------------------------------------------
* @(4) Delete Leading Spaces from Current Paragraph and
* Reformat Paragraph to Right Margin
* ------------------------------------------------------
* This macro deletes all space characters from the beginning of the
* lines in the paragraph in which the cursor is currently
* positioned and reformats (wordwraps) the paragraph at the
* currently defined right margin. If the cursor is on a blank line
* (not in a paragraph), then the previous paragraph will be acted
* upon. The cursor will be positioned at the beginning of the next
* paragraph after macro execution so that the macro can be invoked
* repeatedly to format a series of paragraphs.
*
@4 MacroBegin
UnmarkBlock * Ensure no blocks marked
CursorDown * Move down one line
PrevPara * Go to begin of curr para
BegLine * Start in col 1
MarkColumn * Start Column block
EndPara * Go to last line of para
BegLine * Go to line begin
CursorRight * Create 2 column block
CenterLine * Centerline dels leading spaces
UnmarkBlock * Unmark the block
CursorDown
PrevPara
WrapPara
NextPara * Move to next para to do again!
*
* 18 bytes Tue 06-25-1991 16:36:50 (JG)

* 
* ---------------------------------------------------------
* @(5) Reformat Current Paragraph Ignoring AutoIndent Mode
* ---------------------------------------------------------
* The following macro will reformat (wordwrap) the paragraph in
* which the cursor is currently placed (or the previous paragraph
* if the cursor is on a blank line) and will ignore AutoIndent mode
* if it is set to ON. The 1st line of the paragraph will retain
* its indentation; the 2nd and subsequent lines will be left
* justified to column 1 (as if AutoIndent were OFF).
*
@5 MacroBegin
UnmarkBlock * Ensure no blocks marked
CursorDown PrevPara * Move to 1st line of current para
WrapPara PrevPara * Wrap the para and return to 1st line
CursorDown * Move to 2nd line of para
EndLine BegLine * Test if there is a 2nd line
JFalse END: * Skip if no 2nd line
ShiftRight * Create space at front of line
DelRtWord * Remove leading spaces
CursorUp * Move back to 1st line of para
WrapPara * Re-wrap the para
END:
NextPara * Move to next para to do again!
*
* 20 bytes Tue 06-25-1991 15:43:06 (JG)

* 
* --------------------------------------------------
* @(6) Delete Leading Spaces from All Lines in File
* --------------------------------------------------
* This macro deletes all space characters from the beginning of
* each line in the file currently being edited.
*
@6 MacroBegin
UnmarkBlock * Ensure no blocks marked
EndFile * Go to last line of file
BegLine * Move to column 1
MarkColumn * Start Column Block
BegFile * Go to begin of file
CursorRight * Create 2 column block
CenterLine * Centerline will del leading spaces
UnmarkBlock * Unmark the block
BegLine * Return to file begin
*
* 13 bytes Tue 06-25-1991 15:04:05 (JG)

* 
* ---------------------------------------------------------------
* @(7) Delete Leading Spaces from All Lines in File and Reformat
* All Paragraphs to Right Margin
* ---------------------------------------------------------------
* This macro deletes all space characters from the beginning of
* each line in the file currently being edited and reformats
* (wordwraps) all paragraphs to the currently defined right margin
* setting.
*
@7 MacroBegin
UnmarkBlock * Ensure no blocks marked
EndFile * Go to last line of file
BegLine * Move to column 1
MarkColumn * Start Column Block
BegFile * Go to begin of file
CursorRight * Create 2 column block
CenterLine * Centerline will del leading spaces
UnmarkBlock * Unmark the block
BegLine * Return to file begin
WRAPLOOP: * Loop for each para in file
WrapPara * Wrap the para
CursorDown * Try moving down 1 line
JTrue WRAPLOOP: * Can't move down if at EOF
BegFile * Return to begin of file
*
* 19 bytes Tue 06-25-1991 15:03:29 (JG)

* (Version) History
* -----------------
* July 28, 1991 1.1 - Minor documentation change by TH.
* - Shortened @1 one byte.
*
*
*


  3 Responses to “Category : Word Processors
Archive   : AMAC43B.ZIP
Filename : DELSP11.QM

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/