تغییر محل قرار گیری حروف در کیبورد فارسی Ubuntu

ممکن است برای شما نیز این مشکل بوجود آمده باشد که وقتی در حال تایپ فارسی در سیستم عامل Ubuntu هستید با پیدا کردن محل قرارگیری بعضی از حروف مانند «ئ»، «ء»، «پ»با مشکل روبرو شوید.

ما در این آموزش سعی داریم Keyboard Layout و یا نمایه کیبورد فارسی Ubuntu را مناسب با الگوی مورد نظرمان سفارشی کنیم تا بتوانیم براحتی حروف مورد نظر را پیدا و تایپ کنیم.

برای تغییر نمایه کیبورد فارسی در Ubuntu به روش زیر عمل می‌کنیم:

نکته : در این آموزش بطور نمونه جای حروف «ئ» و «پ»تغییر داده می‌شود

جهت مشاهده محل قرارگیری کارکتر ها و حروف فارسی در سیستم عامل ابونتو از منوی اصلی زبان انتخابی را روی فارسی قرار دهید . سپس مجدداً منوی انتخاب زبان را باز کنید . در منوی باز شده گزینه show keyboard layout را انتخاب کنید . پنجره زیر نمایش داده می‌شود که به وضوح جای هر حرف مشخص شده است . محل قرار گیری حرفی که می خواهید تغییر دهید را در معادل زبان انگلیسی آن یاداشت کنید . بعنوان مثال جای حرف «پ»در زبان فارسی نصب شده در ابونتو ، حرف m و جای حرف «ئ» حرف s به همراه کلید Shift است.

نمایه کیبرد فارسی در ابونتو

برای هر زبانی که در Ubuntu نصب می کنید بصورت پیش‌فرض فایلی با نام دو حرف اختصاری آن زبان در مسیر ../usr/share/x11/xkx/symbols ایجاد می‌شود که نام این فایل برای زبان فارسی ir و برای زبان انگلیسیus است.

ساختار فایل هر زبان بدین گونه است که می‌تواند شامل چند طرح باشد یعنی برای هر زبان ممکن است چند layout متفاوت موجود باشد که در آن، جای بعضی از حروف با هم متفاوت خواهد بود. از آنجا که ما معمولاً نمایه استاندارد یک زبان را جهت نصب انتخاب می‌کنیم ، طرح اولیه در این فایل مربوط به طرح فعلی و مورد نظر ما خواهد بود . اکنون در مسیر ذکر شده یعنی ../usr/share/x11/xkx/symbols فایل us را با یک برنامه ویرایشگر متنی مانند Notepadqq باز می کنیم . همانطور که مشاهده می شود در هرخط از این فایل، یک کد برای هر حرف در کیبورد زبان انتخابی یعنی انگلیسی تعریف شده است . حال می خواهیم جایی که کلید یا کارکتر m تعریف شده را در بین خطوط این فایل پیدا کنیم و کد آن را یادداشت کنیم . خط زیر در فایل مذکور معرف کارکتر m است .

همانطور که گفته شد ممکن است برای هر زبان طرح های دیگری هم ارائه شده باشد ، بهمین منظور کد کلید m چند مرتبه و هر بار با مقداری متفاوت تعریف شده باشد اما مد نظر ما طرح استانداردی است که در نمایه کیبورد مشاهده کرده ایم

<AB07> {       [           m,    M                ]         } ;

در خط فوق عبارت AB07 کد کلید m است.

اکنون که کد معادل حرف m را پیدا کردیم با همین ترفند در نمایه کیبورد فارسی، حرف معادل آن را نیز می یابیم . برای این منظور این بار فایل ir را در ویرایشگر متن باز می‌کنیم سپس کد AB07 (معرف کارکتر m در انگلیسی) را جستجو کرده مشاهده میکنیم که برای این کلید چه نقشی تعریف شده است.

key<AB07> { [ Arabic_peh,               Arabic_hamza,               ellipsis          ]} ;

همانطور که در خط فوق مشهود است و طبق تصویری که ابتدا در نمایه فارسی مشاهده شد جای حرف m در کیبورد فارسی، حرف «پ» (Arabic_peh)به عنوان نقش اصلی و حرف «ء» (Arabic_hamza) ، ترکیبی از همین کلید به همراه کلید shift تعریف شده است .

اکنون برای تغییر حرف «پ» به حرف «ئ» کافیست عبارتArabic_hamzaonyeh که به نام «ئ» اشاره دارد را در همین فایل جستجو کنیم

key<AD07> { [  Arabic_hamzaonyeh, Arabic_hamza,  u,  U ] } ;

در خط فوق عبارت AD07 کد کلید «ئ» است

حال جای عبارت Arabic_peh در کد AB07 را با عبارت Arabic_hamzaonyeh جایگزین می کنیم

خط اصلی کد حرف «پ»:

key<AB07> { [ Arabic_peh,               Arabic_hamza,               ellipsis          ]} ;

بعد از تغییر حرف «پ»به «ئ»

key<AB07> { [ Arabic_hamzaonyeh,            Arabic_hamza,                ellipsis         ]} ;

اکنون که جای حرف «پ»به حرف «ئ» اختصاص یافت . لازم است محل جدیدی برای حرف «پ»انتخاب نماییم . از آنجا که حرف «پ»در کیبرد های فارسی برچسب گذاری شده، معمولا کنار دکمه بک اسلش قرار داده شده ،کافی است حرف «پ»را جایگزین کارکتر بک اسلش نماییم . همچنین می‌دانیم که حرف «پ» جزو حروف اصلی زبان عربی نبوده و کد آن نیز بطور مستقیم روی هیچ دکمه ای تعریف نشده است لذا کد ثابت x100067e برای این حرف یعنی «پ»در نظر گرفته شده است . حالا کافیست طبق مراحل قبلی کد متناظر با کارکتر بک اسلش را یافته و مقدار آن را با x100067e تغییر دهیم .

خط اصلی کد حرف «\» :

key<BKSL> { [ backslash,                  bar,                       0x1002010   ]} ;

بعد از تغییر حرف «\» به «پ» :

key<BKSL> { [ 0x100067e,                 bar,                       0x1002010   ]};

همانطور که در تصویر زیر مشخص است جای حروف «پ»و «ئ»تغییر کرده است .

نمایه کیبرد فارسی در ابونتو

به همین ترتیب می‌توانید محل قرارگیری و کد متناظر با هر کلید یا حرف در نمایه کیبورد زبان مورد نظرتان را یافته و آن را تغییر دهید .

در نظر داشته باشید قبل از انجام این مراحل حتماً از فایل نمایه مورد نظر یک کپی تهیه کنید تا بتوانید در صورت نیاز آن را به حالت اولیه برگردانید .

همچنین لازم است جهت اعمال شدن تغییرات، سیستم عامل خود را مجدد راه اندازی کنیم .

منابع:

https://help.ubuntu.com/community/Custom%20keyboard%20layout%20definitions?action=show&redirect=Howto%3A+Custom+keyboard+layout+definitions#Editing_an_existing_layout

https://forum.ubuntu.ir/index.php?topic=10215.0