edit edit(+ファイル名) editor(-旧エディタ,+新エディタ)
edit/0は、IF/Prologセッション中にエディタを呼び出します。edit/1によって最も最近に編集されたファイルを編集し、リコンサルトします。edit/0は現在のセッション中に、edit/1よって編集したファイルがない場合には失敗します。
edit/1は、IF/Prologセッション中にファイル「ファイル名」を編集し、リコンサルトします。「ファイル名」あるいは「ファイル名」.proというファイルが存在しない場合には、このファイルが作られて、編集やリコンサルトが行われます。
「ファイル名」はアトムでなければならないので、'.'や'/'のような特別な文字を含んでいる場合には、引用符で囲んで下さい。名前の中にあるバックスラッシュは、'\\'のようにしてエスケ−プしなければなりません。
UNIXシステムではデフォルトのエデイタは、環境変数EDITORによって決定されます。これが定義されていない場合には、デフォルトの設定であるviが使われます。述語editor/2を使って、「新エディタ」に使用したいエディタの名前を与えることにより、他のエディタを選択することができます(現在のセッションに対する)。第1、第2引数の両方に値を持たない変数を与えると、デフォルトのエディタ名がわかります。
?- edit(test). or ?- edit('test.pro'). or ?- edit('../date/facts.pro').
?- editor(X,X), editor(X,'/usr/bin/emacs').
X = vi yes ?- editor(X,X).
X = '/usr/bin/emacs' yes ?-
atom_expected 「ファイル名」がアトムでない。