Jonathan Hutchins wrote:
The problem is that when running screen in a terminal window, screen tends to intercept the scrollback buffer. This means that whatever you've configured for the terminal program is often irrelevant, as is the terminal program's normal scrollback function.
While the ability to use screen's buffer-edit function does give you a scrollback, it also transforms the expected, accustomed behavior of the terminal; the ease of scrolling back with a mouse wheel or familiar keys.
Somehow, putty overcomes this, and manages to buffer and allow scrollback even within screen sessions. Wouldn't it be nice if common Linux/Xwindows terminal programs did as good a job of integrating with this common Linux utility?
Actually, I'm running screen under PuTTY right now, and while it does in fact scrollback, it does _NOT_ scrollback over the currecnt screen session, but rather it scrolls back to what was on the tty before I started screen.
Note that the middle command is where I connected to the screen session. I suppose that xterm could be made to emulate this behaviour, but I don't see how usefuel it is.
Scrolled back half-height in my PuTTY session: ============================================================================ -rw-rw-r-- 1 hald hald 8019 Nov 19 11:12 x12_dict_inter_element.c.save -rw-rw-r-- 1 hald hald 7068 Nov 20 21:41 x12_dict_inter_element.o -rw-rw-r-- 1 hald hald 10107 Nov 21 17:34 x12_dict_inter_segment.c -rw-rw-r-- 1 hald hald 10107 Nov 19 11:11 x12_dict_inter_segment.c.save -rw-rw-r-- 1 hald hald 9884 Nov 20 21:41 x12_dict_inter_segment.o -rw-rw-r-- 1 hald hald 1442160 Nov 21 17:34 x12_dict_segment.c -rw-rw-r-- 1 hald hald 1442160 Nov 19 11:11 x12_dict_segment.c.save -rw-rw-r-- 1 hald hald 1281264 Nov 20 21:42 x12_dict_segment.o -rw-rw-r-- 1 hald hald 1507072 Nov 21 17:32 x12_dict_transaction.c -rw-rw-r-- 1 hald hald 1507072 Nov 21 12:24 x12_dict_transaction.c.save -rw-rw-r-- 1 hald hald 1271852 Nov 20 21:42 x12_dict_transaction.o -rwxrwxr-x 1 hald hald 147327 Nov 22 00:18 x12_pdf2c -rw-rw-r-- 1 hald hald 158040 Nov 25 11:11 x12_pdf2c.c -rw-rw-r-- 1 hald hald 147959 Nov 21 17:46 x12_pdf2c.c.final -rw-rw-r-- 1 hald hald 141628 Nov 22 00:18 x12_pdf2c.o -rw------- 1 hald hald 18530 Apr 4 2004 XML2002Paper.html -rwxrwxr-x 1 hald hald 2424130 Nov 21 00:41 xml_element -rw-rw-r-- 1 hald hald 4985 Nov 19 10:56 xml_element.c -rwxrwxr-x 1 hald hald 1043809 Nov 21 00:41 xml_segment -rw-rw-r-- 1 hald hald 6156 Nov 19 10:32 xml_segment.c -rwxrwxr-x 1 hald hald 933958 Nov 21 00:40 xml_transaction -rw-rw-r-- 1 hald hald 7104 Nov 19 11:00 xml_transaction.c -rw-rw-r-- 1 hald hald 21 Nov 19 13:12 xxq.c [hald@apollo x12]$ screen -r
[hald@apollo ~]$ cd projects/x12/ [hald@apollo x12]$ gdb ./xml_transaction GNU gdb Red Hat Linux (6.1post-1.20040607.43rh) Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1".
(gdb) break 41 Breakpoint 1 at 0x8048999: file xml_transaction.c, line 41. (gdb) r Starting program: /home/hald/projects/x12/xml_transaction [Thread debugging using libthread_db enabled] [New Thread -151071040 (LWP 2546)] [Switching to Thread -151071040 (LWP 2546)]
Breakpoint 1, main (argc=1, argv=0xfefece44) at xml_transaction.c:41 41 if(t->functional_group_identifier != NULL) ============================================================================
-- Hal Duston