ทำให้ vimdiff แสดงไฟล์ทั้งหมด


37

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

คำตอบ:


48

vimdiffตั้งค่าfoldmethod diffเพื่อให้บรรทัดที่ไม่เปลี่ยนแปลงถูกพับ จากภายในคุณสามารถเปิดพับทั้งหมดโดยการกดvimdiffzR

หากคุณต้องการแสดงบริบททั้งหมดเสมอคุณสามารถเพิ่มจำนวนบรรทัดบริบทที่กางออกที่แสดงเป็นจำนวนมากได้ ใน~/.vimrc:

if &diff                             " only for diff mode/vimdiff
  set diffopt=filler,context:1000000 " filler is default and inserts empty lines for sync
endif

6
ใช่zRเป็นวิธีที่จะไป หมายเหตุ: zaจะสร้างโฟลด์ใหม่
sleske

@sleske zaไม่ปิด แต่zMไม่เป็นที่เห็นได้ชัดจากคำตอบ @Thomas 's
MycrofD

@MycrofD: ใช่ เพื่อความแม่นยำ: zaจะปิดครึ่งเดียว (หนึ่งภายใต้เคอร์เซอร์); zMจะปิดการพับทั้งหมด ทั้งสองมีประโยชน์
sleske

มีตัวเลือกใด ๆ เพื่อเพิ่มบรรทัดบริบทที่กางออกในคำสั่ง vimdiff หรือไม่ สิ่งนี้จะมีประโยชน์ในขณะที่รันจากเชลล์สคริปต์ไฟล์
itsraja

ใช่มีให้ดูvimdoc.sourceforge.net/htmldoc/options.html#'diffopt 'เช่นเพื่อดู 42 บรรทัดบริบทสามารถตั้งค่าset diffopt+=context:42ได้
Benjamin Bannier

10

คำตอบสำหรับคำถามเกี่ยวกับ stackoverflow นี้มีมูลค่าการตรวจสอบ

Vimdiff: อะไรคือคำสั่ง / ทางลัดที่ใช้บ่อยที่สุดซึ่งอาจเป็นมือใหม่ได้?

สั้น: zoและzcตามลำดับเปิดและปิดส่วน zMและzRจะขยายตามลำดับและพับทุกส่วน


3

การวางเคอร์เซอร์บนบรรทัดที่คุณต้องการขยายและกดปุ่ม Space bar นั้นเหมาะกับฉัน!

ดูเหมือนว่าฉันต้องใช้ปุ่มลูกศรด้วยเช่นกัน

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