home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / TELECOM / rn_4_3_blars.lzh / newsgroups.SH < prev    next >
Text File  |  1990-08-22  |  3KB  |  96 lines

  1. case $CONFIG in
  2.     '') . ./config.sh ;;
  3. esac
  4. echo "Extracting newsgroups (with variable substitutions)"
  5. $spitshell >newsgroups <<!GROK!THIS!
  6. $startsh
  7. # $Header: newsgroups.SH,v 4.3.2.7 90/04/23 19:30:41 sob Exp $
  8. # $Log:    newsgroups.SH,v $
  9. # Revision 4.3.2.7  90/04/23  19:30:41  sob
  10. # Extra space removed to make second part of newsgroups work.
  11. # Sigh.
  12. # Revision 4.3.2.6  90/04/06  20:35:37  sob
  13. # Added fixes for SCO Xenix sent by ronald@robobar.co.uk.
  14. # Revision 4.3.2.5  90/03/17  17:27:00  sob
  15. # System V sed and BSD sed don't work quite alike. This change uses a
  16. # syntax that is common between them.
  17. # Revision 4.3.2.4  89/11/08  01:13:35  sob
  18. # Finished modifications to make work with RN and RRN
  19. # Revision 4.3.2.3  89/11/07  22:58:04  sob
  20. # Added final changes to allow rn and rrn to be built from same sources.
  21. # Revision 4.3.2.2  89/11/07  22:52:22  sob
  22. # Added prelimiary support to allow both rrn and rn to be built from same
  23. # sources.
  24. # Revision 4.3.2.1  89/11/06  01:04:39  sob
  25. # Added RRN support from NNTP 1.5
  26. # Revision 4.3  85/05/01  11:43:27  lwall
  27. # Baseline for release with 4.3bsd.
  28.  
  29. export PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh \$0; kill \$\$)
  30.  
  31. : syntax: newsgroups [pattern] [pipeflag]
  32.  
  33. : System Dependencies
  34.  
  35. : You might want to change pager to a "make column" program if you have one.
  36. : On the other hand, if your kernel does paging, cat would probably do.
  37. pager="${pager-/usr/ucb/more}"
  38. #NORMALactive="${active-/usr/lib/news/active}"
  39.  
  40. #NORMALcase \$active in
  41. #NORMAL~*) active=\`$filexp \$active\` ;;
  42. #NORMALesac
  43.  
  44. #NNTPactive="/tmp/active.\$\$"
  45.  
  46. : End of system dependencies, hopefully
  47.  
  48. #NNTP$rnlib/getactive \$active
  49.  
  50. if $test \$# -ge 2 ; then
  51.     pager=$cat
  52. else
  53.     $echo "Completely unsubscribed newsgroups:"
  54. fi
  55.  
  56. dotdir=\${DOTDIR-\${HOME-\$LOGDIR}}
  57.  
  58. : Throwing .newsrc into the pot twice is a lovely hack to prevent
  59. : bogus newsgroups from showing up as unsubscribed.
  60.  
  61. $cat \$dotdir/.newsrc \$dotdir/.newsrc \$active | \\
  62. $sed -n    -e '/^options/d' \\
  63.     -e '/^[     ]/d' \\
  64.     -e '/^control/d' \\
  65.     -e '/^to\./d' \\
  66.     -e 's/^\([^ !:]*\)[ !:].*\$/\1/' \\
  67.     -e "/.*\$1/p" | \\
  68. $sort | $uniq -u | \$pager
  69. if $test \$# -ge 2 ; then
  70.     exit
  71. fi
  72. $echo $n "[Type return to continue] $c"
  73. read tmp
  74. $echo ""
  75. $echo "Unsubscribed but mentioned in .newsrc:"
  76. $sed -n < \$dotdir/.newsrc \\
  77.     -e "/\$1.*!/"'s/^\([^!]*\)!.*\$/\1/p' | \\
  78. $sort | \$pager
  79. !GROK!THIS!
  80. case "$isrrn" in
  81. define)  sed < newsgroups -e '/^#NNTP/s/^#NNTP//' -e '/^#NORMAL/d' > newsgroups.new ;;
  82. *) sed < newsgroups -e '/^#NNTP/d' -e '/^#NORMAL/s/^#NORMAL//' > newsgroups.new ;;
  83. esac
  84. mv newsgroups.new newsgroups
  85. $eunicefix newsgroups
  86. chmod 755 newsgroups
  87.