chiark / gitweb /
*** empty log message ***
[sympathy.git] / src / terminal.c
index 9a3290eeee645e81057f6e326ce84ceaa732b8a3..d0cde9916e2c2cc4a13cf83ce5ac8452533b6292 100644 (file)
@@ -10,6 +10,9 @@ static char rcsid[] = "$Id$";
 
 /*
  * $Log$
+ * Revision 1.10  2008/02/26 23:23:17  james
+ * *** empty log message ***
+ *
  * Revision 1.9  2008/02/15 03:32:07  james
  * *** empty log message ***
  *
@@ -97,11 +100,15 @@ terminal_close (TTY * _t)
   set_nonblocking (t->wfd);
 
 
-  t->xmit (_t, "\033[r", 3);
-  t->xmit (_t, "\033[0m", 4);
-  i = sprintf (buf, "\033[%d;%dH", CRT_ROWS + 1, 1);
+  t->xmit (_t,"\033%@",3); //Leave UTF-8
+  t->xmit (_t,"\033(B",3); //US-ASCII in G0
+  t->xmit (_t,"\033)B",3); //US-ASCII in G1
+  t->xmit (_t,"\017",1); //Select G0
+  t->xmit (_t, "\033[r", 3); //No margins
+  t->xmit (_t, "\033[0m", 4); //Default attributes
+  i = sprintf (buf, "\033[%d;%dH", CRT_ROWS + 1, 1); //Cursor to bottom
   t->xmit (_t, buf, i);
-  t->xmit (_t, "\033[J", 3);
+  t->xmit (_t, "\033[J", 3); //erase rest of screen
 
   set_blocking (t->rfd);
   set_blocking (t->wfd);