書籍概要

Emacsテクニックバイブル
~作業効率をカイゼンする200の技~

著者
発売日
更新日

概要

普段Emacsを使っている人を対象に,「もう少し文字入力を楽にしたい」「もう少しバッファ操作を強化したい」といった要望をEmacs Lispの活用やちょっとしたテクニックで改善する「作業効率に特化した逆引きリファレンス」です。Emacs Lispを自分でバリバリ書くというわけではなく,用意したものを設定するだけで簡単に利用できます。また,最終章で最近話題のanything.elでどう実現するかも解説します。最新のEmacs23準拠。

こんな方におすすめ

  • Emacsをもっと便利に,快適に使いたい人

目次

  • 本書を読む前に

Chapter01 設定に必要な最低限のEmacs Lispの知識

  • 本章に入る前の基礎知識
  • 1.1 コマンド ~Emacsに命令する
  • 1.2 S式 ~Emacs Lispの構成要素を知る
  • 1.3 評価 ~Emacs Lispプログラムを実行する
  • 1.4 関数 ~前置記法を知る
  • 1.5 M-x ielm ~Lisp 式(S式)を対話的に評価する
  • 1.6 .emacs ~Emacs起動時に自動で読み込むファイルを作成する
  • 1.7 require ~Emacs Lispファイルをロードする
  • 1.8 M-x byte-compile-file ~Emacs Lispファイルをバイトコンパイルする
  • 1.9 auto-async-byte-compile.el ~自動バイトコンパイルをする
  • 1.10 M-x list-load-path-shadows ~load-path優先度問題を解決する
  • 1.11 M-; ~コメントを処理する
  • 1.12 setq ~変数に値を設定する
  • 1.13 defun ~関数を定義する
  • 1.14 add-hook ~特定のタイミングで呼び出される関数を登録する
  • 1.15 C-x C-e ~テキストに埋め込まれたEmacs Lisp式を評価する

Chapter02 初期装備に必要な知識

  • 本章に入る前の基礎知識
  • 2.1 ddskk ~日本語入力を行う
  • 2.2 auto-install.el ~Emacs Lispインストーラを利用する
  • 2.3 ELPA ~パッケージを簡単にインストールする
  • 2.4 sticky.el ~大文字入力を楽にする
  • 2.5  ~Emacsに問い合わせする
  • 2.6 日本語 info ~日本語マニュアルを導入する
  • 2.7 info ~infoドキュメントを読む

Chapter03 キーバインドについて

  • 本章に入る前の基礎知識
  • 3.1 キーマップ~押されたキーに対してコマンドを探索する
  • 3.2 Ctrl+1文字 ~最重要コマンドを覚える
  • 3.3 Meta+英小文字 ~重要コマンドを覚える
  • 3.4 プレフィクスキー ~2ストローク以上のコマンドを覚える
  • 3.5 define-key ~キーマップを変更する
  • 3.6 define-key ~Ctrl+1文字に割り当てられるキーを探す
  • 3.7 define-key ~その他に割り当てられるキーを探す
  • 3.8 sequential-command.el ~同じコマンドを連続実行したときの振舞いを変更する
  • 3.9 key-chord.el ~キーボード同時押しでコマンドを実行する
  • 3.10 minor-mode-hack.el ~マイナーモード衝突問題を解決する

Chapter04 バッファ/ファイルを扱う

  • 本章に入る前の基礎知識
  • 4.1 ffap.el ~現在位置のファイル・URLを開く
  • 4.2 uniquify.el ~ファイル名がかぶった場合にバッファ名をわかりやすくする
  • 4.3 iswitchb.el ~バッファ切り替えを強化する
  • 4.4 recentf.el ~最近使ったファイルを開く
  • 4.5 bookmark.el ~ファイル内の特定の位置をブックマークする
  • 4.6 emacsclient ~シェルから現在のEmacsにアクセスする
  • 4.7 tempbuf.el ~使わないバッファを自動的に消す
  • 4.8 auto-save-buffers.el ~ファイルを自動保存する
  • 4.9 C-x v v ~バージョン管理システムに登録する
  • 4.10 C-x v =,C-x v u ~バージョン管理システムで変更点を調べる・取り消す
  • 4.11 C-x v l ~バージョン管理システムで変更履歴を見る
  • 4.12 C-x C-f,C-x d ~ファイルリストからファイルを操作する
  • 4.13 wdired.el ~ディレクトリ内のファイル名を自由自在に編集する
  • 4.14 tramp.el ~リモートマシンのファイルに透過的にアクセスする
  • 4.15 sudoedit ~root権限でファイルを編集する

Chapter05 カーソル移動

  • 本章に入る前の基礎知識
  • 5.1 文字・単語・行・文単位の移動 ~矢印キーを使わずにカーソルを移動する
  • 5.2 M-x transient-mark-mode ~リージョンに色をつける
  • 5.3 screen-lines.el ~見かけの行でカーソルを移動する
  • 5.4 C-s,C-r ~インクリメンタルサーチで対象文字列の位置にカーソル移動する
  • 5.5 migemo.el ~ローマ字のまま日本語をインクリメンタルサーチする
  • 5.6 point-undo.el ~カーソル位置を戻す
  • 5.7 bm.el ~カーソル位置に目に見える印をつける
  • 5.8 goto-chg.el ~最後の変更箇所にジャンプする

Chapter06 入力支援

  • 本章に入る前の基礎知識
  • 6.1 autoinsert.el ~ファイル作成時にテンプレートを挿入する
  • 6.2 redo.el ~「やり直し」をカイゼンする
  • 6.3 sense-region.el ~矩形を選択しやすくする
  • 6.4 M-/  ~バッファから単語を補完する(動的略語展開)
  • 6.5 yasnippet.el ~略語から定型文を入力する
  • 6.6 yasnippet.el ~スニペットを定義する
  • 6.7 yasnippet.el ~スニペットを展開するコマンドを定義する
  • 6.8 yasnippet.el ~新規作成ファイルに自動でスニペットを展開する
  • 6.9 yasnippet.el ~スニペットをその場で定義して使う
  • 6.10 M-x hippie-expand ~略語展開・補完を行うコマンドをまとめる
  • 6.11  ~キーボードマクロで操作を自動化する
  • 6.12 M-x kmacro-save ~キーボードマクロをコマンド化する
  • 6.13 再帰編集 ~コマンド実行中に新たなコマンドを実行する
  • 6.14 auto-complete.el ~IDEのような入力支援をする

Chapter07 検索/置換

  • 本章に入る前の基礎知識
  • 7.1 M-x re-builder ~正規表現を対話的に作成する
  • 7.2 M-x occur ~バッファ内で正規表現にマッチする行を出力する
  • 7.3 M-s o (isearch-occur) ~インクリメンタルサーチからマッチ行一覧を作成する
  • 7.4 M-% ~文字列を置換する
  • 7.5 C-M-% ~正規表現置換をする
  • 7.6 color-moccur.el ~バッファ内(複数可)を検索する
  • 7.7 moccur-edit.el ~color-moccur.elの結果を編集する
  • 7.8 M-x grep ~grepプログラムの実行結果に飛ぶ
  • 7.9 igrep.el ~grepのコマンドラインを打たずにgrep検索する
  • 7.10 grep-a-lot.el ~複数の*grep*バッファを使う
  • 7.11 grep-edit.el ~grep検索結果を編集する

Chapter08 Emacsをもっと便利に

  • 本章に入る前の基礎知識
  • 8.1 col-highlight.el ~現在桁をハイライトする
  • 8.2 M-x highlight-regexp ~正規表現にマッチした部分を自動ハイライトする
  • 8.3 M-x follow-mode ~ワイドディスプレイを有効活用する
  • 8.4 w3m.el (emacs-w3m) ~Webブラウザとして利用する
  • 8.5 twittering-mode.el ~twitterを利用する
  • 8.6 gist.el ~gist.github.comを利用する
  • 8.7 navi2ch.el ~2ちゃんねるブラウザを利用する
  • 8.8 rcirc.el ~シンプルなIRCクライアントを利用する
  • 8.9 yaoddmuse.el ~EmacsWikiを編集する
  • 8.10 yaoddmuse.el ~Emacs LispファイルをEmacsWikiにアップロードする
  • 8.11 EmacsWiki svn リポジトリ ~EmacsWikiのリポジトリを丸ごと取得する
  • 8.12 M-x customize-group ~GUIで変数・フェイスをカスタマイズする

Chapter09 外部プログラム

  • 本章に入る前の基礎知識
  • 9.1 M-x shell ~Emacsでシェルを動かす
  • 9.2 M-x dired-do-shell-command ~diredからシェルコマンドを実行する
  • 9.3 M-!,M-| ~シェルコマンドの実行結果を表示・貼り付けする
  • 9.4 multi-shell.el ~複数のshellバッファを利用する
  • 9.5 M-x compile ~Emacsの中でコンパイラを動かす
  • 9.6 M-x executable-interpret ~スクリプトを実行する
  • 9.7 M-x diff ~2つのファイルの相異点を出力する
  • 9.8 shell-history.el ~Emacs内のシェルコマンド実行履歴を保存する
  • 9.9 multi-term.el ~Emacsで端末エミュレータを利用する

Chapter10 テキスト整形/テキスト処理

  • 本章に入る前の基礎知識
  • 10.1 text-adjust.el ~日本語の文章を整形する
  • 10.2 M-x sort-lines ~行をソートする
  • 10.3 C-x r t,C-x r k,C-x r d ~引用マークを付けたり外したりする
  • 10.4 boxes ~コメントを目立たせる・装飾する
  • 10.5 M-x align ~桁揃えをする

Chapter11 view-modeを徹底活用

  • 本章に入る前の基礎知識
  • 11.1 C-x C-r ~view-modeでファイルを開く
  • 11.2 C-x C-q ~view-modeを有効・無効にする
  • 11.3 define-key ~view-modeのキー割り当てを変更する
  • 11.4 viewer.el ~書き込み不能なファイルでview-modeから抜けないようにする
  • 11.5 viewer.el ~view-modeのときにmode-lineに色をつける
  • 11.6 viewer.el ~メジャーモードに合わせてview-modeのキーバインドを設定する
  • 11.7 viewer.el ~特定のファイル・すべてのファイルをview-modeで開く

Chapter12 Emacs Lispプログラミング支援

  • 本章に入る前の基礎知識
  • 12.1 C-M-f,C-M-b,C-M-d,C-M-u,C-M-SPC,C-M-k,C-M-t ~S式・リストを編集する
  • 12.2 C-M-a,C-M-e,C-M-h ~関数間を移動・関数をマークする
  • 12.3 paredit.el ~括弧の対応を取りながらS式を編集する
  • 12.4 eldoc.el ~Emacs Lisp関数・変数のヘルプをエコーエリアに表示する
  • 12.5 C-x F,C-x K,C-x V ~関数定義へジャンプする
  • 12.6 usage-memo.el ~*Help*バッファにメモを書き込めるようにする
  • 12.7 M-x apropos ~正規表現にマッチする変数名・関数名・フェイスを探す
  • 12.8 M-x apropos-value ~値にマッチする変数名を検索する
  • 12.9 M-x apropos-documentation ~ドキュメントにマッチするシンボルを検索する
  • 12.10 M-x apropos-library ~ライブラリの定義内容を知る
  • 12.11 lispxmp.el ~Emacs Lisp式の値をコメントで注釈する
  • 12.12 edit-list.el ~リスト変数の内容を編集する
  • 12.13 el-expectations.el ~ユニットテストを書く
  • 12.14 batch-byte-compile ~コマンドラインからバイトコンパイルする

Chapter13 プログラミング/文書作成支援

  • 本章に入る前の基礎知識
  • 13.1 open-junk-file.el ~使い捨てのファイルを開く
  • 13.2 summarye.el ~バッファのサマリを表示する
  • 13.3 text-translator.el ~言語を自動判別して複数のWeb翻訳サービスを同時に使う
  • 13.4 html-fold.el ~HTML・XMLの要素を隠して見栄えをよくする
  • 13.5 M-x ediff-files ~2つのファイルの相異点をハイライトする・取り込む
  • 13.6 M-x ediff-merge-files ~2つのファイルをマージしたファイルを作成する
  • 13.7 hideif.el ~C言語のプリプロセッサを隠す
  • 13.8 hideshow.el ~ブロックを折畳む
  • 13.9 M-x imenu ~現在のファイルにある関数定義にジャンプする(言語非依存)
  • 13.10 M-x which-func-mode ~現在の関数名を常に表示する
  • 13.11 M-x flymake-mode ~リアルタイムにプログラミング言語の文法チェックをする
  • 13.12 ipa.el ~ファイルに直接書き込まずにメモをする
  • 13.13 multiverse.el ~ファイルのスナップショットを取る
  • 13.14 M-. ~タグファイルを使って関数定義へジャンプする(言語非依存)
  • 13.15 gtags.el ~GNU GLOBALでソースコード解析を楽にする
  • 13.16 fold-dwim.el ~複数の折畳み・展開コマンドに統一的なインターフェースを提供する

Chapter14 org-mode ~統合文書作成環境

  • 本章に入る前の基礎知識
  • 14.1 M-RET, ~見出し・項目を入力する
  • 14.2 M-x org-insert-heading-dwim ~1階層下・上の見出し・項目を入力する
  • 14.3  ~行・見出し・リストを移動する
  • 14.4 M-x org-remember ~瞬時にメモを取る
  • 14.5 「|」,TAB ~表を作成する
  • 14.6 C-c C-t, ~TODOリストを作成する
  • 14.7 C-c C-s,C-c C-d ~予定日時,締切日時を設定する
  • 14.8 C-c C-q,C-c C-c,C-c / T ~タグを作成・検索する
  • 14.9 C-c l,C-c C-l ~ハイパーリンクを作成する・辿る
  • 14.10 *bold* /italic/ _underline_ =code= +del+ ~文書を装飾する
  • 14.11 「:」,#+BEGIN_EXAMPLE~#+END_EXAMPLE ~そのまま出力する
  • 14.12 [/],[ ],C-c C-c ~チェックリストを作成する
  • 14.13 #+INCLUDE: ~別なファイルを取り込む
  • 14.14 C-c a ~予定表を見る
  • 14.15 C-c C-e ~HTMLに変換する

Chapter15 anything.el ~すべてを統べるものとその仲間たち

  • 本章に入る前の基礎知識
  • 15.1  m ~ヘルプで使い方を覚える
  • 15.2 C-p,C-n,RET,C-v,M-v ~オブジェクトを選択する
  • 15.3 RET,TAB,C-e,C-j ~アクションを実行する
  • 15.4 ,C-o ~複数の情報源を扱う
  • 15.5 M-x anything-for-files ~ファイルを開くコマンドをまとめる
  • 15.6 C-z(継続アクション) ~anythingバッファを閉じずにアクションを実行する
  • 15.7 M-x anything-resume ~直前のanythingセッションを復元する
  • 15.8 M-x anything-execute-anything-command ~設定済みanythingを試す
  • 15.9 M-x anything-call-source ~情報源を試す
  • 15.10 descbinds-anything.el ~キーバインドを調べる
  • 15.11 M-x anything-complete-shell-history ~シェルコマンドの履歴から補完
  • 15.12 M-x anything-apropos ~コマンド名・関数名・変数名・フェイス名検索をする
  • 15.13 M-x anything-show-kill-ring ~過去のkill-ringの内容を取り出す
  • 15.14 M-x anything-lisp-complete-symbol-partial-match ~Emacs Lispシンボルを補完する
  • 15.15 M-x anything-grep ~grep結果をさらに絞り込む
  • 15.16 anything-c-moccur.el ~インクリメンタルサーチとoccurを合体する
  • 15.17 C-c C-u ~候補を再計算する
  • 15.18 anything-other-buffer ~anythingコマンドを定義する
  • 15.19 変数 ~anythingをチューニングする

Chapter16 anything.elプログラミング

  • 本章に入る前の基礎知識
  • 16.1 type ~オブジェクトの型を宣言して情報源を作成する
  • 16.2 init ~情報源の初期化をする
  • 16.3 candidates-in-buffer ~バッファの行から情報源を作成する
  • 16.4 candidates-file ~ファイルの行から情報源を作成する
  • 16.5 grep-candidates ~ファイルの行から情報源を作成する(高速版)
  • 16.6 candidates,display-to-real,real-to-display ~候補の見た目を変更する
  • 16.7 candidate-transformer,filtered-candidate-transformer ~候補全体を加工する
  • 16.8 header-name ~ヘッダを変更する
  • 16.9 delayed,requires-pattern ~処理時間のかかる情報源を作成する
  • 16.10 volatile ~入力のたびにcandidates関数を実行する
  • 16.11 persistent-action ~継続アクションを指定する
  • 16.12 anything-candidate-number-limit,candidate-number-limit ~候補数を変更する
  • 16.13 dummy ~パターンをそのまま候補にする
  • 16.14 multiline ~複数行にわたる候補を使う
  • 16.15 type:line ~特定の行番号へジャンプする情報源を作成する
  • 16.16 headline ~正規表現にマッチする行を出力する情報源を作成する
  • 16.17 type:file-line ~特定のファイルの行番号へジャンプする情報源を作成する
  • 16.18 anything-marked-candidates ~マークされた候補を得る
  • 16.19 anything ~anythingの呼び出し方を細かく制御する
  • 16.20 anything-test-candidates ~情報源をテストする
  • 16.21 anything-debug-forms ~デバッグをする
  • 16.22 anything-attr,anything-attrset,anything-attr-defined ~属性の値を参照・設定する
  • 16.23 anything-compile-source-functions ~anythingプラグインを作成する

サポート

現在サポート情報はありません。

商品一覧