add bash completion

This commit is contained in:
Leon Henrik Plickat 2024-03-28 19:11:46 +01:00
parent dffcf3d8fc
commit 54230d76e6
No known key found for this signature in database
GPG Key ID: BEE123381A011200
2 changed files with 17 additions and 1 deletions

View File

@ -3,6 +3,7 @@ SCANNER := wayland-scanner
PREFIX=/usr/local
BINDIR=$(PREFIX)/bin
MANDIR=$(PREFIX)/share/man
BASHCOMPDIR=$(PREFIX)/share/bash-completion/completions
CFLAGS+=-Wall -Werror -Wextra -Wpedantic -Wno-unused-parameter -Wconversion -Wformat-security -Wformat -Wsign-conversion -Wfloat-conversion -Wunused-result -Wno-strict-prototypes
LIBS=-lwayland-client
@ -25,13 +26,14 @@ install: wlopm
install wlopm $(DESTDIR)$(BINDIR)
install -d $(DESTDIR)$(MANDIR)/man1
install -m 644 wlopm.1 $(DESTDIR)$(MANDIR)/man1
install bash-completion $(DESTDIR)$(BASHCOMPDIR)/wlopm
uninstall:
$(RM) $(DESTDIR)$(BINDIR)/wlopm
$(RM) $(DESTDIR)$(MANDIR)/man1/wlopm.1
$(RM) $(DESTDIR)$(BASHCOMPDIR)/wlopm
clean:
$(RM) wlopm $(GEN) $(OBJ)
.PHONY: clean install

14
bash-completion Normal file
View File

@ -0,0 +1,14 @@
function __wlopm_completion ()
{
case "${COMP_WORDS[-2]}" in
"--on"|"--off"|"--toggle")
OPTS="$(wlopm | cut -d' ' -f1 | tr '\n' ' ')"
;;
*)
OPTS="-h --help -j --json -v --version --on --off --toggle"
;;
esac
COMPREPLY=($(compgen -W "${OPTS}" -- "${COMP_WORDS[${COMP_CWORD}]}"))
}
complete -F __wlopm_completion wlopm