.
.ll +(\n[half_xtra] + \n[half_xtra])
.
-\# ** we use single quote char (') alot, so change the no-break ctrl char
+\# ** we use single quote char (') a lot, so change the no-break ctrl char
.c2 `
.
\# Our own Bullet style(s) --------------------------
\# - our em-dashes
.ds Em \fR\ \--\ \fR
.ds EM \fB\ \--\ \fR
-\# - our program name (makes great grammer)
+\# - our program name (makes great grammar)
.ds We top
.ds WE \fBtop\fR
\# - other misc strs for consistent usage
When you've chosen to display command lines, processes without a command
line (like kernel threads) will be shown with only the program name in
brackets, as in this example:
- \fR[ mdrecoveryd ]
+ \fR[kthreadd]
This field may also be impacted by the 'forest view' display mode.
\*(XC 'V' \*(CI for additional information regarding that mode.
* routine may serve more than one column.
*/
-SCB_STRV(CGR, 1, cgroup, cgroup[0])
+SCB_STRS(CGR, cgroup[0])
SCB_STRV(CMD, Frame_cmdlin, cmdline, cmd)
SCB_NUM1(COD, trs)
SCB_NUMx(CPN, processor)
#ifdef ATEOJ_RPTSTD
{ proc_t *p;
- if (!str) { fprintf(stderr,
+ if (!str && Ttychanged) { fprintf(stderr,
"\n%s's Summary report:"
"\n\tProgram"
"\n\t Linux version = %u.%u.%u, %s"
#ifndef OFF_HST_HASH
#ifdef ATEOJ_RPTHSH
- if (!str) {
+ if (!str && Ttychanged) {
int i, j, pop, total_occupied, maxdepth, maxdepth_sav, numdepth
, cross_foot, sz = HHASH_SIZ * (unsigned)sizeof(int);
int depths[HHASH_SIZ];
// a temporary macro, soon to be undef'd...
#define SF(f) (QFP_t)SCB_NAME(f)
-/* .head + .fmts anomolies:
+/* .head + .fmts anomalies:
entries shown with NULL are either valued at runtime (see zap_fieldstab)
or, in the case of .fmts, may represent variable width fields
- .desc anomolies:
+ .desc anomalies:
the .desc field is always null initially, under nls support
- .lflg anomolies:
+ .lflg anomalies:
P_UED, L_NONE - natural outgrowth of 'stat()' in readproc (euid)
P_CPU, L_stat - never filled by libproc, but requires times (pcpu)
P_CMD, L_stat - may yet require L_CMDLINE in calibrate_fields (cmd/cmdline)
/*
- * This guy coordinates the activities surrounding the maintainence
+ * This guy coordinates the activities surrounding the maintenance
* of each visible window's columns headers and the library flags
* required for the openproc interface. */
static void calibrate_fields (void) {
* xPRFX ----------______________________ xSUFX
* ( xPRFX has pos 2 & 10 for 'extending' when at minimums )
*
- * The first 4 screen rows are reserved for explanatory text.
- * Thus, with our current 39 fields, a maximum of 6 columns and
- * 1 space between columns, a tty will still remain useable under
- * these extremes:
- * rows cols displayed
- * ---- ---- ------------------
- * 11 66 xPRFX only (w/ room for +3)
- * 11 198 full xPRFX + xSUFX (w/ room for +3)
- * 24 22 xPRFX only (w/ room for +1)
- * 24 66 full xPRFX + xSUFX (w/ room for +1)
+ * The first 4 screen rows are reserved for explanatory text, the
+ * maximum number of columns is currently 6 and a space is needed
+ * between columns. Thus, for example, with 40 fields a tty will
+ * still remain useable under these extremes:
+ * rows cols displayed
+ * ---- ---- ------------------
+ * 24 22 xPRFX only
+ * 24 66 full xPRFX + xSUFX
+ * 11 66 xPRFX only ( w/ room for +2 )
+ * 11 198 full xPRFX + xSUFX ( w/ room for +2 )
* ( if not, the user deserves our most cryptic messages )
*/
static void display_fields (int focus, int extend) {
case 'w':
Curwin = w = ('a' == key) ? w->next : w->prev;
spewFI
- p = NULL;
- h = NULL;
+ h = p = NULL;
break;
default: // keep gcc happy
break;
* No matter what *they* say, we handle the really really BIG and
* IMPORTANT stuff upon which all those lessor functions depend! */
static void before (char *me) {
- static proc_t p;
struct sigaction sa;
+ proc_t p;
int i;
+ atexit(close_stdout);
+
// is /proc mounted?
look_up_our_self(&p);
* duh... */
int main (int dont_care_argc, char **argv) {
(void)dont_care_argc;
- atexit(close_stdout);
before(*argv);
// +-------------+
wins_stage_1(); // top (sic) slice
#define LRGBUFSIZ 512
#define OURPATHSZ 1024
#define BIGBUFSIZ 2048
- /* in addition to the actual display data, our row might have to accomodate
+ /* in addition to the actual display data, our row might have to accommodate
many termcap/color transitions - these definitions ensure we have room */
#define ROWMINSIZ ( SCREENMAX + 4 * (CAPBUFSIZ + CLRBUFSIZ) )
#define ROWMAXSIZ ( SCREENMAX + 16 * (CAPBUFSIZ + CLRBUFSIZ) )
/* This structure stores configurable information for each window.
By expending a little effort in its creation and user requested
- maintainence, the only real additional per frame cost of having
+ maintenance, the only real additional per frame cost of having
windows is an extra sort -- but that's just on pointers! */
typedef struct WIN_t {
FLG_t pflgsall [PFLAGSSIZ], // all 'active/on' fieldscur, as enum