async def do_translate(message: types.Message): trl = Translator() if message.reply_to_message and (message.reply_to_message.text or message.reply_to_message.caption): if len(message.text.split()) == 1: await message.delete() return target = message.text.split()[1] if message.reply_to_message.text: text = message.reply_to_message.text else: text = message.reply_to_message.caption try: tekstr = await trl(text, targetlang=target) except ValueError as err: await message.reply(f"Error: `{str(err)}`", parse_mode='Markdown') return else: if len(message.text.split()) <= 2: await message.delete() return target = message.text.split(None, 2)[1] text = message.text.split(None, 2)[2] try: tekstr = await trl(text, targetlang=target) except ValueError as err: await message.reply("Error: `{}`".format(str(err)), parse_mode='Markdown') return await message.reply( f"*Translated:*\n```{tekstr.text}```\n\n*Detected Language:* `{(await trl.detect(text))}`", parse_mode='Markdown')
async def _(event): if event.fwd_from: return input_str = event.pattern_match.group(1) if event.reply_to_msg_id: previous_message = await event.get_reply_message() text = previous_message.message lan = input_str or "en" elif "|" in input_str: lan, text = input_str.split("|") else: await event.edit("`.tr LanguageCode` as reply to a message") return # text = emoji.demojize(text.strip()) # No need this. lan = lan.strip() translator = Translator() try: translated = await translator(text, targetlang=lan) after_tr_text = translated.text source_lan = await translator.detect(f'{translated.orig}') transl_lan = await translator.detect(f'{translated.text}') output_str = "Detected Language: **{}**\nTRANSLATED To: **{}**\n\n{}".format( source_lan, transl_lan, after_tr_text ) await event.edit(output_str) except Exception as exc: await event.edit(str(exc))
async def translate(_, m: Message): trl = Translator() if m.reply_to_message and (m.reply_to_message.text or m.reply_to_message.caption): if len(m.text.split()) == 1: target_lang = "en" else: target_lang = m.text.split()[1] if m.reply_to_message.text: text = m.reply_to_message.text else: text = m.reply_to_message.caption else: if len(m.text.split()) <= 2: await m.reply_text( "Provide lang code.\n[Available options](https://telegra.ph/Lang-Codes-11-08).\n<b>Usage:</b> <code>/tr en</code>", ) return target_lang = m.text.split(None, 2)[1] text = m.text.split(None, 2)[2] detectlang = await trl.detect(text) try: tekstr = await trl(text, targetlang=target_lang) except ValueError as err: await m.reply_text(f"Error: <code>{str(err)}</code>") return LOGGER.info(f"{m.from_user.id} used translate cmd in {m.chat.id}") return await m.reply_text( f"<b>Translated:</b> from {detectlang} to {target_lang} \n<code>``{tekstr.text}``</code>", )
async def translate(_, message): trl = Translator() if message.reply_to_message and (message.reply_to_message.text or message.reply_to_message.caption): if len(message.text.split()) == 1: await message.delete() return target = message.text.split()[1] if message.reply_to_message.text: text = message.reply_to_message.text else: text = message.reply_to_message.caption try: tekstr = await trl(text, targetlang=target) except ValueError as err: await edit_or_reply( message, text=f'Error: `{str(err)}`', parse_mode='Markdown', ) return else: if len(message.text.split()) <= 2: await message.delete() return target = message.text.split(None, 2)[1] text = message.text.split(None, 2)[2] try: tekstr = await trl(text, targetlang=target) except ValueError as err: await edit_or_reply( message, text='Error: `{}`'.format(str(err), ), parse_mode='Markdown', ) return await edit_or_reply( message, text='**Translated:**\n```{}```\n\n**Detected Language:** `{}`'.format( tekstr.text, (await trl.detect(text)), ), parse_mode='Markdown', )
async def translate(_client, message): trl = Translator() if message.reply_to_message and ( message.reply_to_message.text or message.reply_to_message.caption ): if len(message.text.split()) == 1: await message.reply_text( "Provide lang code.\n[Available options](https://telegra.ph/Lang-Codes-11-08).\n**Usage:** `/tr en`" ) return target = message.text.split()[1] if message.reply_to_message.text: text = message.reply_to_message.text else: text = message.reply_to_message.caption detectlang = await trl.detect(text) try: tekstr = await trl(text, targetlang=target) except ValueError as err: await message.reply_text(f"Error: `{str(err)}`") return else: if len(message.text.split()) <= 2: await message.reply_text( "Provide lang code.\n[Available options](https://telegra.ph/Lang-Codes-11-08).\n**Usage:** `/tr en`" ) return target = message.text.split(None, 2)[1] text = message.text.split(None, 2)[2] detectlang = await trl.detect(text) try: tekstr = await trl(text, targetlang=target) except ValueError as err: await message.reply_text("Error: `{}`".format(str(err))) return await message.reply_text(f"**Translated:**\n```{tekstr.text}```")
async def translate(text): tr = Translator() teks = await tr(text, targetlang="es") return teks.text
InlineKeyboardButton, ) from tg_bot import dispatcher, kp from pyrogram import filters from pyrogram.types import Message from tg_bot.modules.disable import DisableAbleCommandHandler from tg_bot.modules.language import gs def get_help(chat): return gs(chat, "gtranslate_help") __mod_name__ = "Translator" trans = Translator() @kp.on_message(filters.command(["tl", "tr"])) async def translate(_, message: Message) -> None: reply_msg = message.reply_to_message if not reply_msg: await message.reply_text("Reply to a message to translate it!") return if reply_msg.caption: to_translate = reply_msg.caption elif reply_msg.text: to_translate = reply_msg.text try: args = message.text.split()[1].lower() if "//" in args:
from gpytranslate import Translator from pyrogram import filters from naruto import naruto, Command, AdminSettings, edrep trl = Translator() __MODULE__ = "Translate" __HELP__ = """ Translates some text by give a text or reply that text/caption. Translate by Google Translate. ──「 **Translate** 」── -> `tr (lang) (*text)` Give a target language and text as args for translate to that target. Reply a message to translate that. * = Not used when reply a message! """ @naruto.on_message( filters.user(AdminSettings) & filters.command("tr", Command)) async def translate(_, message): trl = Translator() if message.reply_to_message and (message.reply_to_message.text or message.reply_to_message.caption): if len(message.text.split()) == 1: await message.delete() return target = message.text.split()[1] if message.reply_to_message.text: text = message.reply_to_message.text
# published by the Free Software Foundation, either version 3 of the # License, or (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. from typing import Iterable from gpytranslate import Translator tr = Translator() # See https://cloud.google.com/translate/docs/languages LANGUAGES: Iterable[str] = ( "af", "sq", "am", "ar", "hy", "az", "eu", "be", "bn", "bs", "bg", "ca",