मुझे एक विचार आया कि <C-a>
विम के सामान्य मोड में न केवल संख्याएं बढ़ाना चाहिए बल्कि बुलियन बुलियन करना चाहिए। यह समझ में आता है अगर तुम true
और false
पर विचार के रूप में पूर्णांक सापेक्ष 2.विम के सामान्य मोड CTRL-A के लिए समानार्थी?
तो, मैं downloaded an excellent script बालों काम करने के लिए और <C-a>
के लिए एक नई परिभाषा लिखा है:
fun! NewCA()
let cw = tolower(expand("<cword>"))
if cw == "true" || cw == "false"
ToggleWord
else
" run the built-in <C-a>
execute "normal \<C-a>"
endif
endfun
command! NewCA :call NewCA()
nnoremap <C-a> :NewCA<cr>
लेकिन के रूप में यह होता है, nnoremap
नहीं करता ' जहां तक अंदरूनी कार्यों की जांच करने के लिए जाना है। मुझे रिकर्सिव व्यवहार मिलता है यदि मेरा कर्सर true
या false
पर नहीं है।
इस बिंदु पर मैं बहुत कसम खाता हूं, ब्रैम इमाक्स से एक उत्कृष्ट विचार क्यों नहीं लेता था, कि सब कुछ कार्य और कुंजी बाइंडिंग मुक्त रूप से सेट करने योग्य होना चाहिए। तो मैं सिर्फ <C-a>
के लिए फ़ंक्शन की जांच कर सकता हूं और उसे उस फ़ंक्शन में कॉल कर सकता हूं। लेकिन नहीं, मुझे ऐसा कोई फ़ंक्शन नहीं मिल रहा है, और execute "normal foo"
वाक्यांश विम मुहावरे प्रतीत होते हैं।
कैसे मैं <C-a>
काम कर सकता है पर कोई सुझाव ऐसा है कि
- टॉगल बूलियन्स कर्सर को
true
याfalse
- पतन वापस एक शब्द खत्म हो गया है जब में निर्मित
<C-a>
व्यवहार अन्यथा
मदद की सराहना की!
दोनों जवाब एक ही है, सही समाधान है। मैंने इसे समुदाय में आपका स्वागत करने के लिए स्वीकृत उत्तर के रूप में चेक किया है। :) – progo