home *** CD-ROM | disk | FTP | other *** search
/ The C Users' Group Library 1994 August / wc-cdrom-cusersgrouplibrary-1994-08.iso / vol_100 / 197_01 / indent.cmd < prev    next >
OS/2 REXX Batch file  |  1979-12-31  |  2KB  |  99 lines

  1. ;    INDENT.CMD:    In/undent region & reformat indented paragraph macros
  2.  
  3. ;    indent region
  4.  
  5. store-procedure    rcindent
  6.     write-message "[Indenting region]"
  7.     set %endline $curline
  8.     set %endpos $cwline
  9.     exchange-point-and-mark
  10.     set $discmd FALSE
  11.     set-mark
  12.     set $discmd TRUE
  13.  
  14.     !while &gre %endline $curline
  15.         beginning-of-line
  16.         handle-tab
  17.         next-line
  18.     !endwhile
  19.  
  20.     beginning-of-line    
  21.     set $cwline %endpos
  22.     write-message "[Region indented]"
  23. !endm
  24.  
  25. ;    undent region
  26.  
  27. store-procedure    rcundent
  28.     write-message "[Undenting region]"
  29.     set %endline $curline
  30.     set %endpos $cwline
  31.     exchange-point-and-mark
  32.     set $discmd FALSE
  33.     set-mark
  34.     set $discmd TRUE
  35.  
  36.     !while &gre %endline $curline
  37.         beginning-of-line
  38.         !if &gre $lwidth 0
  39.             delete-next-character
  40.         !endif
  41.         next-line
  42.     !endwhile
  43.  
  44.     beginning-of-line    
  45.     set $cwline %endpos
  46.     write-message "[Region undented]"
  47. !endm
  48.  
  49. ;    reformat indented paragraph
  50.  
  51. store-procedure refin
  52.     write-message "                    [Fixing paragraph]"
  53.     set %endline $curline
  54.     set $discmd "FALSE"
  55.     kill-region
  56.     2 split-current-window
  57.     select-buffer "[temp]"
  58.     yank
  59.  
  60.     end-of-file
  61.     set %endline $curline
  62.     beginning-of-file
  63.     !while &gre %endline $curline
  64.         beginning-of-line
  65.         !if &gre $lwidth 0
  66.             delete-next-character
  67.         !endif
  68.         next-line
  69.     !endwhile
  70.  
  71.     &sub $fillcol 8 set-fill-column
  72.     1 goto-line
  73.     fill-paragraph
  74.     &add $fillcol 8 set-fill-column
  75.  
  76.     end-of-file
  77.     set %endline $curline
  78.     beginning-of-file
  79.     !while &gre %endline $curline
  80.         beginning-of-line
  81.         handle-tab
  82.         next-line
  83.     !endwhile
  84.  
  85.     beginning-of-file
  86.     set-mark
  87.     end-of-file
  88.     kill-region
  89.     unmark-buffer
  90.     delete-window
  91.     yank
  92.     delete-buffer "[temp]"
  93.     set $cwline %endpos
  94.     set $discmd "TRUE"
  95.     write-message "                    [Fixed paragraph]"
  96. !endm
  97.  
  98.  
  99.