ทำความรู้จักกับ Vim เครื่องมือแก้ไขโค้ดที่โปรแกรมเมอร์ต้องมีติดตัว
ถ้าคุณกำลังก้าวเข้าสู่โลกของการเขียนโปรแกรม คุณอาจเคยได้ยินชื่อ Vim (โปรแกรมแก้ไขข้อความผ่านบรรทัดคำสั่ง) กันมาบ้าง มันเป็นเครื่องมือระดับตำนานที่โปรแกรมเมอร์มืออาชีพทั่วโลกเลือกใช้ เพราะมันช่วยให้เราแก้ไขโค้ดได้รวดเร็วโดยไม่ต้องพึ่งพามือไปจับเมาส์เลยแม้แต่นิดเดียว
ลองจินตนาการว่าคุณต้องพิมพ์งานโดยที่มือห้ามออกจากแผงแป้นพิมพ์ดูสิครับ นั่นคือสิ่งที่ Vim มอบให้เรา การใช้แป้นพิมพ์อย่างเดียวช่วยให้เราโฟกัสกับเนื้อหาได้เต็มที่ ไม่ต้องเสียเวลาขยับเมาส์ไปมาให้เสียจังหวะในการคิดงานหรือการเขียนคำสั่งต่างๆ
หลายคนอาจจะกลัวเพราะเห็นหน้าตาที่ดูเรียบง่ายและไม่มีปุ่มให้กดเหมือนโปรแกรมพิมพ์งานทั่วไป แต่นี่แหละคือจุดแข็งที่ทำให้มันได้รับความนิยม เพราะเมื่อคุณฝึกฝนจนคล่องแล้ว คุณจะรู้สึกเหมือนตัวเองมีพลังพิเศษในการจัดการไฟล์โค้ดได้อย่างรวดเร็วและแม่นยำกว่าใคร
การติดตั้งและเปิดใช้งาน Vim ครั้งแรก
ก่อนจะเริ่มใช้งาน เราต้องติดตั้งโปรแกรมลงในเครื่องก่อน สำหรับใครที่ใช้ระบบปฏิบัติการ Linux Mint หรือ Ubuntu (ระบบปฏิบัติการคอมพิวเตอร์ที่โปรแกรมเมอร์นิยมใช้) คุณสามารถติดตั้งได้ง่ายๆ ผ่าน Terminal (หน้าต่างสำหรับพิมพ์คำสั่งคอมพิวเตอร์) ของคุณเอง
เปิด Terminal ขึ้นมาแล้วพิมพ์คำสั่งเพื่ออัปเดตรายการซอฟต์แวร์และติดตั้งโปรแกรมตามขั้นตอนด้านล่างนี้ได้เลยครับ ขั้นตอนนี้เป็นพื้นฐานที่โปรแกรมเมอร์ทุกคนต้องคุ้นเคยในการจัดการเครื่องมือของตัวเองให้พร้อมใช้งานอยู่เสมอ
- พิมพ์
sudo apt updateเพื่อดึงข้อมูลโปรแกรมล่าสุด - พิมพ์
sudo apt install vimเพื่อดาวน์โหลดและติดตั้งตัวโปรแกรมลงในเครื่อง
เมื่อติดตั้งเสร็จแล้ว คุณก็พร้อมที่จะเปิดไฟล์ขึ้นมาแก้ไขได้ทันที ลองสร้างไฟล์ทดสอบง่ายๆ โดยการพิมพ์คำสั่ง vim hello.txt ในโฟลเดอร์ที่คุณต้องการ ถ้าหน้าจอเปลี่ยนไปเป็นพื้นที่ว่างๆ ที่มีตัวอักษร ~ เรียงกันลงมา นั่นแปลว่าคุณเปิดไฟล์ด้วย Vim ได้สำเร็จแล้วครับ
เข้าใจโหมดการทำงาน: หัวใจสำคัญของ Vim
จุดที่มือใหม่มักจะงงที่สุดคือเรื่อง Modes (โหมดการทำงาน) ซึ่งเป็นแนวคิดที่ต่างจากโปรแกรมพิมพ์งานทั่วไป เพราะในโปรแกรมปกติเราพิมพ์ตัวอักษรลงไปได้ทันที แต่สำหรับ Vim เราต้องบอกโปรแกรมก่อนว่าเราจะทำอะไรกับข้อความ
เมื่อคุณเปิดไฟล์ขึ้นมา คุณจะอยู่ใน Normal mode (โหมดปกติ) ซึ่งเป็นโหมดสำหรับอ่านไฟล์และใช้คำสั่งลัดต่างๆ หากคุณต้องการพิมพ์ข้อความเพิ่ม คุณต้องสลับไปที่ Insert mode (โหมดสำหรับพิมพ์ข้อความ) ก่อนเสมอ โดยการกดปุ่ม i บนแป้นพิมพ์
หากต้องการกลับมายังโหมดปกติเพื่อเลื่อนตำแหน่งหรือสั่งงานอื่นๆ เพียงแค่กดปุ่ม Esc (Escape) บนแป้นพิมพ์ของคุณครับ การสลับโหมดไปมาอาจจะรู้สึกไม่ชินในช่วงแรก แต่เมื่อฝึกจนเป็นนิสัยแล้ว คุณจะพบว่ามันช่วยลดข้อผิดพลาดในการพิมพ์งานได้ดีมากเลยทีเดียว
คำสั่งพื้นฐานสำหรับการบันทึกและออกจากโปรแกรม
ปัญหาคลาสสิกที่โปรแกรมเมอร์มือใหม่ทุกคนต้องเจอคือ "เข้าโปรแกรมได้ แต่หาทางออกไม่เจอ" ไม่ต้องตกใจไปครับ เพราะนี่เป็นเรื่องปกติมากสำหรับคนที่เพิ่งเริ่มใช้งาน Vim ครั้งแรก เพียงแค่คุณทำความเข้าใจคำสั่งใน Command mode (โหมดคำสั่ง) คุณก็จะควบคุมมันได้ดั่งใจ
หลักการง่ายๆ คือทุกครั้งที่ต้องการสั่งให้โปรแกรมบันทึกหรือปิดไฟล์ คุณต้องกด Esc ให้มั่นใจว่าอยู่ในโหมดปกติก่อนเสมอ จากนั้นให้พิมพ์เครื่องหมาย : (โคลอน) ตามด้วยคำสั่งที่ต้องการ แล้วกด Enter เพื่อยืนยันคำสั่งนั้น
:w // บันทึกไฟล์ที่กำลังแก้ไขอยู่
:q // ออกจากโปรแกรม
:wq // บันทึกไฟล์แล้วค่อยออกจากโปรแกรม
:q! // ออกจากโปรแกรมโดยไม่บันทึกการเปลี่ยนแปลง
คำสั่งเหล่านี้คือพื้นฐานที่คุณต้องจำให้ขึ้นใจครับ บรรทัดแรก :w คือการเขียนข้อมูลลงไฟล์ ส่วน :q คือการจบการทำงาน ถ้าคุณเผลอแก้ไขอะไรไปแล้วไม่อยากเซฟ ให้ใช้ :q! เพื่อบังคับออกทันทีโดยไม่ต้องสนการเปลี่ยนแปลงใดๆ
ลองฝึกเขียนไฟล์แรกด้วยตัวเอง
มาลองปฏิบัติจริงกันครับ สมมติว่าคุณต้องการสร้างไฟล์ชื่อ hello.txt แล้วเขียนคำว่า hello world! ลงไป ให้ทำตามขั้นตอนด้านล่างนี้ทีละขั้น เพื่อให้เห็นภาพรวมของการใช้งานจริงในการเขียนโปรแกรม
- เปิด Terminal แล้วพิมพ์
vim hello.txtเพื่อสร้างไฟล์ - กดปุ่ม
iเพื่อเข้าโหมดพิมพ์ แล้วพิมพ์คำว่าhello world!ลงไป - กด
Escเพื่อกลับไปโหมดปกติ - พิมพ์
:wqแล้วกดEnterเพื่อบันทึกและปิดโปรแกรม
หลังจากทำเสร็จแล้ว คุณสามารถลองตรวจสอบผลลัพธ์โดยการพิมพ์คำสั่ง cat hello.txt ใน Terminal เพื่อดูเนื้อหาข้างในไฟล์ได้เลยครับ ถ้าเห็นข้อความ hello world! แสดงว่าคุณผ่านด่านแรกของการเป็นโปรแกรมเมอร์สาย Vim แล้ว
จุดที่มือใหม่มักพลาดคือลืมกด Esc ก่อนพิมพ์คำสั่งบันทึก ทำให้ตัวอักษร :w ไปปรากฏในเนื้อหาไฟล์แทนที่จะเป็นคำสั่ง ถ้าเจอเหตุการณ์นี้ ให้กด u (Undo - ย้อนกลับ) ในโหมดปกติเพื่อลบตัวอักษรที่พิมพ์ผิดออกไปได้เลยครับ
สรุปบทเรียนและก้าวต่อไป
การเรียนรู้ Vim Basics เป็นก้าวแรกที่สำคัญมากสำหรับคนอยากเป็นโปรแกรมเมอร์ เพราะมันไม่ได้เป็นแค่เครื่องมือแก้ไขข้อความ แต่มันคือการฝึกทักษะการควบคุมแป้นพิมพ์และการจัดการไฟล์อย่างเป็นระบบ ซึ่งจะติดตัวคุณไปตลอดการทำงานในสายอาชีพนี้
จำไว้ว่าคุณไม่จำเป็นต้องเก่งทุกคำสั่งตั้งแต่วันแรก เพียงแค่เริ่มจากการเปิดไฟล์ แก้ไข แล้วบันทึกให้คล่องก่อน เมื่อคุณรู้สึกว่าตัวเองเริ่มชินกับการกด Esc และสลับโหมดได้อย่างเป็นธรรมชาติแล้ว คุณค่อยขยับไปเรียนรู้คำสั่งขั้นสูงอื่นๆ เช่น การลบทั้งบรรทัดหรือการค้นหาคำในไฟล์
ตัวอย่างการนำไปใช้จริงคือ เมื่อคุณต้องเข้าไปแก้ไขไฟล์ตั้งค่าบนเซิร์ฟเวอร์ (เครื่องคอมพิวเตอร์ที่ให้บริการซอฟต์แวร์) ผ่านระยะไกล คุณจะไม่มีเมาส์ให้ใช้แน่นอน แต่ด้วยทักษะที่คุณฝึกวันนี้ คุณจะสามารถแก้ไขไฟล์และบันทึกงานได้อย่างมั่นใจภายในเวลาไม่กี่วินาทีครับ
ที่มา: Vim Basics — DEV Community