-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Hi,

Here is a patch that makes top(1) to inverse its table header (PID
USERNAME THR, etc).

Cheers,
- -- 
Xin LI <delp...@delphij.net>    http://www.delphij.net/
FreeBSD - The Power to Serve!          Live free or die
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.16 (FreeBSD)

iQEcBAEBCAAGBQJMxiQSAAoJEATO+BI/yjfBbcgH/iy/y0MBHY++srGtZc5BqyWm
Kh0jpRKdE1f7G708Zok501b3rbVqeXTqAHcBU/xA0JNRruTYn7ByU2kijsuMBeQC
eB6LK8wurtLHu+kqBzbbgmyeUIonWht25RWrqXH1Hr1zSoTmpAOdQKz0RCoQu2W5
yeJyS9geQoZXaTTbxHrCpYbUjQ2vp6+gvBVhi5n7c4lT0wBZJ/7p1LJOu2DiGHVO
TWlBh+SjKoZWrLt7LqxU/dyJ6kxpl3RVNBlRlIvL/jn/ICBBhgSfldzpckAQJ/Bt
IgPTfiKjax+38RH3L62ob9B99nPF5V7Jc3JKTWdDCuJren8MH0zdtC1zM4KG8NA=
=6RQi
-----END PGP SIGNATURE-----
Index: contrib/top/display.c
===================================================================
--- contrib/top/display.c       (revision 214355)
+++ contrib/top/display.c       (working copy)
@@ -694,7 +694,7 @@
        int width;
 
        s = NULL;
-       width = display_width;
+       width = screen_width;
        header_length = strlen(text);
        if (header_length >= width) {
                s = malloc((width + 1) * sizeof(char));
@@ -702,6 +702,14 @@
                        return (NULL);
                strncpy(s, text, width);
                s[width] = '\0';
+       } else {
+               s = malloc((width + 1) * sizeof(char));
+               if (s == NULL)
+                       return (NULL);
+               strncpy(s, text, width);
+               while (screen_width > header_length)
+                       s[header_length++] = ' ';
+               s[width] = '\0';
        }
        return (s);
 }
@@ -726,7 +734,7 @@
     if (header_status == ON)
     {
        putchar('\n');
-       fputs(text, stdout);
+       standout(text, stdout);
        lastline++;
     }
     else if (header_status == ERASE)
Index: contrib/top/top.h
===================================================================
--- contrib/top/top.h   (revision 214355)
+++ contrib/top/top.h   (working copy)
@@ -14,7 +14,7 @@
 extern int Header_lines;       /* 7 */
 
 /* Maximum number of columns allowed for display */
-#define MAX_COLS       128
+#define MAX_COLS       512
 
 /* Log base 2 of 1024 is 10 (2^10 == 1024) */
 #define LOG1024                10
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to