emacs插件flymake快速检查语法错误(C/C++,python,java,perl等语言)

先看段我演示:



怎么样? 是不是有IDE的感觉? 进入配置过程.其实配置不复杂.

首先需要Makefile的支持(这里只拿C/C++作例子).

在Makefile中添加下面两行:


check-syntax: gcc -o nul -S ${CHK_SOURCES}


gcc可以相应改成g++
然后 进入要编写的代码启用flymake-mode即可

flymake目前支持一下语言:

LanguageCompilerOS
C/C++Microsoft Visual C++ 6.0Windows 2000
C/C++gcc 2.9Windows 2000/XP/Linux
MS IDLmidl 5.01Windows 2000
JavaIBM Jikes 1.17Windows 2000
LatexMikTeX 2.2Windows 2000
HTMLHTML TidyWindows 2000/XP
XMLXMLStarlet Command Line XML Toolkit 0.7.0Windows 2000/XP
PerlPerl 5.8Windows 2000/XP

当然这里有一些有用的函数(ahei编写),可以把错误显示在minibuffer上:

;Code by ahei(defun flymake-display-current-error () "Display errors/warnings under cursor." (interactive) (let ((ovs (overlays-in (point) (1+ (point))))) (catch 'found (dolist (ov ovs) (when (flymake-overlay-p ov) (message (overlay-get ov 'help-echo)) (throw 'found t)))))) (defun flymake-goto-next-error-disp () "Go to next error in err ring, then display error/warning." (interactive) (flymake-goto-next-error) (flymake-display-current-error)) (defun flymake-goto-prev-error-disp () "Go to previous error in err ring, then display error/warning." (interactive) (flymake-goto-prev-error) (flymake-display-current-error))

flymake-display-current-error是显示当前的光标所在错误!

flymake-goto-next-error-disp显示下一个错误!

flymake-goto-prev-error-disp显示上一个错误!


是不是很给力?

当然这里有个性能问题,因为flymake是调用gcc的 大工程的话 会相对比较慢. 看你选择了!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值