【问题标题】:Emmet VIM trigger key remap issueEmmet VIM 触发键重映射问题
【发布时间】:2013-09-20 00:17:08
【问题描述】:

我刚刚安装了 Emmet VIM 插件,看起来很有趣。激活 Emmet 插件功能的“触发组合键”并不是最好的。因此我试图在我的 vimrc 文件中重新映射它。我已经成功地重新映射了 Escape 键,如下所示:

inoremap ;; <ESC>

这允许我输入分号字符“;”快速连续退出插入模式并进入正常模式。但是,当我尝试重新映射 Emmet 触发键时它不起作用,即 ,(读取为 Control 键和“y”键,然后是“,”键)。我尝试了以下组合:

inoremap hh <C-y> ,
inoremap hh <C-y>,
inoremap hh <C-y,>

正如您在上面看到的,我正在尝试将“hh”组合键映射到 Emmet VIM 的触发键。

提前感谢您的宝贵时间。

巴拉特

【问题讨论】:

  • inoremap ;; &lt;ESC&gt; - 小心这样的映射,它可能会伤害你的小指,像 jj 这样的东西可能是一个更好的选择

标签: vim map emmet


【解决方案1】:

inoremap 表示如果有映射(例如到,),则不会通过映射的组合键跟随。你可能想要imap

imap hh <C-y>,

【讨论】:

    【解决方案2】:

    Emmet VIM 提供了一种重新定义它的方法:

    let g:user_emmet_leader_key='hh'
    

    在自述文件中找到:https://github.com/mattn/emmet-vim/#redefine-trigger-key

    【讨论】:

    • 不适用于我用 重新映射的情况
    【解决方案3】:

    我用那个:

    let g:user_emmet_leader_key=','
    

    所以 ',,' 会触发 Emmet。

    【讨论】:

    • 好主意!谢谢!
    • 哇,好主意。谢谢
    【解决方案4】:

    更聪明的方法是使用Expression Mappings,比如:

    au FileType html imap <buffer><expr><tab> <sid>zen_html_tab()
    

    【讨论】:

    • 上下文映射是我不知道的另一个很棒的东西。感谢您的链接,它解释得很好。
    猜你喜欢
    • 2016-04-21
    • 1970-01-01
    • 2020-03-09
    • 2011-06-09
    • 1970-01-01
    • 1970-01-01
    • 2011-06-22
    • 2011-04-17
    • 1970-01-01
    相关资源
    最近更新 更多