summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRodolfo Borges <rodolfo.borges@gmail.com>2011-09-08 21:41:12 -0300
committerYorhel <git@yorhel.nl>2011-09-09 08:47:41 +0200
commit57164c8ca6f6887ba5d396f2b30b004ca65bb758 (patch)
treeaeaf72a5f4e0e6735d44b1d22cc4dc70048fa1fd /src
parent46f033411139674224e0ed0a7932f1f8e7d54852 (diff)
read-only flag
Diffstat (limited to 'src')
-rw-r--r--src/browser.c2
-rw-r--r--src/global.h2
-rw-r--r--src/main.c3
3 files changed, 6 insertions, 1 deletions
diff --git a/src/browser.c b/src/browser.c
index 4fcc3d4..e934591 100644
--- a/src/browser.c
+++ b/src/browser.c
@@ -370,7 +370,7 @@ int browse_key(int ch) {
info_show = 0;
break;
case 'd':
- if(sel == NULL || sel == dirlist_parent)
+ if(read_only || sel == NULL || sel == dirlist_parent)
break;
info_show = 0;
if((t = dirlist_get(1)) == sel)
diff --git a/src/global.h b/src/global.h
index ceb1a2b..71151b5 100644
--- a/src/global.h
+++ b/src/global.h
@@ -71,6 +71,8 @@ struct dir {
/* program state */
extern int pstate;
+/* read-only flag */
+extern int read_only;
/* minimum screen update interval when calculating, in ms */
extern long update_delay;
diff --git a/src/main.c b/src/main.c
index 35aaae9..ed1ce66 100644
--- a/src/main.c
+++ b/src/main.c
@@ -37,6 +37,7 @@ int pstate;
int min_rows = 17,
min_cols = 60;
+int read_only = 0;
long update_delay = 100,
lastupdate = 999;
@@ -118,6 +119,7 @@ char *argv_parse(int argc, char **argv) {
for(j=1; j<len; j++)
switch(argv[i][j]) {
case 'x': calc_smfs = 1; break;
+ case 'r': read_only = 1; break;
case 'q': update_delay = 2000; break;
case '?':
case 'h':
@@ -126,6 +128,7 @@ char *argv_parse(int argc, char **argv) {
printf(" -q Quiet mode, refresh interval 2 seconds\n");
printf(" -v Print version\n");
printf(" -x Same filesystem\n");
+ printf(" -r Read only\n");
printf(" --exclude PATTERN Exclude files that match PATTERN\n");
printf(" -X, --exclude-from FILE Exclude files that match any pattern in FILE\n");
exit(0);