V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
shellex
V2EX  ›  Vim

VIM的filetype绑定命令问题

  •  
  •   shellex · 2012-07-23 10:23:41 +08:00 · 3391 次点击
    这是一个创建于 4510 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我在 .vimrc 中使用了如下配置:



    目的是为不同的文件类型使用不同的编译/运行配置

    但是问题出现了:

    - 打开一个coffee文件,按F5是CoffeeMake
    - TabNew开一个新tab,里面打开一个js文件,按F5是!js
    - 切换Tab到coffee那个文件,此时按F5是!js,而不是Coffee了。查看它的filetype 是coffee无误
    - 目测是后打开的文件会覆盖之前的配置,即使filetype不一样

    请问大家怎么处理这个情况....?

    补充:使用 autocmd BufRead,BufNewFile *.coffee 的方式问题依旧
    7 条回复    1970-01-01 08:00:00 +08:00
    yesmeck
        1
    yesmeck  
       2012-07-23 10:28:29 +08:00   ❤️ 4
    在这几个 map 后面加上 <buffer> 试试:
    autocmd FileType go map <buffer> <F5> <ESC>:!go install
    shellex
        2
    shellex  
    OP
       2012-07-23 10:32:11 +08:00
    @yesmeck 可行~ 谢谢你。这是什么科学道理?
    yesmeck
        3
    yesmeck  
       2012-07-23 10:33:02 +08:00   ❤️ 1
    只对当前 buffer 设置快捷键,就不会影响别的 buffer 了。
    NemoAlex
        4
    NemoAlex  
       2012-07-23 10:33:31 +08:00
    autocmd BufNewFile,BufRead *.c map <F5> <ESC>:make<CR>
    这样试试
    NemoAlex
        5
    NemoAlex  
       2012-07-23 10:45:59 +08:00
    嗯,应该是没有1楼的方法好
    @yesmeck 感谢,学习了
    shellex
        6
    shellex  
    OP
       2012-07-23 10:59:12 +08:00
    @yesmeck 恩,明白了~谢谢侬,感谢已发送。
    shellex
        7
    shellex  
    OP
       2012-07-23 10:59:42 +08:00
    @NemoAlex 这个方法也不行呢,我补充说明了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4089 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 05:14 · PVG 13:14 · LAX 21:14 · JFK 00:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.