home *** CD-ROM | disk | FTP | other *** search
- ; INDENT.CMD: In/undent region & reformat indented paragraph macros
-
- ; indent region
-
- store-procedure indent
- write-message "[Indenting region]"
- set %endline $curline
- set %endpos $cwline
- exchange-point-and-mark
- set $discmd FALSE
- set-mark
- set $discmd TRUE
-
- !while &gre %endline $curline
- beginning-of-line
- realign-line ; handle-tab
- previous-line
- detab-line
- ; next-line
- !endwhile
-
- beginning-of-line
- set $cwline %endpos
- write-message "[Region indented]"
- !endm
-
- ; undent region
-
- store-procedure undent
- write-message "[Undenting region]"
- set %endline $curline
- set %endpos $cwline
- exchange-point-and-mark
- set $discmd FALSE
- set-mark
- set $discmd TRUE
-
- !while &gre %endline $curline
- beginning-of-line
- !if &gre $lwidth 0
- -1 realign-line ; delete-next-character
- previous-line
- detab-line
- !else
- next-line
- !endif
- !endwhile
-
- beginning-of-line
- set $cwline %endpos
- write-message "[Region undented]"
- !endm
-
- ; reformat indented paragraph
-
- store-procedure refin
- write-message " [Fixing paragraph]"
- set %endline $curline
- set $discmd "FALSE"
- kill-region
- 2 split-current-window
- select-buffer "[temp]"
- yank
-
- end-of-file
- set %endline $curline
- beginning-of-file
- !while &gre %endline $curline
- beginning-of-line
- !if &gre $lwidth 0
- delete-next-character
- !endif
- next-line
- !endwhile
-
- &sub $fillcol 8 set-fill-column
- 1 goto-line
- fill-paragraph
- &add $fillcol 8 set-fill-column
-
- end-of-file
- set %endline $curline
- beginning-of-file
- !while &gre %endline $curline
- beginning-of-line
- handle-tab
- next-line
- !endwhile
-
- beginning-of-file
- set-mark
- end-of-file
- kill-region
- unmark-buffer
- delete-window
- yank
- delete-buffer "[temp]"
- set $cwline %endpos
- set $discmd "TRUE"
- write-message " [Fixed paragraph]"
- !endm
-
-
- ;+ Need to be able to look at count val in macro
- ;+ add another variable
-
- set $discmd TRUE
- bind-to-key execute-macro-indent ^X^I
- bind-to-key execute-macro-undent ^XU
-
- ; testing
- 39 store-macro
- write-message &cat &cat $lastkey " " &ascii "i"
- !if &equal $lastkey &ascii "q"
- write-message "matched q"
- !endif
-
- !endm
- bind-to-key execute-macro-39 ^XQ
-
-