LINUX.ORG.RU

Ответ на: комментарий от kaj

Вы батенька весьма информативны. Потестю, посмотрим, что за зверь.

teamfighter ()

Can't locate WebService/Google/Language.pm in @INC (@INC contains: /etc/perl /usr/lib64/perl5/site_perl/5.12.2/x86_64-linux /usr/lib64/perl5/site_perl/5.12.2 /usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux /usr/lib64/perl5/vendor_perl/5.12.2 /usr/lib64/perl5/5.12.2/x86_64-linux /usr/lib64/perl5/5.12.2 /usr/lib64/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.12.1/x86_64-linux /usr/lib64/perl5/vendor_perl/5.12.1 /usr/lib64/perl5/vendor_perl /usr/local/lib/site_perl .) at ./gtr line 11.
BEGIN failed--compilation aborted at ./gtr line 11.

anonymous ()
Ответ на: комментарий от teamfighter

Поставил. Вроде бы даже работает. Особенно забавно маны переводит.

teamfighter ()
Ответ на: комментарий от kaj

подлец! теперь моя гента превратилась в слаку :'(

anonymous ()

А у меня на баше

С автоопределением языка

usage:

t google translate

t гугл переводчик

Еще один use-case:

t $(t холодно зимой)

translate:

#!/bin/bash

die()
{
	echo -e "\e[1;31m$1\e[0m" >&2
	exit 1
}


[ $# -lt 3 ] && die "usage: $0 text_to_translate input_languge output_languge";

input=$(echo "$1" | sed 'y/+/ /; s/%/\\x/g'); # urlencode
lang_input=$2
lang_output=$3

output=$(
		wget -q -O- "http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=$input&langpair=$lang_input%7C$lang_output" | 
		egrep -o '\{"translatedText":".+"\}' | sed -r 's/^\{"translatedText":"|"\}$//g'
        )

[ -z "$output" ] && die "translate error" || echo "$output";

t:

#!/bin/sh

text="$*"
en=0
ru=0

for((i=0; i<${#text}; i++))
do
	printf -v ord "%d" "'${text:$i:1}"
	
	if [ $ord -ge 1072 -a $ord -le 1103  -o  $ord -eq 1105  -o  $ord -ge 1040 -a $ord -le 1071  -o  $ord -eq 1025 ]
	then
		((ru++))
	elif [ $ord -ge 65 -a $ord -le 90  -o  $ord -ge 97 -a $ord -le 122  ]
	then
		((en++))
	fi
done

if [ $en -gt $ru ]
then
	translate "$text" en ru
else
	translate "$text" ru en
fi

Olegymous ★★ ()
Ответ на: А у меня на баше от Olegymous

круто
разница остается только в опциях + форматирование (туда и обратно)/умная разбивка текста(> 5000 символов)

ага, определение тоже пришлось добавить, гугл не всегда понимает

kaj ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.