~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to README.txt

First programmatic generation of completions.

The list of commands is generated, as is the list of possible switches for
each command. Commands requiring arguments aren't treated specially yet.

For every option name there is a list of switches, and if any switch for the
option is given, then the others will be suppressed.  This might be
incorrect in some cases, but closely mimics the old, static function.  The
list of these switch suppressions might be incomplete, as some switches
might have different alternative forms for different commands, in which
cases only the intersection of all alternatives gets suppressed.  A future
version might do this suppression based on the current command, or drop it
completely.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
=========================================
 
2
  bzr bash-completion script and plugin
 
3
=========================================
 
4
 
 
5
This script generates a shell function which can be used by bash to
 
6
automatically complete the currently typed command when the user
 
7
presses the completion key (usually tab).
 
8
 
 
9
It can be used either as a bzr plugin or directly.
 
10
 
 
11
----------------------------------------
 
12
1. Installing as a plugin
 
13
 
 
14
You only need to do this if you want to use the script as a bzr
 
15
plugin.  Otherwise simply grab the bashcomp.py and place it wherever
 
16
you want.
 
17
 
 
18
  mkdir -p ~/.bazaar/plugins
 
19
  cd ~/.bazaar/plugins
 
20
  bzr co lp:bzr-bash-completion bash_completion
 
21
 
 
22
 
 
23
----------------------------------------
 
24
2. Using as a plugin
 
25
 
 
26
This is the preferred method of generating initializing the
 
27
completion, as it will ensure proper bzr initialization.
 
28
 
 
29
  eval "`bzr bash-completion`"
 
30
 
 
31
 
 
32
----------------------------------------
 
33
3. Using as a script
 
34
 
 
35
As an alternative, if bzrlib is available to python scripts, the
 
36
following invocation should yield the same results without requiring
 
37
you to add a plugin. Might have some issues, though.
 
38
 
 
39
  eval "`./bashcomp.py`"
 
40
 
 
41
----------------------------------------
 
42
4. License
 
43
 
 
44
As this is built upon a bash completion script originally included in
 
45
the bzr source tree, and as the bzr sources are covered by the GPL 2,
 
46
this script here is licensed under these same terms.
 
47
 
 
48
If you require a more liberal license, you'll have to contact all
 
49
those who contributed code to this plugin, be it for bash or for
 
50
python.
 
51
 
 
52
----------------------------------------
 
53
5. History
 
54
 
 
55
The plugin was created by Martin von Gagern in 2009, building on a
 
56
static completion function of very limited scope distributed together
 
57
with bzr.
 
58
 
 
59
----------------------------------------
 
60
6. References
 
61
 
 
62
https://launchpad.net/bzr-bash-completion
 
63
http://bazaar-vcs.org/