ผลต่างระหว่างรุ่นของ "วิม"

เนื้อหาที่ลบ เนื้อหาที่เพิ่ม
Posterweb (คุย | ส่วนร่วม)
ไม่มีความย่อการแก้ไข
ไม่มีความย่อการแก้ไข
บรรทัด 12:
Vim มีโหมดพื้นฐานอยู่ 6 โหมด และแยกย่อยจากโหมดพื้นฐานได้อีก 5 โหมด
 
===โหมดปกติ (normal mode) ===
โหมดปกติ normal เป็นโหมดที่สามารถพิมพ์คำสั่งต่าง ๆ เช่นเพื่อเคลื่อนย้ายเคอร์เซอร์ ลบข้อความ เป็นต้น เวลาเริ่มต้นโปรแกรม Vim จะเข้ามาอยู่ในโหมดนี้
 
Vim เป็นโปรแกรมที่ใช้งานได้มีประสิทธิผลก็มาจากคำสั่งที่หลากหลายในโหมดนี้ ตัวอย่างเช่น ถ้าต้องการลบทั้งบรรทัดที่ตำแหน่งเคอร์เซอร์ ก็ใช้คำสั่ง <tt>dd</tt> ถ้าต้องการลบทั้งบรรทัดปัจจุบันและบรรทัดถัดไป ก็ใช้คำสั่ง <tt>dj</tt> โดยที่ <tt>d</tt> หมายถึงลบ ส่วน <tt>j</tt> เป็นปุ่มที่ใช้ในการเลื่อนเคอร์เซอร์ลง แทนที่จะใช้คำสั่ง <tt>dj</tt> ยังสามารถใช้คำสั่ง <tt>2dd</tt> (หมายถึงทำคำสั่ง <tt>dd</tt> สองครั้ง) ก็ได้ เมื่อผู้ใช้เรียนรู้คำสั่งการเคลื่อนที่เคอร์เซอร์ต่าง ๆ และวิธีการนำคำสั่งมารวมกัน ก็สามารถใช้งานได้รวดเร็วกว่าเอดิเตอร์แบบที่ไม่มีโหมด
 
เมื่ออยู่ในโหมดปกตินี้ สามารถเข้าไปในโหมด insert สำหรับแทรกข้อความได้หลายทาง เช่น ใช้ปุ่ม <tt>a</tt> (หมายถึง append หรือพิมพ์ต่อท้าย) หรือ <tt>i</tt> (หมายถึง insert หรือพิมพ์แทรก)
 
===โหมดย่อย operator-pending===
โหมดนี้เป็นโหมดย่อยของโหมดปกติ normal เมื่อผู้ใช้ป้อนคำสั่งและโปรแกรม Vim รอผู้ใช้เคลื่อนย้ายเคอร์เซอร์เพื่อให้คำสั่งสมบูรณ์ Vim ยังสามารถรับคำสั่งแทนการขยับเคอร์เซอร์ (เรียกว่า text object) เช่น <tt>aw</tt> หมายถึง คำ (word) <tt>as</tt> หมายถึง ประโยค (sentense) <tt>ap</tt> หมายถึงย่อหน้า (paragraph) ตัวอย่างการใช้เช่น คำสั่ง <tt>d2as</tt> จะลบประโยคปัจจุบันและประโยคถัดไป
 
===โหมดย่อย insert normal===
เป็นอีกโหมดย่อยของโหมดปกติ normal Vim จะเข้าโหมดนี้เมื่อผู้ใช้กดปุ่ม control-o ขณะอยู่ในโหมดแทรก insert Vim จะเข้ามาอยู่ในโหมดปกติ normal แต่จะรับเพียงคำสั่งเดียวแล้วกลับไปยังโหมดแทรก insert โดยอัตโนมัติ
 
===โหมด visual===
ในโหมดนี้เวลาเลื่อนเคอร์เซอร์จะทำให้ข้อความถูกไฮไลต์ตาม จนกว่าจะใส่คำสั่งเพื่อจัดการกับข้อความที่ถูกเลือกนั้น สามารถใช้คำสั่ง text object ในโหมดนี้ได้ด้วย
 
===โหมดย่อย insert visual===
เข้าโหมดนี้จากโหมด insert โดยกดปุ่ม control-o จะเข้าโหมดนี้เพื่อเลือกข้อความ เมื่อเลือกเสร็จจะกลับไปโหมด insert ตามเดิม
 
===โหมด select===
คล้ายกับการเลือกข้อความใน[[ไมโครซอฟต์วินโดวส์]] สามารถใช้ปุ่มลูกศรหรือเมาส์เลือกข้อความ แต่เมื่อพิมพ์ตัวอักษรลงไป ข้อความเดิมที่ถูกเลือกจะถูกลบทิ้งไป และ Vim จะเข้าสู่โหมด insert พร้อมทั้งแทรกตัวอักษรที่เพิ่งพิมพ์เข้าไป
 
===โหมดย่อย insert select===
เข้าสู่โหมดนี้โดยการใช้เมาส์ลากบนข้อความ หรือใช้ปุ่มลูกศรร่วมกับปุ่ม shift เมื่อเลือกเสร็จ Vim จะกลับไปโหมด insert
 
===โหมด insert===
โหมดนี้ ข้อความต่าง ๆ ที่พิมพ์เข้าไป จะไปปรากฏอยู่ในข้อมูลไฟล์ เป็นโหมดที่ผู้ใช้คุ้นเคยเมื่อใช้โปรแกรมเอดิเตอร์อื่น ๆ
 
เวลาจะออกจากโหมด insert ไปยังโหมด normal ให้กดปุ่ม ESC
===โหมดย่อย replace===
โหมดนี้เป็นโหมด insert แบบพิเศษ แทนที่จะไปแทรกในเอกสาร ตัวอักษรที่พิมพ์เข้าไปจะไปทับของเก่า
 
===โหมด command-line===
ในโหมด command-line สามารถพิมพ์คำสั่งหนึ่งบรรทัด ซึ่งอาจเป็นคำสั่ง (ขึ้นต้นบรรทัดด้วยตัวอักษร <tt>:</tt>) ค้นหา (ขึ้นต้นด้วย <tt>/</tt> หรือ <tt>?</tt>) หรือ คำสั่ง filter (ขึ้นต้นด้วย <tt>!</tt>)
 
===โหมด ex===
เหมือนโหมด command-line แต่สามารถพิมพ์คำสั่งได้เรื่อย ๆ จนกว่าจะใส่คำสั่ง <tt>visual</tt>
 
===โหมด evim===
เป็นโหมดพิเศษสำหรับ [[GUI]] โดย Vim จะจำลองตัวเองเหมือนกับเอดิเตอร์อื่นที่ไม่มีโหมด เอดิเตอร์จะเริ่มทำงานในโหมด insert ผู้ใช้สามารถใช้เมนู เมาส์ ปุ่มควมคุมบนแป้นพิมพ์ เช่น ปุ่มลูกศร สามารถเข้าโดยการพิมพ์ <tt>evim</tt> บนบรรทัดคำสั่งในยูนิกซ์ หรือ คลิกบนไอคอน evim ในวินโดวส์
 
{{โครง-ส่วน}}
เข้าถึงจาก "https://th.wikipedia.org/wiki/วิม"