ทำไมต้องรู้ nvim
ในฐานะมืออาชีพ, คุณต้องใช้เวลามากมายกับคอมพิวเตอร์ของคุณ,โดยเฉพาะการแก้ไขโค้ด.คุณต้องทำมันด้วยความสนุกและมีประสิทธิภาพที่สุด. nvim มันสนุก: สนุกในการเรียนรู้,สนุกในการเขียน,ในการปรับปรุงและสุดท้าย - มันมีประสิทธิภาพมากมาย.
คุณสามารถใช้ vim ด้วยตีย์บอร์ดอะไรก็ได้
vim ให้ตัวเลือกคุณในการเลือกใช้คีย์ง่ายๆ บนคีย์บอร์ด: คีย์ตัวอักษร, ctrl, alt, shift, escape, enter.
คุณไม่ต้องห่วงว่า end มันอยู่ตรงไหน,pageup/down และ home เพื่อเปลี่ยนระหว่าง keyboard และ laptop.
ถ้าคุณเคยพิมพ์บนคีย์บอร์ด,คุณสามารถใช้ vim ในแนวทางที่คุณคุ้นเคย.
ให้มือของคุณอยู่บนคีย์บอร์ด
vim สามารถใช้งานโดยปราศจากเม้าส์,และที่ควรจะเป็นก็คือให้ใช้งานแบบนั้นแหละแบบไม่มีเม้าส์.ให้เหมือนกับว่ามี "พลังงาน" บังคับให้มือของคุณอยู่บนคีย์บอร์ด. และคุณอยู่กับ "คลื่น" ในขณะโปรแกรมโดยไม่ต้องการให้มือของคุณขยับไปใช้งานเม้าส์และกลับไปที่คีย์บอร์ด.
vim ถูกออกแบบมาให้ใช้งานกับ type touching.
ส่วนสำคัญคือให้มือของคุณอยู่นแป้นพิมพ์: asdf jkl;
.
และมันไม่จำเป็นต้องใช้งาน touch type (ฉันไม่ใช้ touch type 100%) แต่แนะนำให้ลองใช้งานก็ได้.
คำชี้แจง
คุณใช้เม้าส์ได้.
ผมตั้งค่าเม้าส์เพื่อให้ "เดา" แสดงสิ่งต่างๆในเครื่องของผม.
ผมใช้เม้าส์ในการ "อ่าน" โค้ด,และส่วนตัวพบว่ามันสะดวกทีเดียว.
ผมใช้เม้าส์เพื่อแสดงให้คนอื่นเห็นในเครื่องของผมเพื่อเค้าจะได้ทำตามได้.
หนทางที่ถูกต้องในการโปรแกรม
ผมพูดได้ว่า nvim
คือหนทางที่ถูกต้องในการโปรแกรม.
เมื่อคุณใช้งาน vim, คุณ"คุย" กับมันไม่ใช่ "เคลื่อน" มัน.
จินตนาการตามน่ะ, แทนที่คุณจะถามเพื่อนคุณให้เทน้ำลงแก้ว,คุณกับให้คำสั่งแก่เพื่อนคุณคือ วิธีการในการเทน้ำลงแก้วซึ่งหน้าตาเป็นแบบนี้:
- เปิดขวด
- หยิบแก้วมา
- หยิบขวดมา
- ทำให้มุมของขวดตรงกับแก้ว
- วางขวด
- ปิดขวด
มันไม่ง่ายกว่าหรือในการที่จะพูดว่า "เฮ้,เทน้ำให้ฉันซักแก้วหน่อย?" อืม, ก็เป็นความรู้สึกในการใช้อิดิเตอร์ตัวอื่นหลังจากใช้งาน vim, vim ให้คุณ "คุย" กับมัน.
รู้สึก "เหมือนอยู่บ้าน" ในทุกๆ ที่
ส่วนมาก TUIs (terminal user interface) โปรแกรมรองรับ vim
ได้โดยทำให้คุณรู้สึกสะดวกกับโปรแกรมต่างๆที่เคยใช้, less
, man
, tmux
และอื่นๆ.
คุณจะรู้สึก "เหมือนอยู่บ้าน" ในเบราเซอร์ด้วย, กับปลั๊กอิน vimium extension
แก้ไขไฟล์ผ่าน ssh
และอื่นๆ
เบาและเนทีพ
nvim มันเบา,รันอย่างรวดเร็ว,แสดงผลเร็วและมีปลั๊กอินมากมาย โดยปลั๊กอินเหล่านั้นรันผ่านเนทีพไบนารีเพื่อรันงานที่หนักๆ ได้.
ตัวอย่าง, ค้นหาข้อความทั้งโปรเจ็ค telescope.nvim รัน ripgrep.
แวดล้อมไปด้วยปลั๊กอินต่างๆ
nvim มีชุมชนที่ใหญ่ที่มีการพัฒนาปลั๊กอินต่างๆ ที่คุณคาดไม่ถึงเลยทีเดียว.
nvim ไม่พลาดฟีเจอร์ต่างที่ IDE อื่นๆมีให้.
nvim ปลั๊กอินจะเป็นที่แรกในการ "วิวัฒน์" เมื่อมีเทคโนโลยีใหม่เข้าในโลกของ IDE, ชุมชนของ nvim จะเป็นที่แรกที่นำมันมาใช้ เช่น ripgrep
คุณสามารถดูได้ที่ awesome nvim plugin list. แนะนำให้ "จับตา" เพื่อดูอัพเดตต่างๆเกี่ยวกับปลั๊กอินใหม่ๆ.
สะดวกสบาย
nvim เป็นเฟรมเวิร์คพื้นฐานสำหรับเอดิเตอร์, มันทำอะไรมากไม่ค่อยได้ถ้าไม่มีปลั๊กอินแต่มันให้ผู้ใช้งานตั้งค่าเอดิเตอร์ในแนวทางต่างๆ ที่สะดวกสบาย.
จินตนาการว่าคุณกำลังนั่งเก้าอี้ที่มันเข้าตัวกับคุณแบบพอดีเป๊ะ.พนักพิงด้านหลังเข้ากันพอดีกับหลังคุณ,ที่รองหัวมีความกว้างพอดีกับหัวและรองรับทั้งคอของคุณ.
ที่พักแขนมีขนาดที่สูงพอดีกับโต๊ะ,เก้าอี้ก็มีความสูงพอดีกับขาของคุณ.
นั่นแหละมันคือความรู้สึกเพื่อคุณโค้ดบน nvim,ผมนั่งบนเก้าอี้ที่สร้างขึ้นมาพอดีเข้ากับความต้องการของผม,และทำให้ผมพัฒนาวิธีการในการโค้ดเพราะผมพัฒนาแนวทางตามที่อดิเตอร์พัฒนาไป.
แล้วจะเริ่มยังไง
nvim เรียนรู้ได้ยาก - ใช้เวลาและความอดทนกว่าจะเชี่ยวขาญ, คุณสามารถสิ่งที่คุณต้องการและเริ่มลงทุนเวลาโดยคุณ เริ่ม ใช้ nvim ให้ได้ในทุกๆวัน
ถ้าคุณเป็นโปรแกรมเมอร์มืออาชีพ ผมแนะนำใช้คุณเริ่มใช้มันกับโปรเจ็คส่วนตัว และค่อยๆเชื่อมต่ออย่างช้าๆ กับโฟลวงานของคุณ.
ผมเริ่มมันโดยเปิดเอดิเตอร์เก่า (Sublime Text) และเปิดเอดิเตอร์ใหม่ (Neovim) ไปด้วยกัน.
ผมเริ่มโดยลองทำแอคชั่นเบสิคด้วย nvim และย้ายไปยัง sublime เมื่อต้องการทำอะไรที่มันซับซ้อนขึ้น ผมเริ่มติดในการใช้งานกับ nvim. หลังจากผมเริ่มคุ้นเคยกับฟังชันการใช้งานทั่วๆไป,ผมเริ่มลองอะไรที่มันซับซ้อนมากขึ้นกับ nvim, บางครั้งผมเริ่มจัดการสิ่งต่างๆ บางครั้งก็มีผิดพลาดเหมือนกันและกลับมาใช้ submit. อย่างไรก็ตามผมเริ่มรู้สึกสะดวกสบายมากขึ้นกับ nivm และเริ่มติดอยู่กับมันทั้งวี่ทั้งวัน.
ท้ายที่สุด คือมันใช้เวลาและพลังงานแต่แล้วมันก็คุ้ม, สำหรับผมมันสปาร์คความรู้สึกเก่าๆ ของการเรียนรู้ในการแก้ไขโค้ดอะไรซักอย่าง,และก็รู้สึกอย่างนั้นในทุกๆ วัเก่าๆ ของการเรียนรู้ในการแก้ไขโค้ดอะไรซักอย่าง,และก็รู้สึกอย่างนั้นในทุกๆ วัน.น
Neovim ต้องการเวลา
Neovim ต้องการเวลาเป็นจำนวนมากในการเรียนรู้สิ่งต่างๆ เพื่อเพิ่มประสบการณ์ในการเรียนรู้คุณต้องแก้ไขคอนฟิกต่างๆ มากมายนอกจากคอนฟิกของ nvim เอง, terminal เอย nerdfont เอย plugins และอื่นๆ อีกมากมายซึ่งก็อาจจะไม่ได้ทำมาเพื่อคุณ
ถ้าคุณต้องการที่เรียนรู้ nvim และใช้มันแน่นอน 100%.ผมแนะนำให้เริ่มจากสำรองข้อมูลค่าคอนฟิกต่างๆ ที่คุณใช้งานไว้ก่อนด้วยพวก dotfiles เฟรมเวิร์ด.ซึ่งผมใช้อยู่ dotbot.