<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
B
    YI~dM"  ã               @   s–   d dl Z d dlZd dlZd dlmZ d dlmZ d dlm	Z	 d dlm
Z
 d dlmZ d dlmZ dZG dd	„ d	ƒZed
kr’d dlmZ eddd dS )é    N)ÚidleConf)Úmacosx)Úpyshell)Ú	CustomRun)Úoutwina/  Error: Inconsistent indentation detected!

1) Your indentation is outright incorrect (easy to fix), OR

2) Your indentation mixes tabs and spaces.

To fix case 2, change all tabs to spaces by using Edit->Select All followed by Format->Untabify Region and specify the number of columns used by each tab.
c               @   sb   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zddœdd„Z	dd„ Z
dd„ Zdd„ ZdS )ÚScriptBindingc             C   s>   || _ | j j| _| j j| _g | _t ¡ r:| j j d| j¡ d S )Nz<<run-module-event-2>>)	ÚeditwinÚflistÚrootÚcli_argsr   Ú	isCocoaTkÚ
text_frameZbindÚ_run_module_event)Úselfr   © r   ú6/opt/alt/python37/lib64/python3.7/idlelib/runscript.pyÚ__init__%   s    

zScriptBinding.__init__c             C   sN   t | jtjƒr| jj ¡  dS |  ¡ }|s.dS |  |¡s<dS |  |¡sJdS dS )NÚbreak)	Ú
isinstancer   r   ÚOutputWindowÚtextÚbellÚgetfilenameÚchecksyntaxÚtabnanny)r   ÚeventÚfilenamer   r   r   Úcheck_module_event1   s    

z ScriptBinding.check_module_eventc             C   s¾   t  |¡ª}yt t  |j¡¡ W nŒ t jk
rp } z.|j\}\}}| j 	|¡ |  
dd| ¡ dS d }~X Y n@ tjk
r® } z | j 	| ¡ ¡ |  
dt¡ dS d }~X Y nX W d Q R X dS )NzTabnanny Tokenizing ErrorzToken Error: %sFzTab/space errorT)ÚtokenizeÚopenr   Zprocess_tokensÚgenerate_tokensÚreadlineÚ
TokenErrorÚargsr   ZgotolineÚerrorboxZNannyNagZ
get_linenoÚindent_message)r   r   ÚfÚmsgZmsgtxtÚlinenoÚstartZnagr   r   r   r   >   s    
zScriptBinding.tabnannyc          
   C   s\  | j  ¡  | _}| ¡ }| |j¡ t|dƒ}| ¡ }W d Q R X d|krb| dd¡}| dd¡}|r~|d t	dƒkr~|d }| j
}|j}| ddd¡ z²yt||d	ƒS  tttfk
rF } zzt|d
dƒpÒ|pÒd}	t|ddƒpâd}
t|ddƒpòd}|dkr|
d7 }
d|
d |d f }| ||¡ |  dd|	 ¡ dS d }~X Y nX W d | |¡ X d S )NÚrbó   s   
ó   
éÿÿÿÿZERRORz1.0ÚendÚexecr'   Ú z<no detail available>r(   é   Úoffsetr   z0.0 + %d lines + %d charsÚSyntaxErrorz%-20sF)r	   Z
open_shellÚshellZget_warning_streamZset_warning_streamÚstderrr   ÚreadÚreplaceÚordr   r   Z
tag_removeÚcompiler3   ÚOverflowErrorÚ
ValueErrorÚgetattrZcolorize_syntax_errorr$   )r   r   r4   Zsaved_streamr&   Úsourcer   r   Úvaluer'   r(   r2   Úposr   r   r   r   P   s4    
zScriptBinding.checksyntaxc                s2   t  ¡ r$ˆ jj d‡ fdd„¡ dS ˆ  |¡S d S )NéÈ   c                  s   ˆ j j d¡S )Nz<<run-module-event-2>>)r   r   Zevent_generater   )r   r   r   Ú<lambda>v   s   z0ScriptBinding.run_module_event.<locals>.<lambda>r   )r   r   r   r   Zafterr   )r   r   r   )r   r   Úrun_module_eventn   s
    
zScriptBinding.run_module_eventc             C   s   | j |ddS )NT)Ú	customize)r   )r   r   r   r   r   Úrun_custom_event|   s    zScriptBinding.run_custom_eventF)rC   c         	   C   s  t | jtjƒr| jj ¡  dS |  ¡ }|s.dS |  |¡}|s@dS |  |¡sNdS |r‚d| j 	¡ › d}t
| jj|| jdj}|s‚dS |rŠ|ng df\| _}| jj}tjr¸|r¸|jd|d tj |¡}	|g}
| jrÚ|
| j7 }
| d|›d	|
›d
|	›d¡ | |¡ | |¡ dS )Nr   z
Customize z Run)r   TF)Zwith_cwdr   zif 1:
            __file__ = zi
            import sys as _sys
            from os.path import basename as _basename
            argv = zØ
            if (not _sys.argv or
                _basename(_sys.argv[0]) != _basename(__file__) or
                len(argv) > 1):
                _sys.argv = argv
            import os as _os
            _os.chdir(z:)
            del _sys, argv, _basename, _os
            
)r   r   r   r   r   r   r   r   r   Zshort_titler   r4   r   ÚresultÚinterpr   Zuse_subprocessZrestart_subprocessÚosÚpathÚdirnameZ
runcommandZprepend_syspathZruncode)r   r   rC   r   ÚcodeÚtitleZrun_argsZrestartrF   rI   Úargvr   r   r   r      s>    	







zScriptBinding._run_module_eventc             C   sx   | j jj}| j  ¡ sttjddddd}|r>|r>| j j d ¡ n6|  ¡ }| j j 	¡  |rp| j j d ¡ | j jj}nd }|S )NÚmainZGeneralÚautosaveÚbool)Útype)
r   Úior   Z	get_savedr   Z	GetOptionZsaveÚask_save_dialogr   Ú	focus_set)r   r   rN   Úconfirmr   r   r   r   ¶   s    


zScriptBinding.getfilenamec             C   s    d}t jd|t j| jjd}|S )Nz%Source Must Be Saved
     OK to Save?zSave Before Run or Check)rK   ÚmessageÚdefaultÚparent)ÚtkMessageBoxZaskokcancelZOKr   r   )r   r'   rT   r   r   r   rR   Ñ   s    zScriptBinding.ask_save_dialogc             C   s$   t j||| jjd | jj ¡  d S )N)rW   )rX   Z	showerrorr   r   rS   )r   rK   rU   r   r   r   r$   Ù   s    zScriptBinding.errorboxN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   rB   rD   r   r   rR   r$   r   r   r   r   r   #   s   7r   Ú__main__)rM   z idlelib.idle_test.test_runscripté   )Ú	verbosity)rG   r   r   Ztkinter.messageboxZ
messageboxrX   Zidlelib.configr   Zidlelibr   r   Zidlelib.queryr   r   r%   r   rY   ZunittestrM   r   r   r   r   Ú<module>   s   
 =