ed(3) MudOS v21c2 (5 Sep 1994) 名称: ed() - 编辑一个档案. 语法: void ed( string file, string exit_fn, int restricted ); void ed( string file, string write_fn, string exit_fn, int restricted ); 无传回值 ed( 字串 file, 字串 exit_fn, 整数 restricted ); 无传回值 ed( 字串 file, 字串 write_fn, 字串 exit_fn, 整数 restricted ); 用法: 这个函式只有在定义了 __OLD_ED__ 之後有效. 这个函式很有趣. 它会启动一个文书编辑程式来编辑一个指定 的档案. 这个程式与 UNIX 的 ed 程式几乎相容. 当你进入这 个程式後, 可以输入 h 了解用法. write_fn 函式可以让 mudlib 控制档案的写入权限和档案修 改纪录. 当编辑程式写入一个档案时, MUD 驱动程式 (driver) 会呼叫 write_fn 两次. 第一次呼叫时, 是在写入档案之前, 而 flag 旗标为 0. 如果被呼叫的函式传回「真」值 (true, 即为非零值) , 编辑程式就会继续写入档案. 第二次呼叫时, 是在写入档案完成之後, 此时的 flag 旗标为非零值. 被呼叫 的函式必须符合以下的格式: int write_fn(string fname, int flag) 离开编辑程式时, MUD 驱动程式 (driver) 会呼叫 exit_fn 函式. 这个被呼叫的函式可以让 mudlib 清除. 这个函式要 符合以下的格式: void exit_fn() 而可以省略的 restricted 旗标则限制编辑程式的功能. 像是: 插入一个档案, 以不同的名字储存档案. 这些功能 在 restricted 旗标为「真」值时, 就无法使用. 参考: regexp(3), valid_read(4), valid_write(4), get_save_file_name(4) 翻译: Spock @ FF 97.Feb.7. (printed 3/16/95)