Emacs Mediawiki
関連記事
Emacs Mediawiki Mode は wikipedia.org の mediawiki mode を改良した emacs のメジャーモードです。mediawiki を使っている wiki サイトの wiki 記事を emacs エディタで直接編集する手助けをします。
インストール
AUR にパッケージが存在します:emacs-mediawiki-bzrAUR[リンク切れ: アーカイブ: aur-mirror]。
https://launchpad.net/mediawiki-el からソースを直接ダウンロードすることもできます。
設定
AUR からパッケージをインストールしたら、emacs の設定ファイル (通常 ~/.emacs
) を開いて以下の行を追加してください:
(require 'mediawiki)
それから設定ファイルに mediawiki サイトを追加します。例えば、ArchWiki を追加する場合:
(setq mediawiki-site-alist (append '(("ArchWiki" "https://wiki.archlinux.org/" "username" "password" "Main page")) mediawiki-site-alist))
Archwiki はサイトの名前に、https:/wiki.archlinux.org/ はサイトの URL に、username と password はサイトのユーザー名とパスワードに置き換えてください。Main Page はサイトに接続したときに開くデフォルトページです。
設定リストを mediawiki-site-alist リスト変数に追加することで他のサイトも追加できます。
使用方法
設定後、emacs を使って直接 wiki ページを編集できます。emacs を開いて以下を実行するとサイトに接続します:
M-x mediawiki-site RET {site name} RET
接続したら、デフォルトページが開かれます。他のページを編集したいときは、以下を実行して開いて下さい:
M-x mediawiki-open RET {page title} RET
キーバインディング:
- C-x C-s – ページを保存
- C-c C-c – ページを保存してバッファを埋める
- C-return – ポイントのページを開いて編集
- TAB – 次の wiki リンクを開く
- M-n – ページリングの次のページ
- M-p – ページリングの前のページ
- M-g – 現在のページをリロード
emacs での wiki ページの編集を楽しんで下さい。
Tips and tricks
MediaWiki は設定をカスタマイズするためのフックを用意しています。例えば、C-return
が使えないときは、簡単に再定義できます:
(setq mediawiki-mode-hook (lambda () (define-key mediawiki-mode-map (kbd "C-c RET") 'mediawiki-open-page-at-point) ))
自動改行のオフ
Wiki はパラグラフを自動改行しません。改行してしまうと、履歴差分がおかしくなり、使い物にならなくなってしまいます。自動改行機能は完全にオフにするのが良いでしょう。以下の行をフックに追加してください:
(setq mediawiki-mode-hook (lambda () ;; ... (turn-off-auto-fill) ))
ブラウザの指定
Mediawiki の便利な機能として mediawiki-browse
関数があり、ウェブブラウザで作成されたページを確認することができます。ブラウザは browse-url プラグインに従って選ばれます。ブラウザは自分で設定することができます。例えば環境変数を使う場合:
(setq browse-url-generic-program (executable-find (getenv "BROWSER")) browse-url-browser-function 'browse-url-generic)
dwb ブラウザを指定する場合:
(setq browse-url-generic-program (executable-find "dwb") browse-url-browser-function 'browse-url-generic)