November 8, 2011

vi: ปรับแต่งให้เหมาะกับการเขียนโปรแกรม

ใน vi มีโหมดหลักๆ อยู่ 3 โหมดด้วยกัน (ที่อื่นอาจบอกว่ามีมาก/น้อยกว่า) ดังนี้
  1. command mode เมื่อเปิดโปรแกรมมาก็จะเจอโหมดนี้ เราสามารถใช้ปุ่มอย่าง [j] [k] เพื่อเลื่อน cursor หรือกด [x] เพื่อลบอักษรบางตัวได้
  2. last line mode จริงๆ แล้วคือโหมดเดียวกับข้างบน แต่ต้องจบคำสั่งด้วย [Enter] เพื่อให้คำสั่งทำงาน เช่น :q [Enter] เพื่อออกโปรแกรม ซึ่งเราสามารถกด [Tab] เพื่อทำ auto-complete เหมือนได้ด้วย
  3. insert mode เป็นโหมดพิมพ์แก้ไขเอกสาร ซึ่งสามารถเปิดโหมดนี้ได้โดยปุ่มเช่น [i] [a] จาก command mode และออกจากโหมดนี้โดยปุ่ม [Ecs]
และสำหรับที่นี่ (สรุปจากตอนก่อนๆ)
  • เมื่ออยู่ใน command mode จะใช้ [ ] ล้อมปุ่ม เช่น [i] (หวังว่าคงไม่สับสนเวลาเจอ [[], []])
  • ถ้ามีการกดปุ่มตัวเลข จะรวบเลขหลายๆ ตัวอยู่ใน [ ] เดียว เช่น [20] [i]
  • ส่วนที่ last line mode จะไม่ล้อมรอบการกดปุ่มต่างๆ ยกเว้นตอนจบจะแสดง [Enter] เสมอ
  • ปุ่มที่ต้องกด [Shift] จะใช้ตัวใหญ่ไปเลย เช่น [Shift]+[a] ย่อเป็น [A]
  • แต่ [Ctrl]+[ ] และ [Alt]+[ ] ไม่ย่อครับ



ปรกติ (เมื่อทำงานกับไฟล์ที่มีนามสกุลเป็น source code ของ programming language ต่างๆ) โปรแกรม Vim จะทำ syntax highlighting ให้อยู่แล้ว ถ้าไม่ได้ทำให้ ลองพิมพ์คำสั่ง

ดูครับ (ถ้ายังไม่ได้อีก ให้ลองหาโปรแกรม Vim รุ่นใหม่มาติดตั้งดู)

อีกเรื่องคือการตั้งค่าให้แปลงการ indent ด้วย tab เป็น space สามารถใช้คำสั่งนี้

แต่การใส่คำสั่งนี้ลงไป จะส่งผลแค่ตอนที่เราเปิดโปรแกรมเท่านั้น เมื่อปิดโปรแกรมแล้วต้องพิมพ์คำสั่งเหล่านี้ใหม่ตลอด ทางแก้คือการเข้าไปแก้ไขไฟล์ vimrc ซึ่งสามารถทำได้โดย

เมื่อเปิดไฟล์ขึ้นมา ให้เพิ่มบรรทัดนี้เข้าไปด้านบนสุดครับ
เท่านี้ เราก็มีความสุขกับการเขียนโปรแกรมแล้วครับ ;)

No comments:

Post a Comment