Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sdd.hp.com!cs.utexas.edu!uwm.edu!psuvax1!rutgers!cmcl2!adm!news From: ORNSTEIK%MYIPA@dupont.com (Ian Ornstein x2754 DEC Software Services @ Dupont) Newsgroups: comp.unix.questions Subject: RE: Help with AWK Message-ID: <26796@adm.brl.mil> Date: 6 May 91 19:45:06 GMT Sender: news@adm.brl.mil Lines: 85 Mario@wjvax.uucp asked for help with AWK to reformat a mailing list. He is a solution using MicroEMACS macros: select-buffer "Data" beginning-of-file set-mark end-of-file kill-region select-buffer "Result" beginning-of-file set-mark end-of-file kill-region ; store-procedure Do-one-line set-mark set $curcol 10 copy-region select-buffer "Result" yank newline select-buffer "Data" set-mark set $curcol 29 copy-region select-buffer "Result" yank newline select-buffer "Data" set-mark set $curcol 46 copy-region !if &sequel $kill " " ; 1234567890123456789012345678901234567890 set %talley 0 !else select-buffer "Result" yank newline select-buffer "Data" !endif set-mark set $curcol 70 copy-region select-buffer "Result" yank ; newline select-buffer "Data" set-mark end-of-line ; backward-character copy-region select-buffer "Result" previous-word search-forward " " yank 2 newline !endm ; ; select-buffer "Data" insert-file "puzzle.dat" set %talley 0 beginning-of-file end-of-file set %maxlines &sub $curline 1 beginning-of-file !while &less $curline %maxlines run Do-one-line select-buffer "Data" next-line beginning-of-line !endwhile unmark-buffer select-buffer "Result" delete-previous-character beginning-of-file set-mark end-of-file trim-line write-file "file.out" set $discmd TRUE ;exit-emacs Enjoy!