Hatena::ブログ(Diary)

わからん

2010.10.08

[] byte-compile の確認を簡単に行う関数を書いたけどいまいちだった

;;これは問題なし
(defun byte-compile-this-file ()
  (interactive)
  (byte-compile-file (buffer-file-name)))
;; (defalias 'b 'byte-compile-this-file)

;; これでは網羅できない
(defun unload-this-file-feature ()
  (interactive)
  (unload-feature
   (intern
     (file-name-sans-extension
       (file-name-nondirectory (buffer-file-name))))))
;; (defalias 'u 'unload-this-file-feature)

(defun byte-compile-check ()
  (interactive)
  (unload-this-file-feature)
  (byte-compile-this-file))
;(defalias 'bc 'byte-compile-check)

駄目な点は、(provide があり) provide しているのが前提となるところ。provideすることでfeaturesに入るので。provide を付けて開発を進めていれば使える、とはいえるが苦しいかんじ。もっとも、(intern "hoge") で hoge という名前のシンボルが得られるといったアドバイスがいただけたり、収穫はあった。

はてなユーザーのみコメントできます。はてなへログインもしくは新規登録をおこなってください。

Google