[英]VIM : Trouble mapping <c-/> and re-selecting visual selection?
我正在使用一個名為tComment的vim插件
它允許我通過按gc
或<c-_><c-_>
來評論一行
此外,它適用於快捷方式<c-/><c-/>
但visual selection
丟失。
所以,我嘗試過:
<c-/>
我的嘗試:
inoremap <c-/> gc
vnoremap <c-/> gc gv
nnoremap <c-/> gc
=========
imap <c-/> gc
vmap <c-/> gc gv
nmap <c-/> gc
=========
imap <c-/> gc$
vmap <c-/> gc$ gv
nmap <c-/> gc$
=========
inoremap <c-/> <c-_><c-_>
vnoremap <c-/> <c-_><c-_> gv
nnoremap <c-/> <c-_><c-_>
=========
imap <c-/> <c-_><c-_>
vmap <c-/> <c-_><c-_> gv
nmap <c-/> <c-_><c-_>
( 以上情況似乎不起作用 )
注意:
vim
(Ubuntu)上安裝tComment
你進入我的設置。 :map
,而不是:noremap
。 <Plug>PluginName...
閱讀:help g:tcommentMaps
獲取有關此特定插件的說明,然后將覆蓋放入~/.vimrc
。 如果我理解正確,您希望有一個地圖(在i,n和&v模式下),可以對當前行或視覺選擇進行注釋。 這就是tcomment的<c-_><c-_>
映射現在所做的(除了你想要保持視覺選擇)。 為了使用<c-/>
你必須在vimrc中設置g:tcommentMapLeader1 =''(或其他一些地圖,因為<c-/>
似乎與echristopherson指出的<c-_>
相同)然后定義<c-/>
地圖。
這應該工作(將這些行添加到.vimrc):
let g:tcommentMapLeader1 = ''
noremap <silent> <c-/> :TComment<cr>
vnoremap <silent> <c-/> :TCommentMaybeInline<cr>gv
inoremap <silent> <c-/> <c-o>:TComment<cr>
您可能必須將<c-/>
替換為<c-_>
才能使其正常工作。 由於您在鍵入<c-/><c-/>
時報告tcomment已經有效,因此<c-_>
映射應該有效。
無論如何,我還建議使用運算符映射,因為這些更適合vim的工作方式。 我不認為使用單個鍵仍然是一個好主意。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.