+1 for BASHCOMP_* for the setting variables (maybe we can also support a '.bashcomprc' file to allow a user to get rid of the globals)?
Side-looking at this git-completion-thread (http://git.661346.n2.nabble.com/Custom-git-completion-td4479814.html), they're using: _git_foo: for completing `git foo' __git_foo: for public/private functions How are we going to rename the completion functions, for example _cd: _bc_cd? This would mean ideally we're giving away the _bc_* namespace to API users (completion writers). So we'd better leave the _bc_* namespace for completions only and revert to uppercase or two underscores for library functions? What namespace can completion writers safely use for helper functions? _bc_foo_*? Using two underscores for public API functions and three underscores for private is getting confusing I think, so I like the idea of using uppercase _BC_ for public. Maybe we'd better use __BC_ (two underscores and uppercase) for private library functions as well so that __bc_ is also free for completion writers (what are the chances of acroread creating a _bc_filedir or __bc_filedir where they ideally should use _bc_acroread_filedir?). Summary: Completion functions: _bc_* Helper functions for specific completion (foo): _bc_foo_* Public API functions: _BC_* Private functions and private non-local variables: __BC_* Freddy Vulto http://fvue.nl _______________________________________________ Bash-completion-devel mailing list Bash-completion-devel@lists.alioth.debian.org http://lists.alioth.debian.org/mailman/listinfo/bash-completion-devel