IPython 的历史向后搜索未按预期工作

2024-03-27

IPython 的history-search-backward功能是我最喜欢的功能之一。history-search-backward允许您键入命令的一部分,然后在阅读行历史记录中向后搜索以该命令的该部分开头的命令。默认情况下(我相信)这些必然是UpArrow or Ctrl+P and DownArrow or Ctrl+N(分别用于向后和向前)。

他们不为我工作。相反,他们只是线性地浏览我的历史记录,而不是考虑我已经输入的字符来(据称)过滤我的历史记录。

我在 XTerm 中的 Arch Linux 上运行 IPython 0.13.2(使用 Python 2 和 3)。

如果我打Escape, Ctrl+P, then UpArrow and DownArrow完全按照我想要的方式工作。

另外,如果我改变我的ipython_config.py包括

c.TerminalInteractiveShell.readline_parse_and_bind = ['"\\e[B": history-search-forward', '"\\e[A": history-search-backward']

那我就可以做Escape UpArrow以获得所需的行为。 (这是我的配置文件的其余部分 https://github.com/0xtobit/.files/blob/master/ipython_config.py.)

Ctrl+V UpArrow产生^[[A正如我所期望的。我有蟒蛇readline安装了库(这似乎解决了运行 IPython 的 mac 的常见问题)。

我的里面有这些行.bashrc

bind '"\e[A": history-search-backward'
bind '"\e[B": history-search-forward'

它们的工作方式完全符合我的要求bash.

我不知道接下来还要尝试什么,所以我来到了这里。请帮助,我希望我已经包含了足够的信息并做了足够的研究。


罪魁祸首是set keymap vi设置在我的.inputrc。我删除了它,IPython 历史又回到了我的预期。谢谢@托马斯·K https://stackoverflow.com/users/434217/thomas-k!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IPython 的历史向后搜索未按预期工作 的相关文章

  • 在我的代码而不是库代码中出现异常时停止

    我正在使用 Python 库开发一个应用程序urllib有时由于无法访问 URL 会出现异常情况 然而 异常在标准库堆栈中被提升了近 6 个级别 home user Workspace application main py in call
  • IPython shell 的换行问题

    如果我在 IPython 中运行了很长的一行 并尝试调用它 使用向上箭头 或在当前行的开头处退格 则它显示不正确 全部挤成一行 例如 在下面的会话中我写了很长的一行 1 输入了一个有点空白的行 2 然后向上箭头两次以获得print网上声明
  • 如何在 python shell 中重新加载类?

    如果我导入一个定义属于某个包的同名类的模块 则由于父包的 init py 它会作为类导入 而不是模块 看不同目录下导入结果不同 https stackoverflow com questions 6945592 different impo
  • ipython 和 ipython 笔记本之间奇怪的准确度差异,然后使用 fortran 模块和 f2py

    当使用用 f2py 编译的 fortran 模块时 我遇到了 ipython 和 ipython 笔记本之间奇怪的准确性差异 我的 Fortran 模块是 subroutine tt string fmt n num out implici
  • 在 OS X 10.5 上使用 readline 的 rl_insert_text

    因此 我尝试使用 readline 将一些默认文本填充到用户输入中 但无法使其在 OSX 10 5 上工作 rl insert text ex c gcc o rl insert text ex rl insert text ex c lr
  • Jupyter/iPython Notebook 的 Root 访问权限

    我正在尝试在 iPython Jupyter 笔记本中使用 bash 内核 但我需要在笔记本本身内进行 sudo 访问 我试过了 sudo jupyter notebook以 root 身份运行笔记本 但这只会返回 jupyter note
  • 在 ipython 笔记本中测量单元执行时间的简单方法

    除了单元的原始输出之外 我还想获取单元执行所花费的时间 为此 我尝试了 timeit r1 n1但它不会公开单元格内定义的变量 time适用于仅包含 1 条语句的单元格 In 1 time 1 CPU times user 4 s sys
  • 如何使用脚本重新创建 IPython 的“--pylab”选项的效果?

    我想创建一个与 IPython 执行相同操作的配置文件 pylab 用手 标记 为了实现这一目标 脚本的内容应该是什么 包导入 名称空间指定 设置等 作为替代方案 我还想知道是否有一种方法可以检查 pylab当前 IPython 会话启动时
  • IPython 的历史向后搜索未按预期工作

    IPython 的history search backward功能是我最喜欢的功能之一 history search backward允许您键入命令的一部分 然后在阅读行历史记录中向后搜索以该命令的该部分开头的命令 默认情况下 我相信 这
  • ipython笔记本:如何并行化外部脚本

    我正在尝试使用 ipython 并行库中的并行计算 但我对此知之甚少 并且我发现对于对并行计算一无所知的人来说很难阅读该文档 有趣的是 我发现的所有教程都只是重复使用文档中的示例 并具有相同的解释 在我看来 这是毫无用处的 基本上我想做的是
  • 在 IPython 中导入时的最佳实践

    我正在编写一个 py 文件 该文件将在第一个单元格中的一些 IPython 会话开始时定期导入 但也将从其他非交互式会话导入 因为它包含可以在非交互式环境中批量运行的函数 交互模式 它基本上是一个包含许多非常常见的类和函数的模块 因为我使用
  • 如何在 Jupyter 中使用 JavaScript 选择当前单元格?

    我有一个包含 JavaScript 代码的笔记本单元格 我希望代码能够选择这个特定的单元格 不幸的是 get selected cell取决于我是就地执行单元格 还是执行并选择下面的单元格 Example javascript var ce
  • 如何在 ipyparallel 客户端和远程引擎之间最好地共享静态数据?

    我在具有不同参数的循环中运行相同的模拟 每个模拟都使用 pandas DataFrame data 只能读取 不能修改 使用ipyparallel IPython并行 我可以在模拟开始之前将此DataFrame放入我视图中每个引擎的全局变量
  • 如何在numpy中设置最大输出宽度?

    我正在使用 Jupyter 笔记本 我有一个相当宽的屏幕 但是显示的输出 例如 当我打印numpyarray 的格式就像屏幕很窄一样 我找到了一种增加单元格宽度的方法 from IPython core display import HTM
  • 如何在plotly中绘制饼图?

    如何在 fig 中绘制 pie1 子图 使其位于 第一个 位置 我就是这样做的 但没有成功 import pandas as pd import numpy as np import seaborn as sns import plotly
  • Spyder 4 不显示绘图,并显示类似这样的消息“在绘图窗格选项菜单下取消选中“静音内联绘图””。

    我写了这段代码 它应该在spyder ide 中显示绘图 import pandas as pd import numpy as np import matplotlib pyplot as plt from IPython display
  • IPython Notebook 中的“斑马表”?

    我正在 IPython 中使用用于交互式分析的出色 Notebook 和 Pandas 构建一些交互式工作流程 我显示的一些表格通过一些格式化会更容易阅读 我真的很喜欢像 斑马桌 这样的东西 每隔一行都有阴影 我在这里读 http dev
  • ASP Readline 非标准行结尾

    我正在使用 ASP 经典版ReadLine 文件系统对象的功能 一切都进展顺利 直到有人在 Mac 上使用 TextEdit 制作了导入文件 行结尾不相同 并且ReadLine 读入整个文件 而不是一次只读一行 有处理这个问题的标准方法吗
  • Term::ReadLine - 我需要点击向上箭头两次才能检索历史记录

    我正在使用 Term ReadLine 并遇到一个奇怪的问题 我需要点击向上箭头两次才能从 addhistory 中检索项目 这是我正在使用的脚本 use Term ReadLine my term Term ReadLine gt new
  • 更改 IPython 笔记本小部件中标签的大小

    这确实是一个小问题 但仍然很烦人 我正在编写一个工具 允许用户设置一堆数字参数以在 IPython 笔记本中进行分析 我把它设置为一堆FloatTextWidgets in a ContainerWidget 它们有相当长的标签 例如 姿势

随机推荐

  • 模型中的一个或多个参数使用 Ruby on Rails 查找条件

    假设我有模型 汽车 和控制器 汽车 以及方法 显示 我有多个属性 例如 in production year make 我可以轻松地执行类似的操作来查找与传递的所有参数相匹配的汽车 def display cars Car find all
  • MySQL 查询 - 基于两个因素连接数据,然后根据值自定义数据排序方式

    首先 我是查询多个表的新手 所以如果这是一个有点愚蠢的问题 我很抱歉 但我们都必须从某个地方开始 我制作了一张图片 应该更容易理解 http www mediumsliced co uk temp mysqlhelp jpg http ww
  • 为什么 valarray 这么慢?

    我正在尝试使用 valarray 因为它在操作向量和矩阵时非常类似于 MATLAB 我首先做了一些性能检查 发现valarray无法达到书中声明的性能C 编程语言 https en wikipedia org wiki The C 2B 2
  • 为什么 IIS 中的授权规则不会限制对我的 WCF 服务的访问?

    我有一个托管在 IIS 10 中的独立 WCF 服务 我想将对 Web 服务的访问限制为选定的用户组 我可以通过在 IIS 中执行以下操作来为 Web 应用程序执行此操作 身份验证 仅 Windows 身份验证 禁用匿名身份验证 授权规则
  • JAXB:类转换异常,但类具有相同的名称

    我有一个有趣的问题 当我启动 glassfish 服务器时 一切正常 但是 我更改了一些代码并发布了服务器 然后运行我的客户端 SistemGirisClientKullaniciDogrula 应用程序抛出此异常 java lang Cl
  • UnicodeDecodeError:“utf-8”编解码器无法解码位置 34 中的字节 0xe3:无效的连续字节

    我想用以下代码在 python 文件中打开一些波斯语文本文件 for line in codecs open 0001 txt encoding UTF 8 lines appends line 但它给了我这个错误 gt Traceback
  • Primefaces - 用于数据表中实时过滤的自定义组件

    PrimeFaces 对 p dataTable 的过滤器做得非常好 UX 网站很棒 因为过滤器字段位于列标题中 因此毫无疑问您正在过滤什么 并且它正在实时工作 数据会随着您的输入而变化 好吧 只有当您短暂停顿时 但它在我的意见正是用户所期
  • ASP.NET MVC Html 帮助程序

    我尝试创建一些 Html Helpers 它们将具有开始标记和结束标记 其中将包含其他内容 如 Html BeginForm 那样 例如 在 Razor 中 我们可以使用 Html BeginForm 帮助器 其语法如下 using Htm
  • 如何将外部JS脚本添加到VueJS组件中?

    我必须为支付网关使用两个外部脚本 现在两者都被放入index html file 但是 我不想在开始时加载这些文件 仅当用户打开特定组件时才需要支付网关 using router view 有办法实现这个目标吗 Thanks 解决这个问题的
  • 如何手动填充 ViewModel(不使用 AutoMapper!)

    我知道有很多关于这个主题的帖子 但我找不到一个可以帮助我做我想做的事情 我知道我最终会使用 Automapper 但在开始使用它之前 我想学习如何手动执行操作 我想创建一个 ViewModel 通过存储库用我的实体中的值填充它并将其发送到我
  • 从 Mathematica 中的 Web 设置用户代理导入

    当我使用 Mathematica 连接到我的网站时 Import mysite Data 并查看我的 Apache 日志 我看到 99 XXX XXX XXX 22 May 2011 19 36 28 0200 GET HTTP 1 1 2
  • 我可以向 JLabel 添加操作侦听器吗?

    我想用 JLabel 替换 JButton 并且希望我的代码在单击 JLabel 时执行某些操作 当我拥有 JButton 时 我使用操作侦听器来处理按钮上的点击 myButton addActionListener new clicksL
  • 如何在Robot Framework中将图像添加到html日志中?

    如何将图像添加到机器人框架的html日志中 我想在 Robot Framework 的 html 日志中添加一些图片 有人可以对此有一些想法吗 Keyword Log来自内置库有html参数可能可以满足您的需要 参见文档 http robo
  • DDD:通过身份引用聚合根内的实体

    我一直在寻找正确的参考方式entities位于一个聚合根 当我们只得到他们的身份来自 URL 参数 我问了一个上一个问题 https stackoverflow com questions 7196820 update an entity
  • C++ 方法调用中前导“::”的目的是什么[重复]

    这个问题在这里已经有答案了 我一直在使用 Boost 库 在 Boost Exception 中 我注意到如下代码 define BOOST THROW EXCEPTION x boost throw exception x 只是出于好奇
  • 避免控制台消息形式封装函数

    我正在使用一个包函数 coreenv 来自 seewave 它在控制台中创建一条 请稍候 消息 正如我反复所说的那样 该消息非常烦人 所以 我需要一种方法 从我的代码中 暂时禁止控制台消息 OR 访问功能代码并取消消息行 以下不是我的真实代
  • 为什么 JSON 比 XML 更轻量?

    我发现 JSON 和 XML 之间的区别 因为 两者都是为了系统之间的数据交换 但是JSON和XML之间有一个很大的区别 即JSON比XML更轻量级 但我无法找到 JSON 轻量级的真正原因 是什么让 JSON 变得轻量级 我发现的一个答案
  • 在 Mac OS X 上使用 pip 安装 pycrypto 时出现 Broken Pipe 错误

    我正在尝试通过 pip 在 OS X 上安装 pycrypto 版本 2 3 当编译器尝试编译 MD2 c 时 我收到 Broken pipeline 错误 使用 easy install 时我遇到了非常类似的错误 这是我收到的错误 bas
  • 在 Three.js 中针对“子场景”进行光线投射

    因此 我正在使用 Three js 示例中的 webgl interactive cubes html 并且我有一个相对简单的问题 是否可以测试光线与对象的子对象的相交 例如 如果我做类似的事情 for var i 0 i lt 2000
  • IPython 的历史向后搜索未按预期工作

    IPython 的history search backward功能是我最喜欢的功能之一 history search backward允许您键入命令的一部分 然后在阅读行历史记录中向后搜索以该命令的该部分开头的命令 默认情况下 我相信 这