2017-04-19 74 views
0

一個空字符串在我vimrc(我用Nvim),我已經映射取消搜索在vim

noremap <C-f> <Esc> 
noremap! <C-f> <Esc> 

noremap//\v 
noremap ? ?\v 

自動獲取very magic正則表達式搜索。但是,我經常誤按/(或改變主意搜索),然後按C-f(有時輸入)將其取消。但是,這會突出顯示整個文件(因爲所有內容都匹配"\v")。有時我記得在按下C-f之前刪除了兩次,但是這令人不安地將我移到我先前搜索的下一個實例(空搜索"")。

我可以按C-CEsc鍵取消搜索,但我不使用它,我覺得我會不舒服的方式來做到這一點移動我的手指。有可能使這個更簡單,更舒適嗎?有兩種解決方案,我能想到的,但不知道如何實現,將是

  1. 重映射C-F工作作爲Esc鍵C-C,而搜索。

  • 使某種別名的或改變一些設置,以便搜索"\v"(空正則表達式)或""(無)簡單地取消搜索。
  • +0

    我會建議忘掉習慣,按Enter鍵*取消*。 – mkrieger1

    +0

    也學會避免按/錯誤。 – mkrieger1

    +0

    mkrieger1謝謝,按Enter鍵是一個壞習慣。我想,在我看來,沒有什麼東西等於不搜索,這是習慣的來源。這不僅僅是錯誤的,有時我需要取消搜索,而且我經常想我需要尋找某些東西,但是改變主意。我會更新這篇文章,以便更清楚一點。 –

    回答

    0

    我設法解決它自己!顯然,改變

    noremap <C-f> <Esc> 
    noremap! <C-f> <Esc> 
    

    noremap <C-f> <C-c> 
    noremap! <C-f> <C-c> 
    

    的伎倆。我不太確定這是爲什麼,特別是因爲Esc似乎同樣適用於C-c

    3

    答案很簡單:

    改變你的習慣「按回車鍵取消」的操作。也不要按ctrl-f進行搜索。

    爲什麼你有這個奇怪的習慣?

    • Enter命令後的鍵90%將表示「啓動」。

    • Vim中
    • ESC會更經常壓比Enter也,一般來講,Esc關鍵應該是一個「取消」的opeartion

    • 你的意思在您的評論「搜索一無所有」,實際上不是「搜索無」,而是「搜索任何東西」!

    • 映射ctrl-f在正常模式下是一個壞主意,它會「向下翻頁」,而ctrl-b爲「向上翻頁」。他們是我認爲很有用的功能。

    • 在命令/搜索模式下映射ctrl-f也是一個壞主意。 ctrl-f帶您進入命令窗口,您可以使用完整的vim normal/insert命令編輯您的命令。很有用。

    如果激活了「hlsearch」裏,而且要刪除的匹配高亮,我有這樣的vimrc裏,你可以嘗試:

    "clear hl search by pressing ,/ 
    nnoremap <silent> <Leader>/ :noh<cr> 
    
    +0

    肯特。感謝您的回覆。我通常不會按輸入,並更新了我的問題。這是因爲Esc被廣泛使用,我已映射到組合鍵(C-f),只需要我從asdf移動一個手指。我有單獨的綁定頁面上/下。 –

    +0

    我錯誤地完成之前發佈: 隨着「搜索無效」我沒有「非常神奇」搜索。使用\ v搜索「」(空字符串)匹配所有內容,搜索「」不帶'\ v'匹配我的上一個搜索結果。 感謝您的建議。這不是我正在尋找的東西,但是它起到了解決方法的作用。 –