Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

000_bash_completion_compat.bash sourced last in some locales #1207

Closed
3 tasks done
liskin opened this issue Jun 3, 2024 · 1 comment · Fixed by #1212
Closed
3 tasks done

000_bash_completion_compat.bash sourced last in some locales #1207

liskin opened this issue Jun 3, 2024 · 1 comment · Fixed by #1212

Comments

@liskin
Copy link

liskin commented Jun 3, 2024

Describe the bug

Scripts in /etc/bash_completion.d/ often rely on the compatibility stuff like the have function but some locales order numbers last, so the compat stuff isn't available.

To reproduce

  1. install something that relies on have being available, such as pmount 0.9.23-7.1 in Debian
  2. LANG=cs_CZ.UTF-8 bash

Expected behavior

no errors, as opposed to bash: have: příkaz nenalezen (which means "command not found")

Versions (please complete the following information)

  • Operating system name/distribution and version: Debian testing (as of 2024-06-03)
  • bash version, echo "$BASH_VERSION": 5.2.21(1)-release
  • bash-completion version, (IFS=.; echo "${BASH_COMPLETION_VERSINFO[*]}"): 2.14.0

Additional context

This glob:

for _comp__init_file in "$_comp__init_compat_dir"/*; do
needs to be evaluated with LC_COLLATE=C.

@akinomyoga
Copy link
Collaborator

@liskin Thanks for the report. We've added a fix in #1212.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants