เปรียบเทียบ Colemak vs Dvorak vs QWERTY เลือกแบบไหนดี
วิเคราะห์ความแตกต่างของเลย์เอาต์แป้นพิมพ์ Colemak, Dvorak และ QWERTY พร้อมเหตุผลที่คุณควรพิจารณาก่อนเปลี่ยน รวมถึงข้อเท็จจริงเรื่องความเร็วในการพิมพ์และต้นทุนเวลาที่ต้องเสียไป
คำตอบสั้นๆ
คำถามเรื่องการเลือกระหว่าง Colemak, Dvorak และ QWERTY มีคำตอบที่น่าเบื่อสำหรับคนส่วนใหญ่ คือให้ใช้ QWERTY ต่อไป เพราะต้นทุนที่ต้องจ่ายคือการทำงานที่ช้าลงหลายสัปดาห์ ในขณะที่ผลประโยชน์ที่ได้รับนั้นน้อยและวัดผลได้ยาก หากคุณต้องการเปลี่ยนจริงๆ Colemak เป็นทางเลือกที่คุ้มค่ากว่า โดยมีการคงตำแหน่งปุ่มตัวอักษรและเครื่องหมายวรรคตอน 13 จาก 30 ปุ่มไว้ที่เดิมเหมือนกับ QWERTY และยังคงตำแหน่งปุ่มคัดลอกและวางไว้ที่เดิม ส่วน Dvorak เป็นการเปลี่ยนแปลงที่ส่งผลกระทบมากกว่า แต่มีการรองรับที่กว้างขวางที่สุด เนื่องจากระบบปฏิบัติการหลักทุกระบบได้ติดตั้งมาให้ใช้งานเป็นเวลาหลายทศวรรษแล้ว ทั้งสองเลย์เอาต์ไม่ได้ทำให้คุณพิมพ์เร็วขึ้นด้วยตัวมันเอง สิ่งที่เปลี่ยนไปคือระยะทางที่นิ้วของคุณต้องเคลื่อนที่ และความรู้สึกเมื่อสิ้นสุดวันทำงานที่ยาวนาน
หน้านี้คือการตัดสินใจ หากคุณตัดสินใจได้แล้วและต้องการคำสั่งสำหรับดำเนินการ ให้ไปที่ คู่มือการตั้งค่า Colemak สำหรับ Linux
จุดประสงค์ในการออกแบบเลย์เอาต์แต่ละแบบ
QWERTY มีที่มาจากเครื่องพิมพ์ดีด Sholes and Glidden ในช่วงทศวรรษ 1870 โดยมีเป้าหมายเพื่อแก้ปัญหาทางกลไก ในเครื่องรุ่นนั้นทุกปุ่มจะเหวี่ยงก้านเหล็กพิมพ์ขึ้นมาจากตะกร้าเพื่อกระแทกกระดาษ หากก้านพิมพ์สองอันที่อยู่ใกล้กันถูกกดต่อเนื่องกันอย่างรวดเร็วจะเกิดการขัดกันจนเครื่องติดขัด การแยกคู่ตัวอักษรที่ใช้บ่อยออกจากกันช่วยลดปัญหาการติดขัดนี้ได้ คำกล่าวอ้างยอดนิยมที่ว่า QWERTY ถูกออกแบบมาเพื่อชะลอความเร็วของผู้พิมพ์นั้นเป็นเพียงเรื่องราวที่ถูกบิดเบือน นักประวัติศาสตร์ยังพบว่าการจัดวางบางส่วนได้รับอิทธิพลมาจากพนักงานโทรเลขที่ถอดรหัส Morse code สิ่งที่สำคัญสำหรับคุณนั้นเรียบง่าย คือเลย์เอาต์นี้ถูกกำหนดตายตัวด้วยข้อจำกัดของฮาร์ดแวร์ในปี 1878 จากนั้นจึงถูกตอกย้ำด้วยการฝึกฝนมานานหลายทศวรรษ โดยไม่มีส่วนใดที่ถูกปรับแต่งมาเพื่อคีย์บอร์ดที่ไม่มีชิ้นส่วนเคลื่อนไหวเลย
Dvorak เป็นทางเลือกที่ถูกนำเสนอในปี 1936 โดย August Dvorak และ William Dealey กฎการออกแบบของมันแสดงให้เห็นชัดเจนในตัวเลย์เอาต์เอง สระทั้ง 5 ตัวคือ AOEUI จะวางอยู่บนแถวกลางด้านซ้าย ส่วนพยัญชนะภาษาอังกฤษที่ใช้บ่อยที่สุดจะวางอยู่บนแถวกลางด้านขวาคือ DHTNS ทำให้คำที่ใช้บ่อยเกิดการสลับมือในการพิมพ์ และนิ้วที่แข็งแรงที่สุดจะรับภาระงานส่วนใหญ่ เลย์เอาต์นี้ถือว่าเปลี่ยนแปลงจาก QWERTY มากที่สุดในบรรดาทั้งสามแบบ เนื่องจากมีเพียงสองปุ่มคือ A และ M เท่านั้นที่ยังคงอยู่ในตำแหน่งเดิม
Colemak ถูกเผยแพร่โดย Shai Coleman ในปี 2006 โดยมีข้อจำกัดในการออกแบบคือต้นทุนในการปรับเปลี่ยนพฤติกรรม แถวกลางของเลย์เอาต์นี้คือ A R S T D ทางด้านซ้าย และ H N E I O ทางด้านขวา ซึ่งเป็นการวางตัวอักษรภาษาอังกฤษที่ใช้บ่อยที่สุดไว้ใต้นิ้วมือ ในขณะที่ปุ่มอื่นๆ จะถูกย้ายตำแหน่งให้น้อยที่สุดเท่าที่จะเป็นไปได้ แถวล่างสุดยังคงรักษาตำแหน่ง Z X C V B ไว้ที่เดิมเหมือนกับ QWERTY นอกจากนี้ Colemak ยังเปลี่ยนปุ่ม Caps Lock ให้เป็น Backspace ซึ่งเป็นนิสัยที่คุณสามารถเลือกนำไปใช้กับเลย์เอาต์ใดก็ได้ หรือจะละเว้นไปเลยก็ได้เช่นกัน
การเปรียบเทียบ Colemak, Dvorak และ QWERTY: จำนวนปุ่มที่เปลี่ยนตำแหน่งจริง
ให้นับแถวตัวอักษรทั้ง 3 แถว ซึ่งประกอบด้วยตัวอักษร 26 ตัวและปุ่มเครื่องหมายวรรคตอน 4 ปุ่ม แล้วเปรียบเทียบแต่ละเลย์เอาต์กับตำแหน่งของ QWERTY ทีละปุ่ม คอลัมน์ทางลัดจะนับจำนวนปุ่ม Z, X, C และ V ที่ยังคงอยู่ในตำแหน่งเดิมของ QWERTY เนื่องจากปุ่มทั้งสี่นี้ทำหน้าที่เลิกทำ (undo), ตัด (cut), คัดลอก (copy) และวาง (paste) ในระบบส่วนใหญ่
The data behind this chart
[
{
"label": "QWERTY",
"keys_moved_from_qwerty": 0,
"shortcut_keys_kept": 4
},
{
"label": "Colemak",
"keys_moved_from_qwerty": 17,
"shortcut_keys_kept": 4
},
{
"label": "Dvorak",
"keys_moved_from_qwerty": 28,
"shortcut_keys_kept": 0
}
]Colemak มีการย้ายปุ่มไป 17 ปุ่ม ส่วน Dvorak มีการย้ายไป 28 ปุ่ม ช่องว่างระหว่างตัวเลขนี้คือความแตกต่างในทางปฏิบัติทั้งหมดระหว่างทั้งสองเลย์เอาต์ ปุ่มที่ถูกย้ายทุกปุ่มคือหนึ่งความเคยชินที่คุณต้องลบออก ในขณะที่มือของคุณยังคงเอื้อมไปหาตำแหน่งเดิม ดังนั้นจำนวนปุ่มที่ย้ายจึงเป็นตัววัดคร่าวๆ ว่าช่วงเวลาที่ยากลำบากนั้นจะยาวนานเพียงใด โดยตัวเลขนี้ไม่ได้บ่งบอกว่าการจัดวางแบบใดดีกว่ากัน
ทางลัดสำหรับการแก้ไขยังคงอยู่ในตำแหน่งที่คาดไว้หรือไม่
Colemak ยังคงรักษาตำแหน่ง Z, X, C และ V ไว้ที่ตำแหน่งเดิมของ QWERTY ดังนั้น Ctrl+Z, Ctrl+X, Ctrl+C และ Ctrl+V จึงยังคงอยู่ใต้นิ้วเดิมและมือข้างเดิม Dvorak รักษา 0 ของปุ่มเหล่านี้ไว้ ในรูปแบบ Dvorak ตัวอักษร C จะอยู่ที่ตำแหน่งปุ่ม I ของ QWERTY, V อยู่ที่ปุ่ม full stop ของ QWERTY, X อยู่ใต้ปุ่ม B ของ QWERTY และ Z อยู่ที่ปุ่ม slash ของ QWERTY ทำให้การคัดลอกและวางต้องใช้มือทั้งสองข้างเอื้อมไปกด
เรื่องนี้มีความสำคัญใน terminal มากกว่าในโปรแกรมประมวลผลคำ การกด Ctrl+C เพื่อขัดจังหวะคำสั่งที่กำลังทำงานอยู่ และ Ctrl+D เพื่อปิด standard input เป็นสิ่งที่ผู้ดูแลเซิร์ฟเวอร์ต้องทำหลายร้อยครั้งต่อวัน ซึ่งในรูปแบบ Dvorak ทั้งสองปุ่มนี้จะย้ายไปอยู่มือขวา: C ย้ายไปที่ปุ่ม I ของ QWERTY และ D ย้ายไปที่ปุ่ม H ของ QWERTY ระบบ macOS มีตัวเลือกที่เปลี่ยนกลับเป็น QWERTY ในขณะที่กดปุ่ม Command ค้างไว้ ส่วน Linux ไม่มีมาตรฐานเทียบเท่าสำหรับปุ่ม Ctrl ดังนั้นในรูปแบบ Dvorak ทางลัดเหล่านี้จึงย้ายตำแหน่งและคงอยู่ที่ตำแหน่งใหม่นั้น
Vim และ less ใช้ h, j, k และ l ในการเลื่อนเคอร์เซอร์ ซึ่งตัวอักษรเหล่านั้นถูกเลือกมาเพราะวางอยู่ใต้มือขวาบน QWERTY รูปแบบแป้นพิมพ์ทางเลือกทั้งสองแบบทำให้การใช้งานนี้เปลี่ยนไป บน Colemak ตัวอักษรที่พิมพ์จากปุ่ม h, j, k และ l ของ QWERTY คือ h, n, e และ i ซึ่งวิธีแก้ไขทั่วไปคือการ remap ปุ่มเลื่อนเคอร์เซอร์ไปที่สี่ปุ่มนั้น บน Dvorak ปุ่มทางกายภาพทั้งสี่ปุ่มเดียวกันจะพิมพ์ตัวอักษร d, h, t และ n การแก้ไขทั้งสองวิธีทำได้โดยเพิ่มโค้ดเพียงไม่กี่บรรทัดใน vimrc ของคุณ แต่ความช่วยเหลือนี้จะหายไปทันทีที่คุณไปใช้งานเครื่องของผู้อื่นที่ใช้การตั้งค่ามาตรฐาน
จุดที่หลักฐานเรื่องความเร็วในการพิมพ์ยังไม่ชัดเจน
ส่วนหนึ่งของข้อโต้แย้งเป็นเรื่องของคณิตศาสตร์ซึ่งไม่มีข้อโต้แย้ง เมื่อกำหนดรูปแบบแป้นพิมพ์และเนื้อหาข้อความ คุณสามารถคำนวณระยะทางรวมที่นิ้วต้องเคลื่อนที่และความถี่ที่นิ้วเดียวต้องพิมพ์ตัวอักษรสองตัวติดต่อกันได้ ตัวเลขทั้งสองค่านี้ต่ำกว่าใน Dvorak และ Colemak เมื่อเทียบกับ QWERTY สำหรับข้อความภาษาอังกฤษทั่วไป และเครื่องมือวิเคราะห์รูปแบบแป้นพิมพ์ต่างก็เห็นพ้องในทิศทางเดียวกัน อย่างไรก็ตาม ผลลัพธ์เหล่านั้นขึ้นอยู่กับข้อความที่ใช้ในการคำนวณ ซึ่งซอร์สโค้ด ภาษา และชื่อตัวแปรของคุณไม่ใช่ข้อความเหล่านั้น
ส่วนที่เป็นข้อโต้แย้งคือการคำนวณทางคณิตศาสตร์นั้นส่งผลต่อความเร็วจริงหรือไม่ ข้ออ้างที่หนักแน่นที่สุดสำหรับ Dvorak มาจากการศึกษาของกองทัพเรือสหรัฐฯ ในช่วงสงครามโลกครั้งที่สอง ซึ่งรายงานว่ามีการเพิ่มขึ้นของความเร็วอย่างมากจากการฝึกใหม่ แต่การศึกษานั้นดำเนินการภายใต้การดูแลของ August Dvorak เอง จึงไม่ใช่หลักฐานที่เป็นอิสระ ในปี 1956 Earle Strong ได้ทำการศึกษาการฝึกใหม่แบบควบคุมสำหรับ General Services Administration และพบว่าการฝึกใหม่ด้วย Dvorak ไม่ได้ให้ผลดีไปกว่าการให้เวลาฝึกฝนเพิ่มเติมแก่ผู้พิมพ์ QWERTY ในปี 1990 นักเศรษฐศาสตร์ Stan Liebowitz และ Stephen Margolis ได้รวบรวมคำวิจารณ์เหล่านี้ไว้ในบทความชื่อ The Fable of the Keys ซึ่งบทความดังกล่าวก็ถูกโต้แย้งกลับเช่นกัน เนื่องจากหัวข้อที่แท้จริงคือเรื่องการผูกขาดตลาด (market lock-in) มากกว่าเรื่องแป้นพิมพ์ หลังจากผ่านไปเก้าสิบปี ยังคงไม่มีการทดลองขนาดใหญ่ที่มีการควบคุมอย่างดีที่แสดงให้เห็นว่ารูปแบบแป้นพิมพ์ทางเลือกทำให้คนพิมพ์ได้เร็วขึ้น
มีเหตุผลที่ง่ายกว่านั้นในการระมัดระวังเกี่ยวกับข้ออ้างเรื่องความเร็ว ผู้คนสามารถพิมพ์ได้เกิน 150 คำต่อนาทีบน QWERTY หากคุณพิมพ์ได้ที่ 60 หรือ 70 คำต่อนาที สิ่งที่จำกัดคุณไม่ใช่รูปแบบแป้นพิมพ์
ความสบายและการบาดเจ็บเป็นคำถามที่ยากกว่าและมีหลักฐานน้อยกว่านั้นอีก ผู้คนรายงานว่ามือของพวกเขารู้สึกเจ็บน้อยลงหลังจากเปลี่ยนมาใช้รูปแบบใหม่ ซึ่งเป็นสิ่งที่ควรให้ความสำคัญ แต่ผู้ที่เปลี่ยนมักจะเปลี่ยนหลายอย่างพร้อมกัน ทั้งแป้นพิมพ์ใหม่ ความสูงของโต๊ะที่ต่างออกไป การพักเบรกที่มากขึ้น และการพิมพ์อย่างช้าๆ อย่างตั้งใจเป็นเวลาหลายสัปดาห์ ทั้งหมดนี้เกิดขึ้นในเดือนเดียวกัน ซึ่งสิ่งเหล่านี้อาจเป็นสาเหตุได้ หากความเจ็บปวดคือเหตุผลของคุณ ให้แก้ไขท่าทางการนั่งและปริมาณงานก่อน เพราะสิ่งเหล่านั้นมีหลักฐานรองรับที่ชัดเจนกว่าและไม่มีค่าใช้จ่ายใดๆ
ต้นทุนที่แท้จริงของการเปลี่ยนรูปแบบการพิมพ์
ในช่วงสองสามวันแรก คุณควรเตรียมใจไว้ว่าจะพิมพ์ได้ช้าเหมือนมือใหม่ โดยอาจอยู่ที่ประมาณ 15 คำต่อนาที และต้องใช้เวลาอีกสองถึงสี่สัปดาห์กว่าที่การจัดวางปุ่มแบบใหม่จะไม่ดึงความสนใจของคุณไปทั้งหมด การกลับไปพิมพ์ด้วยความเร็วเท่าเดิมมักต้องใช้เวลาหนึ่งถึงสามเดือนของการใช้งานทุกวัน ตัวเลขเหล่านี้เป็นข้อมูลที่รวบรวมจากผู้ที่เคยเปลี่ยนจริง ไม่ใช่ผลการศึกษาเชิงวิชาการ ดังนั้นให้ถือว่าเป็นช่วงเวลาโดยประมาณมากกว่าจะเป็นการรับประกัน
สิ่งที่ทำให้ผู้คนประหลาดใจคือการแทรกแซงของความจำ มือของคุณไม่ได้เรียนรู้ "Colemak" แต่เรียนรู้ตำแหน่งปลายทางของแต่ละปุ่ม การสลับใช้สองรูปแบบในเวลาที่ต่างกันจะทำให้การจดจำทั้งสองแบบอ่อนแอลง การสลับกลับไปใช้ QWERTY เพื่อทำงานเร่งด่วนแล้วสลับไปมาอีกครั้งเป็นวิธีที่ช้าที่สุดในการเรียนรู้ มีสองแนวทางที่ได้ผล คือการเปลี่ยนครั้งเดียวแล้วยอมรับช่วงเวลาที่ยากลำบากในสัปดาห์แรก หรือการแยกอุปกรณ์ให้ชัดเจน โดยใช้คีย์บอร์ดตัวหนึ่งสำหรับรูปแบบหนึ่งโดยเฉพาะ เพื่อให้บริบททางกายภาพช่วยบอกมือของคุณว่าต้องใช้การจัดวางแบบใด
คนส่วนใหญ่ที่ล้มเลิกมักทำในช่วงที่ประสิทธิภาพการพิมพ์ตกลง และสาเหตุที่ล้มเลิกมักเป็นเพราะสัปดาห์นั้นงานยุ่ง ไม่ใช่เพราะรูปแบบการพิมพ์นั้นไม่เหมาะกับตนเอง นั่นทำให้การเลือกช่วงเวลาเป็นปัจจัยตัดสินใจที่สำคัญที่สุดในการเปลี่ยนรูปแบบการพิมพ์ ควรเริ่มในช่วงสัปดาห์ที่งานไม่ยุ่ง อย่าเริ่มในสัปดาห์ก่อนถึงกำหนดส่งงาน และอย่าเริ่มในสัปดาห์ที่คุณต้องเข้าเวร (on call)
ทักษะ QWERTY ของคุณมักจะไม่หายไปไหน ผู้ที่เปลี่ยนรูปแบบการพิมพ์ส่วนใหญ่รายงานว่าทักษะเดิมจะกลับมาภายในไม่กี่วันหลังจากได้กลับไปใช้ แม้จะช้ากว่าเดิมและมีข้อผิดพลาดบ้างในช่วงแรกก็ตาม การทราบเรื่องนี้เป็นสิ่งสำคัญ เพราะการสูญเสียทักษะเดิมเป็นสิ่งที่ผู้คนกังวลมากที่สุด แต่กลับกลายเป็นเรื่องที่เกิดขึ้นจริงน้อยที่สุด
ไคลเอนต์หรือเซิร์ฟเวอร์: ควรตั้งค่าการเปลี่ยนปุ่ม (remap) ไว้ที่ไหน?
โดยส่วนใหญ่แล้วควรตั้งค่าไว้ที่ฝั่งไคลเอนต์ การตั้งค่าผังคีย์บอร์ด (keyboard layout) จะถูกนำไปใช้บนเครื่องที่เชื่อมต่อกับคีย์บอร์ดนั้นโดยตรงเท่านั้น เมื่อคุณกดปุ่ม ระบบในเครื่องของคุณจะแปลงตำแหน่งของปุ่มนั้นให้เป็นอักขระ และ เซสชัน SSH ที่รับส่งการกดปุ่มของคุณ จะส่งอักขระนั้นไปยังเซิร์ฟเวอร์ในรูปแบบไบต์ เซิร์ฟเวอร์จะไม่เห็นการกดปุ่มของคุณโดยตรง ดังนั้นการรัน localectl set-keymap dvorak บนเครื่องรีโมทจึงไม่มีผลใดๆ ต่อวิธีการพิมพ์ของคุณผ่าน SSH และหากเวิร์กสเตชันของคุณตั้งค่าเป็น Colemak คุณก็จะพิมพ์ด้วย Colemak ได้ในทุกโฮสต์ที่คุณล็อกอินเข้าไป โดยไม่จำเป็นต้องตั้งค่าใดๆ บนโฮสต์เหล่านั้นเลย
ผังคีย์บอร์ดของเซิร์ฟเวอร์จะมีความสำคัญใน 2 กรณีเท่านั้น คือ เมื่อมีคีย์บอร์ดเชื่อมต่อกับเครื่องโดยตรง และเมื่อคุณใช้งานคอนโซลที่ผู้ให้บริการจัดเตรียมไว้ให้ผ่านเบราว์เซอร์หรือผ่านการเชื่อมต่อแบบ serial สำหรับ VPS กรณีนี้หมายถึง rescue console ซึ่งเป็นสถานการณ์ที่คุณไม่ควรทำการทดลองใดๆ ทั้งสิ้น
localectl status
localectl list-keymaps | grep -i dvoraklocalectl status จะแสดงการตั้งค่าทั้งสองแบบ ได้แก่ VC Keymap สำหรับ text console และ X11 Layout สำหรับเซสชันแบบกราฟิก ส่วน list-keymaps จะแสดงชื่อผังคีย์บอร์ดของคอนโซลที่ติดตั้งอยู่ในระบบของคุณ ซึ่งเป็นการตรวจสอบเพื่อป้องกันไม่ให้คุณตั้งค่าชื่อที่ไม่มีอยู่จริง Colemak อาจไม่ได้ถูกติดตั้งไว้เป็นผังคีย์บอร์ดสำหรับคอนโซลเสมอไป แม้ว่าจะมีให้ใช้งานในเซสชันแบบกราฟิกก็ตาม ดังนั้นให้รันคำสั่ง grep เพื่อตรวจสอบผังคีย์บอร์ดของคุณก่อนที่จะสรุปว่ามีให้ใช้งาน
ในฝั่งเดสก์ท็อป setxkbmap -layout us -variant colemak จะเปลี่ยนผังคีย์บอร์ดของเซสชัน X ที่กำลังทำงานอยู่ และ localectl set-x11-keymap us pc105 colemak จะทำให้การตั้งค่านั้นคงอยู่หลังการรีบูต สำหรับ Wayland นั้น compositor จะเป็นผู้ควบคุมผังคีย์บอร์ด ดังนั้น setxkbmap จึงไม่ใช่เครื่องมือที่ถูกต้องในกรณีนี้ และการเปลี่ยนแปลงควรทำผ่านการตั้งค่าอินพุตของเดสก์ท็อปหรือใน localectl ขั้นตอนการดำเนินการทั้งหมด รวมถึงวิธีการจัดการกับปุ่ม Caps Lock สามารถดูได้ที่ คู่มือการใช้งาน Colemak บน Linux
เหตุผลที่เฟิร์มแวร์คีย์บอร์ดช่วยแก้ปัญหาได้ทั้งหมด
หากคุณต้องล็อกอินเข้าใช้งานเครื่องจำนวนมาก ให้ตั้งค่าเลย์เอาต์ไว้ที่ตัวคีย์บอร์ดแทนที่จะตั้งค่าในระบบปฏิบัติการ คีย์บอร์ดที่โปรแกรมได้จะจัดเก็บการแมปปุ่มไว้ในตัวและส่งรหัสของตัวอักษรที่คุณต้องการออกไป ทำให้ทุกโฮสต์มองเห็นว่าเป็นคีย์บอร์ดทั่วไปที่พิมพ์ตัวอักษรปกติ ไม่จำเป็นต้องตั้งค่าใดๆ บนโฮสต์ และไม่มีทางลืมตั้งค่าเมื่อต้องติดตั้งระบบใหม่ นอกจากนี้ยังครอบคลุมถึงเครื่องที่คุณไม่สามารถตั้งค่าอะไรได้เลย เช่น แล็ปท็อปของเพื่อนร่วมงาน, หน้าจอตั้งค่า UEFI, อิมเมจสำหรับกู้คืนระบบ หรือโฮสต์ที่คุณไม่มีสิทธิ์เปลี่ยนแปลงการตั้งค่าระบบ สำหรับผู้ที่ต้อง ดูแลเซิร์ฟเวอร์ Linux จำนวนมาก นี่คือความแตกต่างระหว่างการซื้ออุปกรณ์เพียงครั้งเดียวกับการต้องเพิ่มรายการตั้งค่าในทุกเครื่อง
แนวทางทั่วไปคือการใช้คีย์บอร์ดที่รัน QMK หรือ ZMK ซึ่งเป็นเฟิร์มแวร์แบบเปิดที่คุณสามารถแฟลชลงไปเองได้ โดยมี VIA และ Vial เป็นเครื่องมือแก้ไขแบบกราฟิกที่ช่วยให้บันทึกการเปลี่ยนแปลงได้โดยไม่ต้องคอมไพล์ใหม่ คีย์บอร์ดกระแสหลักหลายรุ่นยังมาพร้อมกับซอฟต์แวร์ของผู้ผลิตที่สามารถจัดเก็บการรีแมปไว้ในคีย์บอร์ดได้ ข้อจำกัดต่างๆ เป็นเรื่องที่เข้าใจได้ตามปกติ คีย์บอร์ดที่ติดมากับแล็ปท็อปมักทำเช่นนี้ไม่ได้ ดังนั้นคุณจะได้เลย์เอาต์ที่ต้องการเมื่อเสียบคีย์บอร์ดภายนอก และจะได้เลย์เอาต์ QWERTY เมื่อไม่ได้เสียบ ซึ่งถือเป็นการรบกวนการทำงานในรูปแบบของมันเอง
Rescue console เป็นความเสี่ยงในการปฏิบัติงานที่แท้จริง
ความล้มเหลวมีลักษณะดังนี้ เซิร์ฟเวอร์ไม่กลับมาทำงานหลังจากการรีบูต คุณเปิดเว็บคอนโซลของผู้ให้บริการ และต้องพิมพ์รหัสผ่าน root รวมถึงคำสั่งจัดการระบบไฟล์ด้วยเลย์เอาต์ที่คุณไม่คุ้นเคยอีกต่อไป มีสองสิ่งที่อาจผิดพลาดพร้อมกัน คือความจำกล้ามเนื้อของคุณกลายเป็นเลย์เอาต์ใหม่ และคอนโซลอาจไม่รองรับเลย์เอาต์นั้น
คอนโซลบนเบราว์เซอร์แต่ละตัวส่งข้อมูลต่างกัน บางตัวส่งอักขระที่คุณพิมพ์จากระบบท้องถิ่น ซึ่งในกรณีนี้การแมปฝั่งไคลเอ็นต์ของคุณจะทำงานตามปกติ แต่บางตัวส่งตำแหน่งของปุ่มและสมมติว่าเป็นเลย์เอาต์ US QWERTY ที่ฝั่งเซิร์ฟเวอร์ ซึ่งในกรณีนี้คีย์บอร์ดแบบ Colemak ของคุณจะพิมพ์เป็นตัวอักษร QWERTY ลงในคอนโซล คุณไม่สามารถทราบได้ว่าคอนโซลของคุณเป็นประเภทใดจากการอ่านแผงควบคุม ให้ทดสอบในขณะที่เครื่องยังทำงานปกติ โดยเปิดคอนโซล ล็อกอิน พิมพ์ประโยคหนึ่งประโยค แล้วดูผลลัพธ์ที่ปรากฏ ให้ทำทันที ไม่ใช่ทำตอนที่ระบบล่ม
จากนั้นให้ลดขั้นตอนที่คุณสามารถทำได้ ล็อกอินด้วยคีย์เพื่อให้การเข้าถึงปกติไม่ต้องพิมพ์รหัสผ่าน และให้ถือว่า การจัดการคีย์ในเซิร์ฟเวอร์ของคุณ เป็นส่วนหนึ่งของแผนการกู้คืนระบบมากกว่าจะเป็นเพียงความสะดวกสบาย เก็บพาสเวิร์ดสำหรับโหมดกู้คืนไว้ในที่ที่คุณสามารถคัดลอกและวางได้ เพราะคอนโซลบนเบราว์เซอร์ส่วนใหญ่มีฟังก์ชันส่งข้อความหรือวางข้อความ และควรเตรียมความพร้อมในการหาตัวอักษร QWERTY บนคีย์บอร์ดไว้บ้าง เพราะการดูแผนผังเลย์เอาต์จากโทรศัพท์ตอนตีสองนั้นล่าช้าเกินไป
ดิสก์ที่เข้ารหัสเพิ่มกับดักอีกหนึ่งจุด การแจ้งเตือนให้ใส่รหัสผ่าน (passphrase) ขณะบูตจะทำงานจาก initial ram disk ก่อนที่คีย์แมปปกติของคุณจะถูกโหลด ดังนั้นมันจึงใช้เลย์เอาต์ที่ถูกสร้างไว้ในอิมเมจนั้น บน Debian และ Ubuntu ค่าเริ่มต้นคือ US QWERTY การตั้งค่านี้คือ KEYMAP= ใน /etc/initramfs-tools/initramfs.conf และค่าเริ่มต้นที่มากับระบบคือ n ให้ตั้งค่าเป็น y จากนั้นรัน sudo update-initramfs -u แล้วรีบูตเพื่อตรวจสอบว่าหน้าจอรับรหัสผ่านยอมรับเลย์เอาต์ของคุณก่อนที่จะเชื่อมั่นในระบบ เครื่องที่ไม่สามารถปลดล็อกได้คือเครื่องที่คุณต้องสร้างใหม่ทั้งหมด
Colemak-DH และตัวเลือกอื่นๆ ในกลุ่ม
ทางเลือกไม่ได้มีเพียง 3 รูปแบบ Colemak-DH หรือที่เรียกกันว่า Mod-DH คือการปรับปรุง Colemak ที่พบได้บ่อยที่สุด ใน Colemak มาตรฐาน ตัวอักษร D และ H จะวางอยู่บนคอลัมน์กลางของแถวเหย้า (home row) ซึ่งนิ้วชี้ต้องเอื้อมไปด้านข้างแทนที่จะใช้วิธีงอนิ้ว Mod-DH ย้ายตัวอักษรทั้งสองนี้ลงมาที่แถวล่างใต้ตำแหน่งนิ้วชี้ ทำให้แถวเหย้ากลายเป็น A R S T G ทางด้านซ้าย และ M N E I O ทางด้านขวา โดยมีอยู่ 2 เวอร์ชัน คือเวอร์ชันสำหรับคีย์บอร์ดแบบแถวเยื้อง (row staggered) ทั่วไป และเวอร์ชันสำหรับคีย์บอร์ดแบบวางตรง (ortholinear) หรือแบบคอลัมน์เยื้อง (column staggered) ซึ่งคุณควรเลือกเวอร์ชันที่ตรงกับฮาร์ดแวร์ของคุณ
นอกจากนี้ยังมี Workman, Norman, Canary, Graphite และการออกแบบอื่นๆ อีกมากมายที่สร้างขึ้นโดยโปรแกรมปรับแต่งเลย์เอาต์ (layout optimisers) ส่วน Programmer Dvorak จะจัดเรียงแถวตัวเลขและสัญลักษณ์ใหม่สำหรับผู้ที่พิมพ์เครื่องหมายวรรคตอนมากกว่าข้อความทั่วไป ภาษาอื่นๆ ก็มีทางเลือกของตนเอง เช่น bépo สำหรับภาษาฝรั่งเศส และ Neo สำหรับภาษาเยอรมัน ตัวกรองในทางปฏิบัติคือความพร้อมใช้งาน Dvorak มีมาให้เกือบทุกที่ รวมถึงคีย์บอร์ดบนโทรศัพท์และ keymap ของคอนโซล ส่วน Colemak มีมาพร้อมกับข้อมูลการตั้งค่าคีย์บอร์ด X ที่ Linux desktop ทุกตัวอ่านได้ Colemak-DH เพิ่งถูกเพิ่มเข้ามาในข้อมูลดังกล่าวเมื่อไม่นานมานี้ ดังนั้นบน distribution รุ่นเก่า คุณอาจยังต้องติดตั้งไฟล์เลย์เอาต์จากโปรเจกต์ด้วยตนเอง เลย์เอาต์จากชุมชนเป็นไฟล์ที่คุณต้องพกพาไปทุกเครื่อง หรือฝังไว้ใน firmware ของคีย์บอร์ดของคุณเอง
แล้วคุณควรเลือกแบบไหน?
หากไม่มีปัญหาอะไร ให้ใช้ QWERTY ต่อไป การเปลี่ยนรูปแบบต้องใช้เวลาปรับตัวนานหลายสัปดาห์ และหลักฐานที่บ่งชี้ว่าคุณจะพิมพ์ได้เร็วขึ้นนั้นยังมีน้อย ดังนั้นความหงุดหงิดเพียงเล็กน้อยกับเลย์เอาต์ปัจจุบันจึงไม่ใช่เหตุผลที่เพียงพอในการเปลี่ยน
เลือก Colemak หากคุณต้องการการจัดวางปุ่มใหม่โดยมีต้นทุนในการปรับตัวต่ำที่สุด ปุ่ม 13 ปุ่มยังคงอยู่ที่เดิม ปุ่มลัดสำหรับการแก้ไขยังคงอยู่ที่เดิม และสามารถเปลี่ยนการตั้งค่าได้ด้วยคำสั่งบรรทัดเดียวบน Linux desktop ทุกเครื่อง
เลือก Dvorak หากคุณให้ความสำคัญกับการตั้งค่าเลย์เอาต์ผ่านเมนูที่มีอยู่แล้วในทุกเครื่องและทุกระบบปฏิบัติการ และคุณยอมรับที่จะต้องเรียนรู้ปุ่มลัดใหม่
เลือก Colemak-DH หากคุณกำลังจะซื้อคีย์บอร์ดที่ตั้งโปรแกรมได้ เฟิร์มแวร์จะช่วยแก้ปัญหาเรื่องความพร้อมใช้งาน ดังนั้นคุณจึงสามารถเลือกใช้รูปแบบที่ได้รับการปรับปรุงนี้ได้เลย
ไม่ว่าคุณจะเลือกแบบใด ให้ตัดสินใจก่อนว่าจะให้การแมปปุ่มอยู่ที่ระดับใด หากคุณใช้เวลาทั้งวันไปกับ a full time terminal workbench และต้องล็อกอินเข้าใช้งานเครื่องจำนวนมาก การตั้งค่าที่ตัวคีย์บอร์ดคือทางเลือกที่เหมาะสม หากคุณทำงานบนแล็ปท็อปเพียงเครื่องเดียว การตั้งค่าที่ระบบปฏิบัติการก็เพียงพอแล้ว จากนั้นให้วางแผนเส้นทางสำรองและทดสอบให้เรียบร้อยก่อนที่จะต้องใช้งานจริง
FAQ
Colemak หรือ Dvorak พิมพ์ได้เร็วกว่า QWERTY จริงหรือไม่?
ไม่มีหลักฐานที่ชัดเจนว่าเลย์เอาต์ใดเลย์เอาต์หนึ่งทำให้คุณพิมพ์ได้เร็วขึ้น สิ่งที่วัดผลได้คือหลักคณิตศาสตร์: สำหรับภาษาอังกฤษ ทั้งสองเลย์เอาต์ช่วยให้พิมพ์บนแถวเหย้า (home row) ได้มากขึ้นและนิ้วเคลื่อนที่น้อยกว่า QWERTY แต่ยังไม่มีการทดลองขนาดใหญ่ที่มีการควบคุมอย่างดีที่พิสูจน์ได้ว่าสิ่งนี้ส่งผลให้จำนวนคำต่อนาที (WPM) สูงขึ้น การศึกษาของกองทัพเรือที่มักถูกอ้างถึงสำหรับ Dvorak นั้นอยู่ภายใต้การดูแลของ Dvorak เอง และการศึกษาของ Earle Strong ในปี 1956 สำหรับ General Services Administration ไม่พบข้อได้เปรียบใดๆ เมื่อผู้พิมพ์ QWERTY ได้รับการฝึกฝนเพิ่มเติมในปริมาณที่เท่ากัน ผู้คนสามารถพิมพ์ได้เกิน 150 คำต่อนาทีบน QWERTY ดังนั้นหากคุณพิมพ์ได้ 70 คำต่อนาที เลย์เอาต์ไม่ใช่ข้อจำกัดของคุณ
ต้องใช้เวลานานเท่าใดในการเรียนรู้เลย์เอาต์คีย์บอร์ดใหม่?
ให้วางแผนไว้ว่าคุณจะพิมพ์ได้ประมาณ 15 คำต่อนาทีในช่วงสองสามวันแรก ใช้เวลาสองถึงสี่สัปดาห์กว่าที่เลย์เอาต์จะไม่ต้องใช้สมาธิทั้งหมดของคุณ และใช้เวลาหนึ่งถึงสามเดือนกว่าจะกลับไปพิมพ์ได้เร็วเท่าเดิม นี่เป็นเพียงช่วงเวลาที่ผู้ใช้ส่วนใหญ่รายงาน ไม่ใช่ผลการศึกษาที่แน่ชัด ความเสี่ยงที่มากกว่าคือการรบกวนกัน: การสลับไปมาระหว่างสองเลย์เอาต์ในระหว่างวันจะทำให้ทั้งสองเลย์เอาต์ไม่คล่องตัว ดังนั้นควรเลือกเปลี่ยนครั้งเดียวแล้วยอมรับช่วงสัปดาห์ที่ช้า หรือแยกการใช้งานให้ชัดเจนโดยให้คีย์บอร์ดหนึ่งตัวใช้เลย์เอาต์เดียวตลอดไป คนส่วนใหญ่ที่ล้มเลิกมักทำในช่วงที่พิมพ์ช้าเพราะมีงานยุ่ง ดังนั้นควรเริ่มในช่วงเวลาที่งานไม่หนัก
เลย์เอาต์คีย์บอร์ดของฉันจะตามไปเมื่อใช้ SSH หรือไม่?
ใช่ และเซิร์ฟเวอร์ไม่มีส่วนเกี่ยวข้องกับเรื่องนี้ เลย์เอาต์จะถูกนำไปใช้บนเครื่องที่คีย์บอร์ดของคุณเชื่อมต่ออยู่ ระบบในเครื่องของคุณจะเปลี่ยนการกดปุ่มให้เป็นตัวอักษร และ SSH จะส่งตัวอักษรนั้นเป็นไบต์ ดังนั้นโฮสต์ปลายทางจะไม่เห็นตำแหน่งของปุ่ม การตั้งค่า keymap บนเซิร์ฟเวอร์ไม่มีผลใดๆ สำหรับผู้ใช้ SSH keymap ของเซิร์ฟเวอร์จะมีผลเฉพาะกับคีย์บอร์ดที่เชื่อมต่อโดยตรง หรือคอนโซลที่ผู้ให้บริการจัดเตรียมให้ผ่านเบราว์เซอร์หรือลิงก์อนุกรมเท่านั้น
จะเกิดอะไรขึ้นกับ Ctrl+C และปุ่ม h j k l ใน vim?
Colemak คงตำแหน่ง Z, X, C และ V ไว้ที่เดิมเหมือน QWERTY ดังนั้นทางลัดในการแก้ไขมาตรฐานจึงไม่เปลี่ยนตำแหน่ง แต่ Dvorak จะย้ายทั้งสี่ตัว: C จะไปอยู่ที่ปุ่ม I ของ QWERTY, V อยู่ที่ปุ่ม full stop, X อยู่ใต้ปุ่ม B และ Z อยู่ที่ปุ่ม slash ส่วน Ctrl+D จะย้ายไปที่ปุ่ม H ของ QWERTY ซึ่งมีผลต่อการใช้งานใน shell การเลื่อนเคอร์เซอร์จะใช้งานไม่ได้ในทั้งสองเลย์เอาต์ ผู้ใช้ Colemak มักจะตั้งค่าปุ่มเลื่อนใหม่เป็น h, n, e และ i ซึ่งเป็นตัวอักษรที่พิมพ์อยู่บนปุ่ม h, j, k และ l ของคีย์บอร์ด QWERTY จริงๆ ส่วนผู้ใช้ Dvorak จะใช้ d, h, t และ n ด้วยเหตุผลเดียวกัน
ฉันจะรักษาคอนโซลสำหรับกู้คืนระบบให้ใช้งานได้หลังจากเปลี่ยนเลย์เอาต์ได้อย่างไร?
ทดสอบทันทีในขณะที่เซิร์ฟเวอร์ยังใช้งานได้ปกติ เปิดคอนโซลของผู้ให้บริการของคุณ ล็อกอิน และพิมพ์ประโยคทดสอบ เพราะคอนโซลบางแห่งจะส่งตัวอักษรที่ไคลเอนต์ของคุณสร้างขึ้น ในขณะที่บางแห่งจะส่งตำแหน่งของปุ่มและสมมติว่าเป็น US QWERTY ที่ฝั่งปลายทาง ให้ล็อกอินด้วย SSH keys เพื่อให้การเข้าถึงตามปกติไม่ต้องพิมพ์รหัสผ่าน และเก็บรหัสผ่านสำหรับกู้คืนไว้ในที่ที่คุณสามารถคัดลอกและวางได้ เนื่องจากคอนโซลในเบราว์เซอร์ส่วนใหญ่มีฟังก์ชันวางหรือส่งข้อความ หากดิสก์มีการเข้ารหัส พรอมต์สำหรับรหัสผ่านตอนบูตจะใช้ keymap ที่ฝังอยู่ใน initial ram disk สำหรับ Debian และ Ubuntu หมายถึงการตั้งค่า KEYMAP=y ใน /etc/initramfs-tools/initramfs.conf, รัน sudo update-initramfs -u จากนั้นรีบูตเพื่อยืนยันว่าพรอมต์ยอมรับเลย์เอาต์ของคุณแล้ว