搜尋

首頁  >  問答  >  主體

gvim - 如何理解vim裡面的mapleader和localmapleader?

本人新手,最近學習使用vimwkiki插件,但是裡面的部分快捷鍵無法使用。
3. Mappings |vimwiki-mappings|
3.1. Global mappings |vimwiki-global-mappings|
3.2. Local mappings |vimwiki-local-mappings|
-------------------------------------------------- ----------------------

  1. vimwiki_<Leader>wh*

<Leader>wh Convert current wiki page to HTML.
Maps to |:Vimwiki2HTML|
To remap: >
:nmap <Leader>wc <Plug>Vimwiki2HTML

-------------------------------------------------- ----------------------

根據vimwiki的說明文件來看,出問題的在3.2節描述的local mappings.

百度搜尋著兩個key words,都是重複的內容;Google之,又有些看不懂 T.T

需要在vimrc裡面設定localmapleader的值才能使用vimwiki-local-mappings的快捷鍵嗎?

###我使用的vimwiki版本是 Version: 2.0.1 'stu'###
PHPzPHPz2742 天前1079

全部回覆(2)我來回復

  • PHP中文网

    PHP中文网2017-05-16 16:44:29

    引用vim中文文件(http://vimcdoc.sourceforge.net)的解釋:

    在一个全局插件里应该使用 <Leader> 而在一个文件类型插件里应该用 <LocalLeader>。
    "mapleader" 和 "maplocalleader" 可以是相同的。尽管如此,如果你把它们设为不同,
    全局插件和文件类型插件的映射冲突的机会是不是会小一点呢?例如,你可以保持把
    "mapleader" 设置为缺省的反斜杠,而设置 "maplocalleader" 为下划线。

    我遇到的Vimwiki2HTML快捷鍵無法使用的問題是在"作怪".

    用pathogen安裝完vimwiki插件後,在~/.vim/bundle/vimwiki/ftplugin下有一個vimwiki.vim檔,裡面有一個轉換wiki到HTML的快捷鍵定義如下:

    if !hasmapto('<Plug>Vimwiki2HTML')
      nmap <buffer> <Leader>wh <Plug>Vimwiki2HTML
    endif
    nnoremap <script><buffer>
          \ <Plug>Vimwiki2HTML :Vimwiki2HTML<CR>

    限定了這個快捷鍵的作用範圍,那麼這個快捷鍵就只對後綴名稱是vimwiki的文件有效了,對其他格式的文件不起作用.

    我之前對ftplugin不熟悉,對快捷鍵的作用域也不熟悉,所以沒調出這個快捷鍵來.在這裡也謝謝網友@xuelang的熱心幫助.

    最後再補充一點,mapleader和localmapleader都是可自訂的.

    let mapleader = "\"
    let localmapleader = ","

    如果你也遇到vimwiki某些快捷鍵無法使用的問題的時候,還可以使用

    :set filetype=vimwiki

    希望這個回答對遇到同樣問題的網友有所幫助. :)

    回覆
    0
  • 黄舟

    黄舟2017-05-16 16:44:29

    不需要在vimrc裡面設定localmapleader的值就能使用vimwiki-local-mappings的快捷鍵.

    例如:
    命令:Vimwiki2HTML在vimwiki中預設綁定的快捷鍵為wh, 也就是說打開vimviki文件後, 在普通模式下快速按wh這三個鍵即可生成相應的html文件了. 當然也可以自己重新定義快速鍵,如下:

    nmap wc :Vimwiki2HTML

    只需要在.vimrc中加入以上鍵匹配即可.
    -------------------------------------------------- ------------
    一般為鍵, 可以自行修改代表的鍵值. 可以查看幫助:

    :help mapleader

    回覆
    0
  • 取消回覆