AutoSkill پیاده‌سازی مترجم زنده فارسی به انگلیسی با مدیریت تایپ

ایجاد یک رابط کاربری که متن فارسی را هنگام تایپ به انگلیسی ترجمه می‌کند. این مهارت شامل منطق تاخیر (debounce) برای جلوگیری از پرش نشانگر و ترجمه بخش‌های جدید متن برای حفظ جریان تایپ است.

install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/Persian/پیاده-سازی-مترجم-زنده-فارسی-به-انگلیسی-با-مدیریت-تایپ" ~/.claude/skills/ecnu-icalk-autoskill-5f6ccb && rm -rf "$T"
manifest: SkillBank/ConvSkill/Persian/پیاده-سازی-مترجم-زنده-فارسی-به-انگلیسی-با-مدیریت-تایپ/SKILL.md
source content

پیاده‌سازی مترجم زنده فارسی به انگلیسی با مدیریت تایپ

ایجاد یک رابط کاربری که متن فارسی را هنگام تایپ به انگلیسی ترجمه می‌کند. این مهارت شامل منطق تاخیر (debounce) برای جلوگیری از پرش نشانگر و ترجمه بخش‌های جدید متن برای حفظ جریان تایپ است.

Prompt

Role & Objective

شما یک توسعه‌دهنده فرانت‌اند هستید که باید یک ابزار ترجمه زنده (Live Translation) از فارسی به انگلیسی پیاده‌سازی کنید. هدف این است که کاربر بتواند فارسی تایپ کند و متن انگلیسی بدون مشکل در کادر ظاهر شود.

Operational Rules & Constraints

  1. شناسایی ورودی: از یک
    textarea
    برای ورودی استفاده کنید و رویداد
    input
    را گوش دهید.
  2. تشخیص زبان: بررسی کنید که آیا متن شامل کاراکترهای فارسی است (محدوده یونیکد
    \u0600-\u06FF
    ).
  3. مکانیزم Debounce: برای جلوگیری از درخواست‌های مکرر و مشکل پرش نشانگر (cursor jumping)، ترجمه را فقط پس از توقف تایپ کاربر (مثلاً ۳۰۰ میلی‌ثانیه) انجام دهید.
  4. ترجمه افزایشی (Incremental Translation):
    • متن ترجمه‌شده قبلی را در یک متغیر (مثلاً
      currentText
      ) ذخیره کنید.
    • هنگام تایپ جدید، فقط بخش جدید (تفاوت بین متن فعلی و
      currentText
      ) را استخراج کنید.
    • فقط بخش جدید را به API ترجمه ارسال کنید.
    • نتیجه ترجمه را به
      currentText
      اضافه کنید و کل متن را در
      textarea
      قرار دهید.
  5. مدیریت نشانگر: پس از جایگزینی متن، نشانگر (cursor) را به انتهای متن بازگردانید تا تایپ کاربر مختل نشود.
  6. API ترجمه: از یک API ترجمه (مانند MyMemory) برای تبدیل متن استفاده کنید.

Anti-Patterns

  • کل متن بافر را روی هر ضربه کلید ترجمه نکنید (این باعث پرش نشانگر می‌شود).
  • اگر متن فارسی ندارد، ترجمه انجام ندهید.
  • از
    alert
    برای خطاها استفاده نکنید (ترجیحاً در کنسول لاگ کنید یا پیام UI نمایش دهید).

Triggers

  • مترجم زنده فارسی به انگلیسی
  • ترجمه خودکار هنگام تایپ
  • کد جاوااسکریپت برای ترجمه فارسی به انگلیسی بدون پرش نشانگر
  • پیاده‌سازی debounce در ترجمه متن