IPython Shell中能否启用括号、引号等符号的自动补全?
当然可以!IPython Shell本身就支持括号、引号以及[{('"这类符号的自动补全/自动匹配功能,只需要简单调整一下配置就行,具体步骤如下:
启用IPython Shell符号自动匹配的步骤
生成IPython配置文件
如果你还没有IPython的配置文件,先在终端里运行这条命令生成:ipython profile create执行后会在
~/.ipython/profile_default/目录下生成一系列配置文件,我们需要修改的是ipython_config.py。修改配置开启自动匹配
打开~/.ipython/profile_default/ipython_config.py,找到(或者直接在文件末尾添加)以下两个配置项,确保它们的值设为True:# 自动匹配括号、方括号、大括号 c.TerminalInteractiveShell.auto_match_parens = True # 自动闭合单引号、双引号 c.TerminalInteractiveShell.auto_close_quotations = True注意如果是新增的行,要去掉前面的注释符号
#,让配置生效。重启IPython Shell
关掉当前的IPython会话,重新打开终端启动IPython,现在你输入(时会自动补上),输入"时自动补上",光标还会停在符号中间,输入体验会顺畅很多。
额外说明
如果你的IPython版本比较旧(比如低于7.x),可能没有auto_close_quotations这个选项,这种情况下最省心的办法是把IPython升级到最新稳定版。要是暂时不想升级,也可以通过配置readline来实现类似功能,但操作会繁琐一些,还是推荐直接升级版本。
内容的提问来源于stack exchange,提问作者securisec
相关产品推荐
相关产品推荐

