SSD Nodes Learn Hosting plans →
راهنماها Matt Connorتوسط Matt Connor

تفاوت Colemak Mod-DH و Colemak استاندارد

تفاوت اصلی در جابجایی کلیدهای D و H برای کاهش فشار روی انگشتان است. در این مقاله بررسی می‌کنیم چه کسانی باید مهاجرت کنند و چگونه colemak_dh را در Linux فعال کنید.

تغییرات Colemak Mod-DH

Colemak Mod-DH همان طرح استاندارد Colemak است که در آن 6 حرف جابه‌جا شده‌اند. حروف D و H از دو ستون مرکزی خارج شده و زیر انگشتان اشاره قرار می‌گیرند؛ حروف G، B، V و M نیز جای خالی آن‌ها را پر می‌کنند. تمام کلیدهای دیگر، از جمله کلیدهای ردیف خانه (home row) که در ابتدا یاد می‌گیرید، دقیقاً در همان جایی باقی می‌مانند که در Colemak استاندارد قرار دارند.

نام این نسخه، نشان‌دهندهٔ تغییرات آن است. در Colemak استاندارد، D روی کلیدی قرار دارد که با G برچسب‌گذاری شده و H روی کلیدی است که با H مشخص شده است. این دو کلید، ستون‌های مرکزی کیبورد هستند. انگشت اشاره تنها با کشیدن کل دست به طرفین به آن‌ها می‌رسد؛ بنابراین پروژه Mod-DH آن‌ها را به عنوان ضعیف‌ترین نقطهٔ یک طرحِ در غیر این صورت مناسب شناسایی کرد و هر دو حرف را یک ردیف پایین‌تر برد.

اگر هنوز در حال یادگیری یک طرح هستید، از Mod-DH استفاده کنید و خواندن مقایسه‌ها را متوقف کنید. اگر در حال حاضر با Colemak استاندارد بدون فکر کردن تایپ می‌کنید، باید بدانید که در ازای افزایش راحتی که در هیچ تست سرعتی نمایش داده نمی‌شود، چندین هفته تایپ کندتر را پیش رو خواهید داشت. این راهنما ابتدا تغییرات دقیق را ارائه می‌دهد و سپس به بخش Linux می‌پردازد: نام نسخه‌ای که باید درخواست کنید و اقداماتی که در صورت عدم وجود آن در سیستم خود باید انجام دهید.

دو چیدمان، در کنار یکدیگر

Colemak استاندارد، فقط حروف:

q w f p g   j l u y ;
a r s t d   h n e i o
z x c v b   k m , . /

Colemak Mod-DH، فقط حروف:

q w f p b   j l u y ;
a r s t g   m n e i o
z x c d v   k h , . /

شش حرف متفاوت هستند. این تغییر را می‌توان راحت‌تر به صورت چهار حرکت در دست چپ و یک جابه‌جایی در دست راست درک کرد. در سمت چپ: حرف D از ردیف اصلی به ردیف پایین منتقل می‌شود، حرف G از ردیف بالا به ستون مرکزی که D آن را ترک کرده می‌رود، حرف B به ردیف بالا و به جای G منتقل می‌شود، و حرف V یک کلید به سمت راست و به جای B می‌لغزد. در سمت راست: حروف H و M جای خود را با هم عوض می‌کنند، که باعث می‌شود H زیر انگشت اشاره و M در ستون مرکزی قرار گیرد.

این نمودارها را به صورت ده ستون در هر ردیف بخوانید، که ساختار یک کیبورد ماتریسی (ortholinear) است. در یک کیبورد معمولی با کلیدهای پلکانی (staggered)، گوشه پایین سمت چپ در Mod-DH چیدمان دومی دارد که در ادامه به آن پرداخته شده است.

چرا D در چیدمان استاندارد Colemak یک مشکل محسوب می‌شود؟

انگشتان اشاره شما روی دو کلید خانه قرار می‌گیرند: کلیدی که با F مشخص شده و در هر دو چیدمان حرف T را تایپ می‌کند، و کلیدی که با J مشخص شده و در هر دو چیدمان حرف N را تایپ می‌کند. هر انگشت اشاره همچنین مسئول ستون کنار خود است، یعنی کلیدهایی که با G و H مشخص شده‌اند. هیچ دستی نمی‌تواند بدون حرکت، هر دو ستون را پوشش دهد، زیرا طول انگشت برای این کار کافی نیست؛ بنابراین دست به طرفین می‌لغزد و سه انگشت دیگر از روی کلیدهای خانه خود بلند می‌شوند. این حرکت جانبی، پرهزینه‌ترین حرکت در تایپ ده انگشتی است و Mod-DH دقیقاً برای حذف همین حرکت به وجود آمده است.

چیدمان استاندارد Colemak حرف D را روی کلید G و حرف H را روی کلید H قرار می‌دهد، بنابراین هر دو کلید ستون مرکزی، حامل یک حرف پرکاربرد هستند. در مقابل، Mod-DH حرف D را روی کلید V و حرف H را روی کلید M قرار می‌دهد و از آرایشی که در نمودار بالا آمده استفاده می‌کند. هر یک از این کلیدها در کیبوردهای پله‌ای (staggered)، حدود نصف عرض یک کلید در سمت راست کلید خانه انگشت اشاره قرار دارند، بنابراین انگشت به سمت پایین و داخل ستون خود خم می‌شود و دست ثابت می‌ماند. حروفی که جایگزین ستون‌های مرکزی می‌شوند، G در سمت چپ و M در سمت راست هستند.

کل این استدلال به این بستگی دارد که هر حرف چند بار تایپ می‌شود.

ChartTypical published English letter frequency, for the six letters Mod-DH moves
The data behind this chart
[
  {
    "label": "H",
    "frequency_pct": 6.1
  },
  {
    "label": "D",
    "frequency_pct": 4.3
  },
  {
    "label": "M",
    "frequency_pct": 2.4
  },
  {
    "label": "G",
    "frequency_pct": 2.0
  },
  {
    "label": "B",
    "frequency_pct": 1.5
  },
  {
    "label": "V",
    "frequency_pct": 1.0
  }
]

این‌ها ارقام منتشرشدهٔ استانداردی برای متن‌های معمولی انگلیسی هستند که بسته به پیکرهٔ (corpus) مورد بررسی، چند دهم درصد تغییر می‌کنند. رتبه‌بندی کلی ثابت است. حرف H معادل 6.1 درصد از حروفی است که تایپ می‌کنید و حرف D معادل 4.3 درصد، در حالی که حرف M معادل 2.4 درصد، حرف G معادل 2.0 درصد و حرف V معادل 1.0 درصد است. Mod-DH حرکت جانبی را حذف نمی‌کند. بلکه این حرکت را صرف حروف نادر می‌کند تا حروف پرکاربرد، و برای انجام این کار 6 حرکت حرف را به کار می‌گیرد.

چه مواردی بدون تغییر باقی می‌مانند؟

  • کلیدهای اصلی A R S T در سمت چپ و N E I O در سمت راست جابه‌جا نمی‌شوند. این هشت کلید بیشترین سهم را در تایپ شما دارند و بخشی از Colemak هستند که در ابتدا آموخته‌اید.
  • ردیف بالا به‌جز یک کلید کاملاً یکسان است: Q W F P در سمت چپ و J L U Y به همراه علامت نقطه‌ویرگول در سمت راست.
  • کلیدهای نشانه‌گذاری در سمت راست جابه‌جا نمی‌شوند.
  • ردیف اعداد و کلیدهای اصلاح‌کننده (modifier) دست‌نخورده باقی می‌مانند.
  • بازی‌هایی که از WASD استفاده می‌کنند در هر دو چیدمان به یک شکل عمل می‌کنند، زیرا این چهار کلید فیزیکی در هر دو حالت حروف یکسانی دارند.

یک مورد از این تغییر جان سالم به در نمی‌برد. در Colemak استاندارد، کلیدهای Z، X، C و V روی همان جایگاه‌های QWERTY باقی می‌مانند، بنابراین میانبرهای Ctrl+Z، Ctrl+X، Ctrl+C و Ctrl+V همچنان زیر همان انگشتانی قرار دارند که از زمان اولین کامپیوترتان با آن‌ها تایپ کرده‌اید. در Mod-DH، ردیف پایین سمت چپ برای کلید D نیاز است، بنابراین آن دسته از کلیدها باید جابه‌جا شوند.

دو چیدمان برای آن گوشه از کیبورد وجود دارد و نمودار بالا تنها یکی از آن‌هاست. در چیدمان ساده، کلیدهای Z، X و C روی همان کلیدهایی که با Z، X و C برچسب‌گذاری شده‌اند باقی می‌مانند و V یک کلید به سمت راست، روی کلیدی که با B برچسب‌گذاری شده، منتقل می‌شود. در مقابل، angle mod کل گروه را یک کلید به سمت چپ می‌لغزاند تا انگشت اشارهٔ چپ به‌جای کشیده شدن به پایین و راست، به سمت D خم شود. کیبوردهای ISO یک کلید اضافه بین Shift چپ و Z دارند که angle mod از آن استفاده می‌کند. کیبوردهای ANSI چنین کلیدی ندارند، بنابراین نسخه ANSI مجبور است Z را جابه‌جا کند؛ این موضوع قابل‌قبول است زیرا Z کمیاب‌ترین حرف در زبان انگلیسی است.

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

آیا باید از Colemak استاندارد به این چیدمان مهاجرت کنید؟

  • اگر هنوز در حال یادگیری هستید یا همچنان از QWERTY استفاده می‌کنید: Mod-DH را انتخاب کنید. یادگیری آن دشوارتر از Colemak استاندارد نیست و دیگر نیازی نیست نگران این موضوع باشید. اگر هنوز در مورد انتخاب Colemak به نتیجه نرسیده‌اید، این پرسشِ مرحلهٔ قبل است و مقایسه Colemak با Dvorak و QWERTY جایی است که باید در آن تصمیم بگیرید.
  • اگر به Colemak استاندارد مسلط هستید: بهبود حاصل‌شده واقعی اما اندک است و هزینهٔ آن چند هفته زمان خواهد بود. تغییر جای 6 حرف برای مختل کردن حافظهٔ عضلانی کافی است و دو حرفی که بیشترین اهمیت را دارند مربوط به انگشتان اشاره هستند که در بخش بزرگی از کلمات انگلیسی ظاهر می‌شوند. کسانی که این تغییر را انجام داده‌اند، از چند روز تایپ بسیار کند و چند هفته زمان برای بازگشت به سرعت قبلی گزارش می‌دهند.
  • اگر از قبل یک کیبورد قابل‌برنامه‌ریزی دارید: این حالت کم‌هزینه است. تغییر چیدمان تنها با یک بار فلش کردن فریم‌ور انجام می‌شود و بازگشت به حالت قبل نیز به همان سادگی است. آن را برای یک ماه امتحان کنید و هر کدام را که ترجیح می‌دهید نگه دارید.
  • اگر بیشتر ساعات روز به زبان دیگری تایپ می‌کنید: آمارهای فرکانس ذکرشده در بالا مربوط به زبان انگلیسی است. پیش از پذیرش این استدلال، زبان خود را بررسی کنید، زیرا حروف D، H، G و M در همهٔ زبان‌ها وزن یکسانی ندارند.
  • اگر دستان شما درد می‌کند: چیدمان کیبورد تنها یکی از عوامل ورودی در کنار ارتفاع میز، صندلی، نوع کیبورد و ساعات نشستن شماست. انتظار نداشته باشید که جابه‌جایی چند حرف، مشکلی را که ناشی از سایر بخش‌های محیط کار شماست، حل کند.

چگونه می‌توان از Colemak Mod-DH در لینوکس استفاده کرد؟

از سیستم خود بپرسید که چه چیزی در حال حاضر در دسترس دارد. تا اوت 2026، گونه‌های Mod-DH در داخل xkeyboard-config گنجانده شده‌اند؛ پایگاه‌داده‌ای که تمام توزیع‌های دسکتاپ لینوکس از آن استفاده می‌کنند.

localectl list-x11-keymap-variants us | grep colemak

یک سیستم به‌روز، colemak را به همراه ورودی‌های Mod-DH فهرست می‌کند. colemak_dh نسخه ANSI، colemak_dh_iso نسخه ISO، colemak_dh_ortho برای کیبوردهای ماتریسی، و colemak_dh_wide و colemak_dh_wide_iso نسخه‌های wide هستند که دست راست را یک ستون به سمت بیرون منتقل می‌کنند. چیدمان UK نیز دارای یک گونه Mod-DH است، بنابراین اگر از کیبورد UK استفاده می‌کنید، همان دستور را برای gb اجرا کنید. اگر grep هیچ خروجی‌ای نشان نداد، نسخه xkeyboard-config شما قدیمی‌تر از این گونه‌ها است و بخش بعدی برای شما کاربرد دارد.

پیش از اعمال هرگونه تغییر دائمی، آن را در یک نشست X امتحان کنید.

setxkbmap -layout us -variant colemak_dh
setxkbmap -query

setxkbmap -query چیدمان و گونهٔ فعال فعلی را چاپ می‌کند تا بتوانید تأیید کنید که تغییر اعمال شده است. چند جمله تایپ کنید و سپس با setxkbmap -layout us به حالت قبل بازگردید. اگر این گونه روی دستگاه شما وجود نداشته باشد، دستور با خطای Error loading new keyboard description مواجه می‌شود و چیدمان به همان شکل قبلی باقی می‌ماند.

توجه داشته باشید که این دستور چه کاری انجام نمی‌دهد. این دستور فقط بر نشست X در حال اجرا تأثیر می‌گذارد، با خروج از سیستم از بین می‌رود و در Wayland که compositor مدیریت نقشه کلیدها را بر عهده دارد، هیچ اثری ندارد. دائمی کردن یک چیدمان در هر دسکتاپ متفاوت است و قبلاً در اینجا مستند شده است: تنظیم دائمی Colemak در کنسول، X11 و Wayland. تمام مراحل آن راهنما برای این گونه نیز صدق می‌کند. هر جا که آن راهنما colemak را ذکر کرده است، شما colemak_dh را بنویسید.

اگر سیستم شما فاقد variant مربوط به colemak_dh باشد چه باید کرد؟

سه روش برای دریافت این چیدمان وجود دارد که هر کدام در سطوح متفاوتی عمل می‌کنند.

یک variant سفارشی xkb. شما تعاریف کلیدها را در یک فایل symbols می‌نویسید و آن variant را ثبت می‌کنید، سپس مانند یک بسته نصب‌شده از آن با نام مشخص استفاده می‌کنید. این همان مکانیزم استاندارد است، بنابراین رفتار آن کاملاً مشابه است و هم نشست‌های X11 و هم Wayland را پوشش می‌دهد. هزینه آن نگهداری است: فایلی که در /usr/share/X11/xkb ویرایش می‌کنید متعلق به بسته xkeyboard-config است، بنابراین یک به‌روزرسانی می‌تواند آن را جایگزین کند و شما باید آن را روی هر ماشینی که استفاده می‌کنید، دوباره نصب کنید.

یک remapper در فضای کاربری (userspace). ابزار keyd کیبورد را از طریق evdev (لایه ورودی هسته) می‌خواند و کلیدهای تغییریافته را از طریق uinput (دستگاه تزریق ورودی هسته) بازمی‌گرداند. این جابجایی پیش از آنکه هر display server کلید را ببیند رخ می‌دهد، بنابراین یک فایل واحد، نشست‌های X، Wayland و کنسول متنی خام را پوشش می‌دهد. فایل پیکربندی در /etc/keyd/default.conf قرار می‌گیرد:

[ids]
*

[main]
e = f
r = p
t = b
y = j
u = l
i = u
o = y
s = r
d = s
f = t
h = m
j = n
k = e
l = i
v = d
b = v
n = k
m = h

هر خط بیانگر این است که کلید فیزیکی نام‌برده در سمت چپ، اکنون کلید نام‌برده در سمت راست را ارسال می‌کند و کلیدهایی که تغییری ندارند، نادیده گرفته می‌شوند. کلید semicolon در هر دو جهت تغییر می‌کند و عمداً در بالا حذف شده است: دستور keyd list-keys را اجرا کنید تا نامی که build شما برای آن استفاده می‌کند را بیابید، سپس آن دو خط را اضافه کنید. پیکربندی را بارگذاری کنید و عملکرد آن را مشاهده کنید:

sudo systemctl enable --now keyd
sudo keyd reload
keyd monitor

دستور keyd monitor هر کلید را همان‌طور که keyd می‌بیند چاپ می‌کند؛ این روشی است که متوجه می‌شوید یک کلید دو بار بازنگری (remap) شده است. پیش از فعال‌سازی keyd، چیدمان سیستم را به حالت پیش‌فرض US QWERTY برگردانید، زیرا خروجی keyd همچنان توسط چیدمان پیکربندی‌شده در سیستم تفسیر می‌شود و دو بازنگری متوالی باعث تولید حروفی می‌شود که با هیچ چیدمانی مطابقت ندارند.

سفت‌افزار (firmware) کیبورد. ابزارهای QMK، ZMK و Vial چیدمان را درون کیبورد قرار می‌دهند. برد، حرف مورد نظر شما را ارسال می‌کند و سیستم میزبان هرگز متوجه نمی‌شود که چیزی تغییر کرده است. با QMK، چرخه کار شامل ساخت (build) و فلش کردن است:

qmk setup
qmk list-keyboards
qmk compile -kb planck/rev6 -km default
qmk flash -kb planck/rev6 -km default

نام‌های کیبورد و keymap در بالا صرفاً یک مثال هستند. planck/rev6 را با آنچه qmk list-keyboards برای برد شما چاپ می‌کند جایگزین کنید و default را با نام دایرکتوری keymap که حاوی چیدمان Mod-DH شماست، عوض کنید.

اگر سفت‌افزار برد شما پشتیبانی کند، Vial و VIA همین کار را از طریق یک ویرایشگر گرافیکی روی USB انجام می‌دهند، بنابراین می‌توانید بدون نیاز به کامپایلر، جای یک کلید را تغییر دهید.

کدام روش در کنسول متنی باقی می‌ماند؟

تنها فریم‌ور (firmware) است که همه‌جا همراه شماست. یک variant در xkb به یک نشست روی یک ماشین خاص محدود است. ابزار keyd نیز به یک ماشین تعلق دارد و برای اجرا به دسترسی root روی همان ماشین نیاز دارد. کیبورد متعلق به شماست: آن را به یک rescue shell، صفحه تنظیمات UEFI، یک سیستم تازه نصب‌شده یا یک کنسول سریال متصل کنید؛ کیبورد همچنان Mod-DH تایپ می‌کند، زیرا هیچ‌کدام از دستگاه‌های مقصد نیازی به دانستن تنظیمات شما ندارند.

این موضوع برای کارهای از راه دور کمتر از حد انتظار اهمیت دارد، اما برای کنسول‌های محلی بسیار مهم است. وقتی از طریق SSH به یک VPS متصل می‌شوید، سرور هرگز طرح‌بندی (layout) شما را نمی‌بیند: ترمینال شما فشردن کلیدها را به کاراکتر تبدیل کرده و ارسال می‌کند، بنابراین keymap ماشین مقصد بی‌اهمیت است. جایی که این موضوع مشکل‌ساز می‌شود، کنسولی است که مستقیماً پشت آن نشسته‌اید؛ مانند rescue shell پس از یک بوت ناموفق، یا یک میز کار دائمی که روی یک TTY مجزا نگه می‌دارید. کنسول مجازی لینوکس سیستم keymap خاص خود را دارد که از xkb جداست و تنظیمات دسکتاپ شما روی آن تأثیری ندارد.

در Debian و Ubuntu، نقشه کلیدهای کنسول توسط ckbcomp از داده‌های xkb تولید می‌شود، بنابراین کنسول می‌تواند از همان نام variant پیروی کند:

ckbcomp us colemak_dh | sudo loadkeys -

این تنظیم تا ریبوت بعدی باقی می‌ماند. برای دائمی کردن آن، XKBLAYOUT و XKBVARIANT را در /etc/default/keyboard تنظیم کرده و sudo setupcon را اجرا کنید. در توزیع‌هایی که فاقد console-setup هستند، شما محدود به keymapهایی هستید که همراه با kbd عرضه می‌شوند و اکثر آن‌ها QWERTY هستند: پیش از آنکه فرض کنید یک نقشه Colemak-DH وجود دارد، با localectl list-keymaps | grep -i colemak بررسی کنید. در مواردی که چنین نقشه‌ای وجود ندارد، keyd مسیر کوتاه‌تری است، زیرا یک فایل واحد، کنسول و نشست گرافیکی را همزمان پوشش می‌دهد.

پس از تغییر چه چیزی دچار اختلال می‌شود؟

دو لایه نگاشت مجدد. کیبوردی که با Mod-DH فلش شده است، اگر با سیستم‌عاملی که روی colemak_dh تنظیم شده ترکیب شود، هیچ‌کدام از حروف طرح‌بندی مورد نظر شما را تولید نمی‌کند؛ زیرا این دو نگاشت با هم ترکیب می‌شوند. کلیدی که روی آن S نوشته شده را فشار می‌دهید: کیبورد حرف R را ارسال می‌کند، سیستم‌عامل آن را به عنوان کلید R می‌خواند و حرف P را چاپ می‌کند. نگاشت را فقط در یک لایه انجام دهید.

ردیف پایین اشتباه برای کیبورد شما. انتخاب colemak_dh روی کیبورد ISO، یا colemak_dh_iso روی کیبورد ANSI، باعث جابه‌جایی حروف در سمت چپ پایین می‌شود. بلافاصله پس از تغییر، کلیدی که روی آن Z نوشته شده را فشار دهید، زیرا این گوشه جایی است که دو چیدمان با هم تفاوت دارند.

صفحه ورود به سیستم. GDM و SDDM تنظیمات کیبورد مخصوص به خود را دارند، بنابراین ممکن است در صفحه ورود رمز عبور، همچنان با چیدمان QWERTY مواجه شوید، حتی اگر نشست (session) شما تغییر کرده باشد. ابزارهایی مانند keyd و تغییرات در firmware از این مشکل جلوگیری می‌کنند، زیرا هر دو پیش از آنکه صفحه ورود نمایش داده شود، فعال هستند.

کلید Caps Lock. چیدمان رسمی Colemak، کلید Caps Lock را به Backspace تبدیل می‌کند، اما در پیاده‌سازی‌های مختلف بر سر گنجاندن این تغییر اختلاف نظر وجود دارد. بلافاصله پس از تغییر چیدمان، این کلید را بررسی کنید. متوجه شدن این موضوع در میان یک جمله، تجربه ناخوشایندی است.

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

FAQ

آیا اگر در حال حاضر با Colemak استاندارد تایپ می‌کنم، ارزش دارد به Colemak Mod-DH مهاجرت کنم؟

اگر تایپ‌کردن برای شما به یک عمل خودکار تبدیل شده است، پاسخ صادقانه معمولاً منفی است. 6 حرف تغییر می‌کنند که 2 مورد از آن‌ها حروف رایج انگشت اشاره هستند و همین برای شکستن رفلکس‌هایی که ماه‌ها برای ساختنشان وقت گذاشته‌اید، کافی است. کسانی که مهاجرت کرده‌اند، از چند روز تایپ بسیار کند و چند هفته زمان برای بازگشت به سرعت قبلی می‌گویند. دستاورد این کار راحتی است، نه سرعت: حروف D و H دیگر نیازی به حرکت جانبی دست ندارند. اگر انگشتان اشاره‌تان شما را اذیت می‌کنند یا یک کیبورد قابل‌برنامه‌ریزی دارید که بازگشت به حالت قبل با یک بار فلش‌کردن انجام می‌شود، مهاجرت کنید.

آیا Colemak Mod-DH کلیدهای میانبر Ctrl+Z، Ctrl+X، Ctrl+C و Ctrl+V را مختل می‌کند؟

این چیدمان بخشی از آن دسته را مختل می‌کند، در حالی که Colemak استاندارد این کار را نمی‌کند. Colemak استاندارد حروف Z، X، C و V را روی همان کلیدهای QWERTY نگه می‌دارد، بنابراین هر چهار میانبر در جایی که دست شما انتظار دارد باقی می‌مانند. Mod-DH برای حرف D به ردیف پایین سمت چپ نیاز دارد، بنابراین چیزی باید جابه‌جا شود. در چیدمان ساده، Z، X و C سر جای خود می‌مانند و V یک کلید به سمت راست منتقل می‌شود. در چیدمان angle mod، گروه یک کلید به سمت چپ می‌لغزد و Z جابه‌جا می‌شود. پس از تغییر چیدمان، کلیدی که روی آن Z نوشته شده را فشار دهید تا ببینید پیاده‌سازی شما کدام را ارائه می‌دهد.

چگونه بررسی کنم که آیا سیستم لینوکس من دارای variant مربوط به colemak_dh است؟

دستور localectl list-x11-keymap-variants us | grep colemak را اجرا کنید. هر چیزی که در آن لیست شده باشد، با نام قابل انتخاب است. آن را در یک نشست X با setxkbmap -layout us -variant colemak_dh تست کنید و با setxkbmap -query تأیید نمایید. اگر این variant موجود نباشد، setxkbmap عبارت Error loading new keyboard description را چاپ می‌کند و چیدمان تغییر نمی‌کند. در این صورت، گزینه‌های شما یک xkb variant سفارشی، استفاده از remapper به نام keyd یا استفاده از firmware کیبورد است.

آیا Colemak Mod-DH در کنسول متنی لینوکس کار می‌کند؟

به‌تنهایی خیر. کنسول مجازی keymap خاص خود را دارد که توسط loadkeys بارگذاری می‌شود و تنظیمات xkb دسکتاپ شما را نمی‌خواند. در Debian و Ubuntu، دستور ckbcomp us colemak_dh | sudo loadkeys - این xkb variant را برای بوت فعلی به یک keymap کنسول تبدیل می‌کند و تنظیم XKBVARIANT در فایل /etc/default/keyboard و سپس اجرای sudo setupcon باعث می‌شود این تنظیمات پس از reboot باقی بمانند. ابزار keyd در هر توزیعی در کنسول کار می‌کند، زیرا در لایه ورودی هسته (kernel input layer) بازنگاشت انجام می‌دهد. Firmware نیز در آنجا کار می‌کند و نیازی به نصب هیچ‌چیز روی سیستم ندارد.

کدام variant از Mod-DH را برای کیبورد خود انتخاب کنم؟

آن را با کیبورد فیزیکی خود مطابقت دهید. colemak_dh برای کیبوردهای ANSI است؛ همان‌هایی که کلید Enter پهن و تخت و کلید Shift سمت چپ بلند دارند. colemak_dh_iso برای کیبوردهای ISO است که کلید Enter بلند دارند و یک کلید اضافه بین Shift سمت چپ و Z قرار گرفته است. colemak_dh_ortho برای کیبوردهای ماتریسی با ستون‌های مستقیم است. variantهای wide دست راست را یک ستون به سمت بیرون می‌برند و تنها در صورتی منطقی هستند که تصمیم گرفته باشید چنین چیزی می‌خواهید. اگر حروف نزدیک به پایین سمت چپ اشتباه تایپ می‌شوند، گزینه نادرستی را انتخاب کرده‌اید.

#colemak#keyboard-layouts#ergonomics#linux-desktop#xkb