#!/bin/sh
#
# Übersetzung mit Hilfe von Altavistas Babelfish \
exec tclsh $0 $@
package require opt
package require http
tcl::OptProc main {
{text -string "Text"}
{-langs -choice {en_de en_fr en_it fr_en fr_de de_en de_fr it_en} "Sprachen, Default en_de"}
} {
set url
http://world.altavista.com/tr
append url "?[http::formatQuery tt urltext urltext "$text" lp $langs]"
if {[catch {http::geturl $url -timeout 30000} token]} {
error "Problem mit Netzwerk: $token"
}
if {[http::ncode $token] != 200} {
error "Problem mit Server, $token"
}
# Brutalmethode zur Datenextraktion
set htmlliste [split [encoding convertfrom UTF-8 [http::data $token]] \n]
http::cleanup $token
set index0 [lsearch -regexp $htmlliste "<textarea"]
set index1 [lsearch $htmlliste "</textarea>"]
if {($index0 < 0) || ($index1 < 0)} {
error "Probleme beim Parsen"
}
set ergebniss [join [lrange $htmlliste $index0 [expr $index1 -1 ]]]
regsub {<textarea rows="3" wrap=virtual cols="56" name="q">} $ergebniss "" ergebniss
puts stdout $ergebniss
exit
}
if {[catch {eval main $argv} err]} {
puts stderr $err
exit
}