From 0fbd68ab48b38319f3f3d516ef4d04d7274db4ac Mon Sep 17 00:00:00 2001 From: Arun Prakash Jana Date: Wed, 21 Aug 2019 20:30:04 +0530 Subject: [PATCH] Use lighter function to print character --- README.md | 2 +- src/nnn.c | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index b187b271..733615ad 100644 --- a/README.md +++ b/README.md @@ -345,7 +345,7 @@ Selected files are visually indicated by a `+` before the entries. The selection can now be listed, copied, moved, removed, archived or linked. -Navigate to a target directory then use V (move) or P (copy) to have the selected files moved or copied. +Navigate to a target directory then use P (cp) or V (mv) to copy or move the selected files. Absolute paths of the selected files are copied to the temporary file `.selection` in the config directory. The path is shown in the help and configuration screen. If `$NNN_COPIER` is set the file paths are also copied to the system clipboard. diff --git a/src/nnn.c b/src/nnn.c index 1fe6a61b..1bc0908e 100644 --- a/src/nnn.c +++ b/src/nnn.c @@ -2330,32 +2330,30 @@ static void printent(const struct entry *ent, int sel, uint namecols) { wchar_t *wstr; unescape(ent->name, namecols, &wstr); - const char cp = (ent->flags & FILE_COPIED) ? '+' : ' '; - char ind[2] = {'\0', '\0'}; - mode_t mode = ent->mode; + char ind = '\0'; - switch (mode & S_IFMT) { + switch (ent->mode & S_IFMT) { case S_IFREG: - if (mode & 0100) - ind[0] = '*'; + if (ent->mode & 0100) + ind = '*'; break; case S_IFDIR: - ind[0] = '/'; + ind = '/'; break; case S_IFLNK: - ind[0] = '@'; + ind = '@'; break; case S_IFSOCK: - ind[0] = '='; + ind = '='; break; case S_IFIFO: - ind[0] = '|'; + ind = '|'; break; case S_IFBLK: // fallthrough case S_IFCHR: break; default: - ind[0] = '?'; + ind = '?'; break; } @@ -2365,9 +2363,11 @@ static void printent(const struct entry *ent, int sel, uint namecols) if (sel) attron(A_REVERSE); - printw("%c", cp); + addch((ent->flags & FILE_COPIED) ? '+' : ' '); addwstr(wstr); - printw("%s\n", ind); + if (ind) + addch(ind); + addch('\n'); if (sel) attroff(A_REVERSE);