كيفية ترجمة أي نص في أوبونتو

ترجمة ubuntu

اليوم ، مع وجود العديد من الأجهزة المتصلة بالإنترنت والعديد من المواقع التي يمكن زيارتها على الويب ، فمن الطبيعي جدًا أن نجد المعلومات التي نبحث عنها بلغة لا نتحدث بها. يمكننا حتى أن نجد نصًا بلغة نعتقد أننا نعرفها جيدًا ونقرأ كلمة لا نعرف معناها. في تلك الحالات ماذا نفعل؟ حسنًا ، الشيء الطبيعي هو الرجوع إلى صفحة المترجم ، مثل Bing أو Google ، لكن ألن يكون من الأفضل لو كانت لدينا طريقة أسرع وأكثر راحة للقيام بذلك؟ حسنًا ، مثل كل شيء تقريبًا في أنظمة التشغيل المستندة إلى Linux ، هناك عدة طرق لتحقيق ذلك وفي هذه المقالة سوف نعلمك كيفية ترجمة أي نص في أوبونتو، طالما أن اللغة مضمنة في مترجم Google.

من الممكن أن يعطي الدليل التالي بعض الاحترام للمستخدمين الذين لا يرغبون في لمس الجهاز الطرفي كثيرًا ، لكنه لا يشرح أي شيء مختلف عما عندما نقول كيفية إضافة مستودع وتثبيت حزمة غير موجودة في النظام الرسمي منها. الفرق هو ذلك لنقم بإنشاء ملف سيناريو سيسمح لنا ذلك بإطلاق المكونات المتوفرة في Ubuntu. ومع ذلك ، لديك أدناه الخطوات التي يجب اتباعها لترجمة أي نص في Ubuntu.

كيفية ترجمة النصوص باستخدام أوبونتو

إنشاء سيناريو notitrans

  1. من أجل استخدام سيناريو، علينا القيام بثلاث منشآت:
    1. libnotify- بن لتلقي إشعارات سطح المكتب.
    2. مجلد مشترك للحصول على ترجمة جوجل.
    3. xsell لقراءة النص الذي وضعناه.

للقيام بذلك ، نفتح Terminal ونكتب ما يلي:

sudo apt-get install libnotify-bin wget xsel
  1. بعد ذلك ، نقوم بإنشاء ملف نصي جديد (فقط انقر بزر الماوس الأيمن على سطح المكتب وحدد مستند جديد / مستند فارغ).

مستند جديد

  1. داخل المستند ، يتعين علينا لصق ما يلي:
#!/usr/bin/env bash
notify-send --icon=info "$(xsel -o)" "$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=es&dt=t&q=$(xsel -o | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2, $6}')"
  • حفظ notitrans
  • ملاحظة: في سيناريو يوجد أعلاه سطر يقول "tl = es". إذا كنت لا تريد الترجمة إلى الإسبانية ، فما عليك سوى تغيير اللغة التي لديك خلف رمز المساواة (=).
  1. نحفظ الملف السابق ونسميه "notitrans" (بدون علامات الاقتباس).
  2. بعد ذلك ، يتعين علينا تحويل المستند السابق إلى ملف قابل للتنفيذ. للقيام بذلك ، نقوم بنسخه في مجلدنا الشخصي ونكتب ما يلي في Terminal:
chmod +x ~/notitrans
  1. الخطوة التالية نقل الملف الذي تم إنشاؤه إلى المجلد / البيرة / المحلية / بن / بالأمر التالي:
sudo mv ~/notitrans /usr/local/bin/
  1. نحن لم ننتهي بعد. لدينا (على الأقل) خطوتان أخريان: علينا الآن إنشاء اختصار لوحة المفاتيح. للقيام بذلك نذهب إلى إعدادات النظام / لوحة المفاتيح / الاختصارات ونضغط على رمز الجمع (+). سترى نافذة مثل ما يلي:

الاختصار notitrans

  1. في النافذة ، نضع الاسم الذي نريده (أعطيته Notitrans) والأمر "notitrans" (بدون علامتي الاقتباس). يمكننا وضع أمر آخر ، ولكن سيتعين علينا استخدام نفس الاسم الذي نحفظ به سيناريو.
  2. الآن تحتاج فقط إلى إنشاء مجموعة المفاتيح. للقيام بذلك ، نضغط على النص الذي يقول معطل وأدخل المجموعة المطلوبة. لقد استخدمت Control + period (.) ، لأنني أعلم أنه لا توجد مجموعة مفاتيح تستخدم هذا الاختصار.

المتغيرات

إذا لم تعجبك الطريقة التي تظهر بها الترجمة لنا بامتداد سيناريو أعلاه ، والتي في الواقع لا يمكنها عرض ترجمات طويلة جدًا لأنها محدودة بحجم الإشعار ، يمكننا أيضًا استخدام بعض المتغيرات. لاستخدام هذه المتغيرات ، سيتعين علينا القيام بنفس العملية مثل السابقة (قم أيضًا بتغيير اللغة إذا أردنا) ، ولكن باستخدام الكود المقابل في الخطوة 2.

باستخدام Xclip

إذا أردنا ذلك بالإضافة إلى الإشعار ، فإننا نقوم بنسخ الترجمة إلى الحافظة ، وسنستخدمها أيضًا xclip. أولاً نتأكد من تثبيته بالأمر:

sudo apt-get install xclip

وفي سيناريو التي سننشئها نكتب ما يلي:

#!/usr/bin/env bash
text="$(xsel -o)"
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=es&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"

باستخدام Zenity

سخاء

وإذا كان ما نريده هو إظهار الصورة السابقة (المفضلة لدي) ، فسوف نتأكد من تثبيت Zenity عن طريق كتابة الأمر:

sudo apt-get install zenity

وفي الوثيقة نكتب ما يلي:

#!/usr/bin/env bash
text="$(xsel -o)"
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=es&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

هل حاولت أي من هذه مخطوطات؟ ما رأيك؟


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   Aimarcongeti قال

    كان بإمكانك تغيير المصيد ، هذا يغني قليلاً

  2.   مشغول قال

    كم هو عظيم ... كيف سريع ...

    1.    Aimarcongeti قال

      على الأقل قمت بالربط بـ xD الأصلي

  3.   Aimarcongeti قال

    ممتاز ، وهل سيعمل مع مترجمين آخرين مثل Yandex أو Bing؟

  4.   Aprendiz قال

    وإذا أضفت هذا السطر في النهاية
    spd قل "$ translate"
    يغنيها لك بهذا الصوت الرومانسي
    من الواضح أنه من الضروري تثبيت spd-say

  5.   جيمي أولانو قال

    نحن هنا لنتعلم:

    —لم أكن أعرف شيئًا عن xsel على الرغم من أنه تم إنشاؤه عام 2001 بواسطة Conrad Parker:
    http p: / / linux.die .net / man / 1 / xsel <- (أزل المسافات وستنتقل).
    هذه هي الطريقة التي يمكننا بها كتابة "xsel -o" وسوف تطبع على سطر الأوامر ما اخترناه وخزناه في حافظة Ubuntu.

    —ماذا عن الإخطار والإرسال لأنني لم أكن أعرف عنه أيضًا (تواريخ التحديث الأخيرة من عام 2008)
    لكن القراءة في:
    ht tp: // manpages.ubu ntu.com/man pages / gutsy / man1 / notify-send.1.html
    يمكننا التدرب على إرسال أي رسالة بيانياً إلى Ubuntu:
    notify-send –icon = info "HELLO WORLD!"
    يمكننا إرسال عنوان ورسالة للإشعار ، حاول:
    notify-send –icon = معلومات التاريخ "` date` "
    {حذار من تلك الاقتباسات المفردة داخل علامات الاقتباس المزدوجة ، فإن رمز ASCII هو 239}

    - ناهيك عن أداة wget الموقرة ، ستتذكر فقط مدى قوتها في رابط الويب هذا:
    ht tp: // blog.phen obarbital.info/ 2015/02 / هل تعلم كيف تنزل-a-complete-website-wget /

    - لم يكن أمر sed معروفًا بالنسبة لي أبدًا ("أنا فقط أعرف أنني لا أعرف أي شيء") ولكن عند التحقيق يمكننا أن نرى مدى فائدته.
    http: // ww w.folkstal k.com/2012 /01/sed-command-in-unix-examples.html
    لقد تم "تشغيل" الأمثلة وهي تعمل بشكل جيد على ubuntu الخاص بي.

    هنا وصلنا إلى "الوصول":
    الترجمة لا تعمل ، لذلك قمت "بتشريح" أوامر المكون لمعرفة أيها يعمل بشكل جيد وأيها يعمل بشكل سيئ.

    لهذا طلبت المساعدة من الحبيب الذي يعرف كل شيء DUCKDUCKGO ووجدت:

    ht tp: // w ww. webupd8.or g / 20 16/03 / translate-any-text-you-select-on-your.html

    "النص الأصلي ، الذي يعود تاريخه إلى عام 2012 ، لم يعد يعمل ، ومع ذلك ، تمكنت من إصلاحه وقررت مشاركته معك."

    وأعتقد أنه لا يعمل لأن:

    "Google Translate API هي خدمة مدفوعة. لترجمات مواقع الويب ، نشجعك على استخدام أداة Google Website Translator."

    https: // cloud. جوجل. كوم / ترجمة / v2 / using_rest

    لذلك إذا كان لديك القليل من الدولارات لتجنيبها ، فإنهم يكلفون ملايين الرسائل:
    https: // cloud. جوجل. كوم / ترجمة / v2 / التسعير

    - هذه هي نظريتي حول لماذا لا تعمل إذا كان شخص ما يعرف كيف يضعها في وضع توضيحي ولأغراض تعليمية ، ثم "انشر" إجابتك ، شكرًا لاهتمامك!

  6.   جيمي أولانو قال

    في حالة عدت للمتابعة خطوة بخطوة (وبعنوان IP مختلف للاتصال بـ Google لأنه "حظرتني لفترة وجيزة بسبب حركة مرور غير عادية" - من غير المعتاد أن نستخدم أداة GNU / Linux بدون رأس ها ها ها) الخطوات وصفها المواطن الروسي
    http ps: // سيكون هناك ahabr.ru/ post / 137215 / وهو لا يعمل أيضًا ، إنه أمر سيئ للغاية. 8- (

    إيجابيات وسلبيات

    + Возможность переводить фрагMENTы текста.
    + Требуется минимальное количество действий получения перевода.
    + Podderzhka عملي مقابل yazykov.
    + Отсутствие необходимости установке отдельных словарей.

    - Не работает без подключения к интернету.
    - ет возможности выделить текст перевода.
    * Проверенно в Unity ، GNOME2 ، Xfce4 ، KDE4.

    "إيجابيات وسلبيات

    + القدرة على ترجمة أجزاء النص.
    + يتطلب الحد الأدنى من الإجراءات للحصول على الترجمة.
    + دعم عمليا جميع اللغات.
    + لا حاجة لتثبيت قواميس محددة.

    - لا يعمل بدون اتصال بالإنترنت.
    - غير قادر على تعيين نص مترجم.
    * تم اختباره على Unity و Gnome2 و Xfce4 و KDE4. »

    الترجمة من الروسية إلى الإسبانية بفضل «ترجمة جوجل».

    1.    جيمي أولانو قال

      رد مؤلف المنشور باللغة الإنجليزية بلطف وأكد شكوكي: لقد أساءت استخدام خدمة جوجل باختباراتي:
      https://twitter.com/ks7000/status/708398151351341058

      الآن ، بعد ستة أيام ، حاولت مرة أخرى بحذر شديد حتى لا أرتكب أخطاء وحاولت أيضًا الترجمة من الإنجليزية إلى الفرنسية عن طريق تغيير "tl = fr" وإليكم النتيجة:
      https://twitter.com/ks7000/status/708397624890662915

      شكرا جزيلا لكم اليوم تعلمت شيئا جديدا! * -)

  7.   موريشيوس قال

    لعنة الوقت الذي أردت فيه تثبيت المترجم ... واجهت بعض المشاكل وعندما أردت إلغاء تثبيته عبر الجهاز الطرفي لم يعد بإمكاني الاتصال بالإنترنت أو السلكية أو wifi ، أعتقد أنني قمت بإلغاء تثبيت برنامج تشغيل بطاقة الشبكة أو شيء من هذا القبيل . كيف أقوم بتثبيت هذه الأشياء في وضع عدم الاتصال؟ مع تحياتي

  8.   مانويل أرنولفو بلاتا إسبينوزا قال

    ممتاز. لقد حللت حياتي بهذا المنشور. كنت أرغب في الحصول على مترجم سهل الاستخدام دون الحاجة إلى الدخول إلى المتصفح أو أي برنامج. شكرا جزيلا.

  9.   جديد_سافاج قال

    لقد أحببته وأجده مفيدًا جدًا ، لكن ... هل يعرف أحد سبب إضافة حرف "en" في نهاية كل الترجمات ؟؟؟

    1.    كارلوس قال

      جيد!

      على الخط:

      | sed «s / ،،، 0]] ،،. * // g» | awk -F '»' {print $ 2، $ 6} ')»

      إزالة (، 6 دولارات) لذلك يبدو مثل هذا:

      | sed «s / ،،، 0]] ،،. * // g» | awk -F '»' '{print $ 2}')»

      و مستعد !! بدون "في" في النهاية.

      تحياتي!

  10.   كارلوس قال

    جيدة.

    خذ بعيدا (، 6 دولارات) وانتهيت.

    تحية.

  11.   ملاك قال

    شكرا جزيلا على المساهمة وعلى «Quita (، $ 6)» ؛-P

  12.   روبن جوتيريز قال

    شكرًا جزيلاً على المساهمة ، لقد نجحت معي في مسار / usr / bin

  13.   روبن جوتيريز قال

    لإزالة "en en" التي تظهر في النهاية ، قم بتغيير الرمز كما يلي

    #! / usr / bin / env bash
    النص = »$ (xsel -o)»
    ترجم = »$ (wget -U« Mozilla / 5.0 »-qO -« http://translate.googleapis.com/trans$
    ترجم 2 = $ {ترجم٪ ؟؟؟؟؟؟}
    صدى "$ translate2" | xclip -selection الحافظة
    notify-send –icon = info "$ text" "$ translate2"

    وعلى استعداد

  14.   r قال

    لإزالة في

    تعديل السطر الأخير لهذا الغرض

    notify-send –icon = info "$ text" "$ {translate: 0: -17}"

  15.   ماتياس قال

    حولا

    عندما اضغط على chmod + x ~ / notitrans ، يخبرني أن الملف غير موجود
    لقد وصلت إلى هذا الحد ...

  16.   سيزار الثيري قال

    مرحبًا ، عندما أضع فقرة لترجمتها فقط تترجم الجملة الأولى ، بقدر ما توجد نقطة ، فهي لا تترجمها بالكامل ويجب أن أكون من نقطة إلى نقطة لترجمة الفقرة بأكملها ، كيف يمكنني حلها ؟