-->

Emacs Wiki

Emacs Wiki とは, Emacs で手軽に Wiki るためのツールです. WikiMarkup に対応して, プレーンテキストから簡単にHTMLページ群をパブリッシュできま す.

キーボード操作

C-c C-l		  フォントロックの ON/OFF
C-c C-S-d		  リンクの削除
C-c C-r		  リンクの名前変更
C-c C-v		  プロジェクトの変更
C-c C-p		  HTML を生成
C-c C-s		  リンク検索
C-c C-b		  逆リンク検索
C-c C-f		  find-file
C-c C-a		  index へジャンプ
TAB		  後のリンクへ移動
S-TAB		  前のリンクへ移動

導入1

  1. Makefile.defsを適宜修正. 私はEMACSとELISPDIRを修正しました.
  2. make installでelcやinfoがインストールされます.
  3. .emacsにこれを追加
  4. デフォルトではWikiなテキストは~/Wikiに, パブリッシュ先は~/WebWikiに なっているので, ディレクトリを掘っておく. 変更するにはここを参照すること
  5. あとはWikiテキストを書きためてC-c C-pでOK.

設定

私はこんな設定をしています. 詳細は以下の通りです.

管理人: emacs-wiki-maintainer

普段使っているときにはメールアドレス(user-mail-address)が別のところを 指しているので, maintainerを設定.

スタイルシート: meacs-wiki-style-sheet

スタイルシートを指定できます. ここではウィキテクノロジー(仮)さんと同様, rubyStyle.cssを使っています. 残念ながらwww.ruby-lang.orgさんにはこの cssはなかったので, ウィキテクノロジー(仮)さんのページから戴いてみまし た.

文字コード: emacs-wiki-meta-content-coding

文字コードをiso-2022-jpにしておかないと, 意味不明な文字列が吐き出され るので注意.

フッタの日付: emacs-wiki-footer-date-format

更新日時の表示も兼ねて設定してみました.

Emacs-Wikiをはじめるためのキー設定

F4を押せばWikiが始められるようにglobal-set-keyしておく.

Footnoteモード

で, 使っていたらfootnote-modeを毎度立ちあげるのが面倒になったので若干 設定を追加:
(add-hook 'emacs-wiki-mode-hook 'footnote-mode)

プロジェクト

ここではdefaultとemacsを設定. それぞれテキストを格納するディレクトリ (emacs-wiki-directories)とパブリッシュ先 (emacs-wiki-publishing-directory)を個別に指定. 本当は2台あるコンピュー タでディレクトリ指定が違うので, その際を吸収させたいんだけど... いいア イデアがないかなぁ.

参考になるリンク先

EmacsWiki.elの抄訳

使い方を知るには最終的にはelispファイルを覗くのが一番! Ver. 2.40のヘッ ダ部分を抄訳します.

;; Wikiは概念です. プレーンテキストでマークアップやハイパーリンクのつ
;; いたページが作成できます.

;; 大文字と小文字を混合すること(MixedCase)により, 自動的に"MixedCase"
;; へのハイパーリンクが作成されます. 名前の上でリターンを押すと, ファ
;; イルが存在しない場合にはファイルを作成し, 存在する場合にはファイル
;; を開きます.

;; emacs-wikiで使われるマークアップはEmacsに慣れている人には親しみやす
;; いでしょう. C-h v emacs-wiki-publishing-markup で始め方が分かります.

;; * スタートアップ

;; emacs-wikiを始めるには, 次のように.emacsファイルに書きましょう:

;;   (load "emacs-wiki")

;; さて, M-x emacs-wiki-find-file でWikiNameを与えてタイプを始めましょ
;; う!

;; M-x customize-group の後"emacs-wiki"を入力して, カスタマイズするこ
;; とができます. オプションそれぞれにドキュメントがついています.

;; * 打鍵一覧

;; Wikiバッファで使うことのできるキーの一覧です:

;;   C-c C-a    Wikiページの目次に飛びます
;;   C-c C-b    このページが参照しているすべてのページを表示します
;;   C-c C-s    Wikiページから語句を探します
;;   C-c C-f    他のWikiページに飛びます. (プロンプトから名前を入力)
;;   C-c C-l    現在のバッファをハイライト/リフレッシュします
;;   C-c C-p    HTMLにしてパブリッシュします
;;   C-c C-r    その場所のwikiリンクを改名します
;;   C-c C-v    wikiプロジェクトを変更します
;;   C-c C-D    その場所のwikiリンクを削除します(現在X上でのみ作動)
;;   C-c =      最新のバックアップ版との差分をとります
;;   TAB        次のWiki参照へ移動
;;   S-TAB      前のWiki参照へ移動

;; * pcompleteを使用する

;; pcompleteをloadしているのであれば, M-TABでWiki名を補完できます. 連
;; 続して2回以上タイプすると, 候補を次々に表示します. pcompleteは私の
;; Websiteからダウンロードできます:
;;   http://www.gci-net.com/~johnw/emacs.html

;; * ChangeLogサポート

;; Wikiディレクトリ内でChangeLog(C-x 4 a)を使うと, 最近の変更履歴を訪
;; 問者に知らせることができます.

;; * タイトルやスタイルシートの変更

;; HTMLパブリッシュの際にタイトルやスタイルシートを変更したい場合は,
;; 以下のような文をページの先頭に置きましょう:

;; #title Hello there
;; #style hello.css

;; * <lisp>の埋め込み

;; <lisp></lisp>タグを使うことで, ある場所に評価値を埋め込むだけではな
;; く, パブリッシュ時に何かをさせることもできます. 以下ではページのス
;; タイルシートの変更方法を示します:

;; <lisp>
;; (ignore
;;   ;; use special.css for this Wiki page
;;   (set (make-variable-buffer-local 'emacs-wiki-style-sheet)
;;        "<link rel=\"stylesheet\" type=\"text/css\" href=\"special.css\">"))
;; </lisp>

;; <lisp>タグの評価で何も挿入しないよう, `ignore'が必要となります. ま
;; た, タグの前後に空行を入れてはいけません. このブロックを入れるのは
;; ページの先頭か末尾がよいでしょう.

;; * サブリスト

;; サブリストを実現する簡便な方法はありません. しかし, 次のようなトリッ
;; クがあります:

;; - Hello
;;   <ul>
;;   <li>There
;;   <li>My friend
;;   </ul>


[1] 2005-10-14 patch-142に基いています.