ใน Vim หากต้องการเลือกข้อความทั้งหมดในไฟล์ ให้ใช้ไฟล์ ggVG คำสั่งในโหมดปกติ หลังจากเลือกข้อความแล้ว การดำเนินการต่างๆ เช่น การคัดลอก ลบ การเปลี่ยนแปลง หรือการวาง ก็สามารถดำเนินการกับข้อความทั้งหมดได้อย่างง่ายดาย
หากคุณใช้ระบบปฏิบัติการแบบ GUI คุณจะต้องคุ้นเคยกับ Ctrl+ก ปุ่มลัดเพื่อเลือกเนื้อหาทั้งหมดในไฟล์หรือหน้าต่าง ใน Vim คุณไม่สามารถใช้ปุ่มเดียวกันเพื่อเลือกข้อความทั้งหมดได้ แต่จะมีชุดคีย์อื่น (ggVG) ให้เลือกทุกอย่างในไฟล์แทน ในคู่มือนี้ ฉันจะสำรวจวิธีเลือกข้อความใน Vim และวิธีทำให้ง่ายขึ้นโดยใช้การแมปคีย์
บันทึก: คำสั่ง Vim ที่กล่าวถึงในคู่มือนี้ดำเนินการบน macOS เนื่องจาก Vim เป็นตัวแก้ไขข้อความข้ามแพลตฟอร์ม คำสั่งจึงทำงานโดยไม่มีข้อผิดพลาดบน Linux และ Windows เช่นกัน
เลือกทั้งหมดในกลุ่ม
หากต้องการเลือกทั้งหมดใน Vim ให้กดปุ่ม Esc เพื่อเข้าสู่โหมด NORMAL และพิมพ์คำสั่งด้านล่าง:
ggVG
ในคำสั่งข้างต้น จะใช้คีย์ผสมทั้ง 5 ปุ่ม มาทำลายมันกัน
- gg ใช้สำหรับวางเคอร์เซอร์ไว้ที่จุดเริ่มต้นของบรรทัดแรก
- ใน ใช้เพื่อสลับโหมดปัจจุบันเป็นโหมด VISUAL LINE
- ช ใช้สำหรับวางเคอร์เซอร์ไว้ที่จุดเริ่มต้นของบรรทัดสุดท้าย
หลังจากเลือกทั้งหมดแล้ว ให้ใช้คำสั่งที่กล่าวถึงในตารางต่อไปนี้เพื่อดำเนินการตามที่ต้องการ
และ | เพื่อคัดลอก (ดึง) ข้อความทั้งหมด |
ง | หากต้องการลบข้อความทั้งหมด |
ค | หากต้องการเปลี่ยนข้อความทั้งหมด |
ส | เพื่อแทนที่รูปแบบเฉพาะด้วยสตริง |
เลือก All in Vim โดยใช้ Ctrl+a Map
รวมทั้งฉันด้วย ไม่มีใครอยากจะใช้ชุดคำสั่ง Vim ที่จำยากสักหน่อยเพื่อเลือกข้อความทั้งหมดในไฟล์ อย่างไรก็ตาม Ctrl+ก ปุ่ม (บน Linux และ Windows) ถูกใช้อย่างแพร่หลายและง่ายต่อการจดจำ ดังนั้นผมจึงขอจัดทำแผนที่ Ctrl+ก กุญแจด้วย ggVG สั่งการ.
เปิด vimrc วางบรรทัดต่อไปนี้ในนั้น และบันทึกโดยใช้นามสกุล :wq สั่งหรือกด. กะ+zz กุญแจ
โนร์แมป < ซีเอ > ggVG
ในคำสั่งข้างต้น โนร์แมป ใช้เพื่อแมปคีย์แบบไม่เรียกซ้ำในโหมด NORMAL ในขณะที่ <ค-ก> บ่งบอกถึง Ctrl , และ ก กุญแจ คุณสามารถตั้งค่าคีย์ใดก็ได้ตามความต้องการของคุณ
คัดลอกและลบบรรทัดทั้งหมดในไฟล์
ที่ % command เป็นอีกหนึ่งคำสั่งที่มีประโยชน์ในการดำเนินการกับไฟล์ทั้งหมด ตัวอย่างเช่น หากต้องการคัดลอกบรรทัดทั้งหมดในไฟล์ ให้ใช้ :%และ สั่งการ. ที่ % ระบุชื่อไฟล์ปัจจุบัน และ และ กำลังคัดลอกข้อความทั้งหมดในไฟล์ ในทำนองเดียวกัน หากต้องการลบบรรทัดทั้งหมด ให้ใช้ :%d สั่งการ.
: : % และ 'คัดลอกทุกบรรทัดในไฟล์:%d ' ลบบรรทัดทั้งหมด ใน ก ไฟล์
: : % ส /< ลวดลาย >>< ทดแทน > 'แทนที่รูปแบบด้วยสตริง
ฟังก์ชั่นเดียวกันนี้สามารถทำได้โดยใช้ gg และ ช คำสั่ง แต่ขึ้นอยู่กับตำแหน่งเคอร์เซอร์ นำเคอร์เซอร์ไปที่จุดเริ่มต้นของไฟล์โดยใช้ gg และกด วายจี เพื่อคัดลอกบรรทัดทั้งหมด ในทำนองเดียวกันให้วางเคอร์เซอร์ไว้ที่ส่วนท้ายโดยใช้ ช และกด ygg เพื่อคัดลอกบรรทัดทั้งหมด หากต้องการลบบรรทัด ให้แทนที่ และ กับ ง .
นอกจากนี้ ใช่ และ วว คำสั่งยังนับเป็นหมายเลขบรรทัดด้วย หากต้องการคัดลอกสี่บรรทัด ให้กด 4yy จากนั้นสี่บรรทัดจากตำแหน่งเคอร์เซอร์จะถูกคัดลอก การคัดลอกและลบฟังก์ชันการทำงานในไฟล์ทั้งหมดสามารถทำได้หากเราส่งผ่านตัวเลขจำนวนมาก เช่น 99999 ด้วย ใช่ หรือ วว สั่งการ. ตัวอย่างเช่น, 99999ปปป และ 99999วว คำสั่งจะคัดลอกและลบเนื้อหาในไฟล์ทั้งหมด
คัดลอกข้อความทั้งหมดไปยังคลิปบอร์ดของระบบ
หากต้องการวางข้อความที่คัดลอกจาก Vim ไปยังแอปพลิเคชันระบบ เช่น โปรแกรมแก้ไขข้อความหรือเบราว์เซอร์ ให้ใช้ gg “ *วายจี สั่งการ. โดยทั่วไปแล้ว Vim จะคัดลอกข้อความไปยังรีจิสเตอร์ที่ไม่มีชื่อเริ่มต้น ซึ่งสามารถเข้าถึงได้โดยใช้ :reg “” . อย่างไรก็ตาม Vim จะไม่อนุญาตให้คุณวางข้อความนอก Vim editor ใช้ ' *และ คำสั่งให้โอน เลือกแล้ว ข้อความไปยังคลิปบอร์ดของระบบปฏิบัติการ
gg '*yG ' คัดลอกไปยังคลิปบอร์ดของระบบ
ในคำสั่งข้างต้น * คือการลงทะเบียนระบบซึ่งเป็นพื้นที่จัดเก็บข้อมูลขนาดเล็กเพื่อเก็บข้อมูล มีการลงทะเบียนระบบสองระบบ + และ * และทั้งสองสามารถใช้เพื่อคัดลอกเนื้อหาไปยังคลิปบอร์ดของระบบ คุณสามารถใช้คำสั่งนี้แตกต่างออกไปได้เมื่อคุณอยู่ในโหมดคำสั่ง
: : % ย+ 'คัดลอกไปยังคลิปบอร์ดของระบบ
ที่นี่, % แสดงถึงไฟล์ทั้งหมด และ มีไว้สำหรับการดึง และ + คือการลงทะเบียนระบบ อย่างไรก็ตาม, * สามารถใช้เพื่อวัตถุประสงค์เดียวกันได้
ในทำนองเดียวกัน หากคุณคัดลอกบางสิ่งลงในคลิปบอร์ด เพื่อวางลงใน Vim ให้ใช้ “+น.
บทสรุป
ใน Vim คำสั่ง ggVG ใช้เพื่อเลือกทั้งหมดในไฟล์ หลังจากเลือกบรรทัดทั้งหมดแล้ว คุณสามารถดำเนินการต่างๆ ได้ เช่น การคัดลอก การเปลี่ยนแปลง หรือการลบ อย่างไรก็ตาม การดำเนินการเหล่านี้สามารถทำได้โดยใช้บรรทัดคำสั่งด้วย % เข้าสู่ระบบ. ฉันแนะนำให้แมปคีย์ (คีย์) เพื่อดำเนินการเลือกทั้งหมดใน Vim