version 1.16, 2001/09/20 05:57:40 |
version 1.31, 2014/08/28 11:27:34 |
|
|
%% $OpenXM: OpenXM/src/kan96xx/Doc/httpd-asir.sm1,v 1.15 2001/08/29 11:18:57 takayama Exp $ |
%% $OpenXM: OpenXM/src/kan96xx/Doc/httpd-asir.sm1,v 1.30 2010/02/08 01:08:39 takayama Exp $ |
%% http server by sm1 |
%% http server by sm1 |
|
|
[(parse) (httpd.sm1) pushfile] extension pop |
[(parse) (httpd.sm1) pushfile] extension pop |
|
|
/httpd.initialization |
/httpd.initialization |
%% Put initialization codes here. |
%% Put initialization codes here. |
[ |
[ |
|
(XM_debug=0; ctrl("debug_window",0);) |
("Asirweb version 0.80. "+ |
("Asirweb version 0.80. "+ |
" Risa/Asir oxasir version "+rtostr(version());) |
" Risa/Asir oxasir version "+rtostr(version());) |
] cat |
] cat |
|
|
oxasir.ccc oxsetmathcap |
oxasir.ccc oxsetmathcap |
} ifelse |
} ifelse |
|
|
|
/ox-win.start.iconic 1 def |
|
/ox.win.set.start { |
|
[(stat) (c:\windows\system32\cmd.exe)] extension 0 get |
|
0 eq { |
|
/ox.win.start.0 [(c:\windows\system32\cmd.exe) (/c) (start)] def |
|
/ox.win.start [ox.win.start.0 aload pop |
|
ox-win.start.iconic { (/min) } { } ifelse ] def |
|
}{ |
|
[(stat) (c:\winnt\system32\cmd.exe)] extension 0 get |
|
0 eq { |
|
/ox.win.start.0 [(c:\winnt\system32\cmd.exe) (/c) (start) ] def |
|
/ox.win.start [ox.win.start.0 aload pop |
|
ox-win.start.iconic { (/min) } { } ifelse ] def |
|
}{ |
|
/ox.win.start.0 [ (start) ] def |
|
/ox.win.start [ ox.win.start.0 aload pop |
|
ox-win.start.iconic { (/min) } { } ifelse ] def |
|
} ifelse |
|
} ifelse |
|
} def |
|
|
/webasir { asirweb } def |
/webasir { asirweb } def |
/asirweb { |
/asirweb { |
[/rrr ] pushVariables |
[/rrr /cmd] pushVariables |
[ |
[ |
%% This procedure to generate port number might fail. |
%% This procedure to generate port number might fail. |
[(oxGenPass)] extension . (integer) dc /rrr set |
[(oxGenPass)] extension . (integer) dc /rrr set |
|
|
/httpd.port 1200 rrr add def |
/httpd.port 1200 rrr add def |
httpd.port message |
httpd.port message |
|
|
[(sleep 3; netscape -geometry 800x500 http://localhost:) |
%%[(sleep 3; firefox -geometry 800x500 http://localhost:) |
httpd.port toString |
%% httpd.port toString |
( &)] cat system |
%% ( &)] cat system |
|
[(ostype)] extension 0 get |
|
(windows) eq { |
|
%% On windows. |
|
ox.win.set.start |
|
[(forkExec) |
|
[ |
|
%%(c:\windows\command\start) |
|
ox.win.start.0 aload pop |
|
(iexplore) %% Starting internet explorer (TM). |
|
[(http://localhost:) httpd.port toString] cat |
|
] |
|
[ ] |
|
3] extension |
|
}{ |
|
%% On unix. |
|
httpd.port httpd.startBrowserUnix |
|
} ifelse |
|
|
httpd ; |
httpd ; |
] pop |
] pop |
popVariables |
popVariables |
|
|
{ |
{ |
[(sm1.socket) (select) [httpd.server.fd 0 get -1]] extension |
[(sm1.socket) (select) [httpd.server.fd 0 get -1]] extension |
%% wait for ever |
%% wait for ever |
[(sm1.socket) (read) [httpd.server.fd 0 get ]] extension /ff set |
[(sm1.socket) (readHTTP) [httpd.server.fd 0 get ]] extension /ff set |
ff length 0 eq { |
ff tag 0 eq { |
(connection is closed.) message |
(connection is closed.) message exit |
} |
} |
{ |
{ |
(------------ start ----------------------) message |
(------------ start ----------------------) message |
|
|
( ) message |
( ) message |
httpd.serial 0 eq { |
httpd.serial 0 eq { |
/httpd.com httpd.initialization def |
/httpd.com httpd.initialization def |
|
/httpd.textarea.valid 1 def |
} { } ifelse |
} { } ifelse |
httpd.sendFile tag 0 eq { } |
httpd.sendFile tag 0 eq { } |
{ |
{ |
|
|
|
|
|
|
/httpd.asirman |
/httpd.asirman |
("http://www.math.sci.kobe-u.ac.jp/OpenXM/1.1.3/doc/asir2000/html-jp/man_toc.html") |
("http://www.math.sci.kobe-u.ac.jp/OpenXM/Current/doc/asir2000/html-ja/man_toc.html") |
def |
def |
/httpd.asirman.index |
/httpd.asirman.contrib |
("http://www.math.sci.kobe-u.ac.jp/OpenXM/1.1.3/doc/asir2000/html-jp/man_262.html#SEC262") |
("http://www.math.sci.kobe-u.ac.jp/OpenXM/Current/doc/asir-contrib/ja/cman-html/cman-ja_toc.html") |
def |
def |
/httpd.asir.intro |
/httpd.asir.intro |
("http://www.math.sci.kobe-u.ac.jp/~taka/asir-book-html/main") |
("http://www.math.sci.kobe-u.ac.jp/~taka/asir-book-html/main") |
|
|
[(<font color="red"> |
[(<font color="red"> |
<a href=) httpd.asirman ( > AsirManual (Ja) </a> </font>, )] cat sendln |
<a href=) httpd.asirman ( > AsirManual (Ja) </a> </font>, )] cat sendln |
[(<font color="purple"> |
[(<font color="purple"> |
<a href=) httpd.asirman.index ( > Index (Ja) </a> </font>, )] cat sendln |
<a href=) httpd.asirman.contrib ( > AsirContrib (Ja) </a> </font>, )] cat sendln |
[(<font color="blue"> |
[(<font color="blue"> |
<a href=) httpd.asir.intro ( > Intro (Ja) </a> </font>, )] cat sendln |
<a href=) httpd.asir.intro ( > Intro (Ja) </a> </font>, )] cat sendln |
} def |
} def |
|
|
msg2 0 get (httpdAsirMeta) eq |
msg2 0 get (httpdAsirMeta) eq |
msg2 1 get (Pretty) eq and |
msg2 1 get (Pretty) eq and |
{ |
{ |
httpd.image.type null eq { |
httpd.image.type tag 0 eq { |
send-page-warning-image |
send-page-warning-image |
/skip-image goto |
/skip-image goto |
} { } ifelse |
} { } ifelse |
|
|
] pop |
] pop |
popVariables |
popVariables |
arg1 |
arg1 |
|
} def |
|
|
|
/webasir2 { |
|
[/rrr /cmd /mypid /lockname] pushVariables |
|
[ |
|
%% This procedure to generate port number might fail. |
|
[(oxGenPass)] extension . (integer) dc /rrr set |
|
rrr << rrr 20000 idiv 20000 mul >> sub /rrr set |
|
/httpd.port 1200 rrr add def |
|
httpd.port message |
|
|
|
[(getpid)] extension (dollar) dc /mypid set |
|
/httpd.textarea.name randomName def |
|
[(/tmp/webasir-) mypid (.txt)] cat /lockname set |
|
[(outputObjectToFile) lockname |
|
[httpd.port nl httpd.textarea.name nl ] cat |
|
] extension |
|
lockname message |
|
[(cat ) lockname] cat (system) nl message |
|
httpd ; |
|
[(rm -f ) lockname] cat system |
|
] pop |
|
popVariables |
} def |
} def |