[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@18.227.140.251: ~ $


��Yf=�@s�dZddlZddlmZmZmZddljZdd�Z	Gdd�d�Z
dd	�Zd
d�Zdd
�Z
edkr�ddlZejddddd�dS)z'Define SearchEngine for search dialogs.�N)�	StringVar�
BooleanVar�TclErrorcCs%t|d�st|�|_|jS)z�Return the singleton SearchEngine instance for the process.

    The single SearchEngine saves settings between dialog instances.
    If there is not a SearchEngine already, make one.
    �
_searchengine)�hasattr�SearchEnginer)�root�r	�9/opt/alt/python35/lib64/python3.5/idlelib/SearchEngine.py�getsrc@s�eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zd#dd�Zdddd�Zddd �Zdd!d"�ZdS)$rz<Handles searching a text widget for Find, Replace, and Grep.cCsy||_t|d�|_t|d�|_t|d�|_t|d�|_t|d�|_t|d�|_dS)z�Initialize Variables that save search state.

        The dialogs bind these to the UI elements present in the dialogs.
        �FTN)	rr�patvarr�revar�casevar�wordvar�wrapvar�backvar)�selfrr	r	r
�__init__s	zSearchEngine.__init__cCs
|jj�S)N)r
r)rr	r	r
�getpat#szSearchEngine.getpatcCs|jj|�dS)N)r
�set)r�patr	r	r
�setpat&szSearchEngine.setpatcCs
|jj�S)N)rr)rr	r	r
�isre)szSearchEngine.isrecCs
|jj�S)N)rr)rr	r	r
�iscase,szSearchEngine.iscasecCs
|jj�S)N)rr)rr	r	r
�isword/szSearchEngine.iswordcCs
|jj�S)N)rr)rr	r	r
�iswrap2szSearchEngine.iswrapcCs
|jj�S)N)rr)rr	r	r
�isback5szSearchEngine.isbackcCs,|j�rtj|�}|j|�dS)z!Set pattern after escaping if re.N)r�re�escaper)rrr	r	r
�setcookedpat:szSearchEngine.setcookedpatcCsA|j�}|j�s'tj|�}|j�r=d|}|S)Nz\b%s\b)rrrrr)rrr	r	r
�getcookedpatAs
zSearchEngine.getcookedpatcCs�|j�}|s&|j|d�dS|j�}d}|j�sQ|tjB}ytj||�}Wnttjk
r�}zQ|j}|d}t	|�dkr�|dnd}|j|||�dSWYdd}~XnX|S)z&Return compiled cooked search pattern.zEmpty regular expressionNr�����)
r�report_errorr!rr�
IGNORECASE�compile�error�args�len)rr�flags�progZwhatr)�msg�colr	r	r
�getprogIs"
	
"zSearchEngine.getprogr#cCsgdt|�}|r*|dt|�}|dkrJ|dt|�}tjd|d|j�dS)NzError: z

Pattern: rz	
Offset: zRegular expression errorZmaster)�str�tkMessageBoxZ	showerrorr)rrr-r.r	r	r
r%]s	zSearchEngine.report_errorNrcCs�|s|j�}|sdS|jj�}t|�\}}|j�r�|rX|}n|}t|�\}}	|j||||	||�}
nE|r�|}n|}t|�\}}	|j||||	||�}
|
S)a�Return (lineno, matchobj) or None for forward/backward search.

        This function calls the right function with the right arguments.
        It directly return the result of that call.

        Text is a text widget. Prog is a precompiled pattern.
        The ok parameter is a bit complicated as it has two effects.

        If there is a selection, the search begin at either end,
        depending on the direction setting and ok, with ok meaning that
        the search starts with the selection. Otherwise, search begins
        at the insert mark.

        To aid progress, the search functions do not return an empty
        match at the starting position unless ok is True.
        N)r/rr�
get_selectionr�get_line_col�search_backward�search_forward)r�textr,�ok�wrap�first�last�start�liner.�resr	r	r
�search_textgs$	!	zSearchEngine.search_textcCs�d}|}|jd|d|d�}	x�|	r�|j|	dd�|�}
|
rw|sm|
j�|krw||
fS|d}|r�||kr�Pd}d}|jd|d|d�}	|	r-|r-d}d}d}|jdd�}	q-WdS)Nrz%d.0r#z1.0z2.0r$)r�search�end)rr6r,r<r.r8r7�wrapped�	startline�chars�mr	r	r
r5�s(	


zSearchEngine.search_forwardcCsd}|}|jd|d|d�}	x�t||	dd�|�}
|
rq|sg|
j�|krq||
fS|d}|r�||kr�Pd}|dkr�|s�Pd}d}|jd�}tt|jd��\}}|jd|d|d�}	t|	�d}q-WdS)Nrz%d.0r#zend-1c�.r$)r�search_reverser;�index�map�int�splitr*)rr6r,r<r.r8r7rArBrCrD�posr	r	r
r4�s,

zSearchEngine.search_backwardr$)�__name__�
__module__�__qualname__�__doc__rrrrrrrrr r!r/r%r>r5r4r	r	r	r
rs 
(rcCs�|j|�}|sdSd}|j�\}}xc||kr�||kr�|}||krh|d}|j||�}|s�P|j�\}}q4W|S)a&Search backwards and return an re match object or None.

    This is done by searching forwards until there is no match.
    Prog: compiled re object with a search method returning a match.
    Chars: line of text, without \n.
    Col: stop index for the search; the limit for match.end().
    Nr#)r?�span)r,rCr.rD�found�i�jr	r	r
rF�s
rFcCsly"|jd�}|jd�}Wntk
r@d}}YnX|sV|jd�}|sb|}||fS)zFReturn tuple of 'line.col' indexes from selection or insert mark.
    z	sel.firstzsel.lastN�insert)rGr)r6r9r:r	r	r
r2�s
r2cCs(tt|jd��\}}||fS)z8Return (line, col) tuple of ints from 'line.col' string.rE)rHrIrJ)rGr<r.r	r	r
r3�sr3�__main__z#idlelib.idle_test.test_searchengine�	verbosityr"�exitF)rOrZtkinterrrrZtkinter.messageboxZ
messageboxr1rrrFr2r3rLZunittest�mainr	r	r	r
�<module>s�

Filemanager

Name Type Size Permission Actions
AutoComplete.cpython-35.opt-1.pyc File 7.51 KB 0644
AutoComplete.cpython-35.opt-2.pyc File 5.85 KB 0644
AutoComplete.cpython-35.pyc File 7.51 KB 0644
AutoCompleteWindow.cpython-35.opt-1.pyc File 11.19 KB 0644
AutoCompleteWindow.cpython-35.opt-2.pyc File 10.46 KB 0644
AutoCompleteWindow.cpython-35.pyc File 11.25 KB 0644
AutoExpand.cpython-35.opt-1.pyc File 3.09 KB 0644
AutoExpand.cpython-35.opt-2.pyc File 2.32 KB 0644
AutoExpand.cpython-35.pyc File 3.09 KB 0644
Bindings.cpython-35.opt-1.pyc File 3.15 KB 0644
Bindings.cpython-35.opt-2.pyc File 2.68 KB 0644
Bindings.cpython-35.pyc File 3.15 KB 0644
CallTipWindow.cpython-35.opt-1.pyc File 5.24 KB 0644
CallTipWindow.cpython-35.opt-2.pyc File 4.94 KB 0644
CallTipWindow.cpython-35.pyc File 5.24 KB 0644
CallTips.cpython-35.opt-1.pyc File 5.78 KB 0644
CallTips.cpython-35.opt-2.pyc File 4.18 KB 0644
CallTips.cpython-35.pyc File 5.78 KB 0644
ClassBrowser.cpython-35.opt-1.pyc File 8.35 KB 0644
ClassBrowser.cpython-35.opt-2.pyc File 7.87 KB 0644
ClassBrowser.cpython-35.pyc File 8.35 KB 0644
CodeContext.cpython-35.opt-1.pyc File 5.98 KB 0644
CodeContext.cpython-35.opt-2.pyc File 4.87 KB 0644
CodeContext.cpython-35.pyc File 6.02 KB 0644
ColorDelegator.cpython-35.opt-1.pyc File 8.37 KB 0644
ColorDelegator.cpython-35.opt-2.pyc File 8.21 KB 0644
ColorDelegator.cpython-35.pyc File 8.37 KB 0644
Debugger.cpython-35.opt-1.pyc File 15.21 KB 0644
Debugger.cpython-35.opt-2.pyc File 15.06 KB 0644
Debugger.cpython-35.pyc File 15.21 KB 0644
Delegator.cpython-35.opt-1.pyc File 1.31 KB 0644
Delegator.cpython-35.opt-2.pyc File 1.21 KB 0644
Delegator.cpython-35.pyc File 1.31 KB 0644
EditorWindow.cpython-35.opt-1.pyc File 50.8 KB 0644
EditorWindow.cpython-35.opt-2.pyc File 49.55 KB 0644
EditorWindow.cpython-35.pyc File 50.9 KB 0644
FileList.cpython-35.opt-1.pyc File 3.5 KB 0644
FileList.cpython-35.opt-2.pyc File 3.49 KB 0644
FileList.cpython-35.pyc File 3.53 KB 0644
FormatParagraph.cpython-35.opt-1.pyc File 6.21 KB 0644
FormatParagraph.cpython-35.opt-2.pyc File 4.36 KB 0644
FormatParagraph.cpython-35.pyc File 6.21 KB 0644
GrepDialog.cpython-35.opt-1.pyc File 5.51 KB 0644
GrepDialog.cpython-35.opt-2.pyc File 5.5 KB 0644
GrepDialog.cpython-35.pyc File 5.51 KB 0644
HyperParser.cpython-35.opt-1.pyc File 7.23 KB 0644
HyperParser.cpython-35.opt-2.pyc File 5.94 KB 0644
HyperParser.cpython-35.pyc File 7.23 KB 0644
IOBinding.cpython-35.opt-1.pyc File 14.82 KB 0644
IOBinding.cpython-35.opt-2.pyc File 14.4 KB 0644
IOBinding.cpython-35.pyc File 14.82 KB 0644
IdleHistory.cpython-35.opt-1.pyc File 3.59 KB 0644
IdleHistory.cpython-35.opt-2.pyc File 2.38 KB 0644
IdleHistory.cpython-35.pyc File 3.59 KB 0644
MultiCall.cpython-35.opt-1.pyc File 16.09 KB 0644
MultiCall.cpython-35.opt-2.pyc File 13.77 KB 0644
MultiCall.cpython-35.pyc File 16.15 KB 0644
MultiStatusBar.cpython-35.opt-1.pyc File 1.89 KB 0644
MultiStatusBar.cpython-35.opt-2.pyc File 1.88 KB 0644
MultiStatusBar.cpython-35.pyc File 1.89 KB 0644
ObjectBrowser.cpython-35.opt-1.pyc File 5.38 KB 0644
ObjectBrowser.cpython-35.opt-2.pyc File 5.38 KB 0644
ObjectBrowser.cpython-35.pyc File 5.38 KB 0644
OutputWindow.cpython-35.opt-1.pyc File 4.42 KB 0644
OutputWindow.cpython-35.opt-2.pyc File 4.24 KB 0644
OutputWindow.cpython-35.pyc File 4.42 KB 0644
ParenMatch.cpython-35.opt-1.pyc File 6.3 KB 0644
ParenMatch.cpython-35.opt-2.pyc File 4.9 KB 0644
ParenMatch.cpython-35.pyc File 6.3 KB 0644
PathBrowser.cpython-35.opt-1.pyc File 4.01 KB 0644
PathBrowser.cpython-35.opt-2.pyc File 3.86 KB 0644
PathBrowser.cpython-35.pyc File 4.01 KB 0644
Percolator.cpython-35.opt-1.pyc File 3.82 KB 0644
Percolator.cpython-35.opt-2.pyc File 3.81 KB 0644
Percolator.cpython-35.pyc File 3.99 KB 0644
PyParse.cpython-35.opt-1.pyc File 10.71 KB 0644
PyParse.cpython-35.opt-2.pyc File 9.85 KB 0644
PyParse.cpython-35.pyc File 11.14 KB 0644
PyShell.cpython-35.opt-1.pyc File 47 KB 0644
PyShell.cpython-35.opt-2.pyc File 44.47 KB 0644
PyShell.cpython-35.pyc File 47.13 KB 0644
RemoteDebugger.cpython-35.opt-1.pyc File 14.17 KB 0644
RemoteDebugger.cpython-35.opt-2.pyc File 11.83 KB 0644
RemoteDebugger.cpython-35.pyc File 14.31 KB 0644
RemoteObjectBrowser.cpython-35.opt-1.pyc File 1.96 KB 0644
RemoteObjectBrowser.cpython-35.opt-2.pyc File 1.95 KB 0644
RemoteObjectBrowser.cpython-35.pyc File 1.96 KB 0644
ReplaceDialog.cpython-35.opt-1.pyc File 7.47 KB 0644
ReplaceDialog.cpython-35.opt-2.pyc File 6.8 KB 0644
ReplaceDialog.cpython-35.pyc File 7.47 KB 0644
RstripExtension.cpython-35.opt-1.pyc File 1.32 KB 0644
RstripExtension.cpython-35.opt-2.pyc File 1.24 KB 0644
RstripExtension.cpython-35.pyc File 1.32 KB 0644
ScriptBinding.cpython-35.opt-1.pyc File 6.9 KB 0644
ScriptBinding.cpython-35.opt-2.pyc File 5.54 KB 0644
ScriptBinding.cpython-35.pyc File 6.9 KB 0644
ScrolledList.cpython-35.opt-1.pyc File 5.62 KB 0644
ScrolledList.cpython-35.opt-2.pyc File 5.62 KB 0644
ScrolledList.cpython-35.pyc File 5.62 KB 0644
SearchDialog.cpython-35.opt-1.pyc File 3.69 KB 0644
SearchDialog.cpython-35.opt-2.pyc File 3.44 KB 0644
SearchDialog.cpython-35.pyc File 3.69 KB 0644
SearchDialogBase.cpython-35.opt-1.pyc File 7.51 KB 0644
SearchDialogBase.cpython-35.opt-2.pyc File 4.87 KB 0644
SearchDialogBase.cpython-35.pyc File 7.51 KB 0644
SearchEngine.cpython-35.opt-1.pyc File 7.24 KB 0644
SearchEngine.cpython-35.opt-2.pyc File 5.62 KB 0644
SearchEngine.cpython-35.pyc File 7.24 KB 0644
StackViewer.cpython-35.opt-1.pyc File 5.46 KB 0644
StackViewer.cpython-35.opt-2.pyc File 5.45 KB 0644
StackViewer.cpython-35.pyc File 5.46 KB 0644
ToolTip.cpython-35.opt-1.pyc File 3.95 KB 0644
ToolTip.cpython-35.opt-2.pyc File 3.94 KB 0644
ToolTip.cpython-35.pyc File 3.95 KB 0644
TreeWidget.cpython-35.opt-1.pyc File 15.25 KB 0644
TreeWidget.cpython-35.opt-2.pyc File 14.49 KB 0644
TreeWidget.cpython-35.pyc File 15.25 KB 0644
UndoDelegator.cpython-35.opt-1.pyc File 11.61 KB 0644
UndoDelegator.cpython-35.opt-2.pyc File 11.6 KB 0644
UndoDelegator.cpython-35.pyc File 11.61 KB 0644
WidgetRedirector.cpython-35.opt-1.pyc File 6.95 KB 0644
WidgetRedirector.cpython-35.opt-2.pyc File 3.58 KB 0644
WidgetRedirector.cpython-35.pyc File 6.95 KB 0644
WindowList.cpython-35.opt-1.pyc File 3.16 KB 0644
WindowList.cpython-35.opt-2.pyc File 3.15 KB 0644
WindowList.cpython-35.pyc File 3.16 KB 0644
ZoomHeight.cpython-35.opt-1.pyc File 1.37 KB 0644
ZoomHeight.cpython-35.opt-2.pyc File 1.36 KB 0644
ZoomHeight.cpython-35.pyc File 1.37 KB 0644
__init__.cpython-35.opt-1.pyc File 452 B 0644
__init__.cpython-35.opt-2.pyc File 141 B 0644
__init__.cpython-35.pyc File 452 B 0644
__main__.cpython-35.opt-1.pyc File 279 B 0644
__main__.cpython-35.opt-2.pyc File 198 B 0644
__main__.cpython-35.pyc File 279 B 0644
aboutDialog.cpython-35.opt-1.pyc File 5.93 KB 0644
aboutDialog.cpython-35.opt-2.pyc File 5.77 KB 0644
aboutDialog.cpython-35.pyc File 5.93 KB 0644
configDialog.cpython-35.opt-1.pyc File 48.17 KB 0644
configDialog.cpython-35.opt-2.pyc File 45.48 KB 0644
configDialog.cpython-35.pyc File 48.17 KB 0644
configHandler.cpython-35.opt-1.pyc File 26.25 KB 0644
configHandler.cpython-35.opt-2.pyc File 18.24 KB 0644
configHandler.cpython-35.pyc File 26.25 KB 0644
configHelpSourceEdit.cpython-35.opt-1.pyc File 5.77 KB 0644
configHelpSourceEdit.cpython-35.opt-2.pyc File 5.27 KB 0644
configHelpSourceEdit.cpython-35.pyc File 5.77 KB 0644
configSectionNameDialog.cpython-35.opt-1.pyc File 3.84 KB 0644
configSectionNameDialog.cpython-35.opt-2.pyc File 3.22 KB 0644
configSectionNameDialog.cpython-35.pyc File 3.84 KB 0644
dynOptionMenuWidget.cpython-35.opt-1.pyc File 2.37 KB 0644
dynOptionMenuWidget.cpython-35.opt-2.pyc File 1.99 KB 0644
dynOptionMenuWidget.cpython-35.pyc File 2.37 KB 0644
help.cpython-35.opt-1.pyc File 10.72 KB 0644
help.cpython-35.opt-2.pyc File 8.04 KB 0644
help.cpython-35.pyc File 10.72 KB 0644
idle.cpython-35.opt-1.pyc File 372 B 0644
idle.cpython-35.opt-2.pyc File 364 B 0644
idle.cpython-35.pyc File 372 B 0644
idlever.cpython-35.opt-1.pyc File 551 B 0644
idlever.cpython-35.opt-2.pyc File 320 B 0644
idlever.cpython-35.pyc File 551 B 0644
keybindingDialog.cpython-35.opt-1.pyc File 10.71 KB 0644
keybindingDialog.cpython-35.opt-2.pyc File 9.77 KB 0644
keybindingDialog.cpython-35.pyc File 10.71 KB 0644
macosxSupport.cpython-35.opt-1.pyc File 7 KB 0644
macosxSupport.cpython-35.opt-2.pyc File 5.13 KB 0644
macosxSupport.cpython-35.pyc File 7.11 KB 0644
rpc.cpython-35.opt-1.pyc File 20.34 KB 0644
rpc.cpython-35.opt-2.pyc File 17.03 KB 0644
rpc.cpython-35.pyc File 20.45 KB 0644
run.cpython-35.opt-1.pyc File 12.44 KB 0644
run.cpython-35.opt-2.pyc File 10.56 KB 0644
run.cpython-35.pyc File 12.49 KB 0644
tabbedpages.cpython-35.opt-1.pyc File 16.68 KB 0644
tabbedpages.cpython-35.opt-2.pyc File 11.79 KB 0644
tabbedpages.cpython-35.pyc File 16.68 KB 0644
textView.cpython-35.opt-1.pyc File 3.38 KB 0644
textView.cpython-35.opt-2.pyc File 2.95 KB 0644
textView.cpython-35.pyc File 3.38 KB 0644