diff options
Diffstat (limited to 'app-shells/bash/files/bashrc-r1')
-rw-r--r-- | app-shells/bash/files/bashrc-r1 | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/app-shells/bash/files/bashrc-r1 b/app-shells/bash/files/bashrc-r1 index 61202b61f141..6f4631568119 100644 --- a/app-shells/bash/files/bashrc-r1 +++ b/app-shells/bash/files/bashrc-r1 @@ -5,8 +5,14 @@ if [[ $- != *i* ]]; then return fi -# Disable completion when the input buffer is empty. Requires readline support. -shopt -s no_empty_cmd_completion 2>/dev/null +# A convenient function to determine whether bash has readline support. +genfun_has_readline() [[ $(shopt -p direxpand 2>/dev/null) ]] + +# The following two shell options require for bash to have readline support. +genfun_has_readline && + +# Disable completion when the input buffer is empty. +shopt -s no_empty_cmd_completion && # Append to HISTFILE rather than overwrite upon exiting, per bug #139609. shopt -s histappend @@ -14,8 +20,13 @@ shopt -s histappend # Initialise PROMPT_COMMAND as an array, which is permitted as of bash 5.1. PROMPT_COMMAND=() +# Don't let the user influence the order of sourcing for bash 5.3 or greater. +unset -v GLOBSORT + for _ in /etc/bash/bashrc.d/*; do if [[ $_ == *.@(bash|sh) && -r $_ ]]; then source "$_" fi done + +unset -f genfun_has_readline |