คำถามติดแท็ก vi

vi เป็นเท็กซ์เอดิเตอร์ข้อความที่เน้นหน้าจอซึ่ง แต่เดิมสร้างขึ้นสำหรับระบบปฏิบัติการ Unix

3
วิธีการแถบช่องว่างต่อท้ายโดยอัตโนมัติบันทึกใน Vi และ Vim?
มีการ.vimrcตั้งค่าให้ลบช่องว่างต่อท้ายโดยอัตโนมัติเมื่อบันทึกไฟล์หรือไม่ เป็นการดี (เพื่อความปลอดภัย) ฉันต้องการมีฟังก์ชั่นนี้สำหรับไฟล์บางไฟล์เท่านั้นเช่น *.rb
22 vim  vi  editors  vimrc  whitespace 

4
ฉันจะนับจำนวนคำในไฟล์ขณะแก้ไขไฟล์เป็นกลุ่มได้อย่างไร
ฉันรู้ว่าฉันสามารถใช้wcสำหรับการนับตัวอักษรคำและบรรทัดของไฟล์ที่บรรทัดคำสั่ง มีวิธีใดบ้างที่ฉันสามารถนับจำนวนคำในขณะที่เป็นกลุ่ม ?
21 vim  vi 

3
สามารถเรียก vim ให้น้อยลงแทนค่าเริ่มต้น vi เมื่อฉันกดปุ่ม 'v' ได้หรือไม่
ฉันต้องการที่จะเปิดตัวvimแทนการเริ่มต้นviแก้ไขเมื่อกดในvless มีการตั้งค่าใดที่ฉันสามารถแก้ไขเพื่อให้ฉันทำเช่นนี้ได้หรือไม่?

9
การใส่เครื่องหมายความคิดเห็นของโค้ดหลายบรรทัดโดยระบุโดยหมายเลขบรรทัดโดยใช้ vi หรือ vim
ฉันได้เรียนรู้จากคำถาม Stack Overflowที่เป็นไปได้ที่จะใช้vi/ vimเพื่อแสดงความคิดเห็นในช่วงหมายเลขบรรทัดที่ระบุ ตัวอย่างเช่นสมมติว่าฉันมีสคริปต์ทุบตีต่อไปนี้: #!/bin/bash This is my very very great script ตอนนี้สมมติว่าผมต้องการที่จะแสดงความคิดเห็นออกหมายเลขบรรทัดที่ 6 ถึง 8 (ซึ่งมีคำvery, veryและgreat) การใช้#ความคิดเห็นของตัวละคร ในvi/ vimฉันสามารถพิมพ์:6,8s/^/#เพื่อรับสิ่งต่อไปนี้: #!/bin/bash This is my #very #very #great script ซึ่งคอมเม้นท์บรรทัดที่ 6 ถึง 8 คำถามของฉันคือมันเป็นไปได้ที่จะพิมพ์หนึ่งที่คล้ายกันซับที่จะลบ#คิดเห็นอักขระจากสายที่ 6 ถึง 8 ( แต่ไม่ใช่สายการแสดงความคิดเห็นใด ๆ ในไฟล์)? มีกล่าวนี้ฉันตระหนักดีว่ามีการอภิปรายเกี่ยวกับว่าฉันกำลังใช้จริงบางส่วนหรือvi vimในทางปฏิบัติผมเปิดไฟล์ที่มีคำสั่งscript.sh vi script.shนอกจากนี้เมื่อฉันพิมพ์คำสั่งผมได้รับwhich vi /usr/bin/viอย่างไรก็ตามเมื่อฉันพิมพ์viและกดEnterฉันได้รับสิ่งนี้: ~ VIM …
20 vim  vi 

2
เหตุใด vi จึงแตกหัก (ข้อผิดพลาด viminfo E576) และฉันจะแก้ไขได้อย่างไร
ฉันมีความเชี่ยวชาญในการใช้ Unix / Linux แต่ฉันไม่ใช่ผู้เชี่ยวชาญ หากฉันต้องการเปิดไฟล์ (เช่นfile.txt) ฉันจะใช้vi: vi file.txt :q!นี้จะเปิดแฟ้มและถ้าผมต้องการที่จะปิดมันผมใช้ ฉันใช้วิธีนี้มาสองปีแล้วที่ฉันใช้ Unix / Linux สถาบันของฉันมีคลัสเตอร์ที่ใช้ Ubuntu Linux อย่างไรก็ตามวันนี้ฉันพยายามเปิดไฟล์และฉันได้รับข้อความแสดงข้อผิดพลาด: E576: viminfo: Missing '>' in line: newest to oldest): E576: viminfo: Missing '>' in line: ?/CJ E576: viminfo: Missing '>' in line: ?/CG E576: viminfo: Missing '>' in line: ?/CC E576: …
18 ubuntu  vi 

1
การโยงคีย์แบบกำหนดเองสำหรับโหมดเชลล์ vi คือ“ set -o vi”?
ฉันเพิ่งค้นพบสิ่งมหัศจรรย์ของset -o viและอยากรู้อยากเห็นถ้ามันเป็นไปได้ที่จะปรับแต่งโหมดเปลือก vi นี้ในบางวิธีเดียวกันกับที่คุณสามารถปรับแต่ง vi หรือ vim? ยกตัวอย่างเช่นการสร้างคีย์ที่กำหนดเองผูกพันกับแผนที่คีย์สะดวกมากขึ้นหรือคำสั่งผสมที่สำคัญในการesc? หากไม่รองรับในปัจจุบันมันจะยากแค่ไหนในการปรับเปลี่ยนซอร์สโค้ดของโปรแกรมและฮาร์ดโค้ดในการปรับแต่งบางอย่างหรือว่าเป็นแนวคิดที่ไม่ดี
18 bash  vi 

2
จะเกิดอะไรขึ้นถ้าฉันใช้ vi กับไฟล์ขนาดใหญ่
แม้ว่าเราจะไม่ได้รับคำสั่ง แต่เพื่อนร่วมงานของฉันใช้ vi เพื่อดูไฟล์ข้อความขนาดใหญ่ (server.log 3.5 GB) สิ่งนี้เต็มไปด้วย / var / tmp และก่อให้เกิดปัญหาบางอย่างบนเซิร์ฟเวอร์ อะไรทำให้เกิดสิ่งนี้ ทำไมเราไม่ควรใช้ vi สำหรับไฟล์ขนาดใหญ่?
16 vim  vi 

3
การใช้ ctrl + c แทนที่จะเป็น esc เพื่อออกจากโหมดแทรกจะทำลายทุกอย่างใน vi หรือไม่?
เมื่อใช้ vi คุณสามารถออกจากโหมดที่มีแทรกCtrl+ แทนแบบดั้งเดิมมากขึ้นC Escมีสถานการณ์ใดบ้างที่ไม่พึงปรารถนาที่จะใช้สำหรับอดีตแทนสถานการณ์หลัง? มันทำลายสิ่งอื่นใดนอกจากแนวปฏิบัติที่ดีที่สุดหรือไม่?
15 vim  vi 

3
Elvis จาก Vim ต่างกันอย่างไร
ฉันใช้ Slackware มาระยะหนึ่งแล้วซึ่งมาพร้อมกับElvisเป็นเครื่องมือแก้ไขเริ่มต้น ลีนุกซ์รุ่นอื่น ๆ ส่วนใหญ่นั้นมาพร้อมกับVimแทนที่จะเป็น Elvis เมื่อได้รับเอลวิสค่อนข้างคุ้นเคยแล้วฉันจะต้องเผชิญกับช่วงการเรียนรู้เมื่อย้ายไปยัง distro ที่ใช้กลุ่มหรือไม่? อะไรคือข้อดีและข้อเสียของ Elvis เมื่อเปรียบเทียบกับ Vim
15 vim  vi  elvis 

4
การวางจากคลิปบอร์ดไปยัง zsh หรือ bash เชลล์ที่เปิดใช้งาน vi
ฉันต้องการวางจากคลิปบอร์ดของระบบ (หรือการเลือกข้อความ) ลงในเชลล์พร้อมคำสั่งแบบ "vi-like" โดยใช้แป้นพิมพ์ ปกติฉันจะใช้ zsh และบางครั้งก็ทุบตี ในทั้งสองกรณีฉันมีการตั้งค่าเชลล์ที่มีพฤติกรรมคล้าย vi ( bindkey -v/ set -o vi) "+pในกลุ่มพฤติกรรมฉันกำลังมองหาที่สามารถใช้ได้กับลำดับที่สำคัญ ลำดับของคีย์เฉพาะนี้ไม่ทำงานอย่างที่คาดไว้ใน shell prompt ที่เปิดใช้งาน vi มีวิธีใดบ้างที่จะเปิดใช้งานสิ่งนี้หรือลักษณะการทำงานที่คล้ายกันโดยใช้แป้นพิมพ์เท่านั้นในขณะที่ยังคงอยู่กับการทำ keybindings เหมือน vi ในพรอมต์ zsh หรือ bash shell? - แก้ไข - กรณีการใช้งาน: ฉันมักจะนำทางระหว่าง Firefox ด้วยPentadactyl addon , เทอร์มินัลอีมูเลเตอร์และกลุ่มตัวเอง - โดยใช้ตัวจัดการหน้าต่างXmonadด้วยปุ่มที่กำหนดเองเพื่อเลื่อนไปมา ทั้งสามโปรแกรมมีการโยงคีย์คล้าย vi ซึ่งมีประสิทธิภาพมาก (สำหรับ "หน่วยความจำนิ้ว") ดังนั้นจึงเป็นข้อความในอุดมคติสำหรับการสื่อสารระหว่างกันโดยใช้ไวยากรณ์ vim …
15 bash  shell  zsh  vi  clipboard 

3
ค้นหาและแทนที่อักขระควบคุม (^ @, ^ M, ^ I …) ใน vi
ฉันคัดลอกบรรทัดนี้จาก/proc/some_proc_id/cmdlineในเครื่อง Ubuntu ของฉัน java^@-jar^@/usr/lib/selenium/selenium-server-standalone.jar^@-port^@4444^@-trustAllSSLCertificates^@ อย่างใดอักขระช่องว่างจะถูกแทนด้วย^@ใน vi ฉันพยายามแทนที่พวกเขาด้วยอักขระช่องว่างโดยใช้คำสั่ง :%s#^@# #g แต่มันบอกว่าpattern not found ^@. หนึ่งจะสามารถแทนที่อักขระพิเศษโดยเฉพาะอย่างยิ่งที่เริ่มต้นด้วยสัญลักษณ์กะรัตได้อย่างไร

4
การกำหนดค่าโหมด Bash vi เป็นค่าเริ่มต้นไปที่โหมดคำสั่ง
เป็นไปได้หรือไม่ที่จะกำหนดค่าโหมด bash vi เพื่อให้เริ่มต้นในโหมดคำสั่งแทนโหมดแทรก ? ฉันพบว่าฉันต้องกดEscมากเกินไป ดูเหมือนว่ามีความเป็นไปได้ที่จะระบุสิ่งนี้ใน zsh แต่ฉันไม่พบวิธีการทำเช่นนี้ใน bash / readline
14 bash  vi 

7
xargs และ vi -“ อินพุตไม่ได้มาจากเทอร์มินัล”
ฉันมีphp.iniไฟล์ประมาณ 10 ไฟล์ในระบบของฉันตั้งอยู่ทั่วทุกที่และฉันต้องการเรียกดูไฟล์เหล่านั้นอย่างรวดเร็ว ฉันลองคำสั่งนี้: locate php.ini | xargs vi แต่viเตือนฉันInput is not from a terminalแล้วคอนโซลก็เริ่มแปลกจริง ๆ - หลังจากนั้นฉันต้องกด:q!เพื่อออกจากviนั้นตัดการเชื่อมต่อจากเซสชัน ssh และเชื่อมต่อใหม่เพื่อให้คอนโซลทำงานได้ตามปกติอีกครั้ง ฉันคิดว่าฉันเข้าใจว่าเกิดอะไรขึ้นที่นี่ - โดยทั่วไปคำสั่งยังไม่เสร็จเมื่อviเริ่มต้นดังนั้นคำสั่งอาจไม่เสร็จและviไม่คิดว่าเทอร์มินัลอยู่ในโหมดปกติ ฉันไม่รู้ว่าจะแก้ไขอย่างไร ฉันค้นหา Google และยัง unix.stackexchange.com ด้วยโชคไม่ดี

2
“ <Esc> Kv” ใน bash คืออะไร
เมื่อผมอยู่ในทุบตีและกดEsc, Shift+ K, Vทุบตียิงขึ้นกับชื่อไฟล์ที่คล้ายกับ$EDITOR/tmp/bash-fc-186566385 ทำไมจึงเป็นและวัตถุประสงค์ของมันคืออะไร? set -o viผมอาจจะต้องพูดถึงว่าฉันทำงานกับทุบตี

5
หยุดเป็นกลุ่มจาก messing up เยื้องของฉันในความคิดเห็น
ด้วยเหตุผลบางอย่าง Vim คิดว่าความคิดเห็นของฉันทั้งหมดควรลบการเยื้องออกทั้งหมด ถ้าฉันเพิ่ม#ไปยังจุดเริ่มต้นของบรรทัดทันใดนั้นช่องว่างนำทั้งหมดจะถูกลบออก ฉันจะหยุดสิ่งนี้ได้อย่างไร ฉันได้ติดตั้ง Janus และ NERDtree ไว้ในกรณีที่มีความเกี่ยวข้องพร้อมกับการกำหนดค่าส่วนบุคคลอื่น ๆ มากมายในตัวฉัน.vimrcแต่ไม่มีใคร (เท่าที่ฉันรู้) จะทำให้เกิดพฤติกรรมดังกล่าว
13 vim  vi 

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