आप नहीं कर सकते।
यहाँ क्या <C-w><C-i>
है के लिए सी स्रोत कोड है:
normal.c
:
/*
* This table contains one entry for every Normal or Visual mode command.
* The order doesn't matter, init_normal_cmds() will create a sorted index.
* It is faster when all keys from zero to '~' are present.
*/
static const struct nv_cmd
{
int cmd_char; /* (first) command character */
nv_func_T cmd_func; /* function for this command */
short_u cmd_flags; /* NV_ flags */
short cmd_arg; /* value for ca.arg */
} nv_cmds[] =
{
[...]
{Ctrl_W, nv_window, 0, 0},
};
[...]
/*
* CTRL-W: Window commands
*/
static void
nv_window(cmdarg_T *cap)
{
if (!checkclearop(cap->oap))
do_window(cap->nchar, cap->count0, NUL); /* everything is in window.c */
}
window.c
:
/*
* all CTRL-W window commands are handled here, called from normal_cmd().
*/
void
do_window(
[..]
) {
switch (nchar)
{
[..]
case 'i': /* Go to any match */
case Ctrl_I:
type = FIND_ANY;
/* FALLTHROUGH */
[..]
default: beep_flush();
break;
मुझे पूरी तरह से यकीन नहीं है कि type
चर कहाँ से उठाया जाता है, मुझे ऐसा नहीं लग रहा था, लेकिन मुद्दा यह है कि, "यह कुंजी इस कार्यक्षमता के लिए मैप की गई है" कहने के लिए कोई वास्तविक सुविधा नहीं है। यह मूल रूप से सिर्फ एक है struct
जो char
एक फ़ंक्शन के लिए मैप करता है, और दूसरा कीस्ट्रोके ( <C-i>
) का कार्यान्वयन केवल तदर्थ बदसूरती है!
यह Emacs से अलग है, जहां (मैं मानता हूं) सब कुछ लिस्प में है, और आपके कस्टम मैपिंग Emacs के डिफ़ॉल्ट मैपिंग से अलग नहीं हैं। लेकिन विम में आपके पास "मैजिक" मैपिंग है जो सी कोड द्वारा प्रदान की जाती है जो सी फ़ंक्शन के खिलाफ मैप करते हैं जो कभी भी विम में उजागर नहीं होते हैं। मैं हमेशा कहता हूं कि विम के पास बेहतर विचार है, लेकिन Emacs का बेहतर कार्यान्वयन है ;-)
तो एकमात्र तरीका यह है कि आप इसे मदद फ़ाइलों में देखें। यही कारण है कि मैंने इसे डुप्लिकेट के रूप में बंद कर दिया है कि मैं विम के प्रलेखन में विषयों पर कैसे नेविगेट करूं क्योंकि यह एकमात्र व्यावहारिक उत्तर है जो कोई भी दे सकता है। कोई वास्तव में यह तर्क दे सकता है कि प्रश्न के बारे में अधिक गहराई से स्पष्टीकरण दिया जा सकता है (जैसा कि मैंने अभी किया है), और क्या आपने यह तर्क दिया था कि (अब हटाए गए) जवाब देने के बजाय, मैंने शायद "आप 'कहा होगा सही है, गलती के लिए क्षमा करें "और इसे फिर से खोला ;-)
किसी भी दर पर, कुछ उदाहरणों के साथ सम्मेलनों का संक्षिप्त वर्णन करने के लिए:
:help w
w
(केस-संवेदी) के लिए सामान्य मोड मैपिंग ;
:help g8
- सामान्य मोड मानचित्रण के लिए g8
;
:help v_o
- दृश्य मोड मानचित्रण के लिए o
; अन्य मोड c
कमांड-लाइन और i
सम्मिलित करने के लिए हैं;
:help CTRL-W
- सामान्य मोड मानचित्रण के लिए <C-w>
;
:help i_CTRL-W
- के लिए मोड मानचित्रण सम्मिलित करें <C-w>
;
:help CTRL-W_CTRL-I
- सामान्य मोड मानचित्रण के लिए <C-w><C-i>
;
:help i_CTRL-G_<Down>
- के लिए मोड मैपिंग डालें <C-g><Down>
।