send \r\n instead of \n for windows telnet clients
parent
19d6285035
commit
a4a2ae8a78
|
@ -18,6 +18,9 @@ chat-docs [ H{ } clone ] initialize
|
||||||
|
|
||||||
CONSTANT: line-beginning "-!- "
|
CONSTANT: line-beginning "-!- "
|
||||||
|
|
||||||
|
: send-line ( string -- )
|
||||||
|
write "\r\n" write flush ;
|
||||||
|
|
||||||
: handle-me ( string -- )
|
: handle-me ( string -- )
|
||||||
[
|
[
|
||||||
[ "* " username " " ] dip
|
[ "* " username " " ] dip
|
||||||
|
@ -29,15 +32,15 @@ CONSTANT: line-beginning "-!- "
|
||||||
: handle-help ( string -- )
|
: handle-help ( string -- )
|
||||||
[
|
[
|
||||||
"Commands: "
|
"Commands: "
|
||||||
commands get keys natural-sort ", " join append print flush
|
commands get keys natural-sort ", " join append send-line
|
||||||
] [
|
] [
|
||||||
chat-docs get ?at
|
chat-docs get ?at
|
||||||
[ print flush ]
|
[ send-line ]
|
||||||
[ "Unknown command: " prepend print flush ] if
|
[ "Unknown command: " prepend send-line ] if
|
||||||
] if-empty ;
|
] if-empty ;
|
||||||
|
|
||||||
: usage ( string -- )
|
: usage ( string -- )
|
||||||
chat-docs get at print flush ;
|
chat-docs get at send-line ;
|
||||||
|
|
||||||
: username-taken-string ( username -- string )
|
: username-taken-string ( username -- string )
|
||||||
"The username ``" "'' is already in use; try again." surround ;
|
"The username ``" "'' is already in use; try again." surround ;
|
||||||
|
@ -53,7 +56,7 @@ CONSTANT: line-beginning "-!- "
|
||||||
"nick" usage
|
"nick" usage
|
||||||
] [
|
] [
|
||||||
dup clients key? [
|
dup clients key? [
|
||||||
username-taken-string print flush
|
username-taken-string send-line
|
||||||
] [
|
] [
|
||||||
[ username swap warn-name-changed ]
|
[ username swap warn-name-changed ]
|
||||||
[ username clients rename-at ]
|
[ username clients rename-at ]
|
||||||
|
@ -70,12 +73,12 @@ CONSTANT: line-beginning "-!- "
|
||||||
Displays the documentation for a command.">
|
Displays the documentation for a command.">
|
||||||
"help" add-command
|
"help" add-command
|
||||||
|
|
||||||
[ drop clients keys [ "``" "''" surround ] map ", " join print flush ]
|
[ drop clients keys [ "``" "''" surround ] map ", " join send-line ]
|
||||||
<" Syntax: /who
|
<" Syntax: /who
|
||||||
Shows the list of connected users.">
|
Shows the list of connected users.">
|
||||||
"who" add-command
|
"who" add-command
|
||||||
|
|
||||||
[ drop gmt timestamp>rfc822 print flush ]
|
[ drop gmt timestamp>rfc822 send-line ]
|
||||||
<" Syntax: /time
|
<" Syntax: /time
|
||||||
Returns the current GMT time."> "time" add-command
|
Returns the current GMT time."> "time" add-command
|
||||||
|
|
||||||
|
@ -96,7 +99,7 @@ Disconnects a user from the chat server."> "quit" add-command
|
||||||
dup " " split1 swap >lower commands get at* [
|
dup " " split1 swap >lower commands get at* [
|
||||||
call( string -- ) drop
|
call( string -- ) drop
|
||||||
] [
|
] [
|
||||||
2drop "Unknown command: " prepend print flush
|
2drop "Unknown command: " prepend send-line
|
||||||
] if ;
|
] if ;
|
||||||
|
|
||||||
: <chat-server> ( port -- managed-server )
|
: <chat-server> ( port -- managed-server )
|
||||||
|
@ -123,7 +126,7 @@ M: chat-server handle-client-disconnect
|
||||||
] "" append-outputs-as send-everyone ;
|
] "" append-outputs-as send-everyone ;
|
||||||
|
|
||||||
M: chat-server handle-already-logged-in
|
M: chat-server handle-already-logged-in
|
||||||
username username-taken-string print flush ;
|
username username-taken-string send-line ;
|
||||||
|
|
||||||
M: chat-server handle-managed-client*
|
M: chat-server handle-managed-client*
|
||||||
readln dup f = [ t client (>>quit?) ] when
|
readln dup f = [ t client (>>quit?) ] when
|
||||||
|
|
Loading…
Reference in New Issue