xyzzyでprolog-mode


prolog-mode.l ver.0.0.8


コメント
xyzzyprolog-modeを探したけれど、良いのがない。そしてlispをいい加減覚えようとも思った。なのでprolog-modeを作ってみた。ただし、lispを覚えるために作ったので、ソースコードそのものは全く参考にならないとだけ言い訳しておきます。きっちり作ろうと思ったのだけれど、prolog構文解析するのが面倒くさくなって、かなりアドホックな固まりになってしまってます。インデンテイションって奥が深いなぁ。気が向いたらバージョンアップする。


使い方

  • ファイルの先頭に書いてるから、それ見て欲しい。簡単には、
    • クリックしたファイルを「prolog-mode.l」でどこかに(たとえばxyzzyのフォルダのsite-lispの下に「prolog」というフォルダを作ってそこに保存)
    • ファイル「.xyzzy」に以下を追加。コメントアウトしている部分は、好みに合わせて調整してください。
(import '(ed::*prolog-indent-width* ed::*prolog-paren-complement* ed::*prolog-strict-indentation*))
;(setf *prolog-indent-width* 3)         ; インデント幅
;(setf *prolog-paren-complement* t)     ; 括弧の自動補完 (t/nil)
;(setf *prolog-strict-indentation* nil) ; 括弧のインデントの基準をネスト数か直前の括弧 (t/nil)
(require "prolog/prolog-mode")          ; site-lisp/置いたフォルダ名/ファイル名(拡張子無し)
(pushnew '("\\.pl$" . prolog-mode) *auto-mode-alist*)
    • 後はplファイルを読み込んでください。※拡張子plはPerlに関連づけされている場合があるので、それを回避するには適当に「'("\\.pl$"」部分を変更してください。

できること

できないこと

  • バッファを分割してprologインタープリターを起動するとか。Windowsならダブルクリックでファイルを起動できるので、正直いらないと思う。なので作ってない。
  • たぶんいろいろ

既知のバグ

  • (修正済み)小数のドットが、節の終了ドットと勘違いする模様


xyzzylisp programを作っていて気がついたこと

xyzzylispをいじろうと思い始めた人は気をつけると良いかも。

====追記
2017/07/25: ファイルのリンクが切れていたので設定し直しました。