ค้นหาเว็บไซต์

มีโปรแกรมแก้ไขเทอร์มินัลที่ให้ความเร็วของ Vim โดยไม่ต้องเจอกับความยุ่งยากของ Vim


ชื่อเสียงของ Vim มาก่อนในทางที่แย่ที่สุด ทุกคนที่ใช้มันรักมัน นั่นก็คือ ถ้าพวกเขาไม่เลิกใช้มันภายใน 10 นาทีแรกหลังจากเปิดโปรแกรมแก้ไข และถ้าคุณยังไม่ได้ค้นหาใน Google ว่า "วิธีออกจาก Vim" จริง ๆ คุณก็ไม่ได้ให้โอกาสมันอย่างจริงจังเพียงพอที่จะฝังตัวเองในหัวใจของคุณ

คุณเห็นไหม การแก้ไขแบบโมดอลของ Vim นั้นจริง ๆ แล้วเร็วกว่า มีเจตนามากกว่า และทรงพลังมากกว่าการคลิกไปมาด้วยโปรแกรมแก้ไข GUI VS Code อาจจะเป็นแอปเขียนที่สมบูรณ์แบบ แต่ก็ไม่ใช่แค่อแปเขียน ดังนั้น มันจึงทำให้คุณช้าลงด้วยการคลิก เมนู และอื่น ๆ แต่ถ้าคุณไม่อยากใช้เวลาหลายสัปดาห์ในการสร้างความจำของกล้ามเนื้อและเกาหัวกับไฟล์คอนฟิก ฉันมีข่าวดีสำหรับคุณ

พบกับโปรแกรมแก้ไขที่ข้ามขั้นตอนการเรียนรู้ของ Vim

Helix คืออะไร—และทำไมถึงรู้สึกใช้งานได้ทันที

Helix เป็นโปรแกรมแก้ไขข้อความแบบโมดอลที่ใช้งานผ่านเทอร์มินัล สร้างขึ้นใหม่ตั้งแต่ต้นโดยใช้ Rust ซึ่งตามที่คุณอาจคาดเดาได้ มันได้รับแรงบันดาลใจจาก Vim และโปรแกรมแก้ไขข้อความแบบเทอร์มินัลอีกตัวที่รู้จักน้อยชื่อ Kakoune—และผลลัพธ์คือบางสิ่งที่ให้ความรู้สึกเหมือนการจินตนาการใหม่ของ Vim ในเวอร์ชันทันสมัย มันเป็นโอเพนซอร์ส มีการดูแลรักษาอย่างต่อเนื่อง และมาพร้อมกับความประณีตของส่วนติดต่อผู้ใช้ที่น่าประหลาดใจ

Helix อ้างว่าตนเองเป็นโพสต์โมเดิร์น และฉลากนั้นไม่ได้เป็นเพียงการตลาด บรรณาธิการได้พิจารณาใหม่เกี่ยวกับสมมติฐานเก่าบางอย่างของ Vim ในขณะที่ยังคงทุกสิ่งที่ทำให้การแก้ไขแบบโมดูลาร์มีคุณค่าในการเรียนรู้ตั้งแต่แรก ด้วยวิธีนี้ คุณจะได้สิ่งที่ดีที่สุดจากทั้งสองโลก

การเลือกการออกแบบหนึ่งครั้งเปลี่ยนทุกอย่าง

การแก้ไขแบบเลือกก่อนที่เข้าใจง่าย






ถ้าคุณใช้เวลาเรียนรู้ Vim คุณก็จะคุ้นเคยกับรูปแบบคำสั่งแล้ว การกระทำจะมาก่อน แล้วจึงตามด้วยเป้าหมาย วิธีนี้รวดเร็วมากเมื่อคุณพัฒนาความจำทางกล้ามเนื้อสำหรับมัน แต่รูปแบบเดียวกันนี้ก็ทำให้มันกลายเป็นสูตรสำหรับการลบไฟล์โดยไม่ได้ตั้งใจโดยไม่รู้ว่าเกิดอะไรขึ้น

Helix พลิกแนวคิดนี้บนหัว มันใช้โมเดลการเลือกก่อนการทำงานที่ยืมมาจาก Kakoune ซึ่งคุณต้องเลือกก่อนที่จะทำอะไร ดังนั้นแทนที่จะลบด้วย dw คุณพิมพ์ wd—เลือกคำแล้วลบ ความแตกต่างนี้อาจฟังดูเล็กน้อยบนกระดาษ แต่เปลี่ยนทุกอย่างเกี่ยวกับการทำงานของตัวแก้ไข ก่อนที่คุณจะทำการกระทำที่ทำลายใด ๆ คุณสามารถเห็นได้ชัดเจนว่าสิ่งใดถูกไฮไลต์และกำลังจะเปลี่ยน มีฟีดแบ็กแบบเรียลไทม์ในทุกขั้นตอน ซึ่งช่วยลดความตึงเครียดที่ Vim เป็นที่รู้จักในการสร้างให้กับผู้ใช้ใหม่

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

มันใช้งานได้ดีตั้งแต่แกะกล่อง

ไม่มีไฟล์การตั้งค่า ไม่มีปลั๊กอิน ไม่มีหลุม Setup

Helix ทำงานเหมือนที่โปรแกรมแก้ไขข้อความสมัยใหม่ควรทำ คุณติดตั้งมัน เปิดมัน และก็พร้อมใช้งาน ไม่ต้องมีตัวจัดการปลั๊กอิน ไฟล์การตั้งค่าที่ยุ่งยาก หรือการสำรวจไฟล์ .vimrc

การไฮไลต์ซินแท็กซ์ผ่าน Tree-sitter ถูกสร้างมาในตัว การเติมข้อความอัตโนมัติ การไปยังคำจำกัดความ การวินิจฉัยแบบฝัง การค้นหาแบบฟัซซี่ทั้งโปรเจกต์ ทั้งหมดถูกฝังอยู่ในตัวแก้ไขแล้ว นอกจากนี้ยังใช้ไฟล์ .toml เพียงไฟล์เดียวสำหรับการปรับแต่ง และสิ่งนั้นสำคัญกว่าที่คุณอาจคิด ใน Vim ไฟล์การตั้งค่าของทุกคนแตกต่างกัน ซึ่งหมายความว่าทางแก้ปัญหาที่คุณพบในอินเทอร์เน็ตอาจใช้ไม่ได้กับคุณ ใน Helix หากมันใช้ได้กับใครบางคน มีโอกาสสูงว่ามันจะใช้ได้กับคุณเช่นกัน

ยังมีบทช่วยสอนในตัวเพื่อช่วยผู้เริ่มต้นเริ่มต้น พิมพ์ :tutor เมื่อเปิดใช้งานครั้งแรก และคู่มือแบบโต้ตอบจะนำคุณผ่านอินเทอร์เฟซทั้งหมดทีละขั้นตอน กราฟการเรียนรู้ของ Vim เริ่มต้นด้วยการที่คุณหาวิธีพิมพ์ในนั้น ในขณะที่ Helix เริ่มต้นด้วยบทเรียนแนะนำ

อีกหนึ่งคุณสมบัติเด่นของ Helix คือการรองรับการเลือกหลายรายการในระดับชั้นหนึ่งในฐานะฟังก์ชันพื้นฐานของการแก้ไขโค้ด ไม่ใช่เพียงปลั๊กอินเสริม เลือกทุกกรณีของคำ กด C แล้วเปลี่ยนทั้งหมดพร้อมกัน มันเป็นสิ่งที่ใน Vim ต้องใช้มาโครหรือปลั๊กอิน ในขณะที่ใน Helix นั่นคือวิธีการทำงานตามปกติของตัวแก้ไข เมื่อลองเริ่มใช้ตัวชี้หลายตัว สิ่งอื่น ๆ จะรู้สึกเหมือนการลดระดับ

มันไม่สมบูรณ์แบบ—และนั่นก็สำคัญ

ที่ที่ Helix ยังคงสั้นกว่าของ Vim

ถึงแม้ Helix จะฟังดูง่ายต่อการใช้งาน แต่มันไม่ได้เป็นการแทนที่ Vim อย่างสมบูรณ์ ยังไม่มีระบบปลั๊กอิน อย่างน้อยก็ยังไม่ใช่ ดังนั้นถ้ากระบวนการทำงานของคุณขึ้นอยู่กับสิ่งอย่างเช่นตัวสำรวจไฟล์ทรีหรือการรวมกับ Git คุณก็ไม่สามารถหลีกเลี่ยงมันได้ อีกปัจจัยหนึ่งคือความสามารถในการประสานของ Vim สิ่งต่าง ๆ อย่าง d2w เพื่อการลบสองคำในคำสั่งเดียวจะทำได้ค่อนข้างลำบากใน Helix นอกจากนี้มันยังไม่รองรับการเขียนสคริปต์ ซึ่งทำให้ผู้ใช้ที่ต้องการความสามารถสูงอาจไม่ค่อยต้องการใช้งานมากนัก

แต่สำหรับคนอื่น ๆ ทั้งหมด—รวมถึงนักพัฒนาที่เพียงแค่ดู Vim แล้วก็กลับไปใช้โปรแกรมแก้ไขเดิม Helix ก็เติมเต็มช่องว่างได้ ดังนั้นสำหรับใครก็ตามที่ไม่ต้องการให้การจัดการโปรแกรมแก้ไขกลายเป็นงานที่สอง Helix ก็แทบจะเป็นคำตอบ ปรัชญาแบบโมดูลยังคงอยู่ แต่กำแพงการเรียนรู้ตอนนี้หายไปแล้ว

บทความที่เกี่ยวข้อง