mirror of
https://github.com/jarun/nnn.git
synced 2024-11-28 05:41:31 +00:00
Add target norl to drop libreadline
This commit is contained in:
parent
95d0eb6a17
commit
a8388ab60b
10
Makefile
10
Makefile
|
@ -22,7 +22,7 @@ CFLAGS += -Wall -Wextra -Wno-unused-parameter
|
|||
CFLAGS += $(CFLAGS_OPTIMIZATION)
|
||||
CFLAGS += $(CFLAGS_CURSES)
|
||||
|
||||
LDLIBS += -lreadline $(LDLIBS_CURSES)
|
||||
LDLIBS += $(LDLIBS_CURSES)
|
||||
|
||||
DISTFILES = src nnn.1 Makefile README.md LICENSE
|
||||
SRC = src/nnn.c
|
||||
|
@ -33,10 +33,14 @@ all: $(BIN)
|
|||
$(SRC): src/nnn.h
|
||||
|
||||
$(BIN): $(SRC)
|
||||
$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS)
|
||||
$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) -lreadline
|
||||
|
||||
debug: $(SRC)
|
||||
$(CC) -DDBGMODE -g $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $(BIN) $^ $(LDLIBS)
|
||||
$(CC) -DDBGMODE -g $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $(BIN) $^ $(LDLIBS) -lreadline
|
||||
|
||||
norl: $(SRC)
|
||||
$(CC) -DNORL $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $(BIN) $^ $(LDLIBS)
|
||||
$(STRIP) $(BIN)
|
||||
|
||||
install: all
|
||||
$(INSTALL) -m 0755 -d $(DESTDIR)$(PREFIX)/bin
|
||||
|
|
|
@ -135,7 +135,7 @@ Intrigued? Find out [HOW](https://github.com/jarun/nnn/wiki/performance-factors)
|
|||
|
||||
#### Library dependencies
|
||||
|
||||
`nnn` needs a curses library with wide character support (like ncursesw), libreadline and standard libc.
|
||||
`nnn` needs a curses library with wide character support (like ncursesw), libreadline and standard libc. It's possible to drop libreadline using the Makefile target `norl`.
|
||||
|
||||
#### Utility dependencies
|
||||
|
||||
|
|
10
src/nnn.c
10
src/nnn.c
|
@ -79,8 +79,10 @@
|
|||
#include <locale.h>
|
||||
#include <pwd.h>
|
||||
#include <stdio.h>
|
||||
#ifndef NORL
|
||||
#include <readline/history.h>
|
||||
#include <readline/readline.h>
|
||||
#endif
|
||||
#include <regex.h>
|
||||
#include <signal.h>
|
||||
#include <stdarg.h>
|
||||
|
@ -3879,11 +3881,14 @@ nochange:
|
|||
}
|
||||
break;
|
||||
default: /* SEL_RUNCMD */
|
||||
#ifndef NORL
|
||||
if (cfg.picker) {
|
||||
/* readline prompt breaks the interface, use stock */
|
||||
#endif
|
||||
tmp = xreadline(NULL, "> ");
|
||||
if (tmp[0])
|
||||
spawn(shell, "-c", tmp, path, F_NORMAL | F_SIGINT);
|
||||
#ifndef NORL
|
||||
} else {
|
||||
exitcurses();
|
||||
|
||||
|
@ -3909,6 +3914,7 @@ nochange:
|
|||
free(tmp);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
/* Continue in navigate-as-you-type mode, if enabled */
|
||||
|
@ -4243,6 +4249,7 @@ int main(int argc, char *argv[])
|
|||
crc8init();
|
||||
#endif
|
||||
|
||||
#ifndef NORL
|
||||
/* Bind TAB to cycling */
|
||||
rl_variable_bind("completion-ignore-case", "on");
|
||||
#ifdef __linux__
|
||||
|
@ -4251,6 +4258,7 @@ int main(int argc, char *argv[])
|
|||
rl_bind_key('\t', rl_complete);
|
||||
#endif
|
||||
read_history(NULL);
|
||||
#endif
|
||||
|
||||
#ifdef DBGMODE
|
||||
enabledbg();
|
||||
|
@ -4261,7 +4269,9 @@ int main(int argc, char *argv[])
|
|||
browse(ipath);
|
||||
exitcurses();
|
||||
|
||||
#ifndef NORL
|
||||
write_history(NULL);
|
||||
#endif
|
||||
|
||||
if (cfg.pickraw) {
|
||||
if (copybufpos) {
|
||||
|
|
Loading…
Reference in a new issue