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

คุณลักษณะที่แตกต่างของกลุ่มช่วยให้แสดงความแตกต่างระหว่างไฟล์เดียวกันสองสามหรือสี่เวอร์ชัน

6
ฉันจะใช้ vim เป็นเครื่องมือ diff ได้อย่างไร
ฉันใช้เสียงเรียกเข้าเป็นเครื่องมือแก้ไขหลัก ฉันต้องการใช้ vim เพื่อ diff files และแก้ไขไฟล์ในขณะที่ทำการ diff เพื่อแก้ไขการเปลี่ยนแปลงที่ง่าย (แทนที่จะใช้เทคนิค diff ส่วนใหญ่ซึ่งเป็นวัฏจักรของ diff / fix / diff / fix) นอกจากนี้ยังมีวิธีที่ง่ายในการรวมเสียงเรียกเข้าเป็นเครื่องมือต่าง ๆ ที่ใช้โดยเครื่องมือ / แหล่งที่มาของการควบคุมไซต์ (ฉันกำลังคิดถึง git เป็นพิเศษ แต่ฉันแน่ใจว่าคนอื่น ๆ จะสนใจที่จะทำงานร่วมกับเครื่องมือ / ไซต์อื่น ๆ
101 vimdiff 

5
วิธีแตกต่างและรวมสองไดเรกทอรี
ฉันรู้ว่าโหมด diff ของ Vim ( vimdiff) ช่วยให้เราสามารถเปรียบเทียบเนื้อหาของไฟล์สองไฟล์ (หรือมากกว่า) แต่มันเป็นไปได้ที่จะเปรียบเทียบเนื้อหาของหลาย ๆ ไฟล์ข้ามไดเรกทอรีเพื่อรวมสองไดเรกทอรีซ้ำ (เช่น DiffMerge และเครื่องมือที่คล้ายกัน)?

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

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

4
โทนสีที่ดีขึ้น
ฉันเริ่มใช้โหมด diff ในที่ทำงานและสิ่งหนึ่งที่ฉันสังเกตเห็นคือสีสดใสจริง ๆ ซึ่งไม่ได้ช่วยเมื่อคุณพยายามค้นหาความแตกต่างในไฟล์ขนาดใหญ่เป็นเวลานาน มีโทนสีใดบ้างที่ผู้คนปรับแต่งเพื่อให้โหมด diff ง่ายขึ้นในสายตา?
20 vimdiff 

1
เปรียบเทียบรายละเอียดเพิ่มเติมภายในบรรทัด
ฉันใช้vimdiffเพื่อตรวจสอบความแตกต่างระหว่างไฟล์และบางครั้งมันก็พลาดไปเล็กน้อย ตัวอย่างเช่นถ้าฉันมีสองไฟล์ต่อไปนี้: //a.c printf("Hello\n"); และ: //b.c int i = printf("hello\n") + 3; แสดงในvimdiff: สิ่งที่ฉันต้องการเห็นคือใน BC hไม่มีตัวพิมพ์ใหญ่ มีวิธีที่จะบอก vimdiff เพื่อเปรียบเทียบ (ในบรรทัดนั้น) เพียงแค่ส่วนหนึ่งของมัน (ฉันหมายถึงไม่สนใจint i =และ+ 3)
17 vimdiff 

2
วิธีทำให้ทั้งสอง windows มีความกว้างเท่ากันเมื่อทำการเปรียบเทียบไฟล์?
วิธีทำให้ทั้งสอง windows มีความกว้างเท่ากันเมื่อเปรียบเทียบไฟล์กับคำสั่ง vim -d file1 file2? วิธีทำให้หน้าต่างทั้งสองมีความกว้างเท่ากัน?

2
ทำให้บานหน้าต่างปรับขนาดเมื่อปรับขนาดหน้าต่างโฮสต์
ฉันชอบใช้ vimdiff เป็นเครื่องมือคอมไพล์ / คอมไพล์ git ปัญหาคือเมื่อฉันปรับขนาดหน้าต่างเทอร์มินัลโฮสต์ให้มีขนาดใหม่: จากบานหน้าต่างแยกสองอันเหลืออยู่ที่ความกว้างเท่าเดิมในขณะที่ด้านขวาสุดจะขยายเป็นขนาดหน้าต่างเต็ม มีคำสั่งให้แยกความกว้างเท่ากันหลังจากที่หน้าต่างได้รับการปรับขนาด? หรือการตั้งค่าที่ทำให้บานหน้าต่างมีขนาดเท่ากันเสมอ ฉันมองเข้าไป:set equalalwaysแต่ดูเหมือนจะไม่ทำสิ่งที่ฉันขอ
16 split  vimdiff 

1
vimdiff และผสานความขัดแย้ง
เมื่อทำการผสานสาขาภายใต้การควบคุมของแหล่งที่มามักจะมีปัญหาการผสานที่ขัดแย้งกับผู้พัฒนารายอื่น ฉันรู้ว่าเราสามารถใช้ vimdiff ในการเปลี่ยนรหัสกับการควบคุมซอร์สแต่ก็มีวิธีที่เราสามารถใช้ vimdiff เพื่อช่วยแก้ไขข้อขัดแย้งในการรวมความขัดแย้ง โดยส่วนตัวฉันสนใจ git มากขึ้น แต่มันจะมีประโยชน์ที่จะเข้าใจว่ามีปลั๊กอิน / เทคนิคสำหรับเครื่องมือ / ระบบควบคุมแหล่งข้อมูลอื่น ๆ

3
มีวิธี "ใช้ทั้งคู่" เมื่อใช้ Vim เป็นเครื่องมือผสานหรือไม่?
ฉันใช้ Vim เป็นแบบ 3 ทางผสานกับ Git และบางครั้งจำเป็นต้องทำการเปลี่ยนแปลงจากสาขาทั้งในและนอกเมือง kdiff3สามารถทำได้ด้วยการกดปุ่มสองครั้งมีวิธีการทำใน Vim หรือไม่?
11 vimdiff  merge 

1
ระดับ Word แตกต่างกันเป็นกลุ่ม
เท่าที่ฉันเข้าใจ vimdiff เริ่มต้นจะทำเฉพาะ linewise ต่างกัน อย่างไรก็ตาม somtimes มีประโยชน์ในการทำระดับคำศัพท์ต่าง ๆ โดยเฉพาะอย่างยิ่งสำหรับไฟล์ข้อความเช่น Markdown, LaTeX เป็นต้นมีเครื่องมือบางอย่างเช่น wdiff หรือ dwdiff ซึ่งทำ diff ในระดับคำ เป็นไปได้หรือไม่ที่จะใช้ไฟล์เหล่านี้ในกลุ่มเพื่อเปรียบเทียบไฟล์ข้อความสองไฟล์เคียงข้างกัน?
11 vimdiff 

2
ฉันจะแยกความแตกต่างระหว่าง vim และ vimdiff จากภายใน vimrc ได้อย่างไร
ฉันมีฟังก์ชั่นเป็นกลุ่มซึ่งจะเปิดบัฟเฟอร์ทั้งหมดเป็นแท็บ อย่างไรก็ตามหลังจากที่ฉันเพิ่มฟังก์ชั่นนี้ vimdiff ก็เปิดไฟล์ที่จะเปรียบเทียบเป็นแท็บที่แตกต่างกันและด้วยเหตุนี้จะไม่แสดงความแตกต่าง มีวิธีใดบ้างที่ฉันจะทราบได้ว่า vim หรือ vimdiff ซึ่งเรียกใช้ไฟล์ vimrc ของฉันหรือไม่ function! OpenTabs() let bf=len(filter(range(1, bufnr('$')), 'buflisted(v:val)')) if bf > 1 exe "tab 5sball" endif endfunction
10 vimrc  vimdiff 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.