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

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

5
โหมดการคัดลอก tmux - เลือกบล็อคข้อความ
ฉันกำลังใช้ tmux กับปุ่ม vi และการคัดลอก / วางทำงานได้ดีตราบใดที่คุณเลือกข้อความหนึ่งบรรทัดหรือถ้าคุณมีเพียงหน้าต่างเดียว เมื่อฉันต้องการเลือกบล็อกข้อความ (หลายบรรทัด แต่ไม่เต็มความกว้าง) จากนั้นฉันประสบปัญหา ถ้าฉันเปิดหน้าต่าง vim หลายหน้าต่างมันจะเลือกข้อความจากหน้าต่างทั้งหมดและสิ่งที่ฉันต้องการคือเลือกข้อความจากหน้าต่างเดียวเท่านั้น นั่นคือเช่นเดียวกับการเลือกภาพในเสียงเรียกเข้า เป็นไปได้ที่จะทำ?
39 vim  tmux 

9
ฉันจะแทนที่ - วางข้อความ yanked ในกลุ่มโดยไม่ต้อง yanking บรรทัดที่ถูกลบได้อย่างไร
ดังนั้นฉันมักจะพบว่าตัวเองกำลังคัดลอกข้อความจากจุดหนึ่งไปอีกจุดหนึ่งในขณะที่เขียนทับข้อความเก่าที่วางใหม่: blah1 newtext blah2 wrong1 blah3 wrong2 blah4 สมมติว่าฉันทำเครื่องหมายภาพnewtextและyถามมัน ตอนนี้ผมเลือกwrong1(ซึ่งอาจเป็นอะไรก็ได้ไม่จำเป็นต้องเป็นเพียงแค่คำ) และpASTE newtextแต่ถ้าตอนนี้ผมทำเช่นเดียวกันกับwrong2ที่มันจะถูกแทนที่ด้วยแทนwrong1newtext ดังนั้นฉันจะเก็บข้อความที่อยู่ในบัฟเฟอร์จากการสลับกับข้อความที่ฉันกำลังเขียนทับได้อย่างไร แก้ไข 1 แม้ว่าฉันจะชอบคำแนะนำการลงทะเบียนใหม่ (ฉันคิดว่าฉันจะเริ่มใช้การลงทะเบียนมากขึ้นตอนนี้ที่ฉันค้นพบ:disคำสั่ง) ฉันจะแก้ไขคำตอบของjinfieldเพราะฉันไม่ได้ใช้โหมดการแลกเปลี่ยน vnoremap p "0p vnoremap P "0P vnoremap y "0y vnoremap d "0d หลอกลวงได้อย่างสมบูรณ์แบบ แก้ไข 2 ฉันเร็วเกินไป romainlวิธีการแก้ปัญหาก็คือสิ่งที่ผมกำลังมองหาโดยไม่ต้องสับในการแก้ไข 1 จริงๆแล้วvnoremap p "_dPก็เพียงพอแล้ว! ดังนั้นการเปลี่ยนคำตอบที่ยอมรับได้
39 vim  copy-paste 

1
การเรียงลำดับแบบคำนึงถึงขนาดตัวพิมพ์
การจัดเรียงเริ่มต้นของกลุ่มคือคำนึงถึงตัวพิมพ์เล็กและสร้างผลลัพธ์เช่นนี้: A B a จะทำอย่างไรให้ตรงตามตัวพิมพ์เล็ก - ใหญ่เพื่อสร้างผลลัพธ์ต่อไปนี้โดยรับอินพุตเดียวกัน A a B
39 vim  sorting 

10
วิธีเริ่ม gVim ให้ใหญ่สุด?
วิธีทำให้ gVim ขยายหน้าต่างโดยอัตโนมัติเมื่อฉันเปิด และวิธีแก้ไขปัญหาข้ามพลาเดอร์ฟอร์มฉันพยายามใช้ configs เดียวกันในเครื่อง Linux และ Windows ... ฉันลองแฮ็ค:set lines=999 columns=999แล้วก็ใช้งานได้ แต่หน้าต่างไม่ได้ขยายใหญ่สุดเพียงปรับขนาดและสูญเสียแถว / คอลัมน์บางส่วน

4
ฉันจะจัดรูปแบบรหัสเป็นแหล่งต้นฉบับได้อย่างไรเมื่อฉันวางรหัสเหล่านั้นเป็นกลุ่ม?
เมื่อฉันคัดลอกโค้ดบางส่วนจากหน้าเว็บและวางลงใน VIM ฉันพบว่ามันกลายเป็นลักษณะยุ่งเหยิงเหมือนบันไดดังต่อไปนี้ xxxxxx xxxxxx xxxxxx xxxxxxxxxx เนื่องจากมันเลอะเป็นประจำดังนั้นฉันคิดว่าอาจจะมีบางอย่างผิดปกติกับฉัน.vimrcซึ่งเป็นด้านล่าง: set number set nocompatible set nowritebackup set noswapfile syntax on filetype indent on filetype plugin on filetype on set background=light set autoindent set smartindent set tabstop=4 set shiftwidth=4 set showmatch set guioptions=T set fileencodings=utf-8,prc set ruler set incsearch map gs :%s set …
37 vim  copy-paste 

2
ฉันจะวางบางอย่างที่ท้ายบรรทัดใน VIM ได้อย่างไร
ฉันจะวางข้อความที่ฉันดึงลงที่ส่วนท้ายของบรรทัดได้อย่างไร $pขณะนี้ฉันกำลังทำมันได้โดยการกด มีวิธีการทำสิ่งนี้ด้วยการกดแป้นเดียว?
36 vim  paste 

4
vimdiff: ข้ามไปยังส่วนต่างภายในของบรรทัดหรือไม่
vimdiffมีประโยชน์มากสำหรับการเปรียบเทียบไฟล์ อย่างไรก็ตามฉันมักจะใช้กับไฟล์ที่มีเส้นยาวและมีความแตกต่างกันเล็กน้อย vimdiff จะเน้นความแตกต่างภายในเส้นอย่างถูกต้อง (สีชมพูทั้งเส้น, ตัวอักษรที่แตกต่างกันสีแดง) ในกรณีนี้มันจะดีที่จะสามารถที่จะข้ามไปยังความแตกต่างต่อไปภายในสาย คุณสามารถข้ามไปที่ "ความแตกต่างต่อไป" ( ]c) แต่สิ่งนี้จะข้ามไปที่บรรทัดถัดไปด้วยความแตกต่าง มีวิธีที่จะไปที่ตัวละครที่แตกต่างกันต่อไปภายในบรรทัดปัจจุบันหรือไม่?
35 vim  comparison  diff  vimdiff 


4
ไพพ์เอาต์พุตของคำสั่งเชลล์ (!) ไปยังบัฟเฟอร์ใหม่ใน Vim
ฉันจะไพพ์เอาต์พุตของคำสั่งเชลล์ลงในบัฟเฟอร์ใหม่ใน Vim ได้อย่างไร? เห็นได้ชัดว่าต่อไปนี้ใช้งานไม่ได้ แต่คุณสามารถเห็นสิ่งที่ฉันได้รับ: :!echo % | :newtab
35 linux  vim 

5
วิธีออกจากความช่วยเหลือเป็นกลุ่ม
ฉันเพิ่งใช้ไฟล์ช่วยเหลือเป็นกลุ่มและตอนนี้ฉันติดอยู่ในความช่วยเหลือ :qออกจากโปรแกรมทั้งหมดและฉันรู้สึกเบื่อที่ต้องปิดและเปิดเป็นกลุ่มทุกครั้งที่ฉันใช้ความช่วยเหลือ ฉันต้องการคำสั่งที่สามารถปิดความช่วยเหลือและกลับไปยังโปรแกรมที่ฉันกำลังเขียน ฉันมีปัญหาในการค้นหาgoogle.comเนื่องจากสตริงการค้นหาexit help in vimส่งคืนบทความเกี่ยวกับการออกเป็นกลุ่มอย่างชัดเจนซึ่งเป็นสิ่งที่ฉันทำได้ดีมาก ไม่มีใครรู้วิธีการทำเช่นนี้? แก้ไข: ฉันต้องได้รับอย่างใดติดอยู่ในสิ่งที่แยกหน้าจอ นั่นเป็นเหตุผลที่ฉันไม่สามารถออกจากความช่วยเหลือผ่านทาง:q
35 vim 

2
ฉันจะสลับจากการค้นหาไปข้างหน้าเป็นการค้นหาย้อนหลังใน Vim ได้อย่างไร
ในกลุ่มฉันรู้ว่า/จะค้นหาไปข้างหน้าจากเคอร์เซอร์ด้วยnและNทำการค้นหาซ้ำไปข้างหน้าและข้างหลังตามลำดับ ฉันรู้ว่า?จะค้นหาย้อนหลังจากเคอร์เซอร์ด้วยnและNค้นหาซ้ำไปข้างหน้าและข้างหลังตามลำดับ คำถามของฉันคือถ้าฉัน?ทำการค้นหาและฉันต้องการเรียกใช้อีกครั้งเป็นการ/ค้นหา (ดังนั้นฉันไม่จำเป็นต้องกด shift ค้างไว้เพื่อเดินหน้าต่อไป) มีวิธีเปลี่ยนทิศทางการค้นหาก่อนหน้าโดยไม่ พิมพ์คำค้นหาซ้ำหรือไม่
34 vim 

5
บันทึกในโหมดแทรก (VIM)
ฉันใหม่เพื่อกลุ่ม โดยปกติแล้วฉันพบว่าตัวเองต้องการบันทึกและอยู่ในโหมดแทรกมากกว่าตีescapeแล้ว:wกลับเข้าสู่โหมดแทรก
34 vim 

3
เป็นกลุ่ม: แสดงตัวดึงข้อมูลบรรทัด & carriage-return
ฉันจะแสดงตัวดึงข้อมูลบรรทัดและ / หรืออักขระขึ้นบรรทัดใหม่ใน vi / vim ได้อย่างไร ฉันรู้ว่าset listจะแสดงอักขระช่องว่างทั้งหมด (?) แต่ก็แทนที่แท็บ \ t ฯลฯ (แต่นั่นไม่ใช่สิ่งที่ฉันต้องการ) โดยทั่วไปฉันแค่ต้องการแสดงตัวอักษรบางตัวเช่น \ r (บนเดเบียนนี่ดูเหมือนจะเป็นค่าเริ่มต้น แต่ใน Gentoo มันต่างกัน) ขอแสดงความนับถือ

5
ฉันจะยกเลิกการเปลี่ยนแปลงไฟล์จากหน้าต่างสถานะผู้ลี้ภัยได้อย่างไร
เมื่ออยู่ในที่หลบหนีปลั๊กอิน หน้าต่างสถานะ , เข้าถึงได้โดยใช้:Gstatusมันเป็นไปได้ที่จะมีการเปลี่ยนแปลงต่างสำหรับแฟ้มใช้และสลับไฟล์สำหรับการกระทำโดยใช้D- มีทางลัดที่คล้ายกันในการยกเลิกการเปลี่ยนแปลงหรือไม่โดยที่การทิ้งฉันหมายถึงเทียบเท่าgit checkout -- filenameหรือไม่ ปรับปรุง: พบการร้องขอคุณสมบัติในหน้าgithubผู้ลี้ภัยปัญหา # 97: ทางลัดเพื่อชำระเงิน / ลบไฟล์ ตามวิธีที่ต้องการใช้ :Gread :w อัปเดต 2: ตั้งแต่มิถุนายน 2014 เป็นไปได้ใช้Uเป็นคำตอบโดยแอนสัน ด้านล่าง อัปเดต 3: ตั้งแต่วันที่ 3 มกราคม 2019การผูกกุญแจจะถูกจับคู่กับX
33 vim  git 

4
วิธีเพิ่มบรรทัดใหม่ด้วยการเยื้องเดียวกัน
จากนั้นฉันกดEnterในโหมดแทรกบรรทัดใหม่จะถูกสร้างขึ้น แต่เคอร์เซอร์จะถูกวางไว้ที่จุดเริ่มต้นของบรรทัด ฉันจะสร้างบรรทัดใหม่ด้วยการเยื้องเดียวกับบรรทัดปัจจุบันได้อย่างไร
33 vim 

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