Differences between revisions 7 and 9 (spanning 2 versions)
Revision 7 as of 2009-01-17 12:05:39
Size: 2086
Editor: ?VilleSkyttä
Comment: Add external module use case
Revision 9 as of 2009-02-06 22:50:18
Size: 2213
Editor: DavidPaleino
Deletions are marked like this. Additions are marked like this.
Line 12: Line 12:
  * Freddy Vulto
   * COMP_PATH: http://lists.alioth.debian.org/pipermail/bash-completion-devel/2009-January/000734.html
Line 20: Line 22:
Line 42: Line 45:

Bash Completion Team

Proposal: ''New Directory Layout''

General Information


Bash-Completion is currently installed into different paths for each single GNU/Linux distribution. This way, it's not easy for maintainers to "interface" with other distributions' people, so a proposal has been raised to improve the directory layout of Bash-Completion scripts.

Use cases

  • Enable modules system-wide and per-user.
  • Disable modules that have been set system-wide, per-user.
  • Disable slow parts of completions (globally, and per-command).
  • Install "external module" from command's upstream project, enable it by default.

Current status

  • Debian / Ubuntu
    • /etc/bash_completion
    • /etc/bash_completion.d/
  • Fedora / Red Hat
    • /etc/profile.d/bash_completion.sh (loads /etc/bash_completion)
    • /etc/bash_completion
    • /etc/bash_completion.d/ (loaded by vanilla /etc/bash_completion)
    • ~/.bash_completion (loaded by vanilla /etc/bash_completion)
  • Gentoo
    • /etc/profile.d/bash-completion.sh
    • /etc/bash_completion.d/ (enabled modules symlinked here)
    • ~/.bash_completion.d/ (user enabled modules symlinked here)
    • /usr/share/bash-completion/ (modules go here)
    • /usr/share/bash-completion/base (base module, splited out)
    • /usr/share/bash-completion/{.pre,.post} (initializations and cleanups, splited out)
  • Mandriva
    • /etc/bash_completion
    • /etc/bash_completion.d/
    • /etc/profile.d/*bash_completion.sh
    • /etc/sysconfig/bash-completion
    • ~/.bash_completion