zoukankan      html  css  js  c++  java
  • gvim keil 快捷跳转至出现错误(警告)行

    开发环境

    win7系统中:用keil 对工程进行编译链接,用gvim编辑查看源文件。

    实现效果

    一键跳转到出现警告或者错误的源码。

    实现原理

    1. gvim 调用外部shell脚本,对keil编译生成的log文件进行整理,警告信息汇总到warning_log.c ,错误信息整理到err_log.c。
    function! LoadErrLogFile()
          execute ":silent !bash.exe search_err.sh ./build/*log.htm"
          execute ":e err_log.c"
    endfunction
    
    function! LoadWarnLogFile()
          execute ":silent !bash.exe search_warning.sh ./build/*log.htm"
          execute ":e warning_log.c"
    endfunction
    
    1. 外部脚本的具体实现
    #!/bin/bash
    if [ -f "$1" ];then
        grep  "): err" $1 > err_log.c
    fi
    
    #!/bin/bash
    if [ -f "$1" ];then
        grep  "): warning" $1 > warning_log.c
    fi
    
    1. _vimrc中的案件映射定义
    nnoremap <C-F11> :call LoadErrLogFile()<CR>
    nnoremap <C-F10> :call LoadWarnLogFile()<esc><CR>
    nnoremap <F10> :e warning_log.c<esc><CR>
    nnoremap <F11> :e err_log.c<esc><CR>
    
    1. keil 编译生成的build_log文件,错误或者警告信息,都是按照文件名+(行号)这样的格式显示。vim中有现成的组合键实现直接跳转到文件的指定行。
    xx.c(linenum):error ...
    

    使用

    1. 用gvim打开源代码,ctrl+ F11组合键生成错误信息汇总文件err_log.c,并打开err_log.c
    2. 按k或者j键(或者箭头键),选中错误行。按gF组合键跳转至出现错误的源码。
    3. 按F10键重新打开err_log.c
    4. 对警告信息的操作同理。
  • 相关阅读:
    抽象工厂模式
    两个页面之间的另一种传值
    回头看看数据集合
    (kinetis K60)kinetis初体验之GPIO寄存器
    (kinetis K60)UART寄存器 串口收发数据
    (Kinetis K60) LPTMR 延时
    (Kinetis K60)WDOG看门狗测试
    (Kinetis K60) AD采集
    (Kinetis K60) PIT定时中断
    (Kinetis K60) FTM输出PWM
  • 原文地址:https://www.cnblogs.com/liujiangyi/p/10259806.html
Copyright © 2011-2022 走看看