Python3.7.0 Shell新增清屏快捷鍵的實現示例
阿新 • • 發佈:2020-03-23
1、找到python的安裝目錄在python (版本號)\lib\idlelib目錄下
新增Clearwindow.py檔案
原始碼如下:
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','end-1c') self.editwin.set_line_and_column() # restore undo delegator self.editwin.per.insertfilter(undo)
2、繼續在當前目錄下(python (版本號)\lib\idlelib)開啟編輯config-extensions.def(IDLE擴充套件配置檔案)
在原檔案下新增如下程式碼:
[ClearWindow] enable=1 enable_editor=0 enable_shell=1 [ClearWindow_cfgBindings] clear-window=<Control-Key-w>
3、重新啟動IDLE,點選Options,可看到:
輸入一些程式碼
Ctrl+w
即可完成清屏!!!!到此這篇關於Python3.7.0 Shell新增清屏快捷鍵的實現示例的文章就介紹到這了,更多相關Python Shell新增清屏內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!