Date: Mon, 25 Oct 2010 17:42:59 -0700 From: Xin LI <delphij@delphij.net> To: FreeBSD Current <freebsd-current@FreeBSD.ORG> Subject: [PATCH] top(1) inverse display of table header Message-ID: <4CC62413.50703@delphij.net>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] -----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 <delphij@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----- [-- Attachment #2 --] 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4CC62413.50703>
