$shibayu36->blog;読者になる$shibayu36->blog;株式会社アンドパッドでエンジニアをしています。プログラミングや読書のことなどについて書いています。$shibayu36->blog;の挙動確認をしていて、どうやってデバッグしたらいいかよく分からなかった。バグ修正する時はおかしい挙動が再現する最小構成をまず作ることから始めると思うので、Emacsだとどうやればいいか調べてみた。最小構成のinit.elを作成するまずは操作に支障がないくらいのinit.elを作成してみた。minimum-init.elとして作成した。https://github.com/shibayu36/emacs/blob/master/emacs.d/minimum-init.el基本的には以下の様な設定を入れた。load-pathくらいは通すpackageとel-getに入っているものをすぐにrequire出来る状態にはしておく操作に支障がない程度にキー設定や文字コード設定などを行う最小バグを再現するファイルを作るためにopen-junk-fileくらいは入れておく最小構成のelispだけ読んでemacsを起動するemacsの起動コマンドには、デフォルトのinit.elを読み込まないオプション(-Q)と、特定のelispファイルを読み込むオプション(-l)がある。これを使うことでminimum-init.elだけ読むことができる。emacsを使ってるならこういう感じ。~/.emacs.d/minimum-init.elバグを再現できる最小のelispを作成するここからはopen-junk-fileで作ったファイルに、バグを再現するための最小のelispを作成する。open-junk-file~/junk/2014-01-16-011134.elそれでこのファイルに再現コードを書いていく。前のgemのpathの話だと試行錯誤の結果、以下の様な最小の再現コードが出来た。eval-bufferすると、elispをloadできる。いうので試しながら再現するコードを作ってく。これで問題を絞り込めるので、あとは直すだけ。まとめ今回は最小構成のinit.elを作る最小構成のelispだけ読んでemacsを起動するバグを再現できる最小のelispを作成するという手順で、問題を絞ってくというのを書いてみた。いうの自分でelisp書くときも他の拡張と問題を切り分けて確認したり出来て便利です。2リンクプライバシーポリシーはてなブログをはじめよう!shiba_yu36さんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。