मैं vimdiff रंगों को कैसे अनुकूलित करूं?


22

मैं अपने git मर्ज टूल के रूप में vimdiff का उपयोग करने की कोशिश कर रहा हूं, लेकिन उपयोग किए जाने वाले रंग इसे असहनीय बना रहे हैं (कम से कम विंडोज / मिंगव पर): पृष्ठभूमि का रंग और अग्रभूमि रंग कुछ परस्पर विरोधी लाइनों के लिए समान है, जिससे यह अनावश्यक रूप से कठोर हो जाता है यह जानने के लिए कि क्या चल रहा है (नीचे दी गई लाइनें देखें include=)।

उदाहरण

जवाबों:


13

रंग इन चार हाइलाइट समूहों द्वारा नियंत्रित होते हैं ( :help hl-DiffAdd):

DiffAdd     diff mode: Added line
DiffChange  diff mode: Changed line
DiffDelete  diff mode: Deleted line
DiffText    diff mode: Changed text within a changed line

इन्हें आम तौर पर एक रंग योजना द्वारा परिभाषित किया जाता है , लेकिन आप इन्हें अपने ~/.vimrc( :colorschemeकमांड के बाद ) में अनुकूलित कर सकते हैं यदि आप चाहें तो कुल मिलाकर योजना बनाते हैं, बस इसका अलग-अलग हाइलाइटिंग नहीं है। सिर्फ उपयोग को फिर से परिभाषित करें :highlight। यहाँ मेरे व्यक्तिगत अनुकूलन हैं (GVIM के लिए; टर्मिनल के लिए आपको ctermfg/bg=...इसके बजाय / इसके अतिरिक्त उपयुक्त विशेषताओं की आवश्यकता है ):

hi DiffAdd      gui=none    guifg=NONE          guibg=#bada9f
hi DiffChange   gui=none    guifg=NONE          guibg=#e5d5ac
hi DiffDelete   gui=bold    guifg=#ff8080       guibg=#ffb0b0
hi DiffText     gui=none    guifg=NONE          guibg=#8cbee2

यदि आप उड़ने पर colorchemes स्विच कर रहे हैं, तो आपको उन :hiआदेशों को फिर से लागू करना होगा:autocmd ColorScheme * hi ...


11

एक त्वरित फिक्स सिंटैक्स हाइलाइटिंग को अक्षम करना है। कभी-कभी कोड सिंटैक्स हाइलाइटिंग के कारण अग्रभूमि पाठ के समान रंग का विमीडिफ पृष्ठभूमि रंग हो जाएगा, जिससे पाठ "अदृश्य" हो जाएगा।

:syntax off

यदि आप इसे स्वचालित रूप से vimdiff के लिए करना चाहते हैं, तो इसे अपने अंत में जोड़ें ~/.vimrc:

if &diff
    syntax off
endif
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.