วิธีกำหนดปุ่มเคอร์เซอร์ใหม่ใน vi & vim



ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา

ในขณะที่บางคนอาจยกเว้นการเปลี่ยนแปลงใด ๆ กับปุ่มเคอร์เซอร์ vi Unix แบบคลาสสิก แต่คุณอาจเป็นผู้ใช้กลุ่มหนึ่งที่ต้องการเปลี่ยนแปลง สิ่งที่ดีเกี่ยวกับ Linux, BSD และ Unix โดยรวมคือคุณมีคำพูดสุดท้ายเกี่ยวกับทุกสิ่ง นักเล่นเกมหลายคนชอบใช้ปุ่ม WASD เป็นปุ่มเคอร์เซอร์และคุณอาจต้องการใช้ปุ่มเหล่านี้แทน HJKL นอกจากนี้ยังมีชุดค่าผสมที่น่าสนใจอื่น ๆ อีกสองสามชุดที่คุณอาจต้องการลองและคุณสามารถลองชุดเหล่านี้ได้



กระบวนการนี้ไม่เกี่ยวข้องมากเกินไป แต่ต้องใช้บรรทัดคำสั่ง หากคุณคุ้นเคยกับการใช้ vi และ vim แสดงว่าคุณคุ้นเคยกับวิธีการใช้งานแล้ว คลิกที่เมนู K ใน KDE หรือเมนู Whisker ใน Xfce4 และคลิกที่ Terminal ใน System Tools คุณสามารถค้นหาได้ในที่เดียวกันในเมนูแอปพลิเคชันใน GNOME Shell และ LXDE ผู้ใช้ Ubuntu Unity สามารถค้นหาคำว่า Terminal บน Dash หรือคุณสามารถใช้ Ctrl + Alt + T เพื่อเปิดขึ้นมา



วิธีที่ 1: การกำหนดคีย์ WASD ให้กับ vi & vim

เนื่องจากคีย์ WASD มีบางอย่างที่กำหนดให้เป็นกลุ่มอยู่แล้วคุณจึงต้องใช้คีย์ตัวปรับแต่ง มันจะง่ายพอที่จะกด Alt และปุ่มเหล่านี้ค้างไว้ แต่เราต้องตรวจสอบให้แน่ใจว่าโปรแกรมจำลองเทอร์มินัลของคุณไม่ได้กำหนดทางลัดเหล่านั้นให้กับบางสิ่ง ที่เทอร์มินัลพิมพ์ แมว แล้วกด Enter กด Alt + W, Alt + A, Alt + S และ Alt + D เพื่อดูว่ามีรหัสคำสั่งแปลก ๆ เกิดขึ้นหรือไม่ คุณอาจสังเกตเห็นว่าเมนูบางเมนูดร็อปลงเหมือนที่เราทำกับเทอร์มินัล xfce4 ที่เราใช้ในการถ่ายภาพหน้าจอ



พิมพ์ Ctrl + C เพื่อออกซึ่งอาจทำให้อักขระ Unicode ที่พิมพ์ไม่ได้แปลก ๆ กระเด็นไปที่เทอร์มินัลของคุณ คุณสามารถเพิกเฉยต่อสิ่งเหล่านี้ได้อย่างปลอดภัย ให้พิมพ์ กลุ่ม ~ / .vimrc เพื่อโหลดไฟล์การกำหนดค่าของคุณ กดปุ่ม j ค้างไว้จนกว่าคุณจะไปจนสุดที่ด้านล่างแล้วพิมพ์ I เพื่อเข้าสู่โหมดแทรก

กด Enter เพื่อรับบรรทัดพิเศษจากนั้นสิ่งที่คุณต้องการใส่จะขึ้นอยู่กับว่าโปรแกรมจำลองเทอร์มินัลของคุณทำงานหรือไม่ ถ้าไม่เช่นนั้นให้เพิ่มสี่บรรทัดต่อไปนี้:

noremap h

noremap j

noremap k

l noremap

หากคุณมีปัญหาให้ลองทำสิ่งนี้แทน:

noremap a h

noremap s j

noremap ใน k

noremap d l

ไม่ว่าในกรณีใดให้กด Esc แล้วพิมพ์: wq เพื่อบันทึกงานของคุณ ลองโหลด vim ขึ้นมาอีกครั้งและดูว่าตอนนี้คุณสามารถใช้ปุ่ม WASD ได้หรือไม่เมื่อคุณไม่ได้อยู่ในโหมดแทรกเนื่องจากเป็นปุ่มเคอร์เซอร์ คุณมักจะต้องกด Alt หรือ Esc ค้างไว้เมื่อใช้งานเนื่องจากคีย์เหล่านั้นได้รับการกำหนดแล้ว แต่นอกเหนือจากนั้นควรจะใช้งานได้ดี นี่เป็นวิธีที่เร็วที่สุดในการดำเนินการนี้โดยไม่ต้องเล่นเพิ่มเติม แต่มีวิธีการอื่น ๆ อีกสองสามอย่างที่คุณสามารถลองทำได้หากวิธีนี้ใช้ไม่ได้ผลหรือหากคุณต้องการใช้คีย์ผสมอื่น ๆ

วิธีที่ 2: การใช้การกำหนด Alt สำรอง

หากเทคนิคเหล่านี้ไม่ได้ผลให้พิมพ์ กลุ่ม ~ / .vimrc อีกครั้งเพื่อโหลดไฟล์ rc ของคุณอีกครั้งและกดปุ่ม J ค้างไว้จนกว่าคุณจะไปที่ด้านล่างสุด พิมพ์ I เพื่อแก้ไขอีกครั้งและตอนนี้เปลี่ยนส่วนล่างเพื่ออ่านดังนี้:

noremap ^ [a h

noremap ^ [s j

noremap ^ [ใน k

noremap ^ [งล

ผู้ใช้บางคนรายงานว่าพิมพ์เครื่องหมายคาเร็ต (^) ตามจริงแล้วตามด้วยวงเล็บเปิด ([) ในขณะที่คนอื่น ๆ บอกว่าพวกเขาจำเป็นต้องกดคีย์ผสม Alt ค้างไว้หรืออีกวิธีคือคัดลอกและวางรหัสคำสั่ง คุณสามารถพิมพ์ได้ตลอดเวลา แมว ที่บรรทัดคำสั่งปกติแล้วกด Alt + A, Alt + S, Alt + W และ Alt + D เพื่อรับสิ่งเหล่านี้ซึ่งคุณสามารถไฮไลต์คัดลอกด้วยเมนูแก้ไขจากนั้นวางด้วยเมนูแก้ไขลงในกลุ่มหากจำเป็นทั้งหมด . อีกครั้งวิธีนี้ไม่จำเป็นสำหรับผู้ใช้ส่วนใหญ่และควรหลีกเลี่ยง วิธีแรกใช้การเล่นน้อยกว่ามาก

คุณสามารถกด Esc แล้วพิมพ์: wq เพื่อบันทึก เปิดไฟล์อื่นในกลุ่มและทดสอบเพื่อดูว่าคีย์ที่คุณต้องการใช้งานได้หรือไม่ในตอนนี้ สิ่งนี้ควรใช้งานได้แม้กับโปรแกรมจำลองเทอร์มินัลทางเลือกหลายประเภท

วิธีที่ 3: การใช้การผูกคีย์อื่น ๆ

คุณไม่ได้ จำกัด ไว้ที่คีย์ HJKL เริ่มต้นหรือคีย์ WASD ที่นักเล่นเกมต้องการ บางคนชอบใช้ชุดอื่น ๆ ในไฟล์. vimrc ของคุณคุณสามารถแทนที่ส่วน:

noremap h

noremap j

noremap k

l noremap

สิ่งนี้ทำให้คุณมีทางเลือกมากขึ้น บางคนชอบ ESDF ซึ่งให้นิ้วก้อยแตะแป้นอื่น ๆ ในขณะที่คุณใช้ปุ่มเหล่านี้เป็นปุ่มเคอร์เซอร์ คุณสามารถใช้สิ่งต่อไปนี้ในไฟล์ของคุณหากคุณต้องการ:

noremap h

noremap j

noremap k

l noremap

บางคนชอบเพชร IJKL ที่ด้านอื่น ๆ ของแป้นพิมพ์ คุณอาจสนใจในการกำหนดค่านี้:

noremap h

noremap j

noremap k

l noremap

โปรดทราบว่าคีย์นี้มีความซับซ้อนกว่าเล็กน้อยเนื่องจากใช้คีย์บางอย่างที่การเชื่อมโยง HJKL มาตรฐานจะใช้ แต่ก็ควรใช้งานได้เหมือนเดิม หากคุณสนใจการผูกแบบอื่นเหล่านี้คุณอาจสนุกกับการทดลองใช้ นักเล่นเกมที่ใช้ชุดค่าผสมอื่น ๆ บางครั้งจะแทนที่สิ่งเหล่านี้และยังมีแฮ็กเกอร์ Unix บางประเภทที่กำหนดค่ากลุ่มให้ทำงานร่วมกับคอนโทรลเลอร์ USB อย่างไรก็ตามผู้ใช้ส่วนใหญ่จะพบคีย์ HJKL และ WASD มากเกินพอ

อ่าน 4 นาที