Python IDLE 增加清屏功能

保存如下代码到 ClearWindow.py

"""

Clear Window Extension
Version: 0.2

Author: Roger D. Serwy
        [email protected]

Date: 2009-06-14

It provides "Clear Shell Window" under "Options"
with ability to undo.

Add these lines to config-extensions.def

[ClearWindow]
enable=1
enable_editor=0
enable_shell=1
[ClearWindow_cfgBindings]
clear-window=<Control-Key-l>

"""

class ClearWindow:

    menudefs = [
        (‘options‘, [None,
               (‘Clear Shell Window‘, ‘<<clear-window>>‘),
       ]),]

    def __init__(self, editwin):
        self.editwin = editwin
        self.text = self.editwin.text
        self.text.bind("<<clear-window>>", self.clear_window2)

        self.text.bind("<<undo>>", self.undo_event)  # add="+" doesn‘t work

    def undo_event(self, event):
        text = self.text

        text.mark_set("iomark2", "iomark")
        text.mark_set("insert2", "insert")
        self.editwin.undo.undo_event(event)

        # fix iomark and insert
        text.mark_set("iomark", "iomark2")
        text.mark_set("insert", "insert2")
        text.mark_unset("iomark2")
        text.mark_unset("insert2")

    def clear_window2(self, event): # Alternative method
        # work around the ModifiedUndoDelegator
        text = self.text
        text.undo_block_start()
        text.mark_set("iomark2", "iomark")
        text.mark_set("iomark", 1.0)
        text.delete(1.0, "iomark2 linestart")
        text.mark_set("iomark", "iomark2")
        text.mark_unset("iomark2")
        text.undo_block_stop()
        if self.text.compare(‘insert‘, ‘<‘, ‘iomark‘):
            self.text.mark_set(‘insert‘, ‘end-1c‘)
        self.editwin.set_line_and_column()

    def clear_window(self, event):
        # remove undo delegator
        undo = self.editwin.undo
        self.editwin.per.removefilter(undo)

        # clear the window, but preserve current command
        self.text.delete(1.0, "iomark linestart")
        if self.text.compare(‘insert‘, ‘<‘, ‘iomark‘):
            self.text.mark_set(‘insert‘, ‘end-1c‘)
        self.editwin.set_line_and_column()

        # restore undo delegator
        self.editwin.per.insertfilter(undo)

将上述文件保存到 C:\Python27\Lib\idlelib 下。再打开此目录下的 config-extensions.def 文件,在其尾部添加如下代码

################################# >>> Added for clear Window
[ClearWindow]
enable=1
enable_editor=0
enable_shell=1
[ClearWindow_cfgBindings]
clear-window=<Control-Key-l>

好了,现在 IDLE 已经可以支持 Ctrl+l 清屏了。

完。

时间: 2024-11-08 21:29:33

Python IDLE 增加清屏功能的相关文章

Python的IDEL增加清屏功能

为idle增加一个清屏的扩展ClearWindow就可以了(在http://bugs.python.org/issue6143中可以看到这个扩展的说明).下面我说安装使用的方法.首先下载clearwindow.py(点击可直接下载,不能下载的可以右键保存,格式为py结尾),将这个文件放在Python X\Lib\idlelib目录下(X为你的python版本),然后在这个目录下找到config-extensions.def这个文件(idle扩展的配置文件),以记事本的方式打开它(为防止出错,你可

Python IDLE配置清屏快捷键(Ctrl+L)

1.在Python\Lib\idlelib下,新建一个ClearWindow.py文件(没有时就新建),内容如下: """ Clear Window Extension Version: 0.2 Author: Roger D. Serwy [email protected] Date: 2009-06-14 It provides "Clear Shell Window" under "Options" with ability to

Python IDLE的清屏问题

新手在使用IDLE的过程中,肯定遇到麻烦的清屏问题,本次找到了简单高效的清屏解决方案: 首先在文本编译器里输入以下代码: """ Clear Window Extension Version: 0.2 Author: Roger D. Serwy [email protected] Date: 2009-06-14 It provides "Clear Shell Window" under "Options" with ability

iOS 画板的实现,具有颜色、线宽、橡皮、撤销和清屏功能

完成一个简单的画板,能够实现画板颜色和线宽的选择,以及橡皮功能,撤销前一步的操作,和清屏功能. 效果图: 工程下载:github工程下载链接 主要应用MVC模式进行代码架构,每一部分的代码实现思路在各部分的代码前面. Controller 控制器实现基本思路: 1.添加工具栏和画板 2.ToolView中block的定义,colorBlock,widthBlock就是设置drawView的color:eraseBlock就设置其lineWidth和lineColor的具体值:undoBlock,

两行代码搞定MFC清屏功能

MFC清除屏幕功能 不少人在使用MFC显示图像都遇到过解决清除屏幕的问题,网上有不少解决方案,但是这些方案都不是很简单,最近本文也遇到了同样的问题,因此对MFC的显示原理进行了深入的研究,找到了最简单的解决方案: (1)获取控件的句柄 (2)调用showWidnow(FALSE). (3)调用showWindow(TRUE); 两句简单的代码轻松搞定MFC清除屏幕功能! 代码如下: void CClearScreenMFCDlg::OnBnClickedLoadImage() { // TODO

Python Shell 怎样清屏?

启动Python有两种方式,分别为"Windows命令行窗口"和"IDLE" "命令行窗口"下可以通过如下两种方法: 1. import subprocess subprocess.call("clear") # linux/mac subprocess.call("cls", shell=True) # windows 执行完次命令后,窗口顶部第一行会出现一个0,接下来才会是输入提示符">

Python IDE 设置清屏快捷键

1.在Python\Lib\idlelib下,新建一个ClearWindow.py文件(没有时就新建),内容如下: """ Clear Window Extension Version: 0.2 Author: Roger D. Serwy [email protected] Date: 2009-06-14 It provides "Clear Shell Window" under "Options" with ability to

Python清屏命令

启动Python有两种方式,分别为Windows命令行窗口和IDLE的方式. 一.“Windows命令行窗口”下清屏,可用下面两种方法(任选其一):第一种方法,在命令行窗口输入:import osi=os.system("cls")第二种方法,在命令行窗口输入:import subprocessi=subprocess.call("cls", shell=True) 二.在IDLE下清屏:#网上有些先定义函数,再 print("\n" * 100

python 2.7 idle 配置语法提示功能

使用Python自带编辑器python IDLE的语法提示功能的配置 1.C:\Python27\Lib\idlelib\config-extensions.def文件 编辑 [AutoComplete]enable=1popupwait=2000(改为0,语法提示等待时间) 2.C:\Python27\Lib\idlelib\AutoComplete.py import osimport sysimport string 追加更多需要被提示的lib