カスタマイズ済みxyzzyの使い方

ここでは前のページで上書き保存してもらったカスタマイズ済みxyzzyについて,どんな機能が使えるかを簡単に説明します.

基本的には眺めてもらえればよいですが,Aspelの項目ではインストール作業がありますので注意してください.

1. キーバインド

なるべくWindowsのキーバインド(キーボードショートカット)に近くなるよう,pavail.lを導入してあります.

pavail.l
Gates.lとwinkey.lのいいところをとった簡易マクロです. xyzzy で標準的に用いられるprefix keyであるCtrl + X (C-x), KaTeXなどのxyzzy Lispで用いられるprefixであるCtrl + C (C-c)をセレクション(マウスによる選択)時 のみに切り取り・コピーにそれぞれキーバインドし,それ以外は従来どおりprefix keyとして利用できる ようにしてあります.また,コピー・切り取り以外のWindows標準のキーバインドはそのままGates.lのよう に継承していますので,Windowsのエディタユーザーの方も安心です.

Windowsでよく使うコピーやペースト,すべて選択などのショートカットはほとんど使えますし,KaTeXコンパイルのキーバインド(C-c t j)など も共存できるように調整されています.

ただしxyzzy標準の(Emacsライクな)キーバインドは使用できなくなりますので注意してください.つまり\TeX講習会パック\早見表\xyzzy_key.pdfのxyzzyキーバインドに リストアップされている機能の一部は使えません.

もう少しEmacsっぽいキーバインドにしたい場合は「.xyzzy」を開いて該当部分を下記のように変更したのち,xyzzyを再起動してください.

;;Windowsのキーバインドを使用する
(load-library "winkey") ;;pavailをやめてwinkeyを有効にする.
;;(load-library "pavail")

デフォルトのxyzzyのキーバインドを使用したい場合は「.xyzzy」を開いて該当部分を下記のように変更したのち,xyzzyを再起動してください.

;;Windowsのキーバインドを使用する
;;(load-library "winkey") 
;;(load-library "pavail")

手動カスタマイズ

  1. pavail.lをダウンロードし,xyzzy/site-lisp/に保存します.
  2. ~/.xyzzy などの初期設定ファイルで,
    (load-library "pavail")
    と記入します.

  3. xyzzyを再起動します.


2. [表示(V)]―[ツールバー]

拡張機能による表示できるツールバーが増えています.[表示(V)]―[ツールバー]を選択していろいろ表示させると図のようになります.好みに応じて使ってください.


3. Outline-Tree

上の xyzzy の画像で,左側に \section や \subsection の構成をツリー構造で示した欄があることに気づいたと思います. そんなふうにTeXソースの論理構造をグラフィカルに示してくれる Outline-Tree2を入れてあります.

メニューバーより [Outline-Tree] → [outline-tree の起動] で outline-tree を起動します. Ctrl + Enter またはメニューバーより [Outline-Tree] → [アウトラインの作成/更新] で,左側にアウトラインツリーが表示され,現在開いているファイルの一覧が示されます. あとは,TeX ファイル名をクリックすれば,\section や \subsection の階層構造などが示され,それぞれの項目をクリックすることでファイルの該当する部分に飛びます.
詳細は,作者の Flash によるデモをご覧ください


手動カスタマイズ

Netinstallerを使って導入できます.ただし次の順番でインストールする必要があります.すべてNetInstallerでインストールできますので探して入れてください.

  1. TreeView.dll
  2. color
  3. win-window
  4. treeview
  5. buf2html
  6. outline-tree2


4. parentag

対応する括弧を見やすく強調表示する機能であるparentagを導入してあります.

Netinstallerを使って導入できます.


手動カスタマイズ

Netinstallerを使って導入できます.


5. template-insert

TeX のファイルを新たに開いたときに,自動的に雛形となるファイルが挿入されると非常に便利でしょう.template-insert はそれを実現するためのマクロです.

拡張子が tex のファイルを新しく開く( Ctrl + x Ctrl + f )と表示され,y を押すと挿入されます.デフォルトでは\xyzzy\template\フォルダの中にテンプレートとなるファイルを入れるようになっています. 現在はjsarticle_basic.texとknkgaiyou_template.texの2種類が入っています.詳細はそれらのファイルを参照してください.


手動カスタマイズ

Netinstallerを使って導入できます.


6. clickable-uri

URIをダブルクリックすると自動的にWebブラウザが起動するマクロclickable-uriを導入してあります.


手動カスタマイズ

Netinstallerを使って導入できます.


7. auto-time-stamp

auto-time-stampとは,自動的にバッファのタイムスタンプを更新してくれる拡張Lispです. タイムスタンプは,メニューのツール(T)→日付と時刻の挿入(M)のダイアログから入れる事ができますが, ファイルの日付を逐一ダイアログからするのは面倒です.これはその処理を自動でやってくれます.

デフォルトではファイルを保存するとき,ファイルの1行目から10行目以内に

Last Modified:
の記述がある場合に,その右に日付(例:2008/11/25 17:07:25)を自動で入力します.

変更したい場合は「.xyzzy」を開いて該当部分を変更したのち,xyzzyを再起動してください.

;;タイムスタンプを指定の箇所に自動で挿入
(require "auto-time-stamp")
;;マッチさせる行頭の文字列に変更
(setq ed::*time-stamp-start* "Last Modified:")
;;マッチさせる行末の文字列に変更(行末に何も無い場合には変更せずで)
(setq ed::*time-stamp-end* "$")
;;マッチをさせたい行数へ変更(3行目に日付があるなら3,40行目なら40)
(setq ed::*time-stamp-line-limit* 10)
;;入れる日付のフォーマット(詳しくは$XYZZY/lisp/timestmpに)
(setq ed::*time-stamp-format* "%Y/%m/%d %H:%M:%S")


手動カスタマイズ

Netinstallerを使って導入できます.


8. Aspel

AspellはIspellに機能を追加した新しいスペルチェッカです.TeXの命令を無視する機能もあります.
英語はもちろんのこと,ドイツ語・フランス語・ギリシア語・ロシア語などにも対応しています.

カスタム済みのxyzzyはこのAspelが使用できる環境だけは整えてありますので,実際のAspelと辞書をインストールすればすぐにスペルチェックができます.

Aspelのインストール

  1. 次のリンクをたどってAspell本体(Full installer)と,英語辞書(aspell-en-0.50-2-3.exe(数字は違う場合あり))の2つをダウンロードします.
    Aspellのダウンロード

  2. 本体をインストーラの指示通りにインストールします.基本的にはNextとInstallとFinishを押していくだけでインストールできるはずです.

以上でAspelを使用する準備は整いました.

Aspelの起動

スペルチェックしたいファイル上にカーソルを持ってくる,もしくはスペルチェックしたい領域をマウスで選択し,[M-a]を押します(Altキーを押しながらa).
すると図のような画面になり,スペルチェックモードになります.

Aspelの使い方

前に述べたように,バッファーの範囲を指定して aspell.l を起動するとその範囲のみがスペルチェックされ,また,範囲を指定しないとバッファー全体がスペルチェックされます. コマンドはミニバッファーから入力します. aspell.l には次のコマンドがあります.

Spaceキー: この単語は無視(Ignore)
現在チェックしている単語をスキップしてスペルチェックを継続します.
i: この単語はずっと無視(Ignore all)
現在チェックしている単語と同じスペルの単語を除外してスペルチェックを継続します.
r: 入力単語で置換(Replace)
現在の単語をミニバッファから入力した単語で置き換えます.
R: 入力単語で同じミスをすべて置換(Replace all)
現在の単語以降にある全ての同じスペルの単語をミニバッファから入力した単語で置き換えます.
a: 辞書に登録(Add)
辞書に登録します.
番号: 置換(Number(N))
N 番目の選択肢を用いて現在の単語以降にある同じスペルの単語全てを置換します.
/番号: これだけ置換(/Number(N))
"/N" と入力すると,N 番目の選択肢を用いて,現在チェックしている単語のみを置換します.
x: セーブして中止(Exit)
現在まで行われたスペルチェックの結果を保持してスペルチェックを終了します.
!: セーブしないで中止(Abort)
スペルチェックを行う前の状態に戻して,スペルチェックを中断します.

手動カスタマイズ

手動でxyzzyをaspelに対応させる場合は,aspell.l をインストールし,「.xyzzy」か「siteinit.l」に以下を記入します.

(import '(ed::aspell ed::*aspell-command* ed::*aspell-language*))
(autoload 'aspell "aspell" t)
(global-set-key #\M-a 'aspell)
(setq *aspell-command* "C:\\Program Files\\aspell\\bin\\aspell.exe -a")


9. word-tools

Word を持っている方の中には,Word の文章校正機能を使いたいと思う方がいらっしゃるかもしれません.そんな方は是非 word-tools を使ってみてください. Word をいちいち起動するのでスペック面で劣るパソコンでは多少ストレスを感じるかもしれません.TeX の命令などもミススペルと認識しますので,辞書登録も必要です. また,多くは英文向け機能です.従って,単にスペルチェックをしたいのであれば,TeX の命令を無視してくれる機能を持つ Aspell を用いた方が良いかもしれません

  • [Word] → [文章校正] 以下: 英文のスペルチェック・校正作業をする.
  • [Word] → [要約の作成]: 25%くらいまでの要約をカーソル位置に自動挿入する.
  • [Word] → [類義語辞典]: 英単語の類義語を調べる.
  • [Word] → [文字カウント]: 文字数を調べる.
  • [Word] → [日付と時刻]: 日本語を含めた日付と時刻を挿入する.

手動カスタマイズ

Netinstallerを使って導入できます.