मुझे पता CTRLgहै कि आप जिस वर्तमान फ़ाइल पर काम कर रहे हैं उसे प्रदर्शित करता है। क्या मेरा .vimrc
ऐसा संशोधन करने का कोई तरीका है जो फ़ाइल नाम / पथ हमेशा प्रदर्शित होता है?
जवाबों:
अपनी स्थिति में, %F
पूर्ण पथ प्रदर्शित करने के लिए एक जोड़ें :
:help statusline
" Add full file path to your existing statusline
set statusline+=%F
ध्यान दें, %F
पूरा रास्ता होगा। कार्यशील निर्देशिका के सापेक्ष एक पथ प्राप्त करने के लिए, का उपयोग करें %f
।
यदि आपकी स्थिति पहले से ही दिखाई नहीं दे रही है, तो आपको सबसे पहले इसे हमेशा, दृश्यमान होने के लिए कॉन्फ़िगर करने की आवश्यकता हो सकती है laststatus=2
set laststatus=2
देखें :help laststatus
कि विकल्पों का क्या मतलब है। आम तौर पर, जब तक कि कई बफ़र्स खुले नहीं होते, तब तक की स्थिति छिपी या छिपी हो सकती है, लेकिन मुझे इस तरह के अनुकूलन के साथ हर समय ऐसा करना बहुत उपयोगी लगता है, साथ ही इसके लिए एक स्क्रीन लाइन रिजर्व देने के लायक है।
:set statusline=%F
बिना प्रयास करें+
:set statusline=%F
? देखने के लिए दाईं ओर या बाएं तरफ देखें कि क्या फ़ाइल का नाम वहां की स्थिति में छिपा हुआ है
set laststatus=2
हर समय स्टेटसलाइन को दृश्यमान रखे। मैं भूल गया था कि मैं उस पर था।
सेट ls = 2
इसे vimrc में जोड़ें, और आपको हमेशा नीचे फ़ाइल नाम दिखाई देगा।
set modeline
थोड़ा खतरनाक है और सवाल से कोई लेना-देना नहीं है। यह फ़ाइल के 5 आरंभ / समाप्ति लाइनों में Vim कमांड के निष्पादन की अनुमति देता है। इसे केवल उन लोगों द्वारा चालू किया जाना चाहिए जो जानते हैं कि क्यों और वास्तव में यह चाहते हैं। (Thats
मुझे विम के साथ फ़ाइल संपादित करते समय गनोम-टर्मिनल के शीर्षक बार में फ़ाइल पथ प्रदर्शित करने के 2 तरीके मिले।
सरल (और बेहतर) तरीका: निम्न पंक्ति को अपने में जोड़ें ~/.vimrc
:
set title
जो आपको सबसे ऊपर दिखाएगा:
filename.ext (~/path_to_directory_where_your_file_is/) - VIM
अधिक जटिल तरीका आपको पूर्ण फ़ाइल पथ दिखाएगा। यह हाल ही में लिखे गए इस ब्लॉग पोस्ट में थोड़ा और विस्तार से प्रलेखित है ।
एक ही रास्ता मैं फ़ाइल मैं में काम कर रहा हूँ का पूरा पथ पाने के लिए मिल गया है: :echo expand('%:p')
। आप चाहें तो ctrl + g को दोबारा मैप कर सकते हैं, लेकिन मैं व्यक्तिगत रूप से मानकों से बहुत ज्यादा दूर हटना पसंद नहीं करता। मैंने F7 की तरह मैप किया है:
map <F7> <Esc>:echo expand('%:p')<Return>
:help CTRL-G
, और CTRL-G
गिनती के लिए नीचे दो पैराग्राफ देखें ।
1 CTRL-G
पूरा फ़ाइल नाम दिखाता है। मैं इस विकल्प को खोज रहा था।
~
।
यदि आप विम-एयरलाइन का उपयोग कर रहे हैं , तो इसमें डालें .vimrc
:
let g:airline_section_c = '%<%F%m %#__accent_red#%{airline#util#wrap(airline#parts#readonly(),0)}%#__restore__#'
यह एयरलाइन डिफ़ॉल्ट का एक संशोधन है, जिससे बदल रहा %f
है %F
।
मुझे लगता है कि स्टेटसलाइन बहुत शक्तिशाली और आसान है। बॉक्स के बाहर स्ट्रेट यह फ़ाइल नाम, कर्सर की स्थिति और कुछ झंडे प्रदर्शित करेगा। लेकिन आप मेरे जैसा ही करना चाहते हैं और फ़ाइल के लिए फ़ाइल का नाम पूर्ण पथ के साथ बदलें ।
इसलिए .vimrc
मेरे स्टेटस को संपादित करते समय कुछ इस तरह से डिफ़ॉल्ट रूप में देख सकते हैं:
.vimrc 26,16 7%
आप के साथ स्थिती की अपनी सेटिंग देख सकते हैं:
:set statusline?
लेकिन अगर आपने कोई परिवर्तन नहीं किया है और कोई मॉड्यूल नहीं बदला है तो यह खाली होगा। लेकिन मदद-अनुभाग ( :help statusline
) में उदाहरणों से आप पा सकते हैं कि डिफ़ॉल्ट है:
:set statusline=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P
इसलिए इसे अपने में शामिल करें .vimrc
और इसमें बदलाव %f
करें %F
। मैंने %y
अपनी स्टेटसलाइन में फ़िलाटाइप फ़्लैग ( ) भी जोड़ा क्योंकि मुझे यह सुविधाजनक लगता है। तो मेरा परिणामी विन्यास इस तरह दिखता है:
:set statusline=%<%F\ %h%m%r%y%=%-14.(%l,%c%V%)\ %P
और परिणाम कुछ इस तरह दिखाई देगा:
~/.vimrc [vim] 26,16 7%
अच्छा पठन:
पुनश्च। मैं 7.3.३ चलाती हूं
यदि आप चाहते हैं कि हल किए गए सीमलिंक शामिल हों, तो निम्न का उपयोग करें:
set statusline +=%{resolve(expand('%:p'))}\ %*
अपने घर निर्देशिका के लिए '~' संक्षिप्त नाम रखने के लिए, शामिल करें fnamemodify
set statusline +=%{fnamemodify(resolve(expand('%:p')),':~')}\ %*
set statusline+=%F
हूं , लेकिन मेरा कहना~/.vimrc
यह नहीं है कि आपका क्या कहना है। हालाँकि डॉक्स निश्चित रूप से आपसे सहमत हैं ...