在windows中:

  安装目录 \Lib(  D:\Python37\Lib) 中添加 ClearWindow.py 文件,文件内容:

  1. """
  2.  
  3. Clear Window Extension
  4.  
  5. Version: 0.2
  6.  
  7. Author: Roger D. Serwy
  8.  
  9. roger.serwy@gmail.com
  10.  
  11. Date: 2009-06-14
  12.  
  13. It provides "Clear Shell Window" under "Options"
  14.  
  15. with ability to undo.
  16.  
  17. Add these lines to config-extensions.def
  18.  
  19. [ClearWindow]
  20.  
  21. enable=1
  22.  
  23. enable_editor=0
  24.  
  25. enable_shell=1
  26.  
  27. [ClearWindow_cfgBindings]
  28.  
  29. clear-window=<Control-Key-l>
  30.  
  31. """
  32.  
  33. class ClearWindow:
  34.  
  35. menudefs = [
  36.  
  37. ('options', [None,
  38.  
  39. ('Clear Shell Window', '<<clear-window>>'),
  40.  
  41. ]),]
  42.  
  43. def __init__(self, editwin):
  44.  
  45. self.editwin = editwin
  46.  
  47. self.text = self.editwin.text
  48.  
  49. self.text.bind("<<clear-window>>", self.clear_window2)
  50.  
  51. self.text.bind("<<undo>>", self.undo_event) # add="+" doesn't work
  52.  
  53. def undo_event(self, event):
  54.  
  55. text = self.text
  56.  
  57. text.mark_set("iomark2", "iomark")
  58.  
  59. text.mark_set("insert2", "insert")
  60.  
  61. self.editwin.undo.undo_event(event)
  62.  
  63. # fix iomark and insert
  64.  
  65. text.mark_set("iomark", "iomark2")
  66.  
  67. text.mark_set("insert", "insert2")
  68.  
  69. text.mark_unset("iomark2")
  70.  
  71. text.mark_unset("insert2")
  72.  
  73. def clear_window2(self, event): # Alternative method
  74.  
  75. # work around the ModifiedUndoDelegator
  76.  
  77. text = self.text
  78.  
  79. text.undo_block_start()
  80.  
  81. text.mark_set("iomark2", "iomark")
  82.  
  83. text.mark_set("iomark", 1.0)
  84.  
  85. text.delete(1.0, "iomark2 linestart")
  86.  
  87. text.mark_set("iomark", "iomark2")
  88.  
  89. text.mark_unset("iomark2")
  90.  
  91. text.undo_block_stop()
  92.  
  93. if self.text.compare('insert', '<', 'iomark'):
  94.  
  95. self.text.mark_set('insert', 'end-1c')
  96.  
  97. self.editwin.set_line_and_column()
  98.  
  99. def clear_window(self, event):
  100.  
  101. # remove undo delegator
  102.  
  103. undo = self.editwin.undo
  104.  
  105. self.editwin.per.removefilter(undo)
  106.  
  107. # clear the window, but preserve current command
  108.  
  109. self.text.delete(1.0, "iomark linestart")
  110.  
  111. if self.text.compare('insert', '<', 'iomark'):
  112.  
  113. self.text.mark_set('insert', 'end-1c')
  114.  
  115. self.editwin.set_line_and_column()
  116.  
  117. # restore undo delegator
  118.  
  119. self.editwin.per.insertfilter(undo)

复制文件 ClearWindow.py 文件 到 D:\Python37\Lib\idlelib 目录中,在当前目录下有 config-extensions.def ,在文件末添加代码:

  1. [ClearWindow]
  2. enable=1
  3. enable_editor=0
  4. enable_shell=1
  5. [ClearWindow_cfgBindings]
  6. clear-window=<Control-Key-;>

python3 shell 中添加清屏的更多相关文章

  1. python中的清屏函数

    一:cmd中python的清屏函数 import os os.system("cls") cmd中演示 1.在cmd中输入命令行: 2.执行后: 3.为什么会遗留一个0? 因为函数 ...

  2. C++中的清屏函数

    system("cls") 执行控制台命令cls,功能是清屏,清楚所有屏幕显示信息

  3. python添加清屏功能

    创建文件ClearWindow添加内容 class ClearWindow: menudefs = [ ('options', [None, ('Clear Shell Window', '<& ...

  4. Python IDLE中实现清屏

    首先下载clearwindow.py(点击可直接下载,不能下载的可以右键保存,格式为py结尾)将这个文件放在Python X\Lib\idlelib目录下(X为你的python版本),然后在这个目录下 ...

  5. IDEA清空控制台以及Java中运行cmd命令实现清屏操作

    IDEA中清空控制台方法 在网上有看到各种的实现方法,比如: Runtime.getRuntime().exec("cls"); 或者: public static void cl ...

  6. sqlplus中设定行大小、页大小、字符列格式、数字列格式、清屏

    sqlplus虽然是DBA们最为经常使用的Oracle客户端工具,但是它在输出结果格式化上不是很好,如折行.分页不好等,所以一般启动sqlplus后多少都要做些设置,如linesize.pagesiz ...

  7. linux shell 中 printf 与 echo的区别

         echo echo是非常常用的shell命令.参数如下: -e:打开反斜杠字符backslash-escaped的解析,即对/n,/t等字符进行解析,而不视之为两个字符 -E:关闭反斜杠字符 ...

  8. java——JNI(例子控制台(64位)清屏

    因为java的最底层是jvm,所以单纯的控制台java程序不能感知jvm再下面的操作系统的情况, 可以通过JNI(Java Native Interface)技术实现java后台调用C++/C的dll ...

  9. Lua的清屏快捷方式

    1. Lua (Command Line) 这里清屏的方式是: os.execute("cls") 就是执行了DOS中的清屏命令! 2.SciTE中的清屏方式: -----(1)第 ...

随机推荐

  1. 11.Flask钩子函数

    在Flask中钩子函数是使用特定的装饰器的函数.为什么叫做钩子函数呢,是因为钩子函数可以在正常执行的代码中,插入一段自己想要执行的代码,那么这种函数就叫做钩子函数. before_first_requ ...

  2. BBS论坛(二十一)

    21.1.编辑轮播图功能完成 (1)cms_banners.html 把属性绑定到<tr>上面,方便找到各属性的值 <tbody> {% for banner in banne ...

  3. Redis配置与安装

    Redis 是一个非关系型高性能的key-value数据库.在部分场合可以对关系数据库起到很好的补充作用.它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C, ...

  4. OAuth 2.0 授权码请求

    关于OAuth 2.0,请参见下面这两篇文章(墙裂推荐): <OAuth 2.0> <Spring Security OAuth 2.0> 纸上得来终觉浅,绝知此事要躬行.理论 ...

  5. Chapter 5 Blood Type——28

    Mike came through the door then, glancing from me to Edward. 然后Mike从门里走出来,看了一眼我和Edward The look he g ...

  6. 文本主题模型之非负矩阵分解(NMF)

    在文本主题模型之潜在语义索引(LSI)中,我们讲到LSI主题模型使用了奇异值分解,面临着高维度计算量太大的问题.这里我们就介绍另一种基于矩阵分解的主题模型:非负矩阵分解(NMF),它同样使用了矩阵分解 ...

  7. Asp.Net Core 程序部署到Linux(centos)生产环境(二):docker部署

    运行环境 照例,先亮环境:软件的话我这里假设你已经批准好了.net core 运行环境,未配置可以看我的这篇[linux(centos)搭建.net core 运行环境] 腾讯云 centos:7.2 ...

  8. 初学Java Web(8)——过滤器和监听器

    什么是过滤器 过滤器就是 Servlet 的高级特性之一,就是一个具有拦截/过滤功能的一个东西,在生活中过滤器可以是香烟滤嘴,滤纸,净水器,空气净化器等,在 Web 中仅仅是一个实现了 Filter ...

  9. 基于Dapper二次封装了一个易用的ORM工具类:SqlDapperUtil

    基于Dapper二次封装了一个易用的ORM工具类:SqlDapperUtil,把日常能用到的各种CRUD都进行了简化封装,让普通程序员只需关注业务即可,因为非常简单,故直接贴源代码,大家若需使用可以直 ...

  10. Select默认选择后台参数

    之前写过一个这样的方法,后来需求开发中,发现了方法的BUG,然后我又重新找了一种方法,今天来记录一下. 先声明前台 <select name="type" class=&qu ...