elispのflymakeでコメント内の括弧を無視

Emacs Lisp用にflymakeを設定したがそのままじゃうまい具合に動いてくれなかった。
参考
http://www.lunaport.net/mt/mt-tb.cgi/22
http://www.emacswiki.org/emacs/FlymakeElisp
原因を見てみると、コメントアウトしたつもりのコード

;; )

でエラーが出て止まっている様子。
なのでコメント内の括弧を無視するように修正した。

以下コード

#!/bin/bash
:;: '-*-emacs-lisp-*-'
:; exec emacs -Q --batch --load "$0" "$@"
(dolist (file command-line-args-left)
  (with-temp-buffer
    (insert-file-contents file)
    (emacs-lisp-mode)
    (let ((parse-sexp-ignore-comments t))
    (condition-case data
        (scan-sexps (point-min) (point-max))
      (scan-error (goto-char (nth 2 data))
                  (princ (format "%s:%s: error: Unmatched bracket or quote\n"
                                 file
                                 (line-number-at-pos))))))))

diffはこんな感じ

*** 4,12 ****
--- 4,15 ----
  (dolist (file command-line-args-left)
    (with-temp-buffer
      (insert-file-contents file)
+     (emacs-lisp-mode)
+     (let ((parse-sexp-ignore-comments t))
      (condition-case data
          (scan-sexps (point-min) (point-max))
        (scan-error (goto-char (nth 2 data))
                    (princ (format "%s:%s: error: Unmatched bracket or quote\n"
                                   file
                                   (line-number-at-pos)))))))
+   )