WhatsNew082

0.8.2 中的新特性

此列表不包含错误修复、增强的内部功能或 API 新增内容。

  • “影子历史”会记住你输入的所有内容,永久保存。还记得三周前输入的那条神秘命令行吗?只需使用 “%hist -g” grep 影子历史即可!参阅食谱 了解更多详情。

  • %rep 是一项新的魔术函数,可让你从历史记录中获取命令行进行编辑。执行 “%rep?” 了解更多详情。

  • 系统命令别名(由 %rehashx 创建)在 win32 中为小写。

  • 宏现在可以接受参数。 参阅食谱

  • 不带参数的 %macro 会列出可用的宏。

  • 目录历史记录(最简单的查看方式是执行 ‘cd -<TAB>’)现在在各个会话中保持一致。

  • ipython -i -c <cmd>:-i (交互) 可防止 IPython 会话在执行 <cmd> 后退出。<cmd> 现在可以包含 IPython 语法(!foo、%magic 等)。

  • 新配置文件:doctest、zope。scipy 现在位于 ipy_profile_scipy.py 中,而不是 ipythonrc-scipy 中。

  • 新扩展

    • ipy_traits_completer.py:完成 Traits 属性

    • ipy_legacy.py:启用已弃用的特性

    • mglob.py:增强的 glob - %mglob !.svn/ rec:*.py

    • ipy_exportdb.py:从你存储的宏、别名、字符串和书签中创建一个可移植的 .py 文件,以便分发。 参阅食谱

    • ipy_render.py:win32:使用 Itpl 格式将模板渲染到剪贴板(例如,渲染 ‘hello $a’)。 参阅食谱

    • ipy_editors.py:为 IPython 准备了许多常用的编辑器。参阅 ipy_user_conf.py 了解如何启用这些编辑器。

    • ipy_fsops.py:为普通(未启用 cygwin)win32 安装提供了有用的 shell 实用工具:icp、imv、imkdir、igrep、irm、collect(collect 对其他人也有用)。

  • 支持 py2exe 版本(ipykit)

  • IPython 窗口的标题栏显示当前正在执行的系统命令。

  • pyshell 中的 win32 提示(‘-p sh’ 配置文件)现在具有驱动器盘符,以增强位置感知,并使用 / 而不是 .

  • 现在,错误信息更简洁(由于 UserError 异常)。

  • 字符串列表提供了一种方便的方式来处理命令输出。参阅 食谱

  • 目录堆栈(%pushd、%popd、%dirs)现在工作得更可预测。

  • %time 允许使用 IPython 表达式(包括系统命令 - 例如,尝试 “%time !ls”)

  • 可调用别名可用于以比魔术命令更优雅的方式扩展 IPython(提供新命令)。此外,不必/不允许使用 %。参阅 ipy_fsops.py 了解示例。

  • 改进了 Leopard 对制表符补全的支持,尽管仍存在一些问题。

已知问题

  • 我们仍然偶尔会因 KeyboardInterrupt 而崩溃(由按 ctrl+C 或 ctrl+break 引起)

  • Unicode 支持尚未完善,因此请注意 Unicode 输入/输出中的问题。

  • 手册已无可救药地过时。这是我们在 0.8.3 周期中将要研究的问题;在此期间,请参阅 wiki [已取代] 上的文档页面,以及用户维护的食谱

  • 在 OSX Leopard 下,我们看到了一些与 readline 相关的历史记录问题。目前尚不清楚问题出在 IPython 还是 Leopard 的 readline 支持本身。我们正在调查这个问题。