Python3.6.3 IDLE ClearWindow 清屏扩展,,1、http://b


1、http://bugs.python.org/issue6143下载列表中的第二个ClearWindow.py(2009-6-15版本),右键另存为即可。

技术分享图片

可以复制以下内容,新建一个 ClearWindow.py

 1 """ 2  3 Clear Window Extension 4 Version: 0.2 5  6 Author: Roger D. Serwy 7         [email protected] 8  9 Date: 2009-06-1410 11 It provides "Clear Shell Window" under "Options"12 with ability to undo.13 14 Add these lines to config-extensions.def15 16 [ClearWindow]17 enable=118 enable_editor=019 enable_shell=120 [ClearWindow_cfgBindings]21 clear-window=<Control-Key-l>22 23 24 """25 26 class ClearWindow:27 28     menudefs = [29         (‘options‘, [None,30                (‘Clear Shell Window‘, ‘<<clear-window>>‘),31        ]),]32          33     def __init__(self, editwin):34         self.editwin = editwin35         self.text = self.editwin.text36         self.text.bind("<<clear-window>>", self.clear_window2)37 38         self.text.bind("<<undo>>", self.undo_event)  # add="+" doesn‘t work39 40     def undo_event(self, event):41         text = self.text42         43         text.mark_set("iomark2", "iomark")44         text.mark_set("insert2", "insert")45         self.editwin.undo.undo_event(event)46 47         # fix iomark and insert48         text.mark_set("iomark", "iomark2")49         text.mark_set("insert", "insert2")50         text.mark_unset("iomark2")51         text.mark_unset("insert2")52         53 54     def clear_window2(self, event): # Alternative method55         # work around the ModifiedUndoDelegator56         text = self.text57         text.undo_block_start()58         text.mark_set("iomark2", "iomark")59         text.mark_set("iomark", 1.0)60         text.delete(1.0, "iomark2 linestart")61         text.mark_set("iomark", "iomark2")62         text.mark_unset("iomark2")63         text.undo_block_stop()64         if self.text.compare(‘insert‘, ‘<‘, ‘iomark‘):65             self.text.mark_set(‘insert‘, ‘end-1c‘)66         self.editwin.set_line_and_column()67 68     def clear_window(self, event):69         # remove undo delegator70         undo = self.editwin.undo71         self.editwin.per.removefilter(undo)72 73         # clear the window, but preserve current command74         self.text.delete(1.0, "iomark linestart")75         if self.text.compare(‘insert‘, ‘<‘, ‘iomark‘):76             self.text.mark_set(‘insert‘, ‘end-1c‘)77         self.editwin.set_line_and_column()78  79         # restore undo delegator80         self.editwin.per.insertfilter(undo)81  

2、将文件放到Python安装路径下:Python36\Lib\idlelib(我的是C:\Python34\Lib\idlelib)

3、在相同的路径下,找到 config-extensions.def 文件

4、用记事本打开,在最后粘上以下代码:

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

5、保存、关闭文件。重新启动IDLE,在option下面就有了Clear shell window 选项。快捷键是Ctrl + L

技术分享图片

Python3.6.3 IDLE ClearWindow 清屏扩展

评论关闭