From 777e1a757a82a182eb3f74507c7a64e7617e23d8 Mon Sep 17 00:00:00 2001 From: Martin Dvorak Date: Mon, 20 Aug 2018 10:58:17 +0200 Subject: [PATCH] Finishing Bash autocomplete which resolves #255 --- Makefile.am | 2 +- build/ubuntu/bash-autocomplete/hh | 48 +++++++++++++++++++++++ build/ubuntu/bash/hstr-bash-completion.sh | 25 ------------ 3 files changed, 49 insertions(+), 26 deletions(-) create mode 100755 build/ubuntu/bash-autocomplete/hh delete mode 100755 build/ubuntu/bash/hstr-bash-completion.sh diff --git a/Makefile.am b/Makefile.am index 5ab4413..7d52748 100644 --- a/Makefile.am +++ b/Makefile.am @@ -3,5 +3,5 @@ SUBDIRS = src man if ENABLE_BASH_COMPLETION bashcompletiondir = $(BASH_COMPLETION_DIR) -dist_bashcompletion_DATA = build/ubuntu/bash/hstr-bash-completion.sh +dist_bashcompletion_DATA = build/ubuntu/bash-autocomplete/hh endif diff --git a/build/ubuntu/bash-autocomplete/hh b/build/ubuntu/bash-autocomplete/hh new file mode 100755 index 0000000..61f347f --- /dev/null +++ b/build/ubuntu/bash-autocomplete/hh @@ -0,0 +1,48 @@ +#!/bin/bash +# +# Copyright (C) 2014-2018 Martin Dvorak +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Bash completion support for HSTR + +# Source this file or install it to /usr/share/bash-completion/completions or /etc/bash_completion.d/ +# See https://iridakos.com/tutorials/2018/03/01/bash-programmable-completion-tutorial.html +# help complete +# complete -W "--favorites --kill-last-command --non-interactive --show-configuration --show-zsd-configuration --show-blacklist --version --help" hh + +_hh() +{ + local cur prev OPTS + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + case $prev in + '-h'|'--help'|'-v'|'--version') + return 0 + ;; + esac + case $cur in + -*) + OPTS="--favorites --kill-last-command --non-interactive --show-configuration --show-zsd-configuration --show-blacklist --version --help" + COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) + return 0 + ;; + esac + compopt -o bashdefault + COMPREPLY=( $(compgen -c -- $cur) ) + return 0 +} +complete -F _hh hh + +# eof diff --git a/build/ubuntu/bash/hstr-bash-completion.sh b/build/ubuntu/bash/hstr-bash-completion.sh deleted file mode 100755 index 917f869..0000000 --- a/build/ubuntu/bash/hstr-bash-completion.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright (C) 2014-2018 Martin Dvorak -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Bash completion support for HSTR - -# Source this file or install it to /etc/bash_completion.d/ -# https://iridakos.com/tutorials/2018/03/01/bash-programmable-completion-tutorial.html -# https://www.swansontec.com/bash-completion.html -# help complete -complete -W "--favorites --kill-last-command --non-interactive --show-configuration --show-zsd-configuration --show-blacklist --version --help" hh - -# eof