Skip to content

Commit 4e7a985

Browse files
committed
lib/preexec: trim whitespace
Alsö, use `_bash-it-array-contains-element()`
1 parent 0c571b4 commit 4e7a985

File tree

1 file changed

+14
-20
lines changed

1 file changed

+14
-20
lines changed

lib/preexec.bash

Lines changed: 14 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -26,32 +26,25 @@ __bp_install_after_session_init
2626

2727
## Helper functions
2828
function __check_precmd_conflict() {
29-
local f # TODO: trim whitespace like preexec does
30-
for f in "${precmd_functions[@]}"; do
31-
if [[ "${f}" == "${1}" ]]; then
32-
return 0
33-
fi
34-
done
35-
return 1
29+
local f
30+
__bp_trim_whitespace f "${1?}"
31+
! _bash-it-array-contains-element "${f}" "${precmd_functions[@]}"
3632
}
3733

3834
function __check_preexec_conflict() {
39-
local f # TODO: trim whitespace like preexec does
40-
for f in "${preexec_functions[@]}"; do
41-
if [[ "${f}" == "${1}" ]]; then
42-
return 0
43-
fi
44-
done
45-
return 1
35+
local f
36+
__bp_trim_whitespace f "${1?}"
37+
! _bash-it-array-contains-element "${f}" "${preexec_functions[@]}"
4638
}
4739

4840
function safe_append_prompt_command {
49-
local prompt_re
41+
local prompt_re f
42+
__bp_trim_whitespace f "${1?}"
5043

5144
if [ "${__bp_imported:-missing}" == "defined" ]; then
5245
# We are using bash-preexec
53-
if ! __check_precmd_conflict "${1}"; then
54-
precmd_functions+=("${1}")
46+
if ! __check_precmd_conflict "${f}"; then
47+
precmd_functions+=("${f}")
5548
fi
5649
else
5750
# Set OS dependent exact match regular expression
@@ -74,12 +67,13 @@ function safe_append_prompt_command {
7467
}
7568

7669
function safe_append_preexec {
77-
local prompt_re
70+
local prompt_re f
71+
__bp_trim_whitespace f "${1?}"
7872

7973
if [ "${__bp_imported:-missing}" == "defined" ]; then
8074
# We are using bash-preexec
81-
if ! __check_preexec_conflict "${1}"; then
82-
preexec_functions+=("${1}")
75+
if ! __check_preexec_conflict "${f}"; then
76+
preexec_functions+=("${f}")
8377
fi
8478
else
8579
_log_error "${FUNCNAME[0]}: can't append to preexec hook because _bash-preexec.sh_ hasn't been loaded"

0 commit comments

Comments
 (0)