aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dmenu.13
-rw-r--r--lsx.110
-rw-r--r--lsx.c4
3 files changed, 6 insertions, 11 deletions
diff --git a/dmenu.1 b/dmenu.1
index 44c953b..616a2a5 100644
--- a/dmenu.1
+++ b/dmenu.1
@@ -95,4 +95,5 @@ Exit without selecting an item, returning failure.
95.B Ctrl\-y 95.B Ctrl\-y
96Paste the current X selection into the input field. 96Paste the current X selection into the input field.
97.SH SEE ALSO 97.SH SEE ALSO
98.IR dwm (1) 98.IR dwm (1),
99.IR lsx (1)
diff --git a/lsx.1 b/lsx.1
index fbb84ea..1b2a15e 100644
--- a/lsx.1
+++ b/lsx.1
@@ -3,13 +3,9 @@
3lsx \- list executables 3lsx \- list executables
4.SH SYNOPSIS 4.SH SYNOPSIS
5.B lsx 5.B lsx
6.RB [ \-v ]
7.RI [ directory ...] 6.RI [ directory ...]
8.SH DESCRIPTION 7.SH DESCRIPTION
9.B lsx 8.B lsx
10lists the executables in each directory. If no directories are given the current 9lists the executables in each
11working directory is used. 10.IR directory .
12.SH OPTIONS 11If none are given the current working directory is used.
13.TP
14.B \-v
15prints version information to stdout, then exits.
diff --git a/lsx.c b/lsx.c
index 325c508..fd28625 100644
--- a/lsx.c
+++ b/lsx.c
@@ -14,8 +14,6 @@ main(int argc, char *argv[]) {
14 14
15 if(argc < 2) 15 if(argc < 2)
16 lsx("."); 16 lsx(".");
17 else if(!strcmp(argv[1], "-v"))
18 puts("lsx-0.2, © 2006-2011 dmenu engineers, see LICENSE for details");
19 else for(i = 1; i < argc; i++) 17 else for(i = 1; i < argc; i++)
20 lsx(argv[i]); 18 lsx(argv[i]);
21 return EXIT_SUCCESS; 19 return EXIT_SUCCESS;
@@ -34,7 +32,7 @@ lsx(const char *dir) {
34 } 32 }
35 while((d = readdir(dp))) { 33 while((d = readdir(dp))) {
36 snprintf(buf, sizeof buf, "%s/%s", dir, d->d_name); 34 snprintf(buf, sizeof buf, "%s/%s", dir, d->d_name);
37 if(stat(buf, &st) == 0 && S_ISREG(st.st_mode) && access(buf, X_OK) == 0) 35 if(!stat(buf, &st) && S_ISREG(st.st_mode) && access(buf, X_OK) == 0)
38 puts(d->d_name); 36 puts(d->d_name);
39 } 37 }
40 closedir(dp); 38 closedir(dp);