作成日: 2007-03-24

xyzzyにbuiltin関数を追加する

概略

  1. gen-syms.ccを編集
  2. nmake fns-decl.h
  3. 実装
  4. ビルド

gen-syms.ccを編集

追加するbuiltin関数に従ってgen-syms.ccを編集します。追加する位置とか記述の仕方についてはまだよく分かっていないので省略します。勘で何とかなります。

今回追加したsyntax-match-charは、関数名syntax-match-char、必須引数1、オプショナル引数1だったので以下の記述を追加しました。

DEFUN3 (syntax-match-char, 1, 1, 0),  

nmake fns-decl.h

コマンドプロンプトで「nmake fns-decl.h」を実行してgen-syms.ccから関数宣言のfns-decl.hを生成します。

実装

fns-decl.hに追加した関数のプロトタイプがあるのでそれをもとに、実装します。

lisp Fsyntax_match_char (lisp, lisp);

こんなのができていたのでこれを実装しました。

lisp
Fsyntax_match_char (lisp ch, lisp table)
{
...
}

ビルド

コマンドプロンプトで「nmake」を実行してビルドします。