SSD Nodes Learn Hosting plans →
راهنماها Matt Connorتوسط Matt Connor · به‌روزرسانی شده 2026-08-27

آموزش تغییر چیدمان کیبورد به Colemak در لینوکس

راهنمای کامل فعال‌سازی Colemak در کنسول لینوکس، X11 و Wayland. نحوه مدیریت میان‌برهای Vim و کلیدهای Ctrl را بیاموزید و بررسی کنید چرا SSH به تنظیم کیبورد نیاز ندارد.

محل قرارگیری چیدمان Colemak در لینوکس

چیدمان Colemak در لینوکس یک تنظیم واحد در سطح سیستم نیست. این چیدمان توسط هر برنامه‌ای که در آن لحظه ورودی صفحه‌کلید را می‌خواند اعمال می‌شود، بنابراین در یکی از سه جایگاه قرار دارد: کنسول متنی (text console)، سرور X11 یا کامپوزیتور Wayland شما. اگر آن را در جای اشتباه تنظیم کنید، هیچ تغییری مشاهده نخواهید کرد.

گزینه چهارم، سیستم‌عامل را به‌طور کامل دور می‌زند. صفحه‌کلیدی که در firmware خود بازنگری (remap) انجام می‌دهد، مانند بردی که از QMK یا VIA استفاده می‌کند، کدهای مربوط به حروف مورد نظر شما را ارسال می‌کند. بنابراین، هر دستگاهی که آن را به آن متصل کنید، بدون نیاز به هیچ‌گونه پیکربندی، با چیدمان Colemak تایپ می‌کند؛ این شامل کنسول سرور و دستگاهی که مالک آن نیستید نیز می‌شود. هزینه این روش این است که صفحه‌کلید لپ‌تاپ شما همچنان با چیدمان QWERTY تایپ می‌کند.

باقی این راهنما به بررسی این سه لایه نرم‌افزاری، دلیلی که یک سرور راه دور تقریباً هرگز به هیچ‌کدام از آن‌ها نیاز ندارد، و تأثیری که این تغییر بر Vim و میان‌برهای ترمینال شما می‌گذارد، می‌پردازد.

بررسی وضعیت فعلی سیستم

پیش از اعمال هرگونه تغییر، دستورات زیر را اجرا کنید. این دستورات تنظیمات فعلی و فهرست گونه‌های Colemak موجود در دیتابیس کیبورد X شما را نمایش می‌دهند.

localectl status
setxkbmap -query
localectl list-x11-keymap-variants us | grep colemak

دستور آخر باید colemak و colemak_dh را چاپ کند. Colemak سال‌هاست که در xkeyboard-config وجود دارد. Colemak-DH در نسخه 2.34 اضافه شد، بنابراین فقط نسخه‌های بسیار قدیمی فاقد آن هستند. تا اوت 2026، توزیع‌های Ubuntu 24.04 و Debian 13 هر دو نسخه‌ای جدیدتر از آن را ارائه می‌دهند.

اگر setxkbmap -query گزارش داد که نمی‌تواند display را باز کند، یعنی شما در یک نشست Wayland هستید و compositor مدیریت چیدمان را بر عهده دارد. این مورد در بخش زیر به‌طور جداگانه بررسی شده است.

طرح‌بندی Colemak یا Colemak-DH

طرح‌بندی Colemak جای 17 کلید را نسبت به موقعیت آن‌ها در QWERTY تغییر می‌دهد و 10 کلید از جمله Z، X، C و V را دست‌نخورده باقی می‌گذارد؛ به همین دلیل میان‌برهای undo، cut، copy و paste همچنان در جایی قرار دارند که دست چپ شما به آن‌ها عادت دارد. همین سازگاری، دلیل اصلی ظاهر فعلی این طرح‌بندی است.

طرح‌بندی Colemak-DH نسخه‌ای اصلاح‌شده از Colemak است. در این نسخه، جای کلیدهای D، B و G تغییر کرده و جای H با M عوض شده است، زیرا در Colemak استاندارد، تایپ هر دو حرف D و H مستلزم کشیدن انگشت اشاره به ستون میانی کیبورد است. این تغییر رسمی، هر حرف را روی همان انگشتی نگه می‌دارد که در Colemak استفاده می‌شد؛ بنابراین تایپیستی که از Colemak به DH مهاجرت می‌کند، با تغییر کوچکی روبرو می‌شود و نه یک طرح‌بندی کاملاً جدید. نسخه XKB این طرح‌بندی colemak_dh است و برای کیبوردهایی که کلید اضافه در کنار shift سمت چپ دارند، از colemak_dh_iso استفاده می‌شود.

اگر از QWERTY مهاجرت می‌کنید، یادگیری هر یک از این دو طرح‌بندی به یک اندازه زمان می‌برد؛ پس بر اساس راحتی خود یکی را انتخاب کنید و همان را ادامه دهید. تغییر دوباره طرح‌بندی به اندازه بار اول هزینه دارد، زیرا آنچه در حال بازسازی آن هستید، حافظه عضلانی مرتبط با موقعیت کلیدهاست. اگر هنوز در مورد ترک QWERTY تردید دارید، پیش از آنکه یک ماه وقت صرف بازسازی حافظه عضلانی خود کنید، با مطالعه مقایسه Colemak، Dvorak و QWERTY تصمیم نهایی را بگیرید.

تنظیم چیدمان Colemak در X11 با استفاده از setxkbmap و localectl

setxkbmap us -variant colemak
setxkbmap -query

اکنون setxkbmap -query باید variant: colemak را گزارش دهد و تایپ کردن در هر پنجره‌ای باید حروف را با چیدمان Colemak تولید کند. این تغییر تا زمانی که نشست X فعال است باقی می‌ماند و هیچ چیزی روی دیسک نوشته نمی‌شود؛ به همین دلیل، این روش ایمن‌ترین راه برای امتحان کردن چیدمان به مدت یک ساعت است.

برای ماندگاری تنظیمات پس از reboot:

sudo localectl set-x11-keymap us pc105 colemak
localectl status

ترتیب آرگومان‌ها به این صورت است: ابتدا چیدمان (layout)، سپس مدل (model) و در نهایت نوع (variant). اکنون localectl status باید X11 Layout: us و X11 Variant: colemak را نشان دهد. دستور localectl همچنین انتخاب شما را به نزدیک‌ترین keymap کنسول تبدیل می‌کند، مگر اینکه --no-convert را اضافه کنید؛ بنابراین در بسیاری از سیستم‌ها، این دستور واحد، tty را نیز پوشش می‌دهد. در Debian و Ubuntu، پس از آن /etc/default/keyboard را بررسی کنید، زیرا این فایلی است که console-setup در زمان بوت می‌خواند.

تنظیم Colemak در Wayland

یک نشست Wayland فاقد X server برای پیکربندی است. کامپوزیتور (compositor) نقشه کلیدها را بارگذاری کرده و به هر برنامه تحویل می‌دهد، بنابراین چیدمان صفحه‌کلید یک تنظیم مربوط به کامپوزیتور است. به همین دلیل است که دستور setxkbmap در این محیط کار نمی‌کند: یا نمی‌تواند نمایشگر را پیدا کند، یا فقط XWayland را تغییر می‌دهد و برنامه‌های بومی Wayland آن را نادیده می‌گیرند.

در GNOME، این تنظیم یک کلید gsettings است:

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us+colemak')]"

این تنظیم بلافاصله و بدون نیاز به خروج از سیستم (logout) اعمال می‌شود. رشته us+colemak ترکیبی از چیدمان و واریانت است که با علامت مثبت به هم متصل شده‌اند.

در sway، آن را در ~/.config/sway/config قرار دهید:

input type:keyboard {
    xkb_layout us
    xkb_variant colemak_dh
}

با استفاده از swaymsg reload تنظیمات را بازنشانی کنید. دستور swaymsg -t get_inputs تمام دستگاه‌های ورودی و چیدمانی که استفاده می‌کنند را فهرست می‌کند؛ این دستوری است که باید هنگام بروز مشکل در یک صفحه‌کلید خاص اجرا کنید.

در KDE Plasma، به System Settings و سپس Keyboard و بعد Layouts بروید و English (US) را با واریانت Colemak اضافه کنید.

تنظیم Colemak روی کنسول متنی

کنسول همان tty متنی ساده‌ای است که با فشردن Ctrl+Alt+F3 به آن دسترسی پیدا می‌کنید و نقشه کلید (keymap) مخصوص به خود را دارد. هیچ تنظیماتی که در X11 یا یک compositor اعمال می‌کنید بر آن تأثیر نمی‌گذارد؛ این موضوع هنگام کار روی یک محیط کاری ترمینال در کنسول مجازی bare اهمیت پیدا می‌کند.

در Debian و Ubuntu، فایل /etc/default/keyboard را ویرایش کنید:

XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT="colemak"
XKBOPTIONS=""

سپس آن را اعمال کنید:

sudo setupcon

برای تأیید، در کنسول تایپ کنید. ابزار console-setup آن توصیف XKB را با استفاده از ckbcomp به یک نقشه کلید کنسول تبدیل می‌کند، بنابراین در این سیستم‌ها، کنسول و X از یک توصیف مشترک استفاده می‌کنند.

در توزیع‌هایی که مستقیماً از نقشه‌های کلید kbd استفاده می‌کنند، ابتدا نام آن را جستجو کنید:

localectl list-keymaps | grep -i -e colemak -e latin9
sudo localectl set-keymap en-latin9

بسته kbd نقشه کنسول Colemak را با نام i386/colemak/en-latin9 ارائه می‌دهد، بنابراین نامی که باید وارد کنید معمولاً en-latin9 است و نه colemak. نامی را وارد کنید که در لیست ظاهر می‌شود، زیرا نام‌های ناموجود رد می‌شوند.

دستور sudo loadkeys en-latin9 کنسول فعلی را بلافاصله تغییر می‌دهد و sudo loadkeys us آن را به حالت قبل برمی‌گرداند. با loadkeys به عنوان یک تست برخورد کنید نه یک پیکربندی دائمی: این دستور فقط تا زمان reboot فعال می‌ماند و در Debian و Ubuntu، اجرای setupcon در زمان بوت، تنظیمات فایل /etc/default/keyboard را بازیابی می‌کند.

آیا یک VPS بدون رابط گرافیکی (headless) به چیدمان صفحه‌کلید Colemak نیاز دارد؟

تقریباً هرگز، و دلیل آن ارزش درک کردن دارد. پروتکل SSH کاراکترها را منتقل می‌کند، نه موقعیت کلیدها را. شبیه‌ساز ترمینال شما کلید فشرده‌شده را دریافت می‌کند، چیدمان محلی شما آن را به یک کاراکتر تبدیل می‌کند و تنها همان کاراکتر از طریق اتصال ارسال می‌شود. سرور کاراکتر n را دریافت می‌کند بدون آنکه راهی برای تشخیص اینکه کدام کلید فیزیکی آن را تولید کرده است داشته باشد. بنابراین، چیدمانی که روی لپ‌تاپ خود تنظیم کرده‌اید در هر نشست SSH، در tmux و در هر ویرایشگری که به‌صورت از راه دور اجرا می‌کنید همراه شماست و ماشین راه دور اصلاً نیازی به پیکربندی صفحه‌کلید ندارد.

پیش از آنکه شروع به ویرایش فایل‌های صفحه‌کلید در سرورهای عملیاتی (production) کنید، این نکته را به خاطر داشته باشید. اگر شما مدیریت مجموعه‌ای از سرورهای لینوکسی را بر عهده دارید، چیدمان صفحه‌کلید متعلق به ماشینی است که مقابل شما قرار دارد، نه کل مجموعه؛ بنابراین جایی در فرآیند provisioning شما ندارد. ده دقیقه اول کار با یک VPS جدید کارهای مفیدتری نسبت به این مورد دارد.

دو استثنا وجود دارد که ارزش برنامه‌ریزی دارند. اولی، کنسولی است که مستقیماً به خود ماشین متصل است. کنسول مرورگر در پنل ارائه‌دهنده خدمات، معمولاً خود را به عنوان یک صفحه‌کلید به ماشین مجازی معرفی می‌کند؛ بنابراین کلیدهای فشرده‌شده به‌صورت scancode ارسال می‌شوند و نقشه کلید (keymap) کنسولِ خودِ سرور تعیین می‌کند که چه کاراکتری نمایش داده شود. این تنها جایی است که چیدمان تنظیم‌شده روی سرور اعمال می‌شود و همچنین مسیر نجات شما در زمانی است که SSH از کار می‌افتد؛ بنابراین یک نقشه کلید ناقص در آنجا یک ریسک واقعی است.

کنسول سریال رفتار متفاوتی دارد، زیرا کاراکترها را منتقل می‌کند و چیدمان محلی شما اعمال می‌شود. استثنای دوم، یک ماشین اشتراکی است. نقشه کلید کنسول در سطح کل سیستم اعمال می‌شود؛ بنابراین تنظیم Colemak روی ماشینی که دیگران نیز به آن وارد می‌شوند، چیدمان را برای آن‌ها نیز تغییر می‌دهد و آن‌ها متوجه نخواهند شد که چرا این اتفاق افتاده است.

چه اتفاقی برای کلیدهای hjkl در Vim می‌افتد

در چیدمان Colemak، کلید h حرکت نمی‌کند، اما سه کلید دیگر حرکت می‌کنند. کلید j زیر کلید Y در چیدمان QWERTY، کلید k زیر کلید N و کلید l زیر کلید U قرار دارد؛ بنابراین کلیدهای مکان‌نما به‌جای قرارگیری زیر چهار انگشت، در سه ردیف پخش شده‌اند.

دو راهکار عملی وجود دارد که هر دو کاربران واقعی خود را دارند.

پیش‌فرض‌ها را حفظ کنید و موقعیت‌های جدید را یاد بگیرید. در این حالت هیچ بخشی از تنظیمات شما دچار اختلال نمی‌شود، تمام پلاگین‌ها به کار خود ادامه می‌دهند و تمام نکات آموزشی Vim که توسط دیگران نوشته شده است، دقیقاً همان‌طور که نوشته شده برای شما صدق می‌کند.

یا چهار کلیدی که زیر دست راست شما قرار دارند را به جای hjkl نگاشت (remap) کنید. در Colemak این کلیدها خروجی h، n، e و i می‌دهند. در Colemak-DH همان چهار کلید فیزیکی خروجی m، n، e و i می‌دهند، زیرا در این چیدمان H با M جابه‌جا شده است.

noremap n j
noremap e k
noremap i l
noremap l i
noremap k n

اکنون n به پایین، e به بالا، i به راست حرکت می‌کند و h از قبل به چپ حرکت می‌کرد. دو خط آخر، دستوراتی که جایگزین کرده‌اید را بازمی‌گردانند: l حالت درج (insert mode) را شروع می‌کند و k آخرین جستجو را تکرار می‌کند. همین رفتار را برای حروف بزرگ نیز اعمال کنید، در غیر این صورت Shift به همراه یک کلید مکان‌نما شما را غافلگیر خواهد کرد.

گزینه langmap در Vim کار مشابهی را در خطوط کمتری انجام می‌دهد:

set langmap=nj,ek,il,li,kn

هر جفت به این صورت خوانده می‌شود: کاراکتری که تایپ کرده‌اید و به دنبال آن کاراکتری که Vim باید بر اساس آن عمل کند. این تنظیم فقط در حالت عادی (normal mode) اعمال می‌شود، بنابراین در حالت درج همچنان متن Colemak به‌طور معمول تایپ می‌شود. دو محدودیت در راهنمای خود Vim مستند شده است: langmap برای ترکیب‌های Ctrl یا Alt اعمال نمی‌شود و نگاشت‌های پلاگین‌هایی که بر اساس کلیدهای پیش‌فرض نوشته شده‌اند، ممکن است تحت این تنظیم رفتار عجیبی داشته باشند.

هر کدام را که انتخاب می‌کنید، یک‌بار انتخاب کنید. نگاشتی که پس از یک ماه رها کنید، یک ماه دیگر از وقت شما را هدر می‌دهد.

چه اتفاقی برای میانبرهای ترمینال می‌افتد

کد کنترل ترمینال از کاراکتر ناشی می‌شود، نه از کلید فیزیکی؛ بنابراین هر میانبر Ctrl با چیدمان جابه‌جا می‌شود. میانبرهای Ctrl+C، Ctrl+Z، Ctrl+X و Ctrl+V موقعیت خود را حفظ می‌کنند، زیرا Colemak عمداً کلیدهای Z، X، C و V را در همان جایی که در QWERTY هستند، باقی می‌گذارد.

چهار میانبری که روزانه از آن‌ها استفاده می‌کنید، جابه‌جا می‌شوند. میانبر Ctrl+D که ورودی را پایان می‌دهد، اکنون در جایی است که در QWERTY کلید G قرار دارد. میانبر Ctrl+R که برای جستجوی تاریخچه است، در جایی قرار دارد که در QWERTY کلید S است. میانبر Ctrl+E که به انتهای خط می‌رود، در جایی است که در QWERTY کلید K قرار دارد. میانبر Ctrl+U که خط را پاک می‌کند، در جایی است که در QWERTY کلید I قرار دارد.

برنامه tmux پیش‌فرض خود را حفظ می‌کند، زیرا کلید B در Colemak جابه‌جا نمی‌شود. در Colemak-DH، کلید B به ردیف بالا منتقل می‌شود و پیش‌فرض نیز با آن جابه‌جا می‌گردد؛ این اولین چیزی است که اگر یک نشست طولانی‌مدت tmux روی یک VPS داشته باشید، متوجه آن خواهید شد. تغییر دادن کلید پیش‌فرض (prefix) به کلیدی که ترجیح می‌دهید، تنها با یک خط تغییر انجام می‌شود و این کار آسان‌تر از آن است که بخواهید یک رفلکس ذهنی را دو بار بازآموزی کنید.

میانبرهای دسکتاپ نیز از همین قاعده پیروی می‌کنند. یک میانبر روی Super+E با چیدمان جابه‌جا می‌شود، زیرا توسط کاراکتر تعریف شده است. یک میانبر روی Super+F1 ثابت می‌ماند، زیرا کلیدهای تابعی (function keys) توسط چیدمان کیبورد بازنگری نمی‌شوند.

مدت زمان لازم برای تغییر چیدمان

هیچ‌کس نمی‌تواند عدد دقیقی برای سرعت یادگیری شما ارائه دهد. تایپ ده انگشتی یک حافظه حرکتی است. شما در حال یادگیری جای حروف نیستید، بلکه در حال بازسازی رفلکسی هستید که یک کلمه را به توالی حرکت انگشتان تبدیل می‌کند؛ بنابراین تنها ورودی که به شما کمک می‌کند، زمانی است که صرف تایپ کردن می‌کنید.

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

دو عادت باعث کندتر شدن این روند می‌شود. جابه‌جایی بین QWERTY و Colemak در طول روز باعث می‌شود هر دو رفلکس ضعیف باقی بمانند؛ به همین دلیل اکثر کسانی که این تغییر را با موفقیت انجام می‌دهند، در سیستم اصلی خود کاملاً به چیدمان جدید متعهد می‌مانند. شروع این کار در یک هفته پرمشغله به معنای تایپ کردن با کیفیت پایین تحت فشار زمانی است که باعث می‌شود عادت کنید به کلیدها نگاه کنید.

راه بازگشت به حالت قبل را پیش از آنکه به آن نیاز پیدا کنید تنظیم کنید، زیرا لحظه‌ای که دوباره به QWERTY نیاز خواهید داشت، همان لحظه‌ای است که چیزی خراب شده و کسی منتظر شماست.

نحوه بازگشت سریع به QWERTY

در X11، دستور setxkbmap us بلافاصله چیدمان را به QWERTY بازمی‌گرداند. در کنسول، دستور sudo loadkeys us همین کار را انجام می‌دهد. برای لغو تنظیمات دائمی، دستور sudo localectl set-x11-keymap us را اجرا کنید.

استفاده از یک کلید میانبر برای جابه‌جایی (Toggle)، بهتر از دستوری است که باید آن را در چیدمانی تایپ کنید که هنوز قادر به تایپ با آن نیستید:

setxkbmap -layout us,us -variant colemak, -option grp:win_space_toggle

این دستور Colemak را به عنوان چیدمان اول و US استاندارد را به عنوان چیدمان دوم بارگذاری می‌کند و ترکیب Super+Space بین آن‌ها جابه‌جا می‌شود. ویرگول انتهایی در colemak, اشتباه تایپی نیست: این کار باعث می‌شود چیدمان اول از نوع colemak و چیدمان دوم بدون هیچ نوع خاصی باشد. در GNOME، هر دو منبع ورودی را در بخش Settings اضافه کنید؛ جایی که ترکیب Super+Space به‌صورت پیش‌فرض بین آن‌ها جابه‌جا می‌شود.

دو مرحله ورود رمز عبور خارج از نشست (session) دسکتاپ شما قرار دارند و نیاز به توجه جداگانه دارند. صفحه ورود (greeter) پیش از اعمال تنظیمات نشست شما اجرا می‌شود، بنابراین آن را با خروج از حساب کاربری (logout) تست کنید و صرفاً به تنظیمات اعتماد نکنید. اگر دیسک رمزنگاری شده باشد، مرحله وارد کردن عبارت عبور از initramfs اجرا می‌شود که کپی مخصوص به خود از keymap را دارد. در Debian و Ubuntu، پس از تغییر /etc/default/keyboard، آن را با دستور sudo update-initramfs -u بازسازی کنید و سپس یک بار سیستم را reboot کنید تا در حالی که هنوز راه دیگری برای دسترسی به ماشین دارید، آن را تست کنید.

آیا می‌توانم یک برنامه را روی QWERTY نگه دارم؟

طرح‌بندی صفحه‌کلید (layout) پیش از آنکه برنامه کاراکتر را دریافت کند، اعمال می‌شود. X server یا compositor، کد اسکن (scancode) را به کاراکتر تبدیل کرده و آن را تحویل می‌دهد؛ بنابراین برنامه نمی‌تواند درخواست طرح‌بندی متفاوتی داشته باشد. برنامه فقط می‌تواند آنچه را دریافت می‌کند، بازنگری (remap) کند. به همین دلیل است که اصلاح Vim در فایل پیکربندی خود Vim قرار دارد و هیچ راهکار عمومی برای تغییر طرح‌بندی به ازای هر پنجره وجود ندارد.

دو رویکرد عملی هستند. اولی، تنظیم به ازای هر دستگاه است. اگر تایپ QWERTY روی یک صفحه‌کلید مجزا انجام می‌شود، طرح‌بندی را به‌جای سیستم، روی همان دستگاه تنظیم کنید:

xinput list
setxkbmap -device 12 -layout us

شناسه (id) را از xinput list بردارید و با تایپ کردن روی هر صفحه‌کلید به‌نوبت، آن را تأیید کنید. sway تنظیمات مشابهی را برای هر شناسه ورودی از swaymsg -t get_inputs می‌پذیرد و انتخاب‌گر (selector) دقیق‌تر، بر type:keyboard اولویت دارد.

رویکرد دوم، انجام بازنگری داخل خود برنامه است، همان‌طور که langmap در Vim عمل می‌کند. بازی‌ها تقریباً همیشه یک صفحه برای تنظیم کلیدها (key binding) دارند و تغییر کلیدهای حرکتی در آنجا، زمان کمتری نسبت به مقابله با طرح‌بندی از بیرون می‌گیرد. برای برنامه‌هایی که هیچ‌کدام از این قابلیت‌ها را ندارند، کلید میانبر تغییر طرح‌بندی را که در بالا ذکر شد تنظیم کنید و پیش از اجرای برنامه، آن را فشار دهید.

FAQ

آیا نیاز دارم Colemak را روی VPS خود تنظیم کنم؟

خیر، اگر از طریق SSH به آن متصل می‌شوید. SSH کاراکترها را منتقل می‌کند، بنابراین چیدمان کیبورد شما پیش از ارسال داده‌ها روی لپ‌تاپ‌تان پردازش می‌شود و سرور همان بایت‌هایی را دریافت می‌کند که از یک کاربر با کیبورد QWERTY دریافت می‌کرد. استثنا، کنسول مرورگر در پنل ارائه‌دهندهٔ سرور شماست که به‌عنوان یک کیبورد به ماشین مجازی متصل می‌شود و از نقشهٔ کلیدهای کنسول خودِ سرور استفاده می‌کند. آن کنسول مسیر نجات شما در زمان خرابی SSH است، بنابراین تنها زمانی آن را تغییر دهید که مطمئن هستید و در حالی که SSH هنوز کار می‌کند، آن را تست کنید.

آیا باید Colemak را یاد بگیرم یا Colemak-DH را؟

هر دو به یک اندازه نیاز به بازآموزی از QWERTY دارند، بنابراین بر اساس راحتی انتخاب کنید نه هزینهٔ مهاجرت. در Colemak-DH جای کلیدهای D، B و G تغییر کرده و H با M جابه‌جا شده است، زیرا در Colemak معمولی، تایپ D و H مستلزم کشش انگشت اشاره به ستون میانی است. نام‌های XKB برای این چیدمان‌ها colemak و colemak_dh هستند و colemak_dh_iso برای کیبوردهایی است که کلید اضافه در کنار کلید Shift سمت چپ دارند. دستور localectl list-x11-keymap-variants us | grep colemak را اجرا کنید تا ببینید سیستم شما کدام‌یک را ارائه می‌دهد.

چه اتفاقی برای کلیدهای hjkl در Vim هنگام استفاده از Colemak می‌افتد؟

کلید h در جای خود باقی می‌ماند. کلید j به زیر موقعیت Y در QWERTY، کلید k به زیر موقعیت N در QWERTY و کلید l به زیر موقعیت U در QWERTY منتقل می‌شود، بنابراین کلیدهای جهت‌نما در سه ردیف پخش می‌شوند. شما می‌توانید آن‌ها را در جای جدیدشان یاد بگیرید که باعث می‌شود تمام پلاگین‌ها و آموزش‌ها معتبر باقی بمانند، یا می‌توانید چهار کلید زیر دست راست خود را دوباره نگاشت (remap) کنید: h، n، e و i در Colemak، و m، n، e و i در Colemak-DH. گزینهٔ langmap در Vim همین کار را برای حالت normal انجام می‌دهد، هرچند این گزینه روی ترکیب‌های Ctrl اعمال نمی‌شود و ممکن است نگاشت‌های پلاگین‌ها را دچار اختلال کند.

چقدر طول می‌کشد تا به سرعت قبلی خود در تایپ برسم؟

به جای روز، باید به هفته فکر کنید، زیرا این موضوع مربوط به حافظهٔ حرکتی است و تنها راه پیشرفت، تمرین است. گزارش‌های تمرینی کاربران معمولاً نشان می‌دهد که در هفتهٔ اول سرعت بسیار کمتر از نصف سرعت قبلی است و بازگشت به سرعت اصلی پس از یک تا سه ماه استفادهٔ روزانه رخ می‌دهد. جابه‌جایی روزانه بین QWERTY و Colemak این روند را طولانی‌تر می‌کند، زیرا هیچ‌کدام از این بازتاب‌های ذهنی فرصت تثبیت پیدا نمی‌کنند.

چرا دستور setxkbmap روی دسکتاپ من هیچ تغییری ایجاد نکرد؟

تقریباً به این دلیل است که نشست (session) شما از نوع Wayland است. در Wayland، کامپوزیتور (compositor) مدیریت نقشهٔ کلیدها را بر عهده دارد و آن را به هر برنامه تحمیل می‌کند، بنابراین setxkbmap یا نمی‌تواند نمایشگر را پیدا کند یا فقط XWayland را تغییر می‌دهد و برنامه‌های بومی (native) آن را نادیده می‌گیرند. چیدمان را در تنظیمات کامپوزیتور تغییر دهید: کلید gsettings با نام org.gnome.desktop.input-sources در GNOME، تنظیمات xkb_variant در فایل پیکربندی sway، یا صفحهٔ Layouts در تنظیمات سیستم KDE Plasma.