X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=st.c;h=9f9c1610328d5968de4cc04720952016d0d39765;hb=96c230e476a4fb446a8fa8d651c88fda32cd5427;hp=e60643c85cad9aeed391d4a528a7c6c382327ea2;hpb=cf332a325dafe7e9ed6d87df9dcec29149c5042c;p=st.git diff --git a/st.c b/st.c index e60643c..9f9c161 100644 --- a/st.c +++ b/st.c @@ -314,6 +314,8 @@ static void clippaste(const Arg *); static void numlock(const Arg *); static void selpaste(const Arg *); static void xzoom(const Arg *); +static void printscreen(const Arg *) ; +static void toggleprinter(const Arg *); /* Config.h for applying patches and the configuration. */ #include "config.h" @@ -358,6 +360,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 +1989,8 @@ csihandle(void) { case 'i': /* MC -- Media Copy */ switch(csiescseq.arg[0]) { case 0: + tdump(); + break; case 1: tdumpline(term.c.y); break; @@ -2280,6 +2285,16 @@ tprinter(char *s, size_t len) { } void +toggleprinter(const Arg *arg) { + term.mode ^= MODE_PRINT; +} + +void +printscreen(const Arg *arg) { + tdump(); +} + +void tdumpline(int n) { Glyph *bp, *end; @@ -2295,6 +2310,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;