Add config-main.def option to make the 'history' feature non-cyclic.

Default remains cyclic.  Python Patch 914546 Noam Raphael.

M IdleHistory.py
M NEWS.txt
M config-main.def
This commit is contained in:
Kurt B. Kaiser 2005-02-03 01:37:14 +00:00
parent 69b8caa23a
commit 0676dfdce0
3 changed files with 23 additions and 7 deletions

View File

@ -1,3 +1,5 @@
from configHandler import idleConf
class History:
def __init__(self, text, output_sep = "\n"):
@ -6,6 +8,7 @@ class History:
self.history_prefix = None
self.history_pointer = None
self.output_sep = output_sep
self.cyclic = idleConf.GetOption("main", "History", "cyclic", 1, "bool")
text.bind("<<history-previous>>", self.history_prev)
text.bind("<<history-next>>", self.history_next)
@ -40,7 +43,11 @@ class History:
if reverse:
pointer = nhist
else:
pointer = -1
if self.cyclic:
pointer = -1
else:
self.text.bell()
return
nprefix = len(prefix)
while 1:
if reverse:
@ -49,10 +56,13 @@ class History:
pointer = pointer + 1
if pointer < 0 or pointer >= nhist:
self.text.bell()
if self._get_source("iomark", "end-1c") != prefix:
self.text.delete("iomark", "end-1c")
self._put_source("iomark", prefix)
pointer = prefix = None
if not self.cyclic and pointer < 0:
return
else:
if self._get_source("iomark", "end-1c") != prefix:
self.text.delete("iomark", "end-1c")
self._put_source("iomark", prefix)
pointer = prefix = None
break
item = self.history[pointer]
if item[:nprefix] == prefix and len(item) > nprefix:

View File

@ -3,6 +3,9 @@ What's New in IDLE 1.2a0?
*Release date: XX-XXX-2005*
- Add config-main option to make the 'history' feature non-cyclic.
Default remains cyclic. Python Patch 914546 Noam Raphael.
- Removed ability to configure tabs indent from Options dialog. This 'feature'
has never worked and no one has complained. It is still possible to set a
default tabs (v. spaces) indent 'manually' via config-main.def (or to turn on

View File

@ -18,8 +18,8 @@
# ~/.idlerc/config-highlight.cfg the user highlighting config file
# ~/.idlerc/config-keys.cfg the user keybinding config file
#
# On Windows2000 and Windows XP the .idlerc directory is at
# Documents and Settings\<username>\.idlerc
# On Windows2000 and Windows XP the .idlerc directory is at
# Documents and Settings\<username>\.idlerc
#
# On Windows98 it is at c:\.idlerc
#
@ -73,4 +73,7 @@ name= IDLE Classic
default= 1
name= IDLE Classic Windows
[History]
cyclic=1
[HelpFiles]