เทคนิค Vim แบบไม่มีโหมด
(github.com/SebastianMuskalla)vim แบบไม่มีโหมด
- ไฟล์คอนฟิกในรีโพซิทอรีนี้จะแปลง
vimให้เป็นเอดิเตอร์แบบไม่มีโหมด - แทนที่จะต้องจำคำสั่งที่ซับซ้อน สามารถใช้คีย์ลัดมาตรฐานได้ เช่น บันทึกด้วย
Ctrl+Sเลือกข้อความด้วยShift+←/→/↑/↓และคัดลอก/วางด้วยCtrl+C/V - คอนฟิกนี้ไม่ได้มีไว้สำหรับผู้ที่ชื่นชอบ
vimมากกว่าเอดิเตอร์แบบกราฟิก แต่เหมาะกับคนที่ปกติใช้ GUI editor (เช่น VSCode) เป็นหลัก ทว่าในบางครั้งก็ต้องการเอดิเตอร์ที่รันได้ในเทอร์มินัล
ข้อควรทราบ
- เอดิเตอร์แบบไม่มีโหมด คือเอดิเตอร์ทั่วไปที่สามารถกดแป้นแล้วพิมพ์ข้อความได้ทันที และทำคำสั่งอย่างการบันทึกไฟล์ผ่านคีย์ลัด
vimค่าเริ่มต้นซึ่งเป็นเอดิเตอร์แบบมีโหมด จะมีหลายโหมด (เช่น 'command mode', 'insert mode', 'visual mode' เป็นต้น)
Q&A
- Q: ทำไมไม่เรียนรู้คำสั่ง
vim?- A: เคยเรียนแล้ว แต่ถ้าไม่ได้ใช้
vimเป็นประจำก็จะลืมอยู่เรื่อย ๆ
- A: เคยเรียนแล้ว แต่ถ้าไม่ได้ใช้
- Q: ทำไมไม่ใช้เอดิเตอร์แบบไม่มีโหมดอย่าง
nano?- A: ความสามารถของ
vim(เช่น การรองรับ syntax highlighting สำหรับหลายภาษา) เหนือกว่าเอดิเตอร์เทอร์มินัลแบบไม่มีโหมดอย่างnanoไฟล์คอนฟิกในรีโพซิทอรีนี้จะแปลงvimให้เป็นเอดิเตอร์แบบไม่มีโหมดโดยยังคงความสามารถอันยอดเยี่ยมเอาไว้
- A: ความสามารถของ
ฟีเจอร์บางส่วน
- รองรับคีย์ลัดมาตรฐาน
- แสดงแถบข้อมูลด้านบนของหน้าจอเพื่อช่วยเตือนคีย์ลัด
- แสดงแถบสถานะด้านล่างของหน้าจอที่มีข้อมูลอย่างไฟล์ ตำแหน่งเคอร์เซอร์ เป็นต้น
- มีค่าเริ่มต้นที่สมเหตุสมผลสำหรับตัวเลือกจำนวนมาก
ภาพหน้าจอ
- ตัวอย่างการใช้งาน
vimแบบไม่มีโหมดร่วมกับ Nerd Font - ตัวอย่างการใช้งาน
vimแบบไม่มีโหมดด้วยไฟล์คอนฟิกเวอร์ชัน_ascii - ตัวอย่าง
viซึ่งเป็นvimแบบมีโหมดที่ใช้modeless.vimrc
สิ่งที่มีอยู่ในรีโพซิทอรี
- วิธีติดตั้ง, Nerd Font, คีย์ลัด, ไฟล์ต่าง ๆ ในรีโพซิทอรี, ใบอนุญาต
การติดตั้ง
- โคลนรีโพซิทอรีนี้ไปที่
~/.vim vimควรตรวจพบไฟล์vimrcภายใน~/.vimโดยอัตโนมัติ- หากตรวจไม่พบ สามารถสร้าง symbolic link จาก
~/.vimrcไปยัง~/.vim/modeless.vimrcได้ - หากต้องการใช้
vimแบบไม่มีโหมดร่วมกับsudoeditให้เพิ่มexport EDITOR=vimลงในไฟล์.bashrc/.zshrc/... - คุณอาจต้องการใช้
vimแบบมีโหมดเป็นviโดยแนะนำให้ตั้งค่าให้คำสั่งviเรียกใช้vimเวอร์ชันแบบมีโหมด
Nerd Font
- การตั้งค่าเริ่มต้นต้องใช้ Nerd Font (ฟอนต์ monospace ที่มีการแทรกไอคอนเพิ่มเติม)
- ใช้ไอคอนแบบกำหนดเองเหล่านี้ในแถบข้อมูลด้านบนและแถบสถานะด้านล่างของหน้าต่างเทอร์มินัล
- หากไม่ต้องการหรือไม่สามารถใช้ฟอนต์แบบกำหนดเองได้ รีโพซิทอรีนี้มีไฟล์
statusline_ascii.vimrcและinfoline_ascii.vimrcที่สร้างแถบสถานะ/แถบข้อมูลด้วยอักขระ ASCII เท่านั้น
คีย์ลัด
vimแบบไม่มีโหมดรองรับคีย์ลัดสำหรับการเปิดไฟล์ บันทึก ปิด ค้นหาและแทนที่ เลือก ตัด คัดลอก วาง และฟังก์ชันอื่น ๆ
ไฟล์ต่าง ๆ ในรีโพซิทอรี
modeless.vimrc,modeful.vimrc,colorscheme.vimrc,keybinds.vimrc,infoline_nerdfont.vimrc,infoline_ascii.vimrc,statusline_nerdfont.vimrc,statusline_ascii.vimrc,options_basic.vimrc,options_modeless.vimrc,vimrc,virc,vi,LICENSE,README.md
ใบอนุญาต
- ชุดไฟล์คอนฟิกนี้เป็นซอฟต์แวร์เสรีและโอเพนซอร์สภายใต้สัญญาอนุญาต MIT
ความเห็นของ GN⁺
- บทความนี้นำเสนอแนวทางที่น่าสนใจในการทำให้
vimใช้งานได้คล้าย GUI editor ซึ่งอาจช่วยผู้ใช้ที่ไม่คุ้นเคยกับเอดิเตอร์บนเทอร์มินัลได้อย่างมาก - โดยเฉพาะอย่างยิ่ง การคงความสามารถอันทรงพลังของ
vimไว้พร้อมกับมอบคีย์ลัดที่คุ้นเคย เป็นจุดสำคัญอย่างยิ่งที่ช่วยให้ผู้ใช้ทำงานได้รวดเร็วและมีประสิทธิภาพมากขึ้น - การตั้งค่าแบบปรับแต่งเองเช่นนี้สะท้อนถึงจิตวิญญาณของความร่วมมือและการแบ่งปันในชุมชนโอเพนซอร์ส พร้อมมอบความยืดหยุ่นให้นักพัฒนาปรับสภาพแวดล้อมการทำงานให้เหมาะกับความต้องการส่วนตัว
1 ความคิดเห็น
ความเห็นจาก Hacker News
ความเห็นเกี่ยวกับการทำให้ Vim เข้าถึงได้ง่ายขึ้น
ความเห็นเกี่ยวกับเคล็ดลับการใช้ Vim
ความเห็นเกี่ยวกับความสามารถที่มีอยู่เดิมของ Vim
มุมมองส่วนตัวเกี่ยวกับ Vim
ความเห็นเกี่ยวกับส่วนติดต่อผู้ใช้แบบรวมศูนย์
ความเห็นเกี่ยวกับความเป็นประโยชน์ในทางปฏิบัติของ Vim
ความเห็นเกี่ยวกับไฟล์ตั้งค่า Vim
ความเห็นเกี่ยวกับปรัชญาการใช้ Vim
ความเห็นเกี่ยวกับการทุ่มอารมณ์ให้กับ Vim
ความเห็นเกี่ยวกับ Vim แบบไม่มีโหมด