projects
/
dus.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
2569cd7
)
Added "..." to tty display when the list is truncated.
author
Francois Fleuret
<francois@fleuret.org>
Tue, 16 Mar 2010 17:53:31 +0000
(18:53 +0100)
committer
Francois Fleuret
<francois@fleuret.org>
Tue, 16 Mar 2010 17:53:31 +0000
(18:53 +0100)
dus.c
patch
|
blob
|
history
diff --git
a/dus.c
b/dus.c
index
a0e1957
..
40d5a16
100644
(file)
--- a/
dus.c
+++ b/
dus.c
@@
-273,37
+273,41
@@
void print_sorted(struct file_with_size *root, int width, int height) {
char line[BUFFER_SIZE];
struct file_with_size *node;
struct file_with_size **nodes;
char line[BUFFER_SIZE];
struct file_with_size *node;
struct file_with_size **nodes;
- int nb, n, first, last;
+ int nb
_nodes
, n, first, last;
- nb = 0;
+ nb
_nodes
= 0;
for(node = root; node; node = node->next) {
for(node = root; node; node = node->next) {
- nb++;
+ nb
_nodes
++;
}
}
- nodes = safe_malloc(nb * sizeof(struct file_with_size *));
+ nodes = safe_malloc(nb
_nodes
* sizeof(struct file_with_size *));
n = 0;
for(node = root; node; node = node->next) {
nodes[n++] = node;
}
n = 0;
for(node = root; node; node = node->next) {
nodes[n++] = node;
}
- qsort(nodes, nb, sizeof(struct file_with_size *), compare_files);
+ qsort(nodes, nb
_nodes
, sizeof(struct file_with_size *), compare_files);
first = 0;
first = 0;
- last = nb;
+ last = nb
_nodes
;
if(forced_height) {
height = forced_height;
}
if(forced_height) {
height = forced_height;
}
- if(height > 0 && height < nb) {
- first = nb - height;
+ if(height >= 0 && nb_nodes > height && !show_top && !forced_height) {
+ printf("...\n");
+ }
+
+ if(height > 0 && height < nb_nodes) {
+ first = nb_nodes - height;
}
if(show_top) {
n = last;
}
if(show_top) {
n = last;
- last = nb - first;
- first = nb - n;
+ last = nb
_nodes
- first;
+ first = nb
_nodes
- n;
}
for(n = first; n < last; n++) {
}
for(n = first; n < last; n++) {
@@
-320,9
+324,15
@@
void print_sorted(struct file_with_size *root, int width, int height) {
}
}
}
}
+ if(height >= 0 && nb_nodes > height && show_top && !forced_height) {
+ printf("...\n");
+ }
+
free(nodes);
}
free(nodes);
}
+
/**********************************************************************/
/**********************************************************************/
+
void print_help(FILE *out) {
fprintf(out, "Usage: dus [OPTION]... [FILE]...\n");
fprintf(out, "Version %s (%s)\n", VERSION_NUMBER, UNAME);
void print_help(FILE *out) {
fprintf(out, "Usage: dus [OPTION]... [FILE]...\n");
fprintf(out, "Version %s (%s)\n", VERSION_NUMBER, UNAME);