python IDLE 清屏功能擴充套件

2021-08-31 18:11:29 字數 2539 閱讀 3003

第一步:在 c:\python37\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 undo.

add these lines to config-extensions.def

[clearwindow]

enable=1

enable_editor=0

enable_shell=1

[clearwindow_cfgbindings]

clear-window="""

class clearwindow:

menudefs = [

('options', [none,

('clear shell window', '<>'),

]),]

def __init__(self, editwin):

self.editwin = editwin

self.text = self.editwin.text

self.text.bind("<>", self.clear_window2)

self.text.bind("<>", 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)

第二步:在剛才的目錄下找到configextensions.def配置檔案並開啟,將下面**複製到最後面,儲存退出

[clearwindow]

enable=1

enable_editor=0

enable_shell=1

[clearwindow_cfgbindings]

clear-window=

第三步:重新開啟idle,看看工具欄中的options選項下是不是多了乙個clear shell window ctrl + l

如果是證明你成功了,如果沒有回去檢查下clearwindow檔案是不是小寫命名的,注意大寫。

python IDLE 清屏功能擴充套件

第一步 在 c python37 lib idlelib 目錄下新建clearwindow.py檔案,將一下 複製到檔案中 clear window extension version 0.2 author roger d.serwy roger.serwy gmail.com date 2009 ...

Python IDLE 怎麼清屏?

python idle 怎麼清屏?方法很簡單,為idle增加乙個清屏的擴充套件 clearwindow 就可以了 開啟config extensions.def 後在句末加上這樣幾句 clearwindow enable 1 enable editor 0 enable shell 1 clearw...

python idle清屏問題(Ctrl w)

在學習和使用python的過程中,少不了要與python idle打交道。但使用python idle都會遇到乙個常見而又懊惱的問題 要怎麼清屏?1.在shell中輸入 import os os.system cls 這種方法只能在windows系統中cmd模式下的python shell 才管用 ...