ฉันควรใช้ Vim เพื่อแก้ไขเอกสารของฉัน และฟีเจอร์ที่ยังไม่ได้ค้นพบมากมายของมันทำให้ฉันประหลาดใจอยู่เสมอ กุญแจผู้นำก็เป็นหนึ่งในนั้น หากคุณเป็นผู้ใช้ Mac คุณจะต้องทราบถึงคีย์คำสั่ง ซึ่งสามารถเรียกอีกอย่างว่าคีย์ผู้นำได้ด้วย ฟังก์ชันการทำงานของปุ่มผู้นำใน Vim ค่อนข้างคล้ายกับปุ่มคำสั่งของ Mac
- วัตถุประสงค์ของกุญแจผู้นำ
- การใช้กุญแจผู้นำ
- การเปลี่ยนกุญแจผู้นำ
- การทำแผนที่คีย์กับผู้นำ
- กุญแจผู้นำท้องถิ่น
- การใช้กุญแจผู้นำหลายอัน
- บทสรุป
วัตถุประสงค์ของกุญแจผู้นำ
คุณต้องตระหนักถึงคุณสมบัติการแมปคีย์ Vim มันช่วยให้คุณตั้งค่าปุ่มลัดแบบกำหนดเองเพื่อเปิดใช้งานคำสั่งและฟังก์ชั่น Vim ต่างๆ แต่ปุ่มจำนวนมากมีฟังก์ชันบรรทัดคำสั่งบางประเภทอยู่แล้ว ดังนั้นคุณจึงไม่สามารถตั้งค่าให้เป็นปุ่มลัดได้ นี่คือจุดที่กุญแจผู้นำมีประโยชน์
ปุ่มผู้นำคือคีย์นำหน้าที่ถูกเพิ่มก่อนคีย์อื่นเพื่อแมปทางลัดสำหรับฟังก์ชัน Vim นักพัฒนาปลั๊กอินจำนวนมากยังใช้คีย์ผู้นำสำหรับทางลัดปลั๊กอินของตน
การใช้กุญแจผู้นำ
หากต้องการใช้แป้นผู้นำ ขั้นแรกให้กดปุ่มผู้นำ (\) จากนั้นจึงกดแป้นหรือคำสั่งที่แมป ตัวอย่างเช่น หากคุณได้แมปแล้ว <ผู้นำ>ส คุณสามารถรันสิ่งนี้ได้โดยใช้ \+s ปุ่มในโหมด Vim NORMAL
สิ่งสำคัญคือต้องทราบว่าหลังจากกดปุ่มผู้นำ (\) คุณจะมีเวลาเพียง 1 วินาที (1,000 มิลลิวินาที) ในการกดปุ่มอื่นหรือพิมพ์คำสั่ง ตามค่าเริ่มต้น ในหน้าต่าง Vim คุณไม่สามารถดูว่าคุณได้กดปุ่มหรือไม่
แต่คุณสามารถดูคีย์ผู้นำในหน้าต่าง Vim และเปลี่ยนระยะเวลาการกดคีย์ผู้นำโพสต์ได้ ด้วยการปรับแต่ง Vim หากต้องการแสดงคำสั่งที่ด้านล่างของหน้าต่าง Vim ให้วาง ตั้งค่า showcmd คำสั่งใน vimrc ไฟล์.
ชุด แสดง cmdหากต้องการเปลี่ยนเวลาให้ใช้ หมดเวลา=[ค่า] , ที่ไหน [ค่า] อยู่ในหน่วยมิลลิวินาที
หมดเวลา = [ ค่า ]
เช่น การตั้งค่า หมดเวลา ถึง 2 วินาที ใช้ 2000 เป็นค่า
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ showcmd และ หมดเวลา ใช้ :help showcmd และ :help หมดเวลา คำสั่งใน Vim
การเปลี่ยนกุญแจผู้นำ
แบ็กสแลช (\) เป็นผู้นำเริ่มต้นของ Vim แต่ผู้ใช้บางคนพบว่าไม่สะดวก คีย์ผู้นำสามารถเปลี่ยนได้อย่างง่ายดาย และโดยปกติจะใช้คีย์ลูกน้ำ (,) สำหรับคีย์ผู้นำ
หากต้องการเปลี่ยนคีย์ผู้นำ Vim ให้เปิด vimrc ไฟล์และสถานที่ la Mapleader= “ , “ สำหรับ Vim เวอร์ชันดั้งเดิม
อนุญาต คนเมเปิ้ล = ','หากคุณมี Vim เวอร์ชัน 9 ขึ้นไป คุณสามารถใช้ g:mapleader= ได้ “ , “ .
กรัม: คนเมเปิ้ล = ','ที่นี่, ก เป็นคำนำหน้าที่ใช้ใน Vim เพื่อสื่อถึงบริบททั่วโลก
บันทึก: แม้ว่าคุณจะมี Vim เวอร์ชัน 9 คุณยังคงสามารถใช้วิธีดั้งเดิมในการกำหนดคีย์ผู้นำได้
หลังจากทำการเปลี่ยนแปลงแล้วให้บันทึกไฟล์ vimrc ไฟล์โดยกดปุ่ม กะ+zz ปุ่มหรือการพิมพ์ :wq สั่งการ.
นี่คือวิธีที่คุณสามารถเปลี่ยนคีย์ผู้นำ Vim เป็นลูกน้ำ (,) แต่คุณยังสามารถเปลี่ยนเป็นคีย์ใดก็ได้ ขึ้นอยู่กับความชอบส่วนบุคคลและขั้นตอนการทำงานของคุณ
การทำแผนที่คีย์กับผู้นำ
หากต้องการแมปฟังก์ชัน Vim ด้วยคีย์ผู้นำ ให้ใช้ map
มาแมปฟังก์ชันการกำหนดหมายเลขบรรทัดด้วย <ผู้นำ>น กุญแจ
โนร์แมป < ผู้นำ > n : กำหนดหมายเลข < CR >วางคำสั่งข้างต้นใน vimrc ไฟล์และบันทึก
ที่ โนร์แมป บ่งชี้ถึงการแมปแบบไม่เรียกซ้ำสำหรับโหมด NORMAL <ผู้นำ>น คือการรวมคีย์ผู้นำและคีย์แบบกำหนดเอง หลังจากเครื่องหมายทวิภาค (:) คุณสามารถวางคำสั่งหรือฟังก์ชัน vim เพื่อแมปได้ ที่ <ซีอาร์> ระบุการคืนแคร่หรือ เข้า สำคัญ.
ตอนนี้เมื่อใดก็ตามที่คุณกดปุ่ม ,+น ป้อนเอกสาร Vim คุณสมบัติหมายเลขบรรทัดจะถูกเปิดใช้งาน
หากต้องการแมปฟังก์ชัน Vim Script ขั้นแรกให้สร้างฟังก์ชัน Vim Script ในไฟล์ vimrc จากนั้นใช้คำสั่ง call พร้อมชื่อฟังก์ชัน
โนร์แมป < ผู้นำ > m : เรียก ToggleMouse ( ) < CR >นอกจากนี้ปลั๊กอินจำนวนมากยังมาพร้อมกับคำสั่งที่ยาว คุณต้องการสร้างทางลัดให้พวกเขาอย่างแน่นอน ฉันแนะนำให้ใช้คีย์ผู้นำสำหรับสิ่งนั้น
กุญแจผู้นำท้องถิ่น
Vim มาพร้อมกับผู้นำอีกคนหนึ่งที่เรียกว่าผู้นำท้องถิ่น ซึ่งคล้ายกับผู้นำแต่เป็นบัฟเฟอร์เฉพาะ ตัวอย่างเช่น หากคุณกำลังทำงานกับไฟล์บางประเภทด้วยการตั้งค่าเฉพาะ และคุณต้องการคีย์ผู้นำแยกต่างหากสำหรับไฟล์นั้น คุณสามารถสร้างผู้นำรองที่เรียกว่าผู้นำในพื้นที่ได้
เช่นเดียวกับคีย์ผู้นำ ก็สามารถตั้งค่าเป็นคีย์ใดก็ได้ หากต้องการตั้งค่าปุ่มขีดกลาง (-) เป็นผู้นำในพื้นที่ ให้เพิ่ม ให้ maplocalleader=”-“ ใน vimrc ไฟล์.
อนุญาต ผู้นำแผนที่ = '-' วัตถุประสงค์เพียงอย่างเดียวของคีย์ผู้นำท้องถิ่นคือเพื่อกำหนดทางลัดสำหรับประเภทไฟล์เฉพาะ ตัวอย่างเช่น NERDTree เป็นปลั๊กอิน Vim ที่รู้จักกันดีในการสำรวจไฟล์ หากต้องการเปิด NERDTree file explorer คุณจะไม่ชอบพิมพ์คำสั่ง :NERDTree ทั้งหมด เอาล่ะ รับความช่วยเหลือจากกุญแจผู้นำ noremap
การใช้กุญแจผู้นำหลายอัน
คุณสามารถกำหนดคีย์ผู้นำได้หลายคีย์ใน vimrc ไฟล์. แต่การใช้คีย์ผู้นำหลายอันขึ้นอยู่กับว่าคุณกำหนดคีย์เหล่านี้ใน vimrc ไฟล์. ตัวอย่างเช่น คุณได้ตั้งค่าคีย์ผู้นำไว้ 2 คีย์ คีย์แรกคือลูกน้ำ (,) และอีกคีย์คือจุด (.) การแมปทั้งหมดภายใต้คีย์ผู้นำที่กำหนดเครื่องหมายจุลภาค (,) จะใช้เป็นผู้นำ และการแมปทั้งหมดภายใต้เครื่องหมายจุด (.) จะใช้เป็นผู้นำ
อนุญาต คนเมเปิ้ล = ','โนร์แมป < ผู้นำ > ม :แท็บนิว
อนุญาต คนเมเปิ้ล = '.'
โนร์แมป < ผู้นำ > ม :tabclose
ที่ ,+ม ปุ่มจะสร้างแท็บใน Vim ในขณะที่ .+ม จะปิดมัน
ด้านล่างเป็นครั้งสุดท้ายของฉัน vimrc การกำหนดค่าไฟล์หลังจากทำการเปลี่ยนแปลงเหล่านี้
บทสรุป
คีย์ผู้นำ Vim คือเนมสเปซสำหรับทางลัดที่ผู้ใช้กำหนดหรือกำหนดโดยปลั๊กอินสำหรับ Vim แบ็กสแลช (\) เป็นคีย์เริ่มต้นใน Vim อย่างไรก็ตามสามารถเปลี่ยนแปลงได้โดยใช้ ให้ Mapleader=[somekey] สั่งการ. ในขณะที่ผู้นำท้องถิ่นเป็น Vim คีย์ผู้นำอีกตัวหนึ่งซึ่งสามารถทำหน้าที่เป็นคีย์ผู้นำเฉพาะไฟล์ได้ นอกจากนี้ คุณสามารถกำหนดคีย์ผู้นำได้หลายคีย์ใน vimrc ไฟล์. โดยรวมแล้ว คีย์ผู้นำคือฟีเจอร์ Vim เพื่อปรับปรุงฟังก์ชันการทำงาน และสามารถนำมาใช้ในรูปแบบต่างๆ เพื่อให้เวิร์กโฟลว์มีประสิทธิภาพมากขึ้น