Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
镜像
Python_Packaging_Authority
pip
提交
ca9acb26
P
pip
项目概览
镜像
/
Python_Packaging_Authority
/
pip
12 个月 前同步成功
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
pip
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
ca9acb26
编写于
3月 09, 2010
作者:
C
Carl Meyer
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
make completion allow global options before subcommand
上级
107835ec
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
17 addition
and
11 deletion
+17
-11
pip/__init__.py
pip/__init__.py
+17
-11
未找到文件。
pip/__init__.py
浏览文件 @
ca9acb26
...
...
@@ -30,18 +30,17 @@ def autocomplete():
subcommands
=
[
cmd
for
cmd
,
cls
in
command_dict
.
items
()
if
not
cls
.
hidden
]
options
=
[]
# subcommand
if
cword
==
1
:
# show options of main parser only when necessary
if
current
.
startswith
(
'-'
)
or
current
.
startswith
(
'--'
):
subcommands
+=
[
opt
.
get_opt_string
()
for
opt
in
parser
.
option_list
if
opt
.
help
!=
optparse
.
SUPPRESS_HELP
]
print
' '
.
join
(
filter
(
lambda
x
:
x
.
startswith
(
current
),
subcommands
))
try
:
subcommand_name
=
[
w
for
w
in
cwords
if
w
in
subcommands
][
0
]
except
IndexError
:
subcommand_name
=
None
# subcommand options
# special case: the 'help' subcommand has no options
elif
cwords
[
0
]
in
subcommands
and
cwords
[
0
]
!=
'help'
:
if
subcommand_name
:
# special case: 'help' subcommand has no options
if
subcommand_name
==
'help'
:
sys
.
exit
(
1
)
# special case: list locally installed dists for uninstall command
if
cwords
[
0
]
==
'uninstall'
and
not
current
.
startswith
(
'-'
):
if
subcommand_name
==
'uninstall'
and
not
current
.
startswith
(
'-'
):
installed
=
[]
lc
=
current
.
lower
()
for
dist
in
get_installed_distributions
(
local_only
=
True
):
...
...
@@ -52,7 +51,7 @@ def autocomplete():
for
dist
in
installed
:
print
dist
sys
.
exit
(
1
)
subcommand
=
command_dict
.
get
(
cwords
[
0
]
)
subcommand
=
command_dict
.
get
(
subcommand_name
)
options
+=
[(
opt
.
get_opt_string
(),
opt
.
nargs
)
for
opt
in
subcommand
.
parser
.
option_list
if
opt
.
help
!=
optparse
.
SUPPRESS_HELP
]
...
...
@@ -67,6 +66,13 @@ def autocomplete():
if
option
[
1
]:
opt_label
+=
'='
print
opt_label
else
:
# show options of main parser only when necessary
if
current
.
startswith
(
'-'
)
or
current
.
startswith
(
'--'
):
subcommands
+=
[
opt
.
get_opt_string
()
for
opt
in
parser
.
option_list
if
opt
.
help
!=
optparse
.
SUPPRESS_HELP
]
print
' '
.
join
(
filter
(
lambda
x
:
x
.
startswith
(
current
),
subcommands
))
sys
.
exit
(
1
)
def
main
(
initial_args
=
None
):
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录