Vi & Vim

คำถามและคำตอบสำหรับผู้ที่ใช้ตระกูล vi และ Vim ของเครื่องมือแก้ไขข้อความ

3
`<Bar> 'หมายถึงอะไร
ในการตอบคำถามตอนนี้ฉันพูดถึงการใช้การแมปปุ่มโหมดปกติที่สามารถพบได้ที่ vim.wikia.com ในช่วงกลางของการอธิบายการทำแผนที่สำคัญฉันรู้ว่าฉันไม่รู้ว่า&lt;Bar&gt;หมายถึงอะไร มันหมายความว่าอะไร? ฉันพยายามแทนที่ด้วยไพพ์|โดยมีและไม่มีช่องว่างก่อนรอบและหลังจากนั้น แต่แต่ละ.vimrcไฟล์แตกด้วยข้อความแสดงข้อผิดพลาดต่อไปนี้: Error detected while processing /home/bottomsc/.vimrc: line 173: E488: Trailing characters: :nohl&lt;CR&gt;

2
ฉันสามารถเปิด vim split ใหม่จาก buffer ที่มีอยู่ได้หรือไม่?
ฉันรู้ว่าเป็นไปได้หรือไม่ที่จะเปิดไฟล์ใหม่ด้วยการแยกด้วย:splitหรือ:vsplitแต่เป็นไปได้ไหมที่จะเปิดการแยกใหม่ด้วยบัฟเฟอร์ที่มีอยู่ซึ่งอาจใช้ประโยชน์จากการเติมข้อความอัตโนมัติ?
23 split  buffers 

4
โหลด Vi เข้าสู่โหมดแทรกโดยอัตโนมัติ
ฉันใช้ Vi เป็นตัวแก้ไขข้อความ (และอันที่จริงเท่านั้น) ที่ฉันต้องการบนระบบ Linux ฉันรู้วิธีเปลี่ยนโหมดจากปกติเป็นแทรกและข้อรอง เป็นไปได้ไหมที่ Vi โหลดเข้าสู่โหมดแทรกโดยอัตโนมัติมากกว่าโหมดปกติ?

5
วิธีแชร์ config ระหว่าง vim และ Neovim
ผมเริ่มใช้ neovim และย้ายฉัน.vimrcไป.config/nvim/init.vimและสิ่งอื่น ๆ .local/share/nvimที่ตั้งอยู่ใน วิธีที่ดีที่สุดในการแชร์ configs หรือแม้กระทั่งปลั๊กอินระหว่าง vim และ Neovim คืออะไร symlinks? ฉันสามารถเปลี่ยนไดเรกทอรีใน. vimrc เพื่อใช้ symlink เพียงรายการเดียวได้หรือไม่ หลังจากย้าย vim config ของฉันไปยังตำแหน่งเริ่มต้นของ Neovim สิ่งนี้ดูเหมือนจะทำงานได้เกือบ: ln -s ~/.local/share/nvim/site ~/.vim ln -s .config/nvim/init.vim .vimrc ปลั๊กอินบางตัว (โดยใช้vim-plug ) ทำงานได้ไม่ถูกต้อง ฉันไม่สามารถโหลด colorchmes ที่กำหนดเองหรือกลุ่มสายการบินเอง
23 vimrc  neovim 

2
ฉันจะปรับแต่ง vimdiff สีได้อย่างไร
ฉันพยายามใช้ vimdiff เป็นเครื่องมือคอมไพล์ของฉัน แต่สีที่ใช้ทำให้มันทนไม่ได้ (อย่างน้อยใน Windows / Mingw): สีพื้นหลังและสีพื้นหน้านั้นเหมือนกันสำหรับบางบรรทัดที่ขัดแย้งกันทำให้ยากโดยไม่จำเป็น เพื่อดูว่าเกิดอะไรขึ้น (ดูบรรทัดด้านล่างที่มีinclude=)

4
จะใช้คำสั่งภายนอกใน Vim เพื่อแก้ไขคำและบรรทัดที่เลือกได้อย่างไร
สิ่งที่ฉันพบว่ามีประโยชน์ในบรรณาธิการอื่น ๆ คือความสามารถในการ: นำข้อความที่เลือก เรียกใช้คำสั่งภายนอกและส่งผ่านส่วนที่เลือกไปยัง stdin ใช้คำสั่งภายนอกstdoutและแทนที่ส่วนที่เลือกปัจจุบันด้วย วิธีนี้คุณสามารถเขียนเครื่องมือข้อความที่มีประโยชน์ซึ่งทำงานกับการเลือกโดยใช้ภาษาใดก็ได้ที่สามารถทำ io พื้นฐานได้ สิ่งนี้สามารถทำได้ด้วยเสียงเรียกเข้าโดยใช้การเลือก? ... อักขระเดี่ยวคำย่อหน้า ... ฯลฯ (โดยตรงในบรรทัดคำสั่งหรือผ่านการเชื่อมโยงคีย์?) บันทึก คำสั่งเช่น!sortทำงานในระดับบรรทัดเหตุผลที่ฉันถามคำถามนี้เพราะฉันต้องการที่จะดำเนินการในการเลือก (เช่นข้อความที่จะถูกลบหากxกด)

3
วิธีการเขียนในแนวตั้ง?
ให้บอกว่าฉันต้องการผลิตข้อความต่อไปนี้ในเอกสารของฉัน: % % Not Important % O -------------------------&gt; % | % S | % o | % m | % e | % | % M | % s | % g | % | % V มีวิธีง่ายๆในการเขียน "ข่าวสารบางอย่าง" ในแนวตั้งข้างต้นโดยไม่ต้องแทรกอักขระแต่ละตัวในแต่ละบรรทัดด้วยตนเองหรือไม่?

1
z หมายถึงอะไรในกลุ่ม?
ฉันค้นหาเคล็ดลับเกี่ยวกับการเลื่อนหน้าจอและพบเคล็ดลับต่อไปนี้: zz = shift current line to middle of screen zt = shift current line to top of screen zb = shift current line to bottom of screen คำถามของฉันคือสิ่งที่เป็นz? มันหมายถึงอะไร ฟังก์ชั่นอื่น ๆ ที่อาจzมี?

2
เป็นไปได้ที่การค้นหาในระบบ regex ของกลุ่ม?
ฉันได้พบกับสถานการณ์หลายอย่างในกลุ่มที่มันจะมีประโยชน์ที่จะมีงบ lookaround ฉันได้พยายามใช้ LookAround ไวยากรณ์มาตรฐาน( (?=), (?!)ฯลฯ .. )แต่ปรากฏว่าเป็นกลุ่มไม่สนับสนุนเรื่องนี้ เป็นกลุ่มมีไวยากรณ์ที่เทียบเท่าสำหรับคำสั่งประเภทนี้?

3
ใน Vimdiff ฉันจะสลับบานหน้าต่างด้านซ้ายและขวาได้อย่างไร
เมื่อฉันทำอย่างvimdiff file2 file1เป็นfile2ธรรมชาติไปทางซ้ายและfile1ขวา บางครั้งฉันพบว่าฉันทำให้พวกเขาผิดทางดังนั้นฉันจึงต้องการที่จะเปลี่ยนพวกเขาโดยไม่ทิ้ง Vim เป็นไปได้ไหม
22 split  vimdiff 

2
แยกผลลัพธ์ของคำสั่งเชลล์ไปยังตัวแปรในไฟล์. vimrc หรือไม่
ในไฟล์. vimrc ของฉันฉันต้องการเก็บไว้ในตัวแปรผลลัพธ์ของคำสั่งภายนอกในกรณีของฉัน: $ echo $LANG ดังนั้นvimrcไฟล์ของฉันจะมี: let language = output(!echo $LANG) if language == 'en' nnoremap &lt;somekey&gt; &lt;ohanotherkey!&gt; end if จนถึงตอนนี้ฉันไม่สามารถหาวิธีการได้ ฉันพบว่าในโหมดคำสั่ง:read !echo $LANGจะแทรกเนื้อหาที่ฉันกำลังค้นหาในไฟล์ปัจจุบันของฉัน แต่ฉันไม่รู้วิธีเขียนลงในไฟล์ vimrc

2
เป็นไปได้และมีประโยชน์ในการแบ่ง vimrc หรือไม่?
ตามชื่อเรื่องเป็นไปได้หรือไม่ที่จะแบ่งvimrcไฟล์เป็นไฟล์ย่อยหลาย ๆ ไฟล์? เก็บไฟล์ที่แยกต่างหากสำหรับกลุ่มการตั้งค่าความกังวลว่าหนึ่งในสิ่งที่ ? สิ่งนี้อาจเป็นอะไรก็ได้กลุ่มการตั้งค่าที่ผู้ใช้กำหนดเอง ตัวอย่างเช่น, [อัปเดต] เก็บการตั้งค่าPython (-mode) ทั้งหมดไว้vimrc.python-modeหรือไม่ เก็บการตั้งค่าสำหรับยูทิลิตี้ปฏิทินสำหรับกลุ่มvimrc.calendarหรือไม่? คงการตั้งค่าสีไว้ในไฟล์แยกกันหรือไม่? เก็บการจับคู่ (ทางลัดหรือที่เรียกว่า aka) ไว้ในไฟล์แยกกันหรือไม่
22 vimrc  filetype 

3
จะสร้างฟังก์ชั่นเติมข้อความอัตโนมัติของตัวเองได้อย่างไร?
ฉันจะสร้างรายการการทำให้สมบูรณ์อัตโนมัติของตัวเองสำหรับไฟล์บางประเภทได้อย่างไร ยกตัวอย่างเช่นผมอยาก CSS และ HTML เพื่อเติมข้อความอัตโนมัติจากรายการคลาส CSS ในFontAwesome

5
ฉันจะเปิดและปิด NERDTree (สลับมุมมอง NERDTree) โดยใช้การกดแป้นเดียวได้อย่างไร
บางครั้งในช่วงเวิร์กโฟลว์ของฉันฉันอาจต้องการเปิด / ค้นหาไฟล์ในระหว่างการเดินทาง ฉันต้องการแมปคีย์เดียว (พูดว่า F6) เพื่อเปิดและปิด NERDTree (เช่นฉันต้องการสลับมุมมอง NERDTree) นอกจากนี้ฉันต้องการให้ NERDTree แสดงไฟล์และโฟลเดอร์ที่ซ่อนอยู่ในมุมมองแบบสลับและฉันยังต้องการให้ปิดโดยอัตโนมัติเมื่อฉันเปิดไฟล์เพื่อแก้ไขหากเป็นไปได้ ขอบคุณมาก!

4
ผู้เริ่มต้นที่สมบูรณ์สามารถเรียนรู้ Vim โดยใช้เพียง Vim ได้อย่างไร?
ในฐานะผู้เริ่มต้นที่ไม่มีประสบการณ์ vi ฉันจะเรียนรู้การใช้ Vim โดยใช้เพียง Vim ได้อย่างไร มีการสอนในตัวและฉันจะเข้าถึงได้อย่างไร สมมติว่าฉันมีแล็ปท็อปที่ติดตั้ง Linux และ Vim และไม่มีการเชื่อมต่ออินเทอร์เน็ต

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.