diff --git a/top/top.1 b/top/top.1 index 6620d632..3d8c2d64 100644 --- a/top/top.1 +++ b/top/top.1 @@ -90,7 +90,7 @@ . .\" Document ///////////////////////////////////////////////////////////// .\" ---------------------------------------------------------------------- -.TH TOP 1 "November 2012" "procps-ng" "User Commands" +.TH TOP 1 "January 2013" "procps-ng" "User Commands" .\" ---------------------------------------------------------------------- .\" ---------------------------------------------------------------------- @@ -1662,6 +1662,10 @@ available in \*(AM if the \*(CW's \*(TD has been toggled \*F. filtering \*F to ensure that every task is encountered. \*(XC 'i' and 'u/U' \*(CIs for additional information on how displayed tasks might be filtered. +Additionally, \*(We will turn column highlighting \*F to prevent false +matches on internal non-display escape sequences. +Such highlighting will be restored when a window's search string is empty. +\*(XC 'x' \*(CI for additional information on sort column highlighting. .\" ---------------------------------------------------------------------- .SH 6. FILES diff --git a/top/top.c b/top/top.c index 1257f4de..92ea0f37 100644 --- a/top/top.c +++ b/top/top.c @@ -3123,6 +3123,9 @@ static void configs_read (void) { goto default_or_error; break; } +#ifndef USE_X_COLHDR + OFFw(w, NOHICOL_xxx); +#endif } // end: for (GROUPSMAX) // any new addition(s) last, for older rcfiles compatibility... @@ -3766,6 +3769,10 @@ static void find_string (int ch) { snprintf(Curwin->findstr, FNDBUFSIZ, "%s", linein(N_txt(GET_find_str_txt))); Curwin->findlen = strlen(Curwin->findstr); found = 0; +#ifndef USE_X_COLHDR + if (Curwin->findstr[0]) SETw(Curwin, NOHICOL_xxx); + else OFFw(Curwin, NOHICOL_xxx); +#endif } if (Curwin->findstr[0]) { SETw(Curwin, INFINDS_xxx); @@ -4626,7 +4633,7 @@ static const char *task_show (const WIN_t *q, const proc_t *p) { case X_XON: case X_XOF: cp = NULL; - if (!CHKw(q, INFINDS_xxx)) { + if (!CHKw(q, INFINDS_xxx | NOHICOL_xxx)) { /* treat running tasks specially - entire row may get highlighted so we needn't turn it on and we MUST NOT turn it off */ if (!('R' == p->state && CHKw(q, Show_HIROWS))) diff --git a/top/top.h b/top/top.h index 4ef4efc5..2474536e 100644 --- a/top/top.h +++ b/top/top.h @@ -298,6 +298,9 @@ typedef struct CPU_t { // these flag(s) have no command as such - they're for internal use #define INFINDS_xxx 0x010000 // build rows for find_string, not display #define EQUWINS_xxx 0x000001 // rebalance all wins & tasks (off i,n,u/U) +#ifndef USE_X_COLHDR +#define NOHICOL_xxx 0x100000 // must restrict Show_HICOLS temporarily +#endif // Default flags if there's no rcfile to provide user customizations #define DEF_WINFLGS ( View_LOADAV | View_STATES | View_CPUSUM | View_MEMORY \