=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Doc/ox.sm1,v retrieving revision 1.50 retrieving revision 1.53 diff -u -p -r1.50 -r1.53 --- OpenXM/src/kan96xx/Doc/ox.sm1 2006/02/02 07:07:22 1.50 +++ OpenXM/src/kan96xx/Doc/ox.sm1 2006/02/25 09:11:10 1.53 @@ -1,4 +1,4 @@ -%%%%%%%%%%% $OpenXM: OpenXM/src/kan96xx/Doc/ox.sm1,v 1.49 2006/02/02 05:15:45 takayama Exp $ +%%%%%%%%%%% $OpenXM: OpenXM/src/kan96xx/Doc/ox.sm1,v 1.52 2006/02/04 02:44:39 takayama Exp $ /ox.sm1.myname (ox-new.sm1) def @@ -1858,19 +1858,27 @@ oxasir.verbose { ] putUsages /translateErrorForCfep { /arg1 set - [/ee /ans /tt /lf] pushVariables + [/ee /ans /tt /lf /i /nn /ee.orig] pushVariables [ /ee arg1 def { ee etag 257 eq { - ee (body) dc 1 get /ee set + ee (body) dc 1 get /ee set ee /ee.orig set ee length 3 gt { ee 3 get /ee set - }{ /ee [ ] def } ifelse + ee [[(reason_of_error) ee.orig 2 get toString ]] join /ee set + }{ + %% nn should be 2, [serial, common error no, short message] + ee length /nn set + nn 0 gt { + /ee [(reason_of_error) ee nn 1 sub get toString ] def + } { /ee [ ] def } ifelse + } ifelse }{ } ifelse ee etag 6 eq not { /ans [ ] def exit } { } ifelse /ans [ ] def /lf 12 (string) dc def % line feed. + ans [(Begin) nl lf] join /ans set ee (lines) getNode /tt set tt tag 0 eq { @@ -1892,6 +1900,11 @@ oxasir.verbose { ans [(findAndSelect, ) tt 0 get (string) dc nl lf] join /ans set }{ } ifelse + 1 1, tt length 1 sub { + /i set + ans + [(findAndShow, ) tt i get (string) dc nl lf] join /ans set + } for } { } ifelse ee (reason_of_error) getNode /tt set @@ -1899,12 +1912,20 @@ oxasir.verbose { ee (reason_of_parse_error) getNode /tt set } { } ifelse tt tag 0 eq not { - ans [(printErrorMessage, ) tt (string) dc nl lf] join /ans set - %% translation and encoding is necessary. + ans [(printErrorMessage, ) + tt (string) dc localizedString % for translation. + nl lf] join /ans set }{ } ifelse +%% Keyword from asir. A temporary implementation. + ee (toplevel) getNode /tt set + tt isInteger, tt tag 15 eq, or { + ans [(gotoLine, ) tt toString nl lf] join /ans set + } { } ifelse + exit } loop + ans [(End) nl lf] join /ans set ans cat /arg1 set ] pop popVariables