Browse Source

Support NOICE_FALLBAK_OPENER.

master
Arun Prakash Jana 9 years ago
parent
commit
95ca9c3a95
No known key found for this signature in database GPG Key ID: A75979F35C080412
1 changed files with 12 additions and 3 deletions
  1. +12
    -3
      noice.c

+ 12
- 3
noice.c View File

@@ -86,6 +86,7 @@ struct entry *dents;
int ndents, cur; int ndents, cur;
int idle; int idle;
char *opener = NULL; char *opener = NULL;
char *fallback_opener = NULL;


/* /*
* Layout: * Layout:
@@ -658,7 +659,8 @@ nochange:
char cmd[MAX_LEN]; char cmd[MAX_LEN];
int status; int status;


snprintf(cmd, MAX_LEN, "%s \"%s\" > /dev/null 2>&1", opener, newpath);
snprintf(cmd, MAX_LEN, "%s \"%s\" > /dev/null 2>&1",
opener, newpath);
status = system(cmd); status = system(cmd);
continue; continue;
} }
@@ -686,10 +688,14 @@ nochange:


if (strstr(cmd, "ASCII text") != NULL) if (strstr(cmd, "ASCII text") != NULL)
bin = execvim; bin = execvim;
else {
snprintf(cmd, MAX_LEN, "xdg-open \"%s\" > /dev/null 2>&1", newpath);
else if (fallback_opener) {
snprintf(cmd, MAX_LEN, "%s \"%s\" > /dev/null 2>&1",
fallback_opener, newpath);
status = system(cmd); status = system(cmd);
continue; continue;
} else {
printmsg("No association");
goto nochange;
} }
} }
exitcurses(); exitcurses();
@@ -849,6 +855,9 @@ main(int argc, char *argv[])
/* Get the default desktop mime opener, if set */ /* Get the default desktop mime opener, if set */
opener = getenv("NOICE_OPENER"); opener = getenv("NOICE_OPENER");


/* Get the fallback desktop mime opener, if set */
fallback_opener = getenv("NOICE_FALLBACK_OPENER");

signal(SIGINT, SIG_IGN); signal(SIGINT, SIG_IGN);


/* Test initial path */ /* Test initial path */


Loading…
Cancel
Save