在 IPython qtconsole 中确定终端宽度
Posted
技术标签:
【中文标题】在 IPython qtconsole 中确定终端宽度【英文标题】:Determining terminal width in IPython qtconsole 【发布时间】:2015-03-04 23:23:01 【问题描述】:在运行 IPyhton qtconsole 时,如何确定列数以最大化文本显示以使其在当前设置下看起来不错?
【问题讨论】:
相关:How to get console window width in python 不能。我们知道这在某些情况下并不理想,但它是一般原则的一部分,即代码不应过多了解当前可能显示其输出的内容。 看起来代码在 qtconsole (ConsoleWidget.sizeHint()) 中,但我不知道如何从运行在 qtconsole 下的脚本中获得该代码 【参考方案1】:sizeHint() 对我来说效果不佳(没有随窗口调整大小),但 size() 效果很好。
In [10]: ipyida.ida_plugin.obj.widget.parent.size()
Out[10]: PyQt5.QtCore.QSize(1241, 894)
要访问正在运行的实例,我必须修补导入 qtconsole 的 .py 文件并插入:
globals()['obj'] = self
就我而言,qtconsole 是从 IDA 启动的,因此我可以通过以下方式访问:
instance be accessed via:
import ipyida
ipyida.ida_plugin.obj.*
要计算字符列数,您需要执行以下操作:
f = ipyida.ida_plugin.obj.widget.parent.fontInfo()
f.pixelSize() # 11
w = ipyida.ida_plugin.obj.widget.parent.size().width() // f.pixelSize()
【讨论】:
【参考方案2】:尝试在ipython_qtconsole_config.py中改变宽高
# c.IPythonWidget.width = 81
# c.IPythonWidget.height = 25
【讨论】:
以上是关于在 IPython qtconsole 中确定终端宽度的主要内容,如果未能解决你的问题,请参考以下文章
TensorFlow 在 Python CLI 和 IPython CLI 中导入,但不在 IPython QtConsole 中
Anaconda ipython qtconsole 启动器