LINUX.ORG.RU

Google Translate CLI

 , ,


7

3

Google Translate CLI — инструмент, который позволяет вам переводить текст через командную строку, используя при этом Google Translate.

>>> Подробности на английском

★★★★★

Проверено: Shaman007 ()
Последнее исправление: Shaman007 (всего исправлений: 1)

Отлично )

Но в принципе можно же было засунуть в скрипт однострочник на баше с курлом. Хотя наверное тут подобное и сделали

vertexua ★★★★★
()

The original BWK awk («One True AWK») will not work

Круто.

NaN
()

только что поставил - годно, работает отлично. А вообще, то CLI утилиты - самое лучшее что есть на свете. Не хватает только консольной звонилки.

reprimand ★★★★★
()
Ответ на: комментарий от reprimand

Под каждым словом подписыаюсь.
Виндомакизация Линуха - хуже любого рака и чумы.

Hertz ★★★★★
()
$ cat ~/bin/translate.sh 
#!/usr/bin/env bash
notify-send -u critical "$(xsel -o)" "$(wget -U "Mozilla/5.0" -qO - "http://translate.google.com/translate_a/t?client=t&text=$(xsel -o | sed "s/[\"'<>]//g")&sl=auto&tl=ru" | sed 's/\[\[\[\"//' | cut -d \" -f 1)"
silvergh0st
()

Такие полезности надо в репы добавлять, почему не добавляют?

Deleted
()
Ответ на: комментарий от reprimand

А вообще, то CLI утилиты - самое лучшее что есть на свете.

+100500

sT331h0rs3 ★★★★★
()

Чуть улучшенный «gt» мегабакса.

#!/bin/sh

UA='Mozilla/5.0'

if [ x"${*}" = x'codes' ]; then
	curl -sA"${UA}" http://translate.google.com/ \
		| xmllint --html --format - 2>&- \
		| sort -u \
		| sed -rn 's/^<option value="([^"]+)">([^<]+)<\/option>.*/\1: \2/p'
elif [ $# -lt 3 ]; then
	cat >&2 <<EOF
USAGE: gt <source language code> <target language code> <text>
       gt codes
EOF
	exit 1
else
	sl="${1}"
	tl="${2}"
	width="$(tput cols || echo 80)"
	shift 2
	curl -sA"${UA}" \
			-d 'ie=UTF8' \
			-d 'hl=en' \
			-d "sl=${sl}" \
			-d "tl=${tl}" \
			-d "q=${*}" \
			http://translate.google.com \
		| xmllint --html --format - 2>&- \
		| grep result_box \
		| lynx -width="${width}" -dump -stdin \
		| sed 's/^\s*//;/^$/d'
fi
anonymous
()

Вот если бы кто-нибудь оффлайновый словарь выдрал из официального приложения для андроида, и прикрутил его к линуксу, вот это был бы прорыв. А стопятый скрипт, парсящий сайт гугла - да, это настоящее достижение открытого софта.

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

оффлайновый словарь выдрал из официального приложения для андроида, и прикрутил его к линуксу

Что-то я такого не припомню, какой package id у приложения?

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

Нижняя справа в «Похожие темы», если конечно выдача совпадает)

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

Может у человека 7 классов образования по классу фортепьяно, а ещё лучше баяна, и ему невнапряг со своей стороны печать в консоль 600 знаков в минуту, и при этом хочется, чтобы с другой стороны собеседнику отдавался голос, причём желательно «твой», предварительно обученный на нейронной сети, а не какой-то там механический. Ну и соответственно, наоборот, чтобы произносимое собеседником выводилось в консоль. Вот как-то так я это понял).

anonymous
()

Если из-за этих нативных поделок гугель выпилит мобильную версию транслейта, разработчиков придётся анально четвертовать.

MiniRoboDancer ★☆
()
Ответ на: комментарий от ABW

что-то типа такого:

$ call +12345678901
Detected phone number: using saved operator profile ~/.call/profile
Discovering network... connected!
Your price for +12(345) is 0.05 (currency: UAH)
Call... you are connected!

|-------------------------------------|
| ###  #      ### ###    15:45 UTC+2  |
| # # ##   #  # # #      01.01.2014   |
| # #  #      # # ###                 |
| # #  #   #  # #   #       GSM       |
| ### ###     ### ###                 |
|-------------------------------------|

Press Q or ESC to end the call.
или такого:
$ call echo123
Detected skype login: using user login profile ~/.call/skypeprofile
Discovering network... connected!
Attempt to use skype transport... success.
Call... you are connected!

|-------------------------------------|
| ### ###      #  ###    20:56 UTC+3  |
| # #   #  #  ##    #    02.03.2010   |
| # # ###      #    #                 |
| # # #    #   #    #       Skype     |
| ### ###     ###   #                 |
|-------------------------------------|

Press Q or ESC to end the call.

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

А при том, что она легко парсится, веб-версия чуток поогороженей, а с мобильной такого не сделаешь.

MiniRoboDancer ★☆
()
Ответ на: комментарий от reprimand

Ну, для голосовых звонков через телефон/GSM-модем я и GUI-шных не знаю (а хотелось бы и тех и других для модема), skype - вряд ли, а вот для SIP вполне достаточно - linphone, сторонний клиент для sflphone, pjsua в pjsip.

ABW ★★★★★
()
Ответ на: комментарий от reprimand

Не хватает только консольной звонилки.

Эээ, «asterisk -rx „channel originate tech/data extension cli-exten@cli-context“ » - обвернуть в скрипт и не парится?

FeyFre ★★★★
()

Опять одно значение на выходе. Можно тогда через яндекс это делать, он даже апи предоставляет на бесплатном основании.

anonymous
()

здорово, но есть sdcv, который работает в офлайне

zarkone ★★
()

Мне вот при всей любви к консоли переводчик в cli не нужен. Гораздо удобнее когда всякие stardict переводят то, что попадает в буфер обмена. Может уже кто-нибудь туда и прикрутил gt или multitran, я не знаю.

anonymous
()

инструмент, который позволяет вам переводить текст через командную строку, используя при этом Google Translate.

вангую, что гугол скоро прикроет эту фичу, также как сделал это с другими полезными сервисами.

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

Чуть улучшенный вариант анонимуса:

#!/bin/bash
#

UA='Mozilla/5.0'
GURI="http://translate.google.com/"
GPATH="translate_a/t"

if [ x"${*}" = x'codes' ]; then
  curl -sA"${UA}" ${GURI} \
  | xmllint --html --format - 2>&- \
  | sort -u \
  | sed -rn 's/^<option value="([^"]+)">([^<]+)<\/option>.*/\1: \2/p'
elif [ $# -lt 3 ]; then
  cat >&2 <<EOF
USAGE: $(basename "$0") <source language code> <target language code> <text>
       $(basename "$0") codes
EOF
  exit 1
else
  sl="${1}"
  tl="${2}"
  shift 2
  curl -sA"${UA}" \
    -d 'ie=UTF8' \
    -d 'hl=en' \
    --data-urlencode "sl=${sl}" \
    --data-urlencode "tl=${tl}" \
    -d "client=t" \
    --data-urlencode "text=${*}" \
    ${GURI}${GPATH} \
  | sed 's/\[\[\[\"//' \
  | cut -d \" -f 1
fi
pS
()
Ответ на: комментарий от Marlboro

Нет. Пробуй перехватить запросы от браузера. Скрипт - по аналогии.

pS
()

Спасибо, отличная штука.

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