+sources.redhat.com translation.
[nethome.git] / bin / changelogget
1 #! /bin/sh
2 # $Id$
3
4 v=true
5 if [ "$1" = "-n" ];then
6         v=false
7         shift
8 fi
9 for arg in "$@";do
10         # http://sourceware.org/ml/gdb-cvs/2099-99/msg99999.html
11         if [ "$arg" != "${arg#http://sources.redhat.com/}" ];then
12                 arg="http://sourceware.org/${arg#http://sources.redhat.com/}"
13         fi
14         if [ "$arg" != "${arg#http://sourceware.org/ml/}" -a "$arg" != "${arg%.html}" ];then
15                 echo >&2 -n '*'
16                 echo "$arg"
17                 echo
18                 changelogget -n $(wget -q -O - "$arg" | sed -n -e 's/&amp;/\&/g' -e 's#^<a \+href="\(.*\)">\1</a>$#\1#p')
19         elif [ "$arg" != "${arg#http://sourceware.org/cgi-bin/cvsweb.cgi/src/}" ];then
20                 echo >&2 -n '.'
21                 # --- src/gdb/ChangeLog   2008/04/24 08:46:17     1.9308
22                 wget -q -O - "$arg" | diffdecvs | perl -p -e '$c=1 if s{^(?:---|\Q+++\E)(?= \S+/ChangeLog\t)}{###};s{^@@}{##} if $c;'
23         else
24                 echo >&2 "Invalid URL: $arg"
25                 exit 1
26         fi
27 done
28 if $v;then
29         echo >&2 OK
30 fi