普段使いでEmacsを使っているのですがシンタックスチェックにFlymake(Flychek)を導入しています。
この機能をMakefileなしで使いたく次のような設定をしたのですが
Symbol's value as variable is void: flymake-allowed-file-name-masks
と出てしまいます。どのように設定を変更したらよいのでしょうか?
elisp
1;; Makefile が無くてもC/C++のチェック 2(defun flymake-simple-generic-init (cmd &optional opts) 3 (let* ((temp-file (flymake-init-create-temp-buffer-copy 4 'flymake-create-temp-inplace)) 5 (local-file (file-relative-name 6 temp-file 7 (file-name-directory buffer-file-name)))) 8 (list cmd (append opts (list local-file))))) 9 10(defun flymake-simple-make-or-generic-init (cmd &optional opts) 11 (if (file-exists-p "Makefile") 12 (flymake-simple-make-init) 13 (flymake-simple-generic-init cmd opts))) 14 15(defun flymake-cc-init () 16 (let* ((temp-file (flymake-init-create-temp-buffer-copy 17 'flymake-create-temp-inplace)) 18 (local-file (file-relative-name 19 temp-file 20 (file-name-directory buffer-file-name)))) 21 (list "g++" (list "-Wall" "-Wextra" "-fsyntax-only" local-file)))) 22 23(defun flymake-cc-init () 24 (let* ((temp-file (flymake-init-create-temp-buffer-copy 25 'flymake-create-temp-inplace)) 26 (local-file (file-relative-name 27 temp-file 28 (file-name-directory buffer-file-name)))) 29 (list "g++" (list "-std=c++11" "-Wall" "-Wextra" "-fsyntax-only" local-file)))) 30 31(push '("\.[cC]\'" flymake-c-init) flymake-allowed-file-name-masks) 32(push '("\.\(cc\|cpp\|C\|CPP\|hpp\)\'" flymake-cc-init) 33 flymake-allowed-file-name-masks) 34 35

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。