加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

将一个键映射到vim中的多个命令

发布时间:2020-12-15 18:55:52 所属栏目:安全 来源:网络整理
导读:我明白,为了在一行中执行多个命令,例如保存并执行pdflatex,我可以执行以下操作. :w | !pdflatex %:t 请注意,%:t给出当前文件名(不带路径).此代码在Vim中正常工作.现在,如果我想映射上面的整个事情,说ctrl shift F6,我想要能够做以下 :nnoremap C-S-F6 :w |
我明白,为了在一行中执行多个命令,例如保存并执行pdflatex,我可以执行以下操作.
:w | !pdflatex %:t

请注意,%:t给出当前文件名(不带路径).此代码在Vim中正常工作.现在,如果我想映射上面的整个事情,说ctrl shift F6,我想要能够做以下

:nnoremap <C-S-F6> :w | !pdflatex %:t<CR>

但这不行,给我以下错误.

:!pdflatex paper.tex<CR>
/bin/bash: -c: line 0: syntax error near unexpected token `newline'
/bin/bash: -c: line 0: `pdflatex paper.tex<CR>'

这是否意味着我无法将ctrl shift F6映射到所需的功能,保存并执行pdflatex?我能做些什么来解决这个问题?

假设< C-S-F6>实际上(它可能不会在CLI Vim中),你必须逃避吧或使用< bar>代替:
:nnoremap <C-S-F6> :w | !pdflatex %:t<CR>
:nnoremap <C-S-F6> :w <bar> !pdflatex %:t<CR>

请参阅:help map_bar.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读