2009-07-07 11 views
101

में एक ही समय में एक स्प्लिट-विंडो के दोनों हिस्सों को स्क्रॉल करना, क्या विम में लंबवत विभाजित विंडो के बाएं और दाएं हिस्सों को स्क्रॉल करना संभव है? मेरे पास दो फाइलें हैं जो मैं मोटे तौर पर तुलना करना चाहूंगा। इन फ़ाइलों की प्रत्येक पंक्ति लगभग समान दिखती है।विम

उत्तर

73

scroll-binding के लिए प्रलेखन देखें। आप प्रत्येक खिड़की है कि आप बाध्य चाहते हैं के लिए यह सेट करना होगा (जैसे 2 की एक न्यूनतम)

आप 2 फ़ाइलें तुलना कर रहे हैं, हालांकि, vimdiff अधिक काम का हो सकता है

+0

पुस्तक बाध्यकारी ... मैं नहीं यह पता लगाने के लिए ... धन्यवाद कर रहा था ... – LB40

+1

downvoted क्यों? –

+1

विमडिफ ... तुमने मेरा पूरा जीवन कहाँ किया है? – hoosierEE

9

G'day ,

दो फ़ाइलों पर vimdiff का उपयोग करने का प्रयास किया?

vimdiff file1 file2 

यह आपको डिफ़ॉल्ट रूप से स्क्रॉल बाध्यकारी देगा।

+0

समस्या यह है कि सभी पंक्तियां भिन्न होती हैं, यह गड़बड़ हो रही है .. रेखाएं लगभग समान हैं लेकिन एक चरित्र से भिन्न हो सकती हैं ... और मैं नहीं चाहता कि मेरा विचार बहुत परेशान हो .. हालांकि । – LB40

+1

@ एलबी 40 आप अपने कलरकेम को ट्वीक करने पर विचार कर सकते हैं, http://stackoverflow.com/questions/24666558/improve-vimdiff-syntax- हाइलाइटिंग – qneill

154

पहले विभाजन, और में

:set scrollbind 

जाओ प्रकार अगले एक (ctrl + डब्ल्यू) करने के लिए पर जाएँ, और भी ऐसा ही।

अक्षम करने के लिए:

:set noscrollbind 

अधिक जानकारी के लिए, पुस्तक बाध्यकारी के दस्तावेज़ देखने - http://vimdoc.sourceforge.net/htmldoc/scroll.html#scroll-binding

+47

यदि आपके पास सभी फाइलें खुली हैं, तो आप 'विंडो सेट स्क्रॉलबिंड' भी कर सकते हैं इसे एक ही समय में सभी विभाजन के लिए सेट करें। – Bernhard

+1

@MrOodles - वास्तव में प्रश्नकर्ता बस पूछता है * अगर * यह संभव है .... :-) –

+6

@BrianAgnew: आप उन लोगों में से एक हैं, जब पूछा गया, "क्या आप मुझे एक बियर पकड़ने में सक्षम होंगे?", बस कहता है "हाँ, मैं करता हूं", और ऐसा नहीं करता, है ना? – naught101

38
:windo set scrollbind 

सेट scrollbind सभी खिड़कियों में होगा।

+2

यदि आप इसे स्वयं बहुत कुछ पाते हैं, तो यह कुछ हो सकता है कि 'nmap : windo set scrollbind! सभी खुली खिड़कियों में स्क्रॉलबिंड टॉगल करने के लिए '। – jlund3

+0

पता नहीं क्यों लेकिन 'स्क्रॉलबिंड!' मेरे लिए काम नहीं किया, लेकिन 'invscrollbind' किया। एक सुपर मैपिंग। धन्यवाद! – UlfR

3

वंशावली के लिए, मुझे यह करने की ज़रूरत है, क्योंकि मैंने विमडिफ से शुरुआत नहीं की थी।

मैंने एक फ़ाइल लोड की। फिर: दूसरे को लोड करने के लिए बनाम।

वे बहुत अलग फाइलें हैं, लेकिन मैं देखना चाहता हूं कि उनके बीच क्या आम है।

तो ...

:set diff 
:set diffopt=iwhite 
:set scrollbind 
+2

आप उन सभी को एक दिए गए बफर (: diff,: diffopt, scrollbind) के लिए एक कमांड में प्राप्त कर सकते हैं: प्रत्येक बफर में diffthis – qneill