st

fork of suckless's simple terminal
Index Commits Files Refs README LICENSE
commit 6166a1afc8c7875ce9ba62e5001040014269a26d
parent cf332a325dafe7e9ed6d87df9dcec29149c5042c
Author: Roberto E. Vargas Caballero <k0ga@shike2.com>
Date:   Fri, 31 Jan 2014 22:25:51 +0100

Add MC for the full screen

This sequence is very useful because allows comunicate the content
of the terminal to another program.

Diffstat:
Mst.c | 11+++++++++++
1 file changed, 11 insertions(+), 0 deletions(-)
diff --git a/st.c b/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;
@@ -2295,6 +2298,14 @@ tdumpline(int n) {
 }
 
 void
+tdump(void) {
+    int i;
+
+    for(i = 0; i < term.row; ++i)
+        tdumpline(i);
+}
+
+void
 tputtab(bool forward) {
     uint x = term.c.x;