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 相关文章推荐
Python入门篇之正则表达式
Oct 20 Python
详解python之配置日志的几种方式
May 22 Python
python 简单的绘图工具turtle使用详解
Jun 21 Python
Python实现批量压缩图片
Jan 25 Python
关于django 数据库迁移(migrate)应该知道的一些事
May 27 Python
Python实现的微信红包提醒功能示例
Aug 22 Python
Python for循环及基础用法详解
Nov 08 Python
Python获取二维数组的行列数的2种方法
Feb 11 Python
keras小技巧——获取某一个网络层的输出方式
May 23 Python
Python Socket多线程并发原理及实现
Dec 11 Python
Python趣味爬虫之用Python实现智慧校园一键评教
May 28 Python
Python字典的基础操作
Nov 01 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
初学者入门:细述PHP4的核心Zend
2006/09/05 PHP
如何在PHP中使用Oracle数据库(2)
2006/10/09 PHP
PHP cron中的批处理
2008/09/16 PHP
PHP学习笔记 (1) 环境配置与代码调试
2011/06/19 PHP
PHP过滤黑名单关键字的方法
2014/12/01 PHP
浅谈php中的循环while、do...while、for、foreach四种循环
2016/11/05 PHP
IE6下CSS图片缓存问题解决方法
2010/12/09 Javascript
js+css使DIV始终居于屏幕中间 左下 左上 右上 右下的代码集合
2011/03/10 Javascript
jquery中ajax学习笔记一
2011/10/16 Javascript
js浮动图片的动态效果
2013/07/10 Javascript
页面刷新时记住滚动条的位置jquery代码
2014/06/17 Javascript
EasyUI,点击开启编辑框,并且编辑框获得焦点的方法
2015/03/01 Javascript
JavaScript简单实现弹出拖拽窗口(一)
2016/06/17 Javascript
vue-cli如何快速构建vue项目
2017/04/26 Javascript
PHP实现记录代码运行时间封装类实例教程
2017/05/08 Javascript
Angularjs的$http异步删除数据详解及实例
2017/07/27 Javascript
把JavaScript代码改成ES6语法不完全指南(分享)
2017/09/10 Javascript
元素全屏的设置与监听实例
2017/11/28 Javascript
基于滚动条位置判断的简单实例
2017/12/14 Javascript
解决Vue中引入swiper,在数据渲染的时候,发生不滑动的问题
2018/09/27 Javascript
微信小程序列表中item左滑删除功能
2018/11/07 Javascript
Node.js使用supervisor进行开发中调试的方法
2019/03/26 Javascript
vue的webcamjs集成方式
2020/11/16 Javascript
python自定义类并使用的方法
2015/05/07 Python
Django中自定义模型管理器(Manager)及方法
2019/09/23 Python
wxpython+pymysql实现用户登陆功能
2019/11/19 Python
基于python求两个列表的并集.交集.差集
2020/02/10 Python
canvas实现圆绘制的示例代码
2019/09/11 HTML / CSS
维也纳通行证:Vienna PASS
2019/07/18 全球购物
房地产项目建议书
2014/03/12 职场文书
竞聘上岗演讲
2014/05/19 职场文书
百家讲坛观后感
2015/06/12 职场文书
宝宝满月祝酒词
2015/08/10 职场文书
2016年度创先争优活动总结
2016/04/05 职场文书
写作技巧:如何撰写一份优秀的营销策划书
2019/08/13 职场文书
如何用 Python 子进程关闭 Excel 自动化中的弹窗
2021/05/07 Python