vim - 在 Vim 中使用 latex-suite 映射 <C-j> 的问题

标签 vim latex mapping

我想映射<C-j>切换到当前窗口下方的下一个窗口

map <C-j> <C-w>j

但是,它会进入插入模式,而不是移动下面的窗口。为什么?

尝试的解决方案:

我有 latex-suite安装。于是我尝试查询<C-j>映射到
:map <C-j>

我得到以下输出:
v  <NL>          <Plug>IMAP_JumpForward
n  <NL>          <Plug>IMAP_JumpForward
o  <NL>          <C-W>j

这意味着我应该更改 <Plug>IMAP_JumpForward 的映射。 .我阅读了一下,发现它与 <++> 相关。您可以使用 <C-j> 跳转到的占位符在插入模式下。所以,根据我的阅读,我了解到我可以使用 .vimrc 中的以下行来更改映射。 :
imap <C-space> <Plug>IMAP_JumpForward

但是不,它不能用作 <C-j>习惯了。我会尽力说明。我输入以下内容(_ 代表光标):
\documentclass{}_

然后我得到
\documentclass{_}<++>

然后我尝试输入一些文字
\documentclass{article_}<++>

所以现在我按<C-space> .这就是发生的事情:它退出插入模式,我将处于以下情况:
\documentclass{articl_e}<++>

问题总结:
  • 之后 map <C-j> <C-w>j , <C-j>进入插入模式。
  • 之后 imap <C-space> <Plug>IMAP_JumpForward , <C-space>不跳转到下一个 <++>占位符。它退出插入模式,光标后退一个字符。

  • 怎么了?我错过了什么?

    最佳答案

    我建议两件事:

  • 首先,定位映射:
    nnoremap <C-j> <C-w>j
    
  • 其次,通过做找出哪些映射干扰(以及它们来自哪里)
    verbose nmap <C-j>     
    verbose nmap <C-w>
    verbose nmap j
    

  • 另见:map , :imap , :vmap , :noremap等等

    关于vim - 在 Vim 中使用 latex-suite 映射 <C-j> 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8304421/

    相关文章:

    java - 处理java包文件夹的简单方法?

    Vim:在命令行模式下多次执行同一命令的方法

    r - 使用 knitr 和 kableExtra 的脚注中的公式或符号

    python - 使用 docutils 从 reStructuredText 创建最小的 LaTeX 语法

    java - Hibernate 枚举映射

    c++、cscope、ctags 和 vim : Finding classes that inherit from this one

    vim - 有没有办法在vim中压缩标签文件

    Docker Alpine Latext texmf-dist 样式未找到

    ruby - 迭代哈希集合

    javascript - 如何同时增加值而不是按顺序映射它们?