
    .hh                     N    S SK Jr   " S S5      r\S:X  a  S SKJr  \" SSSS	9  g
g
)    )idleConfc                   2    \ rS rSrS rS rS rS rS rSr	g)	History   c                     Xl         / U l        S U l        S U l        [        R
                  " SSSSS5      U l        UR                  SU R                  5        UR                  SU R                  5        g )Nmainr   cyclic   boolz<<history-previous>>z<<history-next>>)
texthistoryprefixpointerr   	GetOptionr	   bindhistory_prevhistory_next)selfr   s     8/opt/python-3.13.8/usr/lib/python3.13/idlelib/history.py__init__History.__init__   sb     	((HaP		($*;*;<		$d&7&78    c                 "    U R                  SS9  g)NFreversebreakfetchr   events     r   r   History.history_next   s    

5
!r   c                 "    U R                  SS9  g)NTr   r   r   r   s     r   r   History.history_prev$   s    

4
 r   c                    [        U R                  5      nU R                  nU R                  nUbq  Ubn  U R                  R                  SSS5      (       d-  U R                  R                  SS5      U R                  U   :w  a  S =p4U R                  R                  SS5        Ub  UcU  U R                  R                  SS5      nU(       a  UnO/U R                  (       a  SnOU R                  R                  5         g [        U5      n X1(       a  SOS-  nUS:  d  X2:  a  U R                  R                  5         U R                  (       d  US:  a  g U R                  R                  SS5      U:w  a9  U R                  R                  SS5        U R                  R                  SUS5        S =p4OdU R                  U   nUS U U:X  aI  [        U5      U:  a:  U R                  R                  SS5        U R                  R                  SUS5        OGM  U R                  R                  S5        U R                  R                  S	S
S5        X0l        X@l        g )Ninsertz!=zend-1ciomarkr
   r   stdinselz1.0end)lenr   r   r   r   comparegetmark_setr	   belldeleter%   see
tag_remove)r   r   nhistr   r   nprefixitems          r   r   History.fetch)   s    DLL!,,6#5yy  4::IIMM(H5g9NN#''		""8X6?fnYY]]8X6F;; GIINN$f+Wr!+G{g.		 {{w{yy}}Xx8FB		((8<		((67C'++G<<(DHW~'CI,?		  84		  49! " 			h		UE51r   c                     UR                  5       n[        U5      S:  a7   U R                  R                  U5        U R                  R                  U5        S U l        S U l        g ! [         a     N6f = f)N   )stripr+   r   remove
ValueErrorappendr   r   )r   sources     r   storeHistory.storeZ   se    v;?##F+ LL'	  s   A& &
A32A3)r	   r   r   r   r   N)
__name__
__module____qualname____firstlineno__r   r   r   r   r>   __static_attributes__ r   r   r   r      s    9"

/br   r   __main__)r   zidlelib.idle_test.test_historyr8   F)	verbosityexitN)idlelib.configr   r   r@   unittestr   rE   r   r   <module>rK      s6    $_ _D z	)QUC r   