http://rubikitch.com/に移転しました このページをアンテナに追加 RSSフィード

2011-11-20

[]【特典付】『Emacs Lispテクニックバイブル』発売します

お久しぶりです。

この度、新著の
『Emacs Lispテクニックバイブル 〜真髄を知るLispの掟〜』
を執筆しました。

この本は、すでにEmacsを使っている人が、
Emacsを手足の如く扱うことを目的にしています。

前著『Emacsテクニックバイブル 〜作業効率をカイゼンする200の技〜』は
あらゆるEmacs Lispプログラムを活用して、快適な環境を構築するための
カタログ的な本でした。

紹介された様々なEmacs Lispプログラムによって、
あなたのEmacsは劇的な進化を遂げたことでしょう。

それでも、人間の欲というものは限りないものです。

「このEmacs Lispプログラムのココが気に食わない」
「このようなEmacs Lispプログラム欲しいけどないなー」
「世界でただ一つ、俺だけのEmacsを作りたいぜ」

みたいな欲が出てくるんですね。

もし、その感情が湧いたことが一度でもあるのならば、
本書は絶対に買わないといけないと断言できます。

そもそもEmacs上での課題を解決するには、
2通りの解決法しかありません。


			

こう書くと、探す方が圧倒的に楽であるかのように
思えてきますが、そう簡単な問題ではありません。

そこに立ち塞がる最大の壁が
「英語」
です。

我々日本人の多くは、英語速読することができません。

Emacs Lispプログラムを探すにしても、
大量の英語の海に入らないといけないのです。

さらに、他人のプログラムというのは、
使い方を学ぶこともバカにならないコストです。

マニュアルはもちろん英語です。

丁寧に解説してあれば、なおさら長文の英語を読まないといけません。

そして、コマンドの使い方を覚える場合も、
あらゆる場面でテストをしないと、
予想外の挙動に悩まされることになります。

そのため、小さな問題は自分Emacs Lispを書いた方が早いのです。

たとえば、F12キーを押すと特定のファイルが
開かれるようにしたいのですが、
ファイルが複数個にわたる場合は、
続けてF12を押して切り換えたい場合を考えます。

ファイルは、以下の3つとします。


			
  • ~/memo.org
  • ~/project.org
  • ~/gtd.org
これらのファイルは特に重要なので、 ワンタッチで開けるようにしたい という目的を想定します。 この程度のプログラムならば、 わずか10行(設定込)で済みます。 (defvar file-ring nil) (defun make-file-ring (files) (setq file-ring (copy-sequence files)) (setf (cdr (last file-ring)) file-ring)) (defun open-file-ring () (interactive) (find-file (car file-ring)) (setq file-ring (cdr file-ring))) そして、以下のように設定すれば今すぐ使えます。 (make-file-ring '("~/memo.org" "~/project.org" "~/gtd.org")) (global-set-key [f12] 'open-file-ring) お好みのファイルに置き換えて試してみてください。 これくらいのプログラムならば、10分あれば書けます。 もし、これと同じ挙動をするEmacs LispプログラムEmacsWikiにあるとしたら、それを探すのに何分かかりますか? 膨大な英語を掻き分けて、 いろいろな検索ワードを使って 調べないといけません。 当然、そのプログラムがある保証はありません。 存在しなかった場合は、その時間は無駄になってしまいます。 このように、自分で書けば解決する 問題というのは案外多いものです。 そのためには、Emacs Lispの知識が不可欠になります。 Emacs Lisp世界は広大なため、 どこから手をつければいいか わからない人が多いと思います。 Emacs Lispマニュアルは膨大な情報が含まれていますし、 幸いなことに日本語訳も存在します。 しかし、情報が古い上に、普段使わない事柄も 多く載っているため、すべてを理解するのは とてつもなく時間と労力がかかり、困難です。 マニュアルというのは、性質上全ての 事柄について説明してあります。 それに対して、本質的に必要となる知識は 20:80の法則が表すように2割程度に過ぎません。 めったに使わない知識については、 必要なときに調べれば済むことです。 マニュアルから学ぶということは、 かなり時間のロスになってしまいます。 あなたは、 Emacs Lisp学者になりたいわけではありませんよね? 自分が抱えている問題を解決したいのですよね? そこで、本書では重要な事柄を330ページに凝縮し、 以下のステップEmacs Lispを教えていきます。 1) プログラミング言語elispの基礎を知る 2) バッファとウィンドウによる表現方法を学ぶ 3) 関数を少しずつ覚えていく 4) オンラインヘルプの使い方を学ぶ 5) 応用的な知識をつける 6) Common Lispマクロを使ってエレガントに表現する 7) テストデバッグ方法を知る 8) 実際にelispで書いてみる 日常の作業を便利にする小さなコマンドくらいは、 2段階目が終わった段階で書けるようになります。 5、6段階目に入ったところで、本当の Lispの楽しさを知ることになります。 どうせ学ぶなら、楽しい方がいいに決まっています。 なので、Lispを毛嫌いしている人も、 挫折した人も、もう一度Emacs Lispの ひいてはEmacsの楽しさを再発見して いただきたいです。 本書は僕の近著とは異なり、オーソドックスに 基礎から順番に解説していくスタイルです。 最初はとても易しく、徐々に高度な内容に 入っていく形をとっています。 ただ、これだけだと前に学んだ内容を 忘れてしまう問題があります。 そのため、各章末には「まとめ」を設け、 手軽に復習できるようにしています。 それでも学習していくうちに、 「こういう時には何を使うんだっけ?」 という疑問がわいてくるものです。 そこで、「逆引き目次」というのを作成しました。 たとえば、 「代入するには『setq』を使う p48[2-2-3]」 「コマンド定義するには関数定義の最初に『interactive』を置く 78[2-10-1]」 といった具合で答えが書いてあるページ数と項番号を書いています。 よって本書は、オーソドックス+逆引きの ハイブリッドスタイルとなっています。 頭から読んで基礎から応用までをマスターし、 その後で疑問に思ったときに辞書的に 活用できるようにしています。 本書には、以下の内容が含まれています。

本書は、初歩からEmacs Lispを活用できる
レベルまで一気に引き上げる内容です。

全体像をはっきり描き、基礎から最新技術まで
無理なく身に付けられるようになっています。

さらに「逆引き目次」により、
本書に書いてある事柄ならば
あらゆる質問の答えが書いてあります。

これで、あなたはEmacs Lispをマスターし、
Emacsを手足の如く操り、楽しいEmacsライフを
過ごすことから逃れられません。

これ読まずして、どうやってEmacs Lisp覚えるの?

これを読まないと、Emacsマスターにはなれません。

『Emacsマスターの道へ歩む』→Amazonで買う 楽天で買う ビーケーワンで買う

プレゼント

さらに、お買上の人には秘蔵の
音声ファイルをプレゼントします。

Vim界のanything.elといわれているunite.vimで
有名なShougoさんとの対談です。

タイトルは

「EmacsとVim〜二人の異端児による次世代エディタ裏話〜」

です。

EmacsとVim、世界は違えどやりたい放題で
お互い思い切り創造的破壊かましています。

この対談はディープでコアでかなりアブないです。

Emacs Lispを書く人はもちろん、
Vimスクリプトを書く人も必聴です。

プレゼントはすぐに締め切るので申請はお早めに。

秘蔵対談ファイルをゲット!

次回は、もう一つのプロジェクトを発表します。

お楽しみに!

kitokitokikitokitoki 2011/12/24 11:40 初版 p184 「gemsym は展開式の「外側」で使います。、」の「、」が誤植です。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証