لینوکس و من

نمایش ترجمه در نوتیفیکیشن!

نویسنده : امین | تاریخ: 1395/06/19

یک ترفند بسیار جالب و کاربردی برای استفاده از گوگل ترنسلیت. میتونیم با این اسکریپت ترجمه ی هر لغت یا جمله ای که میخوایم رو در نوتیفیکیشن داشته باشیم!


برای اینکار این اسکریپت رو در یک فایلی ذخیره کنید:
مثلا gedit ~/Programs/notitrans

با این محتوی:

#!/usr/bin/env bash

####just displays the translation in notify-osd
#notify-send --icon=info "$(xsel -o)" "$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=en&dt=t&q=$(xsel -o | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2, $6}')"

####displays the translation in Zenity
#text="$(xsel -o)"
#translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?#client=gtx&sl=auto&tl=en&dt=t&q=$(echo $text | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2, $6}')"
#echo -e "Original text:" "$text"'\n' > /tmp/notitrans
#echo "Translation:" "$translate" >> /tmp/notitrans
#zenity --text-info --title="Translation" --filename=/tmp/notitrans

####displays the translation in notify-osd and copy to clipboard
text="$(xsel -o)"
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=en&dt=t&q=$(echo $text | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2, $6}')"
echo "$translate" | xclip -selection clipboard
notify-send --icon=info "$text" "$translate"
و بعد به اون مجوز اجرایی بدید:
chmod +x ~/Programs/notitrans
حالا یه کیبورد شورتکات براش تعیین کنید. هر دسکتاپی روش خودش رو برای اینکار داره. در قسمت دستور باید مسیر کامل اسکریپت رو بنویسید.
حالا در هر جایی که باشید اگه واژه یا جمله ای رو انتخاب کنید و شورتکاتی که تعیین کرده بودید بفشارید! معنی اون عبارت در نوتیفیکیشن نشون داده میشه. اما چند نکته:
اول اینکه پر واضحه برای ترجمه به زبانهای دیگه میبایست en رو تغییر بدید. مثلا برای ترجمه از هر زبانی به فرانسه بجای en بذارید fr
دوم اینکه این اسکریپت میشه سه جور باشه. همون طور که در بالا میبینید در خود اسکریپت توضیح داده شده. اولیش ترجمه رو در نوتیفیکیشن نشون میده. دومی در zenity نشون میده و سومی در نوتیفیکیشن نشون میده و بوسیله xclip اون رو در کلیپبورد کپی هم میکنه. بنابراین باید xclip هم نصب داشته باشید. علاوه بر اون xsel هم باید نصب باشه. هرکدوم که مورد نیاز شماست uncomment کنید. یعنی # رو از ابتدای تک تک خطوطش بردارید و بقیه رو comment کنید.

لینک‌های مرتبط

محمد اعظمی
1395/06/31 03:38
منبع اصلی مطلب رو خوندم. مثل اینکه فراموش کردی گوشزد کنی قبل از استفاده از این اسکریپت باید دستور زیر اجرا بشه
sudo apt-get install libnotify-bin wget xsel
چونکه libnotify-bin به صورت پیشفرض برای من نصب نبود شاید برای دیگران هم نصب نباشه
پاسخ امین : ممنون که گفتی. libnotify الان توی اکثر دسکتاپها نصبه. اون دو تا هم در آخرش گفتم که باید نصب باشند. ممنون از نظرت.
 
لبخندناراحتچشمک
نیشخندبغلسوال
قلبخجالتزبان
ماچتعجبعصبانی
عینکشیطانگریه
خندهقهقههخداحافظ
سبزقهرهورا
دستگلتفکر
نظرات پس از تایید نشان داده خواهند شد.

برای کپی پیست کردن در متن نظرات کلید shift را نگه دارید و بعد right click کنید.