今日も知らない街を歩くスマートフォン用の表示で見る今日も知らない街を歩く雑記に近い形でちまちま書いていきます。ITようやく「emacs実践入門」読了しました。見る文中の設定を写経しながら読みました。Macを買ったばかりで、Macの操作やコマンドなどに不慣れな事もあって、読了までかなり時間がかかりました。写経した甲斐がありましたし、単にEmacsの使い方を学ぶ以上の事を得る事ができたと感じています。本書の目次は以下の通り。第7章.開発をさらに効率化する拡張機能Appendix.最新情報を入手するには第2章と第3章はいわゆる導入部。インストールや有名なキーバインドは、Emacsのチュートリアルやネット上にある情報でも補完は効くでしょう。タイトルに「実践」と銘打つだけあって、うまく使うためのTipsが散りばめられています。素晴らしいと思ったのは、3章冒頭の「困った時はC-gでキャンセル」。地味ですがとても助かりました。C-g自体はググれば出てくる有名なキーバインドですが、そもそも初心者はそういう操作があるという発想も無いままチュートリアルなどを進め、キーバインドをミスしてパニクるので(経験談)、これを冒頭に持ってくるという気遣いは素晴らしいです。ある程度操作を覚え、さてEmacsをどうやって使いこなせばいいのか、という段階まで来たところで第4章以降から設定や拡張機能の解説が本格的に始まります。設定を書くinit.elはどこに置くべきか、各プログラミング言語ごとの拡張機能の紹介、著者のオススメの設定など、これを一通り設定すれば開発作業を行う上で不自由の無いEmacsの環境ができるんじゃないかと思えます。本書のサポートページに紹介された機能も含めた設定ファイルがあるので、これをダウンロードして取り込んでもいいでしょう。*1エラーが出ると素人は固まりパニクるただ、全くの初心者が本書に従って設定をすればうまく行くのか、と言えばそんなことは無いと思います。設定がうまく行くときは問題ありません。問題があるのは、設定がうまく行かなかったときです。何も知らない素人は、エラーが発生した時どうやって切り分ければいいのかわからないからです。単純なタイプミスであれば自力でエラーの原因にたどり着けるかもしれませんが、S式を実行してエラーが発生し、いきなりデバッグバッファが出てきたらおそらくどうしていいか分からなくなります*2。デバッグモードの解説は第3章にある事はあるのですが、デバッグモードの抜け方やエラーメッセージでググるなど「エラーが起こった場合の具体的な対処法」はもう少し丁寧に書いて欲しかったです。第5章以降の設定を追加する段になると、タイプミス以外の原因も増えてくる可能性が高いため、どうして動かないのか頭を抱える人は少なくないでしょう。「動かない時にどうすればいいか」は、Emacsに限らず何かを使いこなしていく上で必要になるスキルですが、それだけに「実践」というタイトルであれば詳しい記載が欲しい、と感じました。*3無限の可能性のあるツール実のところ、本書を買おうと思ったきっかけは、著者の大竹さんが、僕がいつも利用しているオンライン英会話「ラングリッチ」の人*4だと知り興味を持った、という理由です。積極的にEmacsを使いたかったから、という訳ではありません。本書を買ったときは、Vimのチュートリアルをやってたくらいです。本書を読んでいくうちに僕はEmacsを使いたくなってきていました。前述したように「エラーの対処法はもっと丁寧に書いて欲しい」など、本書に対して不満が無い訳ではありません。その事が本書が良書である事を示していると僕は考えています。いった不満が出るくらい、僕は何とかしてEmacsを使いたい!と思っているからです。本書がただEmacsを解説するだけの本だったら、僕は最後まで読まずに途中で挫折しただろうし、こうやって書評を書く事は無かったでしょう。本書は余すところなくEmacsの魅力を伝えています*5。ちなみにこの書評は、途中までEmacsで書いてました。「途中まで」というのは、はてなの下書き保存で書いた方が早いからです。EmacsのC-uの繰り返し機能や各種カーソル移動はとても便利なのですが、google日本語入力が使えないため文章を書くスピードは今のところは劣ります。「今のところは」です。ググったところ、Emacsでgoogle日本語入力を使うための設定があるそうです*6。不便な箇所があってもそれを改善するためのツールが揃っている、というのはとても魅力的に見えます。これはEmacsに限った話ではないでしょうが、この事をもっともよく実感できるのはEmacsです。今まで特に深く考えずにEclipseなどのIDEを使っていましたが、もう少し自分が使っているツールや道具に対して不満な点は無いか、それを改善する事はできないのか、という事は改めて考え直さないとなあと思いました*7。「1970年代に開発が始まったEmacsは、たしかに設計は古く、ところどころにダサい点も見受けられますが、それでもなお、無限の可能性があります。本書を読んだことで、(図らずしも)コンピューターの話に限らず、これまで自分が使っていたあらゆる「道具」を見直すきっかけになりました。本書はプログラマーなどIT関係の職に就いている方に特に薦めたい本です。Emacsを理解して使うのにとても効果的な本ですし、仮に結果としてEmacsを使わないという結論が出たとしても、自分の使っているテキストエディタやIDEなど、何気なく使っているツールなどを見直すきっかけになると考えているからです。余談ですが、ラングリッチ東京オフィスが設立されるに伴って著者の大竹さんも東京に越されたそうです。いうわけで、Emacs勉強会が開催されるのを心待ちにしながらちまちまEmacsをいじることにします。※反応が知りたいので、はてブやRTなどで感想をいただけるとありがたいです。*1:ただ、Emacs初心者の方はやはり写経しながら覚えていった方が良いでしょう。事前に拡張機能をインストールしなければならない、というのもありますが、一つ一つの命令の意味を覚えるためにも。*2:賢明な方ならお気づきだと思いますが、ここの「何も知らない素人」は私自身のことを指しています。*3:ちなみに、どうしてもわからなくて、著者の大竹さんにtwitterで質問したのですが、回答をいただきとても助かりました。いずれも凡ミスだったのは情けない話ですが......。*5:その意味で、本書のコアな部分は、まつもとゆきひろさんの「本書に寄せて」と、著者の「はじめに」だと思います。*6:こういう時、自分でElispを書く事ができたらいいのですが......。Emacsを使いこなすまでの道は遠いです。*7:もちろんEclipseはとても便利なので、使うのを止める気は全くありません。料理テーブルゲームはてなブログをはじめよう!TownBeginnerさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。