Sfoglia il codice sorgente

Add MC for the full screen

This sequence is very useful because allows comunicate the content
of the terminal to another program.
Roberto E. Vargas Caballero 11 anni fa
parent
commit
6166a1afc8
1 ha cambiato i file con 11 aggiunte e 0 eliminazioni
  1. 11 0
      st.c

+ 11 - 0
st.c

@@ -358,6 +358,7 @@ static void strreset(void);
 static int tattrset(int);
 static void tprinter(char *s, size_t len);
 static void tdumpline(int);
+static void tdump(void);
 static void tclearregion(int, int, int, int);
 static void tcursor(int);
 static void tdeletechar(int);
@@ -1986,6 +1987,8 @@ csihandle(void) {
 	case 'i': /* MC -- Media Copy */
 		switch(csiescseq.arg[0]) {
 		case 0:
+			tdump();
+			break;
 		case 1:
 			tdumpline(term.c.y);
 			break;
@@ -2294,6 +2297,14 @@ tdumpline(int n) {
 	tprinter("\n", 1);
 }
 
+void
+tdump(void) {
+	int i;
+
+	for(i = 0; i < term.row; ++i)
+		tdumpline(i);
+}
+
 void
 tputtab(bool forward) {
 	uint x = term.c.x;