टी एल; डॉ
पर जाएं Wrap-up
शीर्षक के लिए vimrc
लाइनों में अपने जीवन को बेहतर बनाने में क्या करने के लिए जोड़ने के लिए।
मैन्युअल
Daud :checktime
जांचें कि क्या किसी बफ़र्स को विम के बाहर बदल दिया गया है। यदि आप किसी फ़ाइल के दो संस्करणों के साथ समाप्त होते हैं तो यह आपको चेक और चेतावनी देता है।
खुद ब खुद
अपने आप लोड परिवर्तन करने के लिए, अपने में जोड़ें vimrc
:
set autoread
जब विम के बाहर किसी फ़ाइल को बदल दिया गया है और उसे विम के अंदर नहीं बदला गया है, तो स्वचालित रूप से उसे फिर से पढ़ें। जब फ़ाइल को हटा दिया गया है तो ऐसा नहीं किया जाता है।
यह उत्तर एक चेतावनी जोड़ता है:
जब तक आप बाहरी कमांड चलाने (जैसे !ls
या !sh
आदि) की तरह कुछ नहीं करते हैं ऑटोरैड फ़ाइल को फिर से लोड नहीं करता है
समाधान के लिए आगे पढ़ें।
ट्रिगर बंद होने पर ट्रिगर
अपने में जोड़ें vimrc
:
au CursorHold,CursorHoldI * checktime
डिफ़ॉल्ट रूप से, कर्सर के 4 सेकंड तक बने रहने के बाद CursorHold चालू हो जाता है, और updatetime के माध्यम से कॉन्फ़िगर करने योग्य होता है ।
बफर परिवर्तन या टर्मिनल फ़ोकस पर ट्रिगर
विम के अंदर बफ़र्स बदलते समय vimrc
ट्रिगर करने के लिए अपने को निम्न जोड़ें :autoread
au FocusGained,BufEnter * :checktime
सादे विम के अंदर कैचिंग टर्मिनल विंडो फोकस
करवाने के लिए FocusGained
(ऊपर) सादे vim में काम करते हैं, एक टर्मिनल एमुलेटर (xterm, tmux, आदि) के अंदर स्थापित प्लगइन:
vim-tmux फोकस-घटनाओं
Tmux संस्करण> 1.9 पर, आपको इसमें जोड़ना होगा .tmux.conf
:
set -g focus-events on
लपेटें
autoread
ट्रिगर होने पर सूचनाएं भी संभव हैं ।
vimrc
उपरोक्त सभी को लागू करने के लिए यहां मेरी लाइनें हैं :
" Triger `autoread` when files changes on disk
" https://unix.stackexchange.com/questions/149209/refresh-changed-content-of-file-opened-in-vim/383044#383044
" https://vi.stackexchange.com/questions/13692/prevent-focusgained-autocmd-running-in-command-line-editing-mode
autocmd FocusGained,BufEnter,CursorHold,CursorHoldI * if mode() != 'c' | checktime | endif
" Notification after file change
" https://vi.stackexchange.com/questions/13091/autocmd-event-for-autoread
autocmd FileChangedShellPost *
\ echohl WarningMsg | echo "File changed on disk. Buffer reloaded." | echohl None
मेरे साथ सही दिशा में इशाराau CursorHold
करने के लिए एरचबस्चुलज़ को धन्यवाद ।