فارسی و انگلیسی، کنار هم، مثل آدم!
برای همهی ما این نیاز پیش اومده که در یک جمله همزمان از کاراکترهای لاتین و فارسی کنار هم استفاده کنیم. در این جور مواقع اگر ادیتوری که داریم توش این کار رو انجام میدیم به اندازه کافی باهوش نباشه، همیشه متن به هم میریزه و باعث میشه که هم نوشتنش کار سختی بشه و هم خوندنش. به عنوان مثال اگر تو جایی مثل جیرا برای کارتون تیکت ثبت کرده باشین حتمن مثل من دردآشنا هستین.
در این مقالهی کوتاه میخوام راجع به یک روشی صحبت کنم که باهاش توی هر ادیتوری و با هر فونت و کیبورد و زبانی که مینویسین مشکل راست/چپ/راست رو برای خودتون قابل حل کنین.
استاندارد Unicode به کمک ما میاد
استاندارد Unicode شامل کلی کاراکترهای کنترلی هست که میتونه برای فرمت کردن متن استفاده بشه. یکی از پراستفادهترینهاش برای ما فارسی زبانها کاراکتر نیمفاصله است که در کیبورد فارسی استاندارد در ویندوز با فشردن کلیدهای shift + space به متن اضافه میشه.
یکی دیگه از همین کاراکترها، کاراکتر Right-to-Left Embedding (RLE) با کد U+202B است. استفاده از این کاراکتر باعث میشه که متن از اونجا به بعد به صورت راست-به-چپ در بیاد و این شرایط تا پایان خط (EOL) ادامه پیدا کنه.
چطوری و کجا از این کاراکتر استفاده کنیم؟
اگر مثل من از ویندوز استفاده میکنین، راحتترین راه استفاده از این کاراکتر اینه:
یک notepad جدید باز کنید
توی اون right-click کنید و از منوی Insert Unicode control characters، گزینهی RLE رو انتخاب کنید.
در این لحظه شما میبینید که هیچ اتفاقی نیفتاد، ولی امیدتون رو از دست ندید. الان واقعا نوتپد شما خالی نیست بلکه یک کاراکتر نامرئی RLE توش وجود داره که شما میتونین با ابزارهایی که اکثر ماها برای برنامهنویسی و مقاله نویسی و تکلیف دانشگاه و ... ازشون روزی ۱۰۰۰ بار استفاده میکنیم این کاراکتر رو کپی کنید. کافیه ctrl+a و ctlr+c بزنید و اون یک کاراکتر نامرئی رو کپی کنید.
قسمت جذاب ماجرا از اینجا شروع میشه.
متنی رو که به خاطر ترکیب کاراکترهای انگلیسی و فارسی کاملا به هم ریخته انتخاب کنید و cursor رو اول هر خطی که میخواین درست نوشته بشه بذارین. (من معمولا روی خط، کلید home کیبورد رو میزنم)
حالا وقت استفاده از اونیکی ترکیب جادوییه: ctrl+v
متن شما درست شد!
ولی بقیه جاها چطور؟
من توی این مقاله از ویندوز و نوتپد به عوان ابزار استفاده کردم ولی شما از هر character mapای که دوست دارین میتونین برای کپی کردن RLE استفاده کنین.
همین مثال رو در Visual Studio Code هم میتونیم ببینیم، به شرطی که تنظیمات نشون دادن کاراکترهای کنترلی رو خاموش نگه داشته باشید.
مطلبی دیگر از این انتشارات
دایره
مطلبی دیگر از این انتشارات
تماشای جهان از دریچهای ۱۳ میلیارد ساله؛ نخستین تصویر ارسالی از تلسکوپ جیمز وب منتشر شد
مطلبی دیگر از این انتشارات
همه چیز درباره متد ()find در جاوا اسکریپت