home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume4 / spell_check.sh < prev    next >
Text File  |  1989-02-03  |  3KB  |  74 lines

  1. Path: xanth!mcnc!rutgers!tut.cis.ohio-state.edu!cwjcc!hal!ncoast!allbery
  2. From: badri@ur-valhalla.UUCP (Badri Lokanathan)
  3. Newsgroups: comp.sources.misc
  4. Subject: v04i112: SUPERSEDES v04i111: A convenient spelling filter based on 'spell' (revised)
  5. Keywords: spell,vi
  6. Message-ID: <1509@valhalla.ee.rochester.edu>
  7. Date: 4 Oct 88 01:13:07 GMT
  8. Sender: allbery@ncoast.UUCP
  9. Reply-To: badri@ur-valhalla.UUCP (Badri Lokanathan)
  10. Organization: UR Dept. of Electrical Engg, Rochester NY 14627
  11. Lines: 59
  12. Approved: allbery@ncoast.UUCP
  13. Supersedes: <1505@valhalla.ee.rochester.edu>
  14.  
  15. Posting-number: Volume 4, Issue 112
  16. Submitted-by: "Badri Lokanathan" <badri@ur-valhalla.UUCP>
  17. Archive-name: spell_check.sh
  18.  
  19. (To the moderator: I posted an earlier version which was incomplete and
  20. buggy; I am not even sure if it reached you. Please cancel it.)
  21. [Superseded; let's see if this works as claimed.  ++bsa]
  22.  
  23. The following shell script, based on spell, is convenient for highlighting
  24. spelling errors, either in a vi session or stand alone. I wrote it so
  25. that I could pipe text from within a vi session through it.
  26. (Note that you cannot just say
  27.         !}spell
  28. in vi since it would destroy your text!)
  29. [It may anyway.  Many "vi"'s have a bug when large amounts of text are piped
  30. to/from a command.  You have been warned!  ++bsa]
  31.  
  32. ------------%< cut here and save in spell_check ----------------------------
  33. #!/bin/sh
  34. ############################################################################
  35. #    A sh script to allow spelling checks either in vi or stand alone   #
  36. #    Usage: spell_check < file or within vi,                   #
  37. #        !}spell_check        or                   #
  38. #        :(addressed lines)!spell_check                   #
  39. #                                       #
  40. #       Wrongly spelled words will be surrounded as ###bad-word###         #
  41. #    WARNING: Do not try and sell this tiny shell script to some        #
  42. #       poor sucker!                               #
  43. #    Badri Lokanathan, 30 September 1988                                #
  44. ############################################################################
  45. doc=/tmp/splchk.$$
  46. scr=/tmp/sedscr.$$
  47.  
  48. trap 'rm -f $doc $scr; exit 1' 1 2 15
  49. cat > $doc
  50.  
  51. cat > $scr <<HEAD
  52. s/^/ /
  53. s/\$/ /
  54. HEAD
  55.  
  56. spell < $doc |
  57.     sed -e 's/^/s;\\([     ][^a-zA-Z0-9]*\\)\\(/
  58.         s/$/\\)\\([^a-zA-Z0-9]*[     ]\\);\\1###\\2###\\3;g/
  59.         s/ $//' >> $scr
  60.  
  61. cat >> $scr <<TAIL
  62. s/^ //
  63. s/ \$//
  64. TAIL
  65.  
  66. sed -f $scr $doc
  67. rm -f $doc $scr
  68.  
  69. -- 
  70. "I care about my fellow man              {) badri@valhalla.ee.rochester.edu
  71.  Being taken for a ride,                //\\ {ames,cmcl2,columbia,cornell,
  72.  I care that things start changing     ///\\\ garp,harvard,ll-xn,rutgers}!
  73.  But there's no one on my side."-UB40   _||_   rochester!ur-valhalla!badri
  74.