2014-01-27 81 views
2
  1. .vimrc如何insert mode移動光標在Vim中插入模式在vimrc文件

    末,家庭,方向鍵,數字鍵

  2. 當我從normal mode移到使用以下主要功能insert mode使用i命令,光標向後移動1個字符。如何阻止它? (使用.vimrc命令或任何其他方式)

+0

結束,家庭,箭頭鍵和數字鍵應該在插入模式下開箱即用。你如何使用Vim,他們似乎不工作? – FlyingFoX

+0

我在Ubuntu上遇到過有關箭頭鍵不能在插入模式下工作的行爲(可能是'vim-tiny'軟件包)。確保你的系統運行的是'vim'的完整版本。 – etuardu

+0

它們在插入模式下正常工作。但是我想要的是一個'command',它相當於箭頭鍵,home和end在插入模式下寫入'inoremap'。 – Lahiru

回答

6

你的第二個問題:您可以使用一個切換到插入模式,而不是

這會將光標置於插入模式之後而不是之前突出顯示的字符,而不像之前那樣i確實。

2
  1. 特殊鍵通常是一系列轉義碼。不是映射難以理解的難看的轉義碼,而是再次查看它,那麼如何映射正常模式等價物呢? <C-o>允許您在正常模式下運行單個命令並返回插入模式。

    例如,下圖將使插入模式下的X向右移動一個字符並保持插入模式。

    inoremap X <C-o>l 
    
  2. 退出插入模式時,無法禁止光標「向左移動」。你可以把它想象成光標總是放在一個字符上。如果光標沒有「移動」,那麼它不會放在行尾的字符上。由於FlyingFoX已經指出,您可以使用a而不是i進入插入模式,此「移動」不會影響到您。

+0

與你的答案中的映射,你怎麼能輸入'SEX'? – Kent

+0

我剛剛用'X'作爲例子。我不知道他究竟想要映射什麼。 –

1

我剛試過,End,Home,Arrows沒有特殊設置。如果你在終端啓動vim,對於某些終端,你需要設置term爲合適的值。它可能不同。如果您正在使用vim,請確保您有set nocompatible不過我建議你忘了箭頭/家庭/結束鍵,移動這樣:

<esc>A (Insert End) 
<esc>I or gI (Insert Home) 
<Esc>hjkl (arrows) 

進入插入模式只有當你真的想插入文本否則保持正常模式。你也可以考慮按<C-o>

Q2,這個i就是這樣設計的。有不同的方式進入插入模式。 i a s c I A o O ...閱讀這些命令的幫助,自己嘗試一下,仔細想想,你會發現,它們會讓你的日常編輯更富有成效。

2

對於在插入模式下使用特殊鍵的映射,只需使用特殊鍵表示法即可。例如:

inoremap <F5> <Left><Left>hello 
nnoremap <F5> a<Left><Left>hello<Esc> 
相關問題