From fe7abd4813c789be5c67883f2a043fab1b46a7c7 Mon Sep 17 00:00:00 2001 From: Koichi Murase Date: Mon, 29 Aug 2022 21:00:37 +0900 Subject: [PATCH] blehook: prefer the uniq "!=" to the addition "+=" --- ble.pp | 4 ++-- contrib | 2 +- keymap/emacs.sh | 2 +- keymap/vi.sh | 10 +++++----- lib/core-complete.sh | 4 ++-- lib/core-syntax.sh | 2 +- lib/init-msleep.sh | 2 +- note.txt | 4 ++-- src/color.sh | 2 +- src/def.sh | 8 ++++---- src/edit.sh | 12 ++++++------ src/history.sh | 6 +++--- src/util.hook.sh | 2 +- src/util.sh | 2 +- 14 files changed, 31 insertions(+), 31 deletions(-) diff --git a/ble.pp b/ble.pp index e147ce0e..39b2a62d 100644 --- a/ble.pp +++ b/ble.pp @@ -2037,7 +2037,7 @@ function ble/base/install-prompt-attach { ble/array#push PROMPT_COMMAND ble/base/attach-from-PROMPT_COMMAND if [[ $_ble_edit_detach_flag == reload ]]; then _ble_edit_detach_flag=prompt-attach - blehook internal_PRECMD+=ble/base/attach-from-PROMPT_COMMAND + blehook internal_PRECMD!=ble/base/attach-from-PROMPT_COMMAND fi else local save_index=${#_ble_base_attach_PROMPT_COMMAND[@]} @@ -2047,7 +2047,7 @@ function ble/base/install-prompt-attach { ble/function#trace "$PROMPT_COMMAND" if [[ $_ble_edit_detach_flag == reload ]]; then _ble_edit_detach_flag=prompt-attach - blehook internal_PRECMD+="$PROMPT_COMMAND" + blehook internal_PRECMD!="$PROMPT_COMMAND" fi fi } diff --git a/contrib b/contrib index 53a10409..54da9e3e 160000 --- a/contrib +++ b/contrib @@ -1 +1 @@ -Subproject commit 53a104092ee8bbc644979c12a29444a12b73567c +Subproject commit 54da9e3eda385006106d8ca6e2acff7bba164ae9 diff --git a/keymap/emacs.sh b/keymap/emacs.sh index f138768f..0a827e6d 100644 --- a/keymap/emacs.sh +++ b/keymap/emacs.sh @@ -132,7 +132,7 @@ function ble/keymap:emacs/update-mode-indicator { ble/edit/info/default ansi "$str" } -blehook internal_PRECMD+=ble/keymap:emacs/update-mode-indicator +blehook internal_PRECMD!=ble/keymap:emacs/update-mode-indicator ## @fn ble/prompt/backslash:keymap:emacs/mode-indicator function ble/prompt/backslash:keymap:emacs/mode-indicator { diff --git a/keymap/vi.sh b/keymap/vi.sh index 9f0f583a..aa5ddd8c 100644 --- a/keymap/vi.sh +++ b/keymap/vi.sh @@ -270,7 +270,7 @@ function ble/keymap:vi/complete/insert.hook { [[ $_ble_decode_keymap == vi_imap ]] && ble/keymap:vi/undo/add more } -blehook complete_insert+=ble/keymap:vi/complete/insert.hook +blehook complete_insert!=ble/keymap:vi/complete/insert.hook function ble-decode/keymap:vi_imap/bind-complete { ble-bind -f 'C-i' 'vi_imap/complete' @@ -442,7 +442,7 @@ function ble/keymap:vi/info_reveal.hook { _ble_keymap_vi_mode_name_dirty= ble/keymap:vi/update-mode-indicator } -blehook info_reveal+=ble/keymap:vi/info_reveal.hook +blehook info_reveal!=ble/keymap:vi/info_reveal.hook bleopt/declare -v prompt_vi_mode_indicator '\q{keymap:vi/mode-indicator}' function bleopt/check:prompt_vi_mode_indicator { @@ -504,7 +504,7 @@ function ble/keymap:vi/update-mode-indicator { ble/edit/info/default ansi "$str" # 6ms } -blehook internal_PRECMD+=ble/keymap:vi/update-mode-indicator +blehook internal_PRECMD!=ble/keymap:vi/update-mode-indicator ## @fn ble/prompt/backslash:keymap:vi/mode-indicator ## @var[in,opt] prompt_vi_keymap @@ -2416,7 +2416,7 @@ ble/array#push _ble_textarea_local_VARNAMES \ # ble/array#push _ble_edit_dirty_observer ble/keymap:vi/mark/shift-by-dirty-range -blehook history_leave+=ble/keymap:vi/mark/history-onleave.hook +blehook history_leave!=ble/keymap:vi/mark/history-onleave.hook ## @fn ble/keymap:vi/mark/history-onleave.hook function ble/keymap:vi/mark/history-onleave.hook { @@ -2454,7 +2454,7 @@ function ble/keymap:vi/mark/update-mark-history { _ble_keymap_vi_mark_hindex=$h fi } -blehook history_change+=ble/keymap:vi/mark/history-change.hook +blehook history_change!=ble/keymap:vi/mark/history-change.hook ## @fn ble/keymap:vi/mark/history-change.hook 'delete' index... ## @fn ble/keymap:vi/mark/history-change.hook 'clear' ## @fn ble/keymap:vi/mark/history-change.hook 'insert' beg len diff --git a/lib/core-complete.sh b/lib/core-complete.sh index d2b3ad9b..346a0d08 100644 --- a/lib/core-complete.sh +++ b/lib/core-complete.sh @@ -6167,8 +6167,8 @@ function ble/complete/menu/clear { fi return 0 } -blehook widget_bell+=ble/complete/menu/clear -blehook history_leave+=ble/complete/menu/clear +blehook widget_bell!=ble/complete/menu/clear +blehook history_leave!=ble/complete/menu/clear ## @fn ble/complete/menu/get-footprint ## @var[out] footprint diff --git a/lib/core-syntax.sh b/lib/core-syntax.sh index 89e52c24..590e3821 100644 --- a/lib/core-syntax.sh +++ b/lib/core-syntax.sh @@ -7464,7 +7464,7 @@ function ble/highlight/layer:syntax/textarea_render_defer.hook { _ble_syntax_word_defer_umin=-1 _ble_syntax_word_defer_umax=-1 } -blehook textarea_render_defer+=ble/highlight/layer:syntax/textarea_render_defer.hook +blehook textarea_render_defer!=ble/highlight/layer:syntax/textarea_render_defer.hook #%#---------------------------------------------------------------------------- #%# old test samples diff --git a/lib/init-msleep.sh b/lib/init-msleep.sh index 57bbc546..4d0049d3 100644 --- a/lib/init-msleep.sh +++ b/lib/init-msleep.sh @@ -24,5 +24,5 @@ function ble/util/msleep/.load-compiled-builtin { ble/bin/cp "$builtin_path" "$builtin_runpath" || return 1 enable -f "$builtin_runpath" msleep || return 1 - blehook unload+='enable -d ble/builtin/msleep &>/dev/null' + blehook unload!='enable -d ble/builtin/msleep &>/dev/null' } diff --git a/note.txt b/note.txt index 0c7aaa9a..82298eae 100644 --- a/note.txt +++ b/note.txt @@ -1878,8 +1878,6 @@ bash_tips * complete: progcomp 引数について https://github.com/scop/bash-completion/issues/790 - * blehook HOOK+= を HOOK!= に統一する。 - 2022-07-20 * konsole drag&drop @@ -6562,6 +6560,8 @@ bash_tips 2022-08-29 + * 2022-08-23 blehook HOOK+= を HOOK!= に統一する [#D1871] + * 2022-08-14 nix develop が保存された EPOCHREALTIME を復元しようとしている [#D1870] https://discourse.nixos.org/t/nix-print-dev-env-command-shows-some-assinments-to-readonly-variables/20916 https://github.com/NixOS/nix/pull/6800 diff --git a/src/color.sh b/src/color.sh index 0bf75069..f7b4f998 100644 --- a/src/color.sh +++ b/src/color.sh @@ -65,7 +65,7 @@ function ble/color/initialize-term-colors { bleopt term_true_colors="$value" fi } -blehook term_DA2R+=ble/color/initialize-term-colors +blehook term_DA2R!=ble/color/initialize-term-colors function ble-color-show { diff --git a/src/def.sh b/src/def.sh index 57058c27..c7469953 100644 --- a/src/def.sh +++ b/src/def.sh @@ -85,10 +85,10 @@ blehook/declare complete_insert # for compatibility: function blehook/.compatibility-ble-0.3 { - blehook keymap_load+='ble/util/invoke-hook _ble_keymap_default_load_hook' - blehook keymap_emacs_load+='ble/util/invoke-hook _ble_keymap_emacs_load_hook' - blehook keymap_vi_load+='ble/util/invoke-hook _ble_keymap_vi_load_hook' - blehook complete_load+='ble/util/invoke-hook _ble_complete_load_hook' + blehook keymap_load!='ble/util/invoke-hook _ble_keymap_default_load_hook' + blehook keymap_emacs_load!='ble/util/invoke-hook _ble_keymap_emacs_load_hook' + blehook keymap_vi_load!='ble/util/invoke-hook _ble_keymap_vi_load_hook' + blehook complete_load!='ble/util/invoke-hook _ble_complete_load_hook' } function blehook/.compatibility-ble-0.3/check { if ble/is-array _ble_keymap_default_load_hook || diff --git a/src/edit.sh b/src/edit.sh index 55d88771..8395a3f2 100644 --- a/src/edit.sh +++ b/src/edit.sh @@ -2579,7 +2579,7 @@ function ble-edit/attach/.attach { fi ble/builtin/trap/install-hook WINCH readline - blehook internal_WINCH-+=ble-edit/attach/TRAPWINCH + blehook internal_WINCH!=ble-edit/attach/TRAPWINCH ble-edit/adjust-PS1 ble-edit/adjust-READLINE @@ -6403,7 +6403,7 @@ function ble-edit/exec:gexec/.TRAPERR { fi return 0 } -blehook internal_ERR+='ble-edit/exec:gexec/.TRAPERR' +blehook internal_ERR!='ble-edit/exec:gexec/.TRAPERR' # ble-edit/exec:gexec/TERM # @@ -6460,7 +6460,7 @@ function ble-edit/exec:gexec/.begin { # C-c に対して ble/builtin/trap/install-hook INT # 何故か改めて実行しないと有効にならない - blehook internal_INT+='ble-edit/exec:gexec/.TRAPINT' + blehook internal_INT!='ble-edit/exec:gexec/.TRAPINT' ble-edit/exec:gexec/.TRAPDEBUG/restore } function ble-edit/exec:gexec/.end { @@ -7279,7 +7279,7 @@ function ble-edit/undo/history-change.hook { ((_ble_edit_undo_hindex+=len)) ;; esac } -blehook history_change+=ble-edit/undo/history-change.hook +blehook history_change!=ble-edit/undo/history-change.hook ## @fn ble-edit/undo/.get-current-state ## @var[out] str ind @@ -7542,7 +7542,7 @@ function ble-edit/history/history-message.hook { ble/edit/info/immediate-default fi } -blehook history_message+=ble-edit/history/history-message.hook +blehook history_message!=ble-edit/history/history-message.hook # #------------------------------------------------------------------------------ @@ -9772,7 +9772,7 @@ if [[ $bleopt_internal_suppress_bash_output ]]; then ble/builtin/trap/invoke USR1 } blehook/declare internal_USR1 - blehook internal_USR1+=ble-edit/io/TRAPUSR1 + blehook internal_USR1!=ble-edit/io/TRAPUSR1 ble/builtin/trap/install-hook USR1 function ble-edit/io/check-ignoreeof-message { diff --git a/src/history.sh b/src/history.sh index c02b5611..78f8b850 100644 --- a/src/history.sh +++ b/src/history.sh @@ -423,7 +423,7 @@ if ((_ble_bash>=40000)); then [[ $opt_async ]] && ! ble/util/idle/IS_IDLE && return 148 done } - blehook history_reset_background+=_ble_history_load_resume=0 + blehook history_reset_background!=_ble_history_load_resume=0 else function ble/history:bash/load/.generate-source { if ble/builtin/history/is-empty; then @@ -828,7 +828,7 @@ if ((_ble_bash>=30100)); then ((_ble_bash>=40000)) && ble/util/idle.push 'ble/history:bash/resolve-multiline async' - blehook history_reset_background+=_ble_history_mlfix_resume=0 + blehook history_reset_background!=_ble_history_mlfix_resume=0 function ble/history:bash/resolve-multiline/readfile { local filename=$1 @@ -1179,7 +1179,7 @@ function ble/builtin/history/array#insert-range { for i in "${!out[@]}"; do ARR[i]=${out[i]}; done' builtin eval -- "${script//ARR/$array_name}" } -blehook history_change+=ble/builtin/history/change.hook +blehook history_change!=ble/builtin/history/change.hook function ble/builtin/history/change.hook { local kind=$1; shift case $kind in diff --git a/src/util.hook.sh b/src/util.hook.sh index af307016..d286e38b 100644 --- a/src/util.hook.sh +++ b/src/util.hook.sh @@ -726,7 +726,7 @@ function ble/builtin/trap/.TRAPRETURN { esac return 0 } -blehook internal_RETURN+=ble/builtin/trap/.TRAPRETURN +blehook internal_RETURN!=ble/builtin/trap/.TRAPRETURN # user trap handler 専用の $?, $_ の記録。 _ble_builtin_trap_user_lastcmd= diff --git a/src/util.sh b/src/util.sh index 34a7923f..d9be4092 100644 --- a/src/util.sh +++ b/src/util.sh @@ -5215,7 +5215,7 @@ function ble/term/.initialize { fi ble/string#reserve-prototype "$_ble_term_it" - blehook term_DA2R+=ble/term/DA2R.hook + blehook term_DA2R!=ble/term/DA2R.hook } ble/term/.initialize