90x32(2317bytes) login name : epojava    Top 

『epo-zope』

  The Editing Process Organizer -- Zope dependent settings for Emacs.

epo-zope あぶすとらくと

  Zopeでテキストの入力を行うのは なにかと面倒です。 なぜならHTMLの TextArea からの入力では 色が付いていません。 また、タグの補完入力ができません
  そんなときに使用するのが、Emacs の ange-ftpによるファイル読み込みですが、 index_html なんてファイルを開いた日には(拡張子が変だから) やっぱり色が付きません

  はい。色の付かないコードなんてとても見てられませんね()。

  epo-zope(The Editing Process Organizer -- Zope dependent settings for Emacs)は、Zope での入力に特化した補完入力/プロセス起動を行うための epo依存設定です。
  epo-zope素敵な色漬けと、 補完入力などをあなたに提供します。

用語の説明

  1. epo は emacs 系(XEmacs,Emacs21,Meadow,...) のエディターで 『全てのモードで統一または酷似した補完入力/ プロセス起動のキーバインド』を行うことを目的とした、 マイナーモードです。
  2. epojava/epoxml はその概念に基づき、 安藤がかたっぱしから epo 依存設定を追加し、 &安藤好みの設定を行っているメジャーモードです。
    epo 本体(epo?.el)と、 言語固有のepo依存設定 epo-???.el からなります。
  3. epo-zope は、 epojava のおまけで、 Zope の補完入力を支援するための epo依存設定です。
  4. yahtml は、epo の前身で html 入力支援用をするためのメジャーモードです。
  5. python-mode は *.py 用のメジャーモードです。

epo-zope インストール

インストール

  epo-zope のインストールは次のパートからなります。
  1. Zope をインストールする。
    → Zope のホームページ参照
    http://zope.jp
    ※ Zope が既にインストールされているときは必要ありません。
  2. epo をインストールする。
    → epo のホームページ参照
    http://www.yatex.org/epo/
    ※epo-1.4b 以上が既にインストールされているときは必要ありません。
    ※make を行うときは、下記epojavaを展開した後に行ってください。
  3. epojava/epo-zope をインストールする。
    → 本ページからダウンロードしてください。
    epojava
    ※ファイルを展開した後、 全てのファイルを epo と同じフォルダに 置いてください。
    ※重複ファイルもありますが上書きしてかまいません。
    % copy *.* epo/
  また、以下のものもあれば嬉しいでしょう。
  1. (できれば) python-mode をインストールする。
    http://www.python.org/emacs/
    →→ http://www.python.org/emacs/python-mode/python-mode.el
    ※*.py を触らないときは必要ありません。
  2. (できれば) yahtml をインストールする。
    →yatex のページ参照
    http://www.yatex.org/
    ※html の編集に yahtml を使わないときは必要ありません。

設定方法――

共通

  ご使用されている.emacsに以下を追加してください。
;; Zope の設定
(setq epo-zope-default-account "ando") ;; アカウント名
(setq epo-zope-default-host "localhost") ;; ホスト名
(setq epo-zope-default-port "8021") ;; FTP のポート番号(文字列です)
;;; Windows では start.bat に -f8021 の指定で変更できます。
;;; この設定で接続できないようであれば
;;; ange-ftp(Emacs側のftp接続ライブラリ)の問題が考えられますので
;;; -f21 で試してください。
(setq epo-zope-http-port "8080") ;; WEB のポート番号(文字列です)
※ この設定はデフォルトで使用する場合は必要ありません(アカウント名がfoo になったりしますが……)。

epojava 依存設定

  epojava 全体を入れたいときは以下を設定してください。 ご使用されている.emacsに以下を追加してください。
(require 'epoan)
※ この設定を行うと、java/XML/C/C++ が epojava で動作します。

  また、epo-zope だけを入れたいという方は、 以下のように設定してください (上記設定と排他です。この設定は既に epoan.el の中に含まれています)。
(autoload 'epo-zope-start  "epo-zope"  "EPO Zope init" t)
※ この設定はどちらかが必ず必要です。

html-mode 依存設定

  html の編集を、なにも設定していない通常の html-mode で使用しているときは、 .emacsに以下のような設定を追加してください。
(add-hook 'html-mode-hook '(lambda () (font-lock-mode 1)))
(add-hook 'html-mode-hook 'epo-xml-enable)

yahtml-mode 依存設定

  html の編集に、yahtml-mode を使用する場合は、 ご使用されている.emacsyahtml本体の設定の他に以下を追加してください。
(autoload 'epo-xml-enable "epo-xml"
  "Editing Process Organizer for XML" t)
(add-hook 'yahtml-mode-hook 'epo-xml-enable)

epoxml-mode 依存設定

  html の編集に、epoxml-mode を使用する場合は、 ご使用されている.emacsepojava本体の設定の他に以下を追加してください。
(setq auto-mode-alist
      (cons (cons "\\.html$" 'epoxml-mode) auto-mode-alist))

PSGML 依存設定

  html の編集に、PSGML を使用する場合は、 ご使用されている.emacsPSGML本体の設定の他に以下を追加してください。
;;; PSGML の設定
(setq auto-mode-alist
      (cons (cons "\\.html$" 'xml-mode) auto-mode-alist))
(autoload 'epo-xml-enable "epo-xml" "Editing Process Organizer for XML" t)
(add-hook 'sgml-mode-hook  'epo-xml-enable)

その他のhtml-mode を利用するときの設定

  html の編集に、hyper-html-mode などの他の種類のhtml-mode を 使用する場合は .emacs に以下のように設定すると良いでしょう。
(autoload 'epo-xml-enable "epo-xml"
    "Editing Process Organizer for XML" t)
(add-hook 'モード名-mode-hook 'epo-xml-enable)

python-mode.el依存設定

  python-mode をインストールする場合は、 以下のようにするのが良いと思います。
  1. python-mode.el をダウンロード後、 ロードパスが通った個所にこのファイルを置く。
    『ロードパスが通った』という用語がよく分からなければ、 epo と同じフォルダに python-mode.el を置く。
  2. .emacs に以下のような設定を書く。
;; python の設定
(add-hook 'python-mode-hook '(lambda () (font-lock-mode 1)))
(autoload 'python-mode "python-mode"
  "Major mode for editing Python programs" t)
(setq auto-mode-alist
      (cons (cons "\\.py$" 'python-mode) auto-mode-alist))

epo-zope でなにができるの?

起動が簡単に!

  まず、以下を入力してください。
M-x epo-zope-start
  すると、アカウント、ホスト名、 パスワードを聞いてきますので、それぞれ入力してください。
  .emacsに正しい設定がなされている場合は、 リターン連打でよいはずです(パスワード除く)。
  dired-mode でファイルの一覧が見えればインストールは正常に成功しています。
  その後は、C-x C-s等のコマンドで好きに フォルダを移動してください。

デフォルトで色が!

  ファイルを選択し、拡張子等で不明の場合は、 epo-zope の依存設定がロードされ色つきのメジャーモード(yahtml または epoxml、 または拡張子によるその他メジャーモード *.py 他)が起動されます。

補完機能がいっぱいです!

  キーバインドは主なものをあげると以下の通りです。
  [prefix]C-c と置き換えて読んでください(カスタマイズ可能です)。
[prefix] C-t jでも/ (epoxmlでは[prefix] t j でも可能)
プロセス起動を行います。 Zope管理画面(ZMI)を起動します。

[prefix] C-t r/ (epoxmlでは[prefix] t r でも可能)
プロセス起動を行います。 対応する html を起動します。

[prefix] C-s s/ (epoxmlでは[prefix] s でも可能)
<img src="aa"> や <dtml-var aaa> 型の閉じカッコのないタグの補完入力を行います。

[prefix] C-s b/ (epoxmlでは[prefix] b でも可能)
<body> や <dtml-in> 型の閉じカッコのあるタグに関するタグの補完を行います。

[prefix] C-s l/ (epoxmlでは[prefix] l でも可能)
<small>型の文字に関する 閉じカッコのあるタグの補完入力を行います。

検討課題

  検討課題です。
  1. DTML や Page Template のリファレンス読むのが面倒なので 補完できるようにする。
    → 補完するための規則が分かりません……。
  2. ぱいそんぶぶんをほかんにゅうりょくする。
    → どうせぱぁるつかうからいいや……。
  3. Perl Script を扱えるようにする。
    → いんすとーるがめんどうなのでやってません……。

ando@park.ruru.ne.jp