Fix #27: use catfish as default search utility

This commit is contained in:
Arun Prakash Jana 2017-05-15 20:14:13 +05:30
parent ba49beac79
commit 71bc3c7432
No known key found for this signature in database
GPG key ID: A75979F35C080412
5 changed files with 28 additions and 1 deletions

View file

@ -146,6 +146,7 @@ Right, Enter, l, ^M | Open file or enter dir
- | Jump to last visited dir
o | Open dir in NNN_DE_FILE_MANAGER
/ | Filter dir contents
^/ | Search dir in catfish
c | Show change dir prompt
d | Toggle detail view
D | Toggle current file details screen
@ -200,11 +201,12 @@ nnn is designed to play files using multiple strategies (in order of decreasing
export NNN_OPENER=xdg-open
export NNN_OPENER="gio open"
export NNN_OPENER=gvfs-open
- If nnn recognizes the file extension, it invokes nlay (which invokes the players). Default players:
- If nnn recognizes the file extension, it invokes nlay (which invokes the players). Default apps:
- mpv - audio and video
- viewnior - image
- [zathura](https://pwmt.org/projects/zathura/) - pdf
- vim - plain text
- catfish - search
- to add, remove recognized extensions in nnn, see [how to change file associations](#change-file-associations)
- If a file without any extension is a plain text file, it is opened in EDITOR (fallback vi)
- Set `NNN_FALLBACK_OPENER` as the fallback opener. E.g.:

View file

@ -35,6 +35,8 @@ static struct key bindings[] = {
{ 'l', SEL_GOIN, "", "" },
/* Filter */
{ '/', SEL_FLTR, "", "" },
/* Desktop search */
{ CONTROL('_'), SEL_SEARCH, "", "" },
/* Next */
{ 'j', SEL_NEXT, "", "" },
{ KEY_DOWN, SEL_NEXT, "", "" },

11
nlay
View file

@ -120,3 +120,14 @@ if [ "$2" == "text" ]; then
eval $app $txt_opts "\"$1\"" $bg
exit 0
fi
#----------------- SEARCH -------------------
if [ "$2" == "search" ]; then
app=catfish
#search_opts=
bg=">/dev/null 2>&1 &"
eval $app $search_opts "\"$1\"" $bg
exit 0
fi

2
nnn.1
View file

@ -51,6 +51,8 @@ Change to the last visited directory
Open directory in NNN_DE_FILE_MANAGER
.It Ic /
Change filter (more information below)
.It Ic ^/
Search directory in catfish
.It Ic c
Change into the given directory
.It Ic d

10
nnn.c
View file

@ -84,6 +84,7 @@ enum action {
SEL_BACK,
SEL_GOIN,
SEL_FLTR,
SEL_SEARCH,
SEL_NEXT,
SEL_PREV,
SEL_PGDN,
@ -1212,6 +1213,7 @@ show_help(void)
- | Jump to last visited dir\n\
o | Open dir in NNN_DE_FILE_MANAGER\n\
/ | Filter dir contents\n\
^/ | Search dir in catfish\n\
c | Show change dir prompt\n\
d | Toggle detail view\n\
D | Toggle current file details screen\n\
@ -1658,6 +1660,14 @@ nochange:
if (ndents > 0)
mkpath(path, dents[cur].name, oldpath, PATH_MAX);
goto nochange;
case SEL_SEARCH:
exitcurses();
if (player)
spawn(player, path, "search", NULL, 0);
else
spawn("nlay", path, "search", NULL, 0);
initcurses();
break;
case SEL_NEXT:
if (cur < ndents - 1)
cur++;