Python3.7.0 Shell添加清屏快捷键的实现示例


Posted in Python onMarch 23, 2020

1、找到python的安装目录在python (版本号)\lib\idlelib目录下

Python3.7.0 Shell添加清屏快捷键的实现示例

添加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', '<', 'iomark'):
      self.text.mark_set('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扩展配置文件)

Python3.7.0 Shell添加清屏快捷键的实现示例

在原文件下添加如下代码:

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

3、重新启动IDLE,点击Options,可看到:

Python3.7.0 Shell添加清屏快捷键的实现示例

输入一些代码

Python3.7.0 Shell添加清屏快捷键的实现示例

Ctrl+w

Python3.7.0 Shell添加清屏快捷键的实现示例

即可完成清屏!!!!到此这篇关于Python3.7.0 Shell添加清屏快捷键的实现示例的文章就介绍到这了,更多相关Python Shell添加清屏内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
简单的Apache+FastCGI+Django配置指南
Jul 22 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
Jan 31 Python
Python2.7读取PDF文件的方法示例
Jul 13 Python
python email smtplib模块发送邮件代码实例
Apr 26 Python
python和mysql交互操作实例详解【基于pymysql库】
Jun 04 Python
pyqt5 从本地选择图片 并显示在label上的实例
Jun 13 Python
使用python写的opencv实时监测和解析二维码和条形码
Aug 14 Python
django-crontab 定时执行任务方法的实现
Sep 06 Python
Python迭代器模块itertools使用原理解析
Dec 11 Python
pytorch程序异常后删除占用的显存操作
Jan 13 Python
python的列表生成式,生成器和generator对象你了解吗
Mar 16 Python
Pandas-DataFrame知识点汇总
Mar 16 Python
Python面向对象程序设计之继承、多态原理与用法详解
Mar 23 #Python
python实现图像拼接功能
Mar 23 #Python
Python猴子补丁Monkey Patch用法实例解析
Mar 23 #Python
Python面向对象程序设计之静态方法、类方法、属性方法原理与用法分析
Mar 23 #Python
Python3 pickle对象串行化代码实例解析
Mar 23 #Python
Python面向对象程序设计之类和对象、实例变量、类变量用法分析
Mar 23 #Python
Python3 shelve对象持久存储原理详解
Mar 23 #Python
You might like
DIY一个适配电脑声卡的动圈话筒放大器
2021/03/02 无线电
从刷票了解获得客户端IP的方法
2015/09/21 PHP
PHP类的特性实例分析
2016/09/28 PHP
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
2018/01/15 PHP
Mootools 1.2教程 Fx.Morph、Fx选项和Fx事件
2009/09/15 Javascript
javascript 自动填写表单的实现方法
2010/04/09 Javascript
javascript模版引擎-tmpl的bug修复与性能优化分析
2011/10/23 Javascript
UpdatePanel和Jquery冲突的解决方法
2013/04/01 Javascript
Javascript 垃圾收集机制介绍理解
2013/05/14 Javascript
jQuery表单获取和失去焦点输入框提示效果的实例代码
2013/08/01 Javascript
浅析Node.js查找字符串功能
2014/09/03 Javascript
JavaScript中的object转换成number或string规则介绍
2014/12/31 Javascript
JavaScript和HTML DOM的区别与联系及Javascript和DOM的关系
2015/11/15 Javascript
第九章之路径分页标签与徽章组件
2016/04/25 Javascript
javascript中sort排序实例详解
2016/07/24 Javascript
JS实现小球的弹性碰撞效果
2017/11/11 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
2018/07/03 Javascript
VueCli3构建TS项目的方法步骤
2018/11/07 Javascript
Node配合WebSocket做多文件下载以及进度回传
2019/11/07 Javascript
js数据类型转换与流程控制操作实例分析
2019/12/18 Javascript
跟老齐学Python之有点简约的元组
2014/09/24 Python
分析在Python中何种情况下需要使用断言
2015/04/01 Python
Python操作Word批量生成文章的方法
2015/07/28 Python
python实现决策树C4.5算法详解(在ID3基础上改进)
2017/05/31 Python
Python实现自动发送邮件功能
2021/03/02 Python
详解django的serializer序列化model几种方法
2018/10/16 Python
详解python 爬取12306验证码
2019/05/10 Python
使用Python的turtle模块画国旗
2019/09/24 Python
基于plt.title无法显示中文的快速解决
2020/05/16 Python
python 中的命名空间,你真的了解吗?
2020/08/19 Python
Raffaello Network西班牙:意大利拉斐尔时尚购物网
2019/03/12 全球购物
物业公司的岗位任命书
2014/06/06 职场文书
安徽导游词
2015/02/12 职场文书
2016猴年春节慰问信
2015/11/30 职场文书
学习社交礼仪心得体会
2016/01/22 职场文书
Python基础教程,Python入门教程(超详细)
2021/06/24 Python