- 追加された行はこの色です。
- 削除された行はこの色です。
*[[xyzzy:http://xyzzy-022.github.com/]] [#ea58addb]
*[[xyzzy:http://xyzzy-022.github.io/]] [#ea58addb]
#ref(http://xyzzy.s53.xrea.com/wiki/index.php?plugin=ref&page=tips%2Ficon%A4%F2%BD%F1%A4%AD%B4%B9%A4%A8%A4%EB&src=xyzzy_g.png,right,around,nolink,xyzzy)
&color(White,#5F2F2F){ ''◆目次◆'' };&br;
#contents
*xyzzy とは [#xya184ab]
xyzzy は柔軟なカスタマイズを可能にした,
多機能なテキストエディタ,xyzzy Lisp (Common Lisp) インタプリタです。
[[Emacs]] を知っている方には,elisp ではなく,xyzzy Lisp (Common Lisp) を使って拡張する Microsoft Windows 専用の環境である,と表現したほうがわかりやすいかもしれません。~
国産で,フリーソフトウェアです。~
多言語についても
-フランス語やドイツ語などのラテンアルファベット系言語
-ロシア語などのキリルアルファベット系言語
-ギリシア語
-中国語 (汉语[漢語],中文)
-韓國語 (한국어)
などの文字の表示・混在編集などに対応しています (Unicode のすべての言語に対応しているわけではありません) 。~
Emacs ライクなテキストエディタというと,デフォルトの状態では使いにくく,カスタマイズが必要な上級者向けとの印象があります。~
ですが,xyzzy はデフォルトの状態でも Emacs に比べれば親しみやすく,メニューバーやツールバーやタブバーがありますし,多くのテキストエディタでできるような設定はダイアログボックスからマウスでできます。~
ただし,「テキストエディタって何?」という方や Emacs で Lisp を使って自分の好きなように拡張することに価値を見いだせず,挫折してしまった方は xyzzy でも同様に挫折する可能性が高いと思われます。~
そういった方は無理をせずに [[サクラエディタ]],[[Notepad++]],[[jEdit]],[[Geany]],[[gedit]],[[Vim]]((Vim は操作方法に関する学習コストが高いので時間をかけて少しずつ習得していくのがいいと思います。)) などのテキストエディタ,もしくは [[Eclipse]] などの IDE を使うことをおすすめします。~
キーボードショートカット(キーバインド)は Windows の他のエディタと異なり,特殊ですが,標準添付の Gates.l など,Windows 標準のキーボードショートカットにするためのマクロがあります。~
レジストリは変更しませんので,少しでも興味のある方は試してみてはいかがでしょうか?~
-[[xyzzy - カスタマイズ可能で軽快な Windows 用テキストエディタ:http://xyzzy-022.github.com/]]
-[[xyzzy - カスタマイズ可能で軽快な Windows 用テキストエディタ:http://xyzzy-022.github.io/]]
**動作環境 [#q77fe1cc]
xyzzy (0.2.2 系列) は Windows 8, 7, Vista, XP で動作します.~
**License [#fe46096e]
xyzzy は MIT ライセンス[[[原文:http://opensource.org/licenses/mit-license.php]],[[日本語訳:http://sourceforge.jp/projects/opensource/wiki/licenses%2FMIT_license]]]です.~
xyzzy+ は Ms-PL です.~
**リリース情報 [#m67e4030]
[[派生版 - XyzzyWiki:http://xyzzy.s53.xrea.com/wiki/index.php?%C7%C9%C0%B8%C8%C7]] を参照.
**派生版 [#k1e2d6da]
オリジナル版の xyzzy の更新は止まっていますが,オープンソースなのでいろいろな xyzzy の派生版が作成されています。~
興味のある方は,是非参加してみてください。~
-[[派生版 - XyzzyWiki:http://xyzzy.s53.xrea.com/wiki/index.php?%C7%C9%C0%B8%C8%C7]]
--[[xyzzy-022:http://xyzzy-022.github.com/]]
--[[xyzzy-022:http://xyzzy-022.github.io/]]
---[[コミットログ:https://github.com/xyzzy-022/xyzzy/commits/]]
---[[xyzzy 0.2.2.239 リリースノート:http://xyzzy-022.github.com/xyzzy/2012/05/29/xyzzy-0_2_2_239-release-note/]]
---[[xyzzy 0.2.2.239 リリースノート:http://xyzzy-022.github.io/xyzzy/2012/05/29/xyzzy-0_2_2_239-release-note/]]
---[[xyzzy - 窓の杜ライブラリ:http://www.forest.impress.co.jp/library/software/xyzzy/]]
--[[マルチフレーム版:https://bitbucket.org/mumurik/xyzzy/wiki/Home]]
---[[コミットログ:https://github.com/mumurik/xyzzy/commits/]]
---[[動かないlispパッケージ一覧:https://bitbucket.org/mumurik/xyzzy/wiki/%E5%8B%95%E3%81%8B%E3%81%AA%E3%81%84lisp%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E4%B8%80%E8%A6%A7]]
---[[雑記:https://bitbucket.org/mumurik/xyzzy/wiki/%E9%9B%91%E8%A8%98]]
---[[マルチフレーム版へ移行したどー&br;マルチフレームの感想:http://d.hatena.ne.jp/DeaR/20120224]]
---[[outline-treeのマルチフレーム対応:http://d.hatena.ne.jp/DeaR/20120305/p1]]
---[[名無しさんのための GitHub 3分クッキング:https://gist.github.com/1962125]]
--[[xyzzy+:http://xyzzy.codeplex.com/]]
---[[コミットログ:http://xyzzy.codeplex.com/SourceControl/list/changesets]]
//--[[xyzzy.src (bowbow99-master):https://github.com/bowbow99/xyzzy.src/]]
//---[[コミットログ:https://github.com/bowbow99/xyzzy.src/commits/]]
//--[[xyzzy.src (for-gcc):https://github.com/bulb/xyzzy.src]]
//---[[コミットログ:https://github.com/bulb/xyzzy.src/commits/for-gcc]]
-[[オリジナル版 - やる気のないぺぇじ:http://www.jsdlab.co.jp/~kamei/]] ← ごくまれにやる気がでることがあります
--[[英語版:http://xyzzy.s53.xrea.com/english/archive/]]
--[[設定済みxyzzy:http://sourceforge.jp/projects/packaged-xyzzy/]]
---[[活動履歴:http://sourceforge.jp/users/southly/history]]
**スクリーンショット [#of7fa0a1]
#ref(http://www.ss.scphys.kyoto-u.ac.jp/person/yonezawa/contents/program/xyzzy/kyotex/img/snapshot_016.png,nolink,kyotex-mode を使った xyzzy の画面)
*ダウンロードとインストール [#xy9167cb]
まず,
-[[xyzzy - カスタマイズ可能で軽快な Windows 用テキストエディタ:http://xyzzy-022.github.com/]]
-[[xyzzy - カスタマイズ可能で軽快な Windows 用テキストエディタ:http://xyzzy-022.github.io/]]
から xyzzy をダウンロードします。~
圧縮ファイルを適当な場所に展開(解凍)するだけでインストールは終了です。~
//[[インストーラ:http://xyzzy.s53.xrea.com/wiki/?Installer%20of%20xyzzy]]もあります。~
//USB メモリで使用する方は,
//[[マルチフレーム版:https://bitbucket.org/mumurik/xyzzy/wiki/Home]], [[xyzzyをちょこちょこ改造:http://blog.2310.net/archives/618]]//
//がおすすめです。~
自分専用の設定ファイルを作りたければ,
ホームディレクトリのための環境変数 XYZZYHOME を設定します。~
「環境変数」というものがよくわからない方や環境変数を設定できない方の
場合には,xyzzy\usr\%USERNAME%\wxp\xyzzy.ini
に,例えば
[init]
homeDir=C:/xyzzy/usr/UserName/wxp
のように末尾に追記しておきます(後述するマクロを使うためにも,
この作業は是非やっておいてください)。~
ショートカットは
xyzzy.exe へのものではなく,xyzzycli.exe へのものにしましょう。~
そうしないと,既にファイルを xyzzy で開いているときにショートカットに
ドラッグ & ドロップすると,xyzzy が二重に起動してしまうのです。~
*xyzzy の基本的な使い方[#xycb6f8d]
最初に起動したときにはあまりの地味さに驚くことでしょう。でも大丈夫です。~
メニューより [表示] → [ツールバー] と選び,
[標準] と [バッファ] にチェックを入れることで,標準のツールバーと
ファイル名(正確にはバッファ名)の書かれたタブが表示されるようになります。~
試しにファイルを開いてみましょう。~
[ファイル] → [開く] と選ぶか,
ツールバーの [開く]ボタンを押すと,
ファイルを開くためのダイアログが出てきます。~
同様に,保存したり検索したり他のエディタに見られるような設定をするときも,
このようなダイアログが表示され,マウスで操作することができます。~
(Emacs 使いの方は,Ctrl + X, Ctrl + F [C-x, C-f] と入力してファイルを開いてみて
ください。Emacs 風にミニバッファからファイルを入力して開くことができます。)~
このことから,少なくともマウス操作においては,他のエディタを
お使いの方にとっても違和感はほとんどないのではないかと思われます。~
*TeX で書く際に役立つマクロの紹介 [#xycb6f8d]
xyzzy のマクロには,tex/latex/bibtex 編集支援モードの [[kyotex-mode>KyoTeX]],アウトラインの表示機能マクロ [[outline-tree2:http://ohkubo.s53.xrea.com/xyzzy/index.html#outline-tree2]] などがあります。~
有名なマクロであれば,たいがい NetInstaller から楽にインストールできます。~
詳細は
[[XyzzyWiki:QuickTour/ext/NetInstaller:http://xyzzy.s53.xrea.com/wiki/?QuickTour/ext/NetInstaller]]
をご覧ください。~
[[kyotex-mode>KyoTeX]],[[outline-tree2:http://ohkubo.s53.xrea.com/xyzzy/index.html#outline-tree2]] (アウトラインツリー表示マクロ。
LaTeX 正規表現アウトライン機能があるらしい) あたりを入れておけば便利でしょう。~
簡単な使い方を説明します。前に示したリンク先の情報の通り,インストール後,xyzzy を再起動します。~
Alt + x と入力して netinstaller と入力して Enter を押すと Netinstaller が起動します。~
a キーを押し,次の項目以降で示すカッコ内の URI を入力して Enter を押します。~
そうすることで,xyzzy マクロを配布しているサイトとマクロのリストが登録されます。~
あとはサイトを選んで Enter で決定し,インストールしたいマクロを選び,i キーでインストールします。~
終了は q です。~
**[[kyotex-mode>KyoTeX]] [#l977de24]
[[KyoTeX - TeX Wiki>KyoTeX]] を参照.~
**outline-tree でアウトライン表示 [#xyob6f8d]
***outline-tree 2 [#xyott2kl]
#ref(http://f.hatena.ne.jp/images/fotolife/k/ks88/20091123/20091123214305.jpg,nolink,outline-tree2 を使った xyzzy の画面)
上の xyzzy の画像で,左側に \section や \subsection の構成をツリー構造で示した欄があることに気づいたと思います。
そんなふうに LaTeX ソースの論理構造をグラフィカルに示してくれる outline-tree を入れます。
現在は outline-tree のバージョンが2になっています。
かなり多くの設定がマウスでできるようになるなど,ぐっと使いやすくなっています。
-Masatoshi's xyzzy extend lisps
(&ref(http://xyzzy.s53.xrea.com/ni/ni.l,http://xyzzy.s53.xrea.com/ni/ni.l);)
から treeviewdll をインストールし,その後
-[[雑記帖:http://ohkubo.s53.xrea.com/]]
(&ref(http://ohkubo.s53.xrea.com/xyzzy/packages.l,http://ohkubo.s53.xrea.com/xyzzy/packages.l);)
から win-window, color, buf2html, treeview, outlinetree をインストールします。
~/.xyzzy などの初期設定ファイルには最低限次のように書いておきます。
;;
;; outline-tree 2
;;
(require "outline-tree/outline-tree")
アウトラインツリーにフォーカスを移動させる操作を Ctrl + Tab,アウトラインツリーの作成・更新を Ctrl + Enter というショートカットキーボードでできるような設定方法を以下に示します。
----
;;; extended-key-translate-table 設定
(set-extended-key-translate-table exkey-C-tab #\F23) ; focus
(set-extended-key-translate-table exkey-C-return #\F20) ; reload
;;; Editor <-> TreeView
;; Editor -> TreeView
(require "treeview/setup")
(global-set-key #\F23 'treeview::treeview-focus-treeview)
;; TreeView (outline-tree) -> Editor
(require "outline-tree/outline-tree")
(define-key outline-tree2::*outline-tree-map*
#\F23 'treeview::treeview-focus-editor)
;;; outline 更新
(global-set-key #\F20 'outline-tree2::outline-tree-create-outline-and-select-node)
(define-key outline-tree2::*outline-tree-map*
#\F20 'outline-tree2::outline-tree-create-outline-and-select-node)
----
最後に,拡張子 “.tex” のファイルを開くと,自動的に TeX 用のアウトラインが作られるような設定を示します。
(ただ,私の環境では,なぜか拡張子 “.tex” 以外にも TeX 用のアウトラインが作られてしまうことがあります。)
----
;;; outline-tree LaTeX
(in-package "outline-tree2")
(defun my-outline-tree-get-create-outline-function (buffer)
(let ((buffer-name (buffer-name buffer))
(buffer-mode (save-excursion (set-buffer buffer) buffer-mode))
(mode-name (save-excursion (set-buffer buffer) mode-name)))
(cond
((and (symbolp 'outline-tree2::outline-tree-create-outline-LaTeX)
(fboundp 'outline-tree2::outline-tree-create-outline-LaTeX)
(string-matchp "\\.tex$" buffer-name))
'outline-tree2::outline-tree-create-outline-LaTeX)
(t nil))))
(setq *outline-tree-get-default-create-outline-function-advice-func*
'my-outline-tree-get-create-outline-function)
----
では,使ってみましょう。
xyzzy を再起動後,メニューバーより [Outline-Tree] → [outline-tree の起動] で outline-tree を起動します。
Ctrl + Enter またはメニューバーより [Outline-Tree] → [アウトラインの作成/更新] で,左側にアウトラインツリーが表示され,現在開いているファイルの一覧が示されます。
あとは,TeX ファイル名をクリックすれば,\section や \subsection の階層構造などが示され,それぞれの項目をクリックすることでファイルの該当する部分に飛びます。
詳細は,[[作者の Flash によるデモ:http://ohkubo.s53.xrea.com/xyzzy/outline-tree/demo/outline-tree2.html]]をご覧ください。
**コメントアウト用マクロ [#kb32d525]
-[[複数のモードに対応したコメントアウト用マクロ:http://www.shido.info/xyzzy/xyzzy-comment.html]]
**スペルチェックソフト Aspell を xyzzy から使う [#xyaspella]
TeX 文書を編集しているときにも,Word みたくスペルミスをチェックしてくれるソフトがあると便利です。
そんな無料のスペルチェックソフトとして知られているのが Ispell,そして Ispell の機能をさらに拡張した Aspell です。
xyzzy からは[[角藤亮さんの移植した Ispell>ftp://ftp.kddilabs.jp/TeX/ptex-win32/w32/]] を呼び出すことはおそらくできません。亀井哲弥さんの移植した Ispell (&ref(http://www.jsdlab.co.jp/~kamei/ispell-win32.lzh);) は呼び出せますが,TeX の命令を無視する機能はないようです。
というわけで,TeX ファイルをスペルチェックするのであれば,Aspell および xyzzy からそれを呼び出す aspell.l を使うことをお勧めします。
Aspell そのものは適切に日本語・アルファベット混じり文を無視してくれるというわけではありませんが,xyzzy から aspell.l 経由で使う場合には(筆者の確認した限りでは)日本語アルファベット混じり文(「これはtstです」のような文も含む)を完全に無視してくれます。
あまり機能面で欲張る方でなければ,なかなか使いやすい措置ではないでしょうか?
また,最新の aspell.l では英語以外の言語も使えるようになりました。
使える文字コードは ISO-8859-* (“*” は数字が入る)ですので日本語は使えませんが,長めの文章であればその文字コードのファイルにコピー・貼り付けしてスペルチェックをしてみるとよいのではないかと思います。
この機能を使うためにはあらかじめ [[Aspell for Win32:http://aspell.net/win32/]] をインストールしておきます。
インストール方法については [[TeXWiki:Aspell>Aspell]] をご覧ください。
「[[xyzzy から aspell を使う:http://www.shido.info/xyzzy/aspell_l.html]]」の
download から aspell_l.lzh をダウンロードします
(NetInstaller からはダウンロードできない)。
展開(解凍)し,xyzzy のインストールフォルダの site-lisp\ フォルダの
中(例えば C:/xyzzy/site-lisp/)にコピーします。
~/.xyzzy などの初期設定ファイルに次のように記述します
(ここでは,Aspell をインストーラからデフォルトの設定でインストールしたときの設定を書きます)。
(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")
さらに,英語以外の言語,たとえばロシア語をお使いの方は
(setq ed::*aspell-language* "ru")
も追加します。フランス語であれば “ru” が “fr” のように変わります。
TeX ファイルや HTML ファイルは拡張子に応じて適切なオプションを付けてくれます。
あとは,xyzzy を再起動し,Alt + a で Aspell を起動します。使い方は Aspell の使い方と同じです。また,[[xyzzy上のスペルチェッカー作成:http://keijisaito.info/arc/spell/spell_check.htm]]にあるファイルを使うと,マウスのホイールクリックから Aspell を起動し,テンキーによるスペルチェックができるようです。
英語以外の言語をスペルチェックしたい方は [[aspell.l の作者のページの「4. 英語以外の言語のスペルチェックの方法」:http://www.shido.info/xyzzy/aspell_l.html]]を参照してください。詳しくやり方が書かれています。
なお,環境変数 LANG に ja_JP.SJIS など,Aspell にないものを登録している場合,xyzzy から起動できないそうです。
その場合はその環境変数を削除すると動作しますが,環境変数 LANG を削除すると他のアプリケーションで不具合が出る可能性もあります。
この場合,環境変数 LANG はそのままにして以下の方法で問題を回避してください(Windows 2000 で確認しています)。
1. 設定ファイルの作成
環境変数 HOME を指定し,
$HOME/.aspell.conf
を作成し,
lang en
と書きます。これでつねに英語のスペルチェックをするようになります。
他言語も使用するときは,次の 2. の方法を併用すると良いでしょう。
2. コマンドラインオプション
[[TeXWiki:Aspell>Aspell]] にも記載されていますが,コマンドラインオプション “--lang” で使用言語が指定できます。
古い aspell.l であれば,例えば英語ならば,~/.xyzzy に以下のように記述してください。
(import '(ed::aspell ed::*aspell-command*))
(autoload 'aspell "aspell" t)
(global-set-key #\M-a 'aspell)
(setq *aspell-command* "C:\\Program Files\\aspell\\bin\\aspell.exe --lang=en -a")
新しい aspell.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")
(setq ed::*aspell-language* "en")
で良いと思いますが,うまくいくかどうかは確認していません。
ただし,この方法だけではデスクトップアイコンのショートカットからは動作しなくなるので,必要であればショートカットを編集すると良いでしょう。
**Word の文章校正機能などを使ってみる [#xywordch]
-[[word-tools - Microsoft Word のツールを xyzzy から利用:http://miyamuko.s56.xrea.com/xyzzy/word-tools/]]
Word を持っている方の中には,Word の文章校正機能を使いたいと思う方がいらっしゃるかもしれません。
そんな方は是非 word-tools を使ってみてください。なお当たり前ですが,Word を持っていない方はこのマクロを利用することはできません。
NetInstaller の
[[xyzzy のじかん:http://miyamuko.s56.xrea.com/]]
(&ref(http://miyamuko.s56.xrea.com/xyzzy/package.l,http://miyamuko.s56.xrea.com/xyzzy/package.l);)
からインストールできます。~/.xyzzy などへの設定の追加は不要です。
あとは xyzzy を再起動後,メニューバーより選んでいきます。
-[Word] → [文章校正] 以下: 英文のスペルチェック・校正作業をする。
-[Word] → [要約の作成]: 25%くらいまでの要約をカーソル位置に自動挿入する。
-[Word] → [類義語辞典]: 英単語の類義語を調べる。
-[Word] → [文字カウント]: 文字数を調べる。
-[Word] → [日付と時刻]: 日本語を含めた日付と時刻を挿入する。
Word をいちいち起動するのでスペック面で劣るパソコンでは多少ストレスを
感じるかもしれません。TeX の命令などもミススペルと認識しますので,
辞書登録も必要です。また,多くは英文向け機能です。従って,単にスペルチェックを
したいのであれば,TeX の命令を無視してくれる機能を持つ Aspell を用いた方が
良いかもしれません(なお,xyzzy には角藤さんの Ispell for Win32 を使うための
マクロはありませんので,必然的に Aspell を用いることになると思います)。
あと,たまにフリーズすることがありますので,
その場合には冷静に WINWORD.EXE を強制終了しましょう。
**自分でマクロを作ってみる [#xymb6f8d]
自分でマクロを作る手もあります。Lisp 系の言語で書くことになります。メニューバーやツールバー・タブバー,さらにはダイアログまでマクロで作ることができます。
WinAPI も呼び出せます(コモンダイアログを使うときには NetInstaller より雑記帖の commdlg を使うと便利)。頑張って作れば,相当良い LaTeX 環境を実現できそうです。
*スクリプト [#ha3f5417]
**Happy [#ra9f73ad]
-[[Happy:http://www.u-gakugei.ac.jp/~takizawa/Happy/]]
--HappyInput (TeX 入力支援スクリプト)
--HappyTeX (TeX タイプセット&プレビュー支援スクリプト)
*SumatraPDF との連携 [#s1d4a0f1]
**forward search [#ra3924a4]
xyzzy から SumatraPDF の該当箇所にジャンプすることが可能です。~
[[KyoTeX]] の設定を参照してください。~
**inverse search [#n1f72109]
[[SumatraPDF]] の [設定(S)]-[オプション(O)...]-[逆順検索コマンドラインの設定] で
C:\xyzzy\xyzzycli.exe -g %l "%f"
と書き込んで [OK] をクリックしてください。
SumatraPDF で画面の一部(本文の文字など)をダブルクリックすると, xyzzy が前面に出て,該当個所に飛ぶはずです。~
上の記述は xyzzycli.exe が C:/xyzzy/ にあると仮定しています。~
なお,xyzzy の二重起動を防止するため,xyzzy.exe ではなく xyzzycli.exe を指定していることに注意してください。~
*Linux で xyzzy [#wba8406f]
Wine でも動くという報告がありますので,Linux ユーザも検討してみる価値はあります。
>
(SUSE LINUX 9.2 [kernel 2.6.8] wine 20050111 xyzzy 0.2.2.233。
2ch-mode, www-mode, kamail, outline-tree, migemo, netinstaller は動く。
browser.dll 関連,filer 関連は一部動作せず。Emacs より軽いという報告もある。
詳細は [[2ch Windows 板 「xyzzy Part12」 (2ちゃんねるのログ)>http://www.bookshelf.jp/2ch/win/1103400818.html]] の >>217, >>220-222 あたりを
参照のこと。)
*関連リンク [#v1d4c456]
-[[Xyzzy Wiki:http://xyzzy.s53.xrea.com/wiki/]]
-[[xyzzy あんてな:http://raido.sakura.ne.jp/southly/a/]]
-[[AtoZ:http://www.tokyorus.ac.jp/computer/atoz.htm]]
-[[xyzzy でスクラッチから何まで全部の新規バッファを utf8 にする:http://d.hatena.ne.jp/ampll/20100909/1284016499]]